From 9616c55e2f700553dd18b1649789062b5f0226a1 Mon Sep 17 00:00:00 2001 From: ajukes Date: Tue, 11 Apr 2023 17:26:10 +0100 Subject: [PATCH 01/74] custom propagator to set span context traceId to a hex version of callSid --- lib/utils/call-tracer.js | 58 +++++++++++++++++++------------------ lib/utils/sip-propagator.js | 50 ++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 28 deletions(-) create mode 100644 lib/utils/sip-propagator.js diff --git a/lib/utils/call-tracer.js b/lib/utils/call-tracer.js index b6b229e83..bebb06914 100644 --- a/lib/utils/call-tracer.js +++ b/lib/utils/call-tracer.js @@ -1,39 +1,42 @@ -const {context, trace} = require('@opentelemetry/api'); + +const {trace, context, SpanKind} = require('@opentelemetry/api'); const {Dialog} = require('drachtio-srf'); +const {SipPropagator} = require('./sip-propagator'); + class RootSpan { constructor(callType, req) { - let tracer, callSid, linkedSpanId; + const tracer = req.srf.locals.otel.tracer; + const propagator = new SipPropagator(); + const ctx = propagator.extract(context.active(), req); + this._span = tracer.startSpan(callType || 'incoming-call', { + kind: SpanKind.CONSUMER, + attributes: this.getSpanAttributes(req), + root: false + }, ctx); + this._ctx = trace.setSpan(ctx, this._span); + this.tracer = tracer; + } + getSpanAttributes(req) { if (req instanceof Dialog) { - const dlg = req; - tracer = dlg.srf.locals.otel.tracer; - callSid = dlg.callSid; - linkedSpanId = dlg.linkedSpanId; - } - else { - tracer = req.srf.locals.otel.tracer; - callSid = req.locals.callSid; - } - this._span = tracer.startSpan(callType || 'incoming-call'); - if (req instanceof Dialog) { - const dlg = req; - this._span.setAttributes({ + const {sip, callSid, linkedSpanId} = req; + const {callId} = sip; + return { linkedSpanId, - callId: dlg.sip.callId - }); - } - else { - this._span.setAttributes({ + callId, + callSid + }; + } else { + const {locals} = req; + const {callSid} = locals; + return { callSid, accountSid: req.get('X-Account-Sid'), - applicationSid: req.locals.application_sid, + applicationSid: locals.application_sid, callId: req.get('Call-ID'), externalCallId: req.get('X-CID') - }); + }; } - - this._ctx = trace.setSpan(context.active(), this._span); - this.tracer = tracer; } get context() { @@ -54,7 +57,7 @@ class RootSpan { getTracingPropagation(encoding) { // TODO: support encodings beyond b3 https://github.com/openzipkin/b3-propagation - if (this._span && this.traceId !== '00000000000000000000000000000000') { + if (this._span && this.traceId !== '00000000000000000000000000000000') { return `${this.traceId}-${this.spanId}-1`; } } @@ -69,10 +72,9 @@ class RootSpan { startChildSpan(name, attributes) { const span = this.tracer.startSpan(name, attributes, this._ctx); - const ctx = trace.setSpan(context.active(), span); + const ctx = trace.setSpan(this._ctx, span); return {span, ctx}; } } module.exports = RootSpan; - diff --git a/lib/utils/sip-propagator.js b/lib/utils/sip-propagator.js new file mode 100644 index 000000000..c51a44219 --- /dev/null +++ b/lib/utils/sip-propagator.js @@ -0,0 +1,50 @@ +const {TraceFlags, trace, isSpanContextValid, isValidTraceId, isValidSpanId} = require('@opentelemetry/api'); +const {isTracingSuppressed} = require('@opentelemetry/core'); +const {Dialog} = require('drachtio-srf'); + +class SipPropagator { + constructor() { + } + + inject(context, carrier, setter) { + const spanContext = trace.getSpanContext(context); + if (!spanContext || !isSpanContextValid(spanContext) || isTracingSuppressed(context)) { + return; + } + setter.set(carrier, 'traceId', spanContext.traceId); + setter.set(carrier, 'spanId', spanContext.spanId); + } + + extract(context, carrier) { + const callSid = this.getCallSidFromCarrier(carrier); + const traceId = this.getHexValue(callSid); + const spanId = traceId.substring(0, 16); + if (!isValidTraceId(traceId) || !isValidSpanId(spanId)) { + return context; + } + return trace.setSpanContext(context, { + traceId, + spanId, + isRemote: true, + traceFlags: TraceFlags.SAMPLED + }); + } + + fields() { + return ['traceId', 'spanId']; + } + + getCallSidFromCarrier(carrier) { + if (carrier instanceof Dialog) { + return carrier.callSid; + } else { + return carrier.locals.callSid; + } + } + + getHexValue(callSid) { + return callSid.replaceAll('-', ''); + } +} + +exports.SipPropagator = SipPropagator; From 177cd4b4c6e9c6b4059e4a319d1b66ee9ef5a9ae Mon Sep 17 00:00:00 2001 From: ajukes Date: Tue, 11 Apr 2023 17:26:10 +0100 Subject: [PATCH 02/74] custom propagator to set span context traceId to a hex version of callSid --- lib/utils/call-tracer.js | 58 +++++++++++++++++++------------------ lib/utils/sip-propagator.js | 50 ++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 28 deletions(-) create mode 100644 lib/utils/sip-propagator.js diff --git a/lib/utils/call-tracer.js b/lib/utils/call-tracer.js index b6b229e83..bebb06914 100644 --- a/lib/utils/call-tracer.js +++ b/lib/utils/call-tracer.js @@ -1,39 +1,42 @@ -const {context, trace} = require('@opentelemetry/api'); + +const {trace, context, SpanKind} = require('@opentelemetry/api'); const {Dialog} = require('drachtio-srf'); +const {SipPropagator} = require('./sip-propagator'); + class RootSpan { constructor(callType, req) { - let tracer, callSid, linkedSpanId; + const tracer = req.srf.locals.otel.tracer; + const propagator = new SipPropagator(); + const ctx = propagator.extract(context.active(), req); + this._span = tracer.startSpan(callType || 'incoming-call', { + kind: SpanKind.CONSUMER, + attributes: this.getSpanAttributes(req), + root: false + }, ctx); + this._ctx = trace.setSpan(ctx, this._span); + this.tracer = tracer; + } + getSpanAttributes(req) { if (req instanceof Dialog) { - const dlg = req; - tracer = dlg.srf.locals.otel.tracer; - callSid = dlg.callSid; - linkedSpanId = dlg.linkedSpanId; - } - else { - tracer = req.srf.locals.otel.tracer; - callSid = req.locals.callSid; - } - this._span = tracer.startSpan(callType || 'incoming-call'); - if (req instanceof Dialog) { - const dlg = req; - this._span.setAttributes({ + const {sip, callSid, linkedSpanId} = req; + const {callId} = sip; + return { linkedSpanId, - callId: dlg.sip.callId - }); - } - else { - this._span.setAttributes({ + callId, + callSid + }; + } else { + const {locals} = req; + const {callSid} = locals; + return { callSid, accountSid: req.get('X-Account-Sid'), - applicationSid: req.locals.application_sid, + applicationSid: locals.application_sid, callId: req.get('Call-ID'), externalCallId: req.get('X-CID') - }); + }; } - - this._ctx = trace.setSpan(context.active(), this._span); - this.tracer = tracer; } get context() { @@ -54,7 +57,7 @@ class RootSpan { getTracingPropagation(encoding) { // TODO: support encodings beyond b3 https://github.com/openzipkin/b3-propagation - if (this._span && this.traceId !== '00000000000000000000000000000000') { + if (this._span && this.traceId !== '00000000000000000000000000000000') { return `${this.traceId}-${this.spanId}-1`; } } @@ -69,10 +72,9 @@ class RootSpan { startChildSpan(name, attributes) { const span = this.tracer.startSpan(name, attributes, this._ctx); - const ctx = trace.setSpan(context.active(), span); + const ctx = trace.setSpan(this._ctx, span); return {span, ctx}; } } module.exports = RootSpan; - diff --git a/lib/utils/sip-propagator.js b/lib/utils/sip-propagator.js new file mode 100644 index 000000000..c51a44219 --- /dev/null +++ b/lib/utils/sip-propagator.js @@ -0,0 +1,50 @@ +const {TraceFlags, trace, isSpanContextValid, isValidTraceId, isValidSpanId} = require('@opentelemetry/api'); +const {isTracingSuppressed} = require('@opentelemetry/core'); +const {Dialog} = require('drachtio-srf'); + +class SipPropagator { + constructor() { + } + + inject(context, carrier, setter) { + const spanContext = trace.getSpanContext(context); + if (!spanContext || !isSpanContextValid(spanContext) || isTracingSuppressed(context)) { + return; + } + setter.set(carrier, 'traceId', spanContext.traceId); + setter.set(carrier, 'spanId', spanContext.spanId); + } + + extract(context, carrier) { + const callSid = this.getCallSidFromCarrier(carrier); + const traceId = this.getHexValue(callSid); + const spanId = traceId.substring(0, 16); + if (!isValidTraceId(traceId) || !isValidSpanId(spanId)) { + return context; + } + return trace.setSpanContext(context, { + traceId, + spanId, + isRemote: true, + traceFlags: TraceFlags.SAMPLED + }); + } + + fields() { + return ['traceId', 'spanId']; + } + + getCallSidFromCarrier(carrier) { + if (carrier instanceof Dialog) { + return carrier.callSid; + } else { + return carrier.locals.callSid; + } + } + + getHexValue(callSid) { + return callSid.replaceAll('-', ''); + } +} + +exports.SipPropagator = SipPropagator; From 678a7f0dd6fd36bdaf6b359d7e9f445b80c60f3d Mon Sep 17 00:00:00 2001 From: ajukes Date: Wed, 12 Apr 2023 14:07:25 +0100 Subject: [PATCH 03/74] added SipPropagator as global propagator --- lib/utils/call-tracer.js | 7 +++---- tracer.js | 3 ++- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lib/utils/call-tracer.js b/lib/utils/call-tracer.js index bebb06914..3aa4d2c80 100644 --- a/lib/utils/call-tracer.js +++ b/lib/utils/call-tracer.js @@ -1,13 +1,12 @@ -const {trace, context, SpanKind} = require('@opentelemetry/api'); +const {trace, context, SpanKind, propagation} = require('@opentelemetry/api'); const {Dialog} = require('drachtio-srf'); -const {SipPropagator} = require('./sip-propagator'); + class RootSpan { constructor(callType, req) { const tracer = req.srf.locals.otel.tracer; - const propagator = new SipPropagator(); - const ctx = propagator.extract(context.active(), req); + const ctx = propagation.extract(context.active(), req); this._span = tracer.startSpan(callType || 'incoming-call', { kind: SpanKind.CONSUMER, attributes: this.getSpanAttributes(req), diff --git a/tracer.js b/tracer.js index 4708606b8..df45497a8 100644 --- a/tracer.js +++ b/tracer.js @@ -7,6 +7,7 @@ const { BatchSpanProcessor } = require('@opentelemetry/sdk-trace-base'); const { JaegerExporter } = require('@opentelemetry/exporter-jaeger'); const { ZipkinExporter } = require('@opentelemetry/exporter-zipkin'); const { OTLPTraceExporter } = require ('@opentelemetry/exporter-trace-otlp-http'); +const {SipPropagator} = require('./lib/utils/sip-propagator'); //const { HttpInstrumentation } = require('@opentelemetry/instrumentation-http'); //const { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express'); //const { PinoInstrumentation } = require('@opentelemetry/instrumentation-pino'); @@ -20,7 +21,7 @@ module.exports = (serviceName) => { [SemanticResourceAttributes.SERVICE_VERSION]: version, }), }); - + opentelemetry.propagation.setGlobalPropagator(new SipPropagator()); let exporter; if (process.env.OTEL_EXPORTER_JAEGER_AGENT_HOST || process.env.OTEL_EXPORTER_JAEGER_ENDPOINT) { exporter = new JaegerExporter(); From 59b74c796b52ec11b64c1f12ba84ea3c6524f787 Mon Sep 17 00:00:00 2001 From: ajukes Date: Wed, 12 Apr 2023 14:10:46 +0100 Subject: [PATCH 04/74] added SipPropagator as global propagator --- tracer.js | 30 +++++++++++++++--------------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/tracer.js b/tracer.js index ff7c4b26f..aec82dce7 100644 --- a/tracer.js +++ b/tracer.js @@ -1,12 +1,13 @@ const opentelemetry = require('@opentelemetry/api'); -const { registerInstrumentations } = require('@opentelemetry/instrumentation'); -const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node'); -const { Resource } = require('@opentelemetry/resources'); -const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions'); -const { BatchSpanProcessor } = require('@opentelemetry/sdk-trace-base'); -const { JaegerExporter } = require('@opentelemetry/exporter-jaeger'); -const { ZipkinExporter } = require('@opentelemetry/exporter-zipkin'); -const { OTLPTraceExporter } = require ('@opentelemetry/exporter-trace-otlp-http'); +const {registerInstrumentations} = require('@opentelemetry/instrumentation'); +const {NodeTracerProvider} = require('@opentelemetry/sdk-trace-node'); +const {Resource} = require('@opentelemetry/resources'); +const {SemanticResourceAttributes} = require('@opentelemetry/semantic-conventions'); +const {BatchSpanProcessor} = require('@opentelemetry/sdk-trace-base'); +const {JaegerExporter} = require('@opentelemetry/exporter-jaeger'); +const {ZipkinExporter} = require('@opentelemetry/exporter-zipkin'); +const {OTLPTraceExporter} = require('@opentelemetry/exporter-trace-otlp-http'); +const {SipPropagator} = require('./lib/utils/sip-propagator'); const { JAMBONES_OTEL_ENABLED, OTEL_EXPORTER_JAEGER_AGENT_HOST, @@ -15,6 +16,7 @@ const { OTEL_EXPORTER_COLLECTOR_URL } = require('./lib/config'); + module.exports = (serviceName) => { if (JAMBONES_OTEL_ENABLED) { const {version} = require('./package.json'); @@ -24,15 +26,13 @@ module.exports = (serviceName) => { [SemanticResourceAttributes.SERVICE_VERSION]: version, }), }); - + opentelemetry.propagation.setGlobalPropagator(new SipPropagator()); let exporter; - if (OTEL_EXPORTER_JAEGER_AGENT_HOST || OTEL_EXPORTER_JAEGER_ENDPOINT) { + if (OTEL_EXPORTER_JAEGER_AGENT_HOST || OTEL_EXPORTER_JAEGER_ENDPOINT) { exporter = new JaegerExporter(); - } - else if (OTEL_EXPORTER_ZIPKIN_URL) { - exporter = new ZipkinExporter({url:OTEL_EXPORTER_ZIPKIN_URL}); - } - else { + } else if (OTEL_EXPORTER_ZIPKIN_URL) { + exporter = new ZipkinExporter({url: OTEL_EXPORTER_ZIPKIN_URL}); + } else { exporter = new OTLPTraceExporter({ url: OTEL_EXPORTER_COLLECTOR_URL }); From 131e2a4f732829cb0c8556a136edfecb5f6fe1a4 Mon Sep 17 00:00:00 2001 From: ajukes Date: Wed, 12 Apr 2023 16:53:08 +0100 Subject: [PATCH 05/74] check if span has already ended before ending --- lib/utils/call-tracer.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/utils/call-tracer.js b/lib/utils/call-tracer.js index 3aa4d2c80..17415bbb5 100644 --- a/lib/utils/call-tracer.js +++ b/lib/utils/call-tracer.js @@ -66,7 +66,9 @@ class RootSpan { } end() { - this._span.end(); + if (!this._span.ended) { + this._span.end(); + } } startChildSpan(name, attributes) { From 9f631c1dd51cc97b3198c6a4dcdbca03758e7564 Mon Sep 17 00:00:00 2001 From: ajukes Date: Wed, 12 Apr 2023 17:01:06 +0100 Subject: [PATCH 06/74] stringify customerData on span attributes --- lib/session/call-session.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 06bf46c1b..3b42fe1cb 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -1724,7 +1724,11 @@ class CallSession extends Emitter { this.callInfo.updateCallStatus(callStatus, sipStatus, sipReason); if (typeof duration === 'number') this.callInfo.duration = duration; const {span} = this.rootSpan.startChildSpan(`call-status:${this.callInfo.callStatus}`); - span.setAttributes(this.callInfo.toJSON()); + const {customerData, ...otherData} = this.callInfo; + span.setAttributes({ + ...otherData, + customerData: customerData ? JSON.stringify(customerData) : '' + }); try { const b3 = this.b3; const httpHeaders = b3 && {b3}; From 28df38ffdf59ef09830a4085dcfa39958a138466 Mon Sep 17 00:00:00 2001 From: ajukes Date: Wed, 12 Apr 2023 23:57:32 +0100 Subject: [PATCH 07/74] first step to @jambonz/tracing lib --- app.js | 29 ++++++++--- lib/http-routes/api/create-call.js | 4 +- lib/middleware.js | 2 +- lib/utils/call-tracer.js | 81 ------------------------------ lib/utils/place-outdial.js | 2 +- lib/utils/sip-propagator.js | 50 ------------------ tracer.js | 65 ------------------------ 7 files changed, 28 insertions(+), 205 deletions(-) delete mode 100644 lib/utils/call-tracer.js delete mode 100644 lib/utils/sip-propagator.js delete mode 100644 tracer.js diff --git a/app.js b/app.js index 22553cd91..a95ae754d 100644 --- a/app.js +++ b/app.js @@ -1,8 +1,17 @@ +const {JambonzTracer} = require('@jambonz/tracing'); +const {version} = require('./package.json'); +const api = require('@opentelemetry/api'); + const { DRACHTIO_PORT, DRACHTIO_HOST, DRACHTIO_SECRET, + JAMBONES_OTEL_ENABLED, JAMBONES_OTEL_SERVICE_NAME, + OTEL_EXPORTER_COLLECTOR_URL, + OTEL_EXPORTER_JAEGER_AGENT_HOST, + OTEL_EXPORTER_JAEGER_ENDPOINT, + OTEL_EXPORTER_ZIPKIN_URL, JAMBONES_LOGLEVEL, JAMBONES_CLUSTER_ID, JAMBONZ_CLEANUP_INTERVAL_MINS, @@ -16,8 +25,17 @@ checkEnvs(); const Srf = require('drachtio-srf'); const srf = new Srf(); -const tracer = require('./tracer')(JAMBONES_OTEL_SERVICE_NAME); -const api = require('@opentelemetry/api'); + +const tracer = new JambonzTracer({ + version, + serviceName: JAMBONES_OTEL_SERVICE_NAME, + enabled: JAMBONES_OTEL_ENABLED, + jaegerHost: OTEL_EXPORTER_JAEGER_AGENT_HOST, + jaegerEndpoint: OTEL_EXPORTER_JAEGER_ENDPOINT, + zipkinUrl: OTEL_EXPORTER_ZIPKIN_URL, + collectorUrl: OTEL_EXPORTER_COLLECTOR_URL +}).tracer(); + srf.locals = {...srf.locals, otel: {tracer, api}}; const opts = {level: JAMBONES_LOGLEVEL}; @@ -41,14 +59,13 @@ const InboundCallSession = require('./lib/session/inbound-call-session'); const SipRecCallSession = require('./lib/session/siprec-call-session'); if (DRACHTIO_HOST) { - srf.connect({host: DRACHTIO_HOST, port: DRACHTIO_PORT, secret: DRACHTIO_SECRET }); + srf.connect({host: DRACHTIO_HOST, port: DRACHTIO_PORT, secret: DRACHTIO_SECRET}); srf.on('connect', (err, hp) => { const arr = /^(.*)\/(.*)$/.exec(hp.split(',').pop()); srf.locals.localSipAddress = `${arr[2]}`; logger.info(`connected to drachtio listening on ${hp}, local sip address is ${srf.locals.localSipAddress}`); }); -} -else { +} else { logger.info(`listening for drachtio requests on port ${DRACHTIO_PORT}`); srf.listen({port: DRACHTIO_PORT, secret: DRACHTIO_SECRET}); } @@ -103,7 +120,7 @@ setInterval(() => { }, 20000); const disconnect = () => { - return new Promise ((resolve) => { + return new Promise((resolve) => { httpServer?.on('close', resolve); httpServer?.close(); srf.disconnect(); diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index a1432ecea..5efe507d9 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -8,8 +8,8 @@ const SipError = require('drachtio-srf').SipError; const sysError = require('./error'); const HttpRequestor = require('../../utils/http-requestor'); const WsRequestor = require('../../utils/ws-requestor'); -const RootSpan = require('../../utils/call-tracer'); const dbUtils = require('../../utils/db-utils'); +const {RootSpan} = require('@jambonz/tracing'); router.post('/', async(req, res) => { const {logger} = req.app.locals; @@ -181,7 +181,9 @@ router.post('/', async(req, res) => { /* ok our outbound INVITE is in flight */ const tasks = [restDial]; + const rootSpan = new RootSpan('rest-call', inviteReq); + sipLogger = logger.child({ callSid, callId: inviteReq.get('Call-ID'), diff --git a/lib/middleware.js b/lib/middleware.js index f37350e63..922488ae2 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -8,7 +8,7 @@ const makeTask = require('./tasks/make_task'); const parseUri = require('drachtio-srf').parseUri; const { normalizeJambones } = require('@jambonz/verb-specifications'); const dbUtils = require('./utils/db-utils'); -const RootSpan = require('./utils/call-tracer'); +const {RootSpan} = require('@jambonz/tracing'); const listTaskNames = require('./utils/summarize-tasks'); const { JAMBONES_MYSQL_REFRESH_TTL, diff --git a/lib/utils/call-tracer.js b/lib/utils/call-tracer.js deleted file mode 100644 index 17415bbb5..000000000 --- a/lib/utils/call-tracer.js +++ /dev/null @@ -1,81 +0,0 @@ - -const {trace, context, SpanKind, propagation} = require('@opentelemetry/api'); -const {Dialog} = require('drachtio-srf'); - - -class RootSpan { - constructor(callType, req) { - const tracer = req.srf.locals.otel.tracer; - const ctx = propagation.extract(context.active(), req); - this._span = tracer.startSpan(callType || 'incoming-call', { - kind: SpanKind.CONSUMER, - attributes: this.getSpanAttributes(req), - root: false - }, ctx); - this._ctx = trace.setSpan(ctx, this._span); - this.tracer = tracer; - } - - getSpanAttributes(req) { - if (req instanceof Dialog) { - const {sip, callSid, linkedSpanId} = req; - const {callId} = sip; - return { - linkedSpanId, - callId, - callSid - }; - } else { - const {locals} = req; - const {callSid} = locals; - return { - callSid, - accountSid: req.get('X-Account-Sid'), - applicationSid: locals.application_sid, - callId: req.get('Call-ID'), - externalCallId: req.get('X-CID') - }; - } - } - - get context() { - return this._ctx; - } - - get traceId() { - return this._span.spanContext().traceId; - } - - get spanId() { - return this._span.spanContext().spanId; - } - - get traceFlags() { - return this._span.spanContext().traceFlags; - } - - getTracingPropagation(encoding) { - // TODO: support encodings beyond b3 https://github.com/openzipkin/b3-propagation - if (this._span && this.traceId !== '00000000000000000000000000000000') { - return `${this.traceId}-${this.spanId}-1`; - } - } - - setAttributes(attrs) { - this._span.setAttributes(attrs); - } - - end() { - if (!this._span.ended) { - this._span.end(); - } - } - - startChildSpan(name, attributes) { - const span = this.tracer.startSpan(name, attributes, this._ctx); - const ctx = trace.setSpan(this._ctx, span); - return {span, ctx}; - } -} - -module.exports = RootSpan; diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 1e695896e..55370ec0e 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -11,7 +11,7 @@ const AdultingCallSession = require('../session/adulting-call-session'); const deepcopy = require('deepcopy'); const moment = require('moment'); const stripCodecs = require('./strip-ancillary-codecs'); -const RootSpan = require('./call-tracer'); +const {RootSpan} = require('@jambonz/tracing'); const uuidv4 = require('uuid-random'); class SingleDialer extends Emitter { diff --git a/lib/utils/sip-propagator.js b/lib/utils/sip-propagator.js deleted file mode 100644 index c51a44219..000000000 --- a/lib/utils/sip-propagator.js +++ /dev/null @@ -1,50 +0,0 @@ -const {TraceFlags, trace, isSpanContextValid, isValidTraceId, isValidSpanId} = require('@opentelemetry/api'); -const {isTracingSuppressed} = require('@opentelemetry/core'); -const {Dialog} = require('drachtio-srf'); - -class SipPropagator { - constructor() { - } - - inject(context, carrier, setter) { - const spanContext = trace.getSpanContext(context); - if (!spanContext || !isSpanContextValid(spanContext) || isTracingSuppressed(context)) { - return; - } - setter.set(carrier, 'traceId', spanContext.traceId); - setter.set(carrier, 'spanId', spanContext.spanId); - } - - extract(context, carrier) { - const callSid = this.getCallSidFromCarrier(carrier); - const traceId = this.getHexValue(callSid); - const spanId = traceId.substring(0, 16); - if (!isValidTraceId(traceId) || !isValidSpanId(spanId)) { - return context; - } - return trace.setSpanContext(context, { - traceId, - spanId, - isRemote: true, - traceFlags: TraceFlags.SAMPLED - }); - } - - fields() { - return ['traceId', 'spanId']; - } - - getCallSidFromCarrier(carrier) { - if (carrier instanceof Dialog) { - return carrier.callSid; - } else { - return carrier.locals.callSid; - } - } - - getHexValue(callSid) { - return callSid.replaceAll('-', ''); - } -} - -exports.SipPropagator = SipPropagator; diff --git a/tracer.js b/tracer.js deleted file mode 100644 index aec82dce7..000000000 --- a/tracer.js +++ /dev/null @@ -1,65 +0,0 @@ -const opentelemetry = require('@opentelemetry/api'); -const {registerInstrumentations} = require('@opentelemetry/instrumentation'); -const {NodeTracerProvider} = require('@opentelemetry/sdk-trace-node'); -const {Resource} = require('@opentelemetry/resources'); -const {SemanticResourceAttributes} = require('@opentelemetry/semantic-conventions'); -const {BatchSpanProcessor} = require('@opentelemetry/sdk-trace-base'); -const {JaegerExporter} = require('@opentelemetry/exporter-jaeger'); -const {ZipkinExporter} = require('@opentelemetry/exporter-zipkin'); -const {OTLPTraceExporter} = require('@opentelemetry/exporter-trace-otlp-http'); -const {SipPropagator} = require('./lib/utils/sip-propagator'); -const { - JAMBONES_OTEL_ENABLED, - OTEL_EXPORTER_JAEGER_AGENT_HOST, - OTEL_EXPORTER_JAEGER_ENDPOINT, - OTEL_EXPORTER_ZIPKIN_URL, - OTEL_EXPORTER_COLLECTOR_URL -} = require('./lib/config'); - - -module.exports = (serviceName) => { - if (JAMBONES_OTEL_ENABLED) { - const {version} = require('./package.json'); - const provider = new NodeTracerProvider({ - resource: new Resource({ - [SemanticResourceAttributes.SERVICE_NAME]: serviceName, - [SemanticResourceAttributes.SERVICE_VERSION]: version, - }), - }); - opentelemetry.propagation.setGlobalPropagator(new SipPropagator()); - let exporter; - if (OTEL_EXPORTER_JAEGER_AGENT_HOST || OTEL_EXPORTER_JAEGER_ENDPOINT) { - exporter = new JaegerExporter(); - } else if (OTEL_EXPORTER_ZIPKIN_URL) { - exporter = new ZipkinExporter({url: OTEL_EXPORTER_ZIPKIN_URL}); - } else { - exporter = new OTLPTraceExporter({ - url: OTEL_EXPORTER_COLLECTOR_URL - }); - } - - provider.addSpanProcessor(new BatchSpanProcessor(exporter, { - // The maximum queue size. After the size is reached spans are dropped. - maxQueueSize: 100, - // The maximum batch size of every export. It must be smaller or equal to maxQueueSize. - maxExportBatchSize: 10, - // The interval between two consecutive exports - scheduledDelayMillis: 500, - // How long the export can run before it is cancelled - exportTimeoutMillis: 30000, - })); - - // Initialize the OpenTelemetry APIs to use the NodeTracerProvider bindings - provider.register(); - registerInstrumentations({ - instrumentations: [ - //new HttpInstrumentation(), - //new ExpressInstrumentation(), - //new PinoInstrumentation() - ], - }); - } - - return opentelemetry.trace.getTracer(serviceName); -}; - From 5ae7a9a5843d1da752770b041c4fc2c629a18d77 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 00:19:12 +0100 Subject: [PATCH 08/74] jambonzTracer getter --- app.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/app.js b/app.js index a95ae754d..59bc0db35 100644 --- a/app.js +++ b/app.js @@ -1,6 +1,5 @@ -const {JambonzTracer} = require('@jambonz/tracing'); +const {JambonzTracer, api} = require('@jambonz/tracing'); const {version} = require('./package.json'); -const api = require('@opentelemetry/api'); const { DRACHTIO_PORT, @@ -26,7 +25,7 @@ checkEnvs(); const Srf = require('drachtio-srf'); const srf = new Srf(); -const tracer = new JambonzTracer({ +const {tracer} = new JambonzTracer({ version, serviceName: JAMBONES_OTEL_SERVICE_NAME, enabled: JAMBONES_OTEL_ENABLED, @@ -34,7 +33,7 @@ const tracer = new JambonzTracer({ jaegerEndpoint: OTEL_EXPORTER_JAEGER_ENDPOINT, zipkinUrl: OTEL_EXPORTER_ZIPKIN_URL, collectorUrl: OTEL_EXPORTER_COLLECTOR_URL -}).tracer(); +}); srf.locals = {...srf.locals, otel: {tracer, api}}; From 762d3a3699a07f3b33469ab2fd1bdadf5613d385 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 11:00:49 +0100 Subject: [PATCH 09/74] startChildSpan now returns a ChildSpan helper class --- lib/middleware.js | 29 +++++---- lib/session/call-session.js | 36 +++++------ lib/tasks/conference.js | 4 +- lib/tasks/dial.js | 12 ++-- lib/tasks/dialogflow/index.js | 2 +- lib/tasks/enqueue.js | 2 +- lib/tasks/gather.js | 111 +++++++++++++++++----------------- lib/tasks/lex.js | 2 +- lib/tasks/listen.js | 8 +-- lib/tasks/rasa.js | 16 ++--- lib/tasks/rest_dial.js | 2 +- lib/tasks/say.js | 8 +-- lib/tasks/sip_refer.js | 4 +- lib/tasks/task.js | 71 +++++++--------------- lib/tasks/transcribe.js | 2 +- 15 files changed, 135 insertions(+), 174 deletions(-) diff --git a/lib/middleware.js b/lib/middleware.js index 922488ae2..e9e207d11 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -64,7 +64,7 @@ module.exports = function(srf, logger) { function createRootSpan(req, res, next) { const {callId, callSid, account_sid} = req.locals; - const rootSpan = new RootSpan('incoming-call', req); + const rootSpan = new RootSpan('incoming-call', req, logger); const traceId = rootSpan.traceId; req.locals = { @@ -133,11 +133,11 @@ module.exports = function(srf, logger) { async function getAccountDetails(req, res, next) { const {rootSpan, account_sid} = req.locals; - const {span} = rootSpan.startChildSpan('lookupAccountDetails'); + const childSpan = rootSpan.startChildSpan('lookupAccountDetails'); try { req.locals.accountInfo = await lookupAccountDetails(account_sid); req.locals.service_provider_sid = req.locals.accountInfo?.account?.service_provider_sid; - span.end(); + childSpan.end(); if (!req.locals.accountInfo.account.is_active) { logger.info(`Account is inactive or suspended ${account_sid}`); // TODO: alert @@ -146,7 +146,7 @@ module.exports = function(srf, logger) { logger.debug({accountInfo: req.locals?.accountInfo?.account}, `retrieved account info for ${account_sid}`); next(); } catch (err) { - span.end(); + childSpan.endWithError('Error retrieving account details'); logger.info({err}, `Error retrieving account details for account ${account_sid}`); res.send(503, {headers: {'X-Reason': `No Account exists for sid ${account_sid}`}}); } @@ -181,7 +181,7 @@ module.exports = function(srf, logger) { */ async function retrieveApplication(req, res, next) { const {logger, accountInfo, account_sid, rootSpan} = req.locals; - const {span} = rootSpan.startChildSpan('lookupApplication'); + const childSpan = rootSpan.startChildSpan('lookupApplication'); try { let app; if (req.locals.application_sid) app = await lookupAppBySid(req.locals.application_sid); @@ -225,11 +225,11 @@ module.exports = function(srf, logger) { } } - span.setAttributes({ + childSpan.setAttributes({ 'app.hook': app?.call_hook?.url, 'application_sid': req.locals.application_sid }); - span.end(); + childSpan.end(); if (!app || !app.call_hook || !app.call_hook.url) { logger.info(`rejecting call to ${req.locals.calledNumber}: no application or webhook url`); return res.send(480, { @@ -274,7 +274,7 @@ module.exports = function(srf, logger) { }); next(); } catch (err) { - span.end(); + childSpan.end('Error looking up application'); logger.error(err, `${req.get('Call-ID')} Error looking up application for ${req.calledNumber}`); res.send(500); } @@ -286,7 +286,7 @@ module.exports = function(srf, logger) { async function invokeWebCallback(req, res, next) { const logger = req.locals.logger; const {rootSpan, siprec, application:app} = req.locals; - let span; + let childSpan; try { if (app.tasks && !JAMBONES_MYSQL_REFRESH_TTL) { app.tasks = normalizeJambones(logger, app.tasks).map((tdata) => makeTask(logger, tdata)); @@ -315,18 +315,17 @@ module.exports = function(srf, logger) { } }); logger.debug({ params }, 'sending initial webhook'); - const obj = rootSpan.startChildSpan('performAppWebhook'); - span = obj.span; + childSpan = rootSpan.startChildSpan('performAppWebhook'); const b3 = rootSpan.getTracingPropagation(); const httpHeaders = b3 && { b3 }; json = await app.requestor.request('session:new', app.call_hook, params, httpHeaders); } app.tasks = normalizeJambones(logger, json).map((tdata) => makeTask(logger, tdata)); - span?.setAttributes({ + childSpan?.setAttributes({ 'http.statusCode': 200, 'app.tasks': listTaskNames(app.tasks) }); - span?.end(); + childSpan?.end(); if (0 === app.tasks.length) throw new Error('no application provided'); if (siprec) { @@ -342,8 +341,8 @@ module.exports = function(srf, logger) { } next(); } catch (err) { - span?.setAttributes({webhookStatus: err.statusCode}); - span?.end(); + childSpan?.setAttributes({webhookStatus: err.statusCode}); + childSpan?.endWithError('http error'); writeAlerts({ account_sid: req.locals.account_sid, target_sid: req.locals.callSid, diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 3b42fe1cb..5924262e6 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -479,9 +479,8 @@ class CallSession extends Emitter { const t = normalizeJambones(this.logger, [opts]); this.backgroundListenTask = makeTask(this.logger, t[0]); const resources = await this._evaluatePreconditions(this.backgroundListenTask); - const {span, ctx} = this.rootSpan.startChildSpan(`background-gather:${this.backgroundListenTask.summary}`); - this.backgroundListenTask.span = span; - this.backgroundListenTask.ctx = ctx; + const childSpan = this.rootSpan.startChildSpan(`background-gather:${this.backgroundListenTask.summary}`); + this.backgroundListenTask.span = childSpan; this.backgroundListenTask.exec(this, resources) .then(() => { this.logger.info('CallSession:startBackgroundListen: listen completed'); @@ -541,9 +540,8 @@ class CallSession extends Emitter { .once('timeout', this._clearTasks.bind(this, this.backgroundGatherTask)); this.logger.info({gather}, 'CallSession:enableBotMode - starting background gather'); const resources = await this._evaluatePreconditions(this.backgroundGatherTask); - const {span, ctx} = this.rootSpan.startChildSpan(`background-gather:${this.backgroundGatherTask.summary}`); - this.backgroundGatherTask.span = span; - this.backgroundGatherTask.ctx = ctx; + const childSpan = this.rootSpan.startChildSpan(`background-gather:${this.backgroundGatherTask.summary}`); + this.backgroundGatherTask.span = childSpan; this.backgroundGatherTask.sticky = autoEnable; this.backgroundGatherTask.exec(this, resources) .then(() => { @@ -568,6 +566,7 @@ class CallSession extends Emitter { this.logger.info({err, gather}, 'CallSession:enableBotMode - Error creating gather task'); } } + disableBotMode() { this._bargeInEnabled = false; if (this.backgroundGatherTask) { @@ -750,19 +749,18 @@ class CallSession extends Emitter { } if (0 === this.tasks.length && this.requestor instanceof WsRequestor && !this.callGone) { - let span; + const childSpan = this.rootSpan.startChildSpan('waiting for commands'); try { - const {span} = this.rootSpan.startChildSpan('waiting for commands'); const {reason, queue, command} = await this._awaitCommandsOrHangup(); - span.setAttributes({ + childSpan.setAttributes({ 'completion.reason': reason, 'async.request.queue': queue, 'async.request.command': command }); - span.end(); + childSpan.end(); if (this.callGone) break; } catch (err) { - span.end(); + childSpan.endWithError('error waiting for new commands'); this.logger.info(err, 'CallSession:exec - error waiting for new commands'); break; } @@ -1254,15 +1252,12 @@ class CallSession extends Emitter { //this.logger.debug({resolution}, 'CallSession:_onCommand - got commands, waking up..'); this.wakeupResolver(resolution); this.wakeupResolver = null; - } - else { - const {span} = this.rootSpan.startChildSpan('async command'); + } else { const {queue, command} = resolution; - span.setAttributes({ + this.rootSpan.startChildSpan('async command', { 'async.request.queue': queue, 'async.request.command': command - }); - span.end(); + }).end(); } } @@ -1723,9 +1718,8 @@ class CallSession extends Emitter { this.callInfo.updateCallStatus(callStatus, sipStatus, sipReason); if (typeof duration === 'number') this.callInfo.duration = duration; - const {span} = this.rootSpan.startChildSpan(`call-status:${this.callInfo.callStatus}`); const {customerData, ...otherData} = this.callInfo; - span.setAttributes({ + const childSpan = this.rootSpan.startChildSpan(`call-status:${this.callInfo.callStatus}`, { ...otherData, customerData: customerData ? JSON.stringify(customerData) : '' }); @@ -1733,9 +1727,9 @@ class CallSession extends Emitter { const b3 = this.b3; const httpHeaders = b3 && {b3}; await this.notifier.request('call:status', this.call_status_hook, this.callInfo.toJSON(), httpHeaders); - span.end(); + childSpan.end(); } catch (err) { - span.end(); + childSpan.end(); this.logger.info(err, `CallSession:_notifyCallStatusChange error sending ${callStatus} ${sipStatus}`); } diff --git a/lib/tasks/conference.js b/lib/tasks/conference.js index c31f73ea6..8b926b3f7 100644 --- a/lib/tasks/conference.js +++ b/lib/tasks/conference.js @@ -541,7 +541,7 @@ class Conference extends Task { async _playHook(cs, dlg, hook, allowed = [TaskName.Play, TaskName.Say, TaskName.Pause]) { assert(!this._playSession); - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; const json = await cs.application.requestor.request('verb:hook', hook, cs.callInfo, httpHeaders); const tasks = normalizeJambones(this.logger, json).map((tdata) => makeTask(this.logger, tdata)); @@ -604,7 +604,7 @@ class Conference extends Task { _notifyConferenceEvent(cs, eventName, params = {}) { if (this.statusEvents.includes(eventName)) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; params.event = eventName; params.duration = (Date.now() - this.conferenceStartTime.getTime()) / 1000; diff --git a/lib/tasks/dial.js b/lib/tasks/dial.js index 4fcbb0530..94cfb0e6c 100644 --- a/lib/tasks/dial.js +++ b/lib/tasks/dial.js @@ -250,11 +250,9 @@ class TaskDial extends Task { this.logger.debug('Dial:whisper executing tasks'); while (tasks.length && !cs.callGone) { const task = tasks.shift(); - const {span, ctx} = this.startChildSpan(`whisper:${task.summary}`); - task.span = span; - task.ctx = ctx; + task.span = this.span.startChildSpan(`whisper:${task.summary}`); await task.exec(cs, callSid === this.callSid ? {ep: this.ep} : {ep: this.epOther}); - span.end(); + task.span.end(); } this.logger.debug('Dial:whisper tasks complete'); if (!cs.callGone && this.epOther) { @@ -295,7 +293,7 @@ class TaskDial extends Task { const referring_call_sid = isChild ? callInfo.callSid : cs.callSid; const referred_call_sid = isChild ? callInfo.parentCallSid : this.sd.callSid; - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; const to = parseUri(req.getParsedHeader('Refer-To').uri); @@ -372,7 +370,7 @@ class TaskDial extends Task { const key = arr[1]; const match = dtmfDetector.keyPress(key); if (match) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; this.logger.info({callSid}, `Dial:_onInfo triggered dtmf match: ${match}`); requestor.request('verb:hook', this.dtmfHook, {dtmf: match, ...callInfo.toJSON()}, httpHeaders) @@ -491,7 +489,7 @@ class TaskDial extends Task { callInfo: cs.callInfo, accountInfo: cs.accountInfo, rootSpan: cs.rootSpan, - startSpan: this.startSpan.bind(this) + startSpan: this.span.startChildSpan }); this.dials.set(sd.callSid, sd); diff --git a/lib/tasks/dialogflow/index.js b/lib/tasks/dialogflow/index.js index 628e01b7d..73758e2d7 100644 --- a/lib/tasks/dialogflow/index.js +++ b/lib/tasks/dialogflow/index.js @@ -453,7 +453,7 @@ class Dialogflow extends Task { } async _performHook(cs, hook, results = {}) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; const json = await this.cs.requestor.request('verb:hook', hook, {...results, ...cs.callInfo.toJSON()}, httpHeaders); diff --git a/lib/tasks/enqueue.js b/lib/tasks/enqueue.js index 5132a7f19..8c31f93d5 100644 --- a/lib/tasks/enqueue.js +++ b/lib/tasks/enqueue.js @@ -302,7 +302,7 @@ class TaskEnqueue extends Task { async _playHook(cs, dlg, hook, allowed = [TaskName.Play, TaskName.Say, TaskName.Pause, TaskName.Leave]) { const {lengthOfList, getListPosition} = cs.srf.locals.dbHelpers; - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; assert(!this._playSession); diff --git a/lib/tasks/gather.js b/lib/tasks/gather.js index 0d2e6492d..bf95db82d 100644 --- a/lib/tasks/gather.js +++ b/lib/tasks/gather.js @@ -54,7 +54,7 @@ class TaskGather extends Task { ].forEach((k) => this[k] = this.data[k]); /* when collecting dtmf, bargein on dtmf is true unless explicitly set to false */ - if (this.dtmfBargein !== false && this.input.includes('digits')) this.dtmfBargein = true; + if (this.dtmfBargein !== false && this.input.includes('digits')) this.dtmfBargein = true; /* timeout of zero means no timeout */ this.timeout = this.timeout === 0 ? 0 : (this.timeout || 15) * 1000; @@ -81,8 +81,7 @@ class TaskGather extends Task { } this.data.recognizer.hints = this.data.recognizer.hints || []; this.data.recognizer.altLanguages = this.data.recognizer.altLanguages || []; - } - else this.data.recognizer = {hints: [], altLanguages: []}; + } else this.data.recognizer = {hints: [], altLanguages: []}; this.digitBuffer = ''; this._earlyMedia = this.data.earlyMedia === true; @@ -105,9 +104,13 @@ class TaskGather extends Task { this.partialTranscriptsCount = 0; } - get name() { return TaskName.Gather; } + get name() { + return TaskName.Gather; + } - get needsStt() { return this.input.includes('speech'); } + get needsStt() { + return this.input.includes('speech'); + } get wantsSingleUtterance() { return this.data.recognizer?.singleUtterance === true; @@ -211,8 +214,7 @@ class TaskGather extends Task { const {access_token, servedFromCache} = await getNuanceAccessToken(client_id, secret, 'asr tts'); this.logger.debug({client_id}, `Gather:exec - got nuance access token ${servedFromCache ? 'from cache' : ''}`); this.sttCredentials = {...this.sttCredentials, access_token}; - } - else if (this.vendor == 'ibm' && this.sttCredentials.stt_api_key) { + } else if (this.vendor == 'ibm' && this.sttCredentials.stt_api_key) { /* get ibm access token */ const {stt_api_key, stt_region} = this.sttCredentials; const {access_token, servedFromCache} = await getIbmAccessToken(stt_api_key); @@ -240,13 +242,15 @@ class TaskGather extends Task { try { if (this.sayTask) { - const {span, ctx} = this.startChildSpan(`nested:${this.sayTask.summary}`); - this.sayTask.span = span; - this.sayTask.ctx = ctx; + this.sayTask.span = this.span.startChildSpan(`nested:${this.sayTask.summary}`); this.sayTask.exec(cs, {ep}); // kicked off, _not_ waiting for it to complete this.sayTask.on('playDone', (err) => { - span.end(); - if (err) this.logger.error({err}, 'Gather:exec Error playing tts'); + if (err) { + this.logger.error({err}, 'Gather:exec Error playing tts'); + this.sayTask.span.endWithError('Error playing tts'); + } else { + this.sayTask.span.end(); + } this.logger.debug('Gather: nested say task completed'); if (!this.killed) { startListening(cs, ep); @@ -258,15 +262,16 @@ class TaskGather extends Task { } } }); - } - else if (this.playTask) { - const {span, ctx} = this.startChildSpan(`nested:${this.playTask.summary}`); - this.playTask.span = span; - this.playTask.ctx = ctx; + } else if (this.playTask) { + this.playTask.span = this.span.startChildSpan(`nested:${this.playTask.summary}`); this.playTask.exec(cs, {ep}); // kicked off, _not_ waiting for it to complete this.playTask.on('playDone', (err) => { - span.end(); - if (err) this.logger.error({err}, 'Gather:exec Error playing url'); + if (err) { + this.logger.error({err}, 'Gather:exec Error playing url'); + this.playTask.span.endWithError('Error playing url'); + } else { + this.playTask.span.end(); + } this.logger.debug('Gather: nested play task completed'); if (!this.killed) { startListening(cs, ep); @@ -278,8 +283,7 @@ class TaskGather extends Task { } } }); - } - else { + } else { if (this.killed) { this.logger.info('Gather:exec - task was immediately killed so do not transcribe'); return; @@ -291,7 +295,8 @@ class TaskGather extends Task { await this._initSpeech(cs, ep); this._startTranscribing(ep); updateSpeechCredentialLastUsed(this.sttCredentials.speech_credential_sid) - .catch(() => {/*already logged error */}); + .catch(() => {/*already logged error */ + }); } if (this.input.includes('digits') || this.dtmfBargein || this.asrDtmfTerminationDigit) { @@ -338,16 +343,14 @@ class TaskGather extends Task { if (evt.dtmf === this.finishOnKey && this.input.includes('digits')) { resolved = true; this._resolve('dtmf-terminator-key'); - } - else if (this.input.includes('digits')) { + } else if (this.input.includes('digits')) { this.digitBuffer += evt.dtmf; const len = this.digitBuffer.length; if (len === this.numDigits || len === this.maxDigits) { resolved = true; this._resolve('dtmf-num-digits'); } - } - else if (this.isContinuousAsr && evt.dtmf === this.asrDtmfTerminationDigit) { + } else if (this.isContinuousAsr && evt.dtmf === this.asrDtmfTerminationDigit) { this.logger.info(`continuousAsr triggered with dtmf ${this.asrDtmfTerminationDigit}`); this._clearAsrTimer(); this._clearTimer(); @@ -448,9 +451,8 @@ class TaskGather extends Task { ep.addCustomEventListener(JambonzTranscriptionEvents.ConnectFailure, this._onJambonzConnectFailure.bind(this, cs, ep)); break; - } - else { - this.notifyError({ msg: 'ASR error', details:`Invalid vendor ${this.vendor}`}); + } else { + this.notifyError({msg: 'ASR error', details: `Invalid vendor ${this.vendor}`}); this.notifyTaskDone(); throw new Error(`Invalid vendor ${this.vendor}`); } @@ -590,8 +592,7 @@ class TaskGather extends Task { if (evt.alternatives[0].transcript === '' && !this.callSession.callGone && !this.killed) { if (finished === 'true' && ['microsoft', 'deepgram'].includes(this.vendor)) { this.logger.debug({evt}, 'TaskGather:_onTranscription - got empty transcript from old gather, disregarding'); - } - else { + } else { this.logger.info({evt}, 'TaskGather:_onTranscription - got empty transcript, continue listening'); } return; @@ -605,8 +606,7 @@ class TaskGather extends Task { if (/[,;:\.!\?]$/.test(t)) { this.logger.debug('TaskGather:_onTranscription - removing trailing punctuation'); evt.alternatives[0].transcript = t.slice(0, -1); - } - else this.logger.debug({t}, 'TaskGather:_onTranscription - no trailing punctuation'); + } else this.logger.debug({t}, 'TaskGather:_onTranscription - no trailing punctuation'); } this.logger.info({evt}, 'TaskGather:_onTranscription - got transcript during continous asr'); this._bufferedTranscripts.push(evt); @@ -619,16 +619,14 @@ class TaskGather extends Task { /* some STT engines will keep listening after a final response, so no need to restart */ if (!['soniox', 'aws', 'microsoft', 'deepgram'].includes(this.vendor)) this._startTranscribing(ep); - } - else { + } else { if (this.bargein && (words + bufferedWords) < this.minBargeinWordCount) { this.logger.debug({evt, words, bufferedWords}, 'TaskGather:_onTranscription - final transcript but < min barge words'); this._bufferedTranscripts.push(evt); this._startTranscribing(ep); return; - } - else { + } else { if (this.vendor === 'soniox') { /* compile transcripts into one */ this._sonioxTranscripts.push(evt.vendor.finalWords); @@ -638,8 +636,7 @@ class TaskGather extends Task { this._resolve('speech', evt); } } - } - else { + } else { /* google has a measure of stability: https://cloud.google.com/speech-to-text/docs/basics#streaming_responses others do not. @@ -655,9 +652,9 @@ class TaskGather extends Task { this._killAudio(cs); } if (this.partialResultHook) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; - this.cs.requestor.request('verb:hook', this.partialResultHook, Object.assign({speech: evt}, + this.cs.requestor.request('verb:hook', this.partialResultHook, Object.assign({speech: evt}, this.cs.callInfo, httpHeaders)); } if (this.vendor === 'soniox') { @@ -669,6 +666,7 @@ class TaskGather extends Task { } } } + _onEndOfUtterance(cs, ep) { this.logger.debug('TaskGather:_onEndOfUtterance'); if (this.bargein && this.minBargeinWordCount === 0) { @@ -695,15 +693,19 @@ class TaskGather extends Task { this._killAudio(cs); } } + _onTranscriptionComplete(cs, ep) { this.logger.debug('TaskGather:_onTranscriptionComplete'); } + _onDeepgramConnect(_cs, _ep) { this.logger.debug('TaskGather:_onDeepgramConnect'); } + _onJambonzConnect(_cs, _ep) { this.logger.debug('TaskGather:_onJambonzConnect'); } + _onJambonzError(cs, _ep, evt) { this.logger.info({evt}, 'TaskGather:_onJambonzError'); const {writeAlerts, AlertType} = cs.srf.locals; @@ -720,7 +722,7 @@ class TaskGather extends Task { message: `Custom speech vendor ${this.vendor} error: ${evt.error}`, vendor: this.vendor, }).catch((err) => this.logger.info({err}, 'Error generating alert for jambonz custom connection failure')); - this.notifyError({msg: 'ASR error', details:`Custom speech vendor ${this.vendor} error: ${evt.error}`}); + this.notifyError({msg: 'ASR error', details: `Custom speech vendor ${this.vendor} error: ${evt.error}`}); } _onDeepGramConnectFailure(cs, _ep, evt) { @@ -733,9 +735,10 @@ class TaskGather extends Task { message: `Failed connecting to Deepgram speech recognizer: ${reason}`, vendor: 'deepgram', }).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({msg: 'ASR error', details: `Failed connecting to speech vendor deepgram: ${reason}`}); this.notifyTaskDone(); } + _onJambonzConnectFailure(cs, _ep, evt) { const {reason} = evt; const {writeAlerts, AlertType} = cs.srf.locals; @@ -746,7 +749,7 @@ class TaskGather extends Task { message: `Failed connecting to ${this.vendor} speech recognizer: ${reason}`, vendor: this.vendor, }).catch((err) => this.logger.info({err}, 'Error generating alert for jambonz custom connection failure')); - this.notifyError({msg: 'ASR error', details:`Failed connecting to speech vendor ${this.vendor}: ${reason}`}); + this.notifyError({msg: 'ASR error', details: `Failed connecting to speech vendor ${this.vendor}: ${reason}`}); this.notifyTaskDone(); } @@ -764,12 +767,13 @@ class TaskGather extends Task { message: `Failed connecting to IBM watson speech recognizer: ${reason}`, vendor: 'ibm', }).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({msg: 'ASR error', details: `Failed connecting to speech vendor IBM: ${reason}`}); this.notifyTaskDone(); } _onIbmError(cs, _ep, evt) { - this.logger.info({evt}, 'TaskGather:_onIbmError'); } + this.logger.info({evt}, 'TaskGather:_onIbmError'); + } _onVadDetected(cs, ep) { if (this.bargein && this.minBargeinWordCount === 0) { @@ -784,8 +788,7 @@ class TaskGather extends Task { const finished = fsEvent.getHeader('transcription-session-finished'); if (this.vendor === 'microsoft' && finished === 'true') { this.logger.debug('TaskGather:_onNoSpeechDetected for old gather, ignoring'); - } - else { + } else { this.logger.debug('TaskGather:_onNoSpeechDetected - listen again'); this._startTranscribing(ep); } @@ -811,8 +814,7 @@ class TaskGather extends Task { transcripts: this._bufferedTranscripts }; this.logger.debug({evt}, 'TaskGather:resolve continuous asr'); - } - else if (!this.isContinuousAsr && reason.startsWith('speech') && this._bufferedTranscripts.length) { + } else if (!this.isContinuousAsr && reason.startsWith('speech') && this._bufferedTranscripts.length) { compileTranscripts(this.logger, evt, this._bufferedTranscripts); this.logger.debug({evt}, 'TaskGather:resolve buffered results'); } @@ -836,22 +838,21 @@ class TaskGather extends Task { this.emit('dtmf', evt); await this.performAction({digits: this.digitBuffer, reason: 'dtmfDetected'}); } - } - else if (reason.startsWith('speech')) { + } else if (reason.startsWith('speech')) { if (this.parentTask) this.parentTask.emit('transcription', evt); else { this.emit('transcription', evt); await this.performAction({speech: evt, reason: 'speechDetected'}); } - } - else if (reason.startsWith('timeout')) { + } else if (reason.startsWith('timeout')) { if (this.parentTask) this.parentTask.emit('timeout', evt); else { this.emit('timeout', evt); await this.performAction({reason: 'timeout'}); } } - } catch (err) { /*already logged error*/ } + } catch (err) { /*already logged error*/ + } this.notifyTaskDone(); } } diff --git a/lib/tasks/lex.js b/lib/tasks/lex.js index 4d5629529..8c05e8ce1 100644 --- a/lib/tasks/lex.js +++ b/lib/tasks/lex.js @@ -289,7 +289,7 @@ class Lex extends Task { } async _performHook(cs, hook, results) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; const json = await this.cs.requestor.request('verb:hook', hook, results, httpHeaders); if (json && Array.isArray(json)) { diff --git a/lib/tasks/listen.js b/lib/tasks/listen.js index e56409211..9fc825aed 100644 --- a/lib/tasks/listen.js +++ b/lib/tasks/listen.js @@ -40,12 +40,10 @@ class TaskListen extends Task { if (this.playBeep) await this._playBeep(ep); if (this.transcribeTask) { this.logger.debug('TaskListen:exec - starting nested transcribe task'); - const {span, ctx} = this.startChildSpan(`nested:${this.transcribeTask.summary}`); - this.transcribeTask.span = span; - this.transcribeTask.ctx = ctx; + this.transcribeTask.span = this.span.startChildSpan(`nested:${this.transcribeTask.summary}`); this.transcribeTask.exec(cs, {ep}) - .then((result) => span.end()) - .catch((err) => span.end()); + .then((result) => this.transcribeTask.span.end()) + .catch((err) => this.transcribeTask.span.endWithError('Error in transcribe task')); } await this._startListening(cs, ep); await this.awaitTaskDone(); diff --git a/lib/tasks/rasa.js b/lib/tasks/rasa.js index b79156857..755853293 100644 --- a/lib/tasks/rasa.js +++ b/lib/tasks/rasa.js @@ -31,14 +31,12 @@ class Rasa extends Task { /* start the first gather */ this.gatherTask = this._makeGatherTask(this.prompt); - const {span, ctx} = this.startChildSpan(`nested:${this.gatherTask.summary}`); - this.gatherTask.span = span; - this.gatherTask.ctx = ctx; + this.gatherTask.span = this.span.startChildSpan(`nested:${this.gatherTask.summary}`); this.gatherTask.exec(cs, {ep}) - .then(() => span.end()) + .then(() => this.gatherTask.span.end()) .catch((err) => { - span.end(); this.logger.info({err}, 'Rasa gather task returned error'); + this.gatherTask.span.endWithError('Rasa gather task returned error'); }); await this.awaitTaskDone(); @@ -125,14 +123,12 @@ class Rasa extends Task { if (botUtterance) { this.logger.debug({botUtterance}, 'Rasa:_onTranscription: got user utterance'); this.gatherTask = this._makeGatherTask(botUtterance); - const {span, ctx} = this.startChildSpan(`nested:${this.gatherTask.summary}`); - this.gatherTask.span = span; - this.gatherTask.ctx = ctx; + this.gatherTask.span = this.span.startChildSpan(`nested:${this.gatherTask.summary}`); this.gatherTask.exec(cs, {ep}) - .then(() => span.end()) + .then(() => this.gatherTask.span.end()) .catch((err) => { - span.end(); this.logger.info({err}, 'Rasa gather task returned error'); + this.gatherTask.span.endWithError('Rasa gather task returned error'); }); if (this.eventHook) { this.performHook(cs, this.eventHook, {event: 'botMessage', message: response}) diff --git a/lib/tasks/rest_dial.js b/lib/tasks/rest_dial.js index 36289d33c..4412a26b7 100644 --- a/lib/tasks/rest_dial.js +++ b/lib/tasks/rest_dial.js @@ -50,7 +50,7 @@ class TaskRestDial extends Task { cs.setDialog(dlg); try { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; const params = { ...cs.callInfo, diff --git a/lib/tasks/say.js b/lib/tasks/say.js index 92048450f..7ca134f2b 100644 --- a/lib/tasks/say.js +++ b/lib/tasks/say.js @@ -102,7 +102,7 @@ class TaskSay extends Task { if (text.startsWith('silence_stream://')) return text; /* otel: trace time for tts */ - const {span} = this.startChildSpan('tts-generation', { + const childSpan = this.span.startChildSpan('tts-generation', { 'tts.vendor': vendor, 'tts.language': language, 'tts.voice': voice @@ -126,8 +126,8 @@ class TaskSay extends Task { updateSpeechCredentialLastUsed(credentials.speech_credential_sid) .catch(() => {/*already logged error */}); } - span.setAttributes({'tts.cached': servedFromCache}); - span.end(); + childSpan.setAttributes({'tts.cached': servedFromCache}); + childSpan.end(); if (!servedFromCache && rtt) { this.notifyStatus({ event: 'synthesized-audio', @@ -140,7 +140,7 @@ class TaskSay extends Task { return filePath; } catch (err) { this.logger.info({err}, 'Error synthesizing tts'); - span.end(); + childSpan.endWithError('Error synthesizing tts'); writeAlerts({ account_sid: cs.accountSid, alert_type: AlertType.TTS_FAILURE, diff --git a/lib/tasks/sip_refer.js b/lib/tasks/sip_refer.js index 580befeab..b1aa977a7 100644 --- a/lib/tasks/sip_refer.js +++ b/lib/tasks/sip_refer.js @@ -27,7 +27,7 @@ class TaskSipRefer extends Task { this.notifyHandler = this._handleNotify.bind(this, cs, dlg); dlg.on('notify', this.notifyHandler); /* otel: trace time for tts */ - this.referSpan = this.startSpan('send-refer', { + this.referSpan = this.span.startChildSpan('send-refer', { 'refer.refer_to': referTo, 'refer.referred_by': referredBy }); @@ -87,7 +87,7 @@ class TaskSipRefer extends Task { const status = typeof arr[1] === 'string' ? parseInt(arr[1], 10) : arr[1]; this.logger.debug(`TaskSipRefer:_handleNotify: call got status ${status}`); if (this.eventHook) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; await cs.requestor.request('verb:hook', this.eventHook, {event: 'transfer-status', call_status: status}, httpHeaders); diff --git a/lib/tasks/task.js b/lib/tasks/task.js index 2583d7f70..2a18b1aa8 100644 --- a/lib/tasks/task.js +++ b/lib/tasks/task.js @@ -1,10 +1,9 @@ const Emitter = require('events'); const uuidv4 = require('uuid-random'); const {TaskPreconditions} = require('../utils/constants'); -const { normalizeJambones } = require('@jambonz/verb-specifications'); +const {normalizeJambones} = require('@jambonz/verb-specifications'); const WsRequestor = require('../utils/ws-requestor'); const {TaskName} = require('../utils/constants'); -const {trace} = require('@opentelemetry/api'); /** * @classdesc Represents a jambonz verb. This is a superclass that is extended @@ -70,34 +69,6 @@ class Task extends Emitter { setImmediate(() => this.parentTask = null); } - startSpan(name, attributes) { - const {srf} = require('../..'); - const {tracer} = srf.locals.otel; - const span = tracer.startSpan(name, undefined, this.ctx); - if (attributes) span.setAttributes(attributes); - trace.setSpan(this.ctx, span); - return span; - } - - startChildSpan(name, attributes) { - const {srf} = require('../..'); - const {tracer} = srf.locals.otel; - const span = tracer.startSpan(name, undefined, this.ctx); - if (attributes) span.setAttributes(attributes); - const ctx = trace.setSpan(this.ctx, span); - return {span, ctx}; - } - - getTracingPropagation(encoding, span) { - // TODO: support encodings beyond b3 https://github.com/openzipkin/b3-propagation - if (span) { - return `${span.spanContext().traceId}-${span.spanContext().spanId}-1`; - } - if (this.span) { - return `${this.span.spanContext().traceId}-${this.span.spanContext().spanId}-1`; - } - } - /** * when a subclass Task has completed its work, it should call this method */ @@ -155,14 +126,16 @@ class Task extends Emitter { if (this.actionHook) { const type = this.name === TaskName.Redirect ? 'session:redirect' : 'verb:hook'; const params = results ? Object.assign(this.cs.callInfo.toJSON(), results) : this.cs.callInfo.toJSON(); - const span = this.startSpan(type, {'hook.url': this.actionHook}); - const b3 = this.getTracingPropagation('b3', span); + const childSpan = this.span.startChildSpan(type, { + 'hook.url': this.actionHook, + 'http.body': JSON.stringify(params) + }); + const b3 = childSpan.getTracingPropagation('b3'); const httpHeaders = b3 && {b3}; - span.setAttributes({'http.body': JSON.stringify(params)}); try { const json = await this.cs.requestor.request(type, this.actionHook, params, httpHeaders); - span.setAttributes({'http.statusCode': 200}); - span.end(); + childSpan.setAttributes({'http.statusCode': 200}); + childSpan.end(); if (expectResponse && json && Array.isArray(json)) { const makeTask = require('./make_task'); const tasks = normalizeJambones(this.logger, json).map((tdata) => makeTask(this.logger, tdata)); @@ -172,8 +145,8 @@ class Task extends Emitter { } } } catch (err) { - span.setAttributes({'http.statusCode': err.statusCode}); - span.end(); + childSpan.setAttributes({'http.statusCode': err.statusCode}); + childSpan.endWithError('http error'); throw err; } } @@ -181,14 +154,16 @@ class Task extends Emitter { async performHook(cs, hook, results) { const params = results ? Object.assign(cs.callInfo.toJSON(), results) : cs.callInfo.toJSON(); - const span = this.startSpan('verb:hook', {'hook.url': hook}); - const b3 = this.getTracingPropagation('b3', span); + const childSpan = this.span.startChildSpan('verb:hook', { + 'hook.url': hook, + 'http.body': JSON.stringify(params) + }); + const b3 = childSpan.getTracingPropagation('b3'); const httpHeaders = b3 && {b3}; - span.setAttributes({'http.body': JSON.stringify(params)}); try { const json = await cs.requestor.request('verb:hook', hook, params, httpHeaders); - span.setAttributes({'http.statusCode': 200}); - span.end(); + childSpan.setAttributes({'http.statusCode': 200}); + childSpan.end(); if (json && Array.isArray(json)) { const makeTask = require('./make_task'); const tasks = normalizeJambones(this.logger, json).map((tdata) => makeTask(this.logger, tdata)); @@ -199,8 +174,8 @@ class Task extends Emitter { } return false; } catch (err) { - span.setAttributes({'http.statusCode': err.statusCode}); - span.end(); + childSpan.setAttributes({'http.statusCode': err.statusCode}); + childSpan.endWithError('http error'); throw err; } } @@ -217,7 +192,7 @@ class Task extends Emitter { // listen for conference events const handler = this.__onConferenceEvent.bind(this); - ep.conn.on('esl::event::CUSTOM::*', handler) ; + ep.conn.on('esl::event::CUSTOM::*', handler); const response = await ep.api(`conference ${confName} play ${filepath} ${memberId}`); this.logger.debug({response}, 'Task:playToConfMember - api call returned'); await this.awaitConfPlayDone(); @@ -238,9 +213,9 @@ class Task extends Emitter { } __onConferenceEvent(evt) { - const eventName = evt.getHeader('Event-Subclass') ; + const eventName = evt.getHeader('Event-Subclass'); if (eventName === 'conference::maintenance') { - const action = evt.getHeader('Action') ; + const action = evt.getHeader('Action'); if (action === 'play-file-member-done') { this.logger.debug('done playing file to conf member'); this.notifyConfPlayDone(); @@ -254,7 +229,7 @@ class Task extends Emitter { const obj = Object.assign({}, cs.application); delete obj.requestor; delete obj.notifier; - obj.tasks = cs.getRemainingTaskData(); + obj.tasks = cs.getRemainingTaskData(); if (opts && obj.tasks.length > 0) { const key = Object.keys(obj.tasks[0])[0]; Object.assign(obj.tasks[0][key], {_: opts}); diff --git a/lib/tasks/transcribe.js b/lib/tasks/transcribe.js index f9c85659f..6d95221e2 100644 --- a/lib/tasks/transcribe.js +++ b/lib/tasks/transcribe.js @@ -286,7 +286,7 @@ class TaskTranscribe extends Task { } if (this.transcriptionHook) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; try { const json = await this.cs.requestor.request('verb:hook', this.transcriptionHook, { From 422a0382799547a34053364bd90f200e6ff5603c Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 11:03:31 +0100 Subject: [PATCH 10/74] removed old tracer.js from lint scripts --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index e36b684cc..fead6baec 100644 --- a/package.json +++ b/package.json @@ -21,8 +21,8 @@ "start": "node app", "test": "NODE_ENV=test JAMBONES_HOSTING=1 HTTP_POOL=1 ENCRYPTION_SECRET=foobar DRACHTIO_HOST=127.0.0.1 DRACHTIO_PORT=9060 DRACHTIO_SECRET=cymru JAMBONES_MYSQL_HOST=127.0.0.1 JAMBONES_MYSQL_PORT=3360 JAMBONES_MYSQL_USER=jambones_test JAMBONES_MYSQL_PASSWORD=jambones_test JAMBONES_MYSQL_DATABASE=jambones_test JAMBONES_REDIS_HOST=127.0.0.1 JAMBONES_REDIS_PORT=16379 JAMBONES_LOGLEVEL=error ENABLE_METRICS=0 HTTP_PORT=3000 JAMBONES_SBCS=172.38.0.10 JAMBONES_FREESWITCH=127.0.0.1:8022:JambonzR0ck$:docker-host JAMBONES_TIME_SERIES_HOST=127.0.0.1 JAMBONES_NETWORK_CIDR=172.38.0.0/16 node test/ ", "coverage": "./node_modules/.bin/nyc --reporter html --report-dir ./coverage npm run test", - "jslint": "eslint app.js tracer.js lib", - "jslint:fix": "eslint app.js tracer.js lib --fix" + "jslint": "eslint app.js lib", + "jslint:fix": "eslint app.js lib --fix" }, "dependencies": { "@jambonz/db-helpers": "^0.7.4", From a38e2fd86e1b58491d938186ca6e4b7df6c5bcbb Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 11:26:00 +0100 Subject: [PATCH 11/74] fixed span issue added logger to root spans --- lib/http-routes/api/create-call.js | 2 +- lib/session/call-session.js | 4 +--- lib/utils/place-outdial.js | 2 +- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 5efe507d9..a7a97cea3 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -182,7 +182,7 @@ router.post('/', async(req, res) => { const tasks = [restDial]; - const rootSpan = new RootSpan('rest-call', inviteReq); + const rootSpan = new RootSpan('rest-call', inviteReq, logger); sipLogger = logger.child({ callSid, diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 5924262e6..69e3d377c 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -727,9 +727,7 @@ class CallSession extends Emitter { } } if (!skip) { - const {span, ctx} = this.rootSpan.startChildSpan(`verb:${task.summary}`); - task.span = span; - task.ctx = ctx; + task.span = this.rootSpan.startChildSpan(`verb:${task.summary}`); await task.exec(this, resources); task.span.end(); } diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 55370ec0e..6327aad3f 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -365,7 +365,7 @@ class SingleDialer extends Emitter { this.dlg.callSid = this.callSid; this.dlg.linkedSpanId = this.rootSpan.traceId; - const rootSpan = new RootSpan('outbound-call', this.dlg); + const rootSpan = new RootSpan('outbound-call', this.dlg, this.logger); const newLogger = logger.child({traceId: rootSpan.traceId}); const cs = new AdultingCallSession({ logger: newLogger, From 22be575dfc91012f3f1517d0f6aedaf2f9996661 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 12:23:09 +0100 Subject: [PATCH 12/74] -fixed bind function issue -added loglevel --- app.js | 3 ++- lib/tasks/dial.js | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/app.js b/app.js index 59bc0db35..0c00f77aa 100644 --- a/app.js +++ b/app.js @@ -32,7 +32,8 @@ const {tracer} = new JambonzTracer({ jaegerHost: OTEL_EXPORTER_JAEGER_AGENT_HOST, jaegerEndpoint: OTEL_EXPORTER_JAEGER_ENDPOINT, zipkinUrl: OTEL_EXPORTER_ZIPKIN_URL, - collectorUrl: OTEL_EXPORTER_COLLECTOR_URL + collectorUrl: OTEL_EXPORTER_COLLECTOR_URL, + logLevel: JAMBONES_LOGLEVEL }); srf.locals = {...srf.locals, otel: {tracer, api}}; diff --git a/lib/tasks/dial.js b/lib/tasks/dial.js index 94cfb0e6c..92c0ed1a2 100644 --- a/lib/tasks/dial.js +++ b/lib/tasks/dial.js @@ -489,7 +489,7 @@ class TaskDial extends Task { callInfo: cs.callInfo, accountInfo: cs.accountInfo, rootSpan: cs.rootSpan, - startSpan: this.span.startChildSpan + startSpan: this.span.startChildSpan.bind(this.span) }); this.dials.set(sd.callSid, sd); From 44b84a5d4253e491252cd078a90500d324b2105e Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 13:38:18 +0100 Subject: [PATCH 13/74] new RootSpan contsructor --- lib/http-routes/api/create-call.js | 3 ++- lib/middleware.js | 34 ++++++++++++++++++++++++++---- lib/utils/place-outdial.js | 8 ++++++- 3 files changed, 39 insertions(+), 6 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index a7a97cea3..5e01eeeac 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -182,7 +182,8 @@ router.post('/', async(req, res) => { const tasks = [restDial]; - const rootSpan = new RootSpan('rest-call', inviteReq, logger); + const {otel: {tracer}} = inviteReq.srf; + const rootSpan = new RootSpan('rest-call', callSid, inviteReq.locals, tracer, logger); sipLogger = logger.child({ callSid, diff --git a/lib/middleware.js b/lib/middleware.js index e9e207d11..153043374 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -10,6 +10,7 @@ const { normalizeJambones } = require('@jambonz/verb-specifications'); const dbUtils = require('./utils/db-utils'); const {RootSpan} = require('@jambonz/tracing'); const listTaskNames = require('./utils/summarize-tasks'); +const {Dialog} = require('drachtio-srf'); const { JAMBONES_MYSQL_REFRESH_TTL, } = require('./config'); @@ -63,9 +64,33 @@ module.exports = function(srf, logger) { } function createRootSpan(req, res, next) { - const {callId, callSid, account_sid} = req.locals; - const rootSpan = new RootSpan('incoming-call', req, logger); + + const getAttributes = () => { + if (req instanceof Dialog) { + const {sip: {callId}, callSid, linkedSpanId} = req; + return { + linkedSpanId, + callId, + callSid, + }; + } else { + const {locals: {callSid, application_sid}} = req; + return { + callSid, + accountSid: req.get('X-Account-Sid'), + applicationSid: application_sid, + callId: req.get('Call-ID'), + externalCallId: req.get('X-CID'), + }; + } + }; + + const {otel: {tracer}} = req.srf; + const {callSid, ...attributes} = getAttributes(); + const rootSpan = new RootSpan('incoming-call', callSid, attributes, tracer, logger); + const traceId = rootSpan.traceId; + const {callId, accountSid} = attributes; req.locals = { ...req.locals, @@ -73,10 +98,11 @@ module.exports = function(srf, logger) { logger: logger.child({ callId, callSid, - accountSid: account_sid, + accountSid, callingNumber: req.callingNumber, calledNumber: req.calledNumber, - traceId}), + traceId + }), rootSpan }; diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 6327aad3f..1ea0f14a7 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -365,7 +365,13 @@ class SingleDialer extends Emitter { this.dlg.callSid = this.callSid; this.dlg.linkedSpanId = this.rootSpan.traceId; - const rootSpan = new RootSpan('outbound-call', this.dlg, this.logger); + + const {sip: {callId}, callSid, linkedSpanId, otel: {tracer}} = this.dlg; + const rootSpan = new RootSpan('outbound-call', this.callSid, + {linkedSpanId, callId, callSid}, + tracer, + this.logger); + const newLogger = logger.child({traceId: rootSpan.traceId}); const cs = new AdultingCallSession({ logger: newLogger, From 18e2cd06b28b0e943eb088197ecf6e18cce55ee3 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 14:08:38 +0100 Subject: [PATCH 14/74] added tracing lib to package.json --- package.json | 10 +--------- 1 file changed, 1 insertion(+), 9 deletions(-) diff --git a/package.json b/package.json index fead6baec..e00c7a89f 100644 --- a/package.json +++ b/package.json @@ -32,15 +32,7 @@ "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", "@jambonz/verb-specifications": "^0.0.14", - "@opentelemetry/api": "^1.4.0", - "@opentelemetry/exporter-jaeger": "^1.9.0", - "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", - "@opentelemetry/exporter-zipkin": "^1.9.0", - "@opentelemetry/instrumentation": "^0.35.0", - "@opentelemetry/resources": "^1.9.0", - "@opentelemetry/sdk-trace-base": "^1.9.0", - "@opentelemetry/sdk-trace-node": "^1.9.0", - "@opentelemetry/semantic-conventions": "^1.9.0", + "@jambonz/tracing" : "^0.0.1", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From 81058779614d949a8aaedd6dbd2fbfd605285f6c Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 14:13:37 +0100 Subject: [PATCH 15/74] default otel service name --- app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app.js b/app.js index 0c00f77aa..0a7b820ef 100644 --- a/app.js +++ b/app.js @@ -27,7 +27,7 @@ const srf = new Srf(); const {tracer} = new JambonzTracer({ version, - serviceName: JAMBONES_OTEL_SERVICE_NAME, + name: JAMBONES_OTEL_SERVICE_NAME || 'jambonz-feature-server', enabled: JAMBONES_OTEL_ENABLED, jaegerHost: OTEL_EXPORTER_JAEGER_AGENT_HOST, jaegerEndpoint: OTEL_EXPORTER_JAEGER_ENDPOINT, From 21e704d9e55ec9c21ba6c80543d7df4e39ec4275 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 14:42:51 +0100 Subject: [PATCH 16/74] bumped tracing lib --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e00c7a89f..c244339a8 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", "@jambonz/verb-specifications": "^0.0.14", - "@jambonz/tracing" : "^0.0.1", + "@jambonz/tracing" : "^0.1.1", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From 51241f2402f19726fc4c5ad8a35f6e2caf38f8ec Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:11:08 +0100 Subject: [PATCH 17/74] bumped tracing lib --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c244339a8..43ea82bcf 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", "@jambonz/verb-specifications": "^0.0.14", - "@jambonz/tracing" : "^0.1.1", + "@jambonz/tracing" : "^0.1.5", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From cad84a116bc3f20557c86a993e130798c293d49d Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:23:55 +0100 Subject: [PATCH 18/74] undefined tracer --- lib/middleware.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/middleware.js b/lib/middleware.js index 153043374..d32f4896f 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -85,7 +85,7 @@ module.exports = function(srf, logger) { } }; - const {otel: {tracer}} = req.srf; + const {tracer} = req.srf.locals.otel; const {callSid, ...attributes} = getAttributes(); const rootSpan = new RootSpan('incoming-call', callSid, attributes, tracer, logger); From 2a5b6592a868a5860a6a6f6da86387a36364cffd Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:30:38 +0100 Subject: [PATCH 19/74] bumped tracing lib --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 43ea82bcf..96373be41 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", "@jambonz/verb-specifications": "^0.0.14", - "@jambonz/tracing" : "^0.1.5", + "@jambonz/tracing" : "^0.1.6", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From 052a53cf01a8ac7ee1d4dedf2050584f3b062733 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:34:00 +0100 Subject: [PATCH 20/74] package-lock.json --- package-lock.json | 42 +++++++++++++++++++++++++++++++++--------- 1 file changed, 33 insertions(+), 9 deletions(-) diff --git a/package-lock.json b/package-lock.json index 2141ef276..659a94251 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,16 +15,8 @@ "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", + "@jambonz/tracing": "^0.1.5", "@jambonz/verb-specifications": "^0.0.14", - "@opentelemetry/api": "^1.4.0", - "@opentelemetry/exporter-jaeger": "^1.9.0", - "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", - "@opentelemetry/exporter-zipkin": "^1.9.0", - "@opentelemetry/instrumentation": "^0.35.0", - "@opentelemetry/resources": "^1.9.0", - "@opentelemetry/sdk-trace-base": "^1.9.0", - "@opentelemetry/sdk-trace-node": "^1.9.0", - "@opentelemetry/semantic-conventions": "^1.9.0", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", @@ -1663,6 +1655,22 @@ "influx": "^5.9.3" } }, + "node_modules/@jambonz/tracing": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.5.tgz", + "integrity": "sha512-tjKwBLyXNcDO3uxuvZsOeLRB+3uyVkVRI3kPpEYBdfKSFfAxuWQoOfatodVJ7V5DU2eve8Z1wGK7RoLkacKFRQ==", + "dependencies": { + "@opentelemetry/api": "^1.4.0", + "@opentelemetry/exporter-jaeger": "^1.9.0", + "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", + "@opentelemetry/exporter-zipkin": "^1.9.0", + "@opentelemetry/instrumentation": "^0.35.0", + "@opentelemetry/resources": "^1.9.0", + "@opentelemetry/sdk-trace-base": "^1.9.0", + "@opentelemetry/sdk-trace-node": "^1.9.0", + "@opentelemetry/semantic-conventions": "^1.9.0" + } + }, "node_modules/@jambonz/verb-specifications": { "version": "0.0.14", "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.14.tgz", @@ -10010,6 +10018,22 @@ "influx": "^5.9.3" } }, + "@jambonz/tracing": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.5.tgz", + "integrity": "sha512-tjKwBLyXNcDO3uxuvZsOeLRB+3uyVkVRI3kPpEYBdfKSFfAxuWQoOfatodVJ7V5DU2eve8Z1wGK7RoLkacKFRQ==", + "requires": { + "@opentelemetry/api": "^1.4.0", + "@opentelemetry/exporter-jaeger": "^1.9.0", + "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", + "@opentelemetry/exporter-zipkin": "^1.9.0", + "@opentelemetry/instrumentation": "^0.35.0", + "@opentelemetry/resources": "^1.9.0", + "@opentelemetry/sdk-trace-base": "^1.9.0", + "@opentelemetry/sdk-trace-node": "^1.9.0", + "@opentelemetry/semantic-conventions": "^1.9.0" + } + }, "@jambonz/verb-specifications": { "version": "0.0.14", "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.14.tgz", From 4868ae2c8c0083663cbfbd03105ce947c0fb5fd0 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:34:37 +0100 Subject: [PATCH 21/74] package-lock.json --- package-lock.json | 85 ++++------------------------------------------- 1 file changed, 7 insertions(+), 78 deletions(-) diff --git a/package-lock.json b/package-lock.json index 659a94251..91ce8867f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/tracing": "^0.1.5", + "@jambonz/tracing": "^0.1.6", "@jambonz/verb-specifications": "^0.0.14", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", @@ -1656,15 +1656,14 @@ } }, "node_modules/@jambonz/tracing": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.5.tgz", - "integrity": "sha512-tjKwBLyXNcDO3uxuvZsOeLRB+3uyVkVRI3kPpEYBdfKSFfAxuWQoOfatodVJ7V5DU2eve8Z1wGK7RoLkacKFRQ==", + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.6.tgz", + "integrity": "sha512-xOXJR99nfQKkHenAimpWOtmXOPoyxYQLLzszWKxTq81AKq97XsM69ikQWskEdKHTeiVive4YDMOo6j4Pzi5fEg==", "dependencies": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", "@opentelemetry/exporter-zipkin": "^1.9.0", - "@opentelemetry/instrumentation": "^0.35.0", "@opentelemetry/resources": "^1.9.0", "@opentelemetry/sdk-trace-base": "^1.9.0", "@opentelemetry/sdk-trace-node": "^1.9.0", @@ -1838,22 +1837,6 @@ "@opentelemetry/api": "^1.0.0" } }, - "node_modules/@opentelemetry/instrumentation": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.0.tgz", - "integrity": "sha512-pQ5shVG53acTtq72DF7kx+4690ZKh3lATMRqf2JDMRvn0bcX/JaQ+NjPmt7oyT3h9brMA1rSFMVFS6yj8kd2OQ==", - "dependencies": { - "require-in-the-middle": "^5.0.3", - "semver": "^7.3.2", - "shimmer": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, "node_modules/@opentelemetry/otlp-exporter-base": { "version": "0.35.0", "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.0.tgz", @@ -6045,11 +6028,6 @@ "mkdirp": "bin/cmd.js" } }, - "node_modules/module-details-from-path": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz", - "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", @@ -7261,19 +7239,6 @@ "node": ">=0.10.0" } }, - "node_modules/require-in-the-middle": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-5.2.0.tgz", - "integrity": "sha512-efCx3b+0Z69/LGJmm9Yvi4cqEdxnoGnxYxGxBghkkTTFeXRtTCmmhO0AnAfHz59k957uTSuy8WaHqOs8wbYUWg==", - "dependencies": { - "debug": "^4.1.1", - "module-details-from-path": "^1.0.3", - "resolve": "^1.22.1" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/require-main-filename": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", @@ -7537,11 +7502,6 @@ "node": ">=8" } }, - "node_modules/shimmer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz", - "integrity": "sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==" - }, "node_modules/short-uuid": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/short-uuid/-/short-uuid-4.2.2.tgz", @@ -10019,15 +9979,14 @@ } }, "@jambonz/tracing": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.5.tgz", - "integrity": "sha512-tjKwBLyXNcDO3uxuvZsOeLRB+3uyVkVRI3kPpEYBdfKSFfAxuWQoOfatodVJ7V5DU2eve8Z1wGK7RoLkacKFRQ==", + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.6.tgz", + "integrity": "sha512-xOXJR99nfQKkHenAimpWOtmXOPoyxYQLLzszWKxTq81AKq97XsM69ikQWskEdKHTeiVive4YDMOo6j4Pzi5fEg==", "requires": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", "@opentelemetry/exporter-zipkin": "^1.9.0", - "@opentelemetry/instrumentation": "^0.35.0", "@opentelemetry/resources": "^1.9.0", "@opentelemetry/sdk-trace-base": "^1.9.0", "@opentelemetry/sdk-trace-node": "^1.9.0", @@ -10154,16 +10113,6 @@ "@opentelemetry/semantic-conventions": "1.9.0" } }, - "@opentelemetry/instrumentation": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.0.tgz", - "integrity": "sha512-pQ5shVG53acTtq72DF7kx+4690ZKh3lATMRqf2JDMRvn0bcX/JaQ+NjPmt7oyT3h9brMA1rSFMVFS6yj8kd2OQ==", - "requires": { - "require-in-the-middle": "^5.0.3", - "semver": "^7.3.2", - "shimmer": "^1.2.1" - } - }, "@opentelemetry/otlp-exporter-base": { "version": "0.35.0", "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.0.tgz", @@ -13401,11 +13350,6 @@ "minimist": "^1.2.6" } }, - "module-details-from-path": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz", - "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", @@ -14319,16 +14263,6 @@ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true }, - "require-in-the-middle": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-5.2.0.tgz", - "integrity": "sha512-efCx3b+0Z69/LGJmm9Yvi4cqEdxnoGnxYxGxBghkkTTFeXRtTCmmhO0AnAfHz59k957uTSuy8WaHqOs8wbYUWg==", - "requires": { - "debug": "^4.1.1", - "module-details-from-path": "^1.0.3", - "resolve": "^1.22.1" - } - }, "require-main-filename": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", @@ -14529,11 +14463,6 @@ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, - "shimmer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz", - "integrity": "sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==" - }, "short-uuid": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/short-uuid/-/short-uuid-4.2.2.tgz", From 6ebe3705383e3cd8144663458daaf86260bf2ccf Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:40:31 +0100 Subject: [PATCH 22/74] fixed null tracer on create call --- lib/http-routes/api/create-call.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 5e01eeeac..14062dbd2 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -182,7 +182,7 @@ router.post('/', async(req, res) => { const tasks = [restDial]; - const {otel: {tracer}} = inviteReq.srf; + const {tracer} = inviteReq.srf.locals.otel; const rootSpan = new RootSpan('rest-call', callSid, inviteReq.locals, tracer, logger); sipLogger = logger.child({ From 0b29e67a0c6ccd7b2dc5b2d1b4eeaad6f85695ab Mon Sep 17 00:00:00 2001 From: Dave Horton Date: Thu, 13 Apr 2023 13:26:46 -0400 Subject: [PATCH 23/74] better logging of ws commands --- lib/session/call-session.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 06bf46c1b..d7c17298b 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -1192,7 +1192,7 @@ class CallSession extends Emitter { } _onCommand({msgid, command, call_sid, queueCommand, data}) { - this.logger.info({msgid, command, queueCommand}, 'CallSession:_onCommand - received command'); + this.logger.info({msgid, command, queueCommand, data}, 'CallSession:_onCommand - received command'); const resolution = {reason: 'received command', queue: queueCommand, command}; switch (command) { case 'redirect': From 271587617e1a105376c5d975971e1366617a29d5 Mon Sep 17 00:00:00 2001 From: Dave Horton Date: Thu, 13 Apr 2023 13:28:21 -0400 Subject: [PATCH 24/74] update verb specifications --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index 2141ef276..a56484f05 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/verb-specifications": "^0.0.14", + "@jambonz/verb-specifications": "^0.0.16", "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", @@ -1664,9 +1664,9 @@ } }, "node_modules/@jambonz/verb-specifications": { - "version": "0.0.14", - "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.14.tgz", - "integrity": "sha512-yT7I8PmBgmt+GTCno4F5ryL4CQrgIVsE2YUfVjCMg09pjnrumdKVqArFXW8KZsNzbCKjhVTtQE60kJd6gWCQfg==", + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.16.tgz", + "integrity": "sha512-2ZHpbBmqhRT9a4Cs8HEQncvdp1zS7MbzLsFynVu3gSpvgfeepRtqWX8rxG9VF9Mr+AbJoeCfo+MO0PyJCPWTMA==", "dependencies": { "debug": "^4.3.4", "pino": "^8.8.0" @@ -10011,9 +10011,9 @@ } }, "@jambonz/verb-specifications": { - "version": "0.0.14", - "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.14.tgz", - "integrity": "sha512-yT7I8PmBgmt+GTCno4F5ryL4CQrgIVsE2YUfVjCMg09pjnrumdKVqArFXW8KZsNzbCKjhVTtQE60kJd6gWCQfg==", + "version": "0.0.16", + "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.16.tgz", + "integrity": "sha512-2ZHpbBmqhRT9a4Cs8HEQncvdp1zS7MbzLsFynVu3gSpvgfeepRtqWX8rxG9VF9Mr+AbJoeCfo+MO0PyJCPWTMA==", "requires": { "debug": "^4.3.4", "pino": "^8.8.0" diff --git a/package.json b/package.json index e36b684cc..a49bf8aa9 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/verb-specifications": "^0.0.14", + "@jambonz/verb-specifications": "^0.0.16", "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", From 7082f078afdbdf0757cd7c8e3767583d0808fd89 Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 10:27:49 +0100 Subject: [PATCH 25/74] traceId now takes call-id instead of call-sid. --- lib/http-routes/api/create-call.js | 5 +++-- lib/middleware.js | 6 +++--- lib/utils/place-outdial.js | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 14062dbd2..071fc32a2 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -182,12 +182,13 @@ router.post('/', async(req, res) => { const tasks = [restDial]; + const callId = inviteReq.get('Call-ID'); const {tracer} = inviteReq.srf.locals.otel; - const rootSpan = new RootSpan('rest-call', callSid, inviteReq.locals, tracer, logger); + const rootSpan = new RootSpan('rest-call', callId, inviteReq.locals, tracer, logger); sipLogger = logger.child({ callSid, - callId: inviteReq.get('Call-ID'), + callId, accountSid, traceId: rootSpan.traceId }); diff --git a/lib/middleware.js b/lib/middleware.js index d32f4896f..786db5471 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -86,11 +86,11 @@ module.exports = function(srf, logger) { }; const {tracer} = req.srf.locals.otel; - const {callSid, ...attributes} = getAttributes(); - const rootSpan = new RootSpan('incoming-call', callSid, attributes, tracer, logger); + const {callId, ...attributes} = getAttributes(); + const rootSpan = new RootSpan('incoming-call', callId, attributes, tracer, logger); const traceId = rootSpan.traceId; - const {callId, accountSid} = attributes; + const {callSid, accountSid} = attributes; req.locals = { ...req.locals, diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 1ea0f14a7..1dae7d5e8 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -367,7 +367,7 @@ class SingleDialer extends Emitter { this.dlg.linkedSpanId = this.rootSpan.traceId; const {sip: {callId}, callSid, linkedSpanId, otel: {tracer}} = this.dlg; - const rootSpan = new RootSpan('outbound-call', this.callSid, + const rootSpan = new RootSpan('outbound-call', callId, {linkedSpanId, callId, callSid}, tracer, this.logger); From f03cbac5b2bc28b37af4dde41aa86e1c19408bed Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 13:03:30 +0100 Subject: [PATCH 26/74] traceId now takes external call-id instead of call-sid. --- lib/middleware.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/middleware.js b/lib/middleware.js index 786db5471..43500a742 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -87,7 +87,9 @@ module.exports = function(srf, logger) { const {tracer} = req.srf.locals.otel; const {callId, ...attributes} = getAttributes(); - const rootSpan = new RootSpan('incoming-call', callId, attributes, tracer, logger); + const extCallId = req.get('X-CID') || callId; + const callIdHex = extCallId.replaceAll('-', '').substring(0, 32); + const rootSpan = new RootSpan('incoming-call', callIdHex, attributes, tracer, logger); const traceId = rootSpan.traceId; const {callSid, accountSid} = attributes; From 1dff4da012e2373941812a6501b08395cb02f81d Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 13:57:12 +0100 Subject: [PATCH 27/74] attempt to pickup traceid from X-Trace-ID header --- lib/middleware.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/middleware.js b/lib/middleware.js index 43500a742..ad572c130 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -87,9 +87,8 @@ module.exports = function(srf, logger) { const {tracer} = req.srf.locals.otel; const {callId, ...attributes} = getAttributes(); - const extCallId = req.get('X-CID') || callId; - const callIdHex = extCallId.replaceAll('-', '').substring(0, 32); - const rootSpan = new RootSpan('incoming-call', callIdHex, attributes, tracer, logger); + const newTraceId = req.get('X-Trace-ID') || callId.replaceAll('-', '').substring(0, 32); + const rootSpan = new RootSpan('incoming-call', newTraceId, attributes, tracer, logger); const traceId = rootSpan.traceId; const {callSid, accountSid} = attributes; From c7415eff66b5490e3b1dcd5e624abcaab0662208 Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 14:17:53 +0100 Subject: [PATCH 28/74] use callSid as traceId on create call and add to X-Trace-ID --- lib/http-routes/api/create-call.js | 40 +++++++++++++++++------------- 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 071fc32a2..036a44396 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -37,12 +37,15 @@ router.post('/', async(req, res) => { const accountInfo = await lookupAccountDetails(req.body.account_sid); const callSid = uuidv4(); + const traceId = callSid.replace('-', ''); + opts.headers = { ...opts.headers, 'X-Jambonz-Routing': target.type, 'X-Jambonz-FS-UUID': srf.locals.fsUUID, 'X-Call-Sid': callSid, 'X-Account-Sid': accountSid, + 'X-Trace-ID' : traceId, ...(restDial.fromHost && {'X-Preferred-From-Host': restDial.fromHost}) }; @@ -135,28 +138,30 @@ router.post('/', async(req, res) => { */ if ('WS' === app.call_hook?.method || /^wss?:/.test(app.call_hook.url)) { logger.debug({call_hook: app.call_hook}, 'creating websocket for call hook'); - app.requestor = new WsRequestor(logger, account.account_sid, app.call_hook, account.webhook_secret) ; - if (app.call_hook.url === app.call_status_hook.url || !app.call_status_hook?.url) { + app.requestor = new WsRequestor(logger, account.account_sid, app.call_hook, account.webhook_secret); + if (app.call_hook.url === app.call_status_hook.url || !app.call_status_hook?.url) { logger.debug('reusing websocket for call status hook'); app.notifier = app.requestor; } - } - else { + } else { logger.debug({call_hook: app.call_hook}, 'creating http client for call hook'); app.requestor = new HttpRequestor(logger, account.account_sid, app.call_hook, account.webhook_secret); } if (!app.notifier && app.call_status_hook) { app.notifier = new HttpRequestor(logger, account.account_sid, app.call_status_hook, account.webhook_secret); logger.debug({call_hook: app.call_hook}, 'creating http client for call status hook'); - } - else if (!app.notifier) { + } else if (!app.notifier) { logger.debug('creating null call status hook'); - app.notifier = {request: () => {}, close: () => {}}; + app.notifier = { + request: () => { + }, close: () => { + } + }; } /* now launch the outdial */ try { - const dlg = await srf.createUAC(uri, {...opts, followRedirects: true, keepUriOnRedirect: true}, { + const dlg = await srf.createUAC(uri, {...opts, followRedirects: true, keepUriOnRedirect: true}, { cbRequest: (err, inviteReq) => { /* in case of 302 redirect, this gets called twice, ignore the second except to update the req so that it can later be canceled if need be @@ -184,13 +189,12 @@ router.post('/', async(req, res) => { const callId = inviteReq.get('Call-ID'); const {tracer} = inviteReq.srf.locals.otel; - const rootSpan = new RootSpan('rest-call', callId, inviteReq.locals, tracer, logger); - + const rootSpan = new RootSpan('rest-call', traceId, inviteReq.locals, tracer, logger); sipLogger = logger.child({ callSid, callId, accountSid, - traceId: rootSpan.traceId + traceId }); app.requestor.logger = app.notifier.logger = sipLogger; const callInfo = new CallInfo({ @@ -201,7 +205,7 @@ router.post('/', async(req, res) => { callSid, accountSid: req.body.account_sid, applicationSid: app.application_sid, - traceId: rootSpan.traceId + traceId }); cs = new RestCallSession({ logger: sipLogger, @@ -216,7 +220,11 @@ router.post('/', async(req, res) => { }); cs.exec(req); - res.status(201).json({sid: cs.callSid, callId: inviteReq.get('Call-ID')}); + res.status(201).json({ + sid: cs.callSid, + callId: inviteReq.get('Call-ID'), + traceId + }); sipLogger.info({sid: cs.callSid, callId: inviteReq.get('Call-ID')}, `outbound REST call attempt to ${JSON.stringify(target)} has been sent`); @@ -236,8 +244,7 @@ router.post('/', async(req, res) => { }); restDial.emit('callStatus', 200); restDial.emit('connect', dlg); - } - catch (err) { + } catch (err) { let callStatus = CallStatus.Failed; if (err instanceof SipError) { if ([486, 603].includes(err.status)) callStatus = CallStatus.Busy; @@ -249,8 +256,7 @@ router.post('/', async(req, res) => { sipStatus: err.status, sipReason: err.reason }); - } - else { + } else { if (cs) cs.emit('callStatusChange', { callStatus, sipStatus: 500, From 814b96ff2a6a5c90a706544283e9240ee302514c Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 14:43:59 +0100 Subject: [PATCH 29/74] added readme envs --- README.md | 64 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 34 insertions(+), 30 deletions(-) diff --git a/README.md b/README.md index 398a8ed47..5f1ddd089 100644 --- a/README.md +++ b/README.md @@ -8,35 +8,39 @@ This application implements the core feature server of the jambones platform. Configuration is provided via environment variables: -| variable | meaning | required?| -|----------|----------|---------| -|AWS_ACCESS_KEY_ID| aws access key id, used for TTS/STT as well SNS notifications|no| -|AWS_REGION| aws region| no| -|AWS_SECRET_ACCESS_KEY| aws secret access key, used per above|no| -|AWS_SNS_TOPIC_ARM| aws sns topic arn that scale-in lifecycle notifications will be published to|no| -|DRACHTIO_HOST| ip address of drachtio server (typically '127.0.0.1')|yes| -|DRACHTIO_PORT| listening port of drachtio server for control connections (typically 9022)|yes| -|DRACHTIO_SECRET| shared secret|yes| -|ENABLE_METRICS| if 1, metrics will be generated|no| -|ENCRYPTION_SECRET| secret for credential encryption(JWT_SECRET is deprecated) |yes| -|GOOGLE_APPLICATION_CREDENTIALS| path to gcp service key file|yes| -|HTTP_PORT| tcp port to listen on for API requests from jambonz-api-server|yes| -|JAMBONES_GATHER_EARLY_HINTS_MATCH| if true and hints are provided, gather will opportunistically review interim transcripts if possible to reduce ASR latency |no| -|JAMBONES_FREESWITCH| IP:port:secret for Freeswitch server (e.g. '127.0.0.1:8021:JambonzR0ck$'|yes| -|JAMBONES_LOGLEVEL| log level for application, 'info' or 'debug'|no| -|JAMBONES_MYSQL_HOST| mysql host|yes| -|JAMBONES_MYSQL_USER| mysql username|yes| -|JAMBONES_MYSQL_PASSWORD| mysql password|yes| -|JAMBONES_MYSQL_DATABASE| mysql data|yes| -|JAMBONES_MYSQL_CONNECTION_LIMIT| mysql connection limit |no| -|JAMBONES_NETWORK_CIDR| CIDR of private network that feature server is running in (e.g. '172.31.0.0/16')|yes| -|JAMBONES_REDIS_HOST| redis host|yes| -|JAMBONES_REDIS_PORT|redis port|yes| -|JAMBONES_SBCS| list of IP addresses (on the internal network) of SBCs, comma-separated|yes| -|STATS_HOST| ip address of metrics host (usually '127.0.0.1' since telegraf is installed locally|no| -|STATS_PORT| listening port for metrics host|no| -|STATS_PROTOCOL| 'tcp' or 'udp'|no| -|STATS_TELEGRAF| if 1, metrics will be generated in telegraf format|no| +| variable | meaning | required? | +|-----------------------------------|----------------------------------------------------------------------------------------------------------------------------|-----------| +| AWS_ACCESS_KEY_ID | aws access key id, used for TTS/STT as well SNS notifications | no | +| AWS_REGION | aws region | no | +| AWS_SECRET_ACCESS_KEY | aws secret access key, used per above | no | +| AWS_SNS_TOPIC_ARM | aws sns topic arn that scale-in lifecycle notifications will be published to | no | +| DRACHTIO_HOST | ip address of drachtio server (typically '127.0.0.1') | yes | +| DRACHTIO_PORT | listening port of drachtio server for control connections (typically 9022) | yes | +| DRACHTIO_SECRET | shared secret | yes | +| ENABLE_METRICS | if 1, metrics will be generated | no | +| ENCRYPTION_SECRET | secret for credential encryption(JWT_SECRET is deprecated) | yes | +| GOOGLE_APPLICATION_CREDENTIALS | path to gcp service key file | yes | +| HTTP_PORT | tcp port to listen on for API requests from jambonz-api-server | yes | +| JAMBONES_GATHER_EARLY_HINTS_MATCH | if true and hints are provided, gather will opportunistically review interim transcripts if possible to reduce ASR latency | no | +| JAMBONES_FREESWITCH | IP:port:secret for Freeswitch server (e.g. '127.0.0.1:8021:JambonzR0ck$' | yes | +| JAMBONES_LOGLEVEL | log level for application, 'info' or 'debug' | no | +| JAMBONES_MYSQL_HOST | mysql host | yes | +| JAMBONES_MYSQL_USER | mysql username | yes | +| JAMBONES_MYSQL_PASSWORD | mysql password | yes | +| JAMBONES_MYSQL_DATABASE | mysql data | yes | +| JAMBONES_MYSQL_CONNECTION_LIMIT | mysql connection limit | no | +| JAMBONES_NETWORK_CIDR | CIDR of private network that feature server is running in (e.g. '172.31.0.0/16') | yes | +| JAMBONES_REDIS_HOST | redis host | yes | +| JAMBONES_REDIS_PORT | redis port | yes | +| JAMBONES_SBCS | list of IP addresses (on the internal network) of SBCs, comma-separated | yes | +| STATS_HOST | ip address of metrics host (usually '127.0.0.1' since telegraf is installed locally | no | +| STATS_PORT | listening port for metrics host | no | +| STATS_PROTOCOL | 'tcp' or 'udp' | no | +| STATS_TELEGRAF | if 1, metrics will be generated in telegraf format | no | +| JAMBONES_OTEL_ENABLED | set to 1 to enable otel tracing | no | +| JAMBONES_OTEL_SERVICE_NAME | app name, defaults to 'jambones-feature-server' | no | +| OTEL_EXPORTER_JAEGER_ENDPOINT | jaeger endpoint url 'http://127.0.0.1:14268/api/traces' | no | + ### running under pm2 Typically, this application runs under [pm2](https://pm2.io) using an [ecosystem.config.js](https://pm2.keymetrics.io/docs/usage/application-declaration/) file similar to this: @@ -89,4 +93,4 @@ module.exports = { #### Running the test suite -Please [see this](./docs/contributing.md#run-the-regression-test-suite). \ No newline at end of file +Please [see this](./docs/contributing.md#run-the-regression-test-suite). From 7c8c9c88d8a40e8d08bdcc5e040e918ec166a3e1 Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 16:31:15 +0100 Subject: [PATCH 30/74] X-Trace-ID header place-outdial.js --- lib/utils/place-outdial.js | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 1dae7d5e8..da8420ead 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -71,6 +71,7 @@ class SingleDialer extends Emitter { ...(this.from.host && {'X-Preferred-From-Host': this.from.host}), 'X-Jambonz-Routing': this.target.type, 'X-Call-Sid': this.callSid, + 'X-Trace-ID' : srf.locals.traceId, ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}) }; if (srf.locals.fsUUID) { From feddc2867637297906a5de70a47acd6056991f2b Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 17:36:29 +0100 Subject: [PATCH 31/74] getSIPTracingPropagationHeaders --- lib/http-routes/api/create-call.js | 13 +++++++------ lib/middleware.js | 4 +--- lib/session/call-session.js | 2 +- lib/session/siprec-call-session.js | 4 ++-- lib/utils/place-outdial.js | 7 ++++--- package-lock.json | 14 +++++++------- package.json | 2 +- 7 files changed, 23 insertions(+), 23 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 036a44396..0cf4e4489 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -45,7 +45,6 @@ router.post('/', async(req, res) => { 'X-Jambonz-FS-UUID': srf.locals.fsUUID, 'X-Call-Sid': callSid, 'X-Account-Sid': accountSid, - 'X-Trace-ID' : traceId, ...(restDial.fromHost && {'X-Preferred-From-Host': restDial.fromHost}) }; @@ -163,6 +162,10 @@ router.post('/', async(req, res) => { try { const dlg = await srf.createUAC(uri, {...opts, followRedirects: true, keepUriOnRedirect: true}, { cbRequest: (err, inviteReq) => { + + const {tracer} = inviteReq.srf.locals.otel; + const rootSpan = RootSpan.createFromSIPCallId('fs:rest-call', inviteReq, {}, tracer, logger); + /* in case of 302 redirect, this gets called twice, ignore the second except to update the req so that it can later be canceled if need be */ @@ -173,6 +176,7 @@ router.post('/', async(req, res) => { } if (err) { + rootSpan.end(); logger.error(err, 'createCall Error creating call'); res.status(500).send('Call Failure'); return; @@ -183,13 +187,10 @@ router.post('/', async(req, res) => { callSid, application_sid: app.application_sid }; + rootSpan.setAttributes(inviteReq.locals); /* ok our outbound INVITE is in flight */ - - const tasks = [restDial]; - const callId = inviteReq.get('Call-ID'); - const {tracer} = inviteReq.srf.locals.otel; - const rootSpan = new RootSpan('rest-call', traceId, inviteReq.locals, tracer, logger); + const tasks = [restDial]; sipLogger = logger.child({ callSid, callId, diff --git a/lib/middleware.js b/lib/middleware.js index ad572c130..c72321941 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -87,9 +87,7 @@ module.exports = function(srf, logger) { const {tracer} = req.srf.locals.otel; const {callId, ...attributes} = getAttributes(); - const newTraceId = req.get('X-Trace-ID') || callId.replaceAll('-', '').substring(0, 32); - const rootSpan = new RootSpan('incoming-call', newTraceId, attributes, tracer, logger); - + const rootSpan = RootSpan.createFromSIPHeaders('fs:incoming-call', req, attributes, tracer, logger); const traceId = rootSpan.traceId; const {callSid, accountSid} = attributes; diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 69e3d377c..10f4a8597 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -1450,7 +1450,7 @@ class CallSession extends Emitter { assert(this.ep); this.dlg = await this.srf.createUAS(this.req, this.res, { headers: { - 'X-Trace-ID': this.req.locals.traceId, + ...this.rootSpan.getSIPTracingPropagationHeaders(), 'X-Call-Sid': this.req.locals.callSid, ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}) }, diff --git a/lib/session/siprec-call-session.js b/lib/session/siprec-call-session.js index 8cfed7057..48c4d8969 100644 --- a/lib/session/siprec-call-session.js +++ b/lib/session/siprec-call-session.js @@ -62,9 +62,9 @@ class SipRecCallSession extends InboundCallSession { this.dlg = await this.srf.createUAS(this.req, this.res, { headers: { 'Content-Type': 'application/sdp', - 'X-Trace-ID': this.req.locals.traceId, 'X-Call-Sid': this.req.locals.callSid, - ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}) + ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}), + ...this.rootSpan.getSIPTracingPropagationHeaders() }, localSdp: combinedSdp }); diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index da8420ead..ca6774576 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -71,8 +71,8 @@ class SingleDialer extends Emitter { ...(this.from.host && {'X-Preferred-From-Host': this.from.host}), 'X-Jambonz-Routing': this.target.type, 'X-Call-Sid': this.callSid, - 'X-Trace-ID' : srf.locals.traceId, - ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}) + ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}), + ...srf.rootSpan.getSIPTracingPropagationHeaders() }; if (srf.locals.fsUUID) { opts.headers = { @@ -367,8 +367,9 @@ class SingleDialer extends Emitter { this.dlg.callSid = this.callSid; this.dlg.linkedSpanId = this.rootSpan.traceId; + //todo figure out how to grab traceId of original call const {sip: {callId}, callSid, linkedSpanId, otel: {tracer}} = this.dlg; - const rootSpan = new RootSpan('outbound-call', callId, + const rootSpan = new RootSpan('fs:adulting-call', callId, null, {linkedSpanId, callId, callSid}, tracer, this.logger); diff --git a/package-lock.json b/package-lock.json index 91ce8867f..7d758345f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/tracing": "^0.1.6", + "@jambonz/tracing": "^0.1.8", "@jambonz/verb-specifications": "^0.0.14", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", @@ -1656,9 +1656,9 @@ } }, "node_modules/@jambonz/tracing": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.6.tgz", - "integrity": "sha512-xOXJR99nfQKkHenAimpWOtmXOPoyxYQLLzszWKxTq81AKq97XsM69ikQWskEdKHTeiVive4YDMOo6j4Pzi5fEg==", + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.8.tgz", + "integrity": "sha512-xQ28r2Vd+fd7bvh1RBZq0pLOa16mczsZA+P6whLD4UsGNFrMcNeJB6jDxo1g5Ycz1WpX4gMy3GPbBs7szXBd2g==", "dependencies": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", @@ -9979,9 +9979,9 @@ } }, "@jambonz/tracing": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.6.tgz", - "integrity": "sha512-xOXJR99nfQKkHenAimpWOtmXOPoyxYQLLzszWKxTq81AKq97XsM69ikQWskEdKHTeiVive4YDMOo6j4Pzi5fEg==", + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.8.tgz", + "integrity": "sha512-xQ28r2Vd+fd7bvh1RBZq0pLOa16mczsZA+P6whLD4UsGNFrMcNeJB6jDxo1g5Ycz1WpX4gMy3GPbBs7szXBd2g==", "requires": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", diff --git a/package.json b/package.json index 96373be41..a0d170ceb 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", "@jambonz/verb-specifications": "^0.0.14", - "@jambonz/tracing" : "^0.1.6", + "@jambonz/tracing" : "^0.1.8", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From 63fe5e132196e0ff299e4393480a55fcf9e95f50 Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 17:50:15 +0100 Subject: [PATCH 32/74] getSIPTracingPropagationHeaders on child span --- lib/utils/place-outdial.js | 7 +++++-- package-lock.json | 14 +++++++------- package.json | 2 +- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index ca6774576..046a1cc44 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -72,7 +72,7 @@ class SingleDialer extends Emitter { 'X-Jambonz-Routing': this.target.type, 'X-Call-Sid': this.callSid, ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}), - ...srf.rootSpan.getSIPTracingPropagationHeaders() + ...this.rootSpan.getSIPTracingPropagationHeaders() }; if (srf.locals.fsUUID) { opts.headers = { @@ -151,7 +151,10 @@ class SingleDialer extends Emitter { 'invite.uri': uri, 'invite.dest_type': this.target.type }); - + opts.headers = { + ...opts.headers, + ...inviteSpan.getSIPTracingPropagationHeaders() + }; this.dlg = await srf.createUAC(uri, {...opts, followRedirects: true, keepUriOnRedirect: true}, { cbRequest: (err, req) => { if (err) { diff --git a/package-lock.json b/package-lock.json index 7d758345f..20e189831 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/tracing": "^0.1.8", + "@jambonz/tracing": "^0.1.9", "@jambonz/verb-specifications": "^0.0.14", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", @@ -1656,9 +1656,9 @@ } }, "node_modules/@jambonz/tracing": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.8.tgz", - "integrity": "sha512-xQ28r2Vd+fd7bvh1RBZq0pLOa16mczsZA+P6whLD4UsGNFrMcNeJB6jDxo1g5Ycz1WpX4gMy3GPbBs7szXBd2g==", + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.9.tgz", + "integrity": "sha512-pkAMe/KNnS/v7uM2xZyrYy2VWF38KMe1cDzf9zkQ6IhQL5KC8ey0hBXZ83bHPoymOqRwzKUfTpMLdtv1dzWRig==", "dependencies": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", @@ -9979,9 +9979,9 @@ } }, "@jambonz/tracing": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.8.tgz", - "integrity": "sha512-xQ28r2Vd+fd7bvh1RBZq0pLOa16mczsZA+P6whLD4UsGNFrMcNeJB6jDxo1g5Ycz1WpX4gMy3GPbBs7szXBd2g==", + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.9.tgz", + "integrity": "sha512-pkAMe/KNnS/v7uM2xZyrYy2VWF38KMe1cDzf9zkQ6IhQL5KC8ey0hBXZ83bHPoymOqRwzKUfTpMLdtv1dzWRig==", "requires": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", diff --git a/package.json b/package.json index a0d170ceb..8a48c3b03 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", "@jambonz/verb-specifications": "^0.0.14", - "@jambonz/tracing" : "^0.1.8", + "@jambonz/tracing" : "^0.1.9", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From 7befcc8fc7eeade389c5bf80553dad3ef098207a Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 18:26:52 +0100 Subject: [PATCH 33/74] FS -> SBC incorrect spanId --- lib/session/call-session.js | 4 ++-- lib/utils/place-outdial.js | 11 +++++------ 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 10f4a8597..b7f4b2de4 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -1450,9 +1450,9 @@ class CallSession extends Emitter { assert(this.ep); this.dlg = await this.srf.createUAS(this.req, this.res, { headers: { - ...this.rootSpan.getSIPTracingPropagationHeaders(), 'X-Call-Sid': this.req.locals.callSid, - ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}) + ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}), + ...this.rootSpan.getSIPTracingPropagationHeaders(), }, localSdp: this.ep.local.sdp }); diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 046a1cc44..75d64a475 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -62,6 +62,7 @@ class SingleDialer extends Emitter { } async exec(srf, ms, opts) { + const childSpan = this.startSpan('placeOutDial:exec', {}); opts = opts || {}; opts.headers = opts.headers || {}; opts.headers = { @@ -72,7 +73,7 @@ class SingleDialer extends Emitter { 'X-Jambonz-Routing': this.target.type, 'X-Call-Sid': this.callSid, ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}), - ...this.rootSpan.getSIPTracingPropagationHeaders() + ...childSpan.getSIPTracingPropagationHeaders() }; if (srf.locals.fsUUID) { opts.headers = { @@ -147,14 +148,10 @@ class SingleDialer extends Emitter { localSdp: this.ep.local.sdp }); if (this.target.auth) opts.auth = this.target.auth; - inviteSpan = this.startSpan('invite', { + inviteSpan = childSpan.startChildSpan('invite', { 'invite.uri': uri, 'invite.dest_type': this.target.type }); - opts.headers = { - ...opts.headers, - ...inviteSpan.getSIPTracingPropagationHeaders() - }; this.dlg = await srf.createUAC(uri, {...opts, followRedirects: true, keepUriOnRedirect: true}, { cbRequest: (err, req) => { if (err) { @@ -233,6 +230,7 @@ class SingleDialer extends Emitter { duration }); if (this.ep) this.ep.destroy(); + childSpan.endWithError('race condition'); return; } @@ -289,6 +287,7 @@ class SingleDialer extends Emitter { this.emit('callStatusChange', status); if (this.ep) this.ep.destroy(); } + childSpan.end(); } /** From e1d878c4b30119bf48d465b03af32ae275b921ff Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 20:02:17 +0100 Subject: [PATCH 34/74] minor fix --- lib/http-routes/api/create-call.js | 2 +- lib/middleware.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 0cf4e4489..8c1927701 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -164,7 +164,7 @@ router.post('/', async(req, res) => { cbRequest: (err, inviteReq) => { const {tracer} = inviteReq.srf.locals.otel; - const rootSpan = RootSpan.createFromSIPCallId('fs:rest-call', inviteReq, {}, tracer, logger); + const rootSpan = new RootSpan('fs:rest-call', inviteReq.get('Call-ID'), null, {}, tracer, logger); /* in case of 302 redirect, this gets called twice, ignore the second except to update the req so that it can later be canceled if need be diff --git a/lib/middleware.js b/lib/middleware.js index c72321941..0d540b206 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -87,7 +87,7 @@ module.exports = function(srf, logger) { const {tracer} = req.srf.locals.otel; const {callId, ...attributes} = getAttributes(); - const rootSpan = RootSpan.createFromSIPHeaders('fs:incoming-call', req, attributes, tracer, logger); + const rootSpan = new RootSpan('fs:incoming-call', req.get('X-Trace-ID'), req.get('X-Span-ID'), attributes, tracer, logger); const traceId = rootSpan.traceId; const {callSid, accountSid} = attributes; From 0356b996bacf53854429c0fa01e77a43abed10fd Mon Sep 17 00:00:00 2001 From: Hoan Luu Huu <110280845+xquanluu@users.noreply.github.com> Date: Tue, 18 Apr 2023 17:34:39 +0700 Subject: [PATCH 35/74] fix: wss requestor incase mysql cache is used (#319) --- lib/middleware.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/middleware.js b/lib/middleware.js index f37350e63..2c3cb4eaa 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -248,8 +248,9 @@ module.exports = function(srf, logger) { const app2 = JAMBONES_MYSQL_REFRESH_TTL ? JSON.parse(JSON.stringify(app)) : app; if ('WS' === app.call_hook?.method || app.call_hook?.url.startsWith('ws://') || app.call_hook?.url.startsWith('wss://')) { - app2.requestor = new WsRequestor(logger, account_sid, app.call_hook, accountInfo.account.webhook_secret) ; - app2.notifier = app.requestor; + const requestor = new WsRequestor(logger, account_sid, app.call_hook, accountInfo.account.webhook_secret) ; + app2.requestor = requestor; + app2.notifier = requestor; app2.call_hook.method = 'WS'; } else { From a22bc8ea4250d4dadca218ee17afc29dac210f9f Mon Sep 17 00:00:00 2001 From: Dave Horton Date: Tue, 18 Apr 2023 21:58:30 -0400 Subject: [PATCH 36/74] fix issue where multiple gathers running simultaneously (#321) --- lib/session/call-session.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/session/call-session.js b/lib/session/call-session.js index d7c17298b..6166fd4ba 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -529,7 +529,7 @@ class CallSession extends Emitter { this.logger.info({currInput, newInput}, 'CallSession:enableBotMode - restarting background gather to apply new input type'); this.backgroundGatherTask.sticky = false; - this.disableBotMode(); + await this.disableBotMode(); } } this.backgroundGatherTask = task; @@ -568,12 +568,12 @@ class CallSession extends Emitter { this.logger.info({err, gather}, 'CallSession:enableBotMode - Error creating gather task'); } } - disableBotMode() { + async disableBotMode() { this._bargeInEnabled = false; if (this.backgroundGatherTask) { try { this.backgroundGatherTask.removeAllListeners(); - this.backgroundGatherTask.kill().catch((err) => {}); + await this.backgroundGatherTask.kill(); } catch (err) {} this.backgroundGatherTask = null; } @@ -724,7 +724,7 @@ class CallSession extends Emitter { } else { this.logger.info('CallSession:exec disabling bot mode to start gather with new options'); - this.disableBotMode(); + await this.disableBotMode(); } } if (!skip) { From 6dc019e836112713389dfe86c40bfabfb7bd676f Mon Sep 17 00:00:00 2001 From: Dave Horton Date: Wed, 19 Apr 2023 15:12:51 -0400 Subject: [PATCH 37/74] fix: amd support for language other than en-US (#322) --- data/example-voicemail-greetings.json | 22 ++++++++++++++++------ lib/utils/amd-utils.js | 2 +- 2 files changed, 17 insertions(+), 7 deletions(-) diff --git a/data/example-voicemail-greetings.json b/data/example-voicemail-greetings.json index edeb1f42d..16c42d5df 100644 --- a/data/example-voicemail-greetings.json +++ b/data/example-voicemail-greetings.json @@ -5,14 +5,11 @@ "at the tone", "leave a message", "leave me a message", - "not available right now", - "not available to take your call", + "not available", "can't take your call", - "I will get back to you", + "will get back to you", "I'll get back to you", - "we will get back to you", - "we are unable", - "we are not available" + "we are unable" ], "es-ES": [ "le pasamos la llamada", @@ -48,5 +45,18 @@ "ens posarem en contacto", "ara no estem disponibles", "no hi som" + ], + "de-DE": [ + "nicht erreichbar", + "nnruf wurde weitergeleitet", + "beim piepsen", + "am ton", + "eine nachricht hinterlassen", + "hinterlasse mir eine Nachricht", + "nicht verfügbar", + "kann ihren anruf nicht entgegennehmen", + "wird sich bei Ihnen melden", + "ich melde mich bei dir", + "wir können nicht" ] } diff --git a/lib/utils/amd-utils.js b/lib/utils/amd-utils.js index 5b1c2ffc9..3c417306e 100644 --- a/lib/utils/amd-utils.js +++ b/lib/utils/amd-utils.js @@ -184,7 +184,7 @@ module.exports = (logger) => { const {vendor, language} = ep.amd; ep.startTranscription({ vendor, - language, + locale: language, interim: true, bugname }).catch((err) => { From 9948592080c72ffdad545fca2a2196ea19e4484f Mon Sep 17 00:00:00 2001 From: Hoan Luu Huu <110280845+xquanluu@users.noreply.github.com> Date: Fri, 28 Apr 2023 19:44:10 +0700 Subject: [PATCH 38/74] feat: update verb specification version (#330) --- package-lock.json | 14 +++++++------- package.json | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/package-lock.json b/package-lock.json index a56484f05..26f5e4d2b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/verb-specifications": "^0.0.16", + "@jambonz/verb-specifications": "^0.0.17", "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", @@ -1664,9 +1664,9 @@ } }, "node_modules/@jambonz/verb-specifications": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.16.tgz", - "integrity": "sha512-2ZHpbBmqhRT9a4Cs8HEQncvdp1zS7MbzLsFynVu3gSpvgfeepRtqWX8rxG9VF9Mr+AbJoeCfo+MO0PyJCPWTMA==", + "version": "0.0.17", + "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.17.tgz", + "integrity": "sha512-tYi6rKShNhU/pXc/ZaEeTYfdv5LXmRaGWfdcN499IiGqMnAFZ/0p0HYgOoSsupn90hlquFsy4eyg+41hxherTw==", "dependencies": { "debug": "^4.3.4", "pino": "^8.8.0" @@ -10011,9 +10011,9 @@ } }, "@jambonz/verb-specifications": { - "version": "0.0.16", - "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.16.tgz", - "integrity": "sha512-2ZHpbBmqhRT9a4Cs8HEQncvdp1zS7MbzLsFynVu3gSpvgfeepRtqWX8rxG9VF9Mr+AbJoeCfo+MO0PyJCPWTMA==", + "version": "0.0.17", + "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.17.tgz", + "integrity": "sha512-tYi6rKShNhU/pXc/ZaEeTYfdv5LXmRaGWfdcN499IiGqMnAFZ/0p0HYgOoSsupn90hlquFsy4eyg+41hxherTw==", "requires": { "debug": "^4.3.4", "pino": "^8.8.0" diff --git a/package.json b/package.json index a49bf8aa9..453def029 100644 --- a/package.json +++ b/package.json @@ -31,7 +31,7 @@ "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/verb-specifications": "^0.0.16", + "@jambonz/verb-specifications": "^0.0.17", "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", From 5043edfd4e7f5e34fef4cd218573d7e11d8f9806 Mon Sep 17 00:00:00 2001 From: Dave Horton Date: Mon, 8 May 2023 12:23:32 -0400 Subject: [PATCH 39/74] addresses #340 and #331 (#341) --- lib/session/call-session.js | 32 + lib/tasks/config.js | 13 + lib/utils/db-utils.js | 4 + package-lock.json | 4558 ++++++++++++++++++----------------- package.json | 6 +- test/gather-tests.js | 47 + test/say-tests.js | 40 + 7 files changed, 2498 insertions(+), 2202 deletions(-) diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 6166fd4ba..35515734a 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -64,6 +64,16 @@ class CallSession extends Emitter { this.notifiedComplete = false; this.rootSpan = rootSpan; + this._origRecognizerSettings = { + vendor: this.application?.speech_recognizer_vendor, + language: this.application?.speech_recognizer_language, + }; + this._origSynthesizerSettings = { + vendor: this.application?.speech_synthesis_vendor, + language: this.application?.speech_synthesis_language, + voice: this.application?.speech_synthesis_voice, + }; + assert(rootSpan); this._recordState = RecordState.RecordingOff; @@ -324,6 +334,22 @@ class CallSession extends Emitter { return this._globalSttPunctuation !== undefined; } + resetRecognizer() { + this._globalSttHints = undefined; + this._globalSttPunctuation = undefined; + this._globalAltLanguages = undefined; + this.isContinuousAsr = false; + this.asrDtmfTerminationDigits = undefined; + this.speechRecognizerLanguage = this._origRecognizerSettings.language; + this.speechRecognizerVendor = this._origRecognizerSettings.vendor; + } + + resetSynthesizer() { + this.speechSynthesisLanguage = this._origSynthesizerSettings.language; + this.speechSynthesisVendor = this._origSynthesizerSettings.vendor; + this.speechSynthesisVoice = this._origSynthesizerSettings.voice; + } + async notifyRecordOptions(opts) { const {action} = opts; this.logger.debug({opts}, 'CallSession:notifyRecordOptions'); @@ -680,6 +706,12 @@ class CallSession extends Emitter { stt_region: credential.stt_region }; } + else if ('nvidia' === vendor) { + return { + speech_credential_sid: credential.speech_credential_sid, + riva_server_uri: credential.riva_server_uri + }; + } else if (vendor.startsWith('custom:')) { return { speech_credential_sid: credential.speech_credential_sid, diff --git a/lib/tasks/config.js b/lib/tasks/config.js index 4e5bc137e..a7737fbf4 100644 --- a/lib/tasks/config.js +++ b/lib/tasks/config.js @@ -45,6 +45,14 @@ class TaskConfig extends Task { get summary() { const phrase = []; + + /* reset recognizer and/or synthesizer to default values? */ + if (this.data.reset) { + if (typeof this.data.reset === 'string') this.data.reset = [this.data.reset]; + phrase.push(`reset ${this.data.reset.join(',')}`); + } + else this.data.reset = []; + if (this.bargeIn.enable) phrase.push('enable barge-in'); if (this.hasSynthesizer) { const {vendor:v, language:l, voice} = this.synthesizer; @@ -86,6 +94,11 @@ class TaskConfig extends Task { } } + this.data.reset.forEach((k) => { + if (k === 'synthesizer') cs.resetSynthesizer(); + else if (k === 'recognizer') cs.resetRecognizer(); + }); + if (this.hasSynthesizer) { cs.speechSynthesisVendor = this.synthesizer.vendor !== 'default' ? this.synthesizer.vendor diff --git a/lib/utils/db-utils.js b/lib/utils/db-utils.js index f3eb17449..065aaccc7 100644 --- a/lib/utils/db-utils.js +++ b/lib/utils/db-utils.js @@ -78,6 +78,10 @@ const speechMapper = (cred) => { const o = JSON.parse(decrypt(credential)); obj.api_key = o.api_key; } + else if ('nvidia' === obj.vendor) { + const o = JSON.parse(decrypt(credential)); + obj.riva_server_uri = o.riva_server_uri; + } else if (obj.vendor.startsWith('custom:')) { const o = JSON.parse(decrypt(credential)); obj.auth_token = o.auth_token; diff --git a/package-lock.json b/package-lock.json index 26f5e4d2b..e9f30f8a8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,13 +9,13 @@ "version": "v0.8.2", "license": "MIT", "dependencies": { - "@jambonz/db-helpers": "^0.7.4", + "@jambonz/db-helpers": "^0.7.9", "@jambonz/http-health-check": "^0.0.1", - "@jambonz/realtimedb-helpers": "^0.7.0", + "@jambonz/realtimedb-helpers": "^0.7.2", "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/verb-specifications": "^0.0.17", + "@jambonz/verb-specifications": "^0.0.21", "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", @@ -64,12 +64,12 @@ } }, "node_modules/@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/gen-mapping": "^0.3.0", "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { @@ -153,11 +153,11 @@ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@aws-sdk/abort-controller": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.303.0.tgz", - "integrity": "sha512-LzNzpeyTppcmV/6SAQI3T/huOkMrUnFveplgVNwJxw+rVqmqmGV6z6vpg+oRICRDcjXWYiSiaClxxSVvOy0sDQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.310.0.tgz", + "integrity": "sha512-v1zrRQxDLA1MdPim159Vx/CPHqsB4uybSxRi1CnfHO5ZjHryx3a5htW2gdGAykVCul40+yJXvfpufMrELVxH+g==", "dependencies": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -165,46 +165,46 @@ } }, "node_modules/@aws-sdk/client-polly": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-polly/-/client-polly-3.303.0.tgz", - "integrity": "sha512-Cw5V6ViZDrtvhz6Txw8inxtKysJfgQSeJiB3H/sHLklwIU417+8LoxCs1+090Czq2kPw7JmIRy44RXLtJT2v8g==", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-polly/-/client-polly-3.328.0.tgz", + "integrity": "sha512-lnxmJPRmPkQEWt+V+492CV7Y/HZrbKXa38xQgRQOC6ZmXyoaJhnwCVRERm9KcxUXfrcLhiHrSnR8e24V283YIg==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.303.0", - "@aws-sdk/config-resolver": "3.303.0", - "@aws-sdk/credential-provider-node": "3.303.0", - "@aws-sdk/fetch-http-handler": "3.303.0", - "@aws-sdk/hash-node": "3.303.0", - "@aws-sdk/invalid-dependency": "3.303.0", - "@aws-sdk/middleware-content-length": "3.303.0", - "@aws-sdk/middleware-endpoint": "3.303.0", - "@aws-sdk/middleware-host-header": "3.303.0", - "@aws-sdk/middleware-logger": "3.303.0", - "@aws-sdk/middleware-recursion-detection": "3.303.0", - "@aws-sdk/middleware-retry": "3.303.0", - "@aws-sdk/middleware-serde": "3.303.0", - "@aws-sdk/middleware-signing": "3.303.0", - "@aws-sdk/middleware-stack": "3.303.0", - "@aws-sdk/middleware-user-agent": "3.303.0", - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/node-http-handler": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/smithy-client": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", - "@aws-sdk/util-body-length-browser": "3.303.0", - "@aws-sdk/util-body-length-node": "3.303.0", - "@aws-sdk/util-defaults-mode-browser": "3.303.0", - "@aws-sdk/util-defaults-mode-node": "3.303.0", - "@aws-sdk/util-endpoints": "3.303.0", - "@aws-sdk/util-retry": "3.303.0", - "@aws-sdk/util-stream-browser": "3.303.0", - "@aws-sdk/util-stream-node": "3.303.0", - "@aws-sdk/util-user-agent-browser": "3.303.0", - "@aws-sdk/util-user-agent-node": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "@aws-sdk/client-sts": "3.328.0", + "@aws-sdk/config-resolver": "3.310.0", + "@aws-sdk/credential-provider-node": "3.328.0", + "@aws-sdk/fetch-http-handler": "3.310.0", + "@aws-sdk/hash-node": "3.310.0", + "@aws-sdk/invalid-dependency": "3.310.0", + "@aws-sdk/middleware-content-length": "3.325.0", + "@aws-sdk/middleware-endpoint": "3.325.0", + "@aws-sdk/middleware-host-header": "3.325.0", + "@aws-sdk/middleware-logger": "3.325.0", + "@aws-sdk/middleware-recursion-detection": "3.325.0", + "@aws-sdk/middleware-retry": "3.327.0", + "@aws-sdk/middleware-serde": "3.325.0", + "@aws-sdk/middleware-signing": "3.325.0", + "@aws-sdk/middleware-stack": "3.325.0", + "@aws-sdk/middleware-user-agent": "3.327.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/node-http-handler": "3.328.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/smithy-client": "3.325.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", + "@aws-sdk/util-body-length-browser": "3.310.0", + "@aws-sdk/util-body-length-node": "3.310.0", + "@aws-sdk/util-defaults-mode-browser": "3.325.0", + "@aws-sdk/util-defaults-mode-node": "3.325.0", + "@aws-sdk/util-endpoints": "3.327.0", + "@aws-sdk/util-retry": "3.327.0", + "@aws-sdk/util-stream-browser": "3.310.0", + "@aws-sdk/util-stream-node": "3.328.0", + "@aws-sdk/util-user-agent-browser": "3.310.0", + "@aws-sdk/util-user-agent-node": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -212,41 +212,41 @@ } }, "node_modules/@aws-sdk/client-sso": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.303.0.tgz", - "integrity": "sha512-LZ+Z6vGnEdqmxx0dqtZP97n5VX5uUKu4lJmDR3sdGolxAUqCY1FxHDZd9DzCFXR8rwoJK4VJTL+exzeVp4Ly/g==", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.328.0.tgz", + "integrity": "sha512-IneVwc4j3bCXwCdNAALQ8VVrfFTFAb2f3FxerHv4DLx8OlMTvZiraDDJisfO+cXLl2WCJOJAzpAJTgrPA50LCg==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.303.0", - "@aws-sdk/fetch-http-handler": "3.303.0", - "@aws-sdk/hash-node": "3.303.0", - "@aws-sdk/invalid-dependency": "3.303.0", - "@aws-sdk/middleware-content-length": "3.303.0", - "@aws-sdk/middleware-endpoint": "3.303.0", - "@aws-sdk/middleware-host-header": "3.303.0", - "@aws-sdk/middleware-logger": "3.303.0", - "@aws-sdk/middleware-recursion-detection": "3.303.0", - "@aws-sdk/middleware-retry": "3.303.0", - "@aws-sdk/middleware-serde": "3.303.0", - "@aws-sdk/middleware-stack": "3.303.0", - "@aws-sdk/middleware-user-agent": "3.303.0", - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/node-http-handler": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/smithy-client": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", - "@aws-sdk/util-body-length-browser": "3.303.0", - "@aws-sdk/util-body-length-node": "3.303.0", - "@aws-sdk/util-defaults-mode-browser": "3.303.0", - "@aws-sdk/util-defaults-mode-node": "3.303.0", - "@aws-sdk/util-endpoints": "3.303.0", - "@aws-sdk/util-retry": "3.303.0", - "@aws-sdk/util-user-agent-browser": "3.303.0", - "@aws-sdk/util-user-agent-node": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "@aws-sdk/config-resolver": "3.310.0", + "@aws-sdk/fetch-http-handler": "3.310.0", + "@aws-sdk/hash-node": "3.310.0", + "@aws-sdk/invalid-dependency": "3.310.0", + "@aws-sdk/middleware-content-length": "3.325.0", + "@aws-sdk/middleware-endpoint": "3.325.0", + "@aws-sdk/middleware-host-header": "3.325.0", + "@aws-sdk/middleware-logger": "3.325.0", + "@aws-sdk/middleware-recursion-detection": "3.325.0", + "@aws-sdk/middleware-retry": "3.327.0", + "@aws-sdk/middleware-serde": "3.325.0", + "@aws-sdk/middleware-stack": "3.325.0", + "@aws-sdk/middleware-user-agent": "3.327.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/node-http-handler": "3.328.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/smithy-client": "3.325.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", + "@aws-sdk/util-body-length-browser": "3.310.0", + "@aws-sdk/util-body-length-node": "3.310.0", + "@aws-sdk/util-defaults-mode-browser": "3.325.0", + "@aws-sdk/util-defaults-mode-node": "3.325.0", + "@aws-sdk/util-endpoints": "3.327.0", + "@aws-sdk/util-retry": "3.327.0", + "@aws-sdk/util-user-agent-browser": "3.310.0", + "@aws-sdk/util-user-agent-node": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -254,41 +254,41 @@ } }, "node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.303.0.tgz", - "integrity": "sha512-oOdDcBjxGiJ6mFWUMVr+A1hAzGRpcZ+oLAhCakpvpXCUG50PZSBFP+vOQXgHY/XNolqDg+IHq60oE9HoPzGleg==", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.328.0.tgz", + "integrity": "sha512-2T6Snri7ovx9+q/iw/wZ1YHzz/SsxPuJOhgbJipCFW9f1IEPBIEKVZtywcKYzE1nYjyc6YanAqQMn6U2SPhW4A==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.303.0", - "@aws-sdk/fetch-http-handler": "3.303.0", - "@aws-sdk/hash-node": "3.303.0", - "@aws-sdk/invalid-dependency": "3.303.0", - "@aws-sdk/middleware-content-length": "3.303.0", - "@aws-sdk/middleware-endpoint": "3.303.0", - "@aws-sdk/middleware-host-header": "3.303.0", - "@aws-sdk/middleware-logger": "3.303.0", - "@aws-sdk/middleware-recursion-detection": "3.303.0", - "@aws-sdk/middleware-retry": "3.303.0", - "@aws-sdk/middleware-serde": "3.303.0", - "@aws-sdk/middleware-stack": "3.303.0", - "@aws-sdk/middleware-user-agent": "3.303.0", - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/node-http-handler": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/smithy-client": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", - "@aws-sdk/util-body-length-browser": "3.303.0", - "@aws-sdk/util-body-length-node": "3.303.0", - "@aws-sdk/util-defaults-mode-browser": "3.303.0", - "@aws-sdk/util-defaults-mode-node": "3.303.0", - "@aws-sdk/util-endpoints": "3.303.0", - "@aws-sdk/util-retry": "3.303.0", - "@aws-sdk/util-user-agent-browser": "3.303.0", - "@aws-sdk/util-user-agent-node": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "@aws-sdk/config-resolver": "3.310.0", + "@aws-sdk/fetch-http-handler": "3.310.0", + "@aws-sdk/hash-node": "3.310.0", + "@aws-sdk/invalid-dependency": "3.310.0", + "@aws-sdk/middleware-content-length": "3.325.0", + "@aws-sdk/middleware-endpoint": "3.325.0", + "@aws-sdk/middleware-host-header": "3.325.0", + "@aws-sdk/middleware-logger": "3.325.0", + "@aws-sdk/middleware-recursion-detection": "3.325.0", + "@aws-sdk/middleware-retry": "3.327.0", + "@aws-sdk/middleware-serde": "3.325.0", + "@aws-sdk/middleware-stack": "3.325.0", + "@aws-sdk/middleware-user-agent": "3.327.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/node-http-handler": "3.328.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/smithy-client": "3.325.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", + "@aws-sdk/util-body-length-browser": "3.310.0", + "@aws-sdk/util-body-length-node": "3.310.0", + "@aws-sdk/util-defaults-mode-browser": "3.325.0", + "@aws-sdk/util-defaults-mode-node": "3.325.0", + "@aws-sdk/util-endpoints": "3.327.0", + "@aws-sdk/util-retry": "3.327.0", + "@aws-sdk/util-user-agent-browser": "3.310.0", + "@aws-sdk/util-user-agent-node": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -296,44 +296,44 @@ } }, "node_modules/@aws-sdk/client-sts": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.303.0.tgz", - "integrity": "sha512-oda7mOfGyJZe62DZ5BVH3L84yeDM0Ja/fSpTjwV9hqFqzgtW83TCpiNegcJmvmGWDYaPmE2qpfDPqPzymB0sBg==", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.328.0.tgz", + "integrity": "sha512-Eedz24H7zLuTjJoCtNQEGOKbIlhibqyasFFwWsds6ds24hRF4fVrCKLwZWENZwawtJjjEdRESQe4dwpV5lWqtw==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.303.0", - "@aws-sdk/credential-provider-node": "3.303.0", - "@aws-sdk/fetch-http-handler": "3.303.0", - "@aws-sdk/hash-node": "3.303.0", - "@aws-sdk/invalid-dependency": "3.303.0", - "@aws-sdk/middleware-content-length": "3.303.0", - "@aws-sdk/middleware-endpoint": "3.303.0", - "@aws-sdk/middleware-host-header": "3.303.0", - "@aws-sdk/middleware-logger": "3.303.0", - "@aws-sdk/middleware-recursion-detection": "3.303.0", - "@aws-sdk/middleware-retry": "3.303.0", - "@aws-sdk/middleware-sdk-sts": "3.303.0", - "@aws-sdk/middleware-serde": "3.303.0", - "@aws-sdk/middleware-signing": "3.303.0", - "@aws-sdk/middleware-stack": "3.303.0", - "@aws-sdk/middleware-user-agent": "3.303.0", - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/node-http-handler": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/smithy-client": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", - "@aws-sdk/util-body-length-browser": "3.303.0", - "@aws-sdk/util-body-length-node": "3.303.0", - "@aws-sdk/util-defaults-mode-browser": "3.303.0", - "@aws-sdk/util-defaults-mode-node": "3.303.0", - "@aws-sdk/util-endpoints": "3.303.0", - "@aws-sdk/util-retry": "3.303.0", - "@aws-sdk/util-user-agent-browser": "3.303.0", - "@aws-sdk/util-user-agent-node": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "@aws-sdk/config-resolver": "3.310.0", + "@aws-sdk/credential-provider-node": "3.328.0", + "@aws-sdk/fetch-http-handler": "3.310.0", + "@aws-sdk/hash-node": "3.310.0", + "@aws-sdk/invalid-dependency": "3.310.0", + "@aws-sdk/middleware-content-length": "3.325.0", + "@aws-sdk/middleware-endpoint": "3.325.0", + "@aws-sdk/middleware-host-header": "3.325.0", + "@aws-sdk/middleware-logger": "3.325.0", + "@aws-sdk/middleware-recursion-detection": "3.325.0", + "@aws-sdk/middleware-retry": "3.327.0", + "@aws-sdk/middleware-sdk-sts": "3.326.0", + "@aws-sdk/middleware-serde": "3.325.0", + "@aws-sdk/middleware-signing": "3.325.0", + "@aws-sdk/middleware-stack": "3.325.0", + "@aws-sdk/middleware-user-agent": "3.327.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/node-http-handler": "3.328.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/smithy-client": "3.325.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", + "@aws-sdk/util-body-length-browser": "3.310.0", + "@aws-sdk/util-body-length-node": "3.310.0", + "@aws-sdk/util-defaults-mode-browser": "3.325.0", + "@aws-sdk/util-defaults-mode-node": "3.325.0", + "@aws-sdk/util-endpoints": "3.327.0", + "@aws-sdk/util-retry": "3.327.0", + "@aws-sdk/util-user-agent-browser": "3.310.0", + "@aws-sdk/util-user-agent-node": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "fast-xml-parser": "4.1.2", "tslib": "^2.5.0" }, @@ -342,13 +342,13 @@ } }, "node_modules/@aws-sdk/config-resolver": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.303.0.tgz", - "integrity": "sha512-uGZ47jcH86AwWcjZjuOL5jK5qE4izrEol8oF7KY214kjmavbKQstyUqmcwL2lr/YpDNFkCYgUxWRpduqVm8zmw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.310.0.tgz", + "integrity": "sha512-8vsT+/50lOqfDxka9m/rRt6oxv1WuGZoP8oPMk0Dt+TxXMbAzf4+rejBgiB96wshI1k3gLokYRjSQZn+dDtT8g==", "dependencies": { - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-config-provider": "3.295.0", - "@aws-sdk/util-middleware": "3.303.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-config-provider": "3.310.0", + "@aws-sdk/util-middleware": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -356,12 +356,12 @@ } }, "node_modules/@aws-sdk/credential-provider-env": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.303.0.tgz", - "integrity": "sha512-rtXumfF4cGrVk9fWACeLCfdpmlzlDUkzwSR60/3enC5Antcxl3fFY5T1BzNFvz0mB0zcwm4kaAwIcljX67DNRA==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.310.0.tgz", + "integrity": "sha512-vvIPQpI16fj95xwS7M3D48F7QhZJBnnCgB5lR+b7So+vsG9ibm1mZRVGzVpdxCvgyOhHFbvrby9aalNJmmIP1A==", "dependencies": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -369,14 +369,14 @@ } }, "node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.303.0.tgz", - "integrity": "sha512-ruomcFkKUpJkZb87em698//A0AVpt1KN9dn8N8eVyOuvZzebVxSW4AJoVgOKd5Av4PVcZgEqRX0kOOVp0iTrWg==", - "dependencies": { - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.310.0.tgz", + "integrity": "sha512-baxK7Zp6dai5AGW01FIW27xS2KAaPUmKLIXv5SvFYsUgXXvNW55im4uG3b+2gA0F7V+hXvVBH08OEqmwW6we5w==", + "dependencies": { + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -384,18 +384,18 @@ } }, "node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.303.0.tgz", - "integrity": "sha512-4J50F6fEjQmAstSQOpJFG+rnbEqtwA7nDG6PxNm98VSTH2mYJV0YgBdvydfBKrKINAT4xYZta5Sc4WEIpSo0TA==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.303.0", - "@aws-sdk/credential-provider-imds": "3.303.0", - "@aws-sdk/credential-provider-process": "3.303.0", - "@aws-sdk/credential-provider-sso": "3.303.0", - "@aws-sdk/credential-provider-web-identity": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.328.0.tgz", + "integrity": "sha512-tOHzfWQUaQif1IciWs57MFM7bFc+693pnEhFCgT3wjzwjKGkq1QsNzfRlOp1QP4Glw6qV+kAAemEZj8mGth8Bg==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.310.0", + "@aws-sdk/credential-provider-imds": "3.310.0", + "@aws-sdk/credential-provider-process": "3.310.0", + "@aws-sdk/credential-provider-sso": "3.328.0", + "@aws-sdk/credential-provider-web-identity": "3.310.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -403,19 +403,19 @@ } }, "node_modules/@aws-sdk/credential-provider-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.303.0.tgz", - "integrity": "sha512-OlKb7O2jDtrzkzLT/PUb5kxuGGTIyPn2alXzGT+7LdJ9/tP8KlqSVMtnH2UYPPdcc/daK16+MRNL5ylxmnRJ7Q==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.303.0", - "@aws-sdk/credential-provider-imds": "3.303.0", - "@aws-sdk/credential-provider-ini": "3.303.0", - "@aws-sdk/credential-provider-process": "3.303.0", - "@aws-sdk/credential-provider-sso": "3.303.0", - "@aws-sdk/credential-provider-web-identity": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.328.0.tgz", + "integrity": "sha512-/omjTxrC8Vv6OPAK+66KNnjVmMZWyEQnQp8e8Y+RZvsuVaeQNJT5UQKSqrYtmqTX2T+yqJY7eVpx5CXBCGjc2g==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.310.0", + "@aws-sdk/credential-provider-imds": "3.310.0", + "@aws-sdk/credential-provider-ini": "3.328.0", + "@aws-sdk/credential-provider-process": "3.310.0", + "@aws-sdk/credential-provider-sso": "3.328.0", + "@aws-sdk/credential-provider-web-identity": "3.310.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -423,13 +423,13 @@ } }, "node_modules/@aws-sdk/credential-provider-process": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.303.0.tgz", - "integrity": "sha512-1pxDYRscGlERAjFE5hSF1KQdcyOGzssuRTdLvez4I/mSIOAJLMmBAnmHGI/DME2LzDVrC9dklA6LHSC2sn3quQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.310.0.tgz", + "integrity": "sha512-h73sg6GPMUWC+3zMCbA1nZ2O03nNJt7G96JdmnantiXBwHpRKWW8nBTLzx5uhXn6hTuTaoQRP/P+oxQJKYdMmA==", "dependencies": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -437,15 +437,15 @@ } }, "node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.303.0.tgz", - "integrity": "sha512-/szzM1BzZGjHwV4mSiZo65cyDleJqnxM9Y4autg55mb3dFwcCiMGI6TGbdegumrNZZlCTeTA1lIhA9PdT4gDAQ==", - "dependencies": { - "@aws-sdk/client-sso": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/token-providers": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.328.0.tgz", + "integrity": "sha512-6lSfA3AcoqNt+OYJoBimWmPmqUYVCHkE0Y+4HFN7JaXCyUknsO9/71P5zo/pp8Q7/yxP/aRyzjael82G5thj0A==", + "dependencies": { + "@aws-sdk/client-sso": "3.328.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/token-providers": "3.328.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -453,12 +453,12 @@ } }, "node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.303.0.tgz", - "integrity": "sha512-qi5CP4ocseqdj3kMi0vgLx8XrdanLNvCAfgiEF6LjUJI88R2snZAYNUSd+Y2n04mKAalns+mUwfUN2JyL66d5g==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.310.0.tgz", + "integrity": "sha512-H4SzuZXILNhK6/IR1uVvsUDZvzc051hem7GLyYghBCu8mU+tq28YhKE8MfSroi6eL2e5Vujloij1OM2EQQkPkw==", "dependencies": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -466,25 +466,25 @@ } }, "node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.303.0.tgz", - "integrity": "sha512-Bc6C86/KQOSWPa741h9QEVcApyignYV5vC5+zZjmKkcyPxrVxTmL3kTJidpVOtVfCmTIrNN/WhAVDzLBbh1ycQ==", - "dependencies": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/querystring-builder": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.310.0.tgz", + "integrity": "sha512-Bi9vIwzdkw1zMcvi/zGzlWS9KfIEnAq4NNhsnCxbQ4OoIRU9wvU+WGZdBBhxg0ZxZmpp1j1aZhU53lLjA07MHw==", + "dependencies": { + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/querystring-builder": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/hash-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.303.0.tgz", - "integrity": "sha512-jSo4A/JxTabZ9jHrx7nhKIXnOmvPg/SSYnoHaFdVS5URJrNt1w+nSvW1wLGMEMOvu5+NU3bldBBSb+h0Ocwv1A==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.310.0.tgz", + "integrity": "sha512-NvE2fhRc8GRwCXBfDehxVAWCmVwVMILliAKVPAEr4yz2CkYs0tqU51S48x23dtna07H4qHtgpeNqVTthcIQOEQ==", "dependencies": { - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-buffer-from": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-buffer-from": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -492,18 +492,18 @@ } }, "node_modules/@aws-sdk/invalid-dependency": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.303.0.tgz", - "integrity": "sha512-RXNcLxOrUJaMMqk5uIYEf6X9XCMockT27bS8Dde/0ms015VOo8Wn2hHU9wEmGeFvLccC2UU4gPzvmj74w70q2Q==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.310.0.tgz", + "integrity": "sha512-1s5RG5rSPXoa/aZ/Kqr5U/7lqpx+Ry81GprQ2bxWqJvWQIJ0IRUwo5pk8XFxbKVr/2a+4lZT/c3OGoBOM1yRRA==", "dependencies": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/is-array-buffer": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.303.0.tgz", - "integrity": "sha512-IitBTr+pou7v5BrYLFH/SbIf3g1LIgMhcI3bDXBq2FjzmDftj4bW8BOmg05b9YKf2TrrggvJ4yk/jH+yYFXoJQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.310.0.tgz", + "integrity": "sha512-urnbcCR+h9NWUnmOtet/s4ghvzsidFmspfhYaHAmSRdy9yDjdjBJMFjjsn85A1ODUktztm+cVncXjQ38WCMjMQ==", "dependencies": { "tslib": "^2.5.0" }, @@ -512,12 +512,12 @@ } }, "node_modules/@aws-sdk/middleware-content-length": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.303.0.tgz", - "integrity": "sha512-0UL5TWSL1JRpjT6gjGsZXfia5oL7vxzj+CfMCqkP6gjVF69eRcgu426Xc6TJwDcr6jIFPeamDBTLyt9ZAAr6hg==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.325.0.tgz", + "integrity": "sha512-t38VBKCpNqSKqSu0OfWMJs7cwaRHFGQxIF9lV8JMCM/2lyUpN4JcfuzSTK+MFN2eDZEHp5DiNg8w07GXXusRYg==", "dependencies": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -525,14 +525,14 @@ } }, "node_modules/@aws-sdk/middleware-endpoint": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.303.0.tgz", - "integrity": "sha512-z2i8LJ6YTKbqXh9rY/KbXihvhq6P0JVI6SnkwT2hesJp0Nfldx85jsaLzj1+ioNKlQ+51u9UmBnO404DgNCAbg==", - "dependencies": { - "@aws-sdk/middleware-serde": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", - "@aws-sdk/util-middleware": "3.303.0", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.325.0.tgz", + "integrity": "sha512-3CavuOHCKiWUnCtzrUFbhbEP26qIgzzRs5C3vpOJhDUhugBubIWgPGGRLpbnIro+P4XJPwM3pMziNzhKVuSDlQ==", + "dependencies": { + "@aws-sdk/middleware-serde": "3.325.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", + "@aws-sdk/util-middleware": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -540,12 +540,12 @@ } }, "node_modules/@aws-sdk/middleware-host-header": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.303.0.tgz", - "integrity": "sha512-LUyhtjbuosrD0QAsBZJwT3yp146I7Xjehf42OP3dWbRuklMEilI0Res5K2/nknf3/ZKUj6sf7BbJoU8E+SpRiQ==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.325.0.tgz", + "integrity": "sha512-IN28gsxcRy4J+FxxCHvzb2NORBx8uMA+h9QYS4BBZfpKVYIZh+mudHgYcdNHWlKXmlTGjhWBNWTeByhzuSKAiA==", "dependencies": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -553,11 +553,11 @@ } }, "node_modules/@aws-sdk/middleware-logger": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.303.0.tgz", - "integrity": "sha512-y2sqmmBdm4gXUL4SyN+ucfO/sxtOEDj2sB12ArRpDGyerfNLhAf7xpL4lXkjPx/7wTIjlBWoO2G/yK6t00P6fA==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.325.0.tgz", + "integrity": "sha512-S8rWgTpN2b/+UDDm+yZMFM6rw1zwO8KT0GAIQbAhB96shyD5eKen/UfihCTB7YMvbD2piebymwJTvxv6bn1VqQ==", "dependencies": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -565,12 +565,12 @@ } }, "node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.303.0.tgz", - "integrity": "sha512-z3MTsZMtPg6hYWl6a0o07q7zgsDXPYeP14XFVMc8NXqiAyNcm/OYwanpXyNjsEKI/X0nlpJ/Rs+IRCbaIqV9Mw==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.325.0.tgz", + "integrity": "sha512-2l1ABF7KePsoKz8KaNvD2uxo1zHqkFHK4PL/wW/FbcwOcE08f0R7qX++st/bPpVjXX/j/5vWTnNNgJOIOrZhyw==", "dependencies": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -578,15 +578,15 @@ } }, "node_modules/@aws-sdk/middleware-retry": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.303.0.tgz", - "integrity": "sha512-wxlqrdGOrCm2Jsra7YyfLyO34YRB/FNlXzwuJiZkqoAb/40ZAuFcWqDv41SP44y8liFXqfsMGuywJ7mK2cHvnA==", - "dependencies": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/service-error-classification": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-middleware": "3.303.0", - "@aws-sdk/util-retry": "3.303.0", + "version": "3.327.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.327.0.tgz", + "integrity": "sha512-LCG+oRIPc4XJ+DYqkSCgggavxWi4+hP3Rw40vHdHMNvJpCiUJMwVJ+dULEywEP/WZvr4AEkWiRrHmJVpSLeZ+Q==", + "dependencies": { + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/service-error-classification": "3.327.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-middleware": "3.310.0", + "@aws-sdk/util-retry": "3.327.0", "tslib": "^2.5.0", "uuid": "^8.3.2" }, @@ -595,12 +595,12 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sts": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.303.0.tgz", - "integrity": "sha512-igp7htNCUPhVL9Q6rJSgcx3qy/P2l2KAiS0oozOTaTXt3h0LbOusSXtwyA7qvLYeRthnw6msVW+rVBAW3Vo+3g==", + "version": "3.326.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.326.0.tgz", + "integrity": "sha512-suOkuXxyAfOH0hznK63ZU10EoytKX5YPs9amO416VbgYFtuIeliCmntYfnl1jUvutp0fctGGpEGE9OnoYI+fhw==", "dependencies": { - "@aws-sdk/middleware-signing": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/middleware-signing": "3.325.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -608,11 +608,11 @@ } }, "node_modules/@aws-sdk/middleware-serde": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.303.0.tgz", - "integrity": "sha512-mmZozwYKgUgXkJrLVqgIYoOQ8DfKZS3pBBT3ZxWzv5Hz5M3oRqFgfVYljkeDM2CTvBweHpqVRTWqPDMcZisucg==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.325.0.tgz", + "integrity": "sha512-QAZYaFfAw1a06Vg39JiYIq0kSJ6EuUPOiKfK/Goj0cBv78lrXWuKdf04UF3U8Rqk/4mamnsTqUSwf4NoKkF0hw==", "dependencies": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -620,15 +620,15 @@ } }, "node_modules/@aws-sdk/middleware-signing": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.303.0.tgz", - "integrity": "sha512-rrLQcS2wFsUGj9Kyx78LRgRS8jwiixz/Nyv06SmcKhP680sweETpQz/EA+wcVEVRXmUI6vs4NtqXz36dU0X8Nw==", - "dependencies": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/signature-v4": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-middleware": "3.303.0", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.325.0.tgz", + "integrity": "sha512-SOwPwaCE3vSCGwFzkIlnOUSkeCUzKTyIQnFVjlQkqGuMxMX/iDaQQGaX+HUbuGIuULCEQqjZH4dLKZcor8eVZw==", + "dependencies": { + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/signature-v4": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-middleware": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -636,9 +636,9 @@ } }, "node_modules/@aws-sdk/middleware-stack": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.303.0.tgz", - "integrity": "sha512-6KmdroXLexzILGxF/Xq0cGBs+B8Ipm1pff8qnWCT6KldYp+Q40bVcJrExkVHDN1uOsOxu20ixW2yujOKS356zg==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.325.0.tgz", + "integrity": "sha512-cZWehA4grGvX1IKlY9atJgD0bq3ew7YRJgY7GA6DSgsU7GrZ61Qvi+H7IuGx5AdeAwaTnbnTGN4qCaA2EfxNhA==", "dependencies": { "tslib": "^2.5.0" }, @@ -647,13 +647,13 @@ } }, "node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.303.0.tgz", - "integrity": "sha512-ZVMVNxPRn2jXog3V4xWokSYoQxTKAdKlNoCfjqFplsF70r8sXfgZtOMF5ZhGo+Hgsx7GqpR/NWPKJtZD2nigpg==", + "version": "3.327.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.327.0.tgz", + "integrity": "sha512-4rDSNY1xhlqfRcY97CQKcgs6AOe4ovtiRdCAjg2InnLOZHRVFoHhOIDxWNK2W1K2Pl65z4EGH6RXmB1t0srJHA==", "dependencies": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-endpoints": "3.303.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-endpoints": "3.327.0", "tslib": "^2.5.0" }, "engines": { @@ -661,13 +661,13 @@ } }, "node_modules/@aws-sdk/node-config-provider": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.303.0.tgz", - "integrity": "sha512-Ywbo9+2SkbdmNgCoxYJrv+YrFDtBH7hHtn2ywtzP4t57d4t0V/LNrNQsrAsXxqy48OS5r2ovOLHiqJS5jp1oyw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.310.0.tgz", + "integrity": "sha512-T/Pp6htc6hq/Cq+MLNDSyiwWCMVF6GqbBbXKVlO5L8rdHx4sq9xPdoPveZhGWrxvkanjA6eCwUp6E0riBOSVng==", "dependencies": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -675,14 +675,14 @@ } }, "node_modules/@aws-sdk/node-http-handler": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.303.0.tgz", - "integrity": "sha512-5Te+mwBIOiQr2nM7/SNVFkvYHOH/CswOmUMV4Gxc7YjuervhrYvVFs2P+lL+c8rfiVMTLWjnJ6JiL2JdJfYgnQ==", - "dependencies": { - "@aws-sdk/abort-controller": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/querystring-builder": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.328.0.tgz", + "integrity": "sha512-zxXdNfdSGi6w/1bopllxAYAufCGDNG2eLenR3Tjj/UVBGrvS4ME5NGInu6u4LirTdkSqYlZkqKMyfiZ6XxGfdQ==", + "dependencies": { + "@aws-sdk/abort-controller": "3.310.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/querystring-builder": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -690,11 +690,11 @@ } }, "node_modules/@aws-sdk/property-provider": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.303.0.tgz", - "integrity": "sha512-d1qbn0pCz+jvB0dcWMWuIlWYM8dWCg3185ngMgUQxkgUk7/kEbwGBsmT+xtZAMQcwcgPkSm8qeATEQ7ToiH8eQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.310.0.tgz", + "integrity": "sha512-3lxDb0akV6BBzmFe4nLPaoliQbAifyWJhuvuDOu7e8NzouvpQXs0275w9LePhhcgjKAEVXUIse05ZW2DLbxo/g==", "dependencies": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -702,11 +702,11 @@ } }, "node_modules/@aws-sdk/protocol-http": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.303.0.tgz", - "integrity": "sha512-eqblSsdmKBzgNl06dUnL4toq/OQgZyxVsxHCz2nI/xBk5lI/qAZIJyEgP2GmP8aoWwneAq33roG0VLZoxQ8exg==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.310.0.tgz", + "integrity": "sha512-fgZ1aw/irQtnrsR58pS8ThKOWo57Py3xX6giRvwSgZDEcxHfVzuQjy9yPuV++v04fdmdtgpbGf8WfvAAJ11yXQ==", "dependencies": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -714,12 +714,12 @@ } }, "node_modules/@aws-sdk/querystring-builder": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.303.0.tgz", - "integrity": "sha512-0eMp2gd7Ro0svJ6YVnp9cUiGtrc1d/HynyMfbDkLkqWJAnHMz7Oc1GjK5YyL1hdxm0W+JWZCPR0SovLiaboKDw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.310.0.tgz", + "integrity": "sha512-ZHH8GV/80+pWGo7DzsvwvXR5xVxUHXUvPJPFAkhr6nCf78igdoF8gR10ScFoEKbtEapoNTaZlKHPXxpD8aPG7A==", "dependencies": { - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-uri-escape": "3.303.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-uri-escape": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -727,11 +727,11 @@ } }, "node_modules/@aws-sdk/querystring-parser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.303.0.tgz", - "integrity": "sha512-KNJSQiTFiA7W5eYCox8bLGM7kghC3Azad86HQhdsYO0jCoPxcgj8MeP6T7fPTIC4WcTwcWb7T1MpzoeBiKMOTQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.310.0.tgz", + "integrity": "sha512-YkIznoP6lsiIUHinx++/lbb3tlMURGGqMpo0Pnn32zYzGrJXA6eC3D0as2EcMjo55onTfuLcIiX4qzXes2MYOA==", "dependencies": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -739,19 +739,19 @@ } }, "node_modules/@aws-sdk/service-error-classification": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.303.0.tgz", - "integrity": "sha512-eO13PzdtRO9C+g3tyFOpIblX2SbDrIbg2bNtB8JOfjVi3E1b5VsSTXXU/cKV+lbZ9XMzMn3VzGSvpo6AjzfpxA==", + "version": "3.327.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.327.0.tgz", + "integrity": "sha512-bCWnw+uH3gI6yPxLi4a4WV71P1KlJU7Z4+iMBY1Gt4+ZsaPAJX9pAbuQcFhFH++4xTk/QaVMzSvD0uQ+u0B/NQ==", "engines": { "node": ">=14.0.0" } }, "node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.303.0.tgz", - "integrity": "sha512-yI84mnnh3pdQtIOo+oGWofaI0rvfhp3DOavB8KHIkQr+RcjF+fxsqbelRfVb25gx7yEWPNCMB8wM+HhklSEFJg==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.310.0.tgz", + "integrity": "sha512-N0q9pG0xSjQwc690YQND5bofm+4nfUviQ/Ppgan2kU6aU0WUq8KwgHJBto/YEEI+VlrME30jZJnxtOvcZJc2XA==", "dependencies": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -759,16 +759,16 @@ } }, "node_modules/@aws-sdk/signature-v4": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.303.0.tgz", - "integrity": "sha512-muw5yclLOgXPHIxv60mhO6R0GVjKbf+M6E/cWvIEVGq8Ke+mLMYNFYNdKP/f/8JgTtW2xwQ7pIK3U8x284ZqPw==", - "dependencies": { - "@aws-sdk/is-array-buffer": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-hex-encoding": "3.295.0", - "@aws-sdk/util-middleware": "3.303.0", - "@aws-sdk/util-uri-escape": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.310.0.tgz", + "integrity": "sha512-1M60P1ZBNAjCFv9sYW29OF6okktaeibWyW3lMXqzoHF70lHBZh+838iUchznXUA5FLabfn4jBFWMRxlAXJUY2Q==", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-hex-encoding": "3.310.0", + "@aws-sdk/util-middleware": "3.310.0", + "@aws-sdk/util-uri-escape": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -776,12 +776,12 @@ } }, "node_modules/@aws-sdk/smithy-client": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.303.0.tgz", - "integrity": "sha512-WDTC9ODdpRAXo8+Mtr5hsPJeR3y3LxfZZFg5dplJgkaxV+MFdnsUCxZfAZMnxcGy5Q2qTzlLLNk9CpadS72v+g==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.325.0.tgz", + "integrity": "sha512-sqDFuhjxd8+Q9qI8MmXe/g1/FgoViwetv14K+bpHK7pGlOIvDyT7TboDNClfgqSLdgTDCEaoC3JRSi9Y5RgbmA==", "dependencies": { - "@aws-sdk/middleware-stack": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/middleware-stack": "3.325.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -789,14 +789,14 @@ } }, "node_modules/@aws-sdk/token-providers": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.303.0.tgz", - "integrity": "sha512-7G7VYbqyX0v6RTD/m7XmArZToMek4jYXR/TuuGHK6ifNJeMDwkU4BcoVDj37vvTPYp6qKU5IE+bE3XmPyVWnGQ==", - "dependencies": { - "@aws-sdk/client-sso-oidc": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.328.0.tgz", + "integrity": "sha512-AWrRwa0RqSiz9CT3QKuMYuZsRXaeKCp8kMsx1CgrG5VUaag+NhDBBMYVbxgb0SyoqbsGC+wDUXtSCZctrE7Z3Q==", + "dependencies": { + "@aws-sdk/client-sso-oidc": "3.328.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -804,9 +804,9 @@ } }, "node_modules/@aws-sdk/types": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.303.0.tgz", - "integrity": "sha512-H+Cy8JDTsK87MID6MJbV9ad5xdS9YvaLZSeveC2Zs1WNu2Rp6X9j+mg3EqDSmBKUQVAFRy2b+CSKkH3nnBMedw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.310.0.tgz", + "integrity": "sha512-j8eamQJ7YcIhw7fneUfs8LYl3t01k4uHi4ZDmNRgtbmbmTTG3FZc2MotStZnp3nZB6vLiPF1o5aoJxWVvkzS6A==", "dependencies": { "tslib": "^2.5.0" }, @@ -815,21 +815,21 @@ } }, "node_modules/@aws-sdk/url-parser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.303.0.tgz", - "integrity": "sha512-PXMXGhr89s0MiPTf8Ft/v3sPzh2geSrFhTVSO/01blfBQqtuu0JMqORhLheOdi16AhQNVlYHDW2tWdx7/T+KsA==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.310.0.tgz", + "integrity": "sha512-mCLnCaSB9rQvAgx33u0DujLvr4d5yEm/W5r789GblwwQnlNXedVu50QRizMLTpltYWyAUoXjJgQnJHmJMaKXhw==", "dependencies": { - "@aws-sdk/querystring-parser": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/querystring-parser": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/util-base64": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.303.0.tgz", - "integrity": "sha512-oj+p/GHHPcZEKjiiOHU/CyNQeh8i+8dfMMzU+VGdoK5jHaVG8h2b+V7GPf7I4wDkG2ySCK5b5Jw5NUHwdTJ13Q==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.310.0.tgz", + "integrity": "sha512-v3+HBKQvqgdzcbL+pFswlx5HQsd9L6ZTlyPVL2LS9nNXnCcR3XgGz9jRskikRUuUvUXtkSG1J88GAOnJ/apTPg==", "dependencies": { - "@aws-sdk/util-buffer-from": "3.303.0", + "@aws-sdk/util-buffer-from": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -837,17 +837,17 @@ } }, "node_modules/@aws-sdk/util-body-length-browser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.303.0.tgz", - "integrity": "sha512-T643m0pKzgjAvPFy4W8zL+aszG3T22U8hb6stlMvT0z++Smv8QfIvkIkXjWyH2KlOt5GKliHwdOv8SAi0FSMJQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.310.0.tgz", + "integrity": "sha512-sxsC3lPBGfpHtNTUoGXMQXLwjmR0zVpx0rSvzTPAuoVILVsp5AU/w5FphNPxD5OVIjNbZv9KsKTuvNTiZjDp9g==", "dependencies": { "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/util-body-length-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.303.0.tgz", - "integrity": "sha512-/hS8z6e18Le60hJr2TUIFoUjUiAsnQsuDn6DxX74GXhMOHeSwZDJ9jHF39quYkNMmAE37GrVH4MI9vE0pN27qw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.310.0.tgz", + "integrity": "sha512-2tqGXdyKhyA6w4zz7UPoS8Ip+7sayOg9BwHNidiGm2ikbDxm1YrCfYXvCBdwaJxa4hJfRVz+aL9e+d3GqPI9pQ==", "dependencies": { "tslib": "^2.5.0" }, @@ -856,11 +856,11 @@ } }, "node_modules/@aws-sdk/util-buffer-from": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.303.0.tgz", - "integrity": "sha512-hUU+NW+SW6RNojtAKnnmz+tDShVKlEx2YsS4a5fSfrKRUes+zWz10cxVX0RQfysd3R6tdSHhbjsSj8eCIybheg==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.310.0.tgz", + "integrity": "sha512-i6LVeXFtGih5Zs8enLrt+ExXY92QV25jtEnTKHsmlFqFAuL3VBeod6boeMXkN2p9lbSVVQ1sAOOYZOHYbYkntw==", "dependencies": { - "@aws-sdk/is-array-buffer": "3.303.0", + "@aws-sdk/is-array-buffer": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -868,9 +868,9 @@ } }, "node_modules/@aws-sdk/util-config-provider": { - "version": "3.295.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.295.0.tgz", - "integrity": "sha512-/5Dl1aV2yI8YQjqwmg4RTnl/E9NmNsx7HIwBZt+dTcOrM0LMUwczQBFFcLyqCj/qv5y+VsvLoAAA/OiBT7hb3w==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.310.0.tgz", + "integrity": "sha512-xIBaYo8dwiojCw8vnUcIL4Z5tyfb1v3yjqyJKJWV/dqKUFOOS0U591plmXbM+M/QkXyML3ypon1f8+BoaDExrg==", "dependencies": { "tslib": "^2.5.0" }, @@ -879,12 +879,12 @@ } }, "node_modules/@aws-sdk/util-defaults-mode-browser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.303.0.tgz", - "integrity": "sha512-jtZgCKelFe4/SHDHQu9ydbYttxSfqSlQojA5qxTJxLvzryIB+/GTHQ+sYWyMyzaD489W9elt1/cSsXd4LtPK0A==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.325.0.tgz", + "integrity": "sha512-gcowpXTo8E8N3jxD2KW+csiicJ7HPkhWnpL925xgwe0oq091OpATsKFrBOL18h72VfRWf4FAsR9lVwxSQ78zSA==", "dependencies": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", "bowser": "^2.11.0", "tslib": "^2.5.0" }, @@ -893,15 +893,15 @@ } }, "node_modules/@aws-sdk/util-defaults-mode-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.303.0.tgz", - "integrity": "sha512-c86iyot/u9bCVcy/rlWL+0kdR51c7C2d2yDXvO9iFCdMKAs28Hw1ijGczVmOcUQ61zKNFSGYx+VekHXN9IWYOg==", - "dependencies": { - "@aws-sdk/config-resolver": "3.303.0", - "@aws-sdk/credential-provider-imds": "3.303.0", - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.325.0.tgz", + "integrity": "sha512-/5uoOrgNxoUxv3AwsdXjMA3f6KJA6fi69otA0RiINjilCdcbOxq5GI11AFEyRio/+e+imriX4+UYjsguUR+f4g==", + "dependencies": { + "@aws-sdk/config-resolver": "3.310.0", + "@aws-sdk/credential-provider-imds": "3.310.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -909,11 +909,11 @@ } }, "node_modules/@aws-sdk/util-endpoints": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.303.0.tgz", - "integrity": "sha512-dPg9+l3VY3nclWFiWAVNWek5lQwgdtY8oRYOgCeyntce9FlNrPQgCRTVr36D0iQ0aNCs0GWzfjgL+rIdCF66/w==", + "version": "3.327.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.327.0.tgz", + "integrity": "sha512-2+2jTfBzhXsfpOci61gzaoBUVdGhFWja7k5cLAfOaRROkK+m+Zv532+m3cCQZjBXJ6pJ952MbiAroRSjFq0/SQ==", "dependencies": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -921,9 +921,9 @@ } }, "node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.295.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.295.0.tgz", - "integrity": "sha512-XJcoVo41kHzhe28PBm/rqt5mdCp8R6abwiW9ug1dA6FOoPUO8kBUxDv6xaOmA2hfRvd2ocFfBXaUCBqUowkGcQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.310.0.tgz", + "integrity": "sha512-sVN7mcCCDSJ67pI1ZMtk84SKGqyix6/0A1Ab163YKn+lFBQRMKexleZzpYzNGxYzmQS6VanP/cfU7NiLQOaSfA==", "dependencies": { "tslib": "^2.5.0" }, @@ -932,9 +932,9 @@ } }, "node_modules/@aws-sdk/util-locate-window": { - "version": "3.295.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.295.0.tgz", - "integrity": "sha512-d/s+zhUx5Kh4l/ecMP/TBjzp1GR/g89Q4nWH6+wH5WgdHsK+LG+vmsk6mVNuP/8wsCofYG4NBqp5Ulbztbm9QA==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.310.0.tgz", + "integrity": "sha512-qo2t/vBTnoXpjKxlsC2e1gBrRm80M3bId27r0BRB2VniSSe7bL1mmzM+/HFtujm0iAxtPM+aLEflLJlJeDPg0w==", "dependencies": { "tslib": "^2.5.0" }, @@ -943,9 +943,9 @@ } }, "node_modules/@aws-sdk/util-middleware": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.303.0.tgz", - "integrity": "sha512-HAfBcbZw1+pY3dIEDM4jVpH1ViFcGH5s0q1dr+x4rcLGpMM3B4dH0HUgDPtycG8sw+nk+9jGgiEtgaCNOpJLGA==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.310.0.tgz", + "integrity": "sha512-FTSUKL/eRb9X6uEZClrTe27QFXUNNp7fxYrPndZwk1hlaOP5ix+MIHBcI7pIiiY/JPfOUmPyZOu+HetlFXjWog==", "dependencies": { "tslib": "^2.5.0" }, @@ -954,11 +954,11 @@ } }, "node_modules/@aws-sdk/util-retry": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.303.0.tgz", - "integrity": "sha512-RWwRNjoWMcpDouz69wPuFXWFVzwYtUkTbJfa46SjKl1IwqMHS4f9yjJfCwJIoLOW9M/o2JB7nD0Ij3gqqzajLw==", + "version": "3.327.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.327.0.tgz", + "integrity": "sha512-y15NLGTAT2vaLzA8klJ6Bo8NGjVAa3/njqc4iCbta/3GqKpQU0zbvw3Y5aWyHp8BhV4DSUTp088jWjaoZlSqgw==", "dependencies": { - "@aws-sdk/service-error-classification": "3.303.0", + "@aws-sdk/service-error-classification": "3.327.0", "tslib": "^2.5.0" }, "engines": { @@ -966,26 +966,26 @@ } }, "node_modules/@aws-sdk/util-stream-browser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.303.0.tgz", - "integrity": "sha512-TYKCLR40IvQOBIkCJQFugLVDph0mdA69KbvCgTk4evpRub14fkQRapUBx/x4dsIajanvHv7OrQaJKUvyiDK6eQ==", - "dependencies": { - "@aws-sdk/fetch-http-handler": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", - "@aws-sdk/util-hex-encoding": "3.295.0", - "@aws-sdk/util-utf8": "3.303.0", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.310.0.tgz", + "integrity": "sha512-bysXZHwFwvbqOTCScCdCnoLk1K3GCo0HRIYEZuL7O7MHrQmfaYRXcaft/p22+GUv9VeFXS/eJJZ5r4u32az94w==", + "dependencies": { + "@aws-sdk/fetch-http-handler": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", + "@aws-sdk/util-hex-encoding": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/util-stream-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.303.0.tgz", - "integrity": "sha512-NR9waJzNXYu7QgiVmXpk64EcW9qbELpLSZ+BCMioJD3+023vJuibgq2Ue03DxRt5Uau2p568mvCRGNc3HqDM3A==", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.328.0.tgz", + "integrity": "sha512-9h8oji5OTmatXMfPIasAapL59QDO7TR0J/B5Y3ERwGxy2U373LEy8Uvs+mbPIIQV1ztCLwHWDxKQoTUj4hLxoQ==", "dependencies": { - "@aws-sdk/node-http-handler": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-buffer-from": "3.303.0", + "@aws-sdk/node-http-handler": "3.328.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-buffer-from": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -993,9 +993,9 @@ } }, "node_modules/@aws-sdk/util-uri-escape": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.303.0.tgz", - "integrity": "sha512-N3ULNuHCL3QzAlCTY+XRRkRQTYCTU8RRuzFCJX0pDpz9t2K+tLT7DbxqupWGNFGl5Xlulf1Is14J3BP/Dx91rA==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.310.0.tgz", + "integrity": "sha512-drzt+aB2qo2LgtDoiy/3sVG8w63cgLkqFIa2NFlGpUgHFWTXkqtbgf4L5QdjRGKWhmZsnqkbtL7vkSWEcYDJ4Q==", "dependencies": { "tslib": "^2.5.0" }, @@ -1004,22 +1004,22 @@ } }, "node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.303.0.tgz", - "integrity": "sha512-Kex3abpUrTX9z129jiI8sfjIUmQDwiWjhkvBkPmrwjFY/sZcnOcXj5nP2iwJ+k6CnA5ZK5PjZ6P62t+eJ5MTXw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.310.0.tgz", + "integrity": "sha512-yU/4QnHHuQ5z3vsUqMQVfYLbZGYwpYblPiuZx4Zo9+x0PBkNjYMqctdDcrpoH9Z2xZiDN16AmQGK1tix117ZKw==", "dependencies": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "bowser": "^2.11.0", "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.303.0.tgz", - "integrity": "sha512-QYUg8F/Ho6AsVZaSSRMf/LWoEPDyOwgKZBw3AbKoH6RxAdAsdL1SXz5t4A6jHakP9TLVN2Yw2WRbHDe4LATASQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.310.0.tgz", + "integrity": "sha512-Ra3pEl+Gn2BpeE7KiDGpi4zj7WJXZA5GXnGo3mjbi9+Y3zrbuhJAbdZO3mO/o7xDgMC6ph4xCTbaSGzU6b6EDg==", "dependencies": { - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -1035,11 +1035,11 @@ } }, "node_modules/@aws-sdk/util-utf8": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8/-/util-utf8-3.303.0.tgz", - "integrity": "sha512-tZXVuMOIONPOuOGBs/XRdzxv6jUvTM620dRFFIHZwlGiW8bo0x0LlonrzDAJZA4e9ZwmxJIj8Ji13WVRBGvZWg==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8/-/util-utf8-3.310.0.tgz", + "integrity": "sha512-DnLfFT8uCO22uOJc0pt0DsSNau1GTisngBCDw8jQuWT5CqogMJu4b/uXmwEqfj8B3GX6Xsz8zOd6JpRlPftQoA==", "dependencies": { - "@aws-sdk/util-buffer-from": "3.303.0", + "@aws-sdk/util-buffer-from": "3.310.0", "tslib": "^2.5.0" }, "engines": { @@ -1063,34 +1063,34 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", - "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==", + "version": "7.21.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.7.tgz", + "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", - "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.2", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-module-transforms": "^7.20.2", - "@babel/helpers": "^7.20.1", - "@babel/parser": "^7.20.2", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.2", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz", + "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.21.5", + "@babel/helper-compilation-targets": "^7.21.5", + "@babel/helper-module-transforms": "^7.21.5", + "@babel/helpers": "^7.21.5", + "@babel/parser": "^7.21.8", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", + "json5": "^2.2.2", "semver": "^6.3.0" }, "engines": { @@ -1102,9 +1102,9 @@ } }, "node_modules/@babel/core/node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", + "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", "dev": true, "dependencies": { "@babel/highlight": "^7.18.6" @@ -1123,42 +1123,30 @@ } }, "node_modules/@babel/generator": { - "version": "7.20.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", - "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.5.tgz", + "integrity": "sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==", "dev": true, "dependencies": { - "@babel/types": "^7.20.2", + "@babel/types": "^7.21.5", "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" }, "engines": { "node": ">=6.9.0" } }, - "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - }, - "engines": { - "node": ">=6.0.0" - } - }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", - "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz", + "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.20.0", - "@babel/helper-validator-option": "^7.18.6", + "@babel/compat-data": "^7.21.5", + "@babel/helper-validator-option": "^7.21.0", "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", "semver": "^6.3.0" }, "engines": { @@ -1168,6 +1156,15 @@ "@babel/core": "^7.0.0" } }, + "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "dependencies": { + "yallist": "^3.0.2" + } + }, "node_modules/@babel/helper-compilation-targets/node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -1177,23 +1174,29 @@ "semver": "bin/semver.js" } }, + "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true + }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz", + "integrity": "sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", "dev": true, "dependencies": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" }, "engines": { "node": ">=6.9.0" @@ -1212,43 +1215,43 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", + "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", "dev": true, "dependencies": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.21.4" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", - "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz", + "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-environment-visitor": "^7.21.5", + "@babel/helper-module-imports": "^7.21.4", + "@babel/helper-simple-access": "^7.21.5", "@babel/helper-split-export-declaration": "^7.18.6", "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.2" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", + "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", "dev": true, "dependencies": { - "@babel/types": "^7.20.2" + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1267,9 +1270,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz", + "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==", "dev": true, "engines": { "node": ">=6.9.0" @@ -1284,23 +1287,23 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", - "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.5.tgz", + "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==", "dev": true, "dependencies": { - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.0" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" }, "engines": { "node": ">=6.9.0" @@ -1384,9 +1387,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", - "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.8.tgz", + "integrity": "sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==", "bin": { "parser": "bin/babel-parser.js" }, @@ -1395,23 +1398,23 @@ } }, "node_modules/@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", "dev": true, "dependencies": { "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/template/node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", + "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", "dev": true, "dependencies": { "@babel/highlight": "^7.18.6" @@ -1421,19 +1424,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", - "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.5.tgz", + "integrity": "sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.1", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.21.5", + "@babel/helper-environment-visitor": "^7.21.5", + "@babel/helper-function-name": "^7.21.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.1", - "@babel/types": "^7.20.0", + "@babel/parser": "^7.21.5", + "@babel/types": "^7.21.5", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -1442,9 +1445,9 @@ } }, "node_modules/@babel/traverse/node_modules/@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", + "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", "dev": true, "dependencies": { "@babel/highlight": "^7.18.6" @@ -1463,12 +1466,12 @@ } }, "node_modules/@babel/types": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", - "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.5.tgz", + "integrity": "sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-string-parser": "^7.21.5", "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" }, @@ -1497,20 +1500,20 @@ } }, "node_modules/@google-cloud/text-to-speech": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@google-cloud/text-to-speech/-/text-to-speech-4.2.1.tgz", - "integrity": "sha512-7UpvE5daaNg0hX1m8jmLR2uZTalgd7xm5vqotQbovdhF1nQ9EU0x48XUsVNiXroKOXZ3GDqJCGhGw4vC2Xp03w==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@google-cloud/text-to-speech/-/text-to-speech-4.2.2.tgz", + "integrity": "sha512-tpfjyS86ieOYCG8sRBaoS0EVUouWTO5NC2rAsMyQZKjAhS6Y+u4evRPEpHg0Q42oKRwhphBCkU0Uvro34lRA8g==", "dependencies": { - "google-gax": "^3.5.2" + "google-gax": "^3.5.8" }, "engines": { "node": ">=12.0.0" } }, "node_modules/@grpc/grpc-js": { - "version": "1.8.13", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.8.13.tgz", - "integrity": "sha512-iY3jsdfbc0ARoCLFvbvUB8optgyb0r1XLPb142u+QtgBcKJYkCIFt3Fd/881KqjLYWjsBJF57N3b8Eop9NDfUA==", + "version": "1.8.14", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.8.14.tgz", + "integrity": "sha512-w84maJ6CKl5aApCMzFll0hxtFNT6or9WwMslobKaqWUEf1K+zhlL43bSQhFreyYWIWR+Z0xnVFC1KtLm4ZpM/A==", "dependencies": { "@grpc/proto-loader": "^0.7.0", "@types/node": ">=12.12.47" @@ -1520,15 +1523,15 @@ } }, "node_modules/@grpc/proto-loader": { - "version": "0.7.6", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.6.tgz", - "integrity": "sha512-QyAXR8Hyh7uMDmveWxDSUcJr9NAWaZ2I6IXgAYvQmfflwouTM+rArE2eEaCtLlRqO81j7pRLCt81IefUei6Zbw==", + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.7.tgz", + "integrity": "sha512-1TIeXOi8TuSCQprPItwoMymZXxWT0CPxUhkrkeCUH+D8U7QDwQ6b7SUz2MaLuWM2llT+J/TVFLmQI5KtML3BhQ==", "dependencies": { "@types/long": "^4.0.1", "lodash.camelcase": "^4.3.0", "long": "^4.0.0", "protobufjs": "^7.0.0", - "yargs": "^16.2.0" + "yargs": "^17.7.2" }, "bin": { "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js" @@ -1573,6 +1576,15 @@ "node": ">=8" } }, + "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", @@ -1583,12 +1595,12 @@ } }, "node_modules/@jambonz/db-helpers": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.4.tgz", - "integrity": "sha512-sR3f+RpCrSWkZ7E8qjO9/Fgsa8aBuNkm4Ubr6To0K9GDsE9rb9dsYUGpXN/0f9CGn7jc4icc53OBkt+iM2PbCw==", + "version": "0.7.9", + "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.9.tgz", + "integrity": "sha512-JajIJSPXW0OTjVprDwTH8/yU/qhHY1XkXe6f5PRh0kvRt42AmYggcGKqgivUkY1seR/GVCnQccDcIA2ZEdvDUg==", "dependencies": { "cidr-matcher": "^2.1.1", - "debug": "^4.3.3", + "debug": "^4.3.4", "mysql2": "^2.3.3", "node-object-hash": "^2.3.10", "uuid": "^8.3.2" @@ -1617,9 +1629,9 @@ } }, "node_modules/@jambonz/realtimedb-helpers": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.0.tgz", - "integrity": "sha512-hu+CcV0jzQU6J4vW8bBEz52NqEroLHOB0wjVb/VmSL4N0+MAJ1wbPUNk8go5aMk809Vr/Od2z9nHInGnTiBHzA==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.2.tgz", + "integrity": "sha512-hTlMw0pmwNHTAQVm3O1asHllRSwi5C+kLXjqZN4C8bdw08f6CY48qdX/aNHLlx5TWI1I5l0ReO745KrUFVPA6w==", "dependencies": { "@jambonz/promisify-redis": "^0.0.6", "debug": "^4.3.4", @@ -1664,9 +1676,9 @@ } }, "node_modules/@jambonz/verb-specifications": { - "version": "0.0.17", - "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.17.tgz", - "integrity": "sha512-tYi6rKShNhU/pXc/ZaEeTYfdv5LXmRaGWfdcN499IiGqMnAFZ/0p0HYgOoSsupn90hlquFsy4eyg+41hxherTw==", + "version": "0.0.21", + "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.21.tgz", + "integrity": "sha512-NQTQLI0k7nFmjqiKIbPaux2+ES2etFh/hnMNzPbszXS313mAnMZtv7y+EWrbniXeiXMCwHbkavm1H/N8+Lv5Qg==", "dependencies": { "debug": "^4.3.4", "pino": "^8.8.0" @@ -1688,13 +1700,14 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { "node": ">=6.0.0" @@ -1719,21 +1732,27 @@ } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "3.1.0", "@jridgewell/sourcemap-codec": "1.4.14" } }, + "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + }, "node_modules/@jsdoc/salty": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.5.tgz", @@ -1746,17 +1765,17 @@ } }, "node_modules/@opentelemetry/api": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.0.tgz", - "integrity": "sha512-IgMK9i3sFGNUqPMbjABm0G26g0QCKCUBfglhQ7rQq6WcxbKfEHRcmwsoER4hZcuYqJgkYn2OeuoJIv7Jsftp7g==", + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.1.tgz", + "integrity": "sha512-O2yRJce1GOc6PAy3QxFM4NzFiWzvScDC1/5ihYBL6BUEVdq0XMWN01sppE+H6bBXbaFYipjwFLEWLg5PaSOThA==", "engines": { "node": ">=8.0.0" } }, "node_modules/@opentelemetry/context-async-hooks": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.9.0.tgz", - "integrity": "sha512-Ur+TgRmJgAEvg6VQuhkqzsWsqoOtr+QSZ8r8Yf6WrvlZpAl/sdRU+yUXWjA7r8JFS9VbBq7IEp7oMStFuJT2ow==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.12.0.tgz", + "integrity": "sha512-PmwAanPNWCyS9JYFzhzVzHgviLhc0UHjOwdth+hp3HgQQ9XZZNE635P8JhAUHZmbghW9/qQFafRWOS4VN9VVnQ==", "engines": { "node": ">=14" }, @@ -1765,11 +1784,11 @@ } }, "node_modules/@opentelemetry/core": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.0.tgz", - "integrity": "sha512-Koy1ApRUp5DB5KpOqhDk0JjO9x6QeEkmcePl8qQDsXZGF4MuHUBShXibd+J2tRNckTsvgEHi1uEuUckDgN+c/A==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.12.0.tgz", + "integrity": "sha512-4DWYNb3dLs2mSCGl65jY3aEgbvPWSHVQV/dmDWiYeWUrMakZQFcymqZOSUNZO0uDrEJoxMu8O5tZktX6UKFwag==", "dependencies": { - "@opentelemetry/semantic-conventions": "1.9.0" + "@opentelemetry/semantic-conventions": "1.12.0" }, "engines": { "node": ">=14" @@ -1779,13 +1798,13 @@ } }, "node_modules/@opentelemetry/exporter-jaeger": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.9.0.tgz", - "integrity": "sha512-XLsDLuTqQyw08s0n03zeqmz2ike/iQHiep819SJliJnJJKMbGta+JvaWWgrh/YUEYlbBLc/mQP1cndXtd8lbaA==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.12.0.tgz", + "integrity": "sha512-MGWslvok6tlNCHexHGnfXrSyobBqUDh4YOLENt2MeQ/F974SyVG4e73TD/CDM+227/rRM587hJ8dQBzvwUac/g==", "dependencies": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/sdk-trace-base": "1.9.0", - "@opentelemetry/semantic-conventions": "1.9.0", + "@opentelemetry/core": "1.12.0", + "@opentelemetry/sdk-trace-base": "1.12.0", + "@opentelemetry/semantic-conventions": "1.12.0", "jaeger-client": "^3.15.0" }, "engines": { @@ -1796,15 +1815,15 @@ } }, "node_modules/@opentelemetry/exporter-trace-otlp-http": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.35.0.tgz", - "integrity": "sha512-wb5XqkTYq0uES65gIyjF5WZjUZooog/Dd2eP+AKOGJ9n5eewvvLjebC9qmFm0ZjHsTw7hzxnQVX/CvhD3NeVHw==", + "version": "0.35.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.35.1.tgz", + "integrity": "sha512-EJgAsrvscKsqb/GzF1zS74vM+Z/aQRhrFE7hs/1GK1M9bLixaVyMGwg2pxz1wdYdjxS1mqpHMhXU+VvMvFCw1w==", "dependencies": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/otlp-exporter-base": "0.35.0", - "@opentelemetry/otlp-transformer": "0.35.0", - "@opentelemetry/resources": "1.9.0", - "@opentelemetry/sdk-trace-base": "1.9.0" + "@opentelemetry/core": "1.9.1", + "@opentelemetry/otlp-exporter-base": "0.35.1", + "@opentelemetry/otlp-transformer": "0.35.1", + "@opentelemetry/resources": "1.9.1", + "@opentelemetry/sdk-trace-base": "1.9.1" }, "engines": { "node": ">=14" @@ -1813,15 +1832,68 @@ "@opentelemetry/api": "^1.0.0" } }, + "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/core": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", + "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.9.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.5.0" + } + }, + "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/resources": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", + "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", + "dependencies": { + "@opentelemetry/core": "1.9.1", + "@opentelemetry/semantic-conventions": "1.9.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.5.0" + } + }, + "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/sdk-trace-base": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.1.tgz", + "integrity": "sha512-Y9gC5M1efhDLYHeeo2MWcDDMmR40z6QpqcWnPCm4Dmh+RHAMf4dnEBBntIe1dDpor686kyU6JV1D29ih1lZpsQ==", + "dependencies": { + "@opentelemetry/core": "1.9.1", + "@opentelemetry/resources": "1.9.1", + "@opentelemetry/semantic-conventions": "1.9.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.5.0" + } + }, + "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", + "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==", + "engines": { + "node": ">=14" + } + }, "node_modules/@opentelemetry/exporter-zipkin": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.9.0.tgz", - "integrity": "sha512-+AghaRdhSritrXmB/zoreOheNVuDOWOy/LK/W4odCRtkM/WprpHCOVj5eN8/zqg0LVeE9AbVMODk//eR0lu2fA==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.12.0.tgz", + "integrity": "sha512-HJ4ww7OjVIV4x5ZGgY+h+D1JS0GsCtnHuqZUVHl7EFFQxMGpbQcf5eISRtwqgQwlQKh2iqrEbiHdDyzbgA/7XQ==", "dependencies": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/resources": "1.9.0", - "@opentelemetry/sdk-trace-base": "1.9.0", - "@opentelemetry/semantic-conventions": "1.9.0" + "@opentelemetry/core": "1.12.0", + "@opentelemetry/resources": "1.12.0", + "@opentelemetry/sdk-trace-base": "1.12.0", + "@opentelemetry/semantic-conventions": "1.12.0" }, "engines": { "node": ">=14" @@ -1831,9 +1903,9 @@ } }, "node_modules/@opentelemetry/instrumentation": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.0.tgz", - "integrity": "sha512-pQ5shVG53acTtq72DF7kx+4690ZKh3lATMRqf2JDMRvn0bcX/JaQ+NjPmt7oyT3h9brMA1rSFMVFS6yj8kd2OQ==", + "version": "0.35.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.1.tgz", + "integrity": "sha512-EZsvXqxenbRTSNsft6LDcrT4pjAiyZOx3rkDNeqKpwZZe6GmZtsXaZZKuDkJtz9fTjOGjDHjZj9/h80Ya9iIJw==", "dependencies": { "require-in-the-middle": "^5.0.3", "semver": "^7.3.2", @@ -1847,11 +1919,11 @@ } }, "node_modules/@opentelemetry/otlp-exporter-base": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.0.tgz", - "integrity": "sha512-ybXq1Dvg38ZwiNCtqRCRmJ93rP7jMhL8nHEYVXNKknPVplUoY9fsb8tCPi24iY1suAD98wAMy3hiHk4W8VqfSg==", + "version": "0.35.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.1.tgz", + "integrity": "sha512-Sc0buJIs8CfUeQCL/12vDDjBREgsqHdjboBa/kPQDgMf008OBJSM02Ijj6T1TH+QVHl/VHBBEVJF+FTf0EH9Vg==", "dependencies": { - "@opentelemetry/core": "1.9.0" + "@opentelemetry/core": "1.9.1" }, "engines": { "node": ">=14" @@ -1860,15 +1932,37 @@ "@opentelemetry/api": "^1.0.0" } }, + "node_modules/@opentelemetry/otlp-exporter-base/node_modules/@opentelemetry/core": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", + "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.9.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.5.0" + } + }, + "node_modules/@opentelemetry/otlp-exporter-base/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", + "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==", + "engines": { + "node": ">=14" + } + }, "node_modules/@opentelemetry/otlp-transformer": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.35.0.tgz", - "integrity": "sha512-XjxX6RLHYKadQNEVs7TT7YRwEhXzP8itLiu6en2P7HukSg0gTwOMhNzriBZBRC4q+HVsdnncWua1wCD1TBAfmg==", + "version": "0.35.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.35.1.tgz", + "integrity": "sha512-c0HXcJ49MKoWSaA49J8PXlVx48CeEFpL0odP6KBkVT+Bw6kAe8JlI3mIezyN05VCDJGtS2I5E6WEsE+DJL1t9A==", "dependencies": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/resources": "1.9.0", - "@opentelemetry/sdk-metrics": "1.9.0", - "@opentelemetry/sdk-trace-base": "1.9.0" + "@opentelemetry/core": "1.9.1", + "@opentelemetry/resources": "1.9.1", + "@opentelemetry/sdk-metrics": "1.9.1", + "@opentelemetry/sdk-trace-base": "1.9.1" }, "engines": { "node": ">=14" @@ -1877,12 +1971,65 @@ "@opentelemetry/api": ">=1.3.0 <1.5.0" } }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/core": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", + "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.9.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.5.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/resources": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", + "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", + "dependencies": { + "@opentelemetry/core": "1.9.1", + "@opentelemetry/semantic-conventions": "1.9.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.5.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/sdk-trace-base": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.1.tgz", + "integrity": "sha512-Y9gC5M1efhDLYHeeo2MWcDDMmR40z6QpqcWnPCm4Dmh+RHAMf4dnEBBntIe1dDpor686kyU6JV1D29ih1lZpsQ==", + "dependencies": { + "@opentelemetry/core": "1.9.1", + "@opentelemetry/resources": "1.9.1", + "@opentelemetry/semantic-conventions": "1.9.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.5.0" + } + }, + "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", + "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==", + "engines": { + "node": ">=14" + } + }, "node_modules/@opentelemetry/propagator-b3": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.9.0.tgz", - "integrity": "sha512-5M/NvJj7ZHZXEU8lkAFhrSrWaHmCCkFLstNbL8p16qpTn1AOZowuSjMOYRoJJBmL5PUobkZ3W8Gjov1UgldPBg==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.12.0.tgz", + "integrity": "sha512-WFcn98075QPc2zE1obhKydJHUehI5/HuLoelPEVwATj+487hjCwjHj9r2fgmQkWpvuNSB7CJaA0ys6qqq1N6lg==", "dependencies": { - "@opentelemetry/core": "1.9.0" + "@opentelemetry/core": "1.12.0" }, "engines": { "node": ">=14" @@ -1892,11 +2039,11 @@ } }, "node_modules/@opentelemetry/propagator-jaeger": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.9.0.tgz", - "integrity": "sha512-oo8RyuyzEbbXdIfeEG9iA5vmTH4Kld+dZMIZICd5G5SmeNcNes3sLrparpunIGms41wIP2mWiIlcOelDCmGceg==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.12.0.tgz", + "integrity": "sha512-ugtWF7GC6X5RIJ0+iMwW2iVAGNs206CAeq8XQ8OkJRg+v0lp4H0/i+gJ4hubTT8NIL5a3IxtIrAENPLIGdLucQ==", "dependencies": { - "@opentelemetry/core": "1.9.0" + "@opentelemetry/core": "1.12.0" }, "engines": { "node": ">=14" @@ -1906,12 +2053,12 @@ } }, "node_modules/@opentelemetry/resources": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.0.tgz", - "integrity": "sha512-zCyien0p3XWarU6zv72c/JZ6QlG5QW/hc61Nh5TSR1K9ndnljzAGrH55x4nfyQdubfoh9QxLNh9FXH0fWK6vcg==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.12.0.tgz", + "integrity": "sha512-gunMKXG0hJrR0LXrqh7BVbziA/+iJBL3ZbXCXO64uY+SrExkwoyJkpiq9l5ismkGF/A20mDEV7tGwh+KyPw00Q==", "dependencies": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/semantic-conventions": "1.9.0" + "@opentelemetry/core": "1.12.0", + "@opentelemetry/semantic-conventions": "1.12.0" }, "engines": { "node": ">=14" @@ -1921,12 +2068,12 @@ } }, "node_modules/@opentelemetry/sdk-metrics": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.9.0.tgz", - "integrity": "sha512-fSlJWhp86kCan1zuxdH6LTyUBYlohQwDKnxep5qHMnRTNErkYmdjgsmjZvSMdAfUFtQqfZmTXe2Lap7a5AIf9Q==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.9.1.tgz", + "integrity": "sha512-AyhKDcA8NuV7o1+9KvzRMxNbATJ8AcrutKilJ6hWSo9R5utnzxgffV4y+Hp4mJn84iXxkv+CBb99GOJ2A5OMzA==", "dependencies": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/resources": "1.9.0", + "@opentelemetry/core": "1.9.1", + "@opentelemetry/resources": "1.9.1", "lodash.merge": "4.6.2" }, "engines": { @@ -1936,14 +2083,51 @@ "@opentelemetry/api": ">=1.3.0 <1.5.0" } }, + "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/core": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", + "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", + "dependencies": { + "@opentelemetry/semantic-conventions": "1.9.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.5.0" + } + }, + "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/resources": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", + "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", + "dependencies": { + "@opentelemetry/core": "1.9.1", + "@opentelemetry/semantic-conventions": "1.9.1" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "@opentelemetry/api": ">=1.0.0 <1.5.0" + } + }, + "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/semantic-conventions": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", + "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==", + "engines": { + "node": ">=14" + } + }, "node_modules/@opentelemetry/sdk-trace-base": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.0.tgz", - "integrity": "sha512-glNgtJjxAIrDku8DG5Xu3nBK25rT+hkyg7yuXh8RUurp/4BcsXjMyVqpyJvb2kg+lxAX73VJBhncRKGHn9t8QQ==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.12.0.tgz", + "integrity": "sha512-pfCOB3tNDlYVoWuz4D7Ji+Jmy9MHnATWHVpkERdCEiwUGEZ+4IvNPXUcPc37wJVmMpjGLeaWgPPrie0KIpWf1A==", "dependencies": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/resources": "1.9.0", - "@opentelemetry/semantic-conventions": "1.9.0" + "@opentelemetry/core": "1.12.0", + "@opentelemetry/resources": "1.12.0", + "@opentelemetry/semantic-conventions": "1.12.0" }, "engines": { "node": ">=14" @@ -1953,15 +2137,15 @@ } }, "node_modules/@opentelemetry/sdk-trace-node": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.9.0.tgz", - "integrity": "sha512-VTpjiqGQ4s8f0/szgZmVrtNSSmXFNoHwC4PNVwXyNeEqQcqyAygHvobpUG6m7qCiBFh6ZtrCuLdhhqWE04Objw==", - "dependencies": { - "@opentelemetry/context-async-hooks": "1.9.0", - "@opentelemetry/core": "1.9.0", - "@opentelemetry/propagator-b3": "1.9.0", - "@opentelemetry/propagator-jaeger": "1.9.0", - "@opentelemetry/sdk-trace-base": "1.9.0", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.12.0.tgz", + "integrity": "sha512-PxpDemnNZLLeFNLAu95/K3QubjlaScXVjVQPlwPui65VRxIvxGVysnN7DFfsref+qoh1hI6nlrYSij43vxdm2w==", + "dependencies": { + "@opentelemetry/context-async-hooks": "1.12.0", + "@opentelemetry/core": "1.12.0", + "@opentelemetry/propagator-b3": "1.12.0", + "@opentelemetry/propagator-jaeger": "1.12.0", + "@opentelemetry/sdk-trace-base": "1.12.0", "semver": "^7.3.5" }, "engines": { @@ -1972,9 +2156,9 @@ } }, "node_modules/@opentelemetry/semantic-conventions": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.0.tgz", - "integrity": "sha512-po7penSfQ/Z8352lRVDpaBrd9znwA5mHGqXR7nDEiVnxkDFkBIhVf/tKeAJDIq/erFpcRowKFeCsr5eqqcSyFQ==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.12.0.tgz", + "integrity": "sha512-hO+bdeGOlJwqowUBoZF5LyP3ORUFOP1G0GRv8N45W/cztXbT2ZEXaAzfokRS9Xc9FWmYrDj32mF6SzH6wuoIyA==", "engines": { "node": ">=14" } @@ -2034,9 +2218,9 @@ "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==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", + "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", "dependencies": { "type-detect": "4.0.8" } @@ -2049,16 +2233,32 @@ "@sinonjs/commons": "^2.0.0" } }, + "node_modules/@sinonjs/fake-timers/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/samsam": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-7.0.1.tgz", - "integrity": "sha512-zsAk2Jkiq89mhZovB2LLOdTCxJF4hqqTToGP0ASWlhp4I1hqOjcfmZGafXntCN7MDC6yySH0mFHrYtHceOeLmw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.0.tgz", + "integrity": "sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==", "dependencies": { "@sinonjs/commons": "^2.0.0", "lodash.get": "^4.4.2", "type-detect": "^4.0.8" } }, + "node_modules/@sinonjs/samsam/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/text-encoding": { "version": "0.7.2", "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", @@ -2070,9 +2270,9 @@ "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" }, "node_modules/@types/async": { - "version": "3.2.18", - "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.18.tgz", - "integrity": "sha512-/IsuXp3B9R//uRLi40VlIYoMp7OzhkunPe2fDu7jGfQXI9y3CDCx6FC4juRLSqrpmLst3vgsiK536AAGJFl4Ww==" + "version": "3.2.20", + "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.20.tgz", + "integrity": "sha512-6jSBQQugzyX1aWto0CbvOnmxrU9tMoXfA9gc4IrLEtvr3dTwSg5GLGoWiZnGLI6UG/kqpB3JOQKQrqnhUWGKQA==" }, "node_modules/@types/extend": { "version": "3.0.1", @@ -2152,9 +2352,9 @@ "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==" }, "node_modules/@types/node": { - "version": "18.15.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz", - "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==" + "version": "20.1.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.0.tgz", + "integrity": "sha512-O+z53uwx64xY7D6roOi4+jApDGFg0qn6WHcxe5QeqjMaTezBO/mxdfFXIVAVVyNWKx84OmPB3L8kbVYOTeN34A==" }, "node_modules/@types/rimraf": { "version": "3.0.2", @@ -2349,6 +2549,19 @@ "sprintf-js": "~1.0.2" } }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", @@ -2380,36 +2593,6 @@ "node": ">=8" } }, - "node_modules/asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "dependencies": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "node_modules/asn1.js-rfc2560": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/asn1.js-rfc2560/-/asn1.js-rfc2560-5.0.1.tgz", - "integrity": "sha512-1PrVg6kuBziDN3PGFmRk3QrjpKvP9h/Hv5yMrFZvC1kpzP6dQRzf5BpKstANqHBkaOUmTpakJWhicTATOA/SbA==", - "dependencies": { - "asn1.js-rfc5280": "^3.0.0" - }, - "peerDependencies": { - "asn1.js": "^5.0.0" - } - }, - "node_modules/asn1.js-rfc5280": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/asn1.js-rfc5280/-/asn1.js-rfc5280-3.0.0.tgz", - "integrity": "sha512-Y2LZPOWeZ6qehv698ZgOGGCZXBQShObWnGthTrIFlIQjuV1gg2B8QOhWFRExq/MR1VnPpIIe7P9vX2vElxv+Pg==", - "dependencies": { - "asn1.js": "^5.0.0" - } - }, "node_modules/assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", @@ -2432,23 +2615,6 @@ "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" }, - "node_modules/async-disk-cache": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/async-disk-cache/-/async-disk-cache-2.1.0.tgz", - "integrity": "sha512-iH+boep2xivfD9wMaZWkywYIURSmsL96d6MoqrC94BnGSvXE4Quf8hnJiHGFYhw/nLeIa1XyRaf4vvcvkwAefg==", - "dependencies": { - "debug": "^4.1.1", - "heimdalljs": "^0.2.3", - "istextorbinary": "^2.5.1", - "mkdirp": "^0.5.0", - "rimraf": "^3.0.0", - "rsvp": "^4.8.5", - "username-sync": "^1.0.2" - }, - "engines": { - "node": "8.* || >= 10.*" - } - }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -2474,9 +2640,9 @@ } }, "node_modules/aws-sdk": { - "version": "2.1313.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1313.0.tgz", - "integrity": "sha512-8GMdtV2Uch3HL2c6+P3lNZFTcg/fqq9L3EWYRLb6ljCZvWKTssjdkjSJFDyTReNgeiKV224YRPYQbKpOEz4flQ==", + "version": "2.1373.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1373.0.tgz", + "integrity": "sha512-3/P79VU2VVeiof25bn8TSepEhWCRhwuQGYoEWX/2pApQRJAY+w/3JFVKHjbAe3NYEEBNeiAE6PQ9DqWz5Pp+Lw==", "dependencies": { "buffer": "4.9.2", "events": "1.1.1", @@ -2487,7 +2653,7 @@ "url": "0.10.3", "util": "^0.12.4", "uuid": "8.0.0", - "xml2js": "0.4.19" + "xml2js": "0.5.0" }, "engines": { "node": ">= 10.0.0" @@ -2501,23 +2667,6 @@ "uuid": "dist/bin/uuid" } }, - "node_modules/aws-sdk/node_modules/xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", - "dependencies": { - "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" - } - }, - "node_modules/aws-sdk/node_modules/xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha512-7YXTQc3P2l9+0rjaUbLwMKRhtmwg1M1eDf6nag7urC7pIPYLD9W/jmzQ4ptRSUbodw5S0jfoGTflLemQibSpeQ==", - "engines": { - "node": ">=4.0" - } - }, "node_modules/axios": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/axios/-/axios-1.2.1.tgz", @@ -2583,17 +2732,6 @@ "node": "*" } }, - "node_modules/binaryextensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binaryextensions/-/binaryextensions-2.3.0.tgz", - "integrity": "sha512-nAihlQsYGyc5Bwq6+EsubvANYGExeJKHDO3RjnvwU042fawQTQfM3Kxn7IHUXQOz4bzfwsGYYHGSvXyW4zOGLg==", - "engines": { - "node": ">=0.8" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, "node_modules/bindings": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", @@ -2608,11 +2746,6 @@ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, - "node_modules/bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, "node_modules/body-parser": { "version": "1.20.1", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", @@ -2675,9 +2808,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", - "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", "dev": true, "funding": [ { @@ -2690,10 +2823,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001400", - "electron-to-chromium": "^1.4.251", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.9" + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" }, "bin": { "browserslist": "cli.js" @@ -2813,17 +2946,20 @@ } }, "node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", "engines": { - "node": ">=6" + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, "node_modules/caniuse-lite": { - "version": "1.0.30001431", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", - "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", + "version": "1.0.30001486", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz", + "integrity": "sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==", "dev": true, "funding": [ { @@ -2833,6 +2969,10 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ] }, @@ -2901,13 +3041,16 @@ } }, "node_modules/cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "dependencies": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" + }, + "engines": { + "node": ">=12" } }, "node_modules/color-convert": { @@ -2960,9 +3103,9 @@ } }, "node_modules/content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", "engines": { "node": ">= 0.6" } @@ -3040,26 +3183,29 @@ } }, "node_modules/deep-equal": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.1.0.tgz", - "integrity": "sha512-2pxgvWu3Alv1PoWEyVg7HS8YhGlUFUV7N5oOvfL6d+7xAmLSemMwv/c8Zv/i9KFzxV5Kt5CAvQc70fLwVuf4UA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.1.tgz", + "integrity": "sha512-lKdkdV6EOGoVn65XaOsPdH4rMxTZOnmFyuIkMjM1i5HHCbfjC97dawgTAy0deYNfuqUqW+Q5VrVaQYtUpSd6yQ==", "dev": true, "dependencies": { + "array-buffer-byte-length": "^1.0.0", "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.2", - "get-intrinsic": "^1.1.3", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.0", "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", "is-date-object": "^1.0.5", "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", "isarray": "^2.0.5", "object-is": "^1.1.5", "object-keys": "^1.1.1", "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", + "regexp.prototype.flags": "^1.5.0", "side-channel": "^1.0.4", "which-boxed-primitive": "^1.0.2", "which-collection": "^1.0.1", - "which-typed-array": "^1.1.8" + "which-typed-array": "^1.1.9" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3100,9 +3246,9 @@ } }, "node_modules/define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", "dev": true, "dependencies": { "has-property-descriptors": "^1.0.0", @@ -3220,9 +3366,9 @@ } }, "node_modules/drachtio-fsmrf": { - "version": "3.0.21", - "resolved": "https://registry.npmjs.org/drachtio-fsmrf/-/drachtio-fsmrf-3.0.21.tgz", - "integrity": "sha512-j5C1KFFEr+N8Qqp5ZjfqQTox+nDKoII3eJOaRMj0zHmFzr7tFzHbwPf8JSQS9n0OjrY6iM1zJJxHO+zDp8974g==", + "version": "3.0.22", + "resolved": "https://registry.npmjs.org/drachtio-fsmrf/-/drachtio-fsmrf-3.0.22.tgz", + "integrity": "sha512-YVzGa72dcND1BahKf0/HuKqpEa3Ip2/O6k0tnS7U6x+VdKJ0CM3n9e6iyV8BvBfUMDbtKAv0LRPC/6O8NS7uPg==", "dependencies": { "camel-case": "^4.1.2", "debug": "^2.6.9", @@ -3277,9 +3423,9 @@ } }, "node_modules/drachtio-srf": { - "version": "4.5.23", - "resolved": "https://registry.npmjs.org/drachtio-srf/-/drachtio-srf-4.5.23.tgz", - "integrity": "sha512-lgL/IrizCszMObJnoLrdj/xZAU/PeBWQZEZdF0R2juozsl/aHl0FXAICOGNnKLkBaAQvPZWYcbI3vFbrwJ/5FA==", + "version": "4.5.26", + "resolved": "https://registry.npmjs.org/drachtio-srf/-/drachtio-srf-4.5.26.tgz", + "integrity": "sha512-Dqq3E0qY5yxjDAkrgtwrkmQYuaGUwKqUu98kDS9xzEdX8oFqKZeV5onUZq0veznw4ctuGQolY8BI6zs1e5ynHg==", "dependencies": { "debug": "^3.2.7", "delegates": "^0.1.0", @@ -3323,38 +3469,15 @@ "safe-buffer": "^5.0.1" } }, - "node_modules/editions": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/editions/-/editions-2.3.1.tgz", - "integrity": "sha512-ptGvkwTvGdGfC0hfhKg0MT+TRLRKGtUiWGBInxOm5pz7ssADezahjCUaYuZ8Dr+C05FW0AECIIPt4WBxVINEhA==", - "dependencies": { - "errlop": "^2.0.0", - "semver": "^6.3.0" - }, - "engines": { - "node": ">=0.8" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, - "node_modules/editions/node_modules/semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "bin": { - "semver": "bin/semver.js" - } - }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.284", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", - "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", + "version": "1.4.385", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.385.tgz", + "integrity": "sha512-L9zlje9bIw0h+CwPQumiuVlfMcV4boxRjFIWDcLfFqTZNbkwOExBzfmswytHawObQX4OUhtNv8gIiB21kOurIg==", "dev": true }, "node_modules/emoji-regex": { @@ -3398,17 +3521,6 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/errlop": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/errlop/-/errlop-2.2.0.tgz", - "integrity": "sha512-e64Qj9+4aZzjzzFpZC7p5kmm/ccCrbLhAJplhsDXQFs87XTsXwOpH4s1Io2s90Tau/8r2j9f4l/thhDevRjzxw==", - "engines": { - "node": ">=0.8" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, "node_modules/error": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", @@ -3419,35 +3531,45 @@ } }, "node_modules/es-abstract": { - "version": "1.20.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", - "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", + "version": "1.21.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz", + "integrity": "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==", "dev": true, "dependencies": { + "array-buffer-byte-length": "^1.0.0", + "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", + "get-intrinsic": "^1.2.0", "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", "has": "^1.0.3", "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", + "internal-slot": "^1.0.5", + "is-array-buffer": "^3.0.2", "is-callable": "^1.2.7", "is-negative-zero": "^2.0.2", "is-regex": "^1.1.4", "is-shared-array-buffer": "^1.0.2", "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", + "object-inspect": "^1.12.3", "object-keys": "^1.1.1", "object.assign": "^4.1.4", "regexp.prototype.flags": "^1.4.3", "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.5", - "string.prototype.trimstart": "^1.0.5", - "unbox-primitive": "^1.0.2" + "string.prototype.trim": "^1.2.7", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.9" }, "engines": { "node": ">= 0.4" @@ -3457,19 +3579,20 @@ } }, "node_modules/es-get-iterator": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz", - "integrity": "sha512-+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", "dev": true, "dependencies": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.0", - "has-symbols": "^1.0.1", - "is-arguments": "^1.1.0", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", "is-map": "^2.0.2", "is-set": "^2.0.2", - "is-string": "^1.0.5", - "isarray": "^2.0.5" + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3481,6 +3604,20 @@ "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", "dev": true }, + "node_modules/es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "dev": true, + "dependencies": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", @@ -3778,9 +3915,9 @@ } }, "node_modules/esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -4330,9 +4467,9 @@ } }, "node_modules/get-intrinsic": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", - "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", @@ -4399,9 +4536,9 @@ } }, "node_modules/globals": { - "version": "13.19.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", - "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -4413,17 +4550,32 @@ "url": "https://github.com/sponsors/sindresorhus" } }, + "node_modules/globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "dependencies": { + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/google-auth-library": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-8.7.0.tgz", - "integrity": "sha512-1M0NG5VDIvJZEnstHbRdckLZESoJwguinwN8Dhae0j2ZKIQFIV63zxm6Fo6nM4xkgqUr2bbMtV5Dgo+Hy6oo0Q==", + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-8.8.0.tgz", + "integrity": "sha512-0iJn7IDqObDG5Tu9Tn2WemmJ31ksEa96IyK0J0OZCpTh6CrC6FrattwKX87h3qKVuprCJpdOGKc1Xi8V0kMh8Q==", "dependencies": { "arrify": "^2.0.0", "base64-js": "^1.3.0", "ecdsa-sig-formatter": "^1.0.11", "fast-text-encoding": "^1.0.0", "gaxios": "^5.0.0", - "gcp-metadata": "^5.0.0", + "gcp-metadata": "^5.2.0", "gtoken": "^6.1.0", "jws": "^4.0.0", "lru-cache": "^6.0.0" @@ -4433,9 +4585,9 @@ } }, "node_modules/google-gax": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.5.8.tgz", - "integrity": "sha512-bkqxv7YdYP3FGh+dywvgyctj8XM07toJ/JCWwAkmmE15QTt3ieF/f7Hpz7xG85+dGmZtQR8Y+yMo0ENFmhypNA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.6.0.tgz", + "integrity": "sha512-2fyb61vWxUonHiArRNJQmE4tx5oY1ni8VPo08fzII409vDSCWG7apDX4qNOQ2GXXT82gLBn3d3P1Dydh7pWjyw==", "dependencies": { "@grpc/grpc-js": "~1.8.0", "@grpc/proto-loader": "^0.7.0", @@ -4449,7 +4601,7 @@ "node-fetch": "^2.6.1", "object-hash": "^3.0.0", "proto3-json-serializer": "^1.0.0", - "protobufjs": "7.2.2", + "protobufjs": "7.2.3", "protobufjs-cli": "1.1.1", "retry-request": "^5.0.0" }, @@ -4461,34 +4613,6 @@ "node": ">=12" } }, - "node_modules/google-gax/node_modules/long": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/long/-/long-5.2.1.tgz", - "integrity": "sha512-GKSNGeNAtw8IryjjkhZxuKB3JzlcLTwjtiQCHKvqQet81I93kXslhDQruGI/QsddO83mcDToBVy7GqGS/zYf/A==" - }, - "node_modules/google-gax/node_modules/protobufjs": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.2.tgz", - "integrity": "sha512-++PrQIjrom+bFDPpfmqXfAGSQs40116JRrqqyf53dymUMvvb5d/LMRyicRoF1AUKoXVS1/IgJXlEgcpr4gTF3Q==", - "hasInstallScript": true, - "dependencies": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/node": ">=13.7.0", - "long": "^5.0.0" - }, - "engines": { - "node": ">=12.0.0" - } - }, "node_modules/google-p12-pem": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/google-p12-pem/-/google-p12-pem-4.0.1.tgz", @@ -4520,9 +4644,9 @@ } }, "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, "node_modules/gtoken": { "version": "6.1.2", @@ -4590,6 +4714,18 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/has-symbols": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", @@ -4640,19 +4776,6 @@ "node": ">=8" } }, - "node_modules/heimdalljs": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/heimdalljs/-/heimdalljs-0.2.6.tgz", - "integrity": "sha512-o9bd30+5vLBvBtzCPwwGqpry2+n0Hi6H1+qwt6y+0kwRHGGF8TFIhJPmnuM0xO97zaKrDZMwO/V56fAnn8m/tA==", - "dependencies": { - "rsvp": "~3.2.1" - } - }, - "node_modules/heimdalljs/node_modules/rsvp": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.2.1.tgz", - "integrity": "sha512-Rf4YVNYpKjZ6ASAmibcwTNciQ5Co5Ztq6iZPEykHpkoflnD/K5ryE/rHehFsTm4NJj8nKDhbi3eKBWGogmNnkg==" - }, "node_modules/hexer": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/hexer/-/hexer-1.5.0.tgz", @@ -4750,6 +4873,14 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.22.tgz", "integrity": "sha512-9taxKC944BqoTVjE+UT3pQH0nHZlTvITwfsOZqyc+R3sfJuxaTtxWjfn1K2UlxyPcKHf0rnaXcVFrS9F9vf0bw==" }, + "node_modules/ibm-cloud-sdk-core/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "engines": { + "node": ">=6" + } + }, "node_modules/ibm-cloud-sdk-core/node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -4784,17 +4915,6 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.52.tgz", "integrity": "sha512-s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ==" }, - "node_modules/ibm-watson/node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -4895,12 +5015,12 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "node_modules/internal-slot": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", "dev": true, "dependencies": { - "get-intrinsic": "^1.1.0", + "get-intrinsic": "^1.2.0", "has": "^1.0.3", "side-channel": "^1.0.4" }, @@ -4945,6 +5065,20 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/is-bigint": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", @@ -4985,9 +5119,9 @@ } }, "node_modules/is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", + "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", "dependencies": { "has": "^1.0.3" }, @@ -5408,22 +5542,6 @@ "node": ">=8" } }, - "node_modules/istextorbinary": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.6.0.tgz", - "integrity": "sha512-+XRlFseT8B3L9KyjxxLjfXSLMuErKDsd8DBNrsaxoViABMEZlOSCstwmw0qpoFX3+U6yWU1yhLudAe6/lETGGA==", - "dependencies": { - "binaryextensions": "^2.1.2", - "editions": "^2.2.0", - "textextensions": "^2.5.0" - }, - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, "node_modules/jaeger-client": { "version": "3.19.0", "resolved": "https://registry.npmjs.org/jaeger-client/-/jaeger-client-3.19.0.tgz", @@ -5572,17 +5690,6 @@ "node": ">=8" } }, - "node_modules/jsdoc/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -5621,9 +5728,9 @@ "dev": true }, "node_modules/json5": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", - "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true, "bin": { "json5": "lib/cli.js" @@ -5909,17 +6016,13 @@ } }, "node_modules/microsoft-cognitiveservices-speech-sdk": { - "version": "1.26.0", - "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.26.0.tgz", - "integrity": "sha512-bk5Qzn6uQ2mswpTdZaBpZT3NCwkFOE0dpkPvZNeZg6r6j606+uf5hiQbRAadz6bZRBCHy1iPF846MRe9cbnY8g==", + "version": "1.28.0", + "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.28.0.tgz", + "integrity": "sha512-d+hCqTSeVCGtog5BgUKdIVTNifuigap9VSJbtDUP4kW1uG/yp7zRnqsjYx9nV9sRfuiYwZCyFzGG+VXGa37QDw==", "dependencies": { "agent-base": "^6.0.1", - "asn1.js-rfc2560": "^5.0.1", - "asn1.js-rfc5280": "^3.0.0", - "async-disk-cache": "^2.1.0", "bent": "^7.3.12", "https-proxy-agent": "^4.0.0", - "simple-lru-cache": "0.0.2", "uuid": "^9.0.0", "ws": "^7.5.6" } @@ -6002,11 +6105,6 @@ "node": ">= 0.6" } }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -6019,22 +6117,22 @@ } }, "node_modules/minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "dependencies": { - "minimist": "^1.2.6" - }, + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", "bin": { "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" } }, "node_modules/module-details-from-path": { @@ -6090,30 +6188,24 @@ } }, "node_modules/named-placeholders": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.2.tgz", - "integrity": "sha512-wiFWqxoLL3PGVReSZpjLVxyJ1bRqe+KKJVbr4hGs1KWfTZTQyezHFBbuKj9hsizHyGV2ne7EMjHdxEGAybD5SA==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.3.tgz", + "integrity": "sha512-eLoBxg6wE/rZkJPhU/xRX1WTpkFEwDJEN96oxFrTsqBdbT5ec295Q+CoHrL9IT0DipqKhmGcaZmwOt8OON5x1w==", "dependencies": { - "lru-cache": "^4.1.3" + "lru-cache": "^7.14.1" }, "engines": { - "node": ">=6.0.0" + "node": ">=12.0.0" } }, "node_modules/named-placeholders/node_modules/lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "dependencies": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", + "engines": { + "node": ">=12" } }, - "node_modules/named-placeholders/node_modules/yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" - }, "node_modules/nan": { "version": "2.17.0", "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", @@ -6151,6 +6243,14 @@ "path-to-regexp": "^1.7.0" } }, + "node_modules/nise/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/nise/node_modules/isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", @@ -6201,9 +6301,9 @@ } }, "node_modules/node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz", + "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==", "bin": { "node-gyp-build": "bin.js", "node-gyp-build-optional": "optional.js", @@ -6241,9 +6341,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", "dev": true }, "node_modules/nyc": { @@ -6287,6 +6387,15 @@ "node": ">=8.9" } }, + "node_modules/nyc/node_modules/camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true, + "engines": { + "node": ">=6" + } + }, "node_modules/nyc/node_modules/cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -6662,9 +6771,9 @@ } }, "node_modules/pino": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.8.0.tgz", - "integrity": "sha512-cF8iGYeu2ODg2gIwgAHcPrtR63ILJz3f7gkogaHC/TXVVXxZgInmNYiIpDYEwgEkxZti2Se6P2W2DxlBIZe6eQ==", + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.14.1.tgz", + "integrity": "sha512-8LYNv7BKWXSfS+k6oEc6occy5La+q2sPwU3q2ljTX5AZk7v+5kND2o5W794FyRaqha6DJajmkNRsWtPpFyMUdw==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -6764,9 +6873,9 @@ } }, "node_modules/pino-std-serializers": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.1.0.tgz", - "integrity": "sha512-KO0m2f1HkrPe9S0ldjx7za9BJjeHqBku5Ch8JyxETxT8dEFGz1PwgrHaOQupVYitpzbFSYm7nnljxD8dik2c+g==" + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.1.tgz", + "integrity": "sha512-wHuWB+CvSVb2XqXM0W/WOYUkVSPbiJb9S5fNB7TBhd8s892Xq910bRxwHtC4l71hgztObTjXL6ZheZXFjhDrDQ==" }, "node_modules/pkg-dir": { "version": "4.2.0", @@ -6837,9 +6946,9 @@ } }, "node_modules/process-warning": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.1.0.tgz", - "integrity": "sha512-9C20RLxrZU/rFnxWncDkuF6O999NdIf3E1ws4B0ZeY3sRVPzWBMsYDE2lxjxhiXxg464cQTgKUGm8/i6y2YGXg==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.2.0.tgz", + "integrity": "sha512-/1WZ8+VQjR6avWOgHeEPd7SDQmFQ1B5mC1eRXsCm5TarlNmx/wCsa5GEaxGm05BORRtyG/Ex/3xq3TuRvq57qg==" }, "node_modules/progress": { "version": "2.0.3", @@ -6851,9 +6960,9 @@ } }, "node_modules/proto3-json-serializer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-1.1.0.tgz", - "integrity": "sha512-SjXwUWe/vANGs/mJJTbw5++7U67nwsymg7qsoPtw6GiXqw3kUy8ByojrlEdVE2efxAdKreX8WkDafxvYW95ZQg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-1.1.1.tgz", + "integrity": "sha512-AwAuY4g9nxx0u52DnSMkqqgyLHaW/XaPLtaAo3y/ZCfeaQB/g4YDH4kb8Wc/mWzWvu0YjOznVnfn373MVZZrgw==", "dependencies": { "protobufjs": "^7.0.0" }, @@ -6931,9 +7040,9 @@ } }, "node_modules/protobufjs-cli/node_modules/eslint-visitor-keys": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz", - "integrity": "sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==", + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", + "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -6942,13 +7051,13 @@ } }, "node_modules/protobufjs-cli/node_modules/espree": { - "version": "9.5.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.1.tgz", - "integrity": "sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg==", + "version": "9.5.2", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz", + "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==", "dependencies": { "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.0" + "eslint-visitor-keys": "^3.4.1" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -6995,9 +7104,9 @@ } }, "node_modules/protobufjs/node_modules/long": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/long/-/long-5.2.1.tgz", - "integrity": "sha512-GKSNGeNAtw8IryjjkhZxuKB3JzlcLTwjtiQCHKvqQet81I93kXslhDQruGI/QsddO83mcDToBVy7GqGS/zYf/A==" + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/long/-/long-5.2.3.tgz", + "integrity": "sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==" }, "node_modules/protocols": { "version": "2.0.1", @@ -7031,20 +7140,15 @@ "resolve": "^1.11.1" } }, - "node_modules/pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" - }, "node_modules/psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" }, "node_modules/punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", "engines": { "node": ">=6" } @@ -7196,14 +7300,14 @@ } }, "node_modules/regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", + "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", "dev": true, "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" + "define-properties": "^1.2.0", + "functions-have-names": "^1.2.3" }, "engines": { "node": ">= 0.4" @@ -7286,11 +7390,11 @@ } }, "node_modules/resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", "dependencies": { - "is-core-module": "^2.9.0", + "is-core-module": "^2.11.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -7356,14 +7460,6 @@ "url": "https://github.com/sponsors/isaacs" } }, - "node_modules/rsvp": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", - "engines": { - "node": "6.* || >= 7.*" - } - }, "node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -7398,9 +7494,9 @@ } }, "node_modules/safe-stable-stringify": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.2.tgz", - "integrity": "sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA==", + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", + "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", "engines": { "node": ">=10" } @@ -7424,9 +7520,9 @@ } }, "node_modules/semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", + "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -7565,21 +7661,16 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, - "node_modules/simple-lru-cache": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz", - "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==", + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.4.tgz", + "integrity": "sha512-uzmfN6zx3GQaria1kwgWGeKiXSSbShBbue6Dcj0SI8fiCNFbiUDqKl57WFlY5lyhxZVUKmXvzgG2pilRQCBwWg==", "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", + "@sinonjs/commons": "^3.0.0", + "@sinonjs/fake-timers": "^10.0.2", + "@sinonjs/samsam": "^8.0.0", + "diff": "^5.1.0", + "nise": "^5.1.4", "supports-color": "^7.2.0" }, "funding": { @@ -7632,9 +7723,9 @@ } }, "node_modules/sonic-boom": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.2.1.tgz", - "integrity": "sha512-iITeTHxy3B9FGu8aVdiDXUVAcHMF9Ss0cCsAOo2HfCrmVGT3/DT5oYaeu0M/YKZDlKTvChEyPq0zI9Hf33EX6A==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.3.0.tgz", + "integrity": "sha512-LYxp34KlZ1a2Jb8ZQgFCK3niIHzibdwtwNUWKg0qQRzsDoJ3Gfgkf8KdBTFU3SkejDEIlWwnSnpVdOZIhFMl/g==", "dependencies": { "atomic-sleep": "^1.0.0" } @@ -7666,9 +7757,9 @@ } }, "node_modules/split2": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-4.1.0.tgz", - "integrity": "sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ==", + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", "engines": { "node": ">= 10.x" } @@ -7714,6 +7805,18 @@ "node": ">= 0.8" } }, + "node_modules/stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dev": true, + "dependencies": { + "internal-slot": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, "node_modules/stream-shift": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", @@ -7889,9 +7992,9 @@ } }, "node_modules/table/node_modules/ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", @@ -7911,15 +8014,15 @@ "dev": true }, "node_modules/tape": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/tape/-/tape-5.6.1.tgz", - "integrity": "sha512-reNzS3rzsJtKk0f+zJx2XlzIsjJXlIcOIrIxk5shHAG/DzW3BKyMg8UfN79oluYlcWo4lIt56ahLqwgpRT4idg==", + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/tape/-/tape-5.6.3.tgz", + "integrity": "sha512-cUDDGSbyoSIpdUAqbqLI/r7i/S4BHuCB9M5j7E/LrLs/x/i4zeAJ798aqo+FGo+kr9seBZwr8AkZW6rjceyAMQ==", "dev": true, "dependencies": { - "array.prototype.every": "^1.1.3", + "array.prototype.every": "^1.1.4", "call-bind": "^1.0.2", - "deep-equal": "^2.0.5", - "defined": "^1.0.0", + "deep-equal": "^2.2.0", + "defined": "^1.0.1", "dotignore": "^0.1.2", "for-each": "^0.3.3", "get-package-type": "^0.1.0", @@ -7928,14 +8031,14 @@ "has-dynamic-import": "^2.0.1", "inherits": "^2.0.4", "is-regex": "^1.1.4", - "minimist": "^1.2.6", - "object-inspect": "^1.12.2", + "minimist": "^1.2.7", + "object-inspect": "^1.12.3", "object-is": "^1.1.5", "object-keys": "^1.1.1", "object.assign": "^4.1.4", - "resolve": "^2.0.0-next.3", + "resolve": "^2.0.0-next.4", "resumer": "^0.0.0", - "string.prototype.trim": "^1.2.6", + "string.prototype.trim": "^1.2.7", "through": "^2.3.8" }, "bin": { @@ -7982,17 +8085,6 @@ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "node_modules/textextensions": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/textextensions/-/textextensions-2.6.0.tgz", - "integrity": "sha512-49WtAWS+tcsy93dRt6P0P3AMD2m5PvXRhuEA0kaXos5ZLlujtYmpmFsB+QvWUSxE1ZsstmYXfQ7L40+EcQgpAQ==", - "engines": { - "node": ">=0.8" - }, - "funding": { - "url": "https://bevry.me/fund" - } - }, "node_modules/thread-stream": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-2.3.0.tgz", @@ -8199,6 +8291,20 @@ "node": ">= 0.6" } }, + "node_modules/typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -8244,14 +8350,14 @@ "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" }, "node_modules/undici": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.21.0.tgz", - "integrity": "sha512-HOjK8l6a57b2ZGXOcUsI5NLfoTrfmbOl90ixJDl0AEFG4wgHNDQxtZy15/ZQp7HhjkpaGlp/eneMgtsu1dIlUA==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.22.0.tgz", + "integrity": "sha512-fR9RXCc+6Dxav4P9VV/sp5w3eFiSdOjJYsbtWfd4s5L5C4ogyuVpdKIVHeW0vV1MloM65/f7W45nR9ZxwVdyiA==", "dependencies": { "busboy": "^1.6.0" }, "engines": { - "node": ">=12.18" + "node": ">=14.0" } }, "node_modules/universalify": { @@ -8285,9 +8391,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", "dev": true, "funding": [ { @@ -8297,6 +8403,10 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } ], "dependencies": { @@ -8304,7 +8414,7 @@ "picocolors": "^1.0.0" }, "bin": { - "browserslist-lint": "cli.js" + "update-browserslist-db": "cli.js" }, "peerDependencies": { "browserslist": ">= 4.21.0" @@ -8342,11 +8452,6 @@ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" }, - "node_modules/username-sync": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/username-sync/-/username-sync-1.0.3.tgz", - "integrity": "sha512-m/7/FSqjJNAzF2La448c/aEom0gJy7HY7Y509h6l0ePvEkFictAGptwWaj1msWJ38JbfEDOUoE8kqFee9EHKdA==" - }, "node_modules/utf-8-validate": { "version": "5.0.10", "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz", @@ -8523,9 +8628,9 @@ } }, "node_modules/which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", "dev": true }, "node_modules/which-typed-array": { @@ -8589,15 +8694,15 @@ } }, "node_modules/ws": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", - "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", "engines": { "node": ">=10.0.0" }, "peerDependencies": { "bufferutil": "^4.0.1", - "utf-8-validate": "^5.0.2" + "utf-8-validate": ">=5.0.2" }, "peerDependenciesMeta": { "bufferutil": { @@ -8668,39 +8773,39 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "dependencies": { - "cliui": "^7.0.2", + "cliui": "^8.0.1", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.0", + "string-width": "^4.2.3", "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "yargs-parser": "^21.1.1" }, "engines": { - "node": ">=10" + "node": ">=12" } }, "node_modules/yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", "engines": { - "node": ">=10" + "node": ">=12" } } }, "dependencies": { "@ampproject/remapping": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", - "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", + "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", "dev": true, "requires": { - "@jridgewell/gen-mapping": "^0.1.0", + "@jridgewell/gen-mapping": "^0.3.0", "@jridgewell/trace-mapping": "^0.3.9" } }, @@ -8791,729 +8896,729 @@ } }, "@aws-sdk/abort-controller": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.303.0.tgz", - "integrity": "sha512-LzNzpeyTppcmV/6SAQI3T/huOkMrUnFveplgVNwJxw+rVqmqmGV6z6vpg+oRICRDcjXWYiSiaClxxSVvOy0sDQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.310.0.tgz", + "integrity": "sha512-v1zrRQxDLA1MdPim159Vx/CPHqsB4uybSxRi1CnfHO5ZjHryx3a5htW2gdGAykVCul40+yJXvfpufMrELVxH+g==", "requires": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/client-polly": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-polly/-/client-polly-3.303.0.tgz", - "integrity": "sha512-Cw5V6ViZDrtvhz6Txw8inxtKysJfgQSeJiB3H/sHLklwIU417+8LoxCs1+090Czq2kPw7JmIRy44RXLtJT2v8g==", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-polly/-/client-polly-3.328.0.tgz", + "integrity": "sha512-lnxmJPRmPkQEWt+V+492CV7Y/HZrbKXa38xQgRQOC6ZmXyoaJhnwCVRERm9KcxUXfrcLhiHrSnR8e24V283YIg==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.303.0", - "@aws-sdk/config-resolver": "3.303.0", - "@aws-sdk/credential-provider-node": "3.303.0", - "@aws-sdk/fetch-http-handler": "3.303.0", - "@aws-sdk/hash-node": "3.303.0", - "@aws-sdk/invalid-dependency": "3.303.0", - "@aws-sdk/middleware-content-length": "3.303.0", - "@aws-sdk/middleware-endpoint": "3.303.0", - "@aws-sdk/middleware-host-header": "3.303.0", - "@aws-sdk/middleware-logger": "3.303.0", - "@aws-sdk/middleware-recursion-detection": "3.303.0", - "@aws-sdk/middleware-retry": "3.303.0", - "@aws-sdk/middleware-serde": "3.303.0", - "@aws-sdk/middleware-signing": "3.303.0", - "@aws-sdk/middleware-stack": "3.303.0", - "@aws-sdk/middleware-user-agent": "3.303.0", - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/node-http-handler": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/smithy-client": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", - "@aws-sdk/util-body-length-browser": "3.303.0", - "@aws-sdk/util-body-length-node": "3.303.0", - "@aws-sdk/util-defaults-mode-browser": "3.303.0", - "@aws-sdk/util-defaults-mode-node": "3.303.0", - "@aws-sdk/util-endpoints": "3.303.0", - "@aws-sdk/util-retry": "3.303.0", - "@aws-sdk/util-stream-browser": "3.303.0", - "@aws-sdk/util-stream-node": "3.303.0", - "@aws-sdk/util-user-agent-browser": "3.303.0", - "@aws-sdk/util-user-agent-node": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "@aws-sdk/client-sts": "3.328.0", + "@aws-sdk/config-resolver": "3.310.0", + "@aws-sdk/credential-provider-node": "3.328.0", + "@aws-sdk/fetch-http-handler": "3.310.0", + "@aws-sdk/hash-node": "3.310.0", + "@aws-sdk/invalid-dependency": "3.310.0", + "@aws-sdk/middleware-content-length": "3.325.0", + "@aws-sdk/middleware-endpoint": "3.325.0", + "@aws-sdk/middleware-host-header": "3.325.0", + "@aws-sdk/middleware-logger": "3.325.0", + "@aws-sdk/middleware-recursion-detection": "3.325.0", + "@aws-sdk/middleware-retry": "3.327.0", + "@aws-sdk/middleware-serde": "3.325.0", + "@aws-sdk/middleware-signing": "3.325.0", + "@aws-sdk/middleware-stack": "3.325.0", + "@aws-sdk/middleware-user-agent": "3.327.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/node-http-handler": "3.328.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/smithy-client": "3.325.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", + "@aws-sdk/util-body-length-browser": "3.310.0", + "@aws-sdk/util-body-length-node": "3.310.0", + "@aws-sdk/util-defaults-mode-browser": "3.325.0", + "@aws-sdk/util-defaults-mode-node": "3.325.0", + "@aws-sdk/util-endpoints": "3.327.0", + "@aws-sdk/util-retry": "3.327.0", + "@aws-sdk/util-stream-browser": "3.310.0", + "@aws-sdk/util-stream-node": "3.328.0", + "@aws-sdk/util-user-agent-browser": "3.310.0", + "@aws-sdk/util-user-agent-node": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/client-sso": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.303.0.tgz", - "integrity": "sha512-LZ+Z6vGnEdqmxx0dqtZP97n5VX5uUKu4lJmDR3sdGolxAUqCY1FxHDZd9DzCFXR8rwoJK4VJTL+exzeVp4Ly/g==", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.328.0.tgz", + "integrity": "sha512-IneVwc4j3bCXwCdNAALQ8VVrfFTFAb2f3FxerHv4DLx8OlMTvZiraDDJisfO+cXLl2WCJOJAzpAJTgrPA50LCg==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.303.0", - "@aws-sdk/fetch-http-handler": "3.303.0", - "@aws-sdk/hash-node": "3.303.0", - "@aws-sdk/invalid-dependency": "3.303.0", - "@aws-sdk/middleware-content-length": "3.303.0", - "@aws-sdk/middleware-endpoint": "3.303.0", - "@aws-sdk/middleware-host-header": "3.303.0", - "@aws-sdk/middleware-logger": "3.303.0", - "@aws-sdk/middleware-recursion-detection": "3.303.0", - "@aws-sdk/middleware-retry": "3.303.0", - "@aws-sdk/middleware-serde": "3.303.0", - "@aws-sdk/middleware-stack": "3.303.0", - "@aws-sdk/middleware-user-agent": "3.303.0", - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/node-http-handler": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/smithy-client": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", - "@aws-sdk/util-body-length-browser": "3.303.0", - "@aws-sdk/util-body-length-node": "3.303.0", - "@aws-sdk/util-defaults-mode-browser": "3.303.0", - "@aws-sdk/util-defaults-mode-node": "3.303.0", - "@aws-sdk/util-endpoints": "3.303.0", - "@aws-sdk/util-retry": "3.303.0", - "@aws-sdk/util-user-agent-browser": "3.303.0", - "@aws-sdk/util-user-agent-node": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "@aws-sdk/config-resolver": "3.310.0", + "@aws-sdk/fetch-http-handler": "3.310.0", + "@aws-sdk/hash-node": "3.310.0", + "@aws-sdk/invalid-dependency": "3.310.0", + "@aws-sdk/middleware-content-length": "3.325.0", + "@aws-sdk/middleware-endpoint": "3.325.0", + "@aws-sdk/middleware-host-header": "3.325.0", + "@aws-sdk/middleware-logger": "3.325.0", + "@aws-sdk/middleware-recursion-detection": "3.325.0", + "@aws-sdk/middleware-retry": "3.327.0", + "@aws-sdk/middleware-serde": "3.325.0", + "@aws-sdk/middleware-stack": "3.325.0", + "@aws-sdk/middleware-user-agent": "3.327.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/node-http-handler": "3.328.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/smithy-client": "3.325.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", + "@aws-sdk/util-body-length-browser": "3.310.0", + "@aws-sdk/util-body-length-node": "3.310.0", + "@aws-sdk/util-defaults-mode-browser": "3.325.0", + "@aws-sdk/util-defaults-mode-node": "3.325.0", + "@aws-sdk/util-endpoints": "3.327.0", + "@aws-sdk/util-retry": "3.327.0", + "@aws-sdk/util-user-agent-browser": "3.310.0", + "@aws-sdk/util-user-agent-node": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/client-sso-oidc": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.303.0.tgz", - "integrity": "sha512-oOdDcBjxGiJ6mFWUMVr+A1hAzGRpcZ+oLAhCakpvpXCUG50PZSBFP+vOQXgHY/XNolqDg+IHq60oE9HoPzGleg==", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.328.0.tgz", + "integrity": "sha512-2T6Snri7ovx9+q/iw/wZ1YHzz/SsxPuJOhgbJipCFW9f1IEPBIEKVZtywcKYzE1nYjyc6YanAqQMn6U2SPhW4A==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.303.0", - "@aws-sdk/fetch-http-handler": "3.303.0", - "@aws-sdk/hash-node": "3.303.0", - "@aws-sdk/invalid-dependency": "3.303.0", - "@aws-sdk/middleware-content-length": "3.303.0", - "@aws-sdk/middleware-endpoint": "3.303.0", - "@aws-sdk/middleware-host-header": "3.303.0", - "@aws-sdk/middleware-logger": "3.303.0", - "@aws-sdk/middleware-recursion-detection": "3.303.0", - "@aws-sdk/middleware-retry": "3.303.0", - "@aws-sdk/middleware-serde": "3.303.0", - "@aws-sdk/middleware-stack": "3.303.0", - "@aws-sdk/middleware-user-agent": "3.303.0", - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/node-http-handler": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/smithy-client": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", - "@aws-sdk/util-body-length-browser": "3.303.0", - "@aws-sdk/util-body-length-node": "3.303.0", - "@aws-sdk/util-defaults-mode-browser": "3.303.0", - "@aws-sdk/util-defaults-mode-node": "3.303.0", - "@aws-sdk/util-endpoints": "3.303.0", - "@aws-sdk/util-retry": "3.303.0", - "@aws-sdk/util-user-agent-browser": "3.303.0", - "@aws-sdk/util-user-agent-node": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "@aws-sdk/config-resolver": "3.310.0", + "@aws-sdk/fetch-http-handler": "3.310.0", + "@aws-sdk/hash-node": "3.310.0", + "@aws-sdk/invalid-dependency": "3.310.0", + "@aws-sdk/middleware-content-length": "3.325.0", + "@aws-sdk/middleware-endpoint": "3.325.0", + "@aws-sdk/middleware-host-header": "3.325.0", + "@aws-sdk/middleware-logger": "3.325.0", + "@aws-sdk/middleware-recursion-detection": "3.325.0", + "@aws-sdk/middleware-retry": "3.327.0", + "@aws-sdk/middleware-serde": "3.325.0", + "@aws-sdk/middleware-stack": "3.325.0", + "@aws-sdk/middleware-user-agent": "3.327.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/node-http-handler": "3.328.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/smithy-client": "3.325.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", + "@aws-sdk/util-body-length-browser": "3.310.0", + "@aws-sdk/util-body-length-node": "3.310.0", + "@aws-sdk/util-defaults-mode-browser": "3.325.0", + "@aws-sdk/util-defaults-mode-node": "3.325.0", + "@aws-sdk/util-endpoints": "3.327.0", + "@aws-sdk/util-retry": "3.327.0", + "@aws-sdk/util-user-agent-browser": "3.310.0", + "@aws-sdk/util-user-agent-node": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/client-sts": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.303.0.tgz", - "integrity": "sha512-oda7mOfGyJZe62DZ5BVH3L84yeDM0Ja/fSpTjwV9hqFqzgtW83TCpiNegcJmvmGWDYaPmE2qpfDPqPzymB0sBg==", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.328.0.tgz", + "integrity": "sha512-Eedz24H7zLuTjJoCtNQEGOKbIlhibqyasFFwWsds6ds24hRF4fVrCKLwZWENZwawtJjjEdRESQe4dwpV5lWqtw==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.303.0", - "@aws-sdk/credential-provider-node": "3.303.0", - "@aws-sdk/fetch-http-handler": "3.303.0", - "@aws-sdk/hash-node": "3.303.0", - "@aws-sdk/invalid-dependency": "3.303.0", - "@aws-sdk/middleware-content-length": "3.303.0", - "@aws-sdk/middleware-endpoint": "3.303.0", - "@aws-sdk/middleware-host-header": "3.303.0", - "@aws-sdk/middleware-logger": "3.303.0", - "@aws-sdk/middleware-recursion-detection": "3.303.0", - "@aws-sdk/middleware-retry": "3.303.0", - "@aws-sdk/middleware-sdk-sts": "3.303.0", - "@aws-sdk/middleware-serde": "3.303.0", - "@aws-sdk/middleware-signing": "3.303.0", - "@aws-sdk/middleware-stack": "3.303.0", - "@aws-sdk/middleware-user-agent": "3.303.0", - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/node-http-handler": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/smithy-client": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", - "@aws-sdk/util-body-length-browser": "3.303.0", - "@aws-sdk/util-body-length-node": "3.303.0", - "@aws-sdk/util-defaults-mode-browser": "3.303.0", - "@aws-sdk/util-defaults-mode-node": "3.303.0", - "@aws-sdk/util-endpoints": "3.303.0", - "@aws-sdk/util-retry": "3.303.0", - "@aws-sdk/util-user-agent-browser": "3.303.0", - "@aws-sdk/util-user-agent-node": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "@aws-sdk/config-resolver": "3.310.0", + "@aws-sdk/credential-provider-node": "3.328.0", + "@aws-sdk/fetch-http-handler": "3.310.0", + "@aws-sdk/hash-node": "3.310.0", + "@aws-sdk/invalid-dependency": "3.310.0", + "@aws-sdk/middleware-content-length": "3.325.0", + "@aws-sdk/middleware-endpoint": "3.325.0", + "@aws-sdk/middleware-host-header": "3.325.0", + "@aws-sdk/middleware-logger": "3.325.0", + "@aws-sdk/middleware-recursion-detection": "3.325.0", + "@aws-sdk/middleware-retry": "3.327.0", + "@aws-sdk/middleware-sdk-sts": "3.326.0", + "@aws-sdk/middleware-serde": "3.325.0", + "@aws-sdk/middleware-signing": "3.325.0", + "@aws-sdk/middleware-stack": "3.325.0", + "@aws-sdk/middleware-user-agent": "3.327.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/node-http-handler": "3.328.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/smithy-client": "3.325.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", + "@aws-sdk/util-body-length-browser": "3.310.0", + "@aws-sdk/util-body-length-node": "3.310.0", + "@aws-sdk/util-defaults-mode-browser": "3.325.0", + "@aws-sdk/util-defaults-mode-node": "3.325.0", + "@aws-sdk/util-endpoints": "3.327.0", + "@aws-sdk/util-retry": "3.327.0", + "@aws-sdk/util-user-agent-browser": "3.310.0", + "@aws-sdk/util-user-agent-node": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "fast-xml-parser": "4.1.2", "tslib": "^2.5.0" } }, "@aws-sdk/config-resolver": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.303.0.tgz", - "integrity": "sha512-uGZ47jcH86AwWcjZjuOL5jK5qE4izrEol8oF7KY214kjmavbKQstyUqmcwL2lr/YpDNFkCYgUxWRpduqVm8zmw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.310.0.tgz", + "integrity": "sha512-8vsT+/50lOqfDxka9m/rRt6oxv1WuGZoP8oPMk0Dt+TxXMbAzf4+rejBgiB96wshI1k3gLokYRjSQZn+dDtT8g==", "requires": { - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-config-provider": "3.295.0", - "@aws-sdk/util-middleware": "3.303.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-config-provider": "3.310.0", + "@aws-sdk/util-middleware": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-env": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.303.0.tgz", - "integrity": "sha512-rtXumfF4cGrVk9fWACeLCfdpmlzlDUkzwSR60/3enC5Antcxl3fFY5T1BzNFvz0mB0zcwm4kaAwIcljX67DNRA==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.310.0.tgz", + "integrity": "sha512-vvIPQpI16fj95xwS7M3D48F7QhZJBnnCgB5lR+b7So+vsG9ibm1mZRVGzVpdxCvgyOhHFbvrby9aalNJmmIP1A==", "requires": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-imds": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.303.0.tgz", - "integrity": "sha512-ruomcFkKUpJkZb87em698//A0AVpt1KN9dn8N8eVyOuvZzebVxSW4AJoVgOKd5Av4PVcZgEqRX0kOOVp0iTrWg==", - "requires": { - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.310.0.tgz", + "integrity": "sha512-baxK7Zp6dai5AGW01FIW27xS2KAaPUmKLIXv5SvFYsUgXXvNW55im4uG3b+2gA0F7V+hXvVBH08OEqmwW6we5w==", + "requires": { + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-ini": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.303.0.tgz", - "integrity": "sha512-4J50F6fEjQmAstSQOpJFG+rnbEqtwA7nDG6PxNm98VSTH2mYJV0YgBdvydfBKrKINAT4xYZta5Sc4WEIpSo0TA==", - "requires": { - "@aws-sdk/credential-provider-env": "3.303.0", - "@aws-sdk/credential-provider-imds": "3.303.0", - "@aws-sdk/credential-provider-process": "3.303.0", - "@aws-sdk/credential-provider-sso": "3.303.0", - "@aws-sdk/credential-provider-web-identity": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.328.0.tgz", + "integrity": "sha512-tOHzfWQUaQif1IciWs57MFM7bFc+693pnEhFCgT3wjzwjKGkq1QsNzfRlOp1QP4Glw6qV+kAAemEZj8mGth8Bg==", + "requires": { + "@aws-sdk/credential-provider-env": "3.310.0", + "@aws-sdk/credential-provider-imds": "3.310.0", + "@aws-sdk/credential-provider-process": "3.310.0", + "@aws-sdk/credential-provider-sso": "3.328.0", + "@aws-sdk/credential-provider-web-identity": "3.310.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.303.0.tgz", - "integrity": "sha512-OlKb7O2jDtrzkzLT/PUb5kxuGGTIyPn2alXzGT+7LdJ9/tP8KlqSVMtnH2UYPPdcc/daK16+MRNL5ylxmnRJ7Q==", - "requires": { - "@aws-sdk/credential-provider-env": "3.303.0", - "@aws-sdk/credential-provider-imds": "3.303.0", - "@aws-sdk/credential-provider-ini": "3.303.0", - "@aws-sdk/credential-provider-process": "3.303.0", - "@aws-sdk/credential-provider-sso": "3.303.0", - "@aws-sdk/credential-provider-web-identity": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.328.0.tgz", + "integrity": "sha512-/omjTxrC8Vv6OPAK+66KNnjVmMZWyEQnQp8e8Y+RZvsuVaeQNJT5UQKSqrYtmqTX2T+yqJY7eVpx5CXBCGjc2g==", + "requires": { + "@aws-sdk/credential-provider-env": "3.310.0", + "@aws-sdk/credential-provider-imds": "3.310.0", + "@aws-sdk/credential-provider-ini": "3.328.0", + "@aws-sdk/credential-provider-process": "3.310.0", + "@aws-sdk/credential-provider-sso": "3.328.0", + "@aws-sdk/credential-provider-web-identity": "3.310.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-process": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.303.0.tgz", - "integrity": "sha512-1pxDYRscGlERAjFE5hSF1KQdcyOGzssuRTdLvez4I/mSIOAJLMmBAnmHGI/DME2LzDVrC9dklA6LHSC2sn3quQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.310.0.tgz", + "integrity": "sha512-h73sg6GPMUWC+3zMCbA1nZ2O03nNJt7G96JdmnantiXBwHpRKWW8nBTLzx5uhXn6hTuTaoQRP/P+oxQJKYdMmA==", "requires": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-sso": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.303.0.tgz", - "integrity": "sha512-/szzM1BzZGjHwV4mSiZo65cyDleJqnxM9Y4autg55mb3dFwcCiMGI6TGbdegumrNZZlCTeTA1lIhA9PdT4gDAQ==", - "requires": { - "@aws-sdk/client-sso": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/token-providers": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.328.0.tgz", + "integrity": "sha512-6lSfA3AcoqNt+OYJoBimWmPmqUYVCHkE0Y+4HFN7JaXCyUknsO9/71P5zo/pp8Q7/yxP/aRyzjael82G5thj0A==", + "requires": { + "@aws-sdk/client-sso": "3.328.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/token-providers": "3.328.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-web-identity": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.303.0.tgz", - "integrity": "sha512-qi5CP4ocseqdj3kMi0vgLx8XrdanLNvCAfgiEF6LjUJI88R2snZAYNUSd+Y2n04mKAalns+mUwfUN2JyL66d5g==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.310.0.tgz", + "integrity": "sha512-H4SzuZXILNhK6/IR1uVvsUDZvzc051hem7GLyYghBCu8mU+tq28YhKE8MfSroi6eL2e5Vujloij1OM2EQQkPkw==", "requires": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/fetch-http-handler": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.303.0.tgz", - "integrity": "sha512-Bc6C86/KQOSWPa741h9QEVcApyignYV5vC5+zZjmKkcyPxrVxTmL3kTJidpVOtVfCmTIrNN/WhAVDzLBbh1ycQ==", - "requires": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/querystring-builder": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.310.0.tgz", + "integrity": "sha512-Bi9vIwzdkw1zMcvi/zGzlWS9KfIEnAq4NNhsnCxbQ4OoIRU9wvU+WGZdBBhxg0ZxZmpp1j1aZhU53lLjA07MHw==", + "requires": { + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/querystring-builder": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/hash-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.303.0.tgz", - "integrity": "sha512-jSo4A/JxTabZ9jHrx7nhKIXnOmvPg/SSYnoHaFdVS5URJrNt1w+nSvW1wLGMEMOvu5+NU3bldBBSb+h0Ocwv1A==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.310.0.tgz", + "integrity": "sha512-NvE2fhRc8GRwCXBfDehxVAWCmVwVMILliAKVPAEr4yz2CkYs0tqU51S48x23dtna07H4qHtgpeNqVTthcIQOEQ==", "requires": { - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-buffer-from": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-buffer-from": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/invalid-dependency": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.303.0.tgz", - "integrity": "sha512-RXNcLxOrUJaMMqk5uIYEf6X9XCMockT27bS8Dde/0ms015VOo8Wn2hHU9wEmGeFvLccC2UU4gPzvmj74w70q2Q==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.310.0.tgz", + "integrity": "sha512-1s5RG5rSPXoa/aZ/Kqr5U/7lqpx+Ry81GprQ2bxWqJvWQIJ0IRUwo5pk8XFxbKVr/2a+4lZT/c3OGoBOM1yRRA==", "requires": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/is-array-buffer": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.303.0.tgz", - "integrity": "sha512-IitBTr+pou7v5BrYLFH/SbIf3g1LIgMhcI3bDXBq2FjzmDftj4bW8BOmg05b9YKf2TrrggvJ4yk/jH+yYFXoJQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.310.0.tgz", + "integrity": "sha512-urnbcCR+h9NWUnmOtet/s4ghvzsidFmspfhYaHAmSRdy9yDjdjBJMFjjsn85A1ODUktztm+cVncXjQ38WCMjMQ==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/middleware-content-length": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.303.0.tgz", - "integrity": "sha512-0UL5TWSL1JRpjT6gjGsZXfia5oL7vxzj+CfMCqkP6gjVF69eRcgu426Xc6TJwDcr6jIFPeamDBTLyt9ZAAr6hg==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.325.0.tgz", + "integrity": "sha512-t38VBKCpNqSKqSu0OfWMJs7cwaRHFGQxIF9lV8JMCM/2lyUpN4JcfuzSTK+MFN2eDZEHp5DiNg8w07GXXusRYg==", "requires": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-endpoint": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.303.0.tgz", - "integrity": "sha512-z2i8LJ6YTKbqXh9rY/KbXihvhq6P0JVI6SnkwT2hesJp0Nfldx85jsaLzj1+ioNKlQ+51u9UmBnO404DgNCAbg==", - "requires": { - "@aws-sdk/middleware-serde": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/url-parser": "3.303.0", - "@aws-sdk/util-middleware": "3.303.0", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.325.0.tgz", + "integrity": "sha512-3CavuOHCKiWUnCtzrUFbhbEP26qIgzzRs5C3vpOJhDUhugBubIWgPGGRLpbnIro+P4XJPwM3pMziNzhKVuSDlQ==", + "requires": { + "@aws-sdk/middleware-serde": "3.325.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/url-parser": "3.310.0", + "@aws-sdk/util-middleware": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-host-header": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.303.0.tgz", - "integrity": "sha512-LUyhtjbuosrD0QAsBZJwT3yp146I7Xjehf42OP3dWbRuklMEilI0Res5K2/nknf3/ZKUj6sf7BbJoU8E+SpRiQ==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.325.0.tgz", + "integrity": "sha512-IN28gsxcRy4J+FxxCHvzb2NORBx8uMA+h9QYS4BBZfpKVYIZh+mudHgYcdNHWlKXmlTGjhWBNWTeByhzuSKAiA==", "requires": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-logger": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.303.0.tgz", - "integrity": "sha512-y2sqmmBdm4gXUL4SyN+ucfO/sxtOEDj2sB12ArRpDGyerfNLhAf7xpL4lXkjPx/7wTIjlBWoO2G/yK6t00P6fA==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.325.0.tgz", + "integrity": "sha512-S8rWgTpN2b/+UDDm+yZMFM6rw1zwO8KT0GAIQbAhB96shyD5eKen/UfihCTB7YMvbD2piebymwJTvxv6bn1VqQ==", "requires": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-recursion-detection": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.303.0.tgz", - "integrity": "sha512-z3MTsZMtPg6hYWl6a0o07q7zgsDXPYeP14XFVMc8NXqiAyNcm/OYwanpXyNjsEKI/X0nlpJ/Rs+IRCbaIqV9Mw==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.325.0.tgz", + "integrity": "sha512-2l1ABF7KePsoKz8KaNvD2uxo1zHqkFHK4PL/wW/FbcwOcE08f0R7qX++st/bPpVjXX/j/5vWTnNNgJOIOrZhyw==", "requires": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-retry": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.303.0.tgz", - "integrity": "sha512-wxlqrdGOrCm2Jsra7YyfLyO34YRB/FNlXzwuJiZkqoAb/40ZAuFcWqDv41SP44y8liFXqfsMGuywJ7mK2cHvnA==", - "requires": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/service-error-classification": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-middleware": "3.303.0", - "@aws-sdk/util-retry": "3.303.0", + "version": "3.327.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.327.0.tgz", + "integrity": "sha512-LCG+oRIPc4XJ+DYqkSCgggavxWi4+hP3Rw40vHdHMNvJpCiUJMwVJ+dULEywEP/WZvr4AEkWiRrHmJVpSLeZ+Q==", + "requires": { + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/service-error-classification": "3.327.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-middleware": "3.310.0", + "@aws-sdk/util-retry": "3.327.0", "tslib": "^2.5.0", "uuid": "^8.3.2" } }, "@aws-sdk/middleware-sdk-sts": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.303.0.tgz", - "integrity": "sha512-igp7htNCUPhVL9Q6rJSgcx3qy/P2l2KAiS0oozOTaTXt3h0LbOusSXtwyA7qvLYeRthnw6msVW+rVBAW3Vo+3g==", + "version": "3.326.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.326.0.tgz", + "integrity": "sha512-suOkuXxyAfOH0hznK63ZU10EoytKX5YPs9amO416VbgYFtuIeliCmntYfnl1jUvutp0fctGGpEGE9OnoYI+fhw==", "requires": { - "@aws-sdk/middleware-signing": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/middleware-signing": "3.325.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-serde": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.303.0.tgz", - "integrity": "sha512-mmZozwYKgUgXkJrLVqgIYoOQ8DfKZS3pBBT3ZxWzv5Hz5M3oRqFgfVYljkeDM2CTvBweHpqVRTWqPDMcZisucg==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.325.0.tgz", + "integrity": "sha512-QAZYaFfAw1a06Vg39JiYIq0kSJ6EuUPOiKfK/Goj0cBv78lrXWuKdf04UF3U8Rqk/4mamnsTqUSwf4NoKkF0hw==", "requires": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-signing": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.303.0.tgz", - "integrity": "sha512-rrLQcS2wFsUGj9Kyx78LRgRS8jwiixz/Nyv06SmcKhP680sweETpQz/EA+wcVEVRXmUI6vs4NtqXz36dU0X8Nw==", - "requires": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/signature-v4": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-middleware": "3.303.0", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.325.0.tgz", + "integrity": "sha512-SOwPwaCE3vSCGwFzkIlnOUSkeCUzKTyIQnFVjlQkqGuMxMX/iDaQQGaX+HUbuGIuULCEQqjZH4dLKZcor8eVZw==", + "requires": { + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/signature-v4": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-middleware": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-stack": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.303.0.tgz", - "integrity": "sha512-6KmdroXLexzILGxF/Xq0cGBs+B8Ipm1pff8qnWCT6KldYp+Q40bVcJrExkVHDN1uOsOxu20ixW2yujOKS356zg==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.325.0.tgz", + "integrity": "sha512-cZWehA4grGvX1IKlY9atJgD0bq3ew7YRJgY7GA6DSgsU7GrZ61Qvi+H7IuGx5AdeAwaTnbnTGN4qCaA2EfxNhA==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/middleware-user-agent": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.303.0.tgz", - "integrity": "sha512-ZVMVNxPRn2jXog3V4xWokSYoQxTKAdKlNoCfjqFplsF70r8sXfgZtOMF5ZhGo+Hgsx7GqpR/NWPKJtZD2nigpg==", + "version": "3.327.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.327.0.tgz", + "integrity": "sha512-4rDSNY1xhlqfRcY97CQKcgs6AOe4ovtiRdCAjg2InnLOZHRVFoHhOIDxWNK2W1K2Pl65z4EGH6RXmB1t0srJHA==", "requires": { - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-endpoints": "3.303.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-endpoints": "3.327.0", "tslib": "^2.5.0" } }, "@aws-sdk/node-config-provider": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.303.0.tgz", - "integrity": "sha512-Ywbo9+2SkbdmNgCoxYJrv+YrFDtBH7hHtn2ywtzP4t57d4t0V/LNrNQsrAsXxqy48OS5r2ovOLHiqJS5jp1oyw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.310.0.tgz", + "integrity": "sha512-T/Pp6htc6hq/Cq+MLNDSyiwWCMVF6GqbBbXKVlO5L8rdHx4sq9xPdoPveZhGWrxvkanjA6eCwUp6E0riBOSVng==", "requires": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/node-http-handler": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.303.0.tgz", - "integrity": "sha512-5Te+mwBIOiQr2nM7/SNVFkvYHOH/CswOmUMV4Gxc7YjuervhrYvVFs2P+lL+c8rfiVMTLWjnJ6JiL2JdJfYgnQ==", - "requires": { - "@aws-sdk/abort-controller": "3.303.0", - "@aws-sdk/protocol-http": "3.303.0", - "@aws-sdk/querystring-builder": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.328.0.tgz", + "integrity": "sha512-zxXdNfdSGi6w/1bopllxAYAufCGDNG2eLenR3Tjj/UVBGrvS4ME5NGInu6u4LirTdkSqYlZkqKMyfiZ6XxGfdQ==", + "requires": { + "@aws-sdk/abort-controller": "3.310.0", + "@aws-sdk/protocol-http": "3.310.0", + "@aws-sdk/querystring-builder": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/property-provider": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.303.0.tgz", - "integrity": "sha512-d1qbn0pCz+jvB0dcWMWuIlWYM8dWCg3185ngMgUQxkgUk7/kEbwGBsmT+xtZAMQcwcgPkSm8qeATEQ7ToiH8eQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.310.0.tgz", + "integrity": "sha512-3lxDb0akV6BBzmFe4nLPaoliQbAifyWJhuvuDOu7e8NzouvpQXs0275w9LePhhcgjKAEVXUIse05ZW2DLbxo/g==", "requires": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/protocol-http": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.303.0.tgz", - "integrity": "sha512-eqblSsdmKBzgNl06dUnL4toq/OQgZyxVsxHCz2nI/xBk5lI/qAZIJyEgP2GmP8aoWwneAq33roG0VLZoxQ8exg==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.310.0.tgz", + "integrity": "sha512-fgZ1aw/irQtnrsR58pS8ThKOWo57Py3xX6giRvwSgZDEcxHfVzuQjy9yPuV++v04fdmdtgpbGf8WfvAAJ11yXQ==", "requires": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/querystring-builder": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.303.0.tgz", - "integrity": "sha512-0eMp2gd7Ro0svJ6YVnp9cUiGtrc1d/HynyMfbDkLkqWJAnHMz7Oc1GjK5YyL1hdxm0W+JWZCPR0SovLiaboKDw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.310.0.tgz", + "integrity": "sha512-ZHH8GV/80+pWGo7DzsvwvXR5xVxUHXUvPJPFAkhr6nCf78igdoF8gR10ScFoEKbtEapoNTaZlKHPXxpD8aPG7A==", "requires": { - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-uri-escape": "3.303.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-uri-escape": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/querystring-parser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.303.0.tgz", - "integrity": "sha512-KNJSQiTFiA7W5eYCox8bLGM7kghC3Azad86HQhdsYO0jCoPxcgj8MeP6T7fPTIC4WcTwcWb7T1MpzoeBiKMOTQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.310.0.tgz", + "integrity": "sha512-YkIznoP6lsiIUHinx++/lbb3tlMURGGqMpo0Pnn32zYzGrJXA6eC3D0as2EcMjo55onTfuLcIiX4qzXes2MYOA==", "requires": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/service-error-classification": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.303.0.tgz", - "integrity": "sha512-eO13PzdtRO9C+g3tyFOpIblX2SbDrIbg2bNtB8JOfjVi3E1b5VsSTXXU/cKV+lbZ9XMzMn3VzGSvpo6AjzfpxA==" + "version": "3.327.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.327.0.tgz", + "integrity": "sha512-bCWnw+uH3gI6yPxLi4a4WV71P1KlJU7Z4+iMBY1Gt4+ZsaPAJX9pAbuQcFhFH++4xTk/QaVMzSvD0uQ+u0B/NQ==" }, "@aws-sdk/shared-ini-file-loader": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.303.0.tgz", - "integrity": "sha512-yI84mnnh3pdQtIOo+oGWofaI0rvfhp3DOavB8KHIkQr+RcjF+fxsqbelRfVb25gx7yEWPNCMB8wM+HhklSEFJg==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.310.0.tgz", + "integrity": "sha512-N0q9pG0xSjQwc690YQND5bofm+4nfUviQ/Ppgan2kU6aU0WUq8KwgHJBto/YEEI+VlrME30jZJnxtOvcZJc2XA==", "requires": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/signature-v4": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.303.0.tgz", - "integrity": "sha512-muw5yclLOgXPHIxv60mhO6R0GVjKbf+M6E/cWvIEVGq8Ke+mLMYNFYNdKP/f/8JgTtW2xwQ7pIK3U8x284ZqPw==", - "requires": { - "@aws-sdk/is-array-buffer": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-hex-encoding": "3.295.0", - "@aws-sdk/util-middleware": "3.303.0", - "@aws-sdk/util-uri-escape": "3.303.0", - "@aws-sdk/util-utf8": "3.303.0", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.310.0.tgz", + "integrity": "sha512-1M60P1ZBNAjCFv9sYW29OF6okktaeibWyW3lMXqzoHF70lHBZh+838iUchznXUA5FLabfn4jBFWMRxlAXJUY2Q==", + "requires": { + "@aws-sdk/is-array-buffer": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-hex-encoding": "3.310.0", + "@aws-sdk/util-middleware": "3.310.0", + "@aws-sdk/util-uri-escape": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/smithy-client": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.303.0.tgz", - "integrity": "sha512-WDTC9ODdpRAXo8+Mtr5hsPJeR3y3LxfZZFg5dplJgkaxV+MFdnsUCxZfAZMnxcGy5Q2qTzlLLNk9CpadS72v+g==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.325.0.tgz", + "integrity": "sha512-sqDFuhjxd8+Q9qI8MmXe/g1/FgoViwetv14K+bpHK7pGlOIvDyT7TboDNClfgqSLdgTDCEaoC3JRSi9Y5RgbmA==", "requires": { - "@aws-sdk/middleware-stack": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/middleware-stack": "3.325.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/token-providers": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.303.0.tgz", - "integrity": "sha512-7G7VYbqyX0v6RTD/m7XmArZToMek4jYXR/TuuGHK6ifNJeMDwkU4BcoVDj37vvTPYp6qKU5IE+bE3XmPyVWnGQ==", - "requires": { - "@aws-sdk/client-sso-oidc": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/shared-ini-file-loader": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.328.0.tgz", + "integrity": "sha512-AWrRwa0RqSiz9CT3QKuMYuZsRXaeKCp8kMsx1CgrG5VUaag+NhDBBMYVbxgb0SyoqbsGC+wDUXtSCZctrE7Z3Q==", + "requires": { + "@aws-sdk/client-sso-oidc": "3.328.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/shared-ini-file-loader": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/types": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.303.0.tgz", - "integrity": "sha512-H+Cy8JDTsK87MID6MJbV9ad5xdS9YvaLZSeveC2Zs1WNu2Rp6X9j+mg3EqDSmBKUQVAFRy2b+CSKkH3nnBMedw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.310.0.tgz", + "integrity": "sha512-j8eamQJ7YcIhw7fneUfs8LYl3t01k4uHi4ZDmNRgtbmbmTTG3FZc2MotStZnp3nZB6vLiPF1o5aoJxWVvkzS6A==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/url-parser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.303.0.tgz", - "integrity": "sha512-PXMXGhr89s0MiPTf8Ft/v3sPzh2geSrFhTVSO/01blfBQqtuu0JMqORhLheOdi16AhQNVlYHDW2tWdx7/T+KsA==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.310.0.tgz", + "integrity": "sha512-mCLnCaSB9rQvAgx33u0DujLvr4d5yEm/W5r789GblwwQnlNXedVu50QRizMLTpltYWyAUoXjJgQnJHmJMaKXhw==", "requires": { - "@aws-sdk/querystring-parser": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/querystring-parser": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-base64": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.303.0.tgz", - "integrity": "sha512-oj+p/GHHPcZEKjiiOHU/CyNQeh8i+8dfMMzU+VGdoK5jHaVG8h2b+V7GPf7I4wDkG2ySCK5b5Jw5NUHwdTJ13Q==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.310.0.tgz", + "integrity": "sha512-v3+HBKQvqgdzcbL+pFswlx5HQsd9L6ZTlyPVL2LS9nNXnCcR3XgGz9jRskikRUuUvUXtkSG1J88GAOnJ/apTPg==", "requires": { - "@aws-sdk/util-buffer-from": "3.303.0", + "@aws-sdk/util-buffer-from": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-body-length-browser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.303.0.tgz", - "integrity": "sha512-T643m0pKzgjAvPFy4W8zL+aszG3T22U8hb6stlMvT0z++Smv8QfIvkIkXjWyH2KlOt5GKliHwdOv8SAi0FSMJQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.310.0.tgz", + "integrity": "sha512-sxsC3lPBGfpHtNTUoGXMQXLwjmR0zVpx0rSvzTPAuoVILVsp5AU/w5FphNPxD5OVIjNbZv9KsKTuvNTiZjDp9g==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-body-length-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.303.0.tgz", - "integrity": "sha512-/hS8z6e18Le60hJr2TUIFoUjUiAsnQsuDn6DxX74GXhMOHeSwZDJ9jHF39quYkNMmAE37GrVH4MI9vE0pN27qw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.310.0.tgz", + "integrity": "sha512-2tqGXdyKhyA6w4zz7UPoS8Ip+7sayOg9BwHNidiGm2ikbDxm1YrCfYXvCBdwaJxa4hJfRVz+aL9e+d3GqPI9pQ==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-buffer-from": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.303.0.tgz", - "integrity": "sha512-hUU+NW+SW6RNojtAKnnmz+tDShVKlEx2YsS4a5fSfrKRUes+zWz10cxVX0RQfysd3R6tdSHhbjsSj8eCIybheg==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.310.0.tgz", + "integrity": "sha512-i6LVeXFtGih5Zs8enLrt+ExXY92QV25jtEnTKHsmlFqFAuL3VBeod6boeMXkN2p9lbSVVQ1sAOOYZOHYbYkntw==", "requires": { - "@aws-sdk/is-array-buffer": "3.303.0", + "@aws-sdk/is-array-buffer": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-config-provider": { - "version": "3.295.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.295.0.tgz", - "integrity": "sha512-/5Dl1aV2yI8YQjqwmg4RTnl/E9NmNsx7HIwBZt+dTcOrM0LMUwczQBFFcLyqCj/qv5y+VsvLoAAA/OiBT7hb3w==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.310.0.tgz", + "integrity": "sha512-xIBaYo8dwiojCw8vnUcIL4Z5tyfb1v3yjqyJKJWV/dqKUFOOS0U591plmXbM+M/QkXyML3ypon1f8+BoaDExrg==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-defaults-mode-browser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.303.0.tgz", - "integrity": "sha512-jtZgCKelFe4/SHDHQu9ydbYttxSfqSlQojA5qxTJxLvzryIB+/GTHQ+sYWyMyzaD489W9elt1/cSsXd4LtPK0A==", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.325.0.tgz", + "integrity": "sha512-gcowpXTo8E8N3jxD2KW+csiicJ7HPkhWnpL925xgwe0oq091OpATsKFrBOL18h72VfRWf4FAsR9lVwxSQ78zSA==", "requires": { - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", "bowser": "^2.11.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-defaults-mode-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.303.0.tgz", - "integrity": "sha512-c86iyot/u9bCVcy/rlWL+0kdR51c7C2d2yDXvO9iFCdMKAs28Hw1ijGczVmOcUQ61zKNFSGYx+VekHXN9IWYOg==", - "requires": { - "@aws-sdk/config-resolver": "3.303.0", - "@aws-sdk/credential-provider-imds": "3.303.0", - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/property-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", + "version": "3.325.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.325.0.tgz", + "integrity": "sha512-/5uoOrgNxoUxv3AwsdXjMA3f6KJA6fi69otA0RiINjilCdcbOxq5GI11AFEyRio/+e+imriX4+UYjsguUR+f4g==", + "requires": { + "@aws-sdk/config-resolver": "3.310.0", + "@aws-sdk/credential-provider-imds": "3.310.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/property-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-endpoints": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.303.0.tgz", - "integrity": "sha512-dPg9+l3VY3nclWFiWAVNWek5lQwgdtY8oRYOgCeyntce9FlNrPQgCRTVr36D0iQ0aNCs0GWzfjgL+rIdCF66/w==", + "version": "3.327.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.327.0.tgz", + "integrity": "sha512-2+2jTfBzhXsfpOci61gzaoBUVdGhFWja7k5cLAfOaRROkK+m+Zv532+m3cCQZjBXJ6pJ952MbiAroRSjFq0/SQ==", "requires": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-hex-encoding": { - "version": "3.295.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.295.0.tgz", - "integrity": "sha512-XJcoVo41kHzhe28PBm/rqt5mdCp8R6abwiW9ug1dA6FOoPUO8kBUxDv6xaOmA2hfRvd2ocFfBXaUCBqUowkGcQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.310.0.tgz", + "integrity": "sha512-sVN7mcCCDSJ67pI1ZMtk84SKGqyix6/0A1Ab163YKn+lFBQRMKexleZzpYzNGxYzmQS6VanP/cfU7NiLQOaSfA==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-locate-window": { - "version": "3.295.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.295.0.tgz", - "integrity": "sha512-d/s+zhUx5Kh4l/ecMP/TBjzp1GR/g89Q4nWH6+wH5WgdHsK+LG+vmsk6mVNuP/8wsCofYG4NBqp5Ulbztbm9QA==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.310.0.tgz", + "integrity": "sha512-qo2t/vBTnoXpjKxlsC2e1gBrRm80M3bId27r0BRB2VniSSe7bL1mmzM+/HFtujm0iAxtPM+aLEflLJlJeDPg0w==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-middleware": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.303.0.tgz", - "integrity": "sha512-HAfBcbZw1+pY3dIEDM4jVpH1ViFcGH5s0q1dr+x4rcLGpMM3B4dH0HUgDPtycG8sw+nk+9jGgiEtgaCNOpJLGA==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.310.0.tgz", + "integrity": "sha512-FTSUKL/eRb9X6uEZClrTe27QFXUNNp7fxYrPndZwk1hlaOP5ix+MIHBcI7pIiiY/JPfOUmPyZOu+HetlFXjWog==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-retry": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.303.0.tgz", - "integrity": "sha512-RWwRNjoWMcpDouz69wPuFXWFVzwYtUkTbJfa46SjKl1IwqMHS4f9yjJfCwJIoLOW9M/o2JB7nD0Ij3gqqzajLw==", + "version": "3.327.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.327.0.tgz", + "integrity": "sha512-y15NLGTAT2vaLzA8klJ6Bo8NGjVAa3/njqc4iCbta/3GqKpQU0zbvw3Y5aWyHp8BhV4DSUTp088jWjaoZlSqgw==", "requires": { - "@aws-sdk/service-error-classification": "3.303.0", + "@aws-sdk/service-error-classification": "3.327.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-stream-browser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.303.0.tgz", - "integrity": "sha512-TYKCLR40IvQOBIkCJQFugLVDph0mdA69KbvCgTk4evpRub14fkQRapUBx/x4dsIajanvHv7OrQaJKUvyiDK6eQ==", - "requires": { - "@aws-sdk/fetch-http-handler": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-base64": "3.303.0", - "@aws-sdk/util-hex-encoding": "3.295.0", - "@aws-sdk/util-utf8": "3.303.0", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.310.0.tgz", + "integrity": "sha512-bysXZHwFwvbqOTCScCdCnoLk1K3GCo0HRIYEZuL7O7MHrQmfaYRXcaft/p22+GUv9VeFXS/eJJZ5r4u32az94w==", + "requires": { + "@aws-sdk/fetch-http-handler": "3.310.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-base64": "3.310.0", + "@aws-sdk/util-hex-encoding": "3.310.0", + "@aws-sdk/util-utf8": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-stream-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.303.0.tgz", - "integrity": "sha512-NR9waJzNXYu7QgiVmXpk64EcW9qbELpLSZ+BCMioJD3+023vJuibgq2Ue03DxRt5Uau2p568mvCRGNc3HqDM3A==", + "version": "3.328.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.328.0.tgz", + "integrity": "sha512-9h8oji5OTmatXMfPIasAapL59QDO7TR0J/B5Y3ERwGxy2U373LEy8Uvs+mbPIIQV1ztCLwHWDxKQoTUj4hLxoQ==", "requires": { - "@aws-sdk/node-http-handler": "3.303.0", - "@aws-sdk/types": "3.303.0", - "@aws-sdk/util-buffer-from": "3.303.0", + "@aws-sdk/node-http-handler": "3.328.0", + "@aws-sdk/types": "3.310.0", + "@aws-sdk/util-buffer-from": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-uri-escape": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.303.0.tgz", - "integrity": "sha512-N3ULNuHCL3QzAlCTY+XRRkRQTYCTU8RRuzFCJX0pDpz9t2K+tLT7DbxqupWGNFGl5Xlulf1Is14J3BP/Dx91rA==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.310.0.tgz", + "integrity": "sha512-drzt+aB2qo2LgtDoiy/3sVG8w63cgLkqFIa2NFlGpUgHFWTXkqtbgf4L5QdjRGKWhmZsnqkbtL7vkSWEcYDJ4Q==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-user-agent-browser": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.303.0.tgz", - "integrity": "sha512-Kex3abpUrTX9z129jiI8sfjIUmQDwiWjhkvBkPmrwjFY/sZcnOcXj5nP2iwJ+k6CnA5ZK5PjZ6P62t+eJ5MTXw==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.310.0.tgz", + "integrity": "sha512-yU/4QnHHuQ5z3vsUqMQVfYLbZGYwpYblPiuZx4Zo9+x0PBkNjYMqctdDcrpoH9Z2xZiDN16AmQGK1tix117ZKw==", "requires": { - "@aws-sdk/types": "3.303.0", + "@aws-sdk/types": "3.310.0", "bowser": "^2.11.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-user-agent-node": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.303.0.tgz", - "integrity": "sha512-QYUg8F/Ho6AsVZaSSRMf/LWoEPDyOwgKZBw3AbKoH6RxAdAsdL1SXz5t4A6jHakP9TLVN2Yw2WRbHDe4LATASQ==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.310.0.tgz", + "integrity": "sha512-Ra3pEl+Gn2BpeE7KiDGpi4zj7WJXZA5GXnGo3mjbi9+Y3zrbuhJAbdZO3mO/o7xDgMC6ph4xCTbaSGzU6b6EDg==", "requires": { - "@aws-sdk/node-config-provider": "3.303.0", - "@aws-sdk/types": "3.303.0", + "@aws-sdk/node-config-provider": "3.310.0", + "@aws-sdk/types": "3.310.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-utf8": { - "version": "3.303.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8/-/util-utf8-3.303.0.tgz", - "integrity": "sha512-tZXVuMOIONPOuOGBs/XRdzxv6jUvTM620dRFFIHZwlGiW8bo0x0LlonrzDAJZA4e9ZwmxJIj8Ji13WVRBGvZWg==", + "version": "3.310.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8/-/util-utf8-3.310.0.tgz", + "integrity": "sha512-DnLfFT8uCO22uOJc0pt0DsSNau1GTisngBCDw8jQuWT5CqogMJu4b/uXmwEqfj8B3GX6Xsz8zOd6JpRlPftQoA==", "requires": { - "@aws-sdk/util-buffer-from": "3.303.0", + "@aws-sdk/util-buffer-from": "3.310.0", "tslib": "^2.5.0" } }, @@ -9534,38 +9639,38 @@ } }, "@babel/compat-data": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", - "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==", + "version": "7.21.7", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.7.tgz", + "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==", "dev": true }, "@babel/core": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", - "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.1.0", - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.2", - "@babel/helper-compilation-targets": "^7.20.0", - "@babel/helper-module-transforms": "^7.20.2", - "@babel/helpers": "^7.20.1", - "@babel/parser": "^7.20.2", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.2", + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz", + "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.2.0", + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.21.5", + "@babel/helper-compilation-targets": "^7.21.5", + "@babel/helper-module-transforms": "^7.21.5", + "@babel/helpers": "^7.21.5", + "@babel/parser": "^7.21.8", + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.1", + "json5": "^2.2.2", "semver": "^6.3.0" }, "dependencies": { "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", + "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", "dev": true, "requires": { "@babel/highlight": "^7.18.6" @@ -9580,63 +9685,67 @@ } }, "@babel/generator": { - "version": "7.20.4", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", - "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.5.tgz", + "integrity": "sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==", "dev": true, "requires": { - "@babel/types": "^7.20.2", + "@babel/types": "^7.21.5", "@jridgewell/gen-mapping": "^0.3.2", + "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" - }, - "dependencies": { - "@jridgewell/gen-mapping": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", - "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", - "dev": true, - "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" - } - } } }, "@babel/helper-compilation-targets": { - "version": "7.20.0", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", - "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz", + "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==", "dev": true, "requires": { - "@babel/compat-data": "^7.20.0", - "@babel/helper-validator-option": "^7.18.6", + "@babel/compat-data": "^7.21.5", + "@babel/helper-validator-option": "^7.21.0", "browserslist": "^4.21.3", + "lru-cache": "^5.1.1", "semver": "^6.3.0" }, "dependencies": { + "lru-cache": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", + "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", + "dev": true, + "requires": { + "yallist": "^3.0.2" + } + }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true + }, + "yallist": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", + "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", + "dev": true } } }, "@babel/helper-environment-visitor": { - "version": "7.18.9", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", - "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz", + "integrity": "sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==", "dev": true }, "@babel/helper-function-name": { - "version": "7.19.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", - "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", + "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", "dev": true, "requires": { - "@babel/template": "^7.18.10", - "@babel/types": "^7.19.0" + "@babel/template": "^7.20.7", + "@babel/types": "^7.21.0" } }, "@babel/helper-hoist-variables": { @@ -9649,37 +9758,37 @@ } }, "@babel/helper-module-imports": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", - "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", + "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", "dev": true, "requires": { - "@babel/types": "^7.18.6" + "@babel/types": "^7.21.4" } }, "@babel/helper-module-transforms": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", - "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz", + "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==", "dev": true, "requires": { - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-module-imports": "^7.18.6", - "@babel/helper-simple-access": "^7.20.2", + "@babel/helper-environment-visitor": "^7.21.5", + "@babel/helper-module-imports": "^7.21.4", + "@babel/helper-simple-access": "^7.21.5", "@babel/helper-split-export-declaration": "^7.18.6", "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.2" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" } }, "@babel/helper-simple-access": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", - "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", + "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", "dev": true, "requires": { - "@babel/types": "^7.20.2" + "@babel/types": "^7.21.5" } }, "@babel/helper-split-export-declaration": { @@ -9692,9 +9801,9 @@ } }, "@babel/helper-string-parser": { - "version": "7.19.4", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", - "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz", + "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==", "dev": true }, "@babel/helper-validator-identifier": { @@ -9703,20 +9812,20 @@ "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" }, "@babel/helper-validator-option": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", - "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", + "version": "7.21.0", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", + "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", "dev": true }, "@babel/helpers": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", - "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.5.tgz", + "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==", "dev": true, "requires": { - "@babel/template": "^7.18.10", - "@babel/traverse": "^7.20.1", - "@babel/types": "^7.20.0" + "@babel/template": "^7.20.7", + "@babel/traverse": "^7.21.5", + "@babel/types": "^7.21.5" } }, "@babel/highlight": { @@ -9781,25 +9890,25 @@ } }, "@babel/parser": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", - "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==" + "version": "7.21.8", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.8.tgz", + "integrity": "sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==" }, "@babel/template": { - "version": "7.18.10", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", - "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", + "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", "dev": true, "requires": { "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.18.10", - "@babel/types": "^7.18.10" + "@babel/parser": "^7.20.7", + "@babel/types": "^7.20.7" }, "dependencies": { "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", + "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", "dev": true, "requires": { "@babel/highlight": "^7.18.6" @@ -9808,27 +9917,27 @@ } }, "@babel/traverse": { - "version": "7.20.1", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", - "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.5.tgz", + "integrity": "sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==", "dev": true, "requires": { - "@babel/code-frame": "^7.18.6", - "@babel/generator": "^7.20.1", - "@babel/helper-environment-visitor": "^7.18.9", - "@babel/helper-function-name": "^7.19.0", + "@babel/code-frame": "^7.21.4", + "@babel/generator": "^7.21.5", + "@babel/helper-environment-visitor": "^7.21.5", + "@babel/helper-function-name": "^7.21.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.20.1", - "@babel/types": "^7.20.0", + "@babel/parser": "^7.21.5", + "@babel/types": "^7.21.5", "debug": "^4.1.0", "globals": "^11.1.0" }, "dependencies": { "@babel/code-frame": { - "version": "7.18.6", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", - "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", + "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", "dev": true, "requires": { "@babel/highlight": "^7.18.6" @@ -9843,12 +9952,12 @@ } }, "@babel/types": { - "version": "7.20.2", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", - "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", + "version": "7.21.5", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.5.tgz", + "integrity": "sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==", "dev": true, "requires": { - "@babel/helper-string-parser": "^7.19.4", + "@babel/helper-string-parser": "^7.21.5", "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" } @@ -9871,32 +9980,32 @@ } }, "@google-cloud/text-to-speech": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/@google-cloud/text-to-speech/-/text-to-speech-4.2.1.tgz", - "integrity": "sha512-7UpvE5daaNg0hX1m8jmLR2uZTalgd7xm5vqotQbovdhF1nQ9EU0x48XUsVNiXroKOXZ3GDqJCGhGw4vC2Xp03w==", + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/@google-cloud/text-to-speech/-/text-to-speech-4.2.2.tgz", + "integrity": "sha512-tpfjyS86ieOYCG8sRBaoS0EVUouWTO5NC2rAsMyQZKjAhS6Y+u4evRPEpHg0Q42oKRwhphBCkU0Uvro34lRA8g==", "requires": { - "google-gax": "^3.5.2" + "google-gax": "^3.5.8" } }, "@grpc/grpc-js": { - "version": "1.8.13", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.8.13.tgz", - "integrity": "sha512-iY3jsdfbc0ARoCLFvbvUB8optgyb0r1XLPb142u+QtgBcKJYkCIFt3Fd/881KqjLYWjsBJF57N3b8Eop9NDfUA==", + "version": "1.8.14", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.8.14.tgz", + "integrity": "sha512-w84maJ6CKl5aApCMzFll0hxtFNT6or9WwMslobKaqWUEf1K+zhlL43bSQhFreyYWIWR+Z0xnVFC1KtLm4ZpM/A==", "requires": { "@grpc/proto-loader": "^0.7.0", "@types/node": ">=12.12.47" } }, "@grpc/proto-loader": { - "version": "0.7.6", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.6.tgz", - "integrity": "sha512-QyAXR8Hyh7uMDmveWxDSUcJr9NAWaZ2I6IXgAYvQmfflwouTM+rArE2eEaCtLlRqO81j7pRLCt81IefUei6Zbw==", + "version": "0.7.7", + "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.7.tgz", + "integrity": "sha512-1TIeXOi8TuSCQprPItwoMymZXxWT0CPxUhkrkeCUH+D8U7QDwQ6b7SUz2MaLuWM2llT+J/TVFLmQI5KtML3BhQ==", "requires": { "@types/long": "^4.0.1", "lodash.camelcase": "^4.3.0", "long": "^4.0.0", "protobufjs": "^7.0.0", - "yargs": "^16.2.0" + "yargs": "^17.7.2" } }, "@humanwhocodes/config-array": { @@ -9927,6 +10036,14 @@ "get-package-type": "^0.1.0", "js-yaml": "^3.13.1", "resolve-from": "^5.0.0" + }, + "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + } } }, "@istanbuljs/schema": { @@ -9936,12 +10053,12 @@ "dev": true }, "@jambonz/db-helpers": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.4.tgz", - "integrity": "sha512-sR3f+RpCrSWkZ7E8qjO9/Fgsa8aBuNkm4Ubr6To0K9GDsE9rb9dsYUGpXN/0f9CGn7jc4icc53OBkt+iM2PbCw==", + "version": "0.7.9", + "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.9.tgz", + "integrity": "sha512-JajIJSPXW0OTjVprDwTH8/yU/qhHY1XkXe6f5PRh0kvRt42AmYggcGKqgivUkY1seR/GVCnQccDcIA2ZEdvDUg==", "requires": { "cidr-matcher": "^2.1.1", - "debug": "^4.3.3", + "debug": "^4.3.4", "mysql2": "^2.3.3", "node-object-hash": "^2.3.10", "uuid": "^8.3.2" @@ -9964,9 +10081,9 @@ } }, "@jambonz/realtimedb-helpers": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.0.tgz", - "integrity": "sha512-hu+CcV0jzQU6J4vW8bBEz52NqEroLHOB0wjVb/VmSL4N0+MAJ1wbPUNk8go5aMk809Vr/Od2z9nHInGnTiBHzA==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.2.tgz", + "integrity": "sha512-hTlMw0pmwNHTAQVm3O1asHllRSwi5C+kLXjqZN4C8bdw08f6CY48qdX/aNHLlx5TWI1I5l0ReO745KrUFVPA6w==", "requires": { "@jambonz/promisify-redis": "^0.0.6", "debug": "^4.3.4", @@ -10011,9 +10128,9 @@ } }, "@jambonz/verb-specifications": { - "version": "0.0.17", - "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.17.tgz", - "integrity": "sha512-tYi6rKShNhU/pXc/ZaEeTYfdv5LXmRaGWfdcN499IiGqMnAFZ/0p0HYgOoSsupn90hlquFsy4eyg+41hxherTw==", + "version": "0.0.21", + "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.21.tgz", + "integrity": "sha512-NQTQLI0k7nFmjqiKIbPaux2+ES2etFh/hnMNzPbszXS313mAnMZtv7y+EWrbniXeiXMCwHbkavm1H/N8+Lv5Qg==", "requires": { "debug": "^4.3.4", "pino": "^8.8.0" @@ -10032,13 +10149,14 @@ } }, "@jridgewell/gen-mapping": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", - "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", + "version": "0.3.3", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", + "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", "dev": true, "requires": { - "@jridgewell/set-array": "^1.0.0", - "@jridgewell/sourcemap-codec": "^1.4.10" + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" } }, "@jridgewell/resolve-uri": { @@ -10054,19 +10172,27 @@ "dev": true }, "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "version": "1.4.15", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", + "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", "dev": true }, "@jridgewell/trace-mapping": { - "version": "0.3.17", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", - "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", + "version": "0.3.18", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", + "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", "dev": true, "requires": { "@jridgewell/resolve-uri": "3.1.0", "@jridgewell/sourcemap-codec": "1.4.14" + }, + "dependencies": { + "@jridgewell/sourcemap-codec": { + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", + "dev": true + } } }, "@jsdoc/salty": { @@ -10078,62 +10204,96 @@ } }, "@opentelemetry/api": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.0.tgz", - "integrity": "sha512-IgMK9i3sFGNUqPMbjABm0G26g0QCKCUBfglhQ7rQq6WcxbKfEHRcmwsoER4hZcuYqJgkYn2OeuoJIv7Jsftp7g==" + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.1.tgz", + "integrity": "sha512-O2yRJce1GOc6PAy3QxFM4NzFiWzvScDC1/5ihYBL6BUEVdq0XMWN01sppE+H6bBXbaFYipjwFLEWLg5PaSOThA==" }, "@opentelemetry/context-async-hooks": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.9.0.tgz", - "integrity": "sha512-Ur+TgRmJgAEvg6VQuhkqzsWsqoOtr+QSZ8r8Yf6WrvlZpAl/sdRU+yUXWjA7r8JFS9VbBq7IEp7oMStFuJT2ow==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.12.0.tgz", + "integrity": "sha512-PmwAanPNWCyS9JYFzhzVzHgviLhc0UHjOwdth+hp3HgQQ9XZZNE635P8JhAUHZmbghW9/qQFafRWOS4VN9VVnQ==", "requires": {} }, "@opentelemetry/core": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.0.tgz", - "integrity": "sha512-Koy1ApRUp5DB5KpOqhDk0JjO9x6QeEkmcePl8qQDsXZGF4MuHUBShXibd+J2tRNckTsvgEHi1uEuUckDgN+c/A==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.12.0.tgz", + "integrity": "sha512-4DWYNb3dLs2mSCGl65jY3aEgbvPWSHVQV/dmDWiYeWUrMakZQFcymqZOSUNZO0uDrEJoxMu8O5tZktX6UKFwag==", "requires": { - "@opentelemetry/semantic-conventions": "1.9.0" + "@opentelemetry/semantic-conventions": "1.12.0" } }, "@opentelemetry/exporter-jaeger": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.9.0.tgz", - "integrity": "sha512-XLsDLuTqQyw08s0n03zeqmz2ike/iQHiep819SJliJnJJKMbGta+JvaWWgrh/YUEYlbBLc/mQP1cndXtd8lbaA==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.12.0.tgz", + "integrity": "sha512-MGWslvok6tlNCHexHGnfXrSyobBqUDh4YOLENt2MeQ/F974SyVG4e73TD/CDM+227/rRM587hJ8dQBzvwUac/g==", "requires": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/sdk-trace-base": "1.9.0", - "@opentelemetry/semantic-conventions": "1.9.0", + "@opentelemetry/core": "1.12.0", + "@opentelemetry/sdk-trace-base": "1.12.0", + "@opentelemetry/semantic-conventions": "1.12.0", "jaeger-client": "^3.15.0" } }, "@opentelemetry/exporter-trace-otlp-http": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.35.0.tgz", - "integrity": "sha512-wb5XqkTYq0uES65gIyjF5WZjUZooog/Dd2eP+AKOGJ9n5eewvvLjebC9qmFm0ZjHsTw7hzxnQVX/CvhD3NeVHw==", + "version": "0.35.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.35.1.tgz", + "integrity": "sha512-EJgAsrvscKsqb/GzF1zS74vM+Z/aQRhrFE7hs/1GK1M9bLixaVyMGwg2pxz1wdYdjxS1mqpHMhXU+VvMvFCw1w==", "requires": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/otlp-exporter-base": "0.35.0", - "@opentelemetry/otlp-transformer": "0.35.0", - "@opentelemetry/resources": "1.9.0", - "@opentelemetry/sdk-trace-base": "1.9.0" + "@opentelemetry/core": "1.9.1", + "@opentelemetry/otlp-exporter-base": "0.35.1", + "@opentelemetry/otlp-transformer": "0.35.1", + "@opentelemetry/resources": "1.9.1", + "@opentelemetry/sdk-trace-base": "1.9.1" + }, + "dependencies": { + "@opentelemetry/core": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", + "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", + "requires": { + "@opentelemetry/semantic-conventions": "1.9.1" + } + }, + "@opentelemetry/resources": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", + "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", + "requires": { + "@opentelemetry/core": "1.9.1", + "@opentelemetry/semantic-conventions": "1.9.1" + } + }, + "@opentelemetry/sdk-trace-base": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.1.tgz", + "integrity": "sha512-Y9gC5M1efhDLYHeeo2MWcDDMmR40z6QpqcWnPCm4Dmh+RHAMf4dnEBBntIe1dDpor686kyU6JV1D29ih1lZpsQ==", + "requires": { + "@opentelemetry/core": "1.9.1", + "@opentelemetry/resources": "1.9.1", + "@opentelemetry/semantic-conventions": "1.9.1" + } + }, + "@opentelemetry/semantic-conventions": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", + "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==" + } } }, "@opentelemetry/exporter-zipkin": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.9.0.tgz", - "integrity": "sha512-+AghaRdhSritrXmB/zoreOheNVuDOWOy/LK/W4odCRtkM/WprpHCOVj5eN8/zqg0LVeE9AbVMODk//eR0lu2fA==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.12.0.tgz", + "integrity": "sha512-HJ4ww7OjVIV4x5ZGgY+h+D1JS0GsCtnHuqZUVHl7EFFQxMGpbQcf5eISRtwqgQwlQKh2iqrEbiHdDyzbgA/7XQ==", "requires": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/resources": "1.9.0", - "@opentelemetry/sdk-trace-base": "1.9.0", - "@opentelemetry/semantic-conventions": "1.9.0" + "@opentelemetry/core": "1.12.0", + "@opentelemetry/resources": "1.12.0", + "@opentelemetry/sdk-trace-base": "1.12.0", + "@opentelemetry/semantic-conventions": "1.12.0" } }, "@opentelemetry/instrumentation": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.0.tgz", - "integrity": "sha512-pQ5shVG53acTtq72DF7kx+4690ZKh3lATMRqf2JDMRvn0bcX/JaQ+NjPmt7oyT3h9brMA1rSFMVFS6yj8kd2OQ==", + "version": "0.35.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.1.tgz", + "integrity": "sha512-EZsvXqxenbRTSNsft6LDcrT4pjAiyZOx3rkDNeqKpwZZe6GmZtsXaZZKuDkJtz9fTjOGjDHjZj9/h80Ya9iIJw==", "requires": { "require-in-the-middle": "^5.0.3", "semver": "^7.3.2", @@ -10141,86 +10301,159 @@ } }, "@opentelemetry/otlp-exporter-base": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.0.tgz", - "integrity": "sha512-ybXq1Dvg38ZwiNCtqRCRmJ93rP7jMhL8nHEYVXNKknPVplUoY9fsb8tCPi24iY1suAD98wAMy3hiHk4W8VqfSg==", + "version": "0.35.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.1.tgz", + "integrity": "sha512-Sc0buJIs8CfUeQCL/12vDDjBREgsqHdjboBa/kPQDgMf008OBJSM02Ijj6T1TH+QVHl/VHBBEVJF+FTf0EH9Vg==", "requires": { - "@opentelemetry/core": "1.9.0" + "@opentelemetry/core": "1.9.1" + }, + "dependencies": { + "@opentelemetry/core": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", + "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", + "requires": { + "@opentelemetry/semantic-conventions": "1.9.1" + } + }, + "@opentelemetry/semantic-conventions": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", + "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==" + } } }, "@opentelemetry/otlp-transformer": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.35.0.tgz", - "integrity": "sha512-XjxX6RLHYKadQNEVs7TT7YRwEhXzP8itLiu6en2P7HukSg0gTwOMhNzriBZBRC4q+HVsdnncWua1wCD1TBAfmg==", + "version": "0.35.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.35.1.tgz", + "integrity": "sha512-c0HXcJ49MKoWSaA49J8PXlVx48CeEFpL0odP6KBkVT+Bw6kAe8JlI3mIezyN05VCDJGtS2I5E6WEsE+DJL1t9A==", "requires": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/resources": "1.9.0", - "@opentelemetry/sdk-metrics": "1.9.0", - "@opentelemetry/sdk-trace-base": "1.9.0" + "@opentelemetry/core": "1.9.1", + "@opentelemetry/resources": "1.9.1", + "@opentelemetry/sdk-metrics": "1.9.1", + "@opentelemetry/sdk-trace-base": "1.9.1" + }, + "dependencies": { + "@opentelemetry/core": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", + "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", + "requires": { + "@opentelemetry/semantic-conventions": "1.9.1" + } + }, + "@opentelemetry/resources": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", + "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", + "requires": { + "@opentelemetry/core": "1.9.1", + "@opentelemetry/semantic-conventions": "1.9.1" + } + }, + "@opentelemetry/sdk-trace-base": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.1.tgz", + "integrity": "sha512-Y9gC5M1efhDLYHeeo2MWcDDMmR40z6QpqcWnPCm4Dmh+RHAMf4dnEBBntIe1dDpor686kyU6JV1D29ih1lZpsQ==", + "requires": { + "@opentelemetry/core": "1.9.1", + "@opentelemetry/resources": "1.9.1", + "@opentelemetry/semantic-conventions": "1.9.1" + } + }, + "@opentelemetry/semantic-conventions": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", + "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==" + } } }, "@opentelemetry/propagator-b3": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.9.0.tgz", - "integrity": "sha512-5M/NvJj7ZHZXEU8lkAFhrSrWaHmCCkFLstNbL8p16qpTn1AOZowuSjMOYRoJJBmL5PUobkZ3W8Gjov1UgldPBg==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.12.0.tgz", + "integrity": "sha512-WFcn98075QPc2zE1obhKydJHUehI5/HuLoelPEVwATj+487hjCwjHj9r2fgmQkWpvuNSB7CJaA0ys6qqq1N6lg==", "requires": { - "@opentelemetry/core": "1.9.0" + "@opentelemetry/core": "1.12.0" } }, "@opentelemetry/propagator-jaeger": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.9.0.tgz", - "integrity": "sha512-oo8RyuyzEbbXdIfeEG9iA5vmTH4Kld+dZMIZICd5G5SmeNcNes3sLrparpunIGms41wIP2mWiIlcOelDCmGceg==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.12.0.tgz", + "integrity": "sha512-ugtWF7GC6X5RIJ0+iMwW2iVAGNs206CAeq8XQ8OkJRg+v0lp4H0/i+gJ4hubTT8NIL5a3IxtIrAENPLIGdLucQ==", "requires": { - "@opentelemetry/core": "1.9.0" + "@opentelemetry/core": "1.12.0" } }, "@opentelemetry/resources": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.0.tgz", - "integrity": "sha512-zCyien0p3XWarU6zv72c/JZ6QlG5QW/hc61Nh5TSR1K9ndnljzAGrH55x4nfyQdubfoh9QxLNh9FXH0fWK6vcg==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.12.0.tgz", + "integrity": "sha512-gunMKXG0hJrR0LXrqh7BVbziA/+iJBL3ZbXCXO64uY+SrExkwoyJkpiq9l5ismkGF/A20mDEV7tGwh+KyPw00Q==", "requires": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/semantic-conventions": "1.9.0" + "@opentelemetry/core": "1.12.0", + "@opentelemetry/semantic-conventions": "1.12.0" } }, "@opentelemetry/sdk-metrics": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.9.0.tgz", - "integrity": "sha512-fSlJWhp86kCan1zuxdH6LTyUBYlohQwDKnxep5qHMnRTNErkYmdjgsmjZvSMdAfUFtQqfZmTXe2Lap7a5AIf9Q==", + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.9.1.tgz", + "integrity": "sha512-AyhKDcA8NuV7o1+9KvzRMxNbATJ8AcrutKilJ6hWSo9R5utnzxgffV4y+Hp4mJn84iXxkv+CBb99GOJ2A5OMzA==", "requires": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/resources": "1.9.0", + "@opentelemetry/core": "1.9.1", + "@opentelemetry/resources": "1.9.1", "lodash.merge": "4.6.2" + }, + "dependencies": { + "@opentelemetry/core": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", + "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", + "requires": { + "@opentelemetry/semantic-conventions": "1.9.1" + } + }, + "@opentelemetry/resources": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", + "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", + "requires": { + "@opentelemetry/core": "1.9.1", + "@opentelemetry/semantic-conventions": "1.9.1" + } + }, + "@opentelemetry/semantic-conventions": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", + "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==" + } } }, "@opentelemetry/sdk-trace-base": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.0.tgz", - "integrity": "sha512-glNgtJjxAIrDku8DG5Xu3nBK25rT+hkyg7yuXh8RUurp/4BcsXjMyVqpyJvb2kg+lxAX73VJBhncRKGHn9t8QQ==", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.12.0.tgz", + "integrity": "sha512-pfCOB3tNDlYVoWuz4D7Ji+Jmy9MHnATWHVpkERdCEiwUGEZ+4IvNPXUcPc37wJVmMpjGLeaWgPPrie0KIpWf1A==", "requires": { - "@opentelemetry/core": "1.9.0", - "@opentelemetry/resources": "1.9.0", - "@opentelemetry/semantic-conventions": "1.9.0" + "@opentelemetry/core": "1.12.0", + "@opentelemetry/resources": "1.12.0", + "@opentelemetry/semantic-conventions": "1.12.0" } }, "@opentelemetry/sdk-trace-node": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.9.0.tgz", - "integrity": "sha512-VTpjiqGQ4s8f0/szgZmVrtNSSmXFNoHwC4PNVwXyNeEqQcqyAygHvobpUG6m7qCiBFh6ZtrCuLdhhqWE04Objw==", - "requires": { - "@opentelemetry/context-async-hooks": "1.9.0", - "@opentelemetry/core": "1.9.0", - "@opentelemetry/propagator-b3": "1.9.0", - "@opentelemetry/propagator-jaeger": "1.9.0", - "@opentelemetry/sdk-trace-base": "1.9.0", + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.12.0.tgz", + "integrity": "sha512-PxpDemnNZLLeFNLAu95/K3QubjlaScXVjVQPlwPui65VRxIvxGVysnN7DFfsref+qoh1hI6nlrYSij43vxdm2w==", + "requires": { + "@opentelemetry/context-async-hooks": "1.12.0", + "@opentelemetry/core": "1.12.0", + "@opentelemetry/propagator-b3": "1.12.0", + "@opentelemetry/propagator-jaeger": "1.12.0", + "@opentelemetry/sdk-trace-base": "1.12.0", "semver": "^7.3.5" } }, "@opentelemetry/semantic-conventions": { - "version": "1.9.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.0.tgz", - "integrity": "sha512-po7penSfQ/Z8352lRVDpaBrd9znwA5mHGqXR7nDEiVnxkDFkBIhVf/tKeAJDIq/erFpcRowKFeCsr5eqqcSyFQ==" + "version": "1.12.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.12.0.tgz", + "integrity": "sha512-hO+bdeGOlJwqowUBoZF5LyP3ORUFOP1G0GRv8N45W/cztXbT2ZEXaAzfokRS9Xc9FWmYrDj32mF6SzH6wuoIyA==" }, "@protobufjs/aspromise": { "version": "1.1.2", @@ -10277,9 +10510,9 @@ "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==", + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", + "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", "requires": { "type-detect": "4.0.8" } @@ -10290,16 +10523,36 @@ "integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==", "requires": { "@sinonjs/commons": "^2.0.0" + }, + "dependencies": { + "@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/samsam": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-7.0.1.tgz", - "integrity": "sha512-zsAk2Jkiq89mhZovB2LLOdTCxJF4hqqTToGP0ASWlhp4I1hqOjcfmZGafXntCN7MDC6yySH0mFHrYtHceOeLmw==", + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.0.tgz", + "integrity": "sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==", "requires": { "@sinonjs/commons": "^2.0.0", "lodash.get": "^4.4.2", "type-detect": "^4.0.8" + }, + "dependencies": { + "@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/text-encoding": { @@ -10313,9 +10566,9 @@ "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" }, "@types/async": { - "version": "3.2.18", - "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.18.tgz", - "integrity": "sha512-/IsuXp3B9R//uRLi40VlIYoMp7OzhkunPe2fDu7jGfQXI9y3CDCx6FC4juRLSqrpmLst3vgsiK536AAGJFl4Ww==" + "version": "3.2.20", + "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.20.tgz", + "integrity": "sha512-6jSBQQugzyX1aWto0CbvOnmxrU9tMoXfA9gc4IrLEtvr3dTwSg5GLGoWiZnGLI6UG/kqpB3JOQKQrqnhUWGKQA==" }, "@types/extend": { "version": "3.0.1", @@ -10395,9 +10648,9 @@ "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==" }, "@types/node": { - "version": "18.15.11", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz", - "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==" + "version": "20.1.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.0.tgz", + "integrity": "sha512-O+z53uwx64xY7D6roOi4+jApDGFg0qn6WHcxe5QeqjMaTezBO/mxdfFXIVAVVyNWKx84OmPB3L8kbVYOTeN34A==" }, "@types/rimraf": { "version": "3.0.2", @@ -10550,6 +10803,16 @@ "sprintf-js": "~1.0.2" } }, + "array-buffer-byte-length": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", + "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "is-array-buffer": "^3.0.1" + } + }, "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", @@ -10572,33 +10835,6 @@ "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==" }, - "asn1.js": { - "version": "5.4.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", - "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0", - "safer-buffer": "^2.1.0" - } - }, - "asn1.js-rfc2560": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/asn1.js-rfc2560/-/asn1.js-rfc2560-5.0.1.tgz", - "integrity": "sha512-1PrVg6kuBziDN3PGFmRk3QrjpKvP9h/Hv5yMrFZvC1kpzP6dQRzf5BpKstANqHBkaOUmTpakJWhicTATOA/SbA==", - "requires": { - "asn1.js-rfc5280": "^3.0.0" - } - }, - "asn1.js-rfc5280": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/asn1.js-rfc5280/-/asn1.js-rfc5280-3.0.0.tgz", - "integrity": "sha512-Y2LZPOWeZ6qehv698ZgOGGCZXBQShObWnGthTrIFlIQjuV1gg2B8QOhWFRExq/MR1VnPpIIe7P9vX2vElxv+Pg==", - "requires": { - "asn1.js": "^5.0.0" - } - }, "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", @@ -10615,20 +10851,6 @@ "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" }, - "async-disk-cache": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/async-disk-cache/-/async-disk-cache-2.1.0.tgz", - "integrity": "sha512-iH+boep2xivfD9wMaZWkywYIURSmsL96d6MoqrC94BnGSvXE4Quf8hnJiHGFYhw/nLeIa1XyRaf4vvcvkwAefg==", - "requires": { - "debug": "^4.1.1", - "heimdalljs": "^0.2.3", - "istextorbinary": "^2.5.1", - "mkdirp": "^0.5.0", - "rimraf": "^3.0.0", - "rsvp": "^4.8.5", - "username-sync": "^1.0.2" - } - }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -10645,9 +10867,9 @@ "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" }, "aws-sdk": { - "version": "2.1313.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1313.0.tgz", - "integrity": "sha512-8GMdtV2Uch3HL2c6+P3lNZFTcg/fqq9L3EWYRLb6ljCZvWKTssjdkjSJFDyTReNgeiKV224YRPYQbKpOEz4flQ==", + "version": "2.1373.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1373.0.tgz", + "integrity": "sha512-3/P79VU2VVeiof25bn8TSepEhWCRhwuQGYoEWX/2pApQRJAY+w/3JFVKHjbAe3NYEEBNeiAE6PQ9DqWz5Pp+Lw==", "requires": { "buffer": "4.9.2", "events": "1.1.1", @@ -10658,27 +10880,13 @@ "url": "0.10.3", "util": "^0.12.4", "uuid": "8.0.0", - "xml2js": "0.4.19" + "xml2js": "0.5.0" }, "dependencies": { "uuid": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz", "integrity": "sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==" - }, - "xml2js": { - "version": "0.4.19", - "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", - "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", - "requires": { - "sax": ">=0.6.0", - "xmlbuilder": "~9.0.1" - } - }, - "xmlbuilder": { - "version": "9.0.7", - "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", - "integrity": "sha512-7YXTQc3P2l9+0rjaUbLwMKRhtmwg1M1eDf6nag7urC7pIPYLD9W/jmzQ4ptRSUbodw5S0jfoGTflLemQibSpeQ==" } } }, @@ -10729,11 +10937,6 @@ "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.1.tgz", "integrity": "sha512-pHm4LsMJ6lzgNGVfZHjMoO8sdoRhOzOH4MLmY65Jg70bpxCKu5iOHNJyfF6OyvYw7t8Fpf35RuzUyqnQsj8Vig==" }, - "binaryextensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binaryextensions/-/binaryextensions-2.3.0.tgz", - "integrity": "sha512-nAihlQsYGyc5Bwq6+EsubvANYGExeJKHDO3RjnvwU042fawQTQfM3Kxn7IHUXQOz4bzfwsGYYHGSvXyW4zOGLg==" - }, "bindings": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", @@ -10748,11 +10951,6 @@ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, - "bn.js": { - "version": "4.12.0", - "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", - "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" - }, "body-parser": { "version": "1.20.1", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", @@ -10810,15 +11008,15 @@ } }, "browserslist": { - "version": "4.21.4", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", - "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", + "version": "4.21.5", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", + "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001400", - "electron-to-chromium": "^1.4.251", - "node-releases": "^2.0.6", - "update-browserslist-db": "^1.0.9" + "caniuse-lite": "^1.0.30001449", + "electron-to-chromium": "^1.4.284", + "node-releases": "^2.0.8", + "update-browserslist-db": "^1.0.10" } }, "buffer": { @@ -10910,14 +11108,14 @@ } }, "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" }, "caniuse-lite": { - "version": "1.0.30001431", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", - "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", + "version": "1.0.30001486", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz", + "integrity": "sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==", "dev": true }, "caseless": { @@ -10967,12 +11165,12 @@ } }, "cliui": { - "version": "7.0.4", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", - "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", + "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", "requires": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.0", + "strip-ansi": "^6.0.1", "wrap-ansi": "^7.0.0" } }, @@ -11017,9 +11215,9 @@ } }, "content-type": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", - "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", + "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" }, "convert-source-map": { "version": "1.9.0", @@ -11077,26 +11275,29 @@ "dev": true }, "deep-equal": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.1.0.tgz", - "integrity": "sha512-2pxgvWu3Alv1PoWEyVg7HS8YhGlUFUV7N5oOvfL6d+7xAmLSemMwv/c8Zv/i9KFzxV5Kt5CAvQc70fLwVuf4UA==", + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.1.tgz", + "integrity": "sha512-lKdkdV6EOGoVn65XaOsPdH4rMxTZOnmFyuIkMjM1i5HHCbfjC97dawgTAy0deYNfuqUqW+Q5VrVaQYtUpSd6yQ==", "dev": true, "requires": { + "array-buffer-byte-length": "^1.0.0", "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.2", - "get-intrinsic": "^1.1.3", + "es-get-iterator": "^1.1.3", + "get-intrinsic": "^1.2.0", "is-arguments": "^1.1.1", + "is-array-buffer": "^3.0.2", "is-date-object": "^1.0.5", "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.2", "isarray": "^2.0.5", "object-is": "^1.1.5", "object-keys": "^1.1.1", "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.4.3", + "regexp.prototype.flags": "^1.5.0", "side-channel": "^1.0.4", "which-boxed-primitive": "^1.0.2", "which-collection": "^1.0.1", - "which-typed-array": "^1.1.8" + "which-typed-array": "^1.1.9" }, "dependencies": { "isarray": { @@ -11130,9 +11331,9 @@ } }, "define-properties": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", - "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", + "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", "dev": true, "requires": { "has-property-descriptors": "^1.0.0", @@ -11213,9 +11414,9 @@ } }, "drachtio-fsmrf": { - "version": "3.0.21", - "resolved": "https://registry.npmjs.org/drachtio-fsmrf/-/drachtio-fsmrf-3.0.21.tgz", - "integrity": "sha512-j5C1KFFEr+N8Qqp5ZjfqQTox+nDKoII3eJOaRMj0zHmFzr7tFzHbwPf8JSQS9n0OjrY6iM1zJJxHO+zDp8974g==", + "version": "3.0.22", + "resolved": "https://registry.npmjs.org/drachtio-fsmrf/-/drachtio-fsmrf-3.0.22.tgz", + "integrity": "sha512-YVzGa72dcND1BahKf0/HuKqpEa3Ip2/O6k0tnS7U6x+VdKJ0CM3n9e6iyV8BvBfUMDbtKAv0LRPC/6O8NS7uPg==", "requires": { "camel-case": "^4.1.2", "debug": "^2.6.9", @@ -11265,9 +11466,9 @@ } }, "drachtio-srf": { - "version": "4.5.23", - "resolved": "https://registry.npmjs.org/drachtio-srf/-/drachtio-srf-4.5.23.tgz", - "integrity": "sha512-lgL/IrizCszMObJnoLrdj/xZAU/PeBWQZEZdF0R2juozsl/aHl0FXAICOGNnKLkBaAQvPZWYcbI3vFbrwJ/5FA==", + "version": "4.5.26", + "resolved": "https://registry.npmjs.org/drachtio-srf/-/drachtio-srf-4.5.26.tgz", + "integrity": "sha512-Dqq3E0qY5yxjDAkrgtwrkmQYuaGUwKqUu98kDS9xzEdX8oFqKZeV5onUZq0veznw4ctuGQolY8BI6zs1e5ynHg==", "requires": { "debug": "^3.2.7", "delegates": "^0.1.0", @@ -11310,31 +11511,15 @@ "safe-buffer": "^5.0.1" } }, - "editions": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/editions/-/editions-2.3.1.tgz", - "integrity": "sha512-ptGvkwTvGdGfC0hfhKg0MT+TRLRKGtUiWGBInxOm5pz7ssADezahjCUaYuZ8Dr+C05FW0AECIIPt4WBxVINEhA==", - "requires": { - "errlop": "^2.0.0", - "semver": "^6.3.0" - }, - "dependencies": { - "semver": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" - } - } - }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "electron-to-chromium": { - "version": "1.4.284", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", - "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", + "version": "1.4.385", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.385.tgz", + "integrity": "sha512-L9zlje9bIw0h+CwPQumiuVlfMcV4boxRjFIWDcLfFqTZNbkwOExBzfmswytHawObQX4OUhtNv8gIiB21kOurIg==", "dev": true }, "emoji-regex": { @@ -11369,11 +11554,6 @@ "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz", "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==" }, - "errlop": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/errlop/-/errlop-2.2.0.tgz", - "integrity": "sha512-e64Qj9+4aZzjzzFpZC7p5kmm/ccCrbLhAJplhsDXQFs87XTsXwOpH4s1Io2s90Tau/8r2j9f4l/thhDevRjzxw==" - }, "error": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", @@ -11384,51 +11564,62 @@ } }, "es-abstract": { - "version": "1.20.4", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", - "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", + "version": "1.21.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz", + "integrity": "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==", "dev": true, "requires": { + "array-buffer-byte-length": "^1.0.0", + "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", + "es-set-tostringtag": "^2.0.1", "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.1.3", + "get-intrinsic": "^1.2.0", "get-symbol-description": "^1.0.0", + "globalthis": "^1.0.3", + "gopd": "^1.0.1", "has": "^1.0.3", "has-property-descriptors": "^1.0.0", + "has-proto": "^1.0.1", "has-symbols": "^1.0.3", - "internal-slot": "^1.0.3", + "internal-slot": "^1.0.5", + "is-array-buffer": "^3.0.2", "is-callable": "^1.2.7", "is-negative-zero": "^2.0.2", "is-regex": "^1.1.4", "is-shared-array-buffer": "^1.0.2", "is-string": "^1.0.7", + "is-typed-array": "^1.1.10", "is-weakref": "^1.0.2", - "object-inspect": "^1.12.2", + "object-inspect": "^1.12.3", "object-keys": "^1.1.1", "object.assign": "^4.1.4", "regexp.prototype.flags": "^1.4.3", "safe-regex-test": "^1.0.0", - "string.prototype.trimend": "^1.0.5", - "string.prototype.trimstart": "^1.0.5", - "unbox-primitive": "^1.0.2" + "string.prototype.trim": "^1.2.7", + "string.prototype.trimend": "^1.0.6", + "string.prototype.trimstart": "^1.0.6", + "typed-array-length": "^1.0.4", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.9" } }, "es-get-iterator": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz", - "integrity": "sha512-+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", + "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", "dev": true, "requires": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.0", - "has-symbols": "^1.0.1", - "is-arguments": "^1.1.0", + "get-intrinsic": "^1.1.3", + "has-symbols": "^1.0.3", + "is-arguments": "^1.1.1", "is-map": "^2.0.2", "is-set": "^2.0.2", - "is-string": "^1.0.5", - "isarray": "^2.0.5" + "is-string": "^1.0.7", + "isarray": "^2.0.5", + "stop-iteration-iterator": "^1.0.0" }, "dependencies": { "isarray": { @@ -11439,6 +11630,17 @@ } } }, + "es-set-tostringtag": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", + "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", + "dev": true, + "requires": { + "get-intrinsic": "^1.1.3", + "has": "^1.0.3", + "has-tostringtag": "^1.0.0" + } + }, "es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", @@ -11662,9 +11864,9 @@ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, "esquery": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", - "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", + "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", "dev": true, "requires": { "estraverse": "^5.1.0" @@ -12087,9 +12289,9 @@ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" }, "get-intrinsic": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", - "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", + "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", "requires": { "function-bind": "^1.1.1", "has": "^1.0.3", @@ -12135,34 +12337,43 @@ } }, "globals": { - "version": "13.19.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", - "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", + "version": "13.20.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", + "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", "dev": true, "requires": { "type-fest": "^0.20.2" } }, + "globalthis": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", + "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", + "dev": true, + "requires": { + "define-properties": "^1.1.3" + } + }, "google-auth-library": { - "version": "8.7.0", - "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-8.7.0.tgz", - "integrity": "sha512-1M0NG5VDIvJZEnstHbRdckLZESoJwguinwN8Dhae0j2ZKIQFIV63zxm6Fo6nM4xkgqUr2bbMtV5Dgo+Hy6oo0Q==", + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-8.8.0.tgz", + "integrity": "sha512-0iJn7IDqObDG5Tu9Tn2WemmJ31ksEa96IyK0J0OZCpTh6CrC6FrattwKX87h3qKVuprCJpdOGKc1Xi8V0kMh8Q==", "requires": { "arrify": "^2.0.0", "base64-js": "^1.3.0", "ecdsa-sig-formatter": "^1.0.11", "fast-text-encoding": "^1.0.0", "gaxios": "^5.0.0", - "gcp-metadata": "^5.0.0", + "gcp-metadata": "^5.2.0", "gtoken": "^6.1.0", "jws": "^4.0.0", "lru-cache": "^6.0.0" } }, "google-gax": { - "version": "3.5.8", - "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.5.8.tgz", - "integrity": "sha512-bkqxv7YdYP3FGh+dywvgyctj8XM07toJ/JCWwAkmmE15QTt3ieF/f7Hpz7xG85+dGmZtQR8Y+yMo0ENFmhypNA==", + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.6.0.tgz", + "integrity": "sha512-2fyb61vWxUonHiArRNJQmE4tx5oY1ni8VPo08fzII409vDSCWG7apDX4qNOQ2GXXT82gLBn3d3P1Dydh7pWjyw==", "requires": { "@grpc/grpc-js": "~1.8.0", "@grpc/proto-loader": "^0.7.0", @@ -12176,35 +12387,9 @@ "node-fetch": "^2.6.1", "object-hash": "^3.0.0", "proto3-json-serializer": "^1.0.0", - "protobufjs": "7.2.2", + "protobufjs": "7.2.3", "protobufjs-cli": "1.1.1", "retry-request": "^5.0.0" - }, - "dependencies": { - "long": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/long/-/long-5.2.1.tgz", - "integrity": "sha512-GKSNGeNAtw8IryjjkhZxuKB3JzlcLTwjtiQCHKvqQet81I93kXslhDQruGI/QsddO83mcDToBVy7GqGS/zYf/A==" - }, - "protobufjs": { - "version": "7.2.2", - "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.2.tgz", - "integrity": "sha512-++PrQIjrom+bFDPpfmqXfAGSQs40116JRrqqyf53dymUMvvb5d/LMRyicRoF1AUKoXVS1/IgJXlEgcpr4gTF3Q==", - "requires": { - "@protobufjs/aspromise": "^1.1.2", - "@protobufjs/base64": "^1.1.2", - "@protobufjs/codegen": "^2.0.4", - "@protobufjs/eventemitter": "^1.1.0", - "@protobufjs/fetch": "^1.1.0", - "@protobufjs/float": "^1.0.2", - "@protobufjs/inquire": "^1.1.0", - "@protobufjs/path": "^1.1.2", - "@protobufjs/pool": "^1.1.0", - "@protobufjs/utf8": "^1.1.0", - "@types/node": ">=13.7.0", - "long": "^5.0.0" - } - } } }, "google-p12-pem": { @@ -12229,9 +12414,9 @@ } }, "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", - "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" }, "gtoken": { "version": "6.1.2", @@ -12281,6 +12466,12 @@ "get-intrinsic": "^1.1.1" } }, + "has-proto": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", + "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", + "dev": true + }, "has-symbols": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", @@ -12312,21 +12503,6 @@ } } }, - "heimdalljs": { - "version": "0.2.6", - "resolved": "https://registry.npmjs.org/heimdalljs/-/heimdalljs-0.2.6.tgz", - "integrity": "sha512-o9bd30+5vLBvBtzCPwwGqpry2+n0Hi6H1+qwt6y+0kwRHGGF8TFIhJPmnuM0xO97zaKrDZMwO/V56fAnn8m/tA==", - "requires": { - "rsvp": "~3.2.1" - }, - "dependencies": { - "rsvp": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.2.1.tgz", - "integrity": "sha512-Rf4YVNYpKjZ6ASAmibcwTNciQ5Co5Ztq6iZPEykHpkoflnD/K5ryE/rHehFsTm4NJj8nKDhbi3eKBWGogmNnkg==" - } - } - }, "hexer": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/hexer/-/hexer-1.5.0.tgz", @@ -12406,6 +12582,11 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.22.tgz", "integrity": "sha512-9taxKC944BqoTVjE+UT3pQH0nHZlTvITwfsOZqyc+R3sfJuxaTtxWjfn1K2UlxyPcKHf0rnaXcVFrS9F9vf0bw==" }, + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" + }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -12435,11 +12616,6 @@ "version": "13.13.52", "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.52.tgz", "integrity": "sha512-s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ==" - }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" } } }, @@ -12521,12 +12697,12 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "internal-slot": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", - "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", + "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", "dev": true, "requires": { - "get-intrinsic": "^1.1.0", + "get-intrinsic": "^1.2.0", "has": "^1.0.3", "side-channel": "^1.0.4" } @@ -12559,6 +12735,17 @@ "has-tostringtag": "^1.0.0" } }, + "is-array-buffer": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", + "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.0", + "is-typed-array": "^1.1.10" + } + }, "is-bigint": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", @@ -12584,9 +12771,9 @@ "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" }, "is-core-module": { - "version": "2.11.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", - "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", + "version": "2.12.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", + "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", "requires": { "has": "^1.0.3" } @@ -12883,16 +13070,6 @@ "istanbul-lib-report": "^3.0.0" } }, - "istextorbinary": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.6.0.tgz", - "integrity": "sha512-+XRlFseT8B3L9KyjxxLjfXSLMuErKDsd8DBNrsaxoViABMEZlOSCstwmw0qpoFX3+U6yWU1yhLudAe6/lETGGA==", - "requires": { - "binaryextensions": "^2.1.2", - "editions": "^2.2.0", - "textextensions": "^2.5.0" - } - }, "jaeger-client": { "version": "3.19.0", "resolved": "https://registry.npmjs.org/jaeger-client/-/jaeger-client-3.19.0.tgz", @@ -13007,11 +13184,6 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" - }, - "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" } } }, @@ -13047,9 +13219,9 @@ "dev": true }, "json5": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", - "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", + "version": "2.2.3", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", + "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", "dev": true }, "jsonwebtoken": { @@ -13289,17 +13461,13 @@ } }, "microsoft-cognitiveservices-speech-sdk": { - "version": "1.26.0", - "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.26.0.tgz", - "integrity": "sha512-bk5Qzn6uQ2mswpTdZaBpZT3NCwkFOE0dpkPvZNeZg6r6j606+uf5hiQbRAadz6bZRBCHy1iPF846MRe9cbnY8g==", + "version": "1.28.0", + "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.28.0.tgz", + "integrity": "sha512-d+hCqTSeVCGtog5BgUKdIVTNifuigap9VSJbtDUP4kW1uG/yp7zRnqsjYx9nV9sRfuiYwZCyFzGG+VXGa37QDw==", "requires": { "agent-base": "^6.0.1", - "asn1.js-rfc2560": "^5.0.1", - "asn1.js-rfc5280": "^3.0.0", - "async-disk-cache": "^2.1.0", "bent": "^7.3.12", "https-proxy-agent": "^4.0.0", - "simple-lru-cache": "0.0.2", "uuid": "^9.0.0", "ws": "^7.5.6" }, @@ -13351,11 +13519,6 @@ "mime-db": "1.52.0" } }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", - "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" - }, "minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -13365,17 +13528,14 @@ } }, "minimist": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" }, "mkdirp": { - "version": "0.5.6", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", - "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", - "requires": { - "minimist": "^1.2.6" - } + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" }, "module-details-from-path": { "version": "1.0.3", @@ -13423,26 +13583,17 @@ } }, "named-placeholders": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.2.tgz", - "integrity": "sha512-wiFWqxoLL3PGVReSZpjLVxyJ1bRqe+KKJVbr4hGs1KWfTZTQyezHFBbuKj9hsizHyGV2ne7EMjHdxEGAybD5SA==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.3.tgz", + "integrity": "sha512-eLoBxg6wE/rZkJPhU/xRX1WTpkFEwDJEN96oxFrTsqBdbT5ec295Q+CoHrL9IT0DipqKhmGcaZmwOt8OON5x1w==", "requires": { - "lru-cache": "^4.1.3" + "lru-cache": "^7.14.1" }, "dependencies": { "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" - } - }, - "yallist": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", - "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + "version": "7.18.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", + "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==" } } }, @@ -13480,6 +13631,14 @@ "path-to-regexp": "^1.7.0" }, "dependencies": { + "@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" + } + }, "isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", @@ -13518,9 +13677,9 @@ "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==" }, "node-gyp-build": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==" + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz", + "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==" }, "node-int64": { "version": "0.4.0", @@ -13547,9 +13706,9 @@ } }, "node-releases": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", - "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", + "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", "dev": true }, "nyc": { @@ -13587,6 +13746,12 @@ "yargs": "^15.0.2" }, "dependencies": { + "camelcase": { + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", + "dev": true + }, "cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -13873,9 +14038,9 @@ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" }, "pino": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.8.0.tgz", - "integrity": "sha512-cF8iGYeu2ODg2gIwgAHcPrtR63ILJz3f7gkogaHC/TXVVXxZgInmNYiIpDYEwgEkxZti2Se6P2W2DxlBIZe6eQ==", + "version": "8.14.1", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.14.1.tgz", + "integrity": "sha512-8LYNv7BKWXSfS+k6oEc6occy5La+q2sPwU3q2ljTX5AZk7v+5kND2o5W794FyRaqha6DJajmkNRsWtPpFyMUdw==", "requires": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -13937,9 +14102,9 @@ } }, "pino-std-serializers": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.1.0.tgz", - "integrity": "sha512-KO0m2f1HkrPe9S0ldjx7za9BJjeHqBku5Ch8JyxETxT8dEFGz1PwgrHaOQupVYitpzbFSYm7nnljxD8dik2c+g==" + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.1.tgz", + "integrity": "sha512-wHuWB+CvSVb2XqXM0W/WOYUkVSPbiJb9S5fNB7TBhd8s892Xq910bRxwHtC4l71hgztObTjXL6ZheZXFjhDrDQ==" }, "pkg-dir": { "version": "4.2.0", @@ -13995,9 +14160,9 @@ } }, "process-warning": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.1.0.tgz", - "integrity": "sha512-9C20RLxrZU/rFnxWncDkuF6O999NdIf3E1ws4B0ZeY3sRVPzWBMsYDE2lxjxhiXxg464cQTgKUGm8/i6y2YGXg==" + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.2.0.tgz", + "integrity": "sha512-/1WZ8+VQjR6avWOgHeEPd7SDQmFQ1B5mC1eRXsCm5TarlNmx/wCsa5GEaxGm05BORRtyG/Ex/3xq3TuRvq57qg==" }, "progress": { "version": "2.0.3", @@ -14006,9 +14171,9 @@ "dev": true }, "proto3-json-serializer": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-1.1.0.tgz", - "integrity": "sha512-SjXwUWe/vANGs/mJJTbw5++7U67nwsymg7qsoPtw6GiXqw3kUy8ByojrlEdVE2efxAdKreX8WkDafxvYW95ZQg==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-1.1.1.tgz", + "integrity": "sha512-AwAuY4g9nxx0u52DnSMkqqgyLHaW/XaPLtaAo3y/ZCfeaQB/g4YDH4kb8Wc/mWzWvu0YjOznVnfn373MVZZrgw==", "requires": { "protobufjs": "^7.0.0" } @@ -14033,9 +14198,9 @@ }, "dependencies": { "long": { - "version": "5.2.1", - "resolved": "https://registry.npmjs.org/long/-/long-5.2.1.tgz", - "integrity": "sha512-GKSNGeNAtw8IryjjkhZxuKB3JzlcLTwjtiQCHKvqQet81I93kXslhDQruGI/QsddO83mcDToBVy7GqGS/zYf/A==" + "version": "5.2.3", + "resolved": "https://registry.npmjs.org/long/-/long-5.2.3.tgz", + "integrity": "sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==" } } }, @@ -14070,18 +14235,18 @@ } }, "eslint-visitor-keys": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz", - "integrity": "sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==" + "version": "3.4.1", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", + "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==" }, "espree": { - "version": "9.5.1", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.1.tgz", - "integrity": "sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg==", + "version": "9.5.2", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz", + "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==", "requires": { "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.0" + "eslint-visitor-keys": "^3.4.1" } }, "estraverse": { @@ -14140,20 +14305,15 @@ "resolve": "^1.11.1" } }, - "pseudomap": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", - "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" - }, "psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" }, "punycode": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", - "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", + "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==" }, "qs": { "version": "6.11.0", @@ -14259,14 +14419,14 @@ } }, "regexp.prototype.flags": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", - "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", + "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.1.3", - "functions-have-names": "^1.2.2" + "define-properties": "^1.2.0", + "functions-have-names": "^1.2.3" } }, "regexpp": { @@ -14325,11 +14485,11 @@ } }, "resolve": { - "version": "1.22.1", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", - "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", + "version": "1.22.2", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", + "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", "requires": { - "is-core-module": "^2.9.0", + "is-core-module": "^2.11.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" } @@ -14372,11 +14532,6 @@ "glob": "^7.1.3" } }, - "rsvp": { - "version": "4.8.5", - "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", - "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==" - }, "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -14394,9 +14549,9 @@ } }, "safe-stable-stringify": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.2.tgz", - "integrity": "sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA==" + "version": "2.4.3", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", + "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==" }, "safer-buffer": { "version": "2.1.2", @@ -14414,9 +14569,9 @@ "integrity": "sha512-RjZyX3nVwJyCuTo5tGPx+PZWkDMCg7oOLpSlhjDdZfwUoNqG1mM8nyj31IGHyaPWXhjbP7cdK3qZ2bmkJ1GzRw==" }, "semver": { - "version": "7.3.8", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", - "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", + "version": "7.5.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", + "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", "requires": { "lru-cache": "^6.0.0" } @@ -14535,21 +14690,16 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, - "simple-lru-cache": { - "version": "0.0.2", - "resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz", - "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==", + "version": "15.0.4", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.4.tgz", + "integrity": "sha512-uzmfN6zx3GQaria1kwgWGeKiXSSbShBbue6Dcj0SI8fiCNFbiUDqKl57WFlY5lyhxZVUKmXvzgG2pilRQCBwWg==", "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", + "@sinonjs/commons": "^3.0.0", + "@sinonjs/fake-timers": "^10.0.2", + "@sinonjs/samsam": "^8.0.0", + "diff": "^5.1.0", + "nise": "^5.1.4", "supports-color": "^7.2.0" } }, @@ -14589,9 +14739,9 @@ } }, "sonic-boom": { - "version": "3.2.1", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.2.1.tgz", - "integrity": "sha512-iITeTHxy3B9FGu8aVdiDXUVAcHMF9Ss0cCsAOo2HfCrmVGT3/DT5oYaeu0M/YKZDlKTvChEyPq0zI9Hf33EX6A==", + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.3.0.tgz", + "integrity": "sha512-LYxp34KlZ1a2Jb8ZQgFCK3niIHzibdwtwNUWKg0qQRzsDoJ3Gfgkf8KdBTFU3SkejDEIlWwnSnpVdOZIhFMl/g==", "requires": { "atomic-sleep": "^1.0.0" } @@ -14617,9 +14767,9 @@ } }, "split2": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-4.1.0.tgz", - "integrity": "sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ==" + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", + "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==" }, "sprintf-js": { "version": "1.0.3", @@ -14652,6 +14802,15 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" }, + "stop-iteration-iterator": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", + "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", + "dev": true, + "requires": { + "internal-slot": "^1.0.4" + } + }, "stream-shift": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", @@ -14778,9 +14937,9 @@ }, "dependencies": { "ajv": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", - "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", + "version": "8.12.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", + "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -14798,15 +14957,15 @@ } }, "tape": { - "version": "5.6.1", - "resolved": "https://registry.npmjs.org/tape/-/tape-5.6.1.tgz", - "integrity": "sha512-reNzS3rzsJtKk0f+zJx2XlzIsjJXlIcOIrIxk5shHAG/DzW3BKyMg8UfN79oluYlcWo4lIt56ahLqwgpRT4idg==", + "version": "5.6.3", + "resolved": "https://registry.npmjs.org/tape/-/tape-5.6.3.tgz", + "integrity": "sha512-cUDDGSbyoSIpdUAqbqLI/r7i/S4BHuCB9M5j7E/LrLs/x/i4zeAJ798aqo+FGo+kr9seBZwr8AkZW6rjceyAMQ==", "dev": true, "requires": { - "array.prototype.every": "^1.1.3", + "array.prototype.every": "^1.1.4", "call-bind": "^1.0.2", - "deep-equal": "^2.0.5", - "defined": "^1.0.0", + "deep-equal": "^2.2.0", + "defined": "^1.0.1", "dotignore": "^0.1.2", "for-each": "^0.3.3", "get-package-type": "^0.1.0", @@ -14815,14 +14974,14 @@ "has-dynamic-import": "^2.0.1", "inherits": "^2.0.4", "is-regex": "^1.1.4", - "minimist": "^1.2.6", - "object-inspect": "^1.12.2", + "minimist": "^1.2.7", + "object-inspect": "^1.12.3", "object-is": "^1.1.5", "object-keys": "^1.1.1", "object.assign": "^4.1.4", - "resolve": "^2.0.0-next.3", + "resolve": "^2.0.0-next.4", "resumer": "^0.0.0", - "string.prototype.trim": "^1.2.6", + "string.prototype.trim": "^1.2.7", "through": "^2.3.8" }, "dependencies": { @@ -14856,11 +15015,6 @@ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, - "textextensions": { - "version": "2.6.0", - "resolved": "https://registry.npmjs.org/textextensions/-/textextensions-2.6.0.tgz", - "integrity": "sha512-49WtAWS+tcsy93dRt6P0P3AMD2m5PvXRhuEA0kaXos5ZLlujtYmpmFsB+QvWUSxE1ZsstmYXfQ7L40+EcQgpAQ==" - }, "thread-stream": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-2.3.0.tgz", @@ -15011,6 +15165,17 @@ "mime-types": "~2.1.24" } }, + "typed-array-length": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", + "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", + "dev": true, + "requires": { + "call-bind": "^1.0.2", + "for-each": "^0.3.3", + "is-typed-array": "^1.1.9" + } + }, "typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -15047,9 +15212,9 @@ "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" }, "undici": { - "version": "5.21.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.21.0.tgz", - "integrity": "sha512-HOjK8l6a57b2ZGXOcUsI5NLfoTrfmbOl90ixJDl0AEFG4wgHNDQxtZy15/ZQp7HhjkpaGlp/eneMgtsu1dIlUA==", + "version": "5.22.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.22.0.tgz", + "integrity": "sha512-fR9RXCc+6Dxav4P9VV/sp5w3eFiSdOjJYsbtWfd4s5L5C4ogyuVpdKIVHeW0vV1MloM65/f7W45nR9ZxwVdyiA==", "requires": { "busboy": "^1.6.0" } @@ -15075,9 +15240,9 @@ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" }, "update-browserslist-db": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", - "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", + "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", "dev": true, "requires": { "escalade": "^3.1.1", @@ -15118,11 +15283,6 @@ "requires-port": "^1.0.0" } }, - "username-sync": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/username-sync/-/username-sync-1.0.3.tgz", - "integrity": "sha512-m/7/FSqjJNAzF2La448c/aEom0gJy7HY7Y509h6l0ePvEkFictAGptwWaj1msWJ38JbfEDOUoE8kqFee9EHKdA==" - }, "utf-8-validate": { "version": "5.0.10", "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz", @@ -15270,9 +15430,9 @@ } }, "which-module": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", - "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", + "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", "dev": true }, "which-typed-array": { @@ -15321,9 +15481,9 @@ } }, "ws": { - "version": "8.11.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", - "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", + "version": "8.13.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", + "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", "requires": {} }, "xml2js": { @@ -15371,23 +15531,23 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yargs": { - "version": "16.2.0", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", - "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", + "version": "17.7.2", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", + "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", "requires": { - "cliui": "^7.0.2", + "cliui": "^8.0.1", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.0", + "string-width": "^4.2.3", "y18n": "^5.0.5", - "yargs-parser": "^20.2.2" + "yargs-parser": "^21.1.1" } }, "yargs-parser": { - "version": "20.2.9", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", - "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" + "version": "21.1.1", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", + "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" } } } diff --git a/package.json b/package.json index 453def029..9a9478e3d 100644 --- a/package.json +++ b/package.json @@ -25,13 +25,13 @@ "jslint:fix": "eslint app.js tracer.js lib --fix" }, "dependencies": { - "@jambonz/db-helpers": "^0.7.4", + "@jambonz/db-helpers": "^0.7.9", "@jambonz/http-health-check": "^0.0.1", - "@jambonz/realtimedb-helpers": "^0.7.0", + "@jambonz/realtimedb-helpers": "^0.7.2", "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/verb-specifications": "^0.0.17", + "@jambonz/verb-specifications": "^0.0.21", "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", diff --git a/test/gather-tests.js b/test/gather-tests.js index c501a5592..96035030b 100644 --- a/test/gather-tests.js +++ b/test/gather-tests.js @@ -102,6 +102,53 @@ test('\'gather\' test - default (google)', async(t) => { } }); +test('\'config\' test - reset to app defaults', async(t) => { + if (!GCP_JSON_KEY) { + t.pass('skipping config tests'); + return t.end(); + } + clearModule.all(); + const {srf, disconnect} = require('../app'); + + try { + await connect(srf); + // GIVEN + let verbs = [ + { + "verb": "config", + "recognizer": { + "vendor": "google", + "language": "fr-FR" + }, + }, + { + "verb": "config", + "reset": ['recognizer'], + }, + { + "verb": "gather", + "input": ["speech"], + "timeout": 10, + "actionHook": "/actionHook" + } + ]; + let from = "gather_success"; + provisionCallHook(from, verbs); + // THEN + await sippUac('uac-gather-account-creds-success.xml', '172.38.0.10', from); + let obj = await getJSON(`http://127.0.0.1:3100/lastRequest/${from}_actionHook`); + //console.log(JSON.stringify(obj)); + t.ok(obj.body.speech.alternatives[0].transcript.toLowerCase() === 'i\'d like to speak to customer support', + 'config: resets recognizer to app defaults'); + + disconnect(); + } catch (err) { + console.log(`error received: ${err}`); + disconnect(); + t.error(err); + } +}); + test('\'gather\' test - microsoft', async(t) => { if (!MICROSOFT_REGION || !MICROSOFT_API_KEY) { t.pass('skipping microsoft tests'); diff --git a/test/say-tests.js b/test/say-tests.js index a099c7713..8db88984a 100644 --- a/test/say-tests.js +++ b/test/say-tests.js @@ -43,3 +43,43 @@ test('\'say\' tests', async(t) => { t.error(err); } }); + +test('\'config\' reset synthesizer tests', async(t) => { + clearModule.all(); + const {srf, disconnect} = require('../app'); + + try { + await connect(srf); + + // GIVEN + const verbs = [ + { + "verb": "config", + "synthesizer": { + "vendor": "microsft", + "voice": "foobar" + }, + }, + { + "verb": "config", + "reset": 'synthesizer', + }, + { + verb: 'say', + text: 'hello' + } + ]; + + const from = 'say_test_success'; + provisionCallHook(from, verbs) + + // THEN + await sippUac('uac-success-received-bye.xml', '172.38.0.10', from); + t.pass('say: succeeds when using using account credentials'); + disconnect(); + } catch (err) { + console.log(`error received: ${err}`); + disconnect(); + t.error(err); + } +}); From 7a184a8bbc52635afa22967074b06458024d45c5 Mon Sep 17 00:00:00 2001 From: Dave Horton Date: Mon, 8 May 2023 14:35:07 -0400 Subject: [PATCH 40/74] Fix/tracing cleanup (#342) * tracing usability * fix bug in prev commit * more cleanup * further tracing UI cleanup --- lib/session/call-session.js | 14 +++++++++----- lib/tasks/config.js | 14 ++++++++------ lib/tasks/task.js | 2 +- 3 files changed, 18 insertions(+), 12 deletions(-) diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 35515734a..8681011cc 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -761,6 +761,7 @@ class CallSession extends Emitter { } if (!skip) { const {span, ctx} = this.rootSpan.startChildSpan(`verb:${task.summary}`); + span.setAttributes({'verb.summary': task.summary}); task.span = span; task.ctx = ctx; await task.exec(this, resources); @@ -782,19 +783,22 @@ class CallSession extends Emitter { } if (0 === this.tasks.length && this.requestor instanceof WsRequestor && !this.callGone) { - let span; + //let span; try { - const {span} = this.rootSpan.startChildSpan('waiting for commands'); - const {reason, queue, command} = await this._awaitCommandsOrHangup(); + //const {span} = this.rootSpan.startChildSpan('waiting for commands'); + //const {reason, queue, command} = await this._awaitCommandsOrHangup(); + /* span.setAttributes({ 'completion.reason': reason, 'async.request.queue': queue, 'async.request.command': command }); span.end(); + */ + await this._awaitCommandsOrHangup(); if (this.callGone) break; } catch (err) { - span.end(); + //span.end(); this.logger.info(err, 'CallSession:exec - error waiting for new commands'); break; } @@ -1288,8 +1292,8 @@ class CallSession extends Emitter { this.wakeupResolver = null; } else { - const {span} = this.rootSpan.startChildSpan('async command'); const {queue, command} = resolution; + const {span} = this.rootSpan.startChildSpan(`recv cmd: ${command}`); span.setAttributes({ 'async.request.queue': queue, 'async.request.command': command diff --git a/lib/tasks/config.js b/lib/tasks/config.js index a7737fbf4..849278000 100644 --- a/lib/tasks/config.js +++ b/lib/tasks/config.js @@ -30,6 +30,12 @@ class TaskConfig extends Task { if (this.bargeIn[k]) this.gatherOpts[k] = this.bargeIn[k]; }); } + + if (this.data.reset) { + if (typeof this.data.reset === 'string') this.data.reset = [this.data.reset]; + } + else this.data.reset = []; + if (this.bargeIn.sticky) this.autoEnable = true; this.preconditions = (this.bargeIn.enable || this.record?.action || this.listen?.url || this.data.amd) ? TaskPreconditions.Endpoint : @@ -47,11 +53,7 @@ class TaskConfig extends Task { const phrase = []; /* reset recognizer and/or synthesizer to default values? */ - if (this.data.reset) { - if (typeof this.data.reset === 'string') this.data.reset = [this.data.reset]; - phrase.push(`reset ${this.data.reset.join(',')}`); - } - else this.data.reset = []; + if (this.data.reset.length) phrase.push(`reset ${this.data.reset.join(',')}`); if (this.bargeIn.enable) phrase.push('enable barge-in'); if (this.hasSynthesizer) { @@ -70,7 +72,7 @@ class TaskConfig extends Task { } if (this.data.amd) phrase.push('enable amd'); if (this.notifyEvents) phrase.push(`event notification ${this.notifyEvents ? 'on' : 'off'}`); - return `${this.name}{${phrase.join(',')}`; + return `${this.name}{${phrase.join(',')}}`; } async exec(cs, {ep} = {}) { diff --git a/lib/tasks/task.js b/lib/tasks/task.js index 2583d7f70..00f0053a5 100644 --- a/lib/tasks/task.js +++ b/lib/tasks/task.js @@ -155,7 +155,7 @@ class Task extends Emitter { if (this.actionHook) { const type = this.name === TaskName.Redirect ? 'session:redirect' : 'verb:hook'; const params = results ? Object.assign(this.cs.callInfo.toJSON(), results) : this.cs.callInfo.toJSON(); - const span = this.startSpan(type, {'hook.url': this.actionHook}); + const span = this.startSpan(`${type} (${this.actionHook})`); const b3 = this.getTracingPropagation('b3', span); const httpHeaders = b3 && {b3}; span.setAttributes({'http.body': JSON.stringify(params)}); From c118cacd57b1d53f7ac8307764584e754f1dd40d Mon Sep 17 00:00:00 2001 From: ajukes Date: Tue, 11 Apr 2023 17:26:10 +0100 Subject: [PATCH 41/74] custom propagator to set span context traceId to a hex version of callSid --- lib/utils/call-tracer.js | 58 +++++++++++++++++++------------------ lib/utils/sip-propagator.js | 50 ++++++++++++++++++++++++++++++++ 2 files changed, 80 insertions(+), 28 deletions(-) create mode 100644 lib/utils/sip-propagator.js diff --git a/lib/utils/call-tracer.js b/lib/utils/call-tracer.js index b6b229e83..bebb06914 100644 --- a/lib/utils/call-tracer.js +++ b/lib/utils/call-tracer.js @@ -1,39 +1,42 @@ -const {context, trace} = require('@opentelemetry/api'); + +const {trace, context, SpanKind} = require('@opentelemetry/api'); const {Dialog} = require('drachtio-srf'); +const {SipPropagator} = require('./sip-propagator'); + class RootSpan { constructor(callType, req) { - let tracer, callSid, linkedSpanId; + const tracer = req.srf.locals.otel.tracer; + const propagator = new SipPropagator(); + const ctx = propagator.extract(context.active(), req); + this._span = tracer.startSpan(callType || 'incoming-call', { + kind: SpanKind.CONSUMER, + attributes: this.getSpanAttributes(req), + root: false + }, ctx); + this._ctx = trace.setSpan(ctx, this._span); + this.tracer = tracer; + } + getSpanAttributes(req) { if (req instanceof Dialog) { - const dlg = req; - tracer = dlg.srf.locals.otel.tracer; - callSid = dlg.callSid; - linkedSpanId = dlg.linkedSpanId; - } - else { - tracer = req.srf.locals.otel.tracer; - callSid = req.locals.callSid; - } - this._span = tracer.startSpan(callType || 'incoming-call'); - if (req instanceof Dialog) { - const dlg = req; - this._span.setAttributes({ + const {sip, callSid, linkedSpanId} = req; + const {callId} = sip; + return { linkedSpanId, - callId: dlg.sip.callId - }); - } - else { - this._span.setAttributes({ + callId, + callSid + }; + } else { + const {locals} = req; + const {callSid} = locals; + return { callSid, accountSid: req.get('X-Account-Sid'), - applicationSid: req.locals.application_sid, + applicationSid: locals.application_sid, callId: req.get('Call-ID'), externalCallId: req.get('X-CID') - }); + }; } - - this._ctx = trace.setSpan(context.active(), this._span); - this.tracer = tracer; } get context() { @@ -54,7 +57,7 @@ class RootSpan { getTracingPropagation(encoding) { // TODO: support encodings beyond b3 https://github.com/openzipkin/b3-propagation - if (this._span && this.traceId !== '00000000000000000000000000000000') { + if (this._span && this.traceId !== '00000000000000000000000000000000') { return `${this.traceId}-${this.spanId}-1`; } } @@ -69,10 +72,9 @@ class RootSpan { startChildSpan(name, attributes) { const span = this.tracer.startSpan(name, attributes, this._ctx); - const ctx = trace.setSpan(context.active(), span); + const ctx = trace.setSpan(this._ctx, span); return {span, ctx}; } } module.exports = RootSpan; - diff --git a/lib/utils/sip-propagator.js b/lib/utils/sip-propagator.js new file mode 100644 index 000000000..c51a44219 --- /dev/null +++ b/lib/utils/sip-propagator.js @@ -0,0 +1,50 @@ +const {TraceFlags, trace, isSpanContextValid, isValidTraceId, isValidSpanId} = require('@opentelemetry/api'); +const {isTracingSuppressed} = require('@opentelemetry/core'); +const {Dialog} = require('drachtio-srf'); + +class SipPropagator { + constructor() { + } + + inject(context, carrier, setter) { + const spanContext = trace.getSpanContext(context); + if (!spanContext || !isSpanContextValid(spanContext) || isTracingSuppressed(context)) { + return; + } + setter.set(carrier, 'traceId', spanContext.traceId); + setter.set(carrier, 'spanId', spanContext.spanId); + } + + extract(context, carrier) { + const callSid = this.getCallSidFromCarrier(carrier); + const traceId = this.getHexValue(callSid); + const spanId = traceId.substring(0, 16); + if (!isValidTraceId(traceId) || !isValidSpanId(spanId)) { + return context; + } + return trace.setSpanContext(context, { + traceId, + spanId, + isRemote: true, + traceFlags: TraceFlags.SAMPLED + }); + } + + fields() { + return ['traceId', 'spanId']; + } + + getCallSidFromCarrier(carrier) { + if (carrier instanceof Dialog) { + return carrier.callSid; + } else { + return carrier.locals.callSid; + } + } + + getHexValue(callSid) { + return callSid.replaceAll('-', ''); + } +} + +exports.SipPropagator = SipPropagator; From 8c81edf8cb67130cb4c9c3a887e86e8b97bb7c09 Mon Sep 17 00:00:00 2001 From: ajukes Date: Wed, 12 Apr 2023 14:07:25 +0100 Subject: [PATCH 42/74] added SipPropagator as global propagator --- lib/utils/call-tracer.js | 7 +++---- tracer.js | 23 ++++++++++------------- 2 files changed, 13 insertions(+), 17 deletions(-) diff --git a/lib/utils/call-tracer.js b/lib/utils/call-tracer.js index bebb06914..3aa4d2c80 100644 --- a/lib/utils/call-tracer.js +++ b/lib/utils/call-tracer.js @@ -1,13 +1,12 @@ -const {trace, context, SpanKind} = require('@opentelemetry/api'); +const {trace, context, SpanKind, propagation} = require('@opentelemetry/api'); const {Dialog} = require('drachtio-srf'); -const {SipPropagator} = require('./sip-propagator'); + class RootSpan { constructor(callType, req) { const tracer = req.srf.locals.otel.tracer; - const propagator = new SipPropagator(); - const ctx = propagator.extract(context.active(), req); + const ctx = propagation.extract(context.active(), req); this._span = tracer.startSpan(callType || 'incoming-call', { kind: SpanKind.CONSUMER, attributes: this.getSpanAttributes(req), diff --git a/tracer.js b/tracer.js index ff7c4b26f..df45497a8 100644 --- a/tracer.js +++ b/tracer.js @@ -7,16 +7,13 @@ const { BatchSpanProcessor } = require('@opentelemetry/sdk-trace-base'); const { JaegerExporter } = require('@opentelemetry/exporter-jaeger'); const { ZipkinExporter } = require('@opentelemetry/exporter-zipkin'); const { OTLPTraceExporter } = require ('@opentelemetry/exporter-trace-otlp-http'); -const { - JAMBONES_OTEL_ENABLED, - OTEL_EXPORTER_JAEGER_AGENT_HOST, - OTEL_EXPORTER_JAEGER_ENDPOINT, - OTEL_EXPORTER_ZIPKIN_URL, - OTEL_EXPORTER_COLLECTOR_URL -} = require('./lib/config'); +const {SipPropagator} = require('./lib/utils/sip-propagator'); +//const { HttpInstrumentation } = require('@opentelemetry/instrumentation-http'); +//const { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express'); +//const { PinoInstrumentation } = require('@opentelemetry/instrumentation-pino'); module.exports = (serviceName) => { - if (JAMBONES_OTEL_ENABLED) { + if (process.env.JAMBONES_OTEL_ENABLED) { const {version} = require('./package.json'); const provider = new NodeTracerProvider({ resource: new Resource({ @@ -24,17 +21,17 @@ module.exports = (serviceName) => { [SemanticResourceAttributes.SERVICE_VERSION]: version, }), }); - + opentelemetry.propagation.setGlobalPropagator(new SipPropagator()); let exporter; - if (OTEL_EXPORTER_JAEGER_AGENT_HOST || OTEL_EXPORTER_JAEGER_ENDPOINT) { + if (process.env.OTEL_EXPORTER_JAEGER_AGENT_HOST || process.env.OTEL_EXPORTER_JAEGER_ENDPOINT) { exporter = new JaegerExporter(); } - else if (OTEL_EXPORTER_ZIPKIN_URL) { - exporter = new ZipkinExporter({url:OTEL_EXPORTER_ZIPKIN_URL}); + else if (process.env.OTEL_EXPORTER_ZIPKIN_URL) { + exporter = new ZipkinExporter({url:process.env.OTEL_EXPORTER_ZIPKIN_URL}); } else { exporter = new OTLPTraceExporter({ - url: OTEL_EXPORTER_COLLECTOR_URL + url: process.OTEL_EXPORTER_COLLECTOR_URL }); } From 569edaed20dfa1bf8a73b53cb406ef8b8df26d6f Mon Sep 17 00:00:00 2001 From: ajukes Date: Tue, 11 Apr 2023 17:26:10 +0100 Subject: [PATCH 43/74] custom propagator to set span context traceId to a hex version of callSid --- lib/utils/call-tracer.js | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/utils/call-tracer.js b/lib/utils/call-tracer.js index 3aa4d2c80..bebb06914 100644 --- a/lib/utils/call-tracer.js +++ b/lib/utils/call-tracer.js @@ -1,12 +1,13 @@ -const {trace, context, SpanKind, propagation} = require('@opentelemetry/api'); +const {trace, context, SpanKind} = require('@opentelemetry/api'); const {Dialog} = require('drachtio-srf'); - +const {SipPropagator} = require('./sip-propagator'); class RootSpan { constructor(callType, req) { const tracer = req.srf.locals.otel.tracer; - const ctx = propagation.extract(context.active(), req); + const propagator = new SipPropagator(); + const ctx = propagator.extract(context.active(), req); this._span = tracer.startSpan(callType || 'incoming-call', { kind: SpanKind.CONSUMER, attributes: this.getSpanAttributes(req), From bbdec6d63c4a65dd6731fb16bcb2b6b152b9c44d Mon Sep 17 00:00:00 2001 From: ajukes Date: Wed, 12 Apr 2023 14:10:46 +0100 Subject: [PATCH 44/74] added SipPropagator as global propagator --- tracer.js | 41 ++++++++++++++++++++++------------------- 1 file changed, 22 insertions(+), 19 deletions(-) diff --git a/tracer.js b/tracer.js index df45497a8..aec82dce7 100644 --- a/tracer.js +++ b/tracer.js @@ -1,19 +1,24 @@ const opentelemetry = require('@opentelemetry/api'); -const { registerInstrumentations } = require('@opentelemetry/instrumentation'); -const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node'); -const { Resource } = require('@opentelemetry/resources'); -const { SemanticResourceAttributes } = require('@opentelemetry/semantic-conventions'); -const { BatchSpanProcessor } = require('@opentelemetry/sdk-trace-base'); -const { JaegerExporter } = require('@opentelemetry/exporter-jaeger'); -const { ZipkinExporter } = require('@opentelemetry/exporter-zipkin'); -const { OTLPTraceExporter } = require ('@opentelemetry/exporter-trace-otlp-http'); +const {registerInstrumentations} = require('@opentelemetry/instrumentation'); +const {NodeTracerProvider} = require('@opentelemetry/sdk-trace-node'); +const {Resource} = require('@opentelemetry/resources'); +const {SemanticResourceAttributes} = require('@opentelemetry/semantic-conventions'); +const {BatchSpanProcessor} = require('@opentelemetry/sdk-trace-base'); +const {JaegerExporter} = require('@opentelemetry/exporter-jaeger'); +const {ZipkinExporter} = require('@opentelemetry/exporter-zipkin'); +const {OTLPTraceExporter} = require('@opentelemetry/exporter-trace-otlp-http'); const {SipPropagator} = require('./lib/utils/sip-propagator'); -//const { HttpInstrumentation } = require('@opentelemetry/instrumentation-http'); -//const { ExpressInstrumentation } = require('@opentelemetry/instrumentation-express'); -//const { PinoInstrumentation } = require('@opentelemetry/instrumentation-pino'); +const { + JAMBONES_OTEL_ENABLED, + OTEL_EXPORTER_JAEGER_AGENT_HOST, + OTEL_EXPORTER_JAEGER_ENDPOINT, + OTEL_EXPORTER_ZIPKIN_URL, + OTEL_EXPORTER_COLLECTOR_URL +} = require('./lib/config'); + module.exports = (serviceName) => { - if (process.env.JAMBONES_OTEL_ENABLED) { + if (JAMBONES_OTEL_ENABLED) { const {version} = require('./package.json'); const provider = new NodeTracerProvider({ resource: new Resource({ @@ -23,15 +28,13 @@ module.exports = (serviceName) => { }); opentelemetry.propagation.setGlobalPropagator(new SipPropagator()); let exporter; - if (process.env.OTEL_EXPORTER_JAEGER_AGENT_HOST || process.env.OTEL_EXPORTER_JAEGER_ENDPOINT) { + if (OTEL_EXPORTER_JAEGER_AGENT_HOST || OTEL_EXPORTER_JAEGER_ENDPOINT) { exporter = new JaegerExporter(); - } - else if (process.env.OTEL_EXPORTER_ZIPKIN_URL) { - exporter = new ZipkinExporter({url:process.env.OTEL_EXPORTER_ZIPKIN_URL}); - } - else { + } else if (OTEL_EXPORTER_ZIPKIN_URL) { + exporter = new ZipkinExporter({url: OTEL_EXPORTER_ZIPKIN_URL}); + } else { exporter = new OTLPTraceExporter({ - url: process.OTEL_EXPORTER_COLLECTOR_URL + url: OTEL_EXPORTER_COLLECTOR_URL }); } From 4c2f45c27a53e51fc874368acf4752451b44618d Mon Sep 17 00:00:00 2001 From: ajukes Date: Wed, 12 Apr 2023 16:53:08 +0100 Subject: [PATCH 45/74] check if span has already ended before ending --- lib/utils/call-tracer.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/utils/call-tracer.js b/lib/utils/call-tracer.js index bebb06914..85161581d 100644 --- a/lib/utils/call-tracer.js +++ b/lib/utils/call-tracer.js @@ -67,7 +67,9 @@ class RootSpan { } end() { - this._span.end(); + if (!this._span.ended) { + this._span.end(); + } } startChildSpan(name, attributes) { From ee7eec6309aefc43c90b4d2663a4e1eb0e7e6612 Mon Sep 17 00:00:00 2001 From: ajukes Date: Wed, 12 Apr 2023 17:01:06 +0100 Subject: [PATCH 46/74] stringify customerData on span attributes --- lib/session/call-session.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 8681011cc..df9625f50 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -1760,7 +1760,11 @@ class CallSession extends Emitter { this.callInfo.updateCallStatus(callStatus, sipStatus, sipReason); if (typeof duration === 'number') this.callInfo.duration = duration; const {span} = this.rootSpan.startChildSpan(`call-status:${this.callInfo.callStatus}`); - span.setAttributes(this.callInfo.toJSON()); + const {customerData, ...otherData} = this.callInfo; + span.setAttributes({ + ...otherData, + customerData: customerData ? JSON.stringify(customerData) : '' + }); try { const b3 = this.b3; const httpHeaders = b3 && {b3}; From f599c7c2e1a245bd6dd6393b6c4c7376ca68c7ff Mon Sep 17 00:00:00 2001 From: ajukes Date: Wed, 12 Apr 2023 23:57:32 +0100 Subject: [PATCH 47/74] first step to @jambonz/tracing lib --- app.js | 29 ++++++++--- lib/http-routes/api/create-call.js | 4 +- lib/middleware.js | 2 +- lib/utils/call-tracer.js | 82 ------------------------------ lib/utils/place-outdial.js | 2 +- lib/utils/sip-propagator.js | 50 ------------------ tracer.js | 65 ----------------------- 7 files changed, 28 insertions(+), 206 deletions(-) delete mode 100644 lib/utils/call-tracer.js delete mode 100644 lib/utils/sip-propagator.js delete mode 100644 tracer.js diff --git a/app.js b/app.js index 22553cd91..a95ae754d 100644 --- a/app.js +++ b/app.js @@ -1,8 +1,17 @@ +const {JambonzTracer} = require('@jambonz/tracing'); +const {version} = require('./package.json'); +const api = require('@opentelemetry/api'); + const { DRACHTIO_PORT, DRACHTIO_HOST, DRACHTIO_SECRET, + JAMBONES_OTEL_ENABLED, JAMBONES_OTEL_SERVICE_NAME, + OTEL_EXPORTER_COLLECTOR_URL, + OTEL_EXPORTER_JAEGER_AGENT_HOST, + OTEL_EXPORTER_JAEGER_ENDPOINT, + OTEL_EXPORTER_ZIPKIN_URL, JAMBONES_LOGLEVEL, JAMBONES_CLUSTER_ID, JAMBONZ_CLEANUP_INTERVAL_MINS, @@ -16,8 +25,17 @@ checkEnvs(); const Srf = require('drachtio-srf'); const srf = new Srf(); -const tracer = require('./tracer')(JAMBONES_OTEL_SERVICE_NAME); -const api = require('@opentelemetry/api'); + +const tracer = new JambonzTracer({ + version, + serviceName: JAMBONES_OTEL_SERVICE_NAME, + enabled: JAMBONES_OTEL_ENABLED, + jaegerHost: OTEL_EXPORTER_JAEGER_AGENT_HOST, + jaegerEndpoint: OTEL_EXPORTER_JAEGER_ENDPOINT, + zipkinUrl: OTEL_EXPORTER_ZIPKIN_URL, + collectorUrl: OTEL_EXPORTER_COLLECTOR_URL +}).tracer(); + srf.locals = {...srf.locals, otel: {tracer, api}}; const opts = {level: JAMBONES_LOGLEVEL}; @@ -41,14 +59,13 @@ const InboundCallSession = require('./lib/session/inbound-call-session'); const SipRecCallSession = require('./lib/session/siprec-call-session'); if (DRACHTIO_HOST) { - srf.connect({host: DRACHTIO_HOST, port: DRACHTIO_PORT, secret: DRACHTIO_SECRET }); + srf.connect({host: DRACHTIO_HOST, port: DRACHTIO_PORT, secret: DRACHTIO_SECRET}); srf.on('connect', (err, hp) => { const arr = /^(.*)\/(.*)$/.exec(hp.split(',').pop()); srf.locals.localSipAddress = `${arr[2]}`; logger.info(`connected to drachtio listening on ${hp}, local sip address is ${srf.locals.localSipAddress}`); }); -} -else { +} else { logger.info(`listening for drachtio requests on port ${DRACHTIO_PORT}`); srf.listen({port: DRACHTIO_PORT, secret: DRACHTIO_SECRET}); } @@ -103,7 +120,7 @@ setInterval(() => { }, 20000); const disconnect = () => { - return new Promise ((resolve) => { + return new Promise((resolve) => { httpServer?.on('close', resolve); httpServer?.close(); srf.disconnect(); diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index a1432ecea..5efe507d9 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -8,8 +8,8 @@ const SipError = require('drachtio-srf').SipError; const sysError = require('./error'); const HttpRequestor = require('../../utils/http-requestor'); const WsRequestor = require('../../utils/ws-requestor'); -const RootSpan = require('../../utils/call-tracer'); const dbUtils = require('../../utils/db-utils'); +const {RootSpan} = require('@jambonz/tracing'); router.post('/', async(req, res) => { const {logger} = req.app.locals; @@ -181,7 +181,9 @@ router.post('/', async(req, res) => { /* ok our outbound INVITE is in flight */ const tasks = [restDial]; + const rootSpan = new RootSpan('rest-call', inviteReq); + sipLogger = logger.child({ callSid, callId: inviteReq.get('Call-ID'), diff --git a/lib/middleware.js b/lib/middleware.js index 2c3cb4eaa..24abbb582 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -8,7 +8,7 @@ const makeTask = require('./tasks/make_task'); const parseUri = require('drachtio-srf').parseUri; const { normalizeJambones } = require('@jambonz/verb-specifications'); const dbUtils = require('./utils/db-utils'); -const RootSpan = require('./utils/call-tracer'); +const {RootSpan} = require('@jambonz/tracing'); const listTaskNames = require('./utils/summarize-tasks'); const { JAMBONES_MYSQL_REFRESH_TTL, diff --git a/lib/utils/call-tracer.js b/lib/utils/call-tracer.js deleted file mode 100644 index 85161581d..000000000 --- a/lib/utils/call-tracer.js +++ /dev/null @@ -1,82 +0,0 @@ - -const {trace, context, SpanKind} = require('@opentelemetry/api'); -const {Dialog} = require('drachtio-srf'); -const {SipPropagator} = require('./sip-propagator'); - -class RootSpan { - constructor(callType, req) { - const tracer = req.srf.locals.otel.tracer; - const propagator = new SipPropagator(); - const ctx = propagator.extract(context.active(), req); - this._span = tracer.startSpan(callType || 'incoming-call', { - kind: SpanKind.CONSUMER, - attributes: this.getSpanAttributes(req), - root: false - }, ctx); - this._ctx = trace.setSpan(ctx, this._span); - this.tracer = tracer; - } - - getSpanAttributes(req) { - if (req instanceof Dialog) { - const {sip, callSid, linkedSpanId} = req; - const {callId} = sip; - return { - linkedSpanId, - callId, - callSid - }; - } else { - const {locals} = req; - const {callSid} = locals; - return { - callSid, - accountSid: req.get('X-Account-Sid'), - applicationSid: locals.application_sid, - callId: req.get('Call-ID'), - externalCallId: req.get('X-CID') - }; - } - } - - get context() { - return this._ctx; - } - - get traceId() { - return this._span.spanContext().traceId; - } - - get spanId() { - return this._span.spanContext().spanId; - } - - get traceFlags() { - return this._span.spanContext().traceFlags; - } - - getTracingPropagation(encoding) { - // TODO: support encodings beyond b3 https://github.com/openzipkin/b3-propagation - if (this._span && this.traceId !== '00000000000000000000000000000000') { - return `${this.traceId}-${this.spanId}-1`; - } - } - - setAttributes(attrs) { - this._span.setAttributes(attrs); - } - - end() { - if (!this._span.ended) { - this._span.end(); - } - } - - startChildSpan(name, attributes) { - const span = this.tracer.startSpan(name, attributes, this._ctx); - const ctx = trace.setSpan(this._ctx, span); - return {span, ctx}; - } -} - -module.exports = RootSpan; diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 1e695896e..55370ec0e 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -11,7 +11,7 @@ const AdultingCallSession = require('../session/adulting-call-session'); const deepcopy = require('deepcopy'); const moment = require('moment'); const stripCodecs = require('./strip-ancillary-codecs'); -const RootSpan = require('./call-tracer'); +const {RootSpan} = require('@jambonz/tracing'); const uuidv4 = require('uuid-random'); class SingleDialer extends Emitter { diff --git a/lib/utils/sip-propagator.js b/lib/utils/sip-propagator.js deleted file mode 100644 index c51a44219..000000000 --- a/lib/utils/sip-propagator.js +++ /dev/null @@ -1,50 +0,0 @@ -const {TraceFlags, trace, isSpanContextValid, isValidTraceId, isValidSpanId} = require('@opentelemetry/api'); -const {isTracingSuppressed} = require('@opentelemetry/core'); -const {Dialog} = require('drachtio-srf'); - -class SipPropagator { - constructor() { - } - - inject(context, carrier, setter) { - const spanContext = trace.getSpanContext(context); - if (!spanContext || !isSpanContextValid(spanContext) || isTracingSuppressed(context)) { - return; - } - setter.set(carrier, 'traceId', spanContext.traceId); - setter.set(carrier, 'spanId', spanContext.spanId); - } - - extract(context, carrier) { - const callSid = this.getCallSidFromCarrier(carrier); - const traceId = this.getHexValue(callSid); - const spanId = traceId.substring(0, 16); - if (!isValidTraceId(traceId) || !isValidSpanId(spanId)) { - return context; - } - return trace.setSpanContext(context, { - traceId, - spanId, - isRemote: true, - traceFlags: TraceFlags.SAMPLED - }); - } - - fields() { - return ['traceId', 'spanId']; - } - - getCallSidFromCarrier(carrier) { - if (carrier instanceof Dialog) { - return carrier.callSid; - } else { - return carrier.locals.callSid; - } - } - - getHexValue(callSid) { - return callSid.replaceAll('-', ''); - } -} - -exports.SipPropagator = SipPropagator; diff --git a/tracer.js b/tracer.js deleted file mode 100644 index aec82dce7..000000000 --- a/tracer.js +++ /dev/null @@ -1,65 +0,0 @@ -const opentelemetry = require('@opentelemetry/api'); -const {registerInstrumentations} = require('@opentelemetry/instrumentation'); -const {NodeTracerProvider} = require('@opentelemetry/sdk-trace-node'); -const {Resource} = require('@opentelemetry/resources'); -const {SemanticResourceAttributes} = require('@opentelemetry/semantic-conventions'); -const {BatchSpanProcessor} = require('@opentelemetry/sdk-trace-base'); -const {JaegerExporter} = require('@opentelemetry/exporter-jaeger'); -const {ZipkinExporter} = require('@opentelemetry/exporter-zipkin'); -const {OTLPTraceExporter} = require('@opentelemetry/exporter-trace-otlp-http'); -const {SipPropagator} = require('./lib/utils/sip-propagator'); -const { - JAMBONES_OTEL_ENABLED, - OTEL_EXPORTER_JAEGER_AGENT_HOST, - OTEL_EXPORTER_JAEGER_ENDPOINT, - OTEL_EXPORTER_ZIPKIN_URL, - OTEL_EXPORTER_COLLECTOR_URL -} = require('./lib/config'); - - -module.exports = (serviceName) => { - if (JAMBONES_OTEL_ENABLED) { - const {version} = require('./package.json'); - const provider = new NodeTracerProvider({ - resource: new Resource({ - [SemanticResourceAttributes.SERVICE_NAME]: serviceName, - [SemanticResourceAttributes.SERVICE_VERSION]: version, - }), - }); - opentelemetry.propagation.setGlobalPropagator(new SipPropagator()); - let exporter; - if (OTEL_EXPORTER_JAEGER_AGENT_HOST || OTEL_EXPORTER_JAEGER_ENDPOINT) { - exporter = new JaegerExporter(); - } else if (OTEL_EXPORTER_ZIPKIN_URL) { - exporter = new ZipkinExporter({url: OTEL_EXPORTER_ZIPKIN_URL}); - } else { - exporter = new OTLPTraceExporter({ - url: OTEL_EXPORTER_COLLECTOR_URL - }); - } - - provider.addSpanProcessor(new BatchSpanProcessor(exporter, { - // The maximum queue size. After the size is reached spans are dropped. - maxQueueSize: 100, - // The maximum batch size of every export. It must be smaller or equal to maxQueueSize. - maxExportBatchSize: 10, - // The interval between two consecutive exports - scheduledDelayMillis: 500, - // How long the export can run before it is cancelled - exportTimeoutMillis: 30000, - })); - - // Initialize the OpenTelemetry APIs to use the NodeTracerProvider bindings - provider.register(); - registerInstrumentations({ - instrumentations: [ - //new HttpInstrumentation(), - //new ExpressInstrumentation(), - //new PinoInstrumentation() - ], - }); - } - - return opentelemetry.trace.getTracer(serviceName); -}; - From bd54cb534f6c3f8e37549050c1500dd63694d6d9 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 00:19:12 +0100 Subject: [PATCH 48/74] jambonzTracer getter --- app.js | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/app.js b/app.js index a95ae754d..59bc0db35 100644 --- a/app.js +++ b/app.js @@ -1,6 +1,5 @@ -const {JambonzTracer} = require('@jambonz/tracing'); +const {JambonzTracer, api} = require('@jambonz/tracing'); const {version} = require('./package.json'); -const api = require('@opentelemetry/api'); const { DRACHTIO_PORT, @@ -26,7 +25,7 @@ checkEnvs(); const Srf = require('drachtio-srf'); const srf = new Srf(); -const tracer = new JambonzTracer({ +const {tracer} = new JambonzTracer({ version, serviceName: JAMBONES_OTEL_SERVICE_NAME, enabled: JAMBONES_OTEL_ENABLED, @@ -34,7 +33,7 @@ const tracer = new JambonzTracer({ jaegerEndpoint: OTEL_EXPORTER_JAEGER_ENDPOINT, zipkinUrl: OTEL_EXPORTER_ZIPKIN_URL, collectorUrl: OTEL_EXPORTER_COLLECTOR_URL -}).tracer(); +}); srf.locals = {...srf.locals, otel: {tracer, api}}; From bb96a9b24316263e2da40f7ac36ce540f7ca0614 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 11:00:49 +0100 Subject: [PATCH 49/74] startChildSpan now returns a ChildSpan helper class --- lib/middleware.js | 29 +++++---- lib/session/call-session.js | 84 +++++++------------------ lib/tasks/conference.js | 4 +- lib/tasks/dial.js | 12 ++-- lib/tasks/dialogflow/index.js | 2 +- lib/tasks/enqueue.js | 2 +- lib/tasks/gather.js | 111 +++++++++++++++++----------------- lib/tasks/lex.js | 2 +- lib/tasks/listen.js | 8 +-- lib/tasks/rasa.js | 16 ++--- lib/tasks/rest_dial.js | 2 +- lib/tasks/say.js | 8 +-- lib/tasks/sip_refer.js | 4 +- lib/tasks/task.js | 71 +++++++--------------- lib/tasks/transcribe.js | 2 +- 15 files changed, 141 insertions(+), 216 deletions(-) diff --git a/lib/middleware.js b/lib/middleware.js index 24abbb582..afdf043b2 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -64,7 +64,7 @@ module.exports = function(srf, logger) { function createRootSpan(req, res, next) { const {callId, callSid, account_sid} = req.locals; - const rootSpan = new RootSpan('incoming-call', req); + const rootSpan = new RootSpan('incoming-call', req, logger); const traceId = rootSpan.traceId; req.locals = { @@ -133,11 +133,11 @@ module.exports = function(srf, logger) { async function getAccountDetails(req, res, next) { const {rootSpan, account_sid} = req.locals; - const {span} = rootSpan.startChildSpan('lookupAccountDetails'); + const childSpan = rootSpan.startChildSpan('lookupAccountDetails'); try { req.locals.accountInfo = await lookupAccountDetails(account_sid); req.locals.service_provider_sid = req.locals.accountInfo?.account?.service_provider_sid; - span.end(); + childSpan.end(); if (!req.locals.accountInfo.account.is_active) { logger.info(`Account is inactive or suspended ${account_sid}`); // TODO: alert @@ -146,7 +146,7 @@ module.exports = function(srf, logger) { logger.debug({accountInfo: req.locals?.accountInfo?.account}, `retrieved account info for ${account_sid}`); next(); } catch (err) { - span.end(); + childSpan.endWithError('Error retrieving account details'); logger.info({err}, `Error retrieving account details for account ${account_sid}`); res.send(503, {headers: {'X-Reason': `No Account exists for sid ${account_sid}`}}); } @@ -181,7 +181,7 @@ module.exports = function(srf, logger) { */ async function retrieveApplication(req, res, next) { const {logger, accountInfo, account_sid, rootSpan} = req.locals; - const {span} = rootSpan.startChildSpan('lookupApplication'); + const childSpan = rootSpan.startChildSpan('lookupApplication'); try { let app; if (req.locals.application_sid) app = await lookupAppBySid(req.locals.application_sid); @@ -225,11 +225,11 @@ module.exports = function(srf, logger) { } } - span.setAttributes({ + childSpan.setAttributes({ 'app.hook': app?.call_hook?.url, 'application_sid': req.locals.application_sid }); - span.end(); + childSpan.end(); if (!app || !app.call_hook || !app.call_hook.url) { logger.info(`rejecting call to ${req.locals.calledNumber}: no application or webhook url`); return res.send(480, { @@ -275,7 +275,7 @@ module.exports = function(srf, logger) { }); next(); } catch (err) { - span.end(); + childSpan.end('Error looking up application'); logger.error(err, `${req.get('Call-ID')} Error looking up application for ${req.calledNumber}`); res.send(500); } @@ -287,7 +287,7 @@ module.exports = function(srf, logger) { async function invokeWebCallback(req, res, next) { const logger = req.locals.logger; const {rootSpan, siprec, application:app} = req.locals; - let span; + let childSpan; try { if (app.tasks && !JAMBONES_MYSQL_REFRESH_TTL) { app.tasks = normalizeJambones(logger, app.tasks).map((tdata) => makeTask(logger, tdata)); @@ -316,18 +316,17 @@ module.exports = function(srf, logger) { } }); logger.debug({ params }, 'sending initial webhook'); - const obj = rootSpan.startChildSpan('performAppWebhook'); - span = obj.span; + childSpan = rootSpan.startChildSpan('performAppWebhook'); const b3 = rootSpan.getTracingPropagation(); const httpHeaders = b3 && { b3 }; json = await app.requestor.request('session:new', app.call_hook, params, httpHeaders); } app.tasks = normalizeJambones(logger, json).map((tdata) => makeTask(logger, tdata)); - span?.setAttributes({ + childSpan?.setAttributes({ 'http.statusCode': 200, 'app.tasks': listTaskNames(app.tasks) }); - span?.end(); + childSpan?.end(); if (0 === app.tasks.length) throw new Error('no application provided'); if (siprec) { @@ -343,8 +342,8 @@ module.exports = function(srf, logger) { } next(); } catch (err) { - span?.setAttributes({webhookStatus: err.statusCode}); - span?.end(); + childSpan?.setAttributes({webhookStatus: err.statusCode}); + childSpan?.endWithError('http error'); writeAlerts({ account_sid: req.locals.account_sid, target_sid: req.locals.callSid, diff --git a/lib/session/call-session.js b/lib/session/call-session.js index df9625f50..5924262e6 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -64,16 +64,6 @@ class CallSession extends Emitter { this.notifiedComplete = false; this.rootSpan = rootSpan; - this._origRecognizerSettings = { - vendor: this.application?.speech_recognizer_vendor, - language: this.application?.speech_recognizer_language, - }; - this._origSynthesizerSettings = { - vendor: this.application?.speech_synthesis_vendor, - language: this.application?.speech_synthesis_language, - voice: this.application?.speech_synthesis_voice, - }; - assert(rootSpan); this._recordState = RecordState.RecordingOff; @@ -334,22 +324,6 @@ class CallSession extends Emitter { return this._globalSttPunctuation !== undefined; } - resetRecognizer() { - this._globalSttHints = undefined; - this._globalSttPunctuation = undefined; - this._globalAltLanguages = undefined; - this.isContinuousAsr = false; - this.asrDtmfTerminationDigits = undefined; - this.speechRecognizerLanguage = this._origRecognizerSettings.language; - this.speechRecognizerVendor = this._origRecognizerSettings.vendor; - } - - resetSynthesizer() { - this.speechSynthesisLanguage = this._origSynthesizerSettings.language; - this.speechSynthesisVendor = this._origSynthesizerSettings.vendor; - this.speechSynthesisVoice = this._origSynthesizerSettings.voice; - } - async notifyRecordOptions(opts) { const {action} = opts; this.logger.debug({opts}, 'CallSession:notifyRecordOptions'); @@ -505,9 +479,8 @@ class CallSession extends Emitter { const t = normalizeJambones(this.logger, [opts]); this.backgroundListenTask = makeTask(this.logger, t[0]); const resources = await this._evaluatePreconditions(this.backgroundListenTask); - const {span, ctx} = this.rootSpan.startChildSpan(`background-gather:${this.backgroundListenTask.summary}`); - this.backgroundListenTask.span = span; - this.backgroundListenTask.ctx = ctx; + const childSpan = this.rootSpan.startChildSpan(`background-gather:${this.backgroundListenTask.summary}`); + this.backgroundListenTask.span = childSpan; this.backgroundListenTask.exec(this, resources) .then(() => { this.logger.info('CallSession:startBackgroundListen: listen completed'); @@ -555,7 +528,7 @@ class CallSession extends Emitter { this.logger.info({currInput, newInput}, 'CallSession:enableBotMode - restarting background gather to apply new input type'); this.backgroundGatherTask.sticky = false; - await this.disableBotMode(); + this.disableBotMode(); } } this.backgroundGatherTask = task; @@ -567,9 +540,8 @@ class CallSession extends Emitter { .once('timeout', this._clearTasks.bind(this, this.backgroundGatherTask)); this.logger.info({gather}, 'CallSession:enableBotMode - starting background gather'); const resources = await this._evaluatePreconditions(this.backgroundGatherTask); - const {span, ctx} = this.rootSpan.startChildSpan(`background-gather:${this.backgroundGatherTask.summary}`); - this.backgroundGatherTask.span = span; - this.backgroundGatherTask.ctx = ctx; + const childSpan = this.rootSpan.startChildSpan(`background-gather:${this.backgroundGatherTask.summary}`); + this.backgroundGatherTask.span = childSpan; this.backgroundGatherTask.sticky = autoEnable; this.backgroundGatherTask.exec(this, resources) .then(() => { @@ -594,12 +566,13 @@ class CallSession extends Emitter { this.logger.info({err, gather}, 'CallSession:enableBotMode - Error creating gather task'); } } - async disableBotMode() { + + disableBotMode() { this._bargeInEnabled = false; if (this.backgroundGatherTask) { try { this.backgroundGatherTask.removeAllListeners(); - await this.backgroundGatherTask.kill(); + this.backgroundGatherTask.kill().catch((err) => {}); } catch (err) {} this.backgroundGatherTask = null; } @@ -706,12 +679,6 @@ class CallSession extends Emitter { stt_region: credential.stt_region }; } - else if ('nvidia' === vendor) { - return { - speech_credential_sid: credential.speech_credential_sid, - riva_server_uri: credential.riva_server_uri - }; - } else if (vendor.startsWith('custom:')) { return { speech_credential_sid: credential.speech_credential_sid, @@ -756,12 +723,11 @@ class CallSession extends Emitter { } else { this.logger.info('CallSession:exec disabling bot mode to start gather with new options'); - await this.disableBotMode(); + this.disableBotMode(); } } if (!skip) { const {span, ctx} = this.rootSpan.startChildSpan(`verb:${task.summary}`); - span.setAttributes({'verb.summary': task.summary}); task.span = span; task.ctx = ctx; await task.exec(this, resources); @@ -783,22 +749,18 @@ class CallSession extends Emitter { } if (0 === this.tasks.length && this.requestor instanceof WsRequestor && !this.callGone) { - //let span; + const childSpan = this.rootSpan.startChildSpan('waiting for commands'); try { - //const {span} = this.rootSpan.startChildSpan('waiting for commands'); - //const {reason, queue, command} = await this._awaitCommandsOrHangup(); - /* - span.setAttributes({ + const {reason, queue, command} = await this._awaitCommandsOrHangup(); + childSpan.setAttributes({ 'completion.reason': reason, 'async.request.queue': queue, 'async.request.command': command }); - span.end(); - */ - await this._awaitCommandsOrHangup(); + childSpan.end(); if (this.callGone) break; } catch (err) { - //span.end(); + childSpan.endWithError('error waiting for new commands'); this.logger.info(err, 'CallSession:exec - error waiting for new commands'); break; } @@ -1228,7 +1190,7 @@ class CallSession extends Emitter { } _onCommand({msgid, command, call_sid, queueCommand, data}) { - this.logger.info({msgid, command, queueCommand, data}, 'CallSession:_onCommand - received command'); + this.logger.info({msgid, command, queueCommand}, 'CallSession:_onCommand - received command'); const resolution = {reason: 'received command', queue: queueCommand, command}; switch (command) { case 'redirect': @@ -1290,15 +1252,12 @@ class CallSession extends Emitter { //this.logger.debug({resolution}, 'CallSession:_onCommand - got commands, waking up..'); this.wakeupResolver(resolution); this.wakeupResolver = null; - } - else { + } else { const {queue, command} = resolution; - const {span} = this.rootSpan.startChildSpan(`recv cmd: ${command}`); - span.setAttributes({ + this.rootSpan.startChildSpan('async command', { 'async.request.queue': queue, 'async.request.command': command - }); - span.end(); + }).end(); } } @@ -1759,9 +1718,8 @@ class CallSession extends Emitter { this.callInfo.updateCallStatus(callStatus, sipStatus, sipReason); if (typeof duration === 'number') this.callInfo.duration = duration; - const {span} = this.rootSpan.startChildSpan(`call-status:${this.callInfo.callStatus}`); const {customerData, ...otherData} = this.callInfo; - span.setAttributes({ + const childSpan = this.rootSpan.startChildSpan(`call-status:${this.callInfo.callStatus}`, { ...otherData, customerData: customerData ? JSON.stringify(customerData) : '' }); @@ -1769,9 +1727,9 @@ class CallSession extends Emitter { const b3 = this.b3; const httpHeaders = b3 && {b3}; await this.notifier.request('call:status', this.call_status_hook, this.callInfo.toJSON(), httpHeaders); - span.end(); + childSpan.end(); } catch (err) { - span.end(); + childSpan.end(); this.logger.info(err, `CallSession:_notifyCallStatusChange error sending ${callStatus} ${sipStatus}`); } diff --git a/lib/tasks/conference.js b/lib/tasks/conference.js index c31f73ea6..8b926b3f7 100644 --- a/lib/tasks/conference.js +++ b/lib/tasks/conference.js @@ -541,7 +541,7 @@ class Conference extends Task { async _playHook(cs, dlg, hook, allowed = [TaskName.Play, TaskName.Say, TaskName.Pause]) { assert(!this._playSession); - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; const json = await cs.application.requestor.request('verb:hook', hook, cs.callInfo, httpHeaders); const tasks = normalizeJambones(this.logger, json).map((tdata) => makeTask(this.logger, tdata)); @@ -604,7 +604,7 @@ class Conference extends Task { _notifyConferenceEvent(cs, eventName, params = {}) { if (this.statusEvents.includes(eventName)) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; params.event = eventName; params.duration = (Date.now() - this.conferenceStartTime.getTime()) / 1000; diff --git a/lib/tasks/dial.js b/lib/tasks/dial.js index 4fcbb0530..94cfb0e6c 100644 --- a/lib/tasks/dial.js +++ b/lib/tasks/dial.js @@ -250,11 +250,9 @@ class TaskDial extends Task { this.logger.debug('Dial:whisper executing tasks'); while (tasks.length && !cs.callGone) { const task = tasks.shift(); - const {span, ctx} = this.startChildSpan(`whisper:${task.summary}`); - task.span = span; - task.ctx = ctx; + task.span = this.span.startChildSpan(`whisper:${task.summary}`); await task.exec(cs, callSid === this.callSid ? {ep: this.ep} : {ep: this.epOther}); - span.end(); + task.span.end(); } this.logger.debug('Dial:whisper tasks complete'); if (!cs.callGone && this.epOther) { @@ -295,7 +293,7 @@ class TaskDial extends Task { const referring_call_sid = isChild ? callInfo.callSid : cs.callSid; const referred_call_sid = isChild ? callInfo.parentCallSid : this.sd.callSid; - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; const to = parseUri(req.getParsedHeader('Refer-To').uri); @@ -372,7 +370,7 @@ class TaskDial extends Task { const key = arr[1]; const match = dtmfDetector.keyPress(key); if (match) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; this.logger.info({callSid}, `Dial:_onInfo triggered dtmf match: ${match}`); requestor.request('verb:hook', this.dtmfHook, {dtmf: match, ...callInfo.toJSON()}, httpHeaders) @@ -491,7 +489,7 @@ class TaskDial extends Task { callInfo: cs.callInfo, accountInfo: cs.accountInfo, rootSpan: cs.rootSpan, - startSpan: this.startSpan.bind(this) + startSpan: this.span.startChildSpan }); this.dials.set(sd.callSid, sd); diff --git a/lib/tasks/dialogflow/index.js b/lib/tasks/dialogflow/index.js index 628e01b7d..73758e2d7 100644 --- a/lib/tasks/dialogflow/index.js +++ b/lib/tasks/dialogflow/index.js @@ -453,7 +453,7 @@ class Dialogflow extends Task { } async _performHook(cs, hook, results = {}) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; const json = await this.cs.requestor.request('verb:hook', hook, {...results, ...cs.callInfo.toJSON()}, httpHeaders); diff --git a/lib/tasks/enqueue.js b/lib/tasks/enqueue.js index 5132a7f19..8c31f93d5 100644 --- a/lib/tasks/enqueue.js +++ b/lib/tasks/enqueue.js @@ -302,7 +302,7 @@ class TaskEnqueue extends Task { async _playHook(cs, dlg, hook, allowed = [TaskName.Play, TaskName.Say, TaskName.Pause, TaskName.Leave]) { const {lengthOfList, getListPosition} = cs.srf.locals.dbHelpers; - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; assert(!this._playSession); diff --git a/lib/tasks/gather.js b/lib/tasks/gather.js index 0d2e6492d..bf95db82d 100644 --- a/lib/tasks/gather.js +++ b/lib/tasks/gather.js @@ -54,7 +54,7 @@ class TaskGather extends Task { ].forEach((k) => this[k] = this.data[k]); /* when collecting dtmf, bargein on dtmf is true unless explicitly set to false */ - if (this.dtmfBargein !== false && this.input.includes('digits')) this.dtmfBargein = true; + if (this.dtmfBargein !== false && this.input.includes('digits')) this.dtmfBargein = true; /* timeout of zero means no timeout */ this.timeout = this.timeout === 0 ? 0 : (this.timeout || 15) * 1000; @@ -81,8 +81,7 @@ class TaskGather extends Task { } this.data.recognizer.hints = this.data.recognizer.hints || []; this.data.recognizer.altLanguages = this.data.recognizer.altLanguages || []; - } - else this.data.recognizer = {hints: [], altLanguages: []}; + } else this.data.recognizer = {hints: [], altLanguages: []}; this.digitBuffer = ''; this._earlyMedia = this.data.earlyMedia === true; @@ -105,9 +104,13 @@ class TaskGather extends Task { this.partialTranscriptsCount = 0; } - get name() { return TaskName.Gather; } + get name() { + return TaskName.Gather; + } - get needsStt() { return this.input.includes('speech'); } + get needsStt() { + return this.input.includes('speech'); + } get wantsSingleUtterance() { return this.data.recognizer?.singleUtterance === true; @@ -211,8 +214,7 @@ class TaskGather extends Task { const {access_token, servedFromCache} = await getNuanceAccessToken(client_id, secret, 'asr tts'); this.logger.debug({client_id}, `Gather:exec - got nuance access token ${servedFromCache ? 'from cache' : ''}`); this.sttCredentials = {...this.sttCredentials, access_token}; - } - else if (this.vendor == 'ibm' && this.sttCredentials.stt_api_key) { + } else if (this.vendor == 'ibm' && this.sttCredentials.stt_api_key) { /* get ibm access token */ const {stt_api_key, stt_region} = this.sttCredentials; const {access_token, servedFromCache} = await getIbmAccessToken(stt_api_key); @@ -240,13 +242,15 @@ class TaskGather extends Task { try { if (this.sayTask) { - const {span, ctx} = this.startChildSpan(`nested:${this.sayTask.summary}`); - this.sayTask.span = span; - this.sayTask.ctx = ctx; + this.sayTask.span = this.span.startChildSpan(`nested:${this.sayTask.summary}`); this.sayTask.exec(cs, {ep}); // kicked off, _not_ waiting for it to complete this.sayTask.on('playDone', (err) => { - span.end(); - if (err) this.logger.error({err}, 'Gather:exec Error playing tts'); + if (err) { + this.logger.error({err}, 'Gather:exec Error playing tts'); + this.sayTask.span.endWithError('Error playing tts'); + } else { + this.sayTask.span.end(); + } this.logger.debug('Gather: nested say task completed'); if (!this.killed) { startListening(cs, ep); @@ -258,15 +262,16 @@ class TaskGather extends Task { } } }); - } - else if (this.playTask) { - const {span, ctx} = this.startChildSpan(`nested:${this.playTask.summary}`); - this.playTask.span = span; - this.playTask.ctx = ctx; + } else if (this.playTask) { + this.playTask.span = this.span.startChildSpan(`nested:${this.playTask.summary}`); this.playTask.exec(cs, {ep}); // kicked off, _not_ waiting for it to complete this.playTask.on('playDone', (err) => { - span.end(); - if (err) this.logger.error({err}, 'Gather:exec Error playing url'); + if (err) { + this.logger.error({err}, 'Gather:exec Error playing url'); + this.playTask.span.endWithError('Error playing url'); + } else { + this.playTask.span.end(); + } this.logger.debug('Gather: nested play task completed'); if (!this.killed) { startListening(cs, ep); @@ -278,8 +283,7 @@ class TaskGather extends Task { } } }); - } - else { + } else { if (this.killed) { this.logger.info('Gather:exec - task was immediately killed so do not transcribe'); return; @@ -291,7 +295,8 @@ class TaskGather extends Task { await this._initSpeech(cs, ep); this._startTranscribing(ep); updateSpeechCredentialLastUsed(this.sttCredentials.speech_credential_sid) - .catch(() => {/*already logged error */}); + .catch(() => {/*already logged error */ + }); } if (this.input.includes('digits') || this.dtmfBargein || this.asrDtmfTerminationDigit) { @@ -338,16 +343,14 @@ class TaskGather extends Task { if (evt.dtmf === this.finishOnKey && this.input.includes('digits')) { resolved = true; this._resolve('dtmf-terminator-key'); - } - else if (this.input.includes('digits')) { + } else if (this.input.includes('digits')) { this.digitBuffer += evt.dtmf; const len = this.digitBuffer.length; if (len === this.numDigits || len === this.maxDigits) { resolved = true; this._resolve('dtmf-num-digits'); } - } - else if (this.isContinuousAsr && evt.dtmf === this.asrDtmfTerminationDigit) { + } else if (this.isContinuousAsr && evt.dtmf === this.asrDtmfTerminationDigit) { this.logger.info(`continuousAsr triggered with dtmf ${this.asrDtmfTerminationDigit}`); this._clearAsrTimer(); this._clearTimer(); @@ -448,9 +451,8 @@ class TaskGather extends Task { ep.addCustomEventListener(JambonzTranscriptionEvents.ConnectFailure, this._onJambonzConnectFailure.bind(this, cs, ep)); break; - } - else { - this.notifyError({ msg: 'ASR error', details:`Invalid vendor ${this.vendor}`}); + } else { + this.notifyError({msg: 'ASR error', details: `Invalid vendor ${this.vendor}`}); this.notifyTaskDone(); throw new Error(`Invalid vendor ${this.vendor}`); } @@ -590,8 +592,7 @@ class TaskGather extends Task { if (evt.alternatives[0].transcript === '' && !this.callSession.callGone && !this.killed) { if (finished === 'true' && ['microsoft', 'deepgram'].includes(this.vendor)) { this.logger.debug({evt}, 'TaskGather:_onTranscription - got empty transcript from old gather, disregarding'); - } - else { + } else { this.logger.info({evt}, 'TaskGather:_onTranscription - got empty transcript, continue listening'); } return; @@ -605,8 +606,7 @@ class TaskGather extends Task { if (/[,;:\.!\?]$/.test(t)) { this.logger.debug('TaskGather:_onTranscription - removing trailing punctuation'); evt.alternatives[0].transcript = t.slice(0, -1); - } - else this.logger.debug({t}, 'TaskGather:_onTranscription - no trailing punctuation'); + } else this.logger.debug({t}, 'TaskGather:_onTranscription - no trailing punctuation'); } this.logger.info({evt}, 'TaskGather:_onTranscription - got transcript during continous asr'); this._bufferedTranscripts.push(evt); @@ -619,16 +619,14 @@ class TaskGather extends Task { /* some STT engines will keep listening after a final response, so no need to restart */ if (!['soniox', 'aws', 'microsoft', 'deepgram'].includes(this.vendor)) this._startTranscribing(ep); - } - else { + } else { if (this.bargein && (words + bufferedWords) < this.minBargeinWordCount) { this.logger.debug({evt, words, bufferedWords}, 'TaskGather:_onTranscription - final transcript but < min barge words'); this._bufferedTranscripts.push(evt); this._startTranscribing(ep); return; - } - else { + } else { if (this.vendor === 'soniox') { /* compile transcripts into one */ this._sonioxTranscripts.push(evt.vendor.finalWords); @@ -638,8 +636,7 @@ class TaskGather extends Task { this._resolve('speech', evt); } } - } - else { + } else { /* google has a measure of stability: https://cloud.google.com/speech-to-text/docs/basics#streaming_responses others do not. @@ -655,9 +652,9 @@ class TaskGather extends Task { this._killAudio(cs); } if (this.partialResultHook) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; - this.cs.requestor.request('verb:hook', this.partialResultHook, Object.assign({speech: evt}, + this.cs.requestor.request('verb:hook', this.partialResultHook, Object.assign({speech: evt}, this.cs.callInfo, httpHeaders)); } if (this.vendor === 'soniox') { @@ -669,6 +666,7 @@ class TaskGather extends Task { } } } + _onEndOfUtterance(cs, ep) { this.logger.debug('TaskGather:_onEndOfUtterance'); if (this.bargein && this.minBargeinWordCount === 0) { @@ -695,15 +693,19 @@ class TaskGather extends Task { this._killAudio(cs); } } + _onTranscriptionComplete(cs, ep) { this.logger.debug('TaskGather:_onTranscriptionComplete'); } + _onDeepgramConnect(_cs, _ep) { this.logger.debug('TaskGather:_onDeepgramConnect'); } + _onJambonzConnect(_cs, _ep) { this.logger.debug('TaskGather:_onJambonzConnect'); } + _onJambonzError(cs, _ep, evt) { this.logger.info({evt}, 'TaskGather:_onJambonzError'); const {writeAlerts, AlertType} = cs.srf.locals; @@ -720,7 +722,7 @@ class TaskGather extends Task { message: `Custom speech vendor ${this.vendor} error: ${evt.error}`, vendor: this.vendor, }).catch((err) => this.logger.info({err}, 'Error generating alert for jambonz custom connection failure')); - this.notifyError({msg: 'ASR error', details:`Custom speech vendor ${this.vendor} error: ${evt.error}`}); + this.notifyError({msg: 'ASR error', details: `Custom speech vendor ${this.vendor} error: ${evt.error}`}); } _onDeepGramConnectFailure(cs, _ep, evt) { @@ -733,9 +735,10 @@ class TaskGather extends Task { message: `Failed connecting to Deepgram speech recognizer: ${reason}`, vendor: 'deepgram', }).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({msg: 'ASR error', details: `Failed connecting to speech vendor deepgram: ${reason}`}); this.notifyTaskDone(); } + _onJambonzConnectFailure(cs, _ep, evt) { const {reason} = evt; const {writeAlerts, AlertType} = cs.srf.locals; @@ -746,7 +749,7 @@ class TaskGather extends Task { message: `Failed connecting to ${this.vendor} speech recognizer: ${reason}`, vendor: this.vendor, }).catch((err) => this.logger.info({err}, 'Error generating alert for jambonz custom connection failure')); - this.notifyError({msg: 'ASR error', details:`Failed connecting to speech vendor ${this.vendor}: ${reason}`}); + this.notifyError({msg: 'ASR error', details: `Failed connecting to speech vendor ${this.vendor}: ${reason}`}); this.notifyTaskDone(); } @@ -764,12 +767,13 @@ class TaskGather extends Task { message: `Failed connecting to IBM watson speech recognizer: ${reason}`, vendor: 'ibm', }).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({msg: 'ASR error', details: `Failed connecting to speech vendor IBM: ${reason}`}); this.notifyTaskDone(); } _onIbmError(cs, _ep, evt) { - this.logger.info({evt}, 'TaskGather:_onIbmError'); } + this.logger.info({evt}, 'TaskGather:_onIbmError'); + } _onVadDetected(cs, ep) { if (this.bargein && this.minBargeinWordCount === 0) { @@ -784,8 +788,7 @@ class TaskGather extends Task { const finished = fsEvent.getHeader('transcription-session-finished'); if (this.vendor === 'microsoft' && finished === 'true') { this.logger.debug('TaskGather:_onNoSpeechDetected for old gather, ignoring'); - } - else { + } else { this.logger.debug('TaskGather:_onNoSpeechDetected - listen again'); this._startTranscribing(ep); } @@ -811,8 +814,7 @@ class TaskGather extends Task { transcripts: this._bufferedTranscripts }; this.logger.debug({evt}, 'TaskGather:resolve continuous asr'); - } - else if (!this.isContinuousAsr && reason.startsWith('speech') && this._bufferedTranscripts.length) { + } else if (!this.isContinuousAsr && reason.startsWith('speech') && this._bufferedTranscripts.length) { compileTranscripts(this.logger, evt, this._bufferedTranscripts); this.logger.debug({evt}, 'TaskGather:resolve buffered results'); } @@ -836,22 +838,21 @@ class TaskGather extends Task { this.emit('dtmf', evt); await this.performAction({digits: this.digitBuffer, reason: 'dtmfDetected'}); } - } - else if (reason.startsWith('speech')) { + } else if (reason.startsWith('speech')) { if (this.parentTask) this.parentTask.emit('transcription', evt); else { this.emit('transcription', evt); await this.performAction({speech: evt, reason: 'speechDetected'}); } - } - else if (reason.startsWith('timeout')) { + } else if (reason.startsWith('timeout')) { if (this.parentTask) this.parentTask.emit('timeout', evt); else { this.emit('timeout', evt); await this.performAction({reason: 'timeout'}); } } - } catch (err) { /*already logged error*/ } + } catch (err) { /*already logged error*/ + } this.notifyTaskDone(); } } diff --git a/lib/tasks/lex.js b/lib/tasks/lex.js index 4d5629529..8c05e8ce1 100644 --- a/lib/tasks/lex.js +++ b/lib/tasks/lex.js @@ -289,7 +289,7 @@ class Lex extends Task { } async _performHook(cs, hook, results) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; const json = await this.cs.requestor.request('verb:hook', hook, results, httpHeaders); if (json && Array.isArray(json)) { diff --git a/lib/tasks/listen.js b/lib/tasks/listen.js index e56409211..9fc825aed 100644 --- a/lib/tasks/listen.js +++ b/lib/tasks/listen.js @@ -40,12 +40,10 @@ class TaskListen extends Task { if (this.playBeep) await this._playBeep(ep); if (this.transcribeTask) { this.logger.debug('TaskListen:exec - starting nested transcribe task'); - const {span, ctx} = this.startChildSpan(`nested:${this.transcribeTask.summary}`); - this.transcribeTask.span = span; - this.transcribeTask.ctx = ctx; + this.transcribeTask.span = this.span.startChildSpan(`nested:${this.transcribeTask.summary}`); this.transcribeTask.exec(cs, {ep}) - .then((result) => span.end()) - .catch((err) => span.end()); + .then((result) => this.transcribeTask.span.end()) + .catch((err) => this.transcribeTask.span.endWithError('Error in transcribe task')); } await this._startListening(cs, ep); await this.awaitTaskDone(); diff --git a/lib/tasks/rasa.js b/lib/tasks/rasa.js index b79156857..755853293 100644 --- a/lib/tasks/rasa.js +++ b/lib/tasks/rasa.js @@ -31,14 +31,12 @@ class Rasa extends Task { /* start the first gather */ this.gatherTask = this._makeGatherTask(this.prompt); - const {span, ctx} = this.startChildSpan(`nested:${this.gatherTask.summary}`); - this.gatherTask.span = span; - this.gatherTask.ctx = ctx; + this.gatherTask.span = this.span.startChildSpan(`nested:${this.gatherTask.summary}`); this.gatherTask.exec(cs, {ep}) - .then(() => span.end()) + .then(() => this.gatherTask.span.end()) .catch((err) => { - span.end(); this.logger.info({err}, 'Rasa gather task returned error'); + this.gatherTask.span.endWithError('Rasa gather task returned error'); }); await this.awaitTaskDone(); @@ -125,14 +123,12 @@ class Rasa extends Task { if (botUtterance) { this.logger.debug({botUtterance}, 'Rasa:_onTranscription: got user utterance'); this.gatherTask = this._makeGatherTask(botUtterance); - const {span, ctx} = this.startChildSpan(`nested:${this.gatherTask.summary}`); - this.gatherTask.span = span; - this.gatherTask.ctx = ctx; + this.gatherTask.span = this.span.startChildSpan(`nested:${this.gatherTask.summary}`); this.gatherTask.exec(cs, {ep}) - .then(() => span.end()) + .then(() => this.gatherTask.span.end()) .catch((err) => { - span.end(); this.logger.info({err}, 'Rasa gather task returned error'); + this.gatherTask.span.endWithError('Rasa gather task returned error'); }); if (this.eventHook) { this.performHook(cs, this.eventHook, {event: 'botMessage', message: response}) diff --git a/lib/tasks/rest_dial.js b/lib/tasks/rest_dial.js index 36289d33c..4412a26b7 100644 --- a/lib/tasks/rest_dial.js +++ b/lib/tasks/rest_dial.js @@ -50,7 +50,7 @@ class TaskRestDial extends Task { cs.setDialog(dlg); try { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; const params = { ...cs.callInfo, diff --git a/lib/tasks/say.js b/lib/tasks/say.js index 92048450f..7ca134f2b 100644 --- a/lib/tasks/say.js +++ b/lib/tasks/say.js @@ -102,7 +102,7 @@ class TaskSay extends Task { if (text.startsWith('silence_stream://')) return text; /* otel: trace time for tts */ - const {span} = this.startChildSpan('tts-generation', { + const childSpan = this.span.startChildSpan('tts-generation', { 'tts.vendor': vendor, 'tts.language': language, 'tts.voice': voice @@ -126,8 +126,8 @@ class TaskSay extends Task { updateSpeechCredentialLastUsed(credentials.speech_credential_sid) .catch(() => {/*already logged error */}); } - span.setAttributes({'tts.cached': servedFromCache}); - span.end(); + childSpan.setAttributes({'tts.cached': servedFromCache}); + childSpan.end(); if (!servedFromCache && rtt) { this.notifyStatus({ event: 'synthesized-audio', @@ -140,7 +140,7 @@ class TaskSay extends Task { return filePath; } catch (err) { this.logger.info({err}, 'Error synthesizing tts'); - span.end(); + childSpan.endWithError('Error synthesizing tts'); writeAlerts({ account_sid: cs.accountSid, alert_type: AlertType.TTS_FAILURE, diff --git a/lib/tasks/sip_refer.js b/lib/tasks/sip_refer.js index 580befeab..b1aa977a7 100644 --- a/lib/tasks/sip_refer.js +++ b/lib/tasks/sip_refer.js @@ -27,7 +27,7 @@ class TaskSipRefer extends Task { this.notifyHandler = this._handleNotify.bind(this, cs, dlg); dlg.on('notify', this.notifyHandler); /* otel: trace time for tts */ - this.referSpan = this.startSpan('send-refer', { + this.referSpan = this.span.startChildSpan('send-refer', { 'refer.refer_to': referTo, 'refer.referred_by': referredBy }); @@ -87,7 +87,7 @@ class TaskSipRefer extends Task { const status = typeof arr[1] === 'string' ? parseInt(arr[1], 10) : arr[1]; this.logger.debug(`TaskSipRefer:_handleNotify: call got status ${status}`); if (this.eventHook) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; await cs.requestor.request('verb:hook', this.eventHook, {event: 'transfer-status', call_status: status}, httpHeaders); diff --git a/lib/tasks/task.js b/lib/tasks/task.js index 00f0053a5..2a18b1aa8 100644 --- a/lib/tasks/task.js +++ b/lib/tasks/task.js @@ -1,10 +1,9 @@ const Emitter = require('events'); const uuidv4 = require('uuid-random'); const {TaskPreconditions} = require('../utils/constants'); -const { normalizeJambones } = require('@jambonz/verb-specifications'); +const {normalizeJambones} = require('@jambonz/verb-specifications'); const WsRequestor = require('../utils/ws-requestor'); const {TaskName} = require('../utils/constants'); -const {trace} = require('@opentelemetry/api'); /** * @classdesc Represents a jambonz verb. This is a superclass that is extended @@ -70,34 +69,6 @@ class Task extends Emitter { setImmediate(() => this.parentTask = null); } - startSpan(name, attributes) { - const {srf} = require('../..'); - const {tracer} = srf.locals.otel; - const span = tracer.startSpan(name, undefined, this.ctx); - if (attributes) span.setAttributes(attributes); - trace.setSpan(this.ctx, span); - return span; - } - - startChildSpan(name, attributes) { - const {srf} = require('../..'); - const {tracer} = srf.locals.otel; - const span = tracer.startSpan(name, undefined, this.ctx); - if (attributes) span.setAttributes(attributes); - const ctx = trace.setSpan(this.ctx, span); - return {span, ctx}; - } - - getTracingPropagation(encoding, span) { - // TODO: support encodings beyond b3 https://github.com/openzipkin/b3-propagation - if (span) { - return `${span.spanContext().traceId}-${span.spanContext().spanId}-1`; - } - if (this.span) { - return `${this.span.spanContext().traceId}-${this.span.spanContext().spanId}-1`; - } - } - /** * when a subclass Task has completed its work, it should call this method */ @@ -155,14 +126,16 @@ class Task extends Emitter { if (this.actionHook) { const type = this.name === TaskName.Redirect ? 'session:redirect' : 'verb:hook'; const params = results ? Object.assign(this.cs.callInfo.toJSON(), results) : this.cs.callInfo.toJSON(); - const span = this.startSpan(`${type} (${this.actionHook})`); - const b3 = this.getTracingPropagation('b3', span); + const childSpan = this.span.startChildSpan(type, { + 'hook.url': this.actionHook, + 'http.body': JSON.stringify(params) + }); + const b3 = childSpan.getTracingPropagation('b3'); const httpHeaders = b3 && {b3}; - span.setAttributes({'http.body': JSON.stringify(params)}); try { const json = await this.cs.requestor.request(type, this.actionHook, params, httpHeaders); - span.setAttributes({'http.statusCode': 200}); - span.end(); + childSpan.setAttributes({'http.statusCode': 200}); + childSpan.end(); if (expectResponse && json && Array.isArray(json)) { const makeTask = require('./make_task'); const tasks = normalizeJambones(this.logger, json).map((tdata) => makeTask(this.logger, tdata)); @@ -172,8 +145,8 @@ class Task extends Emitter { } } } catch (err) { - span.setAttributes({'http.statusCode': err.statusCode}); - span.end(); + childSpan.setAttributes({'http.statusCode': err.statusCode}); + childSpan.endWithError('http error'); throw err; } } @@ -181,14 +154,16 @@ class Task extends Emitter { async performHook(cs, hook, results) { const params = results ? Object.assign(cs.callInfo.toJSON(), results) : cs.callInfo.toJSON(); - const span = this.startSpan('verb:hook', {'hook.url': hook}); - const b3 = this.getTracingPropagation('b3', span); + const childSpan = this.span.startChildSpan('verb:hook', { + 'hook.url': hook, + 'http.body': JSON.stringify(params) + }); + const b3 = childSpan.getTracingPropagation('b3'); const httpHeaders = b3 && {b3}; - span.setAttributes({'http.body': JSON.stringify(params)}); try { const json = await cs.requestor.request('verb:hook', hook, params, httpHeaders); - span.setAttributes({'http.statusCode': 200}); - span.end(); + childSpan.setAttributes({'http.statusCode': 200}); + childSpan.end(); if (json && Array.isArray(json)) { const makeTask = require('./make_task'); const tasks = normalizeJambones(this.logger, json).map((tdata) => makeTask(this.logger, tdata)); @@ -199,8 +174,8 @@ class Task extends Emitter { } return false; } catch (err) { - span.setAttributes({'http.statusCode': err.statusCode}); - span.end(); + childSpan.setAttributes({'http.statusCode': err.statusCode}); + childSpan.endWithError('http error'); throw err; } } @@ -217,7 +192,7 @@ class Task extends Emitter { // listen for conference events const handler = this.__onConferenceEvent.bind(this); - ep.conn.on('esl::event::CUSTOM::*', handler) ; + ep.conn.on('esl::event::CUSTOM::*', handler); const response = await ep.api(`conference ${confName} play ${filepath} ${memberId}`); this.logger.debug({response}, 'Task:playToConfMember - api call returned'); await this.awaitConfPlayDone(); @@ -238,9 +213,9 @@ class Task extends Emitter { } __onConferenceEvent(evt) { - const eventName = evt.getHeader('Event-Subclass') ; + const eventName = evt.getHeader('Event-Subclass'); if (eventName === 'conference::maintenance') { - const action = evt.getHeader('Action') ; + const action = evt.getHeader('Action'); if (action === 'play-file-member-done') { this.logger.debug('done playing file to conf member'); this.notifyConfPlayDone(); @@ -254,7 +229,7 @@ class Task extends Emitter { const obj = Object.assign({}, cs.application); delete obj.requestor; delete obj.notifier; - obj.tasks = cs.getRemainingTaskData(); + obj.tasks = cs.getRemainingTaskData(); if (opts && obj.tasks.length > 0) { const key = Object.keys(obj.tasks[0])[0]; Object.assign(obj.tasks[0][key], {_: opts}); diff --git a/lib/tasks/transcribe.js b/lib/tasks/transcribe.js index f9c85659f..6d95221e2 100644 --- a/lib/tasks/transcribe.js +++ b/lib/tasks/transcribe.js @@ -286,7 +286,7 @@ class TaskTranscribe extends Task { } if (this.transcriptionHook) { - const b3 = this.getTracingPropagation(); + const b3 = this.span.getTracingPropagation(); const httpHeaders = b3 && {b3}; try { const json = await this.cs.requestor.request('verb:hook', this.transcriptionHook, { From d26a494638e3d217eaecdb298a3c224c5c84e3d6 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 11:03:31 +0100 Subject: [PATCH 50/74] removed old tracer.js from lint scripts --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 9a9478e3d..3e95f2478 100644 --- a/package.json +++ b/package.json @@ -21,8 +21,8 @@ "start": "node app", "test": "NODE_ENV=test JAMBONES_HOSTING=1 HTTP_POOL=1 ENCRYPTION_SECRET=foobar DRACHTIO_HOST=127.0.0.1 DRACHTIO_PORT=9060 DRACHTIO_SECRET=cymru JAMBONES_MYSQL_HOST=127.0.0.1 JAMBONES_MYSQL_PORT=3360 JAMBONES_MYSQL_USER=jambones_test JAMBONES_MYSQL_PASSWORD=jambones_test JAMBONES_MYSQL_DATABASE=jambones_test JAMBONES_REDIS_HOST=127.0.0.1 JAMBONES_REDIS_PORT=16379 JAMBONES_LOGLEVEL=error ENABLE_METRICS=0 HTTP_PORT=3000 JAMBONES_SBCS=172.38.0.10 JAMBONES_FREESWITCH=127.0.0.1:8022:JambonzR0ck$:docker-host JAMBONES_TIME_SERIES_HOST=127.0.0.1 JAMBONES_NETWORK_CIDR=172.38.0.0/16 node test/ ", "coverage": "./node_modules/.bin/nyc --reporter html --report-dir ./coverage npm run test", - "jslint": "eslint app.js tracer.js lib", - "jslint:fix": "eslint app.js tracer.js lib --fix" + "jslint": "eslint app.js lib", + "jslint:fix": "eslint app.js lib --fix" }, "dependencies": { "@jambonz/db-helpers": "^0.7.9", From 001d9537126ba6959e410b5066968001bf212ae4 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 11:26:00 +0100 Subject: [PATCH 51/74] fixed span issue added logger to root spans --- lib/http-routes/api/create-call.js | 2 +- lib/session/call-session.js | 4 +--- lib/utils/place-outdial.js | 2 +- 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 5efe507d9..a7a97cea3 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -182,7 +182,7 @@ router.post('/', async(req, res) => { const tasks = [restDial]; - const rootSpan = new RootSpan('rest-call', inviteReq); + const rootSpan = new RootSpan('rest-call', inviteReq, logger); sipLogger = logger.child({ callSid, diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 5924262e6..69e3d377c 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -727,9 +727,7 @@ class CallSession extends Emitter { } } if (!skip) { - const {span, ctx} = this.rootSpan.startChildSpan(`verb:${task.summary}`); - task.span = span; - task.ctx = ctx; + task.span = this.rootSpan.startChildSpan(`verb:${task.summary}`); await task.exec(this, resources); task.span.end(); } diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 55370ec0e..6327aad3f 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -365,7 +365,7 @@ class SingleDialer extends Emitter { this.dlg.callSid = this.callSid; this.dlg.linkedSpanId = this.rootSpan.traceId; - const rootSpan = new RootSpan('outbound-call', this.dlg); + const rootSpan = new RootSpan('outbound-call', this.dlg, this.logger); const newLogger = logger.child({traceId: rootSpan.traceId}); const cs = new AdultingCallSession({ logger: newLogger, From e0c82e712a8132789be7ed6ae06f4399ddcc83da Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 12:23:09 +0100 Subject: [PATCH 52/74] -fixed bind function issue -added loglevel --- app.js | 3 ++- lib/tasks/dial.js | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/app.js b/app.js index 59bc0db35..0c00f77aa 100644 --- a/app.js +++ b/app.js @@ -32,7 +32,8 @@ const {tracer} = new JambonzTracer({ jaegerHost: OTEL_EXPORTER_JAEGER_AGENT_HOST, jaegerEndpoint: OTEL_EXPORTER_JAEGER_ENDPOINT, zipkinUrl: OTEL_EXPORTER_ZIPKIN_URL, - collectorUrl: OTEL_EXPORTER_COLLECTOR_URL + collectorUrl: OTEL_EXPORTER_COLLECTOR_URL, + logLevel: JAMBONES_LOGLEVEL }); srf.locals = {...srf.locals, otel: {tracer, api}}; diff --git a/lib/tasks/dial.js b/lib/tasks/dial.js index 94cfb0e6c..92c0ed1a2 100644 --- a/lib/tasks/dial.js +++ b/lib/tasks/dial.js @@ -489,7 +489,7 @@ class TaskDial extends Task { callInfo: cs.callInfo, accountInfo: cs.accountInfo, rootSpan: cs.rootSpan, - startSpan: this.span.startChildSpan + startSpan: this.span.startChildSpan.bind(this.span) }); this.dials.set(sd.callSid, sd); From 149d20d7adec1b4d82883f8811cdb8a584692009 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 13:38:18 +0100 Subject: [PATCH 53/74] new RootSpan contsructor --- lib/http-routes/api/create-call.js | 3 ++- lib/middleware.js | 34 ++++++++++++++++++++++++++---- lib/utils/place-outdial.js | 8 ++++++- 3 files changed, 39 insertions(+), 6 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index a7a97cea3..5e01eeeac 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -182,7 +182,8 @@ router.post('/', async(req, res) => { const tasks = [restDial]; - const rootSpan = new RootSpan('rest-call', inviteReq, logger); + const {otel: {tracer}} = inviteReq.srf; + const rootSpan = new RootSpan('rest-call', callSid, inviteReq.locals, tracer, logger); sipLogger = logger.child({ callSid, diff --git a/lib/middleware.js b/lib/middleware.js index afdf043b2..aec45fea9 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -10,6 +10,7 @@ const { normalizeJambones } = require('@jambonz/verb-specifications'); const dbUtils = require('./utils/db-utils'); const {RootSpan} = require('@jambonz/tracing'); const listTaskNames = require('./utils/summarize-tasks'); +const {Dialog} = require('drachtio-srf'); const { JAMBONES_MYSQL_REFRESH_TTL, } = require('./config'); @@ -63,9 +64,33 @@ module.exports = function(srf, logger) { } function createRootSpan(req, res, next) { - const {callId, callSid, account_sid} = req.locals; - const rootSpan = new RootSpan('incoming-call', req, logger); + + const getAttributes = () => { + if (req instanceof Dialog) { + const {sip: {callId}, callSid, linkedSpanId} = req; + return { + linkedSpanId, + callId, + callSid, + }; + } else { + const {locals: {callSid, application_sid}} = req; + return { + callSid, + accountSid: req.get('X-Account-Sid'), + applicationSid: application_sid, + callId: req.get('Call-ID'), + externalCallId: req.get('X-CID'), + }; + } + }; + + const {otel: {tracer}} = req.srf; + const {callSid, ...attributes} = getAttributes(); + const rootSpan = new RootSpan('incoming-call', callSid, attributes, tracer, logger); + const traceId = rootSpan.traceId; + const {callId, accountSid} = attributes; req.locals = { ...req.locals, @@ -73,10 +98,11 @@ module.exports = function(srf, logger) { logger: logger.child({ callId, callSid, - accountSid: account_sid, + accountSid, callingNumber: req.callingNumber, calledNumber: req.calledNumber, - traceId}), + traceId + }), rootSpan }; diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 6327aad3f..1ea0f14a7 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -365,7 +365,13 @@ class SingleDialer extends Emitter { this.dlg.callSid = this.callSid; this.dlg.linkedSpanId = this.rootSpan.traceId; - const rootSpan = new RootSpan('outbound-call', this.dlg, this.logger); + + const {sip: {callId}, callSid, linkedSpanId, otel: {tracer}} = this.dlg; + const rootSpan = new RootSpan('outbound-call', this.callSid, + {linkedSpanId, callId, callSid}, + tracer, + this.logger); + const newLogger = logger.child({traceId: rootSpan.traceId}); const cs = new AdultingCallSession({ logger: newLogger, From 398728aae7cabb7e89d5c12d7c9e69eaff7943c2 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 14:08:38 +0100 Subject: [PATCH 54/74] added tracing lib to package.json --- package.json | 16 ++++------------ 1 file changed, 4 insertions(+), 12 deletions(-) diff --git a/package.json b/package.json index 3e95f2478..e00c7a89f 100644 --- a/package.json +++ b/package.json @@ -25,22 +25,14 @@ "jslint:fix": "eslint app.js lib --fix" }, "dependencies": { - "@jambonz/db-helpers": "^0.7.9", + "@jambonz/db-helpers": "^0.7.4", "@jambonz/http-health-check": "^0.0.1", - "@jambonz/realtimedb-helpers": "^0.7.2", + "@jambonz/realtimedb-helpers": "^0.7.0", "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/verb-specifications": "^0.0.21", - "@opentelemetry/api": "^1.4.0", - "@opentelemetry/exporter-jaeger": "^1.9.0", - "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", - "@opentelemetry/exporter-zipkin": "^1.9.0", - "@opentelemetry/instrumentation": "^0.35.0", - "@opentelemetry/resources": "^1.9.0", - "@opentelemetry/sdk-trace-base": "^1.9.0", - "@opentelemetry/sdk-trace-node": "^1.9.0", - "@opentelemetry/semantic-conventions": "^1.9.0", + "@jambonz/verb-specifications": "^0.0.14", + "@jambonz/tracing" : "^0.0.1", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From ab452f4a0bec982615dab781eb916a641b3b6050 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 14:13:37 +0100 Subject: [PATCH 55/74] default otel service name --- app.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app.js b/app.js index 0c00f77aa..0a7b820ef 100644 --- a/app.js +++ b/app.js @@ -27,7 +27,7 @@ const srf = new Srf(); const {tracer} = new JambonzTracer({ version, - serviceName: JAMBONES_OTEL_SERVICE_NAME, + name: JAMBONES_OTEL_SERVICE_NAME || 'jambonz-feature-server', enabled: JAMBONES_OTEL_ENABLED, jaegerHost: OTEL_EXPORTER_JAEGER_AGENT_HOST, jaegerEndpoint: OTEL_EXPORTER_JAEGER_ENDPOINT, From 5cfd374ad2be349bc1ff8e067f623c4a1967a726 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 14:42:51 +0100 Subject: [PATCH 56/74] bumped tracing lib --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index e00c7a89f..c244339a8 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", "@jambonz/verb-specifications": "^0.0.14", - "@jambonz/tracing" : "^0.0.1", + "@jambonz/tracing" : "^0.1.1", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From 2d9dcfd033b1383e8073e2bfb8bf16c318a73d05 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:11:08 +0100 Subject: [PATCH 57/74] bumped tracing lib --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index c244339a8..43ea82bcf 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", "@jambonz/verb-specifications": "^0.0.14", - "@jambonz/tracing" : "^0.1.1", + "@jambonz/tracing" : "^0.1.5", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From 7eef9949c60be2dff9cf02d77481e7ed8d6a11b1 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:23:55 +0100 Subject: [PATCH 58/74] undefined tracer --- lib/middleware.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/middleware.js b/lib/middleware.js index aec45fea9..194da2b35 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -85,7 +85,7 @@ module.exports = function(srf, logger) { } }; - const {otel: {tracer}} = req.srf; + const {tracer} = req.srf.locals.otel; const {callSid, ...attributes} = getAttributes(); const rootSpan = new RootSpan('incoming-call', callSid, attributes, tracer, logger); From e1fd39db2ce95c2a4f5515702ce3f67ed55c5327 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:30:38 +0100 Subject: [PATCH 59/74] bumped tracing lib --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index 43ea82bcf..96373be41 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", "@jambonz/verb-specifications": "^0.0.14", - "@jambonz/tracing" : "^0.1.5", + "@jambonz/tracing" : "^0.1.6", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From 09c26b1f900679bbdaa72a854e16c258e66c2fd7 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:34:00 +0100 Subject: [PATCH 60/74] package-lock.json --- package-lock.json | 4616 ++++++++++++++++++++++----------------------- 1 file changed, 2240 insertions(+), 2376 deletions(-) diff --git a/package-lock.json b/package-lock.json index e9f30f8a8..659a94251 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,22 +9,14 @@ "version": "v0.8.2", "license": "MIT", "dependencies": { - "@jambonz/db-helpers": "^0.7.9", + "@jambonz/db-helpers": "^0.7.4", "@jambonz/http-health-check": "^0.0.1", - "@jambonz/realtimedb-helpers": "^0.7.2", + "@jambonz/realtimedb-helpers": "^0.7.0", "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/verb-specifications": "^0.0.21", - "@opentelemetry/api": "^1.4.0", - "@opentelemetry/exporter-jaeger": "^1.9.0", - "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", - "@opentelemetry/exporter-zipkin": "^1.9.0", - "@opentelemetry/instrumentation": "^0.35.0", - "@opentelemetry/resources": "^1.9.0", - "@opentelemetry/sdk-trace-base": "^1.9.0", - "@opentelemetry/sdk-trace-node": "^1.9.0", - "@opentelemetry/semantic-conventions": "^1.9.0", + "@jambonz/tracing": "^0.1.5", + "@jambonz/verb-specifications": "^0.0.14", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", @@ -64,12 +56,12 @@ } }, "node_modules/@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", "dev": true, "dependencies": { - "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/gen-mapping": "^0.1.0", "@jridgewell/trace-mapping": "^0.3.9" }, "engines": { @@ -153,11 +145,11 @@ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==" }, "node_modules/@aws-sdk/abort-controller": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.310.0.tgz", - "integrity": "sha512-v1zrRQxDLA1MdPim159Vx/CPHqsB4uybSxRi1CnfHO5ZjHryx3a5htW2gdGAykVCul40+yJXvfpufMrELVxH+g==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.303.0.tgz", + "integrity": "sha512-LzNzpeyTppcmV/6SAQI3T/huOkMrUnFveplgVNwJxw+rVqmqmGV6z6vpg+oRICRDcjXWYiSiaClxxSVvOy0sDQ==", "dependencies": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -165,46 +157,46 @@ } }, "node_modules/@aws-sdk/client-polly": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-polly/-/client-polly-3.328.0.tgz", - "integrity": "sha512-lnxmJPRmPkQEWt+V+492CV7Y/HZrbKXa38xQgRQOC6ZmXyoaJhnwCVRERm9KcxUXfrcLhiHrSnR8e24V283YIg==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-polly/-/client-polly-3.303.0.tgz", + "integrity": "sha512-Cw5V6ViZDrtvhz6Txw8inxtKysJfgQSeJiB3H/sHLklwIU417+8LoxCs1+090Czq2kPw7JmIRy44RXLtJT2v8g==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.328.0", - "@aws-sdk/config-resolver": "3.310.0", - "@aws-sdk/credential-provider-node": "3.328.0", - "@aws-sdk/fetch-http-handler": "3.310.0", - "@aws-sdk/hash-node": "3.310.0", - "@aws-sdk/invalid-dependency": "3.310.0", - "@aws-sdk/middleware-content-length": "3.325.0", - "@aws-sdk/middleware-endpoint": "3.325.0", - "@aws-sdk/middleware-host-header": "3.325.0", - "@aws-sdk/middleware-logger": "3.325.0", - "@aws-sdk/middleware-recursion-detection": "3.325.0", - "@aws-sdk/middleware-retry": "3.327.0", - "@aws-sdk/middleware-serde": "3.325.0", - "@aws-sdk/middleware-signing": "3.325.0", - "@aws-sdk/middleware-stack": "3.325.0", - "@aws-sdk/middleware-user-agent": "3.327.0", - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/node-http-handler": "3.328.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/smithy-client": "3.325.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", - "@aws-sdk/util-body-length-browser": "3.310.0", - "@aws-sdk/util-body-length-node": "3.310.0", - "@aws-sdk/util-defaults-mode-browser": "3.325.0", - "@aws-sdk/util-defaults-mode-node": "3.325.0", - "@aws-sdk/util-endpoints": "3.327.0", - "@aws-sdk/util-retry": "3.327.0", - "@aws-sdk/util-stream-browser": "3.310.0", - "@aws-sdk/util-stream-node": "3.328.0", - "@aws-sdk/util-user-agent-browser": "3.310.0", - "@aws-sdk/util-user-agent-node": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "@aws-sdk/client-sts": "3.303.0", + "@aws-sdk/config-resolver": "3.303.0", + "@aws-sdk/credential-provider-node": "3.303.0", + "@aws-sdk/fetch-http-handler": "3.303.0", + "@aws-sdk/hash-node": "3.303.0", + "@aws-sdk/invalid-dependency": "3.303.0", + "@aws-sdk/middleware-content-length": "3.303.0", + "@aws-sdk/middleware-endpoint": "3.303.0", + "@aws-sdk/middleware-host-header": "3.303.0", + "@aws-sdk/middleware-logger": "3.303.0", + "@aws-sdk/middleware-recursion-detection": "3.303.0", + "@aws-sdk/middleware-retry": "3.303.0", + "@aws-sdk/middleware-serde": "3.303.0", + "@aws-sdk/middleware-signing": "3.303.0", + "@aws-sdk/middleware-stack": "3.303.0", + "@aws-sdk/middleware-user-agent": "3.303.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/node-http-handler": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/smithy-client": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.303.0", + "@aws-sdk/util-defaults-mode-node": "3.303.0", + "@aws-sdk/util-endpoints": "3.303.0", + "@aws-sdk/util-retry": "3.303.0", + "@aws-sdk/util-stream-browser": "3.303.0", + "@aws-sdk/util-stream-node": "3.303.0", + "@aws-sdk/util-user-agent-browser": "3.303.0", + "@aws-sdk/util-user-agent-node": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -212,41 +204,41 @@ } }, "node_modules/@aws-sdk/client-sso": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.328.0.tgz", - "integrity": "sha512-IneVwc4j3bCXwCdNAALQ8VVrfFTFAb2f3FxerHv4DLx8OlMTvZiraDDJisfO+cXLl2WCJOJAzpAJTgrPA50LCg==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.303.0.tgz", + "integrity": "sha512-LZ+Z6vGnEdqmxx0dqtZP97n5VX5uUKu4lJmDR3sdGolxAUqCY1FxHDZd9DzCFXR8rwoJK4VJTL+exzeVp4Ly/g==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.310.0", - "@aws-sdk/fetch-http-handler": "3.310.0", - "@aws-sdk/hash-node": "3.310.0", - "@aws-sdk/invalid-dependency": "3.310.0", - "@aws-sdk/middleware-content-length": "3.325.0", - "@aws-sdk/middleware-endpoint": "3.325.0", - "@aws-sdk/middleware-host-header": "3.325.0", - "@aws-sdk/middleware-logger": "3.325.0", - "@aws-sdk/middleware-recursion-detection": "3.325.0", - "@aws-sdk/middleware-retry": "3.327.0", - "@aws-sdk/middleware-serde": "3.325.0", - "@aws-sdk/middleware-stack": "3.325.0", - "@aws-sdk/middleware-user-agent": "3.327.0", - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/node-http-handler": "3.328.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/smithy-client": "3.325.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", - "@aws-sdk/util-body-length-browser": "3.310.0", - "@aws-sdk/util-body-length-node": "3.310.0", - "@aws-sdk/util-defaults-mode-browser": "3.325.0", - "@aws-sdk/util-defaults-mode-node": "3.325.0", - "@aws-sdk/util-endpoints": "3.327.0", - "@aws-sdk/util-retry": "3.327.0", - "@aws-sdk/util-user-agent-browser": "3.310.0", - "@aws-sdk/util-user-agent-node": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "@aws-sdk/config-resolver": "3.303.0", + "@aws-sdk/fetch-http-handler": "3.303.0", + "@aws-sdk/hash-node": "3.303.0", + "@aws-sdk/invalid-dependency": "3.303.0", + "@aws-sdk/middleware-content-length": "3.303.0", + "@aws-sdk/middleware-endpoint": "3.303.0", + "@aws-sdk/middleware-host-header": "3.303.0", + "@aws-sdk/middleware-logger": "3.303.0", + "@aws-sdk/middleware-recursion-detection": "3.303.0", + "@aws-sdk/middleware-retry": "3.303.0", + "@aws-sdk/middleware-serde": "3.303.0", + "@aws-sdk/middleware-stack": "3.303.0", + "@aws-sdk/middleware-user-agent": "3.303.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/node-http-handler": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/smithy-client": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.303.0", + "@aws-sdk/util-defaults-mode-node": "3.303.0", + "@aws-sdk/util-endpoints": "3.303.0", + "@aws-sdk/util-retry": "3.303.0", + "@aws-sdk/util-user-agent-browser": "3.303.0", + "@aws-sdk/util-user-agent-node": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -254,41 +246,41 @@ } }, "node_modules/@aws-sdk/client-sso-oidc": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.328.0.tgz", - "integrity": "sha512-2T6Snri7ovx9+q/iw/wZ1YHzz/SsxPuJOhgbJipCFW9f1IEPBIEKVZtywcKYzE1nYjyc6YanAqQMn6U2SPhW4A==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.303.0.tgz", + "integrity": "sha512-oOdDcBjxGiJ6mFWUMVr+A1hAzGRpcZ+oLAhCakpvpXCUG50PZSBFP+vOQXgHY/XNolqDg+IHq60oE9HoPzGleg==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.310.0", - "@aws-sdk/fetch-http-handler": "3.310.0", - "@aws-sdk/hash-node": "3.310.0", - "@aws-sdk/invalid-dependency": "3.310.0", - "@aws-sdk/middleware-content-length": "3.325.0", - "@aws-sdk/middleware-endpoint": "3.325.0", - "@aws-sdk/middleware-host-header": "3.325.0", - "@aws-sdk/middleware-logger": "3.325.0", - "@aws-sdk/middleware-recursion-detection": "3.325.0", - "@aws-sdk/middleware-retry": "3.327.0", - "@aws-sdk/middleware-serde": "3.325.0", - "@aws-sdk/middleware-stack": "3.325.0", - "@aws-sdk/middleware-user-agent": "3.327.0", - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/node-http-handler": "3.328.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/smithy-client": "3.325.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", - "@aws-sdk/util-body-length-browser": "3.310.0", - "@aws-sdk/util-body-length-node": "3.310.0", - "@aws-sdk/util-defaults-mode-browser": "3.325.0", - "@aws-sdk/util-defaults-mode-node": "3.325.0", - "@aws-sdk/util-endpoints": "3.327.0", - "@aws-sdk/util-retry": "3.327.0", - "@aws-sdk/util-user-agent-browser": "3.310.0", - "@aws-sdk/util-user-agent-node": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "@aws-sdk/config-resolver": "3.303.0", + "@aws-sdk/fetch-http-handler": "3.303.0", + "@aws-sdk/hash-node": "3.303.0", + "@aws-sdk/invalid-dependency": "3.303.0", + "@aws-sdk/middleware-content-length": "3.303.0", + "@aws-sdk/middleware-endpoint": "3.303.0", + "@aws-sdk/middleware-host-header": "3.303.0", + "@aws-sdk/middleware-logger": "3.303.0", + "@aws-sdk/middleware-recursion-detection": "3.303.0", + "@aws-sdk/middleware-retry": "3.303.0", + "@aws-sdk/middleware-serde": "3.303.0", + "@aws-sdk/middleware-stack": "3.303.0", + "@aws-sdk/middleware-user-agent": "3.303.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/node-http-handler": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/smithy-client": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.303.0", + "@aws-sdk/util-defaults-mode-node": "3.303.0", + "@aws-sdk/util-endpoints": "3.303.0", + "@aws-sdk/util-retry": "3.303.0", + "@aws-sdk/util-user-agent-browser": "3.303.0", + "@aws-sdk/util-user-agent-node": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -296,44 +288,44 @@ } }, "node_modules/@aws-sdk/client-sts": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.328.0.tgz", - "integrity": "sha512-Eedz24H7zLuTjJoCtNQEGOKbIlhibqyasFFwWsds6ds24hRF4fVrCKLwZWENZwawtJjjEdRESQe4dwpV5lWqtw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.303.0.tgz", + "integrity": "sha512-oda7mOfGyJZe62DZ5BVH3L84yeDM0Ja/fSpTjwV9hqFqzgtW83TCpiNegcJmvmGWDYaPmE2qpfDPqPzymB0sBg==", "dependencies": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.310.0", - "@aws-sdk/credential-provider-node": "3.328.0", - "@aws-sdk/fetch-http-handler": "3.310.0", - "@aws-sdk/hash-node": "3.310.0", - "@aws-sdk/invalid-dependency": "3.310.0", - "@aws-sdk/middleware-content-length": "3.325.0", - "@aws-sdk/middleware-endpoint": "3.325.0", - "@aws-sdk/middleware-host-header": "3.325.0", - "@aws-sdk/middleware-logger": "3.325.0", - "@aws-sdk/middleware-recursion-detection": "3.325.0", - "@aws-sdk/middleware-retry": "3.327.0", - "@aws-sdk/middleware-sdk-sts": "3.326.0", - "@aws-sdk/middleware-serde": "3.325.0", - "@aws-sdk/middleware-signing": "3.325.0", - "@aws-sdk/middleware-stack": "3.325.0", - "@aws-sdk/middleware-user-agent": "3.327.0", - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/node-http-handler": "3.328.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/smithy-client": "3.325.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", - "@aws-sdk/util-body-length-browser": "3.310.0", - "@aws-sdk/util-body-length-node": "3.310.0", - "@aws-sdk/util-defaults-mode-browser": "3.325.0", - "@aws-sdk/util-defaults-mode-node": "3.325.0", - "@aws-sdk/util-endpoints": "3.327.0", - "@aws-sdk/util-retry": "3.327.0", - "@aws-sdk/util-user-agent-browser": "3.310.0", - "@aws-sdk/util-user-agent-node": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "@aws-sdk/config-resolver": "3.303.0", + "@aws-sdk/credential-provider-node": "3.303.0", + "@aws-sdk/fetch-http-handler": "3.303.0", + "@aws-sdk/hash-node": "3.303.0", + "@aws-sdk/invalid-dependency": "3.303.0", + "@aws-sdk/middleware-content-length": "3.303.0", + "@aws-sdk/middleware-endpoint": "3.303.0", + "@aws-sdk/middleware-host-header": "3.303.0", + "@aws-sdk/middleware-logger": "3.303.0", + "@aws-sdk/middleware-recursion-detection": "3.303.0", + "@aws-sdk/middleware-retry": "3.303.0", + "@aws-sdk/middleware-sdk-sts": "3.303.0", + "@aws-sdk/middleware-serde": "3.303.0", + "@aws-sdk/middleware-signing": "3.303.0", + "@aws-sdk/middleware-stack": "3.303.0", + "@aws-sdk/middleware-user-agent": "3.303.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/node-http-handler": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/smithy-client": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.303.0", + "@aws-sdk/util-defaults-mode-node": "3.303.0", + "@aws-sdk/util-endpoints": "3.303.0", + "@aws-sdk/util-retry": "3.303.0", + "@aws-sdk/util-user-agent-browser": "3.303.0", + "@aws-sdk/util-user-agent-node": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "fast-xml-parser": "4.1.2", "tslib": "^2.5.0" }, @@ -342,13 +334,13 @@ } }, "node_modules/@aws-sdk/config-resolver": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.310.0.tgz", - "integrity": "sha512-8vsT+/50lOqfDxka9m/rRt6oxv1WuGZoP8oPMk0Dt+TxXMbAzf4+rejBgiB96wshI1k3gLokYRjSQZn+dDtT8g==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.303.0.tgz", + "integrity": "sha512-uGZ47jcH86AwWcjZjuOL5jK5qE4izrEol8oF7KY214kjmavbKQstyUqmcwL2lr/YpDNFkCYgUxWRpduqVm8zmw==", "dependencies": { - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-config-provider": "3.310.0", - "@aws-sdk/util-middleware": "3.310.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-config-provider": "3.295.0", + "@aws-sdk/util-middleware": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -356,12 +348,12 @@ } }, "node_modules/@aws-sdk/credential-provider-env": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.310.0.tgz", - "integrity": "sha512-vvIPQpI16fj95xwS7M3D48F7QhZJBnnCgB5lR+b7So+vsG9ibm1mZRVGzVpdxCvgyOhHFbvrby9aalNJmmIP1A==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.303.0.tgz", + "integrity": "sha512-rtXumfF4cGrVk9fWACeLCfdpmlzlDUkzwSR60/3enC5Antcxl3fFY5T1BzNFvz0mB0zcwm4kaAwIcljX67DNRA==", "dependencies": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -369,14 +361,14 @@ } }, "node_modules/@aws-sdk/credential-provider-imds": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.310.0.tgz", - "integrity": "sha512-baxK7Zp6dai5AGW01FIW27xS2KAaPUmKLIXv5SvFYsUgXXvNW55im4uG3b+2gA0F7V+hXvVBH08OEqmwW6we5w==", - "dependencies": { - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.303.0.tgz", + "integrity": "sha512-ruomcFkKUpJkZb87em698//A0AVpt1KN9dn8N8eVyOuvZzebVxSW4AJoVgOKd5Av4PVcZgEqRX0kOOVp0iTrWg==", + "dependencies": { + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -384,18 +376,18 @@ } }, "node_modules/@aws-sdk/credential-provider-ini": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.328.0.tgz", - "integrity": "sha512-tOHzfWQUaQif1IciWs57MFM7bFc+693pnEhFCgT3wjzwjKGkq1QsNzfRlOp1QP4Glw6qV+kAAemEZj8mGth8Bg==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.310.0", - "@aws-sdk/credential-provider-imds": "3.310.0", - "@aws-sdk/credential-provider-process": "3.310.0", - "@aws-sdk/credential-provider-sso": "3.328.0", - "@aws-sdk/credential-provider-web-identity": "3.310.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.303.0.tgz", + "integrity": "sha512-4J50F6fEjQmAstSQOpJFG+rnbEqtwA7nDG6PxNm98VSTH2mYJV0YgBdvydfBKrKINAT4xYZta5Sc4WEIpSo0TA==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.303.0", + "@aws-sdk/credential-provider-imds": "3.303.0", + "@aws-sdk/credential-provider-process": "3.303.0", + "@aws-sdk/credential-provider-sso": "3.303.0", + "@aws-sdk/credential-provider-web-identity": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -403,19 +395,19 @@ } }, "node_modules/@aws-sdk/credential-provider-node": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.328.0.tgz", - "integrity": "sha512-/omjTxrC8Vv6OPAK+66KNnjVmMZWyEQnQp8e8Y+RZvsuVaeQNJT5UQKSqrYtmqTX2T+yqJY7eVpx5CXBCGjc2g==", - "dependencies": { - "@aws-sdk/credential-provider-env": "3.310.0", - "@aws-sdk/credential-provider-imds": "3.310.0", - "@aws-sdk/credential-provider-ini": "3.328.0", - "@aws-sdk/credential-provider-process": "3.310.0", - "@aws-sdk/credential-provider-sso": "3.328.0", - "@aws-sdk/credential-provider-web-identity": "3.310.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.303.0.tgz", + "integrity": "sha512-OlKb7O2jDtrzkzLT/PUb5kxuGGTIyPn2alXzGT+7LdJ9/tP8KlqSVMtnH2UYPPdcc/daK16+MRNL5ylxmnRJ7Q==", + "dependencies": { + "@aws-sdk/credential-provider-env": "3.303.0", + "@aws-sdk/credential-provider-imds": "3.303.0", + "@aws-sdk/credential-provider-ini": "3.303.0", + "@aws-sdk/credential-provider-process": "3.303.0", + "@aws-sdk/credential-provider-sso": "3.303.0", + "@aws-sdk/credential-provider-web-identity": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -423,13 +415,13 @@ } }, "node_modules/@aws-sdk/credential-provider-process": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.310.0.tgz", - "integrity": "sha512-h73sg6GPMUWC+3zMCbA1nZ2O03nNJt7G96JdmnantiXBwHpRKWW8nBTLzx5uhXn6hTuTaoQRP/P+oxQJKYdMmA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.303.0.tgz", + "integrity": "sha512-1pxDYRscGlERAjFE5hSF1KQdcyOGzssuRTdLvez4I/mSIOAJLMmBAnmHGI/DME2LzDVrC9dklA6LHSC2sn3quQ==", "dependencies": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -437,15 +429,15 @@ } }, "node_modules/@aws-sdk/credential-provider-sso": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.328.0.tgz", - "integrity": "sha512-6lSfA3AcoqNt+OYJoBimWmPmqUYVCHkE0Y+4HFN7JaXCyUknsO9/71P5zo/pp8Q7/yxP/aRyzjael82G5thj0A==", - "dependencies": { - "@aws-sdk/client-sso": "3.328.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/token-providers": "3.328.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.303.0.tgz", + "integrity": "sha512-/szzM1BzZGjHwV4mSiZo65cyDleJqnxM9Y4autg55mb3dFwcCiMGI6TGbdegumrNZZlCTeTA1lIhA9PdT4gDAQ==", + "dependencies": { + "@aws-sdk/client-sso": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/token-providers": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -453,12 +445,12 @@ } }, "node_modules/@aws-sdk/credential-provider-web-identity": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.310.0.tgz", - "integrity": "sha512-H4SzuZXILNhK6/IR1uVvsUDZvzc051hem7GLyYghBCu8mU+tq28YhKE8MfSroi6eL2e5Vujloij1OM2EQQkPkw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.303.0.tgz", + "integrity": "sha512-qi5CP4ocseqdj3kMi0vgLx8XrdanLNvCAfgiEF6LjUJI88R2snZAYNUSd+Y2n04mKAalns+mUwfUN2JyL66d5g==", "dependencies": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -466,25 +458,25 @@ } }, "node_modules/@aws-sdk/fetch-http-handler": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.310.0.tgz", - "integrity": "sha512-Bi9vIwzdkw1zMcvi/zGzlWS9KfIEnAq4NNhsnCxbQ4OoIRU9wvU+WGZdBBhxg0ZxZmpp1j1aZhU53lLjA07MHw==", - "dependencies": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/querystring-builder": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.303.0.tgz", + "integrity": "sha512-Bc6C86/KQOSWPa741h9QEVcApyignYV5vC5+zZjmKkcyPxrVxTmL3kTJidpVOtVfCmTIrNN/WhAVDzLBbh1ycQ==", + "dependencies": { + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/querystring-builder": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/hash-node": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.310.0.tgz", - "integrity": "sha512-NvE2fhRc8GRwCXBfDehxVAWCmVwVMILliAKVPAEr4yz2CkYs0tqU51S48x23dtna07H4qHtgpeNqVTthcIQOEQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.303.0.tgz", + "integrity": "sha512-jSo4A/JxTabZ9jHrx7nhKIXnOmvPg/SSYnoHaFdVS5URJrNt1w+nSvW1wLGMEMOvu5+NU3bldBBSb+h0Ocwv1A==", "dependencies": { - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-buffer-from": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-buffer-from": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -492,18 +484,18 @@ } }, "node_modules/@aws-sdk/invalid-dependency": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.310.0.tgz", - "integrity": "sha512-1s5RG5rSPXoa/aZ/Kqr5U/7lqpx+Ry81GprQ2bxWqJvWQIJ0IRUwo5pk8XFxbKVr/2a+4lZT/c3OGoBOM1yRRA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.303.0.tgz", + "integrity": "sha512-RXNcLxOrUJaMMqk5uIYEf6X9XCMockT27bS8Dde/0ms015VOo8Wn2hHU9wEmGeFvLccC2UU4gPzvmj74w70q2Q==", "dependencies": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/is-array-buffer": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.310.0.tgz", - "integrity": "sha512-urnbcCR+h9NWUnmOtet/s4ghvzsidFmspfhYaHAmSRdy9yDjdjBJMFjjsn85A1ODUktztm+cVncXjQ38WCMjMQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.303.0.tgz", + "integrity": "sha512-IitBTr+pou7v5BrYLFH/SbIf3g1LIgMhcI3bDXBq2FjzmDftj4bW8BOmg05b9YKf2TrrggvJ4yk/jH+yYFXoJQ==", "dependencies": { "tslib": "^2.5.0" }, @@ -512,12 +504,12 @@ } }, "node_modules/@aws-sdk/middleware-content-length": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.325.0.tgz", - "integrity": "sha512-t38VBKCpNqSKqSu0OfWMJs7cwaRHFGQxIF9lV8JMCM/2lyUpN4JcfuzSTK+MFN2eDZEHp5DiNg8w07GXXusRYg==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.303.0.tgz", + "integrity": "sha512-0UL5TWSL1JRpjT6gjGsZXfia5oL7vxzj+CfMCqkP6gjVF69eRcgu426Xc6TJwDcr6jIFPeamDBTLyt9ZAAr6hg==", "dependencies": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -525,14 +517,14 @@ } }, "node_modules/@aws-sdk/middleware-endpoint": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.325.0.tgz", - "integrity": "sha512-3CavuOHCKiWUnCtzrUFbhbEP26qIgzzRs5C3vpOJhDUhugBubIWgPGGRLpbnIro+P4XJPwM3pMziNzhKVuSDlQ==", - "dependencies": { - "@aws-sdk/middleware-serde": "3.325.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", - "@aws-sdk/util-middleware": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.303.0.tgz", + "integrity": "sha512-z2i8LJ6YTKbqXh9rY/KbXihvhq6P0JVI6SnkwT2hesJp0Nfldx85jsaLzj1+ioNKlQ+51u9UmBnO404DgNCAbg==", + "dependencies": { + "@aws-sdk/middleware-serde": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", + "@aws-sdk/util-middleware": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -540,12 +532,12 @@ } }, "node_modules/@aws-sdk/middleware-host-header": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.325.0.tgz", - "integrity": "sha512-IN28gsxcRy4J+FxxCHvzb2NORBx8uMA+h9QYS4BBZfpKVYIZh+mudHgYcdNHWlKXmlTGjhWBNWTeByhzuSKAiA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.303.0.tgz", + "integrity": "sha512-LUyhtjbuosrD0QAsBZJwT3yp146I7Xjehf42OP3dWbRuklMEilI0Res5K2/nknf3/ZKUj6sf7BbJoU8E+SpRiQ==", "dependencies": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -553,11 +545,11 @@ } }, "node_modules/@aws-sdk/middleware-logger": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.325.0.tgz", - "integrity": "sha512-S8rWgTpN2b/+UDDm+yZMFM6rw1zwO8KT0GAIQbAhB96shyD5eKen/UfihCTB7YMvbD2piebymwJTvxv6bn1VqQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.303.0.tgz", + "integrity": "sha512-y2sqmmBdm4gXUL4SyN+ucfO/sxtOEDj2sB12ArRpDGyerfNLhAf7xpL4lXkjPx/7wTIjlBWoO2G/yK6t00P6fA==", "dependencies": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -565,12 +557,12 @@ } }, "node_modules/@aws-sdk/middleware-recursion-detection": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.325.0.tgz", - "integrity": "sha512-2l1ABF7KePsoKz8KaNvD2uxo1zHqkFHK4PL/wW/FbcwOcE08f0R7qX++st/bPpVjXX/j/5vWTnNNgJOIOrZhyw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.303.0.tgz", + "integrity": "sha512-z3MTsZMtPg6hYWl6a0o07q7zgsDXPYeP14XFVMc8NXqiAyNcm/OYwanpXyNjsEKI/X0nlpJ/Rs+IRCbaIqV9Mw==", "dependencies": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -578,15 +570,15 @@ } }, "node_modules/@aws-sdk/middleware-retry": { - "version": "3.327.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.327.0.tgz", - "integrity": "sha512-LCG+oRIPc4XJ+DYqkSCgggavxWi4+hP3Rw40vHdHMNvJpCiUJMwVJ+dULEywEP/WZvr4AEkWiRrHmJVpSLeZ+Q==", - "dependencies": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/service-error-classification": "3.327.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-middleware": "3.310.0", - "@aws-sdk/util-retry": "3.327.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.303.0.tgz", + "integrity": "sha512-wxlqrdGOrCm2Jsra7YyfLyO34YRB/FNlXzwuJiZkqoAb/40ZAuFcWqDv41SP44y8liFXqfsMGuywJ7mK2cHvnA==", + "dependencies": { + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/service-error-classification": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-middleware": "3.303.0", + "@aws-sdk/util-retry": "3.303.0", "tslib": "^2.5.0", "uuid": "^8.3.2" }, @@ -595,12 +587,12 @@ } }, "node_modules/@aws-sdk/middleware-sdk-sts": { - "version": "3.326.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.326.0.tgz", - "integrity": "sha512-suOkuXxyAfOH0hznK63ZU10EoytKX5YPs9amO416VbgYFtuIeliCmntYfnl1jUvutp0fctGGpEGE9OnoYI+fhw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.303.0.tgz", + "integrity": "sha512-igp7htNCUPhVL9Q6rJSgcx3qy/P2l2KAiS0oozOTaTXt3h0LbOusSXtwyA7qvLYeRthnw6msVW+rVBAW3Vo+3g==", "dependencies": { - "@aws-sdk/middleware-signing": "3.325.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/middleware-signing": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -608,11 +600,11 @@ } }, "node_modules/@aws-sdk/middleware-serde": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.325.0.tgz", - "integrity": "sha512-QAZYaFfAw1a06Vg39JiYIq0kSJ6EuUPOiKfK/Goj0cBv78lrXWuKdf04UF3U8Rqk/4mamnsTqUSwf4NoKkF0hw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.303.0.tgz", + "integrity": "sha512-mmZozwYKgUgXkJrLVqgIYoOQ8DfKZS3pBBT3ZxWzv5Hz5M3oRqFgfVYljkeDM2CTvBweHpqVRTWqPDMcZisucg==", "dependencies": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -620,15 +612,15 @@ } }, "node_modules/@aws-sdk/middleware-signing": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.325.0.tgz", - "integrity": "sha512-SOwPwaCE3vSCGwFzkIlnOUSkeCUzKTyIQnFVjlQkqGuMxMX/iDaQQGaX+HUbuGIuULCEQqjZH4dLKZcor8eVZw==", - "dependencies": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/signature-v4": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-middleware": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.303.0.tgz", + "integrity": "sha512-rrLQcS2wFsUGj9Kyx78LRgRS8jwiixz/Nyv06SmcKhP680sweETpQz/EA+wcVEVRXmUI6vs4NtqXz36dU0X8Nw==", + "dependencies": { + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/signature-v4": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-middleware": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -636,9 +628,9 @@ } }, "node_modules/@aws-sdk/middleware-stack": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.325.0.tgz", - "integrity": "sha512-cZWehA4grGvX1IKlY9atJgD0bq3ew7YRJgY7GA6DSgsU7GrZ61Qvi+H7IuGx5AdeAwaTnbnTGN4qCaA2EfxNhA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.303.0.tgz", + "integrity": "sha512-6KmdroXLexzILGxF/Xq0cGBs+B8Ipm1pff8qnWCT6KldYp+Q40bVcJrExkVHDN1uOsOxu20ixW2yujOKS356zg==", "dependencies": { "tslib": "^2.5.0" }, @@ -647,13 +639,13 @@ } }, "node_modules/@aws-sdk/middleware-user-agent": { - "version": "3.327.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.327.0.tgz", - "integrity": "sha512-4rDSNY1xhlqfRcY97CQKcgs6AOe4ovtiRdCAjg2InnLOZHRVFoHhOIDxWNK2W1K2Pl65z4EGH6RXmB1t0srJHA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.303.0.tgz", + "integrity": "sha512-ZVMVNxPRn2jXog3V4xWokSYoQxTKAdKlNoCfjqFplsF70r8sXfgZtOMF5ZhGo+Hgsx7GqpR/NWPKJtZD2nigpg==", "dependencies": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-endpoints": "3.327.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-endpoints": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -661,13 +653,13 @@ } }, "node_modules/@aws-sdk/node-config-provider": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.310.0.tgz", - "integrity": "sha512-T/Pp6htc6hq/Cq+MLNDSyiwWCMVF6GqbBbXKVlO5L8rdHx4sq9xPdoPveZhGWrxvkanjA6eCwUp6E0riBOSVng==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.303.0.tgz", + "integrity": "sha512-Ywbo9+2SkbdmNgCoxYJrv+YrFDtBH7hHtn2ywtzP4t57d4t0V/LNrNQsrAsXxqy48OS5r2ovOLHiqJS5jp1oyw==", "dependencies": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -675,14 +667,14 @@ } }, "node_modules/@aws-sdk/node-http-handler": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.328.0.tgz", - "integrity": "sha512-zxXdNfdSGi6w/1bopllxAYAufCGDNG2eLenR3Tjj/UVBGrvS4ME5NGInu6u4LirTdkSqYlZkqKMyfiZ6XxGfdQ==", - "dependencies": { - "@aws-sdk/abort-controller": "3.310.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/querystring-builder": "3.310.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.303.0.tgz", + "integrity": "sha512-5Te+mwBIOiQr2nM7/SNVFkvYHOH/CswOmUMV4Gxc7YjuervhrYvVFs2P+lL+c8rfiVMTLWjnJ6JiL2JdJfYgnQ==", + "dependencies": { + "@aws-sdk/abort-controller": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/querystring-builder": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -690,11 +682,11 @@ } }, "node_modules/@aws-sdk/property-provider": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.310.0.tgz", - "integrity": "sha512-3lxDb0akV6BBzmFe4nLPaoliQbAifyWJhuvuDOu7e8NzouvpQXs0275w9LePhhcgjKAEVXUIse05ZW2DLbxo/g==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.303.0.tgz", + "integrity": "sha512-d1qbn0pCz+jvB0dcWMWuIlWYM8dWCg3185ngMgUQxkgUk7/kEbwGBsmT+xtZAMQcwcgPkSm8qeATEQ7ToiH8eQ==", "dependencies": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -702,11 +694,11 @@ } }, "node_modules/@aws-sdk/protocol-http": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.310.0.tgz", - "integrity": "sha512-fgZ1aw/irQtnrsR58pS8ThKOWo57Py3xX6giRvwSgZDEcxHfVzuQjy9yPuV++v04fdmdtgpbGf8WfvAAJ11yXQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.303.0.tgz", + "integrity": "sha512-eqblSsdmKBzgNl06dUnL4toq/OQgZyxVsxHCz2nI/xBk5lI/qAZIJyEgP2GmP8aoWwneAq33roG0VLZoxQ8exg==", "dependencies": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -714,12 +706,12 @@ } }, "node_modules/@aws-sdk/querystring-builder": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.310.0.tgz", - "integrity": "sha512-ZHH8GV/80+pWGo7DzsvwvXR5xVxUHXUvPJPFAkhr6nCf78igdoF8gR10ScFoEKbtEapoNTaZlKHPXxpD8aPG7A==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.303.0.tgz", + "integrity": "sha512-0eMp2gd7Ro0svJ6YVnp9cUiGtrc1d/HynyMfbDkLkqWJAnHMz7Oc1GjK5YyL1hdxm0W+JWZCPR0SovLiaboKDw==", "dependencies": { - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-uri-escape": "3.310.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-uri-escape": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -727,11 +719,11 @@ } }, "node_modules/@aws-sdk/querystring-parser": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.310.0.tgz", - "integrity": "sha512-YkIznoP6lsiIUHinx++/lbb3tlMURGGqMpo0Pnn32zYzGrJXA6eC3D0as2EcMjo55onTfuLcIiX4qzXes2MYOA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.303.0.tgz", + "integrity": "sha512-KNJSQiTFiA7W5eYCox8bLGM7kghC3Azad86HQhdsYO0jCoPxcgj8MeP6T7fPTIC4WcTwcWb7T1MpzoeBiKMOTQ==", "dependencies": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -739,19 +731,19 @@ } }, "node_modules/@aws-sdk/service-error-classification": { - "version": "3.327.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.327.0.tgz", - "integrity": "sha512-bCWnw+uH3gI6yPxLi4a4WV71P1KlJU7Z4+iMBY1Gt4+ZsaPAJX9pAbuQcFhFH++4xTk/QaVMzSvD0uQ+u0B/NQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.303.0.tgz", + "integrity": "sha512-eO13PzdtRO9C+g3tyFOpIblX2SbDrIbg2bNtB8JOfjVi3E1b5VsSTXXU/cKV+lbZ9XMzMn3VzGSvpo6AjzfpxA==", "engines": { "node": ">=14.0.0" } }, "node_modules/@aws-sdk/shared-ini-file-loader": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.310.0.tgz", - "integrity": "sha512-N0q9pG0xSjQwc690YQND5bofm+4nfUviQ/Ppgan2kU6aU0WUq8KwgHJBto/YEEI+VlrME30jZJnxtOvcZJc2XA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.303.0.tgz", + "integrity": "sha512-yI84mnnh3pdQtIOo+oGWofaI0rvfhp3DOavB8KHIkQr+RcjF+fxsqbelRfVb25gx7yEWPNCMB8wM+HhklSEFJg==", "dependencies": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -759,16 +751,16 @@ } }, "node_modules/@aws-sdk/signature-v4": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.310.0.tgz", - "integrity": "sha512-1M60P1ZBNAjCFv9sYW29OF6okktaeibWyW3lMXqzoHF70lHBZh+838iUchznXUA5FLabfn4jBFWMRxlAXJUY2Q==", - "dependencies": { - "@aws-sdk/is-array-buffer": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-hex-encoding": "3.310.0", - "@aws-sdk/util-middleware": "3.310.0", - "@aws-sdk/util-uri-escape": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.303.0.tgz", + "integrity": "sha512-muw5yclLOgXPHIxv60mhO6R0GVjKbf+M6E/cWvIEVGq8Ke+mLMYNFYNdKP/f/8JgTtW2xwQ7pIK3U8x284ZqPw==", + "dependencies": { + "@aws-sdk/is-array-buffer": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-hex-encoding": "3.295.0", + "@aws-sdk/util-middleware": "3.303.0", + "@aws-sdk/util-uri-escape": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -776,12 +768,12 @@ } }, "node_modules/@aws-sdk/smithy-client": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.325.0.tgz", - "integrity": "sha512-sqDFuhjxd8+Q9qI8MmXe/g1/FgoViwetv14K+bpHK7pGlOIvDyT7TboDNClfgqSLdgTDCEaoC3JRSi9Y5RgbmA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.303.0.tgz", + "integrity": "sha512-WDTC9ODdpRAXo8+Mtr5hsPJeR3y3LxfZZFg5dplJgkaxV+MFdnsUCxZfAZMnxcGy5Q2qTzlLLNk9CpadS72v+g==", "dependencies": { - "@aws-sdk/middleware-stack": "3.325.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/middleware-stack": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -789,14 +781,14 @@ } }, "node_modules/@aws-sdk/token-providers": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.328.0.tgz", - "integrity": "sha512-AWrRwa0RqSiz9CT3QKuMYuZsRXaeKCp8kMsx1CgrG5VUaag+NhDBBMYVbxgb0SyoqbsGC+wDUXtSCZctrE7Z3Q==", - "dependencies": { - "@aws-sdk/client-sso-oidc": "3.328.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.303.0.tgz", + "integrity": "sha512-7G7VYbqyX0v6RTD/m7XmArZToMek4jYXR/TuuGHK6ifNJeMDwkU4BcoVDj37vvTPYp6qKU5IE+bE3XmPyVWnGQ==", + "dependencies": { + "@aws-sdk/client-sso-oidc": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -804,9 +796,9 @@ } }, "node_modules/@aws-sdk/types": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.310.0.tgz", - "integrity": "sha512-j8eamQJ7YcIhw7fneUfs8LYl3t01k4uHi4ZDmNRgtbmbmTTG3FZc2MotStZnp3nZB6vLiPF1o5aoJxWVvkzS6A==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.303.0.tgz", + "integrity": "sha512-H+Cy8JDTsK87MID6MJbV9ad5xdS9YvaLZSeveC2Zs1WNu2Rp6X9j+mg3EqDSmBKUQVAFRy2b+CSKkH3nnBMedw==", "dependencies": { "tslib": "^2.5.0" }, @@ -815,21 +807,21 @@ } }, "node_modules/@aws-sdk/url-parser": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.310.0.tgz", - "integrity": "sha512-mCLnCaSB9rQvAgx33u0DujLvr4d5yEm/W5r789GblwwQnlNXedVu50QRizMLTpltYWyAUoXjJgQnJHmJMaKXhw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.303.0.tgz", + "integrity": "sha512-PXMXGhr89s0MiPTf8Ft/v3sPzh2geSrFhTVSO/01blfBQqtuu0JMqORhLheOdi16AhQNVlYHDW2tWdx7/T+KsA==", "dependencies": { - "@aws-sdk/querystring-parser": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/querystring-parser": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/util-base64": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.310.0.tgz", - "integrity": "sha512-v3+HBKQvqgdzcbL+pFswlx5HQsd9L6ZTlyPVL2LS9nNXnCcR3XgGz9jRskikRUuUvUXtkSG1J88GAOnJ/apTPg==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.303.0.tgz", + "integrity": "sha512-oj+p/GHHPcZEKjiiOHU/CyNQeh8i+8dfMMzU+VGdoK5jHaVG8h2b+V7GPf7I4wDkG2ySCK5b5Jw5NUHwdTJ13Q==", "dependencies": { - "@aws-sdk/util-buffer-from": "3.310.0", + "@aws-sdk/util-buffer-from": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -837,17 +829,17 @@ } }, "node_modules/@aws-sdk/util-body-length-browser": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.310.0.tgz", - "integrity": "sha512-sxsC3lPBGfpHtNTUoGXMQXLwjmR0zVpx0rSvzTPAuoVILVsp5AU/w5FphNPxD5OVIjNbZv9KsKTuvNTiZjDp9g==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.303.0.tgz", + "integrity": "sha512-T643m0pKzgjAvPFy4W8zL+aszG3T22U8hb6stlMvT0z++Smv8QfIvkIkXjWyH2KlOt5GKliHwdOv8SAi0FSMJQ==", "dependencies": { "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/util-body-length-node": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.310.0.tgz", - "integrity": "sha512-2tqGXdyKhyA6w4zz7UPoS8Ip+7sayOg9BwHNidiGm2ikbDxm1YrCfYXvCBdwaJxa4hJfRVz+aL9e+d3GqPI9pQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.303.0.tgz", + "integrity": "sha512-/hS8z6e18Le60hJr2TUIFoUjUiAsnQsuDn6DxX74GXhMOHeSwZDJ9jHF39quYkNMmAE37GrVH4MI9vE0pN27qw==", "dependencies": { "tslib": "^2.5.0" }, @@ -856,11 +848,11 @@ } }, "node_modules/@aws-sdk/util-buffer-from": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.310.0.tgz", - "integrity": "sha512-i6LVeXFtGih5Zs8enLrt+ExXY92QV25jtEnTKHsmlFqFAuL3VBeod6boeMXkN2p9lbSVVQ1sAOOYZOHYbYkntw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.303.0.tgz", + "integrity": "sha512-hUU+NW+SW6RNojtAKnnmz+tDShVKlEx2YsS4a5fSfrKRUes+zWz10cxVX0RQfysd3R6tdSHhbjsSj8eCIybheg==", "dependencies": { - "@aws-sdk/is-array-buffer": "3.310.0", + "@aws-sdk/is-array-buffer": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -868,9 +860,9 @@ } }, "node_modules/@aws-sdk/util-config-provider": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.310.0.tgz", - "integrity": "sha512-xIBaYo8dwiojCw8vnUcIL4Z5tyfb1v3yjqyJKJWV/dqKUFOOS0U591plmXbM+M/QkXyML3ypon1f8+BoaDExrg==", + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.295.0.tgz", + "integrity": "sha512-/5Dl1aV2yI8YQjqwmg4RTnl/E9NmNsx7HIwBZt+dTcOrM0LMUwczQBFFcLyqCj/qv5y+VsvLoAAA/OiBT7hb3w==", "dependencies": { "tslib": "^2.5.0" }, @@ -879,12 +871,12 @@ } }, "node_modules/@aws-sdk/util-defaults-mode-browser": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.325.0.tgz", - "integrity": "sha512-gcowpXTo8E8N3jxD2KW+csiicJ7HPkhWnpL925xgwe0oq091OpATsKFrBOL18h72VfRWf4FAsR9lVwxSQ78zSA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.303.0.tgz", + "integrity": "sha512-jtZgCKelFe4/SHDHQu9ydbYttxSfqSlQojA5qxTJxLvzryIB+/GTHQ+sYWyMyzaD489W9elt1/cSsXd4LtPK0A==", "dependencies": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", "bowser": "^2.11.0", "tslib": "^2.5.0" }, @@ -893,15 +885,15 @@ } }, "node_modules/@aws-sdk/util-defaults-mode-node": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.325.0.tgz", - "integrity": "sha512-/5uoOrgNxoUxv3AwsdXjMA3f6KJA6fi69otA0RiINjilCdcbOxq5GI11AFEyRio/+e+imriX4+UYjsguUR+f4g==", - "dependencies": { - "@aws-sdk/config-resolver": "3.310.0", - "@aws-sdk/credential-provider-imds": "3.310.0", - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.303.0.tgz", + "integrity": "sha512-c86iyot/u9bCVcy/rlWL+0kdR51c7C2d2yDXvO9iFCdMKAs28Hw1ijGczVmOcUQ61zKNFSGYx+VekHXN9IWYOg==", + "dependencies": { + "@aws-sdk/config-resolver": "3.303.0", + "@aws-sdk/credential-provider-imds": "3.303.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -909,11 +901,11 @@ } }, "node_modules/@aws-sdk/util-endpoints": { - "version": "3.327.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.327.0.tgz", - "integrity": "sha512-2+2jTfBzhXsfpOci61gzaoBUVdGhFWja7k5cLAfOaRROkK+m+Zv532+m3cCQZjBXJ6pJ952MbiAroRSjFq0/SQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.303.0.tgz", + "integrity": "sha512-dPg9+l3VY3nclWFiWAVNWek5lQwgdtY8oRYOgCeyntce9FlNrPQgCRTVr36D0iQ0aNCs0GWzfjgL+rIdCF66/w==", "dependencies": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -921,9 +913,9 @@ } }, "node_modules/@aws-sdk/util-hex-encoding": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.310.0.tgz", - "integrity": "sha512-sVN7mcCCDSJ67pI1ZMtk84SKGqyix6/0A1Ab163YKn+lFBQRMKexleZzpYzNGxYzmQS6VanP/cfU7NiLQOaSfA==", + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.295.0.tgz", + "integrity": "sha512-XJcoVo41kHzhe28PBm/rqt5mdCp8R6abwiW9ug1dA6FOoPUO8kBUxDv6xaOmA2hfRvd2ocFfBXaUCBqUowkGcQ==", "dependencies": { "tslib": "^2.5.0" }, @@ -932,9 +924,9 @@ } }, "node_modules/@aws-sdk/util-locate-window": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.310.0.tgz", - "integrity": "sha512-qo2t/vBTnoXpjKxlsC2e1gBrRm80M3bId27r0BRB2VniSSe7bL1mmzM+/HFtujm0iAxtPM+aLEflLJlJeDPg0w==", + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.295.0.tgz", + "integrity": "sha512-d/s+zhUx5Kh4l/ecMP/TBjzp1GR/g89Q4nWH6+wH5WgdHsK+LG+vmsk6mVNuP/8wsCofYG4NBqp5Ulbztbm9QA==", "dependencies": { "tslib": "^2.5.0" }, @@ -943,9 +935,9 @@ } }, "node_modules/@aws-sdk/util-middleware": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.310.0.tgz", - "integrity": "sha512-FTSUKL/eRb9X6uEZClrTe27QFXUNNp7fxYrPndZwk1hlaOP5ix+MIHBcI7pIiiY/JPfOUmPyZOu+HetlFXjWog==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.303.0.tgz", + "integrity": "sha512-HAfBcbZw1+pY3dIEDM4jVpH1ViFcGH5s0q1dr+x4rcLGpMM3B4dH0HUgDPtycG8sw+nk+9jGgiEtgaCNOpJLGA==", "dependencies": { "tslib": "^2.5.0" }, @@ -954,11 +946,11 @@ } }, "node_modules/@aws-sdk/util-retry": { - "version": "3.327.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.327.0.tgz", - "integrity": "sha512-y15NLGTAT2vaLzA8klJ6Bo8NGjVAa3/njqc4iCbta/3GqKpQU0zbvw3Y5aWyHp8BhV4DSUTp088jWjaoZlSqgw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.303.0.tgz", + "integrity": "sha512-RWwRNjoWMcpDouz69wPuFXWFVzwYtUkTbJfa46SjKl1IwqMHS4f9yjJfCwJIoLOW9M/o2JB7nD0Ij3gqqzajLw==", "dependencies": { - "@aws-sdk/service-error-classification": "3.327.0", + "@aws-sdk/service-error-classification": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -966,26 +958,26 @@ } }, "node_modules/@aws-sdk/util-stream-browser": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.310.0.tgz", - "integrity": "sha512-bysXZHwFwvbqOTCScCdCnoLk1K3GCo0HRIYEZuL7O7MHrQmfaYRXcaft/p22+GUv9VeFXS/eJJZ5r4u32az94w==", - "dependencies": { - "@aws-sdk/fetch-http-handler": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", - "@aws-sdk/util-hex-encoding": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.303.0.tgz", + "integrity": "sha512-TYKCLR40IvQOBIkCJQFugLVDph0mdA69KbvCgTk4evpRub14fkQRapUBx/x4dsIajanvHv7OrQaJKUvyiDK6eQ==", + "dependencies": { + "@aws-sdk/fetch-http-handler": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-hex-encoding": "3.295.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/util-stream-node": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.328.0.tgz", - "integrity": "sha512-9h8oji5OTmatXMfPIasAapL59QDO7TR0J/B5Y3ERwGxy2U373LEy8Uvs+mbPIIQV1ztCLwHWDxKQoTUj4hLxoQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.303.0.tgz", + "integrity": "sha512-NR9waJzNXYu7QgiVmXpk64EcW9qbELpLSZ+BCMioJD3+023vJuibgq2Ue03DxRt5Uau2p568mvCRGNc3HqDM3A==", "dependencies": { - "@aws-sdk/node-http-handler": "3.328.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-buffer-from": "3.310.0", + "@aws-sdk/node-http-handler": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-buffer-from": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -993,9 +985,9 @@ } }, "node_modules/@aws-sdk/util-uri-escape": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.310.0.tgz", - "integrity": "sha512-drzt+aB2qo2LgtDoiy/3sVG8w63cgLkqFIa2NFlGpUgHFWTXkqtbgf4L5QdjRGKWhmZsnqkbtL7vkSWEcYDJ4Q==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.303.0.tgz", + "integrity": "sha512-N3ULNuHCL3QzAlCTY+XRRkRQTYCTU8RRuzFCJX0pDpz9t2K+tLT7DbxqupWGNFGl5Xlulf1Is14J3BP/Dx91rA==", "dependencies": { "tslib": "^2.5.0" }, @@ -1004,22 +996,22 @@ } }, "node_modules/@aws-sdk/util-user-agent-browser": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.310.0.tgz", - "integrity": "sha512-yU/4QnHHuQ5z3vsUqMQVfYLbZGYwpYblPiuZx4Zo9+x0PBkNjYMqctdDcrpoH9Z2xZiDN16AmQGK1tix117ZKw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.303.0.tgz", + "integrity": "sha512-Kex3abpUrTX9z129jiI8sfjIUmQDwiWjhkvBkPmrwjFY/sZcnOcXj5nP2iwJ+k6CnA5ZK5PjZ6P62t+eJ5MTXw==", "dependencies": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "bowser": "^2.11.0", "tslib": "^2.5.0" } }, "node_modules/@aws-sdk/util-user-agent-node": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.310.0.tgz", - "integrity": "sha512-Ra3pEl+Gn2BpeE7KiDGpi4zj7WJXZA5GXnGo3mjbi9+Y3zrbuhJAbdZO3mO/o7xDgMC6ph4xCTbaSGzU6b6EDg==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.303.0.tgz", + "integrity": "sha512-QYUg8F/Ho6AsVZaSSRMf/LWoEPDyOwgKZBw3AbKoH6RxAdAsdL1SXz5t4A6jHakP9TLVN2Yw2WRbHDe4LATASQ==", "dependencies": { - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -1035,11 +1027,11 @@ } }, "node_modules/@aws-sdk/util-utf8": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8/-/util-utf8-3.310.0.tgz", - "integrity": "sha512-DnLfFT8uCO22uOJc0pt0DsSNau1GTisngBCDw8jQuWT5CqogMJu4b/uXmwEqfj8B3GX6Xsz8zOd6JpRlPftQoA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8/-/util-utf8-3.303.0.tgz", + "integrity": "sha512-tZXVuMOIONPOuOGBs/XRdzxv6jUvTM620dRFFIHZwlGiW8bo0x0LlonrzDAJZA4e9ZwmxJIj8Ji13WVRBGvZWg==", "dependencies": { - "@aws-sdk/util-buffer-from": "3.310.0", + "@aws-sdk/util-buffer-from": "3.303.0", "tslib": "^2.5.0" }, "engines": { @@ -1063,34 +1055,34 @@ } }, "node_modules/@babel/compat-data": { - "version": "7.21.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.7.tgz", - "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", + "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/core": { - "version": "7.21.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz", - "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", - "dev": true, - "dependencies": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.5", - "@babel/helper-compilation-targets": "^7.21.5", - "@babel/helper-module-transforms": "^7.21.5", - "@babel/helpers": "^7.21.5", - "@babel/parser": "^7.21.8", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", + "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", + "dev": true, + "dependencies": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.2", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-module-transforms": "^7.20.2", + "@babel/helpers": "^7.20.1", + "@babel/parser": "^7.20.2", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", + "json5": "^2.2.1", "semver": "^6.3.0" }, "engines": { @@ -1102,9 +1094,9 @@ } }, "node_modules/@babel/core/node_modules/@babel/code-frame": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", - "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dev": true, "dependencies": { "@babel/highlight": "^7.18.6" @@ -1123,30 +1115,42 @@ } }, "node_modules/@babel/generator": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.5.tgz", - "integrity": "sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==", + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", + "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", "dev": true, "dependencies": { - "@babel/types": "^7.21.5", + "@babel/types": "^7.20.2", "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" }, "engines": { "node": ">=6.9.0" } }, + "node_modules/@babel/generator/node_modules/@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "dependencies": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + }, + "engines": { + "node": ">=6.0.0" + } + }, "node_modules/@babel/helper-compilation-targets": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz", - "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", + "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", "dev": true, "dependencies": { - "@babel/compat-data": "^7.21.5", - "@babel/helper-validator-option": "^7.21.0", + "@babel/compat-data": "^7.20.0", + "@babel/helper-validator-option": "^7.18.6", "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", "semver": "^6.3.0" }, "engines": { @@ -1156,15 +1160,6 @@ "@babel/core": "^7.0.0" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "dependencies": { - "yallist": "^3.0.2" - } - }, "node_modules/@babel/helper-compilation-targets/node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -1174,29 +1169,23 @@ "semver": "bin/semver.js" } }, - "node_modules/@babel/helper-compilation-targets/node_modules/yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true - }, "node_modules/@babel/helper-environment-visitor": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz", - "integrity": "sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-function-name": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", - "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", "dev": true, "dependencies": { - "@babel/template": "^7.20.7", - "@babel/types": "^7.21.0" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" }, "engines": { "node": ">=6.9.0" @@ -1215,43 +1204,43 @@ } }, "node_modules/@babel/helper-module-imports": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", - "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", "dev": true, "dependencies": { - "@babel/types": "^7.21.4" + "@babel/types": "^7.18.6" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-module-transforms": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz", - "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", + "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", "dev": true, "dependencies": { - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-module-imports": "^7.21.4", - "@babel/helper-simple-access": "^7.21.5", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", "@babel/helper-split-export-declaration": "^7.18.6", "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helper-simple-access": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", - "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", "dev": true, "dependencies": { - "@babel/types": "^7.21.5" + "@babel/types": "^7.20.2" }, "engines": { "node": ">=6.9.0" @@ -1270,9 +1259,9 @@ } }, "node_modules/@babel/helper-string-parser": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz", - "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==", + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", "dev": true, "engines": { "node": ">=6.9.0" @@ -1287,23 +1276,23 @@ } }, "node_modules/@babel/helper-validator-option": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", - "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", "dev": true, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/helpers": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.5.tgz", - "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", + "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", "dev": true, "dependencies": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.0" }, "engines": { "node": ">=6.9.0" @@ -1387,9 +1376,9 @@ } }, "node_modules/@babel/parser": { - "version": "7.21.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.8.tgz", - "integrity": "sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==", + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", + "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==", "bin": { "parser": "bin/babel-parser.js" }, @@ -1398,23 +1387,23 @@ } }, "node_modules/@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", "dev": true, "dependencies": { "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" }, "engines": { "node": ">=6.9.0" } }, "node_modules/@babel/template/node_modules/@babel/code-frame": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", - "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dev": true, "dependencies": { "@babel/highlight": "^7.18.6" @@ -1424,19 +1413,19 @@ } }, "node_modules/@babel/traverse": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.5.tgz", - "integrity": "sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", + "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", "dev": true, "dependencies": { - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.5", - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-function-name": "^7.21.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.5", - "@babel/types": "^7.21.5", + "@babel/parser": "^7.20.1", + "@babel/types": "^7.20.0", "debug": "^4.1.0", "globals": "^11.1.0" }, @@ -1445,9 +1434,9 @@ } }, "node_modules/@babel/traverse/node_modules/@babel/code-frame": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", - "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dev": true, "dependencies": { "@babel/highlight": "^7.18.6" @@ -1466,12 +1455,12 @@ } }, "node_modules/@babel/types": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.5.tgz", - "integrity": "sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", + "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", "dev": true, "dependencies": { - "@babel/helper-string-parser": "^7.21.5", + "@babel/helper-string-parser": "^7.19.4", "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" }, @@ -1500,20 +1489,20 @@ } }, "node_modules/@google-cloud/text-to-speech": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@google-cloud/text-to-speech/-/text-to-speech-4.2.2.tgz", - "integrity": "sha512-tpfjyS86ieOYCG8sRBaoS0EVUouWTO5NC2rAsMyQZKjAhS6Y+u4evRPEpHg0Q42oKRwhphBCkU0Uvro34lRA8g==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@google-cloud/text-to-speech/-/text-to-speech-4.2.1.tgz", + "integrity": "sha512-7UpvE5daaNg0hX1m8jmLR2uZTalgd7xm5vqotQbovdhF1nQ9EU0x48XUsVNiXroKOXZ3GDqJCGhGw4vC2Xp03w==", "dependencies": { - "google-gax": "^3.5.8" + "google-gax": "^3.5.2" }, "engines": { "node": ">=12.0.0" } }, "node_modules/@grpc/grpc-js": { - "version": "1.8.14", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.8.14.tgz", - "integrity": "sha512-w84maJ6CKl5aApCMzFll0hxtFNT6or9WwMslobKaqWUEf1K+zhlL43bSQhFreyYWIWR+Z0xnVFC1KtLm4ZpM/A==", + "version": "1.8.13", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.8.13.tgz", + "integrity": "sha512-iY3jsdfbc0ARoCLFvbvUB8optgyb0r1XLPb142u+QtgBcKJYkCIFt3Fd/881KqjLYWjsBJF57N3b8Eop9NDfUA==", "dependencies": { "@grpc/proto-loader": "^0.7.0", "@types/node": ">=12.12.47" @@ -1523,15 +1512,15 @@ } }, "node_modules/@grpc/proto-loader": { - "version": "0.7.7", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.7.tgz", - "integrity": "sha512-1TIeXOi8TuSCQprPItwoMymZXxWT0CPxUhkrkeCUH+D8U7QDwQ6b7SUz2MaLuWM2llT+J/TVFLmQI5KtML3BhQ==", + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.6.tgz", + "integrity": "sha512-QyAXR8Hyh7uMDmveWxDSUcJr9NAWaZ2I6IXgAYvQmfflwouTM+rArE2eEaCtLlRqO81j7pRLCt81IefUei6Zbw==", "dependencies": { "@types/long": "^4.0.1", "lodash.camelcase": "^4.3.0", "long": "^4.0.0", "protobufjs": "^7.0.0", - "yargs": "^17.7.2" + "yargs": "^16.2.0" }, "bin": { "proto-loader-gen-types": "build/bin/proto-loader-gen-types.js" @@ -1576,15 +1565,6 @@ "node": ">=8" } }, - "node_modules/@istanbuljs/load-nyc-config/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/@istanbuljs/schema": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", @@ -1595,12 +1575,12 @@ } }, "node_modules/@jambonz/db-helpers": { - "version": "0.7.9", - "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.9.tgz", - "integrity": "sha512-JajIJSPXW0OTjVprDwTH8/yU/qhHY1XkXe6f5PRh0kvRt42AmYggcGKqgivUkY1seR/GVCnQccDcIA2ZEdvDUg==", + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.4.tgz", + "integrity": "sha512-sR3f+RpCrSWkZ7E8qjO9/Fgsa8aBuNkm4Ubr6To0K9GDsE9rb9dsYUGpXN/0f9CGn7jc4icc53OBkt+iM2PbCw==", "dependencies": { "cidr-matcher": "^2.1.1", - "debug": "^4.3.4", + "debug": "^4.3.3", "mysql2": "^2.3.3", "node-object-hash": "^2.3.10", "uuid": "^8.3.2" @@ -1629,9 +1609,9 @@ } }, "node_modules/@jambonz/realtimedb-helpers": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.2.tgz", - "integrity": "sha512-hTlMw0pmwNHTAQVm3O1asHllRSwi5C+kLXjqZN4C8bdw08f6CY48qdX/aNHLlx5TWI1I5l0ReO745KrUFVPA6w==", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.0.tgz", + "integrity": "sha512-hu+CcV0jzQU6J4vW8bBEz52NqEroLHOB0wjVb/VmSL4N0+MAJ1wbPUNk8go5aMk809Vr/Od2z9nHInGnTiBHzA==", "dependencies": { "@jambonz/promisify-redis": "^0.0.6", "debug": "^4.3.4", @@ -1675,10 +1655,26 @@ "influx": "^5.9.3" } }, + "node_modules/@jambonz/tracing": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.5.tgz", + "integrity": "sha512-tjKwBLyXNcDO3uxuvZsOeLRB+3uyVkVRI3kPpEYBdfKSFfAxuWQoOfatodVJ7V5DU2eve8Z1wGK7RoLkacKFRQ==", + "dependencies": { + "@opentelemetry/api": "^1.4.0", + "@opentelemetry/exporter-jaeger": "^1.9.0", + "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", + "@opentelemetry/exporter-zipkin": "^1.9.0", + "@opentelemetry/instrumentation": "^0.35.0", + "@opentelemetry/resources": "^1.9.0", + "@opentelemetry/sdk-trace-base": "^1.9.0", + "@opentelemetry/sdk-trace-node": "^1.9.0", + "@opentelemetry/semantic-conventions": "^1.9.0" + } + }, "node_modules/@jambonz/verb-specifications": { - "version": "0.0.21", - "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.21.tgz", - "integrity": "sha512-NQTQLI0k7nFmjqiKIbPaux2+ES2etFh/hnMNzPbszXS313mAnMZtv7y+EWrbniXeiXMCwHbkavm1H/N8+Lv5Qg==", + "version": "0.0.14", + "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.14.tgz", + "integrity": "sha512-yT7I8PmBgmt+GTCno4F5ryL4CQrgIVsE2YUfVjCMg09pjnrumdKVqArFXW8KZsNzbCKjhVTtQE60kJd6gWCQfg==", "dependencies": { "debug": "^4.3.4", "pino": "^8.8.0" @@ -1700,14 +1696,13 @@ } }, "node_modules/@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", "dev": true, "dependencies": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" }, "engines": { "node": ">=6.0.0" @@ -1732,27 +1727,21 @@ } }, "node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", "dev": true }, "node_modules/@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", "dev": true, "dependencies": { "@jridgewell/resolve-uri": "3.1.0", "@jridgewell/sourcemap-codec": "1.4.14" } }, - "node_modules/@jridgewell/trace-mapping/node_modules/@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - }, "node_modules/@jsdoc/salty": { "version": "0.2.5", "resolved": "https://registry.npmjs.org/@jsdoc/salty/-/salty-0.2.5.tgz", @@ -1765,17 +1754,17 @@ } }, "node_modules/@opentelemetry/api": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.1.tgz", - "integrity": "sha512-O2yRJce1GOc6PAy3QxFM4NzFiWzvScDC1/5ihYBL6BUEVdq0XMWN01sppE+H6bBXbaFYipjwFLEWLg5PaSOThA==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.0.tgz", + "integrity": "sha512-IgMK9i3sFGNUqPMbjABm0G26g0QCKCUBfglhQ7rQq6WcxbKfEHRcmwsoER4hZcuYqJgkYn2OeuoJIv7Jsftp7g==", "engines": { "node": ">=8.0.0" } }, "node_modules/@opentelemetry/context-async-hooks": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.12.0.tgz", - "integrity": "sha512-PmwAanPNWCyS9JYFzhzVzHgviLhc0UHjOwdth+hp3HgQQ9XZZNE635P8JhAUHZmbghW9/qQFafRWOS4VN9VVnQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.9.0.tgz", + "integrity": "sha512-Ur+TgRmJgAEvg6VQuhkqzsWsqoOtr+QSZ8r8Yf6WrvlZpAl/sdRU+yUXWjA7r8JFS9VbBq7IEp7oMStFuJT2ow==", "engines": { "node": ">=14" }, @@ -1784,11 +1773,11 @@ } }, "node_modules/@opentelemetry/core": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.12.0.tgz", - "integrity": "sha512-4DWYNb3dLs2mSCGl65jY3aEgbvPWSHVQV/dmDWiYeWUrMakZQFcymqZOSUNZO0uDrEJoxMu8O5tZktX6UKFwag==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.0.tgz", + "integrity": "sha512-Koy1ApRUp5DB5KpOqhDk0JjO9x6QeEkmcePl8qQDsXZGF4MuHUBShXibd+J2tRNckTsvgEHi1uEuUckDgN+c/A==", "dependencies": { - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/semantic-conventions": "1.9.0" }, "engines": { "node": ">=14" @@ -1798,13 +1787,13 @@ } }, "node_modules/@opentelemetry/exporter-jaeger": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.12.0.tgz", - "integrity": "sha512-MGWslvok6tlNCHexHGnfXrSyobBqUDh4YOLENt2MeQ/F974SyVG4e73TD/CDM+227/rRM587hJ8dQBzvwUac/g==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.9.0.tgz", + "integrity": "sha512-XLsDLuTqQyw08s0n03zeqmz2ike/iQHiep819SJliJnJJKMbGta+JvaWWgrh/YUEYlbBLc/mQP1cndXtd8lbaA==", "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0", + "@opentelemetry/core": "1.9.0", + "@opentelemetry/sdk-trace-base": "1.9.0", + "@opentelemetry/semantic-conventions": "1.9.0", "jaeger-client": "^3.15.0" }, "engines": { @@ -1815,15 +1804,15 @@ } }, "node_modules/@opentelemetry/exporter-trace-otlp-http": { - "version": "0.35.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.35.1.tgz", - "integrity": "sha512-EJgAsrvscKsqb/GzF1zS74vM+Z/aQRhrFE7hs/1GK1M9bLixaVyMGwg2pxz1wdYdjxS1mqpHMhXU+VvMvFCw1w==", + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.35.0.tgz", + "integrity": "sha512-wb5XqkTYq0uES65gIyjF5WZjUZooog/Dd2eP+AKOGJ9n5eewvvLjebC9qmFm0ZjHsTw7hzxnQVX/CvhD3NeVHw==", "dependencies": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/otlp-exporter-base": "0.35.1", - "@opentelemetry/otlp-transformer": "0.35.1", - "@opentelemetry/resources": "1.9.1", - "@opentelemetry/sdk-trace-base": "1.9.1" + "@opentelemetry/core": "1.9.0", + "@opentelemetry/otlp-exporter-base": "0.35.0", + "@opentelemetry/otlp-transformer": "0.35.0", + "@opentelemetry/resources": "1.9.0", + "@opentelemetry/sdk-trace-base": "1.9.0" }, "engines": { "node": ">=14" @@ -1832,68 +1821,15 @@ "@opentelemetry/api": "^1.0.0" } }, - "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/core": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", - "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", - "dependencies": { - "@opentelemetry/semantic-conventions": "1.9.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" - } - }, - "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/resources": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", - "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", - "dependencies": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/semantic-conventions": "1.9.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" - } - }, - "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/sdk-trace-base": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.1.tgz", - "integrity": "sha512-Y9gC5M1efhDLYHeeo2MWcDDMmR40z6QpqcWnPCm4Dmh+RHAMf4dnEBBntIe1dDpor686kyU6JV1D29ih1lZpsQ==", - "dependencies": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/resources": "1.9.1", - "@opentelemetry/semantic-conventions": "1.9.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" - } - }, - "node_modules/@opentelemetry/exporter-trace-otlp-http/node_modules/@opentelemetry/semantic-conventions": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", - "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==", - "engines": { - "node": ">=14" - } - }, "node_modules/@opentelemetry/exporter-zipkin": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.12.0.tgz", - "integrity": "sha512-HJ4ww7OjVIV4x5ZGgY+h+D1JS0GsCtnHuqZUVHl7EFFQxMGpbQcf5eISRtwqgQwlQKh2iqrEbiHdDyzbgA/7XQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.9.0.tgz", + "integrity": "sha512-+AghaRdhSritrXmB/zoreOheNVuDOWOy/LK/W4odCRtkM/WprpHCOVj5eN8/zqg0LVeE9AbVMODk//eR0lu2fA==", "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.9.0", + "@opentelemetry/resources": "1.9.0", + "@opentelemetry/sdk-trace-base": "1.9.0", + "@opentelemetry/semantic-conventions": "1.9.0" }, "engines": { "node": ">=14" @@ -1903,9 +1839,9 @@ } }, "node_modules/@opentelemetry/instrumentation": { - "version": "0.35.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.1.tgz", - "integrity": "sha512-EZsvXqxenbRTSNsft6LDcrT4pjAiyZOx3rkDNeqKpwZZe6GmZtsXaZZKuDkJtz9fTjOGjDHjZj9/h80Ya9iIJw==", + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.0.tgz", + "integrity": "sha512-pQ5shVG53acTtq72DF7kx+4690ZKh3lATMRqf2JDMRvn0bcX/JaQ+NjPmt7oyT3h9brMA1rSFMVFS6yj8kd2OQ==", "dependencies": { "require-in-the-middle": "^5.0.3", "semver": "^7.3.2", @@ -1919,11 +1855,11 @@ } }, "node_modules/@opentelemetry/otlp-exporter-base": { - "version": "0.35.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.1.tgz", - "integrity": "sha512-Sc0buJIs8CfUeQCL/12vDDjBREgsqHdjboBa/kPQDgMf008OBJSM02Ijj6T1TH+QVHl/VHBBEVJF+FTf0EH9Vg==", + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.0.tgz", + "integrity": "sha512-ybXq1Dvg38ZwiNCtqRCRmJ93rP7jMhL8nHEYVXNKknPVplUoY9fsb8tCPi24iY1suAD98wAMy3hiHk4W8VqfSg==", "dependencies": { - "@opentelemetry/core": "1.9.1" + "@opentelemetry/core": "1.9.0" }, "engines": { "node": ">=14" @@ -1932,37 +1868,15 @@ "@opentelemetry/api": "^1.0.0" } }, - "node_modules/@opentelemetry/otlp-exporter-base/node_modules/@opentelemetry/core": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", - "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", - "dependencies": { - "@opentelemetry/semantic-conventions": "1.9.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" - } - }, - "node_modules/@opentelemetry/otlp-exporter-base/node_modules/@opentelemetry/semantic-conventions": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", - "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==", - "engines": { - "node": ">=14" - } - }, "node_modules/@opentelemetry/otlp-transformer": { - "version": "0.35.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.35.1.tgz", - "integrity": "sha512-c0HXcJ49MKoWSaA49J8PXlVx48CeEFpL0odP6KBkVT+Bw6kAe8JlI3mIezyN05VCDJGtS2I5E6WEsE+DJL1t9A==", + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.35.0.tgz", + "integrity": "sha512-XjxX6RLHYKadQNEVs7TT7YRwEhXzP8itLiu6en2P7HukSg0gTwOMhNzriBZBRC4q+HVsdnncWua1wCD1TBAfmg==", "dependencies": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/resources": "1.9.1", - "@opentelemetry/sdk-metrics": "1.9.1", - "@opentelemetry/sdk-trace-base": "1.9.1" + "@opentelemetry/core": "1.9.0", + "@opentelemetry/resources": "1.9.0", + "@opentelemetry/sdk-metrics": "1.9.0", + "@opentelemetry/sdk-trace-base": "1.9.0" }, "engines": { "node": ">=14" @@ -1971,65 +1885,12 @@ "@opentelemetry/api": ">=1.3.0 <1.5.0" } }, - "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/core": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", - "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", - "dependencies": { - "@opentelemetry/semantic-conventions": "1.9.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" - } - }, - "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/resources": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", - "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", - "dependencies": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/semantic-conventions": "1.9.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" - } - }, - "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/sdk-trace-base": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.1.tgz", - "integrity": "sha512-Y9gC5M1efhDLYHeeo2MWcDDMmR40z6QpqcWnPCm4Dmh+RHAMf4dnEBBntIe1dDpor686kyU6JV1D29ih1lZpsQ==", - "dependencies": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/resources": "1.9.1", - "@opentelemetry/semantic-conventions": "1.9.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" - } - }, - "node_modules/@opentelemetry/otlp-transformer/node_modules/@opentelemetry/semantic-conventions": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", - "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==", - "engines": { - "node": ">=14" - } - }, "node_modules/@opentelemetry/propagator-b3": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.12.0.tgz", - "integrity": "sha512-WFcn98075QPc2zE1obhKydJHUehI5/HuLoelPEVwATj+487hjCwjHj9r2fgmQkWpvuNSB7CJaA0ys6qqq1N6lg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.9.0.tgz", + "integrity": "sha512-5M/NvJj7ZHZXEU8lkAFhrSrWaHmCCkFLstNbL8p16qpTn1AOZowuSjMOYRoJJBmL5PUobkZ3W8Gjov1UgldPBg==", "dependencies": { - "@opentelemetry/core": "1.12.0" + "@opentelemetry/core": "1.9.0" }, "engines": { "node": ">=14" @@ -2039,11 +1900,11 @@ } }, "node_modules/@opentelemetry/propagator-jaeger": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.12.0.tgz", - "integrity": "sha512-ugtWF7GC6X5RIJ0+iMwW2iVAGNs206CAeq8XQ8OkJRg+v0lp4H0/i+gJ4hubTT8NIL5a3IxtIrAENPLIGdLucQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.9.0.tgz", + "integrity": "sha512-oo8RyuyzEbbXdIfeEG9iA5vmTH4Kld+dZMIZICd5G5SmeNcNes3sLrparpunIGms41wIP2mWiIlcOelDCmGceg==", "dependencies": { - "@opentelemetry/core": "1.12.0" + "@opentelemetry/core": "1.9.0" }, "engines": { "node": ">=14" @@ -2053,12 +1914,12 @@ } }, "node_modules/@opentelemetry/resources": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.12.0.tgz", - "integrity": "sha512-gunMKXG0hJrR0LXrqh7BVbziA/+iJBL3ZbXCXO64uY+SrExkwoyJkpiq9l5ismkGF/A20mDEV7tGwh+KyPw00Q==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.0.tgz", + "integrity": "sha512-zCyien0p3XWarU6zv72c/JZ6QlG5QW/hc61Nh5TSR1K9ndnljzAGrH55x4nfyQdubfoh9QxLNh9FXH0fWK6vcg==", "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.9.0", + "@opentelemetry/semantic-conventions": "1.9.0" }, "engines": { "node": ">=14" @@ -2068,12 +1929,12 @@ } }, "node_modules/@opentelemetry/sdk-metrics": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.9.1.tgz", - "integrity": "sha512-AyhKDcA8NuV7o1+9KvzRMxNbATJ8AcrutKilJ6hWSo9R5utnzxgffV4y+Hp4mJn84iXxkv+CBb99GOJ2A5OMzA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.9.0.tgz", + "integrity": "sha512-fSlJWhp86kCan1zuxdH6LTyUBYlohQwDKnxep5qHMnRTNErkYmdjgsmjZvSMdAfUFtQqfZmTXe2Lap7a5AIf9Q==", "dependencies": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/resources": "1.9.1", + "@opentelemetry/core": "1.9.0", + "@opentelemetry/resources": "1.9.0", "lodash.merge": "4.6.2" }, "engines": { @@ -2083,51 +1944,14 @@ "@opentelemetry/api": ">=1.3.0 <1.5.0" } }, - "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/core": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", - "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", - "dependencies": { - "@opentelemetry/semantic-conventions": "1.9.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" - } - }, - "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/resources": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", - "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", - "dependencies": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/semantic-conventions": "1.9.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": ">=1.0.0 <1.5.0" - } - }, - "node_modules/@opentelemetry/sdk-metrics/node_modules/@opentelemetry/semantic-conventions": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", - "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==", - "engines": { - "node": ">=14" - } - }, "node_modules/@opentelemetry/sdk-trace-base": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.12.0.tgz", - "integrity": "sha512-pfCOB3tNDlYVoWuz4D7Ji+Jmy9MHnATWHVpkERdCEiwUGEZ+4IvNPXUcPc37wJVmMpjGLeaWgPPrie0KIpWf1A==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.0.tgz", + "integrity": "sha512-glNgtJjxAIrDku8DG5Xu3nBK25rT+hkyg7yuXh8RUurp/4BcsXjMyVqpyJvb2kg+lxAX73VJBhncRKGHn9t8QQ==", "dependencies": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.9.0", + "@opentelemetry/resources": "1.9.0", + "@opentelemetry/semantic-conventions": "1.9.0" }, "engines": { "node": ">=14" @@ -2137,15 +1961,15 @@ } }, "node_modules/@opentelemetry/sdk-trace-node": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.12.0.tgz", - "integrity": "sha512-PxpDemnNZLLeFNLAu95/K3QubjlaScXVjVQPlwPui65VRxIvxGVysnN7DFfsref+qoh1hI6nlrYSij43vxdm2w==", - "dependencies": { - "@opentelemetry/context-async-hooks": "1.12.0", - "@opentelemetry/core": "1.12.0", - "@opentelemetry/propagator-b3": "1.12.0", - "@opentelemetry/propagator-jaeger": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.9.0.tgz", + "integrity": "sha512-VTpjiqGQ4s8f0/szgZmVrtNSSmXFNoHwC4PNVwXyNeEqQcqyAygHvobpUG6m7qCiBFh6ZtrCuLdhhqWE04Objw==", + "dependencies": { + "@opentelemetry/context-async-hooks": "1.9.0", + "@opentelemetry/core": "1.9.0", + "@opentelemetry/propagator-b3": "1.9.0", + "@opentelemetry/propagator-jaeger": "1.9.0", + "@opentelemetry/sdk-trace-base": "1.9.0", "semver": "^7.3.5" }, "engines": { @@ -2156,9 +1980,9 @@ } }, "node_modules/@opentelemetry/semantic-conventions": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.12.0.tgz", - "integrity": "sha512-hO+bdeGOlJwqowUBoZF5LyP3ORUFOP1G0GRv8N45W/cztXbT2ZEXaAzfokRS9Xc9FWmYrDj32mF6SzH6wuoIyA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.0.tgz", + "integrity": "sha512-po7penSfQ/Z8352lRVDpaBrd9znwA5mHGqXR7nDEiVnxkDFkBIhVf/tKeAJDIq/erFpcRowKFeCsr5eqqcSyFQ==", "engines": { "node": ">=14" } @@ -2218,9 +2042,9 @@ "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==" }, "node_modules/@sinonjs/commons": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", - "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", + "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" } @@ -2233,32 +2057,16 @@ "@sinonjs/commons": "^2.0.0" } }, - "node_modules/@sinonjs/fake-timers/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/samsam": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.0.tgz", - "integrity": "sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==", + "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/samsam/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/text-encoding": { "version": "0.7.2", "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz", @@ -2270,9 +2078,9 @@ "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" }, "node_modules/@types/async": { - "version": "3.2.20", - "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.20.tgz", - "integrity": "sha512-6jSBQQugzyX1aWto0CbvOnmxrU9tMoXfA9gc4IrLEtvr3dTwSg5GLGoWiZnGLI6UG/kqpB3JOQKQrqnhUWGKQA==" + "version": "3.2.18", + "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.18.tgz", + "integrity": "sha512-/IsuXp3B9R//uRLi40VlIYoMp7OzhkunPe2fDu7jGfQXI9y3CDCx6FC4juRLSqrpmLst3vgsiK536AAGJFl4Ww==" }, "node_modules/@types/extend": { "version": "3.0.1", @@ -2352,9 +2160,9 @@ "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==" }, "node_modules/@types/node": { - "version": "20.1.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.0.tgz", - "integrity": "sha512-O+z53uwx64xY7D6roOi4+jApDGFg0qn6WHcxe5QeqjMaTezBO/mxdfFXIVAVVyNWKx84OmPB3L8kbVYOTeN34A==" + "version": "18.15.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz", + "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==" }, "node_modules/@types/rimraf": { "version": "3.0.2", @@ -2549,19 +2357,6 @@ "sprintf-js": "~1.0.2" } }, - "node_modules/array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", @@ -2593,6 +2388,36 @@ "node": ">=8" } }, + "node_modules/asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "dependencies": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/asn1.js-rfc2560": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/asn1.js-rfc2560/-/asn1.js-rfc2560-5.0.1.tgz", + "integrity": "sha512-1PrVg6kuBziDN3PGFmRk3QrjpKvP9h/Hv5yMrFZvC1kpzP6dQRzf5BpKstANqHBkaOUmTpakJWhicTATOA/SbA==", + "dependencies": { + "asn1.js-rfc5280": "^3.0.0" + }, + "peerDependencies": { + "asn1.js": "^5.0.0" + } + }, + "node_modules/asn1.js-rfc5280": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/asn1.js-rfc5280/-/asn1.js-rfc5280-3.0.0.tgz", + "integrity": "sha512-Y2LZPOWeZ6qehv698ZgOGGCZXBQShObWnGthTrIFlIQjuV1gg2B8QOhWFRExq/MR1VnPpIIe7P9vX2vElxv+Pg==", + "dependencies": { + "asn1.js": "^5.0.0" + } + }, "node_modules/assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", @@ -2615,6 +2440,23 @@ "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" }, + "node_modules/async-disk-cache": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/async-disk-cache/-/async-disk-cache-2.1.0.tgz", + "integrity": "sha512-iH+boep2xivfD9wMaZWkywYIURSmsL96d6MoqrC94BnGSvXE4Quf8hnJiHGFYhw/nLeIa1XyRaf4vvcvkwAefg==", + "dependencies": { + "debug": "^4.1.1", + "heimdalljs": "^0.2.3", + "istextorbinary": "^2.5.1", + "mkdirp": "^0.5.0", + "rimraf": "^3.0.0", + "rsvp": "^4.8.5", + "username-sync": "^1.0.2" + }, + "engines": { + "node": "8.* || >= 10.*" + } + }, "node_modules/asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -2640,9 +2482,9 @@ } }, "node_modules/aws-sdk": { - "version": "2.1373.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1373.0.tgz", - "integrity": "sha512-3/P79VU2VVeiof25bn8TSepEhWCRhwuQGYoEWX/2pApQRJAY+w/3JFVKHjbAe3NYEEBNeiAE6PQ9DqWz5Pp+Lw==", + "version": "2.1313.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1313.0.tgz", + "integrity": "sha512-8GMdtV2Uch3HL2c6+P3lNZFTcg/fqq9L3EWYRLb6ljCZvWKTssjdkjSJFDyTReNgeiKV224YRPYQbKpOEz4flQ==", "dependencies": { "buffer": "4.9.2", "events": "1.1.1", @@ -2653,7 +2495,7 @@ "url": "0.10.3", "util": "^0.12.4", "uuid": "8.0.0", - "xml2js": "0.5.0" + "xml2js": "0.4.19" }, "engines": { "node": ">= 10.0.0" @@ -2667,6 +2509,23 @@ "uuid": "dist/bin/uuid" } }, + "node_modules/aws-sdk/node_modules/xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "dependencies": { + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" + } + }, + "node_modules/aws-sdk/node_modules/xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha512-7YXTQc3P2l9+0rjaUbLwMKRhtmwg1M1eDf6nag7urC7pIPYLD9W/jmzQ4ptRSUbodw5S0jfoGTflLemQibSpeQ==", + "engines": { + "node": ">=4.0" + } + }, "node_modules/axios": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/axios/-/axios-1.2.1.tgz", @@ -2732,6 +2591,17 @@ "node": "*" } }, + "node_modules/binaryextensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binaryextensions/-/binaryextensions-2.3.0.tgz", + "integrity": "sha512-nAihlQsYGyc5Bwq6+EsubvANYGExeJKHDO3RjnvwU042fawQTQfM3Kxn7IHUXQOz4bzfwsGYYHGSvXyW4zOGLg==", + "engines": { + "node": ">=0.8" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, "node_modules/bindings": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", @@ -2746,6 +2616,11 @@ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, + "node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, "node_modules/body-parser": { "version": "1.20.1", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", @@ -2808,9 +2683,9 @@ } }, "node_modules/browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", "dev": true, "funding": [ { @@ -2823,10 +2698,10 @@ } ], "dependencies": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" }, "bin": { "browserslist": "cli.js" @@ -2946,20 +2821,17 @@ } }, "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "node": ">=6" } }, "node_modules/caniuse-lite": { - "version": "1.0.30001486", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz", - "integrity": "sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==", + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", "dev": true, "funding": [ { @@ -2969,10 +2841,6 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" } ] }, @@ -3041,16 +2909,13 @@ } }, "node_modules/cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "dependencies": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", + "strip-ansi": "^6.0.0", "wrap-ansi": "^7.0.0" - }, - "engines": { - "node": ">=12" } }, "node_modules/color-convert": { @@ -3103,9 +2968,9 @@ } }, "node_modules/content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==", + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", "engines": { "node": ">= 0.6" } @@ -3183,29 +3048,26 @@ } }, "node_modules/deep-equal": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.1.tgz", - "integrity": "sha512-lKdkdV6EOGoVn65XaOsPdH4rMxTZOnmFyuIkMjM1i5HHCbfjC97dawgTAy0deYNfuqUqW+Q5VrVaQYtUpSd6yQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.1.0.tgz", + "integrity": "sha512-2pxgvWu3Alv1PoWEyVg7HS8YhGlUFUV7N5oOvfL6d+7xAmLSemMwv/c8Zv/i9KFzxV5Kt5CAvQc70fLwVuf4UA==", "dev": true, "dependencies": { - "array-buffer-byte-length": "^1.0.0", "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.3", - "get-intrinsic": "^1.2.0", + "es-get-iterator": "^1.1.2", + "get-intrinsic": "^1.1.3", "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.2", "is-date-object": "^1.0.5", "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", "isarray": "^2.0.5", "object-is": "^1.1.5", "object-keys": "^1.1.1", "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.0", + "regexp.prototype.flags": "^1.4.3", "side-channel": "^1.0.4", "which-boxed-primitive": "^1.0.2", "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" + "which-typed-array": "^1.1.8" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3246,9 +3108,9 @@ } }, "node_modules/define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "dev": true, "dependencies": { "has-property-descriptors": "^1.0.0", @@ -3366,9 +3228,9 @@ } }, "node_modules/drachtio-fsmrf": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/drachtio-fsmrf/-/drachtio-fsmrf-3.0.22.tgz", - "integrity": "sha512-YVzGa72dcND1BahKf0/HuKqpEa3Ip2/O6k0tnS7U6x+VdKJ0CM3n9e6iyV8BvBfUMDbtKAv0LRPC/6O8NS7uPg==", + "version": "3.0.21", + "resolved": "https://registry.npmjs.org/drachtio-fsmrf/-/drachtio-fsmrf-3.0.21.tgz", + "integrity": "sha512-j5C1KFFEr+N8Qqp5ZjfqQTox+nDKoII3eJOaRMj0zHmFzr7tFzHbwPf8JSQS9n0OjrY6iM1zJJxHO+zDp8974g==", "dependencies": { "camel-case": "^4.1.2", "debug": "^2.6.9", @@ -3423,9 +3285,9 @@ } }, "node_modules/drachtio-srf": { - "version": "4.5.26", - "resolved": "https://registry.npmjs.org/drachtio-srf/-/drachtio-srf-4.5.26.tgz", - "integrity": "sha512-Dqq3E0qY5yxjDAkrgtwrkmQYuaGUwKqUu98kDS9xzEdX8oFqKZeV5onUZq0veznw4ctuGQolY8BI6zs1e5ynHg==", + "version": "4.5.23", + "resolved": "https://registry.npmjs.org/drachtio-srf/-/drachtio-srf-4.5.23.tgz", + "integrity": "sha512-lgL/IrizCszMObJnoLrdj/xZAU/PeBWQZEZdF0R2juozsl/aHl0FXAICOGNnKLkBaAQvPZWYcbI3vFbrwJ/5FA==", "dependencies": { "debug": "^3.2.7", "delegates": "^0.1.0", @@ -3469,15 +3331,38 @@ "safe-buffer": "^5.0.1" } }, + "node_modules/editions": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/editions/-/editions-2.3.1.tgz", + "integrity": "sha512-ptGvkwTvGdGfC0hfhKg0MT+TRLRKGtUiWGBInxOm5pz7ssADezahjCUaYuZ8Dr+C05FW0AECIIPt4WBxVINEhA==", + "dependencies": { + "errlop": "^2.0.0", + "semver": "^6.3.0" + }, + "engines": { + "node": ">=0.8" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, + "node_modules/editions/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", + "bin": { + "semver": "bin/semver.js" + } + }, "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "node_modules/electron-to-chromium": { - "version": "1.4.385", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.385.tgz", - "integrity": "sha512-L9zlje9bIw0h+CwPQumiuVlfMcV4boxRjFIWDcLfFqTZNbkwOExBzfmswytHawObQX4OUhtNv8gIiB21kOurIg==", + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", "dev": true }, "node_modules/emoji-regex": { @@ -3521,6 +3406,17 @@ "url": "https://github.com/fb55/entities?sponsor=1" } }, + "node_modules/errlop": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/errlop/-/errlop-2.2.0.tgz", + "integrity": "sha512-e64Qj9+4aZzjzzFpZC7p5kmm/ccCrbLhAJplhsDXQFs87XTsXwOpH4s1Io2s90Tau/8r2j9f4l/thhDevRjzxw==", + "engines": { + "node": ">=0.8" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, "node_modules/error": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", @@ -3531,45 +3427,35 @@ } }, "node_modules/es-abstract": { - "version": "1.21.2", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz", - "integrity": "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==", + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", "dev": true, "dependencies": { - "array-buffer-byte-length": "^1.0.0", - "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.2.0", + "get-intrinsic": "^1.1.3", "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", "has": "^1.0.3", "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", + "internal-slot": "^1.0.3", "is-callable": "^1.2.7", "is-negative-zero": "^2.0.2", "is-regex": "^1.1.4", "is-shared-array-buffer": "^1.0.2", "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", + "object-inspect": "^1.12.2", "object-keys": "^1.1.1", "object.assign": "^4.1.4", "regexp.prototype.flags": "^1.4.3", "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.7", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" }, "engines": { "node": ">= 0.4" @@ -3579,20 +3465,19 @@ } }, "node_modules/es-get-iterator": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz", + "integrity": "sha512-+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==", "dev": true, "dependencies": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", + "get-intrinsic": "^1.1.0", + "has-symbols": "^1.0.1", + "is-arguments": "^1.1.0", "is-map": "^2.0.2", "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" + "is-string": "^1.0.5", + "isarray": "^2.0.5" }, "funding": { "url": "https://github.com/sponsors/ljharb" @@ -3604,20 +3489,6 @@ "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", "dev": true }, - "node_modules/es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", - "dev": true, - "dependencies": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - }, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", @@ -3915,9 +3786,9 @@ } }, "node_modules/esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "dependencies": { "estraverse": "^5.1.0" @@ -4467,9 +4338,9 @@ } }, "node_modules/get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", "dependencies": { "function-bind": "^1.1.1", "has": "^1.0.3", @@ -4536,9 +4407,9 @@ } }, "node_modules/globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", "dev": true, "dependencies": { "type-fest": "^0.20.2" @@ -4550,32 +4421,17 @@ "url": "https://github.com/sponsors/sindresorhus" } }, - "node_modules/globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "dependencies": { - "define-properties": "^1.1.3" - }, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/google-auth-library": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-8.8.0.tgz", - "integrity": "sha512-0iJn7IDqObDG5Tu9Tn2WemmJ31ksEa96IyK0J0OZCpTh6CrC6FrattwKX87h3qKVuprCJpdOGKc1Xi8V0kMh8Q==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-8.7.0.tgz", + "integrity": "sha512-1M0NG5VDIvJZEnstHbRdckLZESoJwguinwN8Dhae0j2ZKIQFIV63zxm6Fo6nM4xkgqUr2bbMtV5Dgo+Hy6oo0Q==", "dependencies": { "arrify": "^2.0.0", "base64-js": "^1.3.0", "ecdsa-sig-formatter": "^1.0.11", "fast-text-encoding": "^1.0.0", "gaxios": "^5.0.0", - "gcp-metadata": "^5.2.0", + "gcp-metadata": "^5.0.0", "gtoken": "^6.1.0", "jws": "^4.0.0", "lru-cache": "^6.0.0" @@ -4585,9 +4441,9 @@ } }, "node_modules/google-gax": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.6.0.tgz", - "integrity": "sha512-2fyb61vWxUonHiArRNJQmE4tx5oY1ni8VPo08fzII409vDSCWG7apDX4qNOQ2GXXT82gLBn3d3P1Dydh7pWjyw==", + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.5.8.tgz", + "integrity": "sha512-bkqxv7YdYP3FGh+dywvgyctj8XM07toJ/JCWwAkmmE15QTt3ieF/f7Hpz7xG85+dGmZtQR8Y+yMo0ENFmhypNA==", "dependencies": { "@grpc/grpc-js": "~1.8.0", "@grpc/proto-loader": "^0.7.0", @@ -4601,7 +4457,7 @@ "node-fetch": "^2.6.1", "object-hash": "^3.0.0", "proto3-json-serializer": "^1.0.0", - "protobufjs": "7.2.3", + "protobufjs": "7.2.2", "protobufjs-cli": "1.1.1", "retry-request": "^5.0.0" }, @@ -4610,7 +4466,35 @@ "minifyProtoJson": "build/tools/minify.js" }, "engines": { - "node": ">=12" + "node": ">=12" + } + }, + "node_modules/google-gax/node_modules/long": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/long/-/long-5.2.1.tgz", + "integrity": "sha512-GKSNGeNAtw8IryjjkhZxuKB3JzlcLTwjtiQCHKvqQet81I93kXslhDQruGI/QsddO83mcDToBVy7GqGS/zYf/A==" + }, + "node_modules/google-gax/node_modules/protobufjs": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.2.tgz", + "integrity": "sha512-++PrQIjrom+bFDPpfmqXfAGSQs40116JRrqqyf53dymUMvvb5d/LMRyicRoF1AUKoXVS1/IgJXlEgcpr4gTF3Q==", + "hasInstallScript": true, + "dependencies": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/node": ">=13.7.0", + "long": "^5.0.0" + }, + "engines": { + "node": ">=12.0.0" } }, "node_modules/google-p12-pem": { @@ -4644,9 +4528,9 @@ } }, "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "node_modules/gtoken": { "version": "6.1.2", @@ -4714,18 +4598,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true, - "engines": { - "node": ">= 0.4" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/has-symbols": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", @@ -4776,6 +4648,19 @@ "node": ">=8" } }, + "node_modules/heimdalljs": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/heimdalljs/-/heimdalljs-0.2.6.tgz", + "integrity": "sha512-o9bd30+5vLBvBtzCPwwGqpry2+n0Hi6H1+qwt6y+0kwRHGGF8TFIhJPmnuM0xO97zaKrDZMwO/V56fAnn8m/tA==", + "dependencies": { + "rsvp": "~3.2.1" + } + }, + "node_modules/heimdalljs/node_modules/rsvp": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.2.1.tgz", + "integrity": "sha512-Rf4YVNYpKjZ6ASAmibcwTNciQ5Co5Ztq6iZPEykHpkoflnD/K5ryE/rHehFsTm4NJj8nKDhbi3eKBWGogmNnkg==" + }, "node_modules/hexer": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/hexer/-/hexer-1.5.0.tgz", @@ -4873,14 +4758,6 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.22.tgz", "integrity": "sha512-9taxKC944BqoTVjE+UT3pQH0nHZlTvITwfsOZqyc+R3sfJuxaTtxWjfn1K2UlxyPcKHf0rnaXcVFrS9F9vf0bw==" }, - "node_modules/ibm-cloud-sdk-core/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "engines": { - "node": ">=6" - } - }, "node_modules/ibm-cloud-sdk-core/node_modules/semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -4915,6 +4792,17 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.52.tgz", "integrity": "sha512-s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ==" }, + "node_modules/ibm-watson/node_modules/camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -5015,12 +4903,12 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "node_modules/internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, "dependencies": { - "get-intrinsic": "^1.2.0", + "get-intrinsic": "^1.1.0", "has": "^1.0.3", "side-channel": "^1.0.4" }, @@ -5065,20 +4953,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/is-bigint": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", @@ -5119,9 +4993,9 @@ } }, "node_modules/is-core-module": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", - "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", "dependencies": { "has": "^1.0.3" }, @@ -5542,6 +5416,22 @@ "node": ">=8" } }, + "node_modules/istextorbinary": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.6.0.tgz", + "integrity": "sha512-+XRlFseT8B3L9KyjxxLjfXSLMuErKDsd8DBNrsaxoViABMEZlOSCstwmw0qpoFX3+U6yWU1yhLudAe6/lETGGA==", + "dependencies": { + "binaryextensions": "^2.1.2", + "editions": "^2.2.0", + "textextensions": "^2.5.0" + }, + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, "node_modules/jaeger-client": { "version": "3.19.0", "resolved": "https://registry.npmjs.org/jaeger-client/-/jaeger-client-3.19.0.tgz", @@ -5690,6 +5580,17 @@ "node": ">=8" } }, + "node_modules/jsdoc/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, "node_modules/jsesc": { "version": "2.5.2", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", @@ -5728,9 +5629,9 @@ "dev": true }, "node_modules/json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", + "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", "dev": true, "bin": { "json5": "lib/cli.js" @@ -6016,13 +5917,17 @@ } }, "node_modules/microsoft-cognitiveservices-speech-sdk": { - "version": "1.28.0", - "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.28.0.tgz", - "integrity": "sha512-d+hCqTSeVCGtog5BgUKdIVTNifuigap9VSJbtDUP4kW1uG/yp7zRnqsjYx9nV9sRfuiYwZCyFzGG+VXGa37QDw==", + "version": "1.26.0", + "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.26.0.tgz", + "integrity": "sha512-bk5Qzn6uQ2mswpTdZaBpZT3NCwkFOE0dpkPvZNeZg6r6j606+uf5hiQbRAadz6bZRBCHy1iPF846MRe9cbnY8g==", "dependencies": { "agent-base": "^6.0.1", + "asn1.js-rfc2560": "^5.0.1", + "asn1.js-rfc5280": "^3.0.0", + "async-disk-cache": "^2.1.0", "bent": "^7.3.12", "https-proxy-agent": "^4.0.0", + "simple-lru-cache": "0.0.2", "uuid": "^9.0.0", "ws": "^7.5.6" } @@ -6105,6 +6010,11 @@ "node": ">= 0.6" } }, + "node_modules/minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, "node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -6117,22 +6027,22 @@ } }, "node_modules/minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==", "funding": { "url": "https://github.com/sponsors/ljharb" } }, "node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, "bin": { "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" } }, "node_modules/module-details-from-path": { @@ -6188,24 +6098,30 @@ } }, "node_modules/named-placeholders": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.3.tgz", - "integrity": "sha512-eLoBxg6wE/rZkJPhU/xRX1WTpkFEwDJEN96oxFrTsqBdbT5ec295Q+CoHrL9IT0DipqKhmGcaZmwOt8OON5x1w==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.2.tgz", + "integrity": "sha512-wiFWqxoLL3PGVReSZpjLVxyJ1bRqe+KKJVbr4hGs1KWfTZTQyezHFBbuKj9hsizHyGV2ne7EMjHdxEGAybD5SA==", "dependencies": { - "lru-cache": "^7.14.1" + "lru-cache": "^4.1.3" }, "engines": { - "node": ">=12.0.0" + "node": ">=6.0.0" } }, "node_modules/named-placeholders/node_modules/lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==", - "engines": { - "node": ">=12" + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "dependencies": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" } }, + "node_modules/named-placeholders/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + }, "node_modules/nan": { "version": "2.17.0", "resolved": "https://registry.npmjs.org/nan/-/nan-2.17.0.tgz", @@ -6243,14 +6159,6 @@ "path-to-regexp": "^1.7.0" } }, - "node_modules/nise/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/nise/node_modules/isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", @@ -6301,9 +6209,9 @@ } }, "node_modules/node-gyp-build": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz", - "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==", + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", + "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==", "bin": { "node-gyp-build": "bin.js", "node-gyp-build-optional": "optional.js", @@ -6341,9 +6249,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", + "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", "dev": true }, "node_modules/nyc": { @@ -6387,15 +6295,6 @@ "node": ">=8.9" } }, - "node_modules/nyc/node_modules/camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true, - "engines": { - "node": ">=6" - } - }, "node_modules/nyc/node_modules/cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -6771,9 +6670,9 @@ } }, "node_modules/pino": { - "version": "8.14.1", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.14.1.tgz", - "integrity": "sha512-8LYNv7BKWXSfS+k6oEc6occy5La+q2sPwU3q2ljTX5AZk7v+5kND2o5W794FyRaqha6DJajmkNRsWtPpFyMUdw==", + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.8.0.tgz", + "integrity": "sha512-cF8iGYeu2ODg2gIwgAHcPrtR63ILJz3f7gkogaHC/TXVVXxZgInmNYiIpDYEwgEkxZti2Se6P2W2DxlBIZe6eQ==", "dependencies": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -6873,9 +6772,9 @@ } }, "node_modules/pino-std-serializers": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.1.tgz", - "integrity": "sha512-wHuWB+CvSVb2XqXM0W/WOYUkVSPbiJb9S5fNB7TBhd8s892Xq910bRxwHtC4l71hgztObTjXL6ZheZXFjhDrDQ==" + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.1.0.tgz", + "integrity": "sha512-KO0m2f1HkrPe9S0ldjx7za9BJjeHqBku5Ch8JyxETxT8dEFGz1PwgrHaOQupVYitpzbFSYm7nnljxD8dik2c+g==" }, "node_modules/pkg-dir": { "version": "4.2.0", @@ -6946,9 +6845,9 @@ } }, "node_modules/process-warning": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.2.0.tgz", - "integrity": "sha512-/1WZ8+VQjR6avWOgHeEPd7SDQmFQ1B5mC1eRXsCm5TarlNmx/wCsa5GEaxGm05BORRtyG/Ex/3xq3TuRvq57qg==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.1.0.tgz", + "integrity": "sha512-9C20RLxrZU/rFnxWncDkuF6O999NdIf3E1ws4B0ZeY3sRVPzWBMsYDE2lxjxhiXxg464cQTgKUGm8/i6y2YGXg==" }, "node_modules/progress": { "version": "2.0.3", @@ -6960,9 +6859,9 @@ } }, "node_modules/proto3-json-serializer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-1.1.1.tgz", - "integrity": "sha512-AwAuY4g9nxx0u52DnSMkqqgyLHaW/XaPLtaAo3y/ZCfeaQB/g4YDH4kb8Wc/mWzWvu0YjOznVnfn373MVZZrgw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-1.1.0.tgz", + "integrity": "sha512-SjXwUWe/vANGs/mJJTbw5++7U67nwsymg7qsoPtw6GiXqw3kUy8ByojrlEdVE2efxAdKreX8WkDafxvYW95ZQg==", "dependencies": { "protobufjs": "^7.0.0" }, @@ -7040,9 +6939,9 @@ } }, "node_modules/protobufjs-cli/node_modules/eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==", + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz", + "integrity": "sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==", "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" }, @@ -7051,13 +6950,13 @@ } }, "node_modules/protobufjs-cli/node_modules/espree": { - "version": "9.5.2", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz", - "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==", + "version": "9.5.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.1.tgz", + "integrity": "sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg==", "dependencies": { "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" + "eslint-visitor-keys": "^3.4.0" }, "engines": { "node": "^12.22.0 || ^14.17.0 || >=16.0.0" @@ -7104,9 +7003,9 @@ } }, "node_modules/protobufjs/node_modules/long": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/long/-/long-5.2.3.tgz", - "integrity": "sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/long/-/long-5.2.1.tgz", + "integrity": "sha512-GKSNGeNAtw8IryjjkhZxuKB3JzlcLTwjtiQCHKvqQet81I93kXslhDQruGI/QsddO83mcDToBVy7GqGS/zYf/A==" }, "node_modules/protocols": { "version": "2.0.1", @@ -7140,15 +7039,20 @@ "resolve": "^1.11.1" } }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + }, "node_modules/psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" }, "node_modules/punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", "engines": { "node": ">=6" } @@ -7300,14 +7204,14 @@ } }, "node_modules/regexp.prototype.flags": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", - "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, "dependencies": { "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "functions-have-names": "^1.2.3" + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" }, "engines": { "node": ">= 0.4" @@ -7390,11 +7294,11 @@ } }, "node_modules/resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "dependencies": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" }, @@ -7460,6 +7364,14 @@ "url": "https://github.com/sponsors/isaacs" } }, + "node_modules/rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==", + "engines": { + "node": "6.* || >= 7.*" + } + }, "node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -7494,9 +7406,9 @@ } }, "node_modules/safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==", + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.2.tgz", + "integrity": "sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA==", "engines": { "node": ">=10" } @@ -7520,9 +7432,9 @@ } }, "node_modules/semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "dependencies": { "lru-cache": "^6.0.0" }, @@ -7661,16 +7573,21 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, + "node_modules/simple-lru-cache": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz", + "integrity": "sha512-uEv/AFO0ADI7d99OHDmh1QfYzQk/izT1vCmu/riQfh7qjBVUUgRT87E5s5h7CxWCA/+YoZerykpEthzVrW3LIw==" + }, "node_modules/sinon": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.4.tgz", - "integrity": "sha512-uzmfN6zx3GQaria1kwgWGeKiXSSbShBbue6Dcj0SI8fiCNFbiUDqKl57WFlY5lyhxZVUKmXvzgG2pilRQCBwWg==", + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.1.tgz", + "integrity": "sha512-PZXKc08f/wcA/BMRGBze2Wmw50CWPiAH3E21EOi4B49vJ616vW4DQh4fQrqsYox2aNR/N3kCqLuB0PwwOucQrg==", "dependencies": { - "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^10.0.2", - "@sinonjs/samsam": "^8.0.0", - "diff": "^5.1.0", - "nise": "^5.1.4", + "@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": { @@ -7723,9 +7640,9 @@ } }, "node_modules/sonic-boom": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.3.0.tgz", - "integrity": "sha512-LYxp34KlZ1a2Jb8ZQgFCK3niIHzibdwtwNUWKg0qQRzsDoJ3Gfgkf8KdBTFU3SkejDEIlWwnSnpVdOZIhFMl/g==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.2.1.tgz", + "integrity": "sha512-iITeTHxy3B9FGu8aVdiDXUVAcHMF9Ss0cCsAOo2HfCrmVGT3/DT5oYaeu0M/YKZDlKTvChEyPq0zI9Hf33EX6A==", "dependencies": { "atomic-sleep": "^1.0.0" } @@ -7757,9 +7674,9 @@ } }, "node_modules/split2": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", - "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.1.0.tgz", + "integrity": "sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ==", "engines": { "node": ">= 10.x" } @@ -7805,18 +7722,6 @@ "node": ">= 0.8" } }, - "node_modules/stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dev": true, - "dependencies": { - "internal-slot": "^1.0.4" - }, - "engines": { - "node": ">= 0.4" - } - }, "node_modules/stream-shift": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", @@ -7992,9 +7897,9 @@ } }, "node_modules/table/node_modules/ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", "dev": true, "dependencies": { "fast-deep-equal": "^3.1.1", @@ -8014,15 +7919,15 @@ "dev": true }, "node_modules/tape": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/tape/-/tape-5.6.3.tgz", - "integrity": "sha512-cUDDGSbyoSIpdUAqbqLI/r7i/S4BHuCB9M5j7E/LrLs/x/i4zeAJ798aqo+FGo+kr9seBZwr8AkZW6rjceyAMQ==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/tape/-/tape-5.6.1.tgz", + "integrity": "sha512-reNzS3rzsJtKk0f+zJx2XlzIsjJXlIcOIrIxk5shHAG/DzW3BKyMg8UfN79oluYlcWo4lIt56ahLqwgpRT4idg==", "dev": true, "dependencies": { - "array.prototype.every": "^1.1.4", + "array.prototype.every": "^1.1.3", "call-bind": "^1.0.2", - "deep-equal": "^2.2.0", - "defined": "^1.0.1", + "deep-equal": "^2.0.5", + "defined": "^1.0.0", "dotignore": "^0.1.2", "for-each": "^0.3.3", "get-package-type": "^0.1.0", @@ -8031,14 +7936,14 @@ "has-dynamic-import": "^2.0.1", "inherits": "^2.0.4", "is-regex": "^1.1.4", - "minimist": "^1.2.7", - "object-inspect": "^1.12.3", + "minimist": "^1.2.6", + "object-inspect": "^1.12.2", "object-is": "^1.1.5", "object-keys": "^1.1.1", "object.assign": "^4.1.4", - "resolve": "^2.0.0-next.4", + "resolve": "^2.0.0-next.3", "resumer": "^0.0.0", - "string.prototype.trim": "^1.2.7", + "string.prototype.trim": "^1.2.6", "through": "^2.3.8" }, "bin": { @@ -8085,6 +7990,17 @@ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, + "node_modules/textextensions": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/textextensions/-/textextensions-2.6.0.tgz", + "integrity": "sha512-49WtAWS+tcsy93dRt6P0P3AMD2m5PvXRhuEA0kaXos5ZLlujtYmpmFsB+QvWUSxE1ZsstmYXfQ7L40+EcQgpAQ==", + "engines": { + "node": ">=0.8" + }, + "funding": { + "url": "https://bevry.me/fund" + } + }, "node_modules/thread-stream": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-2.3.0.tgz", @@ -8291,20 +8207,6 @@ "node": ">= 0.6" } }, - "node_modules/typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "dependencies": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - }, - "funding": { - "url": "https://github.com/sponsors/ljharb" - } - }, "node_modules/typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -8350,14 +8252,14 @@ "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" }, "node_modules/undici": { - "version": "5.22.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.22.0.tgz", - "integrity": "sha512-fR9RXCc+6Dxav4P9VV/sp5w3eFiSdOjJYsbtWfd4s5L5C4ogyuVpdKIVHeW0vV1MloM65/f7W45nR9ZxwVdyiA==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.21.0.tgz", + "integrity": "sha512-HOjK8l6a57b2ZGXOcUsI5NLfoTrfmbOl90ixJDl0AEFG4wgHNDQxtZy15/ZQp7HhjkpaGlp/eneMgtsu1dIlUA==", "dependencies": { "busboy": "^1.6.0" }, "engines": { - "node": ">=14.0" + "node": ">=12.18" } }, "node_modules/universalify": { @@ -8391,9 +8293,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", "dev": true, "funding": [ { @@ -8403,10 +8305,6 @@ { "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" } ], "dependencies": { @@ -8414,7 +8312,7 @@ "picocolors": "^1.0.0" }, "bin": { - "update-browserslist-db": "cli.js" + "browserslist-lint": "cli.js" }, "peerDependencies": { "browserslist": ">= 4.21.0" @@ -8452,6 +8350,11 @@ "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", "integrity": "sha512-RofWgt/7fL5wP1Y7fxE7/EmTLzQVnB0ycyibJ0OOHIlJqTNzglYFxVwETOcIoJqJmpDXJ9xImDv+Fq34F/d4Dw==" }, + "node_modules/username-sync": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/username-sync/-/username-sync-1.0.3.tgz", + "integrity": "sha512-m/7/FSqjJNAzF2La448c/aEom0gJy7HY7Y509h6l0ePvEkFictAGptwWaj1msWJ38JbfEDOUoE8kqFee9EHKdA==" + }, "node_modules/utf-8-validate": { "version": "5.0.10", "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz", @@ -8628,9 +8531,9 @@ } }, "node_modules/which-module": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", - "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", "dev": true }, "node_modules/which-typed-array": { @@ -8694,15 +8597,15 @@ } }, "node_modules/ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", "engines": { "node": ">=10.0.0" }, "peerDependencies": { "bufferutil": "^4.0.1", - "utf-8-validate": ">=5.0.2" + "utf-8-validate": "^5.0.2" }, "peerDependenciesMeta": { "bufferutil": { @@ -8773,39 +8676,39 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "node_modules/yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "dependencies": { - "cliui": "^8.0.1", + "cliui": "^7.0.2", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.3", + "string-width": "^4.2.0", "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" + "yargs-parser": "^20.2.2" }, "engines": { - "node": ">=12" + "node": ">=10" } }, "node_modules/yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==", "engines": { - "node": ">=12" + "node": ">=10" } } }, "dependencies": { "@ampproject/remapping": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz", - "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==", + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.0.tgz", + "integrity": "sha512-qRmjj8nj9qmLTQXXmaR1cck3UXSRMPrbsLJAasZpF+t3riI71BXed5ebIOYwQntykeZuhjsdweEc9BxH5Jc26w==", "dev": true, "requires": { - "@jridgewell/gen-mapping": "^0.3.0", + "@jridgewell/gen-mapping": "^0.1.0", "@jridgewell/trace-mapping": "^0.3.9" } }, @@ -8896,729 +8799,729 @@ } }, "@aws-sdk/abort-controller": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.310.0.tgz", - "integrity": "sha512-v1zrRQxDLA1MdPim159Vx/CPHqsB4uybSxRi1CnfHO5ZjHryx3a5htW2gdGAykVCul40+yJXvfpufMrELVxH+g==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.303.0.tgz", + "integrity": "sha512-LzNzpeyTppcmV/6SAQI3T/huOkMrUnFveplgVNwJxw+rVqmqmGV6z6vpg+oRICRDcjXWYiSiaClxxSVvOy0sDQ==", "requires": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/client-polly": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-polly/-/client-polly-3.328.0.tgz", - "integrity": "sha512-lnxmJPRmPkQEWt+V+492CV7Y/HZrbKXa38xQgRQOC6ZmXyoaJhnwCVRERm9KcxUXfrcLhiHrSnR8e24V283YIg==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-polly/-/client-polly-3.303.0.tgz", + "integrity": "sha512-Cw5V6ViZDrtvhz6Txw8inxtKysJfgQSeJiB3H/sHLklwIU417+8LoxCs1+090Czq2kPw7JmIRy44RXLtJT2v8g==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/client-sts": "3.328.0", - "@aws-sdk/config-resolver": "3.310.0", - "@aws-sdk/credential-provider-node": "3.328.0", - "@aws-sdk/fetch-http-handler": "3.310.0", - "@aws-sdk/hash-node": "3.310.0", - "@aws-sdk/invalid-dependency": "3.310.0", - "@aws-sdk/middleware-content-length": "3.325.0", - "@aws-sdk/middleware-endpoint": "3.325.0", - "@aws-sdk/middleware-host-header": "3.325.0", - "@aws-sdk/middleware-logger": "3.325.0", - "@aws-sdk/middleware-recursion-detection": "3.325.0", - "@aws-sdk/middleware-retry": "3.327.0", - "@aws-sdk/middleware-serde": "3.325.0", - "@aws-sdk/middleware-signing": "3.325.0", - "@aws-sdk/middleware-stack": "3.325.0", - "@aws-sdk/middleware-user-agent": "3.327.0", - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/node-http-handler": "3.328.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/smithy-client": "3.325.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", - "@aws-sdk/util-body-length-browser": "3.310.0", - "@aws-sdk/util-body-length-node": "3.310.0", - "@aws-sdk/util-defaults-mode-browser": "3.325.0", - "@aws-sdk/util-defaults-mode-node": "3.325.0", - "@aws-sdk/util-endpoints": "3.327.0", - "@aws-sdk/util-retry": "3.327.0", - "@aws-sdk/util-stream-browser": "3.310.0", - "@aws-sdk/util-stream-node": "3.328.0", - "@aws-sdk/util-user-agent-browser": "3.310.0", - "@aws-sdk/util-user-agent-node": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "@aws-sdk/client-sts": "3.303.0", + "@aws-sdk/config-resolver": "3.303.0", + "@aws-sdk/credential-provider-node": "3.303.0", + "@aws-sdk/fetch-http-handler": "3.303.0", + "@aws-sdk/hash-node": "3.303.0", + "@aws-sdk/invalid-dependency": "3.303.0", + "@aws-sdk/middleware-content-length": "3.303.0", + "@aws-sdk/middleware-endpoint": "3.303.0", + "@aws-sdk/middleware-host-header": "3.303.0", + "@aws-sdk/middleware-logger": "3.303.0", + "@aws-sdk/middleware-recursion-detection": "3.303.0", + "@aws-sdk/middleware-retry": "3.303.0", + "@aws-sdk/middleware-serde": "3.303.0", + "@aws-sdk/middleware-signing": "3.303.0", + "@aws-sdk/middleware-stack": "3.303.0", + "@aws-sdk/middleware-user-agent": "3.303.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/node-http-handler": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/smithy-client": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.303.0", + "@aws-sdk/util-defaults-mode-node": "3.303.0", + "@aws-sdk/util-endpoints": "3.303.0", + "@aws-sdk/util-retry": "3.303.0", + "@aws-sdk/util-stream-browser": "3.303.0", + "@aws-sdk/util-stream-node": "3.303.0", + "@aws-sdk/util-user-agent-browser": "3.303.0", + "@aws-sdk/util-user-agent-node": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/client-sso": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.328.0.tgz", - "integrity": "sha512-IneVwc4j3bCXwCdNAALQ8VVrfFTFAb2f3FxerHv4DLx8OlMTvZiraDDJisfO+cXLl2WCJOJAzpAJTgrPA50LCg==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.303.0.tgz", + "integrity": "sha512-LZ+Z6vGnEdqmxx0dqtZP97n5VX5uUKu4lJmDR3sdGolxAUqCY1FxHDZd9DzCFXR8rwoJK4VJTL+exzeVp4Ly/g==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.310.0", - "@aws-sdk/fetch-http-handler": "3.310.0", - "@aws-sdk/hash-node": "3.310.0", - "@aws-sdk/invalid-dependency": "3.310.0", - "@aws-sdk/middleware-content-length": "3.325.0", - "@aws-sdk/middleware-endpoint": "3.325.0", - "@aws-sdk/middleware-host-header": "3.325.0", - "@aws-sdk/middleware-logger": "3.325.0", - "@aws-sdk/middleware-recursion-detection": "3.325.0", - "@aws-sdk/middleware-retry": "3.327.0", - "@aws-sdk/middleware-serde": "3.325.0", - "@aws-sdk/middleware-stack": "3.325.0", - "@aws-sdk/middleware-user-agent": "3.327.0", - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/node-http-handler": "3.328.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/smithy-client": "3.325.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", - "@aws-sdk/util-body-length-browser": "3.310.0", - "@aws-sdk/util-body-length-node": "3.310.0", - "@aws-sdk/util-defaults-mode-browser": "3.325.0", - "@aws-sdk/util-defaults-mode-node": "3.325.0", - "@aws-sdk/util-endpoints": "3.327.0", - "@aws-sdk/util-retry": "3.327.0", - "@aws-sdk/util-user-agent-browser": "3.310.0", - "@aws-sdk/util-user-agent-node": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "@aws-sdk/config-resolver": "3.303.0", + "@aws-sdk/fetch-http-handler": "3.303.0", + "@aws-sdk/hash-node": "3.303.0", + "@aws-sdk/invalid-dependency": "3.303.0", + "@aws-sdk/middleware-content-length": "3.303.0", + "@aws-sdk/middleware-endpoint": "3.303.0", + "@aws-sdk/middleware-host-header": "3.303.0", + "@aws-sdk/middleware-logger": "3.303.0", + "@aws-sdk/middleware-recursion-detection": "3.303.0", + "@aws-sdk/middleware-retry": "3.303.0", + "@aws-sdk/middleware-serde": "3.303.0", + "@aws-sdk/middleware-stack": "3.303.0", + "@aws-sdk/middleware-user-agent": "3.303.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/node-http-handler": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/smithy-client": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.303.0", + "@aws-sdk/util-defaults-mode-node": "3.303.0", + "@aws-sdk/util-endpoints": "3.303.0", + "@aws-sdk/util-retry": "3.303.0", + "@aws-sdk/util-user-agent-browser": "3.303.0", + "@aws-sdk/util-user-agent-node": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/client-sso-oidc": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.328.0.tgz", - "integrity": "sha512-2T6Snri7ovx9+q/iw/wZ1YHzz/SsxPuJOhgbJipCFW9f1IEPBIEKVZtywcKYzE1nYjyc6YanAqQMn6U2SPhW4A==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.303.0.tgz", + "integrity": "sha512-oOdDcBjxGiJ6mFWUMVr+A1hAzGRpcZ+oLAhCakpvpXCUG50PZSBFP+vOQXgHY/XNolqDg+IHq60oE9HoPzGleg==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.310.0", - "@aws-sdk/fetch-http-handler": "3.310.0", - "@aws-sdk/hash-node": "3.310.0", - "@aws-sdk/invalid-dependency": "3.310.0", - "@aws-sdk/middleware-content-length": "3.325.0", - "@aws-sdk/middleware-endpoint": "3.325.0", - "@aws-sdk/middleware-host-header": "3.325.0", - "@aws-sdk/middleware-logger": "3.325.0", - "@aws-sdk/middleware-recursion-detection": "3.325.0", - "@aws-sdk/middleware-retry": "3.327.0", - "@aws-sdk/middleware-serde": "3.325.0", - "@aws-sdk/middleware-stack": "3.325.0", - "@aws-sdk/middleware-user-agent": "3.327.0", - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/node-http-handler": "3.328.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/smithy-client": "3.325.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", - "@aws-sdk/util-body-length-browser": "3.310.0", - "@aws-sdk/util-body-length-node": "3.310.0", - "@aws-sdk/util-defaults-mode-browser": "3.325.0", - "@aws-sdk/util-defaults-mode-node": "3.325.0", - "@aws-sdk/util-endpoints": "3.327.0", - "@aws-sdk/util-retry": "3.327.0", - "@aws-sdk/util-user-agent-browser": "3.310.0", - "@aws-sdk/util-user-agent-node": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "@aws-sdk/config-resolver": "3.303.0", + "@aws-sdk/fetch-http-handler": "3.303.0", + "@aws-sdk/hash-node": "3.303.0", + "@aws-sdk/invalid-dependency": "3.303.0", + "@aws-sdk/middleware-content-length": "3.303.0", + "@aws-sdk/middleware-endpoint": "3.303.0", + "@aws-sdk/middleware-host-header": "3.303.0", + "@aws-sdk/middleware-logger": "3.303.0", + "@aws-sdk/middleware-recursion-detection": "3.303.0", + "@aws-sdk/middleware-retry": "3.303.0", + "@aws-sdk/middleware-serde": "3.303.0", + "@aws-sdk/middleware-stack": "3.303.0", + "@aws-sdk/middleware-user-agent": "3.303.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/node-http-handler": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/smithy-client": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.303.0", + "@aws-sdk/util-defaults-mode-node": "3.303.0", + "@aws-sdk/util-endpoints": "3.303.0", + "@aws-sdk/util-retry": "3.303.0", + "@aws-sdk/util-user-agent-browser": "3.303.0", + "@aws-sdk/util-user-agent-node": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/client-sts": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.328.0.tgz", - "integrity": "sha512-Eedz24H7zLuTjJoCtNQEGOKbIlhibqyasFFwWsds6ds24hRF4fVrCKLwZWENZwawtJjjEdRESQe4dwpV5lWqtw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.303.0.tgz", + "integrity": "sha512-oda7mOfGyJZe62DZ5BVH3L84yeDM0Ja/fSpTjwV9hqFqzgtW83TCpiNegcJmvmGWDYaPmE2qpfDPqPzymB0sBg==", "requires": { "@aws-crypto/sha256-browser": "3.0.0", "@aws-crypto/sha256-js": "3.0.0", - "@aws-sdk/config-resolver": "3.310.0", - "@aws-sdk/credential-provider-node": "3.328.0", - "@aws-sdk/fetch-http-handler": "3.310.0", - "@aws-sdk/hash-node": "3.310.0", - "@aws-sdk/invalid-dependency": "3.310.0", - "@aws-sdk/middleware-content-length": "3.325.0", - "@aws-sdk/middleware-endpoint": "3.325.0", - "@aws-sdk/middleware-host-header": "3.325.0", - "@aws-sdk/middleware-logger": "3.325.0", - "@aws-sdk/middleware-recursion-detection": "3.325.0", - "@aws-sdk/middleware-retry": "3.327.0", - "@aws-sdk/middleware-sdk-sts": "3.326.0", - "@aws-sdk/middleware-serde": "3.325.0", - "@aws-sdk/middleware-signing": "3.325.0", - "@aws-sdk/middleware-stack": "3.325.0", - "@aws-sdk/middleware-user-agent": "3.327.0", - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/node-http-handler": "3.328.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/smithy-client": "3.325.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", - "@aws-sdk/util-body-length-browser": "3.310.0", - "@aws-sdk/util-body-length-node": "3.310.0", - "@aws-sdk/util-defaults-mode-browser": "3.325.0", - "@aws-sdk/util-defaults-mode-node": "3.325.0", - "@aws-sdk/util-endpoints": "3.327.0", - "@aws-sdk/util-retry": "3.327.0", - "@aws-sdk/util-user-agent-browser": "3.310.0", - "@aws-sdk/util-user-agent-node": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "@aws-sdk/config-resolver": "3.303.0", + "@aws-sdk/credential-provider-node": "3.303.0", + "@aws-sdk/fetch-http-handler": "3.303.0", + "@aws-sdk/hash-node": "3.303.0", + "@aws-sdk/invalid-dependency": "3.303.0", + "@aws-sdk/middleware-content-length": "3.303.0", + "@aws-sdk/middleware-endpoint": "3.303.0", + "@aws-sdk/middleware-host-header": "3.303.0", + "@aws-sdk/middleware-logger": "3.303.0", + "@aws-sdk/middleware-recursion-detection": "3.303.0", + "@aws-sdk/middleware-retry": "3.303.0", + "@aws-sdk/middleware-sdk-sts": "3.303.0", + "@aws-sdk/middleware-serde": "3.303.0", + "@aws-sdk/middleware-signing": "3.303.0", + "@aws-sdk/middleware-stack": "3.303.0", + "@aws-sdk/middleware-user-agent": "3.303.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/node-http-handler": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/smithy-client": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-body-length-browser": "3.303.0", + "@aws-sdk/util-body-length-node": "3.303.0", + "@aws-sdk/util-defaults-mode-browser": "3.303.0", + "@aws-sdk/util-defaults-mode-node": "3.303.0", + "@aws-sdk/util-endpoints": "3.303.0", + "@aws-sdk/util-retry": "3.303.0", + "@aws-sdk/util-user-agent-browser": "3.303.0", + "@aws-sdk/util-user-agent-node": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "fast-xml-parser": "4.1.2", "tslib": "^2.5.0" } }, "@aws-sdk/config-resolver": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.310.0.tgz", - "integrity": "sha512-8vsT+/50lOqfDxka9m/rRt6oxv1WuGZoP8oPMk0Dt+TxXMbAzf4+rejBgiB96wshI1k3gLokYRjSQZn+dDtT8g==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.303.0.tgz", + "integrity": "sha512-uGZ47jcH86AwWcjZjuOL5jK5qE4izrEol8oF7KY214kjmavbKQstyUqmcwL2lr/YpDNFkCYgUxWRpduqVm8zmw==", "requires": { - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-config-provider": "3.310.0", - "@aws-sdk/util-middleware": "3.310.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-config-provider": "3.295.0", + "@aws-sdk/util-middleware": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-env": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.310.0.tgz", - "integrity": "sha512-vvIPQpI16fj95xwS7M3D48F7QhZJBnnCgB5lR+b7So+vsG9ibm1mZRVGzVpdxCvgyOhHFbvrby9aalNJmmIP1A==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.303.0.tgz", + "integrity": "sha512-rtXumfF4cGrVk9fWACeLCfdpmlzlDUkzwSR60/3enC5Antcxl3fFY5T1BzNFvz0mB0zcwm4kaAwIcljX67DNRA==", "requires": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-imds": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.310.0.tgz", - "integrity": "sha512-baxK7Zp6dai5AGW01FIW27xS2KAaPUmKLIXv5SvFYsUgXXvNW55im4uG3b+2gA0F7V+hXvVBH08OEqmwW6we5w==", - "requires": { - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.303.0.tgz", + "integrity": "sha512-ruomcFkKUpJkZb87em698//A0AVpt1KN9dn8N8eVyOuvZzebVxSW4AJoVgOKd5Av4PVcZgEqRX0kOOVp0iTrWg==", + "requires": { + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-ini": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.328.0.tgz", - "integrity": "sha512-tOHzfWQUaQif1IciWs57MFM7bFc+693pnEhFCgT3wjzwjKGkq1QsNzfRlOp1QP4Glw6qV+kAAemEZj8mGth8Bg==", - "requires": { - "@aws-sdk/credential-provider-env": "3.310.0", - "@aws-sdk/credential-provider-imds": "3.310.0", - "@aws-sdk/credential-provider-process": "3.310.0", - "@aws-sdk/credential-provider-sso": "3.328.0", - "@aws-sdk/credential-provider-web-identity": "3.310.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.303.0.tgz", + "integrity": "sha512-4J50F6fEjQmAstSQOpJFG+rnbEqtwA7nDG6PxNm98VSTH2mYJV0YgBdvydfBKrKINAT4xYZta5Sc4WEIpSo0TA==", + "requires": { + "@aws-sdk/credential-provider-env": "3.303.0", + "@aws-sdk/credential-provider-imds": "3.303.0", + "@aws-sdk/credential-provider-process": "3.303.0", + "@aws-sdk/credential-provider-sso": "3.303.0", + "@aws-sdk/credential-provider-web-identity": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-node": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.328.0.tgz", - "integrity": "sha512-/omjTxrC8Vv6OPAK+66KNnjVmMZWyEQnQp8e8Y+RZvsuVaeQNJT5UQKSqrYtmqTX2T+yqJY7eVpx5CXBCGjc2g==", - "requires": { - "@aws-sdk/credential-provider-env": "3.310.0", - "@aws-sdk/credential-provider-imds": "3.310.0", - "@aws-sdk/credential-provider-ini": "3.328.0", - "@aws-sdk/credential-provider-process": "3.310.0", - "@aws-sdk/credential-provider-sso": "3.328.0", - "@aws-sdk/credential-provider-web-identity": "3.310.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.303.0.tgz", + "integrity": "sha512-OlKb7O2jDtrzkzLT/PUb5kxuGGTIyPn2alXzGT+7LdJ9/tP8KlqSVMtnH2UYPPdcc/daK16+MRNL5ylxmnRJ7Q==", + "requires": { + "@aws-sdk/credential-provider-env": "3.303.0", + "@aws-sdk/credential-provider-imds": "3.303.0", + "@aws-sdk/credential-provider-ini": "3.303.0", + "@aws-sdk/credential-provider-process": "3.303.0", + "@aws-sdk/credential-provider-sso": "3.303.0", + "@aws-sdk/credential-provider-web-identity": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-process": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.310.0.tgz", - "integrity": "sha512-h73sg6GPMUWC+3zMCbA1nZ2O03nNJt7G96JdmnantiXBwHpRKWW8nBTLzx5uhXn6hTuTaoQRP/P+oxQJKYdMmA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.303.0.tgz", + "integrity": "sha512-1pxDYRscGlERAjFE5hSF1KQdcyOGzssuRTdLvez4I/mSIOAJLMmBAnmHGI/DME2LzDVrC9dklA6LHSC2sn3quQ==", "requires": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-sso": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.328.0.tgz", - "integrity": "sha512-6lSfA3AcoqNt+OYJoBimWmPmqUYVCHkE0Y+4HFN7JaXCyUknsO9/71P5zo/pp8Q7/yxP/aRyzjael82G5thj0A==", - "requires": { - "@aws-sdk/client-sso": "3.328.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/token-providers": "3.328.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.303.0.tgz", + "integrity": "sha512-/szzM1BzZGjHwV4mSiZo65cyDleJqnxM9Y4autg55mb3dFwcCiMGI6TGbdegumrNZZlCTeTA1lIhA9PdT4gDAQ==", + "requires": { + "@aws-sdk/client-sso": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/token-providers": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/credential-provider-web-identity": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.310.0.tgz", - "integrity": "sha512-H4SzuZXILNhK6/IR1uVvsUDZvzc051hem7GLyYghBCu8mU+tq28YhKE8MfSroi6eL2e5Vujloij1OM2EQQkPkw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.303.0.tgz", + "integrity": "sha512-qi5CP4ocseqdj3kMi0vgLx8XrdanLNvCAfgiEF6LjUJI88R2snZAYNUSd+Y2n04mKAalns+mUwfUN2JyL66d5g==", "requires": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/fetch-http-handler": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.310.0.tgz", - "integrity": "sha512-Bi9vIwzdkw1zMcvi/zGzlWS9KfIEnAq4NNhsnCxbQ4OoIRU9wvU+WGZdBBhxg0ZxZmpp1j1aZhU53lLjA07MHw==", - "requires": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/querystring-builder": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.303.0.tgz", + "integrity": "sha512-Bc6C86/KQOSWPa741h9QEVcApyignYV5vC5+zZjmKkcyPxrVxTmL3kTJidpVOtVfCmTIrNN/WhAVDzLBbh1ycQ==", + "requires": { + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/querystring-builder": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/hash-node": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.310.0.tgz", - "integrity": "sha512-NvE2fhRc8GRwCXBfDehxVAWCmVwVMILliAKVPAEr4yz2CkYs0tqU51S48x23dtna07H4qHtgpeNqVTthcIQOEQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.303.0.tgz", + "integrity": "sha512-jSo4A/JxTabZ9jHrx7nhKIXnOmvPg/SSYnoHaFdVS5URJrNt1w+nSvW1wLGMEMOvu5+NU3bldBBSb+h0Ocwv1A==", "requires": { - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-buffer-from": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-buffer-from": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/invalid-dependency": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.310.0.tgz", - "integrity": "sha512-1s5RG5rSPXoa/aZ/Kqr5U/7lqpx+Ry81GprQ2bxWqJvWQIJ0IRUwo5pk8XFxbKVr/2a+4lZT/c3OGoBOM1yRRA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.303.0.tgz", + "integrity": "sha512-RXNcLxOrUJaMMqk5uIYEf6X9XCMockT27bS8Dde/0ms015VOo8Wn2hHU9wEmGeFvLccC2UU4gPzvmj74w70q2Q==", "requires": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/is-array-buffer": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.310.0.tgz", - "integrity": "sha512-urnbcCR+h9NWUnmOtet/s4ghvzsidFmspfhYaHAmSRdy9yDjdjBJMFjjsn85A1ODUktztm+cVncXjQ38WCMjMQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.303.0.tgz", + "integrity": "sha512-IitBTr+pou7v5BrYLFH/SbIf3g1LIgMhcI3bDXBq2FjzmDftj4bW8BOmg05b9YKf2TrrggvJ4yk/jH+yYFXoJQ==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/middleware-content-length": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.325.0.tgz", - "integrity": "sha512-t38VBKCpNqSKqSu0OfWMJs7cwaRHFGQxIF9lV8JMCM/2lyUpN4JcfuzSTK+MFN2eDZEHp5DiNg8w07GXXusRYg==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.303.0.tgz", + "integrity": "sha512-0UL5TWSL1JRpjT6gjGsZXfia5oL7vxzj+CfMCqkP6gjVF69eRcgu426Xc6TJwDcr6jIFPeamDBTLyt9ZAAr6hg==", "requires": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-endpoint": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.325.0.tgz", - "integrity": "sha512-3CavuOHCKiWUnCtzrUFbhbEP26qIgzzRs5C3vpOJhDUhugBubIWgPGGRLpbnIro+P4XJPwM3pMziNzhKVuSDlQ==", - "requires": { - "@aws-sdk/middleware-serde": "3.325.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/url-parser": "3.310.0", - "@aws-sdk/util-middleware": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint/-/middleware-endpoint-3.303.0.tgz", + "integrity": "sha512-z2i8LJ6YTKbqXh9rY/KbXihvhq6P0JVI6SnkwT2hesJp0Nfldx85jsaLzj1+ioNKlQ+51u9UmBnO404DgNCAbg==", + "requires": { + "@aws-sdk/middleware-serde": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/url-parser": "3.303.0", + "@aws-sdk/util-middleware": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-host-header": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.325.0.tgz", - "integrity": "sha512-IN28gsxcRy4J+FxxCHvzb2NORBx8uMA+h9QYS4BBZfpKVYIZh+mudHgYcdNHWlKXmlTGjhWBNWTeByhzuSKAiA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.303.0.tgz", + "integrity": "sha512-LUyhtjbuosrD0QAsBZJwT3yp146I7Xjehf42OP3dWbRuklMEilI0Res5K2/nknf3/ZKUj6sf7BbJoU8E+SpRiQ==", "requires": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-logger": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.325.0.tgz", - "integrity": "sha512-S8rWgTpN2b/+UDDm+yZMFM6rw1zwO8KT0GAIQbAhB96shyD5eKen/UfihCTB7YMvbD2piebymwJTvxv6bn1VqQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.303.0.tgz", + "integrity": "sha512-y2sqmmBdm4gXUL4SyN+ucfO/sxtOEDj2sB12ArRpDGyerfNLhAf7xpL4lXkjPx/7wTIjlBWoO2G/yK6t00P6fA==", "requires": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-recursion-detection": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.325.0.tgz", - "integrity": "sha512-2l1ABF7KePsoKz8KaNvD2uxo1zHqkFHK4PL/wW/FbcwOcE08f0R7qX++st/bPpVjXX/j/5vWTnNNgJOIOrZhyw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.303.0.tgz", + "integrity": "sha512-z3MTsZMtPg6hYWl6a0o07q7zgsDXPYeP14XFVMc8NXqiAyNcm/OYwanpXyNjsEKI/X0nlpJ/Rs+IRCbaIqV9Mw==", "requires": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-retry": { - "version": "3.327.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.327.0.tgz", - "integrity": "sha512-LCG+oRIPc4XJ+DYqkSCgggavxWi4+hP3Rw40vHdHMNvJpCiUJMwVJ+dULEywEP/WZvr4AEkWiRrHmJVpSLeZ+Q==", - "requires": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/service-error-classification": "3.327.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-middleware": "3.310.0", - "@aws-sdk/util-retry": "3.327.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.303.0.tgz", + "integrity": "sha512-wxlqrdGOrCm2Jsra7YyfLyO34YRB/FNlXzwuJiZkqoAb/40ZAuFcWqDv41SP44y8liFXqfsMGuywJ7mK2cHvnA==", + "requires": { + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/service-error-classification": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-middleware": "3.303.0", + "@aws-sdk/util-retry": "3.303.0", "tslib": "^2.5.0", "uuid": "^8.3.2" } }, "@aws-sdk/middleware-sdk-sts": { - "version": "3.326.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.326.0.tgz", - "integrity": "sha512-suOkuXxyAfOH0hznK63ZU10EoytKX5YPs9amO416VbgYFtuIeliCmntYfnl1jUvutp0fctGGpEGE9OnoYI+fhw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.303.0.tgz", + "integrity": "sha512-igp7htNCUPhVL9Q6rJSgcx3qy/P2l2KAiS0oozOTaTXt3h0LbOusSXtwyA7qvLYeRthnw6msVW+rVBAW3Vo+3g==", "requires": { - "@aws-sdk/middleware-signing": "3.325.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/middleware-signing": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-serde": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.325.0.tgz", - "integrity": "sha512-QAZYaFfAw1a06Vg39JiYIq0kSJ6EuUPOiKfK/Goj0cBv78lrXWuKdf04UF3U8Rqk/4mamnsTqUSwf4NoKkF0hw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.303.0.tgz", + "integrity": "sha512-mmZozwYKgUgXkJrLVqgIYoOQ8DfKZS3pBBT3ZxWzv5Hz5M3oRqFgfVYljkeDM2CTvBweHpqVRTWqPDMcZisucg==", "requires": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-signing": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.325.0.tgz", - "integrity": "sha512-SOwPwaCE3vSCGwFzkIlnOUSkeCUzKTyIQnFVjlQkqGuMxMX/iDaQQGaX+HUbuGIuULCEQqjZH4dLKZcor8eVZw==", - "requires": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/signature-v4": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-middleware": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.303.0.tgz", + "integrity": "sha512-rrLQcS2wFsUGj9Kyx78LRgRS8jwiixz/Nyv06SmcKhP680sweETpQz/EA+wcVEVRXmUI6vs4NtqXz36dU0X8Nw==", + "requires": { + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/signature-v4": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-middleware": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/middleware-stack": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.325.0.tgz", - "integrity": "sha512-cZWehA4grGvX1IKlY9atJgD0bq3ew7YRJgY7GA6DSgsU7GrZ61Qvi+H7IuGx5AdeAwaTnbnTGN4qCaA2EfxNhA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.303.0.tgz", + "integrity": "sha512-6KmdroXLexzILGxF/Xq0cGBs+B8Ipm1pff8qnWCT6KldYp+Q40bVcJrExkVHDN1uOsOxu20ixW2yujOKS356zg==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/middleware-user-agent": { - "version": "3.327.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.327.0.tgz", - "integrity": "sha512-4rDSNY1xhlqfRcY97CQKcgs6AOe4ovtiRdCAjg2InnLOZHRVFoHhOIDxWNK2W1K2Pl65z4EGH6RXmB1t0srJHA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.303.0.tgz", + "integrity": "sha512-ZVMVNxPRn2jXog3V4xWokSYoQxTKAdKlNoCfjqFplsF70r8sXfgZtOMF5ZhGo+Hgsx7GqpR/NWPKJtZD2nigpg==", "requires": { - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-endpoints": "3.327.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-endpoints": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/node-config-provider": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.310.0.tgz", - "integrity": "sha512-T/Pp6htc6hq/Cq+MLNDSyiwWCMVF6GqbBbXKVlO5L8rdHx4sq9xPdoPveZhGWrxvkanjA6eCwUp6E0riBOSVng==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.303.0.tgz", + "integrity": "sha512-Ywbo9+2SkbdmNgCoxYJrv+YrFDtBH7hHtn2ywtzP4t57d4t0V/LNrNQsrAsXxqy48OS5r2ovOLHiqJS5jp1oyw==", "requires": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/node-http-handler": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.328.0.tgz", - "integrity": "sha512-zxXdNfdSGi6w/1bopllxAYAufCGDNG2eLenR3Tjj/UVBGrvS4ME5NGInu6u4LirTdkSqYlZkqKMyfiZ6XxGfdQ==", - "requires": { - "@aws-sdk/abort-controller": "3.310.0", - "@aws-sdk/protocol-http": "3.310.0", - "@aws-sdk/querystring-builder": "3.310.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.303.0.tgz", + "integrity": "sha512-5Te+mwBIOiQr2nM7/SNVFkvYHOH/CswOmUMV4Gxc7YjuervhrYvVFs2P+lL+c8rfiVMTLWjnJ6JiL2JdJfYgnQ==", + "requires": { + "@aws-sdk/abort-controller": "3.303.0", + "@aws-sdk/protocol-http": "3.303.0", + "@aws-sdk/querystring-builder": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/property-provider": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.310.0.tgz", - "integrity": "sha512-3lxDb0akV6BBzmFe4nLPaoliQbAifyWJhuvuDOu7e8NzouvpQXs0275w9LePhhcgjKAEVXUIse05ZW2DLbxo/g==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.303.0.tgz", + "integrity": "sha512-d1qbn0pCz+jvB0dcWMWuIlWYM8dWCg3185ngMgUQxkgUk7/kEbwGBsmT+xtZAMQcwcgPkSm8qeATEQ7ToiH8eQ==", "requires": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/protocol-http": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.310.0.tgz", - "integrity": "sha512-fgZ1aw/irQtnrsR58pS8ThKOWo57Py3xX6giRvwSgZDEcxHfVzuQjy9yPuV++v04fdmdtgpbGf8WfvAAJ11yXQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.303.0.tgz", + "integrity": "sha512-eqblSsdmKBzgNl06dUnL4toq/OQgZyxVsxHCz2nI/xBk5lI/qAZIJyEgP2GmP8aoWwneAq33roG0VLZoxQ8exg==", "requires": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/querystring-builder": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.310.0.tgz", - "integrity": "sha512-ZHH8GV/80+pWGo7DzsvwvXR5xVxUHXUvPJPFAkhr6nCf78igdoF8gR10ScFoEKbtEapoNTaZlKHPXxpD8aPG7A==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.303.0.tgz", + "integrity": "sha512-0eMp2gd7Ro0svJ6YVnp9cUiGtrc1d/HynyMfbDkLkqWJAnHMz7Oc1GjK5YyL1hdxm0W+JWZCPR0SovLiaboKDw==", "requires": { - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-uri-escape": "3.310.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-uri-escape": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/querystring-parser": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.310.0.tgz", - "integrity": "sha512-YkIznoP6lsiIUHinx++/lbb3tlMURGGqMpo0Pnn32zYzGrJXA6eC3D0as2EcMjo55onTfuLcIiX4qzXes2MYOA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.303.0.tgz", + "integrity": "sha512-KNJSQiTFiA7W5eYCox8bLGM7kghC3Azad86HQhdsYO0jCoPxcgj8MeP6T7fPTIC4WcTwcWb7T1MpzoeBiKMOTQ==", "requires": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/service-error-classification": { - "version": "3.327.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.327.0.tgz", - "integrity": "sha512-bCWnw+uH3gI6yPxLi4a4WV71P1KlJU7Z4+iMBY1Gt4+ZsaPAJX9pAbuQcFhFH++4xTk/QaVMzSvD0uQ+u0B/NQ==" + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.303.0.tgz", + "integrity": "sha512-eO13PzdtRO9C+g3tyFOpIblX2SbDrIbg2bNtB8JOfjVi3E1b5VsSTXXU/cKV+lbZ9XMzMn3VzGSvpo6AjzfpxA==" }, "@aws-sdk/shared-ini-file-loader": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.310.0.tgz", - "integrity": "sha512-N0q9pG0xSjQwc690YQND5bofm+4nfUviQ/Ppgan2kU6aU0WUq8KwgHJBto/YEEI+VlrME30jZJnxtOvcZJc2XA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.303.0.tgz", + "integrity": "sha512-yI84mnnh3pdQtIOo+oGWofaI0rvfhp3DOavB8KHIkQr+RcjF+fxsqbelRfVb25gx7yEWPNCMB8wM+HhklSEFJg==", "requires": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/signature-v4": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.310.0.tgz", - "integrity": "sha512-1M60P1ZBNAjCFv9sYW29OF6okktaeibWyW3lMXqzoHF70lHBZh+838iUchznXUA5FLabfn4jBFWMRxlAXJUY2Q==", - "requires": { - "@aws-sdk/is-array-buffer": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-hex-encoding": "3.310.0", - "@aws-sdk/util-middleware": "3.310.0", - "@aws-sdk/util-uri-escape": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.303.0.tgz", + "integrity": "sha512-muw5yclLOgXPHIxv60mhO6R0GVjKbf+M6E/cWvIEVGq8Ke+mLMYNFYNdKP/f/8JgTtW2xwQ7pIK3U8x284ZqPw==", + "requires": { + "@aws-sdk/is-array-buffer": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-hex-encoding": "3.295.0", + "@aws-sdk/util-middleware": "3.303.0", + "@aws-sdk/util-uri-escape": "3.303.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/smithy-client": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.325.0.tgz", - "integrity": "sha512-sqDFuhjxd8+Q9qI8MmXe/g1/FgoViwetv14K+bpHK7pGlOIvDyT7TboDNClfgqSLdgTDCEaoC3JRSi9Y5RgbmA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.303.0.tgz", + "integrity": "sha512-WDTC9ODdpRAXo8+Mtr5hsPJeR3y3LxfZZFg5dplJgkaxV+MFdnsUCxZfAZMnxcGy5Q2qTzlLLNk9CpadS72v+g==", "requires": { - "@aws-sdk/middleware-stack": "3.325.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/middleware-stack": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/token-providers": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.328.0.tgz", - "integrity": "sha512-AWrRwa0RqSiz9CT3QKuMYuZsRXaeKCp8kMsx1CgrG5VUaag+NhDBBMYVbxgb0SyoqbsGC+wDUXtSCZctrE7Z3Q==", - "requires": { - "@aws-sdk/client-sso-oidc": "3.328.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/shared-ini-file-loader": "3.310.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.303.0.tgz", + "integrity": "sha512-7G7VYbqyX0v6RTD/m7XmArZToMek4jYXR/TuuGHK6ifNJeMDwkU4BcoVDj37vvTPYp6qKU5IE+bE3XmPyVWnGQ==", + "requires": { + "@aws-sdk/client-sso-oidc": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/shared-ini-file-loader": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/types": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.310.0.tgz", - "integrity": "sha512-j8eamQJ7YcIhw7fneUfs8LYl3t01k4uHi4ZDmNRgtbmbmTTG3FZc2MotStZnp3nZB6vLiPF1o5aoJxWVvkzS6A==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.303.0.tgz", + "integrity": "sha512-H+Cy8JDTsK87MID6MJbV9ad5xdS9YvaLZSeveC2Zs1WNu2Rp6X9j+mg3EqDSmBKUQVAFRy2b+CSKkH3nnBMedw==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/url-parser": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.310.0.tgz", - "integrity": "sha512-mCLnCaSB9rQvAgx33u0DujLvr4d5yEm/W5r789GblwwQnlNXedVu50QRizMLTpltYWyAUoXjJgQnJHmJMaKXhw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.303.0.tgz", + "integrity": "sha512-PXMXGhr89s0MiPTf8Ft/v3sPzh2geSrFhTVSO/01blfBQqtuu0JMqORhLheOdi16AhQNVlYHDW2tWdx7/T+KsA==", "requires": { - "@aws-sdk/querystring-parser": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/querystring-parser": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-base64": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.310.0.tgz", - "integrity": "sha512-v3+HBKQvqgdzcbL+pFswlx5HQsd9L6ZTlyPVL2LS9nNXnCcR3XgGz9jRskikRUuUvUXtkSG1J88GAOnJ/apTPg==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64/-/util-base64-3.303.0.tgz", + "integrity": "sha512-oj+p/GHHPcZEKjiiOHU/CyNQeh8i+8dfMMzU+VGdoK5jHaVG8h2b+V7GPf7I4wDkG2ySCK5b5Jw5NUHwdTJ13Q==", "requires": { - "@aws-sdk/util-buffer-from": "3.310.0", + "@aws-sdk/util-buffer-from": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-body-length-browser": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.310.0.tgz", - "integrity": "sha512-sxsC3lPBGfpHtNTUoGXMQXLwjmR0zVpx0rSvzTPAuoVILVsp5AU/w5FphNPxD5OVIjNbZv9KsKTuvNTiZjDp9g==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.303.0.tgz", + "integrity": "sha512-T643m0pKzgjAvPFy4W8zL+aszG3T22U8hb6stlMvT0z++Smv8QfIvkIkXjWyH2KlOt5GKliHwdOv8SAi0FSMJQ==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-body-length-node": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.310.0.tgz", - "integrity": "sha512-2tqGXdyKhyA6w4zz7UPoS8Ip+7sayOg9BwHNidiGm2ikbDxm1YrCfYXvCBdwaJxa4hJfRVz+aL9e+d3GqPI9pQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.303.0.tgz", + "integrity": "sha512-/hS8z6e18Le60hJr2TUIFoUjUiAsnQsuDn6DxX74GXhMOHeSwZDJ9jHF39quYkNMmAE37GrVH4MI9vE0pN27qw==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-buffer-from": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.310.0.tgz", - "integrity": "sha512-i6LVeXFtGih5Zs8enLrt+ExXY92QV25jtEnTKHsmlFqFAuL3VBeod6boeMXkN2p9lbSVVQ1sAOOYZOHYbYkntw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.303.0.tgz", + "integrity": "sha512-hUU+NW+SW6RNojtAKnnmz+tDShVKlEx2YsS4a5fSfrKRUes+zWz10cxVX0RQfysd3R6tdSHhbjsSj8eCIybheg==", "requires": { - "@aws-sdk/is-array-buffer": "3.310.0", + "@aws-sdk/is-array-buffer": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-config-provider": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.310.0.tgz", - "integrity": "sha512-xIBaYo8dwiojCw8vnUcIL4Z5tyfb1v3yjqyJKJWV/dqKUFOOS0U591plmXbM+M/QkXyML3ypon1f8+BoaDExrg==", + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.295.0.tgz", + "integrity": "sha512-/5Dl1aV2yI8YQjqwmg4RTnl/E9NmNsx7HIwBZt+dTcOrM0LMUwczQBFFcLyqCj/qv5y+VsvLoAAA/OiBT7hb3w==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-defaults-mode-browser": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.325.0.tgz", - "integrity": "sha512-gcowpXTo8E8N3jxD2KW+csiicJ7HPkhWnpL925xgwe0oq091OpATsKFrBOL18h72VfRWf4FAsR9lVwxSQ78zSA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.303.0.tgz", + "integrity": "sha512-jtZgCKelFe4/SHDHQu9ydbYttxSfqSlQojA5qxTJxLvzryIB+/GTHQ+sYWyMyzaD489W9elt1/cSsXd4LtPK0A==", "requires": { - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", "bowser": "^2.11.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-defaults-mode-node": { - "version": "3.325.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.325.0.tgz", - "integrity": "sha512-/5uoOrgNxoUxv3AwsdXjMA3f6KJA6fi69otA0RiINjilCdcbOxq5GI11AFEyRio/+e+imriX4+UYjsguUR+f4g==", - "requires": { - "@aws-sdk/config-resolver": "3.310.0", - "@aws-sdk/credential-provider-imds": "3.310.0", - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/property-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.303.0.tgz", + "integrity": "sha512-c86iyot/u9bCVcy/rlWL+0kdR51c7C2d2yDXvO9iFCdMKAs28Hw1ijGczVmOcUQ61zKNFSGYx+VekHXN9IWYOg==", + "requires": { + "@aws-sdk/config-resolver": "3.303.0", + "@aws-sdk/credential-provider-imds": "3.303.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/property-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-endpoints": { - "version": "3.327.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.327.0.tgz", - "integrity": "sha512-2+2jTfBzhXsfpOci61gzaoBUVdGhFWja7k5cLAfOaRROkK+m+Zv532+m3cCQZjBXJ6pJ952MbiAroRSjFq0/SQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.303.0.tgz", + "integrity": "sha512-dPg9+l3VY3nclWFiWAVNWek5lQwgdtY8oRYOgCeyntce9FlNrPQgCRTVr36D0iQ0aNCs0GWzfjgL+rIdCF66/w==", "requires": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-hex-encoding": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.310.0.tgz", - "integrity": "sha512-sVN7mcCCDSJ67pI1ZMtk84SKGqyix6/0A1Ab163YKn+lFBQRMKexleZzpYzNGxYzmQS6VanP/cfU7NiLQOaSfA==", + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.295.0.tgz", + "integrity": "sha512-XJcoVo41kHzhe28PBm/rqt5mdCp8R6abwiW9ug1dA6FOoPUO8kBUxDv6xaOmA2hfRvd2ocFfBXaUCBqUowkGcQ==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-locate-window": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.310.0.tgz", - "integrity": "sha512-qo2t/vBTnoXpjKxlsC2e1gBrRm80M3bId27r0BRB2VniSSe7bL1mmzM+/HFtujm0iAxtPM+aLEflLJlJeDPg0w==", + "version": "3.295.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.295.0.tgz", + "integrity": "sha512-d/s+zhUx5Kh4l/ecMP/TBjzp1GR/g89Q4nWH6+wH5WgdHsK+LG+vmsk6mVNuP/8wsCofYG4NBqp5Ulbztbm9QA==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-middleware": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.310.0.tgz", - "integrity": "sha512-FTSUKL/eRb9X6uEZClrTe27QFXUNNp7fxYrPndZwk1hlaOP5ix+MIHBcI7pIiiY/JPfOUmPyZOu+HetlFXjWog==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.303.0.tgz", + "integrity": "sha512-HAfBcbZw1+pY3dIEDM4jVpH1ViFcGH5s0q1dr+x4rcLGpMM3B4dH0HUgDPtycG8sw+nk+9jGgiEtgaCNOpJLGA==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-retry": { - "version": "3.327.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.327.0.tgz", - "integrity": "sha512-y15NLGTAT2vaLzA8klJ6Bo8NGjVAa3/njqc4iCbta/3GqKpQU0zbvw3Y5aWyHp8BhV4DSUTp088jWjaoZlSqgw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-retry/-/util-retry-3.303.0.tgz", + "integrity": "sha512-RWwRNjoWMcpDouz69wPuFXWFVzwYtUkTbJfa46SjKl1IwqMHS4f9yjJfCwJIoLOW9M/o2JB7nD0Ij3gqqzajLw==", "requires": { - "@aws-sdk/service-error-classification": "3.327.0", + "@aws-sdk/service-error-classification": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-stream-browser": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.310.0.tgz", - "integrity": "sha512-bysXZHwFwvbqOTCScCdCnoLk1K3GCo0HRIYEZuL7O7MHrQmfaYRXcaft/p22+GUv9VeFXS/eJJZ5r4u32az94w==", - "requires": { - "@aws-sdk/fetch-http-handler": "3.310.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-base64": "3.310.0", - "@aws-sdk/util-hex-encoding": "3.310.0", - "@aws-sdk/util-utf8": "3.310.0", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.303.0.tgz", + "integrity": "sha512-TYKCLR40IvQOBIkCJQFugLVDph0mdA69KbvCgTk4evpRub14fkQRapUBx/x4dsIajanvHv7OrQaJKUvyiDK6eQ==", + "requires": { + "@aws-sdk/fetch-http-handler": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-base64": "3.303.0", + "@aws-sdk/util-hex-encoding": "3.295.0", + "@aws-sdk/util-utf8": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-stream-node": { - "version": "3.328.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.328.0.tgz", - "integrity": "sha512-9h8oji5OTmatXMfPIasAapL59QDO7TR0J/B5Y3ERwGxy2U373LEy8Uvs+mbPIIQV1ztCLwHWDxKQoTUj4hLxoQ==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.303.0.tgz", + "integrity": "sha512-NR9waJzNXYu7QgiVmXpk64EcW9qbELpLSZ+BCMioJD3+023vJuibgq2Ue03DxRt5Uau2p568mvCRGNc3HqDM3A==", "requires": { - "@aws-sdk/node-http-handler": "3.328.0", - "@aws-sdk/types": "3.310.0", - "@aws-sdk/util-buffer-from": "3.310.0", + "@aws-sdk/node-http-handler": "3.303.0", + "@aws-sdk/types": "3.303.0", + "@aws-sdk/util-buffer-from": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-uri-escape": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.310.0.tgz", - "integrity": "sha512-drzt+aB2qo2LgtDoiy/3sVG8w63cgLkqFIa2NFlGpUgHFWTXkqtbgf4L5QdjRGKWhmZsnqkbtL7vkSWEcYDJ4Q==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.303.0.tgz", + "integrity": "sha512-N3ULNuHCL3QzAlCTY+XRRkRQTYCTU8RRuzFCJX0pDpz9t2K+tLT7DbxqupWGNFGl5Xlulf1Is14J3BP/Dx91rA==", "requires": { "tslib": "^2.5.0" } }, "@aws-sdk/util-user-agent-browser": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.310.0.tgz", - "integrity": "sha512-yU/4QnHHuQ5z3vsUqMQVfYLbZGYwpYblPiuZx4Zo9+x0PBkNjYMqctdDcrpoH9Z2xZiDN16AmQGK1tix117ZKw==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.303.0.tgz", + "integrity": "sha512-Kex3abpUrTX9z129jiI8sfjIUmQDwiWjhkvBkPmrwjFY/sZcnOcXj5nP2iwJ+k6CnA5ZK5PjZ6P62t+eJ5MTXw==", "requires": { - "@aws-sdk/types": "3.310.0", + "@aws-sdk/types": "3.303.0", "bowser": "^2.11.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-user-agent-node": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.310.0.tgz", - "integrity": "sha512-Ra3pEl+Gn2BpeE7KiDGpi4zj7WJXZA5GXnGo3mjbi9+Y3zrbuhJAbdZO3mO/o7xDgMC6ph4xCTbaSGzU6b6EDg==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.303.0.tgz", + "integrity": "sha512-QYUg8F/Ho6AsVZaSSRMf/LWoEPDyOwgKZBw3AbKoH6RxAdAsdL1SXz5t4A6jHakP9TLVN2Yw2WRbHDe4LATASQ==", "requires": { - "@aws-sdk/node-config-provider": "3.310.0", - "@aws-sdk/types": "3.310.0", + "@aws-sdk/node-config-provider": "3.303.0", + "@aws-sdk/types": "3.303.0", "tslib": "^2.5.0" } }, "@aws-sdk/util-utf8": { - "version": "3.310.0", - "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8/-/util-utf8-3.310.0.tgz", - "integrity": "sha512-DnLfFT8uCO22uOJc0pt0DsSNau1GTisngBCDw8jQuWT5CqogMJu4b/uXmwEqfj8B3GX6Xsz8zOd6JpRlPftQoA==", + "version": "3.303.0", + "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8/-/util-utf8-3.303.0.tgz", + "integrity": "sha512-tZXVuMOIONPOuOGBs/XRdzxv6jUvTM620dRFFIHZwlGiW8bo0x0LlonrzDAJZA4e9ZwmxJIj8Ji13WVRBGvZWg==", "requires": { - "@aws-sdk/util-buffer-from": "3.310.0", + "@aws-sdk/util-buffer-from": "3.303.0", "tslib": "^2.5.0" } }, @@ -9639,38 +9542,38 @@ } }, "@babel/compat-data": { - "version": "7.21.7", - "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.21.7.tgz", - "integrity": "sha512-KYMqFYTaenzMK4yUtf4EW9wc4N9ef80FsbMtkwool5zpwl4YrT1SdWYSTRcT94KO4hannogdS+LxY7L+arP3gA==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.20.1.tgz", + "integrity": "sha512-EWZ4mE2diW3QALKvDMiXnbZpRvlj+nayZ112nK93SnhqOtpdsbVD4W+2tEoT3YNBAG9RBR0ISY758ZkOgsn6pQ==", "dev": true }, "@babel/core": { - "version": "7.21.8", - "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.21.8.tgz", - "integrity": "sha512-YeM22Sondbo523Sz0+CirSPnbj9bG3P0CdHcBZdqUuaeOaYEFbOLoGU7lebvGP6P5J/WE9wOn7u7C4J9HvS1xQ==", - "dev": true, - "requires": { - "@ampproject/remapping": "^2.2.0", - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.5", - "@babel/helper-compilation-targets": "^7.21.5", - "@babel/helper-module-transforms": "^7.21.5", - "@babel/helpers": "^7.21.5", - "@babel/parser": "^7.21.8", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.20.2.tgz", + "integrity": "sha512-w7DbG8DtMrJcFOi4VrLm+8QM4az8Mo+PuLBKLp2zrYRCow8W/f9xiXm5sN53C8HksCyDQwCKha9JiDoIyPjT2g==", + "dev": true, + "requires": { + "@ampproject/remapping": "^2.1.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.2", + "@babel/helper-compilation-targets": "^7.20.0", + "@babel/helper-module-transforms": "^7.20.2", + "@babel/helpers": "^7.20.1", + "@babel/parser": "^7.20.2", + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2", "convert-source-map": "^1.7.0", "debug": "^4.1.0", "gensync": "^1.0.0-beta.2", - "json5": "^2.2.2", + "json5": "^2.2.1", "semver": "^6.3.0" }, "dependencies": { "@babel/code-frame": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", - "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dev": true, "requires": { "@babel/highlight": "^7.18.6" @@ -9685,67 +9588,63 @@ } }, "@babel/generator": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.21.5.tgz", - "integrity": "sha512-SrKK/sRv8GesIW1bDagf9cCG38IOMYZusoe1dfg0D8aiUe3Amvoj1QtjTPAWcfrZFvIwlleLb0gxzQidL9w14w==", + "version": "7.20.4", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.20.4.tgz", + "integrity": "sha512-luCf7yk/cm7yab6CAW1aiFnmEfBJplb/JojV56MYEK7ziWfGmFlTfmL9Ehwfy4gFhbjBfWO1wj7/TuSbVNEEtA==", "dev": true, "requires": { - "@babel/types": "^7.21.5", + "@babel/types": "^7.20.2", "@jridgewell/gen-mapping": "^0.3.2", - "@jridgewell/trace-mapping": "^0.3.17", "jsesc": "^2.5.1" + }, + "dependencies": { + "@jridgewell/gen-mapping": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.2.tgz", + "integrity": "sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==", + "dev": true, + "requires": { + "@jridgewell/set-array": "^1.0.1", + "@jridgewell/sourcemap-codec": "^1.4.10", + "@jridgewell/trace-mapping": "^0.3.9" + } + } } }, "@babel/helper-compilation-targets": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.21.5.tgz", - "integrity": "sha512-1RkbFGUKex4lvsB9yhIfWltJM5cZKUftB2eNajaDv3dCMEp49iBG0K14uH8NnX9IPux2+mK7JGEOB0jn48/J6w==", + "version": "7.20.0", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.20.0.tgz", + "integrity": "sha512-0jp//vDGp9e8hZzBc6N/KwA5ZK3Wsm/pfm4CrY7vzegkVxc65SgSn6wYOnwHe9Js9HRQ1YTCKLGPzDtaS3RoLQ==", "dev": true, "requires": { - "@babel/compat-data": "^7.21.5", - "@babel/helper-validator-option": "^7.21.0", + "@babel/compat-data": "^7.20.0", + "@babel/helper-validator-option": "^7.18.6", "browserslist": "^4.21.3", - "lru-cache": "^5.1.1", "semver": "^6.3.0" }, "dependencies": { - "lru-cache": { - "version": "5.1.1", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - "dev": true, - "requires": { - "yallist": "^3.0.2" - } - }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true - }, - "yallist": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - "dev": true } } }, "@babel/helper-environment-visitor": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.21.5.tgz", - "integrity": "sha512-IYl4gZ3ETsWocUWgsFZLM5i1BYx9SoemminVEXadgLBa9TdeorzgLKm8wWLA6J1N/kT3Kch8XIk1laNzYoHKvQ==", + "version": "7.18.9", + "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.18.9.tgz", + "integrity": "sha512-3r/aACDJ3fhQ/EVgFy0hpj8oHyHpQc+LPtJoY9SzTThAsStm4Ptegq92vqKoE3vD706ZVFWITnMnxucw+S9Ipg==", "dev": true }, "@babel/helper-function-name": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.21.0.tgz", - "integrity": "sha512-HfK1aMRanKHpxemaY2gqBmL04iAPOPRj7DxtNbiDOrJK+gdwkiNRVpCpUJYbUT+aZyemKN8brqTOxzCaG6ExRg==", + "version": "7.19.0", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.19.0.tgz", + "integrity": "sha512-WAwHBINyrpqywkUH0nTnNgI5ina5TFn85HKS0pbPDfxFfhyR/aNQEn4hGi1P1JyT//I0t4OgXUlofzWILRvS5w==", "dev": true, "requires": { - "@babel/template": "^7.20.7", - "@babel/types": "^7.21.0" + "@babel/template": "^7.18.10", + "@babel/types": "^7.19.0" } }, "@babel/helper-hoist-variables": { @@ -9758,37 +9657,37 @@ } }, "@babel/helper-module-imports": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.21.4.tgz", - "integrity": "sha512-orajc5T2PsRYUN3ZryCEFeMDYwyw09c/pZeaQEZPH0MpKzSvn3e0uXsDBu3k03VI+9DBiRo+l22BfKTpKwa/Wg==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.18.6.tgz", + "integrity": "sha512-0NFvs3VkuSYbFi1x2Vd6tKrywq+z/cLeYC/RJNFrIX/30Bf5aiGYbtvGXolEktzJH8o5E5KJ3tT+nkxuuZFVlA==", "dev": true, "requires": { - "@babel/types": "^7.21.4" + "@babel/types": "^7.18.6" } }, "@babel/helper-module-transforms": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.21.5.tgz", - "integrity": "sha512-bI2Z9zBGY2q5yMHoBvJ2a9iX3ZOAzJPm7Q8Yz6YeoUjU/Cvhmi2G4QyTNyPBqqXSgTjUxRg3L0xV45HvkNWWBw==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.20.2.tgz", + "integrity": "sha512-zvBKyJXRbmK07XhMuujYoJ48B5yvvmM6+wcpv6Ivj4Yg6qO7NOZOSnvZN9CRl1zz1Z4cKf8YejmCMh8clOoOeA==", "dev": true, "requires": { - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-module-imports": "^7.21.4", - "@babel/helper-simple-access": "^7.21.5", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-module-imports": "^7.18.6", + "@babel/helper-simple-access": "^7.20.2", "@babel/helper-split-export-declaration": "^7.18.6", "@babel/helper-validator-identifier": "^7.19.1", - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.2" } }, "@babel/helper-simple-access": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.21.5.tgz", - "integrity": "sha512-ENPDAMC1wAjR0uaCUwliBdiSl1KBJAVnMTzXqi64c2MG8MPR6ii4qf7bSXDqSFbr4W6W028/rf5ivoHop5/mkg==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.20.2.tgz", + "integrity": "sha512-+0woI/WPq59IrqDYbVGfshjT5Dmk/nnbdpcF8SnMhhXObpTq2KNBdLFRFrkVdbDOyUmHBCxzm5FHV1rACIkIbA==", "dev": true, "requires": { - "@babel/types": "^7.21.5" + "@babel/types": "^7.20.2" } }, "@babel/helper-split-export-declaration": { @@ -9801,9 +9700,9 @@ } }, "@babel/helper-string-parser": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.21.5.tgz", - "integrity": "sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==", + "version": "7.19.4", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.19.4.tgz", + "integrity": "sha512-nHtDoQcuqFmwYNYPz3Rah5ph2p8PFeFCsZk9A/48dPc/rGocJ5J3hAAZ7pb76VWX3fZKu+uEr/FhH5jLx7umrw==", "dev": true }, "@babel/helper-validator-identifier": { @@ -9812,20 +9711,20 @@ "integrity": "sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==" }, "@babel/helper-validator-option": { - "version": "7.21.0", - "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.21.0.tgz", - "integrity": "sha512-rmL/B8/f0mKS2baE9ZpyTcTavvEuWhTTW8amjzXNvYG4AwBsqTLikfXsEofsJEfKHf+HQVQbFOHy6o+4cnC/fQ==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.18.6.tgz", + "integrity": "sha512-XO7gESt5ouv/LRJdrVjkShckw6STTaB7l9BrpBaAHDeF5YZT+01PCwmR0SJHnkW6i8OwW/EVWRShfi4j2x+KQw==", "dev": true }, "@babel/helpers": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.21.5.tgz", - "integrity": "sha512-BSY+JSlHxOmGsPTydUkPf1MdMQ3M81x5xGCOVgWM3G8XH77sJ292Y2oqcp0CbbgxhqBuI46iUz1tT7hqP7EfgA==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.20.1.tgz", + "integrity": "sha512-J77mUVaDTUJFZ5BpP6mMn6OIl3rEWymk2ZxDBQJUG3P+PbmyMcF3bYWvz0ma69Af1oobDqT/iAsvzhB58xhQUg==", "dev": true, "requires": { - "@babel/template": "^7.20.7", - "@babel/traverse": "^7.21.5", - "@babel/types": "^7.21.5" + "@babel/template": "^7.18.10", + "@babel/traverse": "^7.20.1", + "@babel/types": "^7.20.0" } }, "@babel/highlight": { @@ -9890,25 +9789,25 @@ } }, "@babel/parser": { - "version": "7.21.8", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.8.tgz", - "integrity": "sha512-6zavDGdzG3gUqAdWvlLFfk+36RilI+Pwyuuh7HItyeScCWP3k6i8vKclAQ0bM/0y/Kz/xiwvxhMv9MgTJP5gmA==" + "version": "7.21.4", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.21.4.tgz", + "integrity": "sha512-alVJj7k7zIxqBZ7BTRhz0IqJFxW1VJbm6N8JbcYhQ186df9ZBPbZBmWSqAMXwHGsCJdYks7z/voa3ibiS5bCIw==" }, "@babel/template": { - "version": "7.20.7", - "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.20.7.tgz", - "integrity": "sha512-8SegXApWe6VoNw0r9JHpSteLKTpTiLZ4rMlGIm9JQ18KiCtyQiAMEazujAHrUS5flrcqYZa75ukev3P6QmUwUw==", + "version": "7.18.10", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.18.10.tgz", + "integrity": "sha512-TI+rCtooWHr3QJ27kJxfjutghu44DLnasDMwpDqCXVTal9RLp3RSYNh4NdBrRP2cQAoG9A8juOQl6P6oZG4JxA==", "dev": true, "requires": { "@babel/code-frame": "^7.18.6", - "@babel/parser": "^7.20.7", - "@babel/types": "^7.20.7" + "@babel/parser": "^7.18.10", + "@babel/types": "^7.18.10" }, "dependencies": { "@babel/code-frame": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", - "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dev": true, "requires": { "@babel/highlight": "^7.18.6" @@ -9917,27 +9816,27 @@ } }, "@babel/traverse": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.21.5.tgz", - "integrity": "sha512-AhQoI3YjWi6u/y/ntv7k48mcrCXmus0t79J9qPNlk/lAsFlCiJ047RmbfMOawySTHtywXhbXgpx/8nXMYd+oFw==", + "version": "7.20.1", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.20.1.tgz", + "integrity": "sha512-d3tN8fkVJwFLkHkBN479SOsw4DMZnz8cdbL/gvuDuzy3TS6Nfw80HuQqhw1pITbIruHyh7d1fMA47kWzmcUEGA==", "dev": true, "requires": { - "@babel/code-frame": "^7.21.4", - "@babel/generator": "^7.21.5", - "@babel/helper-environment-visitor": "^7.21.5", - "@babel/helper-function-name": "^7.21.0", + "@babel/code-frame": "^7.18.6", + "@babel/generator": "^7.20.1", + "@babel/helper-environment-visitor": "^7.18.9", + "@babel/helper-function-name": "^7.19.0", "@babel/helper-hoist-variables": "^7.18.6", "@babel/helper-split-export-declaration": "^7.18.6", - "@babel/parser": "^7.21.5", - "@babel/types": "^7.21.5", + "@babel/parser": "^7.20.1", + "@babel/types": "^7.20.0", "debug": "^4.1.0", "globals": "^11.1.0" }, "dependencies": { "@babel/code-frame": { - "version": "7.21.4", - "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.21.4.tgz", - "integrity": "sha512-LYvhNKfwWSPpocw8GI7gpK2nq3HSDuEPC/uSYaALSJu9xjsalaaYFOq0Pwt5KmVqwEbZlDu81aLXwBOmD/Fv9g==", + "version": "7.18.6", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.18.6.tgz", + "integrity": "sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q==", "dev": true, "requires": { "@babel/highlight": "^7.18.6" @@ -9952,12 +9851,12 @@ } }, "@babel/types": { - "version": "7.21.5", - "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.21.5.tgz", - "integrity": "sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==", + "version": "7.20.2", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.20.2.tgz", + "integrity": "sha512-FnnvsNWgZCr232sqtXggapvlkk/tuwR/qhGzcmxI0GXLCjmPYQPzio2FbdlWuY6y1sHFfQKk+rRbUZ9VStQMog==", "dev": true, "requires": { - "@babel/helper-string-parser": "^7.21.5", + "@babel/helper-string-parser": "^7.19.4", "@babel/helper-validator-identifier": "^7.19.1", "to-fast-properties": "^2.0.0" } @@ -9980,32 +9879,32 @@ } }, "@google-cloud/text-to-speech": { - "version": "4.2.2", - "resolved": "https://registry.npmjs.org/@google-cloud/text-to-speech/-/text-to-speech-4.2.2.tgz", - "integrity": "sha512-tpfjyS86ieOYCG8sRBaoS0EVUouWTO5NC2rAsMyQZKjAhS6Y+u4evRPEpHg0Q42oKRwhphBCkU0Uvro34lRA8g==", + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/@google-cloud/text-to-speech/-/text-to-speech-4.2.1.tgz", + "integrity": "sha512-7UpvE5daaNg0hX1m8jmLR2uZTalgd7xm5vqotQbovdhF1nQ9EU0x48XUsVNiXroKOXZ3GDqJCGhGw4vC2Xp03w==", "requires": { - "google-gax": "^3.5.8" + "google-gax": "^3.5.2" } }, "@grpc/grpc-js": { - "version": "1.8.14", - "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.8.14.tgz", - "integrity": "sha512-w84maJ6CKl5aApCMzFll0hxtFNT6or9WwMslobKaqWUEf1K+zhlL43bSQhFreyYWIWR+Z0xnVFC1KtLm4ZpM/A==", + "version": "1.8.13", + "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.8.13.tgz", + "integrity": "sha512-iY3jsdfbc0ARoCLFvbvUB8optgyb0r1XLPb142u+QtgBcKJYkCIFt3Fd/881KqjLYWjsBJF57N3b8Eop9NDfUA==", "requires": { "@grpc/proto-loader": "^0.7.0", "@types/node": ">=12.12.47" } }, "@grpc/proto-loader": { - "version": "0.7.7", - "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.7.tgz", - "integrity": "sha512-1TIeXOi8TuSCQprPItwoMymZXxWT0CPxUhkrkeCUH+D8U7QDwQ6b7SUz2MaLuWM2llT+J/TVFLmQI5KtML3BhQ==", + "version": "0.7.6", + "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.6.tgz", + "integrity": "sha512-QyAXR8Hyh7uMDmveWxDSUcJr9NAWaZ2I6IXgAYvQmfflwouTM+rArE2eEaCtLlRqO81j7pRLCt81IefUei6Zbw==", "requires": { "@types/long": "^4.0.1", "lodash.camelcase": "^4.3.0", "long": "^4.0.0", "protobufjs": "^7.0.0", - "yargs": "^17.7.2" + "yargs": "^16.2.0" } }, "@humanwhocodes/config-array": { @@ -10036,14 +9935,6 @@ "get-package-type": "^0.1.0", "js-yaml": "^3.13.1", "resolve-from": "^5.0.0" - }, - "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - } } }, "@istanbuljs/schema": { @@ -10053,12 +9944,12 @@ "dev": true }, "@jambonz/db-helpers": { - "version": "0.7.9", - "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.9.tgz", - "integrity": "sha512-JajIJSPXW0OTjVprDwTH8/yU/qhHY1XkXe6f5PRh0kvRt42AmYggcGKqgivUkY1seR/GVCnQccDcIA2ZEdvDUg==", + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.4.tgz", + "integrity": "sha512-sR3f+RpCrSWkZ7E8qjO9/Fgsa8aBuNkm4Ubr6To0K9GDsE9rb9dsYUGpXN/0f9CGn7jc4icc53OBkt+iM2PbCw==", "requires": { "cidr-matcher": "^2.1.1", - "debug": "^4.3.4", + "debug": "^4.3.3", "mysql2": "^2.3.3", "node-object-hash": "^2.3.10", "uuid": "^8.3.2" @@ -10081,9 +9972,9 @@ } }, "@jambonz/realtimedb-helpers": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.2.tgz", - "integrity": "sha512-hTlMw0pmwNHTAQVm3O1asHllRSwi5C+kLXjqZN4C8bdw08f6CY48qdX/aNHLlx5TWI1I5l0ReO745KrUFVPA6w==", + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.0.tgz", + "integrity": "sha512-hu+CcV0jzQU6J4vW8bBEz52NqEroLHOB0wjVb/VmSL4N0+MAJ1wbPUNk8go5aMk809Vr/Od2z9nHInGnTiBHzA==", "requires": { "@jambonz/promisify-redis": "^0.0.6", "debug": "^4.3.4", @@ -10127,10 +10018,26 @@ "influx": "^5.9.3" } }, + "@jambonz/tracing": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.5.tgz", + "integrity": "sha512-tjKwBLyXNcDO3uxuvZsOeLRB+3uyVkVRI3kPpEYBdfKSFfAxuWQoOfatodVJ7V5DU2eve8Z1wGK7RoLkacKFRQ==", + "requires": { + "@opentelemetry/api": "^1.4.0", + "@opentelemetry/exporter-jaeger": "^1.9.0", + "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", + "@opentelemetry/exporter-zipkin": "^1.9.0", + "@opentelemetry/instrumentation": "^0.35.0", + "@opentelemetry/resources": "^1.9.0", + "@opentelemetry/sdk-trace-base": "^1.9.0", + "@opentelemetry/sdk-trace-node": "^1.9.0", + "@opentelemetry/semantic-conventions": "^1.9.0" + } + }, "@jambonz/verb-specifications": { - "version": "0.0.21", - "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.21.tgz", - "integrity": "sha512-NQTQLI0k7nFmjqiKIbPaux2+ES2etFh/hnMNzPbszXS313mAnMZtv7y+EWrbniXeiXMCwHbkavm1H/N8+Lv5Qg==", + "version": "0.0.14", + "resolved": "https://registry.npmjs.org/@jambonz/verb-specifications/-/verb-specifications-0.0.14.tgz", + "integrity": "sha512-yT7I8PmBgmt+GTCno4F5ryL4CQrgIVsE2YUfVjCMg09pjnrumdKVqArFXW8KZsNzbCKjhVTtQE60kJd6gWCQfg==", "requires": { "debug": "^4.3.4", "pino": "^8.8.0" @@ -10149,14 +10056,13 @@ } }, "@jridgewell/gen-mapping": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz", - "integrity": "sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ==", + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.1.1.tgz", + "integrity": "sha512-sQXCasFk+U8lWYEe66WxRDOE9PjVz4vSM51fTu3Hw+ClTpUSQb718772vH3pyS5pShp6lvQM7SxgIDXXXmOX7w==", "dev": true, "requires": { - "@jridgewell/set-array": "^1.0.1", - "@jridgewell/sourcemap-codec": "^1.4.10", - "@jridgewell/trace-mapping": "^0.3.9" + "@jridgewell/set-array": "^1.0.0", + "@jridgewell/sourcemap-codec": "^1.4.10" } }, "@jridgewell/resolve-uri": { @@ -10172,27 +10078,19 @@ "dev": true }, "@jridgewell/sourcemap-codec": { - "version": "1.4.15", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz", - "integrity": "sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg==", + "version": "1.4.14", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", + "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", "dev": true }, "@jridgewell/trace-mapping": { - "version": "0.3.18", - "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.18.tgz", - "integrity": "sha512-w+niJYzMHdd7USdiH2U6869nqhD2nbfZXND5Yp93qIbEmnDNk7PD48o+YchRVpzMU7M6jVCbenTR7PA1FLQ9pA==", + "version": "0.3.17", + "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.17.tgz", + "integrity": "sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==", "dev": true, "requires": { "@jridgewell/resolve-uri": "3.1.0", "@jridgewell/sourcemap-codec": "1.4.14" - }, - "dependencies": { - "@jridgewell/sourcemap-codec": { - "version": "1.4.14", - "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.14.tgz", - "integrity": "sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==", - "dev": true - } } }, "@jsdoc/salty": { @@ -10204,96 +10102,62 @@ } }, "@opentelemetry/api": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.1.tgz", - "integrity": "sha512-O2yRJce1GOc6PAy3QxFM4NzFiWzvScDC1/5ihYBL6BUEVdq0XMWN01sppE+H6bBXbaFYipjwFLEWLg5PaSOThA==" + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.4.0.tgz", + "integrity": "sha512-IgMK9i3sFGNUqPMbjABm0G26g0QCKCUBfglhQ7rQq6WcxbKfEHRcmwsoER4hZcuYqJgkYn2OeuoJIv7Jsftp7g==" }, "@opentelemetry/context-async-hooks": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.12.0.tgz", - "integrity": "sha512-PmwAanPNWCyS9JYFzhzVzHgviLhc0UHjOwdth+hp3HgQQ9XZZNE635P8JhAUHZmbghW9/qQFafRWOS4VN9VVnQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.9.0.tgz", + "integrity": "sha512-Ur+TgRmJgAEvg6VQuhkqzsWsqoOtr+QSZ8r8Yf6WrvlZpAl/sdRU+yUXWjA7r8JFS9VbBq7IEp7oMStFuJT2ow==", "requires": {} }, "@opentelemetry/core": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.12.0.tgz", - "integrity": "sha512-4DWYNb3dLs2mSCGl65jY3aEgbvPWSHVQV/dmDWiYeWUrMakZQFcymqZOSUNZO0uDrEJoxMu8O5tZktX6UKFwag==", - "requires": { - "@opentelemetry/semantic-conventions": "1.12.0" - } - }, - "@opentelemetry/exporter-jaeger": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.12.0.tgz", - "integrity": "sha512-MGWslvok6tlNCHexHGnfXrSyobBqUDh4YOLENt2MeQ/F974SyVG4e73TD/CDM+227/rRM587hJ8dQBzvwUac/g==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.0.tgz", + "integrity": "sha512-Koy1ApRUp5DB5KpOqhDk0JjO9x6QeEkmcePl8qQDsXZGF4MuHUBShXibd+J2tRNckTsvgEHi1uEuUckDgN+c/A==", "requires": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0", - "jaeger-client": "^3.15.0" + "@opentelemetry/semantic-conventions": "1.9.0" } }, - "@opentelemetry/exporter-trace-otlp-http": { - "version": "0.35.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.35.1.tgz", - "integrity": "sha512-EJgAsrvscKsqb/GzF1zS74vM+Z/aQRhrFE7hs/1GK1M9bLixaVyMGwg2pxz1wdYdjxS1mqpHMhXU+VvMvFCw1w==", - "requires": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/otlp-exporter-base": "0.35.1", - "@opentelemetry/otlp-transformer": "0.35.1", - "@opentelemetry/resources": "1.9.1", - "@opentelemetry/sdk-trace-base": "1.9.1" - }, - "dependencies": { - "@opentelemetry/core": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", - "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", - "requires": { - "@opentelemetry/semantic-conventions": "1.9.1" - } - }, - "@opentelemetry/resources": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", - "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", - "requires": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/semantic-conventions": "1.9.1" - } - }, - "@opentelemetry/sdk-trace-base": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.1.tgz", - "integrity": "sha512-Y9gC5M1efhDLYHeeo2MWcDDMmR40z6QpqcWnPCm4Dmh+RHAMf4dnEBBntIe1dDpor686kyU6JV1D29ih1lZpsQ==", - "requires": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/resources": "1.9.1", - "@opentelemetry/semantic-conventions": "1.9.1" - } - }, - "@opentelemetry/semantic-conventions": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", - "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==" - } + "@opentelemetry/exporter-jaeger": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.9.0.tgz", + "integrity": "sha512-XLsDLuTqQyw08s0n03zeqmz2ike/iQHiep819SJliJnJJKMbGta+JvaWWgrh/YUEYlbBLc/mQP1cndXtd8lbaA==", + "requires": { + "@opentelemetry/core": "1.9.0", + "@opentelemetry/sdk-trace-base": "1.9.0", + "@opentelemetry/semantic-conventions": "1.9.0", + "jaeger-client": "^3.15.0" + } + }, + "@opentelemetry/exporter-trace-otlp-http": { + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.35.0.tgz", + "integrity": "sha512-wb5XqkTYq0uES65gIyjF5WZjUZooog/Dd2eP+AKOGJ9n5eewvvLjebC9qmFm0ZjHsTw7hzxnQVX/CvhD3NeVHw==", + "requires": { + "@opentelemetry/core": "1.9.0", + "@opentelemetry/otlp-exporter-base": "0.35.0", + "@opentelemetry/otlp-transformer": "0.35.0", + "@opentelemetry/resources": "1.9.0", + "@opentelemetry/sdk-trace-base": "1.9.0" } }, "@opentelemetry/exporter-zipkin": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.12.0.tgz", - "integrity": "sha512-HJ4ww7OjVIV4x5ZGgY+h+D1JS0GsCtnHuqZUVHl7EFFQxMGpbQcf5eISRtwqgQwlQKh2iqrEbiHdDyzbgA/7XQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.9.0.tgz", + "integrity": "sha512-+AghaRdhSritrXmB/zoreOheNVuDOWOy/LK/W4odCRtkM/WprpHCOVj5eN8/zqg0LVeE9AbVMODk//eR0lu2fA==", "requires": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.9.0", + "@opentelemetry/resources": "1.9.0", + "@opentelemetry/sdk-trace-base": "1.9.0", + "@opentelemetry/semantic-conventions": "1.9.0" } }, "@opentelemetry/instrumentation": { - "version": "0.35.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.1.tgz", - "integrity": "sha512-EZsvXqxenbRTSNsft6LDcrT4pjAiyZOx3rkDNeqKpwZZe6GmZtsXaZZKuDkJtz9fTjOGjDHjZj9/h80Ya9iIJw==", + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.0.tgz", + "integrity": "sha512-pQ5shVG53acTtq72DF7kx+4690ZKh3lATMRqf2JDMRvn0bcX/JaQ+NjPmt7oyT3h9brMA1rSFMVFS6yj8kd2OQ==", "requires": { "require-in-the-middle": "^5.0.3", "semver": "^7.3.2", @@ -10301,159 +10165,86 @@ } }, "@opentelemetry/otlp-exporter-base": { - "version": "0.35.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.1.tgz", - "integrity": "sha512-Sc0buJIs8CfUeQCL/12vDDjBREgsqHdjboBa/kPQDgMf008OBJSM02Ijj6T1TH+QVHl/VHBBEVJF+FTf0EH9Vg==", + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.0.tgz", + "integrity": "sha512-ybXq1Dvg38ZwiNCtqRCRmJ93rP7jMhL8nHEYVXNKknPVplUoY9fsb8tCPi24iY1suAD98wAMy3hiHk4W8VqfSg==", "requires": { - "@opentelemetry/core": "1.9.1" - }, - "dependencies": { - "@opentelemetry/core": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", - "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", - "requires": { - "@opentelemetry/semantic-conventions": "1.9.1" - } - }, - "@opentelemetry/semantic-conventions": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", - "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==" - } + "@opentelemetry/core": "1.9.0" } }, "@opentelemetry/otlp-transformer": { - "version": "0.35.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.35.1.tgz", - "integrity": "sha512-c0HXcJ49MKoWSaA49J8PXlVx48CeEFpL0odP6KBkVT+Bw6kAe8JlI3mIezyN05VCDJGtS2I5E6WEsE+DJL1t9A==", + "version": "0.35.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.35.0.tgz", + "integrity": "sha512-XjxX6RLHYKadQNEVs7TT7YRwEhXzP8itLiu6en2P7HukSg0gTwOMhNzriBZBRC4q+HVsdnncWua1wCD1TBAfmg==", "requires": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/resources": "1.9.1", - "@opentelemetry/sdk-metrics": "1.9.1", - "@opentelemetry/sdk-trace-base": "1.9.1" - }, - "dependencies": { - "@opentelemetry/core": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", - "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", - "requires": { - "@opentelemetry/semantic-conventions": "1.9.1" - } - }, - "@opentelemetry/resources": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", - "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", - "requires": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/semantic-conventions": "1.9.1" - } - }, - "@opentelemetry/sdk-trace-base": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.1.tgz", - "integrity": "sha512-Y9gC5M1efhDLYHeeo2MWcDDMmR40z6QpqcWnPCm4Dmh+RHAMf4dnEBBntIe1dDpor686kyU6JV1D29ih1lZpsQ==", - "requires": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/resources": "1.9.1", - "@opentelemetry/semantic-conventions": "1.9.1" - } - }, - "@opentelemetry/semantic-conventions": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", - "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==" - } + "@opentelemetry/core": "1.9.0", + "@opentelemetry/resources": "1.9.0", + "@opentelemetry/sdk-metrics": "1.9.0", + "@opentelemetry/sdk-trace-base": "1.9.0" } }, "@opentelemetry/propagator-b3": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.12.0.tgz", - "integrity": "sha512-WFcn98075QPc2zE1obhKydJHUehI5/HuLoelPEVwATj+487hjCwjHj9r2fgmQkWpvuNSB7CJaA0ys6qqq1N6lg==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.9.0.tgz", + "integrity": "sha512-5M/NvJj7ZHZXEU8lkAFhrSrWaHmCCkFLstNbL8p16qpTn1AOZowuSjMOYRoJJBmL5PUobkZ3W8Gjov1UgldPBg==", "requires": { - "@opentelemetry/core": "1.12.0" + "@opentelemetry/core": "1.9.0" } }, "@opentelemetry/propagator-jaeger": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.12.0.tgz", - "integrity": "sha512-ugtWF7GC6X5RIJ0+iMwW2iVAGNs206CAeq8XQ8OkJRg+v0lp4H0/i+gJ4hubTT8NIL5a3IxtIrAENPLIGdLucQ==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.9.0.tgz", + "integrity": "sha512-oo8RyuyzEbbXdIfeEG9iA5vmTH4Kld+dZMIZICd5G5SmeNcNes3sLrparpunIGms41wIP2mWiIlcOelDCmGceg==", "requires": { - "@opentelemetry/core": "1.12.0" + "@opentelemetry/core": "1.9.0" } }, "@opentelemetry/resources": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.12.0.tgz", - "integrity": "sha512-gunMKXG0hJrR0LXrqh7BVbziA/+iJBL3ZbXCXO64uY+SrExkwoyJkpiq9l5ismkGF/A20mDEV7tGwh+KyPw00Q==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.0.tgz", + "integrity": "sha512-zCyien0p3XWarU6zv72c/JZ6QlG5QW/hc61Nh5TSR1K9ndnljzAGrH55x4nfyQdubfoh9QxLNh9FXH0fWK6vcg==", "requires": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.9.0", + "@opentelemetry/semantic-conventions": "1.9.0" } }, "@opentelemetry/sdk-metrics": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.9.1.tgz", - "integrity": "sha512-AyhKDcA8NuV7o1+9KvzRMxNbATJ8AcrutKilJ6hWSo9R5utnzxgffV4y+Hp4mJn84iXxkv+CBb99GOJ2A5OMzA==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.9.0.tgz", + "integrity": "sha512-fSlJWhp86kCan1zuxdH6LTyUBYlohQwDKnxep5qHMnRTNErkYmdjgsmjZvSMdAfUFtQqfZmTXe2Lap7a5AIf9Q==", "requires": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/resources": "1.9.1", + "@opentelemetry/core": "1.9.0", + "@opentelemetry/resources": "1.9.0", "lodash.merge": "4.6.2" - }, - "dependencies": { - "@opentelemetry/core": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.9.1.tgz", - "integrity": "sha512-6/qon6tw2I8ZaJnHAQUUn4BqhTbTNRS0WP8/bA0ynaX+Uzp/DDbd0NS0Cq6TMlh8+mrlsyqDE7mO50nmv2Yvlg==", - "requires": { - "@opentelemetry/semantic-conventions": "1.9.1" - } - }, - "@opentelemetry/resources": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.9.1.tgz", - "integrity": "sha512-VqBGbnAfubI+l+yrtYxeLyOoL358JK57btPMJDd3TCOV3mV5TNBmzvOfmesM4NeTyXuGJByd3XvOHvFezLn3rQ==", - "requires": { - "@opentelemetry/core": "1.9.1", - "@opentelemetry/semantic-conventions": "1.9.1" - } - }, - "@opentelemetry/semantic-conventions": { - "version": "1.9.1", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.1.tgz", - "integrity": "sha512-oPQdbFDmZvjXk5ZDoBGXG8B4tSB/qW5vQunJWQMFUBp7Xe8O1ByPANueJ+Jzg58esEBegyyxZ7LRmfJr7kFcFg==" - } } }, "@opentelemetry/sdk-trace-base": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.12.0.tgz", - "integrity": "sha512-pfCOB3tNDlYVoWuz4D7Ji+Jmy9MHnATWHVpkERdCEiwUGEZ+4IvNPXUcPc37wJVmMpjGLeaWgPPrie0KIpWf1A==", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.9.0.tgz", + "integrity": "sha512-glNgtJjxAIrDku8DG5Xu3nBK25rT+hkyg7yuXh8RUurp/4BcsXjMyVqpyJvb2kg+lxAX73VJBhncRKGHn9t8QQ==", "requires": { - "@opentelemetry/core": "1.12.0", - "@opentelemetry/resources": "1.12.0", - "@opentelemetry/semantic-conventions": "1.12.0" + "@opentelemetry/core": "1.9.0", + "@opentelemetry/resources": "1.9.0", + "@opentelemetry/semantic-conventions": "1.9.0" } }, "@opentelemetry/sdk-trace-node": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.12.0.tgz", - "integrity": "sha512-PxpDemnNZLLeFNLAu95/K3QubjlaScXVjVQPlwPui65VRxIvxGVysnN7DFfsref+qoh1hI6nlrYSij43vxdm2w==", - "requires": { - "@opentelemetry/context-async-hooks": "1.12.0", - "@opentelemetry/core": "1.12.0", - "@opentelemetry/propagator-b3": "1.12.0", - "@opentelemetry/propagator-jaeger": "1.12.0", - "@opentelemetry/sdk-trace-base": "1.12.0", + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.9.0.tgz", + "integrity": "sha512-VTpjiqGQ4s8f0/szgZmVrtNSSmXFNoHwC4PNVwXyNeEqQcqyAygHvobpUG6m7qCiBFh6ZtrCuLdhhqWE04Objw==", + "requires": { + "@opentelemetry/context-async-hooks": "1.9.0", + "@opentelemetry/core": "1.9.0", + "@opentelemetry/propagator-b3": "1.9.0", + "@opentelemetry/propagator-jaeger": "1.9.0", + "@opentelemetry/sdk-trace-base": "1.9.0", "semver": "^7.3.5" } }, "@opentelemetry/semantic-conventions": { - "version": "1.12.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.12.0.tgz", - "integrity": "sha512-hO+bdeGOlJwqowUBoZF5LyP3ORUFOP1G0GRv8N45W/cztXbT2ZEXaAzfokRS9Xc9FWmYrDj32mF6SzH6wuoIyA==" + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.9.0.tgz", + "integrity": "sha512-po7penSfQ/Z8352lRVDpaBrd9znwA5mHGqXR7nDEiVnxkDFkBIhVf/tKeAJDIq/erFpcRowKFeCsr5eqqcSyFQ==" }, "@protobufjs/aspromise": { "version": "1.1.2", @@ -10510,9 +10301,9 @@ "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==" }, "@sinonjs/commons": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.0.tgz", - "integrity": "sha512-jXBtWAF4vmdNmZgD5FoKsVLv3rPgDnLgPbU84LIJ3otV44vJlDRokVng5v8NFJdCf/da9legHcKaRuZs4L7faA==", + "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" } @@ -10523,36 +10314,16 @@ "integrity": "sha512-SwUDyjWnah1AaNl7kxsa7cfLhlTYoiyhDAIgyh+El30YvXs/o7OLXpYH88Zdhyx9JExKrmHDJ+10bwIcY80Jmw==", "requires": { "@sinonjs/commons": "^2.0.0" - }, - "dependencies": { - "@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/samsam": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.0.tgz", - "integrity": "sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==", + "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" - }, - "dependencies": { - "@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/text-encoding": { @@ -10566,9 +10337,9 @@ "integrity": "sha512-OvjF+z51L3ov0OyAU0duzsYuvO01PH7x4t6DJx+guahgTnBHkhJdG7soQeTSFLWN3efnHyibZ4Z8l2EuWwJN3A==" }, "@types/async": { - "version": "3.2.20", - "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.20.tgz", - "integrity": "sha512-6jSBQQugzyX1aWto0CbvOnmxrU9tMoXfA9gc4IrLEtvr3dTwSg5GLGoWiZnGLI6UG/kqpB3JOQKQrqnhUWGKQA==" + "version": "3.2.18", + "resolved": "https://registry.npmjs.org/@types/async/-/async-3.2.18.tgz", + "integrity": "sha512-/IsuXp3B9R//uRLi40VlIYoMp7OzhkunPe2fDu7jGfQXI9y3CDCx6FC4juRLSqrpmLst3vgsiK536AAGJFl4Ww==" }, "@types/extend": { "version": "3.0.1", @@ -10648,9 +10419,9 @@ "integrity": "sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==" }, "@types/node": { - "version": "20.1.0", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.0.tgz", - "integrity": "sha512-O+z53uwx64xY7D6roOi4+jApDGFg0qn6WHcxe5QeqjMaTezBO/mxdfFXIVAVVyNWKx84OmPB3L8kbVYOTeN34A==" + "version": "18.15.11", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz", + "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==" }, "@types/rimraf": { "version": "3.0.2", @@ -10803,16 +10574,6 @@ "sprintf-js": "~1.0.2" } }, - "array-buffer-byte-length": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.0.tgz", - "integrity": "sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "is-array-buffer": "^3.0.1" - } - }, "array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", @@ -10835,6 +10596,33 @@ "resolved": "https://registry.npmjs.org/arrify/-/arrify-2.0.1.tgz", "integrity": "sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug==" }, + "asn1.js": { + "version": "5.4.1", + "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-5.4.1.tgz", + "integrity": "sha512-+I//4cYPccV8LdmBLiX8CYvf9Sp3vQsrqu2QNXRcrbiWvcx/UdlFiqUJJzxRQxgsZmvhXhn4cSKeSmoFjVdupA==", + "requires": { + "bn.js": "^4.0.0", + "inherits": "^2.0.1", + "minimalistic-assert": "^1.0.0", + "safer-buffer": "^2.1.0" + } + }, + "asn1.js-rfc2560": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/asn1.js-rfc2560/-/asn1.js-rfc2560-5.0.1.tgz", + "integrity": "sha512-1PrVg6kuBziDN3PGFmRk3QrjpKvP9h/Hv5yMrFZvC1kpzP6dQRzf5BpKstANqHBkaOUmTpakJWhicTATOA/SbA==", + "requires": { + "asn1.js-rfc5280": "^3.0.0" + } + }, + "asn1.js-rfc5280": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/asn1.js-rfc5280/-/asn1.js-rfc5280-3.0.0.tgz", + "integrity": "sha512-Y2LZPOWeZ6qehv698ZgOGGCZXBQShObWnGthTrIFlIQjuV1gg2B8QOhWFRExq/MR1VnPpIIe7P9vX2vElxv+Pg==", + "requires": { + "asn1.js": "^5.0.0" + } + }, "assert-plus": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", @@ -10851,6 +10639,20 @@ "resolved": "https://registry.npmjs.org/async/-/async-3.2.4.tgz", "integrity": "sha512-iAB+JbDEGXhyIUavoDl9WP/Jj106Kz9DEn1DPgYw5ruDn0e3Wgi3sKFm55sASdGBNOQB8F59d9qQ7deqrHA8wQ==" }, + "async-disk-cache": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/async-disk-cache/-/async-disk-cache-2.1.0.tgz", + "integrity": "sha512-iH+boep2xivfD9wMaZWkywYIURSmsL96d6MoqrC94BnGSvXE4Quf8hnJiHGFYhw/nLeIa1XyRaf4vvcvkwAefg==", + "requires": { + "debug": "^4.1.1", + "heimdalljs": "^0.2.3", + "istextorbinary": "^2.5.1", + "mkdirp": "^0.5.0", + "rimraf": "^3.0.0", + "rsvp": "^4.8.5", + "username-sync": "^1.0.2" + } + }, "asynckit": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", @@ -10867,9 +10669,9 @@ "integrity": "sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==" }, "aws-sdk": { - "version": "2.1373.0", - "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1373.0.tgz", - "integrity": "sha512-3/P79VU2VVeiof25bn8TSepEhWCRhwuQGYoEWX/2pApQRJAY+w/3JFVKHjbAe3NYEEBNeiAE6PQ9DqWz5Pp+Lw==", + "version": "2.1313.0", + "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1313.0.tgz", + "integrity": "sha512-8GMdtV2Uch3HL2c6+P3lNZFTcg/fqq9L3EWYRLb6ljCZvWKTssjdkjSJFDyTReNgeiKV224YRPYQbKpOEz4flQ==", "requires": { "buffer": "4.9.2", "events": "1.1.1", @@ -10880,13 +10682,27 @@ "url": "0.10.3", "util": "^0.12.4", "uuid": "8.0.0", - "xml2js": "0.5.0" + "xml2js": "0.4.19" }, "dependencies": { "uuid": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.0.0.tgz", "integrity": "sha512-jOXGuXZAWdsTH7eZLtyXMqUb9EcWMGZNbL9YcGBJl4MH4nrxHmZJhEHvyLFrkxo+28uLb/NYRcStH48fnD0Vzw==" + }, + "xml2js": { + "version": "0.4.19", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.19.tgz", + "integrity": "sha512-esZnJZJOiJR9wWKMyuvSE1y6Dq5LCuJanqhxslH2bxM6duahNZ+HMpCLhBQGZkbX6xRf8x1Y2eJlgt2q3qo49Q==", + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~9.0.1" + } + }, + "xmlbuilder": { + "version": "9.0.7", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", + "integrity": "sha512-7YXTQc3P2l9+0rjaUbLwMKRhtmwg1M1eDf6nag7urC7pIPYLD9W/jmzQ4ptRSUbodw5S0jfoGTflLemQibSpeQ==" } } }, @@ -10937,6 +10753,11 @@ "resolved": "https://registry.npmjs.org/bignumber.js/-/bignumber.js-9.1.1.tgz", "integrity": "sha512-pHm4LsMJ6lzgNGVfZHjMoO8sdoRhOzOH4MLmY65Jg70bpxCKu5iOHNJyfF6OyvYw7t8Fpf35RuzUyqnQsj8Vig==" }, + "binaryextensions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/binaryextensions/-/binaryextensions-2.3.0.tgz", + "integrity": "sha512-nAihlQsYGyc5Bwq6+EsubvANYGExeJKHDO3RjnvwU042fawQTQfM3Kxn7IHUXQOz4bzfwsGYYHGSvXyW4zOGLg==" + }, "bindings": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", @@ -10951,6 +10772,11 @@ "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" }, + "bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, "body-parser": { "version": "1.20.1", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", @@ -11008,15 +10834,15 @@ } }, "browserslist": { - "version": "4.21.5", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.5.tgz", - "integrity": "sha512-tUkiguQGW7S3IhB7N+c2MV/HZPSCPAAiYBZXLsBhFB/PCy6ZKKsZrmBayHV9fdGV/ARIfJ14NkxKzRDjvp7L6w==", + "version": "4.21.4", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.21.4.tgz", + "integrity": "sha512-CBHJJdDmgjl3daYjN5Cp5kbTf1mUhZoS+beLklHIvkOWscs83YAhLlF3Wsh/lciQYAcbBJgTOD44VtG31ZM4Hw==", "dev": true, "requires": { - "caniuse-lite": "^1.0.30001449", - "electron-to-chromium": "^1.4.284", - "node-releases": "^2.0.8", - "update-browserslist-db": "^1.0.10" + "caniuse-lite": "^1.0.30001400", + "electron-to-chromium": "^1.4.251", + "node-releases": "^2.0.6", + "update-browserslist-db": "^1.0.9" } }, "buffer": { @@ -11108,14 +10934,14 @@ } }, "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" + "version": "5.3.1", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", + "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" }, "caniuse-lite": { - "version": "1.0.30001486", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001486.tgz", - "integrity": "sha512-uv7/gXuHi10Whlj0pp5q/tsK/32J2QSqVRKQhs2j8VsDCjgyruAh/eEXHF822VqO9yT6iZKw3nRwZRSPBE9OQg==", + "version": "1.0.30001431", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001431.tgz", + "integrity": "sha512-zBUoFU0ZcxpvSt9IU66dXVT/3ctO1cy4y9cscs1szkPlcWb6pasYM144GqrUygUbT+k7cmUCW61cvskjcv0enQ==", "dev": true }, "caseless": { @@ -11165,12 +10991,12 @@ } }, "cliui": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/cliui/-/cliui-7.0.4.tgz", + "integrity": "sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ==", "requires": { "string-width": "^4.2.0", - "strip-ansi": "^6.0.1", + "strip-ansi": "^6.0.0", "wrap-ansi": "^7.0.0" } }, @@ -11215,9 +11041,9 @@ } }, "content-type": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz", - "integrity": "sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA==" + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" }, "convert-source-map": { "version": "1.9.0", @@ -11275,29 +11101,26 @@ "dev": true }, "deep-equal": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.2.1.tgz", - "integrity": "sha512-lKdkdV6EOGoVn65XaOsPdH4rMxTZOnmFyuIkMjM1i5HHCbfjC97dawgTAy0deYNfuqUqW+Q5VrVaQYtUpSd6yQ==", + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-2.1.0.tgz", + "integrity": "sha512-2pxgvWu3Alv1PoWEyVg7HS8YhGlUFUV7N5oOvfL6d+7xAmLSemMwv/c8Zv/i9KFzxV5Kt5CAvQc70fLwVuf4UA==", "dev": true, "requires": { - "array-buffer-byte-length": "^1.0.0", "call-bind": "^1.0.2", - "es-get-iterator": "^1.1.3", - "get-intrinsic": "^1.2.0", + "es-get-iterator": "^1.1.2", + "get-intrinsic": "^1.1.3", "is-arguments": "^1.1.1", - "is-array-buffer": "^3.0.2", "is-date-object": "^1.0.5", "is-regex": "^1.1.4", - "is-shared-array-buffer": "^1.0.2", "isarray": "^2.0.5", "object-is": "^1.1.5", "object-keys": "^1.1.1", "object.assign": "^4.1.4", - "regexp.prototype.flags": "^1.5.0", + "regexp.prototype.flags": "^1.4.3", "side-channel": "^1.0.4", "which-boxed-primitive": "^1.0.2", "which-collection": "^1.0.1", - "which-typed-array": "^1.1.9" + "which-typed-array": "^1.1.8" }, "dependencies": { "isarray": { @@ -11331,9 +11154,9 @@ } }, "define-properties": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.2.0.tgz", - "integrity": "sha512-xvqAVKGfT1+UAvPwKTVw/njhdQ8ZhXK4lI0bCIuCMrp2up9nPnaDftrLtmpTazqd1o+UY4zgzU+avtMbDP+ldA==", + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.4.tgz", + "integrity": "sha512-uckOqKcfaVvtBdsVkdPv3XjveQJsNQqmhXgRi8uhvWWuPYZCNlzT8qAyblUgNoXdHdjMTzAqeGjAoli8f+bzPA==", "dev": true, "requires": { "has-property-descriptors": "^1.0.0", @@ -11414,9 +11237,9 @@ } }, "drachtio-fsmrf": { - "version": "3.0.22", - "resolved": "https://registry.npmjs.org/drachtio-fsmrf/-/drachtio-fsmrf-3.0.22.tgz", - "integrity": "sha512-YVzGa72dcND1BahKf0/HuKqpEa3Ip2/O6k0tnS7U6x+VdKJ0CM3n9e6iyV8BvBfUMDbtKAv0LRPC/6O8NS7uPg==", + "version": "3.0.21", + "resolved": "https://registry.npmjs.org/drachtio-fsmrf/-/drachtio-fsmrf-3.0.21.tgz", + "integrity": "sha512-j5C1KFFEr+N8Qqp5ZjfqQTox+nDKoII3eJOaRMj0zHmFzr7tFzHbwPf8JSQS9n0OjrY6iM1zJJxHO+zDp8974g==", "requires": { "camel-case": "^4.1.2", "debug": "^2.6.9", @@ -11466,9 +11289,9 @@ } }, "drachtio-srf": { - "version": "4.5.26", - "resolved": "https://registry.npmjs.org/drachtio-srf/-/drachtio-srf-4.5.26.tgz", - "integrity": "sha512-Dqq3E0qY5yxjDAkrgtwrkmQYuaGUwKqUu98kDS9xzEdX8oFqKZeV5onUZq0veznw4ctuGQolY8BI6zs1e5ynHg==", + "version": "4.5.23", + "resolved": "https://registry.npmjs.org/drachtio-srf/-/drachtio-srf-4.5.23.tgz", + "integrity": "sha512-lgL/IrizCszMObJnoLrdj/xZAU/PeBWQZEZdF0R2juozsl/aHl0FXAICOGNnKLkBaAQvPZWYcbI3vFbrwJ/5FA==", "requires": { "debug": "^3.2.7", "delegates": "^0.1.0", @@ -11511,15 +11334,31 @@ "safe-buffer": "^5.0.1" } }, + "editions": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/editions/-/editions-2.3.1.tgz", + "integrity": "sha512-ptGvkwTvGdGfC0hfhKg0MT+TRLRKGtUiWGBInxOm5pz7ssADezahjCUaYuZ8Dr+C05FW0AECIIPt4WBxVINEhA==", + "requires": { + "errlop": "^2.0.0", + "semver": "^6.3.0" + }, + "dependencies": { + "semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" + } + } + }, "ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, "electron-to-chromium": { - "version": "1.4.385", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.385.tgz", - "integrity": "sha512-L9zlje9bIw0h+CwPQumiuVlfMcV4boxRjFIWDcLfFqTZNbkwOExBzfmswytHawObQX4OUhtNv8gIiB21kOurIg==", + "version": "1.4.284", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.284.tgz", + "integrity": "sha512-M8WEXFuKXMYMVr45fo8mq0wUrrJHheiKZf6BArTKk9ZBYCKJEOU5H8cdWgDT+qCVZf7Na4lVUaZsA+h6uA9+PA==", "dev": true }, "emoji-regex": { @@ -11554,6 +11393,11 @@ "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz", "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==" }, + "errlop": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/errlop/-/errlop-2.2.0.tgz", + "integrity": "sha512-e64Qj9+4aZzjzzFpZC7p5kmm/ccCrbLhAJplhsDXQFs87XTsXwOpH4s1Io2s90Tau/8r2j9f4l/thhDevRjzxw==" + }, "error": { "version": "7.0.2", "resolved": "https://registry.npmjs.org/error/-/error-7.0.2.tgz", @@ -11564,62 +11408,51 @@ } }, "es-abstract": { - "version": "1.21.2", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.21.2.tgz", - "integrity": "sha512-y/B5POM2iBnIxCiernH1G7rC9qQoM77lLIMQLuob0zhp8C56Po81+2Nj0WFKnd0pNReDTnkYryc+zhOzpEIROg==", + "version": "1.20.4", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.20.4.tgz", + "integrity": "sha512-0UtvRN79eMe2L+UNEF1BwRe364sj/DXhQ/k5FmivgoSdpM90b8Jc0mDzKMGo7QS0BVbOP/bTwBKNnDc9rNzaPA==", "dev": true, "requires": { - "array-buffer-byte-length": "^1.0.0", - "available-typed-arrays": "^1.0.5", "call-bind": "^1.0.2", - "es-set-tostringtag": "^2.0.1", "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", "function.prototype.name": "^1.1.5", - "get-intrinsic": "^1.2.0", + "get-intrinsic": "^1.1.3", "get-symbol-description": "^1.0.0", - "globalthis": "^1.0.3", - "gopd": "^1.0.1", "has": "^1.0.3", "has-property-descriptors": "^1.0.0", - "has-proto": "^1.0.1", "has-symbols": "^1.0.3", - "internal-slot": "^1.0.5", - "is-array-buffer": "^3.0.2", + "internal-slot": "^1.0.3", "is-callable": "^1.2.7", "is-negative-zero": "^2.0.2", "is-regex": "^1.1.4", "is-shared-array-buffer": "^1.0.2", "is-string": "^1.0.7", - "is-typed-array": "^1.1.10", "is-weakref": "^1.0.2", - "object-inspect": "^1.12.3", + "object-inspect": "^1.12.2", "object-keys": "^1.1.1", "object.assign": "^4.1.4", "regexp.prototype.flags": "^1.4.3", "safe-regex-test": "^1.0.0", - "string.prototype.trim": "^1.2.7", - "string.prototype.trimend": "^1.0.6", - "string.prototype.trimstart": "^1.0.6", - "typed-array-length": "^1.0.4", - "unbox-primitive": "^1.0.2", - "which-typed-array": "^1.1.9" + "string.prototype.trimend": "^1.0.5", + "string.prototype.trimstart": "^1.0.5", + "unbox-primitive": "^1.0.2" } }, "es-get-iterator": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.3.tgz", - "integrity": "sha512-sPZmqHBe6JIiTfN5q2pEi//TwxmAFHwj/XEuYjTuse78i8KxaqMTTzxPoFKuzRpDpTJ+0NAbpfenkmH2rePtuw==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/es-get-iterator/-/es-get-iterator-1.1.2.tgz", + "integrity": "sha512-+DTO8GYwbMCwbywjimwZMHp8AuYXOS2JZFWoi2AlPOS3ebnII9w/NLpNZtA7A0YLaVDw+O7KFCeoIV7OPvM7hQ==", "dev": true, "requires": { "call-bind": "^1.0.2", - "get-intrinsic": "^1.1.3", - "has-symbols": "^1.0.3", - "is-arguments": "^1.1.1", + "get-intrinsic": "^1.1.0", + "has-symbols": "^1.0.1", + "is-arguments": "^1.1.0", "is-map": "^2.0.2", "is-set": "^2.0.2", - "is-string": "^1.0.7", - "isarray": "^2.0.5", - "stop-iteration-iterator": "^1.0.0" + "is-string": "^1.0.5", + "isarray": "^2.0.5" }, "dependencies": { "isarray": { @@ -11630,17 +11463,6 @@ } } }, - "es-set-tostringtag": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/es-set-tostringtag/-/es-set-tostringtag-2.0.1.tgz", - "integrity": "sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==", - "dev": true, - "requires": { - "get-intrinsic": "^1.1.3", - "has": "^1.0.3", - "has-tostringtag": "^1.0.0" - } - }, "es-to-primitive": { "version": "1.2.1", "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", @@ -11864,9 +11686,9 @@ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==" }, "esquery": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.5.0.tgz", - "integrity": "sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==", + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", "dev": true, "requires": { "estraverse": "^5.1.0" @@ -12289,9 +12111,9 @@ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==" }, "get-intrinsic": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.2.0.tgz", - "integrity": "sha512-L049y6nFOuom5wGyRc3/gdTLO94dySVKRACj1RmJZBQXlbTMhtNIgkWkUHq+jYmZvKf14EW1EoJnnjbmoHij0Q==", + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz", + "integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==", "requires": { "function-bind": "^1.1.1", "has": "^1.0.3", @@ -12337,43 +12159,34 @@ } }, "globals": { - "version": "13.20.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-13.20.0.tgz", - "integrity": "sha512-Qg5QtVkCy/kv3FUSlu4ukeZDVf9ee0iXLAUYX13gbR17bnejFTzr4iS9bY7kwCf1NztRNm1t91fjOiyx4CSwPQ==", + "version": "13.19.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-13.19.0.tgz", + "integrity": "sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ==", "dev": true, "requires": { "type-fest": "^0.20.2" } }, - "globalthis": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/globalthis/-/globalthis-1.0.3.tgz", - "integrity": "sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==", - "dev": true, - "requires": { - "define-properties": "^1.1.3" - } - }, "google-auth-library": { - "version": "8.8.0", - "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-8.8.0.tgz", - "integrity": "sha512-0iJn7IDqObDG5Tu9Tn2WemmJ31ksEa96IyK0J0OZCpTh6CrC6FrattwKX87h3qKVuprCJpdOGKc1Xi8V0kMh8Q==", + "version": "8.7.0", + "resolved": "https://registry.npmjs.org/google-auth-library/-/google-auth-library-8.7.0.tgz", + "integrity": "sha512-1M0NG5VDIvJZEnstHbRdckLZESoJwguinwN8Dhae0j2ZKIQFIV63zxm6Fo6nM4xkgqUr2bbMtV5Dgo+Hy6oo0Q==", "requires": { "arrify": "^2.0.0", "base64-js": "^1.3.0", "ecdsa-sig-formatter": "^1.0.11", "fast-text-encoding": "^1.0.0", "gaxios": "^5.0.0", - "gcp-metadata": "^5.2.0", + "gcp-metadata": "^5.0.0", "gtoken": "^6.1.0", "jws": "^4.0.0", "lru-cache": "^6.0.0" } }, "google-gax": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.6.0.tgz", - "integrity": "sha512-2fyb61vWxUonHiArRNJQmE4tx5oY1ni8VPo08fzII409vDSCWG7apDX4qNOQ2GXXT82gLBn3d3P1Dydh7pWjyw==", + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/google-gax/-/google-gax-3.5.8.tgz", + "integrity": "sha512-bkqxv7YdYP3FGh+dywvgyctj8XM07toJ/JCWwAkmmE15QTt3ieF/f7Hpz7xG85+dGmZtQR8Y+yMo0ENFmhypNA==", "requires": { "@grpc/grpc-js": "~1.8.0", "@grpc/proto-loader": "^0.7.0", @@ -12387,9 +12200,35 @@ "node-fetch": "^2.6.1", "object-hash": "^3.0.0", "proto3-json-serializer": "^1.0.0", - "protobufjs": "7.2.3", + "protobufjs": "7.2.2", "protobufjs-cli": "1.1.1", "retry-request": "^5.0.0" + }, + "dependencies": { + "long": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/long/-/long-5.2.1.tgz", + "integrity": "sha512-GKSNGeNAtw8IryjjkhZxuKB3JzlcLTwjtiQCHKvqQet81I93kXslhDQruGI/QsddO83mcDToBVy7GqGS/zYf/A==" + }, + "protobufjs": { + "version": "7.2.2", + "resolved": "https://registry.npmjs.org/protobufjs/-/protobufjs-7.2.2.tgz", + "integrity": "sha512-++PrQIjrom+bFDPpfmqXfAGSQs40116JRrqqyf53dymUMvvb5d/LMRyicRoF1AUKoXVS1/IgJXlEgcpr4gTF3Q==", + "requires": { + "@protobufjs/aspromise": "^1.1.2", + "@protobufjs/base64": "^1.1.2", + "@protobufjs/codegen": "^2.0.4", + "@protobufjs/eventemitter": "^1.1.0", + "@protobufjs/fetch": "^1.1.0", + "@protobufjs/float": "^1.0.2", + "@protobufjs/inquire": "^1.1.0", + "@protobufjs/path": "^1.1.2", + "@protobufjs/pool": "^1.1.0", + "@protobufjs/utf8": "^1.1.0", + "@types/node": ">=13.7.0", + "long": "^5.0.0" + } + } } }, "google-p12-pem": { @@ -12414,9 +12253,9 @@ } }, "graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==" + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==" }, "gtoken": { "version": "6.1.2", @@ -12466,12 +12305,6 @@ "get-intrinsic": "^1.1.1" } }, - "has-proto": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/has-proto/-/has-proto-1.0.1.tgz", - "integrity": "sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==", - "dev": true - }, "has-symbols": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", @@ -12503,6 +12336,21 @@ } } }, + "heimdalljs": { + "version": "0.2.6", + "resolved": "https://registry.npmjs.org/heimdalljs/-/heimdalljs-0.2.6.tgz", + "integrity": "sha512-o9bd30+5vLBvBtzCPwwGqpry2+n0Hi6H1+qwt6y+0kwRHGGF8TFIhJPmnuM0xO97zaKrDZMwO/V56fAnn8m/tA==", + "requires": { + "rsvp": "~3.2.1" + }, + "dependencies": { + "rsvp": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-3.2.1.tgz", + "integrity": "sha512-Rf4YVNYpKjZ6ASAmibcwTNciQ5Co5Ztq6iZPEykHpkoflnD/K5ryE/rHehFsTm4NJj8nKDhbi3eKBWGogmNnkg==" + } + } + }, "hexer": { "version": "1.5.0", "resolved": "https://registry.npmjs.org/hexer/-/hexer-1.5.0.tgz", @@ -12582,11 +12430,6 @@ "resolved": "https://registry.npmjs.org/@types/node/-/node-10.14.22.tgz", "integrity": "sha512-9taxKC944BqoTVjE+UT3pQH0nHZlTvITwfsOZqyc+R3sfJuxaTtxWjfn1K2UlxyPcKHf0rnaXcVFrS9F9vf0bw==" }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==" - }, "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", @@ -12616,6 +12459,11 @@ "version": "13.13.52", "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.52.tgz", "integrity": "sha512-s3nugnZumCC//n4moGGe6tkNMyYEdaDBitVjwPxXmR5lnMG5dHePinH2EdxkG3Rh1ghFHHixAG4NJhpJW1rthQ==" + }, + "camelcase": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", + "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" } } }, @@ -12697,12 +12545,12 @@ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, "internal-slot": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.5.tgz", - "integrity": "sha512-Y+R5hJrzs52QCG2laLn4udYVnxsfny9CpOhNhUvk/SSSVyF6T27FzRbF0sroPidSu3X8oEAkOn2K804mjpt6UQ==", + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/internal-slot/-/internal-slot-1.0.3.tgz", + "integrity": "sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA==", "dev": true, "requires": { - "get-intrinsic": "^1.2.0", + "get-intrinsic": "^1.1.0", "has": "^1.0.3", "side-channel": "^1.0.4" } @@ -12735,17 +12583,6 @@ "has-tostringtag": "^1.0.0" } }, - "is-array-buffer": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/is-array-buffer/-/is-array-buffer-3.0.2.tgz", - "integrity": "sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "get-intrinsic": "^1.2.0", - "is-typed-array": "^1.1.10" - } - }, "is-bigint": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-bigint/-/is-bigint-1.0.4.tgz", @@ -12771,9 +12608,9 @@ "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==" }, "is-core-module": { - "version": "2.12.0", - "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.12.0.tgz", - "integrity": "sha512-RECHCBCd/viahWmwj6enj19sKbHfJrddi/6cBDsNTKbNq0f7VeaUkBo60BqzvPqo/W54ChS62Z5qyun7cfOMqQ==", + "version": "2.11.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.11.0.tgz", + "integrity": "sha512-RRjxlvLDkD1YJwDbroBHMb+cukurkDWNyHx7D3oNB5x9rb5ogcksMC5wHCadcXoo67gVr/+3GFySh3134zi6rw==", "requires": { "has": "^1.0.3" } @@ -13070,6 +12907,16 @@ "istanbul-lib-report": "^3.0.0" } }, + "istextorbinary": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/istextorbinary/-/istextorbinary-2.6.0.tgz", + "integrity": "sha512-+XRlFseT8B3L9KyjxxLjfXSLMuErKDsd8DBNrsaxoViABMEZlOSCstwmw0qpoFX3+U6yWU1yhLudAe6/lETGGA==", + "requires": { + "binaryextensions": "^2.1.2", + "editions": "^2.2.0", + "textextensions": "^2.5.0" + } + }, "jaeger-client": { "version": "3.19.0", "resolved": "https://registry.npmjs.org/jaeger-client/-/jaeger-client-3.19.0.tgz", @@ -13184,6 +13031,11 @@ "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==" + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" } } }, @@ -13219,9 +13071,9 @@ "dev": true }, "json5": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.2.tgz", + "integrity": "sha512-46Tk9JiOL2z7ytNQWFLpj99RZkVgeHf87yGQKsIkaPz1qSH9UczKH1rO7K3wgRselo0tYMUNfecYpm/p1vC7tQ==", "dev": true }, "jsonwebtoken": { @@ -13461,13 +13313,17 @@ } }, "microsoft-cognitiveservices-speech-sdk": { - "version": "1.28.0", - "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.28.0.tgz", - "integrity": "sha512-d+hCqTSeVCGtog5BgUKdIVTNifuigap9VSJbtDUP4kW1uG/yp7zRnqsjYx9nV9sRfuiYwZCyFzGG+VXGa37QDw==", + "version": "1.26.0", + "resolved": "https://registry.npmjs.org/microsoft-cognitiveservices-speech-sdk/-/microsoft-cognitiveservices-speech-sdk-1.26.0.tgz", + "integrity": "sha512-bk5Qzn6uQ2mswpTdZaBpZT3NCwkFOE0dpkPvZNeZg6r6j606+uf5hiQbRAadz6bZRBCHy1iPF846MRe9cbnY8g==", "requires": { "agent-base": "^6.0.1", + "asn1.js-rfc2560": "^5.0.1", + "asn1.js-rfc5280": "^3.0.0", + "async-disk-cache": "^2.1.0", "bent": "^7.3.12", "https-proxy-agent": "^4.0.0", + "simple-lru-cache": "0.0.2", "uuid": "^9.0.0", "ws": "^7.5.6" }, @@ -13519,6 +13375,11 @@ "mime-db": "1.52.0" } }, + "minimalistic-assert": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", + "integrity": "sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A==" + }, "minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", @@ -13528,14 +13389,17 @@ } }, "minimist": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==" + "version": "1.2.7", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", + "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" }, "mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==" + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "requires": { + "minimist": "^1.2.6" + } }, "module-details-from-path": { "version": "1.0.3", @@ -13583,17 +13447,26 @@ } }, "named-placeholders": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.3.tgz", - "integrity": "sha512-eLoBxg6wE/rZkJPhU/xRX1WTpkFEwDJEN96oxFrTsqBdbT5ec295Q+CoHrL9IT0DipqKhmGcaZmwOt8OON5x1w==", + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/named-placeholders/-/named-placeholders-1.1.2.tgz", + "integrity": "sha512-wiFWqxoLL3PGVReSZpjLVxyJ1bRqe+KKJVbr4hGs1KWfTZTQyezHFBbuKj9hsizHyGV2ne7EMjHdxEGAybD5SA==", "requires": { - "lru-cache": "^7.14.1" + "lru-cache": "^4.1.3" }, "dependencies": { "lru-cache": { - "version": "7.18.3", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz", - "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==" + "version": "4.1.5", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", + "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "requires": { + "pseudomap": "^1.0.2", + "yallist": "^2.1.2" + } + }, + "yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" } } }, @@ -13631,14 +13504,6 @@ "path-to-regexp": "^1.7.0" }, "dependencies": { - "@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" - } - }, "isarray": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", @@ -13677,9 +13542,9 @@ "integrity": "sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==" }, "node-gyp-build": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.6.0.tgz", - "integrity": "sha512-NTZVKn9IylLwUzaKjkas1e4u2DLNcV4rdYagA4PWdPwW87Bi7z+BznyKSRwS/761tV/lzCGXplWsiaMjLqP2zQ==" + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", + "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==" }, "node-int64": { "version": "0.4.0", @@ -13706,9 +13571,9 @@ } }, "node-releases": { - "version": "2.0.10", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.10.tgz", - "integrity": "sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w==", + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.6.tgz", + "integrity": "sha512-PiVXnNuFm5+iYkLBNeq5211hvO38y63T0i2KKh2KnUs3RpzJ+JtODFjkD8yjLwnDkTYF1eKXheUwdssR+NRZdg==", "dev": true }, "nyc": { @@ -13746,12 +13611,6 @@ "yargs": "^15.0.2" }, "dependencies": { - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true - }, "cliui": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz", @@ -14038,9 +13897,9 @@ "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" }, "pino": { - "version": "8.14.1", - "resolved": "https://registry.npmjs.org/pino/-/pino-8.14.1.tgz", - "integrity": "sha512-8LYNv7BKWXSfS+k6oEc6occy5La+q2sPwU3q2ljTX5AZk7v+5kND2o5W794FyRaqha6DJajmkNRsWtPpFyMUdw==", + "version": "8.8.0", + "resolved": "https://registry.npmjs.org/pino/-/pino-8.8.0.tgz", + "integrity": "sha512-cF8iGYeu2ODg2gIwgAHcPrtR63ILJz3f7gkogaHC/TXVVXxZgInmNYiIpDYEwgEkxZti2Se6P2W2DxlBIZe6eQ==", "requires": { "atomic-sleep": "^1.0.0", "fast-redact": "^3.1.1", @@ -14102,9 +13961,9 @@ } }, "pino-std-serializers": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.2.1.tgz", - "integrity": "sha512-wHuWB+CvSVb2XqXM0W/WOYUkVSPbiJb9S5fNB7TBhd8s892Xq910bRxwHtC4l71hgztObTjXL6ZheZXFjhDrDQ==" + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/pino-std-serializers/-/pino-std-serializers-6.1.0.tgz", + "integrity": "sha512-KO0m2f1HkrPe9S0ldjx7za9BJjeHqBku5Ch8JyxETxT8dEFGz1PwgrHaOQupVYitpzbFSYm7nnljxD8dik2c+g==" }, "pkg-dir": { "version": "4.2.0", @@ -14160,9 +14019,9 @@ } }, "process-warning": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.2.0.tgz", - "integrity": "sha512-/1WZ8+VQjR6avWOgHeEPd7SDQmFQ1B5mC1eRXsCm5TarlNmx/wCsa5GEaxGm05BORRtyG/Ex/3xq3TuRvq57qg==" + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-2.1.0.tgz", + "integrity": "sha512-9C20RLxrZU/rFnxWncDkuF6O999NdIf3E1ws4B0ZeY3sRVPzWBMsYDE2lxjxhiXxg464cQTgKUGm8/i6y2YGXg==" }, "progress": { "version": "2.0.3", @@ -14171,9 +14030,9 @@ "dev": true }, "proto3-json-serializer": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-1.1.1.tgz", - "integrity": "sha512-AwAuY4g9nxx0u52DnSMkqqgyLHaW/XaPLtaAo3y/ZCfeaQB/g4YDH4kb8Wc/mWzWvu0YjOznVnfn373MVZZrgw==", + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proto3-json-serializer/-/proto3-json-serializer-1.1.0.tgz", + "integrity": "sha512-SjXwUWe/vANGs/mJJTbw5++7U67nwsymg7qsoPtw6GiXqw3kUy8ByojrlEdVE2efxAdKreX8WkDafxvYW95ZQg==", "requires": { "protobufjs": "^7.0.0" } @@ -14198,9 +14057,9 @@ }, "dependencies": { "long": { - "version": "5.2.3", - "resolved": "https://registry.npmjs.org/long/-/long-5.2.3.tgz", - "integrity": "sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q==" + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/long/-/long-5.2.1.tgz", + "integrity": "sha512-GKSNGeNAtw8IryjjkhZxuKB3JzlcLTwjtiQCHKvqQet81I93kXslhDQruGI/QsddO83mcDToBVy7GqGS/zYf/A==" } } }, @@ -14235,18 +14094,18 @@ } }, "eslint-visitor-keys": { - "version": "3.4.1", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz", - "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==" + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz", + "integrity": "sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==" }, "espree": { - "version": "9.5.2", - "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz", - "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==", + "version": "9.5.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.1.tgz", + "integrity": "sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg==", "requires": { "acorn": "^8.8.0", "acorn-jsx": "^5.3.2", - "eslint-visitor-keys": "^3.4.1" + "eslint-visitor-keys": "^3.4.0" } }, "estraverse": { @@ -14305,15 +14164,20 @@ "resolve": "^1.11.1" } }, + "pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + }, "psl": { "version": "1.9.0", "resolved": "https://registry.npmjs.org/psl/-/psl-1.9.0.tgz", "integrity": "sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag==" }, "punycode": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", - "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==" + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==" }, "qs": { "version": "6.11.0", @@ -14419,14 +14283,14 @@ } }, "regexp.prototype.flags": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.0.tgz", - "integrity": "sha512-0SutC3pNudRKgquxGoRGIz946MZVHqbNfPjBdxeOhBrdgDKlRoXmYLQN9xRbrR09ZXWeGAdPuif7egofn6v5LA==", + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz", + "integrity": "sha512-fjggEOO3slI6Wvgjwflkc4NFRCTZAu5CnNfBd5qOMYhWdn67nJBBu34/TkD++eeFmd8C9r9jfXJ27+nSiRkSUA==", "dev": true, "requires": { "call-bind": "^1.0.2", - "define-properties": "^1.2.0", - "functions-have-names": "^1.2.3" + "define-properties": "^1.1.3", + "functions-have-names": "^1.2.2" } }, "regexpp": { @@ -14485,11 +14349,11 @@ } }, "resolve": { - "version": "1.22.2", - "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.2.tgz", - "integrity": "sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==", + "version": "1.22.1", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.1.tgz", + "integrity": "sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw==", "requires": { - "is-core-module": "^2.11.0", + "is-core-module": "^2.9.0", "path-parse": "^1.0.7", "supports-preserve-symlinks-flag": "^1.0.0" } @@ -14532,6 +14396,11 @@ "glob": "^7.1.3" } }, + "rsvp": { + "version": "4.8.5", + "resolved": "https://registry.npmjs.org/rsvp/-/rsvp-4.8.5.tgz", + "integrity": "sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==" + }, "safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", @@ -14549,9 +14418,9 @@ } }, "safe-stable-stringify": { - "version": "2.4.3", - "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.3.tgz", - "integrity": "sha512-e2bDA2WJT0wxseVd4lsDP4+3ONX6HpMXQa1ZhFQ7SU+GjvORCmShbCMltrtIDfkYhVHrOcPtj+KhmDBdPdZD1g==" + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/safe-stable-stringify/-/safe-stable-stringify-2.4.2.tgz", + "integrity": "sha512-gMxvPJYhP0O9n2pvcfYfIuYgbledAOJFcqRThtPRmjscaipiwcwPPKLytpVzMkG2HAN87Qmo2d4PtGiri1dSLA==" }, "safer-buffer": { "version": "2.1.2", @@ -14569,9 +14438,9 @@ "integrity": "sha512-RjZyX3nVwJyCuTo5tGPx+PZWkDMCg7oOLpSlhjDdZfwUoNqG1mM8nyj31IGHyaPWXhjbP7cdK3qZ2bmkJ1GzRw==" }, "semver": { - "version": "7.5.0", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz", - "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==", + "version": "7.3.8", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz", + "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==", "requires": { "lru-cache": "^6.0.0" } @@ -14690,16 +14559,21 @@ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", "dev": true }, + "simple-lru-cache": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz", + "integrity": "sha512-uEv/AFO0ADI7d99OHDmh1QfYzQk/izT1vCmu/riQfh7qjBVUUgRT87E5s5h7CxWCA/+YoZerykpEthzVrW3LIw==" + }, "sinon": { - "version": "15.0.4", - "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.4.tgz", - "integrity": "sha512-uzmfN6zx3GQaria1kwgWGeKiXSSbShBbue6Dcj0SI8fiCNFbiUDqKl57WFlY5lyhxZVUKmXvzgG2pilRQCBwWg==", + "version": "15.0.1", + "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.0.1.tgz", + "integrity": "sha512-PZXKc08f/wcA/BMRGBze2Wmw50CWPiAH3E21EOi4B49vJ616vW4DQh4fQrqsYox2aNR/N3kCqLuB0PwwOucQrg==", "requires": { - "@sinonjs/commons": "^3.0.0", - "@sinonjs/fake-timers": "^10.0.2", - "@sinonjs/samsam": "^8.0.0", - "diff": "^5.1.0", - "nise": "^5.1.4", + "@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" } }, @@ -14739,9 +14613,9 @@ } }, "sonic-boom": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.3.0.tgz", - "integrity": "sha512-LYxp34KlZ1a2Jb8ZQgFCK3niIHzibdwtwNUWKg0qQRzsDoJ3Gfgkf8KdBTFU3SkejDEIlWwnSnpVdOZIhFMl/g==", + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/sonic-boom/-/sonic-boom-3.2.1.tgz", + "integrity": "sha512-iITeTHxy3B9FGu8aVdiDXUVAcHMF9Ss0cCsAOo2HfCrmVGT3/DT5oYaeu0M/YKZDlKTvChEyPq0zI9Hf33EX6A==", "requires": { "atomic-sleep": "^1.0.0" } @@ -14767,9 +14641,9 @@ } }, "split2": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", - "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==" + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/split2/-/split2-4.1.0.tgz", + "integrity": "sha512-VBiJxFkxiXRlUIeyMQi8s4hgvKCSjtknJv/LVYbrgALPwf5zSKmEwV9Lst25AkvMDnvxODugjdl6KZgwKM1WYQ==" }, "sprintf-js": { "version": "1.0.3", @@ -14802,15 +14676,6 @@ "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==" }, - "stop-iteration-iterator": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/stop-iteration-iterator/-/stop-iteration-iterator-1.0.0.tgz", - "integrity": "sha512-iCGQj+0l0HOdZ2AEeBADlsRC+vsnDsZsbdSiH1yNSjcfKM7fdpCMfqAL/dwF5BLiw/XhRft/Wax6zQbhq2BcjQ==", - "dev": true, - "requires": { - "internal-slot": "^1.0.4" - } - }, "stream-shift": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/stream-shift/-/stream-shift-1.0.1.tgz", @@ -14937,9 +14802,9 @@ }, "dependencies": { "ajv": { - "version": "8.12.0", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", - "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.11.0.tgz", + "integrity": "sha512-wGgprdCvMalC0BztXvitD2hC04YffAvtsUn93JbGXYLAtCUO4xd17mCCZQxUOItiBwZvJScWo8NIvQMQ71rdpg==", "dev": true, "requires": { "fast-deep-equal": "^3.1.1", @@ -14957,15 +14822,15 @@ } }, "tape": { - "version": "5.6.3", - "resolved": "https://registry.npmjs.org/tape/-/tape-5.6.3.tgz", - "integrity": "sha512-cUDDGSbyoSIpdUAqbqLI/r7i/S4BHuCB9M5j7E/LrLs/x/i4zeAJ798aqo+FGo+kr9seBZwr8AkZW6rjceyAMQ==", + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/tape/-/tape-5.6.1.tgz", + "integrity": "sha512-reNzS3rzsJtKk0f+zJx2XlzIsjJXlIcOIrIxk5shHAG/DzW3BKyMg8UfN79oluYlcWo4lIt56ahLqwgpRT4idg==", "dev": true, "requires": { - "array.prototype.every": "^1.1.4", + "array.prototype.every": "^1.1.3", "call-bind": "^1.0.2", - "deep-equal": "^2.2.0", - "defined": "^1.0.1", + "deep-equal": "^2.0.5", + "defined": "^1.0.0", "dotignore": "^0.1.2", "for-each": "^0.3.3", "get-package-type": "^0.1.0", @@ -14974,14 +14839,14 @@ "has-dynamic-import": "^2.0.1", "inherits": "^2.0.4", "is-regex": "^1.1.4", - "minimist": "^1.2.7", - "object-inspect": "^1.12.3", + "minimist": "^1.2.6", + "object-inspect": "^1.12.2", "object-is": "^1.1.5", "object-keys": "^1.1.1", "object.assign": "^4.1.4", - "resolve": "^2.0.0-next.4", + "resolve": "^2.0.0-next.3", "resumer": "^0.0.0", - "string.prototype.trim": "^1.2.7", + "string.prototype.trim": "^1.2.6", "through": "^2.3.8" }, "dependencies": { @@ -15015,6 +14880,11 @@ "integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==", "dev": true }, + "textextensions": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/textextensions/-/textextensions-2.6.0.tgz", + "integrity": "sha512-49WtAWS+tcsy93dRt6P0P3AMD2m5PvXRhuEA0kaXos5ZLlujtYmpmFsB+QvWUSxE1ZsstmYXfQ7L40+EcQgpAQ==" + }, "thread-stream": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-2.3.0.tgz", @@ -15165,17 +15035,6 @@ "mime-types": "~2.1.24" } }, - "typed-array-length": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/typed-array-length/-/typed-array-length-1.0.4.tgz", - "integrity": "sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==", - "dev": true, - "requires": { - "call-bind": "^1.0.2", - "for-each": "^0.3.3", - "is-typed-array": "^1.1.9" - } - }, "typedarray-to-buffer": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz", @@ -15212,9 +15071,9 @@ "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" }, "undici": { - "version": "5.22.0", - "resolved": "https://registry.npmjs.org/undici/-/undici-5.22.0.tgz", - "integrity": "sha512-fR9RXCc+6Dxav4P9VV/sp5w3eFiSdOjJYsbtWfd4s5L5C4ogyuVpdKIVHeW0vV1MloM65/f7W45nR9ZxwVdyiA==", + "version": "5.21.0", + "resolved": "https://registry.npmjs.org/undici/-/undici-5.21.0.tgz", + "integrity": "sha512-HOjK8l6a57b2ZGXOcUsI5NLfoTrfmbOl90ixJDl0AEFG4wgHNDQxtZy15/ZQp7HhjkpaGlp/eneMgtsu1dIlUA==", "requires": { "busboy": "^1.6.0" } @@ -15240,9 +15099,9 @@ "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" }, "update-browserslist-db": { - "version": "1.0.11", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.11.tgz", - "integrity": "sha512-dCwEFf0/oT85M1fHBg4F0jtLwJrutGoHSQXCh7u4o2t1drG+c0a9Flnqww6XUKSfQMPpJBRjU8d4RXB09qtvaA==", + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz", + "integrity": "sha512-OztqDenkfFkbSG+tRxBeAnCVPckDBcvibKd35yDONx6OU8N7sqgwc7rCbkJ/WcYtVRZ4ba68d6byhC21GFh7sQ==", "dev": true, "requires": { "escalade": "^3.1.1", @@ -15283,6 +15142,11 @@ "requires-port": "^1.0.0" } }, + "username-sync": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/username-sync/-/username-sync-1.0.3.tgz", + "integrity": "sha512-m/7/FSqjJNAzF2La448c/aEom0gJy7HY7Y509h6l0ePvEkFictAGptwWaj1msWJ38JbfEDOUoE8kqFee9EHKdA==" + }, "utf-8-validate": { "version": "5.0.10", "resolved": "https://registry.npmjs.org/utf-8-validate/-/utf-8-validate-5.0.10.tgz", @@ -15430,9 +15294,9 @@ } }, "which-module": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.1.tgz", - "integrity": "sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==", + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", + "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==", "dev": true }, "which-typed-array": { @@ -15481,9 +15345,9 @@ } }, "ws": { - "version": "8.13.0", - "resolved": "https://registry.npmjs.org/ws/-/ws-8.13.0.tgz", - "integrity": "sha512-x9vcZYTrFPC7aSIbj7sRCYo7L/Xb8Iy+pW0ng0wt2vCJv7M9HOMy0UoN3rr+IFC7hb7vXoqS+P9ktyLLLhO+LA==", + "version": "8.11.0", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.11.0.tgz", + "integrity": "sha512-HPG3wQd9sNQoT9xHyNCXoDUa+Xw/VevmY9FoHyQ+g+rrMn4j6FB4np7Z0OhdTgjx6MgQLK7jwSy1YecU1+4Asg==", "requires": {} }, "xml2js": { @@ -15531,23 +15395,23 @@ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" }, "yargs": { - "version": "17.7.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", + "version": "16.2.0", + "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz", + "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==", "requires": { - "cliui": "^8.0.1", + "cliui": "^7.0.2", "escalade": "^3.1.1", "get-caller-file": "^2.0.5", "require-directory": "^2.1.1", - "string-width": "^4.2.3", + "string-width": "^4.2.0", "y18n": "^5.0.5", - "yargs-parser": "^21.1.1" + "yargs-parser": "^20.2.2" } }, "yargs-parser": { - "version": "21.1.1", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==" + "version": "20.2.9", + "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz", + "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==" } } } From 16030e1016f71c8764ca4f03c83c2a7c5be88b10 Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:34:37 +0100 Subject: [PATCH 61/74] package-lock.json --- package-lock.json | 85 ++++------------------------------------------- 1 file changed, 7 insertions(+), 78 deletions(-) diff --git a/package-lock.json b/package-lock.json index 659a94251..91ce8867f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/tracing": "^0.1.5", + "@jambonz/tracing": "^0.1.6", "@jambonz/verb-specifications": "^0.0.14", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", @@ -1656,15 +1656,14 @@ } }, "node_modules/@jambonz/tracing": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.5.tgz", - "integrity": "sha512-tjKwBLyXNcDO3uxuvZsOeLRB+3uyVkVRI3kPpEYBdfKSFfAxuWQoOfatodVJ7V5DU2eve8Z1wGK7RoLkacKFRQ==", + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.6.tgz", + "integrity": "sha512-xOXJR99nfQKkHenAimpWOtmXOPoyxYQLLzszWKxTq81AKq97XsM69ikQWskEdKHTeiVive4YDMOo6j4Pzi5fEg==", "dependencies": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", "@opentelemetry/exporter-zipkin": "^1.9.0", - "@opentelemetry/instrumentation": "^0.35.0", "@opentelemetry/resources": "^1.9.0", "@opentelemetry/sdk-trace-base": "^1.9.0", "@opentelemetry/sdk-trace-node": "^1.9.0", @@ -1838,22 +1837,6 @@ "@opentelemetry/api": "^1.0.0" } }, - "node_modules/@opentelemetry/instrumentation": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.0.tgz", - "integrity": "sha512-pQ5shVG53acTtq72DF7kx+4690ZKh3lATMRqf2JDMRvn0bcX/JaQ+NjPmt7oyT3h9brMA1rSFMVFS6yj8kd2OQ==", - "dependencies": { - "require-in-the-middle": "^5.0.3", - "semver": "^7.3.2", - "shimmer": "^1.2.1" - }, - "engines": { - "node": ">=14" - }, - "peerDependencies": { - "@opentelemetry/api": "^1.3.0" - } - }, "node_modules/@opentelemetry/otlp-exporter-base": { "version": "0.35.0", "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.0.tgz", @@ -6045,11 +6028,6 @@ "mkdirp": "bin/cmd.js" } }, - "node_modules/module-details-from-path": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz", - "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", @@ -7261,19 +7239,6 @@ "node": ">=0.10.0" } }, - "node_modules/require-in-the-middle": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-5.2.0.tgz", - "integrity": "sha512-efCx3b+0Z69/LGJmm9Yvi4cqEdxnoGnxYxGxBghkkTTFeXRtTCmmhO0AnAfHz59k957uTSuy8WaHqOs8wbYUWg==", - "dependencies": { - "debug": "^4.1.1", - "module-details-from-path": "^1.0.3", - "resolve": "^1.22.1" - }, - "engines": { - "node": ">=6" - } - }, "node_modules/require-main-filename": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", @@ -7537,11 +7502,6 @@ "node": ">=8" } }, - "node_modules/shimmer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz", - "integrity": "sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==" - }, "node_modules/short-uuid": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/short-uuid/-/short-uuid-4.2.2.tgz", @@ -10019,15 +9979,14 @@ } }, "@jambonz/tracing": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.5.tgz", - "integrity": "sha512-tjKwBLyXNcDO3uxuvZsOeLRB+3uyVkVRI3kPpEYBdfKSFfAxuWQoOfatodVJ7V5DU2eve8Z1wGK7RoLkacKFRQ==", + "version": "0.1.6", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.6.tgz", + "integrity": "sha512-xOXJR99nfQKkHenAimpWOtmXOPoyxYQLLzszWKxTq81AKq97XsM69ikQWskEdKHTeiVive4YDMOo6j4Pzi5fEg==", "requires": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", "@opentelemetry/exporter-trace-otlp-http": "^0.35.0", "@opentelemetry/exporter-zipkin": "^1.9.0", - "@opentelemetry/instrumentation": "^0.35.0", "@opentelemetry/resources": "^1.9.0", "@opentelemetry/sdk-trace-base": "^1.9.0", "@opentelemetry/sdk-trace-node": "^1.9.0", @@ -10154,16 +10113,6 @@ "@opentelemetry/semantic-conventions": "1.9.0" } }, - "@opentelemetry/instrumentation": { - "version": "0.35.0", - "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.35.0.tgz", - "integrity": "sha512-pQ5shVG53acTtq72DF7kx+4690ZKh3lATMRqf2JDMRvn0bcX/JaQ+NjPmt7oyT3h9brMA1rSFMVFS6yj8kd2OQ==", - "requires": { - "require-in-the-middle": "^5.0.3", - "semver": "^7.3.2", - "shimmer": "^1.2.1" - } - }, "@opentelemetry/otlp-exporter-base": { "version": "0.35.0", "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.35.0.tgz", @@ -13401,11 +13350,6 @@ "minimist": "^1.2.6" } }, - "module-details-from-path": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/module-details-from-path/-/module-details-from-path-1.0.3.tgz", - "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", @@ -14319,16 +14263,6 @@ "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", "dev": true }, - "require-in-the-middle": { - "version": "5.2.0", - "resolved": "https://registry.npmjs.org/require-in-the-middle/-/require-in-the-middle-5.2.0.tgz", - "integrity": "sha512-efCx3b+0Z69/LGJmm9Yvi4cqEdxnoGnxYxGxBghkkTTFeXRtTCmmhO0AnAfHz59k957uTSuy8WaHqOs8wbYUWg==", - "requires": { - "debug": "^4.1.1", - "module-details-from-path": "^1.0.3", - "resolve": "^1.22.1" - } - }, "require-main-filename": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz", @@ -14529,11 +14463,6 @@ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "dev": true }, - "shimmer": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/shimmer/-/shimmer-1.2.1.tgz", - "integrity": "sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==" - }, "short-uuid": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/short-uuid/-/short-uuid-4.2.2.tgz", From b7f71e0e94e94eb276057aa070d4463f19aab2ea Mon Sep 17 00:00:00 2001 From: ajukes Date: Thu, 13 Apr 2023 16:40:31 +0100 Subject: [PATCH 62/74] fixed null tracer on create call --- lib/http-routes/api/create-call.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 5e01eeeac..14062dbd2 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -182,7 +182,7 @@ router.post('/', async(req, res) => { const tasks = [restDial]; - const {otel: {tracer}} = inviteReq.srf; + const {tracer} = inviteReq.srf.locals.otel; const rootSpan = new RootSpan('rest-call', callSid, inviteReq.locals, tracer, logger); sipLogger = logger.child({ From b4077d62e322490e863f4726271664ddd9daab07 Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 10:27:49 +0100 Subject: [PATCH 63/74] traceId now takes call-id instead of call-sid. --- lib/http-routes/api/create-call.js | 5 +++-- lib/middleware.js | 6 +++--- lib/utils/place-outdial.js | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 14062dbd2..071fc32a2 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -182,12 +182,13 @@ router.post('/', async(req, res) => { const tasks = [restDial]; + const callId = inviteReq.get('Call-ID'); const {tracer} = inviteReq.srf.locals.otel; - const rootSpan = new RootSpan('rest-call', callSid, inviteReq.locals, tracer, logger); + const rootSpan = new RootSpan('rest-call', callId, inviteReq.locals, tracer, logger); sipLogger = logger.child({ callSid, - callId: inviteReq.get('Call-ID'), + callId, accountSid, traceId: rootSpan.traceId }); diff --git a/lib/middleware.js b/lib/middleware.js index 194da2b35..d4bc1eaaa 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -86,11 +86,11 @@ module.exports = function(srf, logger) { }; const {tracer} = req.srf.locals.otel; - const {callSid, ...attributes} = getAttributes(); - const rootSpan = new RootSpan('incoming-call', callSid, attributes, tracer, logger); + const {callId, ...attributes} = getAttributes(); + const rootSpan = new RootSpan('incoming-call', callId, attributes, tracer, logger); const traceId = rootSpan.traceId; - const {callId, accountSid} = attributes; + const {callSid, accountSid} = attributes; req.locals = { ...req.locals, diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 1ea0f14a7..1dae7d5e8 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -367,7 +367,7 @@ class SingleDialer extends Emitter { this.dlg.linkedSpanId = this.rootSpan.traceId; const {sip: {callId}, callSid, linkedSpanId, otel: {tracer}} = this.dlg; - const rootSpan = new RootSpan('outbound-call', this.callSid, + const rootSpan = new RootSpan('outbound-call', callId, {linkedSpanId, callId, callSid}, tracer, this.logger); From b9b40b72f36345832c0912dc068bf2e2a6116fdf Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 13:03:30 +0100 Subject: [PATCH 64/74] traceId now takes external call-id instead of call-sid. --- lib/middleware.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/middleware.js b/lib/middleware.js index d4bc1eaaa..71b14a50d 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -87,7 +87,9 @@ module.exports = function(srf, logger) { const {tracer} = req.srf.locals.otel; const {callId, ...attributes} = getAttributes(); - const rootSpan = new RootSpan('incoming-call', callId, attributes, tracer, logger); + const extCallId = req.get('X-CID') || callId; + const callIdHex = extCallId.replaceAll('-', '').substring(0, 32); + const rootSpan = new RootSpan('incoming-call', callIdHex, attributes, tracer, logger); const traceId = rootSpan.traceId; const {callSid, accountSid} = attributes; From 57d146e85de42974b108995932d2dfb93f91398d Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 13:57:12 +0100 Subject: [PATCH 65/74] attempt to pickup traceid from X-Trace-ID header --- lib/middleware.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/lib/middleware.js b/lib/middleware.js index 71b14a50d..a067b6d9c 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -87,9 +87,8 @@ module.exports = function(srf, logger) { const {tracer} = req.srf.locals.otel; const {callId, ...attributes} = getAttributes(); - const extCallId = req.get('X-CID') || callId; - const callIdHex = extCallId.replaceAll('-', '').substring(0, 32); - const rootSpan = new RootSpan('incoming-call', callIdHex, attributes, tracer, logger); + const newTraceId = req.get('X-Trace-ID') || callId.replaceAll('-', '').substring(0, 32); + const rootSpan = new RootSpan('incoming-call', newTraceId, attributes, tracer, logger); const traceId = rootSpan.traceId; const {callSid, accountSid} = attributes; From d850f0edef42c79e2b62b94c78e860cfcea285a0 Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 14:17:53 +0100 Subject: [PATCH 66/74] use callSid as traceId on create call and add to X-Trace-ID --- lib/http-routes/api/create-call.js | 40 +++++++++++++++++------------- 1 file changed, 23 insertions(+), 17 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 071fc32a2..036a44396 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -37,12 +37,15 @@ router.post('/', async(req, res) => { const accountInfo = await lookupAccountDetails(req.body.account_sid); const callSid = uuidv4(); + const traceId = callSid.replace('-', ''); + opts.headers = { ...opts.headers, 'X-Jambonz-Routing': target.type, 'X-Jambonz-FS-UUID': srf.locals.fsUUID, 'X-Call-Sid': callSid, 'X-Account-Sid': accountSid, + 'X-Trace-ID' : traceId, ...(restDial.fromHost && {'X-Preferred-From-Host': restDial.fromHost}) }; @@ -135,28 +138,30 @@ router.post('/', async(req, res) => { */ if ('WS' === app.call_hook?.method || /^wss?:/.test(app.call_hook.url)) { logger.debug({call_hook: app.call_hook}, 'creating websocket for call hook'); - app.requestor = new WsRequestor(logger, account.account_sid, app.call_hook, account.webhook_secret) ; - if (app.call_hook.url === app.call_status_hook.url || !app.call_status_hook?.url) { + app.requestor = new WsRequestor(logger, account.account_sid, app.call_hook, account.webhook_secret); + if (app.call_hook.url === app.call_status_hook.url || !app.call_status_hook?.url) { logger.debug('reusing websocket for call status hook'); app.notifier = app.requestor; } - } - else { + } else { logger.debug({call_hook: app.call_hook}, 'creating http client for call hook'); app.requestor = new HttpRequestor(logger, account.account_sid, app.call_hook, account.webhook_secret); } if (!app.notifier && app.call_status_hook) { app.notifier = new HttpRequestor(logger, account.account_sid, app.call_status_hook, account.webhook_secret); logger.debug({call_hook: app.call_hook}, 'creating http client for call status hook'); - } - else if (!app.notifier) { + } else if (!app.notifier) { logger.debug('creating null call status hook'); - app.notifier = {request: () => {}, close: () => {}}; + app.notifier = { + request: () => { + }, close: () => { + } + }; } /* now launch the outdial */ try { - const dlg = await srf.createUAC(uri, {...opts, followRedirects: true, keepUriOnRedirect: true}, { + const dlg = await srf.createUAC(uri, {...opts, followRedirects: true, keepUriOnRedirect: true}, { cbRequest: (err, inviteReq) => { /* in case of 302 redirect, this gets called twice, ignore the second except to update the req so that it can later be canceled if need be @@ -184,13 +189,12 @@ router.post('/', async(req, res) => { const callId = inviteReq.get('Call-ID'); const {tracer} = inviteReq.srf.locals.otel; - const rootSpan = new RootSpan('rest-call', callId, inviteReq.locals, tracer, logger); - + const rootSpan = new RootSpan('rest-call', traceId, inviteReq.locals, tracer, logger); sipLogger = logger.child({ callSid, callId, accountSid, - traceId: rootSpan.traceId + traceId }); app.requestor.logger = app.notifier.logger = sipLogger; const callInfo = new CallInfo({ @@ -201,7 +205,7 @@ router.post('/', async(req, res) => { callSid, accountSid: req.body.account_sid, applicationSid: app.application_sid, - traceId: rootSpan.traceId + traceId }); cs = new RestCallSession({ logger: sipLogger, @@ -216,7 +220,11 @@ router.post('/', async(req, res) => { }); cs.exec(req); - res.status(201).json({sid: cs.callSid, callId: inviteReq.get('Call-ID')}); + res.status(201).json({ + sid: cs.callSid, + callId: inviteReq.get('Call-ID'), + traceId + }); sipLogger.info({sid: cs.callSid, callId: inviteReq.get('Call-ID')}, `outbound REST call attempt to ${JSON.stringify(target)} has been sent`); @@ -236,8 +244,7 @@ router.post('/', async(req, res) => { }); restDial.emit('callStatus', 200); restDial.emit('connect', dlg); - } - catch (err) { + } catch (err) { let callStatus = CallStatus.Failed; if (err instanceof SipError) { if ([486, 603].includes(err.status)) callStatus = CallStatus.Busy; @@ -249,8 +256,7 @@ router.post('/', async(req, res) => { sipStatus: err.status, sipReason: err.reason }); - } - else { + } else { if (cs) cs.emit('callStatusChange', { callStatus, sipStatus: 500, From 75e7de154a1cb17c571405a16160df9580a523f6 Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 14:43:59 +0100 Subject: [PATCH 67/74] added readme envs --- README.md | 64 +++++++++++++++++++++++++++++-------------------------- 1 file changed, 34 insertions(+), 30 deletions(-) diff --git a/README.md b/README.md index 398a8ed47..5f1ddd089 100644 --- a/README.md +++ b/README.md @@ -8,35 +8,39 @@ This application implements the core feature server of the jambones platform. Configuration is provided via environment variables: -| variable | meaning | required?| -|----------|----------|---------| -|AWS_ACCESS_KEY_ID| aws access key id, used for TTS/STT as well SNS notifications|no| -|AWS_REGION| aws region| no| -|AWS_SECRET_ACCESS_KEY| aws secret access key, used per above|no| -|AWS_SNS_TOPIC_ARM| aws sns topic arn that scale-in lifecycle notifications will be published to|no| -|DRACHTIO_HOST| ip address of drachtio server (typically '127.0.0.1')|yes| -|DRACHTIO_PORT| listening port of drachtio server for control connections (typically 9022)|yes| -|DRACHTIO_SECRET| shared secret|yes| -|ENABLE_METRICS| if 1, metrics will be generated|no| -|ENCRYPTION_SECRET| secret for credential encryption(JWT_SECRET is deprecated) |yes| -|GOOGLE_APPLICATION_CREDENTIALS| path to gcp service key file|yes| -|HTTP_PORT| tcp port to listen on for API requests from jambonz-api-server|yes| -|JAMBONES_GATHER_EARLY_HINTS_MATCH| if true and hints are provided, gather will opportunistically review interim transcripts if possible to reduce ASR latency |no| -|JAMBONES_FREESWITCH| IP:port:secret for Freeswitch server (e.g. '127.0.0.1:8021:JambonzR0ck$'|yes| -|JAMBONES_LOGLEVEL| log level for application, 'info' or 'debug'|no| -|JAMBONES_MYSQL_HOST| mysql host|yes| -|JAMBONES_MYSQL_USER| mysql username|yes| -|JAMBONES_MYSQL_PASSWORD| mysql password|yes| -|JAMBONES_MYSQL_DATABASE| mysql data|yes| -|JAMBONES_MYSQL_CONNECTION_LIMIT| mysql connection limit |no| -|JAMBONES_NETWORK_CIDR| CIDR of private network that feature server is running in (e.g. '172.31.0.0/16')|yes| -|JAMBONES_REDIS_HOST| redis host|yes| -|JAMBONES_REDIS_PORT|redis port|yes| -|JAMBONES_SBCS| list of IP addresses (on the internal network) of SBCs, comma-separated|yes| -|STATS_HOST| ip address of metrics host (usually '127.0.0.1' since telegraf is installed locally|no| -|STATS_PORT| listening port for metrics host|no| -|STATS_PROTOCOL| 'tcp' or 'udp'|no| -|STATS_TELEGRAF| if 1, metrics will be generated in telegraf format|no| +| variable | meaning | required? | +|-----------------------------------|----------------------------------------------------------------------------------------------------------------------------|-----------| +| AWS_ACCESS_KEY_ID | aws access key id, used for TTS/STT as well SNS notifications | no | +| AWS_REGION | aws region | no | +| AWS_SECRET_ACCESS_KEY | aws secret access key, used per above | no | +| AWS_SNS_TOPIC_ARM | aws sns topic arn that scale-in lifecycle notifications will be published to | no | +| DRACHTIO_HOST | ip address of drachtio server (typically '127.0.0.1') | yes | +| DRACHTIO_PORT | listening port of drachtio server for control connections (typically 9022) | yes | +| DRACHTIO_SECRET | shared secret | yes | +| ENABLE_METRICS | if 1, metrics will be generated | no | +| ENCRYPTION_SECRET | secret for credential encryption(JWT_SECRET is deprecated) | yes | +| GOOGLE_APPLICATION_CREDENTIALS | path to gcp service key file | yes | +| HTTP_PORT | tcp port to listen on for API requests from jambonz-api-server | yes | +| JAMBONES_GATHER_EARLY_HINTS_MATCH | if true and hints are provided, gather will opportunistically review interim transcripts if possible to reduce ASR latency | no | +| JAMBONES_FREESWITCH | IP:port:secret for Freeswitch server (e.g. '127.0.0.1:8021:JambonzR0ck$' | yes | +| JAMBONES_LOGLEVEL | log level for application, 'info' or 'debug' | no | +| JAMBONES_MYSQL_HOST | mysql host | yes | +| JAMBONES_MYSQL_USER | mysql username | yes | +| JAMBONES_MYSQL_PASSWORD | mysql password | yes | +| JAMBONES_MYSQL_DATABASE | mysql data | yes | +| JAMBONES_MYSQL_CONNECTION_LIMIT | mysql connection limit | no | +| JAMBONES_NETWORK_CIDR | CIDR of private network that feature server is running in (e.g. '172.31.0.0/16') | yes | +| JAMBONES_REDIS_HOST | redis host | yes | +| JAMBONES_REDIS_PORT | redis port | yes | +| JAMBONES_SBCS | list of IP addresses (on the internal network) of SBCs, comma-separated | yes | +| STATS_HOST | ip address of metrics host (usually '127.0.0.1' since telegraf is installed locally | no | +| STATS_PORT | listening port for metrics host | no | +| STATS_PROTOCOL | 'tcp' or 'udp' | no | +| STATS_TELEGRAF | if 1, metrics will be generated in telegraf format | no | +| JAMBONES_OTEL_ENABLED | set to 1 to enable otel tracing | no | +| JAMBONES_OTEL_SERVICE_NAME | app name, defaults to 'jambones-feature-server' | no | +| OTEL_EXPORTER_JAEGER_ENDPOINT | jaeger endpoint url 'http://127.0.0.1:14268/api/traces' | no | + ### running under pm2 Typically, this application runs under [pm2](https://pm2.io) using an [ecosystem.config.js](https://pm2.keymetrics.io/docs/usage/application-declaration/) file similar to this: @@ -89,4 +93,4 @@ module.exports = { #### Running the test suite -Please [see this](./docs/contributing.md#run-the-regression-test-suite). \ No newline at end of file +Please [see this](./docs/contributing.md#run-the-regression-test-suite). From 32f3bff1fd434f49b9144cf7754497db92eea135 Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 16:31:15 +0100 Subject: [PATCH 68/74] X-Trace-ID header place-outdial.js --- lib/utils/place-outdial.js | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 1dae7d5e8..da8420ead 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -71,6 +71,7 @@ class SingleDialer extends Emitter { ...(this.from.host && {'X-Preferred-From-Host': this.from.host}), 'X-Jambonz-Routing': this.target.type, 'X-Call-Sid': this.callSid, + 'X-Trace-ID' : srf.locals.traceId, ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}) }; if (srf.locals.fsUUID) { From dbf826381c4dd0854098dd8823268a6197e62dcc Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 17:36:29 +0100 Subject: [PATCH 69/74] getSIPTracingPropagationHeaders --- lib/http-routes/api/create-call.js | 13 +++++++------ lib/middleware.js | 4 +--- lib/session/call-session.js | 2 +- lib/session/siprec-call-session.js | 4 ++-- lib/utils/place-outdial.js | 7 ++++--- package-lock.json | 14 +++++++------- package.json | 2 +- 7 files changed, 23 insertions(+), 23 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 036a44396..0cf4e4489 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -45,7 +45,6 @@ router.post('/', async(req, res) => { 'X-Jambonz-FS-UUID': srf.locals.fsUUID, 'X-Call-Sid': callSid, 'X-Account-Sid': accountSid, - 'X-Trace-ID' : traceId, ...(restDial.fromHost && {'X-Preferred-From-Host': restDial.fromHost}) }; @@ -163,6 +162,10 @@ router.post('/', async(req, res) => { try { const dlg = await srf.createUAC(uri, {...opts, followRedirects: true, keepUriOnRedirect: true}, { cbRequest: (err, inviteReq) => { + + const {tracer} = inviteReq.srf.locals.otel; + const rootSpan = RootSpan.createFromSIPCallId('fs:rest-call', inviteReq, {}, tracer, logger); + /* in case of 302 redirect, this gets called twice, ignore the second except to update the req so that it can later be canceled if need be */ @@ -173,6 +176,7 @@ router.post('/', async(req, res) => { } if (err) { + rootSpan.end(); logger.error(err, 'createCall Error creating call'); res.status(500).send('Call Failure'); return; @@ -183,13 +187,10 @@ router.post('/', async(req, res) => { callSid, application_sid: app.application_sid }; + rootSpan.setAttributes(inviteReq.locals); /* ok our outbound INVITE is in flight */ - - const tasks = [restDial]; - const callId = inviteReq.get('Call-ID'); - const {tracer} = inviteReq.srf.locals.otel; - const rootSpan = new RootSpan('rest-call', traceId, inviteReq.locals, tracer, logger); + const tasks = [restDial]; sipLogger = logger.child({ callSid, callId, diff --git a/lib/middleware.js b/lib/middleware.js index a067b6d9c..467a62f88 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -87,9 +87,7 @@ module.exports = function(srf, logger) { const {tracer} = req.srf.locals.otel; const {callId, ...attributes} = getAttributes(); - const newTraceId = req.get('X-Trace-ID') || callId.replaceAll('-', '').substring(0, 32); - const rootSpan = new RootSpan('incoming-call', newTraceId, attributes, tracer, logger); - + const rootSpan = RootSpan.createFromSIPHeaders('fs:incoming-call', req, attributes, tracer, logger); const traceId = rootSpan.traceId; const {callSid, accountSid} = attributes; diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 69e3d377c..10f4a8597 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -1450,7 +1450,7 @@ class CallSession extends Emitter { assert(this.ep); this.dlg = await this.srf.createUAS(this.req, this.res, { headers: { - 'X-Trace-ID': this.req.locals.traceId, + ...this.rootSpan.getSIPTracingPropagationHeaders(), 'X-Call-Sid': this.req.locals.callSid, ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}) }, diff --git a/lib/session/siprec-call-session.js b/lib/session/siprec-call-session.js index 8cfed7057..48c4d8969 100644 --- a/lib/session/siprec-call-session.js +++ b/lib/session/siprec-call-session.js @@ -62,9 +62,9 @@ class SipRecCallSession extends InboundCallSession { this.dlg = await this.srf.createUAS(this.req, this.res, { headers: { 'Content-Type': 'application/sdp', - 'X-Trace-ID': this.req.locals.traceId, 'X-Call-Sid': this.req.locals.callSid, - ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}) + ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}), + ...this.rootSpan.getSIPTracingPropagationHeaders() }, localSdp: combinedSdp }); diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index da8420ead..ca6774576 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -71,8 +71,8 @@ class SingleDialer extends Emitter { ...(this.from.host && {'X-Preferred-From-Host': this.from.host}), 'X-Jambonz-Routing': this.target.type, 'X-Call-Sid': this.callSid, - 'X-Trace-ID' : srf.locals.traceId, - ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}) + ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}), + ...srf.rootSpan.getSIPTracingPropagationHeaders() }; if (srf.locals.fsUUID) { opts.headers = { @@ -367,8 +367,9 @@ class SingleDialer extends Emitter { this.dlg.callSid = this.callSid; this.dlg.linkedSpanId = this.rootSpan.traceId; + //todo figure out how to grab traceId of original call const {sip: {callId}, callSid, linkedSpanId, otel: {tracer}} = this.dlg; - const rootSpan = new RootSpan('outbound-call', callId, + const rootSpan = new RootSpan('fs:adulting-call', callId, null, {linkedSpanId, callId, callSid}, tracer, this.logger); diff --git a/package-lock.json b/package-lock.json index 91ce8867f..7d758345f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/tracing": "^0.1.6", + "@jambonz/tracing": "^0.1.8", "@jambonz/verb-specifications": "^0.0.14", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", @@ -1656,9 +1656,9 @@ } }, "node_modules/@jambonz/tracing": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.6.tgz", - "integrity": "sha512-xOXJR99nfQKkHenAimpWOtmXOPoyxYQLLzszWKxTq81AKq97XsM69ikQWskEdKHTeiVive4YDMOo6j4Pzi5fEg==", + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.8.tgz", + "integrity": "sha512-xQ28r2Vd+fd7bvh1RBZq0pLOa16mczsZA+P6whLD4UsGNFrMcNeJB6jDxo1g5Ycz1WpX4gMy3GPbBs7szXBd2g==", "dependencies": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", @@ -9979,9 +9979,9 @@ } }, "@jambonz/tracing": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.6.tgz", - "integrity": "sha512-xOXJR99nfQKkHenAimpWOtmXOPoyxYQLLzszWKxTq81AKq97XsM69ikQWskEdKHTeiVive4YDMOo6j4Pzi5fEg==", + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.8.tgz", + "integrity": "sha512-xQ28r2Vd+fd7bvh1RBZq0pLOa16mczsZA+P6whLD4UsGNFrMcNeJB6jDxo1g5Ycz1WpX4gMy3GPbBs7szXBd2g==", "requires": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", diff --git a/package.json b/package.json index 96373be41..a0d170ceb 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", "@jambonz/verb-specifications": "^0.0.14", - "@jambonz/tracing" : "^0.1.6", + "@jambonz/tracing" : "^0.1.8", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From 93062eab6b28e1eeac4ce6ec7521be0b7e1bdde3 Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 17:50:15 +0100 Subject: [PATCH 70/74] getSIPTracingPropagationHeaders on child span --- lib/utils/place-outdial.js | 7 +++++-- package-lock.json | 14 +++++++------- package.json | 2 +- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index ca6774576..046a1cc44 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -72,7 +72,7 @@ class SingleDialer extends Emitter { 'X-Jambonz-Routing': this.target.type, 'X-Call-Sid': this.callSid, ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}), - ...srf.rootSpan.getSIPTracingPropagationHeaders() + ...this.rootSpan.getSIPTracingPropagationHeaders() }; if (srf.locals.fsUUID) { opts.headers = { @@ -151,7 +151,10 @@ class SingleDialer extends Emitter { 'invite.uri': uri, 'invite.dest_type': this.target.type }); - + opts.headers = { + ...opts.headers, + ...inviteSpan.getSIPTracingPropagationHeaders() + }; this.dlg = await srf.createUAC(uri, {...opts, followRedirects: true, keepUriOnRedirect: true}, { cbRequest: (err, req) => { if (err) { diff --git a/package-lock.json b/package-lock.json index 7d758345f..20e189831 100644 --- a/package-lock.json +++ b/package-lock.json @@ -15,7 +15,7 @@ "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", - "@jambonz/tracing": "^0.1.8", + "@jambonz/tracing": "^0.1.9", "@jambonz/verb-specifications": "^0.0.14", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", @@ -1656,9 +1656,9 @@ } }, "node_modules/@jambonz/tracing": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.8.tgz", - "integrity": "sha512-xQ28r2Vd+fd7bvh1RBZq0pLOa16mczsZA+P6whLD4UsGNFrMcNeJB6jDxo1g5Ycz1WpX4gMy3GPbBs7szXBd2g==", + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.9.tgz", + "integrity": "sha512-pkAMe/KNnS/v7uM2xZyrYy2VWF38KMe1cDzf9zkQ6IhQL5KC8ey0hBXZ83bHPoymOqRwzKUfTpMLdtv1dzWRig==", "dependencies": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", @@ -9979,9 +9979,9 @@ } }, "@jambonz/tracing": { - "version": "0.1.8", - "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.8.tgz", - "integrity": "sha512-xQ28r2Vd+fd7bvh1RBZq0pLOa16mczsZA+P6whLD4UsGNFrMcNeJB6jDxo1g5Ycz1WpX4gMy3GPbBs7szXBd2g==", + "version": "0.1.9", + "resolved": "https://registry.npmjs.org/@jambonz/tracing/-/tracing-0.1.9.tgz", + "integrity": "sha512-pkAMe/KNnS/v7uM2xZyrYy2VWF38KMe1cDzf9zkQ6IhQL5KC8ey0hBXZ83bHPoymOqRwzKUfTpMLdtv1dzWRig==", "requires": { "@opentelemetry/api": "^1.4.0", "@opentelemetry/exporter-jaeger": "^1.9.0", diff --git a/package.json b/package.json index a0d170ceb..8a48c3b03 100644 --- a/package.json +++ b/package.json @@ -32,7 +32,7 @@ "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", "@jambonz/verb-specifications": "^0.0.14", - "@jambonz/tracing" : "^0.1.8", + "@jambonz/tracing" : "^0.1.9", "aws-sdk": "^2.1313.0", "bent": "^7.3.12", "debug": "^4.3.4", From 127b81e34d40284674b4d20fabb257e289ab9163 Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 18:26:52 +0100 Subject: [PATCH 71/74] FS -> SBC incorrect spanId --- lib/session/call-session.js | 4 ++-- lib/utils/place-outdial.js | 11 +++++------ 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/lib/session/call-session.js b/lib/session/call-session.js index 10f4a8597..b7f4b2de4 100644 --- a/lib/session/call-session.js +++ b/lib/session/call-session.js @@ -1450,9 +1450,9 @@ class CallSession extends Emitter { assert(this.ep); this.dlg = await this.srf.createUAS(this.req, this.res, { headers: { - ...this.rootSpan.getSIPTracingPropagationHeaders(), 'X-Call-Sid': this.req.locals.callSid, - ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}) + ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}), + ...this.rootSpan.getSIPTracingPropagationHeaders(), }, localSdp: this.ep.local.sdp }); diff --git a/lib/utils/place-outdial.js b/lib/utils/place-outdial.js index 046a1cc44..75d64a475 100644 --- a/lib/utils/place-outdial.js +++ b/lib/utils/place-outdial.js @@ -62,6 +62,7 @@ class SingleDialer extends Emitter { } async exec(srf, ms, opts) { + const childSpan = this.startSpan('placeOutDial:exec', {}); opts = opts || {}; opts.headers = opts.headers || {}; opts.headers = { @@ -72,7 +73,7 @@ class SingleDialer extends Emitter { 'X-Jambonz-Routing': this.target.type, 'X-Call-Sid': this.callSid, ...(this.applicationSid && {'X-Application-Sid': this.applicationSid}), - ...this.rootSpan.getSIPTracingPropagationHeaders() + ...childSpan.getSIPTracingPropagationHeaders() }; if (srf.locals.fsUUID) { opts.headers = { @@ -147,14 +148,10 @@ class SingleDialer extends Emitter { localSdp: this.ep.local.sdp }); if (this.target.auth) opts.auth = this.target.auth; - inviteSpan = this.startSpan('invite', { + inviteSpan = childSpan.startChildSpan('invite', { 'invite.uri': uri, 'invite.dest_type': this.target.type }); - opts.headers = { - ...opts.headers, - ...inviteSpan.getSIPTracingPropagationHeaders() - }; this.dlg = await srf.createUAC(uri, {...opts, followRedirects: true, keepUriOnRedirect: true}, { cbRequest: (err, req) => { if (err) { @@ -233,6 +230,7 @@ class SingleDialer extends Emitter { duration }); if (this.ep) this.ep.destroy(); + childSpan.endWithError('race condition'); return; } @@ -289,6 +287,7 @@ class SingleDialer extends Emitter { this.emit('callStatusChange', status); if (this.ep) this.ep.destroy(); } + childSpan.end(); } /** From 9b2f5f60a8fb0b80ab9789e817cd8e5789f07178 Mon Sep 17 00:00:00 2001 From: ajukes Date: Fri, 14 Apr 2023 20:02:17 +0100 Subject: [PATCH 72/74] minor fix --- lib/http-routes/api/create-call.js | 2 +- lib/middleware.js | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/http-routes/api/create-call.js b/lib/http-routes/api/create-call.js index 0cf4e4489..8c1927701 100644 --- a/lib/http-routes/api/create-call.js +++ b/lib/http-routes/api/create-call.js @@ -164,7 +164,7 @@ router.post('/', async(req, res) => { cbRequest: (err, inviteReq) => { const {tracer} = inviteReq.srf.locals.otel; - const rootSpan = RootSpan.createFromSIPCallId('fs:rest-call', inviteReq, {}, tracer, logger); + const rootSpan = new RootSpan('fs:rest-call', inviteReq.get('Call-ID'), null, {}, tracer, logger); /* in case of 302 redirect, this gets called twice, ignore the second except to update the req so that it can later be canceled if need be diff --git a/lib/middleware.js b/lib/middleware.js index 467a62f88..07d6adfbc 100644 --- a/lib/middleware.js +++ b/lib/middleware.js @@ -87,7 +87,7 @@ module.exports = function(srf, logger) { const {tracer} = req.srf.locals.otel; const {callId, ...attributes} = getAttributes(); - const rootSpan = RootSpan.createFromSIPHeaders('fs:incoming-call', req, attributes, tracer, logger); + const rootSpan = new RootSpan('fs:incoming-call', req.get('X-Trace-ID'), req.get('X-Span-ID'), attributes, tracer, logger); const traceId = rootSpan.traceId; const {callSid, accountSid} = attributes; From 13b2d2c3d7f05d382afeda4121964e18a83f4845 Mon Sep 17 00:00:00 2001 From: ajukes Date: Tue, 9 May 2023 11:53:29 +0100 Subject: [PATCH 73/74] bumped libs to match current state --- package.json | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index 8a48c3b03..70643be2e 100644 --- a/package.json +++ b/package.json @@ -25,9 +25,9 @@ "jslint:fix": "eslint app.js lib --fix" }, "dependencies": { - "@jambonz/db-helpers": "^0.7.4", + "@jambonz/db-helpers": "^0.7.9", "@jambonz/http-health-check": "^0.0.1", - "@jambonz/realtimedb-helpers": "^0.7.0", + "@jambonz/realtimedb-helpers": "^0.7.2", "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", From 50c84f586ede94d4e27d54eb18c2472b26ff1d7a Mon Sep 17 00:00:00 2001 From: ajukes Date: Tue, 9 May 2023 11:54:30 +0100 Subject: [PATCH 74/74] bumped libs to match current state --- package-lock.json | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/package-lock.json b/package-lock.json index 20e189831..3fb70cf9a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,9 +9,9 @@ "version": "v0.8.2", "license": "MIT", "dependencies": { - "@jambonz/db-helpers": "^0.7.4", + "@jambonz/db-helpers": "^0.7.9", "@jambonz/http-health-check": "^0.0.1", - "@jambonz/realtimedb-helpers": "^0.7.0", + "@jambonz/realtimedb-helpers": "^0.7.2", "@jambonz/speech-utils": "^0.0.12", "@jambonz/stats-collector": "^0.1.8", "@jambonz/time-series": "^0.2.5", @@ -1575,12 +1575,12 @@ } }, "node_modules/@jambonz/db-helpers": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.4.tgz", - "integrity": "sha512-sR3f+RpCrSWkZ7E8qjO9/Fgsa8aBuNkm4Ubr6To0K9GDsE9rb9dsYUGpXN/0f9CGn7jc4icc53OBkt+iM2PbCw==", + "version": "0.7.9", + "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.9.tgz", + "integrity": "sha512-JajIJSPXW0OTjVprDwTH8/yU/qhHY1XkXe6f5PRh0kvRt42AmYggcGKqgivUkY1seR/GVCnQccDcIA2ZEdvDUg==", "dependencies": { "cidr-matcher": "^2.1.1", - "debug": "^4.3.3", + "debug": "^4.3.4", "mysql2": "^2.3.3", "node-object-hash": "^2.3.10", "uuid": "^8.3.2" @@ -1609,9 +1609,9 @@ } }, "node_modules/@jambonz/realtimedb-helpers": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.0.tgz", - "integrity": "sha512-hu+CcV0jzQU6J4vW8bBEz52NqEroLHOB0wjVb/VmSL4N0+MAJ1wbPUNk8go5aMk809Vr/Od2z9nHInGnTiBHzA==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.2.tgz", + "integrity": "sha512-hTlMw0pmwNHTAQVm3O1asHllRSwi5C+kLXjqZN4C8bdw08f6CY48qdX/aNHLlx5TWI1I5l0ReO745KrUFVPA6w==", "dependencies": { "@jambonz/promisify-redis": "^0.0.6", "debug": "^4.3.4", @@ -9904,12 +9904,12 @@ "dev": true }, "@jambonz/db-helpers": { - "version": "0.7.4", - "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.4.tgz", - "integrity": "sha512-sR3f+RpCrSWkZ7E8qjO9/Fgsa8aBuNkm4Ubr6To0K9GDsE9rb9dsYUGpXN/0f9CGn7jc4icc53OBkt+iM2PbCw==", + "version": "0.7.9", + "resolved": "https://registry.npmjs.org/@jambonz/db-helpers/-/db-helpers-0.7.9.tgz", + "integrity": "sha512-JajIJSPXW0OTjVprDwTH8/yU/qhHY1XkXe6f5PRh0kvRt42AmYggcGKqgivUkY1seR/GVCnQccDcIA2ZEdvDUg==", "requires": { "cidr-matcher": "^2.1.1", - "debug": "^4.3.3", + "debug": "^4.3.4", "mysql2": "^2.3.3", "node-object-hash": "^2.3.10", "uuid": "^8.3.2" @@ -9932,9 +9932,9 @@ } }, "@jambonz/realtimedb-helpers": { - "version": "0.7.0", - "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.0.tgz", - "integrity": "sha512-hu+CcV0jzQU6J4vW8bBEz52NqEroLHOB0wjVb/VmSL4N0+MAJ1wbPUNk8go5aMk809Vr/Od2z9nHInGnTiBHzA==", + "version": "0.7.2", + "resolved": "https://registry.npmjs.org/@jambonz/realtimedb-helpers/-/realtimedb-helpers-0.7.2.tgz", + "integrity": "sha512-hTlMw0pmwNHTAQVm3O1asHllRSwi5C+kLXjqZN4C8bdw08f6CY48qdX/aNHLlx5TWI1I5l0ReO745KrUFVPA6w==", "requires": { "@jambonz/promisify-redis": "^0.0.6", "debug": "^4.3.4",