diff --git a/.github/ISSUE_TEMPLATE/plugin_request.md b/.github/ISSUE_TEMPLATE/instrumentation_request.md
similarity index 65%
rename from .github/ISSUE_TEMPLATE/plugin_request.md
rename to .github/ISSUE_TEMPLATE/instrumentation_request.md
index 2f588b9759..408e111f7f 100644
--- a/.github/ISSUE_TEMPLATE/plugin_request.md
+++ b/.github/ISSUE_TEMPLATE/instrumentation_request.md
@@ -5,9 +5,7 @@ labels: instrumentation-request
---
### Is your instrumentation request related to a problem? Please describe
@@ -27,6 +25,15 @@ Weekly Downloads:
Versions:
+### Code Owners
+
+
+
+- Owner 1
+- Owner 2
+
### Additional context
+
+### Which component are you requesting ownership of?
+
+
+
+### Related Work and Qualifications
+
+
+
+### Checklist
+
+- [ ] I have read [CONTRIBUTING.md](../../CONTRIBUTING.md) and understand the responsibilities of a component owner.
+- [ ] I agree to follow and uphold the [mission, vision and values](https://github.com/open-telemetry/community/blob/main/mission-vision-values.md) of the OpenTelemetry project
+- [ ] I understand that the component I'm requesting ownership of may be subject to the [OpenTelemetry Semantic Conventions](https://github.com/open-telemetry/semantic-conventions) and agree to follow the rules set out therein.
+
+### Additional context
+
+
diff --git a/.github/component-label-map.yml b/.github/component-label-map.yml
index c766a864d0..2b1d4eb411 100644
--- a/.github/component-label-map.yml
+++ b/.github/component-label-map.yml
@@ -32,6 +32,10 @@ pkg:resource-detector-instana:
- any-glob-to-any-file:
- detectors/node/opentelemetry-resource-detector-instana/**
- packages/opentelemetry-test-utils/**
+pkg:auto-configuration-propagators:
+ - changed-files:
+ - any-glob-to-any-file:
+ - metapackages/auto-configuration-propagators/**
pkg:auto-instrumentations-node:
- changed-files:
- any-glob-to-any-file:
@@ -270,3 +274,35 @@ pkg:sql-common:
- changed-files:
- any-glob-to-any-file:
- packages/opentelemetry-sql-common/**
+pkg:propagator-aws-xray:
+ - changed-files:
+ - any-glob-to-any-file:
+ - propagators/propagator-aws-xray/**
+pkg:propagator-aws-xray-lambda:
+ - changed-files:
+ - any-glob-to-any-file:
+ - propagators/propagator-aws-xray-lambda/**
+pkg-status:unmaintained:
+ - changed-files:
+ - any-glob-to-any-file:
+ - detectors/node/opentelemetry-resource-detector-github/**
+ - packages/opentelemetry-redis-common/**
+ - plugins/node/instrumentation-fs/**
+ - plugins/node/instrumentation-tedious/**
+ - plugins/node/opentelemetry-instrumentation-connect/**
+ - plugins/node/opentelemetry-instrumentation-dns/**
+ - plugins/node/opentelemetry-instrumentation-fastify/**
+ - plugins/node/opentelemetry-instrumentation-generic-pool/**
+ - plugins/node/opentelemetry-instrumentation-hapi/**
+ - plugins/node/opentelemetry-instrumentation-knex/**
+ - plugins/node/opentelemetry-instrumentation-koa/**
+ - plugins/node/opentelemetry-instrumentation-memcached/**
+ - plugins/node/opentelemetry-instrumentation-mongodb/**
+ - plugins/node/opentelemetry-instrumentation-mysql/**
+ - plugins/node/opentelemetry-instrumentation-mysql2/**
+ - plugins/node/opentelemetry-instrumentation-nestjs-core/**
+ - plugins/node/opentelemetry-instrumentation-restify/**
+ - plugins/node/opentelemetry-instrumentation-router/**
+ - propagators/opentelemetry-propagator-ot-trace/**
+ - propagators/propagator-aws-xray/**
+ - propagators/propagator-aws-xray-lambda/**
diff --git a/.github/component_owners.yml b/.github/component_owners.yml
index 609a8571a0..75eb1593ed 100644
--- a/.github/component_owners.yml
+++ b/.github/component_owners.yml
@@ -3,7 +3,7 @@ components:
detectors/node/opentelemetry-resource-detector-alibaba-cloud:
- legendecas
detectors/node/opentelemetry-resource-detector-aws:
- - carolabadeer
+ - jj22ee
detectors/node/opentelemetry-resource-detector-azure:
- jacksonweber
- hectorhdzg
@@ -13,12 +13,13 @@ components:
- aabmass
- punya
detectors/node/opentelemetry-resource-detector-github: []
- # Unmaintained?
+ # Unmaintained
detectors/node/opentelemetry-resource-detector-instana:
- - basti1302
- kirrg001
incubator/opentelemetry-sampler-aws-xray:
- - carolabadeer
+ - jj22ee
+ metapackages/auto-configuration-propagators:
+ - pichlermarc
metapackages/auto-instrumentations-node:
- dyladan
- pichlermarc
@@ -37,14 +38,14 @@ components:
packages/opentelemetry-host-metrics:
- legendecas
packages/opentelemetry-id-generator-aws-xray:
- - carolabadeer
+ - jj22ee
packages/opentelemetry-propagation-utils:
- dyladan
- pichlermarc
- legendecas
- blumamir
- packages/opentelemetry-redis-common:
- - haddasbronfman
+ packages/opentelemetry-redis-common: []
+ # Unmaintained
packages/opentelemetry-test-utils:
- dyladan
- pichlermarc
@@ -58,8 +59,8 @@ components:
- Ugzuzg
plugins/node/instrumentation-dataloader:
- henrinormak
- plugins/node/instrumentation-fs:
- - rauno56
+ plugins/node/instrumentation-fs: []
+ # Unmaintained
plugins/node/instrumentation-kafkajs:
- seemk
plugins/node/instrumentation-lru-memoizer:
@@ -68,68 +69,66 @@ components:
- blumamir
plugins/node/instrumentation-socket.io:
- mottibec
- - rauno56
- plugins/node/instrumentation-tedious:
- - rauno56
+ plugins/node/instrumentation-tedious: []
+ # Unmaintained
plugins/node/opentelemetry-instrumentation-aws-lambda:
- - carolabadeer
+ - jj22ee
plugins/node/opentelemetry-instrumentation-aws-sdk:
- - carolabadeer
- blumamir
+ - jj22ee
plugins/node/opentelemetry-instrumentation-bunyan:
- seemk
- trentm
plugins/node/opentelemetry-instrumentation-cassandra:
- seemk
plugins/node/opentelemetry-instrumentation-connect: []
- # Unmaintained?
+ # Unmaintained
plugins/node/opentelemetry-instrumentation-dns: []
- # Unmaintained?
+ # Unmaintained
plugins/node/opentelemetry-instrumentation-express:
- JamieDanielson
- pkanal
- plugins/node/opentelemetry-instrumentation-fastify:
- - pichlermarc
- plugins/node/opentelemetry-instrumentation-generic-pool:
- - rauno56
+ plugins/node/opentelemetry-instrumentation-fastify: []
+ # Unmaintained
+ plugins/node/opentelemetry-instrumentation-generic-pool: []
+ # Unmaintained
plugins/node/opentelemetry-instrumentation-graphql:
- obecny
plugins/node/opentelemetry-instrumentation-hapi: []
- # Unmaintained?
+ # Unmaintained
plugins/node/opentelemetry-instrumentation-ioredis:
- blumamir
- naseemkullah
- plugins/node/opentelemetry-instrumentation-knex:
- - rauno56
+ plugins/node/opentelemetry-instrumentation-knex: []
+ # Unmaintained
plugins/node/opentelemetry-instrumentation-koa: []
- # Unmaintained?
- plugins/node/opentelemetry-instrumentation-memcached:
- - rauno56
- plugins/node/opentelemetry-instrumentation-mongodb:
- - osherv
- plugins/node/opentelemetry-instrumentation-mysql:
- - haddasbronfman
- plugins/node/opentelemetry-instrumentation-mysql2:
- - haddasbronfman
- plugins/node/opentelemetry-instrumentation-nestjs-core:
- - rauno56
+ # Unmaintained
+ plugins/node/opentelemetry-instrumentation-memcached: []
+ # Unmaintained
+ plugins/node/opentelemetry-instrumentation-mongodb: []
+ # Unmaintained
+ plugins/node/opentelemetry-instrumentation-mysql: []
+ # Unmaintained
+ plugins/node/opentelemetry-instrumentation-mysql2: []
+ # Unmaintained
+ plugins/node/opentelemetry-instrumentation-nestjs-core: []
+ # Unmaintained
plugins/node/opentelemetry-instrumentation-net:
- seemk
plugins/node/instrumentation-runtime-node:
- d4nyll
plugins/node/opentelemetry-instrumentation-pg:
- maryliag
- - rauno56
plugins/node/opentelemetry-instrumentation-pino:
- seemk
plugins/node/opentelemetry-instrumentation-redis-4:
- blumamir
plugins/node/opentelemetry-instrumentation-redis:
- blumamir
- plugins/node/opentelemetry-instrumentation-restify:
- - rauno56
- plugins/node/opentelemetry-instrumentation-router:
- - rauno56
+ plugins/node/opentelemetry-instrumentation-restify: []
+ # Unmaintained
+ plugins/node/opentelemetry-instrumentation-router: []
+ # Unmaintained
plugins/node/instrumentation-undici:
- david-luna
- trentm
@@ -146,10 +145,13 @@ components:
plugins/web/opentelemetry-plugin-react-load:
- martinkuba
propagators/opentelemetry-propagator-instana:
- - basti1302
- kirrg001
propagators/opentelemetry-propagator-ot-trace: []
- # Unmaintained?
+ # Unmaintained
+ propagators/propagator-aws-xray:
+ - jj22ee
+ propagators/propagator-aws-xray-lambda: [ ]
+ # Unmaintained
ignored-authors:
- renovate-bot
diff --git a/.github/workflows/close-stale.yml b/.github/workflows/close-stale.yml
index b27106ca04..f598902d27 100644
--- a/.github/workflows/close-stale.yml
+++ b/.github/workflows/close-stale.yml
@@ -1,7 +1,7 @@
name: 'Close stale issues and PRs'
on:
schedule:
- - cron: '30 6 * * 1'
+ - cron: '30 6 * * *'
jobs:
stale:
@@ -20,3 +20,27 @@ jobs:
exempt-issue-labels: never-stale
exempt-pr-labels: never-stale
any-of-labels: information-requested
+ - uses: actions/stale@v9
+ with:
+ days-before-issue-stale: 0
+ days-before-issue-close: 14
+ stale-issue-message: 'This package does not have an assigned [component owner](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/CONTRIBUTING.md#component-ownership) and is considered [unmaintained](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/CONTRIBUTING.md#unmaintained). As such this package is in feature-freeze and this issue will be closed with 14 days unless a new owner or a sponsor (a member of @open-telemetry/javascript-approvers) for the feature is found. It is the responsibility of the author to find a sponsor for this feature.
+
+ Are you familiar with this package? Consider [becoming a component owner](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/CONTRIBUTING.md#becoming-a-component-owner).'
+ close-issue-message: 'This issue was closed because no owner or sponsor has been found after 14 days'
+ stale-issue-label: pkg-status:unmaintained:autoclose-scheduled
+ only-labels: pkg-status:unmaintained,feature-request
+ exempt-issue-labels: bug,has:sponsor,type:semconv-update
+ remove-stale-when-updated: false
+ - uses: actions/stale@v9
+ with:
+ days-before-pr-stale: 0
+ days-before-pr-close: 14
+ stale-pr-message: 'This package does not have an assigned [component owner](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/CONTRIBUTING.md#component-ownership) and is considered [unmaintained](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/CONTRIBUTING.md#unmaintained). As such this package is in feature-freeze and this PR will be closed with 14 days unless a new owner or a sponsor (a member of @open-telemetry/javascript-approvers) for the feature is found. It is the responsibility of the author to find a sponsor for this feature.
+
+ Are you familiar with this package? Consider [becoming a component owner](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/CONTRIBUTING.md#becoming-a-component-owner).'
+ close-pr-message: 'This issue was closed because no owner or sponsor has been found after 14 days'
+ stale-pr-label: pkg-status:unmaintained:autoclose-scheduled
+ only-labels: pkg-status:unmaintained
+ exempt-pr-labels: 'bug,has:sponsor,type:semconv-update,dependencies,autorelease: pending'
+ remove-stale-when-updated: false
diff --git a/.github/workflows/codeql-analysis.yml b/.github/workflows/codeql-analysis.yml
index 466f6deadc..33a35892f4 100644
--- a/.github/workflows/codeql-analysis.yml
+++ b/.github/workflows/codeql-analysis.yml
@@ -2,17 +2,9 @@ name: "CodeQL Analysis"
on:
workflow_dispatch:
- schedule:
- # ┌───────────── minute (0 - 59)
- # │ ┌───────────── hour (0 - 23)
- # │ │ ┌───────────── day of the month (1 - 31)
- # │ │ │ ┌───────────── month (1 - 12 or JAN-DEC)
- # │ │ │ │ ┌───────────── day of the week (0 - 6 or SUN-SAT)
- # │ │ │ │ │
- # │ │ │ │ │
- # │ │ │ │ │
- # * * * * *
- - cron: '30 1 * * *'
+ push:
+ branches: [ main ]
+ pull_request:
jobs:
CodeQL-Build:
diff --git a/.github/workflows/lint.yml b/.github/workflows/lint.yml
index a30b2bbe56..4d9a1bda84 100644
--- a/.github/workflows/lint.yml
+++ b/.github/workflows/lint.yml
@@ -19,4 +19,3 @@ jobs:
- name: Lint
run: |
npm run lint
- npm run lint:markdown
diff --git a/.github/workflows/peer-api.yaml b/.github/workflows/peer-api.yaml
index b4b21f1e55..0cc315ddc4 100644
--- a/.github/workflows/peer-api.yaml
+++ b/.github/workflows/peer-api.yaml
@@ -10,7 +10,7 @@ jobs:
peer-api-check:
runs-on: ubuntu-latest
container:
- image: node:18
+ image: node:20
steps:
- name: Checkout
uses: actions/checkout@v4
diff --git a/.github/workflows/release-please-validate.yaml b/.github/workflows/release-please-validate.yaml
index 6b29afcba0..0ba73cfc2e 100644
--- a/.github/workflows/release-please-validate.yaml
+++ b/.github/workflows/release-please-validate.yaml
@@ -10,7 +10,7 @@ jobs:
rp-validate:
runs-on: ubuntu-latest
container:
- image: node:14
+ image: node:20
steps:
- name: Checkout
uses: actions/checkout@v4
diff --git a/.github/workflows/release-please.yml b/.github/workflows/release-please.yml
index 6e877b65fa..529ce9257e 100644
--- a/.github/workflows/release-please.yml
+++ b/.github/workflows/release-please.yml
@@ -7,6 +7,8 @@ name: Run Release Please
jobs:
release-please:
runs-on: ubuntu-latest
+ permissions:
+ id-token: write
steps:
# The logic below handles the npm publication:
- name: Checkout Repository
@@ -14,6 +16,9 @@ jobs:
with:
fetch-depth: 0
+ # If you update this version make sure to keep in sync:
+ # - `build-and-cache` job of unit-test workflow
+ # - `build-and-cache` job of test-all-versions workflow
- name: Setup Node
uses: actions/setup-node@v4
with:
@@ -24,7 +29,7 @@ jobs:
run: |
npm ci
- - uses: googleapis/release-please-action@f3969c04a4ec81d7a9aa4010d84ae6a7602f86a7 # v4.1.1
+ - uses: googleapis/release-please-action@7987652d64b4581673a76e33ad5e98e3dd56832f # v4.1.3
id: release
with:
token: ${{secrets.RELEASE_PR_TOKEN}}
@@ -75,4 +80,5 @@ jobs:
if: ${{ steps.release.outputs.releases_created }}
env:
NODE_AUTH_TOKEN: ${{secrets.NPM_TOKEN}}
+ NPM_CONFIG_PROVENANCE: true
run: npx lerna publish from-package --no-push --no-private --no-git-tag-version --no-verify-access --yes
diff --git a/.github/workflows/test-all-versions.pr.yml b/.github/workflows/test-all-versions.pr.yml
index 83aa62af5b..9f1309ad19 100644
--- a/.github/workflows/test-all-versions.pr.yml
+++ b/.github/workflows/test-all-versions.pr.yml
@@ -12,7 +12,7 @@ jobs:
parse-labels:
runs-on: ubuntu-latest
container:
- image: node:16
+ image: node:20
env:
PR_LABELS: ${{ toJSON(github.event.pull_request.labels.*.name) }}
outputs:
diff --git a/.github/workflows/test-all-versions.yml b/.github/workflows/test-all-versions.yml
index ecf86e37d3..2433cf5c9f 100644
--- a/.github/workflows/test-all-versions.yml
+++ b/.github/workflows/test-all-versions.yml
@@ -13,12 +13,40 @@ on:
type: string
jobs:
+ build-and-cache:
+ strategy:
+ fail-fast: false
+ runs-on: ubuntu-latest
+ env:
+ NPM_CONFIG_UNSAFE_PERM: true
+ NODE_OPTIONS: --max-old-space-size=4096
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+ # Use the same Node.js version used for `release-please` workflow.
+ - uses: actions/setup-node@v4
+ with:
+ node-version: 18
+ - name: Install
+ run: npm ci
+ - name: Build
+ run: npm run compile
+ - name: Upload Build Artifacts
+ uses: actions/upload-artifact@v4
+ with:
+ name: tav-build-cache-${{ github.run_number }}
+ path: node_modules/.cache/nx
+ retention-days: 1
+
tav:
name: Run test-all-versions
+ needs: build-and-cache
strategy:
fail-fast: false
matrix:
- node: ["14", "16", "18", "20"]
+ node: ["14", "16", "18", "20", "22"]
runs-on: ubuntu-latest
services:
mongo:
@@ -26,14 +54,14 @@ jobs:
ports:
- 27017:27017
mssql:
- image: mcr.microsoft.com/mssql/server:2017-latest
+ image: mcr.microsoft.com/mssql/server:2022-latest
env:
- SA_PASSWORD: mssql_passw0rd
+ MSSQL_SA_PASSWORD: mssql_passw0rd
ACCEPT_EULA: Y
ports:
- 1433:1433
options: >-
- --health-cmd "/opt/mssql-tools/bin/sqlcmd -U sa -P $SA_PASSWORD -Q 'select 1' -b -o /dev/null"
+ --health-cmd "/opt/mssql-tools18/bin/sqlcmd -S localhost -U sa -P $MSSQL_SA_PASSWORD -C -Q 'select 1' -b -o /dev/null"
--health-interval 1s
--health-timeout 30s
--health-start-period 10s
@@ -120,6 +148,11 @@ jobs:
run: npm install -g npm@9 # npm@9 supports node >=14.17.0
- name: Install
run: npm ci
+ - name: Download Build Artifacts
+ uses: actions/download-artifact@v4
+ with:
+ name: tav-build-cache-${{ github.run_number }}
+ path: node_modules/.cache/nx
- name: Build
run: npm run compile
- name: Run test-all-versions
diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml
index e10f27b183..4e6b92b3fd 100644
--- a/.github/workflows/unit-test.yml
+++ b/.github/workflows/unit-test.yml
@@ -5,18 +5,46 @@ on:
pull_request:
jobs:
+ build-and-cache:
+ strategy:
+ fail-fast: false
+ runs-on: ubuntu-latest
+ env:
+ NPM_CONFIG_UNSAFE_PERM: true
+ NODE_OPTIONS: --max-old-space-size=4096
+ steps:
+ - name: Checkout
+ uses: actions/checkout@v4
+ with:
+ fetch-depth: 0
+ # Use the same Node.js version used for `release-please` workflow.
+ - uses: actions/setup-node@v4
+ with:
+ node-version: 18
+ - name: Install
+ run: npm ci
+ - name: Build
+ run: npm run compile
+ - name: Upload build artifact
+ uses: actions/upload-artifact@v4
+ with:
+ name: tests-build-cache-${{ github.run_number }}
+ path: node_modules/.cache/nx
+ retention-days: 1
+
unit-test:
+ needs: build-and-cache
strategy:
fail-fast: false
matrix:
- node: ["14", "16", "18", "20"]
+ node: ["14", "16", "18", "20", "22"]
include:
- node: 18
code-coverage: true
runs-on: ubuntu-latest
services:
memcached:
- image: memcached:1.6.21-alpine
+ image: memcached:1.6.29-alpine
ports:
- 11211:11211
mongo:
@@ -24,14 +52,14 @@ jobs:
ports:
- 27017:27017
mssql:
- image: mcr.microsoft.com/mssql/server:2017-latest
+ image: mcr.microsoft.com/mssql/server:2022-latest
env:
- SA_PASSWORD: mssql_passw0rd
+ MSSQL_SA_PASSWORD: mssql_passw0rd
ACCEPT_EULA: Y
ports:
- 1433:1433
options: >-
- --health-cmd "/opt/mssql-tools/bin/sqlcmd -U sa -P $SA_PASSWORD -Q 'select 1' -b -o /dev/null"
+ --health-cmd "/opt/mssql-tools18/bin/sqlcmd -S localhost -U sa -P $MSSQL_SA_PASSWORD -C -Q 'select 1' -b -o /dev/null"
--health-interval 1s
--health-timeout 30s
--health-start-period 10s
@@ -128,6 +156,11 @@ jobs:
run: npm install -g npm@9 # npm@9 supports node >=14.17.0
- name: Install
run: npm ci
+ - name: Download Build Artifacts
+ uses: actions/download-artifact@v4
+ with:
+ name: tests-build-cache-${{ github.run_number }}
+ path: node_modules/.cache/nx
- name: Build
run: npm run compile
- name: Unit tests (Full)
@@ -139,10 +172,13 @@ jobs:
- name: Report Coverage
if: ${{ matrix.code-coverage && !cancelled()}}
uses: codecov/codecov-action@v4
+ env:
+ CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
verbose: true
browser-test:
+ needs: build-and-cache
strategy:
fail-fast: false
matrix:
@@ -164,11 +200,18 @@ jobs:
run: npm install -g npm@9 # npm@9 supports node >=14.17.0
- name: Install
run: npm ci
+ - name: Download Build Artifacts
+ uses: actions/download-artifact@v4
+ with:
+ name: tests-build-cache-${{ github.run_number }}
+ path: node_modules/.cache/nx
- name: Build
run: npm run compile
- name: Unit tests
run: npm run test:browser
- name: Report Coverage
uses: codecov/codecov-action@v4
+ env:
+ CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
with:
verbose: true
diff --git a/.mocharc.yml b/.mocharc.yml
new file mode 100644
index 0000000000..77d141ef45
--- /dev/null
+++ b/.mocharc.yml
@@ -0,0 +1 @@
+require: 'ts-node/register/transpile-only'
diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index 0f3ec298c9..1ed54f6b7d 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,64 +1,67 @@
{
- "detectors/node/opentelemetry-resource-detector-alibaba-cloud": "0.28.10",
- "detectors/node/opentelemetry-resource-detector-aws": "1.5.1",
- "detectors/node/opentelemetry-resource-detector-azure": "0.2.9",
- "detectors/node/opentelemetry-resource-detector-container": "0.3.11",
- "detectors/node/opentelemetry-resource-detector-gcp": "0.29.10",
- "detectors/node/opentelemetry-resource-detector-github": "0.28.2",
- "packages/esbuild-plugin-node": "0.1.0",
- "detectors/node/opentelemetry-resource-detector-instana": "0.10.0",
- "metapackages/auto-instrumentations-node": "0.47.1",
- "metapackages/auto-instrumentations-web": "0.40.0",
+ "detectors/node/opentelemetry-resource-detector-alibaba-cloud": "0.29.4",
+ "detectors/node/opentelemetry-resource-detector-aws": "1.7.0",
+ "detectors/node/opentelemetry-resource-detector-azure": "0.2.12",
+ "detectors/node/opentelemetry-resource-detector-container": "0.5.0",
+ "detectors/node/opentelemetry-resource-detector-gcp": "0.29.13",
+ "detectors/node/opentelemetry-resource-detector-github": "0.29.0",
+ "detectors/node/opentelemetry-resource-detector-instana": "0.14.0",
+ "metapackages/auto-configuration-propagators": "0.3.1",
+ "metapackages/auto-instrumentations-node": "0.52.1",
+ "metapackages/auto-instrumentations-web": "0.42.0",
"packages/baggage-span-processor": "0.3.1",
- "packages/opentelemetry-host-metrics": "0.35.2",
+ "packages/esbuild-plugin-node": "0.1.0",
+ "packages/opentelemetry-host-metrics": "0.35.4",
"packages/opentelemetry-id-generator-aws-xray": "1.2.2",
- "packages/opentelemetry-propagation-utils": "0.30.10",
+ "packages/opentelemetry-propagation-utils": "0.30.12",
"packages/opentelemetry-redis-common": "0.36.2",
"packages/opentelemetry-sql-common": "0.40.1",
- "packages/opentelemetry-test-utils": "0.40.0",
- "packages/winston-transport": "0.4.0",
- "plugins/node/instrumentation-amqplib": "0.38.0",
- "plugins/node/instrumentation-cucumber": "0.7.0",
- "plugins/node/instrumentation-dataloader": "0.10.0",
- "plugins/node/instrumentation-fs": "0.13.0",
- "plugins/node/instrumentation-kafkajs": "0.1.0",
- "plugins/node/instrumentation-lru-memoizer": "0.38.0",
- "plugins/node/instrumentation-mongoose": "0.39.0",
- "plugins/node/instrumentation-runtime-node": "0.5.0",
- "plugins/node/instrumentation-socket.io": "0.40.0",
- "plugins/node/instrumentation-tedious": "0.11.0",
- "plugins/node/instrumentation-undici": "0.3.0",
- "plugins/node/opentelemetry-instrumentation-aws-lambda": "0.42.0",
- "plugins/node/opentelemetry-instrumentation-aws-sdk": "0.42.0",
- "plugins/node/opentelemetry-instrumentation-bunyan": "0.39.0",
- "plugins/node/opentelemetry-instrumentation-cassandra": "0.39.0",
- "plugins/node/opentelemetry-instrumentation-connect": "0.37.0",
- "plugins/node/opentelemetry-instrumentation-dns": "0.37.0",
- "plugins/node/opentelemetry-instrumentation-express": "0.40.1",
- "plugins/node/opentelemetry-instrumentation-fastify": "0.37.0",
- "plugins/node/opentelemetry-instrumentation-generic-pool": "0.37.0",
- "plugins/node/opentelemetry-instrumentation-graphql": "0.41.0",
- "plugins/node/opentelemetry-instrumentation-hapi": "0.39.0",
- "plugins/node/opentelemetry-instrumentation-ioredis": "0.41.0",
- "plugins/node/opentelemetry-instrumentation-knex": "0.37.0",
- "plugins/node/opentelemetry-instrumentation-koa": "0.41.0",
- "plugins/node/opentelemetry-instrumentation-memcached": "0.37.0",
- "plugins/node/opentelemetry-instrumentation-mongodb": "0.45.0",
- "plugins/node/opentelemetry-instrumentation-mysql": "0.39.0",
- "plugins/node/opentelemetry-instrumentation-mysql2": "0.39.0",
- "plugins/node/opentelemetry-instrumentation-nestjs-core": "0.38.0",
- "plugins/node/opentelemetry-instrumentation-net": "0.37.0",
- "plugins/node/opentelemetry-instrumentation-pg": "0.42.0",
- "plugins/node/opentelemetry-instrumentation-pino": "0.40.0",
- "plugins/node/opentelemetry-instrumentation-redis": "0.40.0",
- "plugins/node/opentelemetry-instrumentation-redis-4": "0.40.0",
- "plugins/node/opentelemetry-instrumentation-restify": "0.39.0",
- "plugins/node/opentelemetry-instrumentation-router": "0.38.0",
- "plugins/node/opentelemetry-instrumentation-winston": "0.38.0",
- "plugins/web/opentelemetry-instrumentation-document-load": "0.39.0",
- "plugins/web/opentelemetry-instrumentation-long-task": "0.39.0",
- "plugins/web/opentelemetry-instrumentation-user-interaction": "0.39.0",
- "plugins/web/opentelemetry-plugin-react-load": "0.30.1",
+ "packages/opentelemetry-test-utils": "0.42.0",
+ "packages/winston-transport": "0.7.0",
+ "plugins/node/instrumentation-amqplib": "0.43.0",
+ "plugins/node/instrumentation-cucumber": "0.10.0",
+ "plugins/node/instrumentation-dataloader": "0.13.0",
+ "plugins/node/instrumentation-fs": "0.16.0",
+ "plugins/node/instrumentation-kafkajs": "0.4.0",
+ "plugins/node/instrumentation-lru-memoizer": "0.41.0",
+ "plugins/node/instrumentation-mongoose": "0.43.0",
+ "plugins/node/instrumentation-runtime-node": "0.9.0",
+ "plugins/node/instrumentation-socket.io": "0.43.0",
+ "plugins/node/instrumentation-tedious": "0.15.0",
+ "plugins/node/instrumentation-undici": "0.7.1",
+ "plugins/node/opentelemetry-instrumentation-aws-lambda": "0.47.0",
+ "plugins/node/opentelemetry-instrumentation-aws-sdk": "0.46.0",
+ "plugins/node/opentelemetry-instrumentation-bunyan": "0.42.0",
+ "plugins/node/opentelemetry-instrumentation-cassandra": "0.42.0",
+ "plugins/node/opentelemetry-instrumentation-connect": "0.40.0",
+ "plugins/node/opentelemetry-instrumentation-dns": "0.40.0",
+ "plugins/node/opentelemetry-instrumentation-express": "0.44.0",
+ "plugins/node/opentelemetry-instrumentation-fastify": "0.41.0",
+ "plugins/node/opentelemetry-instrumentation-generic-pool": "0.40.0",
+ "plugins/node/opentelemetry-instrumentation-graphql": "0.44.0",
+ "plugins/node/opentelemetry-instrumentation-hapi": "0.42.0",
+ "plugins/node/opentelemetry-instrumentation-ioredis": "0.44.0",
+ "plugins/node/opentelemetry-instrumentation-knex": "0.41.0",
+ "plugins/node/opentelemetry-instrumentation-koa": "0.44.0",
+ "plugins/node/opentelemetry-instrumentation-memcached": "0.40.0",
+ "plugins/node/opentelemetry-instrumentation-mongodb": "0.48.0",
+ "plugins/node/opentelemetry-instrumentation-mysql": "0.42.0",
+ "plugins/node/opentelemetry-instrumentation-mysql2": "0.42.1",
+ "plugins/node/opentelemetry-instrumentation-nestjs-core": "0.41.0",
+ "plugins/node/opentelemetry-instrumentation-net": "0.40.0",
+ "plugins/node/opentelemetry-instrumentation-pg": "0.47.1",
+ "plugins/node/opentelemetry-instrumentation-pino": "0.43.0",
+ "plugins/node/opentelemetry-instrumentation-redis": "0.43.0",
+ "plugins/node/opentelemetry-instrumentation-redis-4": "0.43.0",
+ "plugins/node/opentelemetry-instrumentation-restify": "0.42.0",
+ "plugins/node/opentelemetry-instrumentation-router": "0.41.0",
+ "plugins/node/opentelemetry-instrumentation-winston": "0.41.0",
+ "plugins/web/opentelemetry-instrumentation-document-load": "0.41.0",
+ "plugins/web/opentelemetry-instrumentation-long-task": "0.41.0",
+ "plugins/web/opentelemetry-instrumentation-user-interaction": "0.41.0",
+ "plugins/web/opentelemetry-plugin-react-load": "0.31.0",
"propagators/opentelemetry-propagator-instana": "0.3.2",
- "propagators/opentelemetry-propagator-ot-trace": "0.27.2"
+ "propagators/opentelemetry-propagator-ot-trace": "0.27.2",
+ "propagators/propagator-aws-xray": "1.26.0",
+ "propagators/propagator-aws-xray-lambda": "0.53.0"
}
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 6e014f3ee1..a47d95ac8c 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -14,6 +14,7 @@ We'd love your help!
- [CHANGELOG](#changelog)
- [Benchmarks](#benchmarks)
- [Component Ownership](#component-ownership)
+ - [Becoming a Component Owner](#becoming-a-component-owner)
- [Component Lifecycle](#component-lifecycle)
- [Unreleased](#unreleased)
- [Experimental](#experimental)
@@ -26,6 +27,7 @@ We'd love your help!
- [Contributing Vendor Components](#contributing-vendor-components)
- [Adding a New Vendor Component](#adding-a-new-vendor-component)
- [Removing Vendor Components](#removing-vendor-components)
+- [New Instrumentation](#new-instrumentation)
## Development Quick Start
@@ -138,10 +140,44 @@ When two or more approaches must be compared, please write a benchmark in the be
This repository contains many components which are maintained by more than the typical set of JS maintainers and approvers.
Each component in this repository SHOULD have a component owner who is responsible for maintaining it.
The README.md for each component SHOULD contain its owner, but the source of truth for component ownership is in [.github/component_owners.yml](.github/component_owners.yml).
-Component owners are generally given authority to make decisions relating to implementation and feature requests for their components, provided they follow the best practices set out by the maintainers.
+Component owners are generally given authority to make decisions relating to implementation and feature requests for their components,
+provided they follow the best practices set out by the maintainers and the [mission, vision and values](https://github.com/open-telemetry/community/blob/main/mission-vision-values.md)
+of the OpenTelemetry Project.
+
Component owners MUST do their best to maintain a high level of quality, security, performance, and specification compliance within their components.
Maintainers may override the decisions of component owners, but should only do so when they feel one or more of these traits is compromised.
+### Becoming a Component Owner
+
+To become a component owner, contributors SHOULD demonstrate prior knowledge of the instrumented package or the concepts therein.
+
+Ways do to so may be by providing proof of:
+
+- current or prior involvement with the community that develops the upstream package
+ - **Example:** A person working on MongoDB requesting ownership over a MongoDB instrumentation
+- current or prior involvement with a community that develops systems with similar concepts
+ - **Example:** A person previously working on a MySQL requesting ownership of a instrumentation package that instruments another database client library instrumentation.
+- current or prior extensive use of the instrumented package in other project they are involved in
+ - **Example:** A person working at a company that makes extensive use of the `fastify` library requesting ownership of the `@opentelemetry/instrumentation-fastify` package.
+- a vested interest in the telemetry being emitted from that instrumentation
+ - **Example:** A person employed at an observability vendor that relies on the continued maintenance of the instrumentation
+
+**Examples of proof may include but are not limited to:**
+
+- Links to issues/PRs they worked on
+- Links to blog posts authored by them on behalf of the organization developing that system
+- Membership in GitHub teams/organizations that are associated with the development of the upstream package
+
+Aspiring Component Owners MUST agree to uphold the [mission, vision and values](https://github.com/open-telemetry/community/blob/main/mission-vision-values.md) of the OpenTelemetry project.
+Further, aspiring component owners are expected to have knowledge of the [OpenTelemetry Semantic Conventions](https://github.com/open-telemetry/semantic-conventions)
+and MUST agree to adhere to the rules set out therein.
+
+If all these conditions are met, aspiring component owners are encouraged to self-nominate by opening an issue.
+@open-telemetry/javascript-maintainers will then engage on the issue, may ask questions, and will then - based on the
+information provided on the issue - either approve or deny the ownership request. If the ownership request has been
+approved, the new component owner opens a PR to add themselves to the list of owners ([.github/component_owners.yml](.github/component_owners.yml))
+for that package.
+
## Component Lifecycle
This repository contains many components in various stages of the component lifecycle.
@@ -186,8 +222,19 @@ Stable components MUST have their major version set to `1` or greater.
### Unmaintained
-A component which does not have an assigned component owner, or has a component owner who has been unresponsive to issues and pull requests may be marked as unmaintained.
-Unmaintained components may continue to work and receive updates and fixes from contributors, but may not receive immediate attention if there is a problem or feature request.
+A component which does not have an assigned component owner, or has a component owner who has been unresponsive to issues
+and pull requests may be marked as `pkg-status:unmaintained`.
+
+Unmaintained components may continue to work and receive updates and fixes from contributors. An unmaintained component
+is considered feature-freeze and new feature-requests may be closed within two weeks if no new owner is found.
+[@open-telemetry/javascript-approvers](https://github.com/orgs/open-telemetry/teams/javascript-approvers) may sponsor
+features for unmaintained components. At least one sponsor is needed to lift the feature-freeze for the purpose of
+adding the requested feature. Sponsors are expected to provide reviews for that feature and be responsive on the issue.
+
+Components marked as unmaintained still receive semantic conventions updates and bugfixes where possible.
+[@open-telemetry/javascript-triagers](https://github.com/orgs/open-telemetry/teams/javascript-triagers) may add the
+`type:semconv-update` or `bug` label to mark them as exempt from being auto-closed within two weeks.
+
A component which is unmaintained may be deprecated if there is a problem that is not fixed in a timely manner.
### Deprecated
@@ -232,6 +279,38 @@ please ping ([@open-telemetry/javascript-approvers](https://github.com/orgs/open
- New or changed functionality is documented if appropriate
- Substantial changes should not be merged within 24 hours of opening in order to allow reviewers from all time zones to have a chance to review
+## New Instrumentation
+
+**Do not submit pull requests for new instrumentation without reading the following.**
+
+This project is dedicated to promoting the development of quality instrumentation using OpenTelemetry.
+To achieve this goal, we recognize that the instrumentation needs to be written using the best practices of OpenTelemetry, but also by developers that understand the package they are instrumenting.
+Additionally, the produced instrumentation needs to be maintained and evolved.
+
+The size of the OpenTelemetry JavaScript developer community is not large enough to support an ever-growing amount of instrumentation.
+Therefore, to reach our goal, we have the following recommendations for where instrumentation packages should live.
+
+1. Native to the instrumented package
+2. A dedicated public repository
+3. Here in the opentelemetry-js-contrib repository
+
+If possible, OpenTelemetry instrumentation should be included in the instrumented package.
+This will ensure the instrumentation reaches all package users, and is continuously maintained by developers that understand the package.
+
+If instrumentation cannot be directly included in the package it is instrumenting, it should be hosted in a dedicated public repository owned by its maintainer(s).
+This will appropriately assign maintenance responsibilities for the instrumentation and ensure these maintainers have the needed privilege to maintain the code.
+
+The last place instrumentation should be hosted is here in this repository.
+Maintaining instrumentation here hampers the development of OpenTelemetry for JavaScript and therefore should be avoided.
+When instrumentation cannot be included in a target package and there is good reason to not host it in a separate and dedicated repository an [instrumentation request](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/new/choose) should be filed.
+Note that new instrumentation needs at least two contributors assigned to it as code-owners. It is the responsibility
+of the requesting party to reach out and find code-owners for the proposed instrumentation. The instrumentation request
+needs to be accepted before any pull requests for the instrumentation can be considered for merging.
+
+Regardless of where instrumentation is hosted, it needs to be discoverable.
+The [OpenTelemetry registry](https://opentelemetry.io/registry/) exists to ensure that instrumentation is discoverable.
+You can find out how to add instrumentation to the registry [here](https://github.com/open-telemetry/opentelemetry.io#adding-a-project-to-the-opentelemetry-registry).
+
## Contributing Vendor Components
This repo is generally meant for hosting components that work with popular open-source frameworks and tools. However, it is also possible to contribute components specific to a 3rd party vendor in this repo.
diff --git a/GUIDELINES.md b/GUIDELINES.md
index fbee8623a8..a3850fc6e3 100644
--- a/GUIDELINES.md
+++ b/GUIDELINES.md
@@ -198,6 +198,84 @@ Instrumentation may add additional patch/unpatch messages for specific functions
The cases above are not covered by the base class and offer additional context to the user troubleshooting an issue with the instrumentation.
+## Supported Versions
+
+Supported versions can refer to 2 entities in the context of OpenTelemetry instrumentations:
+
+- `Instrumented Package` - This is the user-facing package/s that the end user has installed in his application and is familiar with.
+- `Patched Package` - These are the packages that are being patched in practice to achieve the instrumentation goals. It may be `Instrumented Package` itself or transitive internal dependencies of the `Instrumented Package`.
+
+### `Instrumented Package` Documentation
+
+Instrumentation should have a "## Supported Versions" section in the README file that lists the supported versions range of the instrumented package. This range should hide and consolidate any internal implementation details like the use of internal modules, different patch logic for different versions, etc. It should focus on the relevance to the human consumer.
+
+### `Patched Package`s Supported Versions
+
+The packages to patch are specified in the `InstrumentationNodeModuleDefinition` and `InstrumentationNodeModuleFile` classes. Instrumentation can specify arrays with different package names and version ranges to use to implement the instrumentation logic. example use:
+
+```js
+const supportedVersions = ['>=1.2.3 <3'];
+
+ protected init() {
+
+ const someModuleFile = new InstrumentationNodeModuleFile(
+ 'foo/lib/some-file.js',
+ supportedVersions,
+ myFilePatch,
+ myFileUnpatch,
+ );
+
+ const module = new InstrumentationNodeModuleDefinition(
+ 'foo',
+ supportedVersions,
+ myModulePatch,
+ myModuleUnpatch,
+ [someModuleFile]
+ );
+ return module
+ }
+```
+
+### Variations
+
+There can be few variations between the instrumented package and the patched package:
+
+- Single Module - instrumentation patches the same module that is instrumented.
+- Different Modules - instrumentation patches internal modules with different names and version ranges as of the instrumented package.
+- Node.js Core Modules - instrumentation patches a Node.js internal module.
+- Multiple Modules - instrumentation may instrument a set of (potentially large number of) user-facing instrumented packages.
+- Patch Logic - instrumentation may use the `moduleExports` to patch, or hooks up to other mechanisms for recording signals. examples are: Node.js diagnostics channel, patching globals (like `window` being patched in browser instrumentations, or patches arbitrary lambda function handlers, etc.
+
+### Range Specification
+
+For versions that are a closed range, instrumentations should prefer to specify the supported versions of the instrumented package as `>=x.y.z =1.2.3`, for the instrumented package.
+- For `Node.js Core Modules`, the supported versions range is set to `['*']` to advertise that the instrumentation is compatible with all versions of Node.js that OpenTelemetry supports.
+- For `Multiple Modules`, the supported versions range should be specified for each module in the README file with the supported versions.
+- For `Different Patch Logic`, the use of supported versions can sometimes be more flexible, and the README should specify useful versioning information.
+
+### Add New Supported Versions
+
+When a new major version of the instrumented package is released, renovate bot will open a PR in contrib which helps maintainers to become aware of it. The instrumentation maintainer should review the new version and check compatibility with existing code. It can then be added to the supported versions list to be released in the next version of the instrumentation.
+
+Checklist for adding a new version to the supported versions list:
+
+- [ ] Review which functions are patched by the instrumentation and if they were changed in the new version that need support in code.
+- [ ] Check for breaking changes in the new version that could affect the instrumentation.
+- [ ] Test the instrumentation with the new version to ensure it works as expected.
+- [ ] Update the supported versions list in the instrumentation code, perhaps with different patches and additional `InstrumentationNodeModuleDefinition`s that target the new version.
+- [ ] Update the README file to reflect the support for new versions.
+- [ ] For instrumentations that use test-all-versions `.tav.yml`, add the new version to the list of versions to test.
+
## package.json
### Description
diff --git a/README.md b/README.md
index 7dede8487a..5a30f19bf6 100644
--- a/README.md
+++ b/README.md
@@ -48,6 +48,7 @@ This project includes:
- [Resource Detectors](./detectors).
**Instrumentations**: OpenTelemetry can collect tracing data automatically using instrumentations. Vendors/Users can also create and use their own.
+Please read the [contributing guidelines on adding new instrumentation](CONTRIBUTING.md#new-instrumentation) before opening any PRs.
**Resource Detectors**: OpenTelemetry can collect resource attributes of the entity that producing telemetry. For example, a process producing telemetry that is running in a container on Kubernetes has a Pod name, it is in a namespace and possibly is part of a Deployment which also has a name. All three of these attributes can be included in the `Resource`.
diff --git a/archive/opentelemetry-browser-extension-autoinjection/README.md b/archive/opentelemetry-browser-extension-autoinjection/README.md
index 4d15bec1ce..9e3747a868 100644
--- a/archive/opentelemetry-browser-extension-autoinjection/README.md
+++ b/archive/opentelemetry-browser-extension-autoinjection/README.md
@@ -2,8 +2,15 @@
## :warning: ARCHIVED PROJECT
-> This project has been archived by the maintainers on August 3 2022 because it was causing a failure in the CI and does not have any maintainer.
-> Anyone who would like to maintain this project should open a PR to move it back into the lerna project and add themselves to the component owners file.
+> This project has been archived by the maintainers permanently on June 19 2024.
+> We encourage extensions to be developed and maintained outside this repository.
+> Alternatives can be found in the OpenTelemetry Registry:
+>
+>
+>
+> If you are a developer of such an extension you can
+> [add it to the registry](https://opentelemetry.io/ecosystem/registry/adding/)
+> as well.
This browser extension allows you to inject [OpenTelemetry](https://opentelemetry.io/) instrumentation in any web page. It uses the [Web SDK](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-web) and can export data to Zipkin or an OpenTelemetry Collector.
diff --git a/archive/opentelemetry-browser-extension-autoinjection/package.json b/archive/opentelemetry-browser-extension-autoinjection/package.json
index 1efd629ff2..f0b7187c34 100644
--- a/archive/opentelemetry-browser-extension-autoinjection/package.json
+++ b/archive/opentelemetry-browser-extension-autoinjection/package.json
@@ -12,7 +12,7 @@
"lint:fix": "eslint . --fix",
"precompile": "tsc --version && lerna run version:update --scope @opentelemetry/browser-extension-autoinjection --include-dependencies",
"prewatch": "npm run precompile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"watch": "npx webpack --mode=development --watch",
"watch:mv2": "npx webpack --mode=development --watch --env MV=2",
@@ -47,7 +47,6 @@
"html-webpack-plugin": "5.3.2",
"jimp": "0.16.1",
"jsdom": "15.2.1",
- "mocha": "7.2.0",
"null-loader": "4.0.1",
"nyc": "15.1.0",
"responsive-loader": "2.3.0",
@@ -55,7 +54,6 @@
"sinon": "15.0.1",
"sinon-chrome": "3.0.1",
"ts-loader": "9.2.5",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
"webpack": "4.46.0",
"webpack-cli": "4.7.2",
@@ -76,7 +74,7 @@
"@opentelemetry/resources": "^1.8.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-web": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.0.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"change-case": "4.1.2",
"json5": "2.2.0",
"react": "17.0.2",
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/CHANGELOG.md b/archive/opentelemetry-propagator-grpc-census-binary/CHANGELOG.md
deleted file mode 100644
index f6b5c40c3f..0000000000
--- a/archive/opentelemetry-propagator-grpc-census-binary/CHANGELOG.md
+++ /dev/null
@@ -1,44 +0,0 @@
-# Changelog
-
-## [0.27.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-grpc-census-binary-v0.27.1...propagator-grpc-census-binary-v0.27.2) (2024-04-25)
-
-
-### Bug Fixes
-
-* revert modifications to Apache license ([#2105](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2105)) ([4590c8d](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/4590c8df184bbcb9bd67ce1111df9f25f865ccf2))
-
-## [0.27.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-grpc-census-binary-v0.27.0...propagator-grpc-census-binary-v0.27.1) (2023-08-14)
-
-
-### Bug Fixes
-
-* Revert "feat(minification): Add importHelpers and tslib as a dependency ([#1545](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1545))" ([#1611](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1611)) ([e5bca5f](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/e5bca5fe5b27adc59c8de8fe4087d38b69d93bd4))
-
-## [0.27.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-grpc-census-binary-v0.26.1...propagator-grpc-census-binary-v0.27.0) (2023-07-12)
-
-
-### Features
-
-* **minification:** Add importHelpers and tslib as a dependency ([#1545](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1545)) ([65f612e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/65f612e35c4d67b9935dc3a9155588b35d915482))
-
-## [0.26.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-grpc-census-binary-v0.26.0...propagator-grpc-census-binary-v0.26.1) (2023-05-16)
-
-
-### Bug Fixes
-
-* **eslint-config:** replace gts with prettier and eslint ([#1439](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1439)) ([2571c37](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2571c371be1b5738442200cab2415b6a04c32aab))
-
-## [0.26.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-grpc-census-binary-v0.25.1...propagator-grpc-census-binary-v0.26.0) (2022-05-14)
-
-
-### Features
-
-* add supported node versions for all packages ([#973](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/973)) ([baaacbd](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/baaacbdd35ca4baab0afae64647aa8c0380ee4b7))
-* use Otel SDK 1.2/0.28 ([#984](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/984)) ([098c2ed](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/098c2ed6f9c5ab7bd865685018c0777245aab3b7))
-
-### [0.25.1](https://www.github.com/open-telemetry/opentelemetry-js-contrib/compare/propagator-grpc-census-binary-v0.25.0...propagator-grpc-census-binary-v0.25.1) (2022-01-24)
-
-
-### Bug Fixes
-
-* rename lerna's --include-filtered-dependencies option ([#817](https://www.github.com/open-telemetry/opentelemetry-js-contrib/issues/817)) ([cf268e7](https://www.github.com/open-telemetry/opentelemetry-js-contrib/commit/cf268e7a92b7800ad6dbec9ca77466f9ee03ee1a))
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/README.md b/archive/opentelemetry-propagator-grpc-census-binary/README.md
deleted file mode 100644
index 0b9cc0caf9..0000000000
--- a/archive/opentelemetry-propagator-grpc-census-binary/README.md
+++ /dev/null
@@ -1,58 +0,0 @@
-# OpenTelemetry Propagator gRPC Census
-
-[![NPM Published Version][npm-img]][npm-url]
-[![Apache License][license-image]][license-image]
-
-OpenTelemetry gRPC Census propagator provides gRPC header propagation for systems that use the OpenCensus 'grpc-trace-bin' binary header format. This allows for context propagation when either:
-
-- incoming gRPC calls come from services already instrumented using OpenCensus
-- outgoing gRPC calls go to services already instrumented using OpenCensus
-
-This propagator works in conjunction with the OpenTelemetry [gRPC plugin](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/exporter-trace-otlp-grpc).
-
-Example of usage:
-
-```javascript
-const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
-const { GrpcCensusPropagator } = require('@opentelemetry/propagator-grpc-census-binary');
-const { registerInstrumentations } = require('@opentelemetry/instrumentation');
-const { GrpcInstrumentation } = require('opentelemetry/instrumentation-grpc');
-
-const provider = new NodeTracerProvider();
-
-// Register GrpcCensusPropagator so we can propagate content using
-// the 'grpc-trace-bin' header in our incoming/outgoing gRPC calls.
-provider.register({
- propagator: new GrpcCensusPropagator()
-});
-
-registerInstrumentations({
- instrumentations: [
- new GrpcInstrumentation(),
- ],
-});
-
-```
-
-Also, see [examples/grpc-census-prop](../../examples/grpc-census-prop) for a
-worked example that shows when this propagator can be useful.
-
-## Implementation Details
-
-See [binary-format.ts](https://github.com/census-instrumentation/opencensus-node/blob/master/packages/opencensus-propagation-binaryformat/src/binary-format.ts) for equivalent encoding/decoding of the format in OpenCensus. Note: the author of the OpenCensus binary format, [@mayurkale22](https://github.com/mayurkale22), also created BinaryTraceContext.ts in [opentelemetry-core](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-core) but that was subsequently removed as part of PR [#804](https://github.com/open-telemetry/opentelemetry-js/pull/804). The implementation of GrpcCensusPropagator in _this_ module uses a version of BinaryTraceContext.ts inspired by Mayur's previous work (with minor modifications e.g. there is no longer a BinaryFormat interface to implement).
-
-## Useful links
-
-- For more information on OpenTelemetry, visit:
-- For more about OpenTelemetry JavaScript:
-- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]
-
-## License
-
-Apache 2.0 - See [LICENSE][license-url] for more information.
-
-[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions
-[license-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/LICENSE
-[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat
-[npm-url]: https://www.npmjs.com/package/@opentelemetry/propagator-grpc-census-binary
-[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fpropagator-grpc-census-binary.svg
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/package.json b/archive/opentelemetry-propagator-grpc-census-binary/package.json
deleted file mode 100644
index 383d1cb1fb..0000000000
--- a/archive/opentelemetry-propagator-grpc-census-binary/package.json
+++ /dev/null
@@ -1,57 +0,0 @@
-{
- "name": "@opentelemetry/propagator-grpc-census-binary",
- "version": "0.27.2",
- "description": "OpenTelemetry gRPC Census propagator provides a context propagator for OpenTelemetry that can use the gRPC binary header: 'grpc-trace-bin' for interoperability with OpenCensus",
- "main": "build/src/index.js",
- "types": "build/src/index.d.ts",
- "repository": "open-telemetry/opentelemetry-js-contrib",
- "scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
- "tdd": "npm run tdd:node",
- "tdd:node": "npm run test -- --watch-extensions ts --watch",
- "clean": "rimraf build/*",
- "lint": "eslint . --ext .ts",
- "lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/propagator-grpc-census-binary --include-dependencies",
- "prewatch": "npm run precompile",
- "compile": "tsc -p .",
- "prepublishOnly": "npm run compile",
- "watch": "tsc -w"
- },
- "keywords": [
- "opentelemetry",
- "nodejs",
- "tracing",
- "grpc",
- "opencensus"
- ],
- "author": "OpenTelemetry Authors",
- "license": "Apache-2.0",
- "engines": {
- "node": ">=14"
- },
- "files": [
- "build/src/**/*.js",
- "build/src/**/*.js.map",
- "build/src/**/*.d.ts"
- ],
- "publishConfig": {
- "access": "public"
- },
- "peerDependencies": {
- "@opentelemetry/api": "^1.0.0"
- },
- "devDependencies": {
- "@opentelemetry/api": "^1.0.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "grpc": "1.24.11",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-loader": "8.3.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/propagators/opentelemetry-propagator-grpc-census-binary#readme"
-}
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/src/BinaryTraceContext.ts b/archive/opentelemetry-propagator-grpc-census-binary/src/BinaryTraceContext.ts
deleted file mode 100644
index 5470441b09..0000000000
--- a/archive/opentelemetry-propagator-grpc-census-binary/src/BinaryTraceContext.ts
+++ /dev/null
@@ -1,141 +0,0 @@
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import { SpanContext, TraceFlags } from '@opentelemetry/api';
-
-const VERSION_ID = 0;
-const TRACE_ID_FIELD_ID = 0;
-const SPAN_ID_FIELD_ID = 1;
-const TRACE_OPTION_FIELD_ID = 2;
-
-// Sizes are number of bytes.
-const ID_SIZE = 1;
-const TRACE_ID_SIZE = 16;
-const SPAN_ID_SIZE = 8;
-const TRACE_OPTION_SIZE = 1;
-
-const VERSION_ID_OFFSET = 0;
-const TRACE_ID_FIELD_ID_OFFSET = VERSION_ID_OFFSET + ID_SIZE;
-const TRACE_ID_OFFSET = TRACE_ID_FIELD_ID_OFFSET + ID_SIZE;
-const SPAN_ID_FIELD_ID_OFFSET = TRACE_ID_OFFSET + TRACE_ID_SIZE;
-const SPAN_ID_OFFSET = SPAN_ID_FIELD_ID_OFFSET + ID_SIZE;
-const TRACE_OPTION_FIELD_ID_OFFSET = SPAN_ID_OFFSET + SPAN_ID_SIZE;
-const TRACE_OPTIONS_OFFSET = TRACE_OPTION_FIELD_ID_OFFSET + ID_SIZE;
-
-const FORMAT_LENGTH =
- 4 * ID_SIZE + TRACE_ID_SIZE + SPAN_ID_SIZE + TRACE_OPTION_SIZE;
-
-/**
- * Used to encode SpanContext to binary (toBytes) or decode SpanContext
- * from binary (fromBytes). Derived from a previous implementation in
- * opentelemetry-core (see README.md). Supports the main
- * GrpcCensusPropagator class.
- */
-export class BinaryTraceContext {
- /**
- * Converts context to the binary format used by OpenCensus.
- *
- * @param spanContext - The SpanContext to encode
- * @returns Encoded context as a Uint8Array
- */
- static toBytes(spanContext: SpanContext): Uint8Array {
- /**
- * 0 1 2
- * 0 1 2345678901234567 8 90123456 7 8
- * -------------------------------------
- * | | | | | | | |
- * -------------------------------------
- * ^ ^ ^ ^ ^ ^ ^
- * | | | | | | `-- options value
- * | | | | | `---- options field ID (2)
- * | | | | `---------- spanID value
- * | | | `--------------- spanID field ID (1)
- * | | `--------------------------- traceID value
- * | `---------------------------------- traceID field ID (0)
- * `------------------------------------ version (0)
- */
- const traceId = spanContext.traceId;
- const spanId = spanContext.spanId;
- const buf = new Uint8Array(FORMAT_LENGTH);
- let j = TRACE_ID_OFFSET;
- for (let i = TRACE_ID_OFFSET; i < SPAN_ID_FIELD_ID_OFFSET; i++) {
- // tslint:disable-next-line:ban Needed to parse hexadecimal.
- buf[j++] = parseInt(traceId.substr((i - TRACE_ID_OFFSET) * 2, 2), 16);
- }
- buf[j++] = SPAN_ID_FIELD_ID;
- for (let i = SPAN_ID_OFFSET; i < TRACE_OPTION_FIELD_ID_OFFSET; i++) {
- // tslint:disable-next-line:ban Needed to parse hexadecimal.
- buf[j++] = parseInt(spanId.substr((i - SPAN_ID_OFFSET) * 2, 2), 16);
- }
- buf[j++] = TRACE_OPTION_FIELD_ID;
- buf[j++] = Number(spanContext.traceFlags) || TraceFlags.NONE;
- return buf;
- }
-
- /**
- * Converts the binary format used by OpenCensus to a SpanContext
- *
- * @param buf - Encoded context as a Uint8Array
- * @returns Decoded context or null if the incoming binary is invalid
- */
- static fromBytes(buf: Uint8Array): SpanContext | null {
- const result: SpanContext = {
- traceId: '',
- spanId: '',
- traceFlags: TraceFlags.NONE,
- };
- // Length must be 29.
- if (buf.length !== FORMAT_LENGTH) return null;
- // Check version and field numbers.
- if (
- buf[VERSION_ID_OFFSET] !== VERSION_ID ||
- buf[TRACE_ID_FIELD_ID_OFFSET] !== TRACE_ID_FIELD_ID ||
- buf[SPAN_ID_FIELD_ID_OFFSET] !== SPAN_ID_FIELD_ID ||
- buf[TRACE_OPTION_FIELD_ID_OFFSET] !== TRACE_OPTION_FIELD_ID
- ) {
- return null;
- }
-
- result.isRemote = true;
-
- // See toBytes for byte offsets.
- result.traceId = toHex(buf.slice(TRACE_ID_OFFSET, SPAN_ID_FIELD_ID_OFFSET));
- result.spanId = toHex(
- buf.slice(SPAN_ID_OFFSET, TRACE_OPTION_FIELD_ID_OFFSET)
- );
- result.traceFlags = buf[TRACE_OPTIONS_OFFSET];
- return result;
- }
-}
-
-/**
- * Convert a binary array to a Hex representation
- *
- * @param buff - binary array to be converted
- * @returns Hex representation
- */
-function toHex(buff: Uint8Array) {
- let out = '';
- for (let i = 0; i < buff.length; ++i) {
- const n = buff[i];
- if (n < 16) {
- out += '0' + n.toString(16);
- } else {
- out += n.toString(16);
- }
- }
- return out;
-}
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/src/GrpcCensusPropagator.ts b/archive/opentelemetry-propagator-grpc-census-binary/src/GrpcCensusPropagator.ts
deleted file mode 100644
index 3610026038..0000000000
--- a/archive/opentelemetry-propagator-grpc-census-binary/src/GrpcCensusPropagator.ts
+++ /dev/null
@@ -1,154 +0,0 @@
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import {
- Context,
- trace,
- TextMapGetter,
- TextMapSetter,
- TextMapPropagator,
-} from '@opentelemetry/api';
-import { BinaryTraceContext } from './BinaryTraceContext';
-
-/** The metadata key under which span context is stored as a binary value. */
-export const GRPC_TRACE_KEY = 'grpc-trace-bin';
-
-const VALID_TRACEID_REGEX = /^[0-9a-f]{32}$/i;
-const VALID_SPANID_REGEX = /^[0-9a-f]{16}$/i;
-const INVALID_ID_REGEX = /^0+$/i;
-
-/**
- * Check whether a traceId is valid
- * @param traceId - traceId to check
- * @returns true if valid
- */
-function isValidTraceId(traceId: string): boolean {
- return VALID_TRACEID_REGEX.test(traceId) && !INVALID_ID_REGEX.test(traceId);
-}
-
-/**
- * Check whether a spanId is valid
- * @param spanId - spanId to check
- * @returns true if valid
- */
-function isValidSpanId(spanId: string): boolean {
- return VALID_SPANID_REGEX.test(spanId) && !INVALID_ID_REGEX.test(spanId);
-}
-
-/**
- * Propagator for the grpc-trace-bin header used by OpenCensus for
- * gRPC. Acts as a bridge between the TextMapPropagator interface and
- * the binary encoding/decoding that happens in the supporting
- * BinaryTraceContext class.
- */
-export class GrpcCensusPropagator implements TextMapPropagator {
- /**
- * Injects trace propagation context into the carrier after encoding
- * in binary format
- *
- * @param context - Context to be injected
- * @param carrier - Carrier in which to inject (for gRPC this will
- * be a grpc.Metadata object)
- * @param setter - setter function that sets the correct key in
- * the carrier
- */
- inject(context: Context, carrier: unknown, setter: TextMapSetter) {
- const spanContext = trace.getSpan(context)?.spanContext();
- if (!spanContext) return;
-
- if (
- isValidTraceId(spanContext.traceId) &&
- isValidSpanId(spanContext.spanId)
- ) {
- // We set the header only if there is an existing sampling decision.
- // Otherwise we will omit it => Absent.
- if (spanContext.traceFlags !== undefined) {
- const encodedArray = BinaryTraceContext.toBytes(spanContext);
- const encodedContext = Buffer.from(encodedArray.buffer);
-
- if (carrier && encodedContext) {
- // Set the gRPC header (carrier will be of type grpc.Metadata)
- // @TODO FIX ME once this is resolved
- // https://github.com/open-telemetry/opentelemetry-specification/issues/437
- setter.set(carrier, GRPC_TRACE_KEY, encodedContext as any);
- // setter.set(carrier, GRPC_TRACE_KEY, encodedContext);
- }
- }
- }
- }
-
- /**
- * Extracts trace propagation context from the carrier and decodes
- * from the binary format
- *
- * @param context - context to set extracted span context on
- * @param carrier - Carrier from which to extract (for gRPC this will
- * be a grpc.Metadata object)
- * @param getter - getter function that gets value(s) for the correct
- * key in the carrier
- * @returns Extracted context if successful, otherwise the input context
- */
- extract(context: Context, carrier: unknown, getter: TextMapGetter): Context {
- if (carrier) {
- // Get the gRPC header (carrier will be of type grpc.Metadata and
- // getter actually returns an Array so we use the zero-th element if
- // it exists)
-
- // @TODO FIX ME once this is resolved
- // https://github.com/open-telemetry/opentelemetry-specification/issues/437
- const values = getter.get(
- carrier,
- GRPC_TRACE_KEY
- ) as unknown as Array;
- // const values = getter.get(carrier, GRPC_TRACE_KEY) as Array;
- const metadataValue = values.length > 0 ? values[0] : null;
-
- if (!metadataValue) {
- // No metadata, return empty context
- return context;
- } else {
- const decodedContext = BinaryTraceContext.fromBytes(metadataValue);
-
- if (decodedContext) {
- const traceId = decodedContext.traceId;
- const spanId = decodedContext.spanId;
-
- if (isValidTraceId(traceId) && isValidSpanId(spanId)) {
- return trace.setSpan(
- context,
- trace.wrapSpanContext({
- traceId,
- spanId,
- isRemote: true,
- traceFlags: decodedContext.traceFlags,
- })
- );
- }
- return context;
- } else {
- // Failed to deserialize Span Context, return empty context
- return context;
- }
- }
- }
-
- return context;
- }
-
- fields(): string[] {
- return [GRPC_TRACE_KEY];
- }
-}
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/test/BinaryTraceContext.test.ts b/archive/opentelemetry-propagator-grpc-census-binary/test/BinaryTraceContext.test.ts
deleted file mode 100644
index 0e1627bbe4..0000000000
--- a/archive/opentelemetry-propagator-grpc-census-binary/test/BinaryTraceContext.test.ts
+++ /dev/null
@@ -1,93 +0,0 @@
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import * as assert from 'assert';
-import { BinaryTraceContext } from '../src/BinaryTraceContext';
-import { SpanContext, TraceFlags } from '@opentelemetry/api';
-
-describe('BinaryTraceContext', () => {
- const commonTraceId = 'd4cda95b652f4a0b92b449d5929fda1b';
- const commonSpanId = '75e8ed491aec7eca';
-
- const testCases: Array<{
- structured: SpanContext | null;
- binary: Uint8Array;
- description: string;
- }> = [
- {
- structured: {
- traceId: commonTraceId,
- spanId: commonSpanId,
- traceFlags: TraceFlags.SAMPLED,
- },
- binary: new Uint8Array([
- 0, 0, 212, 205, 169, 91, 101, 47, 74, 11, 146, 180, 73, 213, 146, 159,
- 218, 27, 1, 117, 232, 237, 73, 26, 236, 126, 202, 2, 1,
- ]),
- description: 'span context with 64-bit span ID',
- },
- {
- structured: {
- traceId: commonTraceId,
- spanId: commonSpanId,
- traceFlags: TraceFlags.NONE,
- },
- binary: new Uint8Array([
- 0, 0, 212, 205, 169, 91, 101, 47, 74, 11, 146, 180, 73, 213, 146, 159,
- 218, 27, 1, 117, 232, 237, 73, 26, 236, 126, 202, 2, 0,
- ]),
- description: 'span context with no traceFlags',
- },
- {
- structured: null,
- binary: new Uint8Array([0, 0]),
- description: 'incomplete binary span context (by returning null)',
- },
- {
- structured: null,
- binary: new Uint8Array(29),
- description: 'bad binary span context (by returning null)',
- },
- ];
-
- describe('.toBytes()', () => {
- testCases.forEach(
- testCase =>
- testCase.structured &&
- it(`should serialize ${testCase.description}`, () => {
- assert.deepStrictEqual(
- BinaryTraceContext.toBytes(testCase.structured!),
- testCase.binary
- );
- })
- );
- });
-
- describe('.fromBytes()', () => {
- testCases.forEach(testCase =>
- it(`should deserialize ${testCase.description}`, () => {
- assert.deepStrictEqual(
- BinaryTraceContext.fromBytes(testCase.binary),
- testCase.structured &&
- Object.assign(
- { isRemote: true, traceFlags: TraceFlags.NONE },
- testCase.structured
- )
- );
- })
- );
- });
-});
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/test/GrpcCensusPropagator.test.ts b/archive/opentelemetry-propagator-grpc-census-binary/test/GrpcCensusPropagator.test.ts
deleted file mode 100644
index b90696e4bc..0000000000
--- a/archive/opentelemetry-propagator-grpc-census-binary/test/GrpcCensusPropagator.test.ts
+++ /dev/null
@@ -1,282 +0,0 @@
-/*
- * Copyright The OpenTelemetry Authors
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * https://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-import {
- ROOT_CONTEXT,
- SpanContext,
- TextMapGetter,
- TextMapSetter,
- TraceFlags,
- trace,
-} from '@opentelemetry/api';
-import * as assert from 'assert';
-import { Metadata, MetadataValue } from 'grpc';
-import {
- GrpcCensusPropagator,
- GRPC_TRACE_KEY,
-} from '../src/GrpcCensusPropagator';
-
-describe('GrpcCensusPropagator', () => {
- const censusPropagator = new GrpcCensusPropagator();
- const metadata = new Metadata();
-
- beforeEach(() => {
- metadata.remove(GRPC_TRACE_KEY);
- });
-
- describe('.inject()', () => {
- it('should set grpc-trace-bin header correctly for sampled span', () => {
- const spanContext: SpanContext = {
- traceId: 'd4cda95b652f4a1592b449d5929fda1b',
- spanId: '6e0c63257de34c92',
- traceFlags: TraceFlags.SAMPLED,
- };
- censusPropagator.inject(
- trace.setSpan(ROOT_CONTEXT, trace.wrapSpanContext(spanContext)),
- metadata,
- makeSetter((metadata: any, k: any, v: any) =>
- metadata.set(k, v as MetadataValue)
- )
- );
-
- const value = metadata.getMap()[GRPC_TRACE_KEY] as Buffer;
-
- const binaryExpected = `0000${spanContext.traceId}01${
- spanContext.spanId
- }02${'01'}`;
-
- assert.deepStrictEqual(value.toString('hex'), binaryExpected);
- });
-
- it('should set grpc-trace-bin header correctly for unsampled span', () => {
- const spanContext: SpanContext = {
- traceId: 'd4cda95b652f4a1592b449d5929fda1b',
- spanId: '6e0c63257de34c92',
- traceFlags: TraceFlags.NONE,
- };
- censusPropagator.inject(
- trace.setSpan(ROOT_CONTEXT, trace.wrapSpanContext(spanContext)),
- metadata,
- makeSetter((metadata: any, k: any, v: any) =>
- metadata.set(k, v as MetadataValue)
- )
- );
-
- const value = metadata.getMap()[GRPC_TRACE_KEY] as Buffer;
-
- const binaryExpected = `0000${spanContext.traceId}01${
- spanContext.spanId
- }02${'00'}`;
-
- assert.deepStrictEqual(value.toString('hex'), binaryExpected);
- });
-
- it('should not inject empty spancontext', () => {
- const emptySpanContext = {
- traceId: '',
- spanId: '',
- traceFlags: TraceFlags.NONE,
- };
- censusPropagator.inject(
- trace.setSpan(ROOT_CONTEXT, trace.wrapSpanContext(emptySpanContext)),
- metadata,
- makeSetter((metadata: any, k: any, v: any) =>
- metadata.set(k, v as MetadataValue)
- )
- );
-
- const value = metadata.getMap()[GRPC_TRACE_KEY] as Buffer;
- assert.deepStrictEqual(value, undefined);
- });
-
- it('should not inject when context has no parent', () => {
- censusPropagator.inject(
- ROOT_CONTEXT,
- metadata,
- makeSetter((metadata: any, k: any, v: any) =>
- metadata.set(k, v as MetadataValue)
- )
- );
-
- const value = metadata.getMap()[GRPC_TRACE_KEY] as Buffer;
- assert.deepStrictEqual(value, undefined);
- });
-
- it('should not try to inject without valid TraceFlags', () => {
- const spanContext = {
- traceId: 'd4cda95b652f4a1592b449d5929fda1b',
- spanId: '6e0c63257de34c92',
- traceFlags: undefined,
- };
- censusPropagator.inject(
- // cast to any so that undefined traceFlags can be used for coverage
- trace.setSpan(ROOT_CONTEXT, trace.wrapSpanContext(spanContext as any)),
- metadata,
- makeSetter((metadata: any, k: any, v: any) =>
- metadata.set(k, v as MetadataValue)
- )
- );
-
- const value = metadata.getMap()[GRPC_TRACE_KEY] as Buffer;
- assert.deepStrictEqual(value, undefined);
- });
-
- it('should not try to inject without carrier', () => {
- const emptySpanContext = {
- traceId: 'd4cda95b652f4a1592b449d5929fda1b',
- spanId: '6e0c63257de34c92',
- traceFlags: TraceFlags.SAMPLED,
- };
- censusPropagator.inject(
- trace.setSpan(ROOT_CONTEXT, trace.wrapSpanContext(emptySpanContext)),
- null,
- makeSetter((metadata: any, k: any, v: any) =>
- metadata.set(k, v as MetadataValue)
- )
- );
-
- const value = metadata.getMap()[GRPC_TRACE_KEY] as Buffer;
- assert.deepStrictEqual(value, undefined);
- });
- });
-
- describe('.extract()', () => {
- it('should extract context of a unsampled span from carrier', () => {
- const encodedArray = getUnsampledSpanEncodedArray();
- const encoded = Buffer.from(encodedArray.buffer);
- metadata.set(GRPC_TRACE_KEY, encoded);
-
- const extractedSpanContext = trace
- .getSpan(censusPropagator.extract(ROOT_CONTEXT, metadata, makeGetter()))
- ?.spanContext();
-
- assert.deepStrictEqual(extractedSpanContext, {
- spanId: '75e8ed491aec7eca',
- traceId: 'd4cda95b652f4a0b92b449d5929fda1b',
- isRemote: true,
- traceFlags: TraceFlags.NONE,
- });
- });
-
- it('should extract context of a sampled span from carrier', () => {
- const encodedArray = getUnsampledSpanEncodedArray();
-
- // switch last byte to sampled
- encodedArray[encodedArray.length - 1] = 1;
- const encoded = Buffer.from(encodedArray.buffer);
- metadata.set(GRPC_TRACE_KEY, encoded);
-
- const extractedSpanContext = trace
- .getSpan(censusPropagator.extract(ROOT_CONTEXT, metadata, makeGetter()))
- ?.spanContext();
-
- assert.deepStrictEqual(extractedSpanContext, {
- spanId: '75e8ed491aec7eca',
- traceId: 'd4cda95b652f4a0b92b449d5929fda1b',
- isRemote: true,
- traceFlags: TraceFlags.SAMPLED,
- });
- });
-
- it('should return undefined when header is not set', () => {
- const extractedSpanContext = trace
- .getSpan(censusPropagator.extract(ROOT_CONTEXT, metadata, makeGetter()))
- ?.spanContext();
- assert.deepStrictEqual(extractedSpanContext, undefined);
- });
-
- it('should return undefined for invalid field IDs', () => {
- // zero out all 29 bytes - this will fail due to lack of valid
- // field IDs for spanId and options (bytes 18 and 27)
- const encodedArray = new Uint8Array(29);
-
- const encoded = Buffer.from(encodedArray.buffer);
- metadata.set(GRPC_TRACE_KEY, encoded);
-
- const extractedSpanContext = trace
- .getSpan(censusPropagator.extract(ROOT_CONTEXT, metadata, makeGetter()))
- ?.spanContext();
-
- assert.deepStrictEqual(extractedSpanContext, undefined);
- });
-
- it('should return undefined for invalid trace or span ids', () => {
- // this should give coverage for the flow where either
- // isValidTraceId or isValidSpanId fails
-
- // zero out all 29 bytes except for the spanId field ID and
- // the options field IF
- const encodedArray = new Uint8Array(29);
- encodedArray[18] = 1;
- encodedArray[27] = 2;
-
- const encoded = Buffer.from(encodedArray.buffer);
- metadata.set(GRPC_TRACE_KEY, encoded);
-
- const extractedSpanContext = trace
- .getSpan(censusPropagator.extract(ROOT_CONTEXT, metadata, makeGetter()))
- ?.spanContext();
-
- assert.deepStrictEqual(extractedSpanContext, undefined);
- });
-
- it('should return undefined when carrier is null', () => {
- const extractedSpanContext = trace
- .getSpan(censusPropagator.extract(ROOT_CONTEXT, metadata, makeGetter()))
- ?.spanContext();
- assert.deepStrictEqual(extractedSpanContext, undefined);
- });
- });
-
- describe('fields', () => {
- it('should return valid values', () => {
- assert.deepStrictEqual(censusPropagator.fields(), ['grpc-trace-bin']);
- });
- });
-});
-
-function getUnsampledSpanEncodedArray() {
- return new Uint8Array([
- 0, 0, 212, 205, 169, 91, 101, 47, 74, 11, 146, 180, 73, 213, 146, 159, 218,
- 27, 1, 117, 232, 237, 73, 26, 236, 126, 202, 2, 0,
- ]);
-}
-
-function makeSetter(callback: (metadata: any, k: any, v: any) => void) {
- const setter: TextMapSetter = {
- set(carrier, key, value) {
- callback(carrier, key, value);
- },
- };
- return setter;
-}
-
-function makeGetter() {
- const getter: TextMapGetter = {
- get(carrier, key) {
- if (carrier) {
- return carrier.get(key);
- }
- },
- keys(carrier) {
- if (carrier == null) {
- return [];
- }
- return Object.keys(carrier);
- },
- };
- return getter;
-}
diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md
index b5465ad164..19a1578c6d 100644
--- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md
+++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/CHANGELOG.md
@@ -1,5 +1,48 @@
# Changelog
+## [0.29.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-alibaba-cloud-v0.29.3...resource-detector-alibaba-cloud-v0.29.4) (2024-10-25)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.29.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-alibaba-cloud-v0.29.2...resource-detector-alibaba-cloud-v0.29.3) (2024-10-10)
+
+
+### Bug Fixes
+
+* add missing @opentelemetry/core dependency ([#2473](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2473)) ([4d66431](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/4d66431a2ad480720bf6c33663a419ec1404cd33))
+
+## [0.29.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-alibaba-cloud-v0.29.1...resource-detector-alibaba-cloud-v0.29.2) (2024-10-08)
+
+
+### Bug Fixes
+
+* **detector-alibaba:** suppres internal tracing ([#2429](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2429)) ([9a7690e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9a7690e92e571fcbf541eb76b6a5c4fde546b6e6))
+
+## [0.29.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-alibaba-cloud-v0.29.0...resource-detector-alibaba-cloud-v0.29.1) (2024-09-02)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.29.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-alibaba-cloud-v0.28.10...resource-detector-alibaba-cloud-v0.29.0) (2024-08-05)
+
+
+### ⚠ BREAKING CHANGES
+
+* **detector-alibaba:** change implementation to DetectorSync interface ([#2328](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2328))
+
+### Features
+
+* **detector-alibaba:** change implementation to DetectorSync interface ([#2328](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2328)) ([25e85c7](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/25e85c7b128f7424b51987e9f4c067e0b538fe2f))
+
## [0.28.10](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-alibaba-cloud-v0.28.9...resource-detector-alibaba-cloud-v0.28.10) (2024-06-06)
diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json
index 604db0575f..fe88cfac01 100644
--- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json
+++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/resource-detector-alibaba-cloud",
- "version": "0.28.10",
+ "version": "0.29.4",
"description": "OpenTelemetry resource detector for Alibaba Cloud",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,10 +10,9 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/resource-detector-alibaba-cloud --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"watch": "tsc -w"
},
@@ -40,24 +39,23 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.0.0"
},
"dependencies": {
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/core": "^1.26.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/detectors/node/opentelemetry-resource-detector-alibaba-cloud#readme"
}
diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/detectors/AlibabaCloudEcsDetector.ts b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/detectors/AlibabaCloudEcsDetector.ts
index 776e5dbccd..10420186a8 100644
--- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/detectors/AlibabaCloudEcsDetector.ts
+++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/detectors/AlibabaCloudEcsDetector.ts
@@ -14,9 +14,13 @@
* limitations under the License.
*/
+import { context } from '@opentelemetry/api';
+import { suppressTracing } from '@opentelemetry/core';
import {
- Detector,
+ DetectorSync,
+ IResource,
Resource,
+ ResourceAttributes,
ResourceDetectionConfig,
} from '@opentelemetry/resources';
import {
@@ -31,6 +35,7 @@ import {
SEMRESATTRS_HOST_NAME,
SEMRESATTRS_HOST_TYPE,
} from '@opentelemetry/semantic-conventions';
+
import * as http from 'http';
/**
@@ -38,7 +43,7 @@ import * as http from 'http';
* AlibabaCloud ECS and return a {@link Resource} populated with metadata about
* the ECS instance. Returns an empty Resource if detection fails.
*/
-class AlibabaCloudEcsDetector implements Detector {
+class AlibabaCloudEcsDetector implements DetectorSync {
/**
* See https://www.alibabacloud.com/help/doc-detail/67254.htm for
* documentation about the AlibabaCloud instance identity document.
@@ -57,7 +62,17 @@ class AlibabaCloudEcsDetector implements Detector {
*
* @param config (unused) The resource detection config
*/
- async detect(_config?: ResourceDetectionConfig): Promise {
+ detect(_config?: ResourceDetectionConfig): IResource {
+ const attributes = context.with(suppressTracing(context.active()), () =>
+ this._getAttributes()
+ );
+ return new Resource({}, attributes);
+ }
+
+ /** Gets identity and host info and returns them as attribs. Empty object if fails */
+ async _getAttributes(
+ _config?: ResourceDetectionConfig
+ ): Promise {
const {
'owner-account-id': accountId,
'instance-id': instanceId,
@@ -67,7 +82,7 @@ class AlibabaCloudEcsDetector implements Detector {
} = await this._fetchIdentity();
const hostname = await this._fetchHost();
- return new Resource({
+ return {
[SEMRESATTRS_CLOUD_PROVIDER]: CLOUDPROVIDERVALUES_ALIBABA_CLOUD,
[SEMRESATTRS_CLOUD_PLATFORM]: CLOUDPLATFORMVALUES_ALIBABA_CLOUD_ECS,
[SEMRESATTRS_CLOUD_ACCOUNT_ID]: accountId,
@@ -76,7 +91,7 @@ class AlibabaCloudEcsDetector implements Detector {
[SEMRESATTRS_HOST_ID]: instanceId,
[SEMRESATTRS_HOST_TYPE]: instanceType,
[SEMRESATTRS_HOST_NAME]: hostname,
- });
+ };
}
/**
diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/detectors/index.ts b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/detectors/index.ts
index 362ed6ecb7..1f43069640 100644
--- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/detectors/index.ts
+++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/detectors/index.ts
@@ -14,4 +14,4 @@
* limitations under the License.
*/
-export * from './AlibabaCloudEcsDetector';
+export { alibabaCloudEcsDetector } from './AlibabaCloudEcsDetector';
diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/index.ts b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/index.ts
index 0acba8788c..b14741ba21 100644
--- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/index.ts
+++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/src/index.ts
@@ -14,4 +14,4 @@
* limitations under the License.
*/
-export * from './detectors';
+export { alibabaCloudEcsDetector } from './detectors';
diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/test/detectors/AlibabaCloudEcsDetector.test.ts b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/test/detectors/AlibabaCloudEcsDetector.test.ts
index c4a2c41d36..15cd13dd99 100644
--- a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/test/detectors/AlibabaCloudEcsDetector.test.ts
+++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/test/detectors/AlibabaCloudEcsDetector.test.ts
@@ -18,11 +18,11 @@ import * as nock from 'nock';
import * as assert from 'assert';
import { Resource } from '@opentelemetry/resources';
import { CLOUDPROVIDERVALUES_ALIBABA_CLOUD } from '@opentelemetry/semantic-conventions';
-import { alibabaCloudEcsDetector } from '../../src';
import {
assertCloudResource,
assertHostResource,
} from '@opentelemetry/contrib-test-utils';
+import { alibabaCloudEcsDetector } from '../../src';
const ALIYUN_HOST =
'http://' + alibabaCloudEcsDetector.ALIBABA_CLOUD_IDMS_ENDPOINT;
@@ -64,6 +64,7 @@ describe('alibabaCloudEcsDetector', () => {
.reply(200, () => mockedHostResponse);
const resource: Resource = await alibabaCloudEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
scope.done();
@@ -84,8 +85,7 @@ describe('alibabaCloudEcsDetector', () => {
});
describe('with unsuccessful request', () => {
- it('should throw when receiving error response code', async () => {
- const expectedError = new Error('Failed to load page, status code: 404');
+ it('should return empty resource when receiving error response code', async () => {
const scope = nock(ALIYUN_HOST)
.persist()
.get(ALIYUN_IDENTITY_PATH)
@@ -93,18 +93,15 @@ describe('alibabaCloudEcsDetector', () => {
.get(ALIYUN_HOST_PATH)
.reply(404, () => new Error());
- try {
- await alibabaCloudEcsDetector.detect();
- assert.ok(false, 'Expected to throw');
- } catch (err) {
- assert.deepStrictEqual(err, expectedError);
- }
+ const resource = await alibabaCloudEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
scope.done();
});
- it('should throw when timed out', async () => {
- const expectedError = new Error('ECS metadata api request timed out.');
+ it('should return empty resource when timed out', async () => {
const scope = nock(ALIYUN_HOST)
.get(ALIYUN_IDENTITY_PATH)
.reply(200, () => mockedIdentityResponse)
@@ -112,28 +109,23 @@ describe('alibabaCloudEcsDetector', () => {
.delayConnection(2000)
.reply(200, () => mockedHostResponse);
- try {
- await alibabaCloudEcsDetector.detect();
- assert.ok(false, 'Expected to throw');
- } catch (err) {
- assert.deepStrictEqual(err, expectedError);
- }
+ const resource = await alibabaCloudEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
scope.done();
});
- it('should throw when replied with an Error', async () => {
- const expectedError = new Error('NOT FOUND');
+ it('should return empty resource when replied with an Error', async () => {
const scope = nock(ALIYUN_HOST)
.get(ALIYUN_IDENTITY_PATH)
- .replyWithError(expectedError.message);
-
- try {
- await alibabaCloudEcsDetector.detect();
- assert.ok(false, 'Expected to throw');
- } catch (err) {
- assert.deepStrictEqual(err, expectedError);
- }
+ .replyWithError('NOT FOUND');
+
+ const resource = await alibabaCloudEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
scope.done();
});
diff --git a/detectors/node/opentelemetry-resource-detector-alibaba-cloud/test/detectors/AlibabaCloudEcsDetectorIntegration.test.ts b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/test/detectors/AlibabaCloudEcsDetectorIntegration.test.ts
new file mode 100644
index 0000000000..d523dc1533
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-alibaba-cloud/test/detectors/AlibabaCloudEcsDetectorIntegration.test.ts
@@ -0,0 +1,61 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import * as assert from 'assert';
+
+import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
+import {
+ InMemorySpanExporter,
+ SimpleSpanProcessor,
+} from '@opentelemetry/sdk-trace-base';
+import { NodeSDK } from '@opentelemetry/sdk-node';
+import { IResource } from '@opentelemetry/resources';
+
+describe('[Integration] AlibabaCloudEcsDetector', () => {
+ it('should not start spans for detector requests', async () => {
+ const memoryExporter = new InMemorySpanExporter();
+ const sdk = new NodeSDK({
+ instrumentations: [new HttpInstrumentation()],
+ spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
+ });
+
+ sdk.start();
+
+ // NOTE: detectors implementing the `DetectorSync` interface and starting
+ // HTTP requests within the `detect` method will produce Noop Spans since
+ // the SDK resolves the trace provider after resource detectors are triggered.
+ // Ref: https://github.com/open-telemetry/opentelemetry-js/blob/38f6689480d28dcbdafcb7b5ba4b14025328ffda/experimental/packages/opentelemetry-sdk-node/src/sdk.ts#L210-L240
+ //
+ // So having the detector in the config would result in no spans for Alibaba requests
+ // being exported which is what we want. Although we may think we're safe of sending
+ // internal tracing any change that delays these request will result in internal
+ // tracing being exported. We do the detection outside the SDK constructor to have such
+ // scenario.
+ const {
+ alibabaCloudEcsDetector,
+ } = require('../../build/src/detectors/AlibabaCloudEcsDetector');
+ const resource = alibabaCloudEcsDetector.detect() as IResource;
+ await resource.waitForAsyncAttributes?.();
+
+ // Wait for the next loop to let the span close properly
+ await new Promise(r => setTimeout(r, 0));
+ const spans = memoryExporter.getFinishedSpans();
+
+ assert.equal(spans.length, 0, 'no spans exported for GcpDetector');
+
+ await sdk.shutdown();
+ });
+});
diff --git a/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md
index 8c3b123778..78f7130b98 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md
+++ b/detectors/node/opentelemetry-resource-detector-aws/CHANGELOG.md
@@ -1,5 +1,54 @@
# Changelog
+## [1.7.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-aws-v1.6.2...resource-detector-aws-v1.7.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [1.6.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-aws-v1.6.1...resource-detector-aws-v1.6.2) (2024-10-08)
+
+
+### Bug Fixes
+
+* **detector-aws:** suppress internal tracing for all detectors ([#2433](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2433)) ([aa9710f](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/aa9710f73697f684f01140a3bdad495b705618b6))
+
+## [1.6.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-aws-v1.6.0...resource-detector-aws-v1.6.1) (2024-09-02)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [1.6.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-aws-v1.5.2...resource-detector-aws-v1.6.0) (2024-08-27)
+
+
+### Features
+
+* **detector-aws:** add sync version for all detectors ([#2376](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2376)) ([167dced](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/167dced09de0d2104561542b4f83047fa656505f))
+
+
+### Bug Fixes
+
+* **detectors:** reduce diag level on detectors failing to detect ([#2382](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2382)) ([d7a5bd4](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/d7a5bd45838f34bab45f4ba235093fa686032622))
+
+## [1.5.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-aws-v1.5.1...resource-detector-aws-v1.5.2) (2024-07-03)
+
+
+### Bug Fixes
+
+* fix timeout in aws resource detector ([#2186](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2186)) ([9e4726c](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9e4726cc0356dcc482fe16aa6f6698360255e93e))
+
## [1.5.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-aws-v1.5.0...resource-detector-aws-v1.5.1) (2024-06-06)
diff --git a/detectors/node/opentelemetry-resource-detector-aws/README.md b/detectors/node/opentelemetry-resource-detector-aws/README.md
index e903be6fef..d60dc68f5d 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/README.md
+++ b/detectors/node/opentelemetry-resource-detector-aws/README.md
@@ -3,7 +3,7 @@
[![NPM Published Version][npm-img]][npm-url]
[![Apache License][license-image]][license-image]
-[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @carolabadeer
+[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @jj22ee
Resource detector for Amazon Web Services.
@@ -11,7 +11,7 @@ Resource detector for Amazon Web Services.
| Maturity | [Component Owner](../../.github/component_owners.yml) | Compatibility |
| ----------------------------------------- | ----------------------------------------------------- | --------------------- |
-| [Stable](../../../CONTRIBUTING.md#stable) | @carolabadeer | API 1.0+
SDK 1.0+ |
+| [Stable](../../../CONTRIBUTING.md#stable) | @jj22ee | API 1.0+
SDK 1.0+ |
## Installation
diff --git a/detectors/node/opentelemetry-resource-detector-aws/package.json b/detectors/node/opentelemetry-resource-detector-aws/package.json
index 951e3c8e75..0a8602ffbf 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/package.json
+++ b/detectors/node/opentelemetry-resource-detector-aws/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/resource-detector-aws",
- "version": "1.5.1",
+ "version": "1.7.0",
"description": "OpenTelemetry SDK resource detector for AWS",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,10 +10,9 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/resource-detector-aws --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"watch": "tsc -w"
},
@@ -39,16 +38,16 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-fs": "^0.16.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"peerDependencies": {
@@ -56,8 +55,8 @@
},
"dependencies": {
"@opentelemetry/core": "^1.0.0",
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/detectors/node/opentelemetry-resource-detector-aws#readme"
}
diff --git a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsBeanstalkDetector.ts b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsBeanstalkDetector.ts
index a89178c30f..02b044d0d9 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsBeanstalkDetector.ts
+++ b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsBeanstalkDetector.ts
@@ -14,24 +14,13 @@
* limitations under the License.
*/
-import { diag } from '@opentelemetry/api';
import {
Detector,
- Resource,
+ IResource,
ResourceDetectionConfig,
} from '@opentelemetry/resources';
-import {
- SEMRESATTRS_CLOUD_PROVIDER,
- SEMRESATTRS_CLOUD_PLATFORM,
- SEMRESATTRS_SERVICE_NAME,
- SEMRESATTRS_SERVICE_NAMESPACE,
- SEMRESATTRS_SERVICE_VERSION,
- SEMRESATTRS_SERVICE_INSTANCE_ID,
- CLOUDPROVIDERVALUES_AWS,
- CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK,
-} from '@opentelemetry/semantic-conventions';
-import * as fs from 'fs';
-import * as util from 'util';
+
+import { awsBeanstalkDetectorSync } from './AwsBeanstalkDetectorSync';
/**
* The AwsBeanstalkDetector can be used to detect if a process is running in AWS Elastic
@@ -40,51 +29,13 @@ import * as util from 'util';
*
* See https://docs.amazonaws.cn/en_us/xray/latest/devguide/xray-guide.pdf
* for more details about detecting information of Elastic Beanstalk plugins
+ *
+ * @deprecated Use {@link AwsBeanstalkDetectorSync} class instead.
*/
-const DEFAULT_BEANSTALK_CONF_PATH =
- '/var/elasticbeanstalk/xray/environment.conf';
-const WIN_OS_BEANSTALK_CONF_PATH =
- 'C:\\Program Files\\Amazon\\XRay\\environment.conf';
-
export class AwsBeanstalkDetector implements Detector {
- BEANSTALK_CONF_PATH: string;
- private static readFileAsync = util.promisify(fs.readFile);
- private static fileAccessAsync = util.promisify(fs.access);
-
- constructor() {
- if (process.platform === 'win32') {
- this.BEANSTALK_CONF_PATH = WIN_OS_BEANSTALK_CONF_PATH;
- } else {
- this.BEANSTALK_CONF_PATH = DEFAULT_BEANSTALK_CONF_PATH;
- }
- }
-
- async detect(_config?: ResourceDetectionConfig): Promise {
- try {
- await AwsBeanstalkDetector.fileAccessAsync(
- this.BEANSTALK_CONF_PATH,
- fs.constants.R_OK
- );
-
- const rawData = await AwsBeanstalkDetector.readFileAsync(
- this.BEANSTALK_CONF_PATH,
- 'utf8'
- );
- const parsedData = JSON.parse(rawData);
-
- return new Resource({
- [SEMRESATTRS_CLOUD_PROVIDER]: CLOUDPROVIDERVALUES_AWS,
- [SEMRESATTRS_CLOUD_PLATFORM]: CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK,
- [SEMRESATTRS_SERVICE_NAME]: CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK,
- [SEMRESATTRS_SERVICE_NAMESPACE]: parsedData.environment_name,
- [SEMRESATTRS_SERVICE_VERSION]: parsedData.version_label,
- [SEMRESATTRS_SERVICE_INSTANCE_ID]: parsedData.deployment_id,
- });
- } catch (e: any) {
- diag.debug(`AwsBeanstalkDetector failed: ${e.message}`);
- return Resource.empty();
- }
+ detect(config?: ResourceDetectionConfig): Promise {
+ return Promise.resolve(awsBeanstalkDetectorSync.detect(config));
}
}
diff --git a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsBeanstalkDetectorSync.ts b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsBeanstalkDetectorSync.ts
new file mode 100644
index 0000000000..9f938f91a8
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsBeanstalkDetectorSync.ts
@@ -0,0 +1,112 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { context, diag } from '@opentelemetry/api';
+import { suppressTracing } from '@opentelemetry/core';
+
+import {
+ DetectorSync,
+ IResource,
+ Resource,
+ ResourceAttributes,
+ ResourceDetectionConfig,
+} from '@opentelemetry/resources';
+import {
+ SEMRESATTRS_CLOUD_PROVIDER,
+ SEMRESATTRS_CLOUD_PLATFORM,
+ SEMRESATTRS_SERVICE_NAME,
+ SEMRESATTRS_SERVICE_NAMESPACE,
+ SEMRESATTRS_SERVICE_VERSION,
+ SEMRESATTRS_SERVICE_INSTANCE_ID,
+ CLOUDPROVIDERVALUES_AWS,
+ CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK,
+} from '@opentelemetry/semantic-conventions';
+import * as fs from 'fs';
+import * as util from 'util';
+
+/**
+ * The AwsBeanstalkDetector can be used to detect if a process is running in AWS Elastic
+ * Beanstalk and return a {@link Resource} populated with data about the beanstalk
+ * plugins of AWS X-Ray. Returns an empty Resource if detection fails.
+ *
+ * See https://docs.amazonaws.cn/en_us/xray/latest/devguide/xray-guide.pdf
+ * for more details about detecting information of Elastic Beanstalk plugins
+ */
+
+const DEFAULT_BEANSTALK_CONF_PATH =
+ '/var/elasticbeanstalk/xray/environment.conf';
+const WIN_OS_BEANSTALK_CONF_PATH =
+ 'C:\\Program Files\\Amazon\\XRay\\environment.conf';
+
+export class AwsBeanstalkDetectorSync implements DetectorSync {
+ BEANSTALK_CONF_PATH: string;
+ private static readFileAsync = util.promisify(fs.readFile);
+ private static fileAccessAsync = util.promisify(fs.access);
+
+ constructor() {
+ if (process.platform === 'win32') {
+ this.BEANSTALK_CONF_PATH = WIN_OS_BEANSTALK_CONF_PATH;
+ } else {
+ this.BEANSTALK_CONF_PATH = DEFAULT_BEANSTALK_CONF_PATH;
+ }
+ }
+
+ detect(config?: ResourceDetectionConfig): IResource {
+ const attributes = context.with(suppressTracing(context.active()), () =>
+ this._getAttributes()
+ );
+ return new Resource({}, attributes);
+ }
+
+ /**
+ * Attempts to obtain AWS Beanstalk configuration from the file
+ * system. If file is accesible and read succesfully it returns
+ * a promise containing a {@link ResourceAttributes}
+ * object with instance metadata. Returns a promise containing an
+ * empty {@link ResourceAttributes} if the file is not accesible or
+ * fails in the reading process.
+ */
+ async _getAttributes(
+ _config?: ResourceDetectionConfig
+ ): Promise {
+ try {
+ await AwsBeanstalkDetectorSync.fileAccessAsync(
+ this.BEANSTALK_CONF_PATH,
+ fs.constants.R_OK
+ );
+
+ const rawData = await AwsBeanstalkDetectorSync.readFileAsync(
+ this.BEANSTALK_CONF_PATH,
+ 'utf8'
+ );
+ const parsedData = JSON.parse(rawData);
+
+ return {
+ [SEMRESATTRS_CLOUD_PROVIDER]: CLOUDPROVIDERVALUES_AWS,
+ [SEMRESATTRS_CLOUD_PLATFORM]: CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK,
+ [SEMRESATTRS_SERVICE_NAME]: CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK,
+ [SEMRESATTRS_SERVICE_NAMESPACE]: parsedData.environment_name,
+ [SEMRESATTRS_SERVICE_VERSION]: parsedData.version_label,
+ [SEMRESATTRS_SERVICE_INSTANCE_ID]: parsedData.deployment_id,
+ };
+ } catch (e: any) {
+ diag.debug(`AwsBeanstalkDetectorSync failed: ${e.message}`);
+ return {};
+ }
+ }
+}
+
+export const awsBeanstalkDetectorSync = new AwsBeanstalkDetectorSync();
diff --git a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEc2Detector.ts b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEc2Detector.ts
index cc45e96f1d..3014fa5844 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEc2Detector.ts
+++ b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEc2Detector.ts
@@ -16,149 +16,22 @@
import {
Detector,
- Resource,
+ IResource,
ResourceDetectionConfig,
} from '@opentelemetry/resources';
-import {
- SEMRESATTRS_CLOUD_PROVIDER,
- SEMRESATTRS_CLOUD_PLATFORM,
- SEMRESATTRS_CLOUD_REGION,
- SEMRESATTRS_CLOUD_ACCOUNT_ID,
- SEMRESATTRS_CLOUD_AVAILABILITY_ZONE,
- SEMRESATTRS_HOST_ID,
- SEMRESATTRS_HOST_TYPE,
- SEMRESATTRS_HOST_NAME,
- CLOUDPROVIDERVALUES_AWS,
- CLOUDPLATFORMVALUES_AWS_EC2,
-} from '@opentelemetry/semantic-conventions';
-import * as http from 'http';
+
+import { awsEc2DetectorSync } from './AwsEc2DetectorSync';
/**
* The AwsEc2Detector can be used to detect if a process is running in AWS EC2
* and return a {@link Resource} populated with metadata about the EC2
- * instance. Returns an empty Resource if detection fails.
+ * instance.
+ *
+ * @deprecated Use {@link AwsEc2DetectorSync} class instead.
*/
class AwsEc2Detector implements Detector {
- /**
- * See https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-identity-documents.html
- * for documentation about the AWS instance identity document
- * and standard of IMDSv2.
- */
- readonly AWS_IDMS_ENDPOINT = '169.254.169.254';
- readonly AWS_INSTANCE_TOKEN_DOCUMENT_PATH = '/latest/api/token';
- readonly AWS_INSTANCE_IDENTITY_DOCUMENT_PATH =
- '/latest/dynamic/instance-identity/document';
- readonly AWS_INSTANCE_HOST_DOCUMENT_PATH = '/latest/meta-data/hostname';
- readonly AWS_METADATA_TTL_HEADER = 'X-aws-ec2-metadata-token-ttl-seconds';
- readonly AWS_METADATA_TOKEN_HEADER = 'X-aws-ec2-metadata-token';
- readonly MILLISECOND_TIME_OUT = 5000;
-
- /**
- * Attempts to connect and obtain an AWS instance Identity document. If the
- * connection is successful it returns a promise containing a {@link Resource}
- * populated with instance metadata. Returns a promise containing an
- * empty {@link Resource} if the connection or parsing of the identity
- * document fails.
- *
- * @param config (unused) The resource detection config
- */
- async detect(_config?: ResourceDetectionConfig): Promise {
- const token = await this._fetchToken();
- const { accountId, instanceId, instanceType, region, availabilityZone } =
- await this._fetchIdentity(token);
- const hostname = await this._fetchHost(token);
-
- return new Resource({
- [SEMRESATTRS_CLOUD_PROVIDER]: CLOUDPROVIDERVALUES_AWS,
- [SEMRESATTRS_CLOUD_PLATFORM]: CLOUDPLATFORMVALUES_AWS_EC2,
- [SEMRESATTRS_CLOUD_ACCOUNT_ID]: accountId,
- [SEMRESATTRS_CLOUD_REGION]: region,
- [SEMRESATTRS_CLOUD_AVAILABILITY_ZONE]: availabilityZone,
- [SEMRESATTRS_HOST_ID]: instanceId,
- [SEMRESATTRS_HOST_TYPE]: instanceType,
- [SEMRESATTRS_HOST_NAME]: hostname,
- });
- }
-
- private async _fetchToken(): Promise {
- const options = {
- host: this.AWS_IDMS_ENDPOINT,
- path: this.AWS_INSTANCE_TOKEN_DOCUMENT_PATH,
- method: 'PUT',
- timeout: this.MILLISECOND_TIME_OUT,
- headers: {
- [this.AWS_METADATA_TTL_HEADER]: '60',
- },
- };
- return await this._fetchString(options);
- }
-
- private async _fetchIdentity(token: string): Promise {
- const options = {
- host: this.AWS_IDMS_ENDPOINT,
- path: this.AWS_INSTANCE_IDENTITY_DOCUMENT_PATH,
- method: 'GET',
- timeout: this.MILLISECOND_TIME_OUT,
- headers: {
- [this.AWS_METADATA_TOKEN_HEADER]: token,
- },
- };
- const identity = await this._fetchString(options);
- return JSON.parse(identity);
- }
-
- private async _fetchHost(token: string): Promise {
- const options = {
- host: this.AWS_IDMS_ENDPOINT,
- path: this.AWS_INSTANCE_HOST_DOCUMENT_PATH,
- method: 'GET',
- timeout: this.MILLISECOND_TIME_OUT,
- headers: {
- [this.AWS_METADATA_TOKEN_HEADER]: token,
- },
- };
- return await this._fetchString(options);
- }
-
- /**
- * Establishes an HTTP connection to AWS instance document url.
- * If the application is running on an EC2 instance, we should be able
- * to get back a valid JSON document. Parses that document and stores
- * the identity properties in a local map.
- */
- private async _fetchString(options: http.RequestOptions): Promise {
- return new Promise((resolve, reject) => {
- const timeoutId = setTimeout(() => {
- req.abort();
- reject(new Error('EC2 metadata api request timed out.'));
- }, 1000);
-
- const req = http.request(options, res => {
- clearTimeout(timeoutId);
- const { statusCode } = res;
- res.setEncoding('utf8');
- let rawData = '';
- res.on('data', chunk => (rawData += chunk));
- res.on('end', () => {
- if (statusCode && statusCode >= 200 && statusCode < 300) {
- try {
- resolve(rawData);
- } catch (e) {
- reject(e);
- }
- } else {
- reject(
- new Error('Failed to load page, status code: ' + statusCode)
- );
- }
- });
- });
- req.on('error', err => {
- clearTimeout(timeoutId);
- reject(err);
- });
- req.end();
- });
+ detect(_config?: ResourceDetectionConfig): Promise {
+ return Promise.resolve(awsEc2DetectorSync.detect(_config));
}
}
diff --git a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEc2DetectorSync.ts b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEc2DetectorSync.ts
new file mode 100644
index 0000000000..a0ef6b47b1
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEc2DetectorSync.ts
@@ -0,0 +1,178 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { context } from '@opentelemetry/api';
+import { suppressTracing } from '@opentelemetry/core';
+import {
+ DetectorSync,
+ IResource,
+ Resource,
+ ResourceAttributes,
+ ResourceDetectionConfig,
+} from '@opentelemetry/resources';
+import {
+ SEMRESATTRS_CLOUD_PROVIDER,
+ SEMRESATTRS_CLOUD_PLATFORM,
+ SEMRESATTRS_CLOUD_REGION,
+ SEMRESATTRS_CLOUD_ACCOUNT_ID,
+ SEMRESATTRS_CLOUD_AVAILABILITY_ZONE,
+ SEMRESATTRS_HOST_ID,
+ SEMRESATTRS_HOST_TYPE,
+ SEMRESATTRS_HOST_NAME,
+ CLOUDPROVIDERVALUES_AWS,
+ CLOUDPLATFORMVALUES_AWS_EC2,
+} from '@opentelemetry/semantic-conventions';
+import * as http from 'http';
+
+/**
+ * The AwsEc2DetectorSync can be used to detect if a process is running in AWS EC2
+ * and return a {@link Resource} populated with metadata about the EC2
+ * instance. Returns an empty Resource if detection fails.
+ */
+class AwsEc2DetectorSync implements DetectorSync {
+ /**
+ * See https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/instance-identity-documents.html
+ * for documentation about the AWS instance identity document
+ * and standard of IMDSv2.
+ */
+ readonly AWS_IDMS_ENDPOINT = '169.254.169.254';
+ readonly AWS_INSTANCE_TOKEN_DOCUMENT_PATH = '/latest/api/token';
+ readonly AWS_INSTANCE_IDENTITY_DOCUMENT_PATH =
+ '/latest/dynamic/instance-identity/document';
+ readonly AWS_INSTANCE_HOST_DOCUMENT_PATH = '/latest/meta-data/hostname';
+ readonly AWS_METADATA_TTL_HEADER = 'X-aws-ec2-metadata-token-ttl-seconds';
+ readonly AWS_METADATA_TOKEN_HEADER = 'X-aws-ec2-metadata-token';
+ readonly MILLISECOND_TIME_OUT = 5000;
+
+ detect(_config?: ResourceDetectionConfig): IResource {
+ const attributes = context.with(suppressTracing(context.active()), () =>
+ this._getAttributes()
+ );
+ return new Resource({}, attributes);
+ }
+
+ /**
+ * Attempts to connect and obtain an AWS instance Identity document. If the
+ * connection is successful it returns a promise containing a {@link ResourceAttributes}
+ * object with instance metadata. Returns a promise containing an
+ * empty {@link ResourceAttributes} if the connection or parsing of the identity
+ * document fails.
+ */
+ async _getAttributes(): Promise {
+ try {
+ const token = await this._fetchToken();
+ const { accountId, instanceId, instanceType, region, availabilityZone } =
+ await this._fetchIdentity(token);
+ const hostname = await this._fetchHost(token);
+
+ return {
+ [SEMRESATTRS_CLOUD_PROVIDER]: CLOUDPROVIDERVALUES_AWS,
+ [SEMRESATTRS_CLOUD_PLATFORM]: CLOUDPLATFORMVALUES_AWS_EC2,
+ [SEMRESATTRS_CLOUD_ACCOUNT_ID]: accountId,
+ [SEMRESATTRS_CLOUD_REGION]: region,
+ [SEMRESATTRS_CLOUD_AVAILABILITY_ZONE]: availabilityZone,
+ [SEMRESATTRS_HOST_ID]: instanceId,
+ [SEMRESATTRS_HOST_TYPE]: instanceType,
+ [SEMRESATTRS_HOST_NAME]: hostname,
+ };
+ } catch {
+ return {};
+ }
+ }
+
+ private async _fetchToken(): Promise {
+ const options = {
+ host: this.AWS_IDMS_ENDPOINT,
+ path: this.AWS_INSTANCE_TOKEN_DOCUMENT_PATH,
+ method: 'PUT',
+ timeout: this.MILLISECOND_TIME_OUT,
+ headers: {
+ [this.AWS_METADATA_TTL_HEADER]: '60',
+ },
+ };
+ return await this._fetchString(options);
+ }
+
+ private async _fetchIdentity(token: string): Promise {
+ const options = {
+ host: this.AWS_IDMS_ENDPOINT,
+ path: this.AWS_INSTANCE_IDENTITY_DOCUMENT_PATH,
+ method: 'GET',
+ timeout: this.MILLISECOND_TIME_OUT,
+ headers: {
+ [this.AWS_METADATA_TOKEN_HEADER]: token,
+ },
+ };
+ const identity = await this._fetchString(options);
+ return JSON.parse(identity);
+ }
+
+ private async _fetchHost(token: string): Promise {
+ const options = {
+ host: this.AWS_IDMS_ENDPOINT,
+ path: this.AWS_INSTANCE_HOST_DOCUMENT_PATH,
+ method: 'GET',
+ timeout: this.MILLISECOND_TIME_OUT,
+ headers: {
+ [this.AWS_METADATA_TOKEN_HEADER]: token,
+ },
+ };
+ return await this._fetchString(options);
+ }
+
+ /**
+ * Establishes an HTTP connection to AWS instance document url.
+ * If the application is running on an EC2 instance, we should be able
+ * to get back a valid JSON document. Parses that document and stores
+ * the identity properties in a local map.
+ */
+ private async _fetchString(options: http.RequestOptions): Promise {
+ return new Promise((resolve, reject) => {
+ const timeoutId = setTimeout(() => {
+ req.abort();
+ reject(new Error('EC2 metadata api request timed out.'));
+ }, this.MILLISECOND_TIME_OUT);
+
+ const req = http.request(options, res => {
+ clearTimeout(timeoutId);
+ const { statusCode } = res;
+ res.setEncoding('utf8');
+ let rawData = '';
+ res.on('data', chunk => (rawData += chunk));
+ res.on('end', () => {
+ if (statusCode && statusCode >= 200 && statusCode < 300) {
+ try {
+ resolve(rawData);
+ } catch (e) {
+ reject(e);
+ }
+ } else {
+ reject(
+ new Error('Failed to load page, status code: ' + statusCode)
+ );
+ }
+ });
+ });
+ req.on('error', err => {
+ clearTimeout(timeoutId);
+ reject(err);
+ });
+ req.end();
+ });
+ }
+}
+
+export const awsEc2DetectorSync = new AwsEc2DetectorSync();
diff --git a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEcsDetector.ts b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEcsDetector.ts
index 0c5a9f0624..ff1ab162cf 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEcsDetector.ts
+++ b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEcsDetector.ts
@@ -14,254 +14,20 @@
* limitations under the License.
*/
-import { diag } from '@opentelemetry/api';
-import {
- Detector,
- Resource,
- ResourceAttributes,
-} from '@opentelemetry/resources';
-import {
- SEMRESATTRS_CLOUD_PROVIDER,
- SEMRESATTRS_CLOUD_PLATFORM,
- SEMRESATTRS_CONTAINER_ID,
- SEMRESATTRS_CONTAINER_NAME,
- SEMRESATTRS_AWS_ECS_CONTAINER_ARN,
- SEMRESATTRS_AWS_ECS_CLUSTER_ARN,
- SEMRESATTRS_AWS_ECS_LAUNCHTYPE,
- SEMRESATTRS_AWS_ECS_TASK_ARN,
- SEMRESATTRS_AWS_ECS_TASK_FAMILY,
- SEMRESATTRS_AWS_ECS_TASK_REVISION,
- SEMRESATTRS_CLOUD_ACCOUNT_ID,
- SEMRESATTRS_CLOUD_REGION,
- SEMRESATTRS_CLOUD_AVAILABILITY_ZONE,
- SEMRESATTRS_AWS_LOG_GROUP_NAMES,
- SEMRESATTRS_AWS_LOG_GROUP_ARNS,
- SEMRESATTRS_AWS_LOG_STREAM_NAMES,
- SEMRESATTRS_AWS_LOG_STREAM_ARNS,
- CLOUDPROVIDERVALUES_AWS,
- CLOUDPLATFORMVALUES_AWS_ECS,
-} from '@opentelemetry/semantic-conventions';
-// Patch until the OpenTelemetry SDK is updated to ship this attribute
-import { SemanticResourceAttributes as AdditionalSemanticResourceAttributes } from './SemanticResourceAttributes';
-import * as http from 'http';
-import * as util from 'util';
-import * as fs from 'fs';
-import * as os from 'os';
-import { getEnv } from '@opentelemetry/core';
+import { Detector, IResource } from '@opentelemetry/resources';
-const HTTP_TIMEOUT_IN_MS = 1000;
-
-interface AwsLogOptions {
- readonly 'awslogs-region'?: string;
- readonly 'awslogs-group'?: string;
- readonly 'awslogs-stream'?: string;
-}
+import { awsEcsDetectorSync } from './AwsEcsDetectorSync';
/**
* The AwsEcsDetector can be used to detect if a process is running in AWS
* ECS and return a {@link Resource} populated with data about the ECS
- * plugins of AWS X-Ray. Returns an empty Resource if detection fails.
+ * plugins of AWS X-Ray.
+ *
+ * @deprecated Use {@link AwsEcsDetectorSync} class instead.
*/
export class AwsEcsDetector implements Detector {
- static readonly CONTAINER_ID_LENGTH = 64;
- static readonly DEFAULT_CGROUP_PATH = '/proc/self/cgroup';
-
- private static readFileAsync = util.promisify(fs.readFile);
-
- async detect(): Promise {
- const env = getEnv();
- if (!env.ECS_CONTAINER_METADATA_URI_V4 && !env.ECS_CONTAINER_METADATA_URI) {
- diag.debug('AwsEcsDetector failed: Process is not on ECS');
- return Resource.empty();
- }
-
- let resource = new Resource({
- [SEMRESATTRS_CLOUD_PROVIDER]: CLOUDPROVIDERVALUES_AWS,
- [SEMRESATTRS_CLOUD_PLATFORM]: CLOUDPLATFORMVALUES_AWS_ECS,
- }).merge(await AwsEcsDetector._getContainerIdAndHostnameResource());
-
- const metadataUrl = getEnv().ECS_CONTAINER_METADATA_URI_V4;
- if (metadataUrl) {
- const [containerMetadata, taskMetadata] = await Promise.all([
- AwsEcsDetector._getUrlAsJson(metadataUrl),
- AwsEcsDetector._getUrlAsJson(`${metadataUrl}/task`),
- ]);
-
- const metadatav4Resource = await AwsEcsDetector._getMetadataV4Resource(
- containerMetadata,
- taskMetadata
- );
- const logsResource = await AwsEcsDetector._getLogResource(
- containerMetadata
- );
-
- resource = resource.merge(metadatav4Resource).merge(logsResource);
- }
-
- return resource;
- }
-
- /**
- * Read container ID from cgroup file
- * In ECS, even if we fail to find target file
- * or target file does not contain container ID
- * we do not throw an error but throw warning message
- * and then return null string
- */
- private static async _getContainerIdAndHostnameResource(): Promise {
- const hostName = os.hostname();
-
- let containerId = '';
- try {
- const rawData = await AwsEcsDetector.readFileAsync(
- AwsEcsDetector.DEFAULT_CGROUP_PATH,
- 'utf8'
- );
- const splitData = rawData.trim().split('\n');
- for (const str of splitData) {
- if (str.length > AwsEcsDetector.CONTAINER_ID_LENGTH) {
- containerId = str.substring(
- str.length - AwsEcsDetector.CONTAINER_ID_LENGTH
- );
- break;
- }
- }
- } catch (e) {
- diag.warn('AwsEcsDetector failed to read container ID', e);
- }
-
- if (hostName || containerId) {
- return new Resource({
- [SEMRESATTRS_CONTAINER_NAME]: hostName || '',
- [SEMRESATTRS_CONTAINER_ID]: containerId || '',
- });
- }
-
- return Resource.empty();
- }
-
- private static async _getMetadataV4Resource(
- containerMetadata: any,
- taskMetadata: any
- ): Promise {
- const launchType: string = taskMetadata['LaunchType'];
- const taskArn: string = taskMetadata['TaskARN'];
-
- const baseArn: string = taskArn.substring(0, taskArn.lastIndexOf(':'));
- const cluster: string = taskMetadata['Cluster'];
-
- const accountId: string = AwsEcsDetector._getAccountFromArn(taskArn);
- const region: string = AwsEcsDetector._getRegionFromArn(taskArn);
- const availabilityZone: string | undefined =
- taskMetadata?.['AvailabilityZone'];
-
- const clusterArn = cluster.startsWith('arn:')
- ? cluster
- : `${baseArn}:cluster/${cluster}`;
-
- const containerArn: string = containerMetadata['ContainerARN'];
-
- // https://github.com/open-telemetry/semantic-conventions/blob/main/semantic_conventions/resource/cloud_provider/aws/ecs.yaml
- const attributes: ResourceAttributes = {
- [SEMRESATTRS_AWS_ECS_CONTAINER_ARN]: containerArn,
- [SEMRESATTRS_AWS_ECS_CLUSTER_ARN]: clusterArn,
- [SEMRESATTRS_AWS_ECS_LAUNCHTYPE]: launchType?.toLowerCase(),
- [SEMRESATTRS_AWS_ECS_TASK_ARN]: taskArn,
- [SEMRESATTRS_AWS_ECS_TASK_FAMILY]: taskMetadata['Family'],
- [SEMRESATTRS_AWS_ECS_TASK_REVISION]: taskMetadata['Revision'],
-
- [SEMRESATTRS_CLOUD_ACCOUNT_ID]: accountId,
- [SEMRESATTRS_CLOUD_REGION]: region,
- [AdditionalSemanticResourceAttributes.CLOUD_RESOURCE_ID]: containerArn,
- };
-
- // The availability zone is not available in all Fargate runtimes
- if (availabilityZone) {
- attributes[SEMRESATTRS_CLOUD_AVAILABILITY_ZONE] = availabilityZone;
- }
-
- return new Resource(attributes);
- }
-
- private static async _getLogResource(
- containerMetadata: any
- ): Promise {
- if (
- containerMetadata['LogDriver'] !== 'awslogs' ||
- !containerMetadata['LogOptions']
- ) {
- return Resource.EMPTY;
- }
-
- const containerArn = containerMetadata['ContainerARN']!;
- const logOptions = containerMetadata['LogOptions'] as AwsLogOptions;
-
- const logsRegion =
- logOptions['awslogs-region'] ||
- AwsEcsDetector._getRegionFromArn(containerArn);
-
- const awsAccount = AwsEcsDetector._getAccountFromArn(containerArn);
-
- const logsGroupName = logOptions['awslogs-group']!;
- const logsGroupArn = `arn:aws:logs:${logsRegion}:${awsAccount}:log-group:${logsGroupName}`;
- const logsStreamName = logOptions['awslogs-stream']!;
- const logsStreamArn = `arn:aws:logs:${logsRegion}:${awsAccount}:log-group:${logsGroupName}:log-stream:${logsStreamName}`;
-
- return new Resource({
- [SEMRESATTRS_AWS_LOG_GROUP_NAMES]: [logsGroupName],
- [SEMRESATTRS_AWS_LOG_GROUP_ARNS]: [logsGroupArn],
- [SEMRESATTRS_AWS_LOG_STREAM_NAMES]: [logsStreamName],
- [SEMRESATTRS_AWS_LOG_STREAM_ARNS]: [logsStreamArn],
- });
- }
-
- private static _getAccountFromArn(containerArn: string): string {
- const match = /arn:aws:ecs:[^:]+:([^:]+):.*/.exec(containerArn);
- return match![1];
- }
-
- private static _getRegionFromArn(containerArn: string): string {
- const match = /arn:aws:ecs:([^:]+):.*/.exec(containerArn);
- return match![1];
- }
-
- private static _getUrlAsJson(url: string): Promise {
- return new Promise((resolve, reject) => {
- const request = http.get(url, (response: http.IncomingMessage) => {
- if (response.statusCode && response.statusCode >= 400) {
- reject(
- new Error(
- `Request to '${url}' failed with status ${response.statusCode}`
- )
- );
- }
- /*
- * Concatenate the response out of chunks:
- * https://nodejs.org/api/stream.html#stream_event_data
- */
- let responseBody = '';
- response.on(
- 'data',
- (chunk: Buffer) => (responseBody += chunk.toString())
- );
- // All the data has been read, resolve the Promise
- response.on('end', () => resolve(responseBody));
- /*
- * https://nodejs.org/api/http.html#httprequesturl-options-callback, see the
- * 'In the case of a premature connection close after the response is received'
- * case
- */
- request.on('error', reject);
- });
-
- // Set an aggressive timeout to prevent lock-ups
- request.setTimeout(HTTP_TIMEOUT_IN_MS, () => {
- request.destroy();
- });
- // Connection error, disconnection, etc.
- request.on('error', reject);
- request.end();
- }).then(responseBodyRaw => JSON.parse(responseBodyRaw));
+ detect(): Promise {
+ return Promise.resolve(awsEcsDetectorSync.detect());
}
}
diff --git a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEcsDetectorSync.ts b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEcsDetectorSync.ts
new file mode 100644
index 0000000000..56977c2c01
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEcsDetectorSync.ts
@@ -0,0 +1,282 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { context, diag } from '@opentelemetry/api';
+import { suppressTracing } from '@opentelemetry/core';
+import {
+ DetectorSync,
+ IResource,
+ Resource,
+ ResourceAttributes,
+} from '@opentelemetry/resources';
+import {
+ SEMRESATTRS_CLOUD_PROVIDER,
+ SEMRESATTRS_CLOUD_PLATFORM,
+ SEMRESATTRS_CONTAINER_ID,
+ SEMRESATTRS_CONTAINER_NAME,
+ SEMRESATTRS_AWS_ECS_CONTAINER_ARN,
+ SEMRESATTRS_AWS_ECS_CLUSTER_ARN,
+ SEMRESATTRS_AWS_ECS_LAUNCHTYPE,
+ SEMRESATTRS_AWS_ECS_TASK_ARN,
+ SEMRESATTRS_AWS_ECS_TASK_FAMILY,
+ SEMRESATTRS_AWS_ECS_TASK_REVISION,
+ SEMRESATTRS_CLOUD_ACCOUNT_ID,
+ SEMRESATTRS_CLOUD_REGION,
+ SEMRESATTRS_CLOUD_AVAILABILITY_ZONE,
+ SEMRESATTRS_AWS_LOG_GROUP_NAMES,
+ SEMRESATTRS_AWS_LOG_GROUP_ARNS,
+ SEMRESATTRS_AWS_LOG_STREAM_NAMES,
+ SEMRESATTRS_AWS_LOG_STREAM_ARNS,
+ CLOUDPROVIDERVALUES_AWS,
+ CLOUDPLATFORMVALUES_AWS_ECS,
+} from '@opentelemetry/semantic-conventions';
+// Patch until the OpenTelemetry SDK is updated to ship this attribute
+import { SemanticResourceAttributes as AdditionalSemanticResourceAttributes } from './SemanticResourceAttributes';
+import * as http from 'http';
+import * as util from 'util';
+import * as fs from 'fs';
+import * as os from 'os';
+import { getEnv } from '@opentelemetry/core';
+
+const HTTP_TIMEOUT_IN_MS = 1000;
+
+interface AwsLogOptions {
+ readonly 'awslogs-region'?: string;
+ readonly 'awslogs-group'?: string;
+ readonly 'awslogs-stream'?: string;
+}
+
+/**
+ * The AwsEcsDetector can be used to detect if a process is running in AWS
+ * ECS and return a {@link Resource} populated with data about the ECS
+ * plugins of AWS X-Ray. Returns an empty Resource if detection fails.
+ */
+export class AwsEcsDetectorSync implements DetectorSync {
+ static readonly CONTAINER_ID_LENGTH = 64;
+ static readonly DEFAULT_CGROUP_PATH = '/proc/self/cgroup';
+
+ private static readFileAsync = util.promisify(fs.readFile);
+
+ detect(): IResource {
+ const attributes = context.with(suppressTracing(context.active()), () =>
+ this._getAttributes()
+ );
+ return new Resource({}, attributes);
+ }
+
+ private async _getAttributes(): Promise {
+ const env = getEnv();
+ if (!env.ECS_CONTAINER_METADATA_URI_V4 && !env.ECS_CONTAINER_METADATA_URI) {
+ diag.debug('AwsEcsDetector failed: Process is not on ECS');
+ return {};
+ }
+
+ try {
+ let resource = new Resource({
+ [SEMRESATTRS_CLOUD_PROVIDER]: CLOUDPROVIDERVALUES_AWS,
+ [SEMRESATTRS_CLOUD_PLATFORM]: CLOUDPLATFORMVALUES_AWS_ECS,
+ }).merge(await AwsEcsDetectorSync._getContainerIdAndHostnameResource());
+
+ const metadataUrl = getEnv().ECS_CONTAINER_METADATA_URI_V4;
+ if (metadataUrl) {
+ const [containerMetadata, taskMetadata] = await Promise.all([
+ AwsEcsDetectorSync._getUrlAsJson(metadataUrl),
+ AwsEcsDetectorSync._getUrlAsJson(`${metadataUrl}/task`),
+ ]);
+
+ const metadatav4Resource =
+ await AwsEcsDetectorSync._getMetadataV4Resource(
+ containerMetadata,
+ taskMetadata
+ );
+ const logsResource = await AwsEcsDetectorSync._getLogResource(
+ containerMetadata
+ );
+
+ resource = resource.merge(metadatav4Resource).merge(logsResource);
+ }
+
+ return resource.attributes;
+ } catch {
+ return {};
+ }
+ }
+
+ /**
+ * Read container ID from cgroup file
+ * In ECS, even if we fail to find target file
+ * or target file does not contain container ID
+ * we do not throw an error but throw warning message
+ * and then return null string
+ */
+ private static async _getContainerIdAndHostnameResource(): Promise {
+ const hostName = os.hostname();
+
+ let containerId = '';
+ try {
+ const rawData = await AwsEcsDetectorSync.readFileAsync(
+ AwsEcsDetectorSync.DEFAULT_CGROUP_PATH,
+ 'utf8'
+ );
+ const splitData = rawData.trim().split('\n');
+ for (const str of splitData) {
+ if (str.length > AwsEcsDetectorSync.CONTAINER_ID_LENGTH) {
+ containerId = str.substring(
+ str.length - AwsEcsDetectorSync.CONTAINER_ID_LENGTH
+ );
+ break;
+ }
+ }
+ } catch (e) {
+ diag.debug('AwsEcsDetector failed to read container ID', e);
+ }
+
+ if (hostName || containerId) {
+ return new Resource({
+ [SEMRESATTRS_CONTAINER_NAME]: hostName || '',
+ [SEMRESATTRS_CONTAINER_ID]: containerId || '',
+ });
+ }
+
+ return Resource.empty();
+ }
+
+ private static async _getMetadataV4Resource(
+ containerMetadata: any,
+ taskMetadata: any
+ ): Promise {
+ const launchType: string = taskMetadata['LaunchType'];
+ const taskArn: string = taskMetadata['TaskARN'];
+
+ const baseArn: string = taskArn.substring(0, taskArn.lastIndexOf(':'));
+ const cluster: string = taskMetadata['Cluster'];
+
+ const accountId: string = AwsEcsDetectorSync._getAccountFromArn(taskArn);
+ const region: string = AwsEcsDetectorSync._getRegionFromArn(taskArn);
+ const availabilityZone: string | undefined =
+ taskMetadata?.['AvailabilityZone'];
+
+ const clusterArn = cluster.startsWith('arn:')
+ ? cluster
+ : `${baseArn}:cluster/${cluster}`;
+
+ const containerArn: string = containerMetadata['ContainerARN'];
+
+ // https://github.com/open-telemetry/semantic-conventions/blob/main/semantic_conventions/resource/cloud_provider/aws/ecs.yaml
+ const attributes: ResourceAttributes = {
+ [SEMRESATTRS_AWS_ECS_CONTAINER_ARN]: containerArn,
+ [SEMRESATTRS_AWS_ECS_CLUSTER_ARN]: clusterArn,
+ [SEMRESATTRS_AWS_ECS_LAUNCHTYPE]: launchType?.toLowerCase(),
+ [SEMRESATTRS_AWS_ECS_TASK_ARN]: taskArn,
+ [SEMRESATTRS_AWS_ECS_TASK_FAMILY]: taskMetadata['Family'],
+ [SEMRESATTRS_AWS_ECS_TASK_REVISION]: taskMetadata['Revision'],
+
+ [SEMRESATTRS_CLOUD_ACCOUNT_ID]: accountId,
+ [SEMRESATTRS_CLOUD_REGION]: region,
+ [AdditionalSemanticResourceAttributes.CLOUD_RESOURCE_ID]: containerArn,
+ };
+
+ // The availability zone is not available in all Fargate runtimes
+ if (availabilityZone) {
+ attributes[SEMRESATTRS_CLOUD_AVAILABILITY_ZONE] = availabilityZone;
+ }
+
+ return new Resource(attributes);
+ }
+
+ private static async _getLogResource(
+ containerMetadata: any
+ ): Promise {
+ if (
+ containerMetadata['LogDriver'] !== 'awslogs' ||
+ !containerMetadata['LogOptions']
+ ) {
+ return Resource.EMPTY;
+ }
+
+ const containerArn = containerMetadata['ContainerARN']!;
+ const logOptions = containerMetadata['LogOptions'] as AwsLogOptions;
+
+ const logsRegion =
+ logOptions['awslogs-region'] ||
+ AwsEcsDetectorSync._getRegionFromArn(containerArn);
+
+ const awsAccount = AwsEcsDetectorSync._getAccountFromArn(containerArn);
+
+ const logsGroupName = logOptions['awslogs-group']!;
+ const logsGroupArn = `arn:aws:logs:${logsRegion}:${awsAccount}:log-group:${logsGroupName}`;
+ const logsStreamName = logOptions['awslogs-stream']!;
+ const logsStreamArn = `arn:aws:logs:${logsRegion}:${awsAccount}:log-group:${logsGroupName}:log-stream:${logsStreamName}`;
+
+ return new Resource({
+ [SEMRESATTRS_AWS_LOG_GROUP_NAMES]: [logsGroupName],
+ [SEMRESATTRS_AWS_LOG_GROUP_ARNS]: [logsGroupArn],
+ [SEMRESATTRS_AWS_LOG_STREAM_NAMES]: [logsStreamName],
+ [SEMRESATTRS_AWS_LOG_STREAM_ARNS]: [logsStreamArn],
+ });
+ }
+
+ private static _getAccountFromArn(containerArn: string): string {
+ const match = /arn:aws:ecs:[^:]+:([^:]+):.*/.exec(containerArn);
+ return match![1];
+ }
+
+ private static _getRegionFromArn(containerArn: string): string {
+ const match = /arn:aws:ecs:([^:]+):.*/.exec(containerArn);
+ return match![1];
+ }
+
+ private static _getUrlAsJson(url: string): Promise {
+ return new Promise((resolve, reject) => {
+ const request = http.get(url, (response: http.IncomingMessage) => {
+ if (response.statusCode && response.statusCode >= 400) {
+ reject(
+ new Error(
+ `Request to '${url}' failed with status ${response.statusCode}`
+ )
+ );
+ }
+ /*
+ * Concatenate the response out of chunks:
+ * https://nodejs.org/api/stream.html#stream_event_data
+ */
+ let responseBody = '';
+ response.on(
+ 'data',
+ (chunk: Buffer) => (responseBody += chunk.toString())
+ );
+ // All the data has been read, resolve the Promise
+ response.on('end', () => resolve(responseBody));
+ /*
+ * https://nodejs.org/api/http.html#httprequesturl-options-callback, see the
+ * 'In the case of a premature connection close after the response is received'
+ * case
+ */
+ request.on('error', reject);
+ });
+
+ // Set an aggressive timeout to prevent lock-ups
+ request.setTimeout(HTTP_TIMEOUT_IN_MS, () => {
+ request.destroy();
+ });
+ // Connection error, disconnection, etc.
+ request.on('error', reject);
+ request.end();
+ }).then(responseBodyRaw => JSON.parse(responseBodyRaw));
+ }
+}
+
+export const awsEcsDetectorSync = new AwsEcsDetectorSync();
diff --git a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEksDetector.ts b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEksDetector.ts
index a0369f9d71..fdf7d626db 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEksDetector.ts
+++ b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEksDetector.ts
@@ -16,21 +16,11 @@
import {
Detector,
- Resource,
+ IResource,
ResourceDetectionConfig,
} from '@opentelemetry/resources';
-import {
- SEMRESATTRS_CLOUD_PROVIDER,
- SEMRESATTRS_CLOUD_PLATFORM,
- SEMRESATTRS_K8S_CLUSTER_NAME,
- SEMRESATTRS_CONTAINER_ID,
- CLOUDPROVIDERVALUES_AWS,
- CLOUDPLATFORMVALUES_AWS_EKS,
-} from '@opentelemetry/semantic-conventions';
-import * as https from 'https';
-import * as fs from 'fs';
-import * as util from 'util';
-import { diag } from '@opentelemetry/api';
+
+import { awsEksDetectorSync } from './AwsEksDetectorSync';
/**
* The AwsEksDetector can be used to detect if a process is running in AWS Elastic
@@ -39,193 +29,20 @@ import { diag } from '@opentelemetry/api';
*
* See https://docs.amazonaws.cn/en_us/xray/latest/devguide/xray-guide.pdf
* for more details about detecting information for Elastic Kubernetes plugins
+ *
+ * @deprecated Use the new {@link AwsEksDetectorSync} class instead.
*/
-
export class AwsEksDetector implements Detector {
+ // NOTE: these readonly props are kept for testing purposes
readonly K8S_SVC_URL = 'kubernetes.default.svc';
- readonly K8S_TOKEN_PATH =
- '/var/run/secrets/kubernetes.io/serviceaccount/token';
- readonly K8S_CERT_PATH =
- '/var/run/secrets/kubernetes.io/serviceaccount/ca.crt';
readonly AUTH_CONFIGMAP_PATH =
'/api/v1/namespaces/kube-system/configmaps/aws-auth';
readonly CW_CONFIGMAP_PATH =
'/api/v1/namespaces/amazon-cloudwatch/configmaps/cluster-info';
- readonly CONTAINER_ID_LENGTH = 64;
- readonly DEFAULT_CGROUP_PATH = '/proc/self/cgroup';
readonly TIMEOUT_MS = 2000;
- readonly UTF8_UNICODE = 'utf8';
-
- private static readFileAsync = util.promisify(fs.readFile);
- private static fileAccessAsync = util.promisify(fs.access);
-
- /**
- * The AwsEksDetector can be used to detect if a process is running on Amazon
- * Elastic Kubernetes and returns a promise containing a {@link Resource}
- * populated with instance metadata. Returns a promise containing an
- * empty {@link Resource} if the connection to kubernetes process
- * or aws config maps fails
- * @param config The resource detection config
- */
- async detect(_config?: ResourceDetectionConfig): Promise {
- try {
- await AwsEksDetector.fileAccessAsync(this.K8S_TOKEN_PATH);
- const k8scert = await AwsEksDetector.readFileAsync(this.K8S_CERT_PATH);
-
- if (!(await this._isEks(k8scert))) {
- return Resource.empty();
- }
-
- const containerId = await this._getContainerId();
- const clusterName = await this._getClusterName(k8scert);
-
- return !containerId && !clusterName
- ? Resource.empty()
- : new Resource({
- [SEMRESATTRS_CLOUD_PROVIDER]: CLOUDPROVIDERVALUES_AWS,
- [SEMRESATTRS_CLOUD_PLATFORM]: CLOUDPLATFORMVALUES_AWS_EKS,
- [SEMRESATTRS_K8S_CLUSTER_NAME]: clusterName || '',
- [SEMRESATTRS_CONTAINER_ID]: containerId || '',
- });
- } catch (e) {
- diag.warn('Process is not running on K8S', e);
- return Resource.empty();
- }
- }
-
- /**
- * Attempts to make a connection to AWS Config map which will
- * determine whether the process is running on an EKS
- * process if the config map is empty or not
- */
- private async _isEks(cert: Buffer): Promise {
- const options = {
- ca: cert,
- headers: {
- Authorization: await this._getK8sCredHeader(),
- },
- hostname: this.K8S_SVC_URL,
- method: 'GET',
- path: this.AUTH_CONFIGMAP_PATH,
- timeout: this.TIMEOUT_MS,
- };
- return !!(await this._fetchString(options));
- }
-
- /**
- * Attempts to make a connection to Amazon Cloudwatch
- * Config Maps to grab cluster name
- */
- private async _getClusterName(cert: Buffer): Promise {
- const options = {
- ca: cert,
- headers: {
- Authorization: await this._getK8sCredHeader(),
- },
- host: this.K8S_SVC_URL,
- method: 'GET',
- path: this.CW_CONFIGMAP_PATH,
- timeout: this.TIMEOUT_MS,
- };
- const response = await this._fetchString(options);
- try {
- return JSON.parse(response).data['cluster.name'];
- } catch (e) {
- diag.warn('Cannot get cluster name on EKS', e);
- }
- return '';
- }
- /**
- * Reads the Kubernetes token path and returns kubernetes
- * credential header
- */
- private async _getK8sCredHeader(): Promise {
- try {
- const content = await AwsEksDetector.readFileAsync(
- this.K8S_TOKEN_PATH,
- this.UTF8_UNICODE
- );
- return 'Bearer ' + content;
- } catch (e) {
- diag.warn('Unable to read Kubernetes client token.', e);
- }
- return '';
- }
-
- /**
- * Read container ID from cgroup file generated from docker which lists the full
- * untruncated docker container ID at the end of each line.
- *
- * The predefined structure of calling /proc/self/cgroup when in a docker container has the structure:
- *
- * #:xxxxxx:/
- *
- * or
- *
- * #:xxxxxx:/docker/64characterID
- *
- * This function takes advantage of that fact by just reading the 64-character ID from the end of the
- * first line. In EKS, even if we fail to find target file or target file does
- * not contain container ID we do not throw an error but throw warning message
- * and then return null string
- */
- private async _getContainerId(): Promise {
- try {
- const rawData = await AwsEksDetector.readFileAsync(
- this.DEFAULT_CGROUP_PATH,
- this.UTF8_UNICODE
- );
- const splitData = rawData.trim().split('\n');
- for (const str of splitData) {
- if (str.length > this.CONTAINER_ID_LENGTH) {
- return str.substring(str.length - this.CONTAINER_ID_LENGTH);
- }
- }
- } catch (e: any) {
- diag.warn(`AwsEksDetector failed to read container ID: ${e.message}`);
- }
- return undefined;
- }
-
- /**
- * Establishes an HTTP connection to AWS instance document url.
- * If the application is running on an EKS instance, we should be able
- * to get back a valid JSON document. Parses that document and stores
- * the identity properties in a local map.
- */
- private async _fetchString(options: https.RequestOptions): Promise {
- return await new Promise((resolve, reject) => {
- const timeoutId = setTimeout(() => {
- req.abort();
- reject(new Error('EKS metadata api request timed out.'));
- }, 2000);
- const req = https.request(options, res => {
- clearTimeout(timeoutId);
- const { statusCode } = res;
- res.setEncoding(this.UTF8_UNICODE);
- let rawData = '';
- res.on('data', chunk => (rawData += chunk));
- res.on('end', () => {
- if (statusCode && statusCode >= 200 && statusCode < 300) {
- try {
- resolve(rawData);
- } catch (e) {
- reject(e);
- }
- } else {
- reject(
- new Error('Failed to load page, status code: ' + statusCode)
- );
- }
- });
- });
- req.on('error', err => {
- clearTimeout(timeoutId);
- reject(err);
- });
- req.end();
- });
+ detect(_config?: ResourceDetectionConfig): Promise {
+ return Promise.resolve(awsEksDetectorSync.detect());
}
}
diff --git a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEksDetectorSync.ts b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEksDetectorSync.ts
new file mode 100644
index 0000000000..051d3af5e8
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsEksDetectorSync.ts
@@ -0,0 +1,244 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { context } from '@opentelemetry/api';
+import { suppressTracing } from '@opentelemetry/core';
+import {
+ DetectorSync,
+ IResource,
+ Resource,
+ ResourceAttributes,
+ ResourceDetectionConfig,
+} from '@opentelemetry/resources';
+import {
+ SEMRESATTRS_CLOUD_PROVIDER,
+ SEMRESATTRS_CLOUD_PLATFORM,
+ SEMRESATTRS_K8S_CLUSTER_NAME,
+ SEMRESATTRS_CONTAINER_ID,
+ CLOUDPROVIDERVALUES_AWS,
+ CLOUDPLATFORMVALUES_AWS_EKS,
+} from '@opentelemetry/semantic-conventions';
+import * as https from 'https';
+import * as fs from 'fs';
+import * as util from 'util';
+import { diag } from '@opentelemetry/api';
+
+/**
+ * The AwsEksDetectorSync can be used to detect if a process is running in AWS Elastic
+ * Kubernetes and return a {@link Resource} populated with data about the Kubernetes
+ * plugins of AWS X-Ray. Returns an empty Resource if detection fails.
+ *
+ * See https://docs.amazonaws.cn/en_us/xray/latest/devguide/xray-guide.pdf
+ * for more details about detecting information for Elastic Kubernetes plugins
+ */
+
+export class AwsEksDetectorSync implements DetectorSync {
+ readonly K8S_SVC_URL = 'kubernetes.default.svc';
+ readonly K8S_TOKEN_PATH =
+ '/var/run/secrets/kubernetes.io/serviceaccount/token';
+ readonly K8S_CERT_PATH =
+ '/var/run/secrets/kubernetes.io/serviceaccount/ca.crt';
+ readonly AUTH_CONFIGMAP_PATH =
+ '/api/v1/namespaces/kube-system/configmaps/aws-auth';
+ readonly CW_CONFIGMAP_PATH =
+ '/api/v1/namespaces/amazon-cloudwatch/configmaps/cluster-info';
+ readonly CONTAINER_ID_LENGTH = 64;
+ readonly DEFAULT_CGROUP_PATH = '/proc/self/cgroup';
+ readonly TIMEOUT_MS = 2000;
+ readonly UTF8_UNICODE = 'utf8';
+
+ private static readFileAsync = util.promisify(fs.readFile);
+ private static fileAccessAsync = util.promisify(fs.access);
+
+ detect(_config?: ResourceDetectionConfig): IResource {
+ const attributes = context.with(suppressTracing(context.active()), () =>
+ this._getAttributes()
+ );
+ return new Resource({}, attributes);
+ }
+
+ /**
+ * The AwsEksDetector can be used to detect if a process is running on Amazon
+ * Elastic Kubernetes and returns a promise containing a {@link ResourceAttributes}
+ * object with instance metadata. Returns a promise containing an
+ * empty {@link ResourceAttributes} if the connection to kubernetes process
+ * or aws config maps fails
+ */
+ private async _getAttributes(): Promise {
+ try {
+ await AwsEksDetectorSync.fileAccessAsync(this.K8S_TOKEN_PATH);
+ const k8scert = await AwsEksDetectorSync.readFileAsync(
+ this.K8S_CERT_PATH
+ );
+
+ if (!(await this._isEks(k8scert))) {
+ return {};
+ }
+
+ const containerId = await this._getContainerId();
+ const clusterName = await this._getClusterName(k8scert);
+
+ return !containerId && !clusterName
+ ? {}
+ : {
+ [SEMRESATTRS_CLOUD_PROVIDER]: CLOUDPROVIDERVALUES_AWS,
+ [SEMRESATTRS_CLOUD_PLATFORM]: CLOUDPLATFORMVALUES_AWS_EKS,
+ [SEMRESATTRS_K8S_CLUSTER_NAME]: clusterName || '',
+ [SEMRESATTRS_CONTAINER_ID]: containerId || '',
+ };
+ } catch (e) {
+ diag.debug('Process is not running on K8S', e);
+ return {};
+ }
+ }
+
+ /**
+ * Attempts to make a connection to AWS Config map which will
+ * determine whether the process is running on an EKS
+ * process if the config map is empty or not
+ */
+ private async _isEks(cert: Buffer): Promise {
+ const options = {
+ ca: cert,
+ headers: {
+ Authorization: await this._getK8sCredHeader(),
+ },
+ hostname: this.K8S_SVC_URL,
+ method: 'GET',
+ path: this.AUTH_CONFIGMAP_PATH,
+ timeout: this.TIMEOUT_MS,
+ };
+ return !!(await this._fetchString(options));
+ }
+
+ /**
+ * Attempts to make a connection to Amazon Cloudwatch
+ * Config Maps to grab cluster name
+ */
+ private async _getClusterName(cert: Buffer): Promise {
+ const options = {
+ ca: cert,
+ headers: {
+ Authorization: await this._getK8sCredHeader(),
+ },
+ host: this.K8S_SVC_URL,
+ method: 'GET',
+ path: this.CW_CONFIGMAP_PATH,
+ timeout: this.TIMEOUT_MS,
+ };
+ const response = await this._fetchString(options);
+ try {
+ return JSON.parse(response).data['cluster.name'];
+ } catch (e) {
+ diag.debug('Cannot get cluster name on EKS', e);
+ }
+ return '';
+ }
+ /**
+ * Reads the Kubernetes token path and returns kubernetes
+ * credential header
+ */
+ private async _getK8sCredHeader(): Promise {
+ try {
+ const content = await AwsEksDetectorSync.readFileAsync(
+ this.K8S_TOKEN_PATH,
+ this.UTF8_UNICODE
+ );
+ return 'Bearer ' + content;
+ } catch (e) {
+ diag.debug('Unable to read Kubernetes client token.', e);
+ }
+ return '';
+ }
+
+ /**
+ * Read container ID from cgroup file generated from docker which lists the full
+ * untruncated docker container ID at the end of each line.
+ *
+ * The predefined structure of calling /proc/self/cgroup when in a docker container has the structure:
+ *
+ * #:xxxxxx:/
+ *
+ * or
+ *
+ * #:xxxxxx:/docker/64characterID
+ *
+ * This function takes advantage of that fact by just reading the 64-character ID from the end of the
+ * first line. In EKS, even if we fail to find target file or target file does
+ * not contain container ID we do not throw an error but throw warning message
+ * and then return null string
+ */
+ private async _getContainerId(): Promise {
+ try {
+ const rawData = await AwsEksDetectorSync.readFileAsync(
+ this.DEFAULT_CGROUP_PATH,
+ this.UTF8_UNICODE
+ );
+ const splitData = rawData.trim().split('\n');
+ for (const str of splitData) {
+ if (str.length > this.CONTAINER_ID_LENGTH) {
+ return str.substring(str.length - this.CONTAINER_ID_LENGTH);
+ }
+ }
+ } catch (e: any) {
+ diag.debug(`AwsEksDetector failed to read container ID: ${e.message}`);
+ }
+ return undefined;
+ }
+
+ /**
+ * Establishes an HTTP connection to AWS instance document url.
+ * If the application is running on an EKS instance, we should be able
+ * to get back a valid JSON document. Parses that document and stores
+ * the identity properties in a local map.
+ */
+ private async _fetchString(options: https.RequestOptions): Promise {
+ return await new Promise((resolve, reject) => {
+ const timeoutId = setTimeout(() => {
+ req.abort();
+ reject(new Error('EKS metadata api request timed out.'));
+ }, 2000);
+
+ const req = https.request(options, res => {
+ clearTimeout(timeoutId);
+ const { statusCode } = res;
+ res.setEncoding(this.UTF8_UNICODE);
+ let rawData = '';
+ res.on('data', chunk => (rawData += chunk));
+ res.on('end', () => {
+ if (statusCode && statusCode >= 200 && statusCode < 300) {
+ try {
+ resolve(rawData);
+ } catch (e) {
+ reject(e);
+ }
+ } else {
+ reject(
+ new Error('Failed to load page, status code: ' + statusCode)
+ );
+ }
+ });
+ });
+ req.on('error', err => {
+ clearTimeout(timeoutId);
+ reject(err);
+ });
+ req.end();
+ });
+ }
+}
+
+export const awsEksDetectorSync = new AwsEksDetectorSync();
diff --git a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsLambdaDetector.ts b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsLambdaDetector.ts
index 389b030709..529ebeff61 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsLambdaDetector.ts
+++ b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsLambdaDetector.ts
@@ -16,51 +16,20 @@
import {
Detector,
- Resource,
- ResourceAttributes,
+ IResource,
ResourceDetectionConfig,
} from '@opentelemetry/resources';
-import {
- SEMRESATTRS_CLOUD_PROVIDER,
- SEMRESATTRS_CLOUD_PLATFORM,
- SEMRESATTRS_CLOUD_REGION,
- SEMRESATTRS_FAAS_VERSION,
- SEMRESATTRS_FAAS_NAME,
- CLOUDPROVIDERVALUES_AWS,
- CLOUDPLATFORMVALUES_AWS_LAMBDA,
-} from '@opentelemetry/semantic-conventions';
+import { awsLambdaDetectorSync } from './AwsLambdaDetectorSync';
/**
* The AwsLambdaDetector can be used to detect if a process is running in AWS Lambda
* and return a {@link Resource} populated with data about the environment.
- * Returns an empty Resource if detection fails.
+ *
+ * @deprecated Use {@link AwsLambdaDetectorSync} class instead
*/
export class AwsLambdaDetector implements Detector {
- async detect(_config?: ResourceDetectionConfig): Promise {
- const functionName = process.env.AWS_LAMBDA_FUNCTION_NAME;
- if (!functionName) {
- return Resource.empty();
- }
-
- const functionVersion = process.env.AWS_LAMBDA_FUNCTION_VERSION;
- const region = process.env.AWS_REGION;
-
- const attributes: ResourceAttributes = {
- [SEMRESATTRS_CLOUD_PROVIDER]: String(CLOUDPROVIDERVALUES_AWS),
- [SEMRESATTRS_CLOUD_PLATFORM]: String(CLOUDPLATFORMVALUES_AWS_LAMBDA),
- };
- if (region) {
- attributes[SEMRESATTRS_CLOUD_REGION] = region;
- }
-
- if (functionName) {
- attributes[SEMRESATTRS_FAAS_NAME] = functionName;
- }
- if (functionVersion) {
- attributes[SEMRESATTRS_FAAS_VERSION] = functionVersion;
- }
-
- return new Resource(attributes);
+ detect(_config?: ResourceDetectionConfig): Promise {
+ return Promise.resolve(awsLambdaDetectorSync.detect(_config));
}
}
diff --git a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsLambdaDetectorSync.ts b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsLambdaDetectorSync.ts
new file mode 100644
index 0000000000..4b85f44bdc
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/AwsLambdaDetectorSync.ts
@@ -0,0 +1,68 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import {
+ DetectorSync,
+ IResource,
+ Resource,
+ ResourceAttributes,
+ ResourceDetectionConfig,
+} from '@opentelemetry/resources';
+import {
+ SEMRESATTRS_CLOUD_PROVIDER,
+ SEMRESATTRS_CLOUD_PLATFORM,
+ SEMRESATTRS_CLOUD_REGION,
+ SEMRESATTRS_FAAS_VERSION,
+ SEMRESATTRS_FAAS_NAME,
+ CLOUDPROVIDERVALUES_AWS,
+ CLOUDPLATFORMVALUES_AWS_LAMBDA,
+} from '@opentelemetry/semantic-conventions';
+
+/**
+ * The AwsLambdaDetector can be used to detect if a process is running in AWS Lambda
+ * and return a {@link Resource} populated with data about the environment.
+ * Returns an empty Resource if detection fails.
+ */
+export class AwsLambdaDetectorSync implements DetectorSync {
+ detect(_config?: ResourceDetectionConfig): IResource {
+ const functionName = process.env.AWS_LAMBDA_FUNCTION_NAME;
+ if (!functionName) {
+ return Resource.empty();
+ }
+
+ const functionVersion = process.env.AWS_LAMBDA_FUNCTION_VERSION;
+ const region = process.env.AWS_REGION;
+
+ const attributes: ResourceAttributes = {
+ [SEMRESATTRS_CLOUD_PROVIDER]: String(CLOUDPROVIDERVALUES_AWS),
+ [SEMRESATTRS_CLOUD_PLATFORM]: String(CLOUDPLATFORMVALUES_AWS_LAMBDA),
+ };
+ if (region) {
+ attributes[SEMRESATTRS_CLOUD_REGION] = region;
+ }
+
+ if (functionName) {
+ attributes[SEMRESATTRS_FAAS_NAME] = functionName;
+ }
+ if (functionVersion) {
+ attributes[SEMRESATTRS_FAAS_VERSION] = functionVersion;
+ }
+
+ return new Resource(attributes);
+ }
+}
+
+export const awsLambdaDetectorSync = new AwsLambdaDetectorSync();
diff --git a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/index.ts b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/index.ts
index b475e4a208..08a7f232bf 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/src/detectors/index.ts
+++ b/detectors/node/opentelemetry-resource-detector-aws/src/detectors/index.ts
@@ -14,8 +14,22 @@
* limitations under the License.
*/
-export * from './AwsEc2Detector';
-export * from './AwsBeanstalkDetector';
-export * from './AwsEcsDetector';
-export * from './AwsEksDetector';
-export * from './AwsLambdaDetector';
+export {
+ AwsBeanstalkDetector,
+ awsBeanstalkDetector,
+} from './AwsBeanstalkDetector';
+export {
+ AwsBeanstalkDetectorSync,
+ awsBeanstalkDetectorSync,
+} from './AwsBeanstalkDetectorSync';
+export { awsEc2Detector } from './AwsEc2Detector';
+export { awsEc2DetectorSync } from './AwsEc2DetectorSync';
+export { AwsEcsDetector, awsEcsDetector } from './AwsEcsDetector';
+export { AwsEcsDetectorSync, awsEcsDetectorSync } from './AwsEcsDetectorSync';
+export { AwsEksDetector, awsEksDetector } from './AwsEksDetector';
+export { AwsEksDetectorSync, awsEksDetectorSync } from './AwsEksDetectorSync';
+export { AwsLambdaDetector, awsLambdaDetector } from './AwsLambdaDetector';
+export {
+ AwsLambdaDetectorSync,
+ awsLambdaDetectorSync,
+} from './AwsLambdaDetectorSync';
diff --git a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsBeanstalkDetector.test.ts b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsBeanstalkDetector.test.ts
index 92822e392b..9b00ed3548 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsBeanstalkDetector.test.ts
+++ b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsBeanstalkDetector.test.ts
@@ -16,7 +16,7 @@
import * as assert from 'assert';
import * as sinon from 'sinon';
-import { awsBeanstalkDetector, AwsBeanstalkDetector } from '../../src';
+import { awsBeanstalkDetector, AwsBeanstalkDetectorSync } from '../../src';
import {
assertEmptyResource,
assertServiceResource,
@@ -45,14 +45,15 @@ describe('BeanstalkResourceDetector', () => {
it('should successfully return resource data', async () => {
fileStub = sinon
- .stub(AwsBeanstalkDetector, 'fileAccessAsync' as any)
+ .stub(AwsBeanstalkDetectorSync, 'fileAccessAsync' as any)
.resolves();
readStub = sinon
- .stub(AwsBeanstalkDetector, 'readFileAsync' as any)
+ .stub(AwsBeanstalkDetectorSync, 'readFileAsync' as any)
.resolves(JSON.stringify(data));
sinon.stub(JSON, 'parse').returns(data);
const resource = await awsBeanstalkDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(fileStub);
sinon.assert.calledOnce(readStub);
@@ -67,14 +68,15 @@ describe('BeanstalkResourceDetector', () => {
it('should successfully return resource data with noise', async () => {
fileStub = sinon
- .stub(AwsBeanstalkDetector, 'fileAccessAsync' as any)
+ .stub(AwsBeanstalkDetectorSync, 'fileAccessAsync' as any)
.resolves();
readStub = sinon
- .stub(AwsBeanstalkDetector, 'readFileAsync' as any)
+ .stub(AwsBeanstalkDetectorSync, 'readFileAsync' as any)
.resolves(JSON.stringify(noisyData));
sinon.stub(JSON, 'parse').returns(noisyData);
const resource = await awsBeanstalkDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(fileStub);
sinon.assert.calledOnce(readStub);
@@ -89,13 +91,14 @@ describe('BeanstalkResourceDetector', () => {
it('should return empty resource when failing to read file', async () => {
fileStub = sinon
- .stub(AwsBeanstalkDetector, 'fileAccessAsync' as any)
+ .stub(AwsBeanstalkDetectorSync, 'fileAccessAsync' as any)
.resolves();
readStub = sinon
- .stub(AwsBeanstalkDetector, 'readFileAsync' as any)
+ .stub(AwsBeanstalkDetectorSync, 'readFileAsync' as any)
.rejects(err);
const resource = await awsBeanstalkDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(fileStub);
sinon.assert.calledOnce(readStub);
@@ -105,13 +108,14 @@ describe('BeanstalkResourceDetector', () => {
it('should return empty resource when config file does not exist', async () => {
fileStub = sinon
- .stub(AwsBeanstalkDetector, 'fileAccessAsync' as any)
+ .stub(AwsBeanstalkDetectorSync, 'fileAccessAsync' as any)
.rejects(err);
readStub = sinon
- .stub(AwsBeanstalkDetector, 'readFileAsync' as any)
+ .stub(AwsBeanstalkDetectorSync, 'readFileAsync' as any)
.resolves(JSON.stringify(data));
const resource = await awsBeanstalkDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(fileStub);
sinon.assert.notCalled(readStub);
diff --git a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsBeanstalkDetectorSync.test.ts b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsBeanstalkDetectorSync.test.ts
new file mode 100644
index 0000000000..76096c4bee
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsBeanstalkDetectorSync.test.ts
@@ -0,0 +1,125 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import * as assert from 'assert';
+import * as sinon from 'sinon';
+import { awsBeanstalkDetectorSync, AwsBeanstalkDetectorSync } from '../../src';
+import {
+ assertEmptyResource,
+ assertServiceResource,
+} from '@opentelemetry/contrib-test-utils';
+import { CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK } from '@opentelemetry/semantic-conventions';
+
+describe('BeanstalkResourceDetectorSync', () => {
+ const err = new Error('failed to read config file');
+ const data = {
+ version_label: 'app-5a56-170119_190650-stage-170119_190650',
+ deployment_id: '32',
+ environment_name: 'scorekeep',
+ };
+ const noisyData = {
+ noise: 'noise',
+ version_label: 'app-5a56-170119_190650-stage-170119_190650',
+ deployment_id: '32',
+ environment_name: 'scorekeep',
+ };
+
+ let readStub, fileStub;
+
+ afterEach(() => {
+ sinon.restore();
+ });
+
+ it('should successfully return resource data', async () => {
+ fileStub = sinon
+ .stub(AwsBeanstalkDetectorSync, 'fileAccessAsync' as any)
+ .resolves();
+ readStub = sinon
+ .stub(AwsBeanstalkDetectorSync, 'readFileAsync' as any)
+ .resolves(JSON.stringify(data));
+ sinon.stub(JSON, 'parse').returns(data);
+
+ const resource = awsBeanstalkDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.calledOnce(fileStub);
+ sinon.assert.calledOnce(readStub);
+ assert.ok(resource);
+ assertServiceResource(resource, {
+ name: CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK,
+ namespace: 'scorekeep',
+ version: 'app-5a56-170119_190650-stage-170119_190650',
+ instanceId: '32',
+ });
+ });
+
+ it('should successfully return resource data with noise', async () => {
+ fileStub = sinon
+ .stub(AwsBeanstalkDetectorSync, 'fileAccessAsync' as any)
+ .resolves();
+ readStub = sinon
+ .stub(AwsBeanstalkDetectorSync, 'readFileAsync' as any)
+ .resolves(JSON.stringify(noisyData));
+ sinon.stub(JSON, 'parse').returns(noisyData);
+
+ const resource = awsBeanstalkDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.calledOnce(fileStub);
+ sinon.assert.calledOnce(readStub);
+ assert.ok(resource);
+ assertServiceResource(resource, {
+ name: CLOUDPLATFORMVALUES_AWS_ELASTIC_BEANSTALK,
+ namespace: 'scorekeep',
+ version: 'app-5a56-170119_190650-stage-170119_190650',
+ instanceId: '32',
+ });
+ });
+
+ it('should return empty resource when failing to read file', async () => {
+ fileStub = sinon
+ .stub(AwsBeanstalkDetectorSync, 'fileAccessAsync' as any)
+ .resolves();
+ readStub = sinon
+ .stub(AwsBeanstalkDetectorSync, 'readFileAsync' as any)
+ .rejects(err);
+
+ const resource = awsBeanstalkDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.calledOnce(fileStub);
+ sinon.assert.calledOnce(readStub);
+ assert.ok(resource);
+ assertEmptyResource(resource);
+ });
+
+ it('should return empty resource when config file does not exist', async () => {
+ fileStub = sinon
+ .stub(AwsBeanstalkDetectorSync, 'fileAccessAsync' as any)
+ .rejects(err);
+ readStub = sinon
+ .stub(AwsBeanstalkDetectorSync, 'readFileAsync' as any)
+ .resolves(JSON.stringify(data));
+
+ const resource = awsBeanstalkDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.calledOnce(fileStub);
+ sinon.assert.notCalled(readStub);
+ assert.ok(resource);
+ assertEmptyResource(resource);
+ });
+});
diff --git a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEc2Detector.test.ts b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEc2Detector.test.ts
index 62375965d1..c837f4c6ed 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEc2Detector.test.ts
+++ b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEc2Detector.test.ts
@@ -16,19 +16,20 @@
import * as nock from 'nock';
import * as assert from 'assert';
-import { Resource } from '@opentelemetry/resources';
-import { awsEc2Detector } from '../../src';
+
+import { awsEc2Detector, awsEc2DetectorSync } from '../../src';
import {
assertCloudResource,
assertHostResource,
} from '@opentelemetry/contrib-test-utils';
-const AWS_HOST = 'http://' + awsEc2Detector.AWS_IDMS_ENDPOINT;
-const AWS_TOKEN_PATH = awsEc2Detector.AWS_INSTANCE_TOKEN_DOCUMENT_PATH;
-const AWS_IDENTITY_PATH = awsEc2Detector.AWS_INSTANCE_IDENTITY_DOCUMENT_PATH;
-const AWS_HOST_PATH = awsEc2Detector.AWS_INSTANCE_HOST_DOCUMENT_PATH;
-const AWS_METADATA_TTL_HEADER = awsEc2Detector.AWS_METADATA_TTL_HEADER;
-const AWS_METADATA_TOKEN_HEADER = awsEc2Detector.AWS_METADATA_TOKEN_HEADER;
+const AWS_HOST = 'http://' + awsEc2DetectorSync.AWS_IDMS_ENDPOINT;
+const AWS_TOKEN_PATH = awsEc2DetectorSync.AWS_INSTANCE_TOKEN_DOCUMENT_PATH;
+const AWS_IDENTITY_PATH =
+ awsEc2DetectorSync.AWS_INSTANCE_IDENTITY_DOCUMENT_PATH;
+const AWS_HOST_PATH = awsEc2DetectorSync.AWS_INSTANCE_HOST_DOCUMENT_PATH;
+const AWS_METADATA_TTL_HEADER = awsEc2DetectorSync.AWS_METADATA_TTL_HEADER;
+const AWS_METADATA_TOKEN_HEADER = awsEc2DetectorSync.AWS_METADATA_TOKEN_HEADER;
const mockedTokenResponse = 'my-token';
const mockedIdentityResponse = {
@@ -64,7 +65,8 @@ describe('awsEc2Detector', () => {
.matchHeader(AWS_METADATA_TOKEN_HEADER, mockedTokenResponse)
.reply(200, () => mockedHostResponse);
- const resource: Resource = await awsEc2Detector.detect();
+ const resource = await awsEc2Detector.detect();
+ await resource.waitForAsyncAttributes?.();
scope.done();
@@ -85,8 +87,7 @@ describe('awsEc2Detector', () => {
});
describe('with unsuccessful request', () => {
- it('should throw when receiving error response code', async () => {
- const expectedError = new Error('Failed to load page, status code: 404');
+ it('should return empty resource when receiving error response code', async () => {
const scope = nock(AWS_HOST)
.persist()
.put(AWS_TOKEN_PATH)
@@ -99,18 +100,16 @@ describe('awsEc2Detector', () => {
.matchHeader(AWS_METADATA_TOKEN_HEADER, mockedTokenResponse)
.reply(404, () => new Error());
- try {
- await awsEc2Detector.detect();
- assert.ok(false, 'Expected to throw');
- } catch (err) {
- assert.deepStrictEqual(err, expectedError);
- }
+ const resource = await awsEc2Detector.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
scope.done();
});
- it('should throw when timed out', async () => {
- const expectedError = new Error('EC2 metadata api request timed out.');
+ it('should return empty resource when timed out', async function () {
+ this.timeout(6000);
const scope = nock(AWS_HOST)
.put(AWS_TOKEN_PATH)
.matchHeader(AWS_METADATA_TTL_HEADER, '60')
@@ -120,20 +119,18 @@ describe('awsEc2Detector', () => {
.reply(200, () => mockedIdentityResponse)
.get(AWS_HOST_PATH)
.matchHeader(AWS_METADATA_TOKEN_HEADER, mockedTokenResponse)
- .delayConnection(2000)
+ .delayConnection(5000)
.reply(200, () => mockedHostResponse);
- try {
- await awsEc2Detector.detect();
- assert.ok(false, 'Expected to throw');
- } catch (err) {
- assert.deepStrictEqual(err, expectedError);
- }
+ const resource = await awsEc2Detector.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
scope.done();
});
- it('should throw when replied with an Error', async () => {
+ it('should return empty resource when replied with an Error', async () => {
const expectedError = new Error('NOT FOUND');
const scope = nock(AWS_HOST)
.put(AWS_TOKEN_PATH)
@@ -143,12 +140,10 @@ describe('awsEc2Detector', () => {
.matchHeader(AWS_METADATA_TOKEN_HEADER, mockedTokenResponse)
.replyWithError(expectedError.message);
- try {
- await awsEc2Detector.detect();
- assert.ok(false, 'Expected to throw');
- } catch (err) {
- assert.deepStrictEqual(err, expectedError);
- }
+ const resource = await awsEc2Detector.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
scope.done();
});
diff --git a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEc2DetectorSync.test.ts b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEc2DetectorSync.test.ts
new file mode 100644
index 0000000000..4f309d5ec5
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEc2DetectorSync.test.ts
@@ -0,0 +1,152 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import * as nock from 'nock';
+import * as assert from 'assert';
+
+import {
+ assertCloudResource,
+ assertHostResource,
+} from '@opentelemetry/contrib-test-utils';
+
+import { awsEc2DetectorSync } from '../../src';
+
+const AWS_HOST = 'http://' + awsEc2DetectorSync.AWS_IDMS_ENDPOINT;
+const AWS_TOKEN_PATH = awsEc2DetectorSync.AWS_INSTANCE_TOKEN_DOCUMENT_PATH;
+const AWS_IDENTITY_PATH =
+ awsEc2DetectorSync.AWS_INSTANCE_IDENTITY_DOCUMENT_PATH;
+const AWS_HOST_PATH = awsEc2DetectorSync.AWS_INSTANCE_HOST_DOCUMENT_PATH;
+const AWS_METADATA_TTL_HEADER = awsEc2DetectorSync.AWS_METADATA_TTL_HEADER;
+const AWS_METADATA_TOKEN_HEADER = awsEc2DetectorSync.AWS_METADATA_TOKEN_HEADER;
+
+const mockedTokenResponse = 'my-token';
+const mockedIdentityResponse = {
+ instanceId: 'my-instance-id',
+ instanceType: 'my-instance-type',
+ accountId: 'my-account-id',
+ region: 'my-region',
+ availabilityZone: 'my-zone',
+};
+const mockedHostResponse = 'my-hostname';
+
+describe('awsEc2DetectorSync', () => {
+ beforeEach(() => {
+ nock.disableNetConnect();
+ nock.cleanAll();
+ });
+
+ afterEach(() => {
+ nock.enableNetConnect();
+ });
+
+ describe('with successful request', () => {
+ it('should return aws_ec2_instance resource', async () => {
+ const scope = nock(AWS_HOST)
+ .persist()
+ .put(AWS_TOKEN_PATH)
+ .matchHeader(AWS_METADATA_TTL_HEADER, '60')
+ .reply(200, () => mockedTokenResponse)
+ .get(AWS_IDENTITY_PATH)
+ .matchHeader(AWS_METADATA_TOKEN_HEADER, mockedTokenResponse)
+ .reply(200, () => mockedIdentityResponse)
+ .get(AWS_HOST_PATH)
+ .matchHeader(AWS_METADATA_TOKEN_HEADER, mockedTokenResponse)
+ .reply(200, () => mockedHostResponse);
+
+ const resource = awsEc2DetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ scope.done();
+
+ assert.ok(resource);
+
+ assertCloudResource(resource, {
+ provider: 'aws',
+ accountId: 'my-account-id',
+ region: 'my-region',
+ zone: 'my-zone',
+ });
+ assertHostResource(resource, {
+ id: 'my-instance-id',
+ hostType: 'my-instance-type',
+ name: 'my-hostname',
+ });
+ });
+ });
+
+ describe('with unsuccessful request', () => {
+ it('should return empty resource when receiving error response code', async () => {
+ const scope = nock(AWS_HOST)
+ .persist()
+ .put(AWS_TOKEN_PATH)
+ .matchHeader(AWS_METADATA_TTL_HEADER, '60')
+ .reply(200, () => mockedTokenResponse)
+ .get(AWS_IDENTITY_PATH)
+ .matchHeader(AWS_METADATA_TOKEN_HEADER, mockedTokenResponse)
+ .reply(200, () => mockedIdentityResponse)
+ .get(AWS_HOST_PATH)
+ .matchHeader(AWS_METADATA_TOKEN_HEADER, mockedTokenResponse)
+ .reply(404, () => new Error());
+
+ const resource = awsEc2DetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
+
+ scope.done();
+ });
+
+ it('should return empty resource when timed out', async function () {
+ this.timeout(6000);
+ const scope = nock(AWS_HOST)
+ .put(AWS_TOKEN_PATH)
+ .matchHeader(AWS_METADATA_TTL_HEADER, '60')
+ .reply(200, () => mockedTokenResponse)
+ .get(AWS_IDENTITY_PATH)
+ .matchHeader(AWS_METADATA_TOKEN_HEADER, mockedTokenResponse)
+ .reply(200, () => mockedIdentityResponse)
+ .get(AWS_HOST_PATH)
+ .matchHeader(AWS_METADATA_TOKEN_HEADER, mockedTokenResponse)
+ .delayConnection(5000)
+ .reply(200, () => mockedHostResponse);
+
+ const resource = awsEc2DetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
+
+ scope.done();
+ });
+
+ it('should return empty resource when replied with an Error', async () => {
+ const expectedError = new Error('NOT FOUND');
+ const scope = nock(AWS_HOST)
+ .put(AWS_TOKEN_PATH)
+ .matchHeader(AWS_METADATA_TTL_HEADER, '60')
+ .reply(200, () => mockedTokenResponse)
+ .get(AWS_IDENTITY_PATH)
+ .matchHeader(AWS_METADATA_TOKEN_HEADER, mockedTokenResponse)
+ .replyWithError(expectedError.message);
+
+ const resource = awsEc2DetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
+
+ scope.done();
+ });
+ });
+});
diff --git a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEcsDetector.test.ts b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEcsDetector.test.ts
index 659b3afaab..6a019fc82f 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEcsDetector.test.ts
+++ b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEcsDetector.test.ts
@@ -17,10 +17,7 @@
import * as assert from 'assert';
import * as nock from 'nock';
import * as sinon from 'sinon';
-import {
- awsEcsDetector,
- AwsEcsDetector,
-} from '../../src/detectors/AwsEcsDetector';
+import { awsEcsDetector, AwsEcsDetectorSync } from '../../src';
import {
assertEmptyResource,
assertCloudResource,
@@ -162,10 +159,11 @@ describe('AwsEcsResourceDetector', () => {
process.env.ECS_CONTAINER_METADATA_URI = 'ecs_metadata_v3_uri';
sinon.stub(os, 'hostname').returns(hostNameData);
readStub = sinon
- .stub(AwsEcsDetector, 'readFileAsync' as any)
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
.resolves(noisyCgroupData);
const resource = await awsEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(readStub);
assert.ok(resource);
@@ -180,10 +178,11 @@ describe('AwsEcsResourceDetector', () => {
process.env.ECS_CONTAINER_METADATA_URI = 'ecs_metadata_v3_uri';
sinon.stub(os, 'hostname').returns(hostNameData);
readStub = sinon
- .stub(AwsEcsDetector, 'readFileAsync' as any)
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
.resolves(multiValidCgroupData);
const resource = await awsEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(readStub);
assert.ok(resource);
@@ -197,10 +196,11 @@ describe('AwsEcsResourceDetector', () => {
it('should empty resource without accessing files', async () => {
sinon.stub(os, 'hostname').returns(hostNameData);
readStub = sinon
- .stub(AwsEcsDetector, 'readFileAsync' as any)
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
.resolves(correctCgroupData);
const resource = await awsEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.notCalled(readStub);
assert.ok(resource);
@@ -256,10 +256,11 @@ describe('AwsEcsResourceDetector', () => {
it('should successfully return resource data', async () => {
sinon.stub(os, 'hostname').returns(hostNameData);
readStub = sinon
- .stub(AwsEcsDetector, 'readFileAsync' as any)
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
.resolves(correctCgroupData);
const resource = await awsEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(readStub);
assert.ok(resource);
@@ -273,10 +274,11 @@ describe('AwsEcsResourceDetector', () => {
it('should return resource only with hostname attribute without cgroup file', async () => {
sinon.stub(os, 'hostname').returns(hostNameData);
readStub = sinon
- .stub(AwsEcsDetector, 'readFileAsync' as any)
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
.rejects(errorMsg.fileNotFoundError);
const resource = await awsEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(readStub);
assert.ok(resource);
@@ -289,10 +291,11 @@ describe('AwsEcsResourceDetector', () => {
it('should return resource only with hostname attribute when cgroup file does not contain valid container ID', async () => {
sinon.stub(os, 'hostname').returns(hostNameData);
readStub = sinon
- .stub(AwsEcsDetector, 'readFileAsync' as any)
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
.resolves('');
const resource = await awsEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(readStub);
assert.ok(resource);
@@ -305,10 +308,11 @@ describe('AwsEcsResourceDetector', () => {
it('should return resource only with container ID attribute without hostname', async () => {
sinon.stub(os, 'hostname').returns('');
readStub = sinon
- .stub(AwsEcsDetector, 'readFileAsync' as any)
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
.resolves(correctCgroupData);
const resource = await awsEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(readStub);
assert.ok(resource);
@@ -321,10 +325,11 @@ describe('AwsEcsResourceDetector', () => {
it('should return metadata v4 resource attributes when both hostname and container ID are invalid', async () => {
sinon.stub(os, 'hostname').returns('');
readStub = sinon
- .stub(AwsEcsDetector, 'readFileAsync' as any)
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
.rejects(errorMsg.fileNotFoundError);
const resource = await awsEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(readStub);
assert.ok(resource);
@@ -406,16 +411,14 @@ describe('AwsEcsResourceDetector', () => {
const error = new Error('ERROR');
beforeEach(() => {
- sinon.stub(AwsEcsDetector, '_getUrlAsJson' as any).rejects(error);
+ sinon.stub(AwsEcsDetectorSync, '_getUrlAsJson' as any).rejects(error);
});
- it('should reject with an error', async () => {
- try {
- await awsEcsDetector.detect();
- throw new Error('Should not have reached here');
- } catch (err) {
- assert.strictEqual(err, error);
- }
+ it('should return empty resource if when there is an error', async () => {
+ const resource = await awsEcsDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
});
});
});
diff --git a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEcsDetectorSync.test.ts b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEcsDetectorSync.test.ts
new file mode 100644
index 0000000000..171804bf1b
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEcsDetectorSync.test.ts
@@ -0,0 +1,425 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import * as assert from 'assert';
+import * as nock from 'nock';
+import * as sinon from 'sinon';
+import { awsEcsDetectorSync, AwsEcsDetectorSync } from '../../src';
+import {
+ assertEmptyResource,
+ assertCloudResource,
+ assertContainerResource,
+} from '@opentelemetry/contrib-test-utils';
+import { Resource } from '@opentelemetry/resources';
+import {
+ SEMRESATTRS_CLOUD_PLATFORM,
+ SEMRESATTRS_AWS_ECS_CONTAINER_ARN,
+ SEMRESATTRS_AWS_ECS_CLUSTER_ARN,
+ SEMRESATTRS_AWS_ECS_LAUNCHTYPE,
+ SEMRESATTRS_AWS_ECS_TASK_ARN,
+ SEMRESATTRS_AWS_ECS_TASK_REVISION,
+ SEMRESATTRS_AWS_ECS_TASK_FAMILY,
+ SEMRESATTRS_AWS_LOG_GROUP_NAMES,
+ SEMRESATTRS_AWS_LOG_GROUP_ARNS,
+ SEMRESATTRS_AWS_LOG_STREAM_NAMES,
+ SEMRESATTRS_AWS_LOG_STREAM_ARNS,
+ CLOUDPROVIDERVALUES_AWS,
+ CLOUDPLATFORMVALUES_AWS_ECS,
+} from '@opentelemetry/semantic-conventions';
+// Patch until the OpenTelemetry SDK is updated to ship this attribute
+import { SemanticResourceAttributes as AdditionalSemanticResourceAttributes } from '../../src/detectors/SemanticResourceAttributes';
+import { readFileSync } from 'fs';
+import * as os from 'os';
+import { join } from 'path';
+
+interface EcsResourceAttributes {
+ readonly accountId?: string;
+ readonly region?: string;
+ readonly zone?: string;
+ readonly clusterArn?: string;
+ readonly containerArn?: string;
+ readonly launchType?: 'ec2' | 'fargate';
+ readonly taskArn?: string;
+ readonly taskFamily?: string;
+ readonly taskRevision?: string;
+ readonly logGroupNames?: Array;
+ readonly logGroupArns?: Array;
+ readonly logStreamNames?: Array;
+ readonly logStreamArns?: Array;
+}
+
+const assertEcsResource = (
+ resource: Resource,
+ validations: EcsResourceAttributes
+) => {
+ assertCloudResource(resource, {
+ provider: CLOUDPROVIDERVALUES_AWS,
+ accountId: validations.accountId,
+ region: validations.region,
+ zone: validations.zone,
+ });
+ assert.strictEqual(
+ resource.attributes[SEMRESATTRS_CLOUD_PLATFORM],
+ CLOUDPLATFORMVALUES_AWS_ECS
+ );
+ if (validations.containerArn)
+ assert.strictEqual(
+ resource.attributes[SEMRESATTRS_AWS_ECS_CONTAINER_ARN],
+ validations.containerArn
+ );
+ assert.strictEqual(
+ resource.attributes[AdditionalSemanticResourceAttributes.CLOUD_RESOURCE_ID],
+ validations.containerArn
+ );
+ if (validations.clusterArn)
+ assert.strictEqual(
+ resource.attributes[SEMRESATTRS_AWS_ECS_CLUSTER_ARN],
+ validations.clusterArn
+ );
+ if (validations.launchType)
+ assert.strictEqual(
+ resource.attributes[SEMRESATTRS_AWS_ECS_LAUNCHTYPE],
+ validations.launchType
+ );
+ if (validations.taskArn)
+ assert.strictEqual(
+ resource.attributes[SEMRESATTRS_AWS_ECS_TASK_ARN],
+ validations.taskArn
+ );
+ if (validations.taskFamily)
+ assert.strictEqual(
+ resource.attributes[SEMRESATTRS_AWS_ECS_TASK_FAMILY],
+ validations.taskFamily
+ );
+ if (validations.taskRevision)
+ assert.strictEqual(
+ resource.attributes[SEMRESATTRS_AWS_ECS_TASK_REVISION],
+ validations.taskRevision
+ );
+ if (validations.logGroupNames)
+ assert.deepEqual(
+ resource.attributes[SEMRESATTRS_AWS_LOG_GROUP_NAMES],
+ validations.logGroupNames
+ );
+ if (validations.logGroupArns)
+ assert.deepEqual(
+ resource.attributes[SEMRESATTRS_AWS_LOG_GROUP_ARNS],
+ validations.logGroupArns
+ );
+ if (validations.logStreamNames)
+ assert.deepEqual(
+ resource.attributes[SEMRESATTRS_AWS_LOG_STREAM_NAMES],
+ validations.logStreamNames
+ );
+ if (validations.logStreamArns)
+ assert.deepEqual(
+ resource.attributes[SEMRESATTRS_AWS_LOG_STREAM_ARNS],
+ validations.logStreamArns
+ );
+};
+
+describe('AwsEcsResourceDetectorSync', () => {
+ const errorMsg = {
+ fileNotFoundError: new Error('cannot find cgroup file'),
+ };
+
+ const correctCgroupData =
+ 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm';
+ const unexpectedCgroupdata =
+ 'bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb';
+ const noisyCgroupData = `\n\n\n abcdefghijklmnopqrstuvwxyz \n ${correctCgroupData}`;
+ const multiValidCgroupData = `${unexpectedCgroupdata}\n${correctCgroupData}\nbcd${unexpectedCgroupdata}`;
+ const hostNameData = 'abcd.test.testing.com';
+
+ let readStub;
+
+ beforeEach(() => {
+ process.env.ECS_CONTAINER_METADATA_URI_V4 = '';
+ process.env.ECS_CONTAINER_METADATA_URI = '';
+ });
+
+ afterEach(() => {
+ sinon.restore();
+ });
+
+ it('should successfully return resource data with noisy cgroup file', async () => {
+ process.env.ECS_CONTAINER_METADATA_URI = 'ecs_metadata_v3_uri';
+ sinon.stub(os, 'hostname').returns(hostNameData);
+ readStub = sinon
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
+ .resolves(noisyCgroupData);
+
+ const resource = awsEcsDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.calledOnce(readStub);
+ assert.ok(resource);
+ assertEcsResource(resource, {});
+ assertContainerResource(resource, {
+ name: 'abcd.test.testing.com',
+ id: 'bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm',
+ });
+ });
+
+ it('should always return first valid line of data', async () => {
+ process.env.ECS_CONTAINER_METADATA_URI = 'ecs_metadata_v3_uri';
+ sinon.stub(os, 'hostname').returns(hostNameData);
+ readStub = sinon
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
+ .resolves(multiValidCgroupData);
+
+ const resource = awsEcsDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.calledOnce(readStub);
+ assert.ok(resource);
+ assertEcsResource(resource, {});
+ assertContainerResource(resource, {
+ name: 'abcd.test.testing.com',
+ id: 'bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm',
+ });
+ });
+
+ it('should empty resource without accessing files', async () => {
+ sinon.stub(os, 'hostname').returns(hostNameData);
+ readStub = sinon
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
+ .resolves(correctCgroupData);
+
+ const resource = awsEcsDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.notCalled(readStub);
+ assert.ok(resource);
+ assertEmptyResource(resource);
+ });
+
+ describe('with Metadata URI v4 available', () => {
+ const ECS_CONTAINER_METADATA_URI_V4 =
+ 'http://169.254.170.2/v4/96d36db6cf2942269b2c2c0c9540c444-4190541037';
+
+ beforeEach(() => {
+ process.env.ECS_CONTAINER_METADATA_URI_V4 = ECS_CONTAINER_METADATA_URI_V4;
+ });
+
+ describe('when successfully retrieving the data', () => {
+ function generateLaunchTypeTests(
+ resourceAttributes: EcsResourceAttributes,
+ suffix = ''
+ ) {
+ let nockScope: nock.Scope;
+
+ beforeEach(() => {
+ function readTestFileName(testFileName: string) {
+ const testResource = join(
+ __dirname,
+ `test-resources/${testFileName}`
+ );
+
+ return readFileSync(testResource, 'utf-8');
+ }
+
+ const containerResponseBody = readTestFileName(
+ `metadatav4-response-container-${resourceAttributes.launchType!}${suffix}.json`
+ );
+ const taskResponseBody = readTestFileName(
+ `metadatav4-response-task-${resourceAttributes.launchType!}${suffix}.json`
+ );
+
+ nockScope = nock('http://169.254.170.2:80')
+ .persist(false)
+ .get('/v4/96d36db6cf2942269b2c2c0c9540c444-4190541037')
+ .reply(200, () => containerResponseBody)
+ .get('/v4/96d36db6cf2942269b2c2c0c9540c444-4190541037/task')
+ .reply(200, () => taskResponseBody);
+ });
+
+ afterEach(() => {
+ if (nockScope) {
+ nockScope.done();
+ }
+ });
+
+ it('should successfully return resource data', async () => {
+ sinon.stub(os, 'hostname').returns(hostNameData);
+ readStub = sinon
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
+ .resolves(correctCgroupData);
+
+ const resource = awsEcsDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.calledOnce(readStub);
+ assert.ok(resource);
+ assertEcsResource(resource, resourceAttributes);
+ assertContainerResource(resource, {
+ name: 'abcd.test.testing.com',
+ id: 'bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm',
+ });
+ });
+
+ it('should return resource only with hostname attribute without cgroup file', async () => {
+ sinon.stub(os, 'hostname').returns(hostNameData);
+ readStub = sinon
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
+ .rejects(errorMsg.fileNotFoundError);
+
+ const resource = awsEcsDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.calledOnce(readStub);
+ assert.ok(resource);
+ assertEcsResource(resource, resourceAttributes);
+ assertContainerResource(resource, {
+ name: 'abcd.test.testing.com',
+ });
+ });
+
+ it('should return resource only with hostname attribute when cgroup file does not contain valid container ID', async () => {
+ sinon.stub(os, 'hostname').returns(hostNameData);
+ readStub = sinon
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
+ .resolves('');
+
+ const resource = awsEcsDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.calledOnce(readStub);
+ assert.ok(resource);
+ assertEcsResource(resource, resourceAttributes);
+ assertContainerResource(resource, {
+ name: 'abcd.test.testing.com',
+ });
+ });
+
+ it('should return resource only with container ID attribute without hostname', async () => {
+ sinon.stub(os, 'hostname').returns('');
+ readStub = sinon
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
+ .resolves(correctCgroupData);
+
+ const resource = awsEcsDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.calledOnce(readStub);
+ assert.ok(resource);
+ assertEcsResource(resource, resourceAttributes);
+ assertContainerResource(resource, {
+ id: 'bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm',
+ });
+ });
+
+ it('should return metadata v4 resource attributes when both hostname and container ID are invalid', async () => {
+ sinon.stub(os, 'hostname').returns('');
+ readStub = sinon
+ .stub(AwsEcsDetectorSync, 'readFileAsync' as any)
+ .rejects(errorMsg.fileNotFoundError);
+
+ const resource = awsEcsDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ sinon.assert.calledOnce(readStub);
+ assert.ok(resource);
+ assertEcsResource(resource, resourceAttributes);
+ });
+ }
+
+ describe('on Ec2', () => {
+ describe('with AWS CloudWatch as log driver', () => {
+ generateLaunchTypeTests({
+ clusterArn: 'arn:aws:ecs:us-west-2:111122223333:cluster/default',
+ containerArn:
+ 'arn:aws:ecs:us-west-2:111122223333:container/0206b271-b33f-47ab-86c6-a0ba208a70a9',
+ launchType: 'ec2',
+ taskArn:
+ 'arn:aws:ecs:us-west-2:111122223333:task/default/158d1c8083dd49d6b527399fd6414f5c',
+ taskFamily: 'curltest',
+ taskRevision: '26',
+ logGroupNames: ['/ecs/metadata'],
+ logGroupArns: [
+ 'arn:aws:logs:us-west-2:111122223333:log-group:/ecs/metadata',
+ ],
+ logStreamNames: ['ecs/curl/8f03e41243824aea923aca126495f665'],
+ logStreamArns: [
+ 'arn:aws:logs:us-west-2:111122223333:log-group:/ecs/metadata:log-stream:ecs/curl/8f03e41243824aea923aca126495f665',
+ ],
+ });
+ });
+ });
+
+ describe('on Fargate', () => {
+ describe('with AWS CloudWatch as log driver', () => {
+ generateLaunchTypeTests({
+ accountId: '111122223333',
+ region: 'us-west-2',
+ zone: 'us-west-2a',
+ clusterArn: 'arn:aws:ecs:us-west-2:111122223333:cluster/default',
+ containerArn:
+ 'arn:aws:ecs:us-west-2:111122223333:container/05966557-f16c-49cb-9352-24b3a0dcd0e1',
+ launchType: 'fargate',
+ taskArn:
+ 'arn:aws:ecs:us-west-2:111122223333:task/default/e9028f8d5d8e4f258373e7b93ce9a3c3',
+ taskFamily: 'curltest',
+ taskRevision: '3',
+ logGroupNames: ['/ecs/containerlogs'],
+ logGroupArns: [
+ 'arn:aws:logs:us-west-2:111122223333:log-group:/ecs/containerlogs',
+ ],
+ logStreamNames: ['ecs/curl/cd189a933e5849daa93386466019ab50'],
+ logStreamArns: [
+ 'arn:aws:logs:us-west-2:111122223333:log-group:/ecs/containerlogs:log-stream:ecs/curl/cd189a933e5849daa93386466019ab50',
+ ],
+ });
+ });
+
+ describe('with AWS Firelens as log driver', () => {
+ generateLaunchTypeTests(
+ {
+ clusterArn: 'arn:aws:ecs:us-west-2:111122223333:cluster/default',
+ containerArn:
+ 'arn:aws:ecs:us-west-2:111122223333:container/05966557-f16c-49cb-9352-24b3a0dcd0e1',
+ launchType: 'fargate',
+ taskArn:
+ 'arn:aws:ecs:us-west-2:111122223333:task/default/e9028f8d5d8e4f258373e7b93ce9a3c3',
+ taskFamily: 'curltest',
+ taskRevision: '3',
+ logGroupNames: undefined,
+ logGroupArns: undefined,
+ logStreamNames: undefined,
+ logStreamArns: undefined,
+ },
+ '-logsfirelens'
+ );
+ });
+ });
+ });
+
+ describe('when failing to fetch metadata', async () => {
+ const error = new Error('ERROR');
+
+ beforeEach(() => {
+ sinon.stub(AwsEcsDetectorSync, '_getUrlAsJson' as any).rejects(error);
+ });
+
+ it('should return empty resource if when there is an error', async () => {
+ const resource = awsEcsDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
+ });
+ });
+ });
+});
diff --git a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEksDetector.test.ts b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEksDetector.test.ts
index db9cab4276..ab743dc3b5 100644
--- a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEksDetector.test.ts
+++ b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEksDetector.test.ts
@@ -18,7 +18,11 @@ import * as nock from 'nock';
import * as sinon from 'sinon';
import * as assert from 'assert';
import { Resource } from '@opentelemetry/resources';
-import { awsEksDetector, AwsEksDetector } from '../../src';
+import {
+ awsEksDetector,
+ awsEksDetectorSync,
+ AwsEksDetectorSync,
+} from '../../src';
import {
assertK8sResource,
assertContainerResource,
@@ -54,13 +58,13 @@ describe('awsEksDetector', () => {
describe('on successful request', () => {
it('should return an aws_eks_instance_resource', async () => {
fileStub = sinon
- .stub(AwsEksDetector, 'fileAccessAsync' as any)
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
.resolves();
readStub = sinon
- .stub(AwsEksDetector, 'readFileAsync' as any)
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
.resolves(correctCgroupData);
getCredStub = sinon
- .stub(awsEksDetector, '_getK8sCredHeader' as any)
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
.resolves(k8s_token);
const scope = nock('https://' + K8S_SVC_URL)
.persist()
@@ -71,7 +75,8 @@ describe('awsEksDetector', () => {
.matchHeader('Authorization', k8s_token)
.reply(200, () => mockedClusterResponse);
- const resource: Resource = await awsEksDetector.detect();
+ const resource = await awsEksDetector.detect();
+ await resource.waitForAsyncAttributes?.();
scope.done();
@@ -90,14 +95,14 @@ describe('awsEksDetector', () => {
it('should return a resource with clusterName attribute without cgroup file', async () => {
fileStub = sinon
- .stub(AwsEksDetector, 'fileAccessAsync' as any)
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
.resolves();
readStub = sinon
- .stub(AwsEksDetector, 'readFileAsync' as any)
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
.onSecondCall()
.rejects(errorMsg.fileNotFoundError);
getCredStub = sinon
- .stub(awsEksDetector, '_getK8sCredHeader' as any)
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
.resolves(k8s_token);
const scope = nock('https://' + K8S_SVC_URL)
.persist()
@@ -108,7 +113,8 @@ describe('awsEksDetector', () => {
.matchHeader('Authorization', k8s_token)
.reply(200, () => mockedClusterResponse);
- const resource: Resource = await awsEksDetector.detect();
+ const resource = await awsEksDetector.detect();
+ await resource.waitForAsyncAttributes?.();
scope.done();
@@ -120,13 +126,13 @@ describe('awsEksDetector', () => {
it('should return a resource with container ID attribute without a clusterName', async () => {
fileStub = sinon
- .stub(AwsEksDetector, 'fileAccessAsync' as any)
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
.resolves();
readStub = sinon
- .stub(AwsEksDetector, 'readFileAsync' as any)
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
.resolves(correctCgroupData);
getCredStub = sinon
- .stub(awsEksDetector, '_getK8sCredHeader' as any)
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
.resolves(k8s_token);
const scope = nock('https://' + K8S_SVC_URL)
.persist()
@@ -137,7 +143,8 @@ describe('awsEksDetector', () => {
.matchHeader('Authorization', k8s_token)
.reply(200, () => '');
- const resource: Resource = await awsEksDetector.detect();
+ const resource = await awsEksDetector.detect();
+ await resource.waitForAsyncAttributes?.();
scope.done();
@@ -149,14 +156,14 @@ describe('awsEksDetector', () => {
it('should return a resource with clusterName attribute when cgroup file does not contain valid Container ID', async () => {
fileStub = sinon
- .stub(AwsEksDetector, 'fileAccessAsync' as any)
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
.resolves();
readStub = sinon
- .stub(AwsEksDetector, 'readFileAsync' as any)
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
.onSecondCall()
.resolves('');
getCredStub = sinon
- .stub(awsEksDetector, '_getK8sCredHeader' as any)
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
.resolves(k8s_token);
const scope = nock('https://' + K8S_SVC_URL)
.persist()
@@ -167,7 +174,8 @@ describe('awsEksDetector', () => {
.matchHeader('Authorization', k8s_token)
.reply(200, () => mockedClusterResponse);
- const resource: Resource = await awsEksDetector.detect();
+ const resource = await awsEksDetector.detect();
+ await resource.waitForAsyncAttributes?.();
scope.done();
@@ -180,13 +188,13 @@ describe('awsEksDetector', () => {
it('should return an empty resource when not running on Eks', async () => {
fileStub = sinon
- .stub(AwsEksDetector, 'fileAccessAsync' as any)
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
.resolves('');
readStub = sinon
- .stub(AwsEksDetector, 'readFileAsync' as any)
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
.resolves(correctCgroupData);
getCredStub = sinon
- .stub(awsEksDetector, '_getK8sCredHeader' as any)
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
.resolves(k8s_token);
const scope = nock('https://' + K8S_SVC_URL)
.persist()
@@ -194,7 +202,8 @@ describe('awsEksDetector', () => {
.matchHeader('Authorization', k8s_token)
.reply(200, () => '');
- const resource: Resource = await awsEksDetector.detect();
+ const resource = await awsEksDetector.detect();
+ await resource.waitForAsyncAttributes?.();
scope.done();
@@ -207,7 +216,7 @@ describe('awsEksDetector', () => {
fileNotFoundError: new Error('cannot file k8s token file'),
};
fileStub = sinon
- .stub(AwsEksDetector, 'fileAccessAsync' as any)
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
.rejects(errorMsg.fileNotFoundError);
const resource: Resource = await awsEksDetector.detect();
@@ -218,15 +227,15 @@ describe('awsEksDetector', () => {
it('should return an empty resource when containerId and clusterName are invalid', async () => {
fileStub = sinon
- .stub(AwsEksDetector, 'fileAccessAsync' as any)
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
.resolves('');
readStub = sinon
- .stub(AwsEksDetector, 'readFileAsync' as any)
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
.onSecondCall()
.rejects(errorMsg.fileNotFoundError);
getCredStub = sinon
- .stub(awsEksDetector, '_getK8sCredHeader' as any)
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
.resolves(k8s_token);
const scope = nock('https://' + K8S_SVC_URL)
.persist()
@@ -237,7 +246,8 @@ describe('awsEksDetector', () => {
.matchHeader('Authorization', k8s_token)
.reply(200, () => '');
- const resource: Resource = await awsEksDetector.detect();
+ const resource = await awsEksDetector.detect();
+ await resource.waitForAsyncAttributes?.();
scope.isDone();
@@ -249,13 +259,13 @@ describe('awsEksDetector', () => {
describe('on unsuccessful request', () => {
it('should return an empty resource when timed out', async () => {
fileStub = sinon
- .stub(AwsEksDetector, 'fileAccessAsync' as any)
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
.resolves();
readStub = sinon
- .stub(AwsEksDetector, 'readFileAsync' as any)
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
.resolves(correctCgroupData);
getCredStub = sinon
- .stub(awsEksDetector, '_getK8sCredHeader' as any)
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
.resolves(k8s_token);
const scope = nock('https://' + K8S_SVC_URL)
.persist()
@@ -264,7 +274,9 @@ describe('awsEksDetector', () => {
.delayConnection(2500)
.reply(200, () => mockedAwsAuth);
- const resource: Resource = await awsEksDetector.detect();
+ const resource = await awsEksDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
scope.done();
assert.ok(resource);
@@ -273,13 +285,13 @@ describe('awsEksDetector', () => {
it('should return an empty resource when receiving error response code', async () => {
fileStub = sinon
- .stub(AwsEksDetector, 'fileAccessAsync' as any)
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
.resolves();
readStub = sinon
- .stub(AwsEksDetector, 'readFileAsync' as any)
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
.resolves(correctCgroupData);
getCredStub = sinon
- .stub(awsEksDetector, '_getK8sCredHeader' as any)
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
.resolves(k8s_token);
const scope = nock('https://' + K8S_SVC_URL)
.persist()
@@ -287,7 +299,9 @@ describe('awsEksDetector', () => {
.matchHeader('Authorization', k8s_token)
.reply(404, () => new Error());
- const resource: Resource = await awsEksDetector.detect();
+ const resource = await awsEksDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
scope.done();
assert.ok(resource);
diff --git a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEksDetectorSync.test.ts b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEksDetectorSync.test.ts
new file mode 100644
index 0000000000..432e113464
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsEksDetectorSync.test.ts
@@ -0,0 +1,307 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import * as nock from 'nock';
+import * as sinon from 'sinon';
+import * as assert from 'assert';
+import { Resource } from '@opentelemetry/resources';
+import { awsEksDetectorSync, AwsEksDetectorSync } from '../../src';
+import {
+ assertK8sResource,
+ assertContainerResource,
+ assertEmptyResource,
+} from '@opentelemetry/contrib-test-utils';
+
+const K8S_SVC_URL = awsEksDetectorSync.K8S_SVC_URL;
+const AUTH_CONFIGMAP_PATH = awsEksDetectorSync.AUTH_CONFIGMAP_PATH;
+const CW_CONFIGMAP_PATH = awsEksDetectorSync.CW_CONFIGMAP_PATH;
+
+describe('awsEksDetectorSync', () => {
+ const errorMsg = {
+ fileNotFoundError: new Error('cannot find cgroup file'),
+ };
+
+ const correctCgroupData =
+ 'abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm';
+ const mockedClusterResponse = '{"data":{"cluster.name":"my-cluster"}}';
+ const mockedAwsAuth = 'my-auth';
+ const k8s_token = 'Bearer 31ada4fd-adec-460c-809a-9e56ceb75269';
+ let readStub, fileStub, getCredStub;
+
+ beforeEach(() => {
+ nock.disableNetConnect();
+ nock.cleanAll();
+ });
+
+ afterEach(() => {
+ sinon.restore();
+ nock.enableNetConnect();
+ });
+
+ describe('on successful request', () => {
+ it('should return an aws_eks_instance_resource', async () => {
+ fileStub = sinon
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
+ .resolves();
+ readStub = sinon
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
+ .resolves(correctCgroupData);
+ getCredStub = sinon
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
+ .resolves(k8s_token);
+ const scope = nock('https://' + K8S_SVC_URL)
+ .persist()
+ .get(AUTH_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(200, () => mockedAwsAuth)
+ .get(CW_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(200, () => mockedClusterResponse);
+
+ const resource = awsEksDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ scope.done();
+
+ sinon.assert.calledOnce(fileStub);
+ sinon.assert.calledTwice(readStub);
+ sinon.assert.calledTwice(getCredStub);
+
+ assert.ok(resource);
+ assertK8sResource(resource, {
+ clusterName: 'my-cluster',
+ });
+ assertContainerResource(resource, {
+ id: 'bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm',
+ });
+ });
+
+ it('should return a resource with clusterName attribute without cgroup file', async () => {
+ fileStub = sinon
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
+ .resolves();
+ readStub = sinon
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
+ .onSecondCall()
+ .rejects(errorMsg.fileNotFoundError);
+ getCredStub = sinon
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
+ .resolves(k8s_token);
+ const scope = nock('https://' + K8S_SVC_URL)
+ .persist()
+ .get(AUTH_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(200, () => mockedAwsAuth)
+ .get(CW_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(200, () => mockedClusterResponse);
+
+ const resource = awsEksDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ scope.done();
+
+ assert.ok(resource);
+ assertK8sResource(resource, {
+ clusterName: 'my-cluster',
+ });
+ });
+
+ it('should return a resource with container ID attribute without a clusterName', async () => {
+ fileStub = sinon
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
+ .resolves();
+ readStub = sinon
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
+ .resolves(correctCgroupData);
+ getCredStub = sinon
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
+ .resolves(k8s_token);
+ const scope = nock('https://' + K8S_SVC_URL)
+ .persist()
+ .get(AUTH_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(200, () => mockedAwsAuth)
+ .get(CW_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(200, () => '');
+
+ const resource = awsEksDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ scope.done();
+
+ assert.ok(resource);
+ assertContainerResource(resource, {
+ id: 'bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm',
+ });
+ });
+
+ it('should return a resource with clusterName attribute when cgroup file does not contain valid Container ID', async () => {
+ fileStub = sinon
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
+ .resolves();
+ readStub = sinon
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
+ .onSecondCall()
+ .resolves('');
+ getCredStub = sinon
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
+ .resolves(k8s_token);
+ const scope = nock('https://' + K8S_SVC_URL)
+ .persist()
+ .get(AUTH_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(200, () => mockedAwsAuth)
+ .get(CW_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(200, () => mockedClusterResponse);
+
+ const resource = awsEksDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ scope.done();
+
+ assert.ok(resource);
+ assert.ok(resource);
+ assertK8sResource(resource, {
+ clusterName: 'my-cluster',
+ });
+ });
+
+ it('should return an empty resource when not running on Eks', async () => {
+ fileStub = sinon
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
+ .resolves('');
+ readStub = sinon
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
+ .resolves(correctCgroupData);
+ getCredStub = sinon
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
+ .resolves(k8s_token);
+ const scope = nock('https://' + K8S_SVC_URL)
+ .persist()
+ .get(AUTH_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(200, () => '');
+
+ const resource = awsEksDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ scope.done();
+
+ assert.ok(resource);
+ assertEmptyResource(resource);
+ });
+
+ it('should return an empty resource when k8s token file does not exist', async () => {
+ const errorMsg = {
+ fileNotFoundError: new Error('cannot file k8s token file'),
+ };
+ fileStub = sinon
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
+ .rejects(errorMsg.fileNotFoundError);
+
+ const resource: Resource = await awsEksDetectorSync.detect();
+
+ assert.ok(resource);
+ assertEmptyResource(resource);
+ });
+
+ it('should return an empty resource when containerId and clusterName are invalid', async () => {
+ fileStub = sinon
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
+ .resolves('');
+ readStub = sinon
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
+ .onSecondCall()
+ .rejects(errorMsg.fileNotFoundError);
+
+ getCredStub = sinon
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
+ .resolves(k8s_token);
+ const scope = nock('https://' + K8S_SVC_URL)
+ .persist()
+ .get(AUTH_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(200, () => mockedAwsAuth)
+ .get(CW_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(200, () => '');
+
+ const resource = awsEksDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ scope.isDone();
+
+ assert.ok(resource);
+ assertEmptyResource(resource);
+ });
+ });
+
+ describe('on unsuccessful request', () => {
+ it('should return an empty resource when timed out', async () => {
+ fileStub = sinon
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
+ .resolves();
+ readStub = sinon
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
+ .resolves(correctCgroupData);
+ getCredStub = sinon
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
+ .resolves(k8s_token);
+ const scope = nock('https://' + K8S_SVC_URL)
+ .persist()
+ .get(AUTH_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .delayConnection(2500)
+ .reply(200, () => mockedAwsAuth);
+
+ const resource = awsEksDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ scope.done();
+
+ assert.ok(resource);
+ assertEmptyResource(resource);
+ }).timeout(awsEksDetectorSync.TIMEOUT_MS + 100);
+
+ it('should return an empty resource when receiving error response code', async () => {
+ fileStub = sinon
+ .stub(AwsEksDetectorSync, 'fileAccessAsync' as any)
+ .resolves();
+ readStub = sinon
+ .stub(AwsEksDetectorSync, 'readFileAsync' as any)
+ .resolves(correctCgroupData);
+ getCredStub = sinon
+ .stub(awsEksDetectorSync, '_getK8sCredHeader' as any)
+ .resolves(k8s_token);
+ const scope = nock('https://' + K8S_SVC_URL)
+ .persist()
+ .get(AUTH_CONFIGMAP_PATH)
+ .matchHeader('Authorization', k8s_token)
+ .reply(404, () => new Error());
+
+ const resource = awsEksDetectorSync.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ scope.done();
+
+ assert.ok(resource);
+ assertEmptyResource(resource);
+ });
+ });
+});
diff --git a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsLambdaDetectorSync.test.ts b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsLambdaDetectorSync.test.ts
new file mode 100644
index 0000000000..e849dc436f
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsLambdaDetectorSync.test.ts
@@ -0,0 +1,64 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import * as assert from 'assert';
+import {
+ assertCloudResource,
+ assertEmptyResource,
+} from '@opentelemetry/contrib-test-utils';
+
+import { awsLambdaDetectorSync } from '../../src';
+
+describe('awsLambdaDetectorSync', () => {
+ let oldEnv: NodeJS.ProcessEnv;
+
+ beforeEach(() => {
+ oldEnv = { ...process.env };
+ });
+
+ afterEach(() => {
+ process.env = oldEnv;
+ });
+
+ describe('on lambda', () => {
+ it('fills resource', async () => {
+ process.env.AWS_LAMBDA_FUNCTION_NAME = 'name';
+ process.env.AWS_LAMBDA_FUNCTION_VERSION = 'v1';
+ process.env.AWS_REGION = 'us-east-1';
+
+ const resource = awsLambdaDetectorSync.detect();
+
+ assertCloudResource(resource, {
+ provider: 'aws',
+ region: 'us-east-1',
+ });
+
+ assert.strictEqual(resource.attributes['faas.name'], 'name');
+ assert.strictEqual(resource.attributes['faas.version'], 'v1');
+ });
+ });
+
+ describe('not on lambda', () => {
+ it('returns empty resource', async () => {
+ process.env.AWS_LAMBDA_FUNCTION_VERSION = 'v1';
+ process.env.AWS_REGION = 'us-east-1';
+
+ const resource = awsLambdaDetectorSync.detect();
+
+ assertEmptyResource(resource);
+ });
+ });
+});
diff --git a/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsSuppressTracing.test.ts b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsSuppressTracing.test.ts
new file mode 100644
index 0000000000..e5b9d39b5a
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-aws/test/detectors/AwsSuppressTracing.test.ts
@@ -0,0 +1,91 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import * as assert from 'assert';
+
+import { FsInstrumentation } from '@opentelemetry/instrumentation-fs';
+import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
+import {
+ InMemorySpanExporter,
+ SimpleSpanProcessor,
+} from '@opentelemetry/sdk-trace-base';
+import { NodeSDK } from '@opentelemetry/sdk-node';
+import { DetectorSync } from '@opentelemetry/resources';
+
+describe('[Integration] Internal tracing', () => {
+ it('should not start spans for any network or fs operation in any detector', async () => {
+ // For ECS detector we setup a mock URL to fetch metadata
+ process.env.ECS_CONTAINER_METADATA_URI_V4 =
+ 'http://169.254.169.254/metadata';
+
+ const memoryExporter = new InMemorySpanExporter();
+ const spanProcessor = new SimpleSpanProcessor(memoryExporter);
+ const sdk = new NodeSDK({
+ instrumentations: [new FsInstrumentation(), new HttpInstrumentation()],
+ spanProcessors: [spanProcessor],
+ });
+ sdk.start();
+
+ // NOTE: detectors implementing the `DetectorSync` interface and starting
+ // HTTP requests within the `detect` method will produce Noop Spans since
+ // the SDK resolves the trace provider after resource detectors are triggered.
+ // Ref: https://github.com/open-telemetry/opentelemetry-js/blob/38f6689480d28dcbdafcb7b5ba4b14025328ffda/experimental/packages/opentelemetry-sdk-node/src/sdk.ts#L210-L240
+ //
+ // So having the detector in the config would result in no spans for Azure requests
+ // being exported which is what we want. Although we may think we're safe of sending
+ // internal tracing any change that delays these request will result in internal
+ // tracing being exported. We do the detection outside the SDK constructor to have such
+ // scenario.
+ const {
+ awsBeanstalkDetectorSync,
+ awsEc2DetectorSync,
+ awsEcsDetectorSync,
+ awsEksDetectorSync,
+ awsLambdaDetectorSync,
+ } = require('../../build/src');
+
+ // NOTE: the require process makes use of the fs API so spans are being exported.
+ // We reset the exporter to have a clean state for assertions
+ await spanProcessor.forceFlush();
+ memoryExporter.reset();
+
+ const detectors = [
+ awsBeanstalkDetectorSync,
+ awsEc2DetectorSync,
+ awsEcsDetectorSync,
+ awsEksDetectorSync,
+ awsLambdaDetectorSync,
+ ] as DetectorSync[];
+
+ for (const d of detectors) {
+ const r = d.detect();
+ await r.waitForAsyncAttributes?.();
+ }
+
+ // Wait for the next loop to let the span close properly
+ await new Promise(r => setTimeout(r, 0));
+ const spans = memoryExporter.getFinishedSpans();
+
+ assert.equal(
+ spans.length,
+ 0,
+ 'no spans exported from any AWS resource detector'
+ );
+
+ await sdk.shutdown();
+ delete process.env.ECS_CONTAINER_METADATA_URI_V4;
+ }).timeout(10000);
+});
diff --git a/detectors/node/opentelemetry-resource-detector-azure/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-azure/CHANGELOG.md
index a5c34216ff..d118bae3d7 100644
--- a/detectors/node/opentelemetry-resource-detector-azure/CHANGELOG.md
+++ b/detectors/node/opentelemetry-resource-detector-azure/CHANGELOG.md
@@ -1,5 +1,30 @@
# Changelog
+## [0.2.12](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-azure-v0.2.11...resource-detector-azure-v0.2.12) (2024-10-25)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.2.11](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-azure-v0.2.10...resource-detector-azure-v0.2.11) (2024-09-02)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.2.10](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-azure-v0.2.9...resource-detector-azure-v0.2.10) (2024-08-27)
+
+
+### Bug Fixes
+
+* **detector-azure:** suppress tracing for AzureVmDetector ([#2371](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2371)) ([5952127](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/595212739068c16c7ab9e407340983a0784efde6))
+
## [0.2.9](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-azure-v0.2.8...resource-detector-azure-v0.2.9) (2024-06-10)
diff --git a/detectors/node/opentelemetry-resource-detector-azure/package.json b/detectors/node/opentelemetry-resource-detector-azure/package.json
index 6d3a7df76c..5badf125ec 100644
--- a/detectors/node/opentelemetry-resource-detector-azure/package.json
+++ b/detectors/node/opentelemetry-resource-detector-azure/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/resource-detector-azure",
- "version": "0.2.9",
+ "version": "0.2.12",
"description": "OpenTelemetry SDK resource detector for Azure",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,10 +10,9 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/resource-detector-azure --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"watch": "tsc -w"
},
@@ -32,23 +31,23 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.0.0"
},
"dependencies": {
+ "@opentelemetry/core": "^1.25.1",
"@opentelemetry/resources": "^1.10.1",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/detectors/node/opentelemetry-resource-detector-azure#readme"
}
diff --git a/detectors/node/opentelemetry-resource-detector-azure/src/detectors/AzureVmDetector.ts b/detectors/node/opentelemetry-resource-detector-azure/src/detectors/AzureVmDetector.ts
index 1dfc6da705..c644e7a4b4 100644
--- a/detectors/node/opentelemetry-resource-detector-azure/src/detectors/AzureVmDetector.ts
+++ b/detectors/node/opentelemetry-resource-detector-azure/src/detectors/AzureVmDetector.ts
@@ -15,6 +15,9 @@
*/
import * as http from 'http';
+
+import { context } from '@opentelemetry/api';
+import { suppressTracing } from '@opentelemetry/core';
import {
DetectorSync,
IResource,
@@ -47,7 +50,10 @@ import {
*/
class AzureVmResourceDetector implements DetectorSync {
detect(): IResource {
- return new Resource({}, this.getAzureVmMetadata());
+ const attributes = context.with(suppressTracing(context.active()), () =>
+ this.getAzureVmMetadata()
+ );
+ return new Resource({}, attributes);
}
async getAzureVmMetadata(): Promise {
diff --git a/detectors/node/opentelemetry-resource-detector-azure/src/detectors/index.ts b/detectors/node/opentelemetry-resource-detector-azure/src/detectors/index.ts
index 6c54b185fb..0470e61782 100644
--- a/detectors/node/opentelemetry-resource-detector-azure/src/detectors/index.ts
+++ b/detectors/node/opentelemetry-resource-detector-azure/src/detectors/index.ts
@@ -14,6 +14,6 @@
* limitations under the License.
*/
-export * from './AzureAppServiceDetector';
-export * from './AzureFunctionsDetector';
-export * from './AzureVmDetector';
+export { azureAppServiceDetector } from './AzureAppServiceDetector';
+export { azureFunctionsDetector } from './AzureFunctionsDetector';
+export { azureVmDetector } from './AzureVmDetector';
diff --git a/detectors/node/opentelemetry-resource-detector-azure/src/index.ts b/detectors/node/opentelemetry-resource-detector-azure/src/index.ts
index 0acba8788c..c81d93e0a2 100644
--- a/detectors/node/opentelemetry-resource-detector-azure/src/index.ts
+++ b/detectors/node/opentelemetry-resource-detector-azure/src/index.ts
@@ -14,4 +14,8 @@
* limitations under the License.
*/
-export * from './detectors';
+export {
+ azureAppServiceDetector,
+ azureFunctionsDetector,
+ azureVmDetector,
+} from './detectors';
diff --git a/detectors/node/opentelemetry-resource-detector-azure/test/detectors/AzureVmDetector.test.ts b/detectors/node/opentelemetry-resource-detector-azure/test/detectors/AzureVmDetector.test.ts
index a795adb27f..edf413faa3 100644
--- a/detectors/node/opentelemetry-resource-detector-azure/test/detectors/AzureVmDetector.test.ts
+++ b/detectors/node/opentelemetry-resource-detector-azure/test/detectors/AzureVmDetector.test.ts
@@ -372,7 +372,7 @@ const AZURE_VM_METADATA_HOST = 'http://169.254.169.254';
const AZURE_VM_METADATA_PATH =
'/metadata/instance/compute?api-version=2021-12-13&format=json';
-describe('AzureAppServiceDetector', () => {
+describe('AzureVmServiceDetector', () => {
beforeEach(() => {
nock.disableNetConnect();
nock.cleanAll();
diff --git a/detectors/node/opentelemetry-resource-detector-azure/test/detectors/AzureVmDetectorIntegration.test.ts b/detectors/node/opentelemetry-resource-detector-azure/test/detectors/AzureVmDetectorIntegration.test.ts
new file mode 100644
index 0000000000..2cdf2cafc1
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-azure/test/detectors/AzureVmDetectorIntegration.test.ts
@@ -0,0 +1,60 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import * as assert from 'assert';
+
+import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
+import {
+ InMemorySpanExporter,
+ SimpleSpanProcessor,
+} from '@opentelemetry/sdk-trace-base';
+import { NodeSDK } from '@opentelemetry/sdk-node';
+
+describe('[Integration] AzureVmServiceDetector', () => {
+ it('should not start spans for detector requests', async () => {
+ const memoryExporter = new InMemorySpanExporter();
+ const sdk = new NodeSDK({
+ instrumentations: [new HttpInstrumentation()],
+ spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
+ });
+
+ sdk.start();
+
+ // NOTE: detectors implementing the `DetectorSync` interface and starting
+ // HTTP requests within the `detect` method will produce Noop Spans since
+ // the SDK resolves the trace provider after resource detectors are triggered.
+ // Ref: https://github.com/open-telemetry/opentelemetry-js/blob/38f6689480d28dcbdafcb7b5ba4b14025328ffda/experimental/packages/opentelemetry-sdk-node/src/sdk.ts#L210-L240
+ //
+ // So having the detector in the config would result in no spans for Azure requests
+ // being exported which is what we want. Although we may think we're safe of sending
+ // internal tracing any change that delays these request will result in internal
+ // tracing being exported. We do the detection outside the SDK constructor to have such
+ // scenario.
+ const {
+ azureVmDetector,
+ } = require('../../build/src/detectors/AzureVmDetector');
+ const resource = azureVmDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ // Wait for the next loop to let the span close properly
+ await new Promise(r => setTimeout(r, 0));
+ const spans = memoryExporter.getFinishedSpans();
+
+ assert.equal(spans.length, 0, 'no spans exported for AzureVmDetector');
+
+ await sdk.shutdown();
+ });
+});
diff --git a/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md
index 6ba1ceea56..2813822906 100644
--- a/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md
+++ b/detectors/node/opentelemetry-resource-detector-container/CHANGELOG.md
@@ -1,5 +1,66 @@
# Changelog
+## [0.5.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.4.4...resource-detector-container-v0.5.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.4.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.4.3...resource-detector-container-v0.4.4) (2024-10-16)
+
+
+### Bug Fixes
+
+* **detector-container:** properly detect container ID when using Podman ([#2448](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2448)) ([ad560df](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/ad560dfc5f662d418a74b0b197b3f48e4ae002d0))
+
+## [0.4.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.4.2...resource-detector-container-v0.4.3) (2024-10-10)
+
+
+### Bug Fixes
+
+* add missing @opentelemetry/core dependency ([#2473](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2473)) ([4d66431](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/4d66431a2ad480720bf6c33663a419ec1404cd33))
+
+## [0.4.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.4.1...resource-detector-container-v0.4.2) (2024-10-08)
+
+
+### Bug Fixes
+
+* **detector-container:** suppress internal tracing ([#2430](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2430)) ([80c2f1a](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/80c2f1af6139e43522a944ab496fed68ef912fb2))
+
+## [0.4.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.4.0...resource-detector-container-v0.4.1) (2024-09-02)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.4.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.3.11...resource-detector-container-v0.4.0) (2024-08-27)
+
+
+### ⚠ BREAKING CHANGES
+
+* **detector-container:** change implementation to DetectorSync interface ([#2334](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2334))
+
+### Features
+
+* added prefix to look for containerid ([#2341](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2341)) ([1991aed](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/1991aed1e23a8def91d067e0ffaf75c2eee8c1b8))
+* **detector-container:** change implementation to DetectorSync interface ([#2334](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2334)) ([18a5731](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/18a5731a409551103bd8c9ed7bd02f2f59fe5536))
+
+
+### Bug Fixes
+
+* **detectors:** reduce diag level on detectors failing to detect ([#2382](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2382)) ([d7a5bd4](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/d7a5bd45838f34bab45f4ba235093fa686032622))
+
## [0.3.11](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-container-v0.3.10...resource-detector-container-v0.3.11) (2024-06-10)
diff --git a/detectors/node/opentelemetry-resource-detector-container/package.json b/detectors/node/opentelemetry-resource-detector-container/package.json
index 06fb2824bb..d27c5b659e 100644
--- a/detectors/node/opentelemetry-resource-detector-container/package.json
+++ b/detectors/node/opentelemetry-resource-detector-container/package.json
@@ -1,20 +1,18 @@
{
"name": "@opentelemetry/resource-detector-container",
- "version": "0.3.11",
+ "version": "0.5.0",
"description": "Opentelemetry resource detector to get container resource attributes",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
"clean": "rimraf build/*",
- "codecov": "nyc report --reporter=json && codecov -f coverage/*.json -p ../../../",
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/resource-detector-container --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"version:update": "node ../../../scripts/version-update.js",
"watch": "tsc -w"
@@ -34,25 +32,25 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-fs": "^0.16.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"eslint-plugin-header": "^3.1.1",
- "mocha": "7.2.0",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"peerDependencies": {
"@opentelemetry/api": "^1.0.0"
},
"dependencies": {
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/core": "^1.26.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/detectors/node/opentelemetry-resource-detector-container#readme"
}
diff --git a/detectors/node/opentelemetry-resource-detector-container/src/detectors/ContainerDetector.ts b/detectors/node/opentelemetry-resource-detector-container/src/detectors/ContainerDetector.ts
index 78bffb7572..239228e7df 100644
--- a/detectors/node/opentelemetry-resource-detector-container/src/detectors/ContainerDetector.ts
+++ b/detectors/node/opentelemetry-resource-detector-container/src/detectors/ContainerDetector.ts
@@ -14,8 +14,10 @@
* limitations under the License.
*/
import {
- Detector,
+ DetectorSync,
+ IResource,
Resource,
+ ResourceAttributes,
ResourceDetectionConfig,
} from '@opentelemetry/resources';
@@ -23,63 +25,66 @@ import { SEMRESATTRS_CONTAINER_ID } from '@opentelemetry/semantic-conventions';
import * as fs from 'fs';
import * as util from 'util';
-import { diag } from '@opentelemetry/api';
+import { context, diag } from '@opentelemetry/api';
+import { suppressTracing } from '@opentelemetry/core';
+import { extractContainerIdFromLine } from './utils';
-export class ContainerDetector implements Detector {
+export class ContainerDetector implements DetectorSync {
readonly CONTAINER_ID_LENGTH = 64;
readonly DEFAULT_CGROUP_V1_PATH = '/proc/self/cgroup';
readonly DEFAULT_CGROUP_V2_PATH = '/proc/self/mountinfo';
readonly UTF8_UNICODE = 'utf8';
readonly HOSTNAME = 'hostname';
+ readonly MARKING_PREFIX = ['containers', 'overlay-containers'];
+ readonly CRIO = 'crio-';
+ readonly CRI_CONTAINERD = 'cri-containerd-';
+ readonly DOCKER = 'docker-';
+ readonly HEX_STRING_REGEX: RegExp = /^[a-f0-9]+$/i;
private static readFileAsync = util.promisify(fs.readFile);
- async detect(_config?: ResourceDetectionConfig): Promise {
+ detect(_config?: ResourceDetectionConfig): IResource {
+ const attributes = context.with(suppressTracing(context.active()), () =>
+ this._getAttributes()
+ );
+ return new Resource({}, attributes);
+ }
+
+ /**
+ * Attempts to obtain the container ID from the file system. If the
+ * file read is successful it returns a promise containing a {@link ResourceAttributes}
+ * object with the container ID. Returns a promise containing an
+ * empty {@link ResourceAttributes} if the paths do not exist or fail
+ * to read.
+ */
+ async _getAttributes(): Promise {
try {
const containerId = await this._getContainerId();
return !containerId
- ? Resource.empty()
- : new Resource({
+ ? {}
+ : {
[SEMRESATTRS_CONTAINER_ID]: containerId,
- });
+ };
} catch (e) {
- diag.info(
+ diag.debug(
'Container Detector did not identify running inside a supported container, no container attributes will be added to resource: ',
e
);
- return Resource.empty();
+ return {};
}
}
- private async _getContainerIdV1() {
+ private async _getContainerIdV1(): Promise {
const rawData = await ContainerDetector.readFileAsync(
this.DEFAULT_CGROUP_V1_PATH,
this.UTF8_UNICODE
);
const splitData = rawData.trim().split('\n');
- for (const line of splitData) {
- const lastSlashIdx = line.lastIndexOf('/');
- if (lastSlashIdx === -1) {
- continue;
- }
- const lastSection = line.substring(lastSlashIdx + 1);
- const colonIdx = lastSection.lastIndexOf(':');
- if (colonIdx !== -1) {
- // since containerd v1.5.0+, containerId is divided by the last colon when the cgroupDriver is systemd:
- // https://github.com/containerd/containerd/blob/release/1.5/pkg/cri/server/helpers_linux.go#L64
- return lastSection.substring(colonIdx + 1);
- } else {
- let startIdx = lastSection.lastIndexOf('-');
- let endIdx = lastSection.lastIndexOf('.');
- startIdx = startIdx === -1 ? 0 : startIdx + 1;
- if (endIdx === -1) {
- endIdx = lastSection.length;
- }
- if (startIdx > endIdx) {
- continue;
- }
- return lastSection.substring(startIdx, endIdx);
+ for (const line of splitData) {
+ const containerID = extractContainerIdFromLine(line);
+ if (containerID) {
+ return containerID;
}
}
return undefined;
@@ -94,10 +99,19 @@ export class ContainerDetector implements Detector {
.trim()
.split('\n')
.find(s => s.includes(this.HOSTNAME));
- const containerIdStr = str
- ?.split('/')
- .find(s => s.length === this.CONTAINER_ID_LENGTH);
- return containerIdStr || '';
+
+ if (!str) return '';
+
+ const strArray = str?.split('/') ?? [];
+ for (let i = 0; i < strArray.length - 1; i++) {
+ if (
+ this.MARKING_PREFIX.includes(strArray[i]) &&
+ strArray[i + 1]?.length === this.CONTAINER_ID_LENGTH
+ ) {
+ return strArray[i + 1];
+ }
+ }
+ return '';
}
/*
@@ -107,19 +121,24 @@ export class ContainerDetector implements Detector {
*/
private async _getContainerId(): Promise {
try {
- return (
- (await this._getContainerIdV1()) || (await this._getContainerIdV2())
- );
+ const containerIdV1 = await this._getContainerIdV1();
+ if (containerIdV1) {
+ return containerIdV1; // If containerIdV1 is a non-empty string, return it.
+ }
+ const containerIdV2 = await this._getContainerIdV2();
+ if (containerIdV2) {
+ return containerIdV2; // If containerIdV2 is a non-empty string, return it.
+ }
} catch (e) {
if (e instanceof Error) {
const errorMessage = e.message;
- diag.info(
+ diag.debug(
'Container Detector failed to read the Container ID: ',
errorMessage
);
}
}
- return undefined;
+ return undefined; // Explicitly return undefined if neither ID is found.
}
}
diff --git a/detectors/node/opentelemetry-resource-detector-container/src/detectors/utils.ts b/detectors/node/opentelemetry-resource-detector-container/src/detectors/utils.ts
new file mode 100644
index 0000000000..c43d19e98c
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-container/src/detectors/utils.ts
@@ -0,0 +1,64 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+export const CONTAINER_ID_LENGTH = 64;
+export const DEFAULT_CGROUP_V1_PATH = '/proc/self/cgroup';
+export const DEFAULT_CGROUP_V2_PATH = '/proc/self/mountinfo';
+export const UTF8_UNICODE = 'utf8';
+export const HOSTNAME = 'hostname';
+export const MARKING_PREFIX = ['containers', 'overlay-containers'];
+export const CRIO = 'crio-';
+export const CRI_CONTAINERD = 'cri-containerd-';
+export const DOCKER = 'docker-';
+export const HEX_STRING_REGEX = /^[a-f0-9]+$/i;
+
+export function truncatePrefix(lastSection: string, prefix: string): string {
+ return lastSection.substring(prefix.length);
+}
+
+export function extractContainerIdFromLine(line: string): string | undefined {
+ if (!line) {
+ return undefined;
+ }
+ const sections = line.split('/');
+ if (sections.length <= 1) {
+ return undefined;
+ }
+ let lastSection = sections[sections.length - 1];
+
+ // Handle containerd v1.5.0+ format with systemd cgroup driver
+ const colonIndex = lastSection.lastIndexOf(':');
+ if (colonIndex !== -1) {
+ lastSection = lastSection.substring(colonIndex + 1);
+ }
+
+ // Truncate known prefixes from the last section
+ if (lastSection.startsWith(CRIO)) {
+ lastSection = truncatePrefix(lastSection, CRIO);
+ } else if (lastSection.startsWith(DOCKER)) {
+ lastSection = truncatePrefix(lastSection, DOCKER);
+ } else if (lastSection.startsWith(CRI_CONTAINERD)) {
+ lastSection = truncatePrefix(lastSection, CRI_CONTAINERD);
+ }
+ // Remove anything after the first period
+ if (lastSection.includes('.')) {
+ lastSection = lastSection.split('.')[0];
+ }
+ // Check if the remaining string is a valid hex string
+ if (HEX_STRING_REGEX.test(lastSection)) {
+ return lastSection;
+ }
+ return undefined;
+}
diff --git a/detectors/node/opentelemetry-resource-detector-container/test/ContainerDetector.test.ts b/detectors/node/opentelemetry-resource-detector-container/test/ContainerDetector.test.ts
index 71fbf1c5de..cb6a7e0133 100644
--- a/detectors/node/opentelemetry-resource-detector-container/test/ContainerDetector.test.ts
+++ b/detectors/node/opentelemetry-resource-detector-container/test/ContainerDetector.test.ts
@@ -16,7 +16,7 @@
import * as sinon from 'sinon';
import * as assert from 'assert';
-import { Resource } from '@opentelemetry/resources';
+
import { containerDetector } from '../src';
import {
assertContainerResource,
@@ -26,12 +26,14 @@ import {
import { ContainerDetector } from '../src';
describe('ContainerDetector', () => {
- let readStub;
+ let readStub: sinon.SinonStub;
const correctCgroupV1Data =
- '12:pids:/kubepods.slice/bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm';
- const correctCgroupV2Data = `tmhdefghijklmnopqrstuvwxyzafgrefghiugkmnopqrstuvwxyzabcdefghijkl/hostname
+ '12:pids:/kubepods.slice/4e6f77206973207468652074696d6520666f7220616c6c20676f6f64206d656e20746f20636f6d6520746f2074686520616964';
+ const correctCgroupV2Data = `containers/tmhdefghijklmnopqrstuvwxyzafgrefghiugkmnopqrstuvwxyzabcdefghijkl/hostname
fhkjdshgfhsdfjhdsfkjhfkdshkjhfd/host
sahfhfjkhjhfhjdhfjkdhfkjdhfjkhhdsjfhdfhjdhfkj/somethingelse`;
+ const correctCgroupV2PodmanData =
+ '4245 4237 0:94 /containers/overlay-containers/4e9dc37d00ebd2daea029d84bb37764ce12d746a6f3a33c5969cee15c4fc4418/userdata/hostname /etc/hostname rw - tmpfs tmpfs rw';
const wrongCgroupV2Data =
'bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm/wrongkeyword';
@@ -46,7 +48,8 @@ describe('ContainerDetector', () => {
.stub(ContainerDetector, 'readFileAsync' as any)
.resolves(undefined);
- const resource: Resource = await containerDetector.detect();
+ const resource = containerDetector.detect();
+ await resource.waitForAsyncAttributes?.();
assert.deepStrictEqual(resource.attributes, {});
assert.ok(resource);
@@ -57,13 +60,14 @@ describe('ContainerDetector', () => {
.stub(ContainerDetector, 'readFileAsync' as any)
.resolves(correctCgroupV1Data);
- const resource: Resource = await containerDetector.detect();
+ const resource = containerDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(readStub);
assert.ok(resource);
assertContainerResource(resource, {
- id: 'bcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijklm',
+ id: '4e6f77206973207468652074696d6520666f7220616c6c20676f6f64206d656e20746f20636f6d6520746f2074686520616964',
});
});
@@ -73,7 +77,8 @@ describe('ContainerDetector', () => {
readStub.onFirstCall().resolves('');
readStub.onSecondCall().resolves(correctCgroupV2Data);
- const resource: Resource = await containerDetector.detect();
+ const resource = containerDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledTwice(readStub);
assert.ok(resource);
@@ -82,13 +87,30 @@ describe('ContainerDetector', () => {
});
});
+ it('should return a resource with container ID with a valid container ID present for v2 (Podman)', async () => {
+ readStub = sinon.stub(ContainerDetector, 'readFileAsync' as any);
+
+ readStub.onFirstCall().resolves('');
+ readStub.onSecondCall().resolves(correctCgroupV2PodmanData);
+
+ const resource = containerDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+ sinon.assert.calledTwice(readStub);
+
+ assert.ok(resource);
+ assertContainerResource(resource, {
+ id: '4e9dc37d00ebd2daea029d84bb37764ce12d746a6f3a33c5969cee15c4fc4418',
+ });
+ });
+
it('should return a empty resource with failed hostname check for v2', async () => {
readStub = sinon.stub(ContainerDetector, 'readFileAsync' as any);
readStub.onFirstCall().resolves('');
readStub.onSecondCall().resolves(wrongCgroupV2Data);
- const resource: Resource = await containerDetector.detect();
+ const resource = containerDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledTwice(readStub);
assert.ok(resource);
@@ -109,7 +131,8 @@ describe('ContainerDetector', () => {
.stub(ContainerDetector, 'readFileAsync' as any)
.resolves('');
- const resource: Resource = await containerDetector.detect();
+ const resource = containerDetector.detect();
+ await resource.waitForAsyncAttributes?.();
assert.deepStrictEqual(resource.attributes, {});
sinon.assert.calledTwice(readStub);
@@ -125,7 +148,8 @@ describe('ContainerDetector', () => {
.stub(ContainerDetector, 'readFileAsync' as any)
.rejects(errorMsg.fileNotFoundError);
- const resource: Resource = await containerDetector.detect();
+ const resource = containerDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(readStub);
assertEmptyResource(resource);
@@ -142,7 +166,8 @@ describe('ContainerDetector', () => {
.stub(ContainerDetector, 'readFileAsync' as any)
.rejects(errorMsg.fileNotFoundError);
- const resource: Resource = await containerDetector.detect();
+ const resource = containerDetector.detect();
+ await resource.waitForAsyncAttributes?.();
sinon.assert.calledOnce(readStub);
assertEmptyResource(resource);
});
diff --git a/detectors/node/opentelemetry-resource-detector-container/test/ContainerDetectorIntegration.test.ts b/detectors/node/opentelemetry-resource-detector-container/test/ContainerDetectorIntegration.test.ts
new file mode 100644
index 0000000000..8c469962a1
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-container/test/ContainerDetectorIntegration.test.ts
@@ -0,0 +1,72 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import * as assert from 'assert';
+
+import { FsInstrumentation } from '@opentelemetry/instrumentation-fs';
+import {
+ InMemorySpanExporter,
+ SimpleSpanProcessor,
+} from '@opentelemetry/sdk-trace-base';
+import { NodeSDK } from '@opentelemetry/sdk-node';
+import { IResource } from '@opentelemetry/resources';
+
+describe('[Integration] ContainerDetector', () => {
+ it('should not start spans for detector reads to filesystem', async () => {
+ const memoryExporter = new InMemorySpanExporter();
+ const spanProcessor = new SimpleSpanProcessor(memoryExporter);
+ const sdk = new NodeSDK({
+ instrumentations: [new FsInstrumentation()],
+ spanProcessors: [spanProcessor],
+ });
+
+ sdk.start();
+
+ // NOTE: detectors implementing the `DetectorSync` interface and starting
+ // HTTP requests within the `detect` method will produce Noop Spans since
+ // the SDK resolves the trace provider after resource detectors are triggered.
+ // Ref: https://github.com/open-telemetry/opentelemetry-js/blob/38f6689480d28dcbdafcb7b5ba4b14025328ffda/experimental/packages/opentelemetry-sdk-node/src/sdk.ts#L210-L240
+ //
+ // So having the detector in the config would result in no spans for Azure requests
+ // being exported which is what we want. Although we may think we're safe of sending
+ // internal tracing any change that delays these request will result in internal
+ // tracing being exported. We do the detection outside the SDK constructor to have such
+ // scenario.
+ const {
+ containerDetector,
+ } = require('../build/src/detectors/ContainerDetector');
+
+ // NOTE: the require process makes use of the fs API so spans are being exported.
+ // We need to check no new spans are exported when `detect` is called.
+ await spanProcessor.forceFlush();
+ const numSpansAfterRequire = memoryExporter.getFinishedSpans().length;
+
+ const resource = containerDetector.detect() as IResource;
+ await resource.waitForAsyncAttributes?.();
+
+ // Wait for the next loop to let the span close properly
+ await new Promise(r => setTimeout(r, 0));
+ const spans = memoryExporter.getFinishedSpans();
+
+ assert.equal(
+ spans.length,
+ numSpansAfterRequire,
+ 'no spans exported for ContainerDetector'
+ );
+
+ await sdk.shutdown();
+ });
+});
diff --git a/detectors/node/opentelemetry-resource-detector-container/test/utils.test.ts b/detectors/node/opentelemetry-resource-detector-container/test/utils.test.ts
new file mode 100644
index 0000000000..193feb6fa3
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-container/test/utils.test.ts
@@ -0,0 +1,91 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import * as assert from 'assert';
+import { extractContainerIdFromLine } from '../src/detectors/utils';
+
+describe(' extractContainerId from line tests', () => {
+ it('should extract container ID from crio-prefixed line', () => {
+ const line =
+ '11:devices:/kubepods.slice/kubepods-besteffort.slice/kubepods-besteffort-pod5c5979ec_6b2b_11e9_a923_42010a800002.slice/crio-1234567890abcdef.scope';
+ const expected = '1234567890abcdef';
+ assert.strictEqual(extractContainerIdFromLine(line), expected);
+ });
+
+ it('should extract container ID from docker-prefixed line', () => {
+ const line =
+ '11:devices:/docker/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef';
+ const expected =
+ '1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef';
+ assert.strictEqual(extractContainerIdFromLine(line), expected);
+ });
+
+ it('should extract container ID from cri-containerd-prefixed line', () => {
+ const line =
+ '11:devices:/kubepods/burstable/pod2c4b2241-5c01-11e9-8e4e-42010a800002/cri-containerd-1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef';
+ const expected =
+ '1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef';
+ assert.strictEqual(extractContainerIdFromLine(line), expected);
+ });
+
+ it('should handle containerd v1.5.0+ format with systemd cgroup driver', () => {
+ const line =
+ '0::/system.slice/containerd.service/kubepods-burstable-pod2c4b2241-5c01-11e9-8e4e-42010a800002.slice:cri-containerd:1234567890abcdef';
+ const expected = '1234567890abcdef';
+ assert.strictEqual(extractContainerIdFromLine(line), expected);
+ });
+
+ it('should return undefined for invalid container ID', () => {
+ const line =
+ '11:devices:/kubepods.slice/kubepods-besteffort.slice/kubepods-besteffort-pod5c5979ec_6b2b_11e9_a923_42010a800002.slice/invalid-id.scope';
+ assert.strictEqual(extractContainerIdFromLine(line), undefined);
+ });
+
+ it('should return undefined for empty line', () => {
+ const line = '';
+ assert.strictEqual(extractContainerIdFromLine(line), undefined);
+ });
+
+ it('should return undefined for line without container ID', () => {
+ const line = '11:devices:/';
+ assert.strictEqual(extractContainerIdFromLine(line), undefined);
+ });
+
+ // Additional test cases
+ it('should handle line with multiple colons', () => {
+ const line =
+ '0::/system.slice/containerd.service/kubepods-burstable-pod2c4b2241-5c01-11e9-8e4e-42010a800002.slice:cri-containerd-1234567890abcdef.extra';
+ const expected = '1234567890abcdef';
+ assert.strictEqual(extractContainerIdFromLine(line), expected);
+ });
+
+ it('should return containerid for valid hex string with any length', () => {
+ const line =
+ '11:devices:/docker/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcde';
+ assert.strictEqual(
+ extractContainerIdFromLine(line),
+ '1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcde'
+ );
+ });
+
+ it('should extract container ID with additional suffix', () => {
+ const line =
+ '11:devices:/docker/1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef.suffix';
+ const expected =
+ '1234567890abcdef1234567890abcdef1234567890abcdef1234567890abcdef';
+ assert.strictEqual(extractContainerIdFromLine(line), expected);
+ });
+});
diff --git a/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md
index 912b55eea0..07dace55e9 100644
--- a/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md
+++ b/detectors/node/opentelemetry-resource-detector-gcp/CHANGELOG.md
@@ -1,5 +1,30 @@
# Changelog
+## [0.29.13](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-gcp-v0.29.12...resource-detector-gcp-v0.29.13) (2024-10-25)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.29.12](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-gcp-v0.29.11...resource-detector-gcp-v0.29.12) (2024-10-08)
+
+
+### Bug Fixes
+
+* **detector-gcp:** suppress internal tracing ([#2424](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2424)) ([3ee6f09](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/3ee6f09aa8fa026dbe137ab2fb33f204064b1018))
+
+## [0.29.11](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-gcp-v0.29.10...resource-detector-gcp-v0.29.11) (2024-09-02)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
## [0.29.10](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-gcp-v0.29.9...resource-detector-gcp-v0.29.10) (2024-06-06)
diff --git a/detectors/node/opentelemetry-resource-detector-gcp/package.json b/detectors/node/opentelemetry-resource-detector-gcp/package.json
index e172899760..1199a0c8ed 100644
--- a/detectors/node/opentelemetry-resource-detector-gcp/package.json
+++ b/detectors/node/opentelemetry-resource-detector-gcp/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/resource-detector-gcp",
- "version": "0.29.10",
+ "version": "0.29.13",
"description": "OpenTelemetry SDK resource detector for GCP",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,10 +10,9 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/resource-detector-gcp --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"watch": "tsc -w"
},
@@ -39,15 +38,14 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"peerDependencies": {
@@ -55,8 +53,8 @@
},
"dependencies": {
"@opentelemetry/core": "^1.0.0",
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"gcp-metadata": "^6.0.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/detectors/node/opentelemetry-resource-detector-gcp#readme"
diff --git a/detectors/node/opentelemetry-resource-detector-gcp/src/detectors/GcpDetector.ts b/detectors/node/opentelemetry-resource-detector-gcp/src/detectors/GcpDetector.ts
index 142885eaa6..8c4cccc8d9 100644
--- a/detectors/node/opentelemetry-resource-detector-gcp/src/detectors/GcpDetector.ts
+++ b/detectors/node/opentelemetry-resource-detector-gcp/src/detectors/GcpDetector.ts
@@ -15,12 +15,14 @@
*/
import * as gcpMetadata from 'gcp-metadata';
-import { diag } from '@opentelemetry/api';
+import { context, diag } from '@opentelemetry/api';
+import { suppressTracing } from '@opentelemetry/core';
import {
- Detector,
+ DetectorSync,
ResourceDetectionConfig,
Resource,
ResourceAttributes,
+ IResource,
} from '@opentelemetry/resources';
import { getEnv } from '@opentelemetry/core';
import {
@@ -41,19 +43,24 @@ import {
* Cloud Platform and return a {@link Resource} populated with metadata about
* the instance. Returns an empty Resource if detection fails.
*/
-class GcpDetector implements Detector {
+class GcpDetector implements DetectorSync {
+ detect(_config?: ResourceDetectionConfig): IResource {
+ const attributes = context.with(suppressTracing(context.active()), () =>
+ this._getAttributes()
+ );
+ return new Resource({}, attributes);
+ }
+
/**
* Attempts to connect and obtain instance configuration data from the GCP metadata service.
- * If the connection is successful it returns a promise containing a {@link Resource}
- * populated with instance metadata. Returns a promise containing an
- * empty {@link Resource} if the connection or parsing of the metadata fails.
- *
- * @param config The resource detection config
+ * If the connection is successful it returns a promise containing a {@link ResourceAttributes}
+ * object with instance metadata. Returns a promise containing an
+ * empty {@link ResourceAttributes} if the connection or parsing of the metadata fails.
*/
- async detect(_config?: ResourceDetectionConfig): Promise {
+ private async _getAttributes(): Promise {
if (!(await gcpMetadata.isAvailable())) {
diag.debug('GcpDetector failed: GCP Metadata unavailable.');
- return Resource.empty();
+ return {};
}
const [projectId, instanceId, zoneId, clusterName, hostname] =
@@ -75,7 +82,7 @@ class GcpDetector implements Detector {
if (getEnv().KUBERNETES_SERVICE_HOST)
this._addK8sAttributes(attributes, clusterName);
- return new Resource(attributes);
+ return attributes;
}
/** Add resource attributes for K8s */
diff --git a/detectors/node/opentelemetry-resource-detector-gcp/test/detectors/GcpDetector.test.ts b/detectors/node/opentelemetry-resource-detector-gcp/test/detectors/GcpDetector.test.ts
index 85f40e413f..4d2bc6ea48 100644
--- a/detectors/node/opentelemetry-resource-detector-gcp/test/detectors/GcpDetector.test.ts
+++ b/detectors/node/opentelemetry-resource-detector-gcp/test/detectors/GcpDetector.test.ts
@@ -31,7 +31,6 @@ import {
assertContainerResource,
assertEmptyResource,
} from '@opentelemetry/contrib-test-utils';
-import { Resource } from '@opentelemetry/resources';
const HEADERS = {
[HEADER_NAME.toLowerCase()]: HEADER_VALUE,
@@ -85,7 +84,10 @@ describe('gcpDetector', () => {
const secondaryScope = nock(SECONDARY_HOST_ADDRESS)
.get(INSTANCE_PATH)
.reply(200, {}, HEADERS);
- const resource: Resource = await gcpDetector.detect();
+
+ const resource = gcpDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
secondaryScope.done();
scope.done();
@@ -121,7 +123,10 @@ describe('gcpDetector', () => {
const secondaryScope = nock(SECONDARY_HOST_ADDRESS)
.get(INSTANCE_PATH)
.reply(200, {}, HEADERS);
- const resource = await gcpDetector.detect();
+
+ const resource = gcpDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
secondaryScope.done();
scope.done();
@@ -155,7 +160,10 @@ describe('gcpDetector', () => {
const secondaryScope = nock(SECONDARY_HOST_ADDRESS)
.get(INSTANCE_PATH)
.reply(200, {}, HEADERS);
- const resource = await gcpDetector.detect();
+
+ const resource = gcpDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
secondaryScope.done();
scope.done();
@@ -167,7 +175,8 @@ describe('gcpDetector', () => {
});
it('returns empty resource if not detected', async () => {
- const resource = await gcpDetector.detect();
+ const resource = gcpDetector.detect();
+ await resource.waitForAsyncAttributes?.();
assertEmptyResource(resource);
});
});
diff --git a/detectors/node/opentelemetry-resource-detector-gcp/test/detectors/GcpDetectorIntegration.test.ts b/detectors/node/opentelemetry-resource-detector-gcp/test/detectors/GcpDetectorIntegration.test.ts
new file mode 100644
index 0000000000..77bf0334d7
--- /dev/null
+++ b/detectors/node/opentelemetry-resource-detector-gcp/test/detectors/GcpDetectorIntegration.test.ts
@@ -0,0 +1,77 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+// NOTE: in other test the modules have already been required and cached (`GcpDetector.test.ts`)
+// so SDK cannot instrument them. We make sure we load fresh copies so RITM hook does its work.
+// we remove all the require chain: detector -> gcp-metadata -> gaxios -> node-fetch
+// but kepp other cache entries to not slow down the test more than necessary
+const modules = [
+ 'opentelemetry-resource-detector-gcp',
+ 'gcp-metadata',
+ 'gaxios',
+ 'node-fetch',
+];
+Object.keys(require.cache)
+ .filter(path => modules.some(m => path.includes(m)))
+ .forEach(key => {
+ delete require.cache[key];
+ });
+
+import * as assert from 'assert';
+
+import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
+import {
+ InMemorySpanExporter,
+ SimpleSpanProcessor,
+} from '@opentelemetry/sdk-trace-base';
+import { NodeSDK } from '@opentelemetry/sdk-node';
+import { IResource } from '@opentelemetry/resources';
+
+describe('[Integration] GcpDetector', () => {
+ it('should not start spans for detector requests', async () => {
+ const memoryExporter = new InMemorySpanExporter();
+ const sdk = new NodeSDK({
+ instrumentations: [new HttpInstrumentation()],
+ spanProcessors: [new SimpleSpanProcessor(memoryExporter)],
+ });
+
+ sdk.start();
+
+ process.env.METADATA_SERVER_DETECTION = 'assume-present';
+
+ // NOTE: detectors implementing the `DetectorSync` interface and starting
+ // HTTP requests within the `detect` method will produce Noop Spans since
+ // the SDK resolves the trace provider after resource detectors are triggered.
+ // Ref: https://github.com/open-telemetry/opentelemetry-js/blob/38f6689480d28dcbdafcb7b5ba4b14025328ffda/experimental/packages/opentelemetry-sdk-node/src/sdk.ts#L210-L240
+ //
+ // So having the detector in the config would result in no spans for Azure requests
+ // being exported which is what we want. Although we may think we're safe of sending
+ // internal tracing any change that delays these request will result in internal
+ // tracing being exported. We do the detection outside the SDK constructor to have such
+ // scenario.
+ const { gcpDetector } = require('../../build/src/detectors/GcpDetector');
+ const resource = gcpDetector.detect() as IResource;
+ await resource.waitForAsyncAttributes?.();
+
+ // Wait for the next loop to let the span close properly
+ await new Promise(r => setTimeout(r, 0));
+ const spans = memoryExporter.getFinishedSpans();
+
+ assert.equal(spans.length, 0, 'no spans exported for GcpDetector');
+
+ await sdk.shutdown();
+ }).timeout(15000);
+});
diff --git a/detectors/node/opentelemetry-resource-detector-github/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-github/CHANGELOG.md
index 02e132ad53..0e0a9866d2 100644
--- a/detectors/node/opentelemetry-resource-detector-github/CHANGELOG.md
+++ b/detectors/node/opentelemetry-resource-detector-github/CHANGELOG.md
@@ -1,5 +1,16 @@
# Changelog
+## [0.29.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-github-v0.28.2...resource-detector-github-v0.29.0) (2024-08-05)
+
+
+### ⚠ BREAKING CHANGES
+
+* **detector-github:** change implementation to DetectorSync interface ([#2336](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2336))
+
+### Features
+
+* **detector-github:** change implementation to DetectorSync interface ([#2336](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2336)) ([d52d421](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/d52d4218235528dcecc706867425b86bac49b1f0))
+
## [0.28.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-github-v0.28.1...resource-detector-github-v0.28.2) (2024-04-25)
diff --git a/detectors/node/opentelemetry-resource-detector-github/package.json b/detectors/node/opentelemetry-resource-detector-github/package.json
index b4c45dbba2..dec82319fe 100644
--- a/detectors/node/opentelemetry-resource-detector-github/package.json
+++ b/detectors/node/opentelemetry-resource-detector-github/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/resource-detector-github",
- "version": "0.28.2",
+ "version": "0.29.0",
"description": "OpenTelemetry SDK resource detector for GitHub",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,10 +10,9 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/resource-detector-github --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"watch": "tsc -w"
},
@@ -44,17 +43,15 @@
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/resources": "^1.0.0"
+ "@opentelemetry/resources": "^1.10.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/detectors/node/opentelemetry-resource-detector-github#readme"
}
diff --git a/detectors/node/opentelemetry-resource-detector-github/src/detectors/GitHubDetector.ts b/detectors/node/opentelemetry-resource-detector-github/src/detectors/GitHubDetector.ts
index bc828be92c..8ee6404a6c 100644
--- a/detectors/node/opentelemetry-resource-detector-github/src/detectors/GitHubDetector.ts
+++ b/detectors/node/opentelemetry-resource-detector-github/src/detectors/GitHubDetector.ts
@@ -15,7 +15,8 @@
*/
import {
- Detector,
+ DetectorSync,
+ IResource,
Resource,
ResourceAttributes,
} from '@opentelemetry/resources';
@@ -30,7 +31,7 @@ import {
*
* Returns an empty Resource if detection fails.
*/
-class GitHubDetector implements Detector {
+class GitHubDetector implements DetectorSync {
private _attributes: ResourceAttributes = {};
/**
@@ -49,12 +50,10 @@ class GitHubDetector implements Detector {
* environment variables:
* https://docs.github.com/en/free-pro-team@latest/actions/reference/environment-variables
*
- * If successful it returns a promise containing a {@link Resource}
- * populated with GitHub metadata. Returns a promise containing an
- * empty {@link Resource} if the connection fails.
- *
+ * If successful it returns a {@link Resource} populated with GitHub metadata.
+ * Returns an empty {@link Resource} if the env vars are not present.
*/
- async detect(): Promise {
+ detect(): IResource {
this._attributes = {};
this.addAttributeIfExists('github.workflow', process.env.GITHUB_WORKFLOW);
this.addAttributeIfExists('github.run_id', process.env.GITHUB_RUN_ID);
diff --git a/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md b/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md
index 856279dc56..4ab5617a04 100644
--- a/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md
+++ b/detectors/node/opentelemetry-resource-detector-instana/CHANGELOG.md
@@ -1,5 +1,55 @@
# Changelog
+## [0.14.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-instana-v0.13.0...resource-detector-instana-v0.14.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.13.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-instana-v0.12.0...resource-detector-instana-v0.13.0) (2024-10-08)
+
+
+### ⚠ BREAKING CHANGES
+
+* **detector-instana:** change implementation to DetectorSync interface ([#2337](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2337))
+
+### Features
+
+* **detector-instana:** change implementation to DetectorSync interface ([#2337](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2337)) ([ef5efcb](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/ef5efcb7c6bd432159627b5aa1833cc97dce98ca))
+
+## [0.12.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-instana-v0.11.0...resource-detector-instana-v0.12.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.11.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-instana-v0.10.0...resource-detector-instana-v0.11.0) (2024-08-05)
+
+
+### ⚠ BREAKING CHANGES
+
+* **detector-alibaba:** change implementation to DetectorSync interface ([#2328](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2328))
+
+### Features
+
+* **detector-alibaba:** change implementation to DetectorSync interface ([#2328](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2328)) ([25e85c7](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/25e85c7b128f7424b51987e9f4c067e0b538fe2f))
+
## [0.10.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/resource-detector-instana-v0.9.0...resource-detector-instana-v0.10.0) (2024-06-06)
diff --git a/detectors/node/opentelemetry-resource-detector-instana/package.json b/detectors/node/opentelemetry-resource-detector-instana/package.json
index 93d915730e..b76e525eb8 100644
--- a/detectors/node/opentelemetry-resource-detector-instana/package.json
+++ b/detectors/node/opentelemetry-resource-detector-instana/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/resource-detector-instana",
- "version": "0.10.0",
+ "version": "0.14.0",
"description": "OpenTelemetry SDK resource detector for Instana",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,10 +10,9 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/resource-detector-instana --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"watch": "tsc -w"
},
@@ -38,21 +37,19 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/sdk-node": "^0.52.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/sdk-node": "^0.54.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"peerDependencies": {
"@opentelemetry/api": "^1.3.0"
diff --git a/detectors/node/opentelemetry-resource-detector-instana/src/detectors/InstanaAgentDetector.ts b/detectors/node/opentelemetry-resource-detector-instana/src/detectors/InstanaAgentDetector.ts
index ed0a11284c..2a22951803 100644
--- a/detectors/node/opentelemetry-resource-detector-instana/src/detectors/InstanaAgentDetector.ts
+++ b/detectors/node/opentelemetry-resource-detector-instana/src/detectors/InstanaAgentDetector.ts
@@ -13,7 +13,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-import { Detector, Resource, IResource } from '@opentelemetry/resources';
+import {
+ DetectorSync,
+ Resource,
+ IResource,
+ ResourceAttributes,
+} from '@opentelemetry/resources';
import { diag } from '@opentelemetry/api';
import {
SEMRESATTRS_PROCESS_PID,
@@ -21,23 +26,31 @@ import {
} from '@opentelemetry/semantic-conventions';
import * as http from 'http';
-class InstanaAgentDetector implements Detector {
+class InstanaAgentDetector implements DetectorSync {
readonly INSTANA_AGENT_DEFAULT_HOST = 'localhost';
readonly INSTANA_AGENT_DEFAULT_PORT = 42699;
- async detect(): Promise {
+ detect(): IResource {
+ return new Resource({}, this._getAttributes());
+ }
+
+ private async _getAttributes(): Promise {
const host =
process.env.INSTANA_AGENT_HOST || this.INSTANA_AGENT_DEFAULT_HOST;
const port = Number(
process.env.INSTANA_AGENT_PORT || this.INSTANA_AGENT_DEFAULT_PORT
);
- const data = await this._retryHandler(host, port, 0);
+ try {
+ const data = await this._retryHandler(host, port, 0);
- return new Resource({
- [SEMRESATTRS_PROCESS_PID]: data.pid,
- [SEMRESATTRS_SERVICE_INSTANCE_ID]: data.agentUuid,
- });
+ return {
+ [SEMRESATTRS_PROCESS_PID]: data.pid,
+ [SEMRESATTRS_SERVICE_INSTANCE_ID]: data.agentUuid,
+ };
+ } catch {
+ return {};
+ }
}
private timeout(ms: number) {
diff --git a/detectors/node/opentelemetry-resource-detector-instana/test/InstanaAgentDetectorUnitTest.test.ts b/detectors/node/opentelemetry-resource-detector-instana/test/InstanaAgentDetectorUnitTest.test.ts
index abe4ef5a51..db66c0dc0d 100644
--- a/detectors/node/opentelemetry-resource-detector-instana/test/InstanaAgentDetectorUnitTest.test.ts
+++ b/detectors/node/opentelemetry-resource-detector-instana/test/InstanaAgentDetectorUnitTest.test.ts
@@ -16,7 +16,6 @@
import * as nock from 'nock';
import * as assert from 'assert';
-import { Resource } from '@opentelemetry/resources';
import { instanaAgentDetector } from '../src';
describe('[UNIT] instanaAgentDetector', () => {
@@ -54,7 +53,8 @@ describe('[UNIT] instanaAgentDetector', () => {
.put('/com.instana.plugin.nodejs.discovery')
.reply(200, () => mockedReply);
- const resource: Resource = await instanaAgentDetector.detect();
+ const resource = instanaAgentDetector.detect();
+ await resource.waitForAsyncAttributes?.();
scope.done();
@@ -80,7 +80,8 @@ describe('[UNIT] instanaAgentDetector', () => {
.put('/com.instana.plugin.nodejs.discovery')
.reply(200, () => mockedReply);
- const resource: Resource = await instanaAgentDetector.detect();
+ const resource = instanaAgentDetector.detect();
+ await resource.waitForAsyncAttributes?.();
scope.done();
@@ -90,28 +91,24 @@ describe('[UNIT] instanaAgentDetector', () => {
});
});
- it('agent throws error', async () => {
- const expectedError = new Error('Instana Agent returned status code 500');
+ it('agent returns empty resource if request error', async () => {
const scope = nock('http://localhost:42699')
.persist()
.put('/com.instana.plugin.nodejs.discovery')
.reply(500, () => new Error());
- try {
- await instanaAgentDetector.detect();
- assert.ok(false, 'Expected to throw');
- } catch (err) {
- assert.deepStrictEqual(err, expectedError);
- }
+ const resource = instanaAgentDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
scope.done();
});
- it('agent timeout', async () => {
+ it('agent return empty resource if timeout', async () => {
process.env.INSTANA_AGENT_PORT = '56002';
process.env.INSTANA_AGENT_HOST = 'instanaagent';
process.env.INSTANA_AGENT_TIMEOUT_MS = '200';
- const expectedError = new Error('Instana Agent request timed out.');
nock(
`http://${process.env.INSTANA_AGENT_HOST}:${process.env.INSTANA_AGENT_PORT}`
@@ -121,28 +118,23 @@ describe('[UNIT] instanaAgentDetector', () => {
.delay(500)
.reply(200, {});
- try {
- await instanaAgentDetector.detect();
- assert.ok(false, 'Expected to throw');
- } catch (err) {
- console.log(err);
- assert.deepStrictEqual(err, expectedError);
- }
+ const resource = instanaAgentDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
});
});
describe('when agent is not running', () => {
- it('should not return agent resource', async () => {
+ it('should return empty resource', async () => {
process.env.INSTANA_AGENT_PORT = '1111';
process.env.INSTANA_AGENT_TIMEOUT_MS = '100';
process.env.INSTANA_RETRY_TIMEOUT_MS = '100';
- try {
- await instanaAgentDetector.detect();
- assert.ok(false, 'Expected to throw');
- } catch (err: any) {
- assert.equal(err.code, 'ECONNREFUSED');
- }
+ const resource = instanaAgentDetector.detect();
+ await resource.waitForAsyncAttributes?.();
+
+ assert.deepStrictEqual(resource.attributes, {});
});
});
});
diff --git a/examples/connect/package.json b/examples/connect/package.json
index 4acf0fcf9a..55d36afffb 100644
--- a/examples/connect/package.json
+++ b/examples/connect/package.json
@@ -45,7 +45,7 @@
"@opentelemetry/instrumentation-http": "^0.25.0",
"@opentelemetry/sdk-trace-node": "^0.25.0",
"@opentelemetry/resources": "^0.25.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@opentelemetry/sdk-trace-base": "^0.25.0",
"axios": "^0.21.1",
"cross-env": "^7.0.3",
diff --git a/examples/express/package.json b/examples/express/package.json
index 61442eeac2..ab47e5bb3a 100644
--- a/examples/express/package.json
+++ b/examples/express/package.json
@@ -40,7 +40,7 @@
"@opentelemetry/resources": "^1.18.1",
"@opentelemetry/sdk-trace-base": "^1.18.1",
"@opentelemetry/sdk-trace-node": "^1.18.1",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"axios": "^1.6.0",
"cross-env": "^7.0.3",
"express": "^4.17.1"
diff --git a/examples/fastify/package.json b/examples/fastify/package.json
index f30eef6fa5..7df877be80 100644
--- a/examples/fastify/package.json
+++ b/examples/fastify/package.json
@@ -45,7 +45,7 @@
"@opentelemetry/instrumentation-fastify": "^0.32.6",
"@opentelemetry/sdk-trace-node": "~1.19.0",
"@opentelemetry/resources": "~1.19.0",
- "@opentelemetry/semantic-conventions": "~1.19.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@opentelemetry/sdk-trace-base": "~1.19.0",
"cross-env": "^7.0.3",
"axios": "^1.6.4",
diff --git a/examples/graphql/package.json b/examples/graphql/package.json
index 6ca5a0371b..1d09a9fe18 100644
--- a/examples/graphql/package.json
+++ b/examples/graphql/package.json
@@ -44,7 +44,7 @@
"@opentelemetry/resources": "~1.0.0",
"@opentelemetry/sdk-trace-base": "~1.0.0",
"@opentelemetry/sdk-trace-node": "~1.0.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"apollo-server": "^2.18.1",
"cross-fetch": "^3.0.5",
"express": "^4.17.1",
diff --git a/examples/koa/package.json b/examples/koa/package.json
index 9165d6ebdd..978e433367 100644
--- a/examples/koa/package.json
+++ b/examples/koa/package.json
@@ -39,7 +39,7 @@
"@opentelemetry/instrumentation-koa": "^0.31.0",
"@opentelemetry/sdk-trace-node": "^1.0.0",
"@opentelemetry/sdk-trace-base": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"axios": "^1.6.0",
"koa": "^2.13.0"
},
diff --git a/examples/memcached/package.json b/examples/memcached/package.json
index 858393ab71..fb48295596 100644
--- a/examples/memcached/package.json
+++ b/examples/memcached/package.json
@@ -34,7 +34,7 @@
"@opentelemetry/resources": "^1.23.0",
"@opentelemetry/sdk-trace-base": "^0.25.0",
"@opentelemetry/sdk-trace-node": "^0.25.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"memcached": "^2.2.2"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib#readme"
diff --git a/examples/mongodb/package.json b/examples/mongodb/package.json
index 7bf097e553..fac44e38b9 100644
--- a/examples/mongodb/package.json
+++ b/examples/mongodb/package.json
@@ -38,7 +38,7 @@
"@opentelemetry/instrumentation-mongodb": "^0.32.0",
"@opentelemetry/sdk-trace-node": "^1.0.0",
"@opentelemetry/sdk-trace-base": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"mongodb": "^3.6.11"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib#readme",
diff --git a/examples/mysql/README.md b/examples/mysql/README.md
index 4dd0437442..7c11a80ee3 100644
--- a/examples/mysql/README.md
+++ b/examples/mysql/README.md
@@ -1,6 +1,6 @@
# Overview
-OpenTelemetry MySQL Instrumentation allows the user to automatically collect trace data and metrics and export them to the backend of choice (we can use Zipkin, Jaeger or Grafana for this example), to give observability to distributed systems.
+OpenTelemetry MySQL Instrumentation allows the user to automatically collect trace data and metrics and export them to the backend of choice (we can use Zipkin or Grafana for this example), to give observability to distributed systems.
This is a modification of the HTTP example that executes multiple parallel requests that interact with a MySQL server backend using the `mysql` npm module. The example displays traces using multiple connection methods.
@@ -20,13 +20,11 @@ npm install
```
Setup [Zipkin Tracing](https://zipkin.io/pages/quickstart.html)
-or
-Setup [Jaeger Tracing](https://www.jaegertracing.io/docs/latest/getting-started/#all-in-one)
In case you want to see also metrics:
1. Go to `docker` folder
-2. Run `docker compose up`. This will set up Zipkin, Jaeger, otel collector, Prometheus and Grafana.
+2. Run `docker compose up`. This will set up Zipkin, otel collector, Prometheus and Grafana.
3. To see your metrics, go to `http://localhost:3000/`.
## Run the Application
@@ -54,29 +52,6 @@ Go to Zipkin with your browser
-### Jaeger
-
-- Run the server
-
- ```sh
- # from this directory
- npm run jaeger:server
- ```
-
-- Run the client
-
- ```sh
- # from this directory
- npm run jaeger:client
- ```
-
-#### Jaeger UI
-
-The `jaeger:server` script should output the `traceid` in the terminal (e.g `traceid: 4815c3d576d930189725f1f1d1bdfcc6`).
-Go to Jaeger with your browser (e.g )
-
-
-
## Useful links
- For more information on OpenTelemetry, visit:
diff --git a/examples/mysql/docker/collector/otel-collector-config.yaml b/examples/mysql/docker/collector/otel-collector-config.yaml
index bf4e67b135..710e88d048 100644
--- a/examples/mysql/docker/collector/otel-collector-config.yaml
+++ b/examples/mysql/docker/collector/otel-collector-config.yaml
@@ -9,18 +9,13 @@ exporters:
const_labels:
label1: value1
- logging:
- loglevel: debug
+ debug:
+ verbosity: detailed
zipkin:
endpoint: "http://zipkin-all-in-one:9411/api/v2/spans"
format: proto
- jaeger:
- endpoint: jaeger-all-in-one:14250
- tls:
- insecure: true
-
processors:
batch:
@@ -37,8 +32,8 @@ service:
traces:
receivers: [otlp]
processors: [batch]
- exporters: [logging]
+ exporters: [debug]
metrics:
receivers: [otlp]
processors: [batch]
- exporters: [logging, prometheus]
+ exporters: [debug, prometheus]
diff --git a/examples/mysql/docker/docker-compose.yaml b/examples/mysql/docker/docker-compose.yaml
index b95dabc9ad..3142fbdc00 100644
--- a/examples/mysql/docker/docker-compose.yaml
+++ b/examples/mysql/docker/docker-compose.yaml
@@ -1,9 +1,9 @@
-version: "2"
services:
# mysql
mysql:
image: mysql:5.7
+ platform: linux/amd64
command: --init-file /etc/mysql/init.sql
volumes:
- ./mysql/init.sql:/etc/mysql/init.sql
@@ -12,15 +12,6 @@ services:
ports:
- "3306:3306"
-# Jaeger
-
- jaeger-all-in-one:
- image: jaegertracing/all-in-one:latest
- ports:
- - "16686:16686"
- - "14268"
- - "14250"
-
# Zipkin
zipkin-all-in-one:
@@ -31,7 +22,7 @@ services:
# Collector
otel-collector:
- image: otel/opentelemetry-collector-contrib:0.61.0
+ image: otel/opentelemetry-collector-contrib:0.111.0
command: ["--config=/etc/otel-collector-config.yaml", ""]
volumes:
- ./collector/otel-collector-config.yaml:/etc/otel-collector-config.yaml
@@ -43,7 +34,6 @@ services:
- "4317:4317" # OTLP gRPC receiver
- "55679:55679" # zpages extension
depends_on:
- - jaeger-all-in-one
- zipkin-all-in-one
# Prometheus
diff --git a/examples/mysql/package.json b/examples/mysql/package.json
index 8455f63678..d1faf67976 100644
--- a/examples/mysql/package.json
+++ b/examples/mysql/package.json
@@ -9,8 +9,6 @@
"docker:stop": "docker stop example-mysql && docker rm example-mysql",
"zipkin:server": "cross-env EXPORTER=zipkin ts-node src/server.ts",
"zipkin:client": "cross-env EXPORTER=zipkin ts-node src/client.ts",
- "jaeger:server": "cross-env EXPORTER=jaeger ts-node src/server.ts",
- "jaeger:client": "cross-env EXPORTER=jaeger ts-node src/client.ts",
"compile": "tsc -p ."
},
"repository": {
@@ -32,15 +30,15 @@
},
"dependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/exporter-jaeger": "^1.0.0",
+ "@opentelemetry/exporter-metrics-otlp-grpc": "^0.48.0",
"@opentelemetry/exporter-zipkin": "^1.0.0",
"@opentelemetry/instrumentation": "^0.48.0",
"@opentelemetry/instrumentation-http": "^0.48.0",
"@opentelemetry/instrumentation-mysql": "^0.31.0",
"@opentelemetry/sdk-trace-base": "^1.0.0",
"@opentelemetry/sdk-trace-node": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
- "@opentelemetry/exporter-metrics-otlp-grpc": "^0.48.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/node": "^18.18.14",
"mysql": "^2.18.1"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/examples/mysql#readme",
diff --git a/examples/mysql/src/server.ts b/examples/mysql/src/server.ts
index dba7d523c7..180224e2c7 100644
--- a/examples/mysql/src/server.ts
+++ b/examples/mysql/src/server.ts
@@ -52,7 +52,6 @@ function handleRequest(request: any, response: any) {
// display traceid in the terminal
const traceId = currentSpan?.spanContext().traceId;
console.log(`traceid: ${traceId}`);
- console.log(`Jaeger URL: http://localhost:16686/trace/${traceId}`);
console.log(`Zipkin URL: http://localhost:9411/zipkin/traces/${traceId}`);
try {
const body = [];
diff --git a/examples/mysql/src/tracer.ts b/examples/mysql/src/tracer.ts
index b5c2f522cb..2ded0e2567 100644
--- a/examples/mysql/src/tracer.ts
+++ b/examples/mysql/src/tracer.ts
@@ -3,7 +3,6 @@
import opentelemetry from '@opentelemetry/api';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import { SimpleSpanProcessor } from '@opentelemetry/sdk-trace-base';
-import { JaegerExporter } from '@opentelemetry/exporter-jaeger';
import { ZipkinExporter } from '@opentelemetry/exporter-zipkin';
import { registerInstrumentations } from '@opentelemetry/instrumentation';
import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
@@ -38,8 +37,6 @@ export const setupTracing = (serviceName: string) => {
if (EXPORTER.toLowerCase().startsWith('z')) {
tracerProvider.addSpanProcessor(new SimpleSpanProcessor(new ZipkinExporter()));
- } else {
- tracerProvider.addSpanProcessor(new SimpleSpanProcessor(new JaegerExporter()));
}
// Initialize the OpenTelemetry APIs to use the NodeTracerProvider bindings
diff --git a/examples/react-load/react/package.json b/examples/react-load/react/package.json
index 9c9ce0281a..c6fb74216c 100644
--- a/examples/react-load/react/package.json
+++ b/examples/react-load/react/package.json
@@ -43,7 +43,7 @@
"@opentelemetry/plugin-react-load": "^0.23.0",
"@opentelemetry/sdk-trace-base": "^0.25.0",
"@opentelemetry/sdk-trace-web": "^0.25.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"react": "^16.13.1",
"react-dom": "^16.13.1",
"react-router-dom": "^5.2.0",
diff --git a/examples/redis/package.json b/examples/redis/package.json
index 5e989b9fd2..72ba46e9ca 100644
--- a/examples/redis/package.json
+++ b/examples/redis/package.json
@@ -39,7 +39,7 @@
"@opentelemetry/instrumentation-redis": "^0.32.0",
"@opentelemetry/sdk-trace-base": "^1.0.0",
"@opentelemetry/sdk-trace-node": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"axios": "^1.6.0",
"express": "^4.17.1",
"redis": "^3.1.1"
diff --git a/examples/web/package.json b/examples/web/package.json
index 6d0005489f..af7ca620c9 100644
--- a/examples/web/package.json
+++ b/examples/web/package.json
@@ -46,7 +46,7 @@
"@opentelemetry/instrumentation-xml-http-request": "^0.39.1",
"@opentelemetry/propagator-b3": "^1.13.0",
"@opentelemetry/sdk-trace-web": "^1.13.0",
- "@opentelemetry/semantic-conventions": "^1.23.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib#readme"
}
diff --git a/incubator/opentelemetry-sampler-aws-xray/README.md b/incubator/opentelemetry-sampler-aws-xray/README.md
index 3656050787..b7f7d0fc26 100644
--- a/incubator/opentelemetry-sampler-aws-xray/README.md
+++ b/incubator/opentelemetry-sampler-aws-xray/README.md
@@ -2,7 +2,7 @@
> This component is still in development and has not been released as an npm package.
-component owner: @carolabadeer
+[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @jj22ee
This module provides the remote/centralized sampler for AWS X-Ray.
diff --git a/incubator/opentelemetry-sampler-aws-xray/package.json b/incubator/opentelemetry-sampler-aws-xray/package.json
index 6b137eef6b..fff4b2f4e0 100644
--- a/incubator/opentelemetry-sampler-aws-xray/package.json
+++ b/incubator/opentelemetry-sampler-aws-xray/package.json
@@ -36,7 +36,7 @@
"clean": "tsc --build --clean tsconfig.json tsconfig.esm.json",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"version:update": "node ../../scripts/version-update.js",
"watch": "tsc --build --watch tsconfig.json tsconfig.esm.json"
},
@@ -52,17 +52,15 @@
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/contrib-test-utils": "^0.35.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@typescript-eslint/eslint-plugin": "5.8.1",
"@typescript-eslint/parser": "5.8.1",
"eslint": "8.7.0",
"expect": "29.2.0",
- "mocha": "7.2.0",
"nock": "13.3.3",
"nyc": "15.1.0",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
diff --git a/knip.jsonc b/knip.jsonc
new file mode 100644
index 0000000000..9f04c04017
--- /dev/null
+++ b/knip.jsonc
@@ -0,0 +1,11 @@
+// https://knip.dev/reference/configuration
+{
+ "$schema": "https://unpkg.com/knip@5/schema-jsonc.json",
+ "workspaces": {
+ "metapackages/auto-instrumentations-node": {
+ // Ensure register.ts is considered an entry-point (the `!` is to be
+ // included with the `--production` flag).
+ "entry": "src/register.ts!"
+ }
+ }
+}
diff --git a/metapackages/auto-configuration-propagators/.eslintignore b/metapackages/auto-configuration-propagators/.eslintignore
new file mode 100644
index 0000000000..03db8f9b34
--- /dev/null
+++ b/metapackages/auto-configuration-propagators/.eslintignore
@@ -0,0 +1,2 @@
+build
+.eslintrc.js
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/.eslintrc.js b/metapackages/auto-configuration-propagators/.eslintrc.js
similarity index 68%
rename from archive/opentelemetry-propagator-grpc-census-binary/.eslintrc.js
rename to metapackages/auto-configuration-propagators/.eslintrc.js
index f726f3becb..fe91e21049 100644
--- a/archive/opentelemetry-propagator-grpc-census-binary/.eslintrc.js
+++ b/metapackages/auto-configuration-propagators/.eslintrc.js
@@ -1,7 +1,8 @@
module.exports = {
"env": {
+ "commonjs": true,
+ "node": true,
"mocha": true,
- "node": true
},
...require('../../eslint.config.js')
}
diff --git a/metapackages/auto-configuration-propagators/CHANGELOG.md b/metapackages/auto-configuration-propagators/CHANGELOG.md
new file mode 100644
index 0000000000..41782bd4b6
--- /dev/null
+++ b/metapackages/auto-configuration-propagators/CHANGELOG.md
@@ -0,0 +1,24 @@
+# Changelog
+
+## [0.3.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-configuration-propagators-v0.3.0...auto-configuration-propagators-v0.3.1) (2024-10-08)
+
+
+### Bug Fixes
+
+* auto-config of baggage propagator ([#2425](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2425)) ([e87ff9d](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/e87ff9def70dbb282a1acb65d103020a20a1a696))
+
+## [0.3.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-configuration-propagators-v0.2.0...auto-configuration-propagators-v0.3.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.2.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-configuration-propagators-v0.1.0...auto-configuration-propagators-v0.2.0) (2024-07-23)
+
+
+### Features
+
+* Add package for automatic propagator configuration ([#2299](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2299)) ([4bb28c9](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/4bb28c99c29b52193bcd9d0f14202beac6c5dfa6))
+
+## Changelog
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/LICENSE b/metapackages/auto-configuration-propagators/LICENSE
similarity index 100%
rename from archive/opentelemetry-propagator-grpc-census-binary/LICENSE
rename to metapackages/auto-configuration-propagators/LICENSE
diff --git a/metapackages/auto-configuration-propagators/README.md b/metapackages/auto-configuration-propagators/README.md
new file mode 100644
index 0000000000..d98966e0c6
--- /dev/null
+++ b/metapackages/auto-configuration-propagators/README.md
@@ -0,0 +1,54 @@
+# OpenTelemetry Meta Package for Propagators Configuration
+
+[![NPM Published Version][npm-img]][npm-url]
+[![Apache License][license-image]][license-url]
+
+## About
+
+This module provides a way to get a propagator based on the [OTEL_PROPAGATORS environment variable][env-var-url].
+
+## Installation
+
+```bash
+npm install --save @opentelemetry/auto-configuration-propagators
+```
+
+## Usage
+
+Here is an example of how to retrieve a propagator:
+
+```js
+import { getPropagator } from '@opentelemetry/auto-configuration-propagators';
+
+const propagator = getPropagator();
+```
+
+Please see the [Supported propagators](#supported-propagators) section for more information.
+
+## Supported propagators
+
+The specification defines a list of [known propagators][env-var-url] for the `OTEL_PROPAGATORS` env variable. Only these propagators are supported.
+
+- "tracecontext": [W3C Trace Context](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-core)
+- "baggage": [W3C Baggage](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-core)
+- "b3": [B3 Single](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-propagator-b3)
+- "b3multi": [B3 Multi](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-propagator-b3)
+- "jaeger": [Jaeger](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-propagator-jaeger)
+- "xray": [AWS X-Ray (third party)](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/propagators/propagator-aws-xray)
+- "xray-lambda": [AWS X-Ray Lambda (third party)](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/propagators/propagator-aws-xray-lambda)
+- "ottrace": [OT Trace (third party)](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/propagators/opentelemetry-propagator-ot-trace)
+
+## Useful links
+
+- For more information on OpenTelemetry, visit:
+- For more about OpenTelemetry JavaScript:
+
+## License
+
+APACHE 2.0 - See [LICENSE][license-url] for more information.
+
+[license-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/LICENSE
+[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat
+[npm-url]: https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node
+[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fauto-instrumentations-node.svg
+[env-var-url]: https://github.com/open-telemetry/opentelemetry-specification/blob/main/specification/configuration/sdk-environment-variables.md#general-sdk-configuration
diff --git a/metapackages/auto-configuration-propagators/package.json b/metapackages/auto-configuration-propagators/package.json
new file mode 100644
index 0000000000..794786b4b9
--- /dev/null
+++ b/metapackages/auto-configuration-propagators/package.json
@@ -0,0 +1,57 @@
+{
+ "name": "@opentelemetry/auto-configuration-propagators",
+ "version": "0.3.1",
+ "description": "Metapackage which bundles known propagators for configuration via an env variable.",
+ "author": "OpenTelemetry Authors",
+ "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/metapackages/auto-configuration-propagators#readme",
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=14"
+ },
+ "publishConfig": {
+ "access": "public"
+ },
+ "main": "build/src/index.js",
+ "types": "build/src/index.d.ts",
+ "repository": "open-telemetry/opentelemetry-js-contrib",
+ "scripts": {
+ "clean": "rimraf build/*",
+ "compile": "tsc -p .",
+ "lint": "eslint . --ext .ts",
+ "lint:fix": "eslint . --ext .ts --fix",
+ "prewatch": "npm run precompile",
+ "prepublishOnly": "npm run compile",
+ "tdd": "npm run test -- --watch-extensions ts --watch",
+ "test": "nyc mocha 'test/**/*.ts'",
+ "watch": "tsc -w"
+ },
+ "bugs": {
+ "url": "https://github.com/open-telemetry/opentelemetry-js-contrib/issues"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": "^1.4.1"
+ },
+ "devDependencies": {
+ "@opentelemetry/api": "^1.4.1",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@opentelemetry/core": "^1.25.1",
+ "@opentelemetry/propagator-aws-xray": "^1.25.1",
+ "@opentelemetry/propagator-aws-xray-lambda": "^0.53.0",
+ "@opentelemetry/propagator-b3": "^1.25.1",
+ "@opentelemetry/propagator-jaeger": "^1.25.1",
+ "@opentelemetry/propagator-ot-trace": "^0.27.2"
+ },
+ "files": [
+ "build/src/**/*.js",
+ "build/src/**/*.js.map",
+ "build/src/**/*.d.ts"
+ ]
+}
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/src/index.ts b/metapackages/auto-configuration-propagators/src/index.ts
similarity index 93%
rename from archive/opentelemetry-propagator-grpc-census-binary/src/index.ts
rename to metapackages/auto-configuration-propagators/src/index.ts
index daf40be1c4..c45392688a 100644
--- a/archive/opentelemetry-propagator-grpc-census-binary/src/index.ts
+++ b/metapackages/auto-configuration-propagators/src/index.ts
@@ -14,4 +14,4 @@
* limitations under the License.
*/
-export * from './GrpcCensusPropagator';
+export { getPropagator } from './utils';
diff --git a/metapackages/auto-configuration-propagators/src/utils.ts b/metapackages/auto-configuration-propagators/src/utils.ts
new file mode 100644
index 0000000000..4b1c77dbe2
--- /dev/null
+++ b/metapackages/auto-configuration-propagators/src/utils.ts
@@ -0,0 +1,91 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { diag, TextMapPropagator } from '@opentelemetry/api';
+import {
+ CompositePropagator,
+ W3CBaggagePropagator,
+ W3CTraceContextPropagator,
+} from '@opentelemetry/core';
+import { B3InjectEncoding, B3Propagator } from '@opentelemetry/propagator-b3';
+import { JaegerPropagator } from '@opentelemetry/propagator-jaeger';
+import { OTTracePropagator } from '@opentelemetry/propagator-ot-trace';
+import { AWSXRayPropagator } from '@opentelemetry/propagator-aws-xray';
+import { AWSXRayLambdaPropagator } from '@opentelemetry/propagator-aws-xray-lambda';
+
+type PropagatorFactoryFunction = () => TextMapPropagator;
+
+const propagatorMap = new Map([
+ ['tracecontext', () => new W3CTraceContextPropagator()],
+ ['baggage', () => new W3CBaggagePropagator()],
+ [
+ 'b3',
+ () => new B3Propagator({ injectEncoding: B3InjectEncoding.SINGLE_HEADER }),
+ ],
+ [
+ 'b3multi',
+ () => new B3Propagator({ injectEncoding: B3InjectEncoding.MULTI_HEADER }),
+ ],
+ ['jaeger', () => new JaegerPropagator()],
+ ['xray', () => new AWSXRayPropagator()],
+ ['xray-lambda', () => new AWSXRayLambdaPropagator()],
+ ['ottrace', () => new OTTracePropagator()],
+]);
+
+/**
+ * Get a propagator based on the OTEL_PROPAGATORS env var.
+ */
+export function getPropagator(): TextMapPropagator {
+ if (
+ process.env.OTEL_PROPAGATORS == null ||
+ process.env.OTEL_PROPAGATORS.trim() === ''
+ ) {
+ return new CompositePropagator({
+ propagators: [
+ new W3CTraceContextPropagator(),
+ new W3CBaggagePropagator(),
+ ],
+ });
+ }
+
+ const propagatorsFromEnv = Array.from(
+ new Set(
+ process.env.OTEL_PROPAGATORS?.split(',').map(value =>
+ value.toLowerCase().trim()
+ )
+ )
+ );
+
+ const propagators = propagatorsFromEnv.flatMap(propagatorName => {
+ if (propagatorName === 'none') {
+ diag.info(
+ 'Not selecting any propagator for value "none" specified in the environment variable OTEL_PROPAGATORS'
+ );
+ return [];
+ }
+
+ const propagatorFactoryFunction = propagatorMap.get(propagatorName);
+ if (propagatorFactoryFunction == null) {
+ diag.warn(
+ `Invalid propagator "${propagatorName}" specified in the environment variable OTEL_PROPAGATORS`
+ );
+ return [];
+ }
+ return propagatorFactoryFunction();
+ });
+
+ return new CompositePropagator({ propagators });
+}
diff --git a/metapackages/auto-configuration-propagators/test/utils.test.ts b/metapackages/auto-configuration-propagators/test/utils.test.ts
new file mode 100644
index 0000000000..6e2c9dedcd
--- /dev/null
+++ b/metapackages/auto-configuration-propagators/test/utils.test.ts
@@ -0,0 +1,75 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import * as assert from 'assert';
+import { getPropagator } from '../src/utils';
+
+describe('utils', () => {
+ describe('getPropagator', () => {
+ afterEach(() => {
+ delete process.env.OTEL_PROPAGATORS;
+ });
+
+ it('should return default when env var is unset', () => {
+ assert.deepStrictEqual(getPropagator().fields(), [
+ 'traceparent',
+ 'tracestate',
+ 'baggage',
+ ]);
+ });
+
+ it('should return default when env var is empty', () => {
+ process.env.OTEL_PROPAGATORS = '';
+ assert.deepStrictEqual(getPropagator().fields(), [
+ 'traceparent',
+ 'tracestate',
+ 'baggage',
+ ]);
+ });
+
+ it('should return default when env var is all spaces', () => {
+ process.env.OTEL_PROPAGATORS = ' ';
+ assert.deepStrictEqual(getPropagator().fields(), [
+ 'traceparent',
+ 'tracestate',
+ 'baggage',
+ ]);
+ });
+
+ it('should return the selected propagator when one is in the list', () => {
+ process.env.OTEL_PROPAGATORS = 'tracecontext';
+ assert.deepStrictEqual(getPropagator().fields(), [
+ 'traceparent',
+ 'tracestate',
+ ]);
+ });
+
+ it('should return the selected propagators when multiple are in the list', () => {
+ process.env.OTEL_PROPAGATORS = 'b3,jaeger';
+ assert.deepStrictEqual(getPropagator().fields(), ['b3', 'uber-trace-id']);
+ });
+
+ it('should return no-op propagator if all propagators are unknown', () => {
+ process.env.OTEL_PROPAGATORS = 'my, unknown, propagators';
+ assert.deepStrictEqual(getPropagator().fields(), []);
+ });
+
+ it('should return no-op propagator if "none" is selected', () => {
+ process.env.OTEL_PROPAGATORS = 'none';
+ assert.deepStrictEqual(getPropagator().fields(), []);
+ });
+ });
+});
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/tsconfig.json b/metapackages/auto-configuration-propagators/tsconfig.json
similarity index 100%
rename from archive/opentelemetry-propagator-grpc-census-binary/tsconfig.json
rename to metapackages/auto-configuration-propagators/tsconfig.json
diff --git a/metapackages/auto-instrumentations-node/CHANGELOG.md b/metapackages/auto-instrumentations-node/CHANGELOG.md
index d3da087169..1beb3cbd8c 100644
--- a/metapackages/auto-instrumentations-node/CHANGELOG.md
+++ b/metapackages/auto-instrumentations-node/CHANGELOG.md
@@ -1,5 +1,273 @@
# Changelog
+## [0.52.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.52.0...auto-instrumentations-node-v0.52.1) (2024-11-07)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-aws-lambda bumped from ^0.46.0 to ^0.47.0
+ * @opentelemetry/instrumentation-aws-sdk bumped from ^0.45.0 to ^0.46.0
+ * @opentelemetry/instrumentation-mysql2 bumped from ^0.42.0 to ^0.42.1
+ * @opentelemetry/instrumentation-pg bumped from ^0.47.0 to ^0.47.1
+ * @opentelemetry/instrumentation-undici bumped from ^0.7.0 to ^0.7.1
+
+## [0.52.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.51.0...auto-instrumentations-node-v0.52.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-amqplib bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-aws-lambda bumped from ^0.45.0 to ^0.46.0
+ * @opentelemetry/instrumentation-aws-sdk bumped from ^0.44.0 to ^0.45.0
+ * @opentelemetry/instrumentation-bunyan bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-cassandra-driver bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-connect bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-cucumber bumped from ^0.9.0 to ^0.10.0
+ * @opentelemetry/instrumentation-dataloader bumped from ^0.12.0 to ^0.13.0
+ * @opentelemetry/instrumentation-dns bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-express bumped from ^0.43.0 to ^0.44.0
+ * @opentelemetry/instrumentation-fastify bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-fs bumped from ^0.15.0 to ^0.16.0
+ * @opentelemetry/instrumentation-generic-pool bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-graphql bumped from ^0.43.0 to ^0.44.0
+ * @opentelemetry/instrumentation-hapi bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-ioredis bumped from ^0.43.0 to ^0.44.0
+ * @opentelemetry/instrumentation-kafkajs bumped from ^0.3.0 to ^0.4.0
+ * @opentelemetry/instrumentation-knex bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-koa bumped from ^0.43.0 to ^0.44.0
+ * @opentelemetry/instrumentation-lru-memoizer bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-memcached bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-mongodb bumped from ^0.47.0 to ^0.48.0
+ * @opentelemetry/instrumentation-mongoose bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-mysql bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-mysql2 bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-nestjs-core bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-net bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-pg bumped from ^0.46.0 to ^0.47.0
+ * @opentelemetry/instrumentation-pino bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-redis bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-redis-4 bumped from ^0.42.1 to ^0.43.0
+ * @opentelemetry/instrumentation-restify bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-router bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-socket.io bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-tedious bumped from ^0.14.0 to ^0.15.0
+ * @opentelemetry/instrumentation-undici bumped from ^0.6.0 to ^0.7.0
+ * @opentelemetry/instrumentation-winston bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/resource-detector-alibaba-cloud bumped from ^0.29.3 to ^0.29.4
+ * @opentelemetry/resource-detector-aws bumped from ^1.6.2 to ^1.7.0
+ * @opentelemetry/resource-detector-azure bumped from ^0.2.11 to ^0.2.12
+ * @opentelemetry/resource-detector-container bumped from ^0.4.4 to ^0.5.0
+ * @opentelemetry/resource-detector-gcp bumped from ^0.29.12 to ^0.29.13
+
+## [0.51.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.50.2...auto-instrumentations-node-v0.51.0) (2024-10-16)
+
+
+### ⚠ BREAKING CHANGES
+
+* **auto-instrumentations-node:** disable @opentelemetry/instrumentation-fs by default ([#2467](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2467))
+
+### Features
+
+* **auto-instrumentations-node:** disable @opentelemetry/instrumentation-fs by default ([#2467](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2467)) ([a558044](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/a55804415d39c751a3f5f58c00cf27747821302f))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-pg bumped from ^0.45.1 to ^0.46.0
+ * @opentelemetry/resource-detector-container bumped from ^0.4.3 to ^0.4.4
+
+## [0.50.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.50.1...auto-instrumentations-node-v0.50.2) (2024-10-10)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-pg bumped from ^0.45.0 to ^0.45.1
+ * @opentelemetry/resource-detector-alibaba-cloud bumped from ^0.29.2 to ^0.29.3
+ * @opentelemetry/resource-detector-container bumped from ^0.4.2 to ^0.4.3
+
+## [0.50.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.50.0...auto-instrumentations-node-v0.50.1) (2024-10-08)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-aws-lambda bumped from ^0.44.0 to ^0.45.0
+ * @opentelemetry/instrumentation-express bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-fastify bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-pg bumped from ^0.44.0 to ^0.45.0
+ * @opentelemetry/instrumentation-redis-4 bumped from ^0.42.0 to ^0.42.1
+ * @opentelemetry/resource-detector-alibaba-cloud bumped from ^0.29.1 to ^0.29.2
+ * @opentelemetry/resource-detector-aws bumped from ^1.6.1 to ^1.6.2
+ * @opentelemetry/resource-detector-container bumped from ^0.4.1 to ^0.4.2
+ * @opentelemetry/resource-detector-gcp bumped from ^0.29.11 to ^0.29.12
+
+## [0.50.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.49.2...auto-instrumentations-node-v0.50.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-amqplib bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-aws-lambda bumped from ^0.43.0 to ^0.44.0
+ * @opentelemetry/instrumentation-aws-sdk bumped from ^0.43.1 to ^0.44.0
+ * @opentelemetry/instrumentation-bunyan bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-cassandra-driver bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-connect bumped from ^0.38.0 to ^0.39.0
+ * @opentelemetry/instrumentation-cucumber bumped from ^0.8.0 to ^0.9.0
+ * @opentelemetry/instrumentation-dataloader bumped from ^0.11.0 to ^0.12.0
+ * @opentelemetry/instrumentation-dns bumped from ^0.38.0 to ^0.39.0
+ * @opentelemetry/instrumentation-express bumped from ^0.41.1 to ^0.42.0
+ * @opentelemetry/instrumentation-fastify bumped from ^0.38.0 to ^0.39.0
+ * @opentelemetry/instrumentation-fs bumped from ^0.14.0 to ^0.15.0
+ * @opentelemetry/instrumentation-generic-pool bumped from ^0.38.1 to ^0.39.0
+ * @opentelemetry/instrumentation-graphql bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-hapi bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-ioredis bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-kafkajs bumped from ^0.2.0 to ^0.3.0
+ * @opentelemetry/instrumentation-knex bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-koa bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-lru-memoizer bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-memcached bumped from ^0.38.0 to ^0.39.0
+ * @opentelemetry/instrumentation-mongodb bumped from ^0.46.0 to ^0.47.0
+ * @opentelemetry/instrumentation-mongoose bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-mysql bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-mysql2 bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-nestjs-core bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-net bumped from ^0.38.0 to ^0.39.0
+ * @opentelemetry/instrumentation-pg bumped from ^0.43.0 to ^0.44.0
+ * @opentelemetry/instrumentation-pino bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-redis bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-redis-4 bumped from ^0.41.1 to ^0.42.0
+ * @opentelemetry/instrumentation-restify bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-router bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-socket.io bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-tedious bumped from ^0.13.0 to ^0.14.0
+ * @opentelemetry/instrumentation-undici bumped from ^0.5.0 to ^0.6.0
+ * @opentelemetry/instrumentation-winston bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/resource-detector-alibaba-cloud bumped from ^0.29.0 to ^0.29.1
+ * @opentelemetry/resource-detector-aws bumped from ^1.6.0 to ^1.6.1
+ * @opentelemetry/resource-detector-azure bumped from ^0.2.10 to ^0.2.11
+ * @opentelemetry/resource-detector-container bumped from ^0.4.0 to ^0.4.1
+ * @opentelemetry/resource-detector-gcp bumped from ^0.29.10 to ^0.29.11
+
+## [0.49.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.49.1...auto-instrumentations-node-v0.49.2) (2024-08-27)
+
+
+### Bug Fixes
+
+* **auto-instrumentations-node:** shutdown the SDK when the process exits normally ([#2394](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2394)) ([0f90b3d](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0f90b3d5c0b16903d23567eb724ce1edf9cf327d))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-generic-pool bumped from ^0.38.0 to ^0.38.1
+ * @opentelemetry/instrumentation-mongoose bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-redis-4 bumped from ^0.41.0 to ^0.41.1
+ * @opentelemetry/instrumentation-tedious bumped from ^0.12.0 to ^0.13.0
+ * @opentelemetry/instrumentation-undici bumped from ^0.4.0 to ^0.5.0
+ * @opentelemetry/resource-detector-aws bumped from ^1.5.2 to ^1.6.0
+ * @opentelemetry/resource-detector-azure bumped from ^0.2.9 to ^0.2.10
+ * @opentelemetry/resource-detector-container bumped from ^0.3.11 to ^0.4.0
+
+## [0.49.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.49.0...auto-instrumentations-node-v0.49.1) (2024-08-05)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-amqplib bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/resource-detector-alibaba-cloud bumped from ^0.28.10 to ^0.29.0
+
+## [0.49.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.48.0...auto-instrumentations-node-v0.49.0) (2024-07-23)
+
+
+### Features
+
+* **auto-instrumentations-node:** enable auto-instrumentation for KafkaJS ([#2340](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2340)) ([8302464](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/830246460beed0ece9c61852675943bb86161692))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-amqplib bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-aws-sdk bumped from ^0.43.0 to ^0.43.1
+ * @opentelemetry/instrumentation-express bumped from ^0.41.0 to ^0.41.1
+ * @opentelemetry/instrumentation-knex bumped from ^0.38.0 to ^0.39.0
+
+## [0.48.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.47.1...auto-instrumentations-node-v0.48.0) (2024-07-03)
+
+
+### Features
+
+* **auto-instrumentations-node:** disabling instrumentations via env var ([#2174](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2174)) ([c3afab7](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/c3afab7ddd4e86fd32478b19f64b94b33f157520))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-amqplib bumped from ^0.38.0 to ^0.39.0
+ * @opentelemetry/instrumentation-aws-lambda bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-aws-sdk bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-bunyan bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-cassandra-driver bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-connect bumped from ^0.37.0 to ^0.38.0
+ * @opentelemetry/instrumentation-cucumber bumped from ^0.7.0 to ^0.8.0
+ * @opentelemetry/instrumentation-dataloader bumped from ^0.10.0 to ^0.11.0
+ * @opentelemetry/instrumentation-dns bumped from ^0.37.0 to ^0.38.0
+ * @opentelemetry/instrumentation-express bumped from ^0.40.1 to ^0.41.0
+ * @opentelemetry/instrumentation-fastify bumped from ^0.37.0 to ^0.38.0
+ * @opentelemetry/instrumentation-fs bumped from ^0.13.0 to ^0.14.0
+ * @opentelemetry/instrumentation-generic-pool bumped from ^0.37.0 to ^0.38.0
+ * @opentelemetry/instrumentation-graphql bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-hapi bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-ioredis bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-knex bumped from ^0.37.0 to ^0.38.0
+ * @opentelemetry/instrumentation-koa bumped from ^0.41.0 to ^0.42.0
+ * @opentelemetry/instrumentation-lru-memoizer bumped from ^0.38.0 to ^0.39.0
+ * @opentelemetry/instrumentation-memcached bumped from ^0.37.0 to ^0.38.0
+ * @opentelemetry/instrumentation-mongodb bumped from ^0.45.0 to ^0.46.0
+ * @opentelemetry/instrumentation-mongoose bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-mysql bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-mysql2 bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-nestjs-core bumped from ^0.38.0 to ^0.39.0
+ * @opentelemetry/instrumentation-net bumped from ^0.37.0 to ^0.38.0
+ * @opentelemetry/instrumentation-pg bumped from ^0.42.0 to ^0.43.0
+ * @opentelemetry/instrumentation-pino bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-redis bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-redis-4 bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-restify bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-router bumped from ^0.38.0 to ^0.39.0
+ * @opentelemetry/instrumentation-socket.io bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-tedious bumped from ^0.11.0 to ^0.12.0
+ * @opentelemetry/instrumentation-undici bumped from ^0.3.0 to ^0.4.0
+ * @opentelemetry/instrumentation-winston bumped from ^0.38.0 to ^0.39.0
+ * @opentelemetry/resource-detector-aws bumped from ^1.5.1 to ^1.5.2
+
## [0.47.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-node-v0.47.0...auto-instrumentations-node-v0.47.1) (2024-06-10)
diff --git a/metapackages/auto-instrumentations-node/README.md b/metapackages/auto-instrumentations-node/README.md
index 221a0570a5..b41c31fa3c 100644
--- a/metapackages/auto-instrumentations-node/README.md
+++ b/metapackages/auto-instrumentations-node/README.md
@@ -77,8 +77,9 @@ For example, to enable only the `env`, `host` detectors:
export OTEL_NODE_RESOURCE_DETECTORS="env,host"
```
-By default, all [Supported Instrumentations](#supported-instrumentations) are enabled,
-but you can use the environment variable `OTEL_NODE_ENABLED_INSTRUMENTATIONS` to enable only certain instrumentations
+By default, all [Supported Instrumentations](#supported-instrumentations) are enabled, unless they are annotated with "default disabled".
+You can use the environment variable `OTEL_NODE_ENABLED_INSTRUMENTATIONS` to enable only certain instrumentations, including "default disabled" ones
+OR the environment variable `OTEL_NODE_DISABLED_INSTRUMENTATIONS` to disable only certain instrumentations,
by providing a comma-separated list of the instrumentation package names without the `@opentelemetry/instrumentation-` prefix.
For example, to enable only
@@ -90,6 +91,15 @@ instrumentations:
export OTEL_NODE_ENABLED_INSTRUMENTATIONS="http,nestjs-core"
```
+To disable only [@opentelemetry/instrumentation-net](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-net):
+
+```shell
+export OTEL_NODE_DISABLED_INSTRUMENTATIONS="net"
+```
+
+If both environment variables are set, `OTEL_NODE_ENABLED_INSTRUMENTATIONS` is applied first, and then `OTEL_NODE_DISABLED_INSTRUMENTATIONS` is applied to that list.
+Therefore, if the same instrumentation is included in both lists, that instrumentation will be disabled.
+
To enable logging for troubleshooting, set the log level by setting the `OTEL_LOG_LEVEL` environment variable to one of the following:
- `none`
@@ -160,12 +170,14 @@ registerInstrumentations({
- [@opentelemetry/instrumentation-dns](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-dns)
- [@opentelemetry/instrumentation-express](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-express)
- [@opentelemetry/instrumentation-fastify](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-fastify)
+- [@opentelemetry/instrumentation-fs](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-fs) (default disabled)
- [@opentelemetry/instrumentation-generic-pool](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-generic-pool)
- [@opentelemetry/instrumentation-graphql](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-graphql)
- [@opentelemetry/instrumentation-grpc](https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-grpc)
- [@opentelemetry/instrumentation-hapi](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-hapi)
- [@opentelemetry/instrumentation-http](https://github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-http)
- [@opentelemetry/instrumentation-ioredis](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-ioredis)
+- [@opentelemetry/instrumentation-kafkajs](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-kafkajs)
- [@opentelemetry/instrumentation-knex](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-knex)
- [@opentelemetry/instrumentation-koa](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-koa)
- [@opentelemetry/instrumentation-lru-memoizer](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-lru-memoizer)
diff --git a/metapackages/auto-instrumentations-node/package.json b/metapackages/auto-instrumentations-node/package.json
index 53028866b8..cccfd0a84b 100644
--- a/metapackages/auto-instrumentations-node/package.json
+++ b/metapackages/auto-instrumentations-node/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/auto-instrumentations-node",
- "version": "0.47.1",
+ "version": "0.52.1",
"description": "Metapackage which bundles opentelemetry node core and contrib instrumentations",
"author": "OpenTelemetry Authors",
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/metapackages/auto-instrumentations-node#readme",
@@ -23,11 +23,10 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/auto-instrumentations-node --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "yarn test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.ts'",
+ "test": "nyc mocha 'test/**/*.ts'",
"watch": "tsc -w"
},
"bugs": {
@@ -39,62 +38,61 @@
"devDependencies": {
"@opentelemetry/api": "^1.4.1",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/instrumentation-amqplib": "^0.38.0",
- "@opentelemetry/instrumentation-aws-lambda": "^0.42.0",
- "@opentelemetry/instrumentation-aws-sdk": "^0.42.0",
- "@opentelemetry/instrumentation-bunyan": "^0.39.0",
- "@opentelemetry/instrumentation-cassandra-driver": "^0.39.0",
- "@opentelemetry/instrumentation-connect": "^0.37.0",
- "@opentelemetry/instrumentation-cucumber": "^0.7.0",
- "@opentelemetry/instrumentation-dataloader": "^0.10.0",
- "@opentelemetry/instrumentation-dns": "^0.37.0",
- "@opentelemetry/instrumentation-express": "^0.40.1",
- "@opentelemetry/instrumentation-fastify": "^0.37.0",
- "@opentelemetry/instrumentation-fs": "^0.13.0",
- "@opentelemetry/instrumentation-generic-pool": "^0.37.0",
- "@opentelemetry/instrumentation-graphql": "^0.41.0",
- "@opentelemetry/instrumentation-grpc": "^0.52.0",
- "@opentelemetry/instrumentation-hapi": "^0.39.0",
- "@opentelemetry/instrumentation-http": "^0.52.0",
- "@opentelemetry/instrumentation-ioredis": "^0.41.0",
- "@opentelemetry/instrumentation-knex": "^0.37.0",
- "@opentelemetry/instrumentation-koa": "^0.41.0",
- "@opentelemetry/instrumentation-lru-memoizer": "^0.38.0",
- "@opentelemetry/instrumentation-memcached": "^0.37.0",
- "@opentelemetry/instrumentation-mongodb": "^0.45.0",
- "@opentelemetry/instrumentation-mongoose": "^0.39.0",
- "@opentelemetry/instrumentation-mysql": "^0.39.0",
- "@opentelemetry/instrumentation-mysql2": "^0.39.0",
- "@opentelemetry/instrumentation-nestjs-core": "^0.38.0",
- "@opentelemetry/instrumentation-net": "^0.37.0",
- "@opentelemetry/instrumentation-pg": "^0.42.0",
- "@opentelemetry/instrumentation-pino": "^0.40.0",
- "@opentelemetry/instrumentation-redis": "^0.40.0",
- "@opentelemetry/instrumentation-redis-4": "^0.40.0",
- "@opentelemetry/instrumentation-restify": "^0.39.0",
- "@opentelemetry/instrumentation-router": "^0.38.0",
- "@opentelemetry/instrumentation-socket.io": "^0.40.0",
- "@opentelemetry/instrumentation-tedious": "^0.11.0",
- "@opentelemetry/instrumentation-undici": "^0.3.0",
- "@opentelemetry/instrumentation-winston": "^0.38.0",
- "@opentelemetry/resource-detector-alibaba-cloud": "^0.28.10",
- "@opentelemetry/resource-detector-aws": "^1.5.1",
- "@opentelemetry/resource-detector-azure": "^0.2.9",
- "@opentelemetry/resource-detector-container": "^0.3.11",
- "@opentelemetry/resource-detector-gcp": "^0.29.10",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/instrumentation-amqplib": "^0.43.0",
+ "@opentelemetry/instrumentation-aws-lambda": "^0.47.0",
+ "@opentelemetry/instrumentation-aws-sdk": "^0.46.0",
+ "@opentelemetry/instrumentation-bunyan": "^0.42.0",
+ "@opentelemetry/instrumentation-cassandra-driver": "^0.42.0",
+ "@opentelemetry/instrumentation-connect": "^0.40.0",
+ "@opentelemetry/instrumentation-cucumber": "^0.10.0",
+ "@opentelemetry/instrumentation-dataloader": "^0.13.0",
+ "@opentelemetry/instrumentation-dns": "^0.40.0",
+ "@opentelemetry/instrumentation-express": "^0.44.0",
+ "@opentelemetry/instrumentation-fastify": "^0.41.0",
+ "@opentelemetry/instrumentation-fs": "^0.16.0",
+ "@opentelemetry/instrumentation-generic-pool": "^0.40.0",
+ "@opentelemetry/instrumentation-graphql": "^0.44.0",
+ "@opentelemetry/instrumentation-grpc": "^0.54.0",
+ "@opentelemetry/instrumentation-hapi": "^0.42.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
+ "@opentelemetry/instrumentation-ioredis": "^0.44.0",
+ "@opentelemetry/instrumentation-kafkajs": "^0.4.0",
+ "@opentelemetry/instrumentation-knex": "^0.41.0",
+ "@opentelemetry/instrumentation-koa": "^0.44.0",
+ "@opentelemetry/instrumentation-lru-memoizer": "^0.41.0",
+ "@opentelemetry/instrumentation-memcached": "^0.40.0",
+ "@opentelemetry/instrumentation-mongodb": "^0.48.0",
+ "@opentelemetry/instrumentation-mongoose": "^0.43.0",
+ "@opentelemetry/instrumentation-mysql": "^0.42.0",
+ "@opentelemetry/instrumentation-mysql2": "^0.42.1",
+ "@opentelemetry/instrumentation-nestjs-core": "^0.41.0",
+ "@opentelemetry/instrumentation-net": "^0.40.0",
+ "@opentelemetry/instrumentation-pg": "^0.47.1",
+ "@opentelemetry/instrumentation-pino": "^0.43.0",
+ "@opentelemetry/instrumentation-redis": "^0.43.0",
+ "@opentelemetry/instrumentation-redis-4": "^0.43.0",
+ "@opentelemetry/instrumentation-restify": "^0.42.0",
+ "@opentelemetry/instrumentation-router": "^0.41.0",
+ "@opentelemetry/instrumentation-socket.io": "^0.43.0",
+ "@opentelemetry/instrumentation-tedious": "^0.15.0",
+ "@opentelemetry/instrumentation-undici": "^0.7.1",
+ "@opentelemetry/instrumentation-winston": "^0.41.0",
+ "@opentelemetry/resource-detector-alibaba-cloud": "^0.29.4",
+ "@opentelemetry/resource-detector-aws": "^1.7.0",
+ "@opentelemetry/resource-detector-azure": "^0.2.12",
+ "@opentelemetry/resource-detector-container": "^0.5.0",
+ "@opentelemetry/resource-detector-gcp": "^0.29.13",
"@opentelemetry/resources": "^1.24.0",
- "@opentelemetry/sdk-node": "^0.52.0"
+ "@opentelemetry/sdk-node": "^0.54.0"
},
"files": [
"build/src/**/*.js",
diff --git a/metapackages/auto-instrumentations-node/src/register.ts b/metapackages/auto-instrumentations-node/src/register.ts
index a14538da66..d47556f061 100644
--- a/metapackages/auto-instrumentations-node/src/register.ts
+++ b/metapackages/auto-instrumentations-node/src/register.ts
@@ -40,9 +40,16 @@ try {
);
}
-process.on('SIGTERM', () => {
- sdk
- .shutdown()
- .then(() => diag.debug('OpenTelemetry SDK terminated'))
- .catch(error => diag.error('Error terminating OpenTelemetry SDK', error));
-});
+async function shutdown(): Promise {
+ try {
+ await sdk.shutdown();
+ diag.debug('OpenTelemetry SDK terminated');
+ } catch (error) {
+ diag.error('Error terminating OpenTelemetry SDK', error);
+ }
+}
+
+// Gracefully shutdown SDK if a SIGTERM is received
+process.on('SIGTERM', shutdown);
+// Gracefully shutdown SDK if Node.js is exiting normally
+process.once('beforeExit', shutdown);
diff --git a/metapackages/auto-instrumentations-node/src/utils.ts b/metapackages/auto-instrumentations-node/src/utils.ts
index 04f4c1ed50..d7e6a0cd6b 100644
--- a/metapackages/auto-instrumentations-node/src/utils.ts
+++ b/metapackages/auto-instrumentations-node/src/utils.ts
@@ -35,6 +35,7 @@ import { GrpcInstrumentation } from '@opentelemetry/instrumentation-grpc';
import { HapiInstrumentation } from '@opentelemetry/instrumentation-hapi';
import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
import { IORedisInstrumentation } from '@opentelemetry/instrumentation-ioredis';
+import { KafkaJsInstrumentation } from '@opentelemetry/instrumentation-kafkajs';
import { KnexInstrumentation } from '@opentelemetry/instrumentation-knex';
import { KoaInstrumentation } from '@opentelemetry/instrumentation-koa';
import { LruMemoizerInstrumentation } from '@opentelemetry/instrumentation-lru-memoizer';
@@ -112,6 +113,7 @@ const InstrumentationMap = {
'@opentelemetry/instrumentation-hapi': HapiInstrumentation,
'@opentelemetry/instrumentation-http': HttpInstrumentation,
'@opentelemetry/instrumentation-ioredis': IORedisInstrumentation,
+ '@opentelemetry/instrumentation-kafkajs': KafkaJsInstrumentation,
'@opentelemetry/instrumentation-knex': KnexInstrumentation,
'@opentelemetry/instrumentation-koa': KoaInstrumentation,
'@opentelemetry/instrumentation-lru-memoizer': LruMemoizerInstrumentation,
@@ -134,6 +136,8 @@ const InstrumentationMap = {
'@opentelemetry/instrumentation-winston': WinstonInstrumentation,
};
+const defaultExcludedInstrumentations = ['@opentelemetry/instrumentation-fs'];
+
// Config types inferred automatically from the first argument of the constructor
type ConfigArg = T extends new (...args: infer U) => unknown ? U[0] : never;
export type InstrumentationConfigMap = {
@@ -147,6 +151,7 @@ export function getNodeAutoInstrumentations(
): Instrumentation[] {
checkManuallyProvidedInstrumentationNames(Object.keys(inputConfigs));
const enabledInstrumentationsFromEnv = getEnabledInstrumentationsFromEnv();
+ const disabledInstrumentationsFromEnv = getDisabledInstrumentationsFromEnv();
const instrumentations: Instrumentation[] = [];
@@ -159,7 +164,8 @@ export function getNodeAutoInstrumentations(
if (
userConfig.enabled === false ||
- !enabledInstrumentationsFromEnv.includes(name)
+ !enabledInstrumentationsFromEnv.includes(name) ||
+ disabledInstrumentationsFromEnv.includes(name)
) {
diag.debug(`Disabling instrumentation for ${name}`);
continue;
@@ -186,20 +192,51 @@ function checkManuallyProvidedInstrumentationNames(
}
}
+function getInstrumentationsFromEnv(envVar: string): string[] {
+ const envVarValue = process.env[envVar];
+ if (envVarValue == null) {
+ return [];
+ }
+
+ const instrumentationsFromEnv = envVarValue
+ ?.split(',')
+ .map(
+ instrumentationPkgSuffix =>
+ `@opentelemetry/instrumentation-${instrumentationPkgSuffix.trim()}`
+ );
+ checkManuallyProvidedInstrumentationNames(instrumentationsFromEnv);
+ return instrumentationsFromEnv;
+}
+
/**
* Returns the list of instrumentations that are enabled based on the environment variable.
+ * If the environment variable is unset, returns all instrumentation that are enabled by default.
*/
function getEnabledInstrumentationsFromEnv() {
if (!process.env.OTEL_NODE_ENABLED_INSTRUMENTATIONS) {
- return Object.keys(InstrumentationMap);
+ // all keys in the InstrumentationMap except for everything that is not enabled by default.
+ return Object.keys(InstrumentationMap).filter(
+ key => !defaultExcludedInstrumentations.includes(key)
+ );
}
- const instrumentationsFromEnv =
- process.env.OTEL_NODE_ENABLED_INSTRUMENTATIONS.split(',').map(
- instrumentationPkgSuffix =>
- `@opentelemetry/instrumentation-${instrumentationPkgSuffix.trim()}`
- );
- checkManuallyProvidedInstrumentationNames(instrumentationsFromEnv);
+ const instrumentationsFromEnv = getInstrumentationsFromEnv(
+ 'OTEL_NODE_ENABLED_INSTRUMENTATIONS'
+ );
+ return instrumentationsFromEnv;
+}
+
+/**
+ * Returns the list of instrumentations that are disabled based on the environment variable.
+ */
+function getDisabledInstrumentationsFromEnv() {
+ if (!process.env.OTEL_NODE_DISABLED_INSTRUMENTATIONS) {
+ return [];
+ }
+
+ const instrumentationsFromEnv = getInstrumentationsFromEnv(
+ 'OTEL_NODE_DISABLED_INSTRUMENTATIONS'
+ );
return instrumentationsFromEnv;
}
diff --git a/metapackages/auto-instrumentations-node/test/register.test.ts b/metapackages/auto-instrumentations-node/test/register.test.ts
index 8476e0c340..2f952541db 100644
--- a/metapackages/auto-instrumentations-node/test/register.test.ts
+++ b/metapackages/auto-instrumentations-node/test/register.test.ts
@@ -14,42 +14,92 @@
* limitations under the License.
*/
-import { spawnSync } from 'child_process';
+import { execFile, PromiseWithChild } from 'child_process';
import * as assert from 'assert';
+import { promisify } from 'util';
+import { Readable } from 'stream';
-describe('Register', function () {
- it('can load auto instrumentation from command line', () => {
- const proc = spawnSync(
- process.execPath,
- ['--require', '../build/src/register.js', './test-app/app.js'],
- {
- cwd: __dirname,
- timeout: 5000,
- killSignal: 'SIGKILL', // SIGTERM is not sufficient to terminate some hangs
- env: Object.assign({}, process.env, {
- OTEL_NODE_RESOURCE_DETECTORS: 'none',
- OTEL_TRACES_EXPORTER: 'console',
- // nx (used by lerna run) defaults `FORCE_COLOR=true`, which in
- // node v18.17.0, v20.3.0 and later results in ANSI color escapes
- // in the ConsoleSpanExporter output that is checked below.
- FORCE_COLOR: '0',
- }),
+const execFilePromise = promisify(execFile);
+
+function runWithRegister(path: string): PromiseWithChild<{
+ stdout: string;
+ stderr: string;
+}> {
+ return execFilePromise(
+ process.execPath,
+ ['--require', '../build/src/register.js', path],
+ {
+ cwd: __dirname,
+ timeout: 1500,
+ killSignal: 'SIGKILL', // SIGTERM is not sufficient to terminate some hangs
+ env: Object.assign({}, process.env, {
+ OTEL_NODE_RESOURCE_DETECTORS: 'none',
+ OTEL_TRACES_EXPORTER: 'console',
+ OTEL_LOG_LEVEL: 'debug',
+ // nx (used by lerna run) defaults `FORCE_COLOR=true`, which in
+ // node v18.17.0, v20.3.0 and later results in ANSI color escapes
+ // in the ConsoleSpanExporter output that is checked below.
+ FORCE_COLOR: '0',
+ }),
+ }
+ );
+}
+
+function waitForString(stream: Readable, str: string): Promise {
+ return new Promise((resolve, reject) => {
+ function check(chunk: Buffer): void {
+ if (chunk.includes(str)) {
+ resolve();
+ stream.off('data', check);
}
+ }
+ stream.on('data', check);
+ stream.on('close', () =>
+ reject(`Stream closed without ever seeing "${str}"`)
+ );
+ });
+}
+
+describe('Register', function () {
+ it('can load auto instrumentation from command line', async () => {
+ const runPromise = runWithRegister('./test-app/app.js');
+ const { child } = runPromise;
+ const { stdout } = await runPromise;
+ assert.equal(child.exitCode, 0, `child.exitCode (${child.exitCode})`);
+ assert.equal(
+ child.signalCode,
+ null,
+ `child.signalCode (${child.signalCode})`
);
- assert.ifError(proc.error);
- assert.equal(proc.status, 0, `proc.status (${proc.status})`);
- assert.equal(proc.signal, null, `proc.signal (${proc.signal})`);
assert.ok(
- proc.stdout.includes(
+ stdout.includes(
'OpenTelemetry automatic instrumentation started successfully'
)
);
+ assert.ok(
+ stdout.includes('OpenTelemetry SDK terminated'),
+ `Process output was missing message indicating successful shutdown, got stdout:\n${stdout}`
+ );
+
// Check a span has been generated for the GET request done in app.js
+ assert.ok(stdout.includes("name: 'GET'"), 'console span output in stdout');
+ });
+
+ it('shuts down the NodeSDK when SIGTERM is received', async () => {
+ const runPromise = runWithRegister('./test-app/app-server.js');
+ const { child } = runPromise;
+ await waitForString(child.stdout!, 'Finshed request');
+ child.kill('SIGTERM');
+ const { stdout } = await runPromise;
+
assert.ok(
- proc.stdout.includes("name: 'GET'"),
- 'console span output in stdout'
+ stdout.includes('OpenTelemetry SDK terminated'),
+ `Process output was missing message indicating successful shutdown, got stdout:\n${stdout}`
);
+
+ // Check a span has been generated for the GET request done in app.js
+ assert.ok(stdout.includes("name: 'GET'"), 'console span output in stdout');
});
});
diff --git a/metapackages/auto-instrumentations-node/test/test-app/app-server.js b/metapackages/auto-instrumentations-node/test/test-app/app-server.js
new file mode 100644
index 0000000000..489b4dfb7a
--- /dev/null
+++ b/metapackages/auto-instrumentations-node/test/test-app/app-server.js
@@ -0,0 +1,38 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+//Used in register.test.ts to mimic a JS app that stays alive like a server.
+const http = require('http');
+
+const options = {
+ hostname: 'example.com',
+ port: 80,
+ path: '/',
+ method: 'GET',
+};
+
+const req = http.request(options);
+req.end();
+req.on('close', () => {
+ console.log('Finshed request');
+});
+
+// Make sure there is work on the event loop
+const handle = setInterval(() => {}, 1);
+// Gracefully shut down
+process.on('SIGTERM', () => {
+ clearInterval(handle);
+});
diff --git a/metapackages/auto-instrumentations-node/test/utils.test.ts b/metapackages/auto-instrumentations-node/test/utils.test.ts
index 0622022f36..d2959b6ddd 100644
--- a/metapackages/auto-instrumentations-node/test/utils.test.ts
+++ b/metapackages/auto-instrumentations-node/test/utils.test.ts
@@ -23,12 +23,15 @@ import { getResourceDetectorsFromEnv } from '../src/utils';
describe('utils', () => {
describe('getNodeAutoInstrumentations', () => {
- it('should include all installed instrumentations', () => {
+ it('should include all default instrumentations', () => {
const instrumentations = getNodeAutoInstrumentations();
const installedInstrumentations = Object.keys(
require('../package.json').dependencies
).filter(depName => {
- return depName.startsWith('@opentelemetry/instrumentation-');
+ return (
+ depName.startsWith('@opentelemetry/instrumentation-') &&
+ depName !== '@opentelemetry/instrumentation-fs'
+ );
});
assert.deepStrictEqual(
@@ -89,6 +92,64 @@ describe('utils', () => {
}
});
+ it('should allow enabling non-default instrumentations via OTEL_NODE_ENABLED_INSTRUMENTATIONS environment variable', () => {
+ process.env.OTEL_NODE_ENABLED_INSTRUMENTATIONS = 'fs'; // separator with and without whitespaces should be allowed
+ try {
+ const instrumentations = getNodeAutoInstrumentations();
+
+ assert.deepStrictEqual(
+ new Set(instrumentations.map(i => i.instrumentationName)),
+ new Set(['@opentelemetry/instrumentation-fs'])
+ );
+ } finally {
+ delete process.env.OTEL_NODE_ENABLED_INSTRUMENTATIONS;
+ }
+ });
+
+ it('should include all instrumentations except those disabled via OTEL_NODE_DISABLED_INSTRUMENTATIONS environment variable', () => {
+ process.env.OTEL_NODE_DISABLED_INSTRUMENTATIONS =
+ 'fs,aws-sdk, aws-lambda'; // separator with and without whitespaces should be allowed
+ try {
+ const instrumentations = getNodeAutoInstrumentations();
+ const disabledInstrumentations = new Set([
+ '@opentelemetry/instrumentation-fs',
+ '@opentelemetry/instrumentation-aws-sdk',
+ '@opentelemetry/instrumentation-aws-lambda',
+ ]);
+ const enabledInstrumentationNames = new Set(
+ instrumentations.map(i => i.instrumentationName)
+ );
+
+ for (const disabledInstrumentation of disabledInstrumentations) {
+ assert.strictEqual(
+ enabledInstrumentationNames.has(disabledInstrumentation),
+ false
+ );
+ }
+ } finally {
+ delete process.env.OTEL_NODE_DISABLED_INSTRUMENTATIONS;
+ }
+ });
+
+ it('should disable any instrumentations from OTEL_NODE_ENABLED_INSTRUMENTATIONS if set in OTEL_NODE_DISABLED_INSTRUMENTATIONS', () => {
+ process.env.OTEL_NODE_ENABLED_INSTRUMENTATIONS = 'http,express,net';
+ process.env.OTEL_NODE_DISABLED_INSTRUMENTATIONS = 'fs,net'; // fs is no-op here, already disabled
+ try {
+ const instrumentations = getNodeAutoInstrumentations();
+
+ assert.deepStrictEqual(
+ new Set(instrumentations.map(i => i.instrumentationName)),
+ new Set([
+ '@opentelemetry/instrumentation-http',
+ '@opentelemetry/instrumentation-express',
+ ])
+ );
+ } finally {
+ delete process.env.OTEL_NODE_DISABLED_INSTRUMENTATIONS;
+ delete process.env.OTEL_NODE_ENABLED_INSTRUMENTATIONS;
+ }
+ });
+
it('should show error for none existing instrumentation', () => {
const spy = sinon.stub(diag, 'error');
const name = '@opentelemetry/instrumentation-http2';
diff --git a/metapackages/auto-instrumentations-web/CHANGELOG.md b/metapackages/auto-instrumentations-web/CHANGELOG.md
index a096fe3011..c1a9d6b5a8 100644
--- a/metapackages/auto-instrumentations-web/CHANGELOG.md
+++ b/metapackages/auto-instrumentations-web/CHANGELOG.md
@@ -1,5 +1,35 @@
# Changelog
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-web-v0.41.0...auto-instrumentations-web-v0.42.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-document-load bumped from ^0.40.0 to ^0.41.0
+ * @opentelemetry/instrumentation-user-interaction bumped from ^0.40.0 to ^0.41.0
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-web-v0.40.0...auto-instrumentations-web-v0.41.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/instrumentation-document-load bumped from ^0.39.0 to ^0.40.0
+ * @opentelemetry/instrumentation-user-interaction bumped from ^0.39.0 to ^0.40.0
+
## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/auto-instrumentations-web-v0.39.0...auto-instrumentations-web-v0.40.0) (2024-06-06)
diff --git a/metapackages/auto-instrumentations-web/package.json b/metapackages/auto-instrumentations-web/package.json
index 37522b0ae7..51cdc12ef6 100644
--- a/metapackages/auto-instrumentations-web/package.json
+++ b/metapackages/auto-instrumentations-web/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/auto-instrumentations-web",
- "version": "0.40.0",
+ "version": "0.42.0",
"description": "Metapackage which bundles opentelemetry node core and contrib instrumentations",
"author": "OpenTelemetry Authors",
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/metapackages/auto-instrumentations-web#readme",
@@ -21,7 +21,6 @@
"compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/auto-instrumentations-web --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"test:browser": "nyc karma start --single-run",
@@ -39,36 +38,33 @@
"@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.3.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/instrumentation-document-load": "^0.39.0",
- "@opentelemetry/instrumentation-fetch": "^0.52.0",
- "@opentelemetry/instrumentation-user-interaction": "^0.39.0",
- "@opentelemetry/instrumentation-xml-http-request": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/instrumentation-document-load": "^0.41.0",
+ "@opentelemetry/instrumentation-fetch": "^0.54.0",
+ "@opentelemetry/instrumentation-user-interaction": "^0.41.0",
+ "@opentelemetry/instrumentation-xml-http-request": "^0.54.0"
},
"files": [
"build/src/**/*.js",
diff --git a/nx.json b/nx.json
new file mode 100644
index 0000000000..6d80c55ce6
--- /dev/null
+++ b/nx.json
@@ -0,0 +1,43 @@
+{
+ "tasksRunnerOptions": {
+ "default": {
+ "runner": "nx/tasks-runners/default",
+ "options": {
+ "cacheableOperations": [
+ "compile",
+ "lint",
+ "version:update"
+ ]
+ }
+ }
+ },
+ "targetDefaults": {
+ "compile": {
+ "dependsOn": [
+ "version:update",
+ "^compile"
+ ],
+ "inputs": [
+ "{projectRoot}/src",
+ "{projectRoot}/test"
+ ],
+ "outputs": [
+ "{projectRoot}/build"
+ ]
+ },
+ "lint": {
+ "inputs": [
+ "{projectRoot}/src",
+ "{projectRoot}/test"
+ ]
+ },
+ "version:update": {
+ "inputs": [
+ "{projectRoot}/package.json"
+ ],
+ "outputs": [
+ "{projectRoot}/src/version.ts"
+ ]
+ }
+ }
+}
diff --git a/package-lock.json b/package-lock.json
index 59886273ad..e25b07b77e 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -31,32 +31,34 @@
"lerna-changelog": "2.2.0",
"markdownlint-cli2": "0.13.0",
"minimatch": "^9.0.3",
+ "mocha": "^10.7.3",
+ "nx": "15.9.7",
"prettier": "2.8.8",
"process": "0.11.10",
"semver": "^7.6.0",
+ "ts-node": "10.9.2",
"util": "0.12.5"
}
},
"detectors/node/opentelemetry-resource-detector-alibaba-cloud": {
"name": "@opentelemetry/resource-detector-alibaba-cloud",
- "version": "0.28.10",
+ "version": "0.29.4",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/core": "^1.26.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -72,27 +74,36 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "detectors/node/opentelemetry-resource-detector-alibaba-cloud/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"detectors/node/opentelemetry-resource-detector-aws": {
"name": "@opentelemetry/resource-detector-aws",
- "version": "1.5.1",
+ "version": "1.7.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.0.0",
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-fs": "^0.16.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -108,25 +119,34 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "detectors/node/opentelemetry-resource-detector-aws/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"detectors/node/opentelemetry-resource-detector-azure": {
"name": "@opentelemetry/resource-detector-azure",
- "version": "0.2.9",
+ "version": "0.2.12",
"license": "Apache-2.0",
"dependencies": {
+ "@opentelemetry/core": "^1.25.1",
"@opentelemetry/resources": "^1.10.1",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"engines": {
@@ -142,27 +162,36 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "detectors/node/opentelemetry-resource-detector-azure/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"detectors/node/opentelemetry-resource-detector-container": {
"name": "@opentelemetry/resource-detector-container",
- "version": "0.3.11",
+ "version": "0.5.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/core": "^1.26.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-fs": "^0.16.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"eslint-plugin-header": "^3.1.1",
- "mocha": "7.2.0",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -178,27 +207,35 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "detectors/node/opentelemetry-resource-detector-container/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"detectors/node/opentelemetry-resource-detector-gcp": {
"name": "@opentelemetry/resource-detector-gcp",
- "version": "0.29.10",
+ "version": "0.29.13",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.0.0",
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"gcp-metadata": "^6.0.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"engines": {
@@ -214,23 +251,30 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "detectors/node/opentelemetry-resource-detector-gcp/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"detectors/node/opentelemetry-resource-detector-github": {
"name": "@opentelemetry/resource-detector-github",
- "version": "0.28.2",
+ "version": "0.29.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/resources": "^1.0.0"
+ "@opentelemetry/resources": "^1.10.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -246,26 +290,33 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "detectors/node/opentelemetry-resource-detector-github/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"detectors/node/opentelemetry-resource-detector-instana": {
"name": "@opentelemetry/resource-detector-instana",
- "version": "0.10.0",
+ "version": "0.14.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/sdk-node": "^0.52.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/sdk-node": "^0.54.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"engines": {
@@ -281,68 +332,114 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "detectors/node/opentelemetry-resource-detector-instana/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
+ "metapackages/auto-configuration-propagators": {
+ "name": "@opentelemetry/auto-configuration-propagators",
+ "version": "0.3.1",
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@opentelemetry/core": "^1.25.1",
+ "@opentelemetry/propagator-aws-xray": "^1.25.1",
+ "@opentelemetry/propagator-aws-xray-lambda": "^0.53.0",
+ "@opentelemetry/propagator-b3": "^1.25.1",
+ "@opentelemetry/propagator-jaeger": "^1.25.1",
+ "@opentelemetry/propagator-ot-trace": "^0.27.2"
+ },
+ "devDependencies": {
+ "@opentelemetry/api": "^1.4.1",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": "^1.4.1"
+ }
+ },
+ "metapackages/auto-configuration-propagators/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"metapackages/auto-instrumentations-node": {
"name": "@opentelemetry/auto-instrumentations-node",
- "version": "0.47.1",
+ "version": "0.52.1",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/instrumentation-amqplib": "^0.38.0",
- "@opentelemetry/instrumentation-aws-lambda": "^0.42.0",
- "@opentelemetry/instrumentation-aws-sdk": "^0.42.0",
- "@opentelemetry/instrumentation-bunyan": "^0.39.0",
- "@opentelemetry/instrumentation-cassandra-driver": "^0.39.0",
- "@opentelemetry/instrumentation-connect": "^0.37.0",
- "@opentelemetry/instrumentation-cucumber": "^0.7.0",
- "@opentelemetry/instrumentation-dataloader": "^0.10.0",
- "@opentelemetry/instrumentation-dns": "^0.37.0",
- "@opentelemetry/instrumentation-express": "^0.40.1",
- "@opentelemetry/instrumentation-fastify": "^0.37.0",
- "@opentelemetry/instrumentation-fs": "^0.13.0",
- "@opentelemetry/instrumentation-generic-pool": "^0.37.0",
- "@opentelemetry/instrumentation-graphql": "^0.41.0",
- "@opentelemetry/instrumentation-grpc": "^0.52.0",
- "@opentelemetry/instrumentation-hapi": "^0.39.0",
- "@opentelemetry/instrumentation-http": "^0.52.0",
- "@opentelemetry/instrumentation-ioredis": "^0.41.0",
- "@opentelemetry/instrumentation-knex": "^0.37.0",
- "@opentelemetry/instrumentation-koa": "^0.41.0",
- "@opentelemetry/instrumentation-lru-memoizer": "^0.38.0",
- "@opentelemetry/instrumentation-memcached": "^0.37.0",
- "@opentelemetry/instrumentation-mongodb": "^0.45.0",
- "@opentelemetry/instrumentation-mongoose": "^0.39.0",
- "@opentelemetry/instrumentation-mysql": "^0.39.0",
- "@opentelemetry/instrumentation-mysql2": "^0.39.0",
- "@opentelemetry/instrumentation-nestjs-core": "^0.38.0",
- "@opentelemetry/instrumentation-net": "^0.37.0",
- "@opentelemetry/instrumentation-pg": "^0.42.0",
- "@opentelemetry/instrumentation-pino": "^0.40.0",
- "@opentelemetry/instrumentation-redis": "^0.40.0",
- "@opentelemetry/instrumentation-redis-4": "^0.40.0",
- "@opentelemetry/instrumentation-restify": "^0.39.0",
- "@opentelemetry/instrumentation-router": "^0.38.0",
- "@opentelemetry/instrumentation-socket.io": "^0.40.0",
- "@opentelemetry/instrumentation-tedious": "^0.11.0",
- "@opentelemetry/instrumentation-undici": "^0.3.0",
- "@opentelemetry/instrumentation-winston": "^0.38.0",
- "@opentelemetry/resource-detector-alibaba-cloud": "^0.28.10",
- "@opentelemetry/resource-detector-aws": "^1.5.1",
- "@opentelemetry/resource-detector-azure": "^0.2.9",
- "@opentelemetry/resource-detector-container": "^0.3.11",
- "@opentelemetry/resource-detector-gcp": "^0.29.10",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/instrumentation-amqplib": "^0.43.0",
+ "@opentelemetry/instrumentation-aws-lambda": "^0.47.0",
+ "@opentelemetry/instrumentation-aws-sdk": "^0.46.0",
+ "@opentelemetry/instrumentation-bunyan": "^0.42.0",
+ "@opentelemetry/instrumentation-cassandra-driver": "^0.42.0",
+ "@opentelemetry/instrumentation-connect": "^0.40.0",
+ "@opentelemetry/instrumentation-cucumber": "^0.10.0",
+ "@opentelemetry/instrumentation-dataloader": "^0.13.0",
+ "@opentelemetry/instrumentation-dns": "^0.40.0",
+ "@opentelemetry/instrumentation-express": "^0.44.0",
+ "@opentelemetry/instrumentation-fastify": "^0.41.0",
+ "@opentelemetry/instrumentation-fs": "^0.16.0",
+ "@opentelemetry/instrumentation-generic-pool": "^0.40.0",
+ "@opentelemetry/instrumentation-graphql": "^0.44.0",
+ "@opentelemetry/instrumentation-grpc": "^0.54.0",
+ "@opentelemetry/instrumentation-hapi": "^0.42.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
+ "@opentelemetry/instrumentation-ioredis": "^0.44.0",
+ "@opentelemetry/instrumentation-kafkajs": "^0.4.0",
+ "@opentelemetry/instrumentation-knex": "^0.41.0",
+ "@opentelemetry/instrumentation-koa": "^0.44.0",
+ "@opentelemetry/instrumentation-lru-memoizer": "^0.41.0",
+ "@opentelemetry/instrumentation-memcached": "^0.40.0",
+ "@opentelemetry/instrumentation-mongodb": "^0.48.0",
+ "@opentelemetry/instrumentation-mongoose": "^0.43.0",
+ "@opentelemetry/instrumentation-mysql": "^0.42.0",
+ "@opentelemetry/instrumentation-mysql2": "^0.42.1",
+ "@opentelemetry/instrumentation-nestjs-core": "^0.41.0",
+ "@opentelemetry/instrumentation-net": "^0.40.0",
+ "@opentelemetry/instrumentation-pg": "^0.47.1",
+ "@opentelemetry/instrumentation-pino": "^0.43.0",
+ "@opentelemetry/instrumentation-redis": "^0.43.0",
+ "@opentelemetry/instrumentation-redis-4": "^0.43.0",
+ "@opentelemetry/instrumentation-restify": "^0.42.0",
+ "@opentelemetry/instrumentation-router": "^0.41.0",
+ "@opentelemetry/instrumentation-socket.io": "^0.43.0",
+ "@opentelemetry/instrumentation-tedious": "^0.15.0",
+ "@opentelemetry/instrumentation-undici": "^0.7.1",
+ "@opentelemetry/instrumentation-winston": "^0.41.0",
+ "@opentelemetry/resource-detector-alibaba-cloud": "^0.29.4",
+ "@opentelemetry/resource-detector-aws": "^1.7.0",
+ "@opentelemetry/resource-detector-azure": "^0.2.12",
+ "@opentelemetry/resource-detector-container": "^0.5.0",
+ "@opentelemetry/resource-detector-gcp": "^0.29.13",
"@opentelemetry/resources": "^1.24.0",
- "@opentelemetry/sdk-node": "^0.52.0"
+ "@opentelemetry/sdk-node": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.4.1",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -352,43 +449,49 @@
"@opentelemetry/api": "^1.4.1"
}
},
+ "metapackages/auto-instrumentations-node/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"metapackages/auto-instrumentations-web": {
"name": "@opentelemetry/auto-instrumentations-web",
- "version": "0.40.0",
+ "version": "0.42.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/instrumentation-document-load": "^0.39.0",
- "@opentelemetry/instrumentation-fetch": "^0.52.0",
- "@opentelemetry/instrumentation-user-interaction": "^0.39.0",
- "@opentelemetry/instrumentation-xml-http-request": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/instrumentation-document-load": "^0.41.0",
+ "@opentelemetry/instrumentation-fetch": "^0.54.0",
+ "@opentelemetry/instrumentation-user-interaction": "^0.41.0",
+ "@opentelemetry/instrumentation-xml-http-request": "^0.54.0"
},
"devDependencies": {
"@babel/core": "7.24.6",
"@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.3.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0"
},
@@ -454,358 +557,30 @@
"integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
"dev": true
},
- "metapackages/auto-instrumentations-web/node_modules/@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
- "dev": true,
- "dependencies": {
- "@types/sinonjs__fake-timers": "*"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/chalk/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "metapackages/auto-instrumentations-web/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
- "dev": true,
- "funding": [
- {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
- }
- ],
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
+ "undici-types": "~5.26.4"
}
},
- "metapackages/auto-instrumentations-web/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
"metapackages/auto-instrumentations-web/node_modules/convert-source-map": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
"integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true
},
- "metapackages/auto-instrumentations-web/node_modules/decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"metapackages/auto-instrumentations-web/node_modules/diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true,
"engines": {
"node": ">=0.3.1"
}
},
- "metapackages/auto-instrumentations-web/node_modules/enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
- "dev": true,
- "dependencies": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true,
- "engines": {
- "node": ">=0.8.x"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
- "dev": true,
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/glob/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
- "metapackages/auto-instrumentations-web/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/minimatch/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
- "dev": true,
- "dependencies": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
- },
- "bin": {
- "_mocha": "bin/_mocha",
- "mocha": "bin/mocha.js"
- },
- "engines": {
- "node": ">= 14.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/mochajs"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- },
- "metapackages/auto-instrumentations-web/node_modules/nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
- "dev": true,
- "bin": {
- "nanoid": "bin/nanoid.cjs"
- },
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
- "dev": true,
- "dependencies": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- },
- "engines": {
- "node": ">= 10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- }
- },
"metapackages/auto-instrumentations-web/node_modules/sinon": {
"version": "15.1.2",
"resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
@@ -825,15 +600,6 @@
"url": "https://opencollective.com/sinon"
}
},
- "metapackages/auto-instrumentations-web/node_modules/sinon/node_modules/diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
- "dev": true,
- "engines": {
- "node": ">=0.3.1"
- }
- },
"metapackages/auto-instrumentations-web/node_modules/sinon/node_modules/supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -846,124 +612,6 @@
"node": ">=8"
}
},
- "metapackages/auto-instrumentations-web/node_modules/source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true,
- "engines": {
- "node": ">= 8"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
- },
- "engines": {
- "node": ">=12.0.0"
- },
- "peerDependencies": {
- "typescript": "*",
- "webpack": "^5.0.0"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
- "dev": true,
- "dependencies": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
- },
- "bin": {
- "webpack": "bin/webpack.js"
- },
- "engines": {
- "node": ">=10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- },
- "peerDependenciesMeta": {
- "webpack-cli": {
- "optional": true
- }
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "dev": true,
- "dependencies": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "metapackages/auto-instrumentations-web/node_modules/yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
- "dev": true,
- "dependencies": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/@75lb/deep-merge": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/@75lb/deep-merge/-/deep-merge-1.1.1.tgz",
@@ -1736,6 +1384,55 @@
"node": ">=12.0.0"
}
},
+ "node_modules/@aws-sdk/client-kinesis": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-kinesis/-/client-kinesis-3.85.0.tgz",
+ "integrity": "sha512-TlBYyNCkNZqnarpReaYCJTHQeVpjb6XpVcpoznsPnRpPjcm57JVhuErpKjU6tOKmtAl0uKrmJsjupizgQwFMIA==",
+ "dev": true,
+ "license": "Apache-2.0",
+ "dependencies": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/client-sts": "3.85.0",
+ "@aws-sdk/config-resolver": "3.80.0",
+ "@aws-sdk/credential-provider-node": "3.85.0",
+ "@aws-sdk/eventstream-serde-browser": "3.78.0",
+ "@aws-sdk/eventstream-serde-config-resolver": "3.78.0",
+ "@aws-sdk/eventstream-serde-node": "3.78.0",
+ "@aws-sdk/fetch-http-handler": "3.78.0",
+ "@aws-sdk/hash-node": "3.78.0",
+ "@aws-sdk/invalid-dependency": "3.78.0",
+ "@aws-sdk/middleware-content-length": "3.78.0",
+ "@aws-sdk/middleware-host-header": "3.78.0",
+ "@aws-sdk/middleware-logger": "3.78.0",
+ "@aws-sdk/middleware-retry": "3.80.0",
+ "@aws-sdk/middleware-serde": "3.78.0",
+ "@aws-sdk/middleware-signing": "3.78.0",
+ "@aws-sdk/middleware-stack": "3.78.0",
+ "@aws-sdk/middleware-user-agent": "3.78.0",
+ "@aws-sdk/node-config-provider": "3.80.0",
+ "@aws-sdk/node-http-handler": "3.82.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/smithy-client": "3.85.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/url-parser": "3.78.0",
+ "@aws-sdk/util-base64-browser": "3.58.0",
+ "@aws-sdk/util-base64-node": "3.55.0",
+ "@aws-sdk/util-body-length-browser": "3.55.0",
+ "@aws-sdk/util-body-length-node": "3.55.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.85.0",
+ "@aws-sdk/util-defaults-mode-node": "3.85.0",
+ "@aws-sdk/util-user-agent-browser": "3.78.0",
+ "@aws-sdk/util-user-agent-node": "3.80.0",
+ "@aws-sdk/util-utf8-browser": "3.55.0",
+ "@aws-sdk/util-utf8-node": "3.55.0",
+ "@aws-sdk/util-waiter": "3.78.0",
+ "tslib": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ }
+ },
"node_modules/@aws-sdk/client-lambda": {
"version": "3.85.0",
"resolved": "https://registry.npmjs.org/@aws-sdk/client-lambda/-/client-lambda-3.85.0.tgz",
@@ -4537,9 +4234,9 @@
}
},
"node_modules/@babel/compat-data": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.7.tgz",
- "integrity": "sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==",
+ "version": "7.25.2",
+ "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.2.tgz",
+ "integrity": "sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==",
"dev": true,
"engines": {
"node": ">=6.9.0"
@@ -4585,12 +4282,12 @@
}
},
"node_modules/@babel/generator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz",
- "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==",
+ "version": "7.25.0",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.0.tgz",
+ "integrity": "sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==",
"dev": true,
"dependencies": {
- "@babel/types": "^7.24.7",
+ "@babel/types": "^7.25.0",
"@jridgewell/gen-mapping": "^0.3.5",
"@jridgewell/trace-mapping": "^0.3.25",
"jsesc": "^2.5.1"
@@ -4625,14 +4322,14 @@
}
},
"node_modules/@babel/helper-compilation-targets": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz",
- "integrity": "sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==",
+ "version": "7.25.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz",
+ "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==",
"dev": true,
"dependencies": {
- "@babel/compat-data": "^7.24.7",
- "@babel/helper-validator-option": "^7.24.7",
- "browserslist": "^4.22.2",
+ "@babel/compat-data": "^7.25.2",
+ "@babel/helper-validator-option": "^7.24.8",
+ "browserslist": "^4.23.1",
"lru-cache": "^5.1.1",
"semver": "^6.3.1"
},
@@ -4787,16 +4484,15 @@
}
},
"node_modules/@babel/helper-module-transforms": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz",
- "integrity": "sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==",
+ "version": "7.25.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz",
+ "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==",
"dev": true,
"dependencies": {
- "@babel/helper-environment-visitor": "^7.24.7",
"@babel/helper-module-imports": "^7.24.7",
"@babel/helper-simple-access": "^7.24.7",
- "@babel/helper-split-export-declaration": "^7.24.7",
- "@babel/helper-validator-identifier": "^7.24.7"
+ "@babel/helper-validator-identifier": "^7.24.7",
+ "@babel/traverse": "^7.25.2"
},
"engines": {
"node": ">=6.9.0"
@@ -4899,9 +4595,9 @@
}
},
"node_modules/@babel/helper-string-parser": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz",
- "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==",
+ "version": "7.24.8",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz",
+ "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==",
"dev": true,
"engines": {
"node": ">=6.9.0"
@@ -4917,9 +4613,9 @@
}
},
"node_modules/@babel/helper-validator-option": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz",
- "integrity": "sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==",
+ "version": "7.24.8",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz",
+ "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==",
"dev": true,
"engines": {
"node": ">=6.9.0"
@@ -4941,13 +4637,13 @@
}
},
"node_modules/@babel/helpers": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.7.tgz",
- "integrity": "sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==",
+ "version": "7.25.0",
+ "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.0.tgz",
+ "integrity": "sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==",
"dev": true,
"dependencies": {
- "@babel/template": "^7.24.7",
- "@babel/types": "^7.24.7"
+ "@babel/template": "^7.25.0",
+ "@babel/types": "^7.25.0"
},
"engines": {
"node": ">=6.9.0"
@@ -4969,10 +4665,13 @@
}
},
"node_modules/@babel/parser": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz",
- "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==",
+ "version": "7.25.3",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.3.tgz",
+ "integrity": "sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==",
"dev": true,
+ "dependencies": {
+ "@babel/types": "^7.25.2"
+ },
"bin": {
"parser": "bin/babel-parser.js"
},
@@ -6205,33 +5904,30 @@
"dev": true
},
"node_modules/@babel/template": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz",
- "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==",
+ "version": "7.25.0",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz",
+ "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==",
"dev": true,
"dependencies": {
"@babel/code-frame": "^7.24.7",
- "@babel/parser": "^7.24.7",
- "@babel/types": "^7.24.7"
+ "@babel/parser": "^7.25.0",
+ "@babel/types": "^7.25.0"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/traverse": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz",
- "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==",
+ "version": "7.25.3",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.3.tgz",
+ "integrity": "sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==",
"dev": true,
"dependencies": {
"@babel/code-frame": "^7.24.7",
- "@babel/generator": "^7.24.7",
- "@babel/helper-environment-visitor": "^7.24.7",
- "@babel/helper-function-name": "^7.24.7",
- "@babel/helper-hoist-variables": "^7.24.7",
- "@babel/helper-split-export-declaration": "^7.24.7",
- "@babel/parser": "^7.24.7",
- "@babel/types": "^7.24.7",
+ "@babel/generator": "^7.25.0",
+ "@babel/parser": "^7.25.3",
+ "@babel/template": "^7.25.0",
+ "@babel/types": "^7.25.2",
"debug": "^4.3.1",
"globals": "^11.1.0"
},
@@ -6240,12 +5936,12 @@
}
},
"node_modules/@babel/types": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz",
- "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==",
+ "version": "7.25.2",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz",
+ "integrity": "sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==",
"dev": true,
"dependencies": {
- "@babel/helper-string-parser": "^7.24.7",
+ "@babel/helper-string-parser": "^7.24.8",
"@babel/helper-validator-identifier": "^7.24.7",
"to-fast-properties": "^2.0.0"
},
@@ -6262,6 +5958,30 @@
"node": ">=0.1.90"
}
},
+ "node_modules/@cspotcode/source-map-support": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
+ "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/trace-mapping": "0.3.9"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": {
+ "version": "0.3.9",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
+ "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "@jridgewell/resolve-uri": "^3.0.3",
+ "@jridgewell/sourcemap-codec": "^1.4.10"
+ }
+ },
"node_modules/@cucumber/ci-environment": {
"version": "9.2.0",
"resolved": "https://registry.npmjs.org/@cucumber/ci-environment/-/ci-environment-9.2.0.tgz",
@@ -6907,6 +6627,22 @@
"node": ">=12"
}
},
+ "node_modules/@esbuild/openbsd-arm64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.0.tgz",
+ "integrity": "sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==",
+ "cpu": [
+ "arm64"
+ ],
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "openbsd"
+ ],
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/@esbuild/openbsd-x64": {
"version": "0.19.12",
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz",
@@ -7161,15 +6897,6 @@
"@hapi/hoek": "^11.0.2"
}
},
- "node_modules/@hapi/accept/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
"node_modules/@hapi/accept/node_modules/@hapi/hoek": {
"version": "11.0.4",
"resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
@@ -7191,22 +6918,28 @@
"integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
},
- "node_modules/@hapi/bounce": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/bounce/-/bounce-3.0.1.tgz",
- "integrity": "sha512-G+/Pp9c1Ha4FDP+3Sy/Xwg2O4Ahaw3lIZFSX+BL4uWi64CmiETuZPxhKDUD4xBMOUZbBlzvO8HjiK8ePnhBadA==",
+ "node_modules/@hapi/boom": {
+ "version": "10.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
+ "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
"dev": true,
"dependencies": {
- "@hapi/boom": "^10.0.1",
"@hapi/hoek": "^11.0.2"
}
},
- "node_modules/@hapi/bounce/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
+ "node_modules/@hapi/boom/node_modules/@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ },
+ "node_modules/@hapi/bounce": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/bounce/-/bounce-3.0.1.tgz",
+ "integrity": "sha512-G+/Pp9c1Ha4FDP+3Sy/Xwg2O4Ahaw3lIZFSX+BL4uWi64CmiETuZPxhKDUD4xBMOUZbBlzvO8HjiK8ePnhBadA==",
"dev": true,
"dependencies": {
+ "@hapi/boom": "^10.0.1",
"@hapi/hoek": "^11.0.2"
}
},
@@ -7226,15 +6959,6 @@
"@hapi/hoek": "^11.0.2"
}
},
- "node_modules/@hapi/call/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
"node_modules/@hapi/call/node_modules/@hapi/hoek": {
"version": "11.0.4",
"resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
@@ -7254,84 +6978,27 @@
}
},
"node_modules/@hapi/catbox-memory": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/catbox-memory/-/catbox-memory-6.0.1.tgz",
- "integrity": "sha512-sVb+/ZxbZIvaMtJfAbdyY+QJUQg9oKTwamXpEg/5xnfG5WbJLTjvEn4kIGKz9pN3ENNbIL/bIdctmHmqi/AdGA==",
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@hapi/catbox-memory/-/catbox-memory-6.0.2.tgz",
+ "integrity": "sha512-H1l4ugoFW/ZRkqeFrIo8p1rWN0PA4MDTfu4JmcoNDvnY975o29mqoZblqFTotxNHlEkMPpIiIBJTV+Mbi+aF0g==",
"dev": true,
"dependencies": {
"@hapi/boom": "^10.0.1",
"@hapi/hoek": "^11.0.2"
}
},
- "node_modules/@hapi/catbox-memory/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
"node_modules/@hapi/catbox-memory/node_modules/@hapi/hoek": {
"version": "11.0.4",
"resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
"integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
},
- "node_modules/@hapi/catbox/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
"node_modules/@hapi/catbox/node_modules/@hapi/hoek": {
"version": "11.0.4",
"resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
"integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
},
- "node_modules/@hapi/catbox/node_modules/@hapi/podium": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/podium/-/podium-5.0.1.tgz",
- "integrity": "sha512-eznFTw6rdBhAijXFIlBOMJJd+lXTvqbrBIS4Iu80r2KTVIo4g+7fLy4NKp/8+UnSt5Ox6mJtAlKBU/Sf5080TQ==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/teamwork": "^6.0.0",
- "@hapi/validate": "^2.0.1"
- }
- },
- "node_modules/@hapi/catbox/node_modules/@hapi/teamwork": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/@hapi/teamwork/-/teamwork-6.0.0.tgz",
- "integrity": "sha512-05HumSy3LWfXpmJ9cr6HzwhAavrHkJ1ZRCmNE2qJMihdM5YcWreWPfyN0yKT2ZjCM92au3ZkuodjBxOibxM67A==",
- "dev": true,
- "engines": {
- "node": ">=14.0.0"
- }
- },
- "node_modules/@hapi/catbox/node_modules/@hapi/topo": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
- "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "node_modules/@hapi/catbox/node_modules/@hapi/validate": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
- "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/topo": "^6.0.1"
- }
- },
"node_modules/@hapi/content": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/@hapi/content/-/content-6.0.0.tgz",
@@ -7341,21 +7008,6 @@
"@hapi/boom": "^10.0.0"
}
},
- "node_modules/@hapi/content/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "node_modules/@hapi/content/node_modules/@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- },
"node_modules/@hapi/file": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/@hapi/file/-/file-3.0.0.tgz",
@@ -7363,9 +7015,9 @@
"dev": true
},
"node_modules/@hapi/hapi": {
- "version": "21.3.3",
- "resolved": "https://registry.npmjs.org/@hapi/hapi/-/hapi-21.3.3.tgz",
- "integrity": "sha512-6pgwWVl/aSKSNVn86n+mWa06jRqCAKi2adZp/Hti19A0u5x3/6eiKz8UTBPMzfrdGf9WcrYbFBYzWr/qd2s28g==",
+ "version": "21.3.10",
+ "resolved": "https://registry.npmjs.org/@hapi/hapi/-/hapi-21.3.10.tgz",
+ "integrity": "sha512-CmEcmTREW394MaGGKvWpoOK4rG8tKlpZLs30tbaBzhCrhiL2Ti/HARek9w+8Ya4nMBGcd+kDAzvU44OX8Ms0Jg==",
"dev": true,
"dependencies": {
"@hapi/accept": "^6.0.1",
@@ -7374,7 +7026,7 @@
"@hapi/bounce": "^3.0.1",
"@hapi/call": "^9.0.1",
"@hapi/catbox": "^12.1.1",
- "@hapi/catbox-memory": "^6.0.1",
+ "@hapi/catbox-memory": "^6.0.2",
"@hapi/heavy": "^8.0.1",
"@hapi/hoek": "^11.0.2",
"@hapi/mimos": "^7.0.1",
@@ -7391,41 +7043,12 @@
"node": ">=14.15.0"
}
},
- "node_modules/@hapi/hapi/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
"node_modules/@hapi/hapi/node_modules/@hapi/hoek": {
"version": "11.0.4",
"resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
"integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
},
- "node_modules/@hapi/hapi/node_modules/@hapi/podium": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/podium/-/podium-5.0.1.tgz",
- "integrity": "sha512-eznFTw6rdBhAijXFIlBOMJJd+lXTvqbrBIS4Iu80r2KTVIo4g+7fLy4NKp/8+UnSt5Ox6mJtAlKBU/Sf5080TQ==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/teamwork": "^6.0.0",
- "@hapi/validate": "^2.0.1"
- }
- },
- "node_modules/@hapi/hapi/node_modules/@hapi/teamwork": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/@hapi/teamwork/-/teamwork-6.0.0.tgz",
- "integrity": "sha512-05HumSy3LWfXpmJ9cr6HzwhAavrHkJ1ZRCmNE2qJMihdM5YcWreWPfyN0yKT2ZjCM92au3ZkuodjBxOibxM67A==",
- "dev": true,
- "engines": {
- "node": ">=14.0.0"
- }
- },
"node_modules/@hapi/hapi/node_modules/@hapi/topo": {
"version": "6.0.2",
"resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
@@ -7435,16 +7058,6 @@
"@hapi/hoek": "^11.0.2"
}
},
- "node_modules/@hapi/hapi/node_modules/@hapi/validate": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
- "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/topo": "^6.0.1"
- }
- },
"node_modules/@hapi/heavy": {
"version": "8.0.1",
"resolved": "https://registry.npmjs.org/@hapi/heavy/-/heavy-8.0.1.tgz",
@@ -7456,40 +7069,12 @@
"@hapi/validate": "^2.0.1"
}
},
- "node_modules/@hapi/heavy/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
"node_modules/@hapi/heavy/node_modules/@hapi/hoek": {
"version": "11.0.4",
"resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
"integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
},
- "node_modules/@hapi/heavy/node_modules/@hapi/topo": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
- "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "node_modules/@hapi/heavy/node_modules/@hapi/validate": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
- "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/topo": "^6.0.1"
- }
- },
"node_modules/@hapi/hoek": {
"version": "9.3.0",
"resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz",
@@ -7553,16 +7138,24 @@
"@hapi/hoek": "^11.0.2"
}
},
- "node_modules/@hapi/pez/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
+ "node_modules/@hapi/pez/node_modules/@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ },
+ "node_modules/@hapi/podium": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/podium/-/podium-5.0.1.tgz",
+ "integrity": "sha512-eznFTw6rdBhAijXFIlBOMJJd+lXTvqbrBIS4Iu80r2KTVIo4g+7fLy4NKp/8+UnSt5Ox6mJtAlKBU/Sf5080TQ==",
"dev": true,
"dependencies": {
- "@hapi/hoek": "^11.0.2"
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/teamwork": "^6.0.0",
+ "@hapi/validate": "^2.0.1"
}
},
- "node_modules/@hapi/pez/node_modules/@hapi/hoek": {
+ "node_modules/@hapi/podium/node_modules/@hapi/hoek": {
"version": "11.0.4",
"resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
"integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
@@ -7584,25 +7177,6 @@
"integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
},
- "node_modules/@hapi/shot/node_modules/@hapi/topo": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
- "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "node_modules/@hapi/shot/node_modules/@hapi/validate": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
- "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/topo": "^6.0.1"
- }
- },
"node_modules/@hapi/somever": {
"version": "4.1.1",
"resolved": "https://registry.npmjs.org/@hapi/somever/-/somever-4.1.1.tgz",
@@ -7643,15 +7217,6 @@
"@hapi/hoek": "^11.0.2"
}
},
- "node_modules/@hapi/statehood/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
"node_modules/@hapi/statehood/node_modules/@hapi/bourne": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-3.0.0.tgz",
@@ -7689,25 +7254,6 @@
"@hapi/hoek": "^11.0.2"
}
},
- "node_modules/@hapi/statehood/node_modules/@hapi/topo": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
- "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "node_modules/@hapi/statehood/node_modules/@hapi/validate": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
- "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/topo": "^6.0.1"
- }
- },
"node_modules/@hapi/subtext": {
"version": "8.1.0",
"resolved": "https://registry.npmjs.org/@hapi/subtext/-/subtext-8.1.0.tgz",
@@ -7723,15 +7269,6 @@
"@hapi/wreck": "^18.0.1"
}
},
- "node_modules/@hapi/subtext/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
"node_modules/@hapi/subtext/node_modules/@hapi/bourne": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-3.0.0.tgz",
@@ -7744,6 +7281,15 @@
"integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
},
+ "node_modules/@hapi/teamwork": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/teamwork/-/teamwork-6.0.0.tgz",
+ "integrity": "sha512-05HumSy3LWfXpmJ9cr6HzwhAavrHkJ1ZRCmNE2qJMihdM5YcWreWPfyN0yKT2ZjCM92au3ZkuodjBxOibxM67A==",
+ "dev": true,
+ "engines": {
+ "node": ">=14.0.0"
+ }
+ },
"node_modules/@hapi/topo": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz",
@@ -7753,6 +7299,31 @@
"@hapi/hoek": "^9.0.0"
}
},
+ "node_modules/@hapi/validate": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
+ "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
+ "dev": true,
+ "dependencies": {
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/topo": "^6.0.1"
+ }
+ },
+ "node_modules/@hapi/validate/node_modules/@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ },
+ "node_modules/@hapi/validate/node_modules/@hapi/topo": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
+ "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
+ "dev": true,
+ "dependencies": {
+ "@hapi/hoek": "^11.0.2"
+ }
+ },
"node_modules/@hapi/vise": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/@hapi/vise/-/vise-5.0.1.tgz",
@@ -7779,15 +7350,6 @@
"@hapi/hoek": "^11.0.2"
}
},
- "node_modules/@hapi/wreck/node_modules/@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "dependencies": {
- "@hapi/hoek": "^11.0.2"
- }
- },
"node_modules/@hapi/wreck/node_modules/@hapi/bourne": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-3.0.0.tgz",
@@ -8243,12 +7805,12 @@
}
},
"node_modules/@koa/router": {
- "version": "12.0.0",
- "resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.0.tgz",
- "integrity": "sha512-cnnxeKHXlt7XARJptflGURdJaO+ITpNkOHmQu7NHmCoRinPbyvFzce/EG/E8Zy81yQ1W9MoSdtklc3nyaDReUw==",
- "deprecated": "**IMPORTANT 10x+ PERFORMANCE UPGRADE**: Please upgrade to v12.0.1+ as we have fixed an issue with debuglog causing 10x slower router benchmark performance, see https://github.com/koajs/router/pull/173",
+ "version": "12.0.1",
+ "resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.1.tgz",
+ "integrity": "sha512-ribfPYfHb+Uw3b27Eiw6NPqjhIhTpVFzEWLwyc/1Xp+DCdwRRyIlAUODX+9bPARF6aQtUu1+/PHzdNvRzcs/+Q==",
"dev": true,
"dependencies": {
+ "debug": "^4.3.4",
"http-errors": "^2.0.0",
"koa-compose": "^4.1.0",
"methods": "^1.1.2",
@@ -8259,9 +7821,9 @@
}
},
"node_modules/@koa/router/node_modules/path-to-regexp": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz",
- "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==",
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.2.tgz",
+ "integrity": "sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==",
"dev": true
},
"node_modules/@lerna/child-process": {
@@ -8939,164 +8501,6 @@
"node": ">=8"
}
},
- "node_modules/@mapbox/node-pre-gyp": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz",
- "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==",
- "dev": true,
- "dependencies": {
- "detect-libc": "^2.0.0",
- "https-proxy-agent": "^5.0.0",
- "make-dir": "^3.1.0",
- "node-fetch": "^2.6.7",
- "nopt": "^5.0.0",
- "npmlog": "^5.0.1",
- "rimraf": "^3.0.2",
- "semver": "^7.3.5",
- "tar": "^6.1.11"
- },
- "bin": {
- "node-pre-gyp": "bin/node-pre-gyp"
- }
- },
- "node_modules/@mapbox/node-pre-gyp/node_modules/abbrev": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
- "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
- "dev": true
- },
- "node_modules/@mapbox/node-pre-gyp/node_modules/agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
- "dev": true,
- "dependencies": {
- "debug": "4"
- },
- "engines": {
- "node": ">= 6.0.0"
- }
- },
- "node_modules/@mapbox/node-pre-gyp/node_modules/are-we-there-yet": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz",
- "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==",
- "dev": true,
- "dependencies": {
- "delegates": "^1.0.0",
- "readable-stream": "^3.6.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@mapbox/node-pre-gyp/node_modules/gauge": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz",
- "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==",
- "dev": true,
- "dependencies": {
- "aproba": "^1.0.3 || ^2.0.0",
- "color-support": "^1.1.2",
- "console-control-strings": "^1.0.0",
- "has-unicode": "^2.0.1",
- "object-assign": "^4.1.1",
- "signal-exit": "^3.0.0",
- "string-width": "^4.2.3",
- "strip-ansi": "^6.0.1",
- "wide-align": "^1.1.2"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@mapbox/node-pre-gyp/node_modules/glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "dev": true,
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "node_modules/@mapbox/node-pre-gyp/node_modules/https-proxy-agent": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
- "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
- "dev": true,
- "dependencies": {
- "agent-base": "6",
- "debug": "4"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "node_modules/@mapbox/node-pre-gyp/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/@mapbox/node-pre-gyp/node_modules/nopt": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
- "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
- "dev": true,
- "dependencies": {
- "abbrev": "1"
- },
- "bin": {
- "nopt": "bin/nopt.js"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/@mapbox/node-pre-gyp/node_modules/npmlog": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz",
- "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==",
- "dev": true,
- "dependencies": {
- "are-we-there-yet": "^2.0.0",
- "console-control-strings": "^1.1.0",
- "gauge": "^3.0.0",
- "set-blocking": "^2.0.0"
- }
- },
- "node_modules/@mapbox/node-pre-gyp/node_modules/rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "dependencies": {
- "glob": "^7.1.3"
- },
- "bin": {
- "rimraf": "bin.js"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/@mdn/browser-compat-data": {
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-4.2.1.tgz",
@@ -9200,6 +8604,8 @@
"resolved": "https://registry.npmjs.org/@nestjs/microservices/-/microservices-9.4.3.tgz",
"integrity": "sha512-piMw8d3C4ppc5St5AhQEtecMhyeBK2Q1VYk4AL3NKtG6U0fzz/6KLiETpWdKXmazeI/m7qac2upOvwmRzle0aA==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"iterare": "1.2.1",
"tslib": "2.5.3"
@@ -9257,13 +8663,17 @@
"version": "2.5.3",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
"integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"node_modules/@nestjs/platform-express": {
"version": "9.4.3",
"resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-9.4.3.tgz",
"integrity": "sha512-FpdczWoRSC0zz2dNL9u2AQLXKXRVtq4HgHklAhbL59X0uy+mcxhlSThG7DHzDMkoSnuuHY8ojDVf7mDxk+GtCw==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"body-parser": "1.20.2",
"cors": "2.8.5",
@@ -9285,6 +8695,8 @@
"resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
"integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"ms": "2.0.0"
}
@@ -9294,6 +8706,8 @@
"resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz",
"integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"accepts": "~1.3.8",
"array-flatten": "1.1.1",
@@ -9336,6 +8750,8 @@
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz",
"integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"bytes": "3.1.2",
"content-type": "~1.0.4",
@@ -9360,6 +8776,8 @@
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
"integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"debug": "2.6.9",
"encodeurl": "~1.0.2",
@@ -9377,19 +8795,25 @@
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"node_modules/@nestjs/platform-express/node_modules/path-to-regexp": {
"version": "0.1.7",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
"integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"node_modules/@nestjs/platform-express/node_modules/raw-body": {
"version": "2.5.1",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz",
"integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"bytes": "3.1.2",
"http-errors": "2.0.0",
@@ -9404,13 +8828,17 @@
"version": "2.5.3",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
"integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"node_modules/@nestjs/websockets": {
"version": "9.4.3",
"resolved": "https://registry.npmjs.org/@nestjs/websockets/-/websockets-9.4.3.tgz",
"integrity": "sha512-LMLKJWZbWH3VQRxDK/658ynyN1n5lLCIen/dey2y5TzB0RNgxlSso/YJATVVfWNaT2CxPG8TUQMOTdopXCWGQw==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"iterare": "1.2.1",
"object-hash": "3.0.0",
@@ -9433,7 +8861,9 @@
"version": "2.5.3",
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
"integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"node_modules/@netflix/nerror": {
"version": "1.1.3",
@@ -10517,16 +9947,20 @@
}
},
"node_modules/@opentelemetry/api-logs": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.52.0.tgz",
- "integrity": "sha512-HxjD7xH9iAE4OyhNaaSec65i1H6QZYBWSwWkowFfsc5YAcDvJG30/J1sRKXEQqdmUcKTXEAnA66UciqZha/4+Q==",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.54.2.tgz",
+ "integrity": "sha512-4MTVwwmLgUh5QrJnZpYo6YRO5IBLAggf2h8gWDblwRagDStY13aEvt7gGk3jewrMaPlHiF83fENhIx0HO97/cQ==",
"dependencies": {
- "@opentelemetry/api": "^1.0.0"
+ "@opentelemetry/api": "^1.3.0"
},
"engines": {
"node": ">=14"
}
},
+ "node_modules/@opentelemetry/auto-configuration-propagators": {
+ "resolved": "metapackages/auto-configuration-propagators",
+ "link": true
+ },
"node_modules/@opentelemetry/auto-instrumentations-node": {
"resolved": "metapackages/auto-instrumentations-node",
"link": true
@@ -10540,9 +9974,9 @@
"link": true
},
"node_modules/@opentelemetry/context-async-hooks": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.25.0.tgz",
- "integrity": "sha512-sBW313mnMyFg0cp/40BRzrZBWG+581s2j5gIsa5fgGadswyILk4mNFATsqrCOpAx945RDuZ2B7ThQLgor9OpfA==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.27.0.tgz",
+ "integrity": "sha512-CdZ3qmHCwNhFAzjTgHqrDQ44Qxcpz43cVxZRhOs+Ns/79ug+Mr84Bkb626bkJLkA3+BLimA5YAEVRlJC6pFb7g==",
"engines": {
"node": ">=14"
},
@@ -10550,22 +9984,11 @@
"@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
- "node_modules/@opentelemetry/context-zone": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/context-zone/-/context-zone-1.25.0.tgz",
- "integrity": "sha512-LmO64smA9SZrl8f1HRRSNA4oudwpjCMVxZz08EhkRCcTRvFB8p+6Lnu6mtT54wD/raeXoEbLGtVqMYHsZ6bpmA==",
- "dependencies": {
- "@opentelemetry/context-zone-peer-dep": "1.25.0",
- "zone.js": "^0.11.0 || ^0.12.0 || ^0.13.0 || ^0.14.0"
- },
- "engines": {
- "node": ">=14"
- }
- },
"node_modules/@opentelemetry/context-zone-peer-dep": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/context-zone-peer-dep/-/context-zone-peer-dep-1.25.0.tgz",
- "integrity": "sha512-wh03u4ECYonjaxB+hzriWzHcr4GRlYSQoirDn0ldBDebz3WDZgjHCD/NPBoZaulGGwU6lvmQZXuyfz5hRrJhOw==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/context-zone-peer-dep/-/context-zone-peer-dep-1.27.0.tgz",
+ "integrity": "sha512-gVeOOpqnLgP51F0EJGHeoAJmAHxXXroT1Tk2WVnMf/22jTiAunYzFFsMaqmcH8mNqjTYBLJb28Rz0tInO7uClg==",
+ "dev": true,
"engines": {
"node": ">=14"
},
@@ -10579,11 +10002,11 @@
"link": true
},
"node_modules/@opentelemetry/core": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.0.tgz",
- "integrity": "sha512-n0B3s8rrqGrasTgNkXLKXzN0fXo+6IYP7M5b7AMsrZM33f/y6DS6kJ0Btd7SespASWq8bgL3taLo0oe0vB52IQ==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.27.0.tgz",
+ "integrity": "sha512-yQPKnK5e+76XuiqUH/gKyS8wv/7qITd5ln56QkBTf3uggr0VkXOXfcaAuG330UfdYu83wsyoBwqwxigpIG+Jkg==",
"dependencies": {
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "@opentelemetry/semantic-conventions": "1.27.0"
},
"engines": {
"node": ">=14"
@@ -10597,13 +10020,13 @@
"link": true
},
"node_modules/@opentelemetry/exporter-jaeger": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.25.0.tgz",
- "integrity": "sha512-6h2dCpdOB2W2mxdH/6w6DZeev5Zc3X2rUlCWKMCUnKko36aTfbiVxgXHffs0pc3w5JmMtKIVkHg8eamvLA+Klw==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.27.0.tgz",
+ "integrity": "sha512-ULWBtyNQDQQBWTkoCPfpGZTXZ9gLOFHeLZ3BoeZAkxYOgqqTH83IDRbtH8sHt6j84OPQfAcd18uHOb/lc9q0Bw==",
"dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0",
"jaeger-client": "^3.15.0"
},
"engines": {
@@ -10613,70 +10036,126 @@
"@opentelemetry/api": "^1.0.0"
}
},
+ "node_modules/@opentelemetry/exporter-logs-otlp-grpc": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-logs-otlp-grpc/-/exporter-logs-otlp-grpc-0.54.2.tgz",
+ "integrity": "sha512-MQNmV5r96+5n3axLFgNYtVy62x8Ru7VERZH3zgC50KDcIKWCiQT3vHOtzakhzd1Wq0HqOgu6bzKdwzneSoDrEQ==",
+ "dependencies": {
+ "@grpc/grpc-js": "^1.7.1",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-grpc-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/sdk-logs": "0.54.2"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": "^1.3.0"
+ }
+ },
+ "node_modules/@opentelemetry/exporter-logs-otlp-http": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-logs-otlp-http/-/exporter-logs-otlp-http-0.54.2.tgz",
+ "integrity": "sha512-wYeCSbX2XWX2wFslnfQ/YFUolO0fj2nUiGI7oEQWpLKSg40Lc4xOOW14X/EXOkCCijhP7bigo6nvyEQlxEVLjA==",
+ "dependencies": {
+ "@opentelemetry/api-logs": "0.54.2",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/sdk-logs": "0.54.2"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": "^1.3.0"
+ }
+ },
+ "node_modules/@opentelemetry/exporter-logs-otlp-proto": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-logs-otlp-proto/-/exporter-logs-otlp-proto-0.54.2.tgz",
+ "integrity": "sha512-agrzFbSNmIy6dhkyg41ERlEDUDqkaUJj2n/tVRFp9Tl+6wyNVPsqmwU5RWJOXpyK+lYH/znv6A47VpTeJF0lrw==",
+ "dependencies": {
+ "@opentelemetry/api-logs": "0.54.2",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-logs": "0.54.2",
+ "@opentelemetry/sdk-trace-base": "1.27.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": "^1.3.0"
+ }
+ },
"node_modules/@opentelemetry/exporter-trace-otlp-grpc": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-grpc/-/exporter-trace-otlp-grpc-0.52.0.tgz",
- "integrity": "sha512-Ln3HU54/ytTeEMrDGNDj01357YV8Kk9PkGDHvBRo1n7bWhwZoTEnX/cTuXLYOiygBIJJjCCM+VMfWCnvtFl4Kw==",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-grpc/-/exporter-trace-otlp-grpc-0.54.2.tgz",
+ "integrity": "sha512-tmxiCYhQdPrzwlM6O7VQeNP9PBjKhaiOo54wFxQFZQcoVaDiOOES4+6PwHU1eW+43mDsgdQHN5AHSRHVLe9jDA==",
"dependencies": {
"@grpc/grpc-js": "^1.7.1",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/otlp-grpc-exporter-base": "0.52.0",
- "@opentelemetry/otlp-transformer": "0.52.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-grpc-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
- "@opentelemetry/api": "^1.0.0"
+ "@opentelemetry/api": "^1.3.0"
}
},
"node_modules/@opentelemetry/exporter-trace-otlp-http": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.52.0.tgz",
- "integrity": "sha512-umj9tOSEAuUdqw2EZua1Dby3c+FZ6xWGT2OF/KGLFLtyIvxhtTOSeMfBy/9CaxHn4vF8mAynmAP5MvVKnRYunA==",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.54.2.tgz",
+ "integrity": "sha512-BgWKKyD/h2zpISdmYHN/sapwTjvt1P4p5yx4xeBV8XAEqh4OQUhOtSGFG80+nPQ1F8of3mKOT1DDoDbJp1u25w==",
"dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/otlp-exporter-base": "0.52.0",
- "@opentelemetry/otlp-transformer": "0.52.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
- "@opentelemetry/api": "^1.0.0"
+ "@opentelemetry/api": "^1.3.0"
}
},
"node_modules/@opentelemetry/exporter-trace-otlp-proto": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-proto/-/exporter-trace-otlp-proto-0.52.0.tgz",
- "integrity": "sha512-mpMEZFGaGnvon5pbjLieh7ffE9BuYnrG7qd4O5P3j1fk/4PCR3BcGfGhIfyZi0X8kBcjEhipiBfaHYqI7rxcXg==",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-proto/-/exporter-trace-otlp-proto-0.54.2.tgz",
+ "integrity": "sha512-XSmm1N2wAhoWDXP1q/N6kpLebWaxl6VIADv4WA5QWKHLRpF3gLz5NAWNJBR8ygsvv8jQcrwnXgwfnJ18H3v1fg==",
"dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/otlp-exporter-base": "0.52.0",
- "@opentelemetry/otlp-transformer": "0.52.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
- "@opentelemetry/api": "^1.0.0"
+ "@opentelemetry/api": "^1.3.0"
}
},
"node_modules/@opentelemetry/exporter-zipkin": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.25.0.tgz",
- "integrity": "sha512-nnhY0e5DHg8BfUSNCQZoGZnGeqz+zMTeEUOh1dfgtaXmF99uM0QPuTa1i2lH+eZqebP8w1WDWZlewu9FUlHqIg==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.27.0.tgz",
+ "integrity": "sha512-eGMY3s4QprspFZojqsuQyQpWNFpo+oNVE/aosTbtvAlrJBAlvXcwwsOROOHOd8Y9lkU4i0FpQW482rcXkgwCSw==",
"dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
},
"engines": {
"node": ">=14"
@@ -10694,13 +10173,13 @@
"link": true
},
"node_modules/@opentelemetry/instrumentation": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.52.0.tgz",
- "integrity": "sha512-LPwSIrw+60cheWaXsfGL8stBap/AppKQJFE+qqRvzYrgttXFH2ofoIMxWadeqPTq4BYOXM/C7Bdh/T+B60xnlQ==",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.54.2.tgz",
+ "integrity": "sha512-go6zpOVoZVztT9r1aPd79Fr3OWiD4N24bCPJsIKkBses8oyFo12F/Ew3UBTdIu6hsW4HC4MVEJygG6TEyJI/lg==",
"dependencies": {
- "@opentelemetry/api-logs": "0.52.0",
- "@types/shimmer": "^1.0.2",
- "import-in-the-middle": "1.8.0",
+ "@opentelemetry/api-logs": "0.54.2",
+ "@types/shimmer": "^1.2.0",
+ "import-in-the-middle": "^1.8.1",
"require-in-the-middle": "^7.1.1",
"semver": "^7.5.2",
"shimmer": "^1.2.1"
@@ -10761,20 +10240,20 @@
"link": true
},
"node_modules/@opentelemetry/instrumentation-fetch": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-fetch/-/instrumentation-fetch-0.52.0.tgz",
- "integrity": "sha512-ay1Ot0z/586MBnhZnWJJFWXjBCQjddVVjCxLPRECnorhzmXuOsjUb7zTY88Vv9ddRtcHe0EIp9Z8sWQeLT02kA==",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-fetch/-/instrumentation-fetch-0.54.2.tgz",
+ "integrity": "sha512-7G2mn0K5BJ41AIarIMGuMDDcdJ13DQdk4go2CIL7QZkY0TgZmmq6wO6fHwdocZlPPkZ47Mflo4DwSQtMLykfyQ==",
"dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/instrumentation": "0.52.0",
- "@opentelemetry/sdk-trace-web": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/instrumentation": "0.54.2",
+ "@opentelemetry/sdk-trace-web": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
- "@opentelemetry/api": "^1.0.0"
+ "@opentelemetry/api": "^1.3.0"
}
},
"node_modules/@opentelemetry/instrumentation-fs": {
@@ -10790,12 +10269,12 @@
"link": true
},
"node_modules/@opentelemetry/instrumentation-grpc": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-grpc/-/instrumentation-grpc-0.52.0.tgz",
- "integrity": "sha512-YYhA2pbhMWgF5Hp6eR7AHp1utzZQ3Y0VB8GIwd8zJoLtAuQRZa1N29DUtZ+t/pGRJF+xGPVI+vP+7ugHgeN0zQ==",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-grpc/-/instrumentation-grpc-0.54.2.tgz",
+ "integrity": "sha512-KhSzerCaaqVH2zfDro7nTunWUZXt1pQISQpE83LuQTOKGk7mN3G60T1wliQ3Qdg0X3UUuhCXEC7u6IAVfDxkUQ==",
"dependencies": {
- "@opentelemetry/instrumentation": "0.52.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "@opentelemetry/instrumentation": "0.54.2",
+ "@opentelemetry/semantic-conventions": "1.27.0"
},
"engines": {
"node": ">=14"
@@ -10809,13 +10288,14 @@
"link": true
},
"node_modules/@opentelemetry/instrumentation-http": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-http/-/instrumentation-http-0.52.0.tgz",
- "integrity": "sha512-E6ywZuxTa4LnVXZGwL1oj3e2Eog1yIaNqa8KjKXoGkDNKte9/SjQnePXOmhQYI0A9nf0UyFbP9aKd+yHrkJXUA==",
- "dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/instrumentation": "0.52.0",
- "@opentelemetry/semantic-conventions": "1.25.0",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-http/-/instrumentation-http-0.54.2.tgz",
+ "integrity": "sha512-mABjJ34UcU32pg8g18L9xBh0U3JON/2F6/57BYYy8AZJp2a71lZjcKr0T00pICoic50TW5HvcTrmyfMil+AiXQ==",
+ "dependencies": {
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/instrumentation": "0.54.2",
+ "@opentelemetry/semantic-conventions": "1.27.0",
+ "forwarded-parse": "2.1.2",
"semver": "^7.5.2"
},
"engines": {
@@ -10926,72 +10406,77 @@
"link": true
},
"node_modules/@opentelemetry/instrumentation-xml-http-request": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-xml-http-request/-/instrumentation-xml-http-request-0.52.0.tgz",
- "integrity": "sha512-Q6dEFKBkVmLs6XByXNPkCZXYF1Ovs3fFCD33nA4d4dgBgv8zMPt7xBLIxfEw0QVDZhyBhKXwv7byvMDB+yYQdA==",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-xml-http-request/-/instrumentation-xml-http-request-0.54.2.tgz",
+ "integrity": "sha512-Y07iCr4OuXQwiPft2GqXpp7hNpIDa/72wzwfDRP/fh1DZcm2MjXgvcOos45VFoXPW5YxHs/ONobT4UTrS/yovA==",
"dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/instrumentation": "0.52.0",
- "@opentelemetry/sdk-trace-web": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/instrumentation": "0.54.2",
+ "@opentelemetry/sdk-trace-web": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
- "@opentelemetry/api": "^1.0.0"
+ "@opentelemetry/api": "^1.3.0"
}
},
+ "node_modules/@opentelemetry/instrumentation/node_modules/@types/shimmer": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@types/shimmer/-/shimmer-1.2.0.tgz",
+ "integrity": "sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg=="
+ },
"node_modules/@opentelemetry/otlp-exporter-base": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.52.0.tgz",
- "integrity": "sha512-rlyg5UKW9yMTNMUxYYib9XxEE/krpH7Q6mIuJNOBMbjLwmqe1WQ2MNKNzobVZTKop/FX4CvyNN3wUEl/6gnvfw==",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.54.2.tgz",
+ "integrity": "sha512-NrNyxu6R/bGAwanhz1HI0aJWKR6xUED4TjCH4iWMlAfyRukGbI9Kt/Akd2sYLwRKNhfS+sKetKGCUQPMDyYYMA==",
"dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/otlp-transformer": "0.52.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-transformer": "0.54.2"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
- "@opentelemetry/api": "^1.0.0"
+ "@opentelemetry/api": "^1.3.0"
}
},
"node_modules/@opentelemetry/otlp-grpc-exporter-base": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-grpc-exporter-base/-/otlp-grpc-exporter-base-0.52.0.tgz",
- "integrity": "sha512-iVq3wCElOoKUkxBOuvV8cfaELG8WO/zfLWIZil6iw/6hj6rktLodnJ7kVOneVmLki7Po1BjE1K7JOp2G3UPgYg==",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-grpc-exporter-base/-/otlp-grpc-exporter-base-0.54.2.tgz",
+ "integrity": "sha512-HZtACQuLhgDcgNa9arGnVVGV28sSGQ+iwRgICWikFKiVxUsoWffqBvTxPa6G3DUTg5R+up97j/zxubEyxSAOHg==",
"dependencies": {
"@grpc/grpc-js": "^1.7.1",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/otlp-exporter-base": "0.52.0",
- "@opentelemetry/otlp-transformer": "0.52.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
- "@opentelemetry/api": "^1.0.0"
+ "@opentelemetry/api": "^1.3.0"
}
},
"node_modules/@opentelemetry/otlp-transformer": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.52.0.tgz",
- "integrity": "sha512-40acy3JxCAqQYcYepypF/64GVB8jerC6Oiz1HRUXxiSTVwg+ud7UtywfOkPRpc9bjHiyJouWxTjiUPQ9VBMKbg==",
- "dependencies": {
- "@opentelemetry/api-logs": "0.52.0",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-logs": "0.52.0",
- "@opentelemetry/sdk-metrics": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.54.2.tgz",
+ "integrity": "sha512-2tIjahJlMRRUz0A2SeE+qBkeBXBFkSjR0wqJ08kuOqaL8HNGan5iZf+A8cfrfmZzPUuMKCyY9I+okzFuFs6gKQ==",
+ "dependencies": {
+ "@opentelemetry/api-logs": "0.54.2",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-logs": "0.54.2",
+ "@opentelemetry/sdk-metrics": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
"protobufjs": "^7.3.0"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
- "@opentelemetry/api": ">=1.3.0 <1.10.0"
+ "@opentelemetry/api": "^1.3.0"
}
},
"node_modules/@opentelemetry/plugin-react-load": {
@@ -11003,25 +10488,19 @@
"link": true
},
"node_modules/@opentelemetry/propagator-aws-xray": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-aws-xray/-/propagator-aws-xray-1.25.0.tgz",
- "integrity": "sha512-+honT9J/Xa6Mxk7AO/VlSUGaVSSQzqHr0wZDWrSunnc3eVbS5YTuv7UrcoHTED+AYziawTlx7ICeAX2VPc1M+w==",
- "dependencies": {
- "@opentelemetry/core": "1.25.0"
- },
- "engines": {
- "node": ">=14"
- },
- "peerDependencies": {
- "@opentelemetry/api": ">=1.0.0 <1.10.0"
- }
+ "resolved": "propagators/propagator-aws-xray",
+ "link": true
+ },
+ "node_modules/@opentelemetry/propagator-aws-xray-lambda": {
+ "resolved": "propagators/propagator-aws-xray-lambda",
+ "link": true
},
"node_modules/@opentelemetry/propagator-b3": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.25.0.tgz",
- "integrity": "sha512-/A+1Tbnf0uwnP51OkoaQlrb9YILdHsoqIISna1MNXpZRzf42xm6LVLb49i+m/zlJoW1e8P4ekcrditR5pfmwog==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.27.0.tgz",
+ "integrity": "sha512-pTsko3gnMioe3FeWcwTQR3omo5C35tYsKKwjgTCTVCgd3EOWL9BZrMfgLBmszrwXABDfUrlAEFN/0W0FfQGynQ==",
"dependencies": {
- "@opentelemetry/core": "1.25.0"
+ "@opentelemetry/core": "1.27.0"
},
"engines": {
"node": ">=14"
@@ -11035,11 +10514,11 @@
"link": true
},
"node_modules/@opentelemetry/propagator-jaeger": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.25.0.tgz",
- "integrity": "sha512-uwA5xqaPISXeX+YutqbjmzENnCGCvrIXlqIXP5gRoA5N6S3W28p+ExL77TugMKHN5gXklapF67jDfz7lq5ETzQ==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.27.0.tgz",
+ "integrity": "sha512-EI1bbK0wn0yIuKlc2Qv2LKBRw6LiUWevrjCF80fn/rlaB+7StAi8Y5s8DBqAYNpY7v1q86+NjU18v7hj2ejU3A==",
"dependencies": {
- "@opentelemetry/core": "1.25.0"
+ "@opentelemetry/core": "1.27.0"
},
"engines": {
"node": ">=14"
@@ -11085,12 +10564,12 @@
"link": true
},
"node_modules/@opentelemetry/resources": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.25.0.tgz",
- "integrity": "sha512-iHjydPMYJ+Li1auveJCq2rp5U2h6Mhq8BidiyE0jfVlDTFyR1ny8AfJHfmFzJ/RAM8vT8L7T21kcmGybxZC7lQ==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.27.0.tgz",
+ "integrity": "sha512-jOwt2VJ/lUD5BLc+PMNymDrUCpm5PKi1E9oSVYAvz01U/VdndGmrtV3DU1pG4AwlYhJRHbHfOUIlpBeXCPw6QQ==",
"dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
},
"engines": {
"node": ">=14"
@@ -11100,13 +10579,13 @@
}
},
"node_modules/@opentelemetry/sdk-logs": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.52.0.tgz",
- "integrity": "sha512-Dp6g7w7WglrDZMn2yHBMAKRGqQy8C0PUbFovkSwcSsmL47n4FSEc3eeGblZTtueOUW+rTsPJpLHoUpEdS0Wibw==",
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.54.2.tgz",
+ "integrity": "sha512-yIbYqDLS/AtBbPjCjh6eSToGNRMqW2VR8RrKEy+G+J7dFG7pKoptTH5T+XlKPleP9NY8JZYIpgJBlI+Osi0rFw==",
"dependencies": {
- "@opentelemetry/api-logs": "0.52.0",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/resources": "1.25.0"
+ "@opentelemetry/api-logs": "0.54.2",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/resources": "1.27.0"
},
"engines": {
"node": ">=14"
@@ -11116,13 +10595,12 @@
}
},
"node_modules/@opentelemetry/sdk-metrics": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.25.0.tgz",
- "integrity": "sha512-IF+Sv4VHgBr/BPMKabl+GouJIhEqAOexCHgXVTISdz3q9P9H/uA8ScCF+22gitQ69aFtESbdYOV+Fen5+avQng==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.27.0.tgz",
+ "integrity": "sha512-JzWgzlutoXCydhHWIbLg+r76m+m3ncqvkCcsswXAQ4gqKS+LOHKhq+t6fx1zNytvLuaOUBur7EvWxECc4jPQKg==",
"dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/resources": "1.25.0",
- "lodash.merge": "^4.6.2"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/resources": "1.27.0"
},
"engines": {
"node": ">=14"
@@ -11132,23 +10610,26 @@
}
},
"node_modules/@opentelemetry/sdk-node": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-node/-/sdk-node-0.52.0.tgz",
- "integrity": "sha512-3RNnsoHGutya3oVsoc2WRrk/TKlxr+R2uN6H4boNJvW7kc8yxS4QrOI6DlbQYAgEMeC1PMu95jW9LirPOWcMGw==",
- "dependencies": {
- "@opentelemetry/api-logs": "0.52.0",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/exporter-trace-otlp-grpc": "0.52.0",
- "@opentelemetry/exporter-trace-otlp-http": "0.52.0",
- "@opentelemetry/exporter-trace-otlp-proto": "0.52.0",
- "@opentelemetry/exporter-zipkin": "1.25.0",
- "@opentelemetry/instrumentation": "0.52.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-logs": "0.52.0",
- "@opentelemetry/sdk-metrics": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
- "@opentelemetry/sdk-trace-node": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-node/-/sdk-node-0.54.2.tgz",
+ "integrity": "sha512-afn8GBpA7Gb55aU0LUxIQ+oe6QxLhsf+Te9iw12Non3ZAspzdoCcfz5+hqecwpuVpEDdnj5iSalF7VVaL2pDeg==",
+ "dependencies": {
+ "@opentelemetry/api-logs": "0.54.2",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/exporter-logs-otlp-grpc": "0.54.2",
+ "@opentelemetry/exporter-logs-otlp-http": "0.54.2",
+ "@opentelemetry/exporter-logs-otlp-proto": "0.54.2",
+ "@opentelemetry/exporter-trace-otlp-grpc": "0.54.2",
+ "@opentelemetry/exporter-trace-otlp-http": "0.54.2",
+ "@opentelemetry/exporter-trace-otlp-proto": "0.54.2",
+ "@opentelemetry/exporter-zipkin": "1.27.0",
+ "@opentelemetry/instrumentation": "0.54.2",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-logs": "0.54.2",
+ "@opentelemetry/sdk-metrics": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
+ "@opentelemetry/sdk-trace-node": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
},
"engines": {
"node": ">=14"
@@ -11158,13 +10639,13 @@
}
},
"node_modules/@opentelemetry/sdk-trace-base": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.25.0.tgz",
- "integrity": "sha512-6+g2fiRQUG39guCsKVeY8ToeuUf3YUnPkN6DXRA1qDmFLprlLvZm9cS6+chgbW70cZJ406FTtSCDnJwxDC5sGQ==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.27.0.tgz",
+ "integrity": "sha512-btz6XTQzwsyJjombpeqCX6LhiMQYpzt2pIYNPnw0IPO/3AhT6yjnf8Mnv3ZC2A4eRYOjqrg+bfaXg9XHDRJDWQ==",
"dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
},
"engines": {
"node": ">=14"
@@ -11174,15 +10655,15 @@
}
},
"node_modules/@opentelemetry/sdk-trace-node": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.25.0.tgz",
- "integrity": "sha512-sYdZmNCkqthPpjwCxAJk5aQNLxCOQjT1u3JMGvO6rb3Ic8uFdnzXavP13Md9uYPcZBo+KxetyDhCf0x8wJGRng==",
- "dependencies": {
- "@opentelemetry/context-async-hooks": "1.25.0",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/propagator-b3": "1.25.0",
- "@opentelemetry/propagator-jaeger": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.27.0.tgz",
+ "integrity": "sha512-dWZp/dVGdUEfRBjBq2BgNuBlFqHCxyyMc8FsN0NX15X07mxSUO0SZRLyK/fdAVrde8nqFI/FEdMH4rgU9fqJfQ==",
+ "dependencies": {
+ "@opentelemetry/context-async-hooks": "1.27.0",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/propagator-b3": "1.27.0",
+ "@opentelemetry/propagator-jaeger": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
"semver": "^7.5.2"
},
"engines": {
@@ -11193,13 +10674,13 @@
}
},
"node_modules/@opentelemetry/sdk-trace-web": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.25.0.tgz",
- "integrity": "sha512-TAWRDRiVOeliE1A99z8idWb4pwEKKY9Vj5aTpLtrF4cvPOl0mPg3ZczvOw/HnpfRsWY0Ra/J3vS5uFSpoqPwEA==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.27.0.tgz",
+ "integrity": "sha512-ORZfG8Sm5IkJeI+P8MyW8v4m5OcmjEtD7VsjBghv5sDKH3f5p2mQpEEoJWlCr5GiW50Y1MaI2R4uFGIsxmDE9A==",
"dependencies": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
},
"engines": {
"node": ">=14"
@@ -11209,9 +10690,10 @@
}
},
"node_modules/@opentelemetry/semantic-conventions": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.25.0.tgz",
- "integrity": "sha512-M+kkXKRAIAiAP6qYyesfrC5TOmDpDVtsxuGfPcqd9B/iBrac+E14jYwrgm0yZBUIbIP2OnqC3j+UgkXLm1vxUQ==",
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.27.0.tgz",
+ "integrity": "sha512-sAay1RrB+ONOem0OZanAR1ZI/k7yDpnOQSQmTMuGImUQb2y8EbSaCJ94FQluM74xoU03vlb2d2U90hZluL6nQg==",
+ "license": "Apache-2.0",
"engines": {
"node": ">=14"
}
@@ -11328,6 +10810,39 @@
"node": ">=18"
}
},
+ "node_modules/@puppeteer/browsers/node_modules/lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "dependencies": {
+ "yallist": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@puppeteer/browsers/node_modules/semver": {
+ "version": "7.6.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
+ "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
+ "dev": true,
+ "dependencies": {
+ "lru-cache": "^6.0.0"
+ },
+ "bin": {
+ "semver": "bin/semver.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@puppeteer/browsers/node_modules/yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ },
"node_modules/@redis/bloom": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/@redis/bloom/-/bloom-1.0.2.tgz",
@@ -11932,7 +11447,6 @@
"resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-2.1.2.tgz",
"integrity": "sha512-iwUxrFm/ZFCXhzhtZ6JnoJzAsqUrVfBAZUTQj8ypXGtIjwXZpKqmgYiuqrDERiydDI5gesqvsC4Rqe57GGhbVg==",
"dev": true,
- "optional": true,
"dependencies": {
"@smithy/types": "^2.10.0",
"tslib": "^2.5.0"
@@ -12218,7 +11732,6 @@
"resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-2.4.0.tgz",
"integrity": "sha512-Mf2f7MMy31W8LisJ9O+7J5cKiNwBwBBLU6biQ7/sFSFdhuOxPN7hOPoZ8vlaFjvrpfOUJw9YOpjGyNTKuvomOQ==",
"dev": true,
- "optional": true,
"dependencies": {
"@smithy/abort-controller": "^2.1.2",
"@smithy/protocol-http": "^3.2.0",
@@ -12249,7 +11762,6 @@
"resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.2.0.tgz",
"integrity": "sha512-VRp0YITYIQum+rX4zeZ3cW1wl9r90IQzQN+VLS1NxdSMt6NLsJiJqR9czTxlaeWNrLHsFAETmjmdrS48Ug1liA==",
"dev": true,
- "optional": true,
"dependencies": {
"@smithy/types": "^2.10.0",
"tslib": "^2.5.0"
@@ -12263,7 +11775,6 @@
"resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-2.1.2.tgz",
"integrity": "sha512-wk6QpuvBBLJF5w8aADsZOtxaHY9cF5MZe1Ry3hSqqBxARdUrMoXi/jukUz5W0ftXGlbA398IN8dIIUj3WXqJXg==",
"dev": true,
- "optional": true,
"dependencies": {
"@smithy/types": "^2.10.0",
"@smithy/util-uri-escape": "^2.1.1",
@@ -12558,7 +12069,6 @@
"resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-2.1.1.tgz",
"integrity": "sha512-saVzI1h6iRBUVSqtnlOnc9ssU09ypo7n+shdQ8hBTZno/9rZ3AuRYvoHInV57VF7Qn7B+pFJG7qTzFiHxWlWBw==",
"dev": true,
- "optional": true,
"dependencies": {
"tslib": "^2.5.0"
},
@@ -12610,6 +12120,34 @@
"integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==",
"dev": true
},
+ "node_modules/@tsconfig/node10": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz",
+ "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@tsconfig/node12": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz",
+ "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@tsconfig/node14": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz",
+ "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/@tsconfig/node16": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz",
+ "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/@tufjs/canonical-json": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz",
@@ -12636,6 +12174,7 @@
"version": "1.3.7",
"resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.7.tgz",
"integrity": "sha512-Pay9fq2lM2wXPWbteBsRAGiWH2hig4ZE2asK+mm7kUzlxRTfL961rj89I6zV/E3PcIkDqyuBEcMxFT7rccugeQ==",
+ "dev": true,
"dependencies": {
"@types/node": "*"
}
@@ -12651,9 +12190,9 @@
}
},
"node_modules/@types/aws-lambda": {
- "version": "8.10.122",
- "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.122.tgz",
- "integrity": "sha512-vBkIh9AY22kVOCEKo5CJlyCgmSWvasC+SWUxL/x/vOwRobMpI/HG1xp/Ae3AqmSiZeLUbOhW0FCD3ZjqqUxmXw=="
+ "version": "8.10.143",
+ "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.143.tgz",
+ "integrity": "sha512-u5vzlcR14ge/4pMTTMDQr3MF0wEe38B2F9o84uC4F43vN5DGTy63npRrB6jQhyt+C0lGv4ZfiRcRkqJoZuPnmg=="
},
"node_modules/@types/babel__code-frame": {
"version": "7.0.6",
@@ -12671,6 +12210,7 @@
"version": "1.19.5",
"resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz",
"integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==",
+ "dev": true,
"dependencies": {
"@types/connect": "*",
"@types/node": "*"
@@ -12686,18 +12226,18 @@
}
},
"node_modules/@types/bunyan": {
- "version": "1.8.11",
- "resolved": "https://registry.npmjs.org/@types/bunyan/-/bunyan-1.8.11.tgz",
- "integrity": "sha512-758fRH7umIMk5qt5ELmRMff4mLDlN+xyYzC+dkPTdKwbSkJFvz6xwyScrytPU0QIBbRRwbiE8/BIg8bpajerNQ==",
- "dev": true,
+ "version": "1.8.9",
+ "resolved": "https://registry.npmjs.org/@types/bunyan/-/bunyan-1.8.9.tgz",
+ "integrity": "sha512-ZqS9JGpBxVOvsawzmVt30sP++gSQMTejCkIAQ3VdadOcRE8izTyW66hufvwLeH+YEGP6Js2AW7Gz+RMyvrEbmw==",
+ "license": "MIT",
"dependencies": {
"@types/node": "*"
}
},
"node_modules/@types/chai": {
- "version": "4.3.12",
- "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.12.tgz",
- "integrity": "sha512-zNKDHG/1yxm8Il6uCCVsm+dRdEsJlFoDu73X17y09bId6UwoYww+vFBsAcRzl8knM1sab3Dp1VRikFQwDOtDDw==",
+ "version": "4.3.17",
+ "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.17.tgz",
+ "integrity": "sha512-zmZ21EWzR71B4Sscphjief5djsLre50M6lI622OSySTmn9DB3j+C3kWroHfBQWXbOBwbgg/M8CG/hUxDLIloow==",
"dev": true
},
"node_modules/@types/co-body": {
@@ -12717,9 +12257,10 @@
"dev": true
},
"node_modules/@types/connect": {
- "version": "3.4.38",
- "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz",
- "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==",
+ "version": "3.4.36",
+ "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz",
+ "integrity": "sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==",
+ "license": "MIT",
"dependencies": {
"@types/node": "*"
}
@@ -12727,7 +12268,8 @@
"node_modules/@types/content-disposition": {
"version": "0.5.8",
"resolved": "https://registry.npmjs.org/@types/content-disposition/-/content-disposition-0.5.8.tgz",
- "integrity": "sha512-QVSSvno3dE0MgO76pJhmv4Qyi/j0Yk9pBp0Y7TJ2Tlj+KCgJWY6qX7nnxCOLkZ3VYRSIk1WTxCvwUSdx6CCLdg=="
+ "integrity": "sha512-QVSSvno3dE0MgO76pJhmv4Qyi/j0Yk9pBp0Y7TJ2Tlj+KCgJWY6qX7nnxCOLkZ3VYRSIk1WTxCvwUSdx6CCLdg==",
+ "dev": true
},
"node_modules/@types/convert-source-map": {
"version": "2.0.3",
@@ -12745,6 +12287,7 @@
"version": "0.9.0",
"resolved": "https://registry.npmjs.org/@types/cookies/-/cookies-0.9.0.tgz",
"integrity": "sha512-40Zk8qR147RABiQ7NQnBzWzDcjKzNrntB5BAmeGCb2p/MIyOE+4BVvc17wumsUqUw00bJYqoXFHYygQnEFh4/Q==",
+ "dev": true,
"dependencies": {
"@types/connect": "*",
"@types/express": "*",
@@ -12767,26 +12310,6 @@
"integrity": "sha512-jBqiORIzKDOToaF63Fm//haOCHuwQuLa2202RK4MozpA6lh93eCBc+/8+wZn5OzjJt3ySdc+74SXWXB55Ewtyw==",
"dev": true
},
- "node_modules/@types/eslint": {
- "version": "8.56.10",
- "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz",
- "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==",
- "dev": true,
- "dependencies": {
- "@types/estree": "*",
- "@types/json-schema": "*"
- }
- },
- "node_modules/@types/eslint-scope": {
- "version": "3.7.7",
- "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz",
- "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==",
- "dev": true,
- "dependencies": {
- "@types/eslint": "*",
- "@types/estree": "*"
- }
- },
"node_modules/@types/estree": {
"version": "1.0.5",
"resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
@@ -12794,9 +12317,10 @@
"dev": true
},
"node_modules/@types/express": {
- "version": "4.17.18",
- "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.18.tgz",
- "integrity": "sha512-Sxv8BSLLgsBYmcnGdGjjEjqET2U+AKAdCRODmMiq02FgjwuV75Ut85DRpvFjyw/Mk0vgUOliGRU0UUmuuZHByQ==",
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz",
+ "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==",
+ "dev": true,
"dependencies": {
"@types/body-parser": "*",
"@types/express-serve-static-core": "^4.17.33",
@@ -12808,6 +12332,7 @@
"version": "4.17.43",
"resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.43.tgz",
"integrity": "sha512-oaYtiBirUOPQGSWNGPWnzyAFJ0BP3cwvN4oWZQY+zUBwpVIGsKUkpBpSztp74drYcjavs7SKFZ4DX1V2QeN8rg==",
+ "dev": true,
"dependencies": {
"@types/node": "*",
"@types/qs": "*",
@@ -12828,12 +12353,14 @@
"node_modules/@types/http-assert": {
"version": "1.5.5",
"resolved": "https://registry.npmjs.org/@types/http-assert/-/http-assert-1.5.5.tgz",
- "integrity": "sha512-4+tE/lwdAahgZT1g30Jkdm9PzFRde0xwxBNUyRsCitRvCQB90iuA2uJYdUnhnANRcqGXaWOGY4FEoxeElNAK2g=="
+ "integrity": "sha512-4+tE/lwdAahgZT1g30Jkdm9PzFRde0xwxBNUyRsCitRvCQB90iuA2uJYdUnhnANRcqGXaWOGY4FEoxeElNAK2g==",
+ "dev": true
},
"node_modules/@types/http-errors": {
"version": "2.0.4",
"resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz",
- "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA=="
+ "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==",
+ "dev": true
},
"node_modules/@types/ioredis4": {
"name": "@types/ioredis",
@@ -12893,12 +12420,14 @@
"node_modules/@types/keygrip": {
"version": "1.0.6",
"resolved": "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.6.tgz",
- "integrity": "sha512-lZuNAY9xeJt7Bx4t4dx0rYCDqGPW8RXhQZK1td7d4H6E9zYbLoOtjBvfwdTKpsyxQI/2jv+armjX/RW+ZNpXOQ=="
+ "integrity": "sha512-lZuNAY9xeJt7Bx4t4dx0rYCDqGPW8RXhQZK1td7d4H6E9zYbLoOtjBvfwdTKpsyxQI/2jv+armjX/RW+ZNpXOQ==",
+ "dev": true
},
"node_modules/@types/koa": {
- "version": "2.14.0",
- "resolved": "https://registry.npmjs.org/@types/koa/-/koa-2.14.0.tgz",
- "integrity": "sha512-DTDUyznHGNHAl+wd1n0z1jxNajduyTh8R53xoewuerdBzGo6Ogj6F2299BFtrexJw4NtgjsI5SMPCmV9gZwGXA==",
+ "version": "2.15.0",
+ "resolved": "https://registry.npmjs.org/@types/koa/-/koa-2.15.0.tgz",
+ "integrity": "sha512-7QFsywoE5URbuVnG3loe03QXuGajrnotr3gQkXcEBShORai23MePfFYdhz90FEtBBpkyIYQbVD+evKtloCgX3g==",
+ "dev": true,
"dependencies": {
"@types/accepts": "*",
"@types/content-disposition": "*",
@@ -12911,9 +12440,10 @@
}
},
"node_modules/@types/koa__router": {
- "version": "12.0.3",
- "resolved": "https://registry.npmjs.org/@types/koa__router/-/koa__router-12.0.3.tgz",
- "integrity": "sha512-5YUJVv6NwM1z7m6FuYpKfNLTZ932Z6EF6xy2BbtpJSyn13DKNQEkXVffFVSnJHxvwwWh2SAeumpjAYUELqgjyw==",
+ "version": "12.0.4",
+ "resolved": "https://registry.npmjs.org/@types/koa__router/-/koa__router-12.0.4.tgz",
+ "integrity": "sha512-Y7YBbSmfXZpa/m5UGGzb7XadJIRBRnwNY9cdAojZGp65Cpe5MAP3mOZE7e3bImt8dfKS4UFcR16SLH8L/z7PBw==",
+ "dev": true,
"dependencies": {
"@types/koa": "*"
}
@@ -12922,6 +12452,7 @@
"version": "3.2.8",
"resolved": "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.8.tgz",
"integrity": "sha512-4Olc63RY+MKvxMwVknCUDhRQX1pFQoBZ/lXcRLP69PQkEpze/0cr8LNqJQe5NFb/b19DWi2a5bTi2VAlQzhJuA==",
+ "dev": true,
"dependencies": {
"@types/koa": "*"
}
@@ -12939,9 +12470,10 @@
"dev": true
},
"node_modules/@types/lru-cache": {
- "version": "7.10.9",
- "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-7.10.9.tgz",
- "integrity": "sha512-wrwgkdJ0xr8AbzKhVaRI8SXZN9saapPwwLoydBEr4HqMZET1LUTi1gdoaj82XmRJ9atqN7MtB0aja29iiK+7ag==",
+ "version": "7.10.10",
+ "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-7.10.10.tgz",
+ "integrity": "sha512-nEpVRPWW9EBmx2SCfNn3ClYxPL7IktPX12HhIoSc/H5mMjdeW3+YsXIpseLQ2xF35+OcpwKQbEUw5VtqE4PDNA==",
+ "deprecated": "This is a stub types definition. lru-cache provides its own type definitions, so you do not need this installed.",
"dev": true,
"dependencies": {
"lru-cache": "*"
@@ -12958,7 +12490,8 @@
"node_modules/@types/mime": {
"version": "1.3.5",
"resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz",
- "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w=="
+ "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==",
+ "dev": true
},
"node_modules/@types/minimatch": {
"version": "3.0.5",
@@ -12978,20 +12511,10 @@
"integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==",
"dev": true
},
- "node_modules/@types/mongodb": {
- "version": "3.6.20",
- "resolved": "https://registry.npmjs.org/@types/mongodb/-/mongodb-3.6.20.tgz",
- "integrity": "sha512-WcdpPJCakFzcWWD9juKoZbRtQxKIMYF/JIAM4JrNHrMcnJL6/a2NWjXxW7fo9hxboxxkg+icff8d7+WIEvKgYQ==",
- "dev": true,
- "dependencies": {
- "@types/bson": "*",
- "@types/node": "*"
- }
- },
"node_modules/@types/mysql": {
- "version": "2.15.22",
- "resolved": "https://registry.npmjs.org/@types/mysql/-/mysql-2.15.22.tgz",
- "integrity": "sha512-wK1pzsJVVAjYCSZWQoWHziQZbNggXFDUEIGf54g4ZM/ERuP86uGdWeKZWMYlqTPMZfHJJvLPyogXGvCOg87yLQ==",
+ "version": "2.15.26",
+ "resolved": "https://registry.npmjs.org/@types/mysql/-/mysql-2.15.26.tgz",
+ "integrity": "sha512-DSLCOXhkvfS5WNNPbfn2KdICAmk8lLc+/PNvnPnF7gOdMZCxopXduqv0OQ13y/yA/zXTSikZZqVgybUxOEg6YQ==",
"dependencies": {
"@types/node": "*"
}
@@ -13030,9 +12553,9 @@
}
},
"node_modules/@types/pg-pool": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/@types/pg-pool/-/pg-pool-2.0.4.tgz",
- "integrity": "sha512-qZAvkv1K3QbmHHFYSNRYPkRjOWRLBYrL4B9c+wG0GSVGBw0NtJwPcgx/DSddeDJvRGMHCEQ4VMEVfuJ/0gZ3XQ==",
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/@types/pg-pool/-/pg-pool-2.0.6.tgz",
+ "integrity": "sha512-TaAUE5rq2VQYxab5Ts7WZhKNmuN78Q6PiFonTDdpbx8a1H0M1vhy3rhiMjl+e2iHmogyMw7jZF4FrE6eJUy5HQ==",
"dependencies": {
"@types/pg": "*"
}
@@ -13046,21 +12569,23 @@
"node_modules/@types/qs": {
"version": "6.9.11",
"resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.11.tgz",
- "integrity": "sha512-oGk0gmhnEJK4Yyk+oI7EfXsLayXatCWPHary1MtcmbAifkobT9cM9yutG/hZKIseOU0MqbIwQ/u2nn/Gb+ltuQ=="
+ "integrity": "sha512-oGk0gmhnEJK4Yyk+oI7EfXsLayXatCWPHary1MtcmbAifkobT9cM9yutG/hZKIseOU0MqbIwQ/u2nn/Gb+ltuQ==",
+ "dev": true
},
"node_modules/@types/range-parser": {
"version": "1.2.7",
"resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz",
- "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ=="
+ "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==",
+ "dev": true
},
"node_modules/@types/react": {
- "version": "17.0.67",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.67.tgz",
- "integrity": "sha512-zE76EIJ0Y58Oy9yDX/9csb/NuKjt0Eq2YgWb/8Wxo91YmuLzzbyiRoaqJE9h8iDlsT7n35GdpoLomHlaB1kFbg==",
+ "version": "17.0.80",
+ "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.80.tgz",
+ "integrity": "sha512-LrgHIu2lEtIo8M7d1FcI3BdwXWoRQwMoXOZ7+dPTW0lYREjmlHl3P0U1VD0i/9tppOuv8/sam7sOjx34TxSFbA==",
"dev": true,
"dependencies": {
"@types/prop-types": "*",
- "@types/scheduler": "*",
+ "@types/scheduler": "^0.16",
"csstype": "^3.0.2"
}
},
@@ -13114,9 +12639,9 @@
"dev": true
},
"node_modules/@types/restify": {
- "version": "4.3.10",
- "resolved": "https://registry.npmjs.org/@types/restify/-/restify-4.3.10.tgz",
- "integrity": "sha512-lSt9uvWwdYrGgRCqKyh5DyC008xN8hij5RWzOPlPaTiec2smfpd7s034BASPDMIG4WhRfk0y4oLFoAi/AzVN9g==",
+ "version": "4.3.12",
+ "resolved": "https://registry.npmjs.org/@types/restify/-/restify-4.3.12.tgz",
+ "integrity": "sha512-Z0GnpGQUE/OPYPnuNAO/20BIVHKucwF/MPV9gQ2ksNlP/Fswz8KiqW4Sb/MTXD9h0BrQ7q0vLqXCfW0w2IIbKg==",
"dev": true,
"dependencies": {
"@types/bunyan": "*",
@@ -13130,15 +12655,16 @@
"dev": true
},
"node_modules/@types/semver": {
- "version": "7.5.3",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.3.tgz",
- "integrity": "sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==",
+ "version": "7.5.8",
+ "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz",
+ "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==",
"dev": true
},
"node_modules/@types/send": {
"version": "0.17.4",
"resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz",
"integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==",
+ "dev": true,
"dependencies": {
"@types/mime": "^1",
"@types/node": "*"
@@ -13148,6 +12674,7 @@
"version": "1.15.5",
"resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.5.tgz",
"integrity": "sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==",
+ "dev": true,
"dependencies": {
"@types/http-errors": "*",
"@types/mime": "*",
@@ -13157,12 +12684,13 @@
"node_modules/@types/shimmer": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/@types/shimmer/-/shimmer-1.0.3.tgz",
- "integrity": "sha512-F/IjUGnV6pIN7R4ZV4npHJVoNtaLZWvb+2/9gctxjb99wkpI7Ozg8VPogwDiTRyjLwZXAYxjvdg1KS8LTHKdDA=="
+ "integrity": "sha512-F/IjUGnV6pIN7R4ZV4npHJVoNtaLZWvb+2/9gctxjb99wkpI7Ozg8VPogwDiTRyjLwZXAYxjvdg1KS8LTHKdDA==",
+ "dev": true
},
"node_modules/@types/sinon": {
- "version": "10.0.18",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.18.tgz",
- "integrity": "sha512-OpQC9ug8BcnNxue2WF5aTruMaDRFn6NyfaE4DmAKOlQMn54b7CnCvDFV3wj5fk/HbSSTYmOYs2bTb5ShANjyQg==",
+ "version": "10.0.20",
+ "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.20.tgz",
+ "integrity": "sha512-2APKKruFNCAZgx3daAyACGzWuJ028VVCUDk6o2rw/Z4PXT0ogwdV4KUegW0MwVs0Zu59auPXbbuBJHF12Sx1Eg==",
"dev": true,
"dependencies": {
"@types/sinonjs__fake-timers": "*"
@@ -13469,9 +12997,9 @@
}
},
"node_modules/@web/dev-server-core": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/@web/dev-server-core/-/dev-server-core-0.7.1.tgz",
- "integrity": "sha512-alHd2j0f4e1ekqYDR8lWScrzR7D5gfsUZq3BP3De9bkFWM3AELINCmqqlVKmCtlkAdEc9VyQvNiEqrxraOdc2A==",
+ "version": "0.7.2",
+ "resolved": "https://registry.npmjs.org/@web/dev-server-core/-/dev-server-core-0.7.2.tgz",
+ "integrity": "sha512-Q/0jpF13Ipk+qGGQ+Yx/FW1TQBYazpkfgYHHo96HBE7qv4V4KKHqHglZcSUxti/zd4bToxX1cFTz8dmbTlb8JA==",
"dev": true,
"dependencies": {
"@types/koa": "^2.11.6",
@@ -13601,17 +13129,17 @@
}
},
"node_modules/@web/dev-server-rollup": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/@web/dev-server-rollup/-/dev-server-rollup-0.6.1.tgz",
- "integrity": "sha512-vhtsQ8qu1pBHailOBOYJwZnYDc1Lmx6ZAd2j+y5PD2ck0R1LmVsZ7dZK8hDCpkvpvlu2ndURjL9tbzdcsBRJmg==",
+ "version": "0.6.4",
+ "resolved": "https://registry.npmjs.org/@web/dev-server-rollup/-/dev-server-rollup-0.6.4.tgz",
+ "integrity": "sha512-sJZfTGCCrdku5xYnQQG51odGI092hKY9YFM0X3Z0tRY3iXKXcYRaLZrErw5KfCxr6g0JRuhe4BBhqXTA5Q2I3Q==",
"dev": true,
"dependencies": {
"@rollup/plugin-node-resolve": "^15.0.1",
- "@web/dev-server-core": "^0.7.0",
+ "@web/dev-server-core": "^0.7.2",
"nanocolors": "^0.2.1",
"parse5": "^6.0.1",
"rollup": "^4.4.0",
- "whatwg-url": "^11.0.0"
+ "whatwg-url": "^14.0.0"
},
"engines": {
"node": ">=18.0.0"
@@ -13623,6 +13151,31 @@
"integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
"dev": true
},
+ "node_modules/@web/dev-server-rollup/node_modules/tr46": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz",
+ "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==",
+ "dev": true,
+ "dependencies": {
+ "punycode": "^2.3.1"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
+ "node_modules/@web/dev-server-rollup/node_modules/whatwg-url": {
+ "version": "14.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.0.0.tgz",
+ "integrity": "sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==",
+ "dev": true,
+ "dependencies": {
+ "tr46": "^5.0.0",
+ "webidl-conversions": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=18"
+ }
+ },
"node_modules/@web/dev-server/node_modules/camelcase": {
"version": "6.3.0",
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
@@ -13655,9 +13208,9 @@
"dev": true
},
"node_modules/@web/test-runner": {
- "version": "0.18.1",
- "resolved": "https://registry.npmjs.org/@web/test-runner/-/test-runner-0.18.1.tgz",
- "integrity": "sha512-jB/9vrpGVtcLY6/7sPpKpSheQ3wWY9P5aQcz2SK2gMHTq3gNpa51NAyec0Al7EFpHvJ1wKYTGRLB2gPyEoJeDg==",
+ "version": "0.18.3",
+ "resolved": "https://registry.npmjs.org/@web/test-runner/-/test-runner-0.18.3.tgz",
+ "integrity": "sha512-QkVK8Qguw3Zhyu8SYR7F4VdcjyXBeJNr8W8L++s4zO/Ok7DR/Wu7+rLswn3H7OH3xYoCHRmwteehcFejefz6ew==",
"dev": true,
"dependencies": {
"@web/browser-logs": "^0.4.0",
@@ -14163,15 +13716,6 @@
"node": ">=0.4.0"
}
},
- "node_modules/acorn-import-assertions": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz",
- "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==",
- "dev": true,
- "peerDependencies": {
- "acorn": "^8"
- }
- },
"node_modules/acorn-import-attributes": {
"version": "1.9.5",
"resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz",
@@ -14189,6 +13733,19 @@
"acorn": "^6.0.0 || ^7.0.0 || ^8.0.0"
}
},
+ "node_modules/acorn-walk": {
+ "version": "8.3.3",
+ "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz",
+ "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "acorn": "^8.11.0"
+ },
+ "engines": {
+ "node": ">=0.4.0"
+ }
+ },
"node_modules/add-stream": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz",
@@ -14336,9 +13893,9 @@
}
},
"node_modules/ansi-colors": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz",
- "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==",
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
+ "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==",
"dev": true,
"engines": {
"node": ">=6"
@@ -14466,7 +14023,9 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz",
"integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"node_modules/append-transform": {
"version": "2.0.0",
@@ -14505,6 +14064,13 @@
"node": "^12.13.0 || ^14.15.0 || >=16.0.0"
}
},
+ "node_modules/arg": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz",
+ "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/argparse": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
@@ -14622,15 +14188,18 @@
}
},
"node_modules/array.prototype.reduce": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.6.tgz",
- "integrity": "sha512-UW+Mz8LG/sPSU8jRDCjVr6J/ZKAGpHfwrZ6kWTG5qCxIEiXdVshqGnu5vEZA8S1y6X4aCSbQZ0/EEsfvEvBiSg==",
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.7.tgz",
+ "integrity": "sha512-mzmiUCVwtiD4lgxYP8g7IYy8El8p2CSMePvIbTS7gchKir/L1fgJrk0yDKmAX6mnRQFKNADYIk8nNlTris5H1Q==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.2",
"es-array-method-boxes-properly": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.0.0",
"is-string": "^1.0.7"
},
"engines": {
@@ -14839,6 +14408,16 @@
"uuid": "bin/uuid"
}
},
+ "node_modules/aws-ssl-profiles": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/aws-ssl-profiles/-/aws-ssl-profiles-1.1.2.tgz",
+ "integrity": "sha512-NZKeq9AfyQvEeNlN0zSYAaWrmBffJh3IELMZfRpJVWgrpEbtEpnjvzqBPf+mxoI287JohRDoa+/nsfqqiZmF6g==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">= 6.0.0"
+ }
+ },
"node_modules/axios": {
"version": "1.6.7",
"resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz",
@@ -14856,377 +14435,6 @@
"integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==",
"dev": true
},
- "node_modules/babel-code-frame": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
- "integrity": "sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g==",
- "dev": true,
- "dependencies": {
- "chalk": "^1.1.3",
- "esutils": "^2.0.2",
- "js-tokens": "^3.0.2"
- }
- },
- "node_modules/babel-code-frame/node_modules/ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-code-frame/node_modules/ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-code-frame/node_modules/chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-code-frame/node_modules/has-ansi": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
- "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==",
- "dev": true,
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-code-frame/node_modules/js-tokens": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
- "integrity": "sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg==",
- "dev": true
- },
- "node_modules/babel-code-frame/node_modules/strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==",
- "dev": true,
- "dependencies": {
- "ansi-regex": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-code-frame/node_modules/supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==",
- "dev": true,
- "engines": {
- "node": ">=0.8.0"
- }
- },
- "node_modules/babel-core": {
- "version": "6.26.3",
- "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz",
- "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==",
- "dev": true,
- "dependencies": {
- "babel-code-frame": "^6.26.0",
- "babel-generator": "^6.26.0",
- "babel-helpers": "^6.24.1",
- "babel-messages": "^6.23.0",
- "babel-register": "^6.26.0",
- "babel-runtime": "^6.26.0",
- "babel-template": "^6.26.0",
- "babel-traverse": "^6.26.0",
- "babel-types": "^6.26.0",
- "babylon": "^6.18.0",
- "convert-source-map": "^1.5.1",
- "debug": "^2.6.9",
- "json5": "^0.5.1",
- "lodash": "^4.17.4",
- "minimatch": "^3.0.4",
- "path-is-absolute": "^1.0.1",
- "private": "^0.1.8",
- "slash": "^1.0.0",
- "source-map": "^0.5.7"
- }
- },
- "node_modules/babel-core/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/babel-core/node_modules/json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==",
- "dev": true,
- "bin": {
- "json5": "lib/cli.js"
- }
- },
- "node_modules/babel-core/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/babel-core/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true
- },
- "node_modules/babel-core/node_modules/slash": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
- "integrity": "sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-core/node_modules/source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-generator": {
- "version": "6.26.1",
- "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz",
- "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==",
- "dev": true,
- "dependencies": {
- "babel-messages": "^6.23.0",
- "babel-runtime": "^6.26.0",
- "babel-types": "^6.26.0",
- "detect-indent": "^4.0.0",
- "jsesc": "^1.3.0",
- "lodash": "^4.17.4",
- "source-map": "^0.5.7",
- "trim-right": "^1.0.1"
- }
- },
- "node_modules/babel-generator/node_modules/detect-indent": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz",
- "integrity": "sha512-BDKtmHlOzwI7iRuEkhzsnPoi5ypEhWAJB5RvHWe1kMr06js3uK5B3734i3ui5Yd+wOJV1cpE4JnivPD283GU/A==",
- "dev": true,
- "dependencies": {
- "repeating": "^2.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-generator/node_modules/jsesc": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
- "integrity": "sha512-Mke0DA0QjUWuJlhsE0ZPPhYiJkRap642SmI/4ztCFaUs6V2AiH1sfecc+57NgaryfAA2VR3v6O+CSjC1jZJKOA==",
- "dev": true,
- "bin": {
- "jsesc": "bin/jsesc"
- }
- },
- "node_modules/babel-generator/node_modules/source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-helper-bindify-decorators": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz",
- "integrity": "sha512-TYX2QQATKA6Wssp6j7jqlw4QLmABDN1olRdEHndYvBXdaXM5dcx6j5rN0+nd+aVL+Th40fAEYvvw/Xxd/LETuQ==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-helper-builder-binary-assignment-operator-visitor": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz",
- "integrity": "sha512-gCtfYORSG1fUMX4kKraymq607FWgMWg+j42IFPc18kFQEsmtaibP4UrqsXt8FlEJle25HUd4tsoDR7H2wDhe9Q==",
- "dev": true,
- "dependencies": {
- "babel-helper-explode-assignable-expression": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-helper-call-delegate": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz",
- "integrity": "sha512-RL8n2NiEj+kKztlrVJM9JT1cXzzAdvWFh76xh/H1I4nKwunzE4INBXn8ieCZ+wh4zWszZk7NBS1s/8HR5jDkzQ==",
- "dev": true,
- "dependencies": {
- "babel-helper-hoist-variables": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-helper-define-map": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz",
- "integrity": "sha512-bHkmjcC9lM1kmZcVpA5t2om2nzT/xiZpo6TJq7UlZ3wqKfzia4veeXbIhKvJXAMzhhEBd3cR1IElL5AenWEUpA==",
- "dev": true,
- "dependencies": {
- "babel-helper-function-name": "^6.24.1",
- "babel-runtime": "^6.26.0",
- "babel-types": "^6.26.0",
- "lodash": "^4.17.4"
- }
- },
- "node_modules/babel-helper-explode-assignable-expression": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz",
- "integrity": "sha512-qe5csbhbvq6ccry9G7tkXbzNtcDiH4r51rrPUbwwoTzZ18AqxWYRZT6AOmxrpxKnQBW0pYlBI/8vh73Z//78nQ==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-helper-explode-class": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz",
- "integrity": "sha512-SFbWewr0/0U4AiRzsHqwsbOQeLXVa9T1ELdqEa2efcQB5KopTnunAqoj07TuHlN2lfTQNPGO/rJR4FMln5fVcA==",
- "dev": true,
- "dependencies": {
- "babel-helper-bindify-decorators": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-helper-function-name": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz",
- "integrity": "sha512-Oo6+e2iX+o9eVvJ9Y5eKL5iryeRdsIkwRYheCuhYdVHsdEQysbc2z2QkqCLIYnNxkT5Ss3ggrHdXiDI7Dhrn4Q==",
- "dev": true,
- "dependencies": {
- "babel-helper-get-function-arity": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-helper-get-function-arity": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz",
- "integrity": "sha512-WfgKFX6swFB1jS2vo+DwivRN4NB8XUdM3ij0Y1gnC21y1tdBoe6xjVnd7NSI6alv+gZXCtJqvrTeMW3fR/c0ng==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-helper-hoist-variables": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz",
- "integrity": "sha512-zAYl3tqerLItvG5cKYw7f1SpvIxS9zi7ohyGHaI9cgDUjAT6YcY9jIEH5CstetP5wHIVSceXwNS7Z5BpJg+rOw==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-helper-optimise-call-expression": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz",
- "integrity": "sha512-Op9IhEaxhbRT8MDXx2iNuMgciu2V8lDvYCNQbDGjdBNCjaMvyLf4wl4A3b8IgndCyQF8TwfgsQ8T3VD8aX1/pA==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-helper-regex": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz",
- "integrity": "sha512-VlPiWmqmGJp0x0oK27Out1D+71nVVCTSdlbhIVoaBAj2lUgrNjBCRR9+llO4lTSb2O4r7PJg+RobRkhBrf6ofg==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.26.0",
- "babel-types": "^6.26.0",
- "lodash": "^4.17.4"
- }
- },
- "node_modules/babel-helper-remap-async-to-generator": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz",
- "integrity": "sha512-RYqaPD0mQyQIFRu7Ho5wE2yvA/5jxqCIj/Lv4BXNq23mHYu/vxikOy2JueLiBxQknwapwrJeNCesvY0ZcfnlHg==",
- "dev": true,
- "dependencies": {
- "babel-helper-function-name": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-helper-replace-supers": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz",
- "integrity": "sha512-sLI+u7sXJh6+ToqDr57Bv973kCepItDhMou0xCP2YPVmR1jkHSCY+p1no8xErbV1Siz5QE8qKT1WIwybSWlqjw==",
- "dev": true,
- "dependencies": {
- "babel-helper-optimise-call-expression": "^6.24.1",
- "babel-messages": "^6.23.0",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-helpers": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz",
- "integrity": "sha512-n7pFrqQm44TCYvrCDb0MqabAF+JUBq+ijBvNMUxpkLjJaAu32faIexewMumrH5KLLJ1HDyT0PTEqRyAe/GwwuQ==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
- }
- },
"node_modules/babel-loader": {
"version": "8.3.0",
"resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz",
@@ -15246,57 +14454,53 @@
"webpack": ">=2"
}
},
- "node_modules/babel-messages": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz",
- "integrity": "sha512-Bl3ZiA+LjqaMtNYopA9TYE9HP1tQ+E5dLxE0XrAzcIJeK2UqF0/EaqXwBn9esd4UmTfEab+P+UYQ1GnioFIb/w==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-check-es2015-constants": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz",
- "integrity": "sha512-B1M5KBP29248dViEo1owyY32lk1ZSH2DaNNrXLGt8lyjjHm7pBqAdQ7VKUPR6EEDO323+OvT3MQXbCin8ooWdA==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0"
- }
- },
"node_modules/babel-plugin-istanbul": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz",
- "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==",
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.0.tgz",
+ "integrity": "sha512-C5OzENSx/A+gt7t4VH1I2XsflxyPUmXRFPKBxt33xncdOmq7oROVM3bZv9Ysjjkv8OJYDMa+tKuKMvqU/H3xdw==",
"dev": true,
"dependencies": {
"@babel/helper-plugin-utils": "^7.0.0",
"@istanbuljs/load-nyc-config": "^1.0.0",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-instrument": "^5.0.4",
+ "@istanbuljs/schema": "^0.1.3",
+ "istanbul-lib-instrument": "^6.0.2",
"test-exclude": "^6.0.0"
},
"engines": {
- "node": ">=8"
+ "node": ">=12"
}
},
- "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz",
- "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==",
+ "node_modules/babel-plugin-istanbul/node_modules/@babel/core": {
+ "version": "7.25.2",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz",
+ "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==",
"dev": true,
"dependencies": {
- "@babel/core": "^7.12.3",
- "@babel/parser": "^7.14.7",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-coverage": "^3.2.0",
- "semver": "^6.3.0"
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.24.7",
+ "@babel/generator": "^7.25.0",
+ "@babel/helper-compilation-targets": "^7.25.2",
+ "@babel/helper-module-transforms": "^7.25.2",
+ "@babel/helpers": "^7.25.0",
+ "@babel/parser": "^7.25.0",
+ "@babel/template": "^7.25.0",
+ "@babel/traverse": "^7.25.2",
+ "@babel/types": "^7.25.2",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
},
"engines": {
- "node": ">=8"
+ "node": ">=6.9.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
}
},
- "node_modules/babel-plugin-istanbul/node_modules/semver": {
+ "node_modules/babel-plugin-istanbul/node_modules/@babel/core/node_modules/semver": {
"version": "6.3.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
@@ -15305,6 +14509,28 @@
"semver": "bin/semver.js"
}
},
+ "node_modules/babel-plugin-istanbul/node_modules/convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true
+ },
+ "node_modules/babel-plugin-istanbul/node_modules/istanbul-lib-instrument": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz",
+ "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==",
+ "dev": true,
+ "dependencies": {
+ "@babel/core": "^7.23.9",
+ "@babel/parser": "^7.23.9",
+ "@istanbuljs/schema": "^0.1.3",
+ "istanbul-lib-coverage": "^3.2.0",
+ "semver": "^7.5.4"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
"node_modules/babel-plugin-polyfill-corejs2": {
"version": "0.4.11",
"resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz",
@@ -15353,702 +14579,6 @@
"@babel/core": "^7.4.0 || ^8.0.0-0 <8.0.0"
}
},
- "node_modules/babel-plugin-syntax-async-functions": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz",
- "integrity": "sha512-4Zp4unmHgw30A1eWI5EpACji2qMocisdXhAftfhXoSV9j0Tvj6nRFE3tOmRY912E0FMRm/L5xWE7MGVT2FoLnw==",
- "dev": true
- },
- "node_modules/babel-plugin-syntax-async-generators": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz",
- "integrity": "sha512-EbciFN5Jb9iqU9bqaLmmFLx2G8pAUsvpWJ6OzOWBNrSY9qTohXj+7YfZx6Ug1Qqh7tCb1EA7Jvn9bMC1HBiucg==",
- "dev": true
- },
- "node_modules/babel-plugin-syntax-class-constructor-call": {
- "version": "6.18.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz",
- "integrity": "sha512-EEuBcXz/wZ81Jaac0LnMHtD4Mfz9XWn2oH2Xj+CHwz2SZWUqqdtR2BgWPSdTGMmxN/5KLSh4PImt9+9ZedDarA==",
- "dev": true
- },
- "node_modules/babel-plugin-syntax-class-properties": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz",
- "integrity": "sha512-chI3Rt9T1AbrQD1s+vxw3KcwC9yHtF621/MacuItITfZX344uhQoANjpoSJZleAmW2tjlolqB/f+h7jIqXa7pA==",
- "dev": true
- },
- "node_modules/babel-plugin-syntax-decorators": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz",
- "integrity": "sha512-AWj19x2aDm8qFQ5O2JcD6pwJDW1YdcnO+1b81t7gxrGjz5VHiUqeYWAR4h7zueWMalRelrQDXprv2FrY1dbpbw==",
- "dev": true
- },
- "node_modules/babel-plugin-syntax-do-expressions": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz",
- "integrity": "sha512-HD/5qJB9oSXzl0caxM+aRD7ENICXqcc3Up/8toDQk7zNIDE7TzsqtxC5f4t9Rwhu2Ya8l9l4j6b3vOsy+a6qxg==",
- "dev": true
- },
- "node_modules/babel-plugin-syntax-dynamic-import": {
- "version": "6.18.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz",
- "integrity": "sha512-MioUE+LfjCEz65Wf7Z/Rm4XCP5k2c+TbMd2Z2JKc7U9uwjBhAfNPE48KC4GTGKhppMeYVepwDBNO/nGY6NYHBA==",
- "dev": true
- },
- "node_modules/babel-plugin-syntax-exponentiation-operator": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz",
- "integrity": "sha512-Z/flU+T9ta0aIEKl1tGEmN/pZiI1uXmCiGFRegKacQfEJzp7iNsKloZmyJlQr+75FCJtiFfGIK03SiCvCt9cPQ==",
- "dev": true
- },
- "node_modules/babel-plugin-syntax-export-extensions": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz",
- "integrity": "sha512-Eo0rcRaIDMld/W6mVhePiudIuLW+Cr/8eveW3mBREfZORScZgx4rh6BAPyvzdEc/JZvQ+LkC80t0VGFs6FX+lg==",
- "dev": true
- },
- "node_modules/babel-plugin-syntax-function-bind": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz",
- "integrity": "sha512-m8yMoh9LIiNyeLdQs5I9G+3YXo4nqVsKQkk7YplrG4qAFbNi9hkZlow8HDHxhH9QOVFPHmy8+03NzRCdyChIKw==",
- "dev": true
- },
- "node_modules/babel-plugin-syntax-object-rest-spread": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz",
- "integrity": "sha512-C4Aq+GaAj83pRQ0EFgTvw5YO6T3Qz2KGrNRwIj9mSoNHVvdZY4KO2uA6HNtNXCw993iSZnckY1aLW8nOi8i4+w==",
- "dev": true
- },
- "node_modules/babel-plugin-syntax-trailing-function-commas": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz",
- "integrity": "sha512-Gx9CH3Q/3GKbhs07Bszw5fPTlU+ygrOGfAhEt7W2JICwufpC4SuO0mG0+4NykPBSYPMJhqvVlDBU17qB1D+hMQ==",
- "dev": true
- },
- "node_modules/babel-plugin-transform-async-generator-functions": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz",
- "integrity": "sha512-uT7eovUxtXe8Q2ufcjRuJIOL0hg6VAUJhiWJBLxH/evYAw+aqoJLcYTR8hqx13iOx/FfbCMHgBmXWZjukbkyPg==",
- "dev": true,
- "dependencies": {
- "babel-helper-remap-async-to-generator": "^6.24.1",
- "babel-plugin-syntax-async-generators": "^6.5.0",
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-async-to-generator": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz",
- "integrity": "sha512-7BgYJujNCg0Ti3x0c/DL3tStvnKS6ktIYOmo9wginv/dfZOrbSZ+qG4IRRHMBOzZ5Awb1skTiAsQXg/+IWkZYw==",
- "dev": true,
- "dependencies": {
- "babel-helper-remap-async-to-generator": "^6.24.1",
- "babel-plugin-syntax-async-functions": "^6.8.0",
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-class-constructor-call": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz",
- "integrity": "sha512-RvYukT1Nh7njz8P8326ztpQUGCKwmjgu6aRIx1lkvylWITYcskg29vy1Kp8WXIq7FvhXsz0Crf2kS94bjB690A==",
- "dev": true,
- "dependencies": {
- "babel-plugin-syntax-class-constructor-call": "^6.18.0",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-class-properties": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz",
- "integrity": "sha512-n4jtBA3OYBdvG5PRMKsMXJXHfLYw/ZOmtxCLOOwz6Ro5XlrColkStLnz1AS1L2yfPA9BKJ1ZNlmVCLjAL9DSIg==",
- "dev": true,
- "dependencies": {
- "babel-helper-function-name": "^6.24.1",
- "babel-plugin-syntax-class-properties": "^6.8.0",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-decorators": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz",
- "integrity": "sha512-skQ2CImwDkCHu0mkWvCOlBCpBIHW4/49IZWVwV4A/EnWjL9bB6UBvLyMNe3Td5XDStSZNhe69j4bfEW8dvUbew==",
- "dev": true,
- "dependencies": {
- "babel-helper-explode-class": "^6.24.1",
- "babel-plugin-syntax-decorators": "^6.13.0",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-do-expressions": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz",
- "integrity": "sha512-yQwYqYg+Tnj1InA8W1rsItsZVhkv1Euc4KVua9ledtPz5PDWYz7LVyy6rDBpVYUWFZj5k6GUm3YZpCbIm8Tqew==",
- "dev": true,
- "dependencies": {
- "babel-plugin-syntax-do-expressions": "^6.8.0",
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-arrow-functions": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz",
- "integrity": "sha512-PCqwwzODXW7JMrzu+yZIaYbPQSKjDTAsNNlK2l5Gg9g4rz2VzLnZsStvp/3c46GfXpwkyufb3NCyG9+50FF1Vg==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-block-scoped-functions": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz",
- "integrity": "sha512-2+ujAT2UMBzYFm7tidUsYh+ZoIutxJ3pN9IYrF1/H6dCKtECfhmB8UkHVpyxDwkj0CYbQG35ykoz925TUnBc3A==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-block-scoping": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz",
- "integrity": "sha512-YiN6sFAQ5lML8JjCmr7uerS5Yc/EMbgg9G8ZNmk2E3nYX4ckHR01wrkeeMijEf5WHNK5TW0Sl0Uu3pv3EdOJWw==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.26.0",
- "babel-template": "^6.26.0",
- "babel-traverse": "^6.26.0",
- "babel-types": "^6.26.0",
- "lodash": "^4.17.4"
- }
- },
- "node_modules/babel-plugin-transform-es2015-classes": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz",
- "integrity": "sha512-5Dy7ZbRinGrNtmWpquZKZ3EGY8sDgIVB4CU8Om8q8tnMLrD/m94cKglVcHps0BCTdZ0TJeeAWOq2TK9MIY6cag==",
- "dev": true,
- "dependencies": {
- "babel-helper-define-map": "^6.24.1",
- "babel-helper-function-name": "^6.24.1",
- "babel-helper-optimise-call-expression": "^6.24.1",
- "babel-helper-replace-supers": "^6.24.1",
- "babel-messages": "^6.23.0",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-es2015-computed-properties": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz",
- "integrity": "sha512-C/uAv4ktFP/Hmh01gMTvYvICrKze0XVX9f2PdIXuriCSvUmV9j+u+BB9f5fJK3+878yMK6dkdcq+Ymr9mrcLzw==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-es2015-destructuring": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz",
- "integrity": "sha512-aNv/GDAW0j/f4Uy1OEPZn1mqD+Nfy9viFGBfQ5bZyT35YqOiqx7/tXdyfZkJ1sC21NyEsBdfDY6PYmLHF4r5iA==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-duplicate-keys": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz",
- "integrity": "sha512-ossocTuPOssfxO2h+Z3/Ea1Vo1wWx31Uqy9vIiJusOP4TbF7tPs9U0sJ9pX9OJPf4lXRGj5+6Gkl/HHKiAP5ug==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-es2015-for-of": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz",
- "integrity": "sha512-DLuRwoygCoXx+YfxHLkVx5/NpeSbVwfoTeBykpJK7JhYWlL/O8hgAK/reforUnZDlxasOrVPPJVI/guE3dCwkw==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-function-name": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz",
- "integrity": "sha512-iFp5KIcorf11iBqu/y/a7DK3MN5di3pNCzto61FqCNnUX4qeBwcV1SLqe10oXNnCaxBUImX3SckX2/o1nsrTcg==",
- "dev": true,
- "dependencies": {
- "babel-helper-function-name": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-es2015-literals": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz",
- "integrity": "sha512-tjFl0cwMPpDYyoqYA9li1/7mGFit39XiNX5DKC/uCNjBctMxyL1/PT/l4rSlbvBG1pOKI88STRdUsWXB3/Q9hQ==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-modules-amd": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz",
- "integrity": "sha512-LnIIdGWIKdw7zwckqx+eGjcS8/cl8D74A3BpJbGjKTFFNJSMrjN4bIh22HY1AlkUbeLG6X6OZj56BDvWD+OeFA==",
- "dev": true,
- "dependencies": {
- "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-es2015-modules-commonjs": {
- "version": "6.26.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz",
- "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==",
- "dev": true,
- "dependencies": {
- "babel-plugin-transform-strict-mode": "^6.24.1",
- "babel-runtime": "^6.26.0",
- "babel-template": "^6.26.0",
- "babel-types": "^6.26.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-modules-systemjs": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz",
- "integrity": "sha512-ONFIPsq8y4bls5PPsAWYXH/21Hqv64TBxdje0FvU3MhIV6QM2j5YS7KvAzg/nTIVLot2D2fmFQrFWCbgHlFEjg==",
- "dev": true,
- "dependencies": {
- "babel-helper-hoist-variables": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-es2015-modules-umd": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz",
- "integrity": "sha512-LpVbiT9CLsuAIp3IG0tfbVo81QIhn6pE8xBJ7XSeCtFlMltuar5VuBV6y6Q45tpui9QWcy5i0vLQfCfrnF7Kiw==",
- "dev": true,
- "dependencies": {
- "babel-plugin-transform-es2015-modules-amd": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-es2015-object-super": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz",
- "integrity": "sha512-8G5hpZMecb53vpD3mjs64NhI1au24TAmokQ4B+TBFBjN9cVoGoOvotdrMMRmHvVZUEvqGUPWL514woru1ChZMA==",
- "dev": true,
- "dependencies": {
- "babel-helper-replace-supers": "^6.24.1",
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-parameters": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz",
- "integrity": "sha512-8HxlW+BB5HqniD+nLkQ4xSAVq3bR/pcYW9IigY+2y0dI+Y7INFeTbfAQr+63T3E4UDsZGjyb+l9txUnABWxlOQ==",
- "dev": true,
- "dependencies": {
- "babel-helper-call-delegate": "^6.24.1",
- "babel-helper-get-function-arity": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-es2015-shorthand-properties": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz",
- "integrity": "sha512-mDdocSfUVm1/7Jw/FIRNw9vPrBQNePy6wZJlR8HAUBLybNp1w/6lr6zZ2pjMShee65t/ybR5pT8ulkLzD1xwiw==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-es2015-spread": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz",
- "integrity": "sha512-3Ghhi26r4l3d0Js933E5+IhHwk0A1yiutj9gwvzmFbVV0sPMYk2lekhOufHBswX7NCoSeF4Xrl3sCIuSIa+zOg==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-sticky-regex": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz",
- "integrity": "sha512-CYP359ADryTo3pCsH0oxRo/0yn6UsEZLqYohHmvLQdfS9xkf+MbCzE3/Kolw9OYIY4ZMilH25z/5CbQbwDD+lQ==",
- "dev": true,
- "dependencies": {
- "babel-helper-regex": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-plugin-transform-es2015-template-literals": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz",
- "integrity": "sha512-x8b9W0ngnKzDMHimVtTfn5ryimars1ByTqsfBDwAqLibmuuQY6pgBQi5z1ErIsUOWBdw1bW9FSz5RZUojM4apg==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-typeof-symbol": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz",
- "integrity": "sha512-fz6J2Sf4gYN6gWgRZaoFXmq93X+Li/8vf+fb0sGDVtdeWvxC9y5/bTD7bvfWMEq6zetGEHpWjtzRGSugt5kNqw==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-unicode-regex": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz",
- "integrity": "sha512-v61Dbbihf5XxnYjtBN04B/JBvsScY37R1cZT5r9permN1cp+b70DY3Ib3fIkgn1DI9U3tGgBJZVD8p/mE/4JbQ==",
- "dev": true,
- "dependencies": {
- "babel-helper-regex": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "regexpu-core": "^2.0.0"
- }
- },
- "node_modules/babel-plugin-transform-es2015-unicode-regex/node_modules/jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==",
- "dev": true,
- "bin": {
- "jsesc": "bin/jsesc"
- }
- },
- "node_modules/babel-plugin-transform-es2015-unicode-regex/node_modules/regexpu-core": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz",
- "integrity": "sha512-tJ9+S4oKjxY8IZ9jmjnp/mtytu1u3iyIQAfmI51IKWH6bFf7XR1ybtaO6j7INhZKXOTYADk7V5qxaqLkmNxiZQ==",
- "dev": true,
- "dependencies": {
- "regenerate": "^1.2.1",
- "regjsgen": "^0.2.0",
- "regjsparser": "^0.1.4"
- }
- },
- "node_modules/babel-plugin-transform-es2015-unicode-regex/node_modules/regjsparser": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz",
- "integrity": "sha512-jlQ9gYLfk2p3V5Ag5fYhA7fv7OHzd1KUH0PRP46xc3TgwjwgROIW572AfYg/X9kaNq/LJnu6oJcFRXlIrGoTRw==",
- "dev": true,
- "dependencies": {
- "jsesc": "~0.5.0"
- },
- "bin": {
- "regjsparser": "bin/parser"
- }
- },
- "node_modules/babel-plugin-transform-exponentiation-operator": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz",
- "integrity": "sha512-LzXDmbMkklvNhprr20//RStKVcT8Cu+SQtX18eMHLhjHf2yFzwtQ0S2f0jQ+89rokoNdmwoSqYzAhq86FxlLSQ==",
- "dev": true,
- "dependencies": {
- "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1",
- "babel-plugin-syntax-exponentiation-operator": "^6.8.0",
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-export-extensions": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz",
- "integrity": "sha512-mtzELzINaYqdVglyZrDDVwkcFRuE7s6QUFWXxwffKAHB/NkfbJ2NJSytugB43ytIC8UVt30Ereyx+7gNyTkDLg==",
- "dev": true,
- "dependencies": {
- "babel-plugin-syntax-export-extensions": "^6.8.0",
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-function-bind": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz",
- "integrity": "sha512-9Ec4KYf1GurT39mlUjDSlN7HWSlB3u3mWRMogQbb+Y88lO0ZM3rJ0ADhPnQwWK9TbO6e/4E+Et1rrfGY9mFimA==",
- "dev": true,
- "dependencies": {
- "babel-plugin-syntax-function-bind": "^6.8.0",
- "babel-runtime": "^6.22.0"
- }
- },
- "node_modules/babel-plugin-transform-object-rest-spread": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz",
- "integrity": "sha512-ocgA9VJvyxwt+qJB0ncxV8kb/CjfTcECUY4tQ5VT7nP6Aohzobm8CDFaQ5FHdvZQzLmf0sgDxB8iRXZXxwZcyA==",
- "dev": true,
- "dependencies": {
- "babel-plugin-syntax-object-rest-spread": "^6.8.0",
- "babel-runtime": "^6.26.0"
- }
- },
- "node_modules/babel-plugin-transform-regenerator": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz",
- "integrity": "sha512-LS+dBkUGlNR15/5WHKe/8Neawx663qttS6AGqoOUhICc9d1KciBvtrQSuc0PI+CxQ2Q/S1aKuJ+u64GtLdcEZg==",
- "dev": true,
- "dependencies": {
- "regenerator-transform": "^0.10.0"
- }
- },
- "node_modules/babel-plugin-transform-regenerator/node_modules/regenerator-transform": {
- "version": "0.10.1",
- "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz",
- "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.18.0",
- "babel-types": "^6.19.0",
- "private": "^0.1.6"
- }
- },
- "node_modules/babel-plugin-transform-strict-mode": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz",
- "integrity": "sha512-j3KtSpjyLSJxNoCDrhwiJad8kw0gJ9REGj8/CqL0HeRyLnvUNYV9zcqluL6QJSXh3nfsLEmSLvwRfGzrgR96Pw==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
- }
- },
- "node_modules/babel-preset-es2015": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz",
- "integrity": "sha512-XfwUqG1Ry6R43m4Wfob+vHbIVBIqTg/TJY4Snku1iIzeH7mUnwHA8Vagmv+ZQbPwhS8HgsdQvy28Py3k5zpoFQ==",
- "deprecated": "🙌 Thanks for using Babel: we recommend using babel-preset-env now: please read https://babeljs.io/env to update!",
- "dev": true,
- "dependencies": {
- "babel-plugin-check-es2015-constants": "^6.22.0",
- "babel-plugin-transform-es2015-arrow-functions": "^6.22.0",
- "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0",
- "babel-plugin-transform-es2015-block-scoping": "^6.24.1",
- "babel-plugin-transform-es2015-classes": "^6.24.1",
- "babel-plugin-transform-es2015-computed-properties": "^6.24.1",
- "babel-plugin-transform-es2015-destructuring": "^6.22.0",
- "babel-plugin-transform-es2015-duplicate-keys": "^6.24.1",
- "babel-plugin-transform-es2015-for-of": "^6.22.0",
- "babel-plugin-transform-es2015-function-name": "^6.24.1",
- "babel-plugin-transform-es2015-literals": "^6.22.0",
- "babel-plugin-transform-es2015-modules-amd": "^6.24.1",
- "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1",
- "babel-plugin-transform-es2015-modules-systemjs": "^6.24.1",
- "babel-plugin-transform-es2015-modules-umd": "^6.24.1",
- "babel-plugin-transform-es2015-object-super": "^6.24.1",
- "babel-plugin-transform-es2015-parameters": "^6.24.1",
- "babel-plugin-transform-es2015-shorthand-properties": "^6.24.1",
- "babel-plugin-transform-es2015-spread": "^6.22.0",
- "babel-plugin-transform-es2015-sticky-regex": "^6.24.1",
- "babel-plugin-transform-es2015-template-literals": "^6.22.0",
- "babel-plugin-transform-es2015-typeof-symbol": "^6.22.0",
- "babel-plugin-transform-es2015-unicode-regex": "^6.24.1",
- "babel-plugin-transform-regenerator": "^6.24.1"
- }
- },
- "node_modules/babel-preset-stage-0": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz",
- "integrity": "sha512-MJD+xBbpsApbKlzAX0sOBF+VeFaUmv5s8FSOO7SSZpes1QgphCjq/UIGRFWSmQ/0i5bqQjLGCTXGGXqcLQ9JDA==",
- "dev": true,
- "dependencies": {
- "babel-plugin-transform-do-expressions": "^6.22.0",
- "babel-plugin-transform-function-bind": "^6.22.0",
- "babel-preset-stage-1": "^6.24.1"
- }
- },
- "node_modules/babel-preset-stage-1": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz",
- "integrity": "sha512-rn+UOcd7BHDniq1SVxv2/AVVSVI1NK+hfS0I/iR6m6KbOi/aeBRcqBilqO73pd9VUpRXF2HFtlDuC9F2BEQqmg==",
- "dev": true,
- "dependencies": {
- "babel-plugin-transform-class-constructor-call": "^6.24.1",
- "babel-plugin-transform-export-extensions": "^6.22.0",
- "babel-preset-stage-2": "^6.24.1"
- }
- },
- "node_modules/babel-preset-stage-2": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz",
- "integrity": "sha512-9F+nquz+37PrlTSBdpeQBKnQfAMNBnryXw+m4qBh35FNbJPfzZz+sjN2G5Uf1CRedU9PH7fJkTbYijxmkLX8Og==",
- "dev": true,
- "dependencies": {
- "babel-plugin-syntax-dynamic-import": "^6.18.0",
- "babel-plugin-transform-class-properties": "^6.24.1",
- "babel-plugin-transform-decorators": "^6.24.1",
- "babel-preset-stage-3": "^6.24.1"
- }
- },
- "node_modules/babel-preset-stage-3": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz",
- "integrity": "sha512-eCbEOF8uN0KypFXJmZXn2sTk7bPV9uM5xov7G/7BM08TbQEObsVs0cEWfy6NQySlfk7JBi/t+XJP1JkruYfthA==",
- "dev": true,
- "dependencies": {
- "babel-plugin-syntax-trailing-function-commas": "^6.22.0",
- "babel-plugin-transform-async-generator-functions": "^6.24.1",
- "babel-plugin-transform-async-to-generator": "^6.24.1",
- "babel-plugin-transform-exponentiation-operator": "^6.24.1",
- "babel-plugin-transform-object-rest-spread": "^6.22.0"
- }
- },
- "node_modules/babel-register": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz",
- "integrity": "sha512-veliHlHX06wjaeY8xNITbveXSiI+ASFnOqvne/LaIJIqOWi2Ogmj91KOugEz/hoh/fwMhXNBJPCv8Xaz5CyM4A==",
- "dev": true,
- "dependencies": {
- "babel-core": "^6.26.0",
- "babel-runtime": "^6.26.0",
- "core-js": "^2.5.0",
- "home-or-tmp": "^2.0.0",
- "lodash": "^4.17.4",
- "mkdirp": "^0.5.1",
- "source-map-support": "^0.4.15"
- }
- },
- "node_modules/babel-register/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==",
- "dev": true,
- "dependencies": {
- "minimist": "^1.2.6"
- },
- "bin": {
- "mkdirp": "bin/cmd.js"
- }
- },
- "node_modules/babel-register/node_modules/source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-register/node_modules/source-map-support": {
- "version": "0.4.18",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz",
- "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==",
- "dev": true,
- "dependencies": {
- "source-map": "^0.5.6"
- }
- },
- "node_modules/babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==",
- "dev": true,
- "dependencies": {
- "core-js": "^2.4.0",
- "regenerator-runtime": "^0.11.0"
- }
- },
- "node_modules/babel-template": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz",
- "integrity": "sha512-PCOcLFW7/eazGUKIoqH97sO9A2UYMahsn/yRQ7uOk37iutwjq7ODtcTNF+iFDSHNfkctqsLRjLP7URnOx0T1fg==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.26.0",
- "babel-traverse": "^6.26.0",
- "babel-types": "^6.26.0",
- "babylon": "^6.18.0",
- "lodash": "^4.17.4"
- }
- },
- "node_modules/babel-traverse": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz",
- "integrity": "sha512-iSxeXx7apsjCHe9c7n8VtRXGzI2Bk1rBSOJgCCjfyXb6v1aCqE1KSEpq/8SXuVN8Ka/Rh1WDTF0MDzkvTA4MIA==",
- "dev": true,
- "dependencies": {
- "babel-code-frame": "^6.26.0",
- "babel-messages": "^6.23.0",
- "babel-runtime": "^6.26.0",
- "babel-types": "^6.26.0",
- "babylon": "^6.18.0",
- "debug": "^2.6.8",
- "globals": "^9.18.0",
- "invariant": "^2.2.2",
- "lodash": "^4.17.4"
- }
- },
- "node_modules/babel-traverse/node_modules/debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "dependencies": {
- "ms": "2.0.0"
- }
- },
- "node_modules/babel-traverse/node_modules/globals": {
- "version": "9.18.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz",
- "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babel-traverse/node_modules/ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true
- },
- "node_modules/babel-types": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz",
- "integrity": "sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g==",
- "dev": true,
- "dependencies": {
- "babel-runtime": "^6.26.0",
- "esutils": "^2.0.2",
- "lodash": "^4.17.4",
- "to-fast-properties": "^1.0.3"
- }
- },
- "node_modules/babel-types/node_modules/to-fast-properties": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz",
- "integrity": "sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/babylon": {
- "version": "6.18.0",
- "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz",
- "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==",
- "dev": true,
- "bin": {
- "babylon": "bin/babylon.js"
- }
- },
"node_modules/balanced-match": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
@@ -16229,6 +14759,15 @@
"node": ">=8"
}
},
+ "node_modules/bindings": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
+ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
+ "dev": true,
+ "dependencies": {
+ "file-uri-to-path": "1.0.0"
+ }
+ },
"node_modules/bitsyntax": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/bitsyntax/-/bitsyntax-0.1.0.tgz",
@@ -16379,9 +14918,9 @@
"dev": true
},
"node_modules/browserslist": {
- "version": "4.23.0",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz",
- "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==",
+ "version": "4.23.3",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz",
+ "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==",
"dev": true,
"funding": [
{
@@ -16398,10 +14937,10 @@
}
],
"dependencies": {
- "caniuse-lite": "^1.0.30001587",
- "electron-to-chromium": "^1.4.668",
- "node-releases": "^2.0.14",
- "update-browserslist-db": "^1.0.13"
+ "caniuse-lite": "^1.0.30001646",
+ "electron-to-chromium": "^1.5.4",
+ "node-releases": "^2.0.18",
+ "update-browserslist-db": "^1.1.0"
},
"bin": {
"browserslist": "cli.js"
@@ -16551,6 +15090,8 @@
"resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
"integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"streamsearch": "^1.1.0"
},
@@ -16715,9 +15256,9 @@
}
},
"node_modules/caniuse-lite": {
- "version": "1.0.30001589",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001589.tgz",
- "integrity": "sha512-vNQWS6kI+q6sBlHbh71IIeC+sRwK2N3EDySc/updIGhIee2x5z00J4c1242/5/d6EpEMdOnk/m+6tuk4/tcsqg==",
+ "version": "1.0.30001651",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001651.tgz",
+ "integrity": "sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==",
"dev": true,
"funding": [
{
@@ -17810,6 +16351,8 @@
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
"integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
"dev": true,
+ "optional": true,
+ "peer": true,
"engines": {
"node": ">= 0.6"
}
@@ -17833,14 +16376,6 @@
"node": ">= 0.8"
}
},
- "node_modules/core-js": {
- "version": "2.6.12",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
- "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==",
- "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.",
- "dev": true,
- "hasInstallScript": true
- },
"node_modules/core-js-compat": {
"version": "3.37.1",
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.1.tgz",
@@ -17897,6 +16432,13 @@
"node": ">= 6"
}
},
+ "node_modules/create-require": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz",
+ "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/cross-env": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz",
@@ -17938,82 +16480,6 @@
"node": ">= 8"
}
},
- "node_modules/cross-var": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/cross-var/-/cross-var-1.1.0.tgz",
- "integrity": "sha512-wIcFax9RNm5ayuORUeJ5MLxPbfh8XdZhhUpKutIszU46Fs9UIhEdPJ7+YguM+7FxEj+68hSQVyathVsIu84SiA==",
- "dev": true,
- "dependencies": {
- "babel-preset-es2015": "^6.18.0",
- "babel-preset-stage-0": "^6.16.0",
- "babel-register": "^6.18.0",
- "cross-spawn": "^5.0.1",
- "exit": "^0.1.2"
- },
- "bin": {
- "cross-var": "index.js"
- }
- },
- "node_modules/cross-var/node_modules/cross-spawn": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
- "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==",
- "dev": true,
- "dependencies": {
- "lru-cache": "^4.0.1",
- "shebang-command": "^1.2.0",
- "which": "^1.2.9"
- }
- },
- "node_modules/cross-var/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==",
- "dev": true,
- "dependencies": {
- "pseudomap": "^1.0.2",
- "yallist": "^2.1.2"
- }
- },
- "node_modules/cross-var/node_modules/shebang-command": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
- "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==",
- "dev": true,
- "dependencies": {
- "shebang-regex": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/cross-var/node_modules/shebang-regex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
- "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/cross-var/node_modules/which": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
- "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
- "dev": true,
- "dependencies": {
- "isexe": "^2.0.0"
- },
- "bin": {
- "which": "bin/which"
- }
- },
- "node_modules/cross-var/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==",
- "dev": true
- },
"node_modules/crypto-random-string": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz",
@@ -18250,6 +16716,21 @@
"node": ">=0.10.0"
}
},
+ "node_modules/decompress-response": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz",
+ "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
+ "dev": true,
+ "dependencies": {
+ "mimic-response": "^3.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/dedent": {
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
@@ -18274,6 +16755,15 @@
"integrity": "sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==",
"dev": true
},
+ "node_modules/deep-extend": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
+ "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4.0.0"
+ }
+ },
"node_modules/deep-is": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
@@ -18687,9 +17177,9 @@
}
},
"node_modules/electron-to-chromium": {
- "version": "1.4.681",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.681.tgz",
- "integrity": "sha512-1PpuqJUFWoXZ1E54m8bsLPVYwIVCRzvaL+n5cjigGga4z854abDnFRc+cTa2th4S79kyGqya/1xoR7h+Y5G5lg==",
+ "version": "1.5.8",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.8.tgz",
+ "integrity": "sha512-4Nx0gP2tPNBLTrFxBMHpkQbtn2hidPVr/+/FTtcCiBYTucqc70zRyVZiOLj17Ui3wTO7SQ1/N+hkHYzJjBzt6A==",
"dev": true
},
"node_modules/emoji-regex": {
@@ -18803,6 +17293,19 @@
"node": ">= 0.6"
}
},
+ "node_modules/enhanced-resolve": {
+ "version": "5.17.1",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz",
+ "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==",
+ "dev": true,
+ "dependencies": {
+ "graceful-fs": "^4.2.4",
+ "tapable": "^2.2.0"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
"node_modules/enquirer": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
@@ -18815,15 +17318,6 @@
"node": ">=8.6"
}
},
- "node_modules/enquirer/node_modules/ansi-colors": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
- "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/ent": {
"version": "2.2.0",
"resolved": "https://registry.npmjs.org/ent/-/ent-2.2.0.tgz",
@@ -18985,7 +17479,8 @@
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/es-array-method-boxes-properly/-/es-array-method-boxes-properly-1.0.0.tgz",
"integrity": "sha512-wd6JXUmyHmt8T5a2xreUwKcGPq6f1f+WwIJkijUqiGcJz1qqnZgP6XIK+QyIWU5lT7imeNxUll48bziG+TSYcA==",
- "dev": true
+ "dev": true,
+ "license": "MIT"
},
"node_modules/es-define-property": {
"version": "1.0.0",
@@ -19881,13 +18376,13 @@
"url": "https://github.com/sindresorhus/execa?sponsor=1"
}
},
- "node_modules/exit": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
- "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==",
+ "node_modules/expand-template": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz",
+ "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==",
"dev": true,
"engines": {
- "node": ">= 0.8.0"
+ "node": ">=6"
}
},
"node_modules/expect": {
@@ -19913,37 +18408,37 @@
"dev": true
},
"node_modules/express": {
- "version": "4.19.2",
- "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz",
- "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==",
+ "version": "4.20.0",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.20.0.tgz",
+ "integrity": "sha512-pLdae7I6QqShF5PnNTCVn4hI91Dx0Grkn2+IAsMTgMIKuQVte2dN9PeGSSAME2FR8anOhVA62QDIUaWVfEXVLw==",
"dev": true,
"dependencies": {
"accepts": "~1.3.8",
"array-flatten": "1.1.1",
- "body-parser": "1.20.2",
+ "body-parser": "1.20.3",
"content-disposition": "0.5.4",
"content-type": "~1.0.4",
"cookie": "0.6.0",
"cookie-signature": "1.0.6",
"debug": "2.6.9",
"depd": "2.0.0",
- "encodeurl": "~1.0.2",
+ "encodeurl": "~2.0.0",
"escape-html": "~1.0.3",
"etag": "~1.8.1",
"finalhandler": "1.2.0",
"fresh": "0.5.2",
"http-errors": "2.0.0",
- "merge-descriptors": "1.0.1",
+ "merge-descriptors": "1.0.3",
"methods": "~1.1.2",
"on-finished": "2.4.1",
"parseurl": "~1.3.3",
- "path-to-regexp": "0.1.7",
+ "path-to-regexp": "0.1.10",
"proxy-addr": "~2.0.7",
"qs": "6.11.0",
"range-parser": "~1.2.1",
"safe-buffer": "5.2.1",
- "send": "0.18.0",
- "serve-static": "1.15.0",
+ "send": "0.19.0",
+ "serve-static": "1.16.0",
"setprototypeof": "1.2.0",
"statuses": "2.0.1",
"type-is": "~1.6.18",
@@ -19954,6 +18449,45 @@
"node": ">= 0.10.0"
}
},
+ "node_modules/express/node_modules/body-parser": {
+ "version": "1.20.3",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz",
+ "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==",
+ "dev": true,
+ "dependencies": {
+ "bytes": "3.1.2",
+ "content-type": "~1.0.5",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "on-finished": "2.4.1",
+ "qs": "6.13.0",
+ "raw-body": "2.5.2",
+ "type-is": "~1.6.18",
+ "unpipe": "1.0.0"
+ },
+ "engines": {
+ "node": ">= 0.8",
+ "npm": "1.2.8000 || >= 1.4.16"
+ }
+ },
+ "node_modules/express/node_modules/body-parser/node_modules/qs": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz",
+ "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==",
+ "dev": true,
+ "dependencies": {
+ "side-channel": "^1.0.6"
+ },
+ "engines": {
+ "node": ">=0.6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/ljharb"
+ }
+ },
"node_modules/express/node_modules/cookie": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz",
@@ -19972,6 +18506,15 @@
"ms": "2.0.0"
}
},
+ "node_modules/express/node_modules/encodeurl": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
"node_modules/express/node_modules/finalhandler": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
@@ -19990,6 +18533,36 @@
"node": ">= 0.8"
}
},
+ "node_modules/express/node_modules/finalhandler/node_modules/encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/express/node_modules/merge-descriptors": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz",
+ "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==",
+ "dev": true,
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/express/node_modules/mime": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
+ "dev": true,
+ "bin": {
+ "mime": "cli.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
"node_modules/express/node_modules/ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
@@ -19997,11 +18570,104 @@
"dev": true
},
"node_modules/express/node_modules/path-to-regexp": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
- "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==",
+ "version": "0.1.10",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz",
+ "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==",
+ "dev": true
+ },
+ "node_modules/express/node_modules/send": {
+ "version": "0.19.0",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz",
+ "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==",
+ "dev": true,
+ "dependencies": {
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "mime": "1.6.0",
+ "ms": "2.1.3",
+ "on-finished": "2.4.1",
+ "range-parser": "~1.2.1",
+ "statuses": "2.0.1"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/express/node_modules/send/node_modules/encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/express/node_modules/send/node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "dev": true
+ },
+ "node_modules/express/node_modules/serve-static": {
+ "version": "1.16.0",
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.0.tgz",
+ "integrity": "sha512-pDLK8zwl2eKaYrs8mrPZBJua4hMplRWJ1tIFksVC3FtBEBnl8dxgeHtsaMS8DhS9i4fLObaon6ABoc4/hQGdPA==",
+ "dev": true,
+ "dependencies": {
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "parseurl": "~1.3.3",
+ "send": "0.18.0"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
+ "node_modules/express/node_modules/serve-static/node_modules/encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
+ "dev": true,
+ "engines": {
+ "node": ">= 0.8"
+ }
+ },
+ "node_modules/express/node_modules/serve-static/node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
"dev": true
},
+ "node_modules/express/node_modules/serve-static/node_modules/send": {
+ "version": "0.18.0",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz",
+ "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==",
+ "dev": true,
+ "dependencies": {
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "mime": "1.6.0",
+ "ms": "2.1.3",
+ "on-finished": "2.4.1",
+ "range-parser": "~1.2.1",
+ "statuses": "2.0.1"
+ },
+ "engines": {
+ "node": ">= 0.8.0"
+ }
+ },
"node_modules/extend": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz",
@@ -20441,6 +19107,12 @@
"node": "^10.12.0 || >=12.0.0"
}
},
+ "node_modules/file-uri-to-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
+ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
+ "dev": true
+ },
"node_modules/file-url": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/file-url/-/file-url-3.0.0.tgz",
@@ -20762,6 +19434,11 @@
"node": ">= 0.6"
}
},
+ "node_modules/forwarded-parse": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/forwarded-parse/-/forwarded-parse-2.1.2.tgz",
+ "integrity": "sha512-alTFZZQDKMporBH77856pXgzhEzaUVmLCDk+egLgIgHst3Tpndzz8MnKe+GzRJRfvVdn69HhpW7cmXzvtLvJAw=="
+ },
"node_modules/fresh": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
@@ -21314,24 +19991,28 @@
"integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
"dev": true
},
+ "node_modules/github-from-package": {
+ "version": "0.0.0",
+ "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
+ "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==",
+ "dev": true
+ },
"node_modules/glob": {
- "version": "10.4.1",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz",
- "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==",
+ "version": "10.4.5",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
+ "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
"dev": true,
"dependencies": {
"foreground-child": "^3.1.0",
"jackspeak": "^3.1.2",
"minimatch": "^9.0.4",
"minipass": "^7.1.2",
+ "package-json-from-dist": "^1.0.0",
"path-scurry": "^1.11.1"
},
"bin": {
"glob": "dist/esm/bin.mjs"
},
- "engines": {
- "node": ">=16 || 14 >=14.18"
- },
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
@@ -21355,9 +20036,9 @@
"dev": true
},
"node_modules/glob/node_modules/foreground-child": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
- "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz",
+ "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==",
"dev": true,
"dependencies": {
"cross-spawn": "^7.0.0",
@@ -21473,6 +20154,7 @@
"resolved": "https://registry.npmjs.org/growl/-/growl-1.10.5.tgz",
"integrity": "sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=4.x"
}
@@ -21698,19 +20380,6 @@
"node": "*"
}
},
- "node_modules/home-or-tmp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz",
- "integrity": "sha512-ycURW7oUxE2sNiPVw1HVEFsW+ecOpJ5zaj7eC0RlwhibhRBod20muUN8qu/gzx956YrLolVvs1MTXwKgC2rVEg==",
- "dev": true,
- "dependencies": {
- "os-homedir": "^1.0.0",
- "os-tmpdir": "^1.0.1"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/hosted-git-info": {
"version": "6.1.1",
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz",
@@ -22016,9 +20685,9 @@
}
},
"node_modules/import-in-the-middle": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.8.0.tgz",
- "integrity": "sha512-/xQjze8szLNnJ5rvHSzn+dcVXqCAU6Plbk4P24U/jwPmg1wy7IIp9OjKIO5tYue8GSPhDpPDiApQjvBUmWwhsQ==",
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.8.1.tgz",
+ "integrity": "sha512-yhRwoHtiLGvmSozNOALgjRPFI6uYsds60EoMqqnXyyv+JOIW/BrrLejuTGBt+bq0T5tLzOHrN0T7xYTm4Qt/ng==",
"dependencies": {
"acorn": "^8.8.2",
"acorn-import-attributes": "^1.9.5",
@@ -22275,15 +20944,6 @@
"node": ">= 0.10"
}
},
- "node_modules/invariant": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
- "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
- "dev": true,
- "dependencies": {
- "loose-envify": "^1.0.0"
- }
- },
"node_modules/ioredis": {
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/ioredis/-/ioredis-5.2.2.tgz",
@@ -22414,6 +21074,30 @@
"url": "https://github.com/sponsors/ljharb"
}
},
+ "node_modules/is-buffer": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz",
+ "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
"node_modules/is-builtin-module": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz",
@@ -22524,18 +21208,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/is-finite": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz",
- "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/is-fullwidth-code-point": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
@@ -23922,9 +22594,9 @@
}
},
"node_modules/karma": {
- "version": "6.4.3",
- "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.3.tgz",
- "integrity": "sha512-LuucC/RE92tJ8mlCwqEoRWXP38UMAqpnq98vktmS9SznSoUPPUJQbc91dHcxcunROvfQjdORVA/YFviH+Xci9Q==",
+ "version": "6.4.4",
+ "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.4.tgz",
+ "integrity": "sha512-LrtUxbdvt1gOpo3gxG+VAJlJAEMhbWlM4YrFQgql98FwF7+K8K12LYO4hnDdUkNjeztYrOXEMqgTajSWgmtI/w==",
"dev": true,
"dependencies": {
"@colors/colors": "1.5.0",
@@ -24141,6 +22813,7 @@
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "deprecated": "Glob versions prior to v9 are no longer supported",
"dev": true,
"dependencies": {
"fs.realpath": "^1.0.0",
@@ -24185,6 +22858,7 @@
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "deprecated": "Rimraf versions prior to v4 are no longer supported",
"dev": true,
"dependencies": {
"glob": "^7.1.3"
@@ -25682,7 +24356,8 @@
"node_modules/lodash.merge": {
"version": "4.6.2",
"resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
- "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
+ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
+ "dev": true
},
"node_modules/lodash.mergewith": {
"version": "4.6.2",
@@ -25697,12 +24372,77 @@
"dev": true
},
"node_modules/log-symbols": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz",
- "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==",
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
+ "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
"dev": true,
"dependencies": {
- "chalk": "^2.4.2"
+ "chalk": "^4.1.0",
+ "is-unicode-supported": "^0.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/log-symbols/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/log-symbols/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/log-symbols/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/log-symbols/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/log-symbols/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
},
"engines": {
"node": ">=8"
@@ -25743,9 +24483,9 @@
}
},
"node_modules/logform": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.0.tgz",
- "integrity": "sha512-1ulHeNPp6k/LD8H91o7VYFBng5i1BDE7HoKxVbZiGFidS1Rj65qcywLxX+pVfAPoQJEjRdvKcusKwOupHCVOVQ==",
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.1.tgz",
+ "integrity": "sha512-CdaO738xRapbKIMVn2m4F6KTj4j7ooJ8POVnebSgKo3KBz5axNXRAL7ZdRjIV6NOr2Uf4vjtRkxrFETOioCqSA==",
"dependencies": {
"@colors/colors": "1.6.0",
"@types/triple-beam": "^1.3.2",
@@ -25836,6 +24576,22 @@
"integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
"dev": true
},
+ "node_modules/lru.min": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/lru.min/-/lru.min-1.1.1.tgz",
+ "integrity": "sha512-FbAj6lXil6t8z4z3j0E5mfRlPzxkySotzUHwRXjlpRh10vc6AI6WN62ehZj82VG7M20rqogJ0GLwar2Xa05a8Q==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "bun": ">=1.0.0",
+ "deno": ">=1.30.0",
+ "node": ">=8.0.0"
+ },
+ "funding": {
+ "type": "github",
+ "url": "https://github.com/sponsors/wellwelwel"
+ }
+ },
"node_modules/luxon": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/luxon/-/luxon-3.2.1.tgz",
@@ -26526,7 +25282,9 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
"integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"node_modules/merge-source-map": {
"version": "1.1.0",
@@ -26616,6 +25374,18 @@
"node": ">=6"
}
},
+ "node_modules/mimic-response": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz",
+ "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
"node_modules/min-indent": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
@@ -26632,9 +25402,9 @@
"dev": true
},
"node_modules/minimatch": {
- "version": "9.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz",
- "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==",
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
"dev": true,
"dependencies": {
"brace-expansion": "^2.0.1"
@@ -26921,6 +25691,12 @@
"url": "https://github.com/sponsors/isaacs"
}
},
+ "node_modules/mkdirp-classic": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
+ "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==",
+ "dev": true
+ },
"node_modules/mkdirp-infer-owner": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz",
@@ -26957,558 +25733,293 @@
}
},
"node_modules/mocha": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz",
- "integrity": "sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==",
+ "version": "10.7.3",
+ "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.7.3.tgz",
+ "integrity": "sha512-uQWxAu44wwiACGqjbPYmjo7Lg8sFrS3dQe7PP2FQI+woptP4vZXSMcfMyFL/e1yFEeEpV4RtyTpZROOKmxis+A==",
"dev": true,
"dependencies": {
- "ansi-colors": "3.2.3",
- "browser-stdout": "1.3.1",
- "chokidar": "3.3.0",
- "debug": "3.2.6",
- "diff": "3.5.0",
- "escape-string-regexp": "1.0.5",
- "find-up": "3.0.0",
- "glob": "7.1.3",
- "growl": "1.10.5",
- "he": "1.2.0",
- "js-yaml": "3.13.1",
- "log-symbols": "3.0.0",
- "minimatch": "3.0.4",
- "mkdirp": "0.5.5",
- "ms": "2.1.1",
- "node-environment-flags": "1.0.6",
- "object.assign": "4.1.0",
- "strip-json-comments": "2.0.1",
- "supports-color": "6.0.0",
- "which": "1.3.1",
- "wide-align": "1.1.3",
- "yargs": "13.3.2",
- "yargs-parser": "13.1.2",
- "yargs-unparser": "1.6.0"
+ "ansi-colors": "^4.1.3",
+ "browser-stdout": "^1.3.1",
+ "chokidar": "^3.5.3",
+ "debug": "^4.3.5",
+ "diff": "^5.2.0",
+ "escape-string-regexp": "^4.0.0",
+ "find-up": "^5.0.0",
+ "glob": "^8.1.0",
+ "he": "^1.2.0",
+ "js-yaml": "^4.1.0",
+ "log-symbols": "^4.1.0",
+ "minimatch": "^5.1.6",
+ "ms": "^2.1.3",
+ "serialize-javascript": "^6.0.2",
+ "strip-json-comments": "^3.1.1",
+ "supports-color": "^8.1.1",
+ "workerpool": "^6.5.1",
+ "yargs": "^16.2.0",
+ "yargs-parser": "^20.2.9",
+ "yargs-unparser": "^2.0.0"
},
"bin": {
"_mocha": "bin/_mocha",
- "mocha": "bin/mocha"
+ "mocha": "bin/mocha.js"
},
"engines": {
- "node": ">= 8.10.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/mochajs"
+ "node": ">= 14.0.0"
}
},
- "node_modules/mocha/node_modules/argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "node_modules/mocha/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
"dev": true,
"dependencies": {
- "sprintf-js": "~1.0.2"
+ "balanced-match": "^1.0.0"
}
},
- "node_modules/mocha/node_modules/chokidar": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz",
- "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==",
+ "node_modules/mocha/node_modules/debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
"dev": true,
"dependencies": {
- "anymatch": "~3.1.1",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.0",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.2.0"
+ "ms": "^2.1.3"
},
"engines": {
- "node": ">= 8.10.0"
+ "node": ">=6.0"
},
- "optionalDependencies": {
- "fsevents": "~2.1.1"
- }
- },
- "node_modules/mocha/node_modules/cliui": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
- "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
- "dev": true,
- "dependencies": {
- "string-width": "^3.1.0",
- "strip-ansi": "^5.2.0",
- "wrap-ansi": "^5.1.0"
- }
- },
- "node_modules/mocha/node_modules/debug": {
- "version": "3.2.6",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
- "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
- "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)",
- "dev": true,
- "dependencies": {
- "ms": "^2.1.1"
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
}
},
"node_modules/mocha/node_modules/diff": {
- "version": "3.5.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz",
- "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==",
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true,
"engines": {
"node": ">=0.3.1"
}
},
- "node_modules/mocha/node_modules/emoji-regex": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
- "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
- "dev": true
- },
- "node_modules/mocha/node_modules/find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "dev": true,
- "dependencies": {
- "locate-path": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/mocha/node_modules/fsevents": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
- "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
- "deprecated": "\"Please update to latest v2.3 or v2.2\"",
+ "node_modules/mocha/node_modules/escape-string-regexp": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
"dev": true,
- "hasInstallScript": true,
- "optional": true,
- "os": [
- "darwin"
- ],
- "peer": true,
"engines": {
- "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
"node_modules/mocha/node_modules/glob": {
- "version": "7.1.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
- "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
+ "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
+ "deprecated": "Glob versions prior to v9 are no longer supported",
"dev": true,
"dependencies": {
"fs.realpath": "^1.0.0",
"inflight": "^1.0.4",
"inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
+ "minimatch": "^5.0.1",
+ "once": "^1.3.0"
},
"engines": {
- "node": "*"
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/mocha/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "node_modules/mocha/node_modules/minimatch": {
+ "version": "5.1.6",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
+ "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
"dev": true,
"dependencies": {
- "is-glob": "^4.0.1"
+ "brace-expansion": "^2.0.1"
},
"engines": {
- "node": ">= 6"
+ "node": ">=10"
}
},
- "node_modules/mocha/node_modules/has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
+ "node_modules/mocha/node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "dev": true
},
- "node_modules/mocha/node_modules/is-fullwidth-code-point": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
+ "node_modules/mocha/node_modules/yargs": {
+ "version": "16.2.0",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
+ "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
"dev": true,
+ "dependencies": {
+ "cliui": "^7.0.2",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
+ "require-directory": "^2.1.1",
+ "string-width": "^4.2.0",
+ "y18n": "^5.0.5",
+ "yargs-parser": "^20.2.2"
+ },
"engines": {
- "node": ">=4"
+ "node": ">=10"
}
},
- "node_modules/mocha/node_modules/js-yaml": {
- "version": "3.13.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
- "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
+ "node_modules/mocha/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==",
"dev": true,
- "dependencies": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- },
- "bin": {
- "js-yaml": "bin/js-yaml.js"
+ "engines": {
+ "node": ">=10"
}
},
- "node_modules/mocha/node_modules/locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "node_modules/modify-values": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz",
+ "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==",
"dev": true,
- "dependencies": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- },
"engines": {
- "node": ">=6"
+ "node": ">=0.10.0"
}
},
- "node_modules/mocha/node_modules/minimatch": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
- "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "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/moment": {
+ "version": "2.30.1",
+ "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz",
+ "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==",
"dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
+ "optional": true,
"engines": {
"node": "*"
}
},
- "node_modules/mocha/node_modules/mkdirp": {
- "version": "0.5.5",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
- "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
+ "node_modules/mongodb": {
+ "version": "4.17.2",
+ "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.17.2.tgz",
+ "integrity": "sha512-mLV7SEiov2LHleRJPMPrK2PMyhXFZt2UQLC4VD4pnth3jMjYKHhtqfwwkkvS/NXuo/Fp3vbhaNcXrIDaLRb9Tg==",
"dev": true,
"dependencies": {
- "minimist": "^1.2.5"
+ "bson": "^4.7.2",
+ "mongodb-connection-string-url": "^2.6.0",
+ "socks": "^2.7.1"
},
- "bin": {
- "mkdirp": "bin/cmd.js"
+ "engines": {
+ "node": ">=12.9.0"
+ },
+ "optionalDependencies": {
+ "@aws-sdk/credential-providers": "^3.186.0",
+ "@mongodb-js/saslprep": "^1.1.0"
}
},
- "node_modules/mocha/node_modules/ms": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
- "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
- "dev": true
- },
- "node_modules/mocha/node_modules/object.assign": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
- "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
+ "node_modules/mongodb-connection-string-url": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz",
+ "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==",
"dev": true,
"dependencies": {
- "define-properties": "^1.1.2",
- "function-bind": "^1.1.1",
- "has-symbols": "^1.0.0",
- "object-keys": "^1.0.11"
- },
- "engines": {
- "node": ">= 0.4"
+ "@types/whatwg-url": "^8.2.1",
+ "whatwg-url": "^11.0.0"
}
},
- "node_modules/mocha/node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "node_modules/mongoose": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.13.0.tgz",
+ "integrity": "sha512-mieZBTtRIqA2xCGgl9Hlcr6fXU+AKNSOdeKfMYrb/IgdL3M/bDO4kYftsItIy86XyAoT5xV28alfCbMocFG8oA==",
"dev": true,
"dependencies": {
- "p-try": "^2.0.0"
+ "bson": "^4.7.2",
+ "kareem": "2.5.1",
+ "mongodb": "4.17.2",
+ "mpath": "0.9.0",
+ "mquery": "4.0.3",
+ "ms": "2.1.3",
+ "sift": "16.0.1"
},
"engines": {
- "node": ">=6"
+ "node": ">=12.0.0"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "type": "opencollective",
+ "url": "https://opencollective.com/mongoose"
}
},
- "node_modules/mocha/node_modules/p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "dev": true,
- "dependencies": {
- "p-limit": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- }
+ "node_modules/mongoose/node_modules/ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "dev": true
},
- "node_modules/mocha/node_modules/path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
+ "node_modules/mpath": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz",
+ "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==",
"dev": true,
"engines": {
- "node": ">=4"
+ "node": ">=4.0.0"
}
},
- "node_modules/mocha/node_modules/readdirp": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz",
- "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==",
+ "node_modules/mquery": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz",
+ "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==",
"dev": true,
"dependencies": {
- "picomatch": "^2.0.4"
+ "debug": "4.x"
},
"engines": {
- "node": ">= 8"
+ "node": ">=12.0.0"
}
},
- "node_modules/mocha/node_modules/sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
- "dev": true
+ "node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
},
- "node_modules/mocha/node_modules/string-width": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
- "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+ "node_modules/multer": {
+ "version": "1.4.4-lts.1",
+ "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.4-lts.1.tgz",
+ "integrity": "sha512-WeSGziVj6+Z2/MwQo3GvqzgR+9Uc+qt8SwHKh3gvNPiISKfsMfG4SvCOFYlxxgkXt7yIV2i1yczehm0EOKIxIg==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
- "emoji-regex": "^7.0.1",
- "is-fullwidth-code-point": "^2.0.0",
- "strip-ansi": "^5.1.0"
+ "append-field": "^1.0.0",
+ "busboy": "^1.0.0",
+ "concat-stream": "^1.5.2",
+ "mkdirp": "^0.5.4",
+ "object-assign": "^4.1.1",
+ "type-is": "^1.6.4",
+ "xtend": "^4.0.0"
},
"engines": {
- "node": ">=6"
+ "node": ">= 6.0.0"
}
},
- "node_modules/mocha/node_modules/strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "node_modules/multer/node_modules/concat-stream": {
+ "version": "1.6.2",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
+ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
"dev": true,
+ "engines": [
+ "node >= 0.8"
+ ],
+ "optional": true,
+ "peer": true,
"dependencies": {
- "ansi-regex": "^4.1.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/mocha/node_modules/strip-json-comments": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
- "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "node_modules/mocha/node_modules/supports-color": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz",
- "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==",
- "dev": true,
- "dependencies": {
- "has-flag": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/mocha/node_modules/which": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
- "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
- "dev": true,
- "dependencies": {
- "isexe": "^2.0.0"
- },
- "bin": {
- "which": "bin/which"
- }
- },
- "node_modules/mocha/node_modules/wrap-ansi": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
- "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^3.2.0",
- "string-width": "^3.0.0",
- "strip-ansi": "^5.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/mocha/node_modules/y18n": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
- "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
- "dev": true
- },
- "node_modules/mocha/node_modules/yargs": {
- "version": "13.3.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
- "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
- "dev": true,
- "dependencies": {
- "cliui": "^5.0.0",
- "find-up": "^3.0.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^3.0.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^13.1.2"
- }
- },
- "node_modules/mocha/node_modules/yargs-parser": {
- "version": "13.1.2",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
- "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
- "dev": true,
- "dependencies": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
- },
- "node_modules/modify-values": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/modify-values/-/modify-values-1.0.1.tgz",
- "integrity": "sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
- "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/moment": {
- "version": "2.30.1",
- "resolved": "https://registry.npmjs.org/moment/-/moment-2.30.1.tgz",
- "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==",
- "dev": true,
- "optional": true,
- "engines": {
- "node": "*"
- }
- },
- "node_modules/mongodb": {
- "version": "4.17.1",
- "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.17.1.tgz",
- "integrity": "sha512-MBuyYiPUPRTqfH2dV0ya4dcr2E5N52ocBuZ8Sgg/M030nGF78v855B3Z27mZJnp8PxjnUquEnAtjOsphgMZOlQ==",
- "dev": true,
- "dependencies": {
- "bson": "^4.7.2",
- "mongodb-connection-string-url": "^2.6.0",
- "socks": "^2.7.1"
- },
- "engines": {
- "node": ">=12.9.0"
- },
- "optionalDependencies": {
- "@aws-sdk/credential-providers": "^3.186.0",
- "@mongodb-js/saslprep": "^1.1.0"
- }
- },
- "node_modules/mongodb-connection-string-url": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-2.6.0.tgz",
- "integrity": "sha512-WvTZlI9ab0QYtTYnuMLgobULWhokRjtC7db9LtcVfJ+Hsnyr5eo6ZtNAt3Ly24XZScGMelOcGtm7lSn0332tPQ==",
- "dev": true,
- "dependencies": {
- "@types/whatwg-url": "^8.2.1",
- "whatwg-url": "^11.0.0"
- }
- },
- "node_modules/mongoose": {
- "version": "6.12.3",
- "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.12.3.tgz",
- "integrity": "sha512-MNJymaaXali7w7rHBxVUoQ3HzHHMk/7I/+yeeoSa4rUzdjZwIWQznBNvVgc0A8ghuJwsuIkb5LyLV6gSjGjWyQ==",
- "dev": true,
- "dependencies": {
- "bson": "^4.7.2",
- "kareem": "2.5.1",
- "mongodb": "4.17.1",
- "mpath": "0.9.0",
- "mquery": "4.0.3",
- "ms": "2.1.3",
- "sift": "16.0.1"
- },
- "engines": {
- "node": ">=12.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/mongoose"
- }
- },
- "node_modules/mongoose/node_modules/ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- },
- "node_modules/mpath": {
- "version": "0.9.0",
- "resolved": "https://registry.npmjs.org/mpath/-/mpath-0.9.0.tgz",
- "integrity": "sha512-ikJRQTk8hw5DEoFVxHG1Gn9T/xcjtdnOKIU1JTmGjZZlg9LST2mBLmcX3/ICIbgJydT2GOc15RnNy5mHmzfSew==",
- "dev": true,
- "engines": {
- "node": ">=4.0.0"
- }
- },
- "node_modules/mquery": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/mquery/-/mquery-4.0.3.tgz",
- "integrity": "sha512-J5heI+P08I6VJ2Ky3+33IpCdAvlYGTSUjwTPxkAr8i8EoduPMBX2OY/wa3IKZIQl7MU4SbFk8ndgSKyB/cl1zA==",
- "dev": true,
- "dependencies": {
- "debug": "4.x"
- },
- "engines": {
- "node": ">=12.0.0"
- }
- },
- "node_modules/ms": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
- "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w=="
- },
- "node_modules/multer": {
- "version": "1.4.4-lts.1",
- "resolved": "https://registry.npmjs.org/multer/-/multer-1.4.4-lts.1.tgz",
- "integrity": "sha512-WeSGziVj6+Z2/MwQo3GvqzgR+9Uc+qt8SwHKh3gvNPiISKfsMfG4SvCOFYlxxgkXt7yIV2i1yczehm0EOKIxIg==",
- "dev": true,
- "dependencies": {
- "append-field": "^1.0.0",
- "busboy": "^1.0.0",
- "concat-stream": "^1.5.2",
- "mkdirp": "^0.5.4",
- "object-assign": "^4.1.1",
- "type-is": "^1.6.4",
- "xtend": "^4.0.0"
- },
- "engines": {
- "node": ">= 6.0.0"
- }
- },
- "node_modules/multer/node_modules/concat-stream": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
- "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
- "dev": true,
- "engines": [
- "node >= 0.8"
- ],
- "dependencies": {
- "buffer-from": "^1.0.0",
- "inherits": "^2.0.3",
- "readable-stream": "^2.2.2",
- "typedarray": "^0.0.6"
+ "buffer-from": "^1.0.0",
+ "inherits": "^2.0.3",
+ "readable-stream": "^2.2.2",
+ "typedarray": "^0.0.6"
}
},
"node_modules/multer/node_modules/mkdirp": {
@@ -27516,6 +26027,8 @@
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
"integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"minimist": "^1.2.6"
},
@@ -27528,6 +26041,8 @@
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
"integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"core-util-is": "~1.0.0",
"inherits": "~2.0.3",
@@ -27542,13 +26057,17 @@
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"node_modules/multer/node_modules/string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"safe-buffer": "~5.1.0"
}
@@ -27734,17 +26253,19 @@
}
},
"node_modules/mysql2": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/mysql2/-/mysql2-2.3.3.tgz",
- "integrity": "sha512-wxJUev6LgMSgACDkb/InIFxDprRa6T95+VEoR+xPvtngtccNH2dGjEB/fVZ8yg1gWv1510c9CvXuJHi5zUm0ZA==",
+ "version": "3.11.3",
+ "resolved": "https://registry.npmjs.org/mysql2/-/mysql2-3.11.3.tgz",
+ "integrity": "sha512-Qpu2ADfbKzyLdwC/5d4W7+5Yz7yBzCU05YWt5npWzACST37wJsB23wgOSo00qi043urkiRwXtEvJc9UnuLX/MQ==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "denque": "^2.0.1",
+ "aws-ssl-profiles": "^1.1.1",
+ "denque": "^2.1.0",
"generate-function": "^2.3.1",
"iconv-lite": "^0.6.3",
- "long": "^4.0.0",
- "lru-cache": "^6.0.0",
- "named-placeholders": "^1.1.2",
+ "long": "^5.2.1",
+ "lru.min": "^1.0.0",
+ "named-placeholders": "^1.1.3",
"seq-queue": "^0.0.5",
"sqlstring": "^2.3.2"
},
@@ -27764,30 +26285,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/mysql2/node_modules/long": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz",
- "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==",
- "dev": true
- },
- "node_modules/mysql2/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/mysql2/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
"node_modules/mz": {
"version": "2.7.0",
"resolved": "https://registry.npmjs.org/mz/-/mz-2.7.0.tgz",
@@ -27851,6 +26348,12 @@
"node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
}
},
+ "node_modules/napi-build-utils": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz",
+ "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==",
+ "dev": true
+ },
"node_modules/native-duplexpair": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/native-duplexpair/-/native-duplexpair-1.0.0.tgz",
@@ -27950,6 +26453,18 @@
"node": ">= 10.13"
}
},
+ "node_modules/node-abi": {
+ "version": "3.65.0",
+ "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.65.0.tgz",
+ "integrity": "sha512-ThjYBfoDNr08AWx6hGaRbfPwxKV9kVzAzOzlLKbk2CuqXE2xnCh+cbAGnwM3t8Lq4v9rUB7VfondlkBckcJrVA==",
+ "dev": true,
+ "dependencies": {
+ "semver": "^7.3.5"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
"node_modules/node-abort-controller": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz",
@@ -27967,6 +26482,7 @@
"resolved": "https://registry.npmjs.org/node-environment-flags/-/node-environment-flags-1.0.6.tgz",
"integrity": "sha512-5Evy2epuL+6TM0lCQGpFIj6KwiEsGh1SrHUhTbNX+sLbBtjidPZFAnVK9y5yU1+h//RitLbRHTIMyxQPtxMdHw==",
"dev": true,
+ "license": "Apache-2.0",
"dependencies": {
"object.getownpropertydescriptors": "^2.0.3",
"semver": "^5.7.0"
@@ -27977,6 +26493,7 @@
"resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
"integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
"dev": true,
+ "license": "ISC",
"bin": {
"semver": "bin/semver"
}
@@ -28414,9 +26931,9 @@
}
},
"node_modules/node-releases": {
- "version": "2.0.14",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
- "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==",
+ "version": "2.0.18",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz",
+ "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==",
"dev": true
},
"node_modules/nopt": {
@@ -29419,6 +27936,8 @@
"resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz",
"integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
"dev": true,
+ "optional": true,
+ "peer": true,
"engines": {
"node": ">= 6"
}
@@ -29490,16 +28009,19 @@
}
},
"node_modules/object.getownpropertydescriptors": {
- "version": "2.1.7",
- "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.7.tgz",
- "integrity": "sha512-PrJz0C2xJ58FNn11XV2lr4Jt5Gzl94qpy9Lu0JlfEj14z88sqbSBJCBEzdlNUCzY2gburhbrwOZ5BHCmuNUy0g==",
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.8.tgz",
+ "integrity": "sha512-qkHIGe4q0lSYMv0XI4SsBTJz3WaURhLvd0lKSgtVuOsJ2krg4SgMw3PIRQFMp07yi++UR3se2mkcLqsBNpBb/A==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"array.prototype.reduce": "^1.0.6",
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "safe-array-concat": "^1.0.0"
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.2",
+ "es-object-atoms": "^1.0.0",
+ "gopd": "^1.0.1",
+ "safe-array-concat": "^1.1.2"
},
"engines": {
"node": ">= 0.8"
@@ -29711,22 +28233,6 @@
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
- "node_modules/ora/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/ora/node_modules/supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -29739,15 +28245,6 @@
"node": ">=8"
}
},
- "node_modules/os-homedir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
- "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/os-tmpdir": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
@@ -29967,6 +28464,12 @@
"node": ">=8"
}
},
+ "node_modules/package-json-from-dist": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz",
+ "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==",
+ "dev": true
+ },
"node_modules/packet-reader": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz",
@@ -30432,9 +28935,9 @@
}
},
"node_modules/picocolors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz",
+ "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==",
"dev": true
},
"node_modules/picomatch": {
@@ -30754,6 +29257,50 @@
"node": ">=0.10.0"
}
},
+ "node_modules/prebuild-install": {
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz",
+ "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==",
+ "dev": true,
+ "dependencies": {
+ "detect-libc": "^2.0.0",
+ "expand-template": "^2.0.3",
+ "github-from-package": "0.0.0",
+ "minimist": "^1.2.3",
+ "mkdirp-classic": "^0.5.3",
+ "napi-build-utils": "^1.0.1",
+ "node-abi": "^3.3.0",
+ "pump": "^3.0.0",
+ "rc": "^1.2.7",
+ "simple-get": "^4.0.0",
+ "tar-fs": "^2.0.0",
+ "tunnel-agent": "^0.6.0"
+ },
+ "bin": {
+ "prebuild-install": "bin.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/prebuild-install/node_modules/chownr": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
+ "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==",
+ "dev": true
+ },
+ "node_modules/prebuild-install/node_modules/tar-fs": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
+ "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==",
+ "dev": true,
+ "dependencies": {
+ "chownr": "^1.1.1",
+ "mkdirp-classic": "^0.5.2",
+ "pump": "^3.0.0",
+ "tar-stream": "^2.1.4"
+ }
+ },
"node_modules/prelude-ls": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
@@ -30816,15 +29363,6 @@
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
- "node_modules/private": {
- "version": "0.1.8",
- "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
- "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==",
- "dev": true,
- "engines": {
- "node": ">= 0.6"
- }
- },
"node_modules/proc-log": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz",
@@ -31242,6 +29780,36 @@
"node": ">= 0.8"
}
},
+ "node_modules/rc": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz",
+ "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==",
+ "dev": true,
+ "dependencies": {
+ "deep-extend": "^0.6.0",
+ "ini": "~1.3.0",
+ "minimist": "^1.2.0",
+ "strip-json-comments": "~2.0.1"
+ },
+ "bin": {
+ "rc": "cli.js"
+ }
+ },
+ "node_modules/rc/node_modules/ini": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
+ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
+ "dev": true
+ },
+ "node_modules/rc/node_modules/strip-json-comments": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
+ "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
"node_modules/react": {
"version": "17.0.2",
"resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
@@ -31737,12 +30305,6 @@
"node": ">=4"
}
},
- "node_modules/regenerator-runtime": {
- "version": "0.11.1",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
- "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==",
- "dev": true
- },
"node_modules/regenerator-transform": {
"version": "0.15.2",
"resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz",
@@ -31817,12 +30379,6 @@
"node": ">=4"
}
},
- "node_modules/regjsgen": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
- "integrity": "sha512-x+Y3yA24uF68m5GA+tBjbGYo64xXVJpbToBaWCoSNSc1hdk6dfctaRWrNFTVJZIIhL5GxW8zwjoixbnifnK59g==",
- "dev": true
- },
"node_modules/regjsparser": {
"version": "0.9.1",
"resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz",
@@ -31865,18 +30421,6 @@
"node": ">=0.10"
}
},
- "node_modules/repeating": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
- "integrity": "sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==",
- "dev": true,
- "dependencies": {
- "is-finite": "^1.0.0"
- },
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
@@ -32303,9 +30847,9 @@
"dev": true
},
"node_modules/rimraf": {
- "version": "5.0.5",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz",
- "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==",
+ "version": "5.0.10",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz",
+ "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==",
"dev": true,
"dependencies": {
"glob": "^10.3.7"
@@ -32313,9 +30857,6 @@
"bin": {
"rimraf": "dist/esm/bin.mjs"
},
- "engines": {
- "node": ">=14"
- },
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
@@ -32588,12 +31129,9 @@
"dev": true
},
"node_modules/semver": {
- "version": "7.6.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
- "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
+ "version": "7.6.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==",
"bin": {
"semver": "bin/semver.js"
},
@@ -32601,22 +31139,6 @@
"node": ">=10"
}
},
- "node_modules/semver/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/semver/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
- },
"node_modules/send": {
"version": "0.18.0",
"resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz",
@@ -32681,9 +31203,9 @@
"dev": true
},
"node_modules/serialize-javascript": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz",
- "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==",
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz",
+ "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
"dev": true,
"dependencies": {
"randombytes": "^2.1.0"
@@ -32694,6 +31216,8 @@
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz",
"integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==",
"dev": true,
+ "optional": true,
+ "peer": true,
"dependencies": {
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
@@ -32793,12 +31317,12 @@
"integrity": "sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw=="
},
"node_modules/side-channel": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.5.tgz",
- "integrity": "sha512-QcgiIWV4WV7qWExbN5llt6frQB/lBven9pqliLXfGPB+K9ZYXxDozp0wLkHS24kWCm+6YXH/f0HhnObZnZOBnQ==",
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz",
+ "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==",
"dev": true,
"dependencies": {
- "call-bind": "^1.0.6",
+ "call-bind": "^1.0.7",
"es-errors": "^1.3.0",
"get-intrinsic": "^1.2.4",
"object-inspect": "^1.13.1"
@@ -32994,6 +31518,51 @@
"node": ">=16 || 14 >=14.17"
}
},
+ "node_modules/simple-concat": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz",
+ "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
+ "node_modules/simple-get": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz",
+ "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ],
+ "dependencies": {
+ "decompress-response": "^6.0.0",
+ "once": "^1.3.1",
+ "simple-concat": "^1.0.0"
+ }
+ },
"node_modules/simple-lru-cache": {
"version": "0.0.2",
"resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz",
@@ -33134,9 +31703,9 @@
}
},
"node_modules/socket.io": {
- "version": "4.7.4",
- "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.4.tgz",
- "integrity": "sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==",
+ "version": "4.7.5",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.5.tgz",
+ "integrity": "sha512-DmeAkF6cwM9jSfmp6Dr/5/mfMwb5Z5qRrSXLpo3Fq5SqyU8CMF15jIN4ZhfSwu35ksM1qmHZDQ/DK5XTccSTvA==",
"dev": true,
"dependencies": {
"accepts": "~1.3.4",
@@ -33162,9 +31731,9 @@
}
},
"node_modules/socket.io-client": {
- "version": "4.7.4",
- "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.4.tgz",
- "integrity": "sha512-wh+OkeF0rAVCrABWQBaEjLfb7DVPotMbu0cgWgyR0v6eA4EoVnAwcIeIbcdTE3GT/H3kbdLl7OoH2+asoDRIIg==",
+ "version": "4.7.5",
+ "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.5.tgz",
+ "integrity": "sha512-sJ/tqHOCe7Z50JCBCXrsY3I2k03iOiUe+tj1OmKeD2lXPiGH/RUCdTZFoqVyN7l1MnpIzPrGtLcijffmeouNlQ==",
"dev": true,
"dependencies": {
"@socket.io/component-emitter": "~3.1.0",
@@ -33453,14 +32022,15 @@
"dev": true
},
"node_modules/sqlite3": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.6.tgz",
- "integrity": "sha512-olYkWoKFVNSSSQNvxVUfjiVbz3YtBwTJj+mfV5zpHmqW3sELx2Cf4QCdirMelhM5Zh+KDVaKgQHqCxrqiWHybw==",
+ "version": "5.1.7",
+ "resolved": "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.7.tgz",
+ "integrity": "sha512-GGIyOiFaG+TUra3JIfkI/zGP8yZYLPQ0pl1bH+ODjiX57sPhrLU5sQJn1y9bDKZUFYkX1crlrPfSYt0BKKdkog==",
"dev": true,
"hasInstallScript": true,
"dependencies": {
- "@mapbox/node-pre-gyp": "^1.0.0",
- "node-addon-api": "^4.2.0",
+ "bindings": "^1.5.0",
+ "node-addon-api": "^7.0.0",
+ "prebuild-install": "^7.1.1",
"tar": "^6.1.11"
},
"optionalDependencies": {
@@ -33486,6 +32056,7 @@
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
"integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
+ "deprecated": "Glob versions prior to v9 are no longer supported",
"dev": true,
"optional": true,
"dependencies": {
@@ -33517,9 +32088,9 @@
}
},
"node_modules/sqlite3/node_modules/node-addon-api": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz",
- "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz",
+ "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==",
"dev": true
},
"node_modules/sqlite3/node_modules/node-gyp": {
@@ -33567,6 +32138,7 @@
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
"integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "deprecated": "Rimraf versions prior to v4 are no longer supported",
"dev": true,
"optional": true,
"dependencies": {
@@ -33776,6 +32348,8 @@
"resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
"integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==",
"dev": true,
+ "optional": true,
+ "peer": true,
"engines": {
"node": ">=10.0.0"
}
@@ -34090,6 +32664,15 @@
"node": ">=12.17"
}
},
+ "node_modules/tapable": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
+ "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
"node_modules/tar": {
"version": "6.1.11",
"resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
@@ -34318,15 +32901,6 @@
"url": "https://opencollective.com/webpack"
}
},
- "node_modules/terser-webpack-plugin/node_modules/serialize-javascript": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz",
- "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
- "dev": true,
- "dependencies": {
- "randombytes": "^2.1.0"
- }
- },
"node_modules/terser/node_modules/commander": {
"version": "2.20.3",
"resolved": "https://registry.npmjs.org/commander/-/commander-2.20.3.tgz",
@@ -34363,37 +32937,6 @@
"node": ">=14"
}
},
- "node_modules/test-all-versions/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "node_modules/test-all-versions/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
"node_modules/test-all-versions/node_modules/cli-spinners": {
"version": "2.9.2",
"resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz",
@@ -34406,24 +32949,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/test-all-versions/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "node_modules/test-all-versions/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
"node_modules/test-all-versions/node_modules/is-ci": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz",
@@ -34436,34 +32961,6 @@
"is-ci": "bin.js"
}
},
- "node_modules/test-all-versions/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/test-all-versions/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/test-exclude": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz",
@@ -34557,6 +33054,7 @@
"resolved": "https://registry.npmjs.org/thread-stream/-/thread-stream-2.7.0.tgz",
"integrity": "sha512-qQiRWsU/wvNolI6tbbCKd9iKaTnCXsTwVxhhKM6nctPdujTyztjlbUkUTUymidWcMnZ5pWR0ej4a0tjsW021vw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"real-require": "^0.2.0"
}
@@ -34749,15 +33247,6 @@
"node": ">=8"
}
},
- "node_modules/trim-right": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
- "integrity": "sha512-WZGXGstmCWgeevgTL54hrCuw1dyMQIzWy7ZfqRJfSmJZBwklI15egmQytFP6bPidmw3M8d5yEowl1niq4vmqZw==",
- "dev": true,
- "engines": {
- "node": ">=0.10.0"
- }
- },
"node_modules/triple-beam": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz",
@@ -34766,11 +33255,109 @@
"node": ">= 14.0.0"
}
},
+ "node_modules/ts-loader": {
+ "version": "9.5.1",
+ "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
+ "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^4.1.0",
+ "enhanced-resolve": "^5.0.0",
+ "micromatch": "^4.0.0",
+ "semver": "^7.3.4",
+ "source-map": "^0.7.4"
+ },
+ "engines": {
+ "node": ">=12.0.0"
+ },
+ "peerDependencies": {
+ "typescript": "*",
+ "webpack": "^5.0.0"
+ }
+ },
+ "node_modules/ts-loader/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/ts-loader/node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/ts-loader/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/ts-loader/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "node_modules/ts-loader/node_modules/source-map": {
+ "version": "0.7.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
+ "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "node_modules/ts-loader/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/ts-mocha": {
"version": "10.0.0",
"resolved": "https://registry.npmjs.org/ts-mocha/-/ts-mocha-10.0.0.tgz",
"integrity": "sha512-VRfgDO+iiuJFlNB18tzOfypJ21xn2xbuZyDvJvqpTbWgkAgD17ONGr8t+Tl8rcBtOBdjXp5e/Rk+d39f7XBHRw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"ts-node": "7.0.1"
},
@@ -34787,11 +33374,35 @@
"mocha": "^3.X.X || ^4.X.X || ^5.X.X || ^6.X.X || ^7.X.X || ^8.X.X || ^9.X.X || ^10.X.X"
}
},
- "node_modules/ts-node": {
+ "node_modules/ts-mocha/node_modules/diff": {
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz",
+ "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=0.3.1"
+ }
+ },
+ "node_modules/ts-mocha/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==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "minimist": "^1.2.6"
+ },
+ "bin": {
+ "mkdirp": "bin/cmd.js"
+ }
+ },
+ "node_modules/ts-mocha/node_modules/ts-node": {
"version": "7.0.1",
"resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz",
"integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"arrify": "^1.0.0",
"buffer-from": "^1.1.0",
@@ -34809,25 +33420,57 @@
"node": ">=4.2.0"
}
},
- "node_modules/ts-node/node_modules/diff": {
- "version": "3.5.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz",
- "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==",
+ "node_modules/ts-mocha/node_modules/yn": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz",
+ "integrity": "sha512-uTv8J/wiWTgUTg+9vLTi//leUl5vDQS6uii/emeTb2ssY7vl6QWf2fFbIIGjnhjvbdKlU0ed7QPgY1htTC86jQ==",
"dev": true,
+ "license": "MIT",
"engines": {
- "node": ">=0.3.1"
+ "node": ">=4"
}
},
- "node_modules/ts-node/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==",
- "dev": true,
- "dependencies": {
- "minimist": "^1.2.6"
+ "node_modules/ts-node": {
+ "version": "10.9.2",
+ "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz",
+ "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==",
+ "dev": true,
+ "dependencies": {
+ "@cspotcode/source-map-support": "^0.8.0",
+ "@tsconfig/node10": "^1.0.7",
+ "@tsconfig/node12": "^1.0.7",
+ "@tsconfig/node14": "^1.0.0",
+ "@tsconfig/node16": "^1.0.2",
+ "acorn": "^8.4.1",
+ "acorn-walk": "^8.1.1",
+ "arg": "^4.1.0",
+ "create-require": "^1.1.0",
+ "diff": "^4.0.1",
+ "make-error": "^1.1.1",
+ "v8-compile-cache-lib": "^3.0.1",
+ "yn": "3.1.1"
},
"bin": {
- "mkdirp": "bin/cmd.js"
+ "ts-node": "dist/bin.js",
+ "ts-node-cwd": "dist/bin-cwd.js",
+ "ts-node-esm": "dist/bin-esm.js",
+ "ts-node-script": "dist/bin-script.js",
+ "ts-node-transpile-only": "dist/bin-transpile.js",
+ "ts-script": "dist/bin-script-deprecated.js"
+ },
+ "peerDependencies": {
+ "@swc/core": ">=1.2.50",
+ "@swc/wasm": ">=1.2.50",
+ "@types/node": "*",
+ "typescript": ">=2.7"
+ },
+ "peerDependenciesMeta": {
+ "@swc/core": {
+ "optional": true
+ },
+ "@swc/wasm": {
+ "optional": true
+ }
}
},
"node_modules/tsconfig-paths": {
@@ -35065,6 +33708,18 @@
"node": ">=16 || 14 >=14.17"
}
},
+ "node_modules/tunnel-agent": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
+ "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==",
+ "dev": true,
+ "dependencies": {
+ "safe-buffer": "^5.0.1"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
"node_modules/tweetnacl": {
"version": "0.14.5",
"resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
@@ -35468,9 +34123,9 @@
}
},
"node_modules/update-browserslist-db": {
- "version": "1.0.13",
- "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz",
- "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==",
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz",
+ "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==",
"dev": true,
"funding": [
{
@@ -35487,8 +34142,8 @@
}
],
"dependencies": {
- "escalade": "^3.1.1",
- "picocolors": "^1.0.0"
+ "escalade": "^3.1.2",
+ "picocolors": "^1.0.1"
},
"bin": {
"update-browserslist-db": "cli.js"
@@ -35595,6 +34250,13 @@
"integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==",
"dev": true
},
+ "node_modules/v8-compile-cache-lib": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz",
+ "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==",
+ "dev": true,
+ "license": "MIT"
+ },
"node_modules/v8-to-istanbul": {
"version": "9.2.0",
"resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz",
@@ -35754,22 +34416,20 @@
}
},
"node_modules/webpack": {
- "version": "5.91.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.91.0.tgz",
- "integrity": "sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw==",
+ "version": "5.94.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz",
+ "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==",
"dev": true,
- "peer": true,
"dependencies": {
- "@types/eslint-scope": "^3.7.3",
"@types/estree": "^1.0.5",
"@webassemblyjs/ast": "^1.12.1",
"@webassemblyjs/wasm-edit": "^1.12.1",
"@webassemblyjs/wasm-parser": "^1.12.1",
"acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
+ "acorn-import-attributes": "^1.9.5",
"browserslist": "^4.21.10",
"chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.16.0",
+ "enhanced-resolve": "^5.17.1",
"es-module-lexer": "^1.2.1",
"eslint-scope": "5.1.1",
"events": "^3.2.0",
@@ -35878,26 +34538,11 @@
"node": ">=10.13.0"
}
},
- "node_modules/webpack/node_modules/enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
- "dev": true,
- "peer": true,
- "dependencies": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
"node_modules/webpack/node_modules/events": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
"integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
"dev": true,
- "peer": true,
"engines": {
"node": ">=0.8.x"
}
@@ -35906,15 +34551,13 @@
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
"integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true,
- "peer": true
+ "dev": true
},
"node_modules/webpack/node_modules/schema-utils": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
"integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
"dev": true,
- "peer": true,
"dependencies": {
"@types/json-schema": "^7.0.8",
"ajv": "^6.12.5",
@@ -35928,16 +34571,6 @@
"url": "https://opencollective.com/webpack"
}
},
- "node_modules/webpack/node_modules/tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
- "dev": true,
- "peer": true,
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/whatwg-url": {
"version": "11.0.0",
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-11.0.0.tgz",
@@ -36012,6 +34645,7 @@
"resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
"integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
"dev": true,
+ "license": "ISC",
"dependencies": {
"string-width": "^1.0.2 || 2"
}
@@ -36021,6 +34655,7 @@
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz",
"integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=4"
}
@@ -36030,6 +34665,7 @@
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
"integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=4"
}
@@ -36039,6 +34675,7 @@
"resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
"integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"is-fullwidth-code-point": "^2.0.0",
"strip-ansi": "^4.0.0"
@@ -36052,6 +34689,7 @@
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
"integrity": "sha512-4XaJ2zQdCzROZDivEVIDPkcQn8LMFSa8kj8Gxb/Lnwzv9A8VctNZ+lfivC/sV3ivW8ElJTERXZoPBRrZKkNKow==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"ansi-regex": "^3.0.0"
},
@@ -36086,12 +34724,12 @@
}
},
"node_modules/winston-transport": {
- "version": "4.7.0",
- "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.7.0.tgz",
- "integrity": "sha512-ajBj65K5I7denzer2IYW6+2bNIVqLGDHqDw3Ow8Ohh+vdW+rv4MZ6eiDvHoKhfJFZ2auyN8byXieDDJ96ViONg==",
+ "version": "4.7.1",
+ "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.7.1.tgz",
+ "integrity": "sha512-wQCXXVgfv/wUPOfb2x0ruxzwkcZfxcktz6JIMUaPLmcNhO4bZTwA/WtDWK74xV3F2dKu8YadrFv0qhwYjVEwhA==",
"dependencies": {
- "logform": "^2.3.2",
- "readable-stream": "^3.6.0",
+ "logform": "^2.6.1",
+ "readable-stream": "^3.6.2",
"triple-beam": "^1.3.0"
},
"engines": {
@@ -36150,9 +34788,9 @@
}
},
"node_modules/workerpool": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz",
- "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==",
+ "version": "6.5.1",
+ "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz",
+ "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==",
"dev": true
},
"node_modules/wrap-ansi": {
@@ -36475,213 +35113,51 @@
}
},
"node_modules/yargs-unparser": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz",
- "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==",
- "dev": true,
- "dependencies": {
- "flat": "^4.1.0",
- "lodash": "^4.17.15",
- "yargs": "^13.3.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/yargs-unparser/node_modules/cliui": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
- "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
- "dev": true,
- "dependencies": {
- "string-width": "^3.1.0",
- "strip-ansi": "^5.2.0",
- "wrap-ansi": "^5.1.0"
- }
- },
- "node_modules/yargs-unparser/node_modules/emoji-regex": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
- "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
- "dev": true
- },
- "node_modules/yargs-unparser/node_modules/find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "dev": true,
- "dependencies": {
- "locate-path": "^3.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/yargs-unparser/node_modules/flat": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz",
- "integrity": "sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==",
- "dev": true,
- "dependencies": {
- "is-buffer": "~2.0.3"
- },
- "bin": {
- "flat": "cli.js"
- }
- },
- "node_modules/yargs-unparser/node_modules/is-buffer": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz",
- "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ],
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/yargs-unparser/node_modules/is-fullwidth-code-point": {
"version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
- "dev": true,
- "engines": {
- "node": ">=4"
- }
- },
- "node_modules/yargs-unparser/node_modules/locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
+ "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
"dev": true,
"dependencies": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
+ "camelcase": "^6.0.0",
+ "decamelize": "^4.0.0",
+ "flat": "^5.0.2",
+ "is-plain-obj": "^2.1.0"
},
"engines": {
- "node": ">=6"
+ "node": ">=10"
}
},
- "node_modules/yargs-unparser/node_modules/p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "node_modules/yargs-unparser/node_modules/camelcase": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
+ "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
"dev": true,
- "dependencies": {
- "p-try": "^2.0.0"
- },
"engines": {
- "node": ">=6"
+ "node": ">=10"
},
"funding": {
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/yargs-unparser/node_modules/p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "dev": true,
- "dependencies": {
- "p-limit": "^2.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/yargs-unparser/node_modules/path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
+ "node_modules/yargs-unparser/node_modules/decamelize": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
+ "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
"dev": true,
"engines": {
- "node": ">=4"
- }
- },
- "node_modules/yargs-unparser/node_modules/string-width": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
- "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
- "dev": true,
- "dependencies": {
- "emoji-regex": "^7.0.1",
- "is-fullwidth-code-point": "^2.0.0",
- "strip-ansi": "^5.1.0"
+ "node": ">=10"
},
- "engines": {
- "node": ">=6"
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/yargs-unparser/node_modules/strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "node_modules/yargs-unparser/node_modules/is-plain-obj": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
+ "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
"dev": true,
- "dependencies": {
- "ansi-regex": "^4.1.0"
- },
"engines": {
- "node": ">=6"
- }
- },
- "node_modules/yargs-unparser/node_modules/wrap-ansi": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
- "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^3.2.0",
- "string-width": "^3.0.0",
- "strip-ansi": "^5.0.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/yargs-unparser/node_modules/y18n": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
- "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
- "dev": true
- },
- "node_modules/yargs-unparser/node_modules/yargs": {
- "version": "13.3.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
- "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
- "dev": true,
- "dependencies": {
- "cliui": "^5.0.0",
- "find-up": "^3.0.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^3.0.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^13.1.2"
- }
- },
- "node_modules/yargs-unparser/node_modules/yargs-parser": {
- "version": "13.1.2",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
- "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
- "dev": true,
- "dependencies": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
+ "node": ">=8"
}
},
"node_modules/yargs/node_modules/ansi-styles": {
@@ -36771,12 +35247,12 @@
}
},
"node_modules/yn": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz",
- "integrity": "sha512-uTv8J/wiWTgUTg+9vLTi//leUl5vDQS6uii/emeTb2ssY7vl6QWf2fFbIIGjnhjvbdKlU0ed7QPgY1htTC86jQ==",
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz",
+ "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==",
"dev": true,
"engines": {
- "node": ">=4"
+ "node": ">=6"
}
},
"node_modules/yocto-queue": {
@@ -36833,12 +35309,10 @@
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"expect": "29.2.0",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"engines": {
@@ -36854,18 +35328,27 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "packages/baggage-span-processor/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"packages/esbuild-plugin-node": {
"name": "@opentelemetry/esbuild-plugin-node",
"version": "0.1.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/auto-instrumentations-node": "0.47.1",
- "@opentelemetry/instrumentation": "^0.52.0",
- "esbuild": "0.21.x"
+ "@opentelemetry/auto-instrumentations-node": "0.52.1",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "esbuild": "0.24.x"
},
"devDependencies": {
"@opentelemetry/api": "^1.9.0",
- "@opentelemetry/sdk-node": "^0.52.0",
+ "@opentelemetry/sdk-node": "^0.54.0",
"@types/mocha": "7.0.2",
"@types/node": "18.6.5",
"fastify": "4.15.0",
@@ -36885,348 +35368,371 @@
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/aix-ppc64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz",
- "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.0.tgz",
+ "integrity": "sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==",
"cpu": [
"ppc64"
],
+ "license": "MIT",
"optional": true,
"os": [
"aix"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/android-arm": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz",
- "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.0.tgz",
+ "integrity": "sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==",
"cpu": [
"arm"
],
+ "license": "MIT",
"optional": true,
"os": [
"android"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/android-arm64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz",
- "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.0.tgz",
+ "integrity": "sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==",
"cpu": [
"arm64"
],
+ "license": "MIT",
"optional": true,
"os": [
"android"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/android-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz",
- "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.0.tgz",
+ "integrity": "sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==",
"cpu": [
"x64"
],
+ "license": "MIT",
"optional": true,
"os": [
"android"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/darwin-arm64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz",
- "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.0.tgz",
+ "integrity": "sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==",
"cpu": [
"arm64"
],
+ "license": "MIT",
"optional": true,
"os": [
"darwin"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/darwin-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz",
- "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.0.tgz",
+ "integrity": "sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==",
"cpu": [
"x64"
],
+ "license": "MIT",
"optional": true,
"os": [
"darwin"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/freebsd-arm64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz",
- "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.0.tgz",
+ "integrity": "sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==",
"cpu": [
"arm64"
],
+ "license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/freebsd-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz",
- "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.0.tgz",
+ "integrity": "sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==",
"cpu": [
"x64"
],
+ "license": "MIT",
"optional": true,
"os": [
"freebsd"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/linux-arm": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz",
- "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.0.tgz",
+ "integrity": "sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==",
"cpu": [
"arm"
],
+ "license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/linux-arm64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz",
- "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.0.tgz",
+ "integrity": "sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==",
"cpu": [
"arm64"
],
+ "license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/linux-ia32": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz",
- "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.0.tgz",
+ "integrity": "sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==",
"cpu": [
"ia32"
],
+ "license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/linux-loong64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz",
- "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.0.tgz",
+ "integrity": "sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==",
"cpu": [
"loong64"
],
+ "license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/linux-mips64el": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz",
- "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.0.tgz",
+ "integrity": "sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==",
"cpu": [
"mips64el"
],
+ "license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/linux-ppc64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz",
- "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.0.tgz",
+ "integrity": "sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==",
"cpu": [
"ppc64"
],
+ "license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/linux-riscv64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz",
- "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.0.tgz",
+ "integrity": "sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==",
"cpu": [
"riscv64"
],
+ "license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/linux-s390x": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz",
- "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.0.tgz",
+ "integrity": "sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==",
"cpu": [
"s390x"
],
+ "license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/linux-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz",
- "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.0.tgz",
+ "integrity": "sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==",
"cpu": [
"x64"
],
+ "license": "MIT",
"optional": true,
"os": [
"linux"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/netbsd-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz",
- "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.0.tgz",
+ "integrity": "sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==",
"cpu": [
"x64"
],
+ "license": "MIT",
"optional": true,
"os": [
"netbsd"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/openbsd-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz",
- "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.0.tgz",
+ "integrity": "sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==",
"cpu": [
"x64"
],
+ "license": "MIT",
"optional": true,
"os": [
"openbsd"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/sunos-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz",
- "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.0.tgz",
+ "integrity": "sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==",
"cpu": [
"x64"
],
+ "license": "MIT",
"optional": true,
"os": [
"sunos"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/win32-arm64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz",
- "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.0.tgz",
+ "integrity": "sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==",
"cpu": [
"arm64"
],
+ "license": "MIT",
"optional": true,
"os": [
"win32"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/win32-ia32": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz",
- "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.0.tgz",
+ "integrity": "sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==",
"cpu": [
"ia32"
],
+ "license": "MIT",
"optional": true,
"os": [
"win32"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@esbuild/win32-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz",
- "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.0.tgz",
+ "integrity": "sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==",
"cpu": [
"x64"
],
+ "license": "MIT",
"optional": true,
"os": [
"win32"
],
"engines": {
- "node": ">=12"
+ "node": ">=18"
}
},
"packages/esbuild-plugin-node/node_modules/@redis/bloom": {
@@ -37294,6 +35800,26 @@
"@redis/client": "^1.0.0"
}
},
+ "packages/esbuild-plugin-node/node_modules/ansi-colors": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz",
+ "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
"packages/esbuild-plugin-node/node_modules/buffer": {
"version": "6.0.3",
"resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
@@ -37313,46 +35839,111 @@
"url": "https://feross.org/support"
}
],
+ "license": "MIT",
"dependencies": {
"base64-js": "^1.3.1",
"ieee754": "^1.2.1"
}
},
+ "packages/esbuild-plugin-node/node_modules/chokidar": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz",
+ "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "anymatch": "~3.1.1",
+ "braces": "~3.0.2",
+ "glob-parent": "~5.1.0",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.2.0"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.1.1"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/cliui": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
+ "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "string-width": "^3.1.0",
+ "strip-ansi": "^5.2.0",
+ "wrap-ansi": "^5.1.0"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/debug": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
+ "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.1"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/diff": {
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz",
+ "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=0.3.1"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+ "dev": true,
+ "license": "MIT"
+ },
"packages/esbuild-plugin-node/node_modules/esbuild": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz",
- "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==",
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.0.tgz",
+ "integrity": "sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==",
"hasInstallScript": true,
+ "license": "MIT",
"bin": {
"esbuild": "bin/esbuild"
},
"engines": {
- "node": ">=12"
+ "node": ">=18"
},
"optionalDependencies": {
- "@esbuild/aix-ppc64": "0.21.5",
- "@esbuild/android-arm": "0.21.5",
- "@esbuild/android-arm64": "0.21.5",
- "@esbuild/android-x64": "0.21.5",
- "@esbuild/darwin-arm64": "0.21.5",
- "@esbuild/darwin-x64": "0.21.5",
- "@esbuild/freebsd-arm64": "0.21.5",
- "@esbuild/freebsd-x64": "0.21.5",
- "@esbuild/linux-arm": "0.21.5",
- "@esbuild/linux-arm64": "0.21.5",
- "@esbuild/linux-ia32": "0.21.5",
- "@esbuild/linux-loong64": "0.21.5",
- "@esbuild/linux-mips64el": "0.21.5",
- "@esbuild/linux-ppc64": "0.21.5",
- "@esbuild/linux-riscv64": "0.21.5",
- "@esbuild/linux-s390x": "0.21.5",
- "@esbuild/linux-x64": "0.21.5",
- "@esbuild/netbsd-x64": "0.21.5",
- "@esbuild/openbsd-x64": "0.21.5",
- "@esbuild/sunos-x64": "0.21.5",
- "@esbuild/win32-arm64": "0.21.5",
- "@esbuild/win32-ia32": "0.21.5",
- "@esbuild/win32-x64": "0.21.5"
+ "@esbuild/aix-ppc64": "0.24.0",
+ "@esbuild/android-arm": "0.24.0",
+ "@esbuild/android-arm64": "0.24.0",
+ "@esbuild/android-x64": "0.24.0",
+ "@esbuild/darwin-arm64": "0.24.0",
+ "@esbuild/darwin-x64": "0.24.0",
+ "@esbuild/freebsd-arm64": "0.24.0",
+ "@esbuild/freebsd-x64": "0.24.0",
+ "@esbuild/linux-arm": "0.24.0",
+ "@esbuild/linux-arm64": "0.24.0",
+ "@esbuild/linux-ia32": "0.24.0",
+ "@esbuild/linux-loong64": "0.24.0",
+ "@esbuild/linux-mips64el": "0.24.0",
+ "@esbuild/linux-ppc64": "0.24.0",
+ "@esbuild/linux-riscv64": "0.24.0",
+ "@esbuild/linux-s390x": "0.24.0",
+ "@esbuild/linux-x64": "0.24.0",
+ "@esbuild/netbsd-x64": "0.24.0",
+ "@esbuild/openbsd-arm64": "0.24.0",
+ "@esbuild/openbsd-x64": "0.24.0",
+ "@esbuild/sunos-x64": "0.24.0",
+ "@esbuild/win32-arm64": "0.24.0",
+ "@esbuild/win32-ia32": "0.24.0",
+ "@esbuild/win32-x64": "0.24.0"
}
},
"packages/esbuild-plugin-node/node_modules/events": {
@@ -37360,6 +35951,7 @@
"resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
"integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
"dev": true,
+ "license": "MIT",
"engines": {
"node": ">=0.8.x"
}
@@ -37369,6 +35961,7 @@
"resolved": "https://registry.npmjs.org/fastify/-/fastify-4.15.0.tgz",
"integrity": "sha512-m/CaRN8nf5uyYdrDe2qqq+0z3oGyE+A++qlKQoLJTI4WI0nWK9D6R3FxXQ3MVwt/md977GMR4F43pE9oqrS2zw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"@fastify/ajv-compiler": "^3.5.0",
"@fastify/error": "^3.0.0",
@@ -37387,6 +35980,47 @@
"tiny-lru": "^10.0.0"
}
},
+ "packages/esbuild-plugin-node/node_modules/find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "locate-path": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/flat": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz",
+ "integrity": "sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "is-buffer": "~2.0.3"
+ },
+ "bin": {
+ "flat": "cli.js"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/fsevents": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
+ "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
+ "dev": true,
+ "hasInstallScript": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
"packages/esbuild-plugin-node/node_modules/generic-pool": {
"version": "3.9.0",
"resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.9.0.tgz",
@@ -37397,6 +36031,29 @@
"node": ">= 4"
}
},
+ "packages/esbuild-plugin-node/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
"packages/esbuild-plugin-node/node_modules/ieee754": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
@@ -37415,13 +36072,217 @@
"type": "consulting",
"url": "https://feross.org/support"
}
- ]
+ ],
+ "license": "BSD-3-Clause"
+ },
+ "packages/esbuild-plugin-node/node_modules/is-fullwidth-code-point": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+ "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/js-yaml": {
+ "version": "3.13.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
+ "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/log-symbols": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz",
+ "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^2.4.2"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/minimatch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/mkdirp": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "minimist": "^1.2.5"
+ },
+ "bin": {
+ "mkdirp": "bin/cmd.js"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/mocha": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz",
+ "integrity": "sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-colors": "3.2.3",
+ "browser-stdout": "1.3.1",
+ "chokidar": "3.3.0",
+ "debug": "3.2.6",
+ "diff": "3.5.0",
+ "escape-string-regexp": "1.0.5",
+ "find-up": "3.0.0",
+ "glob": "7.1.3",
+ "growl": "1.10.5",
+ "he": "1.2.0",
+ "js-yaml": "3.13.1",
+ "log-symbols": "3.0.0",
+ "minimatch": "3.0.4",
+ "mkdirp": "0.5.5",
+ "ms": "2.1.1",
+ "node-environment-flags": "1.0.6",
+ "object.assign": "4.1.0",
+ "strip-json-comments": "2.0.1",
+ "supports-color": "6.0.0",
+ "which": "1.3.1",
+ "wide-align": "1.1.3",
+ "yargs": "13.3.2",
+ "yargs-parser": "13.1.2",
+ "yargs-unparser": "1.6.0"
+ },
+ "bin": {
+ "_mocha": "bin/_mocha",
+ "mocha": "bin/mocha"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/mochajs"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/mocha/node_modules/glob": {
+ "version": "7.1.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
+ "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
+ "deprecated": "Glob versions prior to v9 are no longer supported",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/ms": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
+ "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "packages/esbuild-plugin-node/node_modules/object.assign": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
+ "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "define-properties": "^1.1.2",
+ "function-bind": "^1.1.1",
+ "has-symbols": "^1.0.0",
+ "object-keys": "^1.0.11"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-limit": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
+ "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
},
"packages/esbuild-plugin-node/node_modules/pino": {
"version": "8.21.0",
"resolved": "https://registry.npmjs.org/pino/-/pino-8.21.0.tgz",
"integrity": "sha512-ip4qdzjkAyDDZklUaZkcRFb2iA118H9SgRh8yzTkSQK8HilsOJF7rSY8HoW5+I0M46AZgX/pxbprf2vvzQCE0Q==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"atomic-sleep": "^1.0.0",
"fast-redact": "^3.1.1",
@@ -37444,6 +36305,7 @@
"resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz",
"integrity": "sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"readable-stream": "^4.0.0",
"split2": "^4.0.0"
@@ -37453,13 +36315,15 @@
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz",
"integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==",
- "dev": true
+ "dev": true,
+ "license": "MIT"
},
"packages/esbuild-plugin-node/node_modules/readable-stream": {
"version": "4.5.2",
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz",
"integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"abort-controller": "^3.0.0",
"buffer": "^6.0.3",
@@ -37471,6 +36335,19 @@
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
}
},
+ "packages/esbuild-plugin-node/node_modules/readdirp": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz",
+ "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "picomatch": "^2.0.4"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
"packages/esbuild-plugin-node/node_modules/redis": {
"version": "4.7.0",
"resolved": "https://registry.npmjs.org/redis/-/redis-4.7.0.tgz",
@@ -37489,24 +36366,138 @@
"@redis/time-series": "1.1.0"
}
},
+ "packages/esbuild-plugin-node/node_modules/rimraf": {
+ "version": "5.0.5",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz",
+ "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "glob": "^10.3.7"
+ },
+ "bin": {
+ "rimraf": "dist/esm/bin.mjs"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
"packages/esbuild-plugin-node/node_modules/split2": {
"version": "4.2.0",
"resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz",
"integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==",
"dev": true,
+ "license": "ISC",
"engines": {
"node": ">= 10.x"
}
},
+ "packages/esbuild-plugin-node/node_modules/sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
+ "dev": true,
+ "license": "BSD-3-Clause"
+ },
+ "packages/esbuild-plugin-node/node_modules/string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-regex": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/strip-json-comments": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
+ "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/supports-color": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz",
+ "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
"packages/esbuild-plugin-node/node_modules/tiny-lru": {
"version": "10.4.1",
"resolved": "https://registry.npmjs.org/tiny-lru/-/tiny-lru-10.4.1.tgz",
"integrity": "sha512-buLIzw7ppqymuO3pt10jHk/6QMeZLbidihMQU+N6sogF6EnBzG0qtDWIHuhw1x3dyNgVL/KTGIZsTK81+yCzLg==",
"dev": true,
+ "license": "BSD-3-Clause",
"engines": {
"node": ">=12"
}
},
+ "packages/esbuild-plugin-node/node_modules/which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "which": "bin/which"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/wrap-ansi": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
+ "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^3.2.0",
+ "string-width": "^3.0.0",
+ "strip-ansi": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/y18n": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
+ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
+ "dev": true,
+ "license": "ISC"
+ },
"packages/esbuild-plugin-node/node_modules/yallist": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
@@ -37514,24 +36505,67 @@
"dev": true,
"license": "ISC"
},
+ "packages/esbuild-plugin-node/node_modules/yargs": {
+ "version": "13.3.2",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
+ "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "cliui": "^5.0.0",
+ "find-up": "^3.0.0",
+ "get-caller-file": "^2.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^2.0.0",
+ "set-blocking": "^2.0.0",
+ "string-width": "^3.0.0",
+ "which-module": "^2.0.0",
+ "y18n": "^4.0.0",
+ "yargs-parser": "^13.1.2"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/yargs-parser": {
+ "version": "13.1.2",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
+ "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ }
+ },
+ "packages/esbuild-plugin-node/node_modules/yargs-unparser": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz",
+ "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "flat": "^4.1.0",
+ "lodash": "^4.17.15",
+ "yargs": "^13.3.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
"packages/opentelemetry-host-metrics": {
"name": "@opentelemetry/host-metrics",
- "version": "0.35.2",
+ "version": "0.35.4",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/sdk-metrics": "^1.8.0",
"systeminformation": "5.22.9"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/sdk-metrics": "^1.8.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -37547,6 +36581,15 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "packages/opentelemetry-host-metrics/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"packages/opentelemetry-id-generator-aws-xray": {
"name": "@opentelemetry/id-generator-aws-xray",
"version": "1.2.2",
@@ -37559,27 +36602,24 @@
"@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.0.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0"
},
@@ -37644,356 +36684,28 @@
"integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
"dev": true
},
- "packages/opentelemetry-id-generator-aws-xray/node_modules/@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
+ "packages/opentelemetry-id-generator-aws-xray/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"dependencies": {
- "@types/sinonjs__fake-timers": "*"
+ "undici-types": "~5.26.4"
}
},
- "packages/opentelemetry-id-generator-aws-xray/node_modules/ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
+ "packages/opentelemetry-id-generator-aws-xray/node_modules/convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true
+ },
+ "packages/opentelemetry-id-generator-aws-xray/node_modules/diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true,
"engines": {
- "node": ">=6"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/chalk/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
- "dev": true,
- "funding": [
- {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
- }
- ],
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
- "dev": true,
- "engines": {
- "node": ">=0.3.1"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
- "dev": true,
- "dependencies": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true,
- "engines": {
- "node": ">=0.8.x"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
- "dev": true,
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/glob/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/minimatch/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
- "dev": true,
- "dependencies": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
- },
- "bin": {
- "_mocha": "bin/_mocha",
- "mocha": "bin/mocha.js"
- },
- "engines": {
- "node": ">= 14.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/mochajs"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
- "dev": true,
- "bin": {
- "nanoid": "bin/nanoid.cjs"
- },
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
- "dev": true,
- "dependencies": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- },
- "engines": {
- "node": ">= 10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
+ "node": ">=0.3.1"
}
},
"packages/opentelemetry-id-generator-aws-xray/node_modules/sinon": {
@@ -38015,15 +36727,6 @@
"url": "https://opencollective.com/sinon"
}
},
- "packages/opentelemetry-id-generator-aws-xray/node_modules/sinon/node_modules/diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
- "dev": true,
- "engines": {
- "node": ">=0.3.1"
- }
- },
"packages/opentelemetry-id-generator-aws-xray/node_modules/sinon/node_modules/supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -38036,139 +36739,19 @@
"node": ">=8"
}
},
- "packages/opentelemetry-id-generator-aws-xray/node_modules/source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true,
- "engines": {
- "node": ">= 8"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
- },
- "engines": {
- "node": ">=12.0.0"
- },
- "peerDependencies": {
- "typescript": "*",
- "webpack": "^5.0.0"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
- "dev": true,
- "dependencies": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
- },
- "bin": {
- "webpack": "bin/webpack.js"
- },
- "engines": {
- "node": ">=10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- },
- "peerDependenciesMeta": {
- "webpack-cli": {
- "optional": true
- }
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "dev": true,
- "dependencies": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "packages/opentelemetry-id-generator-aws-xray/node_modules/yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
- "dev": true,
- "dependencies": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
"packages/opentelemetry-propagation-utils": {
"name": "@opentelemetry/propagation-utils",
- "version": "0.30.10",
+ "version": "0.30.12",
"license": "Apache-2.0",
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@types/mocha": "^9.1.1",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"@types/sinon": "^10.0.11",
"expect": "29.2.0",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38184,16 +36767,23 @@
"integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==",
"dev": true
},
+ "packages/opentelemetry-propagation-utils/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"packages/opentelemetry-redis-common": {
"name": "@opentelemetry/redis-common",
"version": "0.36.2",
"license": "Apache-2.0",
"devDependencies": {
"@types/mocha": "^9.1.1",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38206,6 +36796,15 @@
"integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==",
"dev": true
},
+ "packages/opentelemetry-redis-common/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"packages/opentelemetry-sql-common": {
"name": "@opentelemetry/sql-common",
"version": "0.40.1",
@@ -38216,10 +36815,8 @@
"devDependencies": {
"@opentelemetry/api": "^1.1.0",
"@types/mocha": "^7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38229,23 +36826,34 @@
"@opentelemetry/api": "^1.1.0"
}
},
+ "packages/opentelemetry-sql-common/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"packages/opentelemetry-test-utils": {
"name": "@opentelemetry/contrib-test-utils",
- "version": "0.40.0",
+ "version": "0.42.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.0.0",
"@opentelemetry/exporter-jaeger": "^1.3.1",
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/otlp-transformer": "^0.54.0",
"@opentelemetry/resources": "^1.8.0",
- "@opentelemetry/sdk-node": "^0.52.0",
+ "@opentelemetry/sdk-metrics": "^1.27.0",
+ "@opentelemetry/sdk-node": "^0.54.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"typescript": "4.4.4"
},
"engines": {
@@ -38255,30 +36863,46 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "packages/opentelemetry-test-utils/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"packages/winston-transport": {
"name": "@opentelemetry/winston-transport",
- "version": "0.4.0",
+ "version": "0.7.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/api-logs": "^0.52.0",
+ "@opentelemetry/api-logs": "^0.54.0",
"winston-transport": "4.*"
},
"devDependencies": {
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/triple-beam": "1.3.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
"node": ">=14"
}
},
+ "packages/winston-transport/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"packages/winston-transport/node_modules/@types/triple-beam": {
"version": "1.3.2",
"resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz",
@@ -38287,29 +36911,27 @@
},
"plugins/node/instrumentation-amqplib": {
"name": "@opentelemetry/instrumentation-amqplib",
- "version": "0.38.0",
+ "version": "0.43.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@types/amqplib": "^0.5.17",
"@types/lodash": "4.14.199",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"amqplib": "0.8.0",
"expect": "29.2.0",
"lodash": "4.17.21",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38325,31 +36947,39 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "plugins/node/instrumentation-amqplib/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/instrumentation-cucumber": {
"name": "@opentelemetry/instrumentation-cucumber",
- "version": "0.7.0",
+ "version": "0.10.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@cucumber/cucumber": "^9.0.0",
+ "@cucumber/messages": "^22.0.0",
"@opentelemetry/api": "^1.0.0",
"@opentelemetry/core": "^1.3.1",
"@opentelemetry/sdk-trace-base": "^1.3.1",
"@opentelemetry/sdk-trace-node": "^1.3.1",
"@types/mocha": "7.0.2",
- "@types/semver": "7.5.3",
+ "@types/semver": "7.5.8",
"@types/shimmer": "1.0.3",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38359,45 +36989,12 @@
"@opentelemetry/api": "^1.0.0"
}
},
- "plugins/node/instrumentation-cucumber/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "plugins/node/instrumentation-cucumber/node_modules/semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
- "dev": true,
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "plugins/node/instrumentation-cucumber/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
"plugins/node/instrumentation-dataloader": {
"name": "@opentelemetry/instrumentation-dataloader",
- "version": "0.10.0",
+ "version": "0.13.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
@@ -38405,13 +37002,11 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"dataloader": "2.2.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38421,13 +37016,22 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/instrumentation-dataloader/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/instrumentation-fs": {
"name": "@opentelemetry/instrumentation-fs",
- "version": "0.13.0",
+ "version": "0.16.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
@@ -38436,13 +37040,11 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"@types/sinon": "^10.0.11",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38452,27 +37054,34 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/instrumentation-fs/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/instrumentation-kafkajs": {
"name": "@opentelemetry/instrumentation-kafkajs",
- "version": "0.1.0",
+ "version": "0.4.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.24.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.24.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"@types/sinon": "^10.0.11",
"kafkajs": "^2.2.4",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38482,26 +37091,33 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/instrumentation-kafkajs/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/instrumentation-lru-memoizer": {
"name": "@opentelemetry/instrumentation-lru-memoizer",
- "version": "0.38.0",
+ "version": "0.41.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@types/lru-cache": "7.10.9",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@types/lru-cache": "7.10.10",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"expect": "29.2.0",
"lru-memoizer": "2.1.4",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38517,28 +37133,35 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
- "plugins/node/instrumentation-mongoose": {
+ "plugins/node/instrumentation-lru-memoizer/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
+ "plugins/node/instrumentation-mongoose": {
"name": "@opentelemetry/instrumentation-mongoose",
- "version": "0.39.0",
+ "version": "0.43.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"expect": "29.2.0",
- "mocha": "7.2.0",
- "mongoose": "6.12.3",
+ "mongoose": "6.13.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38554,26 +37177,34 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "plugins/node/instrumentation-mongoose/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/instrumentation-runtime-node": {
"name": "@opentelemetry/instrumentation-runtime-node",
- "version": "0.5.0",
+ "version": "0.9.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/sdk-metrics": "^1.20.0",
"@types/mocha": "^10.0.6",
- "@types/node": "^20.11.2",
+ "@types/node": "18.18.14",
"mocha": "7.2.0",
"nyc": "^15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"engines": {
- "node": ">=14.10.0"
+ "node": ">=17.4.0"
},
"peerDependencies": {
"@opentelemetry/api": "^1.3.0"
@@ -38586,36 +37217,534 @@
"dev": true
},
"plugins/node/instrumentation-runtime-node/node_modules/@types/node": {
- "version": "20.11.20",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz",
- "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==",
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"undici-types": "~5.26.4"
}
},
+ "plugins/node/instrumentation-runtime-node/node_modules/ansi-colors": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz",
+ "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/chokidar": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz",
+ "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "anymatch": "~3.1.1",
+ "braces": "~3.0.2",
+ "glob-parent": "~5.1.0",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.2.0"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "optionalDependencies": {
+ "fsevents": "~2.1.1"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/cliui": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
+ "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "string-width": "^3.1.0",
+ "strip-ansi": "^5.2.0",
+ "wrap-ansi": "^5.1.0"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/debug": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
+ "deprecated": "Debug versions >=3.2.0 <3.2.7 || >=4 <4.3.1 have a low-severity ReDos regression when used in a Node.js environment. It is recommended you upgrade to 3.2.7 or 4.3.1. (https://github.com/visionmedia/debug/issues/797)",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ms": "^2.1.1"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/diff": {
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz",
+ "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "engines": {
+ "node": ">=0.3.1"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "locate-path": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/flat": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz",
+ "integrity": "sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==",
+ "dev": true,
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "is-buffer": "~2.0.3"
+ },
+ "bin": {
+ "flat": "cli.js"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/fsevents": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
+ "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
+ "dev": true,
+ "hasInstallScript": true,
+ "license": "MIT",
+ "optional": true,
+ "os": [
+ "darwin"
+ ],
+ "engines": {
+ "node": "^8.16.0 || ^10.6.0 || >=11.0.0"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/glob": {
+ "version": "7.1.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
+ "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
+ "deprecated": "Glob versions prior to v9 are no longer supported",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "is-glob": "^4.0.1"
+ },
+ "engines": {
+ "node": ">= 6"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/is-fullwidth-code-point": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+ "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/js-yaml": {
+ "version": "3.13.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
+ "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/log-symbols": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz",
+ "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "chalk": "^2.4.2"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/minimatch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/mkdirp": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "minimist": "^1.2.5"
+ },
+ "bin": {
+ "mkdirp": "bin/cmd.js"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/mocha": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz",
+ "integrity": "sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-colors": "3.2.3",
+ "browser-stdout": "1.3.1",
+ "chokidar": "3.3.0",
+ "debug": "3.2.6",
+ "diff": "3.5.0",
+ "escape-string-regexp": "1.0.5",
+ "find-up": "3.0.0",
+ "glob": "7.1.3",
+ "growl": "1.10.5",
+ "he": "1.2.0",
+ "js-yaml": "3.13.1",
+ "log-symbols": "3.0.0",
+ "minimatch": "3.0.4",
+ "mkdirp": "0.5.5",
+ "ms": "2.1.1",
+ "node-environment-flags": "1.0.6",
+ "object.assign": "4.1.0",
+ "strip-json-comments": "2.0.1",
+ "supports-color": "6.0.0",
+ "which": "1.3.1",
+ "wide-align": "1.1.3",
+ "yargs": "13.3.2",
+ "yargs-parser": "13.1.2",
+ "yargs-unparser": "1.6.0"
+ },
+ "bin": {
+ "_mocha": "bin/_mocha",
+ "mocha": "bin/mocha"
+ },
+ "engines": {
+ "node": ">= 8.10.0"
+ },
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/mochajs"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/ms": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
+ "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/object.assign": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
+ "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "define-properties": "^1.1.2",
+ "function-bind": "^1.1.1",
+ "has-symbols": "^1.0.0",
+ "object-keys": "^1.0.11"
+ },
+ "engines": {
+ "node": ">= 0.4"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "p-limit": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
+ "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/readdirp": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz",
+ "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "picomatch": "^2.0.4"
+ },
+ "engines": {
+ "node": ">= 8"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
+ "dev": true,
+ "license": "BSD-3-Clause"
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-regex": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/strip-json-comments": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
+ "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
+ "dev": true,
+ "license": "MIT",
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/supports-color": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz",
+ "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "has-flag": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "isexe": "^2.0.0"
+ },
+ "bin": {
+ "which": "bin/which"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/wrap-ansi": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
+ "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "ansi-styles": "^3.2.0",
+ "string-width": "^3.0.0",
+ "strip-ansi": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/y18n": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
+ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
+ "dev": true,
+ "license": "ISC"
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/yargs": {
+ "version": "13.3.2",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
+ "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "cliui": "^5.0.0",
+ "find-up": "^3.0.0",
+ "get-caller-file": "^2.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^2.0.0",
+ "set-blocking": "^2.0.0",
+ "string-width": "^3.0.0",
+ "which-module": "^2.0.0",
+ "y18n": "^4.0.0",
+ "yargs-parser": "^13.1.2"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/yargs-parser": {
+ "version": "13.1.2",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
+ "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
+ "dev": true,
+ "license": "ISC",
+ "dependencies": {
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ }
+ },
+ "plugins/node/instrumentation-runtime-node/node_modules/yargs-unparser": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz",
+ "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==",
+ "dev": true,
+ "license": "MIT",
+ "dependencies": {
+ "flat": "^4.1.0",
+ "lodash": "^4.17.15",
+ "yargs": "^13.3.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
"plugins/node/instrumentation-socket.io": {
"name": "@opentelemetry/instrumentation-socket.io",
- "version": "0.40.0",
+ "version": "0.43.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"expect": "27.4.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"socket.io": "^4.1.3",
"socket.io-client": "^4.1.3",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38647,6 +37776,15 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "plugins/node/instrumentation-socket.io/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/instrumentation-socket.io/node_modules/@types/yargs": {
"version": "16.0.9",
"resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.9.tgz",
@@ -38845,27 +37983,25 @@
},
"plugins/node/instrumentation-tedious": {
"name": "@opentelemetry/instrumentation-tedious",
- "version": "0.11.0",
+ "version": "0.15.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/tedious": "^4.0.10"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/tedious": "^4.0.14"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.6.0",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"tedious": "17.0.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -38875,6 +38011,15 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/instrumentation-tedious/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/instrumentation-tedious/node_modules/bl": {
"version": "6.0.12",
"resolved": "https://registry.npmjs.org/bl/-/bl-6.0.12.tgz",
@@ -38992,11 +38137,11 @@
},
"plugins/node/instrumentation-undici": {
"name": "@opentelemetry/instrumentation-undici",
- "version": "0.3.0",
+ "version": "0.7.1",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.7.0",
@@ -39004,13 +38149,11 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"semver": "^7.6.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
"undici": "6.11.1"
},
@@ -39021,29 +38164,36 @@
"@opentelemetry/api": "^1.7.0"
}
},
+ "plugins/node/instrumentation-undici/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-aws-lambda": {
"name": "@opentelemetry/instrumentation-aws-lambda",
- "version": "0.42.0",
+ "version": "0.47.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/propagator-aws-xray": "^1.3.1",
- "@opentelemetry/resources": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/aws-lambda": "8.10.122"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/aws-lambda": "8.10.143"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/propagator-aws-xray": "^1.25.1",
+ "@opentelemetry/propagator-aws-xray-lambda": "^0.53.0",
"@opentelemetry/sdk-metrics": "^1.8.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"engines": {
@@ -39053,39 +38203,48 @@
"@opentelemetry/api": "^1.3.0"
}
},
- "plugins/node/opentelemetry-instrumentation-aws-sdk": {
- "name": "@opentelemetry/instrumentation-aws-sdk",
- "version": "0.42.0",
+ "plugins/node/opentelemetry-instrumentation-aws-lambda/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
+ "plugins/node/opentelemetry-instrumentation-aws-sdk": {
+ "name": "@opentelemetry/instrumentation-aws-sdk",
+ "version": "0.46.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/propagation-utils": "^0.30.10",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/propagation-utils": "^0.30.12",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@aws-sdk/client-dynamodb": "3.85.0",
+ "@aws-sdk/client-kinesis": "3.85.0",
"@aws-sdk/client-lambda": "3.85.0",
"@aws-sdk/client-s3": "3.85.0",
"@aws-sdk/client-sns": "3.85.0",
"@aws-sdk/client-sqs": "3.85.0",
"@aws-sdk/types": "3.78.0",
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@smithy/node-http-handler": "2.4.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"aws-sdk": "2.1008.0",
"eslint": "8.7.0",
"expect": "29.2.0",
- "mocha": "7.2.0",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39101,32 +38260,39 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "plugins/node/opentelemetry-instrumentation-aws-sdk/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-bunyan": {
"name": "@opentelemetry/instrumentation-bunyan",
- "version": "0.39.0",
+ "version": "0.42.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/api-logs": "^0.52.0",
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/api-logs": "^0.54.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
"@types/bunyan": "1.8.9"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/resources": "^1.8.0",
- "@opentelemetry/sdk-logs": "^0.52.0",
+ "@opentelemetry/sdk-logs": "^0.54.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"bunyan": "1.8.15",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39136,38 +38302,37 @@
"@opentelemetry/api": "^1.3.0"
}
},
- "plugins/node/opentelemetry-instrumentation-bunyan/node_modules/@types/bunyan": {
- "version": "1.8.9",
- "resolved": "https://registry.npmjs.org/@types/bunyan/-/bunyan-1.8.9.tgz",
- "integrity": "sha512-ZqS9JGpBxVOvsawzmVt30sP++gSQMTejCkIAQ3VdadOcRE8izTyW66hufvwLeH+YEGP6Js2AW7Gz+RMyvrEbmw==",
+ "plugins/node/opentelemetry-instrumentation-bunyan/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
"dependencies": {
- "@types/node": "*"
+ "undici-types": "~5.26.4"
}
},
"plugins/node/opentelemetry-instrumentation-cassandra": {
"name": "@opentelemetry/instrumentation-cassandra-driver",
- "version": "0.39.0",
+ "version": "0.42.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "@types/sinon": "10.0.20",
"cassandra-driver": "4.6.4",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39177,14 +38342,23 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-cassandra/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-connect": {
"name": "@opentelemetry/instrumentation-connect",
- "version": "0.37.0",
+ "version": "0.40.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@types/connect": "3.4.36"
},
"devDependencies": {
@@ -39193,12 +38367,10 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"connect": "3.7.0",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"engines": {
@@ -39208,21 +38380,21 @@
"@opentelemetry/api": "^1.3.0"
}
},
- "plugins/node/opentelemetry-instrumentation-connect/node_modules/@types/connect": {
- "version": "3.4.36",
- "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz",
- "integrity": "sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==",
+ "plugins/node/opentelemetry-instrumentation-connect/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
"dependencies": {
- "@types/node": "*"
+ "undici-types": "~5.26.4"
}
},
"plugins/node/opentelemetry-instrumentation-dns": {
"name": "@opentelemetry/instrumentation-dns",
- "version": "0.37.0",
+ "version": "0.40.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "semver": "^7.5.4"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
@@ -39230,15 +38402,13 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
"@types/shimmer": "1.0.3",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39248,32 +38418,39 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-dns/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-express": {
"name": "@opentelemetry/instrumentation-express",
- "version": "0.40.1",
+ "version": "0.44.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
- "@types/express": "4.17.18",
+ "@types/express": "4.17.21",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "express": "4.19.2",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "express": "4.20.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39283,34 +38460,41 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-express/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-fastify": {
"name": "@opentelemetry/instrumentation-fastify",
- "version": "0.37.0",
+ "version": "0.41.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@fastify/express": "^3.0.0",
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation-http": "^0.52.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
- "@types/express": "4.17.18",
+ "@types/express": "4.17.21",
"@types/mocha": "7.0.2",
"@types/node": "18.15.3",
- "@types/semver": "7.5.5",
+ "@types/semver": "7.5.8",
"fastify": "4.18.0",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"semver": "^7.5.4",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39326,18 +38510,12 @@
"integrity": "sha512-p6ua9zBxz5otCmbpb5D3U4B5Nanw6Pk3PPyX05xnxbB/fRv71N7CPmORg7uAD5P70T0xmx1pzAx/FUfa5X+3cw==",
"dev": true
},
- "plugins/node/opentelemetry-instrumentation-fastify/node_modules/@types/semver": {
- "version": "7.5.5",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.5.tgz",
- "integrity": "sha512-+d+WYC1BxJ6yVOgUgzK8gWvp5qF8ssV5r4nsDcZWKRWcDQLQ619tvWAxJQYGgBrO1MnLJC7a5GtiYsAoQ47dJg==",
- "dev": true
- },
"plugins/node/opentelemetry-instrumentation-generic-pool": {
"name": "@opentelemetry/instrumentation-generic-pool",
- "version": "0.37.0",
+ "version": "0.40.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
@@ -39346,14 +38524,12 @@
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/generic-pool": "^3.1.9",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
"generic-pool": "3.8.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"typescript": "4.4.4"
},
"engines": {
@@ -39363,58 +38539,32 @@
"@opentelemetry/api": "^1.3.0"
}
},
- "plugins/node/opentelemetry-instrumentation-generic-pool/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "plugins/node/opentelemetry-instrumentation-generic-pool/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "plugins/node/opentelemetry-instrumentation-generic-pool/node_modules/semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
- "dev": true,
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
+ "undici-types": "~5.26.4"
}
},
- "plugins/node/opentelemetry-instrumentation-generic-pool/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
"plugins/node/opentelemetry-instrumentation-graphql": {
"name": "@opentelemetry/instrumentation-graphql",
- "version": "0.41.0",
+ "version": "0.44.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"graphql": "^16.5.0",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39430,30 +38580,37 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "plugins/node/opentelemetry-instrumentation-graphql/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-hapi": {
"name": "@opentelemetry/instrumentation-hapi",
- "version": "0.39.0",
+ "version": "0.42.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
- "@hapi/hapi": "21.3.3",
+ "@hapi/hapi": "21.3.10",
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"joi": "17.12.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39463,33 +38620,40 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-hapi/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-ioredis": {
"name": "@opentelemetry/instrumentation-ioredis",
- "version": "0.41.0",
+ "version": "0.44.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
"@opentelemetry/redis-common": "^0.36.2",
- "@opentelemetry/semantic-conventions": "^1.23.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/ioredis4": "npm:@types/ioredis@4.28.10",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"cross-env": "7.0.3",
"ioredis": "5.2.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39499,13 +38663,22 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-ioredis/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-knex": {
"name": "@opentelemetry/instrumentation-knex",
- "version": "0.37.0",
+ "version": "0.41.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
@@ -39513,13 +38686,11 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"knex": "0.95.9",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sqlite3": "5.1.6",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
+ "sqlite3": "5.1.7",
"typescript": "4.4.4"
},
"engines": {
@@ -39529,35 +38700,42 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-knex/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-koa": {
"name": "@opentelemetry/instrumentation-koa",
- "version": "0.41.0",
+ "version": "0.44.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/koa": "2.14.0",
- "@types/koa__router": "12.0.3"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
- "@koa/router": "12.0.0",
+ "@koa/router": "12.0.1",
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation-http": "^0.52.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@types/koa": "2.15.0",
+ "@types/koa__router": "12.0.4",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"koa": "2.13.1",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39567,29 +38745,36 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-koa/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-memcached": {
"name": "@opentelemetry/instrumentation-memcached",
- "version": "0.37.0",
+ "version": "0.40.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@types/memcached": "^2.2.6"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"cross-env": "7.0.3",
"memcached": "2.2.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"engines": {
@@ -39599,31 +38784,37 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-memcached/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-mongodb": {
"name": "@opentelemetry/instrumentation-mongodb",
- "version": "0.45.0",
+ "version": "0.48.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-metrics": "^1.9.1",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/sdk-metrics": "^1.9.1",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/bson": "4.0.5",
"@types/mocha": "7.0.2",
- "@types/mongodb": "3.6.20",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
- "mongodb": "6.5.0",
+ "@types/node": "18.18.14",
+ "mongodb": "6.8.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39633,6 +38824,15 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-mongodb/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-mongodb/node_modules/@types/whatwg-url": {
"version": "11.0.4",
"resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-11.0.4.tgz",
@@ -39657,9 +38857,9 @@
}
},
"plugins/node/opentelemetry-instrumentation-mongodb/node_modules/bson": {
- "version": "6.4.0",
- "resolved": "https://registry.npmjs.org/bson/-/bson-6.4.0.tgz",
- "integrity": "sha512-6/gSSEdbkuFlSb+ufj5jUSU4+wo8xQOwm2bDSqwmxiPE17JTpsP63eAwoN8iF8Oy4gJYj+PAL3zdRCTdaw5Y1g==",
+ "version": "6.8.0",
+ "resolved": "https://registry.npmjs.org/bson/-/bson-6.8.0.tgz",
+ "integrity": "sha512-iOJg8pr7wq2tg/zSlCCHMi3hMm5JTOxLTagf3zxhcenHsFp+c6uOs6K7W5UE7A4QIJGtqh/ZovFNMP4mOPJynQ==",
"dev": true,
"engines": {
"node": ">=16.20.1"
@@ -39713,13 +38913,13 @@
}
},
"plugins/node/opentelemetry-instrumentation-mongodb/node_modules/mongodb": {
- "version": "6.5.0",
- "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.5.0.tgz",
- "integrity": "sha512-Fozq68InT+JKABGLqctgtb8P56pRrJFkbhW0ux+x1mdHeyinor8oNzJqwLjV/t5X5nJGfTlluxfyMnOXNggIUA==",
+ "version": "6.8.0",
+ "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.8.0.tgz",
+ "integrity": "sha512-HGQ9NWDle5WvwMnrvUxsFYPd3JEbqD3RgABHBQRuoCEND0qzhsd0iH5ypHsf1eJ+sXmvmyKpP+FLOKY8Il7jMw==",
"dev": true,
"dependencies": {
"@mongodb-js/saslprep": "^1.1.5",
- "bson": "^6.4.0",
+ "bson": "^6.7.0",
"mongodb-connection-string-url": "^3.0.0"
},
"engines": {
@@ -39795,28 +38995,26 @@
},
"plugins/node/opentelemetry-instrumentation-mysql": {
"name": "@opentelemetry/instrumentation-mysql",
- "version": "0.39.0",
+ "version": "0.42.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mysql": "2.15.22"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mysql": "2.15.26"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-metrics": "^1.8.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"mysql": "2.18.1",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39826,30 +39024,37 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-mysql/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-mysql2": {
"name": "@opentelemetry/instrumentation-mysql2",
- "version": "0.39.0",
+ "version": "0.42.1",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@opentelemetry/sql-common": "^0.40.1"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "mocha": "7.2.0",
- "mysql2": "2.3.3",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "mysql2": "3.11.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39859,70 +39064,41 @@
"@opentelemetry/api": "^1.3.0"
}
},
- "plugins/node/opentelemetry-instrumentation-mysql2/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "plugins/node/opentelemetry-instrumentation-mysql2/node_modules/semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "plugins/node/opentelemetry-instrumentation-mysql2/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
+ "undici-types": "~5.26.4"
}
},
- "plugins/node/opentelemetry-instrumentation-mysql2/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
"plugins/node/opentelemetry-instrumentation-nestjs-core": {
"name": "@opentelemetry/instrumentation-nestjs-core",
- "version": "0.38.0",
+ "version": "0.41.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.23.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@nestjs/common": "9.4.3",
"@nestjs/core": "9.4.3",
- "@nestjs/microservices": "9.4.3",
- "@nestjs/platform-express": "9.4.3",
- "@nestjs/websockets": "9.4.3",
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
"cross-env": "7.0.3",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"reflect-metadata": "0.1.13",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"rxjs": "7.8.1",
"rxjs-compat": "6.6.7",
- "semver": "7.5.4",
+ "semver": "7.6.3",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39932,46 +39108,22 @@
"@opentelemetry/api": "^1.3.0"
}
},
- "plugins/node/opentelemetry-instrumentation-nestjs-core/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "plugins/node/opentelemetry-instrumentation-nestjs-core/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "plugins/node/opentelemetry-instrumentation-nestjs-core/node_modules/semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
- "dev": true,
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
+ "undici-types": "~5.26.4"
}
},
- "plugins/node/opentelemetry-instrumentation-nestjs-core/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
"plugins/node/opentelemetry-instrumentation-net": {
"name": "@opentelemetry/instrumentation-net",
- "version": "0.37.0",
+ "version": "0.40.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.23.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
@@ -39979,13 +39131,11 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -39995,36 +39145,44 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-net/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-pg": {
"name": "@opentelemetry/instrumentation-pg",
- "version": "0.42.0",
+ "version": "0.47.1",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/core": "^1.26.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "1.27.0",
"@opentelemetry/sql-common": "^0.40.1",
"@types/pg": "8.6.1",
- "@types/pg-pool": "2.0.4"
+ "@types/pg-pool": "2.0.6"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"cross-env": "7.0.3",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"pg": "8.7.1",
"pg-pool": "3.4.1",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"safe-stable-stringify": "^2.4.1",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -40034,30 +39192,40 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-pg/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-pino": {
"name": "@opentelemetry/instrumentation-pino",
- "version": "0.40.0",
+ "version": "0.43.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/api-logs": "^0.54.0",
+ "@opentelemetry/core": "^1.25.0",
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
"pino": "8.3.1",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -40067,64 +39235,38 @@
"@opentelemetry/api": "^1.3.0"
}
},
- "plugins/node/opentelemetry-instrumentation-pino/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "plugins/node/opentelemetry-instrumentation-pino/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "plugins/node/opentelemetry-instrumentation-pino/node_modules/semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
- "dev": true,
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
+ "undici-types": "~5.26.4"
}
},
- "plugins/node/opentelemetry-instrumentation-pino/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
"plugins/node/opentelemetry-instrumentation-redis": {
"name": "@opentelemetry/instrumentation-redis",
- "version": "0.40.0",
+ "version": "0.43.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
"@opentelemetry/redis-common": "^0.36.2",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"@types/redis": "2.8.32",
"cross-env": "7.0.3",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"redis": "3.1.2",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -40136,29 +39278,27 @@
},
"plugins/node/opentelemetry-instrumentation-redis-4": {
"name": "@opentelemetry/instrumentation-redis-4",
- "version": "0.40.0",
+ "version": "0.43.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
"@opentelemetry/redis-common": "^0.36.2",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/core": "^1.8.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"cross-env": "7.0.3",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"redis": "4.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -40168,6 +39308,15 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-redis-4/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-redis-4/node_modules/redis": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/redis/-/redis-4.1.0.tgz",
@@ -40182,14 +39331,23 @@
"@redis/time-series": "1.0.3"
}
},
+ "plugins/node/opentelemetry-instrumentation-redis/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-restify": {
"name": "@opentelemetry/instrumentation-restify",
- "version": "0.39.0",
+ "version": "0.42.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
@@ -40197,16 +39355,14 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/restify": "4.3.10",
- "@types/semver": "7.5.3",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/restify": "4.3.12",
+ "@types/semver": "7.5.8",
"nyc": "15.1.0",
"restify": "11.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"test-all-versions": "^6.0.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -40216,46 +39372,22 @@
"@opentelemetry/api": "^1.3.0"
}
},
- "plugins/node/opentelemetry-instrumentation-restify/node_modules/lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "plugins/node/opentelemetry-instrumentation-restify/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"dependencies": {
- "yallist": "^4.0.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "plugins/node/opentelemetry-instrumentation-restify/node_modules/semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
- "dev": true,
- "dependencies": {
- "lru-cache": "^6.0.0"
- },
- "bin": {
- "semver": "bin/semver.js"
- },
- "engines": {
- "node": ">=10"
+ "undici-types": "~5.26.4"
}
},
- "plugins/node/opentelemetry-instrumentation-restify/node_modules/yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
"plugins/node/opentelemetry-instrumentation-router": {
"name": "@opentelemetry/instrumentation-router",
- "version": "0.38.0",
+ "version": "0.41.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
@@ -40263,12 +39395,10 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"router": "1.3.8",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
@@ -40278,30 +39408,37 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-router/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/node/opentelemetry-instrumentation-winston": {
"name": "@opentelemetry/instrumentation-winston",
- "version": "0.38.0",
+ "version": "0.41.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/api-logs": "^0.52.0",
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/api-logs": "^0.54.0",
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.21.0",
"@opentelemetry/sdk-trace-base": "^1.21.0",
"@opentelemetry/sdk-trace-node": "^1.21.0",
- "@opentelemetry/winston-transport": "^0.4.0",
+ "@opentelemetry/winston-transport": "^0.7.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/triple-beam": "^1.3.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
"winston": "3.3.3",
"winston2": "npm:winston@2.4.7"
@@ -40313,27 +39450,36 @@
"@opentelemetry/api": "^1.3.0"
}
},
+ "plugins/node/opentelemetry-instrumentation-winston/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/web/opentelemetry-instrumentation-document-load": {
"name": "@opentelemetry/instrumentation-document-load",
- "version": "0.39.0",
+ "version": "0.41.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.0.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
"@opentelemetry/sdk-trace-web": "^1.15.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@babel/core": "7.22.17",
"@jsdevtools/coverage-istanbul-loader": "3.0.5",
"@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/sdk-trace-base": "^1.0.0",
"@rollup/plugin-commonjs": "^26.0.0",
"@rollup/plugin-node-resolve": "^15.2.3",
"@types/chai": "^4.3.10",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@web/dev-server-esbuild": "^1.0.1",
"@web/dev-server-rollup": "^0.6.1",
"@web/test-runner": "^0.18.0",
@@ -40354,42 +39500,48 @@
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
+ "plugins/web/opentelemetry-instrumentation-document-load/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
"plugins/web/opentelemetry-instrumentation-long-task": {
"name": "@opentelemetry/instrumentation-long-task",
- "version": "0.39.0",
+ "version": "0.41.0",
"license": "Apache-2.0",
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-web": "^1.8.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@babel/core": "7.24.6",
"@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-web": "^1.8.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0",
"zone.js": "^0.11.4 || ^0.13.0 || ^0.14.0"
@@ -40455,359 +39607,188 @@
"integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
"dev": true
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
+ "plugins/web/opentelemetry-instrumentation-long-task/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"dependencies": {
- "@types/sinonjs__fake-timers": "*"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/chalk/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
- "dev": true,
- "funding": [
- {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
- }
- ],
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
+ "undici-types": "~5.26.4"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
"plugins/web/opentelemetry-instrumentation-long-task/node_modules/convert-source-map": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
"integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"plugins/web/opentelemetry-instrumentation-long-task/node_modules/diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true,
"engines": {
"node": ">=0.3.1"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
+ "plugins/web/opentelemetry-instrumentation-long-task/node_modules/sinon": {
+ "version": "15.1.2",
+ "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
+ "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ "deprecated": "16.1.1",
"dev": true,
"dependencies": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true,
- "engines": {
- "node": ">=10"
+ "@sinonjs/commons": "^3.0.0",
+ "@sinonjs/fake-timers": "^10.1.0",
+ "@sinonjs/samsam": "^8.0.0",
+ "diff": "^5.1.0",
+ "nise": "^5.1.4",
+ "supports-color": "^7.2.0"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true,
- "engines": {
- "node": ">=0.8.x"
+ "type": "opencollective",
+ "url": "https://opencollective.com/sinon"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/glob": {
+ "plugins/web/opentelemetry-instrumentation-long-task/node_modules/sinon/node_modules/supports-color": {
"version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
+ "has-flag": "^4.0.0"
},
"engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
+ "node": ">=8"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
+ "plugins/web/opentelemetry-instrumentation-user-interaction": {
+ "name": "@opentelemetry/instrumentation-user-interaction",
+ "version": "0.41.0",
+ "license": "Apache-2.0",
"dependencies": {
- "is-glob": "^4.0.1"
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-web": "^1.8.0"
},
- "engines": {
- "node": ">= 6"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/glob/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
+ "devDependencies": {
+ "@babel/core": "7.24.6",
+ "@babel/preset-env": "7.24.6",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-zone-peer-dep": "^1.8.0",
+ "@opentelemetry/instrumentation-xml-http-request": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@types/jquery": "3.5.30",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "@types/webpack-env": "1.16.3",
+ "assert": "2.0.0",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
+ "karma-chrome-launcher": "3.1.0",
+ "karma-coverage": "2.2.1",
+ "karma-jquery": "0.2.4",
+ "karma-mocha": "2.0.1",
+ "karma-spec-reporter": "0.0.36",
+ "karma-webpack": "5.0.1",
+ "nyc": "15.1.0",
+ "sinon": "15.1.2",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4",
+ "webpack": "5.94.0",
+ "webpack-cli": "5.1.4",
+ "webpack-merge": "5.10.0",
+ "zone.js": "^0.11.4 || ^0.13.0 || ^0.14.0"
},
"engines": {
- "node": "*"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
- "dev": true,
- "engines": {
- "node": ">=8"
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": "^1.3.0",
+ "zone.js": "^0.11.4 || ^0.13.0 || ^0.14.0"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/@babel/core": {
+ "version": "7.24.6",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
+ "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
"dev": true,
"dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.24.6",
+ "@babel/generator": "^7.24.6",
+ "@babel/helper-compilation-targets": "^7.24.6",
+ "@babel/helper-module-transforms": "^7.24.6",
+ "@babel/helpers": "^7.24.6",
+ "@babel/parser": "^7.24.6",
+ "@babel/template": "^7.24.6",
+ "@babel/traverse": "^7.24.6",
+ "@babel/types": "^7.24.6",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
},
"engines": {
- "node": ">=10"
+ "node": ">=6.9.0"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+ "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/@babel/core/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true,
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=10"
+ "bin": {
+ "semver": "bin/semver.js"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/minimatch/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/@sinonjs/commons": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
+ "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
"dev": true,
"dependencies": {
- "balanced-match": "^1.0.0"
+ "type-detect": "4.0.8"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
+ "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
+ "dev": true
+ },
+ "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"dependencies": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
- },
- "bin": {
- "_mocha": "bin/_mocha",
- "mocha": "bin/mocha.js"
- },
- "engines": {
- "node": ">= 14.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/mochajs"
+ "undici-types": "~5.26.4"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
- "dev": true,
- "bin": {
- "nanoid": "bin/nanoid.cjs"
- },
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+ "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true,
- "dependencies": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- },
"engines": {
- "node": ">= 10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
+ "node": ">=0.3.1"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/sinon": {
+ "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/sinon": {
"version": "15.1.2",
"resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
"integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
@@ -40826,16 +39807,7 @@
"url": "https://opencollective.com/sinon"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/sinon/node_modules/diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
- "dev": true,
- "engines": {
- "node": ">=0.3.1"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/sinon/node_modules/supports-color": {
+ "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/sinon/node_modules/supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
@@ -40847,176 +39819,58 @@
"node": ">=8"
}
},
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true,
- "engines": {
- "node": ">= 8"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
- },
- "engines": {
- "node": ">=12.0.0"
- },
- "peerDependencies": {
- "typescript": "*",
- "webpack": "^5.0.0"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
- "dev": true,
- "dependencies": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
- },
- "bin": {
- "webpack": "bin/webpack.js"
- },
- "engines": {
- "node": ">=10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- },
- "peerDependenciesMeta": {
- "webpack-cli": {
- "optional": true
- }
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "dev": true,
- "dependencies": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "plugins/web/opentelemetry-instrumentation-long-task/node_modules/yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
- "dev": true,
- "dependencies": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "plugins/web/opentelemetry-instrumentation-user-interaction": {
- "name": "@opentelemetry/instrumentation-user-interaction",
- "version": "0.39.0",
+ "plugins/web/opentelemetry-plugin-react-load": {
+ "name": "@opentelemetry/plugin-react-load",
+ "version": "0.31.0",
"license": "Apache-2.0",
"dependencies": {
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-web": "^1.8.0"
+ "@opentelemetry/core": "^1.0.0",
+ "shimmer": "^1.2.1"
},
"devDependencies": {
"@babel/core": "7.24.6",
"@babel/preset-env": "7.24.6",
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-zone-peer-dep": "^1.8.0",
- "@opentelemetry/instrumentation-xml-http-request": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@types/jquery": "3.5.30",
+ "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/propagator-b3": "^1.26.0",
+ "@opentelemetry/sdk-trace-base": "^1.0.0",
+ "@opentelemetry/sdk-trace-web": "^1.0.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/react": "17.0.80",
+ "@types/react-addons-test-utils": "0.14.26",
+ "@types/react-dom": "18.0.2",
+ "@types/shimmer": "1.0.3",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
- "karma-jquery": "0.2.4",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
+ "react": "17.0.2",
+ "react-dom": "17.0.2",
+ "rimraf": "5.0.10",
"sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
- "webpack-merge": "5.10.0",
- "zone.js": "^0.11.4 || ^0.13.0 || ^0.14.0"
+ "webpack-merge": "5.10.0"
},
"engines": {
"node": ">=14"
},
"peerDependencies": {
- "@opentelemetry/api": "^1.3.0",
- "zone.js": "^0.11.4 || ^0.13.0 || ^0.14.0"
+ "@opentelemetry/api": "^1.0.0",
+ "react": "^16.13.1 || ^17.0.0"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/@babel/core": {
+ "plugins/web/opentelemetry-plugin-react-load/node_modules/@babel/core": {
"version": "7.24.6",
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
"integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
@@ -41046,7 +39900,7 @@
"url": "https://opencollective.com/babel"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/@babel/core/node_modules/semver": {
+ "plugins/web/opentelemetry-plugin-react-load/node_modules/@babel/core/node_modules/semver": {
"version": "6.3.1",
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
"integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
@@ -41055,7 +39909,7 @@
"semver": "bin/semver.js"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/@sinonjs/commons": {
+ "plugins/web/opentelemetry-plugin-react-load/node_modules/@sinonjs/commons": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
"integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
@@ -41064,370 +39918,428 @@
"type-detect": "4.0.8"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/@types/mocha": {
+ "plugins/web/opentelemetry-plugin-react-load/node_modules/@types/mocha": {
"version": "10.0.6",
"resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
"integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
"dev": true
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
+ "plugins/web/opentelemetry-plugin-react-load/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"dependencies": {
- "@types/sinonjs__fake-timers": "*"
+ "undici-types": "~5.26.4"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
+ "plugins/web/opentelemetry-plugin-react-load/node_modules/convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true
+ },
+ "plugins/web/opentelemetry-plugin-react-load/node_modules/diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true,
"engines": {
- "node": ">=6"
+ "node": ">=0.3.1"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "plugins/web/opentelemetry-plugin-react-load/node_modules/sinon": {
+ "version": "15.1.2",
+ "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
+ "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ "deprecated": "16.1.1",
"dev": true,
"dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
+ "@sinonjs/commons": "^3.0.0",
+ "@sinonjs/fake-timers": "^10.1.0",
+ "@sinonjs/samsam": "^8.0.0",
+ "diff": "^5.1.0",
+ "nise": "^5.1.4",
+ "supports-color": "^7.2.0"
},
"funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ "type": "opencollective",
+ "url": "https://opencollective.com/sinon"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "plugins/web/opentelemetry-plugin-react-load/node_modules/sinon/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
- "engines": {
- "node": ">=10"
+ "dependencies": {
+ "has-flag": "^4.0.0"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "engines": {
+ "node": ">=8"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
+ "propagators/opentelemetry-propagator-grpc-census-binary": {
+ "name": "@opentelemetry/propagator-grpc-census-binary",
+ "version": "0.27.2",
+ "extraneous": true,
+ "license": "Apache-2.0",
+ "devDependencies": {
+ "@opentelemetry/api": "^1.0.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.6.5",
+ "grpc": "1.24.11",
+ "mocha": "7.2.0",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.5",
+ "ts-loader": "8.3.0",
+ "ts-mocha": "10.0.0",
+ "typescript": "4.4.4"
},
"engines": {
- "node": ">=10"
+ "node": ">=14"
},
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
+ "peerDependencies": {
+ "@opentelemetry/api": "^1.0.0"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/chalk/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
+ "propagators/opentelemetry-propagator-instana": {
+ "name": "@opentelemetry/propagator-instana",
+ "version": "0.3.2",
+ "license": "Apache-2.0",
+ "devDependencies": {
+ "@babel/core": "7.24.6",
+ "@babel/preset-env": "7.24.6",
+ "@opentelemetry/api": "^1.0.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "@types/webpack-env": "1.16.3",
+ "assert": "2.0.0",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
+ "karma-chrome-launcher": "3.1.0",
+ "karma-coverage": "2.2.1",
+ "karma-mocha": "2.0.1",
+ "karma-spec-reporter": "0.0.36",
+ "karma-webpack": "5.0.1",
+ "nyc": "15.1.0",
+ "process": "0.11.10",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4",
+ "webpack": "5.94.0",
+ "webpack-cli": "5.1.4",
+ "webpack-merge": "5.10.0"
},
"engines": {
- "node": ">=8"
+ "node": ">=8.12.0"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": "^1.0.0"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
+ "propagators/opentelemetry-propagator-instana/node_modules/@babel/core": {
+ "version": "7.24.6",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
+ "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
"dev": true,
- "funding": [
- {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
- }
- ],
"dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.24.6",
+ "@babel/generator": "^7.24.6",
+ "@babel/helper-compilation-targets": "^7.24.6",
+ "@babel/helper-module-transforms": "^7.24.6",
+ "@babel/helpers": "^7.24.6",
+ "@babel/parser": "^7.24.6",
+ "@babel/template": "^7.24.6",
+ "@babel/traverse": "^7.24.6",
+ "@babel/types": "^7.24.6",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
},
"engines": {
- "node": ">= 8.10.0"
+ "node": ">=6.9.0"
},
- "optionalDependencies": {
- "fsevents": "~2.3.2"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "propagators/opentelemetry-propagator-instana/node_modules/@babel/core/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
+ "bin": {
+ "semver": "bin/semver.js"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "propagators/opentelemetry-propagator-instana/node_modules/@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
"dev": true
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/convert-source-map": {
+ "propagators/opentelemetry-propagator-instana/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "dependencies": {
+ "undici-types": "~5.26.4"
+ }
+ },
+ "propagators/opentelemetry-propagator-instana/node_modules/convert-source-map": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
"integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
- "dev": true,
- "engines": {
- "node": ">=10"
+ "propagators/opentelemetry-propagator-ot-trace": {
+ "name": "@opentelemetry/propagator-ot-trace",
+ "version": "0.27.2",
+ "license": "Apache-2.0",
+ "devDependencies": {
+ "@babel/core": "7.24.6",
+ "@babel/preset-env": "7.24.6",
+ "@opentelemetry/api": "^1.0.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "@types/webpack-env": "1.16.3",
+ "assert": "2.0.0",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
+ "karma-chrome-launcher": "3.1.0",
+ "karma-coverage": "2.2.1",
+ "karma-mocha": "2.0.1",
+ "karma-spec-reporter": "0.0.36",
+ "karma-webpack": "5.0.1",
+ "nyc": "15.1.0",
+ "sinon": "15.1.2",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4",
+ "webpack": "5.94.0",
+ "webpack-cli": "5.1.4",
+ "webpack-merge": "5.10.0"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
- "dev": true,
"engines": {
- "node": ">=0.3.1"
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": "^1.0.0"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
+ "propagators/opentelemetry-propagator-ot-trace/node_modules/@babel/core": {
+ "version": "7.24.6",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
+ "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
"dev": true,
"dependencies": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.24.6",
+ "@babel/generator": "^7.24.6",
+ "@babel/helper-compilation-targets": "^7.24.6",
+ "@babel/helper-module-transforms": "^7.24.6",
+ "@babel/helpers": "^7.24.6",
+ "@babel/parser": "^7.24.6",
+ "@babel/template": "^7.24.6",
+ "@babel/traverse": "^7.24.6",
+ "@babel/types": "^7.24.6",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
},
"engines": {
- "node": ">=10.13.0"
- }
- },
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true,
- "engines": {
- "node": ">=10"
+ "node": ">=6.9.0"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "type": "opencollective",
+ "url": "https://opencollective.com/babel"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+ "propagators/opentelemetry-propagator-ot-trace/node_modules/@babel/core/node_modules/semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true,
- "engines": {
- "node": ">=0.8.x"
+ "bin": {
+ "semver": "bin/semver.js"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
+ "propagators/opentelemetry-propagator-ot-trace/node_modules/@sinonjs/commons": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
+ "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
"dev": true,
"dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
+ "type-detect": "4.0.8"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
+ "propagators/opentelemetry-propagator-ot-trace/node_modules/@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
+ "dev": true
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/glob/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "propagators/opentelemetry-propagator-ot-trace/node_modules/@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
+ "undici-types": "~5.26.4"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
+ "propagators/opentelemetry-propagator-ot-trace/node_modules/convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true
+ },
+ "propagators/opentelemetry-propagator-ot-trace/node_modules/diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true,
"engines": {
- "node": ">=8"
+ "node": ">=0.3.1"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ "propagators/opentelemetry-propagator-ot-trace/node_modules/sinon": {
+ "version": "15.1.2",
+ "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
+ "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ "deprecated": "16.1.1",
"dev": true,
"dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
+ "@sinonjs/commons": "^3.0.0",
+ "@sinonjs/fake-timers": "^10.1.0",
+ "@sinonjs/samsam": "^8.0.0",
+ "diff": "^5.1.0",
+ "nise": "^5.1.4",
+ "supports-color": "^7.2.0"
},
"funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "type": "opencollective",
+ "url": "https://opencollective.com/sinon"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+ "propagators/opentelemetry-propagator-ot-trace/node_modules/sinon/node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"dependencies": {
- "brace-expansion": "^2.0.1"
+ "has-flag": "^4.0.0"
},
"engines": {
- "node": ">=10"
+ "node": ">=8"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/minimatch/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0"
+ "propagators/propagator-aws-xray": {
+ "name": "@opentelemetry/propagator-aws-xray",
+ "version": "1.26.0",
+ "license": "Apache-2.0",
+ "devDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0",
+ "@opentelemetry/core": "^1.0.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.6.5",
+ "@types/sinon": "10.0.20",
+ "@types/webpack-env": "1.16.3",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
+ "karma-chrome-launcher": "3.1.0",
+ "karma-coverage": "2.2.1",
+ "karma-mocha": "2.0.1",
+ "karma-spec-reporter": "0.0.36",
+ "karma-webpack": "5.0.1",
+ "lerna": "6.6.2",
+ "nyc": "15.1.0",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4",
+ "webpack": "5.95.0",
+ "webpack-cli": "5.1.4",
+ "webpack-merge": "5.10.0"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
- "dev": true,
+ "propagators/propagator-aws-xray-lambda": {
+ "name": "@opentelemetry/propagator-aws-xray-lambda",
+ "version": "0.53.0",
+ "license": "Apache-2.0",
"dependencies": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
+ "@opentelemetry/propagator-aws-xray": "^1.26.0"
},
- "bin": {
- "_mocha": "bin/_mocha",
- "mocha": "bin/mocha.js"
+ "devDependencies": {
+ "@babel/core": "^7.21.8",
+ "@babel/preset-env": "7.24.6",
+ "@opentelemetry/api": "1.9.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.6.5",
+ "@types/sinon": "10.0.20",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "lerna": "6.6.2",
+ "nyc": "15.1.0",
+ "sinon": "15.1.2",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4"
},
"engines": {
- "node": ">= 14.0.0"
+ "node": ">=14"
},
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/mochajs"
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.3.0 <1.10.0"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- },
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+ "propagators/propagator-aws-xray-lambda/node_modules/@sinonjs/commons": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
+ "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
"dev": true,
- "bin": {
- "nanoid": "bin/nanoid.cjs"
- },
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ "license": "BSD-3-Clause",
+ "dependencies": {
+ "type-detect": "4.0.8"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+ "propagators/propagator-aws-xray-lambda/node_modules/@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "propagators/propagator-aws-xray-lambda/node_modules/diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true,
- "dependencies": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- },
"engines": {
- "node": ">= 10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
+ "node": ">=0.3.1"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/sinon": {
+ "propagators/propagator-aws-xray-lambda/node_modules/sinon": {
"version": "15.1.2",
"resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
"integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
"deprecated": "16.1.1",
"dev": true,
+ "license": "BSD-3-Clause",
"dependencies": {
"@sinonjs/commons": "^3.0.0",
"@sinonjs/fake-timers": "^10.1.0",
@@ -41441,20 +40353,12 @@
"url": "https://opencollective.com/sinon"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/sinon/node_modules/diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
- "dev": true,
- "engines": {
- "node": ">=0.3.1"
- }
- },
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/sinon/node_modules/supports-color": {
+ "propagators/propagator-aws-xray-lambda/node_modules/sinon/node_modules/supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
"integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
+ "license": "MIT",
"dependencies": {
"has-flag": "^4.0.0"
},
@@ -41462,73 +40366,77 @@
"node": ">=8"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "propagators/propagator-aws-xray/node_modules/@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
"dev": true,
- "engines": {
- "node": ">= 8"
- }
+ "license": "MIT"
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "propagators/propagator-aws-xray/node_modules/events": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
+ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
"dev": true,
+ "license": "MIT",
"engines": {
- "node": ">=6"
+ "node": ">=0.8.x"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
+ "propagators/propagator-aws-xray/node_modules/json-parse-even-better-errors": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
+ "dev": true,
+ "license": "MIT"
+ },
+ "propagators/propagator-aws-xray/node_modules/schema-utils": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
+ "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
"dev": true,
+ "license": "MIT",
"dependencies": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
+ "@types/json-schema": "^7.0.8",
+ "ajv": "^6.12.5",
+ "ajv-keywords": "^3.5.2"
},
"engines": {
- "node": ">=12.0.0"
+ "node": ">= 10.13.0"
},
- "peerDependencies": {
- "typescript": "*",
- "webpack": "^5.0.0"
+ "funding": {
+ "type": "opencollective",
+ "url": "https://opencollective.com/webpack"
}
},
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
+ "propagators/propagator-aws-xray/node_modules/webpack": {
+ "version": "5.95.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.95.0.tgz",
+ "integrity": "sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==",
"dev": true,
"dependencies": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
+ "@types/estree": "^1.0.5",
+ "@webassemblyjs/ast": "^1.12.1",
+ "@webassemblyjs/wasm-edit": "^1.12.1",
+ "@webassemblyjs/wasm-parser": "^1.12.1",
"acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
+ "acorn-import-attributes": "^1.9.5",
+ "browserslist": "^4.21.10",
"chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
+ "enhanced-resolve": "^5.17.1",
"es-module-lexer": "^1.2.1",
"eslint-scope": "5.1.1",
"events": "^3.2.0",
"glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
+ "graceful-fs": "^4.2.11",
"json-parse-even-better-errors": "^2.3.1",
"loader-runner": "^4.2.0",
"mime-types": "^2.1.27",
"neo-async": "^2.6.2",
"schema-utils": "^3.2.0",
"tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
+ "terser-webpack-plugin": "^5.3.10",
+ "watchpack": "^2.4.1",
"webpack-sources": "^3.2.3"
},
"bin": {
@@ -41546,2021 +40454,2093 @@
"optional": true
}
}
- },
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+ }
+ },
+ "dependencies": {
+ "@75lb/deep-merge": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@75lb/deep-merge/-/deep-merge-1.1.1.tgz",
+ "integrity": "sha512-xvgv6pkMGBA6GwdyJbNAnDmfAIR/DfWhrj9jgWh3TY7gRm3KO46x/GPjRg6wJ0nOepwqrNxFfojebh0Df4h4Tw==",
"dev": true,
- "dependencies": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "plugins/web/opentelemetry-instrumentation-user-interaction/node_modules/yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
- "dev": true,
- "dependencies": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load": {
- "name": "@opentelemetry/plugin-react-load",
- "version": "0.30.1",
- "license": "Apache-2.0",
- "dependencies": {
- "@opentelemetry/context-zone": "^1.0.0",
- "@opentelemetry/core": "^1.0.0",
- "@opentelemetry/sdk-trace-base": "^1.0.0",
- "@opentelemetry/sdk-trace-web": "^1.0.0",
- "shimmer": "^1.2.1"
- },
- "devDependencies": {
- "@babel/core": "7.24.6",
- "@babel/preset-env": "7.24.6",
- "@opentelemetry/api": "^1.0.0",
- "@opentelemetry/propagator-b3": "1.25.0",
- "@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/react": "17.0.67",
- "@types/react-addons-test-utils": "0.14.26",
- "@types/react-dom": "18.0.2",
- "@types/shimmer": "1.0.3",
- "@types/sinon": "17.0.3",
- "@types/webpack-env": "1.16.3",
- "assert": "2.0.0",
- "babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "karma": "6.4.3",
- "karma-chrome-launcher": "3.1.0",
- "karma-coverage": "2.2.1",
- "karma-mocha": "2.0.1",
- "karma-spec-reporter": "0.0.36",
- "karma-webpack": "5.0.1",
- "mocha": "10.2.0",
- "nyc": "15.1.0",
- "react": "17.0.2",
- "react-dom": "17.0.2",
- "rimraf": "5.0.5",
- "sinon": "15.1.2",
- "ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4",
- "webpack": "5.89.0",
- "webpack-cli": "5.1.4",
- "webpack-merge": "5.10.0"
- },
- "engines": {
- "node": ">=14"
- },
- "peerDependencies": {
- "@opentelemetry/api": "^1.0.0",
- "react": "^16.13.1 || ^17.0.0"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/@babel/core": {
- "version": "7.24.6",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
- "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
- "dev": true,
- "dependencies": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.24.6",
- "@babel/generator": "^7.24.6",
- "@babel/helper-compilation-targets": "^7.24.6",
- "@babel/helper-module-transforms": "^7.24.6",
- "@babel/helpers": "^7.24.6",
- "@babel/parser": "^7.24.6",
- "@babel/template": "^7.24.6",
- "@babel/traverse": "^7.24.6",
- "@babel/types": "^7.24.6",
- "convert-source-map": "^2.0.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.3",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
+ "requires": {
+ "lodash.assignwith": "^4.2.0",
+ "typical": "^7.1.1"
},
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/babel"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/@babel/core/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true,
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/@sinonjs/commons": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
- "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
- "dev": true,
"dependencies": {
- "type-detect": "4.0.8"
+ "typical": {
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/typical/-/typical-7.1.1.tgz",
+ "integrity": "sha512-T+tKVNs6Wu7IWiAce5BgMd7OZfNYUndHwc5MknN+UHOudi7sGZzuHdCadllRuqJ3fPtgFtIH9+lt9qRv6lmpfA==",
+ "dev": true
+ }
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/@types/mocha": {
- "version": "10.0.6",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
- "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
+ "@aashutoshrathi/word-wrap": {
+ "version": "1.2.6",
+ "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz",
+ "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==",
"dev": true
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
- "dev": true,
- "dependencies": {
- "@types/sinonjs__fake-timers": "*"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
+ "@ampproject/remapping": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/@ampproject/remapping/-/remapping-2.2.1.tgz",
+ "integrity": "sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg==",
"dev": true,
- "engines": {
- "node": ">=6"
+ "requires": {
+ "@jridgewell/gen-mapping": "^0.3.0",
+ "@jridgewell/trace-mapping": "^0.3.9"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "@aws-crypto/crc32": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-2.0.0.tgz",
+ "integrity": "sha512-TvE1r2CUueyXOuHdEigYjIZVesInd9KN+K/TFFNfkkxRThiNxO6i4ZqqAVMoEjAamZZ1AA8WXJkjCz7YShHPQA==",
"dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
+ "requires": {
+ "@aws-crypto/util": "^2.0.0",
+ "@aws-sdk/types": "^3.1.0",
+ "tslib": "^1.11.1"
},
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ }
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "@aws-crypto/crc32c": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-2.0.0.tgz",
+ "integrity": "sha512-vF0eMdMHx3O3MoOXUfBZry8Y4ZDtcuskjjKgJz8YfIDjLStxTZrYXk+kZqtl6A0uCmmiN/Eb/JbC/CndTV1MHg==",
"dev": true,
- "engines": {
- "node": ">=10"
+ "requires": {
+ "@aws-crypto/util": "^2.0.0",
+ "@aws-sdk/types": "^3.1.0",
+ "tslib": "^1.11.1"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
"dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ }
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/chalk/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "@aws-crypto/ie11-detection": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-2.0.2.tgz",
+ "integrity": "sha512-5XDMQY98gMAf/WRTic5G++jfmS/VLM0rwpiOpaainKi4L0nqWMSB1SzsrEG5rjFZGYN6ZAefO+/Yta2dFM0kMw==",
"dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
+ "requires": {
+ "tslib": "^1.11.1"
},
- "engines": {
- "node": ">=8"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
- "dev": true,
- "funding": [
- {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
- }
- ],
"dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ }
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "@aws-crypto/sha1-browser": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-2.0.0.tgz",
+ "integrity": "sha512-3fIVRjPFY8EG5HWXR+ZJZMdWNRpwbxGzJ9IH9q93FpbgCH8u8GHRi46mZXp3cYD7gealmyqpm3ThZwLKJjWJhA==",
"dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
+ "requires": {
+ "@aws-crypto/ie11-detection": "^2.0.0",
+ "@aws-crypto/supports-web-crypto": "^2.0.0",
+ "@aws-sdk/types": "^3.1.0",
+ "@aws-sdk/util-locate-window": "^3.0.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
},
- "engines": {
- "node": ">=7.0.0"
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ }
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/convert-source-map": {
+ "@aws-crypto/sha256-browser": {
"version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-2.0.0.tgz",
+ "integrity": "sha512-rYXOQ8BFOaqMEHJrLHul/25ckWH6GTJtdLSajhlqGMx0PmSueAuvboCuZCTqEKlxR8CQOwRarxYMZZSYlhRA1A==",
"dev": true,
- "engines": {
- "node": ">=10"
+ "requires": {
+ "@aws-crypto/ie11-detection": "^2.0.0",
+ "@aws-crypto/sha256-js": "^2.0.0",
+ "@aws-crypto/supports-web-crypto": "^2.0.0",
+ "@aws-crypto/util": "^2.0.0",
+ "@aws-sdk/types": "^3.1.0",
+ "@aws-sdk/util-locate-window": "^3.0.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
- "dev": true,
- "engines": {
- "node": ">=0.3.1"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
- "dev": true,
"dependencies": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- },
- "engines": {
- "node": ">=10.13.0"
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ }
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+ "@aws-crypto/sha256-js": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-2.0.0.tgz",
+ "integrity": "sha512-VZY+mCY4Nmrs5WGfitmNqXzaE873fcIZDu54cbaDaaamsaTOP1DBImV9F4pICc3EHjQXujyE8jig+PFCaew9ig==",
"dev": true,
- "engines": {
- "node": ">=10"
+ "requires": {
+ "@aws-crypto/util": "^2.0.0",
+ "@aws-sdk/types": "^3.1.0",
+ "tslib": "^1.11.1"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true,
- "engines": {
- "node": ">=0.8.x"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
- "dev": true,
"dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ }
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "@aws-crypto/supports-web-crypto": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.2.tgz",
+ "integrity": "sha512-6mbSsLHwZ99CTOOswvCRP3C+VCWnzBf+1SnbWxzzJ9lR0mA0JnY2JEAhp8rqmTE0GPFy88rrM27ffgp62oErMQ==",
"dev": true,
- "dependencies": {
- "is-glob": "^4.0.1"
+ "requires": {
+ "tslib": "^1.11.1"
},
- "engines": {
- "node": ">= 6"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/glob/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
"dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
- "dev": true,
- "engines": {
- "node": ">=8"
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ }
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ "@aws-crypto/util": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-2.0.2.tgz",
+ "integrity": "sha512-Lgu5v/0e/BcrZ5m/IWqzPUf3UYFTy/PpeED+uc9SWUR1iZQL8XXbGQg10UfllwwBryO3hFF5dizK+78aoXC1eA==",
"dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
+ "requires": {
+ "@aws-sdk/types": "^3.110.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
},
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "dependencies": {
+ "@aws-sdk/types": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
+ "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
+ "dev": true,
+ "requires": {
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.6.2",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
+ "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==",
+ "dev": true
+ }
+ }
+ },
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ }
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+ "@aws-sdk/abort-controller": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.78.0.tgz",
+ "integrity": "sha512-iz1YLwM2feJUj/y97yO4XmDeTxs+yZ1XJwQgoawKuc8IDBKUutnJNCHL5jL04WUKU7Nrlq+Hr2fCTScFh2z9zg==",
"dev": true,
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=10"
+ "requires": {
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/minimatch/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "@aws-sdk/chunked-blob-reader": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader/-/chunked-blob-reader-3.55.0.tgz",
+ "integrity": "sha512-o/xjMCq81opAjSBjt7YdHJwIJcGVG5XIV9+C2KXcY5QwVimkOKPybWTv0mXPvSwSilSx+EhpLNhkcJuXdzhw4w==",
"dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0"
+ "requires": {
+ "tslib": "^2.3.1"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
+ "@aws-sdk/chunked-blob-reader-native": {
+ "version": "3.58.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader-native/-/chunked-blob-reader-native-3.58.0.tgz",
+ "integrity": "sha512-+D3xnPD5985iphgAqgUerBDs371a2WzzoEVi7eHJUMMsP/gEnSTdSH0HNxsqhYv6CW4EdKtvDAQdAwA1VtCf2A==",
"dev": true,
- "dependencies": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
- },
- "bin": {
- "_mocha": "bin/_mocha",
- "mocha": "bin/mocha.js"
- },
- "engines": {
- "node": ">= 14.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/mochajs"
+ "requires": {
+ "@aws-sdk/util-base64-browser": "3.58.0",
+ "tslib": "^2.3.1"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+ "@aws-sdk/client-cognito-identity": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.521.0.tgz",
+ "integrity": "sha512-UomYWcCpM7OZUt1BDlY3guO6mnA4VXzMkNjFbVtWibKQkk4LhcIUXb6SxWSw/gujIrlOZywldjyj8bL6V374IQ==",
"dev": true,
- "bin": {
- "nanoid": "bin/nanoid.cjs"
+ "optional": true,
+ "requires": {
+ "@aws-crypto/sha256-browser": "3.0.0",
+ "@aws-crypto/sha256-js": "3.0.0",
+ "@aws-sdk/client-sts": "3.521.0",
+ "@aws-sdk/core": "3.521.0",
+ "@aws-sdk/credential-provider-node": "3.521.0",
+ "@aws-sdk/middleware-host-header": "3.521.0",
+ "@aws-sdk/middleware-logger": "3.521.0",
+ "@aws-sdk/middleware-recursion-detection": "3.521.0",
+ "@aws-sdk/middleware-user-agent": "3.521.0",
+ "@aws-sdk/region-config-resolver": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@aws-sdk/util-endpoints": "3.521.0",
+ "@aws-sdk/util-user-agent-browser": "3.521.0",
+ "@aws-sdk/util-user-agent-node": "3.521.0",
+ "@smithy/config-resolver": "^2.1.2",
+ "@smithy/core": "^1.3.3",
+ "@smithy/fetch-http-handler": "^2.4.2",
+ "@smithy/hash-node": "^2.1.2",
+ "@smithy/invalid-dependency": "^2.1.2",
+ "@smithy/middleware-content-length": "^2.1.2",
+ "@smithy/middleware-endpoint": "^2.4.2",
+ "@smithy/middleware-retry": "^2.1.2",
+ "@smithy/middleware-serde": "^2.1.2",
+ "@smithy/middleware-stack": "^2.1.2",
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/node-http-handler": "^2.4.0",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/url-parser": "^2.1.2",
+ "@smithy/util-base64": "^2.1.1",
+ "@smithy/util-body-length-browser": "^2.1.1",
+ "@smithy/util-body-length-node": "^2.2.1",
+ "@smithy/util-defaults-mode-browser": "^2.1.2",
+ "@smithy/util-defaults-mode-node": "^2.2.1",
+ "@smithy/util-endpoints": "^1.1.2",
+ "@smithy/util-middleware": "^2.1.2",
+ "@smithy/util-retry": "^2.1.2",
+ "@smithy/util-utf8": "^2.1.1",
+ "tslib": "^2.5.0"
},
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
- }
- },
- "plugins/web/opentelemetry-plugin-react-load/node_modules/schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
- "dev": true,
"dependencies": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- },
- "engines": {
- "node": ">= 10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
+ "@aws-crypto/ie11-detection": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz",
+ "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-crypto/sha256-browser": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz",
+ "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-crypto/ie11-detection": "^3.0.0",
+ "@aws-crypto/sha256-js": "^3.0.0",
+ "@aws-crypto/supports-web-crypto": "^3.0.0",
+ "@aws-crypto/util": "^3.0.0",
+ "@aws-sdk/types": "^3.222.0",
+ "@aws-sdk/util-locate-window": "^3.0.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-crypto/sha256-js": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz",
+ "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-crypto/util": "^3.0.0",
+ "@aws-sdk/types": "^3.222.0",
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-crypto/supports-web-crypto": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz",
+ "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-crypto/util": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz",
+ "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "^3.222.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-sdk/client-sso": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.521.0.tgz",
+ "integrity": "sha512-aEx8kEvWmTwCja6hvIZd5PvxHsI1HQZkckXhw1UrkDPnfcAwQoQAgselI7D+PVT5qQDIjXRm0NpsvBLaLj6jZw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-crypto/sha256-browser": "3.0.0",
+ "@aws-crypto/sha256-js": "3.0.0",
+ "@aws-sdk/core": "3.521.0",
+ "@aws-sdk/middleware-host-header": "3.521.0",
+ "@aws-sdk/middleware-logger": "3.521.0",
+ "@aws-sdk/middleware-recursion-detection": "3.521.0",
+ "@aws-sdk/middleware-user-agent": "3.521.0",
+ "@aws-sdk/region-config-resolver": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@aws-sdk/util-endpoints": "3.521.0",
+ "@aws-sdk/util-user-agent-browser": "3.521.0",
+ "@aws-sdk/util-user-agent-node": "3.521.0",
+ "@smithy/config-resolver": "^2.1.2",
+ "@smithy/core": "^1.3.3",
+ "@smithy/fetch-http-handler": "^2.4.2",
+ "@smithy/hash-node": "^2.1.2",
+ "@smithy/invalid-dependency": "^2.1.2",
+ "@smithy/middleware-content-length": "^2.1.2",
+ "@smithy/middleware-endpoint": "^2.4.2",
+ "@smithy/middleware-retry": "^2.1.2",
+ "@smithy/middleware-serde": "^2.1.2",
+ "@smithy/middleware-stack": "^2.1.2",
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/node-http-handler": "^2.4.0",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/url-parser": "^2.1.2",
+ "@smithy/util-base64": "^2.1.1",
+ "@smithy/util-body-length-browser": "^2.1.1",
+ "@smithy/util-body-length-node": "^2.2.1",
+ "@smithy/util-defaults-mode-browser": "^2.1.2",
+ "@smithy/util-defaults-mode-node": "^2.2.1",
+ "@smithy/util-endpoints": "^1.1.2",
+ "@smithy/util-middleware": "^2.1.2",
+ "@smithy/util-retry": "^2.1.2",
+ "@smithy/util-utf8": "^2.1.1",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/client-sts": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.521.0.tgz",
+ "integrity": "sha512-f1J5NDbntcwIHJqhks89sQvk7UXPmN0X0BZ2mgpj6pWP+NlPqy+1t1bia8qRhEuNITaEigoq6rqe9xaf4FdY9A==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-crypto/sha256-browser": "3.0.0",
+ "@aws-crypto/sha256-js": "3.0.0",
+ "@aws-sdk/core": "3.521.0",
+ "@aws-sdk/middleware-host-header": "3.521.0",
+ "@aws-sdk/middleware-logger": "3.521.0",
+ "@aws-sdk/middleware-recursion-detection": "3.521.0",
+ "@aws-sdk/middleware-user-agent": "3.521.0",
+ "@aws-sdk/region-config-resolver": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@aws-sdk/util-endpoints": "3.521.0",
+ "@aws-sdk/util-user-agent-browser": "3.521.0",
+ "@aws-sdk/util-user-agent-node": "3.521.0",
+ "@smithy/config-resolver": "^2.1.2",
+ "@smithy/core": "^1.3.3",
+ "@smithy/fetch-http-handler": "^2.4.2",
+ "@smithy/hash-node": "^2.1.2",
+ "@smithy/invalid-dependency": "^2.1.2",
+ "@smithy/middleware-content-length": "^2.1.2",
+ "@smithy/middleware-endpoint": "^2.4.2",
+ "@smithy/middleware-retry": "^2.1.2",
+ "@smithy/middleware-serde": "^2.1.2",
+ "@smithy/middleware-stack": "^2.1.2",
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/node-http-handler": "^2.4.0",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/url-parser": "^2.1.2",
+ "@smithy/util-base64": "^2.1.1",
+ "@smithy/util-body-length-browser": "^2.1.1",
+ "@smithy/util-body-length-node": "^2.2.1",
+ "@smithy/util-defaults-mode-browser": "^2.1.2",
+ "@smithy/util-defaults-mode-node": "^2.2.1",
+ "@smithy/util-endpoints": "^1.1.2",
+ "@smithy/util-middleware": "^2.1.2",
+ "@smithy/util-retry": "^2.1.2",
+ "@smithy/util-utf8": "^2.1.1",
+ "fast-xml-parser": "4.2.5",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-env": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.521.0.tgz",
+ "integrity": "sha512-OwblTJNdDAoqYVwcNfhlKDp5z+DINrjBfC6ZjNdlJpTXgxT3IqzuilTJTlydQ+2eG7aXfV9OwTVRQWdCmzFuKA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-ini": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.521.0.tgz",
+ "integrity": "sha512-HuhP1AlKgvBBxUIwxL/2DsDemiuwgbz1APUNSeJhDBF6JyZuxR0NU8zEZkvH9b4ukTcmcKGABpY0Wex4rAh3xw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/client-sts": "3.521.0",
+ "@aws-sdk/credential-provider-env": "3.521.0",
+ "@aws-sdk/credential-provider-process": "3.521.0",
+ "@aws-sdk/credential-provider-sso": "3.521.0",
+ "@aws-sdk/credential-provider-web-identity": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/credential-provider-imds": "^2.2.1",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/shared-ini-file-loader": "^2.3.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-node": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.521.0.tgz",
+ "integrity": "sha512-N9SR4gWI10qh4V2myBcTw8IlX3QpsMMxa4Q8d/FHiAX6eNV7e6irXkXX8o7+J1gtCRy1AtBMqAdGsve4GVqYMQ==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/credential-provider-env": "3.521.0",
+ "@aws-sdk/credential-provider-http": "3.521.0",
+ "@aws-sdk/credential-provider-ini": "3.521.0",
+ "@aws-sdk/credential-provider-process": "3.521.0",
+ "@aws-sdk/credential-provider-sso": "3.521.0",
+ "@aws-sdk/credential-provider-web-identity": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/credential-provider-imds": "^2.2.1",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/shared-ini-file-loader": "^2.3.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-process": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.521.0.tgz",
+ "integrity": "sha512-EcJjcrpdklxbRAFFgSLk6QGVtvnfZ80ItfZ47VL9LkhWcDAkQ1Oi0esHq+zOgvjb7VkCyD3Q9CyEwT6MlJsriA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/shared-ini-file-loader": "^2.3.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-sso": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.521.0.tgz",
+ "integrity": "sha512-GAfc0ji+fC2k9VngYM3zsS1J5ojfWg0WUOBzavvHzkhx/O3CqOt82Vfikg3PvemAp9yOgKPMaasTHVeipNLBBQ==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/client-sso": "3.521.0",
+ "@aws-sdk/token-providers": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/shared-ini-file-loader": "^2.3.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-web-identity": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.521.0.tgz",
+ "integrity": "sha512-ZPPJqdbPOE4BkdrPrYBtsWg0Zy5b+GY1sbMWLQt0tcISgN5EIoePCS2pGNWnBUmBT+mibMQCVv9fOQpqzRkvAw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/client-sts": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/middleware-host-header": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.521.0.tgz",
+ "integrity": "sha512-Bc4stnMtVAdqosYI1wedFK9tffclCuwpOK/JA4bxbnvSyP1kz4s1HBVT9OOMzdLRLWLwVj/RslXKfSbzOUP7ug==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/middleware-logger": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.521.0.tgz",
+ "integrity": "sha512-JJ4nyYvLu3RyyNHo74Rlx6WKxJsAixWCEnnFb6IGRUHvsG+xBGU7HF5koY2log8BqlDLrt4ZUaV/CGy5Dp8Mfg==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/middleware-user-agent": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.521.0.tgz",
+ "integrity": "sha512-+hmQjWDG93wCcJn5QY2MkzAL1aG5wl3FJ/ud2nQOu/Gx7d4QVT/B6VJwoG6GSPVuVPZwzne5n9zPVst6RmWJGA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@aws-sdk/util-endpoints": "3.521.0",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/types": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
+ "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/util-user-agent-browser": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.521.0.tgz",
+ "integrity": "sha512-2t3uW6AXOvJ5iiI1JG9zPqKQDc/TRFa+v13aqT5KKw9h3WHFyRUpd4sFQL6Ul0urrq2Zg9cG4NHBkei3k9lsHA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/types": "^2.10.0",
+ "bowser": "^2.11.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/util-user-agent-node": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.521.0.tgz",
+ "integrity": "sha512-g4KMEiyLc8DG21eMrp6fJUdfQ9F0fxfCNMDRgf0SE/pWI/u4vuWR2n8obLwq1pMVx7Ksva1NO3dc+a3Rgr0hag==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "fast-xml-parser": {
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz",
+ "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "strnum": "^1.0.5"
+ }
+ }
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/sinon": {
- "version": "15.1.2",
- "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
- "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
- "deprecated": "16.1.1",
+ "@aws-sdk/client-dynamodb": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-dynamodb/-/client-dynamodb-3.85.0.tgz",
+ "integrity": "sha512-uivxiYoSej5K8l3Ii5qLQezDFnDg/l2uq6J2lX5Luvnf81IFFrYMGRC0yHpbZoLIllZ+rbl0nozZkmnWWt+P+A==",
"dev": true,
- "dependencies": {
- "@sinonjs/commons": "^3.0.0",
- "@sinonjs/fake-timers": "^10.1.0",
- "@sinonjs/samsam": "^8.0.0",
- "diff": "^5.1.0",
- "nise": "^5.1.4",
- "supports-color": "^7.2.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/sinon"
+ "requires": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/client-sts": "3.85.0",
+ "@aws-sdk/config-resolver": "3.80.0",
+ "@aws-sdk/credential-provider-node": "3.85.0",
+ "@aws-sdk/fetch-http-handler": "3.78.0",
+ "@aws-sdk/hash-node": "3.78.0",
+ "@aws-sdk/invalid-dependency": "3.78.0",
+ "@aws-sdk/middleware-content-length": "3.78.0",
+ "@aws-sdk/middleware-endpoint-discovery": "3.80.0",
+ "@aws-sdk/middleware-host-header": "3.78.0",
+ "@aws-sdk/middleware-logger": "3.78.0",
+ "@aws-sdk/middleware-retry": "3.80.0",
+ "@aws-sdk/middleware-serde": "3.78.0",
+ "@aws-sdk/middleware-signing": "3.78.0",
+ "@aws-sdk/middleware-stack": "3.78.0",
+ "@aws-sdk/middleware-user-agent": "3.78.0",
+ "@aws-sdk/node-config-provider": "3.80.0",
+ "@aws-sdk/node-http-handler": "3.82.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/smithy-client": "3.85.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/url-parser": "3.78.0",
+ "@aws-sdk/util-base64-browser": "3.58.0",
+ "@aws-sdk/util-base64-node": "3.55.0",
+ "@aws-sdk/util-body-length-browser": "3.55.0",
+ "@aws-sdk/util-body-length-node": "3.55.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.85.0",
+ "@aws-sdk/util-defaults-mode-node": "3.85.0",
+ "@aws-sdk/util-user-agent-browser": "3.78.0",
+ "@aws-sdk/util-user-agent-node": "3.80.0",
+ "@aws-sdk/util-utf8-browser": "3.55.0",
+ "@aws-sdk/util-utf8-node": "3.55.0",
+ "@aws-sdk/util-waiter": "3.78.0",
+ "tslib": "^2.3.1",
+ "uuid": "^8.3.2"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/sinon/node_modules/diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
+ "@aws-sdk/client-kinesis": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-kinesis/-/client-kinesis-3.85.0.tgz",
+ "integrity": "sha512-TlBYyNCkNZqnarpReaYCJTHQeVpjb6XpVcpoznsPnRpPjcm57JVhuErpKjU6tOKmtAl0uKrmJsjupizgQwFMIA==",
"dev": true,
- "engines": {
- "node": ">=0.3.1"
+ "requires": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/client-sts": "3.85.0",
+ "@aws-sdk/config-resolver": "3.80.0",
+ "@aws-sdk/credential-provider-node": "3.85.0",
+ "@aws-sdk/eventstream-serde-browser": "3.78.0",
+ "@aws-sdk/eventstream-serde-config-resolver": "3.78.0",
+ "@aws-sdk/eventstream-serde-node": "3.78.0",
+ "@aws-sdk/fetch-http-handler": "3.78.0",
+ "@aws-sdk/hash-node": "3.78.0",
+ "@aws-sdk/invalid-dependency": "3.78.0",
+ "@aws-sdk/middleware-content-length": "3.78.0",
+ "@aws-sdk/middleware-host-header": "3.78.0",
+ "@aws-sdk/middleware-logger": "3.78.0",
+ "@aws-sdk/middleware-retry": "3.80.0",
+ "@aws-sdk/middleware-serde": "3.78.0",
+ "@aws-sdk/middleware-signing": "3.78.0",
+ "@aws-sdk/middleware-stack": "3.78.0",
+ "@aws-sdk/middleware-user-agent": "3.78.0",
+ "@aws-sdk/node-config-provider": "3.80.0",
+ "@aws-sdk/node-http-handler": "3.82.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/smithy-client": "3.85.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/url-parser": "3.78.0",
+ "@aws-sdk/util-base64-browser": "3.58.0",
+ "@aws-sdk/util-base64-node": "3.55.0",
+ "@aws-sdk/util-body-length-browser": "3.55.0",
+ "@aws-sdk/util-body-length-node": "3.55.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.85.0",
+ "@aws-sdk/util-defaults-mode-node": "3.85.0",
+ "@aws-sdk/util-user-agent-browser": "3.78.0",
+ "@aws-sdk/util-user-agent-node": "3.80.0",
+ "@aws-sdk/util-utf8-browser": "3.55.0",
+ "@aws-sdk/util-utf8-node": "3.55.0",
+ "@aws-sdk/util-waiter": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/sinon/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "@aws-sdk/client-lambda": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-lambda/-/client-lambda-3.85.0.tgz",
+ "integrity": "sha512-FWlu4R5ODdAkD8ovWwcTmlJiUia8qD8CHF/CJqJp6psWiB3wx7K3wJ5Cw8SShGTaOB1z1vbO8ASNENqMVCIkvA==",
"dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
+ "requires": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/client-sts": "3.85.0",
+ "@aws-sdk/config-resolver": "3.80.0",
+ "@aws-sdk/credential-provider-node": "3.85.0",
+ "@aws-sdk/fetch-http-handler": "3.78.0",
+ "@aws-sdk/hash-node": "3.78.0",
+ "@aws-sdk/invalid-dependency": "3.78.0",
+ "@aws-sdk/middleware-content-length": "3.78.0",
+ "@aws-sdk/middleware-host-header": "3.78.0",
+ "@aws-sdk/middleware-logger": "3.78.0",
+ "@aws-sdk/middleware-retry": "3.80.0",
+ "@aws-sdk/middleware-serde": "3.78.0",
+ "@aws-sdk/middleware-signing": "3.78.0",
+ "@aws-sdk/middleware-stack": "3.78.0",
+ "@aws-sdk/middleware-user-agent": "3.78.0",
+ "@aws-sdk/node-config-provider": "3.80.0",
+ "@aws-sdk/node-http-handler": "3.82.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/smithy-client": "3.85.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/url-parser": "3.78.0",
+ "@aws-sdk/util-base64-browser": "3.58.0",
+ "@aws-sdk/util-base64-node": "3.55.0",
+ "@aws-sdk/util-body-length-browser": "3.55.0",
+ "@aws-sdk/util-body-length-node": "3.55.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.85.0",
+ "@aws-sdk/util-defaults-mode-node": "3.85.0",
+ "@aws-sdk/util-user-agent-browser": "3.78.0",
+ "@aws-sdk/util-user-agent-node": "3.80.0",
+ "@aws-sdk/util-utf8-browser": "3.55.0",
+ "@aws-sdk/util-utf8-node": "3.55.0",
+ "@aws-sdk/util-waiter": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "@aws-sdk/client-s3": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.85.0.tgz",
+ "integrity": "sha512-SwSbuC04hzHh4D6ioqHrAfdcPyLHN0CJYjKN5stMmwRc4BmbI+nPwpUAs5nCyxpil95feRNamIn8PA4P2HF8Eg==",
"dev": true,
- "engines": {
- "node": ">= 8"
+ "requires": {
+ "@aws-crypto/sha1-browser": "2.0.0",
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/client-sts": "3.85.0",
+ "@aws-sdk/config-resolver": "3.80.0",
+ "@aws-sdk/credential-provider-node": "3.85.0",
+ "@aws-sdk/eventstream-serde-browser": "3.78.0",
+ "@aws-sdk/eventstream-serde-config-resolver": "3.78.0",
+ "@aws-sdk/eventstream-serde-node": "3.78.0",
+ "@aws-sdk/fetch-http-handler": "3.78.0",
+ "@aws-sdk/hash-blob-browser": "3.78.0",
+ "@aws-sdk/hash-node": "3.78.0",
+ "@aws-sdk/hash-stream-node": "3.78.0",
+ "@aws-sdk/invalid-dependency": "3.78.0",
+ "@aws-sdk/md5-js": "3.78.0",
+ "@aws-sdk/middleware-bucket-endpoint": "3.80.0",
+ "@aws-sdk/middleware-content-length": "3.78.0",
+ "@aws-sdk/middleware-expect-continue": "3.78.0",
+ "@aws-sdk/middleware-flexible-checksums": "3.78.0",
+ "@aws-sdk/middleware-host-header": "3.78.0",
+ "@aws-sdk/middleware-location-constraint": "3.78.0",
+ "@aws-sdk/middleware-logger": "3.78.0",
+ "@aws-sdk/middleware-retry": "3.80.0",
+ "@aws-sdk/middleware-sdk-s3": "3.78.0",
+ "@aws-sdk/middleware-serde": "3.78.0",
+ "@aws-sdk/middleware-signing": "3.78.0",
+ "@aws-sdk/middleware-ssec": "3.78.0",
+ "@aws-sdk/middleware-stack": "3.78.0",
+ "@aws-sdk/middleware-user-agent": "3.78.0",
+ "@aws-sdk/node-config-provider": "3.80.0",
+ "@aws-sdk/node-http-handler": "3.82.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/signature-v4-multi-region": "3.78.0",
+ "@aws-sdk/smithy-client": "3.85.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/url-parser": "3.78.0",
+ "@aws-sdk/util-base64-browser": "3.58.0",
+ "@aws-sdk/util-base64-node": "3.55.0",
+ "@aws-sdk/util-body-length-browser": "3.55.0",
+ "@aws-sdk/util-body-length-node": "3.55.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.85.0",
+ "@aws-sdk/util-defaults-mode-node": "3.85.0",
+ "@aws-sdk/util-stream-browser": "3.78.0",
+ "@aws-sdk/util-stream-node": "3.78.0",
+ "@aws-sdk/util-user-agent-browser": "3.78.0",
+ "@aws-sdk/util-user-agent-node": "3.80.0",
+ "@aws-sdk/util-utf8-browser": "3.55.0",
+ "@aws-sdk/util-utf8-node": "3.55.0",
+ "@aws-sdk/util-waiter": "3.78.0",
+ "@aws-sdk/xml-builder": "3.55.0",
+ "entities": "2.2.0",
+ "fast-xml-parser": "3.19.0",
+ "tslib": "^2.3.1"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "@aws-sdk/client-sns": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sns/-/client-sns-3.85.0.tgz",
+ "integrity": "sha512-q7XYw/Iqf3LXIUax7rJiCAAEbPbU50ZsC1V+f2oDqOMmWkDeABA/c9fdglRRRFudLgaiT/nMrybQdaM1RxB5cg==",
"dev": true,
- "engines": {
- "node": ">=6"
+ "requires": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/client-sts": "3.85.0",
+ "@aws-sdk/config-resolver": "3.80.0",
+ "@aws-sdk/credential-provider-node": "3.85.0",
+ "@aws-sdk/fetch-http-handler": "3.78.0",
+ "@aws-sdk/hash-node": "3.78.0",
+ "@aws-sdk/invalid-dependency": "3.78.0",
+ "@aws-sdk/middleware-content-length": "3.78.0",
+ "@aws-sdk/middleware-host-header": "3.78.0",
+ "@aws-sdk/middleware-logger": "3.78.0",
+ "@aws-sdk/middleware-retry": "3.80.0",
+ "@aws-sdk/middleware-serde": "3.78.0",
+ "@aws-sdk/middleware-signing": "3.78.0",
+ "@aws-sdk/middleware-stack": "3.78.0",
+ "@aws-sdk/middleware-user-agent": "3.78.0",
+ "@aws-sdk/node-config-provider": "3.80.0",
+ "@aws-sdk/node-http-handler": "3.82.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/smithy-client": "3.85.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/url-parser": "3.78.0",
+ "@aws-sdk/util-base64-browser": "3.58.0",
+ "@aws-sdk/util-base64-node": "3.55.0",
+ "@aws-sdk/util-body-length-browser": "3.55.0",
+ "@aws-sdk/util-body-length-node": "3.55.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.85.0",
+ "@aws-sdk/util-defaults-mode-node": "3.85.0",
+ "@aws-sdk/util-user-agent-browser": "3.78.0",
+ "@aws-sdk/util-user-agent-node": "3.80.0",
+ "@aws-sdk/util-utf8-browser": "3.55.0",
+ "@aws-sdk/util-utf8-node": "3.55.0",
+ "entities": "2.2.0",
+ "fast-xml-parser": "3.19.0",
+ "tslib": "^2.3.1"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
+ "@aws-sdk/client-sqs": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sqs/-/client-sqs-3.85.0.tgz",
+ "integrity": "sha512-7zBVsqch5hOT7dKOq2edLxetvvvhRVg2qiBiwChseg+dzPuVehONq0WBsa7GQT5UypdFn+WvkoklhHQyY6+5hg==",
"dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
- },
- "engines": {
- "node": ">=12.0.0"
- },
- "peerDependencies": {
- "typescript": "*",
- "webpack": "^5.0.0"
+ "requires": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/client-sts": "3.85.0",
+ "@aws-sdk/config-resolver": "3.80.0",
+ "@aws-sdk/credential-provider-node": "3.85.0",
+ "@aws-sdk/fetch-http-handler": "3.78.0",
+ "@aws-sdk/hash-node": "3.78.0",
+ "@aws-sdk/invalid-dependency": "3.78.0",
+ "@aws-sdk/md5-js": "3.78.0",
+ "@aws-sdk/middleware-content-length": "3.78.0",
+ "@aws-sdk/middleware-host-header": "3.78.0",
+ "@aws-sdk/middleware-logger": "3.78.0",
+ "@aws-sdk/middleware-retry": "3.80.0",
+ "@aws-sdk/middleware-sdk-sqs": "3.78.0",
+ "@aws-sdk/middleware-serde": "3.78.0",
+ "@aws-sdk/middleware-signing": "3.78.0",
+ "@aws-sdk/middleware-stack": "3.78.0",
+ "@aws-sdk/middleware-user-agent": "3.78.0",
+ "@aws-sdk/node-config-provider": "3.80.0",
+ "@aws-sdk/node-http-handler": "3.82.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/smithy-client": "3.85.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/url-parser": "3.78.0",
+ "@aws-sdk/util-base64-browser": "3.58.0",
+ "@aws-sdk/util-base64-node": "3.55.0",
+ "@aws-sdk/util-body-length-browser": "3.55.0",
+ "@aws-sdk/util-body-length-node": "3.55.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.85.0",
+ "@aws-sdk/util-defaults-mode-node": "3.85.0",
+ "@aws-sdk/util-user-agent-browser": "3.78.0",
+ "@aws-sdk/util-user-agent-node": "3.80.0",
+ "@aws-sdk/util-utf8-browser": "3.55.0",
+ "@aws-sdk/util-utf8-node": "3.55.0",
+ "entities": "2.2.0",
+ "fast-xml-parser": "3.19.0",
+ "tslib": "^2.3.1"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
+ "@aws-sdk/client-sso": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.85.0.tgz",
+ "integrity": "sha512-JMW0NzFpo99oE6O9M/kgLela73p4vmhe/5TIcdrqUvP9XUV9nANl5nSXh3rqLz0ubmliedz9kdYYhwMC3ntoXg==",
"dev": true,
- "dependencies": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
- },
- "bin": {
- "webpack": "bin/webpack.js"
- },
- "engines": {
- "node": ">=10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- },
- "peerDependenciesMeta": {
- "webpack-cli": {
- "optional": true
- }
+ "requires": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/config-resolver": "3.80.0",
+ "@aws-sdk/fetch-http-handler": "3.78.0",
+ "@aws-sdk/hash-node": "3.78.0",
+ "@aws-sdk/invalid-dependency": "3.78.0",
+ "@aws-sdk/middleware-content-length": "3.78.0",
+ "@aws-sdk/middleware-host-header": "3.78.0",
+ "@aws-sdk/middleware-logger": "3.78.0",
+ "@aws-sdk/middleware-retry": "3.80.0",
+ "@aws-sdk/middleware-serde": "3.78.0",
+ "@aws-sdk/middleware-stack": "3.78.0",
+ "@aws-sdk/middleware-user-agent": "3.78.0",
+ "@aws-sdk/node-config-provider": "3.80.0",
+ "@aws-sdk/node-http-handler": "3.82.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/smithy-client": "3.85.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/url-parser": "3.78.0",
+ "@aws-sdk/util-base64-browser": "3.58.0",
+ "@aws-sdk/util-base64-node": "3.55.0",
+ "@aws-sdk/util-body-length-browser": "3.55.0",
+ "@aws-sdk/util-body-length-node": "3.55.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.85.0",
+ "@aws-sdk/util-defaults-mode-node": "3.85.0",
+ "@aws-sdk/util-user-agent-browser": "3.78.0",
+ "@aws-sdk/util-user-agent-node": "3.80.0",
+ "@aws-sdk/util-utf8-browser": "3.55.0",
+ "@aws-sdk/util-utf8-node": "3.55.0",
+ "tslib": "^2.3.1"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+ "@aws-sdk/client-sts": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.85.0.tgz",
+ "integrity": "sha512-qjaoGG1FrCTS1zSk/XOQRZ0v0JXeytpMl/hf6BcoX/NsaJzDaE5oJlzqdNGwd+1kLYt9J2igG3zxYgvxnCHg6w==",
"dev": true,
- "dependencies": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- },
- "engines": {
- "node": ">=10"
+ "requires": {
+ "@aws-crypto/sha256-browser": "2.0.0",
+ "@aws-crypto/sha256-js": "2.0.0",
+ "@aws-sdk/config-resolver": "3.80.0",
+ "@aws-sdk/credential-provider-node": "3.85.0",
+ "@aws-sdk/fetch-http-handler": "3.78.0",
+ "@aws-sdk/hash-node": "3.78.0",
+ "@aws-sdk/invalid-dependency": "3.78.0",
+ "@aws-sdk/middleware-content-length": "3.78.0",
+ "@aws-sdk/middleware-host-header": "3.78.0",
+ "@aws-sdk/middleware-logger": "3.78.0",
+ "@aws-sdk/middleware-retry": "3.80.0",
+ "@aws-sdk/middleware-sdk-sts": "3.78.0",
+ "@aws-sdk/middleware-serde": "3.78.0",
+ "@aws-sdk/middleware-signing": "3.78.0",
+ "@aws-sdk/middleware-stack": "3.78.0",
+ "@aws-sdk/middleware-user-agent": "3.78.0",
+ "@aws-sdk/node-config-provider": "3.80.0",
+ "@aws-sdk/node-http-handler": "3.82.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/smithy-client": "3.85.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/url-parser": "3.78.0",
+ "@aws-sdk/util-base64-browser": "3.58.0",
+ "@aws-sdk/util-base64-node": "3.55.0",
+ "@aws-sdk/util-body-length-browser": "3.55.0",
+ "@aws-sdk/util-body-length-node": "3.55.0",
+ "@aws-sdk/util-defaults-mode-browser": "3.85.0",
+ "@aws-sdk/util-defaults-mode-node": "3.85.0",
+ "@aws-sdk/util-user-agent-browser": "3.78.0",
+ "@aws-sdk/util-user-agent-node": "3.80.0",
+ "@aws-sdk/util-utf8-browser": "3.55.0",
+ "@aws-sdk/util-utf8-node": "3.55.0",
+ "entities": "2.2.0",
+ "fast-xml-parser": "3.19.0",
+ "tslib": "^2.3.1"
}
},
- "plugins/web/opentelemetry-plugin-react-load/node_modules/yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
+ "@aws-sdk/config-resolver": {
+ "version": "3.80.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.80.0.tgz",
+ "integrity": "sha512-vFruNKlmhsaC8yjnHmasi1WW/7EELlEuFTj4mqcqNqR4dfraf0maVvpqF1VSR8EstpFMsGYI5dmoWAnnG4PcLQ==",
"dev": true,
- "dependencies": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "propagators/opentelemetry-propagator-grpc-census-binary": {
- "name": "@opentelemetry/propagator-grpc-census-binary",
- "version": "0.27.2",
- "extraneous": true,
- "license": "Apache-2.0",
- "devDependencies": {
- "@opentelemetry/api": "^1.0.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "grpc": "1.24.11",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-loader": "8.3.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "engines": {
- "node": ">=14"
- },
- "peerDependencies": {
- "@opentelemetry/api": "^1.0.0"
+ "requires": {
+ "@aws-sdk/signature-v4": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-config-provider": "3.55.0",
+ "@aws-sdk/util-middleware": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-instana": {
- "name": "@opentelemetry/propagator-instana",
- "version": "0.3.2",
- "license": "Apache-2.0",
- "devDependencies": {
- "@babel/core": "7.24.6",
- "@babel/preset-env": "7.24.6",
- "@opentelemetry/api": "^1.0.0",
- "@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
- "@types/webpack-env": "1.16.3",
- "assert": "2.0.0",
- "babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
- "karma-chrome-launcher": "3.1.0",
- "karma-coverage": "2.2.1",
- "karma-mocha": "2.0.1",
- "karma-spec-reporter": "0.0.36",
- "karma-webpack": "5.0.1",
- "mocha": "10.2.0",
- "nyc": "15.1.0",
- "process": "0.11.10",
- "ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4",
- "webpack": "5.89.0",
- "webpack-cli": "5.1.4",
- "webpack-merge": "5.10.0"
- },
- "engines": {
- "node": ">=8.12.0"
- },
- "peerDependencies": {
- "@opentelemetry/api": "^1.0.0"
+ "@aws-sdk/core": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.521.0.tgz",
+ "integrity": "sha512-KovKmW7yg/P2HVG2dhV2DAJLyoeGelgsnSGHaktXo/josJ3vDGRNqqRSgVaqKFxnD98dPEMLrjkzZumNUNGvLw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@smithy/core": "^1.3.3",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/signature-v4": "^2.1.1",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "propagators/opentelemetry-propagator-instana/node_modules/@babel/core": {
- "version": "7.24.6",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
- "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
+ "@aws-sdk/credential-provider-cognito-identity": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.521.0.tgz",
+ "integrity": "sha512-HsLKT0MOQ1/3qM2smxgafuf7B9sbie/gsKEgQi9De7UhA8N9yGaXdo3HQFbyRbv4eZ0fj9Ja++UgFypUk4c3Kw==",
"dev": true,
- "dependencies": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.24.6",
- "@babel/generator": "^7.24.6",
- "@babel/helper-compilation-targets": "^7.24.6",
- "@babel/helper-module-transforms": "^7.24.6",
- "@babel/helpers": "^7.24.6",
- "@babel/parser": "^7.24.6",
- "@babel/template": "^7.24.6",
- "@babel/traverse": "^7.24.6",
- "@babel/types": "^7.24.6",
- "convert-source-map": "^2.0.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.3",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
+ "optional": true,
+ "requires": {
+ "@aws-sdk/client-cognito-identity": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
},
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/babel"
+ "dependencies": {
+ "@aws-sdk/types": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
+ "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ }
}
},
- "propagators/opentelemetry-propagator-instana/node_modules/@babel/core/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true,
- "bin": {
- "semver": "bin/semver.js"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/@types/mocha": {
- "version": "10.0.6",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
- "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
- "dev": true
- },
- "propagators/opentelemetry-propagator-instana/node_modules/@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
- "dev": true,
- "dependencies": {
- "@types/sinonjs__fake-timers": "*"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "@aws-sdk/credential-provider-env": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.78.0.tgz",
+ "integrity": "sha512-K41VTIzVHm2RyIwtBER8Hte3huUBXdV1WKO+i7olYVgLFmaqcZUNrlyoGDRqZcQ/u4AbxTzBU9jeMIbIfzMOWg==",
"dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "requires": {
+ "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-instana/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "@aws-sdk/credential-provider-http": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.521.0.tgz",
+ "integrity": "sha512-yJM1yNGj2XFH8v6/ffWrFY5nC3/2+8qZ8c4mMMwZru8bYXeuSV4+NNfE59HUWvkAF7xP76u4gr4I8kNrMPTlfg==",
"dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/fetch-http-handler": "^2.4.2",
+ "@smithy/node-http-handler": "^2.4.0",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-stream": "^2.1.2",
+ "tslib": "^2.5.0"
},
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/chalk/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
"dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
- "dev": true,
- "funding": [
- {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
+ "@aws-sdk/types": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
+ "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
}
- ],
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "propagators/opentelemetry-propagator-instana/node_modules/convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
- },
- "propagators/opentelemetry-propagator-instana/node_modules/decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
- "dev": true,
- "engines": {
- "node": ">=0.3.1"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
- "dev": true,
- "dependencies": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- },
- "engines": {
- "node": ">=10.13.0"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true,
- "engines": {
- "node": ">=0.8.x"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
- "dev": true,
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/glob/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
- "propagators/opentelemetry-propagator-instana/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/minimatch/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
- "dev": true,
- "dependencies": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
- },
- "bin": {
- "_mocha": "bin/_mocha",
- "mocha": "bin/mocha.js"
- },
- "engines": {
- "node": ">= 14.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/mochajs"
}
},
- "propagators/opentelemetry-propagator-instana/node_modules/ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- },
- "propagators/opentelemetry-propagator-instana/node_modules/nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+ "@aws-sdk/credential-provider-imds": {
+ "version": "3.81.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.81.0.tgz",
+ "integrity": "sha512-BHopP+gaovTYj+4tSrwCk8NNCR48gE9CWmpIOLkP9ell0gOL81Qh7aCEiIK0BZBZkccv1s16cYq1MSZZGS7PEQ==",
"dev": true,
- "bin": {
- "nanoid": "bin/nanoid.cjs"
- },
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ "requires": {
+ "@aws-sdk/node-config-provider": "3.80.0",
+ "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/url-parser": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-instana/node_modules/schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+ "@aws-sdk/credential-provider-ini": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.85.0.tgz",
+ "integrity": "sha512-KgzLGq+w8OrSLutwdYUw0POeLinGQKcqvQJ9702eoeXCwZMnEHwKqU61bn8QKMX/tuYVCNV4I1enI7MmYPW8Lw==",
"dev": true,
- "dependencies": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- },
- "engines": {
- "node": ">= 10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
+ "requires": {
+ "@aws-sdk/credential-provider-env": "3.78.0",
+ "@aws-sdk/credential-provider-imds": "3.81.0",
+ "@aws-sdk/credential-provider-sso": "3.85.0",
+ "@aws-sdk/credential-provider-web-identity": "3.78.0",
+ "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/shared-ini-file-loader": "3.80.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-instana/node_modules/source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "@aws-sdk/credential-provider-node": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.85.0.tgz",
+ "integrity": "sha512-YMxpRJg88mvfmKxy8I5yG3rx+UmF/5a/4twcdAzCfYTAPz+bV6ypIHjFv610/kygHMm29Fof3DRvHXDdBH4mkw==",
"dev": true,
- "engines": {
- "node": ">= 8"
+ "requires": {
+ "@aws-sdk/credential-provider-env": "3.78.0",
+ "@aws-sdk/credential-provider-imds": "3.81.0",
+ "@aws-sdk/credential-provider-ini": "3.85.0",
+ "@aws-sdk/credential-provider-process": "3.80.0",
+ "@aws-sdk/credential-provider-sso": "3.85.0",
+ "@aws-sdk/credential-provider-web-identity": "3.78.0",
+ "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/shared-ini-file-loader": "3.80.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-instana/node_modules/tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "@aws-sdk/credential-provider-process": {
+ "version": "3.80.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.80.0.tgz",
+ "integrity": "sha512-3Ro+kMMyLUJHefOhGc5pOO/ibGcJi8bkj0z/Jtqd5I2Sm1qi7avoztST67/k48KMW1OqPnD/FUqxz5T8B2d+FQ==",
"dev": true,
- "engines": {
- "node": ">=6"
+ "requires": {
+ "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/shared-ini-file-loader": "3.80.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-instana/node_modules/ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
+ "@aws-sdk/credential-provider-sso": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.85.0.tgz",
+ "integrity": "sha512-uE238BgJ/AftPDlBGDlV0XdiNWnUZxFmUmLxgbr19/6jHaCuBr//T6rP+Bc0BjcHkvQCvTdFoCjs17R3Quy3cw==",
"dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
- },
- "engines": {
- "node": ">=12.0.0"
- },
- "peerDependencies": {
- "typescript": "*",
- "webpack": "^5.0.0"
+ "requires": {
+ "@aws-sdk/client-sso": "3.85.0",
+ "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/shared-ini-file-loader": "3.80.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-instana/node_modules/webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
+ "@aws-sdk/credential-provider-web-identity": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.78.0.tgz",
+ "integrity": "sha512-9/IvqHdJaVqMEABA8xZE3t5YF1S2PepfckVu0Ws9YUglj6oO+2QyVX6aRgMF1xph6781+Yc31TDh8/3eaDja7w==",
"dev": true,
- "dependencies": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
- },
- "bin": {
- "webpack": "bin/webpack.js"
- },
- "engines": {
- "node": ">=10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- },
- "peerDependenciesMeta": {
- "webpack-cli": {
- "optional": true
- }
+ "requires": {
+ "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-instana/node_modules/yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+ "@aws-sdk/credential-providers": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.521.0.tgz",
+ "integrity": "sha512-PYd93rIF99TtRYwFCKr/3G/eEMjQzEVFuX3lUoKWrNgDCd+Jeor/ol4HlDoeiSX/Y37HcFnvAFCKJwDGHOPsLw==",
"dev": true,
- "dependencies": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
+ "optional": true,
+ "requires": {
+ "@aws-sdk/client-cognito-identity": "3.521.0",
+ "@aws-sdk/client-sso": "3.521.0",
+ "@aws-sdk/client-sts": "3.521.0",
+ "@aws-sdk/credential-provider-cognito-identity": "3.521.0",
+ "@aws-sdk/credential-provider-env": "3.521.0",
+ "@aws-sdk/credential-provider-http": "3.521.0",
+ "@aws-sdk/credential-provider-ini": "3.521.0",
+ "@aws-sdk/credential-provider-node": "3.521.0",
+ "@aws-sdk/credential-provider-process": "3.521.0",
+ "@aws-sdk/credential-provider-sso": "3.521.0",
+ "@aws-sdk/credential-provider-web-identity": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/credential-provider-imds": "^2.2.1",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
},
- "engines": {
- "node": ">=10"
- }
- },
- "propagators/opentelemetry-propagator-instana/node_modules/yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
- "dev": true,
"dependencies": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "propagators/opentelemetry-propagator-ot-trace": {
- "name": "@opentelemetry/propagator-ot-trace",
- "version": "0.27.2",
- "license": "Apache-2.0",
- "devDependencies": {
- "@babel/core": "7.24.6",
- "@babel/preset-env": "7.24.6",
- "@opentelemetry/api": "^1.0.0",
- "@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
- "@types/webpack-env": "1.16.3",
- "assert": "2.0.0",
- "babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
- "karma-chrome-launcher": "3.1.0",
- "karma-coverage": "2.2.1",
- "karma-mocha": "2.0.1",
- "karma-spec-reporter": "0.0.36",
- "karma-webpack": "5.0.1",
- "mocha": "10.2.0",
- "nyc": "15.1.0",
- "sinon": "15.1.2",
- "ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4",
- "webpack": "5.89.0",
- "webpack-cli": "5.1.4",
- "webpack-merge": "5.10.0"
- },
- "engines": {
- "node": ">=14"
- },
- "peerDependencies": {
- "@opentelemetry/api": "^1.0.0"
+ "@aws-crypto/ie11-detection": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz",
+ "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-crypto/sha256-browser": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz",
+ "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-crypto/ie11-detection": "^3.0.0",
+ "@aws-crypto/sha256-js": "^3.0.0",
+ "@aws-crypto/supports-web-crypto": "^3.0.0",
+ "@aws-crypto/util": "^3.0.0",
+ "@aws-sdk/types": "^3.222.0",
+ "@aws-sdk/util-locate-window": "^3.0.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-crypto/sha256-js": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz",
+ "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-crypto/util": "^3.0.0",
+ "@aws-sdk/types": "^3.222.0",
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-crypto/supports-web-crypto": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz",
+ "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-crypto/util": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz",
+ "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "^3.222.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-sdk/client-sso": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.521.0.tgz",
+ "integrity": "sha512-aEx8kEvWmTwCja6hvIZd5PvxHsI1HQZkckXhw1UrkDPnfcAwQoQAgselI7D+PVT5qQDIjXRm0NpsvBLaLj6jZw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-crypto/sha256-browser": "3.0.0",
+ "@aws-crypto/sha256-js": "3.0.0",
+ "@aws-sdk/core": "3.521.0",
+ "@aws-sdk/middleware-host-header": "3.521.0",
+ "@aws-sdk/middleware-logger": "3.521.0",
+ "@aws-sdk/middleware-recursion-detection": "3.521.0",
+ "@aws-sdk/middleware-user-agent": "3.521.0",
+ "@aws-sdk/region-config-resolver": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@aws-sdk/util-endpoints": "3.521.0",
+ "@aws-sdk/util-user-agent-browser": "3.521.0",
+ "@aws-sdk/util-user-agent-node": "3.521.0",
+ "@smithy/config-resolver": "^2.1.2",
+ "@smithy/core": "^1.3.3",
+ "@smithy/fetch-http-handler": "^2.4.2",
+ "@smithy/hash-node": "^2.1.2",
+ "@smithy/invalid-dependency": "^2.1.2",
+ "@smithy/middleware-content-length": "^2.1.2",
+ "@smithy/middleware-endpoint": "^2.4.2",
+ "@smithy/middleware-retry": "^2.1.2",
+ "@smithy/middleware-serde": "^2.1.2",
+ "@smithy/middleware-stack": "^2.1.2",
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/node-http-handler": "^2.4.0",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/url-parser": "^2.1.2",
+ "@smithy/util-base64": "^2.1.1",
+ "@smithy/util-body-length-browser": "^2.1.1",
+ "@smithy/util-body-length-node": "^2.2.1",
+ "@smithy/util-defaults-mode-browser": "^2.1.2",
+ "@smithy/util-defaults-mode-node": "^2.2.1",
+ "@smithy/util-endpoints": "^1.1.2",
+ "@smithy/util-middleware": "^2.1.2",
+ "@smithy/util-retry": "^2.1.2",
+ "@smithy/util-utf8": "^2.1.1",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/client-sts": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.521.0.tgz",
+ "integrity": "sha512-f1J5NDbntcwIHJqhks89sQvk7UXPmN0X0BZ2mgpj6pWP+NlPqy+1t1bia8qRhEuNITaEigoq6rqe9xaf4FdY9A==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-crypto/sha256-browser": "3.0.0",
+ "@aws-crypto/sha256-js": "3.0.0",
+ "@aws-sdk/core": "3.521.0",
+ "@aws-sdk/middleware-host-header": "3.521.0",
+ "@aws-sdk/middleware-logger": "3.521.0",
+ "@aws-sdk/middleware-recursion-detection": "3.521.0",
+ "@aws-sdk/middleware-user-agent": "3.521.0",
+ "@aws-sdk/region-config-resolver": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@aws-sdk/util-endpoints": "3.521.0",
+ "@aws-sdk/util-user-agent-browser": "3.521.0",
+ "@aws-sdk/util-user-agent-node": "3.521.0",
+ "@smithy/config-resolver": "^2.1.2",
+ "@smithy/core": "^1.3.3",
+ "@smithy/fetch-http-handler": "^2.4.2",
+ "@smithy/hash-node": "^2.1.2",
+ "@smithy/invalid-dependency": "^2.1.2",
+ "@smithy/middleware-content-length": "^2.1.2",
+ "@smithy/middleware-endpoint": "^2.4.2",
+ "@smithy/middleware-retry": "^2.1.2",
+ "@smithy/middleware-serde": "^2.1.2",
+ "@smithy/middleware-stack": "^2.1.2",
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/node-http-handler": "^2.4.0",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/url-parser": "^2.1.2",
+ "@smithy/util-base64": "^2.1.1",
+ "@smithy/util-body-length-browser": "^2.1.1",
+ "@smithy/util-body-length-node": "^2.2.1",
+ "@smithy/util-defaults-mode-browser": "^2.1.2",
+ "@smithy/util-defaults-mode-node": "^2.2.1",
+ "@smithy/util-endpoints": "^1.1.2",
+ "@smithy/util-middleware": "^2.1.2",
+ "@smithy/util-retry": "^2.1.2",
+ "@smithy/util-utf8": "^2.1.1",
+ "fast-xml-parser": "4.2.5",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-env": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.521.0.tgz",
+ "integrity": "sha512-OwblTJNdDAoqYVwcNfhlKDp5z+DINrjBfC6ZjNdlJpTXgxT3IqzuilTJTlydQ+2eG7aXfV9OwTVRQWdCmzFuKA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-ini": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.521.0.tgz",
+ "integrity": "sha512-HuhP1AlKgvBBxUIwxL/2DsDemiuwgbz1APUNSeJhDBF6JyZuxR0NU8zEZkvH9b4ukTcmcKGABpY0Wex4rAh3xw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/client-sts": "3.521.0",
+ "@aws-sdk/credential-provider-env": "3.521.0",
+ "@aws-sdk/credential-provider-process": "3.521.0",
+ "@aws-sdk/credential-provider-sso": "3.521.0",
+ "@aws-sdk/credential-provider-web-identity": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/credential-provider-imds": "^2.2.1",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/shared-ini-file-loader": "^2.3.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-node": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.521.0.tgz",
+ "integrity": "sha512-N9SR4gWI10qh4V2myBcTw8IlX3QpsMMxa4Q8d/FHiAX6eNV7e6irXkXX8o7+J1gtCRy1AtBMqAdGsve4GVqYMQ==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/credential-provider-env": "3.521.0",
+ "@aws-sdk/credential-provider-http": "3.521.0",
+ "@aws-sdk/credential-provider-ini": "3.521.0",
+ "@aws-sdk/credential-provider-process": "3.521.0",
+ "@aws-sdk/credential-provider-sso": "3.521.0",
+ "@aws-sdk/credential-provider-web-identity": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/credential-provider-imds": "^2.2.1",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/shared-ini-file-loader": "^2.3.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-process": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.521.0.tgz",
+ "integrity": "sha512-EcJjcrpdklxbRAFFgSLk6QGVtvnfZ80ItfZ47VL9LkhWcDAkQ1Oi0esHq+zOgvjb7VkCyD3Q9CyEwT6MlJsriA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/shared-ini-file-loader": "^2.3.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-sso": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.521.0.tgz",
+ "integrity": "sha512-GAfc0ji+fC2k9VngYM3zsS1J5ojfWg0WUOBzavvHzkhx/O3CqOt82Vfikg3PvemAp9yOgKPMaasTHVeipNLBBQ==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/client-sso": "3.521.0",
+ "@aws-sdk/token-providers": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/shared-ini-file-loader": "^2.3.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/credential-provider-web-identity": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.521.0.tgz",
+ "integrity": "sha512-ZPPJqdbPOE4BkdrPrYBtsWg0Zy5b+GY1sbMWLQt0tcISgN5EIoePCS2pGNWnBUmBT+mibMQCVv9fOQpqzRkvAw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/client-sts": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/middleware-host-header": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.521.0.tgz",
+ "integrity": "sha512-Bc4stnMtVAdqosYI1wedFK9tffclCuwpOK/JA4bxbnvSyP1kz4s1HBVT9OOMzdLRLWLwVj/RslXKfSbzOUP7ug==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/middleware-logger": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.521.0.tgz",
+ "integrity": "sha512-JJ4nyYvLu3RyyNHo74Rlx6WKxJsAixWCEnnFb6IGRUHvsG+xBGU7HF5koY2log8BqlDLrt4ZUaV/CGy5Dp8Mfg==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/middleware-user-agent": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.521.0.tgz",
+ "integrity": "sha512-+hmQjWDG93wCcJn5QY2MkzAL1aG5wl3FJ/ud2nQOu/Gx7d4QVT/B6VJwoG6GSPVuVPZwzne5n9zPVst6RmWJGA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@aws-sdk/util-endpoints": "3.521.0",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/types": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
+ "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/util-user-agent-browser": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.521.0.tgz",
+ "integrity": "sha512-2t3uW6AXOvJ5iiI1JG9zPqKQDc/TRFa+v13aqT5KKw9h3WHFyRUpd4sFQL6Ul0urrq2Zg9cG4NHBkei3k9lsHA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/types": "^2.10.0",
+ "bowser": "^2.11.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/util-user-agent-node": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.521.0.tgz",
+ "integrity": "sha512-g4KMEiyLc8DG21eMrp6fJUdfQ9F0fxfCNMDRgf0SE/pWI/u4vuWR2n8obLwq1pMVx7Ksva1NO3dc+a3Rgr0hag==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ },
+ "fast-xml-parser": {
+ "version": "4.2.5",
+ "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz",
+ "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "strnum": "^1.0.5"
+ }
+ }
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/@babel/core": {
- "version": "7.24.6",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
- "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
+ "@aws-sdk/endpoint-cache": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/endpoint-cache/-/endpoint-cache-3.55.0.tgz",
+ "integrity": "sha512-kxDoHFDuQwZEEUZRp+ZLOg68EXuKPzUN86DcpIZantDVcmu7MSPTbbQp9DZd8MnKVEKCP7Sop5f7zCqOPl3LXw==",
"dev": true,
- "dependencies": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.24.6",
- "@babel/generator": "^7.24.6",
- "@babel/helper-compilation-targets": "^7.24.6",
- "@babel/helper-module-transforms": "^7.24.6",
- "@babel/helpers": "^7.24.6",
- "@babel/parser": "^7.24.6",
- "@babel/template": "^7.24.6",
- "@babel/traverse": "^7.24.6",
- "@babel/types": "^7.24.6",
- "convert-source-map": "^2.0.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.3",
- "semver": "^6.3.1"
- },
- "engines": {
- "node": ">=6.9.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/babel"
+ "requires": {
+ "mnemonist": "0.38.3",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/@babel/core/node_modules/semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "@aws-sdk/eventstream-marshaller": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-marshaller/-/eventstream-marshaller-3.78.0.tgz",
+ "integrity": "sha512-BMbRvLe6wNWQ+NO1pdPw3kGXXEdYV94BxEr3rTkKwr5yHpl8sUb/Va9sJJufUjzggpgE4vYu5nVsrT8ByMYXuA==",
"dev": true,
- "bin": {
- "semver": "bin/semver.js"
+ "requires": {
+ "@aws-crypto/crc32": "2.0.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-hex-encoding": "3.58.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/@sinonjs/commons": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
- "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
+ "@aws-sdk/eventstream-serde-browser": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-browser/-/eventstream-serde-browser-3.78.0.tgz",
+ "integrity": "sha512-ehQI2iLsj8MMskDRbrPB7SibIdJq6LleBP6ojT+cgrLJRbVXUOxK+3MPHDZVdGYx4ukVg48E1fA2DzVfAp7Emw==",
"dev": true,
- "dependencies": {
- "type-detect": "4.0.8"
+ "requires": {
+ "@aws-sdk/eventstream-marshaller": "3.78.0",
+ "@aws-sdk/eventstream-serde-universal": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/@types/mocha": {
- "version": "10.0.6",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
- "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
- "dev": true
- },
- "propagators/opentelemetry-propagator-ot-trace/node_modules/@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
+ "@aws-sdk/eventstream-serde-config-resolver": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.78.0.tgz",
+ "integrity": "sha512-iUG0wtZH/L7d6XfipwbhgjBHip0uTm9S27EasCn+g0CunbW6w7rXd7rfMqA+gSLVXPTBYjTMPIwRxrTCdRprwA==",
"dev": true,
- "dependencies": {
- "@types/sinonjs__fake-timers": "*"
+ "requires": {
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
+ "@aws-sdk/eventstream-serde-node": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-node/-/eventstream-serde-node-3.78.0.tgz",
+ "integrity": "sha512-H78LLoZEngZBSdk3lRQkAaR3cGsy/3UIjq9AFPeqoPVQtHkzBob1jVfE/5VSVAMhKLxWn8iqhRPS37AvyBGOwQ==",
"dev": true,
- "engines": {
- "node": ">=6"
+ "requires": {
+ "@aws-sdk/eventstream-marshaller": "3.78.0",
+ "@aws-sdk/eventstream-serde-universal": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "@aws-sdk/eventstream-serde-universal": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-universal/-/eventstream-serde-universal-3.78.0.tgz",
+ "integrity": "sha512-PZTLdyF923/1GJuMNtq9VMGd2vEx33HhsGInXvYtulKDSD5SgaTGj+Dz5wYepqL1gUEuXqZjBD71uZgrY/JgRg==",
"dev": true,
- "dependencies": {
- "color-convert": "^2.0.1"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ "requires": {
+ "@aws-sdk/eventstream-marshaller": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "@aws-sdk/fetch-http-handler": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.78.0.tgz",
+ "integrity": "sha512-cR6r2h2kJ1DNEZSXC6GknQB7OKmy+s9ZNV+g3AsNqkrUmNNOaHpFoSn+m6SC3qaclcGd0eQBpqzSu/TDn23Ihw==",
"dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "requires": {
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/querystring-builder": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-base64-browser": "3.58.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "@aws-sdk/hash-blob-browser": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/hash-blob-browser/-/hash-blob-browser-3.78.0.tgz",
+ "integrity": "sha512-IEkA+t6qJEtEYEZgsqFRRITeZJ3mirw7IHJVHxwb86lpeufTVcbILI59B8/rhbqG+9dk0kWTjYSjC/ZdM+rgHA==",
"dev": true,
- "dependencies": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/chalk/chalk?sponsor=1"
+ "requires": {
+ "@aws-sdk/chunked-blob-reader": "3.55.0",
+ "@aws-sdk/chunked-blob-reader-native": "3.58.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/chalk/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "@aws-sdk/hash-node": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.78.0.tgz",
+ "integrity": "sha512-ev48yXaqZVtMeuKy52LUZPHCyKvkKQ9uiUebqkA+zFxIk+eN8SMPFHmsififIHWuS6ZkXBUSctjH9wmLebH60A==",
"dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
+ "requires": {
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-buffer-from": "3.55.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
+ "@aws-sdk/hash-stream-node": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/hash-stream-node/-/hash-stream-node-3.78.0.tgz",
+ "integrity": "sha512-y42Pm0Nk6zf/MI6acLFVFAMya0Ncvy6F6Xu5aYAmwIMIoMI0ctNeyuL/Dikgt8+oyxC+kORw+W9jtzgWj2zY/w==",
"dev": true,
- "funding": [
- {
- "type": "individual",
- "url": "https://paulmillr.com/funding/"
- }
- ],
- "dependencies": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- },
- "engines": {
- "node": ">= 8.10.0"
- },
- "optionalDependencies": {
- "fsevents": "~2.3.2"
+ "requires": {
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "@aws-sdk/invalid-dependency": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.78.0.tgz",
+ "integrity": "sha512-zUo+PbeRMN/Mzj6y+6p9qqk/znuFetT1gmpOcZGL9Rp2T+b9WJWd+daq5ktsL10sVCzIt2UvneJRz6b+aU+bfw==",
"dev": true,
- "dependencies": {
- "color-name": "~1.1.4"
- },
- "engines": {
- "node": ">=7.0.0"
+ "requires": {
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "propagators/opentelemetry-propagator-ot-trace/node_modules/convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
- },
- "propagators/opentelemetry-propagator-ot-trace/node_modules/decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
+ "@aws-sdk/is-array-buffer": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.55.0.tgz",
+ "integrity": "sha512-NbiPHVYuPxdqdFd6FxzzN3H1BQn/iWA3ri3Ry7AyLeP/tGs1yzEWMwf8BN8TSMALI0GXT6Sh0GDWy3Ok5xB6DA==",
"dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "requires": {
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
+ "@aws-sdk/md5-js": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/md5-js/-/md5-js-3.78.0.tgz",
+ "integrity": "sha512-vKOXJWJvv6QH6rnqMYEWzwAnMr4hfcmY8+t6BAuTcDpcEVF77e3bwUcaajXi2U0JMuNvnLwuJF3h6kL6aX4l6g==",
"dev": true,
- "engines": {
- "node": ">=0.3.1"
+ "requires": {
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-utf8-browser": "3.55.0",
+ "@aws-sdk/util-utf8-node": "3.55.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
+ "@aws-sdk/middleware-bucket-endpoint": {
+ "version": "3.80.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.80.0.tgz",
+ "integrity": "sha512-FSSx6IgT7xftSlpjxoPKv8XI9nv7EK+OCODo2s3CmElMW1kBRdmQ/ImVuTwvqhdxJEVUeUdgupmC7cqyqgt04w==",
"dev": true,
- "dependencies": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- },
- "engines": {
- "node": ">=10.13.0"
+ "requires": {
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-arn-parser": "3.55.0",
+ "@aws-sdk/util-config-provider": "3.55.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+ "@aws-sdk/middleware-content-length": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.78.0.tgz",
+ "integrity": "sha512-5MpKt6lB9TdFy25/AGrpOjPY0iDHZAKpEHc+jSOJBXLl6xunXA7qHdiYaVqkWodLxy70nIckGNHqQ3drabidkA==",
"dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "requires": {
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+ "@aws-sdk/middleware-endpoint-discovery": {
+ "version": "3.80.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint-discovery/-/middleware-endpoint-discovery-3.80.0.tgz",
+ "integrity": "sha512-73pKz8ossZKisG684raP1dn2u3fQRktWY29oa9Q3cBvRYdyu5UOhwayt2MObgSC8S6NfNdTGC/DGf7+/JRSY7A==",
"dev": true,
- "engines": {
- "node": ">=0.8.x"
+ "requires": {
+ "@aws-sdk/config-resolver": "3.80.0",
+ "@aws-sdk/endpoint-cache": "3.55.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
- "deprecated": "Glob versions prior to v9 are no longer supported",
+ "@aws-sdk/middleware-expect-continue": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.78.0.tgz",
+ "integrity": "sha512-IXfcSugFV3uNk50VQsN/Cm80iCsUSwcYJ5RzEwy7wXbZ+KM03xWXlbXzqkeTDnS74wLWSw09nKF3rkp1eyfDfg==",
"dev": true,
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "engines": {
- "node": "*"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
+ "requires": {
+ "@aws-sdk/middleware-header-default": "3.78.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "@aws-sdk/middleware-flexible-checksums": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.78.0.tgz",
+ "integrity": "sha512-1jjxHcB3Le/2Z7BzugXzZnIwKGlUluNm0d1lB4fF2QVq3GHlA6e8uv0rCtqe/3wSsrzV6YzJ8vjioymKSNIjKQ==",
"dev": true,
- "dependencies": {
- "is-glob": "^4.0.1"
- },
- "engines": {
- "node": ">= 6"
+ "requires": {
+ "@aws-crypto/crc32": "2.0.0",
+ "@aws-crypto/crc32c": "2.0.0",
+ "@aws-sdk/is-array-buffer": "3.55.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/glob/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "@aws-sdk/middleware-header-default": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-header-default/-/middleware-header-default-3.78.0.tgz",
+ "integrity": "sha512-USyOIF7ObBVMKbV/8lOBLDNwMAGdOtujd+RO/9dX6OQLceUTKIS1dOfJoYYwRHgengn7ikpDxoyROyspPYYDZQ==",
"dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
+ "requires": {
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
+ "@aws-sdk/middleware-host-header": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.78.0.tgz",
+ "integrity": "sha512-1zL8uaDWGmH50c8B8jjz75e0ePj6/3QeZEhjJgTgL6DTdiqvRt32p3t+XWHW+yDI14fZZUYeTklAaLVxqFrHqQ==",
"dev": true,
- "engines": {
- "node": ">=8"
+ "requires": {
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
- "propagators/opentelemetry-propagator-ot-trace/node_modules/log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ "@aws-sdk/middleware-location-constraint": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.78.0.tgz",
+ "integrity": "sha512-m626H1WwXYJtwHEkV/2DsLlu1ckWq3j57NzsexZki3qS0nU8HEiDl6YYi+k84vDD4Qpba6EI9AdhzwnvZLXtGw==",
"dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
+ "requires": {
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+ "@aws-sdk/middleware-logger": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.78.0.tgz",
+ "integrity": "sha512-GBhwxNjhCJUIeQQDaGasX/C23Jay77al2vRyGwmxf8no0DdFsa4J1Ik6/2hhIqkqko+WM4SpCnpZrY4MtnxNvA==",
"dev": true,
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=10"
+ "requires": {
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/minimatch/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "@aws-sdk/middleware-recursion-detection": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.521.0.tgz",
+ "integrity": "sha512-1m5AsC55liTlaYMjc4pIQfjfBHG9LpWgubSl4uUxJSdI++zdA/SRBwXl40p7Ac/y5esweluhWabyiv1g/W4+Xg==",
"dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ },
"dependencies": {
- "balanced-match": "^1.0.0"
+ "@aws-sdk/types": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
+ "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ }
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
+ "@aws-sdk/middleware-retry": {
+ "version": "3.80.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.80.0.tgz",
+ "integrity": "sha512-CTk+tA4+WMUNOcUfR6UQrkhwvPYFpnMsQ1vuHlpLFOGG3nCqywA2hueLMRQmVcDXzP0sGeygce6dzRI9dJB/GA==",
"dev": true,
- "dependencies": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
- },
- "bin": {
- "_mocha": "bin/_mocha",
- "mocha": "bin/mocha.js"
- },
- "engines": {
- "node": ">= 14.0.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/mochajs"
+ "requires": {
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/service-error-classification": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-middleware": "3.78.0",
+ "tslib": "^2.3.1",
+ "uuid": "^8.3.2"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
+ "@aws-sdk/middleware-sdk-s3": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.78.0.tgz",
+ "integrity": "sha512-gxtfVHaL0CkKDIEwRQnmBequtN3dsCtY5LByZQoP3l5qEuTAzwxgbtvGUfHE8LwDVByBqUEFanzafjv1KJ3F8w==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-arn-parser": "3.55.0",
+ "tslib": "^2.3.1"
+ }
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+ "@aws-sdk/middleware-sdk-sqs": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sqs/-/middleware-sdk-sqs-3.78.0.tgz",
+ "integrity": "sha512-EY1K/qDOxfdFWZHFYmrhxu1N4BOuNnGFh+2XbpHU0nlokMX63aHofnSHGFldoAW5rAy604x5cGn39nP0H+vgOg==",
"dev": true,
- "bin": {
- "nanoid": "bin/nanoid.cjs"
- },
- "engines": {
- "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1"
+ "requires": {
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-hex-encoding": "3.58.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+ "@aws-sdk/middleware-sdk-sts": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.78.0.tgz",
+ "integrity": "sha512-Lu/kN0J0/Kt0ON1hvwNel+y8yvf35licfIgtedHbBCa/ju8qQ9j+uL9Lla6Y5Tqu29yVaye1JxhiIDhscSwrLA==",
"dev": true,
- "dependencies": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- },
- "engines": {
- "node": ">= 10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
+ "requires": {
+ "@aws-sdk/middleware-signing": "3.78.0",
+ "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/signature-v4": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/sinon": {
- "version": "15.1.2",
- "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
- "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
- "deprecated": "16.1.1",
+ "@aws-sdk/middleware-serde": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.78.0.tgz",
+ "integrity": "sha512-4DPsNOxsl1bxRzfo1WXEZjmD7OEi7qGNpxrDWucVe96Fqj2dH08jR8wxvBIVV1e6bAad07IwdPuCGmivNvwRuQ==",
"dev": true,
- "dependencies": {
- "@sinonjs/commons": "^3.0.0",
- "@sinonjs/fake-timers": "^10.1.0",
- "@sinonjs/samsam": "^8.0.0",
- "diff": "^5.1.0",
- "nise": "^5.1.4",
- "supports-color": "^7.2.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/sinon"
+ "requires": {
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/sinon/node_modules/diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
+ "@aws-sdk/middleware-signing": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.78.0.tgz",
+ "integrity": "sha512-OEjJJCNhHHSOprLZ9CzjHIXEKFtPHWP/bG9pMhkV3/6Bmscsgcf8gWHcOnmIrjqX+hT1VALDNpl/RIh0J6/eQw==",
"dev": true,
- "engines": {
- "node": ">=0.3.1"
+ "requires": {
+ "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/signature-v4": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/sinon/node_modules/supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "@aws-sdk/middleware-ssec": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.78.0.tgz",
+ "integrity": "sha512-3z+UOd95rxvj+iO6WxMjuRNNUMlO6xhXZdBHvQmoiyS+9nMDcNieTu6gfQyLAilVeCh8xU9a0IenJuIYVdJ96g==",
"dev": true,
- "dependencies": {
- "has-flag": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
+ "requires": {
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "@aws-sdk/middleware-stack": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.78.0.tgz",
+ "integrity": "sha512-UoNfRh6eAJN3BJHlG1eb+KeuSe+zARTC2cglroJRyHc2j7GxH2i9FD3IJbj5wvzopJEnQzuY/VCs6STFkqWL1g==",
"dev": true,
- "engines": {
- "node": ">= 8"
+ "requires": {
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "@aws-sdk/middleware-user-agent": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.78.0.tgz",
+ "integrity": "sha512-wdN5uoq8RxxhLhj0EPeuDSRFuXfUwKeEqRzCKMsYAOC0cAm+PryaP2leo0oTGJ9LUK8REK7zyfFcmtC4oOzlkA==",
"dev": true,
- "engines": {
- "node": ">=6"
+ "requires": {
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
+ "@aws-sdk/node-config-provider": {
+ "version": "3.80.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.80.0.tgz",
+ "integrity": "sha512-vyTOMK04huB7n10ZUv0thd2TE6KlY8livOuLqFTMtj99AJ6vyeB5XBNwKnQtJIt/P7CijYgp8KcFvI9fndOmKg==",
"dev": true,
- "dependencies": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
- },
- "engines": {
- "node": ">=12.0.0"
- },
- "peerDependencies": {
- "typescript": "*",
- "webpack": "^5.0.0"
+ "requires": {
+ "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/shared-ini-file-loader": "3.80.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "propagators/opentelemetry-propagator-ot-trace/node_modules/webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
- "dev": true,
- "dependencies": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
- },
- "bin": {
- "webpack": "bin/webpack.js"
- },
- "engines": {
- "node": ">=10.13.0"
- },
- "funding": {
- "type": "opencollective",
- "url": "https://opencollective.com/webpack"
- },
- "peerDependenciesMeta": {
- "webpack-cli": {
- "optional": true
- }
- }
- },
- "propagators/opentelemetry-propagator-ot-trace/node_modules/yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "dev": true,
- "dependencies": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- },
- "engines": {
- "node": ">=10"
- }
- },
- "propagators/opentelemetry-propagator-ot-trace/node_modules/yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
- "dev": true,
- "dependencies": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
- },
- "engines": {
- "node": ">=10"
- }
- }
- },
- "dependencies": {
- "@75lb/deep-merge": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/@75lb/deep-merge/-/deep-merge-1.1.1.tgz",
- "integrity": "sha512-xvgv6pkMGBA6GwdyJbNAnDmfAIR/DfWhrj9jgWh3TY7gRm3KO46x/GPjRg6wJ0nOepwqrNxFfojebh0Df4h4Tw==",
- "dev": true,
- "requires": {
- "lodash.assignwith": "^4.2.0",
- "typical": "^7.1.1"
- },
- "dependencies": {
- "typical": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/typical/-/typical-7.1.1.tgz",
- "integrity": "sha512-T+tKVNs6Wu7IWiAce5BgMd7OZfNYUndHwc5MknN+UHOudi7sGZzuHdCadllRuqJ3fPtgFtIH9+lt9qRv6lmpfA==",
- "dev": true
- }
- }
- },
- "@aashutoshrathi/word-wrap": {
- "version": "1.2.6",
- "resolved": "https://registry.npmjs.org/@aashutoshrathi/word-wrap/-/word-wrap-1.2.6.tgz",
- "integrity": "sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==",
- "dev": true
- },
- "@ampproject/remapping": {
- "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.3.0",
- "@jridgewell/trace-mapping": "^0.3.9"
- }
- },
- "@aws-crypto/crc32": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-2.0.0.tgz",
- "integrity": "sha512-TvE1r2CUueyXOuHdEigYjIZVesInd9KN+K/TFFNfkkxRThiNxO6i4ZqqAVMoEjAamZZ1AA8WXJkjCz7YShHPQA==",
- "dev": true,
- "requires": {
- "@aws-crypto/util": "^2.0.0",
- "@aws-sdk/types": "^3.1.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- }
- }
- },
- "@aws-crypto/crc32c": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/crc32c/-/crc32c-2.0.0.tgz",
- "integrity": "sha512-vF0eMdMHx3O3MoOXUfBZry8Y4ZDtcuskjjKgJz8YfIDjLStxTZrYXk+kZqtl6A0uCmmiN/Eb/JbC/CndTV1MHg==",
- "dev": true,
- "requires": {
- "@aws-crypto/util": "^2.0.0",
- "@aws-sdk/types": "^3.1.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- }
- }
- },
- "@aws-crypto/ie11-detection": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-2.0.2.tgz",
- "integrity": "sha512-5XDMQY98gMAf/WRTic5G++jfmS/VLM0rwpiOpaainKi4L0nqWMSB1SzsrEG5rjFZGYN6ZAefO+/Yta2dFM0kMw==",
+ "@aws-sdk/node-http-handler": {
+ "version": "3.82.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.82.0.tgz",
+ "integrity": "sha512-yyq/DA/IMzL4fLJhV7zVfP7aUQWPHfOKTCJjWB3KeV5YPiviJtSKb/KyzNi+gQyO7SmsL/8vQbQrf3/s7N/2OA==",
"dev": true,
"requires": {
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- }
+ "@aws-sdk/abort-controller": "3.78.0",
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/querystring-builder": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "@aws-crypto/sha1-browser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha1-browser/-/sha1-browser-2.0.0.tgz",
- "integrity": "sha512-3fIVRjPFY8EG5HWXR+ZJZMdWNRpwbxGzJ9IH9q93FpbgCH8u8GHRi46mZXp3cYD7gealmyqpm3ThZwLKJjWJhA==",
+ "@aws-sdk/property-provider": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.78.0.tgz",
+ "integrity": "sha512-PZpLvV0hF6lqg3CSN9YmphrB/t5LVJVWGJLB9d9qm7sJs5ksjTYBb5bY91OQ3zit0F4cqBMU8xt2GQ9J6d4DvQ==",
"dev": true,
"requires": {
- "@aws-crypto/ie11-detection": "^2.0.0",
- "@aws-crypto/supports-web-crypto": "^2.0.0",
- "@aws-sdk/types": "^3.1.0",
- "@aws-sdk/util-locate-window": "^3.0.0",
- "@aws-sdk/util-utf8-browser": "^3.0.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- }
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "@aws-crypto/sha256-browser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-2.0.0.tgz",
- "integrity": "sha512-rYXOQ8BFOaqMEHJrLHul/25ckWH6GTJtdLSajhlqGMx0PmSueAuvboCuZCTqEKlxR8CQOwRarxYMZZSYlhRA1A==",
+ "@aws-sdk/protocol-http": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.78.0.tgz",
+ "integrity": "sha512-SQB26MhEK96yDxyXd3UAaxLz1Y/ZvgE4pzv7V3wZiokdEedM0kawHKEn1UQJlqJLEZcQI9QYyysh3rTvHZ3fyg==",
"dev": true,
"requires": {
- "@aws-crypto/ie11-detection": "^2.0.0",
- "@aws-crypto/sha256-js": "^2.0.0",
- "@aws-crypto/supports-web-crypto": "^2.0.0",
- "@aws-crypto/util": "^2.0.0",
- "@aws-sdk/types": "^3.1.0",
- "@aws-sdk/util-locate-window": "^3.0.0",
- "@aws-sdk/util-utf8-browser": "^3.0.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- }
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "@aws-crypto/sha256-js": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-2.0.0.tgz",
- "integrity": "sha512-VZY+mCY4Nmrs5WGfitmNqXzaE873fcIZDu54cbaDaaamsaTOP1DBImV9F4pICc3EHjQXujyE8jig+PFCaew9ig==",
+ "@aws-sdk/querystring-builder": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.78.0.tgz",
+ "integrity": "sha512-aib6RW1WAaTQDqVgRU1Ku9idkhm90gJKbCxVaGId+as6QHNUqMChEfK2v+0afuKiPNOs5uWmqvOXI9+Gt+UGDg==",
"dev": true,
"requires": {
- "@aws-crypto/util": "^2.0.0",
- "@aws-sdk/types": "^3.1.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- }
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-uri-escape": "3.55.0",
+ "tslib": "^2.3.1"
}
},
- "@aws-crypto/supports-web-crypto": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-2.0.2.tgz",
- "integrity": "sha512-6mbSsLHwZ99CTOOswvCRP3C+VCWnzBf+1SnbWxzzJ9lR0mA0JnY2JEAhp8rqmTE0GPFy88rrM27ffgp62oErMQ==",
+ "@aws-sdk/querystring-parser": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.78.0.tgz",
+ "integrity": "sha512-csaH8YTyN+KMNczeK6fBS8l7iJaqcQcKOIbpQFg5upX4Ly5A56HJn4sVQhY1LSgfSk4xRsNfMy5mu6BlsIiaXA==",
"dev": true,
"requires": {
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
- }
+ "@aws-sdk/types": "3.78.0",
+ "tslib": "^2.3.1"
}
},
- "@aws-crypto/util": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-2.0.2.tgz",
- "integrity": "sha512-Lgu5v/0e/BcrZ5m/IWqzPUf3UYFTy/PpeED+uc9SWUR1iZQL8XXbGQg10UfllwwBryO3hFF5dizK+78aoXC1eA==",
+ "@aws-sdk/region-config-resolver": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.521.0.tgz",
+ "integrity": "sha512-eC2T62nFgQva9Q0Sqoc9xsYyyH9EN2rJtmUKkWsBMf77atpmajAYRl5B/DzLwGHlXGsgVK2tJdU5wnmpQCEwEQ==",
"dev": true,
+ "optional": true,
"requires": {
- "@aws-sdk/types": "^3.110.0",
- "@aws-sdk/util-utf8-browser": "^3.0.0",
- "tslib": "^1.11.1"
+ "@aws-sdk/types": "3.521.0",
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-config-provider": "^2.2.1",
+ "@smithy/util-middleware": "^2.1.2",
+ "tslib": "^2.5.0"
},
"dependencies": {
"@aws-sdk/types": {
@@ -43568,102 +42548,79 @@
"resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
"integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
"dev": true,
+ "optional": true,
"requires": {
"@smithy/types": "^2.10.0",
"tslib": "^2.5.0"
- },
- "dependencies": {
- "tslib": {
- "version": "2.6.2",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz",
- "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==",
- "dev": true
- }
}
- },
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true
}
}
},
- "@aws-sdk/abort-controller": {
+ "@aws-sdk/service-error-classification": {
"version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/abort-controller/-/abort-controller-3.78.0.tgz",
- "integrity": "sha512-iz1YLwM2feJUj/y97yO4XmDeTxs+yZ1XJwQgoawKuc8IDBKUutnJNCHL5jL04WUKU7Nrlq+Hr2fCTScFh2z9zg==",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.78.0.tgz",
+ "integrity": "sha512-x7Lx8KWctJa01q4Q72Zb4ol9L/era3vy2daASu8l2paHHxsAPBE0PThkvLdUSLZSzlHSVdh3YHESIsT++VsK4w==",
+ "dev": true
+ },
+ "@aws-sdk/shared-ini-file-loader": {
+ "version": "3.80.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.80.0.tgz",
+ "integrity": "sha512-3d5EBJjnWWkjLK9skqLLHYbagtFaZZy+3jUTlbTuOKhlOwe8jF7CUM3j6I4JA6yXNcB3w0exDKKHa8w+l+05aA==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ }
+ },
+ "@aws-sdk/signature-v4": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.78.0.tgz",
+ "integrity": "sha512-eePjRYuzKoi3VMr/lgrUEF1ytLeH4fA/NMCykr/uR6NMo4bSJA59KrFLYSM7SlWLRIyB0UvJqygVEvSxFluyDw==",
"dev": true,
"requires": {
+ "@aws-sdk/is-array-buffer": "3.55.0",
"@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-hex-encoding": "3.58.0",
+ "@aws-sdk/util-middleware": "3.78.0",
+ "@aws-sdk/util-uri-escape": "3.55.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/chunked-blob-reader": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader/-/chunked-blob-reader-3.55.0.tgz",
- "integrity": "sha512-o/xjMCq81opAjSBjt7YdHJwIJcGVG5XIV9+C2KXcY5QwVimkOKPybWTv0mXPvSwSilSx+EhpLNhkcJuXdzhw4w==",
+ "@aws-sdk/signature-v4-multi-region": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.78.0.tgz",
+ "integrity": "sha512-5C+3m4dikUsSLTxW++aBCHP0DT1niiEfXR4UdnjJzcjTtmi/jbL/i8UPG5sCpib9Mu6TMW633tN0h5woVPIIcg==",
"dev": true,
"requires": {
+ "@aws-sdk/protocol-http": "3.78.0",
+ "@aws-sdk/signature-v4": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "@aws-sdk/util-arn-parser": "3.55.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/chunked-blob-reader-native": {
- "version": "3.58.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/chunked-blob-reader-native/-/chunked-blob-reader-native-3.58.0.tgz",
- "integrity": "sha512-+D3xnPD5985iphgAqgUerBDs371a2WzzoEVi7eHJUMMsP/gEnSTdSH0HNxsqhYv6CW4EdKtvDAQdAwA1VtCf2A==",
+ "@aws-sdk/smithy-client": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.85.0.tgz",
+ "integrity": "sha512-Ox/yQEAnANzhpJMyrpuxWtF/i3EviavENczT7fo4uwSyZTz/sfSBQNjs/YAG1UeA6uOI3pBP5EaFERV5hr2fRA==",
"dev": true,
"requires": {
- "@aws-sdk/util-base64-browser": "3.58.0",
+ "@aws-sdk/middleware-stack": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/client-cognito-identity": {
+ "@aws-sdk/token-providers": {
"version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-cognito-identity/-/client-cognito-identity-3.521.0.tgz",
- "integrity": "sha512-UomYWcCpM7OZUt1BDlY3guO6mnA4VXzMkNjFbVtWibKQkk4LhcIUXb6SxWSw/gujIrlOZywldjyj8bL6V374IQ==",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.521.0.tgz",
+ "integrity": "sha512-63XxPOn13j87yPWKm6UXOPdMZIMyEyCDJzmlxnIACP8m20S/c6b8xLJ4fE/PUlD0MTKxpFeQbandq5OhnLsWSQ==",
"dev": true,
"optional": true,
"requires": {
- "@aws-crypto/sha256-browser": "3.0.0",
- "@aws-crypto/sha256-js": "3.0.0",
- "@aws-sdk/client-sts": "3.521.0",
- "@aws-sdk/core": "3.521.0",
- "@aws-sdk/credential-provider-node": "3.521.0",
- "@aws-sdk/middleware-host-header": "3.521.0",
- "@aws-sdk/middleware-logger": "3.521.0",
- "@aws-sdk/middleware-recursion-detection": "3.521.0",
- "@aws-sdk/middleware-user-agent": "3.521.0",
- "@aws-sdk/region-config-resolver": "3.521.0",
+ "@aws-sdk/client-sso-oidc": "3.521.0",
"@aws-sdk/types": "3.521.0",
- "@aws-sdk/util-endpoints": "3.521.0",
- "@aws-sdk/util-user-agent-browser": "3.521.0",
- "@aws-sdk/util-user-agent-node": "3.521.0",
- "@smithy/config-resolver": "^2.1.2",
- "@smithy/core": "^1.3.3",
- "@smithy/fetch-http-handler": "^2.4.2",
- "@smithy/hash-node": "^2.1.2",
- "@smithy/invalid-dependency": "^2.1.2",
- "@smithy/middleware-content-length": "^2.1.2",
- "@smithy/middleware-endpoint": "^2.4.2",
- "@smithy/middleware-retry": "^2.1.2",
- "@smithy/middleware-serde": "^2.1.2",
- "@smithy/middleware-stack": "^2.1.2",
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/node-http-handler": "^2.4.0",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/smithy-client": "^2.4.0",
+ "@smithy/property-provider": "^2.1.1",
+ "@smithy/shared-ini-file-loader": "^2.3.1",
"@smithy/types": "^2.10.0",
- "@smithy/url-parser": "^2.1.2",
- "@smithy/util-base64": "^2.1.1",
- "@smithy/util-body-length-browser": "^2.1.1",
- "@smithy/util-body-length-node": "^2.2.1",
- "@smithy/util-defaults-mode-browser": "^2.1.2",
- "@smithy/util-defaults-mode-node": "^2.2.1",
- "@smithy/util-endpoints": "^1.1.2",
- "@smithy/util-middleware": "^2.1.2",
- "@smithy/util-retry": "^2.1.2",
- "@smithy/util-utf8": "^2.1.1",
"tslib": "^2.5.0"
},
"dependencies": {
@@ -43779,9 +42736,58 @@
"integrity": "sha512-aEx8kEvWmTwCja6hvIZd5PvxHsI1HQZkckXhw1UrkDPnfcAwQoQAgselI7D+PVT5qQDIjXRm0NpsvBLaLj6jZw==",
"dev": true,
"optional": true,
+ "peer": true,
+ "requires": {
+ "@aws-crypto/sha256-browser": "3.0.0",
+ "@aws-crypto/sha256-js": "3.0.0",
+ "@aws-sdk/core": "3.521.0",
+ "@aws-sdk/middleware-host-header": "3.521.0",
+ "@aws-sdk/middleware-logger": "3.521.0",
+ "@aws-sdk/middleware-recursion-detection": "3.521.0",
+ "@aws-sdk/middleware-user-agent": "3.521.0",
+ "@aws-sdk/region-config-resolver": "3.521.0",
+ "@aws-sdk/types": "3.521.0",
+ "@aws-sdk/util-endpoints": "3.521.0",
+ "@aws-sdk/util-user-agent-browser": "3.521.0",
+ "@aws-sdk/util-user-agent-node": "3.521.0",
+ "@smithy/config-resolver": "^2.1.2",
+ "@smithy/core": "^1.3.3",
+ "@smithy/fetch-http-handler": "^2.4.2",
+ "@smithy/hash-node": "^2.1.2",
+ "@smithy/invalid-dependency": "^2.1.2",
+ "@smithy/middleware-content-length": "^2.1.2",
+ "@smithy/middleware-endpoint": "^2.4.2",
+ "@smithy/middleware-retry": "^2.1.2",
+ "@smithy/middleware-serde": "^2.1.2",
+ "@smithy/middleware-stack": "^2.1.2",
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/node-http-handler": "^2.4.0",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/url-parser": "^2.1.2",
+ "@smithy/util-base64": "^2.1.1",
+ "@smithy/util-body-length-browser": "^2.1.1",
+ "@smithy/util-body-length-node": "^2.2.1",
+ "@smithy/util-defaults-mode-browser": "^2.1.2",
+ "@smithy/util-defaults-mode-node": "^2.2.1",
+ "@smithy/util-endpoints": "^1.1.2",
+ "@smithy/util-middleware": "^2.1.2",
+ "@smithy/util-retry": "^2.1.2",
+ "@smithy/util-utf8": "^2.1.1",
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/client-sso-oidc": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.521.0.tgz",
+ "integrity": "sha512-MhX0CjV/543MR7DRPr3lA4ZDpGGKopp8cyV4EkSGXB7LMN//eFKKDhuZDlpgWU+aFe2A3DIqlNJjqgs08W0cSA==",
+ "dev": true,
+ "optional": true,
"requires": {
"@aws-crypto/sha256-browser": "3.0.0",
"@aws-crypto/sha256-js": "3.0.0",
+ "@aws-sdk/client-sts": "3.521.0",
"@aws-sdk/core": "3.521.0",
"@aws-sdk/middleware-host-header": "3.521.0",
"@aws-sdk/middleware-logger": "3.521.0",
@@ -43874,6 +42880,7 @@
"integrity": "sha512-OwblTJNdDAoqYVwcNfhlKDp5z+DINrjBfC6ZjNdlJpTXgxT3IqzuilTJTlydQ+2eG7aXfV9OwTVRQWdCmzFuKA==",
"dev": true,
"optional": true,
+ "peer": true,
"requires": {
"@aws-sdk/types": "3.521.0",
"@smithy/property-provider": "^2.1.1",
@@ -43887,6 +42894,7 @@
"integrity": "sha512-HuhP1AlKgvBBxUIwxL/2DsDemiuwgbz1APUNSeJhDBF6JyZuxR0NU8zEZkvH9b4ukTcmcKGABpY0Wex4rAh3xw==",
"dev": true,
"optional": true,
+ "peer": true,
"requires": {
"@aws-sdk/client-sts": "3.521.0",
"@aws-sdk/credential-provider-env": "3.521.0",
@@ -43907,6 +42915,7 @@
"integrity": "sha512-N9SR4gWI10qh4V2myBcTw8IlX3QpsMMxa4Q8d/FHiAX6eNV7e6irXkXX8o7+J1gtCRy1AtBMqAdGsve4GVqYMQ==",
"dev": true,
"optional": true,
+ "peer": true,
"requires": {
"@aws-sdk/credential-provider-env": "3.521.0",
"@aws-sdk/credential-provider-http": "3.521.0",
@@ -43928,6 +42937,7 @@
"integrity": "sha512-EcJjcrpdklxbRAFFgSLk6QGVtvnfZ80ItfZ47VL9LkhWcDAkQ1Oi0esHq+zOgvjb7VkCyD3Q9CyEwT6MlJsriA==",
"dev": true,
"optional": true,
+ "peer": true,
"requires": {
"@aws-sdk/types": "3.521.0",
"@smithy/property-provider": "^2.1.1",
@@ -43942,6 +42952,7 @@
"integrity": "sha512-GAfc0ji+fC2k9VngYM3zsS1J5ojfWg0WUOBzavvHzkhx/O3CqOt82Vfikg3PvemAp9yOgKPMaasTHVeipNLBBQ==",
"dev": true,
"optional": true,
+ "peer": true,
"requires": {
"@aws-sdk/client-sso": "3.521.0",
"@aws-sdk/token-providers": "3.521.0",
@@ -43958,6 +42969,7 @@
"integrity": "sha512-ZPPJqdbPOE4BkdrPrYBtsWg0Zy5b+GY1sbMWLQt0tcISgN5EIoePCS2pGNWnBUmBT+mibMQCVv9fOQpqzRkvAw==",
"dev": true,
"optional": true,
+ "peer": true,
"requires": {
"@aws-sdk/client-sts": "3.521.0",
"@aws-sdk/types": "3.521.0",
@@ -44054,403 +43066,124 @@
}
}
},
- "@aws-sdk/client-dynamodb": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-dynamodb/-/client-dynamodb-3.85.0.tgz",
- "integrity": "sha512-uivxiYoSej5K8l3Ii5qLQezDFnDg/l2uq6J2lX5Luvnf81IFFrYMGRC0yHpbZoLIllZ+rbl0nozZkmnWWt+P+A==",
- "dev": true,
- "requires": {
- "@aws-crypto/sha256-browser": "2.0.0",
- "@aws-crypto/sha256-js": "2.0.0",
- "@aws-sdk/client-sts": "3.85.0",
- "@aws-sdk/config-resolver": "3.80.0",
- "@aws-sdk/credential-provider-node": "3.85.0",
- "@aws-sdk/fetch-http-handler": "3.78.0",
- "@aws-sdk/hash-node": "3.78.0",
- "@aws-sdk/invalid-dependency": "3.78.0",
- "@aws-sdk/middleware-content-length": "3.78.0",
- "@aws-sdk/middleware-endpoint-discovery": "3.80.0",
- "@aws-sdk/middleware-host-header": "3.78.0",
- "@aws-sdk/middleware-logger": "3.78.0",
- "@aws-sdk/middleware-retry": "3.80.0",
- "@aws-sdk/middleware-serde": "3.78.0",
- "@aws-sdk/middleware-signing": "3.78.0",
- "@aws-sdk/middleware-stack": "3.78.0",
- "@aws-sdk/middleware-user-agent": "3.78.0",
- "@aws-sdk/node-config-provider": "3.80.0",
- "@aws-sdk/node-http-handler": "3.82.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/smithy-client": "3.85.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/url-parser": "3.78.0",
- "@aws-sdk/util-base64-browser": "3.58.0",
- "@aws-sdk/util-base64-node": "3.55.0",
- "@aws-sdk/util-body-length-browser": "3.55.0",
- "@aws-sdk/util-body-length-node": "3.55.0",
- "@aws-sdk/util-defaults-mode-browser": "3.85.0",
- "@aws-sdk/util-defaults-mode-node": "3.85.0",
- "@aws-sdk/util-user-agent-browser": "3.78.0",
- "@aws-sdk/util-user-agent-node": "3.80.0",
- "@aws-sdk/util-utf8-browser": "3.55.0",
- "@aws-sdk/util-utf8-node": "3.55.0",
- "@aws-sdk/util-waiter": "3.78.0",
- "tslib": "^2.3.1",
- "uuid": "^8.3.2"
- }
+ "@aws-sdk/types": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.78.0.tgz",
+ "integrity": "sha512-I9PTlVNSbwhIgMfmDM5as1tqRIkVZunjVmfogb2WVVPp4CaX0Ll01S0FSMSLL9k6tcQLXqh45pFRjrxCl9WKdQ==",
+ "dev": true
},
- "@aws-sdk/client-lambda": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-lambda/-/client-lambda-3.85.0.tgz",
- "integrity": "sha512-FWlu4R5ODdAkD8ovWwcTmlJiUia8qD8CHF/CJqJp6psWiB3wx7K3wJ5Cw8SShGTaOB1z1vbO8ASNENqMVCIkvA==",
+ "@aws-sdk/url-parser": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.78.0.tgz",
+ "integrity": "sha512-iQn2AjECUoJE0Ae9XtgHtGGKvUkvE8hhbktGopdj+zsPBe4WrBN2DgVxlKPPrBonG/YlcL1D7a5EXaujWSlUUw==",
"dev": true,
"requires": {
- "@aws-crypto/sha256-browser": "2.0.0",
- "@aws-crypto/sha256-js": "2.0.0",
- "@aws-sdk/client-sts": "3.85.0",
- "@aws-sdk/config-resolver": "3.80.0",
- "@aws-sdk/credential-provider-node": "3.85.0",
- "@aws-sdk/fetch-http-handler": "3.78.0",
- "@aws-sdk/hash-node": "3.78.0",
- "@aws-sdk/invalid-dependency": "3.78.0",
- "@aws-sdk/middleware-content-length": "3.78.0",
- "@aws-sdk/middleware-host-header": "3.78.0",
- "@aws-sdk/middleware-logger": "3.78.0",
- "@aws-sdk/middleware-retry": "3.80.0",
- "@aws-sdk/middleware-serde": "3.78.0",
- "@aws-sdk/middleware-signing": "3.78.0",
- "@aws-sdk/middleware-stack": "3.78.0",
- "@aws-sdk/middleware-user-agent": "3.78.0",
- "@aws-sdk/node-config-provider": "3.80.0",
- "@aws-sdk/node-http-handler": "3.82.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/smithy-client": "3.85.0",
+ "@aws-sdk/querystring-parser": "3.78.0",
"@aws-sdk/types": "3.78.0",
- "@aws-sdk/url-parser": "3.78.0",
- "@aws-sdk/util-base64-browser": "3.58.0",
- "@aws-sdk/util-base64-node": "3.55.0",
- "@aws-sdk/util-body-length-browser": "3.55.0",
- "@aws-sdk/util-body-length-node": "3.55.0",
- "@aws-sdk/util-defaults-mode-browser": "3.85.0",
- "@aws-sdk/util-defaults-mode-node": "3.85.0",
- "@aws-sdk/util-user-agent-browser": "3.78.0",
- "@aws-sdk/util-user-agent-node": "3.80.0",
- "@aws-sdk/util-utf8-browser": "3.55.0",
- "@aws-sdk/util-utf8-node": "3.55.0",
- "@aws-sdk/util-waiter": "3.78.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/client-s3": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-s3/-/client-s3-3.85.0.tgz",
- "integrity": "sha512-SwSbuC04hzHh4D6ioqHrAfdcPyLHN0CJYjKN5stMmwRc4BmbI+nPwpUAs5nCyxpil95feRNamIn8PA4P2HF8Eg==",
+ "@aws-sdk/util-arn-parser": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.55.0.tgz",
+ "integrity": "sha512-76KJxp4MRWufHYWys7DFl64znr5yeJ3AIQNAPCKKw1sP0hzO7p6Kx0PaJnw9x+CPSzOrT4NbuApL6/srYhKDGg==",
"dev": true,
"requires": {
- "@aws-crypto/sha1-browser": "2.0.0",
- "@aws-crypto/sha256-browser": "2.0.0",
- "@aws-crypto/sha256-js": "2.0.0",
- "@aws-sdk/client-sts": "3.85.0",
- "@aws-sdk/config-resolver": "3.80.0",
- "@aws-sdk/credential-provider-node": "3.85.0",
- "@aws-sdk/eventstream-serde-browser": "3.78.0",
- "@aws-sdk/eventstream-serde-config-resolver": "3.78.0",
- "@aws-sdk/eventstream-serde-node": "3.78.0",
- "@aws-sdk/fetch-http-handler": "3.78.0",
- "@aws-sdk/hash-blob-browser": "3.78.0",
- "@aws-sdk/hash-node": "3.78.0",
- "@aws-sdk/hash-stream-node": "3.78.0",
- "@aws-sdk/invalid-dependency": "3.78.0",
- "@aws-sdk/md5-js": "3.78.0",
- "@aws-sdk/middleware-bucket-endpoint": "3.80.0",
- "@aws-sdk/middleware-content-length": "3.78.0",
- "@aws-sdk/middleware-expect-continue": "3.78.0",
- "@aws-sdk/middleware-flexible-checksums": "3.78.0",
- "@aws-sdk/middleware-host-header": "3.78.0",
- "@aws-sdk/middleware-location-constraint": "3.78.0",
- "@aws-sdk/middleware-logger": "3.78.0",
- "@aws-sdk/middleware-retry": "3.80.0",
- "@aws-sdk/middleware-sdk-s3": "3.78.0",
- "@aws-sdk/middleware-serde": "3.78.0",
- "@aws-sdk/middleware-signing": "3.78.0",
- "@aws-sdk/middleware-ssec": "3.78.0",
- "@aws-sdk/middleware-stack": "3.78.0",
- "@aws-sdk/middleware-user-agent": "3.78.0",
- "@aws-sdk/node-config-provider": "3.80.0",
- "@aws-sdk/node-http-handler": "3.82.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/signature-v4-multi-region": "3.78.0",
- "@aws-sdk/smithy-client": "3.85.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/url-parser": "3.78.0",
- "@aws-sdk/util-base64-browser": "3.58.0",
- "@aws-sdk/util-base64-node": "3.55.0",
- "@aws-sdk/util-body-length-browser": "3.55.0",
- "@aws-sdk/util-body-length-node": "3.55.0",
- "@aws-sdk/util-defaults-mode-browser": "3.85.0",
- "@aws-sdk/util-defaults-mode-node": "3.85.0",
- "@aws-sdk/util-stream-browser": "3.78.0",
- "@aws-sdk/util-stream-node": "3.78.0",
- "@aws-sdk/util-user-agent-browser": "3.78.0",
- "@aws-sdk/util-user-agent-node": "3.80.0",
- "@aws-sdk/util-utf8-browser": "3.55.0",
- "@aws-sdk/util-utf8-node": "3.55.0",
- "@aws-sdk/util-waiter": "3.78.0",
- "@aws-sdk/xml-builder": "3.55.0",
- "entities": "2.2.0",
- "fast-xml-parser": "3.19.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/client-sns": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sns/-/client-sns-3.85.0.tgz",
- "integrity": "sha512-q7XYw/Iqf3LXIUax7rJiCAAEbPbU50ZsC1V+f2oDqOMmWkDeABA/c9fdglRRRFudLgaiT/nMrybQdaM1RxB5cg==",
+ "@aws-sdk/util-base64-browser": {
+ "version": "3.58.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.58.0.tgz",
+ "integrity": "sha512-0ebsXIZNpu/fup9OgsFPnRKfCFbuuI9PPRzvP6twzLxUB0c/aix6Co7LGHFKcRKHZdaykoJMXArf8eHj2Nzv1Q==",
"dev": true,
"requires": {
- "@aws-crypto/sha256-browser": "2.0.0",
- "@aws-crypto/sha256-js": "2.0.0",
- "@aws-sdk/client-sts": "3.85.0",
- "@aws-sdk/config-resolver": "3.80.0",
- "@aws-sdk/credential-provider-node": "3.85.0",
- "@aws-sdk/fetch-http-handler": "3.78.0",
- "@aws-sdk/hash-node": "3.78.0",
- "@aws-sdk/invalid-dependency": "3.78.0",
- "@aws-sdk/middleware-content-length": "3.78.0",
- "@aws-sdk/middleware-host-header": "3.78.0",
- "@aws-sdk/middleware-logger": "3.78.0",
- "@aws-sdk/middleware-retry": "3.80.0",
- "@aws-sdk/middleware-serde": "3.78.0",
- "@aws-sdk/middleware-signing": "3.78.0",
- "@aws-sdk/middleware-stack": "3.78.0",
- "@aws-sdk/middleware-user-agent": "3.78.0",
- "@aws-sdk/node-config-provider": "3.80.0",
- "@aws-sdk/node-http-handler": "3.82.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/smithy-client": "3.85.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/url-parser": "3.78.0",
- "@aws-sdk/util-base64-browser": "3.58.0",
- "@aws-sdk/util-base64-node": "3.55.0",
- "@aws-sdk/util-body-length-browser": "3.55.0",
- "@aws-sdk/util-body-length-node": "3.55.0",
- "@aws-sdk/util-defaults-mode-browser": "3.85.0",
- "@aws-sdk/util-defaults-mode-node": "3.85.0",
- "@aws-sdk/util-user-agent-browser": "3.78.0",
- "@aws-sdk/util-user-agent-node": "3.80.0",
- "@aws-sdk/util-utf8-browser": "3.55.0",
- "@aws-sdk/util-utf8-node": "3.55.0",
- "entities": "2.2.0",
- "fast-xml-parser": "3.19.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/client-sqs": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sqs/-/client-sqs-3.85.0.tgz",
- "integrity": "sha512-7zBVsqch5hOT7dKOq2edLxetvvvhRVg2qiBiwChseg+dzPuVehONq0WBsa7GQT5UypdFn+WvkoklhHQyY6+5hg==",
+ "@aws-sdk/util-base64-node": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.55.0.tgz",
+ "integrity": "sha512-UQ/ZuNoAc8CFMpSiRYmevaTsuRKzLwulZTnM8LNlIt9Wx1tpNvqp80cfvVj7yySKROtEi20wq29h31dZf1eYNQ==",
"dev": true,
"requires": {
- "@aws-crypto/sha256-browser": "2.0.0",
- "@aws-crypto/sha256-js": "2.0.0",
- "@aws-sdk/client-sts": "3.85.0",
- "@aws-sdk/config-resolver": "3.80.0",
- "@aws-sdk/credential-provider-node": "3.85.0",
- "@aws-sdk/fetch-http-handler": "3.78.0",
- "@aws-sdk/hash-node": "3.78.0",
- "@aws-sdk/invalid-dependency": "3.78.0",
- "@aws-sdk/md5-js": "3.78.0",
- "@aws-sdk/middleware-content-length": "3.78.0",
- "@aws-sdk/middleware-host-header": "3.78.0",
- "@aws-sdk/middleware-logger": "3.78.0",
- "@aws-sdk/middleware-retry": "3.80.0",
- "@aws-sdk/middleware-sdk-sqs": "3.78.0",
- "@aws-sdk/middleware-serde": "3.78.0",
- "@aws-sdk/middleware-signing": "3.78.0",
- "@aws-sdk/middleware-stack": "3.78.0",
- "@aws-sdk/middleware-user-agent": "3.78.0",
- "@aws-sdk/node-config-provider": "3.80.0",
- "@aws-sdk/node-http-handler": "3.82.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/smithy-client": "3.85.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/url-parser": "3.78.0",
- "@aws-sdk/util-base64-browser": "3.58.0",
- "@aws-sdk/util-base64-node": "3.55.0",
- "@aws-sdk/util-body-length-browser": "3.55.0",
- "@aws-sdk/util-body-length-node": "3.55.0",
- "@aws-sdk/util-defaults-mode-browser": "3.85.0",
- "@aws-sdk/util-defaults-mode-node": "3.85.0",
- "@aws-sdk/util-user-agent-browser": "3.78.0",
- "@aws-sdk/util-user-agent-node": "3.80.0",
- "@aws-sdk/util-utf8-browser": "3.55.0",
- "@aws-sdk/util-utf8-node": "3.55.0",
- "entities": "2.2.0",
- "fast-xml-parser": "3.19.0",
+ "@aws-sdk/util-buffer-from": "3.55.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/client-sso": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.85.0.tgz",
- "integrity": "sha512-JMW0NzFpo99oE6O9M/kgLela73p4vmhe/5TIcdrqUvP9XUV9nANl5nSXh3rqLz0ubmliedz9kdYYhwMC3ntoXg==",
+ "@aws-sdk/util-body-length-browser": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.55.0.tgz",
+ "integrity": "sha512-Ei2OCzXQw5N6ZkTMZbamUzc1z+z1R1Ja5tMEagz5BxuX4vWdBObT+uGlSzL8yvTbjoPjnxWA2aXyEqaUP3JS8Q==",
"dev": true,
"requires": {
- "@aws-crypto/sha256-browser": "2.0.0",
- "@aws-crypto/sha256-js": "2.0.0",
- "@aws-sdk/config-resolver": "3.80.0",
- "@aws-sdk/fetch-http-handler": "3.78.0",
- "@aws-sdk/hash-node": "3.78.0",
- "@aws-sdk/invalid-dependency": "3.78.0",
- "@aws-sdk/middleware-content-length": "3.78.0",
- "@aws-sdk/middleware-host-header": "3.78.0",
- "@aws-sdk/middleware-logger": "3.78.0",
- "@aws-sdk/middleware-retry": "3.80.0",
- "@aws-sdk/middleware-serde": "3.78.0",
- "@aws-sdk/middleware-stack": "3.78.0",
- "@aws-sdk/middleware-user-agent": "3.78.0",
- "@aws-sdk/node-config-provider": "3.80.0",
- "@aws-sdk/node-http-handler": "3.82.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/smithy-client": "3.85.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/url-parser": "3.78.0",
- "@aws-sdk/util-base64-browser": "3.58.0",
- "@aws-sdk/util-base64-node": "3.55.0",
- "@aws-sdk/util-body-length-browser": "3.55.0",
- "@aws-sdk/util-body-length-node": "3.55.0",
- "@aws-sdk/util-defaults-mode-browser": "3.85.0",
- "@aws-sdk/util-defaults-mode-node": "3.85.0",
- "@aws-sdk/util-user-agent-browser": "3.78.0",
- "@aws-sdk/util-user-agent-node": "3.80.0",
- "@aws-sdk/util-utf8-browser": "3.55.0",
- "@aws-sdk/util-utf8-node": "3.55.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/client-sts": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.85.0.tgz",
- "integrity": "sha512-qjaoGG1FrCTS1zSk/XOQRZ0v0JXeytpMl/hf6BcoX/NsaJzDaE5oJlzqdNGwd+1kLYt9J2igG3zxYgvxnCHg6w==",
+ "@aws-sdk/util-body-length-node": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.55.0.tgz",
+ "integrity": "sha512-lU1d4I+9wJwydduXs0SxSfd+mHKjxeyd39VwOv6i2KSwWkPbji9UQqpflKLKw+r45jL7+xU/zfeTUg5Tt/3Gew==",
"dev": true,
"requires": {
- "@aws-crypto/sha256-browser": "2.0.0",
- "@aws-crypto/sha256-js": "2.0.0",
- "@aws-sdk/config-resolver": "3.80.0",
- "@aws-sdk/credential-provider-node": "3.85.0",
- "@aws-sdk/fetch-http-handler": "3.78.0",
- "@aws-sdk/hash-node": "3.78.0",
- "@aws-sdk/invalid-dependency": "3.78.0",
- "@aws-sdk/middleware-content-length": "3.78.0",
- "@aws-sdk/middleware-host-header": "3.78.0",
- "@aws-sdk/middleware-logger": "3.78.0",
- "@aws-sdk/middleware-retry": "3.80.0",
- "@aws-sdk/middleware-sdk-sts": "3.78.0",
- "@aws-sdk/middleware-serde": "3.78.0",
- "@aws-sdk/middleware-signing": "3.78.0",
- "@aws-sdk/middleware-stack": "3.78.0",
- "@aws-sdk/middleware-user-agent": "3.78.0",
- "@aws-sdk/node-config-provider": "3.80.0",
- "@aws-sdk/node-http-handler": "3.82.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/smithy-client": "3.85.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/url-parser": "3.78.0",
- "@aws-sdk/util-base64-browser": "3.58.0",
- "@aws-sdk/util-base64-node": "3.55.0",
- "@aws-sdk/util-body-length-browser": "3.55.0",
- "@aws-sdk/util-body-length-node": "3.55.0",
- "@aws-sdk/util-defaults-mode-browser": "3.85.0",
- "@aws-sdk/util-defaults-mode-node": "3.85.0",
- "@aws-sdk/util-user-agent-browser": "3.78.0",
- "@aws-sdk/util-user-agent-node": "3.80.0",
- "@aws-sdk/util-utf8-browser": "3.55.0",
- "@aws-sdk/util-utf8-node": "3.55.0",
- "entities": "2.2.0",
- "fast-xml-parser": "3.19.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/config-resolver": {
- "version": "3.80.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/config-resolver/-/config-resolver-3.80.0.tgz",
- "integrity": "sha512-vFruNKlmhsaC8yjnHmasi1WW/7EELlEuFTj4mqcqNqR4dfraf0maVvpqF1VSR8EstpFMsGYI5dmoWAnnG4PcLQ==",
+ "@aws-sdk/util-buffer-from": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.55.0.tgz",
+ "integrity": "sha512-uVzKG1UgvnV7XX2FPTylBujYMKBPBaq/qFBxfl0LVNfrty7YjpfieQxAe6yRLD+T0Kir/WDQwGvYC+tOYG3IGA==",
"dev": true,
"requires": {
- "@aws-sdk/signature-v4": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-config-provider": "3.55.0",
- "@aws-sdk/util-middleware": "3.78.0",
+ "@aws-sdk/is-array-buffer": "3.55.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/core": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/core/-/core-3.521.0.tgz",
- "integrity": "sha512-KovKmW7yg/P2HVG2dhV2DAJLyoeGelgsnSGHaktXo/josJ3vDGRNqqRSgVaqKFxnD98dPEMLrjkzZumNUNGvLw==",
+ "@aws-sdk/util-config-provider": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.55.0.tgz",
+ "integrity": "sha512-30dzofQQfx6tp1jVZkZ0DGRsT0wwC15nEysKRiAcjncM64A0Cm6sra77d0os3vbKiKoPCI/lMsFr4o3533+qvQ==",
"dev": true,
- "optional": true,
"requires": {
- "@smithy/core": "^1.3.3",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/signature-v4": "^2.1.1",
- "@smithy/smithy-client": "^2.4.0",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "tslib": "^2.3.1"
}
},
- "@aws-sdk/credential-provider-cognito-identity": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-cognito-identity/-/credential-provider-cognito-identity-3.521.0.tgz",
- "integrity": "sha512-HsLKT0MOQ1/3qM2smxgafuf7B9sbie/gsKEgQi9De7UhA8N9yGaXdo3HQFbyRbv4eZ0fj9Ja++UgFypUk4c3Kw==",
+ "@aws-sdk/util-defaults-mode-browser": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.85.0.tgz",
+ "integrity": "sha512-oqK/e2pHuMWrvTJWtDBzylbj232ezlTay5dCq4RQlyi3LPPVBQ08haYD1Mk2ikQ/qa0XvbSD6YVhjpTlvwRNjw==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/client-cognito-identity": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- },
- "dependencies": {
- "@aws-sdk/types": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
- "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- }
+ "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/types": "3.78.0",
+ "bowser": "^2.11.0",
+ "tslib": "^2.3.1"
}
},
- "@aws-sdk/credential-provider-env": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.78.0.tgz",
- "integrity": "sha512-K41VTIzVHm2RyIwtBER8Hte3huUBXdV1WKO+i7olYVgLFmaqcZUNrlyoGDRqZcQ/u4AbxTzBU9jeMIbIfzMOWg==",
+ "@aws-sdk/util-defaults-mode-node": {
+ "version": "3.85.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.85.0.tgz",
+ "integrity": "sha512-KDNl4H8jJJLh6y7I3MSwRKe4plKbFKK8MVkS0+Fce/GJh4EnqxF0HzMMaSeNUcPvO2wHRq2a60+XW+0d7eWo1A==",
"dev": true,
"requires": {
+ "@aws-sdk/config-resolver": "3.80.0",
+ "@aws-sdk/credential-provider-imds": "3.81.0",
+ "@aws-sdk/node-config-provider": "3.80.0",
"@aws-sdk/property-provider": "3.78.0",
"@aws-sdk/types": "3.78.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/credential-provider-http": {
+ "@aws-sdk/util-endpoints": {
"version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-http/-/credential-provider-http-3.521.0.tgz",
- "integrity": "sha512-yJM1yNGj2XFH8v6/ffWrFY5nC3/2+8qZ8c4mMMwZru8bYXeuSV4+NNfE59HUWvkAF7xP76u4gr4I8kNrMPTlfg==",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.521.0.tgz",
+ "integrity": "sha512-lO5+1LeAZycDqgNjQyZdPSdXFQKXaW5bRuQ3UIT3bOCcUAbDI0BYXlPm1huPNTCEkI9ItnDCbISbV0uF901VXw==",
"dev": true,
"optional": true,
"requires": {
"@aws-sdk/types": "3.521.0",
- "@smithy/fetch-http-handler": "^2.4.2",
- "@smithy/node-http-handler": "^2.4.0",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/smithy-client": "^2.4.0",
"@smithy/types": "^2.10.0",
- "@smithy/util-stream": "^2.1.2",
+ "@smithy/util-endpoints": "^1.1.2",
"tslib": "^2.5.0"
},
"dependencies": {
@@ -44467,6024 +43200,1730 @@
}
}
},
- "@aws-sdk/credential-provider-imds": {
- "version": "3.81.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-imds/-/credential-provider-imds-3.81.0.tgz",
- "integrity": "sha512-BHopP+gaovTYj+4tSrwCk8NNCR48gE9CWmpIOLkP9ell0gOL81Qh7aCEiIK0BZBZkccv1s16cYq1MSZZGS7PEQ==",
+ "@aws-sdk/util-hex-encoding": {
+ "version": "3.58.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.58.0.tgz",
+ "integrity": "sha512-Rl+jXUzk/FJkOLYfUVYPhKa2aUmTpeobRP31l8IatQltSzDgLyRHO35f6UEs7Ztn5s1jbu/POatLAZ2WjbgVyg==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ }
+ },
+ "@aws-sdk/util-locate-window": {
+ "version": "3.495.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.495.0.tgz",
+ "integrity": "sha512-MfaPXT0kLX2tQaR90saBT9fWQq2DHqSSJRzW+MZWsmF+y5LGCOhO22ac/2o6TKSQm7h0HRc2GaADqYYYor62yg==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.5.0"
+ }
+ },
+ "@aws-sdk/util-middleware": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.78.0.tgz",
+ "integrity": "sha512-Hi3wv2b0VogO4mzyeEaeU5KgIt4qeo0LXU5gS6oRrG0T7s2FyKbMBkJW3YDh/Y8fNwqArZ+/QQFujpP0PIKwkA==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ }
+ },
+ "@aws-sdk/util-stream-browser": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.78.0.tgz",
+ "integrity": "sha512-EcThf/sJoD4NYTUNO/nehR57lqkOuL6btRoVnm4LGUR8XgQcJ/WMYYgxOMY8E81xXzRFX2ukRHRxL2xmQsbHDw==",
"dev": true,
"requires": {
- "@aws-sdk/node-config-provider": "3.80.0",
- "@aws-sdk/property-provider": "3.78.0",
"@aws-sdk/types": "3.78.0",
- "@aws-sdk/url-parser": "3.78.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/credential-provider-ini": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.85.0.tgz",
- "integrity": "sha512-KgzLGq+w8OrSLutwdYUw0POeLinGQKcqvQJ9702eoeXCwZMnEHwKqU61bn8QKMX/tuYVCNV4I1enI7MmYPW8Lw==",
+ "@aws-sdk/util-stream-node": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.78.0.tgz",
+ "integrity": "sha512-CHfX37ioUyamAnlS2p4Nq+4BBjCSlZolFkVyxtVJwzPBBksdvjW67nKG+SShR48RBPJ5LEzbgAaEXNRktCSf6w==",
"dev": true,
"requires": {
- "@aws-sdk/credential-provider-env": "3.78.0",
- "@aws-sdk/credential-provider-imds": "3.81.0",
- "@aws-sdk/credential-provider-sso": "3.85.0",
- "@aws-sdk/credential-provider-web-identity": "3.78.0",
- "@aws-sdk/property-provider": "3.78.0",
- "@aws-sdk/shared-ini-file-loader": "3.80.0",
"@aws-sdk/types": "3.78.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/credential-provider-node": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.85.0.tgz",
- "integrity": "sha512-YMxpRJg88mvfmKxy8I5yG3rx+UmF/5a/4twcdAzCfYTAPz+bV6ypIHjFv610/kygHMm29Fof3DRvHXDdBH4mkw==",
+ "@aws-sdk/util-uri-escape": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.55.0.tgz",
+ "integrity": "sha512-mmdDLUpFCN2nkfwlLdOM54lTD528GiGSPN1qb8XtGLgZsJUmg3uJSFIN2lPeSbEwJB3NFjVas/rnQC48i7mV8w==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.3.1"
+ }
+ },
+ "@aws-sdk/util-user-agent-browser": {
+ "version": "3.78.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.78.0.tgz",
+ "integrity": "sha512-diGO/Bf4ggBOEnfD7lrrXaaXOwOXGz0bAJ0HhpizwEMlBld5zfDlWXjNpslh+8+u3EHRjPJQ16KGT6mp/Dm+aw==",
"dev": true,
"requires": {
- "@aws-sdk/credential-provider-env": "3.78.0",
- "@aws-sdk/credential-provider-imds": "3.81.0",
- "@aws-sdk/credential-provider-ini": "3.85.0",
- "@aws-sdk/credential-provider-process": "3.80.0",
- "@aws-sdk/credential-provider-sso": "3.85.0",
- "@aws-sdk/credential-provider-web-identity": "3.78.0",
- "@aws-sdk/property-provider": "3.78.0",
- "@aws-sdk/shared-ini-file-loader": "3.80.0",
"@aws-sdk/types": "3.78.0",
+ "bowser": "^2.11.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/credential-provider-process": {
+ "@aws-sdk/util-user-agent-node": {
"version": "3.80.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.80.0.tgz",
- "integrity": "sha512-3Ro+kMMyLUJHefOhGc5pOO/ibGcJi8bkj0z/Jtqd5I2Sm1qi7avoztST67/k48KMW1OqPnD/FUqxz5T8B2d+FQ==",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.80.0.tgz",
+ "integrity": "sha512-QV26qIXws1m6sZXg65NS+XrQ5NhAzbDVQLtEVE4nC39UN8fuieP6Uet/gZm9mlLI9hllwvcV7EfgBM3GSC7pZg==",
"dev": true,
"requires": {
- "@aws-sdk/property-provider": "3.78.0",
- "@aws-sdk/shared-ini-file-loader": "3.80.0",
+ "@aws-sdk/node-config-provider": "3.80.0",
"@aws-sdk/types": "3.78.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/credential-provider-sso": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.85.0.tgz",
- "integrity": "sha512-uE238BgJ/AftPDlBGDlV0XdiNWnUZxFmUmLxgbr19/6jHaCuBr//T6rP+Bc0BjcHkvQCvTdFoCjs17R3Quy3cw==",
+ "@aws-sdk/util-utf8-browser": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.55.0.tgz",
+ "integrity": "sha512-ljzqJcyjfJpEVSIAxwtIS8xMRUly84BdjlBXyp6cu4G8TUufgjNS31LWdhyGhgmW5vYBNr+LTz0Kwf6J+ou7Ug==",
"dev": true,
"requires": {
- "@aws-sdk/client-sso": "3.85.0",
- "@aws-sdk/property-provider": "3.78.0",
- "@aws-sdk/shared-ini-file-loader": "3.80.0",
- "@aws-sdk/types": "3.78.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/credential-provider-web-identity": {
+ "@aws-sdk/util-utf8-node": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.55.0.tgz",
+ "integrity": "sha512-FsFm7GFaC7j0tlPEm/ri8bU2QCwFW5WKjxUg8lm1oWaxplCpKGUsmcfPJ4sw58GIoyoGu4QXBK60oCWosZYYdQ==",
+ "dev": true,
+ "requires": {
+ "@aws-sdk/util-buffer-from": "3.55.0",
+ "tslib": "^2.3.1"
+ }
+ },
+ "@aws-sdk/util-waiter": {
"version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.78.0.tgz",
- "integrity": "sha512-9/IvqHdJaVqMEABA8xZE3t5YF1S2PepfckVu0Ws9YUglj6oO+2QyVX6aRgMF1xph6781+Yc31TDh8/3eaDja7w==",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.78.0.tgz",
+ "integrity": "sha512-8pWd0XiNOS8AkWQyac8VNEI+gz/cGWlC2TAE2CJp0rOK5XhvlcNBINai4D6TxQ+9foyJXLOI1b8nuXemekoG8A==",
"dev": true,
"requires": {
- "@aws-sdk/property-provider": "3.78.0",
+ "@aws-sdk/abort-controller": "3.78.0",
"@aws-sdk/types": "3.78.0",
"tslib": "^2.3.1"
}
},
- "@aws-sdk/credential-providers": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-providers/-/credential-providers-3.521.0.tgz",
- "integrity": "sha512-PYd93rIF99TtRYwFCKr/3G/eEMjQzEVFuX3lUoKWrNgDCd+Jeor/ol4HlDoeiSX/Y37HcFnvAFCKJwDGHOPsLw==",
+ "@aws-sdk/xml-builder": {
+ "version": "3.55.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.55.0.tgz",
+ "integrity": "sha512-BH+i5S2FLprmfSeIuGy3UbNtEoJPVjh8arl5+LV3i2KY/+TmrS4yT8JtztDlDxHF0cMtNLZNO0KEPtsACS6SOg==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/client-cognito-identity": "3.521.0",
- "@aws-sdk/client-sso": "3.521.0",
- "@aws-sdk/client-sts": "3.521.0",
- "@aws-sdk/credential-provider-cognito-identity": "3.521.0",
- "@aws-sdk/credential-provider-env": "3.521.0",
- "@aws-sdk/credential-provider-http": "3.521.0",
- "@aws-sdk/credential-provider-ini": "3.521.0",
- "@aws-sdk/credential-provider-node": "3.521.0",
- "@aws-sdk/credential-provider-process": "3.521.0",
- "@aws-sdk/credential-provider-sso": "3.521.0",
- "@aws-sdk/credential-provider-web-identity": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@smithy/credential-provider-imds": "^2.2.1",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "tslib": "^2.3.1"
+ }
+ },
+ "@azure/abort-controller": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.1.0.tgz",
+ "integrity": "sha512-TrRLIoSQVzfAJX9H1JeFjzAoDGcoK1IYX1UImfceTZpsyYfWr09Ss1aHW1y5TrrR3iq6RZLBwJ3E24uwPhwahw==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.2.0"
+ }
+ },
+ "@azure/core-auth": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.6.0.tgz",
+ "integrity": "sha512-3X9wzaaGgRaBCwhLQZDtFp5uLIXCPrGbwJNWPPugvL4xbIGgScv77YzzxToKGLAKvG9amDoofMoP+9hsH1vs1w==",
+ "dev": true,
+ "requires": {
+ "@azure/abort-controller": "^2.0.0",
+ "@azure/core-util": "^1.1.0",
+ "tslib": "^2.2.0"
},
"dependencies": {
- "@aws-crypto/ie11-detection": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz",
- "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==",
+ "@azure/abort-controller": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.0.0.tgz",
+ "integrity": "sha512-RP/mR/WJchR+g+nQFJGOec+nzeN/VvjlwbinccoqfhTsTHbb8X5+mLDp48kHT0ueyum0BNSwGm0kX0UZuIqTGg==",
"dev": true,
- "optional": true,
"requires": {
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
- }
+ "tslib": "^2.2.0"
}
- },
- "@aws-crypto/sha256-browser": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz",
- "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-crypto/ie11-detection": "^3.0.0",
- "@aws-crypto/sha256-js": "^3.0.0",
- "@aws-crypto/supports-web-crypto": "^3.0.0",
- "@aws-crypto/util": "^3.0.0",
- "@aws-sdk/types": "^3.222.0",
- "@aws-sdk/util-locate-window": "^3.0.0",
- "@aws-sdk/util-utf8-browser": "^3.0.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
- }
- }
- },
- "@aws-crypto/sha256-js": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz",
- "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-crypto/util": "^3.0.0",
- "@aws-sdk/types": "^3.222.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
- }
- }
- },
- "@aws-crypto/supports-web-crypto": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz",
- "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==",
- "dev": true,
- "optional": true,
- "requires": {
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
- }
- }
- },
- "@aws-crypto/util": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz",
- "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/types": "^3.222.0",
- "@aws-sdk/util-utf8-browser": "^3.0.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
- }
- }
- },
- "@aws-sdk/client-sso": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.521.0.tgz",
- "integrity": "sha512-aEx8kEvWmTwCja6hvIZd5PvxHsI1HQZkckXhw1UrkDPnfcAwQoQAgselI7D+PVT5qQDIjXRm0NpsvBLaLj6jZw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-crypto/sha256-browser": "3.0.0",
- "@aws-crypto/sha256-js": "3.0.0",
- "@aws-sdk/core": "3.521.0",
- "@aws-sdk/middleware-host-header": "3.521.0",
- "@aws-sdk/middleware-logger": "3.521.0",
- "@aws-sdk/middleware-recursion-detection": "3.521.0",
- "@aws-sdk/middleware-user-agent": "3.521.0",
- "@aws-sdk/region-config-resolver": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@aws-sdk/util-endpoints": "3.521.0",
- "@aws-sdk/util-user-agent-browser": "3.521.0",
- "@aws-sdk/util-user-agent-node": "3.521.0",
- "@smithy/config-resolver": "^2.1.2",
- "@smithy/core": "^1.3.3",
- "@smithy/fetch-http-handler": "^2.4.2",
- "@smithy/hash-node": "^2.1.2",
- "@smithy/invalid-dependency": "^2.1.2",
- "@smithy/middleware-content-length": "^2.1.2",
- "@smithy/middleware-endpoint": "^2.4.2",
- "@smithy/middleware-retry": "^2.1.2",
- "@smithy/middleware-serde": "^2.1.2",
- "@smithy/middleware-stack": "^2.1.2",
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/node-http-handler": "^2.4.0",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/smithy-client": "^2.4.0",
- "@smithy/types": "^2.10.0",
- "@smithy/url-parser": "^2.1.2",
- "@smithy/util-base64": "^2.1.1",
- "@smithy/util-body-length-browser": "^2.1.1",
- "@smithy/util-body-length-node": "^2.2.1",
- "@smithy/util-defaults-mode-browser": "^2.1.2",
- "@smithy/util-defaults-mode-node": "^2.2.1",
- "@smithy/util-endpoints": "^1.1.2",
- "@smithy/util-middleware": "^2.1.2",
- "@smithy/util-retry": "^2.1.2",
- "@smithy/util-utf8": "^2.1.1",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/client-sts": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.521.0.tgz",
- "integrity": "sha512-f1J5NDbntcwIHJqhks89sQvk7UXPmN0X0BZ2mgpj6pWP+NlPqy+1t1bia8qRhEuNITaEigoq6rqe9xaf4FdY9A==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-crypto/sha256-browser": "3.0.0",
- "@aws-crypto/sha256-js": "3.0.0",
- "@aws-sdk/core": "3.521.0",
- "@aws-sdk/middleware-host-header": "3.521.0",
- "@aws-sdk/middleware-logger": "3.521.0",
- "@aws-sdk/middleware-recursion-detection": "3.521.0",
- "@aws-sdk/middleware-user-agent": "3.521.0",
- "@aws-sdk/region-config-resolver": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@aws-sdk/util-endpoints": "3.521.0",
- "@aws-sdk/util-user-agent-browser": "3.521.0",
- "@aws-sdk/util-user-agent-node": "3.521.0",
- "@smithy/config-resolver": "^2.1.2",
- "@smithy/core": "^1.3.3",
- "@smithy/fetch-http-handler": "^2.4.2",
- "@smithy/hash-node": "^2.1.2",
- "@smithy/invalid-dependency": "^2.1.2",
- "@smithy/middleware-content-length": "^2.1.2",
- "@smithy/middleware-endpoint": "^2.4.2",
- "@smithy/middleware-retry": "^2.1.2",
- "@smithy/middleware-serde": "^2.1.2",
- "@smithy/middleware-stack": "^2.1.2",
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/node-http-handler": "^2.4.0",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/smithy-client": "^2.4.0",
- "@smithy/types": "^2.10.0",
- "@smithy/url-parser": "^2.1.2",
- "@smithy/util-base64": "^2.1.1",
- "@smithy/util-body-length-browser": "^2.1.1",
- "@smithy/util-body-length-node": "^2.2.1",
- "@smithy/util-defaults-mode-browser": "^2.1.2",
- "@smithy/util-defaults-mode-node": "^2.2.1",
- "@smithy/util-endpoints": "^1.1.2",
- "@smithy/util-middleware": "^2.1.2",
- "@smithy/util-retry": "^2.1.2",
- "@smithy/util-utf8": "^2.1.1",
- "fast-xml-parser": "4.2.5",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-env": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.521.0.tgz",
- "integrity": "sha512-OwblTJNdDAoqYVwcNfhlKDp5z+DINrjBfC6ZjNdlJpTXgxT3IqzuilTJTlydQ+2eG7aXfV9OwTVRQWdCmzFuKA==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-ini": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.521.0.tgz",
- "integrity": "sha512-HuhP1AlKgvBBxUIwxL/2DsDemiuwgbz1APUNSeJhDBF6JyZuxR0NU8zEZkvH9b4ukTcmcKGABpY0Wex4rAh3xw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/client-sts": "3.521.0",
- "@aws-sdk/credential-provider-env": "3.521.0",
- "@aws-sdk/credential-provider-process": "3.521.0",
- "@aws-sdk/credential-provider-sso": "3.521.0",
- "@aws-sdk/credential-provider-web-identity": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@smithy/credential-provider-imds": "^2.2.1",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/shared-ini-file-loader": "^2.3.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-node": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.521.0.tgz",
- "integrity": "sha512-N9SR4gWI10qh4V2myBcTw8IlX3QpsMMxa4Q8d/FHiAX6eNV7e6irXkXX8o7+J1gtCRy1AtBMqAdGsve4GVqYMQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/credential-provider-env": "3.521.0",
- "@aws-sdk/credential-provider-http": "3.521.0",
- "@aws-sdk/credential-provider-ini": "3.521.0",
- "@aws-sdk/credential-provider-process": "3.521.0",
- "@aws-sdk/credential-provider-sso": "3.521.0",
- "@aws-sdk/credential-provider-web-identity": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@smithy/credential-provider-imds": "^2.2.1",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/shared-ini-file-loader": "^2.3.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-process": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.521.0.tgz",
- "integrity": "sha512-EcJjcrpdklxbRAFFgSLk6QGVtvnfZ80ItfZ47VL9LkhWcDAkQ1Oi0esHq+zOgvjb7VkCyD3Q9CyEwT6MlJsriA==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/shared-ini-file-loader": "^2.3.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-sso": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.521.0.tgz",
- "integrity": "sha512-GAfc0ji+fC2k9VngYM3zsS1J5ojfWg0WUOBzavvHzkhx/O3CqOt82Vfikg3PvemAp9yOgKPMaasTHVeipNLBBQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/client-sso": "3.521.0",
- "@aws-sdk/token-providers": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/shared-ini-file-loader": "^2.3.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-web-identity": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.521.0.tgz",
- "integrity": "sha512-ZPPJqdbPOE4BkdrPrYBtsWg0Zy5b+GY1sbMWLQt0tcISgN5EIoePCS2pGNWnBUmBT+mibMQCVv9fOQpqzRkvAw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/client-sts": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/middleware-host-header": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.521.0.tgz",
- "integrity": "sha512-Bc4stnMtVAdqosYI1wedFK9tffclCuwpOK/JA4bxbnvSyP1kz4s1HBVT9OOMzdLRLWLwVj/RslXKfSbzOUP7ug==",
+ }
+ }
+ },
+ "@azure/core-client": {
+ "version": "1.8.0",
+ "resolved": "https://registry.npmjs.org/@azure/core-client/-/core-client-1.8.0.tgz",
+ "integrity": "sha512-+gHS3gEzPlhyQBMoqVPOTeNH031R5DM/xpCvz72y38C09rg4Hui/1sJS/ujoisDZbbSHyuRLVWdFlwL0pIFwbg==",
+ "dev": true,
+ "requires": {
+ "@azure/abort-controller": "^2.0.0",
+ "@azure/core-auth": "^1.4.0",
+ "@azure/core-rest-pipeline": "^1.9.1",
+ "@azure/core-tracing": "^1.0.0",
+ "@azure/core-util": "^1.0.0",
+ "@azure/logger": "^1.0.0",
+ "tslib": "^2.2.0"
+ },
+ "dependencies": {
+ "@azure/abort-controller": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.0.0.tgz",
+ "integrity": "sha512-RP/mR/WJchR+g+nQFJGOec+nzeN/VvjlwbinccoqfhTsTHbb8X5+mLDp48kHT0ueyum0BNSwGm0kX0UZuIqTGg==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "tslib": "^2.2.0"
}
- },
- "@aws-sdk/middleware-logger": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.521.0.tgz",
- "integrity": "sha512-JJ4nyYvLu3RyyNHo74Rlx6WKxJsAixWCEnnFb6IGRUHvsG+xBGU7HF5koY2log8BqlDLrt4ZUaV/CGy5Dp8Mfg==",
+ }
+ }
+ },
+ "@azure/core-http-compat": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@azure/core-http-compat/-/core-http-compat-2.0.1.tgz",
+ "integrity": "sha512-xpQZz/q7E0jSW4rckrTo2mDFDQgo6I69hBU4voMQi7REi6JRW5a+KfVkbJCFCWnkFmP6cAJ0IbuudTdf/MEBOQ==",
+ "dev": true,
+ "requires": {
+ "@azure/abort-controller": "^1.0.4",
+ "@azure/core-client": "^1.3.0",
+ "@azure/core-rest-pipeline": "^1.3.0"
+ }
+ },
+ "@azure/core-lro": {
+ "version": "2.6.0",
+ "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.6.0.tgz",
+ "integrity": "sha512-PyRNcaIOfMgoUC01/24NoG+k8O81VrKxYARnDlo+Q2xji0/0/j2nIt8BwQh294pb1c5QnXTDPbNR4KzoDKXEoQ==",
+ "dev": true,
+ "requires": {
+ "@azure/abort-controller": "^2.0.0",
+ "@azure/core-util": "^1.2.0",
+ "@azure/logger": "^1.0.0",
+ "tslib": "^2.2.0"
+ },
+ "dependencies": {
+ "@azure/abort-controller": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.0.0.tgz",
+ "integrity": "sha512-RP/mR/WJchR+g+nQFJGOec+nzeN/VvjlwbinccoqfhTsTHbb8X5+mLDp48kHT0ueyum0BNSwGm0kX0UZuIqTGg==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "tslib": "^2.2.0"
}
- },
- "@aws-sdk/middleware-user-agent": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.521.0.tgz",
- "integrity": "sha512-+hmQjWDG93wCcJn5QY2MkzAL1aG5wl3FJ/ud2nQOu/Gx7d4QVT/B6VJwoG6GSPVuVPZwzne5n9zPVst6RmWJGA==",
+ }
+ }
+ },
+ "@azure/core-paging": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.5.0.tgz",
+ "integrity": "sha512-zqWdVIt+2Z+3wqxEOGzR5hXFZ8MGKK52x4vFLw8n58pR6ZfKRx3EXYTxTaYxYHc/PexPUTyimcTWFJbji9Z6Iw==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.2.0"
+ }
+ },
+ "@azure/core-rest-pipeline": {
+ "version": "1.14.0",
+ "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.14.0.tgz",
+ "integrity": "sha512-Tp4M6NsjCmn9L5p7HsW98eSOS7A0ibl3e5ntZglozT0XuD/0y6i36iW829ZbBq0qihlGgfaeFpkLjZ418KDm1Q==",
+ "dev": true,
+ "requires": {
+ "@azure/abort-controller": "^2.0.0",
+ "@azure/core-auth": "^1.4.0",
+ "@azure/core-tracing": "^1.0.1",
+ "@azure/core-util": "^1.3.0",
+ "@azure/logger": "^1.0.0",
+ "http-proxy-agent": "^5.0.0",
+ "https-proxy-agent": "^5.0.0",
+ "tslib": "^2.2.0"
+ },
+ "dependencies": {
+ "@azure/abort-controller": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.0.0.tgz",
+ "integrity": "sha512-RP/mR/WJchR+g+nQFJGOec+nzeN/VvjlwbinccoqfhTsTHbb8X5+mLDp48kHT0ueyum0BNSwGm0kX0UZuIqTGg==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/types": "3.521.0",
- "@aws-sdk/util-endpoints": "3.521.0",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "tslib": "^2.2.0"
}
},
- "@aws-sdk/types": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
- "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
+ "@tootallnate/once": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
+ "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
+ "dev": true
},
- "@aws-sdk/util-user-agent-browser": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.521.0.tgz",
- "integrity": "sha512-2t3uW6AXOvJ5iiI1JG9zPqKQDc/TRFa+v13aqT5KKw9h3WHFyRUpd4sFQL6Ul0urrq2Zg9cG4NHBkei3k9lsHA==",
+ "agent-base": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
+ "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/types": "^2.10.0",
- "bowser": "^2.11.0",
- "tslib": "^2.5.0"
+ "debug": "4"
}
},
- "@aws-sdk/util-user-agent-node": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.521.0.tgz",
- "integrity": "sha512-g4KMEiyLc8DG21eMrp6fJUdfQ9F0fxfCNMDRgf0SE/pWI/u4vuWR2n8obLwq1pMVx7Ksva1NO3dc+a3Rgr0hag==",
+ "http-proxy-agent": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
+ "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "@tootallnate/once": "2",
+ "agent-base": "6",
+ "debug": "4"
}
},
- "fast-xml-parser": {
- "version": "4.2.5",
- "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz",
- "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==",
+ "https-proxy-agent": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
+ "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
"dev": true,
- "optional": true,
"requires": {
- "strnum": "^1.0.5"
+ "agent-base": "6",
+ "debug": "4"
}
}
}
},
- "@aws-sdk/endpoint-cache": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/endpoint-cache/-/endpoint-cache-3.55.0.tgz",
- "integrity": "sha512-kxDoHFDuQwZEEUZRp+ZLOg68EXuKPzUN86DcpIZantDVcmu7MSPTbbQp9DZd8MnKVEKCP7Sop5f7zCqOPl3LXw==",
+ "@azure/core-tracing": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.1.tgz",
+ "integrity": "sha512-I5CGMoLtX+pI17ZdiFJZgxMJApsK6jjfm85hpgp3oazCdq5Wxgh4wMr7ge/TTWW1B5WBuvIOI1fMU/FrOAMKrw==",
"dev": true,
"requires": {
- "mnemonist": "0.38.3",
- "tslib": "^2.3.1"
+ "tslib": "^2.2.0"
}
},
- "@aws-sdk/eventstream-marshaller": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-marshaller/-/eventstream-marshaller-3.78.0.tgz",
- "integrity": "sha512-BMbRvLe6wNWQ+NO1pdPw3kGXXEdYV94BxEr3rTkKwr5yHpl8sUb/Va9sJJufUjzggpgE4vYu5nVsrT8ByMYXuA==",
+ "@azure/core-util": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.7.0.tgz",
+ "integrity": "sha512-Zq2i3QO6k9DA8vnm29mYM4G8IE9u1mhF1GUabVEqPNX8Lj833gdxQ2NAFxt2BZsfAL+e9cT8SyVN7dFVJ/Hf0g==",
"dev": true,
"requires": {
- "@aws-crypto/crc32": "2.0.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-hex-encoding": "3.58.0",
- "tslib": "^2.3.1"
+ "@azure/abort-controller": "^2.0.0",
+ "tslib": "^2.2.0"
+ },
+ "dependencies": {
+ "@azure/abort-controller": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.0.0.tgz",
+ "integrity": "sha512-RP/mR/WJchR+g+nQFJGOec+nzeN/VvjlwbinccoqfhTsTHbb8X5+mLDp48kHT0ueyum0BNSwGm0kX0UZuIqTGg==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.2.0"
+ }
+ }
}
},
- "@aws-sdk/eventstream-serde-browser": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-browser/-/eventstream-serde-browser-3.78.0.tgz",
- "integrity": "sha512-ehQI2iLsj8MMskDRbrPB7SibIdJq6LleBP6ojT+cgrLJRbVXUOxK+3MPHDZVdGYx4ukVg48E1fA2DzVfAp7Emw==",
+ "@azure/identity": {
+ "version": "3.4.2",
+ "resolved": "https://registry.npmjs.org/@azure/identity/-/identity-3.4.2.tgz",
+ "integrity": "sha512-0q5DL4uyR0EZ4RXQKD8MadGH6zTIcloUoS/RVbCpNpej4pwte0xpqYxk8K97Py2RiuUvI7F4GXpoT4046VfufA==",
"dev": true,
"requires": {
- "@aws-sdk/eventstream-marshaller": "3.78.0",
- "@aws-sdk/eventstream-serde-universal": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@azure/abort-controller": "^1.0.0",
+ "@azure/core-auth": "^1.5.0",
+ "@azure/core-client": "^1.4.0",
+ "@azure/core-rest-pipeline": "^1.1.0",
+ "@azure/core-tracing": "^1.0.0",
+ "@azure/core-util": "^1.6.1",
+ "@azure/logger": "^1.0.0",
+ "@azure/msal-browser": "^3.5.0",
+ "@azure/msal-node": "^2.5.1",
+ "events": "^3.0.0",
+ "jws": "^4.0.0",
+ "open": "^8.0.0",
+ "stoppable": "^1.1.0",
+ "tslib": "^2.2.0"
+ },
+ "dependencies": {
+ "events": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
+ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+ "dev": true
+ }
}
},
- "@aws-sdk/eventstream-serde-config-resolver": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-config-resolver/-/eventstream-serde-config-resolver-3.78.0.tgz",
- "integrity": "sha512-iUG0wtZH/L7d6XfipwbhgjBHip0uTm9S27EasCn+g0CunbW6w7rXd7rfMqA+gSLVXPTBYjTMPIwRxrTCdRprwA==",
- "dev": true,
- "requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
- }
- },
- "@aws-sdk/eventstream-serde-node": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-node/-/eventstream-serde-node-3.78.0.tgz",
- "integrity": "sha512-H78LLoZEngZBSdk3lRQkAaR3cGsy/3UIjq9AFPeqoPVQtHkzBob1jVfE/5VSVAMhKLxWn8iqhRPS37AvyBGOwQ==",
+ "@azure/keyvault-keys": {
+ "version": "4.8.0",
+ "resolved": "https://registry.npmjs.org/@azure/keyvault-keys/-/keyvault-keys-4.8.0.tgz",
+ "integrity": "sha512-jkuYxgkw0aaRfk40OQhFqDIupqblIOIlYESWB6DKCVDxQet1pyv86Tfk9M+5uFM0+mCs6+MUHU+Hxh3joiUn4Q==",
"dev": true,
"requires": {
- "@aws-sdk/eventstream-marshaller": "3.78.0",
- "@aws-sdk/eventstream-serde-universal": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@azure/abort-controller": "^1.0.0",
+ "@azure/core-auth": "^1.3.0",
+ "@azure/core-client": "^1.5.0",
+ "@azure/core-http-compat": "^2.0.1",
+ "@azure/core-lro": "^2.2.0",
+ "@azure/core-paging": "^1.1.1",
+ "@azure/core-rest-pipeline": "^1.8.1",
+ "@azure/core-tracing": "^1.0.0",
+ "@azure/core-util": "^1.0.0",
+ "@azure/logger": "^1.0.0",
+ "tslib": "^2.2.0"
}
},
- "@aws-sdk/eventstream-serde-universal": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/eventstream-serde-universal/-/eventstream-serde-universal-3.78.0.tgz",
- "integrity": "sha512-PZTLdyF923/1GJuMNtq9VMGd2vEx33HhsGInXvYtulKDSD5SgaTGj+Dz5wYepqL1gUEuXqZjBD71uZgrY/JgRg==",
+ "@azure/logger": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.4.tgz",
+ "integrity": "sha512-ustrPY8MryhloQj7OWGe+HrYx+aoiOxzbXTtgblbV3xwCqpzUK36phH3XNHQKj3EPonyFUuDTfR3qFhTEAuZEg==",
"dev": true,
"requires": {
- "@aws-sdk/eventstream-marshaller": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "tslib": "^2.2.0"
}
},
- "@aws-sdk/fetch-http-handler": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/fetch-http-handler/-/fetch-http-handler-3.78.0.tgz",
- "integrity": "sha512-cR6r2h2kJ1DNEZSXC6GknQB7OKmy+s9ZNV+g3AsNqkrUmNNOaHpFoSn+m6SC3qaclcGd0eQBpqzSu/TDn23Ihw==",
+ "@azure/msal-browser": {
+ "version": "3.13.0",
+ "resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-3.13.0.tgz",
+ "integrity": "sha512-fD906nmJei3yE7la6DZTdUtXKvpwzJURkfsiz9747Icv4pit77cegSm6prJTKLQ1fw4iiZzrrWwxnhMLrTf5gQ==",
"dev": true,
"requires": {
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/querystring-builder": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-base64-browser": "3.58.0",
- "tslib": "^2.3.1"
+ "@azure/msal-common": "14.9.0"
}
},
- "@aws-sdk/hash-blob-browser": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/hash-blob-browser/-/hash-blob-browser-3.78.0.tgz",
- "integrity": "sha512-IEkA+t6qJEtEYEZgsqFRRITeZJ3mirw7IHJVHxwb86lpeufTVcbILI59B8/rhbqG+9dk0kWTjYSjC/ZdM+rgHA==",
+ "@azure/msal-common": {
+ "version": "14.9.0",
+ "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-14.9.0.tgz",
+ "integrity": "sha512-yzBPRlWPnTBeixxLNI3BBIgF5/bHpbhoRVuuDBnYjCyWRavaPUsKAHUDYLqpGkBLDciA6TCc6GOxN4/S3WiSxg==",
+ "dev": true
+ },
+ "@azure/msal-node": {
+ "version": "2.7.0",
+ "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-2.7.0.tgz",
+ "integrity": "sha512-wXD8LkUvHICeSWZydqg6o8Yvv+grlBEcmLGu+QEI4FcwFendbTEZrlSygnAXXSOCVaGAirWLchca35qrgpO6Jw==",
"dev": true,
"requires": {
- "@aws-sdk/chunked-blob-reader": "3.55.0",
- "@aws-sdk/chunked-blob-reader-native": "3.58.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@azure/msal-common": "14.9.0",
+ "jsonwebtoken": "^9.0.0",
+ "uuid": "^8.3.0"
}
},
- "@aws-sdk/hash-node": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/hash-node/-/hash-node-3.78.0.tgz",
- "integrity": "sha512-ev48yXaqZVtMeuKy52LUZPHCyKvkKQ9uiUebqkA+zFxIk+eN8SMPFHmsififIHWuS6ZkXBUSctjH9wmLebH60A==",
+ "@babel/code-frame": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz",
+ "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-buffer-from": "3.55.0",
- "tslib": "^2.3.1"
+ "@babel/highlight": "^7.24.7",
+ "picocolors": "^1.0.0"
}
},
- "@aws-sdk/hash-stream-node": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/hash-stream-node/-/hash-stream-node-3.78.0.tgz",
- "integrity": "sha512-y42Pm0Nk6zf/MI6acLFVFAMya0Ncvy6F6Xu5aYAmwIMIoMI0ctNeyuL/Dikgt8+oyxC+kORw+W9jtzgWj2zY/w==",
+ "@babel/compat-data": {
+ "version": "7.25.2",
+ "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.25.2.tgz",
+ "integrity": "sha512-bYcppcpKBvX4znYaPEeFau03bp89ShqNMLs+rmdptMw+heSZh9+z84d2YG+K7cYLbWwzdjtDoW/uqZmPjulClQ==",
+ "dev": true
+ },
+ "@babel/core": {
+ "version": "7.22.17",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.17.tgz",
+ "integrity": "sha512-2EENLmhpwplDux5PSsZnSbnSkB3tZ6QTksgO25xwEL7pIDcNOMhF5v/s6RzwjMZzZzw9Ofc30gHv5ChCC8pifQ==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.22.13",
+ "@babel/generator": "^7.22.15",
+ "@babel/helper-compilation-targets": "^7.22.15",
+ "@babel/helper-module-transforms": "^7.22.17",
+ "@babel/helpers": "^7.22.15",
+ "@babel/parser": "^7.22.16",
+ "@babel/template": "^7.22.15",
+ "@babel/traverse": "^7.22.17",
+ "@babel/types": "^7.22.17",
+ "convert-source-map": "^1.7.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true
+ }
}
},
- "@aws-sdk/invalid-dependency": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/invalid-dependency/-/invalid-dependency-3.78.0.tgz",
- "integrity": "sha512-zUo+PbeRMN/Mzj6y+6p9qqk/znuFetT1gmpOcZGL9Rp2T+b9WJWd+daq5ktsL10sVCzIt2UvneJRz6b+aU+bfw==",
+ "@babel/generator": {
+ "version": "7.25.0",
+ "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.25.0.tgz",
+ "integrity": "sha512-3LEEcj3PVW8pW2R1SR1M89g/qrYk/m/mB/tLqn7dn4sbBUQyTqnlod+II2U4dqiGtUmkcnAmkMDralTFZttRiw==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/types": "^7.25.0",
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25",
+ "jsesc": "^2.5.1"
}
},
- "@aws-sdk/is-array-buffer": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/is-array-buffer/-/is-array-buffer-3.55.0.tgz",
- "integrity": "sha512-NbiPHVYuPxdqdFd6FxzzN3H1BQn/iWA3ri3Ry7AyLeP/tGs1yzEWMwf8BN8TSMALI0GXT6Sh0GDWy3Ok5xB6DA==",
+ "@babel/helper-annotate-as-pure": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz",
+ "integrity": "sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/md5-js": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/md5-js/-/md5-js-3.78.0.tgz",
- "integrity": "sha512-vKOXJWJvv6QH6rnqMYEWzwAnMr4hfcmY8+t6BAuTcDpcEVF77e3bwUcaajXi2U0JMuNvnLwuJF3h6kL6aX4l6g==",
+ "@babel/helper-builder-binary-assignment-operator-visitor": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.7.tgz",
+ "integrity": "sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-utf8-browser": "3.55.0",
- "@aws-sdk/util-utf8-node": "3.55.0",
- "tslib": "^2.3.1"
+ "@babel/traverse": "^7.24.7",
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/middleware-bucket-endpoint": {
- "version": "3.80.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-bucket-endpoint/-/middleware-bucket-endpoint-3.80.0.tgz",
- "integrity": "sha512-FSSx6IgT7xftSlpjxoPKv8XI9nv7EK+OCODo2s3CmElMW1kBRdmQ/ImVuTwvqhdxJEVUeUdgupmC7cqyqgt04w==",
+ "@babel/helper-compilation-targets": {
+ "version": "7.25.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.25.2.tgz",
+ "integrity": "sha512-U2U5LsSaZ7TAt3cfaymQ8WHh0pxvdHoEk6HVpaexxixjyEquMh0L0YNJNM6CTGKMXV1iksi0iZkGw4AcFkPaaw==",
"dev": true,
"requires": {
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-arn-parser": "3.55.0",
- "@aws-sdk/util-config-provider": "3.55.0",
- "tslib": "^2.3.1"
+ "@babel/compat-data": "^7.25.2",
+ "@babel/helper-validator-option": "^7.24.8",
+ "browserslist": "^4.23.1",
+ "lru-cache": "^5.1.1",
+ "semver": "^6.3.1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true
+ }
}
},
- "@aws-sdk/middleware-content-length": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-content-length/-/middleware-content-length-3.78.0.tgz",
- "integrity": "sha512-5MpKt6lB9TdFy25/AGrpOjPY0iDHZAKpEHc+jSOJBXLl6xunXA7qHdiYaVqkWodLxy70nIckGNHqQ3drabidkA==",
+ "@babel/helper-create-class-features-plugin": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.7.tgz",
+ "integrity": "sha512-kTkaDl7c9vO80zeX1rJxnuRpEsD5tA81yh11X1gQo+PhSti3JS+7qeZo9U4RHobKRiFPKaGK3svUAeb8D0Q7eg==",
"dev": true,
"requires": {
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-annotate-as-pure": "^7.24.7",
+ "@babel/helper-environment-visitor": "^7.24.7",
+ "@babel/helper-function-name": "^7.24.7",
+ "@babel/helper-member-expression-to-functions": "^7.24.7",
+ "@babel/helper-optimise-call-expression": "^7.24.7",
+ "@babel/helper-replace-supers": "^7.24.7",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7",
+ "@babel/helper-split-export-declaration": "^7.24.7",
+ "semver": "^6.3.1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true
+ }
}
},
- "@aws-sdk/middleware-endpoint-discovery": {
- "version": "3.80.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-endpoint-discovery/-/middleware-endpoint-discovery-3.80.0.tgz",
- "integrity": "sha512-73pKz8ossZKisG684raP1dn2u3fQRktWY29oa9Q3cBvRYdyu5UOhwayt2MObgSC8S6NfNdTGC/DGf7+/JRSY7A==",
+ "@babel/helper-create-regexp-features-plugin": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.24.7.tgz",
+ "integrity": "sha512-03TCmXy2FtXJEZfbXDTSqq1fRJArk7lX9DOFC/47VthYcxyIOx+eXQmdo6DOQvrbpIix+KfXwvuXdFDZHxt+rA==",
"dev": true,
"requires": {
- "@aws-sdk/config-resolver": "3.80.0",
- "@aws-sdk/endpoint-cache": "3.55.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-annotate-as-pure": "^7.24.7",
+ "regexpu-core": "^5.3.1",
+ "semver": "^6.3.1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true
+ }
}
},
- "@aws-sdk/middleware-expect-continue": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-expect-continue/-/middleware-expect-continue-3.78.0.tgz",
- "integrity": "sha512-IXfcSugFV3uNk50VQsN/Cm80iCsUSwcYJ5RzEwy7wXbZ+KM03xWXlbXzqkeTDnS74wLWSw09nKF3rkp1eyfDfg==",
+ "@babel/helper-define-polyfill-provider": {
+ "version": "0.6.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz",
+ "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==",
"dev": true,
"requires": {
- "@aws-sdk/middleware-header-default": "3.78.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-compilation-targets": "^7.22.6",
+ "@babel/helper-plugin-utils": "^7.22.5",
+ "debug": "^4.1.1",
+ "lodash.debounce": "^4.0.8",
+ "resolve": "^1.14.2"
}
},
- "@aws-sdk/middleware-flexible-checksums": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-flexible-checksums/-/middleware-flexible-checksums-3.78.0.tgz",
- "integrity": "sha512-1jjxHcB3Le/2Z7BzugXzZnIwKGlUluNm0d1lB4fF2QVq3GHlA6e8uv0rCtqe/3wSsrzV6YzJ8vjioymKSNIjKQ==",
+ "@babel/helper-environment-visitor": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz",
+ "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==",
"dev": true,
"requires": {
- "@aws-crypto/crc32": "2.0.0",
- "@aws-crypto/crc32c": "2.0.0",
- "@aws-sdk/is-array-buffer": "3.55.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/middleware-header-default": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-header-default/-/middleware-header-default-3.78.0.tgz",
- "integrity": "sha512-USyOIF7ObBVMKbV/8lOBLDNwMAGdOtujd+RO/9dX6OQLceUTKIS1dOfJoYYwRHgengn7ikpDxoyROyspPYYDZQ==",
+ "@babel/helper-function-name": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz",
+ "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==",
"dev": true,
"requires": {
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/template": "^7.24.7",
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/middleware-host-header": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.78.0.tgz",
- "integrity": "sha512-1zL8uaDWGmH50c8B8jjz75e0ePj6/3QeZEhjJgTgL6DTdiqvRt32p3t+XWHW+yDI14fZZUYeTklAaLVxqFrHqQ==",
+ "@babel/helper-hoist-variables": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz",
+ "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==",
"dev": true,
"requires": {
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/middleware-location-constraint": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-location-constraint/-/middleware-location-constraint-3.78.0.tgz",
- "integrity": "sha512-m626H1WwXYJtwHEkV/2DsLlu1ckWq3j57NzsexZki3qS0nU8HEiDl6YYi+k84vDD4Qpba6EI9AdhzwnvZLXtGw==",
+ "@babel/helper-member-expression-to-functions": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.7.tgz",
+ "integrity": "sha512-LGeMaf5JN4hAT471eJdBs/GK1DoYIJ5GCtZN/EsL6KUiiDZOvO/eKE11AMZJa2zP4zk4qe9V2O/hxAmkRc8p6w==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/traverse": "^7.24.7",
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/middleware-logger": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.78.0.tgz",
- "integrity": "sha512-GBhwxNjhCJUIeQQDaGasX/C23Jay77al2vRyGwmxf8no0DdFsa4J1Ik6/2hhIqkqko+WM4SpCnpZrY4MtnxNvA==",
+ "@babel/helper-module-imports": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz",
+ "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/traverse": "^7.24.7",
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/middleware-recursion-detection": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-recursion-detection/-/middleware-recursion-detection-3.521.0.tgz",
- "integrity": "sha512-1m5AsC55liTlaYMjc4pIQfjfBHG9LpWgubSl4uUxJSdI++zdA/SRBwXl40p7Ac/y5esweluhWabyiv1g/W4+Xg==",
+ "@babel/helper-module-transforms": {
+ "version": "7.25.2",
+ "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.25.2.tgz",
+ "integrity": "sha512-BjyRAbix6j/wv83ftcVJmBt72QtHI56C7JXZoG2xATiLpmoC7dpd8WnkikExHDVPpi/3qCmO6WY1EaXOluiecQ==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- },
- "dependencies": {
- "@aws-sdk/types": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
- "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- }
+ "@babel/helper-module-imports": "^7.24.7",
+ "@babel/helper-simple-access": "^7.24.7",
+ "@babel/helper-validator-identifier": "^7.24.7",
+ "@babel/traverse": "^7.25.2"
}
},
- "@aws-sdk/middleware-retry": {
- "version": "3.80.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-retry/-/middleware-retry-3.80.0.tgz",
- "integrity": "sha512-CTk+tA4+WMUNOcUfR6UQrkhwvPYFpnMsQ1vuHlpLFOGG3nCqywA2hueLMRQmVcDXzP0sGeygce6dzRI9dJB/GA==",
+ "@babel/helper-optimise-call-expression": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.7.tgz",
+ "integrity": "sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A==",
"dev": true,
"requires": {
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/service-error-classification": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-middleware": "3.78.0",
- "tslib": "^2.3.1",
- "uuid": "^8.3.2"
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/middleware-sdk-s3": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-s3/-/middleware-sdk-s3-3.78.0.tgz",
- "integrity": "sha512-gxtfVHaL0CkKDIEwRQnmBequtN3dsCtY5LByZQoP3l5qEuTAzwxgbtvGUfHE8LwDVByBqUEFanzafjv1KJ3F8w==",
+ "@babel/helper-plugin-utils": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz",
+ "integrity": "sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==",
+ "dev": true
+ },
+ "@babel/helper-remap-async-to-generator": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.24.7.tgz",
+ "integrity": "sha512-9pKLcTlZ92hNZMQfGCHImUpDOlAgkkpqalWEeftW5FBya75k8Li2ilerxkM/uBEj01iBZXcCIB/bwvDYgWyibA==",
"dev": true,
"requires": {
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-arn-parser": "3.55.0",
- "tslib": "^2.3.1"
+ "@babel/helper-annotate-as-pure": "^7.24.7",
+ "@babel/helper-environment-visitor": "^7.24.7",
+ "@babel/helper-wrap-function": "^7.24.7"
}
},
- "@aws-sdk/middleware-sdk-sqs": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sqs/-/middleware-sdk-sqs-3.78.0.tgz",
- "integrity": "sha512-EY1K/qDOxfdFWZHFYmrhxu1N4BOuNnGFh+2XbpHU0nlokMX63aHofnSHGFldoAW5rAy604x5cGn39nP0H+vgOg==",
+ "@babel/helper-replace-supers": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.7.tgz",
+ "integrity": "sha512-qTAxxBM81VEyoAY0TtLrx1oAEJc09ZK67Q9ljQToqCnA+55eNwCORaxlKyu+rNfX86o8OXRUSNUnrtsAZXM9sg==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-hex-encoding": "3.58.0",
- "tslib": "^2.3.1"
+ "@babel/helper-environment-visitor": "^7.24.7",
+ "@babel/helper-member-expression-to-functions": "^7.24.7",
+ "@babel/helper-optimise-call-expression": "^7.24.7"
}
},
- "@aws-sdk/middleware-sdk-sts": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-sdk-sts/-/middleware-sdk-sts-3.78.0.tgz",
- "integrity": "sha512-Lu/kN0J0/Kt0ON1hvwNel+y8yvf35licfIgtedHbBCa/ju8qQ9j+uL9Lla6Y5Tqu29yVaye1JxhiIDhscSwrLA==",
+ "@babel/helper-simple-access": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz",
+ "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==",
"dev": true,
"requires": {
- "@aws-sdk/middleware-signing": "3.78.0",
- "@aws-sdk/property-provider": "3.78.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/signature-v4": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/traverse": "^7.24.7",
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/middleware-serde": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-serde/-/middleware-serde-3.78.0.tgz",
- "integrity": "sha512-4DPsNOxsl1bxRzfo1WXEZjmD7OEi7qGNpxrDWucVe96Fqj2dH08jR8wxvBIVV1e6bAad07IwdPuCGmivNvwRuQ==",
+ "@babel/helper-skip-transparent-expression-wrappers": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.7.tgz",
+ "integrity": "sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/traverse": "^7.24.7",
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/middleware-signing": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-signing/-/middleware-signing-3.78.0.tgz",
- "integrity": "sha512-OEjJJCNhHHSOprLZ9CzjHIXEKFtPHWP/bG9pMhkV3/6Bmscsgcf8gWHcOnmIrjqX+hT1VALDNpl/RIh0J6/eQw==",
+ "@babel/helper-split-export-declaration": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz",
+ "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==",
"dev": true,
"requires": {
- "@aws-sdk/property-provider": "3.78.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/signature-v4": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/middleware-ssec": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-ssec/-/middleware-ssec-3.78.0.tgz",
- "integrity": "sha512-3z+UOd95rxvj+iO6WxMjuRNNUMlO6xhXZdBHvQmoiyS+9nMDcNieTu6gfQyLAilVeCh8xU9a0IenJuIYVdJ96g==",
+ "@babel/helper-string-parser": {
+ "version": "7.24.8",
+ "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz",
+ "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==",
+ "dev": true
+ },
+ "@babel/helper-validator-identifier": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz",
+ "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==",
+ "dev": true
+ },
+ "@babel/helper-validator-option": {
+ "version": "7.24.8",
+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.8.tgz",
+ "integrity": "sha512-xb8t9tD1MHLungh/AIoWYN+gVHaB9kwlu8gffXGSt3FFEIT7RjS+xWbc2vUD1UTZdIpKj/ab3rdqJ7ufngyi2Q==",
+ "dev": true
+ },
+ "@babel/helper-wrap-function": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.24.7.tgz",
+ "integrity": "sha512-N9JIYk3TD+1vq/wn77YnJOqMtfWhNewNE+DJV4puD2X7Ew9J4JvrzrFDfTfyv5EgEXVy9/Wt8QiOErzEmv5Ifw==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-function-name": "^7.24.7",
+ "@babel/template": "^7.24.7",
+ "@babel/traverse": "^7.24.7",
+ "@babel/types": "^7.24.7"
}
},
- "@aws-sdk/middleware-stack": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-stack/-/middleware-stack-3.78.0.tgz",
- "integrity": "sha512-UoNfRh6eAJN3BJHlG1eb+KeuSe+zARTC2cglroJRyHc2j7GxH2i9FD3IJbj5wvzopJEnQzuY/VCs6STFkqWL1g==",
+ "@babel/helpers": {
+ "version": "7.25.0",
+ "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.25.0.tgz",
+ "integrity": "sha512-MjgLZ42aCm0oGjJj8CtSM3DB8NOOf8h2l7DCTePJs29u+v7yO/RBX9nShlKMgFnRks/Q4tBAe7Hxnov9VkGwLw==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/template": "^7.25.0",
+ "@babel/types": "^7.25.0"
}
},
- "@aws-sdk/middleware-user-agent": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.78.0.tgz",
- "integrity": "sha512-wdN5uoq8RxxhLhj0EPeuDSRFuXfUwKeEqRzCKMsYAOC0cAm+PryaP2leo0oTGJ9LUK8REK7zyfFcmtC4oOzlkA==",
+ "@babel/highlight": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz",
+ "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==",
"dev": true,
"requires": {
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-validator-identifier": "^7.24.7",
+ "chalk": "^2.4.2",
+ "js-tokens": "^4.0.0",
+ "picocolors": "^1.0.0"
}
},
- "@aws-sdk/node-config-provider": {
- "version": "3.80.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/node-config-provider/-/node-config-provider-3.80.0.tgz",
- "integrity": "sha512-vyTOMK04huB7n10ZUv0thd2TE6KlY8livOuLqFTMtj99AJ6vyeB5XBNwKnQtJIt/P7CijYgp8KcFvI9fndOmKg==",
+ "@babel/parser": {
+ "version": "7.25.3",
+ "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.3.tgz",
+ "integrity": "sha512-iLTJKDbJ4hMvFPgQwwsVoxtHyWpKKPBrxkANrSYewDPaPpT5py5yeVkgPIJ7XYXhndxJpaA3PyALSXQ7u8e/Dw==",
"dev": true,
"requires": {
- "@aws-sdk/property-provider": "3.78.0",
- "@aws-sdk/shared-ini-file-loader": "3.80.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/types": "^7.25.2"
}
},
- "@aws-sdk/node-http-handler": {
- "version": "3.82.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/node-http-handler/-/node-http-handler-3.82.0.tgz",
- "integrity": "sha512-yyq/DA/IMzL4fLJhV7zVfP7aUQWPHfOKTCJjWB3KeV5YPiviJtSKb/KyzNi+gQyO7SmsL/8vQbQrf3/s7N/2OA==",
+ "@babel/plugin-bugfix-firefox-class-in-computed-class-key": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.7.tgz",
+ "integrity": "sha512-TiT1ss81W80eQsN+722OaeQMY/G4yTb4G9JrqeiDADs3N8lbPMGldWi9x8tyqCW5NLx1Jh2AvkE6r6QvEltMMQ==",
"dev": true,
"requires": {
- "@aws-sdk/abort-controller": "3.78.0",
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/querystring-builder": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-environment-visitor": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/property-provider": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/property-provider/-/property-provider-3.78.0.tgz",
- "integrity": "sha512-PZpLvV0hF6lqg3CSN9YmphrB/t5LVJVWGJLB9d9qm7sJs5ksjTYBb5bY91OQ3zit0F4cqBMU8xt2GQ9J6d4DvQ==",
+ "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.7.tgz",
+ "integrity": "sha512-unaQgZ/iRu/By6tsjMZzpeBZjChYfLYry6HrEXPoz3KmfF0sVBQ1l8zKMQ4xRGLWVsjuvB8nQfjNP/DcfEOCsg==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/protocol-http": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/protocol-http/-/protocol-http-3.78.0.tgz",
- "integrity": "sha512-SQB26MhEK96yDxyXd3UAaxLz1Y/ZvgE4pzv7V3wZiokdEedM0kawHKEn1UQJlqJLEZcQI9QYyysh3rTvHZ3fyg==",
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.7.tgz",
+ "integrity": "sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7",
+ "@babel/plugin-transform-optional-chaining": "^7.24.7"
}
},
- "@aws-sdk/querystring-builder": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-builder/-/querystring-builder-3.78.0.tgz",
- "integrity": "sha512-aib6RW1WAaTQDqVgRU1Ku9idkhm90gJKbCxVaGId+as6QHNUqMChEfK2v+0afuKiPNOs5uWmqvOXI9+Gt+UGDg==",
+ "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.7.tgz",
+ "integrity": "sha512-utA4HuR6F4Vvcr+o4DnjL8fCOlgRFGbeeBEGNg3ZTrLFw6VWG5XmUrvcQ0FjIYMU2ST4XcR2Wsp7t9qOAPnxMg==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-uri-escape": "3.55.0",
- "tslib": "^2.3.1"
+ "@babel/helper-environment-visitor": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/querystring-parser": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/querystring-parser/-/querystring-parser-3.78.0.tgz",
- "integrity": "sha512-csaH8YTyN+KMNczeK6fBS8l7iJaqcQcKOIbpQFg5upX4Ly5A56HJn4sVQhY1LSgfSk4xRsNfMy5mu6BlsIiaXA==",
+ "@babel/plugin-proposal-private-property-in-object": {
+ "version": "7.21.0-placeholder-for-preset-env.2",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz",
+ "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==",
+ "dev": true,
+ "requires": {}
+ },
+ "@babel/plugin-syntax-async-generators": {
+ "version": "7.8.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
+ "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.8.0"
}
},
- "@aws-sdk/region-config-resolver": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/region-config-resolver/-/region-config-resolver-3.521.0.tgz",
- "integrity": "sha512-eC2T62nFgQva9Q0Sqoc9xsYyyH9EN2rJtmUKkWsBMf77atpmajAYRl5B/DzLwGHlXGsgVK2tJdU5wnmpQCEwEQ==",
+ "@babel/plugin-syntax-class-properties": {
+ "version": "7.12.13",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
+ "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/types": "^2.10.0",
- "@smithy/util-config-provider": "^2.2.1",
- "@smithy/util-middleware": "^2.1.2",
- "tslib": "^2.5.0"
- },
- "dependencies": {
- "@aws-sdk/types": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
- "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- }
+ "@babel/helper-plugin-utils": "^7.12.13"
}
},
- "@aws-sdk/service-error-classification": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/service-error-classification/-/service-error-classification-3.78.0.tgz",
- "integrity": "sha512-x7Lx8KWctJa01q4Q72Zb4ol9L/era3vy2daASu8l2paHHxsAPBE0PThkvLdUSLZSzlHSVdh3YHESIsT++VsK4w==",
- "dev": true
+ "@babel/plugin-syntax-class-static-block": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
+ "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.14.5"
+ }
},
- "@aws-sdk/shared-ini-file-loader": {
- "version": "3.80.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/shared-ini-file-loader/-/shared-ini-file-loader-3.80.0.tgz",
- "integrity": "sha512-3d5EBJjnWWkjLK9skqLLHYbagtFaZZy+3jUTlbTuOKhlOwe8jF7CUM3j6I4JA6yXNcB3w0exDKKHa8w+l+05aA==",
+ "@babel/plugin-syntax-dynamic-import": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
+ "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.8.0"
}
},
- "@aws-sdk/signature-v4": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4/-/signature-v4-3.78.0.tgz",
- "integrity": "sha512-eePjRYuzKoi3VMr/lgrUEF1ytLeH4fA/NMCykr/uR6NMo4bSJA59KrFLYSM7SlWLRIyB0UvJqygVEvSxFluyDw==",
+ "@babel/plugin-syntax-export-namespace-from": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
+ "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
"dev": true,
"requires": {
- "@aws-sdk/is-array-buffer": "3.55.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-hex-encoding": "3.58.0",
- "@aws-sdk/util-middleware": "3.78.0",
- "@aws-sdk/util-uri-escape": "3.55.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.8.3"
}
},
- "@aws-sdk/signature-v4-multi-region": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/signature-v4-multi-region/-/signature-v4-multi-region-3.78.0.tgz",
- "integrity": "sha512-5C+3m4dikUsSLTxW++aBCHP0DT1niiEfXR4UdnjJzcjTtmi/jbL/i8UPG5sCpib9Mu6TMW633tN0h5woVPIIcg==",
+ "@babel/plugin-syntax-import-assertions": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.7.tgz",
+ "integrity": "sha512-Ec3NRUMoi8gskrkBe3fNmEQfxDvY8bgfQpz6jlk/41kX9eUjvpyqWU7PBP/pLAvMaSQjbMNKJmvX57jP+M6bPg==",
"dev": true,
"requires": {
- "@aws-sdk/protocol-http": "3.78.0",
- "@aws-sdk/signature-v4": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "@aws-sdk/util-arn-parser": "3.55.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/smithy-client": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/smithy-client/-/smithy-client-3.85.0.tgz",
- "integrity": "sha512-Ox/yQEAnANzhpJMyrpuxWtF/i3EviavENczT7fo4uwSyZTz/sfSBQNjs/YAG1UeA6uOI3pBP5EaFERV5hr2fRA==",
+ "@babel/plugin-syntax-import-attributes": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.7.tgz",
+ "integrity": "sha512-hbX+lKKeUMGihnK8nvKqmXBInriT3GVjzXKFriV3YC6APGxMbP8RZNFwy91+hocLXq90Mta+HshoB31802bb8A==",
"dev": true,
"requires": {
- "@aws-sdk/middleware-stack": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/token-providers": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/token-providers/-/token-providers-3.521.0.tgz",
- "integrity": "sha512-63XxPOn13j87yPWKm6UXOPdMZIMyEyCDJzmlxnIACP8m20S/c6b8xLJ4fE/PUlD0MTKxpFeQbandq5OhnLsWSQ==",
+ "@babel/plugin-syntax-import-meta": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
+ "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/client-sso-oidc": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/shared-ini-file-loader": "^2.3.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- },
- "dependencies": {
- "@aws-crypto/ie11-detection": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/ie11-detection/-/ie11-detection-3.0.0.tgz",
- "integrity": "sha512-341lBBkiY1DfDNKai/wXM3aujNBkXR7tq1URPQDL9wi3AUbI80NR74uF1TXHMm7po1AcnFk8iu2S2IeU/+/A+Q==",
- "dev": true,
- "optional": true,
- "requires": {
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
- }
- }
- },
- "@aws-crypto/sha256-browser": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-browser/-/sha256-browser-3.0.0.tgz",
- "integrity": "sha512-8VLmW2B+gjFbU5uMeqtQM6Nj0/F1bro80xQXCW6CQBWgosFWXTx77aeOF5CAIAmbOK64SdMBJdNr6J41yP5mvQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-crypto/ie11-detection": "^3.0.0",
- "@aws-crypto/sha256-js": "^3.0.0",
- "@aws-crypto/supports-web-crypto": "^3.0.0",
- "@aws-crypto/util": "^3.0.0",
- "@aws-sdk/types": "^3.222.0",
- "@aws-sdk/util-locate-window": "^3.0.0",
- "@aws-sdk/util-utf8-browser": "^3.0.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
- }
- }
- },
- "@aws-crypto/sha256-js": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/sha256-js/-/sha256-js-3.0.0.tgz",
- "integrity": "sha512-PnNN7os0+yd1XvXAy23CFOmTbMaDxgxXtTKHybrJ39Y8kGzBATgBFibWJKH6BhytLI/Zyszs87xCOBNyBig6vQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-crypto/util": "^3.0.0",
- "@aws-sdk/types": "^3.222.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
- }
- }
- },
- "@aws-crypto/supports-web-crypto": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/supports-web-crypto/-/supports-web-crypto-3.0.0.tgz",
- "integrity": "sha512-06hBdMwUAb2WFTuGG73LSC0wfPu93xWwo5vL2et9eymgmu3Id5vFAHBbajVWiGhPO37qcsdCap/FqXvJGJWPIg==",
- "dev": true,
- "optional": true,
- "requires": {
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
- }
- }
- },
- "@aws-crypto/util": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz",
- "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/types": "^3.222.0",
- "@aws-sdk/util-utf8-browser": "^3.0.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
- }
- }
- },
- "@aws-sdk/client-sso": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso/-/client-sso-3.521.0.tgz",
- "integrity": "sha512-aEx8kEvWmTwCja6hvIZd5PvxHsI1HQZkckXhw1UrkDPnfcAwQoQAgselI7D+PVT5qQDIjXRm0NpsvBLaLj6jZw==",
- "dev": true,
- "optional": true,
- "peer": true,
- "requires": {
- "@aws-crypto/sha256-browser": "3.0.0",
- "@aws-crypto/sha256-js": "3.0.0",
- "@aws-sdk/core": "3.521.0",
- "@aws-sdk/middleware-host-header": "3.521.0",
- "@aws-sdk/middleware-logger": "3.521.0",
- "@aws-sdk/middleware-recursion-detection": "3.521.0",
- "@aws-sdk/middleware-user-agent": "3.521.0",
- "@aws-sdk/region-config-resolver": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@aws-sdk/util-endpoints": "3.521.0",
- "@aws-sdk/util-user-agent-browser": "3.521.0",
- "@aws-sdk/util-user-agent-node": "3.521.0",
- "@smithy/config-resolver": "^2.1.2",
- "@smithy/core": "^1.3.3",
- "@smithy/fetch-http-handler": "^2.4.2",
- "@smithy/hash-node": "^2.1.2",
- "@smithy/invalid-dependency": "^2.1.2",
- "@smithy/middleware-content-length": "^2.1.2",
- "@smithy/middleware-endpoint": "^2.4.2",
- "@smithy/middleware-retry": "^2.1.2",
- "@smithy/middleware-serde": "^2.1.2",
- "@smithy/middleware-stack": "^2.1.2",
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/node-http-handler": "^2.4.0",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/smithy-client": "^2.4.0",
- "@smithy/types": "^2.10.0",
- "@smithy/url-parser": "^2.1.2",
- "@smithy/util-base64": "^2.1.1",
- "@smithy/util-body-length-browser": "^2.1.1",
- "@smithy/util-body-length-node": "^2.2.1",
- "@smithy/util-defaults-mode-browser": "^2.1.2",
- "@smithy/util-defaults-mode-node": "^2.2.1",
- "@smithy/util-endpoints": "^1.1.2",
- "@smithy/util-middleware": "^2.1.2",
- "@smithy/util-retry": "^2.1.2",
- "@smithy/util-utf8": "^2.1.1",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/client-sso-oidc": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sso-oidc/-/client-sso-oidc-3.521.0.tgz",
- "integrity": "sha512-MhX0CjV/543MR7DRPr3lA4ZDpGGKopp8cyV4EkSGXB7LMN//eFKKDhuZDlpgWU+aFe2A3DIqlNJjqgs08W0cSA==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-crypto/sha256-browser": "3.0.0",
- "@aws-crypto/sha256-js": "3.0.0",
- "@aws-sdk/client-sts": "3.521.0",
- "@aws-sdk/core": "3.521.0",
- "@aws-sdk/middleware-host-header": "3.521.0",
- "@aws-sdk/middleware-logger": "3.521.0",
- "@aws-sdk/middleware-recursion-detection": "3.521.0",
- "@aws-sdk/middleware-user-agent": "3.521.0",
- "@aws-sdk/region-config-resolver": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@aws-sdk/util-endpoints": "3.521.0",
- "@aws-sdk/util-user-agent-browser": "3.521.0",
- "@aws-sdk/util-user-agent-node": "3.521.0",
- "@smithy/config-resolver": "^2.1.2",
- "@smithy/core": "^1.3.3",
- "@smithy/fetch-http-handler": "^2.4.2",
- "@smithy/hash-node": "^2.1.2",
- "@smithy/invalid-dependency": "^2.1.2",
- "@smithy/middleware-content-length": "^2.1.2",
- "@smithy/middleware-endpoint": "^2.4.2",
- "@smithy/middleware-retry": "^2.1.2",
- "@smithy/middleware-serde": "^2.1.2",
- "@smithy/middleware-stack": "^2.1.2",
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/node-http-handler": "^2.4.0",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/smithy-client": "^2.4.0",
- "@smithy/types": "^2.10.0",
- "@smithy/url-parser": "^2.1.2",
- "@smithy/util-base64": "^2.1.1",
- "@smithy/util-body-length-browser": "^2.1.1",
- "@smithy/util-body-length-node": "^2.2.1",
- "@smithy/util-defaults-mode-browser": "^2.1.2",
- "@smithy/util-defaults-mode-node": "^2.2.1",
- "@smithy/util-endpoints": "^1.1.2",
- "@smithy/util-middleware": "^2.1.2",
- "@smithy/util-retry": "^2.1.2",
- "@smithy/util-utf8": "^2.1.1",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/client-sts": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/client-sts/-/client-sts-3.521.0.tgz",
- "integrity": "sha512-f1J5NDbntcwIHJqhks89sQvk7UXPmN0X0BZ2mgpj6pWP+NlPqy+1t1bia8qRhEuNITaEigoq6rqe9xaf4FdY9A==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-crypto/sha256-browser": "3.0.0",
- "@aws-crypto/sha256-js": "3.0.0",
- "@aws-sdk/core": "3.521.0",
- "@aws-sdk/middleware-host-header": "3.521.0",
- "@aws-sdk/middleware-logger": "3.521.0",
- "@aws-sdk/middleware-recursion-detection": "3.521.0",
- "@aws-sdk/middleware-user-agent": "3.521.0",
- "@aws-sdk/region-config-resolver": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@aws-sdk/util-endpoints": "3.521.0",
- "@aws-sdk/util-user-agent-browser": "3.521.0",
- "@aws-sdk/util-user-agent-node": "3.521.0",
- "@smithy/config-resolver": "^2.1.2",
- "@smithy/core": "^1.3.3",
- "@smithy/fetch-http-handler": "^2.4.2",
- "@smithy/hash-node": "^2.1.2",
- "@smithy/invalid-dependency": "^2.1.2",
- "@smithy/middleware-content-length": "^2.1.2",
- "@smithy/middleware-endpoint": "^2.4.2",
- "@smithy/middleware-retry": "^2.1.2",
- "@smithy/middleware-serde": "^2.1.2",
- "@smithy/middleware-stack": "^2.1.2",
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/node-http-handler": "^2.4.0",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/smithy-client": "^2.4.0",
- "@smithy/types": "^2.10.0",
- "@smithy/url-parser": "^2.1.2",
- "@smithy/util-base64": "^2.1.1",
- "@smithy/util-body-length-browser": "^2.1.1",
- "@smithy/util-body-length-node": "^2.2.1",
- "@smithy/util-defaults-mode-browser": "^2.1.2",
- "@smithy/util-defaults-mode-node": "^2.2.1",
- "@smithy/util-endpoints": "^1.1.2",
- "@smithy/util-middleware": "^2.1.2",
- "@smithy/util-retry": "^2.1.2",
- "@smithy/util-utf8": "^2.1.1",
- "fast-xml-parser": "4.2.5",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-env": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-env/-/credential-provider-env-3.521.0.tgz",
- "integrity": "sha512-OwblTJNdDAoqYVwcNfhlKDp5z+DINrjBfC6ZjNdlJpTXgxT3IqzuilTJTlydQ+2eG7aXfV9OwTVRQWdCmzFuKA==",
- "dev": true,
- "optional": true,
- "peer": true,
- "requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-ini": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-ini/-/credential-provider-ini-3.521.0.tgz",
- "integrity": "sha512-HuhP1AlKgvBBxUIwxL/2DsDemiuwgbz1APUNSeJhDBF6JyZuxR0NU8zEZkvH9b4ukTcmcKGABpY0Wex4rAh3xw==",
- "dev": true,
- "optional": true,
- "peer": true,
- "requires": {
- "@aws-sdk/client-sts": "3.521.0",
- "@aws-sdk/credential-provider-env": "3.521.0",
- "@aws-sdk/credential-provider-process": "3.521.0",
- "@aws-sdk/credential-provider-sso": "3.521.0",
- "@aws-sdk/credential-provider-web-identity": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@smithy/credential-provider-imds": "^2.2.1",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/shared-ini-file-loader": "^2.3.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-node": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-node/-/credential-provider-node-3.521.0.tgz",
- "integrity": "sha512-N9SR4gWI10qh4V2myBcTw8IlX3QpsMMxa4Q8d/FHiAX6eNV7e6irXkXX8o7+J1gtCRy1AtBMqAdGsve4GVqYMQ==",
- "dev": true,
- "optional": true,
- "peer": true,
- "requires": {
- "@aws-sdk/credential-provider-env": "3.521.0",
- "@aws-sdk/credential-provider-http": "3.521.0",
- "@aws-sdk/credential-provider-ini": "3.521.0",
- "@aws-sdk/credential-provider-process": "3.521.0",
- "@aws-sdk/credential-provider-sso": "3.521.0",
- "@aws-sdk/credential-provider-web-identity": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@smithy/credential-provider-imds": "^2.2.1",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/shared-ini-file-loader": "^2.3.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-process": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-process/-/credential-provider-process-3.521.0.tgz",
- "integrity": "sha512-EcJjcrpdklxbRAFFgSLk6QGVtvnfZ80ItfZ47VL9LkhWcDAkQ1Oi0esHq+zOgvjb7VkCyD3Q9CyEwT6MlJsriA==",
- "dev": true,
- "optional": true,
- "peer": true,
- "requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/shared-ini-file-loader": "^2.3.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-sso": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-sso/-/credential-provider-sso-3.521.0.tgz",
- "integrity": "sha512-GAfc0ji+fC2k9VngYM3zsS1J5ojfWg0WUOBzavvHzkhx/O3CqOt82Vfikg3PvemAp9yOgKPMaasTHVeipNLBBQ==",
- "dev": true,
- "optional": true,
- "peer": true,
- "requires": {
- "@aws-sdk/client-sso": "3.521.0",
- "@aws-sdk/token-providers": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/shared-ini-file-loader": "^2.3.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/credential-provider-web-identity": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/credential-provider-web-identity/-/credential-provider-web-identity-3.521.0.tgz",
- "integrity": "sha512-ZPPJqdbPOE4BkdrPrYBtsWg0Zy5b+GY1sbMWLQt0tcISgN5EIoePCS2pGNWnBUmBT+mibMQCVv9fOQpqzRkvAw==",
- "dev": true,
- "optional": true,
- "peer": true,
- "requires": {
- "@aws-sdk/client-sts": "3.521.0",
- "@aws-sdk/types": "3.521.0",
- "@smithy/property-provider": "^2.1.1",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/middleware-host-header": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-host-header/-/middleware-host-header-3.521.0.tgz",
- "integrity": "sha512-Bc4stnMtVAdqosYI1wedFK9tffclCuwpOK/JA4bxbnvSyP1kz4s1HBVT9OOMzdLRLWLwVj/RslXKfSbzOUP7ug==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/middleware-logger": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-logger/-/middleware-logger-3.521.0.tgz",
- "integrity": "sha512-JJ4nyYvLu3RyyNHo74Rlx6WKxJsAixWCEnnFb6IGRUHvsG+xBGU7HF5koY2log8BqlDLrt4ZUaV/CGy5Dp8Mfg==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/middleware-user-agent": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/middleware-user-agent/-/middleware-user-agent-3.521.0.tgz",
- "integrity": "sha512-+hmQjWDG93wCcJn5QY2MkzAL1aG5wl3FJ/ud2nQOu/Gx7d4QVT/B6VJwoG6GSPVuVPZwzne5n9zPVst6RmWJGA==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/types": "3.521.0",
- "@aws-sdk/util-endpoints": "3.521.0",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/types": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
- "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/util-user-agent-browser": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.521.0.tgz",
- "integrity": "sha512-2t3uW6AXOvJ5iiI1JG9zPqKQDc/TRFa+v13aqT5KKw9h3WHFyRUpd4sFQL6Ul0urrq2Zg9cG4NHBkei3k9lsHA==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/types": "^2.10.0",
- "bowser": "^2.11.0",
- "tslib": "^2.5.0"
- }
- },
- "@aws-sdk/util-user-agent-node": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.521.0.tgz",
- "integrity": "sha512-g4KMEiyLc8DG21eMrp6fJUdfQ9F0fxfCNMDRgf0SE/pWI/u4vuWR2n8obLwq1pMVx7Ksva1NO3dc+a3Rgr0hag==",
- "dev": true,
- "optional": true,
- "requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "fast-xml-parser": {
- "version": "4.2.5",
- "resolved": "https://registry.npmjs.org/fast-xml-parser/-/fast-xml-parser-4.2.5.tgz",
- "integrity": "sha512-B9/wizE4WngqQftFPmdaMYlXoJlJOYxGQOanC77fq9k8+Z0v5dDSVh+3glErdIROP//s/jgb7ZuxKfB8nVyo0g==",
- "dev": true,
- "optional": true,
- "requires": {
- "strnum": "^1.0.5"
- }
- }
+ "@babel/helper-plugin-utils": "^7.10.4"
}
},
- "@aws-sdk/types": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.78.0.tgz",
- "integrity": "sha512-I9PTlVNSbwhIgMfmDM5as1tqRIkVZunjVmfogb2WVVPp4CaX0Ll01S0FSMSLL9k6tcQLXqh45pFRjrxCl9WKdQ==",
- "dev": true
+ "@babel/plugin-syntax-json-strings": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
+ "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.8.0"
+ }
},
- "@aws-sdk/url-parser": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/url-parser/-/url-parser-3.78.0.tgz",
- "integrity": "sha512-iQn2AjECUoJE0Ae9XtgHtGGKvUkvE8hhbktGopdj+zsPBe4WrBN2DgVxlKPPrBonG/YlcL1D7a5EXaujWSlUUw==",
+ "@babel/plugin-syntax-logical-assignment-operators": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
+ "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
"dev": true,
"requires": {
- "@aws-sdk/querystring-parser": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.10.4"
}
},
- "@aws-sdk/util-arn-parser": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-arn-parser/-/util-arn-parser-3.55.0.tgz",
- "integrity": "sha512-76KJxp4MRWufHYWys7DFl64znr5yeJ3AIQNAPCKKw1sP0hzO7p6Kx0PaJnw9x+CPSzOrT4NbuApL6/srYhKDGg==",
+ "@babel/plugin-syntax-nullish-coalescing-operator": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
+ "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.8.0"
}
},
- "@aws-sdk/util-base64-browser": {
- "version": "3.58.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-browser/-/util-base64-browser-3.58.0.tgz",
- "integrity": "sha512-0ebsXIZNpu/fup9OgsFPnRKfCFbuuI9PPRzvP6twzLxUB0c/aix6Co7LGHFKcRKHZdaykoJMXArf8eHj2Nzv1Q==",
+ "@babel/plugin-syntax-numeric-separator": {
+ "version": "7.10.4",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
+ "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.10.4"
}
},
- "@aws-sdk/util-base64-node": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-base64-node/-/util-base64-node-3.55.0.tgz",
- "integrity": "sha512-UQ/ZuNoAc8CFMpSiRYmevaTsuRKzLwulZTnM8LNlIt9Wx1tpNvqp80cfvVj7yySKROtEi20wq29h31dZf1eYNQ==",
+ "@babel/plugin-syntax-object-rest-spread": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
+ "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
"dev": true,
"requires": {
- "@aws-sdk/util-buffer-from": "3.55.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.8.0"
}
},
- "@aws-sdk/util-body-length-browser": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-browser/-/util-body-length-browser-3.55.0.tgz",
- "integrity": "sha512-Ei2OCzXQw5N6ZkTMZbamUzc1z+z1R1Ja5tMEagz5BxuX4vWdBObT+uGlSzL8yvTbjoPjnxWA2aXyEqaUP3JS8Q==",
+ "@babel/plugin-syntax-optional-catch-binding": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
+ "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.8.0"
}
},
- "@aws-sdk/util-body-length-node": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-body-length-node/-/util-body-length-node-3.55.0.tgz",
- "integrity": "sha512-lU1d4I+9wJwydduXs0SxSfd+mHKjxeyd39VwOv6i2KSwWkPbji9UQqpflKLKw+r45jL7+xU/zfeTUg5Tt/3Gew==",
+ "@babel/plugin-syntax-optional-chaining": {
+ "version": "7.8.3",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
+ "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.8.0"
}
},
- "@aws-sdk/util-buffer-from": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-buffer-from/-/util-buffer-from-3.55.0.tgz",
- "integrity": "sha512-uVzKG1UgvnV7XX2FPTylBujYMKBPBaq/qFBxfl0LVNfrty7YjpfieQxAe6yRLD+T0Kir/WDQwGvYC+tOYG3IGA==",
+ "@babel/plugin-syntax-private-property-in-object": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
+ "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
"dev": true,
"requires": {
- "@aws-sdk/is-array-buffer": "3.55.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.14.5"
}
},
- "@aws-sdk/util-config-provider": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-config-provider/-/util-config-provider-3.55.0.tgz",
- "integrity": "sha512-30dzofQQfx6tp1jVZkZ0DGRsT0wwC15nEysKRiAcjncM64A0Cm6sra77d0os3vbKiKoPCI/lMsFr4o3533+qvQ==",
+ "@babel/plugin-syntax-top-level-await": {
+ "version": "7.14.5",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
+ "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.14.5"
}
},
- "@aws-sdk/util-defaults-mode-browser": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-browser/-/util-defaults-mode-browser-3.85.0.tgz",
- "integrity": "sha512-oqK/e2pHuMWrvTJWtDBzylbj232ezlTay5dCq4RQlyi3LPPVBQ08haYD1Mk2ikQ/qa0XvbSD6YVhjpTlvwRNjw==",
+ "@babel/plugin-syntax-unicode-sets-regex": {
+ "version": "7.18.6",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz",
+ "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==",
"dev": true,
"requires": {
- "@aws-sdk/property-provider": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "bowser": "^2.11.0",
- "tslib": "^2.3.1"
+ "@babel/helper-create-regexp-features-plugin": "^7.18.6",
+ "@babel/helper-plugin-utils": "^7.18.6"
}
},
- "@aws-sdk/util-defaults-mode-node": {
- "version": "3.85.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-defaults-mode-node/-/util-defaults-mode-node-3.85.0.tgz",
- "integrity": "sha512-KDNl4H8jJJLh6y7I3MSwRKe4plKbFKK8MVkS0+Fce/GJh4EnqxF0HzMMaSeNUcPvO2wHRq2a60+XW+0d7eWo1A==",
+ "@babel/plugin-transform-arrow-functions": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.7.tgz",
+ "integrity": "sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ==",
"dev": true,
"requires": {
- "@aws-sdk/config-resolver": "3.80.0",
- "@aws-sdk/credential-provider-imds": "3.81.0",
- "@aws-sdk/node-config-provider": "3.80.0",
- "@aws-sdk/property-provider": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/util-endpoints": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-endpoints/-/util-endpoints-3.521.0.tgz",
- "integrity": "sha512-lO5+1LeAZycDqgNjQyZdPSdXFQKXaW5bRuQ3UIT3bOCcUAbDI0BYXlPm1huPNTCEkI9ItnDCbISbV0uF901VXw==",
+ "@babel/plugin-transform-async-generator-functions": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.7.tgz",
+ "integrity": "sha512-o+iF77e3u7ZS4AoAuJvapz9Fm001PuD2V3Lp6OSE4FYQke+cSewYtnek+THqGRWyQloRCyvWL1OkyfNEl9vr/g==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/types": "3.521.0",
- "@smithy/types": "^2.10.0",
- "@smithy/util-endpoints": "^1.1.2",
- "tslib": "^2.5.0"
- },
- "dependencies": {
- "@aws-sdk/types": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
- "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- }
+ "@babel/helper-environment-visitor": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/helper-remap-async-to-generator": "^7.24.7",
+ "@babel/plugin-syntax-async-generators": "^7.8.4"
}
},
- "@aws-sdk/util-hex-encoding": {
- "version": "3.58.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-hex-encoding/-/util-hex-encoding-3.58.0.tgz",
- "integrity": "sha512-Rl+jXUzk/FJkOLYfUVYPhKa2aUmTpeobRP31l8IatQltSzDgLyRHO35f6UEs7Ztn5s1jbu/POatLAZ2WjbgVyg==",
+ "@babel/plugin-transform-async-to-generator": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.7.tgz",
+ "integrity": "sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/helper-module-imports": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/helper-remap-async-to-generator": "^7.24.7"
}
},
- "@aws-sdk/util-locate-window": {
- "version": "3.495.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-locate-window/-/util-locate-window-3.495.0.tgz",
- "integrity": "sha512-MfaPXT0kLX2tQaR90saBT9fWQq2DHqSSJRzW+MZWsmF+y5LGCOhO22ac/2o6TKSQm7h0HRc2GaADqYYYor62yg==",
+ "@babel/plugin-transform-block-scoped-functions": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.7.tgz",
+ "integrity": "sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ==",
"dev": true,
"requires": {
- "tslib": "^2.5.0"
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/util-middleware": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-middleware/-/util-middleware-3.78.0.tgz",
- "integrity": "sha512-Hi3wv2b0VogO4mzyeEaeU5KgIt4qeo0LXU5gS6oRrG0T7s2FyKbMBkJW3YDh/Y8fNwqArZ+/QQFujpP0PIKwkA==",
+ "@babel/plugin-transform-block-scoping": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.7.tgz",
+ "integrity": "sha512-Nd5CvgMbWc+oWzBsuaMcbwjJWAcp5qzrbg69SZdHSP7AMY0AbWFqFO0WTFCA1jxhMCwodRwvRec8k0QUbZk7RQ==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/util-stream-browser": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-browser/-/util-stream-browser-3.78.0.tgz",
- "integrity": "sha512-EcThf/sJoD4NYTUNO/nehR57lqkOuL6btRoVnm4LGUR8XgQcJ/WMYYgxOMY8E81xXzRFX2ukRHRxL2xmQsbHDw==",
+ "@babel/plugin-transform-class-properties": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.7.tgz",
+ "integrity": "sha512-vKbfawVYayKcSeSR5YYzzyXvsDFWU2mD8U5TFeXtbCPLFUqe7GyCgvO6XDHzje862ODrOwy6WCPmKeWHbCFJ4w==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-create-class-features-plugin": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/util-stream-node": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-stream-node/-/util-stream-node-3.78.0.tgz",
- "integrity": "sha512-CHfX37ioUyamAnlS2p4Nq+4BBjCSlZolFkVyxtVJwzPBBksdvjW67nKG+SShR48RBPJ5LEzbgAaEXNRktCSf6w==",
+ "@babel/plugin-transform-class-static-block": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.7.tgz",
+ "integrity": "sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-create-class-features-plugin": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/plugin-syntax-class-static-block": "^7.14.5"
}
},
- "@aws-sdk/util-uri-escape": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-uri-escape/-/util-uri-escape-3.55.0.tgz",
- "integrity": "sha512-mmdDLUpFCN2nkfwlLdOM54lTD528GiGSPN1qb8XtGLgZsJUmg3uJSFIN2lPeSbEwJB3NFjVas/rnQC48i7mV8w==",
+ "@babel/plugin-transform-classes": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.7.tgz",
+ "integrity": "sha512-CFbbBigp8ln4FU6Bpy6g7sE8B/WmCmzvivzUC6xDAdWVsjYTXijpuuGJmYkAaoWAzcItGKT3IOAbxRItZ5HTjw==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/helper-annotate-as-pure": "^7.24.7",
+ "@babel/helper-compilation-targets": "^7.24.7",
+ "@babel/helper-environment-visitor": "^7.24.7",
+ "@babel/helper-function-name": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/helper-replace-supers": "^7.24.7",
+ "@babel/helper-split-export-declaration": "^7.24.7",
+ "globals": "^11.1.0"
}
},
- "@aws-sdk/util-user-agent-browser": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-browser/-/util-user-agent-browser-3.78.0.tgz",
- "integrity": "sha512-diGO/Bf4ggBOEnfD7lrrXaaXOwOXGz0bAJ0HhpizwEMlBld5zfDlWXjNpslh+8+u3EHRjPJQ16KGT6mp/Dm+aw==",
+ "@babel/plugin-transform-computed-properties": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.7.tgz",
+ "integrity": "sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ==",
"dev": true,
"requires": {
- "@aws-sdk/types": "3.78.0",
- "bowser": "^2.11.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/template": "^7.24.7"
}
},
- "@aws-sdk/util-user-agent-node": {
- "version": "3.80.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-user-agent-node/-/util-user-agent-node-3.80.0.tgz",
- "integrity": "sha512-QV26qIXws1m6sZXg65NS+XrQ5NhAzbDVQLtEVE4nC39UN8fuieP6Uet/gZm9mlLI9hllwvcV7EfgBM3GSC7pZg==",
+ "@babel/plugin-transform-destructuring": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.7.tgz",
+ "integrity": "sha512-19eJO/8kdCQ9zISOf+SEUJM/bAUIsvY3YDnXZTupUCQ8LgrWnsG/gFB9dvXqdXnRXMAM8fvt7b0CBKQHNGy1mw==",
"dev": true,
"requires": {
- "@aws-sdk/node-config-provider": "3.80.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/util-utf8-browser": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-browser/-/util-utf8-browser-3.55.0.tgz",
- "integrity": "sha512-ljzqJcyjfJpEVSIAxwtIS8xMRUly84BdjlBXyp6cu4G8TUufgjNS31LWdhyGhgmW5vYBNr+LTz0Kwf6J+ou7Ug==",
+ "@babel/plugin-transform-dotall-regex": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.7.tgz",
+ "integrity": "sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/helper-create-regexp-features-plugin": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/util-utf8-node": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-utf8-node/-/util-utf8-node-3.55.0.tgz",
- "integrity": "sha512-FsFm7GFaC7j0tlPEm/ri8bU2QCwFW5WKjxUg8lm1oWaxplCpKGUsmcfPJ4sw58GIoyoGu4QXBK60oCWosZYYdQ==",
+ "@babel/plugin-transform-duplicate-keys": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.7.tgz",
+ "integrity": "sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw==",
"dev": true,
"requires": {
- "@aws-sdk/util-buffer-from": "3.55.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@aws-sdk/util-waiter": {
- "version": "3.78.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/util-waiter/-/util-waiter-3.78.0.tgz",
- "integrity": "sha512-8pWd0XiNOS8AkWQyac8VNEI+gz/cGWlC2TAE2CJp0rOK5XhvlcNBINai4D6TxQ+9foyJXLOI1b8nuXemekoG8A==",
+ "@babel/plugin-transform-dynamic-import": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.7.tgz",
+ "integrity": "sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg==",
"dev": true,
"requires": {
- "@aws-sdk/abort-controller": "3.78.0",
- "@aws-sdk/types": "3.78.0",
- "tslib": "^2.3.1"
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/plugin-syntax-dynamic-import": "^7.8.3"
}
},
- "@aws-sdk/xml-builder": {
- "version": "3.55.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/xml-builder/-/xml-builder-3.55.0.tgz",
- "integrity": "sha512-BH+i5S2FLprmfSeIuGy3UbNtEoJPVjh8arl5+LV3i2KY/+TmrS4yT8JtztDlDxHF0cMtNLZNO0KEPtsACS6SOg==",
+ "@babel/plugin-transform-exponentiation-operator": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.7.tgz",
+ "integrity": "sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ==",
"dev": true,
"requires": {
- "tslib": "^2.3.1"
+ "@babel/helper-builder-binary-assignment-operator-visitor": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@azure/abort-controller": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-1.1.0.tgz",
- "integrity": "sha512-TrRLIoSQVzfAJX9H1JeFjzAoDGcoK1IYX1UImfceTZpsyYfWr09Ss1aHW1y5TrrR3iq6RZLBwJ3E24uwPhwahw==",
+ "@babel/plugin-transform-export-namespace-from": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.7.tgz",
+ "integrity": "sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA==",
"dev": true,
"requires": {
- "tslib": "^2.2.0"
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
}
},
- "@azure/core-auth": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/@azure/core-auth/-/core-auth-1.6.0.tgz",
- "integrity": "sha512-3X9wzaaGgRaBCwhLQZDtFp5uLIXCPrGbwJNWPPugvL4xbIGgScv77YzzxToKGLAKvG9amDoofMoP+9hsH1vs1w==",
+ "@babel/plugin-transform-for-of": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.7.tgz",
+ "integrity": "sha512-wo9ogrDG1ITTTBsy46oGiN1dS9A7MROBTcYsfS8DtsImMkHk9JXJ3EWQM6X2SUw4x80uGPlwj0o00Uoc6nEE3g==",
"dev": true,
"requires": {
- "@azure/abort-controller": "^2.0.0",
- "@azure/core-util": "^1.1.0",
- "tslib": "^2.2.0"
- },
- "dependencies": {
- "@azure/abort-controller": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.0.0.tgz",
- "integrity": "sha512-RP/mR/WJchR+g+nQFJGOec+nzeN/VvjlwbinccoqfhTsTHbb8X5+mLDp48kHT0ueyum0BNSwGm0kX0UZuIqTGg==",
- "dev": true,
- "requires": {
- "tslib": "^2.2.0"
- }
- }
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7"
}
},
- "@azure/core-client": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/@azure/core-client/-/core-client-1.8.0.tgz",
- "integrity": "sha512-+gHS3gEzPlhyQBMoqVPOTeNH031R5DM/xpCvz72y38C09rg4Hui/1sJS/ujoisDZbbSHyuRLVWdFlwL0pIFwbg==",
+ "@babel/plugin-transform-function-name": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.7.tgz",
+ "integrity": "sha512-U9FcnA821YoILngSmYkW6FjyQe2TyZD5pHt4EVIhmcTkrJw/3KqcrRSxuOo5tFZJi7TE19iDyI1u+weTI7bn2w==",
"dev": true,
"requires": {
- "@azure/abort-controller": "^2.0.0",
- "@azure/core-auth": "^1.4.0",
- "@azure/core-rest-pipeline": "^1.9.1",
- "@azure/core-tracing": "^1.0.0",
- "@azure/core-util": "^1.0.0",
- "@azure/logger": "^1.0.0",
- "tslib": "^2.2.0"
- },
- "dependencies": {
- "@azure/abort-controller": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.0.0.tgz",
- "integrity": "sha512-RP/mR/WJchR+g+nQFJGOec+nzeN/VvjlwbinccoqfhTsTHbb8X5+mLDp48kHT0ueyum0BNSwGm0kX0UZuIqTGg==",
- "dev": true,
- "requires": {
- "tslib": "^2.2.0"
- }
- }
+ "@babel/helper-compilation-targets": "^7.24.7",
+ "@babel/helper-function-name": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@azure/core-http-compat": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@azure/core-http-compat/-/core-http-compat-2.0.1.tgz",
- "integrity": "sha512-xpQZz/q7E0jSW4rckrTo2mDFDQgo6I69hBU4voMQi7REi6JRW5a+KfVkbJCFCWnkFmP6cAJ0IbuudTdf/MEBOQ==",
+ "@babel/plugin-transform-json-strings": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.7.tgz",
+ "integrity": "sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw==",
"dev": true,
"requires": {
- "@azure/abort-controller": "^1.0.4",
- "@azure/core-client": "^1.3.0",
- "@azure/core-rest-pipeline": "^1.3.0"
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/plugin-syntax-json-strings": "^7.8.3"
}
},
- "@azure/core-lro": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/@azure/core-lro/-/core-lro-2.6.0.tgz",
- "integrity": "sha512-PyRNcaIOfMgoUC01/24NoG+k8O81VrKxYARnDlo+Q2xji0/0/j2nIt8BwQh294pb1c5QnXTDPbNR4KzoDKXEoQ==",
+ "@babel/plugin-transform-literals": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.7.tgz",
+ "integrity": "sha512-vcwCbb4HDH+hWi8Pqenwnjy+UiklO4Kt1vfspcQYFhJdpthSnW8XvWGyDZWKNVrVbVViI/S7K9PDJZiUmP2fYQ==",
"dev": true,
"requires": {
- "@azure/abort-controller": "^2.0.0",
- "@azure/core-util": "^1.2.0",
- "@azure/logger": "^1.0.0",
- "tslib": "^2.2.0"
- },
- "dependencies": {
- "@azure/abort-controller": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.0.0.tgz",
- "integrity": "sha512-RP/mR/WJchR+g+nQFJGOec+nzeN/VvjlwbinccoqfhTsTHbb8X5+mLDp48kHT0ueyum0BNSwGm0kX0UZuIqTGg==",
- "dev": true,
- "requires": {
- "tslib": "^2.2.0"
- }
- }
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@azure/core-paging": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/@azure/core-paging/-/core-paging-1.5.0.tgz",
- "integrity": "sha512-zqWdVIt+2Z+3wqxEOGzR5hXFZ8MGKK52x4vFLw8n58pR6ZfKRx3EXYTxTaYxYHc/PexPUTyimcTWFJbji9Z6Iw==",
+ "@babel/plugin-transform-logical-assignment-operators": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.7.tgz",
+ "integrity": "sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw==",
"dev": true,
"requires": {
- "tslib": "^2.2.0"
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
}
},
- "@azure/core-rest-pipeline": {
- "version": "1.14.0",
- "resolved": "https://registry.npmjs.org/@azure/core-rest-pipeline/-/core-rest-pipeline-1.14.0.tgz",
- "integrity": "sha512-Tp4M6NsjCmn9L5p7HsW98eSOS7A0ibl3e5ntZglozT0XuD/0y6i36iW829ZbBq0qihlGgfaeFpkLjZ418KDm1Q==",
+ "@babel/plugin-transform-member-expression-literals": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.7.tgz",
+ "integrity": "sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw==",
"dev": true,
"requires": {
- "@azure/abort-controller": "^2.0.0",
- "@azure/core-auth": "^1.4.0",
- "@azure/core-tracing": "^1.0.1",
- "@azure/core-util": "^1.3.0",
- "@azure/logger": "^1.0.0",
- "http-proxy-agent": "^5.0.0",
- "https-proxy-agent": "^5.0.0",
- "tslib": "^2.2.0"
- },
- "dependencies": {
- "@azure/abort-controller": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.0.0.tgz",
- "integrity": "sha512-RP/mR/WJchR+g+nQFJGOec+nzeN/VvjlwbinccoqfhTsTHbb8X5+mLDp48kHT0ueyum0BNSwGm0kX0UZuIqTGg==",
- "dev": true,
- "requires": {
- "tslib": "^2.2.0"
- }
- },
- "@tootallnate/once": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
- "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
- "dev": true
- },
- "agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
- "dev": true,
- "requires": {
- "debug": "4"
- }
- },
- "http-proxy-agent": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
- "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
- "dev": true,
- "requires": {
- "@tootallnate/once": "2",
- "agent-base": "6",
- "debug": "4"
- }
- },
- "https-proxy-agent": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
- "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
- "dev": true,
- "requires": {
- "agent-base": "6",
- "debug": "4"
- }
- }
- }
- },
- "@azure/core-tracing": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@azure/core-tracing/-/core-tracing-1.0.1.tgz",
- "integrity": "sha512-I5CGMoLtX+pI17ZdiFJZgxMJApsK6jjfm85hpgp3oazCdq5Wxgh4wMr7ge/TTWW1B5WBuvIOI1fMU/FrOAMKrw==",
- "dev": true,
- "requires": {
- "tslib": "^2.2.0"
- }
- },
- "@azure/core-util": {
- "version": "1.7.0",
- "resolved": "https://registry.npmjs.org/@azure/core-util/-/core-util-1.7.0.tgz",
- "integrity": "sha512-Zq2i3QO6k9DA8vnm29mYM4G8IE9u1mhF1GUabVEqPNX8Lj833gdxQ2NAFxt2BZsfAL+e9cT8SyVN7dFVJ/Hf0g==",
- "dev": true,
- "requires": {
- "@azure/abort-controller": "^2.0.0",
- "tslib": "^2.2.0"
- },
- "dependencies": {
- "@azure/abort-controller": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@azure/abort-controller/-/abort-controller-2.0.0.tgz",
- "integrity": "sha512-RP/mR/WJchR+g+nQFJGOec+nzeN/VvjlwbinccoqfhTsTHbb8X5+mLDp48kHT0ueyum0BNSwGm0kX0UZuIqTGg==",
- "dev": true,
- "requires": {
- "tslib": "^2.2.0"
- }
- }
- }
- },
- "@azure/identity": {
- "version": "3.4.2",
- "resolved": "https://registry.npmjs.org/@azure/identity/-/identity-3.4.2.tgz",
- "integrity": "sha512-0q5DL4uyR0EZ4RXQKD8MadGH6zTIcloUoS/RVbCpNpej4pwte0xpqYxk8K97Py2RiuUvI7F4GXpoT4046VfufA==",
- "dev": true,
- "requires": {
- "@azure/abort-controller": "^1.0.0",
- "@azure/core-auth": "^1.5.0",
- "@azure/core-client": "^1.4.0",
- "@azure/core-rest-pipeline": "^1.1.0",
- "@azure/core-tracing": "^1.0.0",
- "@azure/core-util": "^1.6.1",
- "@azure/logger": "^1.0.0",
- "@azure/msal-browser": "^3.5.0",
- "@azure/msal-node": "^2.5.1",
- "events": "^3.0.0",
- "jws": "^4.0.0",
- "open": "^8.0.0",
- "stoppable": "^1.1.0",
- "tslib": "^2.2.0"
- },
- "dependencies": {
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true
- }
- }
- },
- "@azure/keyvault-keys": {
- "version": "4.8.0",
- "resolved": "https://registry.npmjs.org/@azure/keyvault-keys/-/keyvault-keys-4.8.0.tgz",
- "integrity": "sha512-jkuYxgkw0aaRfk40OQhFqDIupqblIOIlYESWB6DKCVDxQet1pyv86Tfk9M+5uFM0+mCs6+MUHU+Hxh3joiUn4Q==",
- "dev": true,
- "requires": {
- "@azure/abort-controller": "^1.0.0",
- "@azure/core-auth": "^1.3.0",
- "@azure/core-client": "^1.5.0",
- "@azure/core-http-compat": "^2.0.1",
- "@azure/core-lro": "^2.2.0",
- "@azure/core-paging": "^1.1.1",
- "@azure/core-rest-pipeline": "^1.8.1",
- "@azure/core-tracing": "^1.0.0",
- "@azure/core-util": "^1.0.0",
- "@azure/logger": "^1.0.0",
- "tslib": "^2.2.0"
- }
- },
- "@azure/logger": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/@azure/logger/-/logger-1.0.4.tgz",
- "integrity": "sha512-ustrPY8MryhloQj7OWGe+HrYx+aoiOxzbXTtgblbV3xwCqpzUK36phH3XNHQKj3EPonyFUuDTfR3qFhTEAuZEg==",
- "dev": true,
- "requires": {
- "tslib": "^2.2.0"
- }
- },
- "@azure/msal-browser": {
- "version": "3.13.0",
- "resolved": "https://registry.npmjs.org/@azure/msal-browser/-/msal-browser-3.13.0.tgz",
- "integrity": "sha512-fD906nmJei3yE7la6DZTdUtXKvpwzJURkfsiz9747Icv4pit77cegSm6prJTKLQ1fw4iiZzrrWwxnhMLrTf5gQ==",
- "dev": true,
- "requires": {
- "@azure/msal-common": "14.9.0"
- }
- },
- "@azure/msal-common": {
- "version": "14.9.0",
- "resolved": "https://registry.npmjs.org/@azure/msal-common/-/msal-common-14.9.0.tgz",
- "integrity": "sha512-yzBPRlWPnTBeixxLNI3BBIgF5/bHpbhoRVuuDBnYjCyWRavaPUsKAHUDYLqpGkBLDciA6TCc6GOxN4/S3WiSxg==",
- "dev": true
- },
- "@azure/msal-node": {
- "version": "2.7.0",
- "resolved": "https://registry.npmjs.org/@azure/msal-node/-/msal-node-2.7.0.tgz",
- "integrity": "sha512-wXD8LkUvHICeSWZydqg6o8Yvv+grlBEcmLGu+QEI4FcwFendbTEZrlSygnAXXSOCVaGAirWLchca35qrgpO6Jw==",
- "dev": true,
- "requires": {
- "@azure/msal-common": "14.9.0",
- "jsonwebtoken": "^9.0.0",
- "uuid": "^8.3.0"
- }
- },
- "@babel/code-frame": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.24.7.tgz",
- "integrity": "sha512-BcYH1CVJBO9tvyIZ2jVeXgSIMvGZ2FDRvDdOIVQyuklNKSsx+eppDEBq/g47Ayw+RqNFE+URvOShmf+f/qwAlA==",
- "dev": true,
- "requires": {
- "@babel/highlight": "^7.24.7",
- "picocolors": "^1.0.0"
- }
- },
- "@babel/compat-data": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.24.7.tgz",
- "integrity": "sha512-qJzAIcv03PyaWqxRgO4mSU3lihncDT296vnyuE2O8uA4w3UHWI4S3hgeZd1L8W1Bft40w9JxJ2b412iDUFFRhw==",
- "dev": true
- },
- "@babel/core": {
- "version": "7.22.17",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.22.17.tgz",
- "integrity": "sha512-2EENLmhpwplDux5PSsZnSbnSkB3tZ6QTksgO25xwEL7pIDcNOMhF5v/s6RzwjMZzZzw9Ofc30gHv5ChCC8pifQ==",
- "dev": true,
- "requires": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.22.13",
- "@babel/generator": "^7.22.15",
- "@babel/helper-compilation-targets": "^7.22.15",
- "@babel/helper-module-transforms": "^7.22.17",
- "@babel/helpers": "^7.22.15",
- "@babel/parser": "^7.22.16",
- "@babel/template": "^7.22.15",
- "@babel/traverse": "^7.22.17",
- "@babel/types": "^7.22.17",
- "convert-source-map": "^1.7.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.3",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
- }
- },
- "@babel/generator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.24.7.tgz",
- "integrity": "sha512-oipXieGC3i45Y1A41t4tAqpnEZWgB/lC6Ehh6+rOviR5XWpTtMmLN+fGjz9vOiNRt0p6RtO6DtD0pdU3vpqdSA==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.24.7",
- "@jridgewell/gen-mapping": "^0.3.5",
- "@jridgewell/trace-mapping": "^0.3.25",
- "jsesc": "^2.5.1"
- }
- },
- "@babel/helper-annotate-as-pure": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.24.7.tgz",
- "integrity": "sha512-BaDeOonYvhdKw+JoMVkAixAAJzG2jVPIwWoKBPdYuY9b452e2rPuI9QPYh3KpofZ3pW2akOmwZLOiOsHMiqRAg==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.24.7"
- }
- },
- "@babel/helper-builder-binary-assignment-operator-visitor": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.24.7.tgz",
- "integrity": "sha512-xZeCVVdwb4MsDBkkyZ64tReWYrLRHlMN72vP7Bdm3OUOuyFZExhsHUUnuWnm2/XOlAJzR0LfPpB56WXZn0X/lA==",
- "dev": true,
- "requires": {
- "@babel/traverse": "^7.24.7",
- "@babel/types": "^7.24.7"
- }
- },
- "@babel/helper-compilation-targets": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.24.7.tgz",
- "integrity": "sha512-ctSdRHBi20qWOfy27RUb4Fhp07KSJ3sXcuSvTrXrc4aG8NSYDo1ici3Vhg9bg69y5bj0Mr1lh0aeEgTvc12rMg==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.24.7",
- "@babel/helper-validator-option": "^7.24.7",
- "browserslist": "^4.22.2",
- "lru-cache": "^5.1.1",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
- }
- },
- "@babel/helper-create-class-features-plugin": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.24.7.tgz",
- "integrity": "sha512-kTkaDl7c9vO80zeX1rJxnuRpEsD5tA81yh11X1gQo+PhSti3JS+7qeZo9U4RHobKRiFPKaGK3svUAeb8D0Q7eg==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.24.7",
- "@babel/helper-environment-visitor": "^7.24.7",
- "@babel/helper-function-name": "^7.24.7",
- "@babel/helper-member-expression-to-functions": "^7.24.7",
- "@babel/helper-optimise-call-expression": "^7.24.7",
- "@babel/helper-replace-supers": "^7.24.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7",
- "@babel/helper-split-export-declaration": "^7.24.7",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
- }
- },
- "@babel/helper-create-regexp-features-plugin": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.24.7.tgz",
- "integrity": "sha512-03TCmXy2FtXJEZfbXDTSqq1fRJArk7lX9DOFC/47VthYcxyIOx+eXQmdo6DOQvrbpIix+KfXwvuXdFDZHxt+rA==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.24.7",
- "regexpu-core": "^5.3.1",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
- }
- },
- "@babel/helper-define-polyfill-provider": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/@babel/helper-define-polyfill-provider/-/helper-define-polyfill-provider-0.6.2.tgz",
- "integrity": "sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==",
- "dev": true,
- "requires": {
- "@babel/helper-compilation-targets": "^7.22.6",
- "@babel/helper-plugin-utils": "^7.22.5",
- "debug": "^4.1.1",
- "lodash.debounce": "^4.0.8",
- "resolve": "^1.14.2"
- }
- },
- "@babel/helper-environment-visitor": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-environment-visitor/-/helper-environment-visitor-7.24.7.tgz",
- "integrity": "sha512-DoiN84+4Gnd0ncbBOM9AZENV4a5ZiL39HYMyZJGZ/AZEykHYdJw0wW3kdcsh9/Kn+BRXHLkkklZ51ecPKmI1CQ==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.24.7"
- }
- },
- "@babel/helper-function-name": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.24.7.tgz",
- "integrity": "sha512-FyoJTsj/PEUWu1/TYRiXTIHc8lbw+TDYkZuoE43opPS5TrI7MyONBE1oNvfguEXAD9yhQRrVBnXdXzSLQl9XnA==",
- "dev": true,
- "requires": {
- "@babel/template": "^7.24.7",
- "@babel/types": "^7.24.7"
- }
- },
- "@babel/helper-hoist-variables": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.24.7.tgz",
- "integrity": "sha512-MJJwhkoGy5c4ehfoRyrJ/owKeMl19U54h27YYftT0o2teQ3FJ3nQUf/I3LlJsX4l3qlw7WRXUmiyajvHXoTubQ==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.24.7"
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@babel/helper-member-expression-to-functions": {
+ "@babel/plugin-transform-modules-amd": {
"version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.24.7.tgz",
- "integrity": "sha512-LGeMaf5JN4hAT471eJdBs/GK1DoYIJ5GCtZN/EsL6KUiiDZOvO/eKE11AMZJa2zP4zk4qe9V2O/hxAmkRc8p6w==",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.7.tgz",
+ "integrity": "sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg==",
"dev": true,
"requires": {
- "@babel/traverse": "^7.24.7",
- "@babel/types": "^7.24.7"
+ "@babel/helper-module-transforms": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@babel/helper-module-imports": {
+ "@babel/plugin-transform-modules-commonjs": {
"version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.24.7.tgz",
- "integrity": "sha512-8AyH3C+74cgCVVXow/myrynrAGv+nTVg5vKu2nZph9x7RcRwzmh0VFallJuFTZ9mx6u4eSdXZfcOzSqTUm0HCA==",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.7.tgz",
+ "integrity": "sha512-iFI8GDxtevHJ/Z22J5xQpVqFLlMNstcLXh994xifFwxxGslr2ZXXLWgtBeLctOD63UFDArdvN6Tg8RFw+aEmjQ==",
"dev": true,
"requires": {
- "@babel/traverse": "^7.24.7",
- "@babel/types": "^7.24.7"
+ "@babel/helper-module-transforms": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/helper-simple-access": "^7.24.7"
}
},
- "@babel/helper-module-transforms": {
+ "@babel/plugin-transform-modules-systemjs": {
"version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.24.7.tgz",
- "integrity": "sha512-1fuJEwIrp+97rM4RWdO+qrRsZlAeL1lQJoPqtCYWv0NL115XM93hIH4CSRln2w52SqvmY5hqdtauB6QFCDiZNQ==",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.7.tgz",
+ "integrity": "sha512-GYQE0tW7YoaN13qFh3O1NCY4MPkUiAH3fiF7UcV/I3ajmDKEdG3l+UOcbAm4zUE3gnvUU+Eni7XrVKo9eO9auw==",
"dev": true,
"requires": {
- "@babel/helper-environment-visitor": "^7.24.7",
- "@babel/helper-module-imports": "^7.24.7",
- "@babel/helper-simple-access": "^7.24.7",
- "@babel/helper-split-export-declaration": "^7.24.7",
+ "@babel/helper-hoist-variables": "^7.24.7",
+ "@babel/helper-module-transforms": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7",
"@babel/helper-validator-identifier": "^7.24.7"
}
},
- "@babel/helper-optimise-call-expression": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.24.7.tgz",
- "integrity": "sha512-jKiTsW2xmWwxT1ixIdfXUZp+P5yURx2suzLZr5Hi64rURpDYdMW0pv+Uf17EYk2Rd428Lx4tLsnjGJzYKDM/6A==",
- "dev": true,
- "requires": {
- "@babel/types": "^7.24.7"
- }
- },
- "@babel/helper-plugin-utils": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.24.7.tgz",
- "integrity": "sha512-Rq76wjt7yz9AAc1KnlRKNAi/dMSVWgDRx43FHoJEbcYU6xOWaE2dVPwcdTukJrjxS65GITyfbvEYHvkirZ6uEg==",
- "dev": true
- },
- "@babel/helper-remap-async-to-generator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.24.7.tgz",
- "integrity": "sha512-9pKLcTlZ92hNZMQfGCHImUpDOlAgkkpqalWEeftW5FBya75k8Li2ilerxkM/uBEj01iBZXcCIB/bwvDYgWyibA==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.24.7",
- "@babel/helper-environment-visitor": "^7.24.7",
- "@babel/helper-wrap-function": "^7.24.7"
- }
- },
- "@babel/helper-replace-supers": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.24.7.tgz",
- "integrity": "sha512-qTAxxBM81VEyoAY0TtLrx1oAEJc09ZK67Q9ljQToqCnA+55eNwCORaxlKyu+rNfX86o8OXRUSNUnrtsAZXM9sg==",
- "dev": true,
- "requires": {
- "@babel/helper-environment-visitor": "^7.24.7",
- "@babel/helper-member-expression-to-functions": "^7.24.7",
- "@babel/helper-optimise-call-expression": "^7.24.7"
- }
- },
- "@babel/helper-simple-access": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.24.7.tgz",
- "integrity": "sha512-zBAIvbCMh5Ts+b86r/CjU+4XGYIs+R1j951gxI3KmmxBMhCg4oQMsv6ZXQ64XOm/cvzfU1FmoCyt6+owc5QMYg==",
- "dev": true,
- "requires": {
- "@babel/traverse": "^7.24.7",
- "@babel/types": "^7.24.7"
- }
- },
- "@babel/helper-skip-transparent-expression-wrappers": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.24.7.tgz",
- "integrity": "sha512-IO+DLT3LQUElMbpzlatRASEyQtfhSE0+m465v++3jyyXeBTBUjtVZg28/gHeV5mrTJqvEKhKroBGAvhW+qPHiQ==",
- "dev": true,
- "requires": {
- "@babel/traverse": "^7.24.7",
- "@babel/types": "^7.24.7"
- }
- },
- "@babel/helper-split-export-declaration": {
+ "@babel/plugin-transform-modules-umd": {
"version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.24.7.tgz",
- "integrity": "sha512-oy5V7pD+UvfkEATUKvIjvIAH/xCzfsFVw7ygW2SI6NClZzquT+mwdTfgfdbUiceh6iQO0CHtCPsyze/MZ2YbAA==",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.7.tgz",
+ "integrity": "sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A==",
"dev": true,
"requires": {
- "@babel/types": "^7.24.7"
+ "@babel/helper-module-transforms": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@babel/helper-string-parser": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.7.tgz",
- "integrity": "sha512-7MbVt6xrwFQbunH2DNQsAP5sTGxfqQtErvBIvIMi6EQnbgUOuVYanvREcmFrOPhoXBrTtjhhP+lW+o5UfK+tDg==",
- "dev": true
- },
- "@babel/helper-validator-identifier": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz",
- "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==",
- "dev": true
- },
- "@babel/helper-validator-option": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.24.7.tgz",
- "integrity": "sha512-yy1/KvjhV/ZCL+SM7hBrvnZJ3ZuT9OuZgIJAGpPEToANvc3iM6iDvBnRjtElWibHU6n8/LPR/EjX9EtIEYO3pw==",
- "dev": true
- },
- "@babel/helper-wrap-function": {
+ "@babel/plugin-transform-named-capturing-groups-regex": {
"version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.24.7.tgz",
- "integrity": "sha512-N9JIYk3TD+1vq/wn77YnJOqMtfWhNewNE+DJV4puD2X7Ew9J4JvrzrFDfTfyv5EgEXVy9/Wt8QiOErzEmv5Ifw==",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.24.7.tgz",
+ "integrity": "sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g==",
"dev": true,
"requires": {
- "@babel/helper-function-name": "^7.24.7",
- "@babel/template": "^7.24.7",
- "@babel/traverse": "^7.24.7",
- "@babel/types": "^7.24.7"
+ "@babel/helper-create-regexp-features-plugin": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@babel/helpers": {
+ "@babel/plugin-transform-new-target": {
"version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.24.7.tgz",
- "integrity": "sha512-NlmJJtvcw72yRJRcnCmGvSi+3jDEg8qFu3z0AFoymmzLx5ERVWyzd9kVXr7Th9/8yIJi2Zc6av4Tqz3wFs8QWg==",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.7.tgz",
+ "integrity": "sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA==",
"dev": true,
"requires": {
- "@babel/template": "^7.24.7",
- "@babel/types": "^7.24.7"
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@babel/highlight": {
+ "@babel/plugin-transform-nullish-coalescing-operator": {
"version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.24.7.tgz",
- "integrity": "sha512-EStJpq4OuY8xYfhGVXngigBJRWxftKX9ksiGDnmlY3o7B/V7KIAc9X4oiK87uPJSc/vs5L869bem5fhZa8caZw==",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.7.tgz",
+ "integrity": "sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ==",
"dev": true,
"requires": {
- "@babel/helper-validator-identifier": "^7.24.7",
- "chalk": "^2.4.2",
- "js-tokens": "^4.0.0",
- "picocolors": "^1.0.0"
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
}
},
- "@babel/parser": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz",
- "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==",
- "dev": true
- },
- "@babel/plugin-bugfix-firefox-class-in-computed-class-key": {
+ "@babel/plugin-transform-numeric-separator": {
"version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-firefox-class-in-computed-class-key/-/plugin-bugfix-firefox-class-in-computed-class-key-7.24.7.tgz",
- "integrity": "sha512-TiT1ss81W80eQsN+722OaeQMY/G4yTb4G9JrqeiDADs3N8lbPMGldWi9x8tyqCW5NLx1Jh2AvkE6r6QvEltMMQ==",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.7.tgz",
+ "integrity": "sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA==",
"dev": true,
"requires": {
- "@babel/helper-environment-visitor": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/plugin-syntax-numeric-separator": "^7.10.4"
}
},
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": {
+ "@babel/plugin-transform-object-rest-spread": {
"version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression/-/plugin-bugfix-safari-id-destructuring-collision-in-function-expression-7.24.7.tgz",
- "integrity": "sha512-unaQgZ/iRu/By6tsjMZzpeBZjChYfLYry6HrEXPoz3KmfF0sVBQ1l8zKMQ4xRGLWVsjuvB8nQfjNP/DcfEOCsg==",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.7.tgz",
+ "integrity": "sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q==",
"dev": true,
"requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
+ "@babel/helper-compilation-targets": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
+ "@babel/plugin-transform-parameters": "^7.24.7"
}
},
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": {
+ "@babel/plugin-transform-object-super": {
"version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.24.7.tgz",
- "integrity": "sha512-+izXIbke1T33mY4MSNnrqhPXDz01WYhEf3yF5NbnUtkiNnm+XBZJl3kNfoK6NKmYlz/D07+l2GWVK/QfDkNCuQ==",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.7.tgz",
+ "integrity": "sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg==",
"dev": true,
"requires": {
"@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7",
- "@babel/plugin-transform-optional-chaining": "^7.24.7"
+ "@babel/helper-replace-supers": "^7.24.7"
}
},
- "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": {
+ "@babel/plugin-transform-optional-catch-binding": {
"version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly/-/plugin-bugfix-v8-static-class-fields-redefine-readonly-7.24.7.tgz",
- "integrity": "sha512-utA4HuR6F4Vvcr+o4DnjL8fCOlgRFGbeeBEGNg3ZTrLFw6VWG5XmUrvcQ0FjIYMU2ST4XcR2Wsp7t9qOAPnxMg==",
- "dev": true,
- "requires": {
- "@babel/helper-environment-visitor": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-proposal-private-property-in-object": {
- "version": "7.21.0-placeholder-for-preset-env.2",
- "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.21.0-placeholder-for-preset-env.2.tgz",
- "integrity": "sha512-SOSkfJDddaM7mak6cPEpswyTRnuRltl429hMraQEglW+OkovnCzsiszTmsrlY//qLFjCpQDFRvjdm2wA5pPm9w==",
- "dev": true,
- "requires": {}
- },
- "@babel/plugin-syntax-async-generators": {
- "version": "7.8.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz",
- "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-class-properties": {
- "version": "7.12.13",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz",
- "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.12.13"
- }
- },
- "@babel/plugin-syntax-class-static-block": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz",
- "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-dynamic-import": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz",
- "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-export-namespace-from": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz",
- "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.3"
- }
- },
- "@babel/plugin-syntax-import-assertions": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-assertions/-/plugin-syntax-import-assertions-7.24.7.tgz",
- "integrity": "sha512-Ec3NRUMoi8gskrkBe3fNmEQfxDvY8bgfQpz6jlk/41kX9eUjvpyqWU7PBP/pLAvMaSQjbMNKJmvX57jP+M6bPg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-syntax-import-attributes": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.24.7.tgz",
- "integrity": "sha512-hbX+lKKeUMGihnK8nvKqmXBInriT3GVjzXKFriV3YC6APGxMbP8RZNFwy91+hocLXq90Mta+HshoB31802bb8A==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-syntax-import-meta": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz",
- "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.10.4"
- }
- },
- "@babel/plugin-syntax-json-strings": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz",
- "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-logical-assignment-operators": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz",
- "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.10.4"
- }
- },
- "@babel/plugin-syntax-nullish-coalescing-operator": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz",
- "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-numeric-separator": {
- "version": "7.10.4",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz",
- "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.10.4"
- }
- },
- "@babel/plugin-syntax-object-rest-spread": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz",
- "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-optional-catch-binding": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz",
- "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-optional-chaining": {
- "version": "7.8.3",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz",
- "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.8.0"
- }
- },
- "@babel/plugin-syntax-private-property-in-object": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz",
- "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-top-level-await": {
- "version": "7.14.5",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz",
- "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.14.5"
- }
- },
- "@babel/plugin-syntax-unicode-sets-regex": {
- "version": "7.18.6",
- "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-unicode-sets-regex/-/plugin-syntax-unicode-sets-regex-7.18.6.tgz",
- "integrity": "sha512-727YkEAPwSIQTv5im8QHz3upqp92JTWhidIC81Tdx4VJYIte/VndKf1qKrfnnhPLiPghStWfvC/iFaMCQu7Nqg==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.18.6",
- "@babel/helper-plugin-utils": "^7.18.6"
- }
- },
- "@babel/plugin-transform-arrow-functions": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.24.7.tgz",
- "integrity": "sha512-Dt9LQs6iEY++gXUwY03DNFat5C2NbO48jj+j/bSAz6b3HgPs39qcPiYt77fDObIcFwj3/C2ICX9YMwGflUoSHQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-async-generator-functions": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-generator-functions/-/plugin-transform-async-generator-functions-7.24.7.tgz",
- "integrity": "sha512-o+iF77e3u7ZS4AoAuJvapz9Fm001PuD2V3Lp6OSE4FYQke+cSewYtnek+THqGRWyQloRCyvWL1OkyfNEl9vr/g==",
- "dev": true,
- "requires": {
- "@babel/helper-environment-visitor": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-remap-async-to-generator": "^7.24.7",
- "@babel/plugin-syntax-async-generators": "^7.8.4"
- }
- },
- "@babel/plugin-transform-async-to-generator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.24.7.tgz",
- "integrity": "sha512-SQY01PcJfmQ+4Ash7NE+rpbLFbmqA2GPIgqzxfFTL4t1FKRq4zTms/7htKpoCUI9OcFYgzqfmCdH53s6/jn5fA==",
- "dev": true,
- "requires": {
- "@babel/helper-module-imports": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-remap-async-to-generator": "^7.24.7"
- }
- },
- "@babel/plugin-transform-block-scoped-functions": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.24.7.tgz",
- "integrity": "sha512-yO7RAz6EsVQDaBH18IDJcMB1HnrUn2FJ/Jslc/WtPPWcjhpUJXU/rjbwmluzp7v/ZzWcEhTMXELnnsz8djWDwQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-block-scoping": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.24.7.tgz",
- "integrity": "sha512-Nd5CvgMbWc+oWzBsuaMcbwjJWAcp5qzrbg69SZdHSP7AMY0AbWFqFO0WTFCA1jxhMCwodRwvRec8k0QUbZk7RQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-class-properties": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-properties/-/plugin-transform-class-properties-7.24.7.tgz",
- "integrity": "sha512-vKbfawVYayKcSeSR5YYzzyXvsDFWU2mD8U5TFeXtbCPLFUqe7GyCgvO6XDHzje862ODrOwy6WCPmKeWHbCFJ4w==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-class-static-block": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-class-static-block/-/plugin-transform-class-static-block-7.24.7.tgz",
- "integrity": "sha512-HMXK3WbBPpZQufbMG4B46A90PkuuhN9vBCb5T8+VAHqvAqvcLi+2cKoukcpmUYkszLhScU3l1iudhrks3DggRQ==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-class-static-block": "^7.14.5"
- }
- },
- "@babel/plugin-transform-classes": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.24.7.tgz",
- "integrity": "sha512-CFbbBigp8ln4FU6Bpy6g7sE8B/WmCmzvivzUC6xDAdWVsjYTXijpuuGJmYkAaoWAzcItGKT3IOAbxRItZ5HTjw==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.24.7",
- "@babel/helper-compilation-targets": "^7.24.7",
- "@babel/helper-environment-visitor": "^7.24.7",
- "@babel/helper-function-name": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-replace-supers": "^7.24.7",
- "@babel/helper-split-export-declaration": "^7.24.7",
- "globals": "^11.1.0"
- }
- },
- "@babel/plugin-transform-computed-properties": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.24.7.tgz",
- "integrity": "sha512-25cS7v+707Gu6Ds2oY6tCkUwsJ9YIDbggd9+cu9jzzDgiNq7hR/8dkzxWfKWnTic26vsI3EsCXNd4iEB6e8esQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/template": "^7.24.7"
- }
- },
- "@babel/plugin-transform-destructuring": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.24.7.tgz",
- "integrity": "sha512-19eJO/8kdCQ9zISOf+SEUJM/bAUIsvY3YDnXZTupUCQ8LgrWnsG/gFB9dvXqdXnRXMAM8fvt7b0CBKQHNGy1mw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-dotall-regex": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.24.7.tgz",
- "integrity": "sha512-ZOA3W+1RRTSWvyqcMJDLqbchh7U4NRGqwRfFSVbOLS/ePIP4vHB5e8T8eXcuqyN1QkgKyj5wuW0lcS85v4CrSw==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-duplicate-keys": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.24.7.tgz",
- "integrity": "sha512-JdYfXyCRihAe46jUIliuL2/s0x0wObgwwiGxw/UbgJBr20gQBThrokO4nYKgWkD7uBaqM7+9x5TU7NkExZJyzw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-dynamic-import": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dynamic-import/-/plugin-transform-dynamic-import-7.24.7.tgz",
- "integrity": "sha512-sc3X26PhZQDb3JhORmakcbvkeInvxz+A8oda99lj7J60QRuPZvNAk9wQlTBS1ZynelDrDmTU4pw1tyc5d5ZMUg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3"
- }
- },
- "@babel/plugin-transform-exponentiation-operator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.24.7.tgz",
- "integrity": "sha512-Rqe/vSc9OYgDajNIK35u7ot+KeCoetqQYFXM4Epf7M7ez3lWlOjrDjrwMei6caCVhfdw+mIKD4cgdGNy5JQotQ==",
- "dev": true,
- "requires": {
- "@babel/helper-builder-binary-assignment-operator-visitor": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-export-namespace-from": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-export-namespace-from/-/plugin-transform-export-namespace-from-7.24.7.tgz",
- "integrity": "sha512-v0K9uNYsPL3oXZ/7F9NNIbAj2jv1whUEtyA6aujhekLs56R++JDQuzRcP2/z4WX5Vg/c5lE9uWZA0/iUoFhLTA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3"
- }
- },
- "@babel/plugin-transform-for-of": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.24.7.tgz",
- "integrity": "sha512-wo9ogrDG1ITTTBsy46oGiN1dS9A7MROBTcYsfS8DtsImMkHk9JXJ3EWQM6X2SUw4x80uGPlwj0o00Uoc6nEE3g==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7"
- }
- },
- "@babel/plugin-transform-function-name": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.24.7.tgz",
- "integrity": "sha512-U9FcnA821YoILngSmYkW6FjyQe2TyZD5pHt4EVIhmcTkrJw/3KqcrRSxuOo5tFZJi7TE19iDyI1u+weTI7bn2w==",
- "dev": true,
- "requires": {
- "@babel/helper-compilation-targets": "^7.24.7",
- "@babel/helper-function-name": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-json-strings": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-json-strings/-/plugin-transform-json-strings-7.24.7.tgz",
- "integrity": "sha512-2yFnBGDvRuxAaE/f0vfBKvtnvvqU8tGpMHqMNpTN2oWMKIR3NqFkjaAgGwawhqK/pIN2T3XdjGPdaG0vDhOBGw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-json-strings": "^7.8.3"
- }
- },
- "@babel/plugin-transform-literals": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.24.7.tgz",
- "integrity": "sha512-vcwCbb4HDH+hWi8Pqenwnjy+UiklO4Kt1vfspcQYFhJdpthSnW8XvWGyDZWKNVrVbVViI/S7K9PDJZiUmP2fYQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-logical-assignment-operators": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-logical-assignment-operators/-/plugin-transform-logical-assignment-operators-7.24.7.tgz",
- "integrity": "sha512-4D2tpwlQ1odXmTEIFWy9ELJcZHqrStlzK/dAOWYyxX3zT0iXQB6banjgeOJQXzEc4S0E0a5A+hahxPaEFYftsw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4"
- }
- },
- "@babel/plugin-transform-member-expression-literals": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.24.7.tgz",
- "integrity": "sha512-T/hRC1uqrzXMKLQ6UCwMT85S3EvqaBXDGf0FaMf4446Qx9vKwlghvee0+uuZcDUCZU5RuNi4781UQ7R308zzBw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-modules-amd": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.24.7.tgz",
- "integrity": "sha512-9+pB1qxV3vs/8Hdmz/CulFB8w2tuu6EB94JZFsjdqxQokwGa9Unap7Bo2gGBGIvPmDIVvQrom7r5m/TCDMURhg==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-modules-commonjs": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.24.7.tgz",
- "integrity": "sha512-iFI8GDxtevHJ/Z22J5xQpVqFLlMNstcLXh994xifFwxxGslr2ZXXLWgtBeLctOD63UFDArdvN6Tg8RFw+aEmjQ==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-simple-access": "^7.24.7"
- }
- },
- "@babel/plugin-transform-modules-systemjs": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.24.7.tgz",
- "integrity": "sha512-GYQE0tW7YoaN13qFh3O1NCY4MPkUiAH3fiF7UcV/I3ajmDKEdG3l+UOcbAm4zUE3gnvUU+Eni7XrVKo9eO9auw==",
- "dev": true,
- "requires": {
- "@babel/helper-hoist-variables": "^7.24.7",
- "@babel/helper-module-transforms": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-validator-identifier": "^7.24.7"
- }
- },
- "@babel/plugin-transform-modules-umd": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.24.7.tgz",
- "integrity": "sha512-3aytQvqJ/h9z4g8AsKPLvD4Zqi2qT+L3j7XoFFu1XBlZWEl2/1kWnhmAbxpLgPrHSY0M6UA02jyTiwUVtiKR6A==",
- "dev": true,
- "requires": {
- "@babel/helper-module-transforms": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-named-capturing-groups-regex": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.24.7.tgz",
- "integrity": "sha512-/jr7h/EWeJtk1U/uz2jlsCioHkZk1JJZVcc8oQsJ1dUlaJD83f4/6Zeh2aHt9BIFokHIsSeDfhUmju0+1GPd6g==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-new-target": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.24.7.tgz",
- "integrity": "sha512-RNKwfRIXg4Ls/8mMTza5oPF5RkOW8Wy/WgMAp1/F1yZ8mMbtwXW+HDoJiOsagWrAhI5f57Vncrmr9XeT4CVapA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-nullish-coalescing-operator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-nullish-coalescing-operator/-/plugin-transform-nullish-coalescing-operator-7.24.7.tgz",
- "integrity": "sha512-Ts7xQVk1OEocqzm8rHMXHlxvsfZ0cEF2yomUqpKENHWMF4zKk175Y4q8H5knJes6PgYad50uuRmt3UJuhBw8pQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3"
- }
- },
- "@babel/plugin-transform-numeric-separator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-numeric-separator/-/plugin-transform-numeric-separator-7.24.7.tgz",
- "integrity": "sha512-e6q1TiVUzvH9KRvicuxdBTUj4AdKSRwzIyFFnfnezpCfP2/7Qmbb8qbU2j7GODbl4JMkblitCQjKYUaX/qkkwA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4"
- }
- },
- "@babel/plugin-transform-object-rest-spread": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-rest-spread/-/plugin-transform-object-rest-spread-7.24.7.tgz",
- "integrity": "sha512-4QrHAr0aXQCEFni2q4DqKLD31n2DL+RxcwnNjDFkSG0eNQ/xCavnRkfCUjsyqGC2OviNJvZOF/mQqZBw7i2C5Q==",
- "dev": true,
- "requires": {
- "@babel/helper-compilation-targets": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-transform-parameters": "^7.24.7"
- }
- },
- "@babel/plugin-transform-object-super": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.24.7.tgz",
- "integrity": "sha512-A/vVLwN6lBrMFmMDmPPz0jnE6ZGx7Jq7d6sT/Ev4H65RER6pZ+kczlf1DthF5N0qaPHBsI7UXiE8Zy66nmAovg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-replace-supers": "^7.24.7"
- }
- },
- "@babel/plugin-transform-optional-catch-binding": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.7.tgz",
- "integrity": "sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
- }
- },
- "@babel/plugin-transform-optional-chaining": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.7.tgz",
- "integrity": "sha512-tK+0N9yd4j+x/4hxF3F0e0fu/VdcxU18y5SevtyM/PCFlQvXbR0Zmlo2eBrKtVipGNFzpq56o8WsIIKcJFUCRQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3"
- }
- },
- "@babel/plugin-transform-parameters": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.7.tgz",
- "integrity": "sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-private-methods": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.7.tgz",
- "integrity": "sha512-COTCOkG2hn4JKGEKBADkA8WNb35TGkkRbI5iT845dB+NyqgO8Hn+ajPbSnIQznneJTa3d30scb6iz/DhH8GsJQ==",
- "dev": true,
- "requires": {
- "@babel/helper-create-class-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-private-property-in-object": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.7.tgz",
- "integrity": "sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA==",
- "dev": true,
- "requires": {
- "@babel/helper-annotate-as-pure": "^7.24.7",
- "@babel/helper-create-class-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5"
- }
- },
- "@babel/plugin-transform-property-literals": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.7.tgz",
- "integrity": "sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-regenerator": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.7.tgz",
- "integrity": "sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "regenerator-transform": "^0.15.2"
- }
- },
- "@babel/plugin-transform-reserved-words": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.7.tgz",
- "integrity": "sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-shorthand-properties": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.7.tgz",
- "integrity": "sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-spread": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.7.tgz",
- "integrity": "sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7",
- "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7"
- }
- },
- "@babel/plugin-transform-sticky-regex": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.7.tgz",
- "integrity": "sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-template-literals": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.7.tgz",
- "integrity": "sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-typeof-symbol": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.7.tgz",
- "integrity": "sha512-VtR8hDy7YLB7+Pet9IarXjg/zgCMSF+1mNS/EQEiEaUPoFXCVsHG64SIxcaaI2zJgRiv+YmgaQESUfWAdbjzgg==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-unicode-escapes": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.7.tgz",
- "integrity": "sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-unicode-property-regex": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.7.tgz",
- "integrity": "sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-unicode-regex": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.7.tgz",
- "integrity": "sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/plugin-transform-unicode-sets-regex": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.7.tgz",
- "integrity": "sha512-2G8aAvF4wy1w/AGZkemprdGMRg5o6zPNhbHVImRz3lss55TYCBd6xStN19rt8XJHq20sqV0JbyWjOWwQRwV/wg==",
- "dev": true,
- "requires": {
- "@babel/helper-create-regexp-features-plugin": "^7.24.7",
- "@babel/helper-plugin-utils": "^7.24.7"
- }
- },
- "@babel/preset-env": {
- "version": "7.24.6",
- "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.24.6.tgz",
- "integrity": "sha512-CrxEAvN7VxfjOG8JNF2Y/eMqMJbZPZ185amwGUBp8D9USK90xQmv7dLdFSa+VbD7fdIqcy/Mfv7WtzG8+/qxKg==",
- "dev": true,
- "requires": {
- "@babel/compat-data": "^7.24.6",
- "@babel/helper-compilation-targets": "^7.24.6",
- "@babel/helper-plugin-utils": "^7.24.6",
- "@babel/helper-validator-option": "^7.24.6",
- "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.24.6",
- "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.24.6",
- "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.24.6",
- "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.24.6",
- "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2",
- "@babel/plugin-syntax-async-generators": "^7.8.4",
- "@babel/plugin-syntax-class-properties": "^7.12.13",
- "@babel/plugin-syntax-class-static-block": "^7.14.5",
- "@babel/plugin-syntax-dynamic-import": "^7.8.3",
- "@babel/plugin-syntax-export-namespace-from": "^7.8.3",
- "@babel/plugin-syntax-import-assertions": "^7.24.6",
- "@babel/plugin-syntax-import-attributes": "^7.24.6",
- "@babel/plugin-syntax-import-meta": "^7.10.4",
- "@babel/plugin-syntax-json-strings": "^7.8.3",
- "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
- "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
- "@babel/plugin-syntax-numeric-separator": "^7.10.4",
- "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
- "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
- "@babel/plugin-syntax-optional-chaining": "^7.8.3",
- "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
- "@babel/plugin-syntax-top-level-await": "^7.14.5",
- "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6",
- "@babel/plugin-transform-arrow-functions": "^7.24.6",
- "@babel/plugin-transform-async-generator-functions": "^7.24.6",
- "@babel/plugin-transform-async-to-generator": "^7.24.6",
- "@babel/plugin-transform-block-scoped-functions": "^7.24.6",
- "@babel/plugin-transform-block-scoping": "^7.24.6",
- "@babel/plugin-transform-class-properties": "^7.24.6",
- "@babel/plugin-transform-class-static-block": "^7.24.6",
- "@babel/plugin-transform-classes": "^7.24.6",
- "@babel/plugin-transform-computed-properties": "^7.24.6",
- "@babel/plugin-transform-destructuring": "^7.24.6",
- "@babel/plugin-transform-dotall-regex": "^7.24.6",
- "@babel/plugin-transform-duplicate-keys": "^7.24.6",
- "@babel/plugin-transform-dynamic-import": "^7.24.6",
- "@babel/plugin-transform-exponentiation-operator": "^7.24.6",
- "@babel/plugin-transform-export-namespace-from": "^7.24.6",
- "@babel/plugin-transform-for-of": "^7.24.6",
- "@babel/plugin-transform-function-name": "^7.24.6",
- "@babel/plugin-transform-json-strings": "^7.24.6",
- "@babel/plugin-transform-literals": "^7.24.6",
- "@babel/plugin-transform-logical-assignment-operators": "^7.24.6",
- "@babel/plugin-transform-member-expression-literals": "^7.24.6",
- "@babel/plugin-transform-modules-amd": "^7.24.6",
- "@babel/plugin-transform-modules-commonjs": "^7.24.6",
- "@babel/plugin-transform-modules-systemjs": "^7.24.6",
- "@babel/plugin-transform-modules-umd": "^7.24.6",
- "@babel/plugin-transform-named-capturing-groups-regex": "^7.24.6",
- "@babel/plugin-transform-new-target": "^7.24.6",
- "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.6",
- "@babel/plugin-transform-numeric-separator": "^7.24.6",
- "@babel/plugin-transform-object-rest-spread": "^7.24.6",
- "@babel/plugin-transform-object-super": "^7.24.6",
- "@babel/plugin-transform-optional-catch-binding": "^7.24.6",
- "@babel/plugin-transform-optional-chaining": "^7.24.6",
- "@babel/plugin-transform-parameters": "^7.24.6",
- "@babel/plugin-transform-private-methods": "^7.24.6",
- "@babel/plugin-transform-private-property-in-object": "^7.24.6",
- "@babel/plugin-transform-property-literals": "^7.24.6",
- "@babel/plugin-transform-regenerator": "^7.24.6",
- "@babel/plugin-transform-reserved-words": "^7.24.6",
- "@babel/plugin-transform-shorthand-properties": "^7.24.6",
- "@babel/plugin-transform-spread": "^7.24.6",
- "@babel/plugin-transform-sticky-regex": "^7.24.6",
- "@babel/plugin-transform-template-literals": "^7.24.6",
- "@babel/plugin-transform-typeof-symbol": "^7.24.6",
- "@babel/plugin-transform-unicode-escapes": "^7.24.6",
- "@babel/plugin-transform-unicode-property-regex": "^7.24.6",
- "@babel/plugin-transform-unicode-regex": "^7.24.6",
- "@babel/plugin-transform-unicode-sets-regex": "^7.24.6",
- "@babel/preset-modules": "0.1.6-no-external-plugins",
- "babel-plugin-polyfill-corejs2": "^0.4.10",
- "babel-plugin-polyfill-corejs3": "^0.10.4",
- "babel-plugin-polyfill-regenerator": "^0.6.1",
- "core-js-compat": "^3.31.0",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
- }
- },
- "@babel/preset-modules": {
- "version": "0.1.6-no-external-plugins",
- "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz",
- "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==",
- "dev": true,
- "requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@babel/types": "^7.4.4",
- "esutils": "^2.0.2"
- }
- },
- "@babel/regjsgen": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz",
- "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==",
- "dev": true
- },
- "@babel/runtime": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.7.tgz",
- "integrity": "sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==",
- "dev": true,
- "requires": {
- "regenerator-runtime": "^0.14.0"
- },
- "dependencies": {
- "regenerator-runtime": {
- "version": "0.14.1",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz",
- "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==",
- "dev": true
- }
- }
- },
- "@babel/template": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.24.7.tgz",
- "integrity": "sha512-jYqfPrU9JTF0PmPy1tLYHW4Mp4KlgxJD9l2nP9fD6yT/ICi554DmrWBAEYpIelzjHf1msDP3PxJIRt/nFNfBig==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.24.7",
- "@babel/parser": "^7.24.7",
- "@babel/types": "^7.24.7"
- }
- },
- "@babel/traverse": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.24.7.tgz",
- "integrity": "sha512-yb65Ed5S/QAcewNPh0nZczy9JdYXkkAbIsEo+P7BE7yO3txAY30Y/oPa3QkQ5It3xVG2kpKMg9MsdxZaO31uKA==",
- "dev": true,
- "requires": {
- "@babel/code-frame": "^7.24.7",
- "@babel/generator": "^7.24.7",
- "@babel/helper-environment-visitor": "^7.24.7",
- "@babel/helper-function-name": "^7.24.7",
- "@babel/helper-hoist-variables": "^7.24.7",
- "@babel/helper-split-export-declaration": "^7.24.7",
- "@babel/parser": "^7.24.7",
- "@babel/types": "^7.24.7",
- "debug": "^4.3.1",
- "globals": "^11.1.0"
- }
- },
- "@babel/types": {
- "version": "7.24.7",
- "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.24.7.tgz",
- "integrity": "sha512-XEFXSlxiG5td2EJRe8vOmRbaXVgfcBlszKujvVmWIK/UpywWljQCfzAv3RQCGujWQ1RD4YYWEAqDXfuJiy8f5Q==",
- "dev": true,
- "requires": {
- "@babel/helper-string-parser": "^7.24.7",
- "@babel/helper-validator-identifier": "^7.24.7",
- "to-fast-properties": "^2.0.0"
- }
- },
- "@colors/colors": {
- "version": "1.5.0",
- "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz",
- "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==",
- "dev": true
- },
- "@cucumber/ci-environment": {
- "version": "9.2.0",
- "resolved": "https://registry.npmjs.org/@cucumber/ci-environment/-/ci-environment-9.2.0.tgz",
- "integrity": "sha512-jLzRtVwdtNt+uAmTwvXwW9iGYLEOJFpDSmnx/dgoMGKXUWRx1UHT86Q696CLdgXO8kyTwsgJY0c6n5SW9VitAA==",
- "dev": true
- },
- "@cucumber/cucumber": {
- "version": "9.6.0",
- "resolved": "https://registry.npmjs.org/@cucumber/cucumber/-/cucumber-9.6.0.tgz",
- "integrity": "sha512-bCw2uJdGHHLg4B3RoZpLzx0RXyXURmPe+swtdK1cGoA8rs+vv+/6osifcNwvFM2sv0nQ91+gDACSrXK7AHCylg==",
- "dev": true,
- "requires": {
- "@cucumber/ci-environment": "9.2.0",
- "@cucumber/cucumber-expressions": "16.1.2",
- "@cucumber/gherkin": "26.2.0",
- "@cucumber/gherkin-streams": "5.0.1",
- "@cucumber/gherkin-utils": "8.0.2",
- "@cucumber/html-formatter": "20.4.0",
- "@cucumber/message-streams": "4.0.1",
- "@cucumber/messages": "22.0.0",
- "@cucumber/tag-expressions": "5.0.1",
- "assertion-error-formatter": "^3.0.0",
- "capital-case": "^1.0.4",
- "chalk": "^4.1.2",
- "cli-table3": "0.6.3",
- "commander": "^10.0.0",
- "debug": "^4.3.4",
- "error-stack-parser": "^2.1.4",
- "figures": "^3.2.0",
- "glob": "^7.1.6",
- "has-ansi": "^4.0.1",
- "indent-string": "^4.0.0",
- "is-installed-globally": "^0.4.0",
- "is-stream": "^2.0.0",
- "knuth-shuffle-seeded": "^1.0.6",
- "lodash.merge": "^4.6.2",
- "lodash.mergewith": "^4.6.2",
- "luxon": "3.2.1",
- "mkdirp": "^2.1.5",
- "mz": "^2.7.0",
- "progress": "^2.0.3",
- "resolve-pkg": "^2.0.0",
- "semver": "7.5.3",
- "string-argv": "^0.3.1",
- "strip-ansi": "6.0.1",
- "supports-color": "^8.1.1",
- "tmp": "^0.2.1",
- "util-arity": "^1.1.0",
- "verror": "^1.10.0",
- "xmlbuilder": "^15.1.1",
- "yaml": "^2.2.2",
- "yup": "1.2.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "dependencies": {
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "semver": {
- "version": "7.5.3",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz",
- "integrity": "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==",
- "dev": true,
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- }
- }
- },
- "@cucumber/cucumber-expressions": {
- "version": "16.1.2",
- "resolved": "https://registry.npmjs.org/@cucumber/cucumber-expressions/-/cucumber-expressions-16.1.2.tgz",
- "integrity": "sha512-CfHEbxJ5FqBwF6mJyLLz4B353gyHkoi6cCL4J0lfDZ+GorpcWw4n2OUAdxJmP7ZlREANWoTFlp4FhmkLKrCfUA==",
- "dev": true,
- "requires": {
- "regexp-match-indices": "1.0.2"
- }
- },
- "@cucumber/gherkin": {
- "version": "26.2.0",
- "resolved": "https://registry.npmjs.org/@cucumber/gherkin/-/gherkin-26.2.0.tgz",
- "integrity": "sha512-iRSiK8YAIHAmLrn/mUfpAx7OXZ7LyNlh1zT89RoziSVCbqSVDxJS6ckEzW8loxs+EEXl0dKPQOXiDmbHV+C/fA==",
- "dev": true,
- "requires": {
- "@cucumber/messages": ">=19.1.4 <=22"
- }
- },
- "@cucumber/gherkin-streams": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@cucumber/gherkin-streams/-/gherkin-streams-5.0.1.tgz",
- "integrity": "sha512-/7VkIE/ASxIP/jd4Crlp4JHXqdNFxPGQokqWqsaCCiqBiu5qHoKMxcWNlp9njVL/n9yN4S08OmY3ZR8uC5x74Q==",
- "dev": true,
- "requires": {
- "commander": "9.1.0",
- "source-map-support": "0.5.21"
- },
- "dependencies": {
- "commander": {
- "version": "9.1.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-9.1.0.tgz",
- "integrity": "sha512-i0/MaqBtdbnJ4XQs4Pmyb+oFQl+q0lsAmokVUH92SlSw4fkeAcG3bVon+Qt7hmtF+u3Het6o4VgrcY3qAoEB6w==",
- "dev": true
- }
- }
- },
- "@cucumber/gherkin-utils": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/@cucumber/gherkin-utils/-/gherkin-utils-8.0.2.tgz",
- "integrity": "sha512-aQlziN3r3cTwprEDbLEcFoMRQajb9DTOu2OZZp5xkuNz6bjSTowSY90lHUD2pWT7jhEEckZRIREnk7MAwC2d1A==",
- "dev": true,
- "requires": {
- "@cucumber/gherkin": "^25.0.0",
- "@cucumber/messages": "^19.1.4",
- "@teppeis/multimaps": "2.0.0",
- "commander": "9.4.1",
- "source-map-support": "^0.5.21"
- },
- "dependencies": {
- "@cucumber/gherkin": {
- "version": "25.0.2",
- "resolved": "https://registry.npmjs.org/@cucumber/gherkin/-/gherkin-25.0.2.tgz",
- "integrity": "sha512-EdsrR33Y5GjuOoe2Kq5Y9DYwgNRtUD32H4y2hCrT6+AWo7ibUQu7H+oiWTgfVhwbkHsZmksxHSxXz/AwqqyCRQ==",
- "dev": true,
- "requires": {
- "@cucumber/messages": "^19.1.4"
- }
- },
- "@cucumber/messages": {
- "version": "19.1.4",
- "resolved": "https://registry.npmjs.org/@cucumber/messages/-/messages-19.1.4.tgz",
- "integrity": "sha512-Pksl0pnDz2l1+L5Ug85NlG6LWrrklN9qkMxN5Mv+1XZ3T6u580dnE6mVaxjJRdcOq4tR17Pc0RqIDZMyVY1FlA==",
- "dev": true,
- "requires": {
- "@types/uuid": "8.3.4",
- "class-transformer": "0.5.1",
- "reflect-metadata": "0.1.13",
- "uuid": "9.0.0"
- }
- },
- "@types/uuid": {
- "version": "8.3.4",
- "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz",
- "integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==",
- "dev": true
- },
- "commander": {
- "version": "9.4.1",
- "resolved": "https://registry.npmjs.org/commander/-/commander-9.4.1.tgz",
- "integrity": "sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==",
- "dev": true
- },
- "uuid": {
- "version": "9.0.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz",
- "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==",
- "dev": true
- }
- }
- },
- "@cucumber/html-formatter": {
- "version": "20.4.0",
- "resolved": "https://registry.npmjs.org/@cucumber/html-formatter/-/html-formatter-20.4.0.tgz",
- "integrity": "sha512-TnLSXC5eJd8AXHENo69f5z+SixEVtQIf7Q2dZuTpT/Y8AOkilGpGl1MQR1Vp59JIw+fF3EQSUKdf+DAThCxUNg==",
- "dev": true,
- "requires": {}
- },
- "@cucumber/message-streams": {
- "version": "4.0.1",
- "resolved": "https://registry.npmjs.org/@cucumber/message-streams/-/message-streams-4.0.1.tgz",
- "integrity": "sha512-Kxap9uP5jD8tHUZVjTWgzxemi/0uOsbGjd4LBOSxcJoOCRbESFwemUzilJuzNTB8pcTQUh8D5oudUyxfkJOKmA==",
- "dev": true,
- "requires": {}
- },
- "@cucumber/messages": {
- "version": "22.0.0",
- "resolved": "https://registry.npmjs.org/@cucumber/messages/-/messages-22.0.0.tgz",
- "integrity": "sha512-EuaUtYte9ilkxcKmfqGF9pJsHRUU0jwie5ukuZ/1NPTuHS1LxHPsGEODK17RPRbZHOFhqybNzG2rHAwThxEymg==",
- "dev": true,
- "requires": {
- "@types/uuid": "9.0.1",
- "class-transformer": "0.5.1",
- "reflect-metadata": "0.1.13",
- "uuid": "9.0.0"
- },
- "dependencies": {
- "uuid": {
- "version": "9.0.0",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz",
- "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==",
- "dev": true
- }
- }
- },
- "@cucumber/tag-expressions": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@cucumber/tag-expressions/-/tag-expressions-5.0.1.tgz",
- "integrity": "sha512-N43uWud8ZXuVjza423T9ZCIJsaZhFekmakt7S9bvogTxqdVGbRobjR663s0+uW0Rz9e+Pa8I6jUuWtoBLQD2Mw==",
- "dev": true
- },
- "@dabh/diagnostics": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz",
- "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==",
- "dev": true,
- "requires": {
- "colorspace": "1.1.x",
- "enabled": "2.0.x",
- "kuler": "^2.0.0"
- }
- },
- "@discoveryjs/json-ext": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz",
- "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==",
- "dev": true
- },
- "@esbuild/aix-ppc64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz",
- "integrity": "sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/android-arm": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.12.tgz",
- "integrity": "sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==",
- "dev": true,
- "optional": true
- },
- "@esbuild/android-arm64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.12.tgz",
- "integrity": "sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/android-x64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.12.tgz",
- "integrity": "sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==",
- "dev": true,
- "optional": true
- },
- "@esbuild/darwin-arm64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.12.tgz",
- "integrity": "sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==",
- "dev": true,
- "optional": true
- },
- "@esbuild/darwin-x64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.12.tgz",
- "integrity": "sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==",
- "dev": true,
- "optional": true
- },
- "@esbuild/freebsd-arm64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.12.tgz",
- "integrity": "sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/freebsd-x64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.12.tgz",
- "integrity": "sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-arm": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.12.tgz",
- "integrity": "sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-arm64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.12.tgz",
- "integrity": "sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-ia32": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.12.tgz",
- "integrity": "sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-loong64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.12.tgz",
- "integrity": "sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-mips64el": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.12.tgz",
- "integrity": "sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-ppc64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.12.tgz",
- "integrity": "sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-riscv64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.12.tgz",
- "integrity": "sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-s390x": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.12.tgz",
- "integrity": "sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==",
- "dev": true,
- "optional": true
- },
- "@esbuild/linux-x64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.12.tgz",
- "integrity": "sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==",
- "dev": true,
- "optional": true
- },
- "@esbuild/netbsd-x64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.12.tgz",
- "integrity": "sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/openbsd-x64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz",
- "integrity": "sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==",
- "dev": true,
- "optional": true
- },
- "@esbuild/sunos-x64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.12.tgz",
- "integrity": "sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==",
- "dev": true,
- "optional": true
- },
- "@esbuild/win32-arm64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.12.tgz",
- "integrity": "sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==",
- "dev": true,
- "optional": true
- },
- "@esbuild/win32-ia32": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.12.tgz",
- "integrity": "sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==",
- "dev": true,
- "optional": true
- },
- "@esbuild/win32-x64": {
- "version": "0.19.12",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz",
- "integrity": "sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==",
- "dev": true,
- "optional": true
- },
- "@eslint/eslintrc": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz",
- "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==",
- "dev": true,
- "requires": {
- "ajv": "^6.12.4",
- "debug": "^4.3.2",
- "espree": "^9.4.0",
- "globals": "^13.19.0",
- "ignore": "^5.2.0",
- "import-fresh": "^3.2.1",
- "js-yaml": "^4.1.0",
- "minimatch": "^3.1.2",
- "strip-json-comments": "^3.1.1"
- },
- "dependencies": {
- "globals": {
- "version": "13.24.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
- "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
- "dev": true,
- "requires": {
- "type-fest": "^0.20.2"
- }
- },
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "dev": true
- }
- }
- },
- "@fastify/ajv-compiler": {
- "version": "3.5.0",
- "resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-3.5.0.tgz",
- "integrity": "sha512-ebbEtlI7dxXF5ziNdr05mOY8NnDiPB1XvAlLHctRt/Rc+C3LCOVW5imUVX+mhvUhnNzmPBHewUkOFgGlCxgdAA==",
- "dev": true,
- "requires": {
- "ajv": "^8.11.0",
- "ajv-formats": "^2.1.1",
- "fast-uri": "^2.0.0"
- },
- "dependencies": {
- "ajv": {
- "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",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- }
- },
- "json-schema-traverse": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
- "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
- "dev": true
- }
- }
- },
- "@fastify/error": {
- "version": "3.4.1",
- "resolved": "https://registry.npmjs.org/@fastify/error/-/error-3.4.1.tgz",
- "integrity": "sha512-wWSvph+29GR783IhmvdwWnN4bUxTD01Vm5Xad4i7i1VuAOItLvbPAb69sb0IQ2N57yprvhNIwAP5B6xfKTmjmQ==",
- "dev": true
- },
- "@fastify/express": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@fastify/express/-/express-3.0.0.tgz",
- "integrity": "sha512-Ug6aulXCUiHgMyrHVYQqnQbGdsAV0aTad6nZxbOr6w3QjKn1mdQS3Kyzvc+I0xMjZ9yIyMUWHSooHgZ0l7nOng==",
- "dev": true,
- "requires": {
- "express": "^4.17.1",
- "fastify-plugin": "^4.0.0"
- }
- },
- "@fastify/fast-json-stringify-compiler": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-4.3.0.tgz",
- "integrity": "sha512-aZAXGYo6m22Fk1zZzEUKBvut/CIIQe/BapEORnxiD5Qr0kPHqqI69NtEMCme74h+at72sPhbkb4ZrLd1W3KRLA==",
- "dev": true,
- "requires": {
- "fast-json-stringify": "^5.7.0"
- }
- },
- "@fastify/merge-json-schemas": {
- "version": "0.1.1",
- "resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.1.1.tgz",
- "integrity": "sha512-fERDVz7topgNjtXsJTTW1JKLy0rhuLRcquYqNR9rF7OcVpCa2OVW49ZPDIhaRRCaUuvVxI+N416xUoF76HNSXA==",
- "dev": true,
- "requires": {
- "fast-deep-equal": "^3.1.3"
- }
- },
- "@gar/promisify": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz",
- "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==",
- "dev": true
- },
- "@grpc/grpc-js": {
- "version": "1.10.1",
- "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.10.1.tgz",
- "integrity": "sha512-55ONqFytZExfOIjF1RjXPcVmT/jJqFzbbDqxK9jmRV4nxiYWtL9hENSW1Jfx0SdZfrvoqd44YJ/GJTqfRrawSQ==",
- "requires": {
- "@grpc/proto-loader": "^0.7.8",
- "@types/node": ">=12.12.47"
- }
- },
- "@grpc/proto-loader": {
- "version": "0.7.10",
- "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.10.tgz",
- "integrity": "sha512-CAqDfoaQ8ykFd9zqBDn4k6iWT9loLAlc2ETmDFS9JCD70gDcnA4L3AFEo2iV7KyAtAAHFW9ftq1Fz+Vsgq80RQ==",
- "requires": {
- "lodash.camelcase": "^4.3.0",
- "long": "^5.0.0",
- "protobufjs": "^7.2.4",
- "yargs": "^17.7.2"
- }
- },
- "@hapi/accept": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/@hapi/accept/-/accept-6.0.3.tgz",
- "integrity": "sha512-p72f9k56EuF0n3MwlBNThyVE5PXX40g+aQh+C/xbKrfzahM2Oispv3AXmOIU51t3j77zay1qrX7IIziZXspMlw==",
- "dev": true,
- "requires": {
- "@hapi/boom": "^10.0.1",
- "@hapi/hoek": "^11.0.2"
- },
- "dependencies": {
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/ammo": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/ammo/-/ammo-6.0.1.tgz",
- "integrity": "sha512-pmL+nPod4g58kXrMcsGLp05O2jF4P2Q3GiL8qYV7nKYEh3cGf+rV4P5Jyi2Uq0agGhVU63GtaSAfBEZOlrJn9w==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- },
- "dependencies": {
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/bounce": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/bounce/-/bounce-3.0.1.tgz",
- "integrity": "sha512-G+/Pp9c1Ha4FDP+3Sy/Xwg2O4Ahaw3lIZFSX+BL4uWi64CmiETuZPxhKDUD4xBMOUZbBlzvO8HjiK8ePnhBadA==",
- "dev": true,
- "requires": {
- "@hapi/boom": "^10.0.1",
- "@hapi/hoek": "^11.0.2"
- },
- "dependencies": {
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/call": {
- "version": "9.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/call/-/call-9.0.1.tgz",
- "integrity": "sha512-uPojQRqEL1GRZR4xXPqcLMujQGaEpyVPRyBlD8Pp5rqgIwLhtveF9PkixiKru2THXvuN8mUrLeet5fqxKAAMGg==",
- "dev": true,
- "requires": {
- "@hapi/boom": "^10.0.1",
- "@hapi/hoek": "^11.0.2"
- },
- "dependencies": {
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/catbox": {
- "version": "12.1.1",
- "resolved": "https://registry.npmjs.org/@hapi/catbox/-/catbox-12.1.1.tgz",
- "integrity": "sha512-hDqYB1J+R0HtZg4iPH3LEnldoaBsar6bYp0EonBmNQ9t5CO+1CqgCul2ZtFveW1ReA5SQuze9GPSU7/aecERhw==",
- "dev": true,
- "requires": {
- "@hapi/boom": "^10.0.1",
- "@hapi/hoek": "^11.0.2",
- "@hapi/podium": "^5.0.0",
- "@hapi/validate": "^2.0.1"
- },
- "dependencies": {
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- },
- "@hapi/podium": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/podium/-/podium-5.0.1.tgz",
- "integrity": "sha512-eznFTw6rdBhAijXFIlBOMJJd+lXTvqbrBIS4Iu80r2KTVIo4g+7fLy4NKp/8+UnSt5Ox6mJtAlKBU/Sf5080TQ==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/teamwork": "^6.0.0",
- "@hapi/validate": "^2.0.1"
- }
- },
- "@hapi/teamwork": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/@hapi/teamwork/-/teamwork-6.0.0.tgz",
- "integrity": "sha512-05HumSy3LWfXpmJ9cr6HzwhAavrHkJ1ZRCmNE2qJMihdM5YcWreWPfyN0yKT2ZjCM92au3ZkuodjBxOibxM67A==",
- "dev": true
- },
- "@hapi/topo": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
- "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/validate": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
- "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/topo": "^6.0.1"
- }
- }
- }
- },
- "@hapi/catbox-memory": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/catbox-memory/-/catbox-memory-6.0.1.tgz",
- "integrity": "sha512-sVb+/ZxbZIvaMtJfAbdyY+QJUQg9oKTwamXpEg/5xnfG5WbJLTjvEn4kIGKz9pN3ENNbIL/bIdctmHmqi/AdGA==",
- "dev": true,
- "requires": {
- "@hapi/boom": "^10.0.1",
- "@hapi/hoek": "^11.0.2"
- },
- "dependencies": {
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/content": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/@hapi/content/-/content-6.0.0.tgz",
- "integrity": "sha512-CEhs7j+H0iQffKfe5Htdak5LBOz/Qc8TRh51cF+BFv0qnuph3Em4pjGVzJMkI2gfTDdlJKWJISGWS1rK34POGA==",
- "dev": true,
- "requires": {
- "@hapi/boom": "^10.0.0"
- },
- "dependencies": {
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/file": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@hapi/file/-/file-3.0.0.tgz",
- "integrity": "sha512-w+lKW+yRrLhJu620jT3y+5g2mHqnKfepreykvdOcl9/6up8GrQQn+l3FRTsjHTKbkbfQFkuksHpdv2EcpKcJ4Q==",
- "dev": true
- },
- "@hapi/hapi": {
- "version": "21.3.3",
- "resolved": "https://registry.npmjs.org/@hapi/hapi/-/hapi-21.3.3.tgz",
- "integrity": "sha512-6pgwWVl/aSKSNVn86n+mWa06jRqCAKi2adZp/Hti19A0u5x3/6eiKz8UTBPMzfrdGf9WcrYbFBYzWr/qd2s28g==",
- "dev": true,
- "requires": {
- "@hapi/accept": "^6.0.1",
- "@hapi/ammo": "^6.0.1",
- "@hapi/boom": "^10.0.1",
- "@hapi/bounce": "^3.0.1",
- "@hapi/call": "^9.0.1",
- "@hapi/catbox": "^12.1.1",
- "@hapi/catbox-memory": "^6.0.1",
- "@hapi/heavy": "^8.0.1",
- "@hapi/hoek": "^11.0.2",
- "@hapi/mimos": "^7.0.1",
- "@hapi/podium": "^5.0.1",
- "@hapi/shot": "^6.0.1",
- "@hapi/somever": "^4.1.1",
- "@hapi/statehood": "^8.1.1",
- "@hapi/subtext": "^8.1.0",
- "@hapi/teamwork": "^6.0.0",
- "@hapi/topo": "^6.0.1",
- "@hapi/validate": "^2.0.1"
- },
- "dependencies": {
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- },
- "@hapi/podium": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/podium/-/podium-5.0.1.tgz",
- "integrity": "sha512-eznFTw6rdBhAijXFIlBOMJJd+lXTvqbrBIS4Iu80r2KTVIo4g+7fLy4NKp/8+UnSt5Ox6mJtAlKBU/Sf5080TQ==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/teamwork": "^6.0.0",
- "@hapi/validate": "^2.0.1"
- }
- },
- "@hapi/teamwork": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/@hapi/teamwork/-/teamwork-6.0.0.tgz",
- "integrity": "sha512-05HumSy3LWfXpmJ9cr6HzwhAavrHkJ1ZRCmNE2qJMihdM5YcWreWPfyN0yKT2ZjCM92au3ZkuodjBxOibxM67A==",
- "dev": true
- },
- "@hapi/topo": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
- "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/validate": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
- "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/topo": "^6.0.1"
- }
- }
- }
- },
- "@hapi/heavy": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/heavy/-/heavy-8.0.1.tgz",
- "integrity": "sha512-gBD/NANosNCOp6RsYTsjo2vhr5eYA3BEuogk6cxY0QdhllkkTaJFYtTXv46xd6qhBVMbMMqcSdtqey+UQU3//w==",
- "dev": true,
- "requires": {
- "@hapi/boom": "^10.0.1",
- "@hapi/hoek": "^11.0.2",
- "@hapi/validate": "^2.0.1"
- },
- "dependencies": {
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- },
- "@hapi/topo": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
- "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/validate": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
- "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/topo": "^6.0.1"
- }
- }
- }
- },
- "@hapi/hoek": {
- "version": "9.3.0",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz",
- "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==",
- "dev": true
- },
- "@hapi/mimos": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/mimos/-/mimos-7.0.1.tgz",
- "integrity": "sha512-b79V+BrG0gJ9zcRx1VGcCI6r6GEzzZUgiGEJVoq5gwzuB2Ig9Cax8dUuBauQCFKvl2YWSWyOc8mZ8HDaJOtkew==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2",
- "mime-db": "^1.52.0"
- },
- "dependencies": {
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/nigel": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/nigel/-/nigel-5.0.1.tgz",
- "integrity": "sha512-uv3dtYuB4IsNaha+tigWmN8mQw/O9Qzl5U26Gm4ZcJVtDdB1AVJOwX3X5wOX+A07qzpEZnOMBAm8jjSqGsU6Nw==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/vise": "^5.0.1"
- },
- "dependencies": {
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/pez": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/@hapi/pez/-/pez-6.1.0.tgz",
- "integrity": "sha512-+FE3sFPYuXCpuVeHQ/Qag1b45clR2o54QoonE/gKHv9gukxQ8oJJZPR7o3/ydDTK6racnCJXxOyT1T93FCJMIg==",
- "dev": true,
- "requires": {
- "@hapi/b64": "^6.0.1",
- "@hapi/boom": "^10.0.1",
- "@hapi/content": "^6.0.0",
- "@hapi/hoek": "^11.0.2",
- "@hapi/nigel": "^5.0.1"
- },
- "dependencies": {
- "@hapi/b64": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/b64/-/b64-6.0.1.tgz",
- "integrity": "sha512-ZvjX4JQReUmBheeCq+S9YavcnMMHWqx3S0jHNXWIM1kQDxB9cyfSycpVvjfrKcIS8Mh5N3hmu/YKo4Iag9g2Kw==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/shot": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/shot/-/shot-6.0.1.tgz",
- "integrity": "sha512-s5ynMKZXYoDd3dqPw5YTvOR/vjHvMTxc388+0qL0jZZP1+uwXuUD32o9DuuuLsmTlyXCWi02BJl1pBpwRuUrNA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/validate": "^2.0.1"
- },
- "dependencies": {
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- },
- "@hapi/topo": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
- "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/validate": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
- "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/topo": "^6.0.1"
- }
- }
- }
- },
- "@hapi/somever": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/@hapi/somever/-/somever-4.1.1.tgz",
- "integrity": "sha512-lt3QQiDDOVRatS0ionFDNrDIv4eXz58IibQaZQDOg4DqqdNme8oa0iPWcE0+hkq/KTeBCPtEOjDOBKBKwDumVg==",
- "dev": true,
- "requires": {
- "@hapi/bounce": "^3.0.1",
- "@hapi/hoek": "^11.0.2"
- },
- "dependencies": {
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/statehood": {
- "version": "8.1.1",
- "resolved": "https://registry.npmjs.org/@hapi/statehood/-/statehood-8.1.1.tgz",
- "integrity": "sha512-YbK7PSVUA59NArAW5Np0tKRoIZ5VNYUicOk7uJmWZF6XyH5gGL+k62w77SIJb0AoAJ0QdGQMCQ/WOGL1S3Ydow==",
- "dev": true,
- "requires": {
- "@hapi/boom": "^10.0.1",
- "@hapi/bounce": "^3.0.1",
- "@hapi/bourne": "^3.0.0",
- "@hapi/cryptiles": "^6.0.1",
- "@hapi/hoek": "^11.0.2",
- "@hapi/iron": "^7.0.1",
- "@hapi/validate": "^2.0.1"
- },
- "dependencies": {
- "@hapi/b64": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/b64/-/b64-6.0.1.tgz",
- "integrity": "sha512-ZvjX4JQReUmBheeCq+S9YavcnMMHWqx3S0jHNXWIM1kQDxB9cyfSycpVvjfrKcIS8Mh5N3hmu/YKo4Iag9g2Kw==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/bourne": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-3.0.0.tgz",
- "integrity": "sha512-Waj1cwPXJDucOib4a3bAISsKJVb15MKi9IvmTI/7ssVEm6sywXGjVJDhl6/umt1pK1ZS7PacXU3A1PmFKHEZ2w==",
- "dev": true
- },
- "@hapi/cryptiles": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/cryptiles/-/cryptiles-6.0.1.tgz",
- "integrity": "sha512-9GM9ECEHfR8lk5ASOKG4+4ZsEzFqLfhiryIJ2ISePVB92OHLp/yne4m+zn7z9dgvM98TLpiFebjDFQ0UHcqxXQ==",
- "dev": true,
- "requires": {
- "@hapi/boom": "^10.0.1"
- }
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- },
- "@hapi/iron": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/iron/-/iron-7.0.1.tgz",
- "integrity": "sha512-tEZnrOujKpS6jLKliyWBl3A9PaE+ppuL/+gkbyPPDb/l2KSKQyH4lhMkVb+sBhwN+qaxxlig01JRqB8dk/mPxQ==",
- "dev": true,
- "requires": {
- "@hapi/b64": "^6.0.1",
- "@hapi/boom": "^10.0.1",
- "@hapi/bourne": "^3.0.0",
- "@hapi/cryptiles": "^6.0.1",
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/topo": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
- "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/validate": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
- "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2",
- "@hapi/topo": "^6.0.1"
- }
- }
- }
- },
- "@hapi/subtext": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/@hapi/subtext/-/subtext-8.1.0.tgz",
- "integrity": "sha512-PyaN4oSMtqPjjVxLny1k0iYg4+fwGusIhaom9B2StinBclHs7v46mIW706Y+Wo21lcgulGyXbQrmT/w4dus6ww==",
- "dev": true,
- "requires": {
- "@hapi/boom": "^10.0.1",
- "@hapi/bourne": "^3.0.0",
- "@hapi/content": "^6.0.0",
- "@hapi/file": "^3.0.0",
- "@hapi/hoek": "^11.0.2",
- "@hapi/pez": "^6.1.0",
- "@hapi/wreck": "^18.0.1"
- },
- "dependencies": {
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/bourne": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-3.0.0.tgz",
- "integrity": "sha512-Waj1cwPXJDucOib4a3bAISsKJVb15MKi9IvmTI/7ssVEm6sywXGjVJDhl6/umt1pK1ZS7PacXU3A1PmFKHEZ2w==",
- "dev": true
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/topo": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz",
- "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^9.0.0"
- }
- },
- "@hapi/vise": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/vise/-/vise-5.0.1.tgz",
- "integrity": "sha512-XZYWzzRtINQLedPYlIkSkUr7m5Ddwlu99V9elh8CSygXstfv3UnWIXT0QD+wmR0VAG34d2Vx3olqcEhRRoTu9A==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- },
- "dependencies": {
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@hapi/wreck": {
- "version": "18.1.0",
- "resolved": "https://registry.npmjs.org/@hapi/wreck/-/wreck-18.1.0.tgz",
- "integrity": "sha512-0z6ZRCmFEfV/MQqkQomJ7sl/hyxvcZM7LtuVqN3vdAO4vM9eBbowl0kaqQj9EJJQab+3Uuh1GxbGIBFy4NfJ4w==",
- "dev": true,
- "requires": {
- "@hapi/boom": "^10.0.1",
- "@hapi/bourne": "^3.0.0",
- "@hapi/hoek": "^11.0.2"
- },
- "dependencies": {
- "@hapi/boom": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
- "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
- "dev": true,
- "requires": {
- "@hapi/hoek": "^11.0.2"
- }
- },
- "@hapi/bourne": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-3.0.0.tgz",
- "integrity": "sha512-Waj1cwPXJDucOib4a3bAISsKJVb15MKi9IvmTI/7ssVEm6sywXGjVJDhl6/umt1pK1ZS7PacXU3A1PmFKHEZ2w==",
- "dev": true
- },
- "@hapi/hoek": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
- "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
- "dev": true
- }
- }
- },
- "@humanwhocodes/config-array": {
- "version": "0.9.5",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz",
- "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==",
- "dev": true,
- "requires": {
- "@humanwhocodes/object-schema": "^1.2.1",
- "debug": "^4.1.1",
- "minimatch": "^3.0.4"
- },
- "dependencies": {
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- }
- }
- },
- "@humanwhocodes/object-schema": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
- "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
- "dev": true
- },
- "@hutson/parse-repository-url": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz",
- "integrity": "sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==",
- "dev": true
- },
- "@ioredis/commands": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@ioredis/commands/-/commands-1.2.0.tgz",
- "integrity": "sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==",
- "dev": true
- },
- "@isaacs/cliui": {
- "version": "8.0.2",
- "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
- "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
- "dev": true,
- "requires": {
- "string-width": "^5.1.2",
- "string-width-cjs": "npm:string-width@^4.2.0",
- "strip-ansi": "^7.0.1",
- "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
- "wrap-ansi": "^8.1.0",
- "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
- },
- "dependencies": {
- "ansi-regex": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
- "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
- "dev": true
- },
- "ansi-styles": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
- "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==",
- "dev": true
- },
- "emoji-regex": {
- "version": "9.2.2",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
- "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
- "dev": true
- },
- "string-width": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
- "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
- "dev": true,
- "requires": {
- "eastasianwidth": "^0.2.0",
- "emoji-regex": "^9.2.2",
- "strip-ansi": "^7.0.1"
- }
- },
- "strip-ansi": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
- "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
- "dev": true,
- "requires": {
- "ansi-regex": "^6.0.1"
- }
- },
- "wrap-ansi": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
- "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
- "dev": true,
- "requires": {
- "ansi-styles": "^6.1.0",
- "string-width": "^5.0.1",
- "strip-ansi": "^7.0.1"
- }
- }
- }
- },
- "@isaacs/string-locale-compare": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz",
- "integrity": "sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==",
- "dev": true
- },
- "@istanbuljs/load-nyc-config": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
- "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
- "dev": true,
- "requires": {
- "camelcase": "^5.3.1",
- "find-up": "^4.1.0",
- "get-package-type": "^0.1.0",
- "js-yaml": "^3.13.1",
- "resolve-from": "^5.0.0"
- },
- "dependencies": {
- "argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
- "dev": true,
- "requires": {
- "sprintf-js": "~1.0.2"
- }
- },
- "find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "requires": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "js-yaml": {
- "version": "3.14.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
- "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
- "dev": true,
- "requires": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- }
- },
- "locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "requires": {
- "p-locate": "^4.1.0"
- }
- },
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "requires": {
- "p-limit": "^2.2.0"
- }
- },
- "resolve-from": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
- "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
- "dev": true
- },
- "sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
- "dev": true
- }
- }
- },
- "@istanbuljs/schema": {
- "version": "0.1.3",
- "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
- "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
- "dev": true
- },
- "@jest/expect-utils": {
- "version": "29.7.0",
- "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz",
- "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==",
- "dev": true,
- "requires": {
- "jest-get-type": "^29.6.3"
- }
- },
- "@jest/schemas": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz",
- "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==",
- "dev": true,
- "requires": {
- "@sinclair/typebox": "^0.27.8"
- }
- },
- "@jest/types": {
- "version": "29.6.3",
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz",
- "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==",
- "dev": true,
- "requires": {
- "@jest/schemas": "^29.6.3",
- "@types/istanbul-lib-coverage": "^2.0.0",
- "@types/istanbul-reports": "^3.0.0",
- "@types/node": "*",
- "@types/yargs": "^17.0.8",
- "chalk": "^4.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "@jridgewell/gen-mapping": {
- "version": "0.3.5",
- "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
- "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
- "dev": true,
- "requires": {
- "@jridgewell/set-array": "^1.2.1",
- "@jridgewell/sourcemap-codec": "^1.4.10",
- "@jridgewell/trace-mapping": "^0.3.24"
- }
- },
- "@jridgewell/resolve-uri": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
- "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
- "dev": true
- },
- "@jridgewell/set-array": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
- "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
- "dev": true
- },
- "@jridgewell/source-map": {
- "version": "0.3.6",
- "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz",
- "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==",
- "dev": true,
- "requires": {
- "@jridgewell/gen-mapping": "^0.3.5",
- "@jridgewell/trace-mapping": "^0.3.25"
- }
- },
- "@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==",
- "dev": true
- },
- "@jridgewell/trace-mapping": {
- "version": "0.3.25",
- "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
- "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
- "dev": true,
- "requires": {
- "@jridgewell/resolve-uri": "^3.1.0",
- "@jridgewell/sourcemap-codec": "^1.4.14"
- }
- },
- "@js-joda/core": {
- "version": "5.6.1",
- "resolved": "https://registry.npmjs.org/@js-joda/core/-/core-5.6.1.tgz",
- "integrity": "sha512-Xla/d7ZMMR6+zRd6lTio0wRZECfcfFJP7GGe9A9L4tDOlD5CX4YcZ4YZle9w58bBYzssojVapI84RraKWDQZRg==",
- "dev": true
- },
- "@jsdevtools/coverage-istanbul-loader": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@jsdevtools/coverage-istanbul-loader/-/coverage-istanbul-loader-3.0.5.tgz",
- "integrity": "sha512-EUCPEkaRPvmHjWAAZkWMT7JDzpw7FKB00WTISaiXsbNOd5hCHg77XLA8sLYLFDo1zepYLo2w7GstN8YBqRXZfA==",
- "dev": true,
- "requires": {
- "convert-source-map": "^1.7.0",
- "istanbul-lib-instrument": "^4.0.3",
- "loader-utils": "^2.0.0",
- "merge-source-map": "^1.1.0",
- "schema-utils": "^2.7.0"
- }
- },
- "@koa/router": {
- "version": "12.0.0",
- "resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.0.tgz",
- "integrity": "sha512-cnnxeKHXlt7XARJptflGURdJaO+ITpNkOHmQu7NHmCoRinPbyvFzce/EG/E8Zy81yQ1W9MoSdtklc3nyaDReUw==",
- "dev": true,
- "requires": {
- "http-errors": "^2.0.0",
- "koa-compose": "^4.1.0",
- "methods": "^1.1.2",
- "path-to-regexp": "^6.2.1"
- },
- "dependencies": {
- "path-to-regexp": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz",
- "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==",
- "dev": true
- }
- }
- },
- "@lerna/child-process": {
- "version": "6.6.2",
- "resolved": "https://registry.npmjs.org/@lerna/child-process/-/child-process-6.6.2.tgz",
- "integrity": "sha512-QyKIWEnKQFnYu2ey+SAAm1A5xjzJLJJj3bhIZd3QKyXKKjaJ0hlxam/OsWSltxTNbcyH1jRJjC6Cxv31usv0Ag==",
- "dev": true,
- "requires": {
- "chalk": "^4.1.0",
- "execa": "^5.0.0",
- "strong-log-transformer": "^2.1.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "@lerna/create": {
- "version": "6.6.2",
- "resolved": "https://registry.npmjs.org/@lerna/create/-/create-6.6.2.tgz",
- "integrity": "sha512-xQ+1Y7D+9etvUlE+unhG/TwmM6XBzGIdFBaNoW8D8kyOa9M2Jf3vdEtAxVa7mhRz66CENfhL/+I/QkVaa7pwbQ==",
- "dev": true,
- "requires": {
- "@lerna/child-process": "6.6.2",
- "dedent": "^0.7.0",
- "fs-extra": "^9.1.0",
- "init-package-json": "^3.0.2",
- "npm-package-arg": "8.1.1",
- "p-reduce": "^2.1.0",
- "pacote": "15.1.1",
- "pify": "^5.0.0",
- "semver": "^7.3.4",
- "slash": "^3.0.0",
- "validate-npm-package-license": "^3.0.4",
- "validate-npm-package-name": "^4.0.0",
- "yargs-parser": "20.2.4"
- }
- },
- "@lerna/legacy-package-management": {
- "version": "6.6.2",
- "resolved": "https://registry.npmjs.org/@lerna/legacy-package-management/-/legacy-package-management-6.6.2.tgz",
- "integrity": "sha512-0hZxUPKnHwehUO2xC4ldtdX9bW0W1UosxebDIQlZL2STnZnA2IFmIk2lJVUyFW+cmTPQzV93jfS0i69T9Z+teg==",
- "dev": true,
- "requires": {
- "@npmcli/arborist": "6.2.3",
- "@npmcli/run-script": "4.1.7",
- "@nrwl/devkit": ">=15.5.2 < 16",
- "@octokit/rest": "19.0.3",
- "byte-size": "7.0.0",
- "chalk": "4.1.0",
- "clone-deep": "4.0.1",
- "cmd-shim": "5.0.0",
- "columnify": "1.6.0",
- "config-chain": "1.1.12",
- "conventional-changelog-core": "4.2.4",
- "conventional-recommended-bump": "6.1.0",
- "cosmiconfig": "7.0.0",
- "dedent": "0.7.0",
- "dot-prop": "6.0.1",
- "execa": "5.0.0",
- "file-url": "3.0.0",
- "find-up": "5.0.0",
- "fs-extra": "9.1.0",
- "get-port": "5.1.1",
- "get-stream": "6.0.0",
- "git-url-parse": "13.1.0",
- "glob-parent": "5.1.2",
- "globby": "11.1.0",
- "graceful-fs": "4.2.10",
- "has-unicode": "2.0.1",
- "inquirer": "8.2.4",
- "is-ci": "2.0.0",
- "is-stream": "2.0.0",
- "libnpmpublish": "7.1.4",
- "load-json-file": "6.2.0",
- "make-dir": "3.1.0",
- "minimatch": "3.0.5",
- "multimatch": "5.0.0",
- "node-fetch": "2.6.7",
- "npm-package-arg": "8.1.1",
- "npm-packlist": "5.1.1",
- "npm-registry-fetch": "14.0.3",
- "npmlog": "6.0.2",
- "p-map": "4.0.0",
- "p-map-series": "2.1.0",
- "p-queue": "6.6.2",
- "p-waterfall": "2.1.1",
- "pacote": "15.1.1",
- "pify": "5.0.0",
- "pretty-format": "29.4.3",
- "read-cmd-shim": "3.0.0",
- "read-package-json": "5.0.1",
- "resolve-from": "5.0.0",
- "semver": "7.3.8",
- "signal-exit": "3.0.7",
- "slash": "3.0.0",
- "ssri": "9.0.1",
- "strong-log-transformer": "2.1.0",
- "tar": "6.1.11",
- "temp-dir": "1.0.0",
- "tempy": "1.0.0",
- "upath": "2.0.1",
- "uuid": "8.3.2",
- "write-file-atomic": "4.0.1",
- "write-pkg": "4.0.0",
- "yargs": "16.2.0"
- },
- "dependencies": {
- "@tootallnate/once": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
- "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
- "dev": true
- },
- "agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
- "dev": true,
- "requires": {
- "debug": "4"
- }
- },
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
- "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
- "graceful-fs": {
- "version": "4.2.10",
- "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
- "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==",
- "dev": true
- },
- "http-proxy-agent": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
- "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
- "dev": true,
- "requires": {
- "@tootallnate/once": "2",
- "agent-base": "6",
- "debug": "4"
- }
- },
- "https-proxy-agent": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
- "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
- "dev": true,
- "requires": {
- "agent-base": "6",
- "debug": "4"
- }
- },
- "inquirer": {
- "version": "8.2.4",
- "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz",
- "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==",
- "dev": true,
- "requires": {
- "ansi-escapes": "^4.2.1",
- "chalk": "^4.1.1",
- "cli-cursor": "^3.1.0",
- "cli-width": "^3.0.0",
- "external-editor": "^3.0.3",
- "figures": "^3.0.0",
- "lodash": "^4.17.21",
- "mute-stream": "0.0.8",
- "ora": "^5.4.1",
- "run-async": "^2.4.0",
- "rxjs": "^7.5.5",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0",
- "through": "^2.3.6",
- "wrap-ansi": "^7.0.0"
- },
- "dependencies": {
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- }
- }
- },
- "is-stream": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
- "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==",
- "dev": true
- },
- "lru-cache": {
- "version": "7.18.3",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
- "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
- "dev": true
- },
- "make-fetch-happen": {
- "version": "11.1.1",
- "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz",
- "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==",
- "dev": true,
- "requires": {
- "agentkeepalive": "^4.2.1",
- "cacache": "^17.0.0",
- "http-cache-semantics": "^4.1.1",
- "http-proxy-agent": "^5.0.0",
- "https-proxy-agent": "^5.0.0",
- "is-lambda": "^1.0.1",
- "lru-cache": "^7.7.1",
- "minipass": "^5.0.0",
- "minipass-fetch": "^3.0.0",
- "minipass-flush": "^1.0.5",
- "minipass-pipeline": "^1.2.4",
- "negotiator": "^0.6.3",
- "promise-retry": "^2.0.1",
- "socks-proxy-agent": "^7.0.0",
- "ssri": "^10.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
- "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
- "dev": true
- },
- "ssri": {
- "version": "10.0.5",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz",
- "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==",
- "dev": true,
- "requires": {
- "minipass": "^7.0.3"
- },
- "dependencies": {
- "minipass": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz",
- "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==",
- "dev": true
- }
- }
- }
- }
- },
- "minimatch": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz",
- "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "minipass": {
- "version": "4.2.8",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz",
- "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==",
- "dev": true
- },
- "minipass-fetch": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz",
- "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==",
- "dev": true,
- "requires": {
- "encoding": "^0.1.13",
- "minipass": "^7.0.3",
- "minipass-sized": "^1.0.3",
- "minizlib": "^2.1.2"
- },
- "dependencies": {
- "minipass": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz",
- "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==",
- "dev": true
- }
- }
- },
- "node-fetch": {
- "version": "2.6.7",
- "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
- "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
- "dev": true,
- "requires": {
- "whatwg-url": "^5.0.0"
- }
- },
- "npm-registry-fetch": {
- "version": "14.0.3",
- "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.3.tgz",
- "integrity": "sha512-YaeRbVNpnWvsGOjX2wk5s85XJ7l1qQBGAp724h8e2CZFFhMSuw9enom7K1mWVUtvXO1uUSFIAPofQK0pPN0ZcA==",
- "dev": true,
- "requires": {
- "make-fetch-happen": "^11.0.0",
- "minipass": "^4.0.0",
- "minipass-fetch": "^3.0.0",
- "minipass-json-stream": "^1.0.1",
- "minizlib": "^2.1.2",
- "npm-package-arg": "^10.0.0",
- "proc-log": "^3.0.0"
- },
- "dependencies": {
- "npm-package-arg": {
- "version": "10.1.0",
- "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz",
- "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==",
- "dev": true,
- "requires": {
- "hosted-git-info": "^6.0.0",
- "proc-log": "^3.0.0",
- "semver": "^7.3.5",
- "validate-npm-package-name": "^5.0.0"
- }
- }
- }
- },
- "pretty-format": {
- "version": "29.4.3",
- "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz",
- "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==",
- "dev": true,
- "requires": {
- "@jest/schemas": "^29.4.3",
- "ansi-styles": "^5.0.0",
- "react-is": "^18.0.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
- "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
- "dev": true
- }
- }
- },
- "resolve-from": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
- "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
- "dev": true
- },
- "semver": {
- "version": "7.3.8",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
- "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
- "dev": true,
- "requires": {
- "lru-cache": "^6.0.0"
- },
- "dependencies": {
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- }
- }
- },
- "socks-proxy-agent": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz",
- "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==",
- "dev": true,
- "requires": {
- "agent-base": "^6.0.2",
- "debug": "^4.3.3",
- "socks": "^2.6.2"
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- },
- "tr46": {
- "version": "0.0.3",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
- "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
- "dev": true
- },
- "validate-npm-package-name": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz",
- "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==",
- "dev": true,
- "requires": {
- "builtins": "^5.0.0"
- }
- },
- "webidl-conversions": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
- "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
- "dev": true
- },
- "whatwg-url": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
- "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
- "dev": true,
- "requires": {
- "tr46": "~0.0.3",
- "webidl-conversions": "^3.0.0"
- }
- },
- "wrap-ansi": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
- "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- },
- "yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "dev": true,
- "requires": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- }
- }
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-catch-binding/-/plugin-transform-optional-catch-binding-7.24.7.tgz",
+ "integrity": "sha512-uLEndKqP5BfBbC/5jTwPxLh9kqPWWgzN/f8w6UwAIirAEqiIVJWWY312X72Eub09g5KF9+Zn7+hT7sDxmhRuKA==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3"
}
},
- "@lukeed/csprng": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@lukeed/csprng/-/csprng-1.1.0.tgz",
- "integrity": "sha512-Z7C/xXCiGWsg0KuKsHTKJxbWhpI3Vs5GwLfOean7MGyVFGqdRgBbAjOCh6u4bbjPc/8MJ2pZmK/0DLdCbivLDA==",
- "dev": true
+ "@babel/plugin-transform-optional-chaining": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-optional-chaining/-/plugin-transform-optional-chaining-7.24.7.tgz",
+ "integrity": "sha512-tK+0N9yd4j+x/4hxF3F0e0fu/VdcxU18y5SevtyM/PCFlQvXbR0Zmlo2eBrKtVipGNFzpq56o8WsIIKcJFUCRQ==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7",
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3"
+ }
},
- "@mapbox/node-pre-gyp": {
- "version": "1.0.11",
- "resolved": "https://registry.npmjs.org/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz",
- "integrity": "sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==",
+ "@babel/plugin-transform-parameters": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.24.7.tgz",
+ "integrity": "sha512-yGWW5Rr+sQOhK0Ot8hjDJuxU3XLRQGflvT4lhlSY0DFvdb3TwKaY26CJzHtYllU0vT9j58hc37ndFPsqT1SrzA==",
"dev": true,
"requires": {
- "detect-libc": "^2.0.0",
- "https-proxy-agent": "^5.0.0",
- "make-dir": "^3.1.0",
- "node-fetch": "^2.6.7",
- "nopt": "^5.0.0",
- "npmlog": "^5.0.1",
- "rimraf": "^3.0.2",
- "semver": "^7.3.5",
- "tar": "^6.1.11"
- },
- "dependencies": {
- "abbrev": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz",
- "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==",
- "dev": true
- },
- "agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
- "dev": true,
- "requires": {
- "debug": "4"
- }
- },
- "are-we-there-yet": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz",
- "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==",
- "dev": true,
- "requires": {
- "delegates": "^1.0.0",
- "readable-stream": "^3.6.0"
- }
- },
- "gauge": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/gauge/-/gauge-3.0.2.tgz",
- "integrity": "sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==",
- "dev": true,
- "requires": {
- "aproba": "^1.0.3 || ^2.0.0",
- "color-support": "^1.1.2",
- "console-control-strings": "^1.0.0",
- "has-unicode": "^2.0.1",
- "object-assign": "^4.1.1",
- "signal-exit": "^3.0.0",
- "string-width": "^4.2.3",
- "strip-ansi": "^6.0.1",
- "wide-align": "^1.1.2"
- }
- },
- "glob": {
- "version": "7.2.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
- "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.1.1",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "https-proxy-agent": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
- "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
- "dev": true,
- "requires": {
- "agent-base": "6",
- "debug": "4"
- }
- },
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "nopt": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz",
- "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==",
- "dev": true,
- "requires": {
- "abbrev": "1"
- }
- },
- "npmlog": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-5.0.1.tgz",
- "integrity": "sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw==",
- "dev": true,
- "requires": {
- "are-we-there-yet": "^2.0.0",
- "console-control-strings": "^1.1.0",
- "gauge": "^3.0.0",
- "set-blocking": "^2.0.0"
- }
- },
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
- "dev": true,
- "requires": {
- "glob": "^7.1.3"
- }
- }
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@mdn/browser-compat-data": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-4.2.1.tgz",
- "integrity": "sha512-EWUguj2kd7ldmrF9F+vI5hUOralPd+sdsUnYbRy33vZTuZkduC1shE9TtEMEjAQwyfyMb4ole5KtjF8MsnQOlA==",
- "dev": true
+ "@babel/plugin-transform-private-methods": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-methods/-/plugin-transform-private-methods-7.24.7.tgz",
+ "integrity": "sha512-COTCOkG2hn4JKGEKBADkA8WNb35TGkkRbI5iT845dB+NyqgO8Hn+ajPbSnIQznneJTa3d30scb6iz/DhH8GsJQ==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-class-features-plugin": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
+ }
},
- "@mongodb-js/saslprep": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.5.tgz",
- "integrity": "sha512-XLNOMH66KhJzUJNwT/qlMnS4WsNDWD5ASdyaSH3EtK+F4r/CFGa3jT4GNi4mfOitGvWXtdLgQJkQjxSVrio+jA==",
+ "@babel/plugin-transform-private-property-in-object": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-private-property-in-object/-/plugin-transform-private-property-in-object-7.24.7.tgz",
+ "integrity": "sha512-9z76mxwnwFxMyxZWEgdgECQglF2Q7cFLm0kMf8pGwt+GSJsY0cONKj/UuO4bOH0w/uAel3ekS4ra5CEAyJRmDA==",
"dev": true,
"requires": {
- "sparse-bitfield": "^3.0.3"
+ "@babel/helper-annotate-as-pure": "^7.24.7",
+ "@babel/helper-create-class-features-plugin": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/plugin-syntax-private-property-in-object": "^7.14.5"
}
},
- "@nestjs/common": {
- "version": "9.4.3",
- "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-9.4.3.tgz",
- "integrity": "sha512-Gd6D4IaYj01o14Bwv81ukidn4w3bPHCblMUq+SmUmWLyosK+XQmInCS09SbDDZyL8jy86PngtBLTdhJ2bXSUig==",
+ "@babel/plugin-transform-property-literals": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.24.7.tgz",
+ "integrity": "sha512-EMi4MLQSHfd2nrCqQEWxFdha2gBCqU4ZcCng4WBGZ5CJL4bBRW0ptdqqDdeirGZcpALazVVNJqRmsO8/+oNCBA==",
"dev": true,
"requires": {
- "iterare": "1.2.1",
- "tslib": "2.5.3",
- "uid": "2.0.2"
- },
- "dependencies": {
- "tslib": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
- "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
- "dev": true
- }
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@nestjs/core": {
- "version": "9.4.3",
- "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-9.4.3.tgz",
- "integrity": "sha512-Qi63+wi55Jh4sDyaj5Hhx2jOpKqT386aeo+VOKsxnd+Ql9VvkO/FjmuwBGUyzkJt29ENYc+P0Sx/k5LtstNpPQ==",
+ "@babel/plugin-transform-regenerator": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.24.7.tgz",
+ "integrity": "sha512-lq3fvXPdimDrlg6LWBoqj+r/DEWgONuwjuOuQCSYgRroXDH/IdM1C0IZf59fL5cHLpjEH/O6opIRBbqv7ELnuA==",
"dev": true,
"requires": {
- "@nuxtjs/opencollective": "0.3.2",
- "fast-safe-stringify": "2.1.1",
- "iterare": "1.2.1",
- "path-to-regexp": "3.2.0",
- "tslib": "2.5.3",
- "uid": "2.0.2"
- },
- "dependencies": {
- "tslib": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
- "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
- "dev": true
- }
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "regenerator-transform": "^0.15.2"
}
},
- "@nestjs/microservices": {
- "version": "9.4.3",
- "resolved": "https://registry.npmjs.org/@nestjs/microservices/-/microservices-9.4.3.tgz",
- "integrity": "sha512-piMw8d3C4ppc5St5AhQEtecMhyeBK2Q1VYk4AL3NKtG6U0fzz/6KLiETpWdKXmazeI/m7qac2upOvwmRzle0aA==",
+ "@babel/plugin-transform-reserved-words": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.24.7.tgz",
+ "integrity": "sha512-0DUq0pHcPKbjFZCfTss/pGkYMfy3vFWydkUBd9r0GHpIyfs2eCDENvqadMycRS9wZCXR41wucAfJHJmwA0UmoQ==",
"dev": true,
"requires": {
- "iterare": "1.2.1",
- "tslib": "2.5.3"
- },
- "dependencies": {
- "tslib": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
- "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
- "dev": true
- }
+ "@babel/helper-plugin-utils": "^7.24.7"
}
},
- "@nestjs/platform-express": {
- "version": "9.4.3",
- "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-9.4.3.tgz",
- "integrity": "sha512-FpdczWoRSC0zz2dNL9u2AQLXKXRVtq4HgHklAhbL59X0uy+mcxhlSThG7DHzDMkoSnuuHY8ojDVf7mDxk+GtCw==",
+ "@babel/plugin-transform-shorthand-properties": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.24.7.tgz",
+ "integrity": "sha512-KsDsevZMDsigzbA09+vacnLpmPH4aWjcZjXdyFKGzpplxhbeB4wYtury3vglQkg6KM/xEPKt73eCjPPf1PgXBA==",
"dev": true,
"requires": {
- "body-parser": "1.20.2",
- "cors": "2.8.5",
- "express": "4.18.2",
- "multer": "1.4.4-lts.1",
- "tslib": "2.5.3"
+ "@babel/helper-plugin-utils": "^7.24.7"
+ }
+ },
+ "@babel/plugin-transform-spread": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.24.7.tgz",
+ "integrity": "sha512-x96oO0I09dgMDxJaANcRyD4ellXFLLiWhuwDxKZX5g2rWP1bTPkBSwCYv96VDXVT1bD9aPj8tppr5ITIh8hBng==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.24.7",
+ "@babel/helper-skip-transparent-expression-wrappers": "^7.24.7"
+ }
+ },
+ "@babel/plugin-transform-sticky-regex": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.24.7.tgz",
+ "integrity": "sha512-kHPSIJc9v24zEml5geKg9Mjx5ULpfncj0wRpYtxbvKyTtHCYDkVE3aHQ03FrpEo4gEe2vrJJS1Y9CJTaThA52g==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.24.7"
+ }
+ },
+ "@babel/plugin-transform-template-literals": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.24.7.tgz",
+ "integrity": "sha512-AfDTQmClklHCOLxtGoP7HkeMw56k1/bTQjwsfhL6pppo/M4TOBSq+jjBUBLmV/4oeFg4GWMavIl44ZeCtmmZTw==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.24.7"
+ }
+ },
+ "@babel/plugin-transform-typeof-symbol": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.24.7.tgz",
+ "integrity": "sha512-VtR8hDy7YLB7+Pet9IarXjg/zgCMSF+1mNS/EQEiEaUPoFXCVsHG64SIxcaaI2zJgRiv+YmgaQESUfWAdbjzgg==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.24.7"
+ }
+ },
+ "@babel/plugin-transform-unicode-escapes": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.24.7.tgz",
+ "integrity": "sha512-U3ap1gm5+4edc2Q/P+9VrBNhGkfnf+8ZqppY71Bo/pzZmXhhLdqgaUl6cuB07O1+AQJtCLfaOmswiNbSQ9ivhw==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-plugin-utils": "^7.24.7"
+ }
+ },
+ "@babel/plugin-transform-unicode-property-regex": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-property-regex/-/plugin-transform-unicode-property-regex-7.24.7.tgz",
+ "integrity": "sha512-uH2O4OV5M9FZYQrwc7NdVmMxQJOCCzFeYudlZSzUAHRFeOujQefa92E74TQDVskNHCzOXoigEuoyzHDhaEaK5w==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-regexp-features-plugin": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
+ }
+ },
+ "@babel/plugin-transform-unicode-regex": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.24.7.tgz",
+ "integrity": "sha512-hlQ96MBZSAXUq7ltkjtu3FJCCSMx/j629ns3hA3pXnBXjanNP0LHi+JpPeA81zaWgVK1VGH95Xuy7u0RyQ8kMg==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-regexp-features-plugin": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
+ }
+ },
+ "@babel/plugin-transform-unicode-sets-regex": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-sets-regex/-/plugin-transform-unicode-sets-regex-7.24.7.tgz",
+ "integrity": "sha512-2G8aAvF4wy1w/AGZkemprdGMRg5o6zPNhbHVImRz3lss55TYCBd6xStN19rt8XJHq20sqV0JbyWjOWwQRwV/wg==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-create-regexp-features-plugin": "^7.24.7",
+ "@babel/helper-plugin-utils": "^7.24.7"
+ }
+ },
+ "@babel/preset-env": {
+ "version": "7.24.6",
+ "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.24.6.tgz",
+ "integrity": "sha512-CrxEAvN7VxfjOG8JNF2Y/eMqMJbZPZ185amwGUBp8D9USK90xQmv7dLdFSa+VbD7fdIqcy/Mfv7WtzG8+/qxKg==",
+ "dev": true,
+ "requires": {
+ "@babel/compat-data": "^7.24.6",
+ "@babel/helper-compilation-targets": "^7.24.6",
+ "@babel/helper-plugin-utils": "^7.24.6",
+ "@babel/helper-validator-option": "^7.24.6",
+ "@babel/plugin-bugfix-firefox-class-in-computed-class-key": "^7.24.6",
+ "@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression": "^7.24.6",
+ "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining": "^7.24.6",
+ "@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly": "^7.24.6",
+ "@babel/plugin-proposal-private-property-in-object": "7.21.0-placeholder-for-preset-env.2",
+ "@babel/plugin-syntax-async-generators": "^7.8.4",
+ "@babel/plugin-syntax-class-properties": "^7.12.13",
+ "@babel/plugin-syntax-class-static-block": "^7.14.5",
+ "@babel/plugin-syntax-dynamic-import": "^7.8.3",
+ "@babel/plugin-syntax-export-namespace-from": "^7.8.3",
+ "@babel/plugin-syntax-import-assertions": "^7.24.6",
+ "@babel/plugin-syntax-import-attributes": "^7.24.6",
+ "@babel/plugin-syntax-import-meta": "^7.10.4",
+ "@babel/plugin-syntax-json-strings": "^7.8.3",
+ "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4",
+ "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.3",
+ "@babel/plugin-syntax-numeric-separator": "^7.10.4",
+ "@babel/plugin-syntax-object-rest-spread": "^7.8.3",
+ "@babel/plugin-syntax-optional-catch-binding": "^7.8.3",
+ "@babel/plugin-syntax-optional-chaining": "^7.8.3",
+ "@babel/plugin-syntax-private-property-in-object": "^7.14.5",
+ "@babel/plugin-syntax-top-level-await": "^7.14.5",
+ "@babel/plugin-syntax-unicode-sets-regex": "^7.18.6",
+ "@babel/plugin-transform-arrow-functions": "^7.24.6",
+ "@babel/plugin-transform-async-generator-functions": "^7.24.6",
+ "@babel/plugin-transform-async-to-generator": "^7.24.6",
+ "@babel/plugin-transform-block-scoped-functions": "^7.24.6",
+ "@babel/plugin-transform-block-scoping": "^7.24.6",
+ "@babel/plugin-transform-class-properties": "^7.24.6",
+ "@babel/plugin-transform-class-static-block": "^7.24.6",
+ "@babel/plugin-transform-classes": "^7.24.6",
+ "@babel/plugin-transform-computed-properties": "^7.24.6",
+ "@babel/plugin-transform-destructuring": "^7.24.6",
+ "@babel/plugin-transform-dotall-regex": "^7.24.6",
+ "@babel/plugin-transform-duplicate-keys": "^7.24.6",
+ "@babel/plugin-transform-dynamic-import": "^7.24.6",
+ "@babel/plugin-transform-exponentiation-operator": "^7.24.6",
+ "@babel/plugin-transform-export-namespace-from": "^7.24.6",
+ "@babel/plugin-transform-for-of": "^7.24.6",
+ "@babel/plugin-transform-function-name": "^7.24.6",
+ "@babel/plugin-transform-json-strings": "^7.24.6",
+ "@babel/plugin-transform-literals": "^7.24.6",
+ "@babel/plugin-transform-logical-assignment-operators": "^7.24.6",
+ "@babel/plugin-transform-member-expression-literals": "^7.24.6",
+ "@babel/plugin-transform-modules-amd": "^7.24.6",
+ "@babel/plugin-transform-modules-commonjs": "^7.24.6",
+ "@babel/plugin-transform-modules-systemjs": "^7.24.6",
+ "@babel/plugin-transform-modules-umd": "^7.24.6",
+ "@babel/plugin-transform-named-capturing-groups-regex": "^7.24.6",
+ "@babel/plugin-transform-new-target": "^7.24.6",
+ "@babel/plugin-transform-nullish-coalescing-operator": "^7.24.6",
+ "@babel/plugin-transform-numeric-separator": "^7.24.6",
+ "@babel/plugin-transform-object-rest-spread": "^7.24.6",
+ "@babel/plugin-transform-object-super": "^7.24.6",
+ "@babel/plugin-transform-optional-catch-binding": "^7.24.6",
+ "@babel/plugin-transform-optional-chaining": "^7.24.6",
+ "@babel/plugin-transform-parameters": "^7.24.6",
+ "@babel/plugin-transform-private-methods": "^7.24.6",
+ "@babel/plugin-transform-private-property-in-object": "^7.24.6",
+ "@babel/plugin-transform-property-literals": "^7.24.6",
+ "@babel/plugin-transform-regenerator": "^7.24.6",
+ "@babel/plugin-transform-reserved-words": "^7.24.6",
+ "@babel/plugin-transform-shorthand-properties": "^7.24.6",
+ "@babel/plugin-transform-spread": "^7.24.6",
+ "@babel/plugin-transform-sticky-regex": "^7.24.6",
+ "@babel/plugin-transform-template-literals": "^7.24.6",
+ "@babel/plugin-transform-typeof-symbol": "^7.24.6",
+ "@babel/plugin-transform-unicode-escapes": "^7.24.6",
+ "@babel/plugin-transform-unicode-property-regex": "^7.24.6",
+ "@babel/plugin-transform-unicode-regex": "^7.24.6",
+ "@babel/plugin-transform-unicode-sets-regex": "^7.24.6",
+ "@babel/preset-modules": "0.1.6-no-external-plugins",
+ "babel-plugin-polyfill-corejs2": "^0.4.10",
+ "babel-plugin-polyfill-corejs3": "^0.10.4",
+ "babel-plugin-polyfill-regenerator": "^0.6.1",
+ "core-js-compat": "^3.31.0",
+ "semver": "^6.3.1"
},
"dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "express": {
- "version": "4.18.2",
- "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz",
- "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==",
- "dev": true,
- "requires": {
- "accepts": "~1.3.8",
- "array-flatten": "1.1.1",
- "body-parser": "1.20.1",
- "content-disposition": "0.5.4",
- "content-type": "~1.0.4",
- "cookie": "0.5.0",
- "cookie-signature": "1.0.6",
- "debug": "2.6.9",
- "depd": "2.0.0",
- "encodeurl": "~1.0.2",
- "escape-html": "~1.0.3",
- "etag": "~1.8.1",
- "finalhandler": "1.2.0",
- "fresh": "0.5.2",
- "http-errors": "2.0.0",
- "merge-descriptors": "1.0.1",
- "methods": "~1.1.2",
- "on-finished": "2.4.1",
- "parseurl": "~1.3.3",
- "path-to-regexp": "0.1.7",
- "proxy-addr": "~2.0.7",
- "qs": "6.11.0",
- "range-parser": "~1.2.1",
- "safe-buffer": "5.2.1",
- "send": "0.18.0",
- "serve-static": "1.15.0",
- "setprototypeof": "1.2.0",
- "statuses": "2.0.1",
- "type-is": "~1.6.18",
- "utils-merge": "1.0.1",
- "vary": "~1.1.2"
- },
- "dependencies": {
- "body-parser": {
- "version": "1.20.1",
- "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz",
- "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==",
- "dev": true,
- "requires": {
- "bytes": "3.1.2",
- "content-type": "~1.0.4",
- "debug": "2.6.9",
- "depd": "2.0.0",
- "destroy": "1.2.0",
- "http-errors": "2.0.0",
- "iconv-lite": "0.4.24",
- "on-finished": "2.4.1",
- "qs": "6.11.0",
- "raw-body": "2.5.1",
- "type-is": "~1.6.18",
- "unpipe": "1.0.0"
- }
- }
- }
- },
- "finalhandler": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
- "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==",
- "dev": true,
- "requires": {
- "debug": "2.6.9",
- "encodeurl": "~1.0.2",
- "escape-html": "~1.0.3",
- "on-finished": "2.4.1",
- "parseurl": "~1.3.3",
- "statuses": "2.0.1",
- "unpipe": "~1.0.0"
- }
- },
- "ms": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
- "dev": true
- },
- "path-to-regexp": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
- "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==",
- "dev": true
- },
- "raw-body": {
- "version": "2.5.1",
- "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz",
- "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==",
- "dev": true,
- "requires": {
- "bytes": "3.1.2",
- "http-errors": "2.0.0",
- "iconv-lite": "0.4.24",
- "unpipe": "1.0.0"
- }
- },
- "tslib": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
- "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true
}
}
},
- "@nestjs/websockets": {
- "version": "9.4.3",
- "resolved": "https://registry.npmjs.org/@nestjs/websockets/-/websockets-9.4.3.tgz",
- "integrity": "sha512-LMLKJWZbWH3VQRxDK/658ynyN1n5lLCIen/dey2y5TzB0RNgxlSso/YJATVVfWNaT2CxPG8TUQMOTdopXCWGQw==",
+ "@babel/preset-modules": {
+ "version": "0.1.6-no-external-plugins",
+ "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.6-no-external-plugins.tgz",
+ "integrity": "sha512-HrcgcIESLm9aIR842yhJ5RWan/gebQUJ6E/E5+rf0y9o6oj7w0Br+sWuL6kEQ/o/AdfvR1Je9jG18/gnpwjEyA==",
"dev": true,
"requires": {
- "iterare": "1.2.1",
- "object-hash": "3.0.0",
- "tslib": "2.5.3"
- },
- "dependencies": {
- "tslib": {
- "version": "2.5.3",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
- "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
- "dev": true
- }
+ "@babel/helper-plugin-utils": "^7.0.0",
+ "@babel/types": "^7.4.4",
+ "esutils": "^2.0.2"
}
},
- "@netflix/nerror": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/@netflix/nerror/-/nerror-1.1.3.tgz",
- "integrity": "sha512-b+MGNyP9/LXkapreJzNUzcvuzZslj/RGgdVVJ16P2wSlYatfLycPObImqVJSmNAdyeShvNeM/pl3sVZsObFueg==",
+ "@babel/regjsgen": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/@babel/regjsgen/-/regjsgen-0.8.0.tgz",
+ "integrity": "sha512-x/rqGMdzj+fWZvCOYForTghzbtqPDZ5gPwaoNGHdgDfF2QA/XZbCBp4Moo5scrkAMPhB7z26XM/AaHuIJdgauA==",
+ "dev": true
+ },
+ "@babel/runtime": {
+ "version": "7.24.7",
+ "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.24.7.tgz",
+ "integrity": "sha512-UwgBRMjJP+xv857DCngvqXI3Iq6J4v0wXmwc6sapg+zyhbwmQX67LUEFrkK5tbyJ30jGuG3ZvWpBiB9LCy1kWw==",
"dev": true,
"requires": {
- "assert-plus": "^1.0.0",
- "extsprintf": "^1.4.0",
- "lodash": "^4.17.15"
+ "regenerator-runtime": "^0.14.0"
},
"dependencies": {
- "extsprintf": {
- "version": "1.4.1",
- "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz",
- "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==",
+ "regenerator-runtime": {
+ "version": "0.14.1",
+ "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz",
+ "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==",
"dev": true
}
}
},
- "@nodelib/fs.scandir": {
- "version": "2.1.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
- "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "@babel/template": {
+ "version": "7.25.0",
+ "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.25.0.tgz",
+ "integrity": "sha512-aOOgh1/5XzKvg1jvVz7AVrx2piJ2XBi227DHmbY6y+bM9H2FlN+IfecYu4Xl0cNiiVejlsCri89LUsbj8vJD9Q==",
"dev": true,
"requires": {
- "@nodelib/fs.stat": "2.0.5",
- "run-parallel": "^1.1.9"
+ "@babel/code-frame": "^7.24.7",
+ "@babel/parser": "^7.25.0",
+ "@babel/types": "^7.25.0"
}
},
- "@nodelib/fs.stat": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
- "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
- "dev": true
+ "@babel/traverse": {
+ "version": "7.25.3",
+ "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.25.3.tgz",
+ "integrity": "sha512-HefgyP1x754oGCsKmV5reSmtV7IXj/kpaE1XYY+D9G5PvKKoFfSbiS4M77MdjuwlZKDIKFCffq9rPU+H/s3ZdQ==",
+ "dev": true,
+ "requires": {
+ "@babel/code-frame": "^7.24.7",
+ "@babel/generator": "^7.25.0",
+ "@babel/parser": "^7.25.3",
+ "@babel/template": "^7.25.0",
+ "@babel/types": "^7.25.2",
+ "debug": "^4.3.1",
+ "globals": "^11.1.0"
+ }
},
- "@nodelib/fs.walk": {
- "version": "1.2.8",
- "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
- "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "@babel/types": {
+ "version": "7.25.2",
+ "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.2.tgz",
+ "integrity": "sha512-YTnYtra7W9e6/oAZEHj0bJehPRUlLH9/fbpT5LfB0NhQXyALCRkRs3zH9v07IYhkgpqX6Z78FnuccZr/l4Fs4Q==",
"dev": true,
"requires": {
- "@nodelib/fs.scandir": "2.1.5",
- "fastq": "^1.6.0"
+ "@babel/helper-string-parser": "^7.24.8",
+ "@babel/helper-validator-identifier": "^7.24.7",
+ "to-fast-properties": "^2.0.0"
}
},
- "@npmcli/arborist": {
- "version": "6.2.3",
- "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-6.2.3.tgz",
- "integrity": "sha512-lpGOC2ilSJXcc2zfW9QtukcCTcMbl3fVI0z4wvFB2AFIl0C+Q6Wv7ccrpdrQa8rvJ1ZVuc6qkX7HVTyKlzGqKA==",
+ "@colors/colors": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/@colors/colors/-/colors-1.5.0.tgz",
+ "integrity": "sha512-ooWCrlZP11i8GImSjTHYHLkvFDP48nS4+204nGb1RiX/WXYHmJA2III9/e2DWVabCESdW7hBAEzHRqUn9OUVvQ==",
+ "dev": true
+ },
+ "@cspotcode/source-map-support": {
+ "version": "0.8.1",
+ "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz",
+ "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrVgw==",
"dev": true,
"requires": {
- "@isaacs/string-locale-compare": "^1.1.0",
- "@npmcli/fs": "^3.1.0",
- "@npmcli/installed-package-contents": "^2.0.0",
- "@npmcli/map-workspaces": "^3.0.2",
- "@npmcli/metavuln-calculator": "^5.0.0",
- "@npmcli/name-from-folder": "^2.0.0",
- "@npmcli/node-gyp": "^3.0.0",
- "@npmcli/package-json": "^3.0.0",
- "@npmcli/query": "^3.0.0",
- "@npmcli/run-script": "^6.0.0",
- "bin-links": "^4.0.1",
- "cacache": "^17.0.4",
- "common-ancestor-path": "^1.0.1",
- "hosted-git-info": "^6.1.1",
- "json-parse-even-better-errors": "^3.0.0",
- "json-stringify-nice": "^1.1.4",
- "minimatch": "^6.1.6",
- "nopt": "^7.0.0",
- "npm-install-checks": "^6.0.0",
- "npm-package-arg": "^10.1.0",
- "npm-pick-manifest": "^8.0.1",
- "npm-registry-fetch": "^14.0.3",
- "npmlog": "^7.0.1",
- "pacote": "^15.0.8",
- "parse-conflict-json": "^3.0.0",
- "proc-log": "^3.0.0",
- "promise-all-reject-late": "^1.0.0",
- "promise-call-limit": "^1.0.1",
- "read-package-json-fast": "^3.0.2",
- "semver": "^7.3.7",
- "ssri": "^10.0.1",
- "treeverse": "^3.0.0",
- "walk-up-path": "^1.0.0"
+ "@jridgewell/trace-mapping": "0.3.9"
},
"dependencies": {
- "@npmcli/run-script": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz",
- "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==",
- "dev": true,
- "requires": {
- "@npmcli/node-gyp": "^3.0.0",
- "@npmcli/promise-spawn": "^6.0.0",
- "node-gyp": "^9.0.0",
- "read-package-json-fast": "^3.0.0",
- "which": "^3.0.0"
- }
- },
- "are-we-there-yet": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.2.tgz",
- "integrity": "sha512-ncSWAawFhKMJDTdoAeOV+jyW1VCMj5QIAwULIBV0SSR7B/RLPPEQiknKcg/RIIZlUQrxELpsxMiTUoAQ4sIUyg==",
- "dev": true
- },
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
- "gauge": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.1.tgz",
- "integrity": "sha512-CmykPMJGuNan/3S4kZOpvvPYSNqSHANiWnh9XcMU2pSjtBfF0XzZ2p1bFAxTbnFxyBuPxQYHhzwaoOmUdqzvxQ==",
- "dev": true,
- "requires": {
- "aproba": "^1.0.3 || ^2.0.0",
- "color-support": "^1.1.3",
- "console-control-strings": "^1.1.0",
- "has-unicode": "^2.0.1",
- "signal-exit": "^4.0.1",
- "string-width": "^4.2.3",
- "strip-ansi": "^6.0.1",
- "wide-align": "^1.1.5"
- }
- },
- "minimatch": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
- "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
- "dev": true,
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- },
- "npm-package-arg": {
- "version": "10.1.0",
- "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz",
- "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==",
- "dev": true,
- "requires": {
- "hosted-git-info": "^6.0.0",
- "proc-log": "^3.0.0",
- "semver": "^7.3.5",
- "validate-npm-package-name": "^5.0.0"
- }
- },
- "npmlog": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz",
- "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==",
+ "@jridgewell/trace-mapping": {
+ "version": "0.3.9",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz",
+ "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==",
"dev": true,
"requires": {
- "are-we-there-yet": "^4.0.0",
- "console-control-strings": "^1.1.0",
- "gauge": "^5.0.0",
- "set-blocking": "^2.0.0"
+ "@jridgewell/resolve-uri": "^3.0.3",
+ "@jridgewell/sourcemap-codec": "^1.4.10"
}
- },
- "signal-exit": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
- "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
- "dev": true
- },
- "ssri": {
- "version": "10.0.5",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz",
- "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==",
+ }
+ }
+ },
+ "@cucumber/ci-environment": {
+ "version": "9.2.0",
+ "resolved": "https://registry.npmjs.org/@cucumber/ci-environment/-/ci-environment-9.2.0.tgz",
+ "integrity": "sha512-jLzRtVwdtNt+uAmTwvXwW9iGYLEOJFpDSmnx/dgoMGKXUWRx1UHT86Q696CLdgXO8kyTwsgJY0c6n5SW9VitAA==",
+ "dev": true
+ },
+ "@cucumber/cucumber": {
+ "version": "9.6.0",
+ "resolved": "https://registry.npmjs.org/@cucumber/cucumber/-/cucumber-9.6.0.tgz",
+ "integrity": "sha512-bCw2uJdGHHLg4B3RoZpLzx0RXyXURmPe+swtdK1cGoA8rs+vv+/6osifcNwvFM2sv0nQ91+gDACSrXK7AHCylg==",
+ "dev": true,
+ "requires": {
+ "@cucumber/ci-environment": "9.2.0",
+ "@cucumber/cucumber-expressions": "16.1.2",
+ "@cucumber/gherkin": "26.2.0",
+ "@cucumber/gherkin-streams": "5.0.1",
+ "@cucumber/gherkin-utils": "8.0.2",
+ "@cucumber/html-formatter": "20.4.0",
+ "@cucumber/message-streams": "4.0.1",
+ "@cucumber/messages": "22.0.0",
+ "@cucumber/tag-expressions": "5.0.1",
+ "assertion-error-formatter": "^3.0.0",
+ "capital-case": "^1.0.4",
+ "chalk": "^4.1.2",
+ "cli-table3": "0.6.3",
+ "commander": "^10.0.0",
+ "debug": "^4.3.4",
+ "error-stack-parser": "^2.1.4",
+ "figures": "^3.2.0",
+ "glob": "^7.1.6",
+ "has-ansi": "^4.0.1",
+ "indent-string": "^4.0.0",
+ "is-installed-globally": "^0.4.0",
+ "is-stream": "^2.0.0",
+ "knuth-shuffle-seeded": "^1.0.6",
+ "lodash.merge": "^4.6.2",
+ "lodash.mergewith": "^4.6.2",
+ "luxon": "3.2.1",
+ "mkdirp": "^2.1.5",
+ "mz": "^2.7.0",
+ "progress": "^2.0.3",
+ "resolve-pkg": "^2.0.0",
+ "semver": "7.5.3",
+ "string-argv": "^0.3.1",
+ "strip-ansi": "6.0.1",
+ "supports-color": "^8.1.1",
+ "tmp": "^0.2.1",
+ "util-arity": "^1.1.0",
+ "verror": "^1.10.0",
+ "xmlbuilder": "^15.1.1",
+ "yaml": "^2.2.2",
+ "yup": "1.2.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
"requires": {
- "minipass": "^7.0.3"
+ "color-convert": "^2.0.1"
}
},
- "validate-npm-package-name": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz",
- "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==",
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
"requires": {
- "builtins": "^5.0.0"
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "dependencies": {
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
}
},
- "which": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
- "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"requires": {
- "isexe": "^2.0.0"
+ "color-name": "~1.1.4"
}
},
- "wide-align": {
- "version": "1.1.5",
- "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz",
- "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==",
- "dev": true,
- "requires": {
- "string-width": "^1.0.2 || 2 || 3 || 4"
- }
- }
- }
- },
- "@npmcli/fs": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz",
- "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==",
- "dev": true,
- "requires": {
- "semver": "^7.3.5"
- }
- },
- "@npmcli/git": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz",
- "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==",
- "dev": true,
- "requires": {
- "@npmcli/promise-spawn": "^6.0.0",
- "lru-cache": "^7.4.4",
- "npm-pick-manifest": "^8.0.0",
- "proc-log": "^3.0.0",
- "promise-inflight": "^1.0.1",
- "promise-retry": "^2.0.1",
- "semver": "^7.3.5",
- "which": "^3.0.0"
- },
- "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==",
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
- "which": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
- "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
- "dev": true,
- "requires": {
- "isexe": "^2.0.0"
- }
- }
- }
- },
- "@npmcli/installed-package-contents": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.2.tgz",
- "integrity": "sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==",
- "dev": true,
- "requires": {
- "npm-bundled": "^3.0.0",
- "npm-normalize-package-bin": "^3.0.0"
- }
- },
- "@npmcli/map-workspaces": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.4.tgz",
- "integrity": "sha512-Z0TbvXkRbacjFFLpVpV0e2mheCh+WzQpcqL+4xp49uNJOxOnIAPZyXtUxZ5Qn3QBTGKA11Exjd9a5411rBrhDg==",
- "dev": true,
- "requires": {
- "@npmcli/name-from-folder": "^2.0.0",
- "glob": "^10.2.2",
- "minimatch": "^9.0.0",
- "read-package-json-fast": "^3.0.0"
- }
- },
- "@npmcli/metavuln-calculator": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-5.0.1.tgz",
- "integrity": "sha512-qb8Q9wIIlEPj3WeA1Lba91R4ZboPL0uspzV0F9uwP+9AYMVB2zOoa7Pbk12g6D2NHAinSbHh6QYmGuRyHZ874Q==",
- "dev": true,
- "requires": {
- "cacache": "^17.0.0",
- "json-parse-even-better-errors": "^3.0.0",
- "pacote": "^15.0.0",
- "semver": "^7.3.5"
- }
- },
- "@npmcli/move-file": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz",
- "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==",
- "dev": true,
- "requires": {
- "mkdirp": "^1.0.4",
- "rimraf": "^3.0.2"
- },
- "dependencies": {
"glob": {
"version": "7.2.3",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
@@ -50499,6 +44938,15 @@
"path-is-absolute": "^1.0.0"
}
},
+ "lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "requires": {
+ "yallist": "^4.0.0"
+ }
+ },
"minimatch": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
@@ -50508,3644 +44956,3225 @@
"brace-expansion": "^1.1.7"
}
},
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true
- },
- "rimraf": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
- "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "semver": {
+ "version": "7.5.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.3.tgz",
+ "integrity": "sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==",
"dev": true,
"requires": {
- "glob": "^7.1.3"
+ "lru-cache": "^6.0.0"
}
+ },
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
}
}
},
- "@npmcli/name-from-folder": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz",
- "integrity": "sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==",
- "dev": true
- },
- "@npmcli/node-gyp": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz",
- "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==",
- "dev": true
- },
- "@npmcli/package-json": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-3.1.1.tgz",
- "integrity": "sha512-+UW0UWOYFKCkvszLoTwrYGrjNrT8tI5Ckeb/h+Z1y1fsNJEctl7HmerA5j2FgmoqFaLI2gsA1X9KgMFqx/bRmA==",
+ "@cucumber/cucumber-expressions": {
+ "version": "16.1.2",
+ "resolved": "https://registry.npmjs.org/@cucumber/cucumber-expressions/-/cucumber-expressions-16.1.2.tgz",
+ "integrity": "sha512-CfHEbxJ5FqBwF6mJyLLz4B353gyHkoi6cCL4J0lfDZ+GorpcWw4n2OUAdxJmP7ZlREANWoTFlp4FhmkLKrCfUA==",
"dev": true,
"requires": {
- "@npmcli/git": "^4.1.0",
- "glob": "^10.2.2",
- "json-parse-even-better-errors": "^3.0.0",
- "normalize-package-data": "^5.0.0",
- "npm-normalize-package-bin": "^3.0.1",
- "proc-log": "^3.0.0"
+ "regexp-match-indices": "1.0.2"
}
},
- "@npmcli/promise-spawn": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz",
- "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==",
+ "@cucumber/gherkin": {
+ "version": "26.2.0",
+ "resolved": "https://registry.npmjs.org/@cucumber/gherkin/-/gherkin-26.2.0.tgz",
+ "integrity": "sha512-iRSiK8YAIHAmLrn/mUfpAx7OXZ7LyNlh1zT89RoziSVCbqSVDxJS6ckEzW8loxs+EEXl0dKPQOXiDmbHV+C/fA==",
"dev": true,
"requires": {
- "which": "^3.0.0"
- },
- "dependencies": {
- "which": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
- "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
- "dev": true,
- "requires": {
- "isexe": "^2.0.0"
- }
- }
+ "@cucumber/messages": ">=19.1.4 <=22"
}
},
- "@npmcli/query": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@npmcli/query/-/query-3.1.0.tgz",
- "integrity": "sha512-C/iR0tk7KSKGldibYIB9x8GtO/0Bd0I2mhOaDb8ucQL/bQVTmGoeREaFj64Z5+iCBRf3dQfed0CjJL7I8iTkiQ==",
+ "@cucumber/gherkin-streams": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@cucumber/gherkin-streams/-/gherkin-streams-5.0.1.tgz",
+ "integrity": "sha512-/7VkIE/ASxIP/jd4Crlp4JHXqdNFxPGQokqWqsaCCiqBiu5qHoKMxcWNlp9njVL/n9yN4S08OmY3ZR8uC5x74Q==",
"dev": true,
"requires": {
- "postcss-selector-parser": "^6.0.10"
+ "commander": "9.1.0",
+ "source-map-support": "0.5.21"
+ },
+ "dependencies": {
+ "commander": {
+ "version": "9.1.0",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-9.1.0.tgz",
+ "integrity": "sha512-i0/MaqBtdbnJ4XQs4Pmyb+oFQl+q0lsAmokVUH92SlSw4fkeAcG3bVon+Qt7hmtF+u3Het6o4VgrcY3qAoEB6w==",
+ "dev": true
+ }
}
},
- "@npmcli/run-script": {
- "version": "4.1.7",
- "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.1.7.tgz",
- "integrity": "sha512-WXr/MyM4tpKA4BotB81NccGAv8B48lNH0gRoILucbcAhTQXLCoi6HflMV3KdXubIqvP9SuLsFn68Z7r4jl+ppw==",
+ "@cucumber/gherkin-utils": {
+ "version": "8.0.2",
+ "resolved": "https://registry.npmjs.org/@cucumber/gherkin-utils/-/gherkin-utils-8.0.2.tgz",
+ "integrity": "sha512-aQlziN3r3cTwprEDbLEcFoMRQajb9DTOu2OZZp5xkuNz6bjSTowSY90lHUD2pWT7jhEEckZRIREnk7MAwC2d1A==",
"dev": true,
"requires": {
- "@npmcli/node-gyp": "^2.0.0",
- "@npmcli/promise-spawn": "^3.0.0",
- "node-gyp": "^9.0.0",
- "read-package-json-fast": "^2.0.3",
- "which": "^2.0.2"
+ "@cucumber/gherkin": "^25.0.0",
+ "@cucumber/messages": "^19.1.4",
+ "@teppeis/multimaps": "2.0.0",
+ "commander": "9.4.1",
+ "source-map-support": "^0.5.21"
},
"dependencies": {
- "@npmcli/node-gyp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz",
- "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==",
- "dev": true
+ "@cucumber/gherkin": {
+ "version": "25.0.2",
+ "resolved": "https://registry.npmjs.org/@cucumber/gherkin/-/gherkin-25.0.2.tgz",
+ "integrity": "sha512-EdsrR33Y5GjuOoe2Kq5Y9DYwgNRtUD32H4y2hCrT6+AWo7ibUQu7H+oiWTgfVhwbkHsZmksxHSxXz/AwqqyCRQ==",
+ "dev": true,
+ "requires": {
+ "@cucumber/messages": "^19.1.4"
+ }
},
- "@npmcli/promise-spawn": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz",
- "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==",
+ "@cucumber/messages": {
+ "version": "19.1.4",
+ "resolved": "https://registry.npmjs.org/@cucumber/messages/-/messages-19.1.4.tgz",
+ "integrity": "sha512-Pksl0pnDz2l1+L5Ug85NlG6LWrrklN9qkMxN5Mv+1XZ3T6u580dnE6mVaxjJRdcOq4tR17Pc0RqIDZMyVY1FlA==",
"dev": true,
"requires": {
- "infer-owner": "^1.0.4"
+ "@types/uuid": "8.3.4",
+ "class-transformer": "0.5.1",
+ "reflect-metadata": "0.1.13",
+ "uuid": "9.0.0"
}
},
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
+ "@types/uuid": {
+ "version": "8.3.4",
+ "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-8.3.4.tgz",
+ "integrity": "sha512-c/I8ZRb51j+pYGAu5CrFMRxqZ2ke4y2grEBO5AUjgSkSk+qT2Ea+OdWElz/OiMf5MNpn2b17kuVBwZLQJXzihw==",
"dev": true
},
- "npm-normalize-package-bin": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz",
- "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==",
+ "commander": {
+ "version": "9.4.1",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-9.4.1.tgz",
+ "integrity": "sha512-5EEkTNyHNGFPD2H+c/dXXfQZYa/scCKasxWcXJaWnNJ99pnQN9Vnmqow+p+PlFPE63Q6mThaZws1T+HxfpgtPw==",
"dev": true
},
- "read-package-json-fast": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz",
- "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==",
- "dev": true,
- "requires": {
- "json-parse-even-better-errors": "^2.3.0",
- "npm-normalize-package-bin": "^1.0.1"
- }
+ "uuid": {
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz",
+ "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==",
+ "dev": true
}
}
},
- "@nrwl/cli": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/cli/-/cli-15.9.7.tgz",
- "integrity": "sha512-1jtHBDuJzA57My5nLzYiM372mJW0NY6rFKxlWt5a0RLsAZdPTHsd8lE3Gs9XinGC1jhXbruWmhhnKyYtZvX/zA==",
+ "@cucumber/html-formatter": {
+ "version": "20.4.0",
+ "resolved": "https://registry.npmjs.org/@cucumber/html-formatter/-/html-formatter-20.4.0.tgz",
+ "integrity": "sha512-TnLSXC5eJd8AXHENo69f5z+SixEVtQIf7Q2dZuTpT/Y8AOkilGpGl1MQR1Vp59JIw+fF3EQSUKdf+DAThCxUNg==",
"dev": true,
- "requires": {
- "nx": "15.9.7"
- }
+ "requires": {}
},
- "@nrwl/devkit": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/devkit/-/devkit-15.9.7.tgz",
- "integrity": "sha512-Sb7Am2TMT8AVq8e+vxOlk3AtOA2M0qCmhBzoM1OJbdHaPKc0g0UgSnWRml1kPGg5qfPk72tWclLoZJ5/ut0vTg==",
+ "@cucumber/message-streams": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@cucumber/message-streams/-/message-streams-4.0.1.tgz",
+ "integrity": "sha512-Kxap9uP5jD8tHUZVjTWgzxemi/0uOsbGjd4LBOSxcJoOCRbESFwemUzilJuzNTB8pcTQUh8D5oudUyxfkJOKmA==",
+ "dev": true,
+ "requires": {}
+ },
+ "@cucumber/messages": {
+ "version": "22.0.0",
+ "resolved": "https://registry.npmjs.org/@cucumber/messages/-/messages-22.0.0.tgz",
+ "integrity": "sha512-EuaUtYte9ilkxcKmfqGF9pJsHRUU0jwie5ukuZ/1NPTuHS1LxHPsGEODK17RPRbZHOFhqybNzG2rHAwThxEymg==",
"dev": true,
"requires": {
- "ejs": "^3.1.7",
- "ignore": "^5.0.4",
- "semver": "7.5.4",
- "tmp": "~0.2.1",
- "tslib": "^2.3.0"
+ "@types/uuid": "9.0.1",
+ "class-transformer": "0.5.1",
+ "reflect-metadata": "0.1.13",
+ "uuid": "9.0.0"
},
"dependencies": {
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
- "dev": true,
- "requires": {
- "lru-cache": "^6.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "uuid": {
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.0.tgz",
+ "integrity": "sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg==",
"dev": true
}
}
},
- "@nrwl/nx-darwin-arm64": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/nx-darwin-arm64/-/nx-darwin-arm64-15.9.7.tgz",
- "integrity": "sha512-aBUgnhlkrgC0vu0fK6eb9Vob7eFnkuknrK+YzTjmLrrZwj7FGNAeyGXSlyo1dVokIzjVKjJg2saZZ0WQbfuCJw==",
+ "@cucumber/tag-expressions": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@cucumber/tag-expressions/-/tag-expressions-5.0.1.tgz",
+ "integrity": "sha512-N43uWud8ZXuVjza423T9ZCIJsaZhFekmakt7S9bvogTxqdVGbRobjR663s0+uW0Rz9e+Pa8I6jUuWtoBLQD2Mw==",
+ "dev": true
+ },
+ "@dabh/diagnostics": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz",
+ "integrity": "sha512-hrlQOIi7hAfzsMqlGSFyVucrx38O+j6wiGOf//H2ecvIEqYN4ADBSS2iLMh5UFyDunCNniUIPk/q3riFv45xRA==",
+ "dev": true,
+ "requires": {
+ "colorspace": "1.1.x",
+ "enabled": "2.0.x",
+ "kuler": "^2.0.0"
+ }
+ },
+ "@discoveryjs/json-ext": {
+ "version": "0.5.7",
+ "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.7.tgz",
+ "integrity": "sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==",
+ "dev": true
+ },
+ "@esbuild/aix-ppc64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.19.12.tgz",
+ "integrity": "sha512-bmoCYyWdEL3wDQIVbcyzRyeKLgk2WtWLTWz1ZIAZF/EGbNOwSA6ew3PftJ1PqMiOOGu0OyFMzG53L0zqIpPeNA==",
"dev": true,
"optional": true
},
- "@nrwl/nx-darwin-x64": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/nx-darwin-x64/-/nx-darwin-x64-15.9.7.tgz",
- "integrity": "sha512-L+elVa34jhGf1cmn38Z0sotQatmLovxoASCIw5r1CBZZeJ5Tg7Y9nOwjRiDixZxNN56hPKXm6xl9EKlVHVeKlg==",
+ "@esbuild/android-arm": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.19.12.tgz",
+ "integrity": "sha512-qg/Lj1mu3CdQlDEEiWrlC4eaPZ1KztwGJ9B6J+/6G+/4ewxJg7gqj8eVYWvao1bXrqGiW2rsBZFSX3q2lcW05w==",
"dev": true,
"optional": true
},
- "@nrwl/nx-linux-arm-gnueabihf": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-15.9.7.tgz",
- "integrity": "sha512-pqmfqqEUGFu6PmmHKyXyUw1Al0Ki8PSaR0+ndgCAb1qrekVDGDfznJfaqxN0JSLeolPD6+PFtLyXNr9ZyPFlFg==",
+ "@esbuild/android-arm64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.19.12.tgz",
+ "integrity": "sha512-P0UVNGIienjZv3f5zq0DP3Nt2IE/3plFzuaS96vihvD0Hd6H/q4WXUGpCxD/E8YrSXfNyRPbpTq+T8ZQioSuPA==",
"dev": true,
"optional": true
},
- "@nrwl/nx-linux-arm64-gnu": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-15.9.7.tgz",
- "integrity": "sha512-NYOa/eRrqmM+In5g3M0rrPVIS9Z+q6fvwXJYf/KrjOHqqan/KL+2TOfroA30UhcBrwghZvib7O++7gZ2hzwOnA==",
+ "@esbuild/android-x64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.19.12.tgz",
+ "integrity": "sha512-3k7ZoUW6Q6YqhdhIaq/WZ7HwBpnFBlW905Fa4s4qWJyiNOgT1dOqDiVAQFwBH7gBRZr17gLrlFCRzF6jFh7Kew==",
"dev": true,
"optional": true
},
- "@nrwl/nx-linux-arm64-musl": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-arm64-musl/-/nx-linux-arm64-musl-15.9.7.tgz",
- "integrity": "sha512-zyStqjEcmbvLbejdTOrLUSEdhnxNtdQXlmOuymznCzYUEGRv+4f7OAepD3yRoR0a/57SSORZmmGQB7XHZoYZJA==",
+ "@esbuild/darwin-arm64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.19.12.tgz",
+ "integrity": "sha512-B6IeSgZgtEzGC42jsI+YYu9Z3HKRxp8ZT3cqhvliEHovq8HSX2YX8lNocDn79gCKJXOSaEot9MVYky7AKjCs8g==",
"dev": true,
"optional": true
},
- "@nrwl/nx-linux-x64-gnu": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-x64-gnu/-/nx-linux-x64-gnu-15.9.7.tgz",
- "integrity": "sha512-saNK5i2A8pKO3Il+Ejk/KStTApUpWgCxjeUz9G+T8A+QHeDloZYH2c7pU/P3jA9QoNeKwjVO9wYQllPL9loeVg==",
+ "@esbuild/darwin-x64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.19.12.tgz",
+ "integrity": "sha512-hKoVkKzFiToTgn+41qGhsUJXFlIjxI/jSYeZf3ugemDYZldIXIxhvwN6erJGlX4t5h417iFuheZ7l+YVn05N3A==",
"dev": true,
"optional": true
},
- "@nrwl/nx-linux-x64-musl": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-x64-musl/-/nx-linux-x64-musl-15.9.7.tgz",
- "integrity": "sha512-extIUThYN94m4Vj4iZggt6hhMZWQSukBCo8pp91JHnDcryBg7SnYmnikwtY1ZAFyyRiNFBLCKNIDFGkKkSrZ9Q==",
+ "@esbuild/freebsd-arm64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.19.12.tgz",
+ "integrity": "sha512-4aRvFIXmwAcDBw9AueDQ2YnGmz5L6obe5kmPT8Vd+/+x/JMVKCgdcRwH6APrbpNXsPz+K653Qg8HB/oXvXVukA==",
"dev": true,
"optional": true
},
- "@nrwl/nx-win32-arm64-msvc": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-15.9.7.tgz",
- "integrity": "sha512-GSQ54hJ5AAnKZb4KP4cmBnJ1oC4ILxnrG1mekxeM65c1RtWg9NpBwZ8E0gU3xNrTv8ZNsBeKi/9UhXBxhsIh8A==",
+ "@esbuild/freebsd-x64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.19.12.tgz",
+ "integrity": "sha512-EYoXZ4d8xtBoVN7CEwWY2IN4ho76xjYXqSXMNccFSx2lgqOG/1TBPW0yPx1bJZk94qu3tX0fycJeeQsKovA8gg==",
"dev": true,
"optional": true
},
- "@nrwl/nx-win32-x64-msvc": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/nx-win32-x64-msvc/-/nx-win32-x64-msvc-15.9.7.tgz",
- "integrity": "sha512-x6URof79RPd8AlapVbPefUD3ynJZpmah3tYaYZ9xZRMXojVtEHV8Qh5vysKXQ1rNYJiiB8Ah6evSKWLbAH60tw==",
+ "@esbuild/linux-arm": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.19.12.tgz",
+ "integrity": "sha512-J5jPms//KhSNv+LO1S1TX1UWp1ucM6N6XuL6ITdKWElCu8wXP72l9MM0zDTzzeikVyqFE6U8YAV9/tFyj0ti+w==",
"dev": true,
"optional": true
},
- "@nrwl/tao": {
- "version": "15.9.7",
- "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-15.9.7.tgz",
- "integrity": "sha512-OBnHNvQf3vBH0qh9YnvBQQWyyFZ+PWguF6dJ8+1vyQYlrLVk/XZ8nJ4ukWFb+QfPv/O8VBmqaofaOI9aFC4yTw==",
+ "@esbuild/linux-arm64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.19.12.tgz",
+ "integrity": "sha512-EoTjyYyLuVPfdPLsGVVVC8a0p1BFFvtpQDB/YLEhaXyf/5bczaGeN15QkR+O4S5LeJ92Tqotve7i1jn35qwvdA==",
"dev": true,
- "requires": {
- "nx": "15.9.7"
- }
+ "optional": true
},
- "@nuxtjs/opencollective": {
- "version": "0.3.2",
- "resolved": "https://registry.npmjs.org/@nuxtjs/opencollective/-/opencollective-0.3.2.tgz",
- "integrity": "sha512-um0xL3fO7Mf4fDxcqx9KryrB7zgRM5JSlvGN5AGkP6JLM5XEKyjeAiPbNxdXVXQ16isuAhYpvP88NgL2BGd6aA==",
+ "@esbuild/linux-ia32": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.19.12.tgz",
+ "integrity": "sha512-Thsa42rrP1+UIGaWz47uydHSBOgTUnwBwNq59khgIwktK6x60Hivfbux9iNR0eHCHzOLjLMLfUMLCypBkZXMHA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-loong64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.19.12.tgz",
+ "integrity": "sha512-LiXdXA0s3IqRRjm6rV6XaWATScKAXjI4R4LoDlvO7+yQqFdlr1Bax62sRwkVvRIrwXxvtYEHHI4dm50jAXkuAA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-mips64el": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.19.12.tgz",
+ "integrity": "sha512-fEnAuj5VGTanfJ07ff0gOA6IPsvrVHLVb6Lyd1g2/ed67oU1eFzL0r9WL7ZzscD+/N6i3dWumGE1Un4f7Amf+w==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-ppc64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.19.12.tgz",
+ "integrity": "sha512-nYJA2/QPimDQOh1rKWedNOe3Gfc8PabU7HT3iXWtNUbRzXS9+vgB0Fjaqr//XNbd82mCxHzik2qotuI89cfixg==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-riscv64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.19.12.tgz",
+ "integrity": "sha512-2MueBrlPQCw5dVJJpQdUYgeqIzDQgw3QtiAHUC4RBz9FXPrskyyU3VI1hw7C0BSKB9OduwSJ79FTCqtGMWqJHg==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-s390x": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.19.12.tgz",
+ "integrity": "sha512-+Pil1Nv3Umes4m3AZKqA2anfhJiVmNCYkPchwFJNEJN5QxmTs1uzyy4TvmDrCRNT2ApwSari7ZIgrPeUx4UZDg==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/linux-x64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.19.12.tgz",
+ "integrity": "sha512-B71g1QpxfwBvNrfyJdVDexenDIt1CiDN1TIXLbhOw0KhJzE78KIFGX6OJ9MrtC0oOqMWf+0xop4qEU8JrJTwCg==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/netbsd-x64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.19.12.tgz",
+ "integrity": "sha512-3ltjQ7n1owJgFbuC61Oj++XhtzmymoCihNFgT84UAmJnxJfm4sYCiSLTXZtE00VWYpPMYc+ZQmB6xbSdVh0JWA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/openbsd-arm64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.24.0.tgz",
+ "integrity": "sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==",
+ "optional": true
+ },
+ "@esbuild/openbsd-x64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.19.12.tgz",
+ "integrity": "sha512-RbrfTB9SWsr0kWmb9srfF+L933uMDdu9BIzdA7os2t0TXhCRjrQyCeOt6wVxr79CKD4c+p+YhCj31HBkYcXebw==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/sunos-x64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.19.12.tgz",
+ "integrity": "sha512-HKjJwRrW8uWtCQnQOz9qcU3mUZhTUQvi56Q8DPTLLB+DawoiQdjsYq+j+D3s9I8VFtDr+F9CjgXKKC4ss89IeA==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/win32-arm64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.19.12.tgz",
+ "integrity": "sha512-URgtR1dJnmGvX864pn1B2YUYNzjmXkuJOIqG2HdU62MVS4EHpU2946OZoTMnRUHklGtJdJZ33QfzdjGACXhn1A==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/win32-ia32": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.19.12.tgz",
+ "integrity": "sha512-+ZOE6pUkMOJfmxmBZElNOx72NKpIa/HFOMGzu8fqzQJ5kgf6aTGrcJaFsNiVMH4JKpMipyK+7k0n2UXN7a8YKQ==",
+ "dev": true,
+ "optional": true
+ },
+ "@esbuild/win32-x64": {
+ "version": "0.19.12",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.19.12.tgz",
+ "integrity": "sha512-T1QyPSDCyMXaO3pzBkF96E8xMkiRYbUEZADd29SyPGabqxMViNoii+NcK7eWJAEoU6RZyEm5lVSIjTmcdoB9HA==",
+ "dev": true,
+ "optional": true
+ },
+ "@eslint/eslintrc": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-1.4.1.tgz",
+ "integrity": "sha512-XXrH9Uarn0stsyldqDYq8r++mROmWRI1xKMXa640Bb//SY1+ECYX6VzT6Lcx5frD0V30XieqJ0oX9I2Xj5aoMA==",
"dev": true,
"requires": {
- "chalk": "^4.1.0",
- "consola": "^2.15.0",
- "node-fetch": "^2.6.1"
+ "ajv": "^6.12.4",
+ "debug": "^4.3.2",
+ "espree": "^9.4.0",
+ "globals": "^13.19.0",
+ "ignore": "^5.2.0",
+ "import-fresh": "^3.2.1",
+ "js-yaml": "^4.1.0",
+ "minimatch": "^3.1.2",
+ "strip-json-comments": "^3.1.1"
},
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "globals": {
+ "version": "13.24.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
+ "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
"dev": true,
"requires": {
- "color-convert": "^2.0.1"
+ "type-fest": "^0.20.2"
}
},
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
"requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
+ "brace-expansion": "^1.1.7"
}
},
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "type-fest": {
+ "version": "0.20.2",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
+ "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
+ "dev": true
+ }
+ }
+ },
+ "@fastify/ajv-compiler": {
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/@fastify/ajv-compiler/-/ajv-compiler-3.5.0.tgz",
+ "integrity": "sha512-ebbEtlI7dxXF5ziNdr05mOY8NnDiPB1XvAlLHctRt/Rc+C3LCOVW5imUVX+mhvUhnNzmPBHewUkOFgGlCxgdAA==",
+ "dev": true,
+ "requires": {
+ "ajv": "^8.11.0",
+ "ajv-formats": "^2.1.1",
+ "fast-uri": "^2.0.0"
+ },
+ "dependencies": {
+ "ajv": {
+ "version": "8.12.0",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz",
+ "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==",
"dev": true,
"requires": {
- "color-name": "~1.1.4"
+ "fast-deep-equal": "^3.1.1",
+ "json-schema-traverse": "^1.0.0",
+ "require-from-string": "^2.0.2",
+ "uri-js": "^4.2.2"
}
},
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "json-schema-traverse": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
"dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
}
}
},
- "@octokit/auth-token": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.4.tgz",
- "integrity": "sha512-TWFX7cZF2LXoCvdmJWY7XVPi74aSY0+FfBZNSXEXFkMpjcqsQwDSYVv5FhRFaI0V1ECnwbz4j59T/G+rXNWaIQ==",
+ "@fastify/error": {
+ "version": "3.4.1",
+ "resolved": "https://registry.npmjs.org/@fastify/error/-/error-3.4.1.tgz",
+ "integrity": "sha512-wWSvph+29GR783IhmvdwWnN4bUxTD01Vm5Xad4i7i1VuAOItLvbPAb69sb0IQ2N57yprvhNIwAP5B6xfKTmjmQ==",
"dev": true
},
- "@octokit/core": {
- "version": "4.2.4",
- "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.4.tgz",
- "integrity": "sha512-rYKilwgzQ7/imScn3M9/pFfUf4I1AZEH3KhyJmtPdE2zfaXAn2mFfUy4FbKewzc2We5y/LlKLj36fWJLKC2SIQ==",
+ "@fastify/express": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@fastify/express/-/express-3.0.0.tgz",
+ "integrity": "sha512-Ug6aulXCUiHgMyrHVYQqnQbGdsAV0aTad6nZxbOr6w3QjKn1mdQS3Kyzvc+I0xMjZ9yIyMUWHSooHgZ0l7nOng==",
"dev": true,
"requires": {
- "@octokit/auth-token": "^3.0.0",
- "@octokit/graphql": "^5.0.0",
- "@octokit/request": "^6.0.0",
- "@octokit/request-error": "^3.0.0",
- "@octokit/types": "^9.0.0",
- "before-after-hook": "^2.2.0",
- "universal-user-agent": "^6.0.0"
+ "express": "^4.17.1",
+ "fastify-plugin": "^4.0.0"
}
},
- "@octokit/endpoint": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.6.tgz",
- "integrity": "sha512-5L4fseVRUsDFGR00tMWD/Trdeeihn999rTMGRMC1G/Ldi1uWlWJzI98H4Iak5DB/RVvQuyMYKqSK/R6mbSOQyg==",
+ "@fastify/fast-json-stringify-compiler": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/@fastify/fast-json-stringify-compiler/-/fast-json-stringify-compiler-4.3.0.tgz",
+ "integrity": "sha512-aZAXGYo6m22Fk1zZzEUKBvut/CIIQe/BapEORnxiD5Qr0kPHqqI69NtEMCme74h+at72sPhbkb4ZrLd1W3KRLA==",
"dev": true,
"requires": {
- "@octokit/types": "^9.0.0",
- "is-plain-object": "^5.0.0",
- "universal-user-agent": "^6.0.0"
- },
- "dependencies": {
- "is-plain-object": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
- "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
- "dev": true
- }
+ "fast-json-stringify": "^5.7.0"
}
},
- "@octokit/graphql": {
- "version": "5.0.6",
- "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.6.tgz",
- "integrity": "sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw==",
+ "@fastify/merge-json-schemas": {
+ "version": "0.1.1",
+ "resolved": "https://registry.npmjs.org/@fastify/merge-json-schemas/-/merge-json-schemas-0.1.1.tgz",
+ "integrity": "sha512-fERDVz7topgNjtXsJTTW1JKLy0rhuLRcquYqNR9rF7OcVpCa2OVW49ZPDIhaRRCaUuvVxI+N416xUoF76HNSXA==",
"dev": true,
"requires": {
- "@octokit/request": "^6.0.0",
- "@octokit/types": "^9.0.0",
- "universal-user-agent": "^6.0.0"
+ "fast-deep-equal": "^3.1.3"
+ }
+ },
+ "@gar/promisify": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz",
+ "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==",
+ "dev": true
+ },
+ "@grpc/grpc-js": {
+ "version": "1.10.1",
+ "resolved": "https://registry.npmjs.org/@grpc/grpc-js/-/grpc-js-1.10.1.tgz",
+ "integrity": "sha512-55ONqFytZExfOIjF1RjXPcVmT/jJqFzbbDqxK9jmRV4nxiYWtL9hENSW1Jfx0SdZfrvoqd44YJ/GJTqfRrawSQ==",
+ "requires": {
+ "@grpc/proto-loader": "^0.7.8",
+ "@types/node": ">=12.12.47"
+ }
+ },
+ "@grpc/proto-loader": {
+ "version": "0.7.10",
+ "resolved": "https://registry.npmjs.org/@grpc/proto-loader/-/proto-loader-0.7.10.tgz",
+ "integrity": "sha512-CAqDfoaQ8ykFd9zqBDn4k6iWT9loLAlc2ETmDFS9JCD70gDcnA4L3AFEo2iV7KyAtAAHFW9ftq1Fz+Vsgq80RQ==",
+ "requires": {
+ "lodash.camelcase": "^4.3.0",
+ "long": "^5.0.0",
+ "protobufjs": "^7.2.4",
+ "yargs": "^17.7.2"
+ }
+ },
+ "@hapi/accept": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/@hapi/accept/-/accept-6.0.3.tgz",
+ "integrity": "sha512-p72f9k56EuF0n3MwlBNThyVE5PXX40g+aQh+C/xbKrfzahM2Oispv3AXmOIU51t3j77zay1qrX7IIziZXspMlw==",
+ "dev": true,
+ "requires": {
+ "@hapi/boom": "^10.0.1",
+ "@hapi/hoek": "^11.0.2"
+ },
+ "dependencies": {
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ }
}
},
- "@octokit/openapi-types": {
- "version": "18.1.1",
- "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.1.1.tgz",
- "integrity": "sha512-VRaeH8nCDtF5aXWnjPuEMIYf1itK/s3JYyJcWFJT8X9pSNnBtriDf7wlEWsGuhPLl4QIH4xM8fqTXDwJ3Mu6sw==",
- "dev": true
- },
- "@octokit/plugin-enterprise-rest": {
+ "@hapi/ammo": {
"version": "6.0.1",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz",
- "integrity": "sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw==",
- "dev": true
- },
- "@octokit/plugin-paginate-rest": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-3.1.0.tgz",
- "integrity": "sha512-+cfc40pMzWcLkoDcLb1KXqjX0jTGYXjKuQdFQDc6UAknISJHnZTiBqld6HDwRJvD4DsouDKrWXNbNV0lE/3AXA==",
+ "resolved": "https://registry.npmjs.org/@hapi/ammo/-/ammo-6.0.1.tgz",
+ "integrity": "sha512-pmL+nPod4g58kXrMcsGLp05O2jF4P2Q3GiL8qYV7nKYEh3cGf+rV4P5Jyi2Uq0agGhVU63GtaSAfBEZOlrJn9w==",
"dev": true,
"requires": {
- "@octokit/types": "^6.41.0"
+ "@hapi/hoek": "^11.0.2"
},
"dependencies": {
- "@octokit/openapi-types": {
- "version": "12.11.0",
- "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz",
- "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==",
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
- },
- "@octokit/types": {
- "version": "6.41.0",
- "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz",
- "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==",
- "dev": true,
- "requires": {
- "@octokit/openapi-types": "^12.11.0"
- }
}
}
},
- "@octokit/plugin-request-log": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz",
- "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==",
- "dev": true,
- "requires": {}
- },
- "@octokit/plugin-rest-endpoint-methods": {
- "version": "6.8.1",
- "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-6.8.1.tgz",
- "integrity": "sha512-QrlaTm8Lyc/TbU7BL/8bO49vp+RZ6W3McxxmmQTgYxf2sWkO8ZKuj4dLhPNJD6VCUW1hetCmeIM0m6FTVpDiEg==",
+ "@hapi/boom": {
+ "version": "10.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/boom/-/boom-10.0.1.tgz",
+ "integrity": "sha512-ERcCZaEjdH3OgSJlyjVk8pHIFeus91CjKP3v+MpgBNp5IvGzP2l/bRiD78nqYcKPaZdbKkK5vDBVPd2ohHBlsA==",
"dev": true,
"requires": {
- "@octokit/types": "^8.1.1",
- "deprecation": "^2.3.1"
+ "@hapi/hoek": "^11.0.2"
},
"dependencies": {
- "@octokit/openapi-types": {
- "version": "14.0.0",
- "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-14.0.0.tgz",
- "integrity": "sha512-HNWisMYlR8VCnNurDU6os2ikx0s0VyEjDYHNS/h4cgb8DeOxQ0n72HyinUtdDVxJhFy3FWLGl0DJhfEWk3P5Iw==",
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
- },
- "@octokit/types": {
- "version": "8.2.1",
- "resolved": "https://registry.npmjs.org/@octokit/types/-/types-8.2.1.tgz",
- "integrity": "sha512-8oWMUji8be66q2B9PmEIUyQm00VPDPun07umUWSaCwxmeaquFBro4Hcc3ruVoDo3zkQyZBlRvhIMEYS3pBhanw==",
- "dev": true,
- "requires": {
- "@octokit/openapi-types": "^14.0.0"
- }
}
}
},
- "@octokit/request": {
- "version": "6.2.8",
- "resolved": "https://registry.npmjs.org/@octokit/request/-/request-6.2.8.tgz",
- "integrity": "sha512-ow4+pkVQ+6XVVsekSYBzJC0VTVvh/FCTUUgTsboGq+DTeWdyIFV8WSCdo0RIxk6wSkBTHqIK1mYuY7nOBXOchw==",
+ "@hapi/bounce": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/bounce/-/bounce-3.0.1.tgz",
+ "integrity": "sha512-G+/Pp9c1Ha4FDP+3Sy/Xwg2O4Ahaw3lIZFSX+BL4uWi64CmiETuZPxhKDUD4xBMOUZbBlzvO8HjiK8ePnhBadA==",
"dev": true,
"requires": {
- "@octokit/endpoint": "^7.0.0",
- "@octokit/request-error": "^3.0.0",
- "@octokit/types": "^9.0.0",
- "is-plain-object": "^5.0.0",
- "node-fetch": "^2.6.7",
- "universal-user-agent": "^6.0.0"
+ "@hapi/boom": "^10.0.1",
+ "@hapi/hoek": "^11.0.2"
},
"dependencies": {
- "is-plain-object": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
- "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
}
}
},
- "@octokit/request-error": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz",
- "integrity": "sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==",
+ "@hapi/call": {
+ "version": "9.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/call/-/call-9.0.1.tgz",
+ "integrity": "sha512-uPojQRqEL1GRZR4xXPqcLMujQGaEpyVPRyBlD8Pp5rqgIwLhtveF9PkixiKru2THXvuN8mUrLeet5fqxKAAMGg==",
"dev": true,
"requires": {
- "@octokit/types": "^9.0.0",
- "deprecation": "^2.0.0",
- "once": "^1.4.0"
+ "@hapi/boom": "^10.0.1",
+ "@hapi/hoek": "^11.0.2"
+ },
+ "dependencies": {
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ }
}
},
- "@octokit/rest": {
- "version": "19.0.3",
- "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.3.tgz",
- "integrity": "sha512-5arkTsnnRT7/sbI4fqgSJ35KiFaN7zQm0uQiQtivNQLI8RQx8EHwJCajcTUwmaCMNDg7tdCvqAnc7uvHHPxrtQ==",
+ "@hapi/catbox": {
+ "version": "12.1.1",
+ "resolved": "https://registry.npmjs.org/@hapi/catbox/-/catbox-12.1.1.tgz",
+ "integrity": "sha512-hDqYB1J+R0HtZg4iPH3LEnldoaBsar6bYp0EonBmNQ9t5CO+1CqgCul2ZtFveW1ReA5SQuze9GPSU7/aecERhw==",
"dev": true,
"requires": {
- "@octokit/core": "^4.0.0",
- "@octokit/plugin-paginate-rest": "^3.0.0",
- "@octokit/plugin-request-log": "^1.0.4",
- "@octokit/plugin-rest-endpoint-methods": "^6.0.0"
+ "@hapi/boom": "^10.0.1",
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/podium": "^5.0.0",
+ "@hapi/validate": "^2.0.1"
+ },
+ "dependencies": {
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ }
}
},
- "@octokit/types": {
- "version": "9.3.2",
- "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.3.2.tgz",
- "integrity": "sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA==",
+ "@hapi/catbox-memory": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@hapi/catbox-memory/-/catbox-memory-6.0.2.tgz",
+ "integrity": "sha512-H1l4ugoFW/ZRkqeFrIo8p1rWN0PA4MDTfu4JmcoNDvnY975o29mqoZblqFTotxNHlEkMPpIiIBJTV+Mbi+aF0g==",
"dev": true,
"requires": {
- "@octokit/openapi-types": "^18.0.0"
+ "@hapi/boom": "^10.0.1",
+ "@hapi/hoek": "^11.0.2"
+ },
+ "dependencies": {
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ }
}
},
- "@opentelemetry/api": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz",
- "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg=="
- },
- "@opentelemetry/api-logs": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.52.0.tgz",
- "integrity": "sha512-HxjD7xH9iAE4OyhNaaSec65i1H6QZYBWSwWkowFfsc5YAcDvJG30/J1sRKXEQqdmUcKTXEAnA66UciqZha/4+Q==",
+ "@hapi/content": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/content/-/content-6.0.0.tgz",
+ "integrity": "sha512-CEhs7j+H0iQffKfe5Htdak5LBOz/Qc8TRh51cF+BFv0qnuph3Em4pjGVzJMkI2gfTDdlJKWJISGWS1rK34POGA==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.0.0"
+ "@hapi/boom": "^10.0.0"
}
},
- "@opentelemetry/auto-instrumentations-node": {
- "version": "file:metapackages/auto-instrumentations-node",
- "requires": {
- "@opentelemetry/api": "^1.4.1",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/instrumentation-amqplib": "^0.38.0",
- "@opentelemetry/instrumentation-aws-lambda": "^0.42.0",
- "@opentelemetry/instrumentation-aws-sdk": "^0.42.0",
- "@opentelemetry/instrumentation-bunyan": "^0.39.0",
- "@opentelemetry/instrumentation-cassandra-driver": "^0.39.0",
- "@opentelemetry/instrumentation-connect": "^0.37.0",
- "@opentelemetry/instrumentation-cucumber": "^0.7.0",
- "@opentelemetry/instrumentation-dataloader": "^0.10.0",
- "@opentelemetry/instrumentation-dns": "^0.37.0",
- "@opentelemetry/instrumentation-express": "^0.40.1",
- "@opentelemetry/instrumentation-fastify": "^0.37.0",
- "@opentelemetry/instrumentation-fs": "^0.13.0",
- "@opentelemetry/instrumentation-generic-pool": "^0.37.0",
- "@opentelemetry/instrumentation-graphql": "^0.41.0",
- "@opentelemetry/instrumentation-grpc": "^0.52.0",
- "@opentelemetry/instrumentation-hapi": "^0.39.0",
- "@opentelemetry/instrumentation-http": "^0.52.0",
- "@opentelemetry/instrumentation-ioredis": "^0.41.0",
- "@opentelemetry/instrumentation-knex": "^0.37.0",
- "@opentelemetry/instrumentation-koa": "^0.41.0",
- "@opentelemetry/instrumentation-lru-memoizer": "^0.38.0",
- "@opentelemetry/instrumentation-memcached": "^0.37.0",
- "@opentelemetry/instrumentation-mongodb": "^0.45.0",
- "@opentelemetry/instrumentation-mongoose": "^0.39.0",
- "@opentelemetry/instrumentation-mysql": "^0.39.0",
- "@opentelemetry/instrumentation-mysql2": "^0.39.0",
- "@opentelemetry/instrumentation-nestjs-core": "^0.38.0",
- "@opentelemetry/instrumentation-net": "^0.37.0",
- "@opentelemetry/instrumentation-pg": "^0.42.0",
- "@opentelemetry/instrumentation-pino": "^0.40.0",
- "@opentelemetry/instrumentation-redis": "^0.40.0",
- "@opentelemetry/instrumentation-redis-4": "^0.40.0",
- "@opentelemetry/instrumentation-restify": "^0.39.0",
- "@opentelemetry/instrumentation-router": "^0.38.0",
- "@opentelemetry/instrumentation-socket.io": "^0.40.0",
- "@opentelemetry/instrumentation-tedious": "^0.11.0",
- "@opentelemetry/instrumentation-undici": "^0.3.0",
- "@opentelemetry/instrumentation-winston": "^0.38.0",
- "@opentelemetry/resource-detector-alibaba-cloud": "^0.28.10",
- "@opentelemetry/resource-detector-aws": "^1.5.1",
- "@opentelemetry/resource-detector-azure": "^0.2.9",
- "@opentelemetry/resource-detector-container": "^0.3.11",
- "@opentelemetry/resource-detector-gcp": "^0.29.10",
- "@opentelemetry/resources": "^1.24.0",
- "@opentelemetry/sdk-node": "^0.52.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- }
+ "@hapi/file": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/file/-/file-3.0.0.tgz",
+ "integrity": "sha512-w+lKW+yRrLhJu620jT3y+5g2mHqnKfepreykvdOcl9/6up8GrQQn+l3FRTsjHTKbkbfQFkuksHpdv2EcpKcJ4Q==",
+ "dev": true
},
- "@opentelemetry/auto-instrumentations-web": {
- "version": "file:metapackages/auto-instrumentations-web",
+ "@hapi/hapi": {
+ "version": "21.3.10",
+ "resolved": "https://registry.npmjs.org/@hapi/hapi/-/hapi-21.3.10.tgz",
+ "integrity": "sha512-CmEcmTREW394MaGGKvWpoOK4rG8tKlpZLs30tbaBzhCrhiL2Ti/HARek9w+8Ya4nMBGcd+kDAzvU44OX8Ms0Jg==",
+ "dev": true,
"requires": {
- "@babel/core": "7.24.6",
- "@babel/preset-env": "7.24.6",
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/instrumentation-document-load": "^0.39.0",
- "@opentelemetry/instrumentation-fetch": "^0.52.0",
- "@opentelemetry/instrumentation-user-interaction": "^0.39.0",
- "@opentelemetry/instrumentation-xml-http-request": "^0.52.0",
- "@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
- "@types/webpack-env": "1.16.3",
- "assert": "2.0.0",
- "babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
- "karma-chrome-launcher": "3.1.0",
- "karma-coverage": "2.2.1",
- "karma-mocha": "2.0.1",
- "karma-spec-reporter": "0.0.36",
- "karma-webpack": "5.0.1",
- "mocha": "10.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.1.2",
- "ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4",
- "webpack": "5.89.0",
- "webpack-cli": "5.1.4",
- "webpack-merge": "5.10.0"
+ "@hapi/accept": "^6.0.1",
+ "@hapi/ammo": "^6.0.1",
+ "@hapi/boom": "^10.0.1",
+ "@hapi/bounce": "^3.0.1",
+ "@hapi/call": "^9.0.1",
+ "@hapi/catbox": "^12.1.1",
+ "@hapi/catbox-memory": "^6.0.2",
+ "@hapi/heavy": "^8.0.1",
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/mimos": "^7.0.1",
+ "@hapi/podium": "^5.0.1",
+ "@hapi/shot": "^6.0.1",
+ "@hapi/somever": "^4.1.1",
+ "@hapi/statehood": "^8.1.1",
+ "@hapi/subtext": "^8.1.0",
+ "@hapi/teamwork": "^6.0.0",
+ "@hapi/topo": "^6.0.1",
+ "@hapi/validate": "^2.0.1"
},
"dependencies": {
- "@babel/core": {
- "version": "7.24.6",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
- "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
- "dev": true,
- "requires": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.24.6",
- "@babel/generator": "^7.24.6",
- "@babel/helper-compilation-targets": "^7.24.6",
- "@babel/helper-module-transforms": "^7.24.6",
- "@babel/helpers": "^7.24.6",
- "@babel/parser": "^7.24.6",
- "@babel/template": "^7.24.6",
- "@babel/traverse": "^7.24.6",
- "@babel/types": "^7.24.6",
- "convert-source-map": "^2.0.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.3",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
- }
- },
- "@sinonjs/commons": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
- "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
- "dev": true,
- "requires": {
- "type-detect": "4.0.8"
- }
- },
- "@types/mocha": {
- "version": "10.0.6",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
- "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
- "dev": true
- },
- "@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
- "dev": true,
- "requires": {
- "@types/sinonjs__fake-timers": "*"
- }
- },
- "ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
- "dev": true
- },
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
- "dev": true
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "dependencies": {
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
- "dev": true,
- "requires": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "fsevents": "~2.3.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
- },
- "decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
- "dev": true
- },
- "diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
- "dev": true
- },
- "enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
- "dev": true,
- "requires": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- }
- },
- "escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true
- },
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true
- },
- "glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "dependencies": {
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- }
- }
- },
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
- "is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
- "dev": true
- },
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- }
- },
- "minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
- "dev": true,
- "requires": {
- "brace-expansion": "^2.0.1"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "requires": {
- "balanced-match": "^1.0.0"
- }
- }
- }
- },
- "mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
- "dev": true,
- "requires": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
- }
- },
- "ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- },
- "nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
- "dev": true
- },
- "schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
- "dev": true,
- "requires": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
- }
- },
- "sinon": {
- "version": "15.1.2",
- "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
- "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
- "dev": true,
- "requires": {
- "@sinonjs/commons": "^3.0.0",
- "@sinonjs/fake-timers": "^10.1.0",
- "@sinonjs/samsam": "^8.0.0",
- "diff": "^5.1.0",
- "nise": "^5.1.4",
- "supports-color": "^7.2.0"
- },
- "dependencies": {
- "diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true
- },
- "tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
},
- "ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
- "dev": true,
- "requires": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
- }
- },
- "webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
- "dev": true,
- "requires": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
- }
- },
- "yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
- "dev": true,
- "requires": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
- }
- },
- "yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
+ "@hapi/topo": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
+ "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
"dev": true,
"requires": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
+ "@hapi/hoek": "^11.0.2"
}
}
}
},
- "@opentelemetry/baggage-span-processor": {
- "version": "file:packages/baggage-span-processor",
+ "@hapi/heavy": {
+ "version": "8.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/heavy/-/heavy-8.0.1.tgz",
+ "integrity": "sha512-gBD/NANosNCOp6RsYTsjo2vhr5eYA3BEuogk6cxY0QdhllkkTaJFYtTXv46xd6qhBVMbMMqcSdtqey+UQU3//w==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.0.0",
- "@opentelemetry/sdk-trace-base": "^1.0.0",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "expect": "29.2.0",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@hapi/boom": "^10.0.1",
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/validate": "^2.0.1"
},
"dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
}
}
},
- "@opentelemetry/context-async-hooks": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.25.0.tgz",
- "integrity": "sha512-sBW313mnMyFg0cp/40BRzrZBWG+581s2j5gIsa5fgGadswyILk4mNFATsqrCOpAx945RDuZ2B7ThQLgor9OpfA==",
- "requires": {}
- },
- "@opentelemetry/context-zone": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/context-zone/-/context-zone-1.25.0.tgz",
- "integrity": "sha512-LmO64smA9SZrl8f1HRRSNA4oudwpjCMVxZz08EhkRCcTRvFB8p+6Lnu6mtT54wD/raeXoEbLGtVqMYHsZ6bpmA==",
- "requires": {
- "@opentelemetry/context-zone-peer-dep": "1.25.0",
- "zone.js": "^0.11.0 || ^0.12.0 || ^0.13.0 || ^0.14.0"
- }
- },
- "@opentelemetry/context-zone-peer-dep": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/context-zone-peer-dep/-/context-zone-peer-dep-1.25.0.tgz",
- "integrity": "sha512-wh03u4ECYonjaxB+hzriWzHcr4GRlYSQoirDn0ldBDebz3WDZgjHCD/NPBoZaulGGwU6lvmQZXuyfz5hRrJhOw==",
- "requires": {}
+ "@hapi/hoek": {
+ "version": "9.3.0",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz",
+ "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==",
+ "dev": true
},
- "@opentelemetry/contrib-test-utils": {
- "version": "file:packages/opentelemetry-test-utils",
+ "@hapi/mimos": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/mimos/-/mimos-7.0.1.tgz",
+ "integrity": "sha512-b79V+BrG0gJ9zcRx1VGcCI6r6GEzzZUgiGEJVoq5gwzuB2Ig9Cax8dUuBauQCFKvl2YWSWyOc8mZ8HDaJOtkew==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/core": "^1.0.0",
- "@opentelemetry/exporter-jaeger": "^1.3.1",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/resources": "^1.8.0",
- "@opentelemetry/sdk-node": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/node": "18.6.5",
- "typescript": "4.4.4"
+ "@hapi/hoek": "^11.0.2",
+ "mime-db": "^1.52.0"
+ },
+ "dependencies": {
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ }
}
},
- "@opentelemetry/core": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.25.0.tgz",
- "integrity": "sha512-n0B3s8rrqGrasTgNkXLKXzN0fXo+6IYP7M5b7AMsrZM33f/y6DS6kJ0Btd7SespASWq8bgL3taLo0oe0vB52IQ==",
+ "@hapi/nigel": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/nigel/-/nigel-5.0.1.tgz",
+ "integrity": "sha512-uv3dtYuB4IsNaha+tigWmN8mQw/O9Qzl5U26Gm4ZcJVtDdB1AVJOwX3X5wOX+A07qzpEZnOMBAm8jjSqGsU6Nw==",
+ "dev": true,
"requires": {
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/vise": "^5.0.1"
+ },
+ "dependencies": {
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ }
}
},
- "@opentelemetry/esbuild-plugin-node": {
- "version": "file:packages/esbuild-plugin-node",
+ "@hapi/pez": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/@hapi/pez/-/pez-6.1.0.tgz",
+ "integrity": "sha512-+FE3sFPYuXCpuVeHQ/Qag1b45clR2o54QoonE/gKHv9gukxQ8oJJZPR7o3/ydDTK6racnCJXxOyT1T93FCJMIg==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.9.0",
- "@opentelemetry/auto-instrumentations-node": "0.47.1",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-node": "^0.52.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "esbuild": "0.21.x",
- "fastify": "4.15.0",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "pino": "^8.19.0",
- "redis": "^4.7.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@hapi/b64": "^6.0.1",
+ "@hapi/boom": "^10.0.1",
+ "@hapi/content": "^6.0.0",
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/nigel": "^5.0.1"
},
"dependencies": {
- "@esbuild/aix-ppc64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz",
- "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==",
- "optional": true
- },
- "@esbuild/android-arm": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz",
- "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==",
- "optional": true
- },
- "@esbuild/android-arm64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz",
- "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==",
- "optional": true
- },
- "@esbuild/android-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz",
- "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==",
- "optional": true
- },
- "@esbuild/darwin-arm64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz",
- "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==",
- "optional": true
- },
- "@esbuild/darwin-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz",
- "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==",
- "optional": true
- },
- "@esbuild/freebsd-arm64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz",
- "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==",
- "optional": true
- },
- "@esbuild/freebsd-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz",
- "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==",
- "optional": true
- },
- "@esbuild/linux-arm": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz",
- "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==",
- "optional": true
- },
- "@esbuild/linux-arm64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz",
- "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==",
- "optional": true
- },
- "@esbuild/linux-ia32": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz",
- "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==",
- "optional": true
- },
- "@esbuild/linux-loong64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz",
- "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==",
- "optional": true
- },
- "@esbuild/linux-mips64el": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz",
- "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==",
- "optional": true
- },
- "@esbuild/linux-ppc64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz",
- "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==",
- "optional": true
- },
- "@esbuild/linux-riscv64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz",
- "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==",
- "optional": true
- },
- "@esbuild/linux-s390x": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz",
- "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==",
- "optional": true
- },
- "@esbuild/linux-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz",
- "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==",
- "optional": true
- },
- "@esbuild/netbsd-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz",
- "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==",
- "optional": true
- },
- "@esbuild/openbsd-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz",
- "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==",
- "optional": true
- },
- "@esbuild/sunos-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz",
- "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==",
- "optional": true
- },
- "@esbuild/win32-arm64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz",
- "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==",
- "optional": true
- },
- "@esbuild/win32-ia32": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz",
- "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==",
- "optional": true
- },
- "@esbuild/win32-x64": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz",
- "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==",
- "optional": true
- },
- "@redis/bloom": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@redis/bloom/-/bloom-1.2.0.tgz",
- "integrity": "sha512-HG2DFjYKbpNmVXsa0keLHp/3leGJz1mjh09f2RLGGLQZzSHpkmZWuwJbAvo3QcRY8p80m5+ZdXZdYOSBLlp7Cg==",
- "dev": true,
- "requires": {}
- },
- "@redis/client": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.6.0.tgz",
- "integrity": "sha512-aR0uffYI700OEEH4gYnitAnv3vzVGXCFvYfdpu/CJKvk4pHfLPEy/JSZyrpQ+15WhXe1yJRXLtfQ84s4mEXnPg==",
- "dev": true,
- "requires": {
- "cluster-key-slot": "1.1.2",
- "generic-pool": "3.9.0",
- "yallist": "4.0.0"
- }
- },
- "@redis/graph": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/@redis/graph/-/graph-1.1.1.tgz",
- "integrity": "sha512-FEMTcTHZozZciLRl6GiiIB4zGm5z5F3F6a6FZCyrfxdKOhFlGkiAqlexWMBzCi4DcRoyiOsuLfW+cjlGWyExOw==",
- "dev": true,
- "requires": {}
- },
- "@redis/json": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/@redis/json/-/json-1.0.7.tgz",
- "integrity": "sha512-6UyXfjVaTBTJtKNG4/9Z8PSpKE6XgSyEb8iwaqDcy+uKrd/DGYHTWkUdnQDyzm727V7p21WUMhsqz5oy65kPcQ==",
- "dev": true,
- "requires": {}
- },
- "@redis/search": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@redis/search/-/search-1.2.0.tgz",
- "integrity": "sha512-tYoDBbtqOVigEDMAcTGsRlMycIIjwMCgD8eR2t0NANeQmgK/lvxNAvYyb6bZDD4frHRhIHkJu2TBRvB0ERkOmw==",
- "dev": true,
- "requires": {}
- },
- "@redis/time-series": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@redis/time-series/-/time-series-1.1.0.tgz",
- "integrity": "sha512-c1Q99M5ljsIuc4YdaCwfUEXsofakb9c8+Zse2qxTadu8TalLXuAESzLvFAvNVbkmSlvlzIQOLpBCmWI9wTOt+g==",
- "dev": true,
- "requires": {}
- },
- "buffer": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
- "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
+ "@hapi/b64": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/b64/-/b64-6.0.1.tgz",
+ "integrity": "sha512-ZvjX4JQReUmBheeCq+S9YavcnMMHWqx3S0jHNXWIM1kQDxB9cyfSycpVvjfrKcIS8Mh5N3hmu/YKo4Iag9g2Kw==",
"dev": true,
"requires": {
- "base64-js": "^1.3.1",
- "ieee754": "^1.2.1"
- }
- },
- "esbuild": {
- "version": "0.21.5",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz",
- "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==",
- "requires": {
- "@esbuild/aix-ppc64": "0.21.5",
- "@esbuild/android-arm": "0.21.5",
- "@esbuild/android-arm64": "0.21.5",
- "@esbuild/android-x64": "0.21.5",
- "@esbuild/darwin-arm64": "0.21.5",
- "@esbuild/darwin-x64": "0.21.5",
- "@esbuild/freebsd-arm64": "0.21.5",
- "@esbuild/freebsd-x64": "0.21.5",
- "@esbuild/linux-arm": "0.21.5",
- "@esbuild/linux-arm64": "0.21.5",
- "@esbuild/linux-ia32": "0.21.5",
- "@esbuild/linux-loong64": "0.21.5",
- "@esbuild/linux-mips64el": "0.21.5",
- "@esbuild/linux-ppc64": "0.21.5",
- "@esbuild/linux-riscv64": "0.21.5",
- "@esbuild/linux-s390x": "0.21.5",
- "@esbuild/linux-x64": "0.21.5",
- "@esbuild/netbsd-x64": "0.21.5",
- "@esbuild/openbsd-x64": "0.21.5",
- "@esbuild/sunos-x64": "0.21.5",
- "@esbuild/win32-arm64": "0.21.5",
- "@esbuild/win32-ia32": "0.21.5",
- "@esbuild/win32-x64": "0.21.5"
+ "@hapi/hoek": "^11.0.2"
}
},
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
- },
- "fastify": {
- "version": "4.15.0",
- "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.15.0.tgz",
- "integrity": "sha512-m/CaRN8nf5uyYdrDe2qqq+0z3oGyE+A++qlKQoLJTI4WI0nWK9D6R3FxXQ3MVwt/md977GMR4F43pE9oqrS2zw==",
- "dev": true,
- "requires": {
- "@fastify/ajv-compiler": "^3.5.0",
- "@fastify/error": "^3.0.0",
- "@fastify/fast-json-stringify-compiler": "^4.2.0",
- "abstract-logging": "^2.0.1",
- "avvio": "^8.2.0",
- "fast-content-type-parse": "^1.0.0",
- "find-my-way": "^7.6.0",
- "light-my-request": "^5.6.1",
- "pino": "^8.5.0",
- "process-warning": "^2.0.0",
- "proxy-addr": "^2.0.7",
- "rfdc": "^1.3.0",
- "secure-json-parse": "^2.5.0",
- "semver": "^7.3.7",
- "tiny-lru": "^10.0.0"
- }
- },
- "generic-pool": {
- "version": "3.9.0",
- "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.9.0.tgz",
- "integrity": "sha512-hymDOu5B53XvN4QT9dBmZxPX4CWhBPPLguTZ9MMFeFa/Kg0xWVfylOVNlJji/E7yTZWFd/q9GO5TxDLq156D7g==",
+ }
+ }
+ },
+ "@hapi/podium": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/podium/-/podium-5.0.1.tgz",
+ "integrity": "sha512-eznFTw6rdBhAijXFIlBOMJJd+lXTvqbrBIS4Iu80r2KTVIo4g+7fLy4NKp/8+UnSt5Ox6mJtAlKBU/Sf5080TQ==",
+ "dev": true,
+ "requires": {
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/teamwork": "^6.0.0",
+ "@hapi/validate": "^2.0.1"
+ },
+ "dependencies": {
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
- },
- "ieee754": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
- "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
+ }
+ }
+ },
+ "@hapi/shot": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/shot/-/shot-6.0.1.tgz",
+ "integrity": "sha512-s5ynMKZXYoDd3dqPw5YTvOR/vjHvMTxc388+0qL0jZZP1+uwXuUD32o9DuuuLsmTlyXCWi02BJl1pBpwRuUrNA==",
+ "dev": true,
+ "requires": {
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/validate": "^2.0.1"
+ },
+ "dependencies": {
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
- },
- "pino": {
- "version": "8.21.0",
- "resolved": "https://registry.npmjs.org/pino/-/pino-8.21.0.tgz",
- "integrity": "sha512-ip4qdzjkAyDDZklUaZkcRFb2iA118H9SgRh8yzTkSQK8HilsOJF7rSY8HoW5+I0M46AZgX/pxbprf2vvzQCE0Q==",
+ }
+ }
+ },
+ "@hapi/somever": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/@hapi/somever/-/somever-4.1.1.tgz",
+ "integrity": "sha512-lt3QQiDDOVRatS0ionFDNrDIv4eXz58IibQaZQDOg4DqqdNme8oa0iPWcE0+hkq/KTeBCPtEOjDOBKBKwDumVg==",
+ "dev": true,
+ "requires": {
+ "@hapi/bounce": "^3.0.1",
+ "@hapi/hoek": "^11.0.2"
+ },
+ "dependencies": {
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ }
+ }
+ },
+ "@hapi/statehood": {
+ "version": "8.1.1",
+ "resolved": "https://registry.npmjs.org/@hapi/statehood/-/statehood-8.1.1.tgz",
+ "integrity": "sha512-YbK7PSVUA59NArAW5Np0tKRoIZ5VNYUicOk7uJmWZF6XyH5gGL+k62w77SIJb0AoAJ0QdGQMCQ/WOGL1S3Ydow==",
+ "dev": true,
+ "requires": {
+ "@hapi/boom": "^10.0.1",
+ "@hapi/bounce": "^3.0.1",
+ "@hapi/bourne": "^3.0.0",
+ "@hapi/cryptiles": "^6.0.1",
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/iron": "^7.0.1",
+ "@hapi/validate": "^2.0.1"
+ },
+ "dependencies": {
+ "@hapi/b64": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/b64/-/b64-6.0.1.tgz",
+ "integrity": "sha512-ZvjX4JQReUmBheeCq+S9YavcnMMHWqx3S0jHNXWIM1kQDxB9cyfSycpVvjfrKcIS8Mh5N3hmu/YKo4Iag9g2Kw==",
"dev": true,
"requires": {
- "atomic-sleep": "^1.0.0",
- "fast-redact": "^3.1.1",
- "on-exit-leak-free": "^2.1.0",
- "pino-abstract-transport": "^1.2.0",
- "pino-std-serializers": "^6.0.0",
- "process-warning": "^3.0.0",
- "quick-format-unescaped": "^4.0.3",
- "real-require": "^0.2.0",
- "safe-stable-stringify": "^2.3.1",
- "sonic-boom": "^3.7.0",
- "thread-stream": "^2.6.0"
- },
- "dependencies": {
- "process-warning": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz",
- "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==",
- "dev": true
- }
+ "@hapi/hoek": "^11.0.2"
}
},
- "pino-abstract-transport": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz",
- "integrity": "sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q==",
- "dev": true,
- "requires": {
- "readable-stream": "^4.0.0",
- "split2": "^4.0.0"
- }
+ "@hapi/bourne": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-3.0.0.tgz",
+ "integrity": "sha512-Waj1cwPXJDucOib4a3bAISsKJVb15MKi9IvmTI/7ssVEm6sywXGjVJDhl6/umt1pK1ZS7PacXU3A1PmFKHEZ2w==",
+ "dev": true
},
- "readable-stream": {
- "version": "4.5.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz",
- "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==",
+ "@hapi/cryptiles": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/cryptiles/-/cryptiles-6.0.1.tgz",
+ "integrity": "sha512-9GM9ECEHfR8lk5ASOKG4+4ZsEzFqLfhiryIJ2ISePVB92OHLp/yne4m+zn7z9dgvM98TLpiFebjDFQ0UHcqxXQ==",
"dev": true,
"requires": {
- "abort-controller": "^3.0.0",
- "buffer": "^6.0.3",
- "events": "^3.3.0",
- "process": "^0.11.10",
- "string_decoder": "^1.3.0"
+ "@hapi/boom": "^10.0.1"
}
},
- "redis": {
- "version": "4.7.0",
- "resolved": "https://registry.npmjs.org/redis/-/redis-4.7.0.tgz",
- "integrity": "sha512-zvmkHEAdGMn+hMRXuMBtu4Vo5P6rHQjLoHftu+lBqq8ZTA3RCVC/WzD790bkKKiNFp7d5/9PcSD19fJyyRvOdQ==",
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ },
+ "@hapi/iron": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/iron/-/iron-7.0.1.tgz",
+ "integrity": "sha512-tEZnrOujKpS6jLKliyWBl3A9PaE+ppuL/+gkbyPPDb/l2KSKQyH4lhMkVb+sBhwN+qaxxlig01JRqB8dk/mPxQ==",
"dev": true,
"requires": {
- "@redis/bloom": "1.2.0",
- "@redis/client": "1.6.0",
- "@redis/graph": "1.1.1",
- "@redis/json": "1.0.7",
- "@redis/search": "1.2.0",
- "@redis/time-series": "1.1.0"
+ "@hapi/b64": "^6.0.1",
+ "@hapi/boom": "^10.0.1",
+ "@hapi/bourne": "^3.0.0",
+ "@hapi/cryptiles": "^6.0.1",
+ "@hapi/hoek": "^11.0.2"
}
- },
- "split2": {
- "version": "4.2.0",
- "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz",
- "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==",
- "dev": true
- },
- "tiny-lru": {
- "version": "10.4.1",
- "resolved": "https://registry.npmjs.org/tiny-lru/-/tiny-lru-10.4.1.tgz",
- "integrity": "sha512-buLIzw7ppqymuO3pt10jHk/6QMeZLbidihMQU+N6sogF6EnBzG0qtDWIHuhw1x3dyNgVL/KTGIZsTK81+yCzLg==",
- "dev": true
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ }
+ }
+ },
+ "@hapi/subtext": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/@hapi/subtext/-/subtext-8.1.0.tgz",
+ "integrity": "sha512-PyaN4oSMtqPjjVxLny1k0iYg4+fwGusIhaom9B2StinBclHs7v46mIW706Y+Wo21lcgulGyXbQrmT/w4dus6ww==",
+ "dev": true,
+ "requires": {
+ "@hapi/boom": "^10.0.1",
+ "@hapi/bourne": "^3.0.0",
+ "@hapi/content": "^6.0.0",
+ "@hapi/file": "^3.0.0",
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/pez": "^6.1.0",
+ "@hapi/wreck": "^18.0.1"
+ },
+ "dependencies": {
+ "@hapi/bourne": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-3.0.0.tgz",
+ "integrity": "sha512-Waj1cwPXJDucOib4a3bAISsKJVb15MKi9IvmTI/7ssVEm6sywXGjVJDhl6/umt1pK1ZS7PacXU3A1PmFKHEZ2w==",
+ "dev": true
+ },
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
}
}
},
- "@opentelemetry/exporter-jaeger": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.25.0.tgz",
- "integrity": "sha512-6h2dCpdOB2W2mxdH/6w6DZeev5Zc3X2rUlCWKMCUnKko36aTfbiVxgXHffs0pc3w5JmMtKIVkHg8eamvLA+Klw==",
- "requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0",
- "jaeger-client": "^3.15.0"
- }
- },
- "@opentelemetry/exporter-trace-otlp-grpc": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-grpc/-/exporter-trace-otlp-grpc-0.52.0.tgz",
- "integrity": "sha512-Ln3HU54/ytTeEMrDGNDj01357YV8Kk9PkGDHvBRo1n7bWhwZoTEnX/cTuXLYOiygBIJJjCCM+VMfWCnvtFl4Kw==",
- "requires": {
- "@grpc/grpc-js": "^1.7.1",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/otlp-grpc-exporter-base": "0.52.0",
- "@opentelemetry/otlp-transformer": "0.52.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0"
- }
+ "@hapi/teamwork": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/teamwork/-/teamwork-6.0.0.tgz",
+ "integrity": "sha512-05HumSy3LWfXpmJ9cr6HzwhAavrHkJ1ZRCmNE2qJMihdM5YcWreWPfyN0yKT2ZjCM92au3ZkuodjBxOibxM67A==",
+ "dev": true
},
- "@opentelemetry/exporter-trace-otlp-http": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.52.0.tgz",
- "integrity": "sha512-umj9tOSEAuUdqw2EZua1Dby3c+FZ6xWGT2OF/KGLFLtyIvxhtTOSeMfBy/9CaxHn4vF8mAynmAP5MvVKnRYunA==",
+ "@hapi/topo": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz",
+ "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==",
+ "dev": true,
"requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/otlp-exporter-base": "0.52.0",
- "@opentelemetry/otlp-transformer": "0.52.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0"
+ "@hapi/hoek": "^9.0.0"
}
},
- "@opentelemetry/exporter-trace-otlp-proto": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-proto/-/exporter-trace-otlp-proto-0.52.0.tgz",
- "integrity": "sha512-mpMEZFGaGnvon5pbjLieh7ffE9BuYnrG7qd4O5P3j1fk/4PCR3BcGfGhIfyZi0X8kBcjEhipiBfaHYqI7rxcXg==",
+ "@hapi/validate": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/validate/-/validate-2.0.1.tgz",
+ "integrity": "sha512-NZmXRnrSLK8MQ9y/CMqE9WSspgB9xA41/LlYR0k967aSZebWr4yNrpxIbov12ICwKy4APSlWXZga9jN5p6puPA==",
+ "dev": true,
"requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/otlp-exporter-base": "0.52.0",
- "@opentelemetry/otlp-transformer": "0.52.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0"
+ "@hapi/hoek": "^11.0.2",
+ "@hapi/topo": "^6.0.1"
+ },
+ "dependencies": {
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ },
+ "@hapi/topo": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-6.0.2.tgz",
+ "integrity": "sha512-KR3rD5inZbGMrHmgPxsJ9dbi6zEK+C3ZwUwTa+eMwWLz7oijWUTWD2pMSNNYJAU6Qq+65NkxXjqHr/7LM2Xkqg==",
+ "dev": true,
+ "requires": {
+ "@hapi/hoek": "^11.0.2"
+ }
+ }
}
},
- "@opentelemetry/exporter-zipkin": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.25.0.tgz",
- "integrity": "sha512-nnhY0e5DHg8BfUSNCQZoGZnGeqz+zMTeEUOh1dfgtaXmF99uM0QPuTa1i2lH+eZqebP8w1WDWZlewu9FUlHqIg==",
+ "@hapi/vise": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@hapi/vise/-/vise-5.0.1.tgz",
+ "integrity": "sha512-XZYWzzRtINQLedPYlIkSkUr7m5Ddwlu99V9elh8CSygXstfv3UnWIXT0QD+wmR0VAG34d2Vx3olqcEhRRoTu9A==",
+ "dev": true,
"requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "@hapi/hoek": "^11.0.2"
+ },
+ "dependencies": {
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
+ "dev": true
+ }
}
},
- "@opentelemetry/host-metrics": {
- "version": "file:packages/opentelemetry-host-metrics",
+ "@hapi/wreck": {
+ "version": "18.1.0",
+ "resolved": "https://registry.npmjs.org/@hapi/wreck/-/wreck-18.1.0.tgz",
+ "integrity": "sha512-0z6ZRCmFEfV/MQqkQomJ7sl/hyxvcZM7LtuVqN3vdAO4vM9eBbowl0kaqQj9EJJQab+3Uuh1GxbGIBFy4NfJ4w==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/sdk-metrics": "^1.8.0",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "systeminformation": "5.22.9",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@hapi/boom": "^10.0.1",
+ "@hapi/bourne": "^3.0.0",
+ "@hapi/hoek": "^11.0.2"
},
"dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "@hapi/bourne": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@hapi/bourne/-/bourne-3.0.0.tgz",
+ "integrity": "sha512-Waj1cwPXJDucOib4a3bAISsKJVb15MKi9IvmTI/7ssVEm6sywXGjVJDhl6/umt1pK1ZS7PacXU3A1PmFKHEZ2w==",
+ "dev": true
+ },
+ "@hapi/hoek": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-11.0.4.tgz",
+ "integrity": "sha512-PnsP5d4q7289pS2T2EgGz147BFJ2Jpb4yrEdkpz2IhgEUzos1S7HTl7ezWh1yfYzYlj89KzLdCRkqsP6SIryeQ==",
"dev": true
}
}
},
- "@opentelemetry/id-generator-aws-xray": {
- "version": "file:packages/opentelemetry-id-generator-aws-xray",
+ "@humanwhocodes/config-array": {
+ "version": "0.9.5",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.9.5.tgz",
+ "integrity": "sha512-ObyMyWxZiCu/yTisA7uzx81s40xR2fD5Cg/2Kq7G02ajkNubJf6BopgDTmDyc3U7sXpNKM8cYOw7s7Tyr+DnCw==",
+ "dev": true,
"requires": {
- "@babel/core": "7.24.6",
- "@babel/preset-env": "7.24.6",
- "@opentelemetry/api": "^1.0.0",
- "@opentelemetry/core": "^1.0.0",
- "@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
- "@types/webpack-env": "1.16.3",
- "assert": "2.0.0",
- "babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
- "karma-chrome-launcher": "3.1.0",
- "karma-coverage": "2.2.1",
- "karma-mocha": "2.0.1",
- "karma-spec-reporter": "0.0.36",
- "karma-webpack": "5.0.1",
- "mocha": "10.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.1.2",
- "ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4",
- "webpack": "5.89.0",
- "webpack-cli": "5.1.4",
- "webpack-merge": "5.10.0"
+ "@humanwhocodes/object-schema": "^1.2.1",
+ "debug": "^4.1.1",
+ "minimatch": "^3.0.4"
},
"dependencies": {
- "@babel/core": {
- "version": "7.24.6",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
- "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
- "dev": true,
- "requires": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.24.6",
- "@babel/generator": "^7.24.6",
- "@babel/helper-compilation-targets": "^7.24.6",
- "@babel/helper-module-transforms": "^7.24.6",
- "@babel/helpers": "^7.24.6",
- "@babel/parser": "^7.24.6",
- "@babel/template": "^7.24.6",
- "@babel/traverse": "^7.24.6",
- "@babel/types": "^7.24.6",
- "convert-source-map": "^2.0.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.3",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
- }
- },
- "@sinonjs/commons": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
- "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
- "dev": true,
- "requires": {
- "type-detect": "4.0.8"
- }
- },
- "@types/mocha": {
- "version": "10.0.6",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
- "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
- "dev": true
- },
- "@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
+ "minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
"requires": {
- "@types/sinonjs__fake-timers": "*"
+ "brace-expansion": "^1.1.7"
}
- },
- "ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
+ }
+ }
+ },
+ "@humanwhocodes/object-schema": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz",
+ "integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
+ "dev": true
+ },
+ "@hutson/parse-repository-url": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz",
+ "integrity": "sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q==",
+ "dev": true
+ },
+ "@ioredis/commands": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@ioredis/commands/-/commands-1.2.0.tgz",
+ "integrity": "sha512-Sx1pU8EM64o2BrqNpEO1CNLtKQwyhuXuqyfH7oGKCk+1a33d2r5saW8zNwm3j6BTExtjrv2BxTgzzkMwts6vGg==",
+ "dev": true
+ },
+ "@isaacs/cliui": {
+ "version": "8.0.2",
+ "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
+ "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
+ "dev": true,
+ "requires": {
+ "string-width": "^5.1.2",
+ "string-width-cjs": "npm:string-width@^4.2.0",
+ "strip-ansi": "^7.0.1",
+ "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
+ "wrap-ansi": "^8.1.0",
+ "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
+ "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
"dev": true
},
"ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "version": "6.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.1.tgz",
+ "integrity": "sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug==",
"dev": true
},
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "dependencies": {
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
- }
- },
- "chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
- "dev": true,
- "requires": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "fsevents": "~2.3.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- }
+ "emoji-regex": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
+ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
+ "dev": true
},
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "string-width": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
+ "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
"dev": true,
"requires": {
- "color-name": "~1.1.4"
+ "eastasianwidth": "^0.2.0",
+ "emoji-regex": "^9.2.2",
+ "strip-ansi": "^7.0.1"
}
},
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
- },
- "decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
- "dev": true
- },
- "diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
- "dev": true
- },
- "enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
+ "strip-ansi": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz",
+ "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==",
"dev": true,
"requires": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
+ "ansi-regex": "^6.0.1"
}
},
- "escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true
- },
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true
- },
- "glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
+ "wrap-ansi": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
+ "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
"dev": true,
"requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "dependencies": {
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- }
+ "ansi-styles": "^6.1.0",
+ "string-width": "^5.0.1",
+ "strip-ansi": "^7.0.1"
}
- },
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ }
+ }
+ },
+ "@isaacs/string-locale-compare": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@isaacs/string-locale-compare/-/string-locale-compare-1.1.0.tgz",
+ "integrity": "sha512-SQ7Kzhh9+D+ZW9MA0zkYv3VXhIDNx+LzM6EJ+/65I3QY+enU6Itte7E5XX7EWrqLW2FN4n06GWzBnPoC3th2aQ==",
+ "dev": true
+ },
+ "@istanbuljs/load-nyc-config": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz",
+ "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==",
+ "dev": true,
+ "requires": {
+ "camelcase": "^5.3.1",
+ "find-up": "^4.1.0",
+ "get-package-type": "^0.1.0",
+ "js-yaml": "^3.13.1",
+ "resolve-from": "^5.0.0"
+ },
+ "dependencies": {
+ "argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
"dev": true,
"requires": {
- "is-glob": "^4.0.1"
+ "sprintf-js": "~1.0.2"
}
},
- "is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
- "dev": true
- },
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
- "log-symbols": {
+ "find-up": {
"version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
"dev": true,
"requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
+ "locate-path": "^5.0.0",
+ "path-exists": "^4.0.0"
}
},
- "minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+ "js-yaml": {
+ "version": "3.14.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
+ "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
"dev": true,
"requires": {
- "brace-expansion": "^2.0.1"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "requires": {
- "balanced-match": "^1.0.0"
- }
- }
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
}
},
- "mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
+ "locate-path": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
"dev": true,
"requires": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
+ "p-locate": "^4.1.0"
}
},
- "ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- },
- "nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
- "dev": true
- },
- "schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+ "p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
"dev": true,
"requires": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
+ "p-try": "^2.0.0"
}
},
- "sinon": {
- "version": "15.1.2",
- "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
- "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ "p-locate": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
"dev": true,
"requires": {
- "@sinonjs/commons": "^3.0.0",
- "@sinonjs/fake-timers": "^10.1.0",
- "@sinonjs/samsam": "^8.0.0",
- "diff": "^5.1.0",
- "nise": "^5.1.4",
- "supports-color": "^7.2.0"
- },
- "dependencies": {
- "diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "p-limit": "^2.2.0"
}
},
- "source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "resolve-from": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
"dev": true
},
- "tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
"dev": true
- },
- "ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
+ }
+ }
+ },
+ "@istanbuljs/schema": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz",
+ "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==",
+ "dev": true
+ },
+ "@jest/expect-utils": {
+ "version": "29.7.0",
+ "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-29.7.0.tgz",
+ "integrity": "sha512-GlsNBWiFQFCVi9QVSx7f5AgMeLxe9YCCs5PuP2O2LdjDAA8Jh9eX7lA1Jq/xdXw3Wb3hyvlFNfZIfcRetSzYcA==",
+ "dev": true,
+ "requires": {
+ "jest-get-type": "^29.6.3"
+ }
+ },
+ "@jest/schemas": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-29.6.3.tgz",
+ "integrity": "sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==",
+ "dev": true,
+ "requires": {
+ "@sinclair/typebox": "^0.27.8"
+ }
+ },
+ "@jest/types": {
+ "version": "29.6.3",
+ "resolved": "https://registry.npmjs.org/@jest/types/-/types-29.6.3.tgz",
+ "integrity": "sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==",
+ "dev": true,
+ "requires": {
+ "@jest/schemas": "^29.6.3",
+ "@types/istanbul-lib-coverage": "^2.0.0",
+ "@types/istanbul-reports": "^3.0.0",
+ "@types/node": "*",
+ "@types/yargs": "^17.0.8",
+ "chalk": "^4.0.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
"requires": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
+ "color-convert": "^2.0.1"
}
},
- "webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
"requires": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
}
},
- "yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"requires": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
+ "color-name": "~1.1.4"
}
},
- "yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"requires": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
+ "has-flag": "^4.0.0"
}
}
}
},
- "@opentelemetry/instrumentation": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.52.0.tgz",
- "integrity": "sha512-LPwSIrw+60cheWaXsfGL8stBap/AppKQJFE+qqRvzYrgttXFH2ofoIMxWadeqPTq4BYOXM/C7Bdh/T+B60xnlQ==",
+ "@jridgewell/gen-mapping": {
+ "version": "0.3.5",
+ "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.5.tgz",
+ "integrity": "sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==",
+ "dev": true,
"requires": {
- "@opentelemetry/api-logs": "0.52.0",
- "@types/shimmer": "^1.0.2",
- "import-in-the-middle": "1.8.0",
- "require-in-the-middle": "^7.1.1",
- "semver": "^7.5.2",
- "shimmer": "^1.2.1"
+ "@jridgewell/set-array": "^1.2.1",
+ "@jridgewell/sourcemap-codec": "^1.4.10",
+ "@jridgewell/trace-mapping": "^0.3.24"
}
},
- "@opentelemetry/instrumentation-amqplib": {
- "version": "file:plugins/node/instrumentation-amqplib",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/amqplib": "^0.5.17",
- "@types/lodash": "4.14.199",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "amqplib": "0.8.0",
- "expect": "29.2.0",
- "lodash": "4.17.21",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "sinon": "15.2.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
- "dev": true
- }
- }
+ "@jridgewell/resolve-uri": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz",
+ "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==",
+ "dev": true
},
- "@opentelemetry/instrumentation-aws-lambda": {
- "version": "file:plugins/node/opentelemetry-instrumentation-aws-lambda",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/propagator-aws-xray": "^1.3.1",
- "@opentelemetry/resources": "^1.8.0",
- "@opentelemetry/sdk-metrics": "^1.8.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/aws-lambda": "8.10.122",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- }
+ "@jridgewell/set-array": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/@jridgewell/set-array/-/set-array-1.2.1.tgz",
+ "integrity": "sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==",
+ "dev": true
},
- "@opentelemetry/instrumentation-aws-sdk": {
- "version": "file:plugins/node/opentelemetry-instrumentation-aws-sdk",
+ "@jridgewell/source-map": {
+ "version": "0.3.6",
+ "resolved": "https://registry.npmjs.org/@jridgewell/source-map/-/source-map-0.3.6.tgz",
+ "integrity": "sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==",
+ "dev": true,
"requires": {
- "@aws-sdk/client-dynamodb": "3.85.0",
- "@aws-sdk/client-lambda": "3.85.0",
- "@aws-sdk/client-s3": "3.85.0",
- "@aws-sdk/client-sns": "3.85.0",
- "@aws-sdk/client-sqs": "3.85.0",
- "@aws-sdk/types": "3.78.0",
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/propagation-utils": "^0.30.10",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "aws-sdk": "2.1008.0",
- "eslint": "8.7.0",
- "expect": "29.2.0",
- "mocha": "7.2.0",
- "nock": "13.3.3",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
- "dev": true
- }
+ "@jridgewell/gen-mapping": "^0.3.5",
+ "@jridgewell/trace-mapping": "^0.3.25"
}
},
- "@opentelemetry/instrumentation-bunyan": {
- "version": "file:plugins/node/opentelemetry-instrumentation-bunyan",
+ "@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==",
+ "dev": true
+ },
+ "@jridgewell/trace-mapping": {
+ "version": "0.3.25",
+ "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.25.tgz",
+ "integrity": "sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/api-logs": "^0.52.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/resources": "^1.8.0",
- "@opentelemetry/sdk-logs": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
- "@types/bunyan": "1.8.9",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "bunyan": "1.8.15",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/bunyan": {
- "version": "1.8.9",
- "resolved": "https://registry.npmjs.org/@types/bunyan/-/bunyan-1.8.9.tgz",
- "integrity": "sha512-ZqS9JGpBxVOvsawzmVt30sP++gSQMTejCkIAQ3VdadOcRE8izTyW66hufvwLeH+YEGP6Js2AW7Gz+RMyvrEbmw==",
- "requires": {
- "@types/node": "*"
- }
- }
+ "@jridgewell/resolve-uri": "^3.1.0",
+ "@jridgewell/sourcemap-codec": "^1.4.14"
}
},
- "@opentelemetry/instrumentation-cassandra-driver": {
- "version": "file:plugins/node/opentelemetry-instrumentation-cassandra",
+ "@js-joda/core": {
+ "version": "5.6.1",
+ "resolved": "https://registry.npmjs.org/@js-joda/core/-/core-5.6.1.tgz",
+ "integrity": "sha512-Xla/d7ZMMR6+zRd6lTio0wRZECfcfFJP7GGe9A9L4tDOlD5CX4YcZ4YZle9w58bBYzssojVapI84RraKWDQZRg==",
+ "dev": true
+ },
+ "@jsdevtools/coverage-istanbul-loader": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@jsdevtools/coverage-istanbul-loader/-/coverage-istanbul-loader-3.0.5.tgz",
+ "integrity": "sha512-EUCPEkaRPvmHjWAAZkWMT7JDzpw7FKB00WTISaiXsbNOd5hCHg77XLA8sLYLFDo1zepYLo2w7GstN8YBqRXZfA==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "@types/sinon": "10.0.18",
- "cassandra-driver": "4.6.4",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "convert-source-map": "^1.7.0",
+ "istanbul-lib-instrument": "^4.0.3",
+ "loader-utils": "^2.0.0",
+ "merge-source-map": "^1.1.0",
+ "schema-utils": "^2.7.0"
}
},
- "@opentelemetry/instrumentation-connect": {
- "version": "file:plugins/node/opentelemetry-instrumentation-connect",
+ "@koa/router": {
+ "version": "12.0.1",
+ "resolved": "https://registry.npmjs.org/@koa/router/-/router-12.0.1.tgz",
+ "integrity": "sha512-ribfPYfHb+Uw3b27Eiw6NPqjhIhTpVFzEWLwyc/1Xp+DCdwRRyIlAUODX+9bPARF6aQtUu1+/PHzdNvRzcs/+Q==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/connect": "3.4.36",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "connect": "3.7.0",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "debug": "^4.3.4",
+ "http-errors": "^2.0.0",
+ "koa-compose": "^4.1.0",
+ "methods": "^1.1.2",
+ "path-to-regexp": "^6.2.1"
},
"dependencies": {
- "@types/connect": {
- "version": "3.4.36",
- "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz",
- "integrity": "sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==",
- "requires": {
- "@types/node": "*"
- }
+ "path-to-regexp": {
+ "version": "6.2.2",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.2.tgz",
+ "integrity": "sha512-GQX3SSMokngb36+whdpRXE+3f9V8UzyAorlYvOGx87ufGHehNTn5lCxrKtLyZ4Yl/wEKnNnr98ZzOwwDZV5ogw==",
+ "dev": true
}
}
},
- "@opentelemetry/instrumentation-cucumber": {
- "version": "file:plugins/node/instrumentation-cucumber",
+ "@lerna/child-process": {
+ "version": "6.6.2",
+ "resolved": "https://registry.npmjs.org/@lerna/child-process/-/child-process-6.6.2.tgz",
+ "integrity": "sha512-QyKIWEnKQFnYu2ey+SAAm1A5xjzJLJJj3bhIZd3QKyXKKjaJ0hlxam/OsWSltxTNbcyH1jRJjC6Cxv31usv0Ag==",
+ "dev": true,
"requires": {
- "@cucumber/cucumber": "^9.0.0",
- "@opentelemetry/api": "^1.0.0",
- "@opentelemetry/core": "^1.3.1",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.3.1",
- "@opentelemetry/sdk-trace-node": "^1.3.1",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "7.0.2",
- "@types/semver": "7.5.3",
- "@types/shimmer": "1.0.3",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
- "sinon": "15.2.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "chalk": "^4.1.0",
+ "execa": "^5.0.0",
+ "strong-log-transformer": "^2.1.0"
},
"dependencies": {
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
"requires": {
- "yallist": "^4.0.0"
+ "color-convert": "^2.0.1"
}
},
- "semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
"requires": {
- "lru-cache": "^6.0.0"
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
}
},
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- }
- }
- },
- "@opentelemetry/instrumentation-dataloader": {
- "version": "file:plugins/node/instrumentation-dataloader",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "dataloader": "2.2.2",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- }
- },
- "@opentelemetry/instrumentation-dns": {
- "version": "file:plugins/node/opentelemetry-instrumentation-dns",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "@types/shimmer": "1.0.3",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "^7.5.4",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- }
- },
- "@opentelemetry/instrumentation-document-load": {
- "version": "file:plugins/web/opentelemetry-instrumentation-document-load",
- "requires": {
- "@babel/core": "7.22.17",
- "@jsdevtools/coverage-istanbul-loader": "3.0.5",
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.0.0",
- "@opentelemetry/sdk-trace-web": "^1.15.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@rollup/plugin-commonjs": "^26.0.0",
- "@rollup/plugin-node-resolve": "^15.2.3",
- "@types/chai": "^4.3.10",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "@web/dev-server-esbuild": "^1.0.1",
- "@web/dev-server-rollup": "^0.6.1",
- "@web/test-runner": "^0.18.0",
- "chai": "^4.3.10",
- "sinon": "15.2.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
}
}
},
- "@opentelemetry/instrumentation-express": {
- "version": "file:plugins/node/opentelemetry-instrumentation-express",
+ "@lerna/create": {
+ "version": "6.6.2",
+ "resolved": "https://registry.npmjs.org/@lerna/create/-/create-6.6.2.tgz",
+ "integrity": "sha512-xQ+1Y7D+9etvUlE+unhG/TwmM6XBzGIdFBaNoW8D8kyOa9M2Jf3vdEtAxVa7mhRz66CENfhL/+I/QkVaa7pwbQ==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/express": "4.17.18",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "express": "4.19.2",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@lerna/child-process": "6.6.2",
+ "dedent": "^0.7.0",
+ "fs-extra": "^9.1.0",
+ "init-package-json": "^3.0.2",
+ "npm-package-arg": "8.1.1",
+ "p-reduce": "^2.1.0",
+ "pacote": "15.1.1",
+ "pify": "^5.0.0",
+ "semver": "^7.3.4",
+ "slash": "^3.0.0",
+ "validate-npm-package-license": "^3.0.4",
+ "validate-npm-package-name": "^4.0.0",
+ "yargs-parser": "20.2.4"
}
},
- "@opentelemetry/instrumentation-fastify": {
- "version": "file:plugins/node/opentelemetry-instrumentation-fastify",
+ "@lerna/legacy-package-management": {
+ "version": "6.6.2",
+ "resolved": "https://registry.npmjs.org/@lerna/legacy-package-management/-/legacy-package-management-6.6.2.tgz",
+ "integrity": "sha512-0hZxUPKnHwehUO2xC4ldtdX9bW0W1UosxebDIQlZL2STnZnA2IFmIk2lJVUyFW+cmTPQzV93jfS0i69T9Z+teg==",
+ "dev": true,
"requires": {
- "@fastify/express": "^3.0.0",
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/instrumentation-http": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/express": "4.17.18",
- "@types/mocha": "7.0.2",
- "@types/node": "18.15.3",
- "@types/semver": "7.5.5",
- "fastify": "4.18.0",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "^7.5.4",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@npmcli/arborist": "6.2.3",
+ "@npmcli/run-script": "4.1.7",
+ "@nrwl/devkit": ">=15.5.2 < 16",
+ "@octokit/rest": "19.0.3",
+ "byte-size": "7.0.0",
+ "chalk": "4.1.0",
+ "clone-deep": "4.0.1",
+ "cmd-shim": "5.0.0",
+ "columnify": "1.6.0",
+ "config-chain": "1.1.12",
+ "conventional-changelog-core": "4.2.4",
+ "conventional-recommended-bump": "6.1.0",
+ "cosmiconfig": "7.0.0",
+ "dedent": "0.7.0",
+ "dot-prop": "6.0.1",
+ "execa": "5.0.0",
+ "file-url": "3.0.0",
+ "find-up": "5.0.0",
+ "fs-extra": "9.1.0",
+ "get-port": "5.1.1",
+ "get-stream": "6.0.0",
+ "git-url-parse": "13.1.0",
+ "glob-parent": "5.1.2",
+ "globby": "11.1.0",
+ "graceful-fs": "4.2.10",
+ "has-unicode": "2.0.1",
+ "inquirer": "8.2.4",
+ "is-ci": "2.0.0",
+ "is-stream": "2.0.0",
+ "libnpmpublish": "7.1.4",
+ "load-json-file": "6.2.0",
+ "make-dir": "3.1.0",
+ "minimatch": "3.0.5",
+ "multimatch": "5.0.0",
+ "node-fetch": "2.6.7",
+ "npm-package-arg": "8.1.1",
+ "npm-packlist": "5.1.1",
+ "npm-registry-fetch": "14.0.3",
+ "npmlog": "6.0.2",
+ "p-map": "4.0.0",
+ "p-map-series": "2.1.0",
+ "p-queue": "6.6.2",
+ "p-waterfall": "2.1.1",
+ "pacote": "15.1.1",
+ "pify": "5.0.0",
+ "pretty-format": "29.4.3",
+ "read-cmd-shim": "3.0.0",
+ "read-package-json": "5.0.1",
+ "resolve-from": "5.0.0",
+ "semver": "7.3.8",
+ "signal-exit": "3.0.7",
+ "slash": "3.0.0",
+ "ssri": "9.0.1",
+ "strong-log-transformer": "2.1.0",
+ "tar": "6.1.11",
+ "temp-dir": "1.0.0",
+ "tempy": "1.0.0",
+ "upath": "2.0.1",
+ "uuid": "8.3.2",
+ "write-file-atomic": "4.0.1",
+ "write-pkg": "4.0.0",
+ "yargs": "16.2.0"
},
"dependencies": {
- "@types/node": {
- "version": "18.15.3",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.3.tgz",
- "integrity": "sha512-p6ua9zBxz5otCmbpb5D3U4B5Nanw6Pk3PPyX05xnxbB/fRv71N7CPmORg7uAD5P70T0xmx1pzAx/FUfa5X+3cw==",
+ "@tootallnate/once": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
+ "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
"dev": true
},
- "@types/semver": {
- "version": "7.5.5",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.5.tgz",
- "integrity": "sha512-+d+WYC1BxJ6yVOgUgzK8gWvp5qF8ssV5r4nsDcZWKRWcDQLQ619tvWAxJQYGgBrO1MnLJC7a5GtiYsAoQ47dJg==",
+ "agent-base": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
+ "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
+ "dev": true,
+ "requires": {
+ "debug": "4"
+ }
+ },
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "chalk": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz",
+ "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
- }
- }
- },
- "@opentelemetry/instrumentation-fetch": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-fetch/-/instrumentation-fetch-0.52.0.tgz",
- "integrity": "sha512-ay1Ot0z/586MBnhZnWJJFWXjBCQjddVVjCxLPRECnorhzmXuOsjUb7zTY88Vv9ddRtcHe0EIp9Z8sWQeLT02kA==",
- "requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/instrumentation": "0.52.0",
- "@opentelemetry/sdk-trace-web": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
- }
- },
- "@opentelemetry/instrumentation-fs": {
- "version": "file:plugins/node/instrumentation-fs",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/resources": "^1.8.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "^10.0.11",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- }
- },
- "@opentelemetry/instrumentation-generic-pool": {
- "version": "file:plugins/node/opentelemetry-instrumentation-generic-pool",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@types/generic-pool": "^3.1.9",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "generic-pool": "3.8.2",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ },
+ "glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
"dev": true,
"requires": {
- "yallist": "^4.0.0"
+ "is-glob": "^4.0.1"
}
},
- "semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "graceful-fs": {
+ "version": "4.2.10",
+ "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz",
+ "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==",
+ "dev": true
+ },
+ "http-proxy-agent": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
+ "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
"dev": true,
"requires": {
- "lru-cache": "^6.0.0"
+ "@tootallnate/once": "2",
+ "agent-base": "6",
+ "debug": "4"
}
},
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "https-proxy-agent": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
+ "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
+ "dev": true,
+ "requires": {
+ "agent-base": "6",
+ "debug": "4"
+ }
+ },
+ "inquirer": {
+ "version": "8.2.4",
+ "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-8.2.4.tgz",
+ "integrity": "sha512-nn4F01dxU8VeKfq192IjLsxu0/OmMZ4Lg3xKAns148rCaXP6ntAoEkVYZThWjwON8AlzdZZi6oqnhNbxUG9hVg==",
+ "dev": true,
+ "requires": {
+ "ansi-escapes": "^4.2.1",
+ "chalk": "^4.1.1",
+ "cli-cursor": "^3.1.0",
+ "cli-width": "^3.0.0",
+ "external-editor": "^3.0.3",
+ "figures": "^3.0.0",
+ "lodash": "^4.17.21",
+ "mute-stream": "0.0.8",
+ "ora": "^5.4.1",
+ "run-async": "^2.4.0",
+ "rxjs": "^7.5.5",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0",
+ "through": "^2.3.6",
+ "wrap-ansi": "^7.0.0"
+ },
+ "dependencies": {
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ }
+ }
+ },
+ "is-stream": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.0.tgz",
+ "integrity": "sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==",
"dev": true
- }
- }
- },
- "@opentelemetry/instrumentation-graphql": {
- "version": "file:plugins/node/opentelemetry-instrumentation-graphql",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "graphql": "^16.5.0",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ },
+ "lru-cache": {
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true
- }
- }
- },
- "@opentelemetry/instrumentation-grpc": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-grpc/-/instrumentation-grpc-0.52.0.tgz",
- "integrity": "sha512-YYhA2pbhMWgF5Hp6eR7AHp1utzZQ3Y0VB8GIwd8zJoLtAuQRZa1N29DUtZ+t/pGRJF+xGPVI+vP+7ugHgeN0zQ==",
- "requires": {
- "@opentelemetry/instrumentation": "0.52.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
- }
- },
- "@opentelemetry/instrumentation-hapi": {
- "version": "file:plugins/node/opentelemetry-instrumentation-hapi",
- "requires": {
- "@hapi/hapi": "21.3.3",
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "joi": "17.12.2",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- }
- },
- "@opentelemetry/instrumentation-http": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-http/-/instrumentation-http-0.52.0.tgz",
- "integrity": "sha512-E6ywZuxTa4LnVXZGwL1oj3e2Eog1yIaNqa8KjKXoGkDNKte9/SjQnePXOmhQYI0A9nf0UyFbP9aKd+yHrkJXUA==",
- "requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/instrumentation": "0.52.0",
- "@opentelemetry/semantic-conventions": "1.25.0",
- "semver": "^7.5.2"
- }
- },
- "@opentelemetry/instrumentation-ioredis": {
- "version": "file:plugins/node/opentelemetry-instrumentation-ioredis",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/redis-common": "^0.36.2",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
- "@types/ioredis4": "npm:@types/ioredis@4.28.10",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "cross-env": "7.0.3",
- "ioredis": "5.2.2",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- }
- },
- "@opentelemetry/instrumentation-kafkajs": {
- "version": "file:plugins/node/instrumentation-kafkajs",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.24.0",
- "@opentelemetry/semantic-conventions": "^1.24.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "^10.0.11",
- "kafkajs": "^2.2.4",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- }
- },
- "@opentelemetry/instrumentation-knex": {
- "version": "file:plugins/node/opentelemetry-instrumentation-knex",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "knex": "0.95.9",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sqlite3": "5.1.6",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- }
- },
- "@opentelemetry/instrumentation-koa": {
- "version": "file:plugins/node/opentelemetry-instrumentation-koa",
- "requires": {
- "@koa/router": "12.0.0",
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/instrumentation-http": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/koa": "2.14.0",
- "@types/koa__router": "12.0.3",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "koa": "2.13.1",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- }
- },
- "@opentelemetry/instrumentation-long-task": {
- "version": "file:plugins/web/opentelemetry-instrumentation-long-task",
- "requires": {
- "@babel/core": "7.24.6",
- "@babel/preset-env": "7.24.6",
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-web": "^1.8.0",
- "@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
- "@types/webpack-env": "1.16.3",
- "assert": "2.0.0",
- "babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
- "karma-chrome-launcher": "3.1.0",
- "karma-coverage": "2.2.1",
- "karma-mocha": "2.0.1",
- "karma-spec-reporter": "0.0.36",
- "karma-webpack": "5.0.1",
- "mocha": "10.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.1.2",
- "ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4",
- "webpack": "5.89.0",
- "webpack-cli": "5.1.4",
- "webpack-merge": "5.10.0",
- "zone.js": "^0.11.4 || ^0.13.0 || ^0.14.0"
- },
- "dependencies": {
- "@babel/core": {
- "version": "7.24.6",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
- "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
+ },
+ "make-fetch-happen": {
+ "version": "11.1.1",
+ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz",
+ "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==",
"dev": true,
"requires": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.24.6",
- "@babel/generator": "^7.24.6",
- "@babel/helper-compilation-targets": "^7.24.6",
- "@babel/helper-module-transforms": "^7.24.6",
- "@babel/helpers": "^7.24.6",
- "@babel/parser": "^7.24.6",
- "@babel/template": "^7.24.6",
- "@babel/traverse": "^7.24.6",
- "@babel/types": "^7.24.6",
- "convert-source-map": "^2.0.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.3",
- "semver": "^6.3.1"
+ "agentkeepalive": "^4.2.1",
+ "cacache": "^17.0.0",
+ "http-cache-semantics": "^4.1.1",
+ "http-proxy-agent": "^5.0.0",
+ "https-proxy-agent": "^5.0.0",
+ "is-lambda": "^1.0.1",
+ "lru-cache": "^7.7.1",
+ "minipass": "^5.0.0",
+ "minipass-fetch": "^3.0.0",
+ "minipass-flush": "^1.0.5",
+ "minipass-pipeline": "^1.2.4",
+ "negotiator": "^0.6.3",
+ "promise-retry": "^2.0.1",
+ "socks-proxy-agent": "^7.0.0",
+ "ssri": "^10.0.0"
},
"dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "minipass": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
+ "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
"dev": true
+ },
+ "ssri": {
+ "version": "10.0.5",
+ "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz",
+ "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==",
+ "dev": true,
+ "requires": {
+ "minipass": "^7.0.3"
+ },
+ "dependencies": {
+ "minipass": {
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz",
+ "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==",
+ "dev": true
+ }
+ }
}
}
},
- "@sinonjs/commons": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
- "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
+ "minimatch": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.5.tgz",
+ "integrity": "sha512-tUpxzX0VAzJHjLu0xUfFv1gwVp9ba3IOuRAVH2EGuRW8a5emA2FlACLqiT/lDVtS1W+TGNwqz3sWaNyLgDJWuw==",
"dev": true,
"requires": {
- "type-detect": "4.0.8"
+ "brace-expansion": "^1.1.7"
}
},
- "@types/mocha": {
- "version": "10.0.6",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
- "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
+ "minipass": {
+ "version": "4.2.8",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz",
+ "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==",
"dev": true
},
- "@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
+ "minipass-fetch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz",
+ "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==",
"dev": true,
"requires": {
- "@types/sinonjs__fake-timers": "*"
+ "encoding": "^0.1.13",
+ "minipass": "^7.0.3",
+ "minipass-sized": "^1.0.3",
+ "minizlib": "^2.1.2"
+ },
+ "dependencies": {
+ "minipass": {
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz",
+ "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==",
+ "dev": true
+ }
}
},
- "ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
- "dev": true
+ "node-fetch": {
+ "version": "2.6.7",
+ "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz",
+ "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==",
+ "dev": true,
+ "requires": {
+ "whatwg-url": "^5.0.0"
+ }
},
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "npm-registry-fetch": {
+ "version": "14.0.3",
+ "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.3.tgz",
+ "integrity": "sha512-YaeRbVNpnWvsGOjX2wk5s85XJ7l1qQBGAp724h8e2CZFFhMSuw9enom7K1mWVUtvXO1uUSFIAPofQK0pPN0ZcA==",
+ "dev": true,
+ "requires": {
+ "make-fetch-happen": "^11.0.0",
+ "minipass": "^4.0.0",
+ "minipass-fetch": "^3.0.0",
+ "minipass-json-stream": "^1.0.1",
+ "minizlib": "^2.1.2",
+ "npm-package-arg": "^10.0.0",
+ "proc-log": "^3.0.0"
+ },
+ "dependencies": {
+ "npm-package-arg": {
+ "version": "10.1.0",
+ "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz",
+ "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==",
+ "dev": true,
+ "requires": {
+ "hosted-git-info": "^6.0.0",
+ "proc-log": "^3.0.0",
+ "semver": "^7.3.5",
+ "validate-npm-package-name": "^5.0.0"
+ }
+ }
+ }
+ },
+ "pretty-format": {
+ "version": "29.4.3",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-29.4.3.tgz",
+ "integrity": "sha512-cvpcHTc42lcsvOOAzd3XuNWTcvk1Jmnzqeu+WsOuiPmxUJTnkbAcFNsRKvEpBEUFVUgy/GTZLulZDcDEi+CIlA==",
"dev": true,
"requires": {
- "color-convert": "^2.0.1"
+ "@jest/schemas": "^29.4.3",
+ "ansi-styles": "^5.0.0",
+ "react-is": "^18.0.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
+ "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
+ "dev": true
+ }
}
},
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "resolve-from": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz",
+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
"dev": true
},
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "semver": {
+ "version": "7.3.8",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
+ "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
"dev": true,
"requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
+ "lru-cache": "^6.0.0"
},
"dependencies": {
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
"dev": true,
"requires": {
- "has-flag": "^4.0.0"
+ "yallist": "^4.0.0"
}
}
}
},
- "chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
+ "socks-proxy-agent": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz",
+ "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==",
"dev": true,
"requires": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "fsevents": "~2.3.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
+ "agent-base": "^6.0.2",
+ "debug": "^4.3.3",
+ "socks": "^2.6.2"
}
},
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"requires": {
- "color-name": "~1.1.4"
+ "has-flag": "^4.0.0"
}
},
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "tr46": {
+ "version": "0.0.3",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz",
+ "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==",
"dev": true
},
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
+ "validate-npm-package-name": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz",
+ "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==",
+ "dev": true,
+ "requires": {
+ "builtins": "^5.0.0"
+ }
},
- "decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
+ "webidl-conversions": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz",
+ "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==",
"dev": true
},
- "diff": {
+ "whatwg-url": {
"version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
- "dev": true
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz",
+ "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==",
+ "dev": true,
+ "requires": {
+ "tr46": "~0.0.3",
+ "webidl-conversions": "^3.0.0"
+ }
},
- "enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
+ "wrap-ansi": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
"dev": true,
"requires": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
}
},
- "escape-string-regexp": {
+ "yallist": {
"version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"dev": true
},
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+ "yargs": {
+ "version": "16.2.0",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
+ "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+ "dev": true,
+ "requires": {
+ "cliui": "^7.0.2",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
+ "require-directory": "^2.1.1",
+ "string-width": "^4.2.0",
+ "y18n": "^5.0.5",
+ "yargs-parser": "^20.2.2"
+ }
+ }
+ }
+ },
+ "@lukeed/csprng": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@lukeed/csprng/-/csprng-1.1.0.tgz",
+ "integrity": "sha512-Z7C/xXCiGWsg0KuKsHTKJxbWhpI3Vs5GwLfOean7MGyVFGqdRgBbAjOCh6u4bbjPc/8MJ2pZmK/0DLdCbivLDA==",
+ "dev": true
+ },
+ "@mdn/browser-compat-data": {
+ "version": "4.2.1",
+ "resolved": "https://registry.npmjs.org/@mdn/browser-compat-data/-/browser-compat-data-4.2.1.tgz",
+ "integrity": "sha512-EWUguj2kd7ldmrF9F+vI5hUOralPd+sdsUnYbRy33vZTuZkduC1shE9TtEMEjAQwyfyMb4ole5KtjF8MsnQOlA==",
+ "dev": true
+ },
+ "@mongodb-js/saslprep": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/@mongodb-js/saslprep/-/saslprep-1.1.5.tgz",
+ "integrity": "sha512-XLNOMH66KhJzUJNwT/qlMnS4WsNDWD5ASdyaSH3EtK+F4r/CFGa3jT4GNi4mfOitGvWXtdLgQJkQjxSVrio+jA==",
+ "dev": true,
+ "requires": {
+ "sparse-bitfield": "^3.0.3"
+ }
+ },
+ "@nestjs/common": {
+ "version": "9.4.3",
+ "resolved": "https://registry.npmjs.org/@nestjs/common/-/common-9.4.3.tgz",
+ "integrity": "sha512-Gd6D4IaYj01o14Bwv81ukidn4w3bPHCblMUq+SmUmWLyosK+XQmInCS09SbDDZyL8jy86PngtBLTdhJ2bXSUig==",
+ "dev": true,
+ "requires": {
+ "iterare": "1.2.1",
+ "tslib": "2.5.3",
+ "uid": "2.0.2"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.5.3",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
+ "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
+ "dev": true
+ }
+ }
+ },
+ "@nestjs/core": {
+ "version": "9.4.3",
+ "resolved": "https://registry.npmjs.org/@nestjs/core/-/core-9.4.3.tgz",
+ "integrity": "sha512-Qi63+wi55Jh4sDyaj5Hhx2jOpKqT386aeo+VOKsxnd+Ql9VvkO/FjmuwBGUyzkJt29ENYc+P0Sx/k5LtstNpPQ==",
+ "dev": true,
+ "requires": {
+ "@nuxtjs/opencollective": "0.3.2",
+ "fast-safe-stringify": "2.1.1",
+ "iterare": "1.2.1",
+ "path-to-regexp": "3.2.0",
+ "tslib": "2.5.3",
+ "uid": "2.0.2"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.5.3",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
+ "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
"dev": true
+ }
+ }
+ },
+ "@nestjs/microservices": {
+ "version": "9.4.3",
+ "resolved": "https://registry.npmjs.org/@nestjs/microservices/-/microservices-9.4.3.tgz",
+ "integrity": "sha512-piMw8d3C4ppc5St5AhQEtecMhyeBK2Q1VYk4AL3NKtG6U0fzz/6KLiETpWdKXmazeI/m7qac2upOvwmRzle0aA==",
+ "dev": true,
+ "optional": true,
+ "peer": true,
+ "requires": {
+ "iterare": "1.2.1",
+ "tslib": "2.5.3"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.5.3",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
+ "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
+ "dev": true,
+ "optional": true,
+ "peer": true
+ }
+ }
+ },
+ "@nestjs/platform-express": {
+ "version": "9.4.3",
+ "resolved": "https://registry.npmjs.org/@nestjs/platform-express/-/platform-express-9.4.3.tgz",
+ "integrity": "sha512-FpdczWoRSC0zz2dNL9u2AQLXKXRVtq4HgHklAhbL59X0uy+mcxhlSThG7DHzDMkoSnuuHY8ojDVf7mDxk+GtCw==",
+ "dev": true,
+ "optional": true,
+ "peer": true,
+ "requires": {
+ "body-parser": "1.20.2",
+ "cors": "2.8.5",
+ "express": "4.18.2",
+ "multer": "1.4.4-lts.1",
+ "tslib": "2.5.3"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "optional": true,
+ "peer": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
},
- "glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
+ "express": {
+ "version": "4.18.2",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz",
+ "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
+ "accepts": "~1.3.8",
+ "array-flatten": "1.1.1",
+ "body-parser": "1.20.1",
+ "content-disposition": "0.5.4",
+ "content-type": "~1.0.4",
+ "cookie": "0.5.0",
+ "cookie-signature": "1.0.6",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "finalhandler": "1.2.0",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "merge-descriptors": "1.0.1",
+ "methods": "~1.1.2",
+ "on-finished": "2.4.1",
+ "parseurl": "~1.3.3",
+ "path-to-regexp": "0.1.7",
+ "proxy-addr": "~2.0.7",
+ "qs": "6.11.0",
+ "range-parser": "~1.2.1",
+ "safe-buffer": "5.2.1",
+ "send": "0.18.0",
+ "serve-static": "1.15.0",
+ "setprototypeof": "1.2.0",
+ "statuses": "2.0.1",
+ "type-is": "~1.6.18",
+ "utils-merge": "1.0.1",
+ "vary": "~1.1.2"
},
"dependencies": {
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
+ "body-parser": {
+ "version": "1.20.1",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz",
+ "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
- "brace-expansion": "^1.1.7"
+ "bytes": "3.1.2",
+ "content-type": "~1.0.4",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "on-finished": "2.4.1",
+ "qs": "6.11.0",
+ "raw-body": "2.5.1",
+ "type-is": "~1.6.18",
+ "unpipe": "1.0.0"
}
}
}
},
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "finalhandler": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
+ "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==",
+ "dev": true,
+ "optional": true,
+ "peer": true,
+ "requires": {
+ "debug": "2.6.9",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "on-finished": "2.4.1",
+ "parseurl": "~1.3.3",
+ "statuses": "2.0.1",
+ "unpipe": "~1.0.0"
+ }
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "dev": true,
+ "optional": true,
+ "peer": true
+ },
+ "path-to-regexp": {
+ "version": "0.1.7",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
+ "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==",
+ "dev": true,
+ "optional": true,
+ "peer": true
+ },
+ "raw-body": {
+ "version": "2.5.1",
+ "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz",
+ "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
- "is-glob": "^4.0.1"
+ "bytes": "3.1.2",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "unpipe": "1.0.0"
}
},
- "is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
+ "tslib": {
+ "version": "2.5.3",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
+ "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
+ "dev": true,
+ "optional": true,
+ "peer": true
+ }
+ }
+ },
+ "@nestjs/websockets": {
+ "version": "9.4.3",
+ "resolved": "https://registry.npmjs.org/@nestjs/websockets/-/websockets-9.4.3.tgz",
+ "integrity": "sha512-LMLKJWZbWH3VQRxDK/658ynyN1n5lLCIen/dey2y5TzB0RNgxlSso/YJATVVfWNaT2CxPG8TUQMOTdopXCWGQw==",
+ "dev": true,
+ "optional": true,
+ "peer": true,
+ "requires": {
+ "iterare": "1.2.1",
+ "object-hash": "3.0.0",
+ "tslib": "2.5.3"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "2.5.3",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.5.3.tgz",
+ "integrity": "sha512-mSxlJJwl3BMEQCUNnxXBU9jP4JBktcEGhURcPR6VQVlnP0FdDEsIaz0C35dXNGLyRfrATNofF0F5p2KPxQgB+w==",
+ "dev": true,
+ "optional": true,
+ "peer": true
+ }
+ }
+ },
+ "@netflix/nerror": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/@netflix/nerror/-/nerror-1.1.3.tgz",
+ "integrity": "sha512-b+MGNyP9/LXkapreJzNUzcvuzZslj/RGgdVVJ16P2wSlYatfLycPObImqVJSmNAdyeShvNeM/pl3sVZsObFueg==",
+ "dev": true,
+ "requires": {
+ "assert-plus": "^1.0.0",
+ "extsprintf": "^1.4.0",
+ "lodash": "^4.17.15"
+ },
+ "dependencies": {
+ "extsprintf": {
+ "version": "1.4.1",
+ "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.4.1.tgz",
+ "integrity": "sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA==",
"dev": true
+ }
+ }
+ },
+ "@nodelib/fs.scandir": {
+ "version": "2.1.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
+ "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==",
+ "dev": true,
+ "requires": {
+ "@nodelib/fs.stat": "2.0.5",
+ "run-parallel": "^1.1.9"
+ }
+ },
+ "@nodelib/fs.stat": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz",
+ "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==",
+ "dev": true
+ },
+ "@nodelib/fs.walk": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz",
+ "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==",
+ "dev": true,
+ "requires": {
+ "@nodelib/fs.scandir": "2.1.5",
+ "fastq": "^1.6.0"
+ }
+ },
+ "@npmcli/arborist": {
+ "version": "6.2.3",
+ "resolved": "https://registry.npmjs.org/@npmcli/arborist/-/arborist-6.2.3.tgz",
+ "integrity": "sha512-lpGOC2ilSJXcc2zfW9QtukcCTcMbl3fVI0z4wvFB2AFIl0C+Q6Wv7ccrpdrQa8rvJ1ZVuc6qkX7HVTyKlzGqKA==",
+ "dev": true,
+ "requires": {
+ "@isaacs/string-locale-compare": "^1.1.0",
+ "@npmcli/fs": "^3.1.0",
+ "@npmcli/installed-package-contents": "^2.0.0",
+ "@npmcli/map-workspaces": "^3.0.2",
+ "@npmcli/metavuln-calculator": "^5.0.0",
+ "@npmcli/name-from-folder": "^2.0.0",
+ "@npmcli/node-gyp": "^3.0.0",
+ "@npmcli/package-json": "^3.0.0",
+ "@npmcli/query": "^3.0.0",
+ "@npmcli/run-script": "^6.0.0",
+ "bin-links": "^4.0.1",
+ "cacache": "^17.0.4",
+ "common-ancestor-path": "^1.0.1",
+ "hosted-git-info": "^6.1.1",
+ "json-parse-even-better-errors": "^3.0.0",
+ "json-stringify-nice": "^1.1.4",
+ "minimatch": "^6.1.6",
+ "nopt": "^7.0.0",
+ "npm-install-checks": "^6.0.0",
+ "npm-package-arg": "^10.1.0",
+ "npm-pick-manifest": "^8.0.1",
+ "npm-registry-fetch": "^14.0.3",
+ "npmlog": "^7.0.1",
+ "pacote": "^15.0.8",
+ "parse-conflict-json": "^3.0.0",
+ "proc-log": "^3.0.0",
+ "promise-all-reject-late": "^1.0.0",
+ "promise-call-limit": "^1.0.1",
+ "read-package-json-fast": "^3.0.2",
+ "semver": "^7.3.7",
+ "ssri": "^10.0.1",
+ "treeverse": "^3.0.0",
+ "walk-up-path": "^1.0.0"
+ },
+ "dependencies": {
+ "@npmcli/run-script": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz",
+ "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==",
+ "dev": true,
+ "requires": {
+ "@npmcli/node-gyp": "^3.0.0",
+ "@npmcli/promise-spawn": "^6.0.0",
+ "node-gyp": "^9.0.0",
+ "read-package-json-fast": "^3.0.0",
+ "which": "^3.0.0"
+ }
},
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
+ "are-we-there-yet": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-4.0.2.tgz",
+ "integrity": "sha512-ncSWAawFhKMJDTdoAeOV+jyW1VCMj5QIAwULIBV0SSR7B/RLPPEQiknKcg/RIIZlUQrxELpsxMiTUoAQ4sIUyg==",
"dev": true
},
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ "brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "gauge": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/gauge/-/gauge-5.0.1.tgz",
+ "integrity": "sha512-CmykPMJGuNan/3S4kZOpvvPYSNqSHANiWnh9XcMU2pSjtBfF0XzZ2p1bFAxTbnFxyBuPxQYHhzwaoOmUdqzvxQ==",
"dev": true,
"requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
+ "aproba": "^1.0.3 || ^2.0.0",
+ "color-support": "^1.1.3",
+ "console-control-strings": "^1.1.0",
+ "has-unicode": "^2.0.1",
+ "signal-exit": "^4.0.1",
+ "string-width": "^4.2.3",
+ "strip-ansi": "^6.0.1",
+ "wide-align": "^1.1.5"
}
},
"minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+ "version": "6.2.0",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
+ "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
"dev": true,
"requires": {
"brace-expansion": "^2.0.1"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "requires": {
- "balanced-match": "^1.0.0"
- }
- }
}
},
- "mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
+ "npm-package-arg": {
+ "version": "10.1.0",
+ "resolved": "https://registry.npmjs.org/npm-package-arg/-/npm-package-arg-10.1.0.tgz",
+ "integrity": "sha512-uFyyCEmgBfZTtrKk/5xDfHp6+MdrqGotX/VoOyEEl3mBwiEE5FlBaePanazJSVMPT7vKepcjYBY2ztg9A3yPIA==",
"dev": true,
"requires": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
+ "hosted-git-info": "^6.0.0",
+ "proc-log": "^3.0.0",
+ "semver": "^7.3.5",
+ "validate-npm-package-name": "^5.0.0"
}
},
- "ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
+ "npmlog": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-7.0.1.tgz",
+ "integrity": "sha512-uJ0YFk/mCQpLBt+bxN88AKd+gyqZvZDbtiNxk6Waqcj2aPRyfVx8ITawkyQynxUagInjdYT1+qj4NfA5KJJUxg==",
+ "dev": true,
+ "requires": {
+ "are-we-there-yet": "^4.0.0",
+ "console-control-strings": "^1.1.0",
+ "gauge": "^5.0.0",
+ "set-blocking": "^2.0.0"
+ }
},
- "nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+ "signal-exit": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
+ "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==",
"dev": true
},
- "schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+ "ssri": {
+ "version": "10.0.5",
+ "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz",
+ "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==",
"dev": true,
"requires": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
+ "minipass": "^7.0.3"
}
},
- "sinon": {
- "version": "15.1.2",
- "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
- "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ "validate-npm-package-name": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/validate-npm-package-name/-/validate-npm-package-name-5.0.0.tgz",
+ "integrity": "sha512-YuKoXDAhBYxY7SfOKxHBDoSyENFeW5VvIIQp2TGQuit8gpK6MnWaQelBKxso72DoxTZfZdcP3W90LqpSkgPzLQ==",
"dev": true,
"requires": {
- "@sinonjs/commons": "^3.0.0",
- "@sinonjs/fake-timers": "^10.1.0",
- "@sinonjs/samsam": "^8.0.0",
- "diff": "^5.1.0",
- "nise": "^5.1.4",
- "supports-color": "^7.2.0"
- },
- "dependencies": {
- "diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "builtins": "^5.0.0"
}
},
- "source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true
+ "which": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
+ "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.0.0"
+ }
},
- "tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "wide-align": {
+ "version": "1.1.5",
+ "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz",
+ "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==",
+ "dev": true,
+ "requires": {
+ "string-width": "^1.0.2 || 2 || 3 || 4"
+ }
+ }
+ }
+ },
+ "@npmcli/fs": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-3.1.0.tgz",
+ "integrity": "sha512-7kZUAaLscfgbwBQRbvdMYaZOWyMEcPTH/tJjnyAWJ/dvvs9Ef+CERx/qJb9GExJpl1qipaDGn7KqHnFGGixd0w==",
+ "dev": true,
+ "requires": {
+ "semver": "^7.3.5"
+ }
+ },
+ "@npmcli/git": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.1.0.tgz",
+ "integrity": "sha512-9hwoB3gStVfa0N31ymBmrX+GuDGdVA/QWShZVqE0HK2Af+7QGGrCTbZia/SW0ImUTjTne7SP91qxDmtXvDHRPQ==",
+ "dev": true,
+ "requires": {
+ "@npmcli/promise-spawn": "^6.0.0",
+ "lru-cache": "^7.4.4",
+ "npm-pick-manifest": "^8.0.0",
+ "proc-log": "^3.0.0",
+ "promise-inflight": "^1.0.1",
+ "promise-retry": "^2.0.1",
+ "semver": "^7.3.5",
+ "which": "^3.0.0"
+ },
+ "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==",
"dev": true
},
- "ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
+ "which": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
+ "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
"dev": true,
"requires": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
+ "isexe": "^2.0.0"
}
- },
- "webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
+ }
+ }
+ },
+ "@npmcli/installed-package-contents": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@npmcli/installed-package-contents/-/installed-package-contents-2.0.2.tgz",
+ "integrity": "sha512-xACzLPhnfD51GKvTOOuNX2/V4G4mz9/1I2MfDoye9kBM3RYe5g2YbscsaGoTlaWqkxeiapBWyseULVKpSVHtKQ==",
+ "dev": true,
+ "requires": {
+ "npm-bundled": "^3.0.0",
+ "npm-normalize-package-bin": "^3.0.0"
+ }
+ },
+ "@npmcli/map-workspaces": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@npmcli/map-workspaces/-/map-workspaces-3.0.4.tgz",
+ "integrity": "sha512-Z0TbvXkRbacjFFLpVpV0e2mheCh+WzQpcqL+4xp49uNJOxOnIAPZyXtUxZ5Qn3QBTGKA11Exjd9a5411rBrhDg==",
+ "dev": true,
+ "requires": {
+ "@npmcli/name-from-folder": "^2.0.0",
+ "glob": "^10.2.2",
+ "minimatch": "^9.0.0",
+ "read-package-json-fast": "^3.0.0"
+ }
+ },
+ "@npmcli/metavuln-calculator": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/@npmcli/metavuln-calculator/-/metavuln-calculator-5.0.1.tgz",
+ "integrity": "sha512-qb8Q9wIIlEPj3WeA1Lba91R4ZboPL0uspzV0F9uwP+9AYMVB2zOoa7Pbk12g6D2NHAinSbHh6QYmGuRyHZ874Q==",
+ "dev": true,
+ "requires": {
+ "cacache": "^17.0.0",
+ "json-parse-even-better-errors": "^3.0.0",
+ "pacote": "^15.0.0",
+ "semver": "^7.3.5"
+ }
+ },
+ "@npmcli/move-file": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-2.0.1.tgz",
+ "integrity": "sha512-mJd2Z5TjYWq/ttPLLGqArdtnC74J6bOzg4rMDnN+p1xTacZ2yPRCk2y0oSWQtygLR9YVQXgOcONrwtnk3JupxQ==",
+ "dev": true,
+ "requires": {
+ "mkdirp": "^1.0.4",
+ "rimraf": "^3.0.2"
+ },
+ "dependencies": {
+ "glob": {
+ "version": "7.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz",
+ "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==",
"dev": true,
"requires": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.1.1",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
}
},
- "yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+ "minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
"requires": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
+ "brace-expansion": "^1.1.7"
}
},
- "yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
+ "mkdirp": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+ "dev": true
+ },
+ "rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
"dev": true,
"requires": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
+ "glob": "^7.1.3"
}
}
}
},
- "@opentelemetry/instrumentation-lru-memoizer": {
- "version": "file:plugins/node/instrumentation-lru-memoizer",
+ "@npmcli/name-from-folder": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/name-from-folder/-/name-from-folder-2.0.0.tgz",
+ "integrity": "sha512-pwK+BfEBZJbKdNYpHHRTNBwBoqrN/iIMO0AiGvYsp3Hoaq0WbgGSWQR6SCldZovoDpY3yje5lkFUe6gsDgJ2vg==",
+ "dev": true
+ },
+ "@npmcli/node-gyp": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-3.0.0.tgz",
+ "integrity": "sha512-gp8pRXC2oOxu0DUE1/M3bYtb1b3/DbJ5aM113+XJBgfXdussRAsX0YOrOhdd8WvnAR6auDBvJomGAkLKA5ydxA==",
+ "dev": true
+ },
+ "@npmcli/package-json": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/@npmcli/package-json/-/package-json-3.1.1.tgz",
+ "integrity": "sha512-+UW0UWOYFKCkvszLoTwrYGrjNrT8tI5Ckeb/h+Z1y1fsNJEctl7HmerA5j2FgmoqFaLI2gsA1X9KgMFqx/bRmA==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@types/lru-cache": "7.10.9",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "expect": "29.2.0",
- "lru-memoizer": "2.1.4",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@npmcli/git": "^4.1.0",
+ "glob": "^10.2.2",
+ "json-parse-even-better-errors": "^3.0.0",
+ "normalize-package-data": "^5.0.0",
+ "npm-normalize-package-bin": "^3.0.1",
+ "proc-log": "^3.0.0"
+ }
+ },
+ "@npmcli/promise-spawn": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-6.0.2.tgz",
+ "integrity": "sha512-gGq0NJkIGSwdbUt4yhdF8ZrmkGKVz9vAdVzpOfnom+V8PLSmSOVhZwbNvZZS1EYcJN5hzzKBxmmVVAInM6HQLg==",
+ "dev": true,
+ "requires": {
+ "which": "^3.0.0"
},
"dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
- "dev": true
+ "which": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
+ "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.0.0"
+ }
}
}
},
- "@opentelemetry/instrumentation-memcached": {
- "version": "file:plugins/node/opentelemetry-instrumentation-memcached",
+ "@npmcli/query": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/query/-/query-3.1.0.tgz",
+ "integrity": "sha512-C/iR0tk7KSKGldibYIB9x8GtO/0Bd0I2mhOaDb8ucQL/bQVTmGoeREaFj64Z5+iCBRf3dQfed0CjJL7I8iTkiQ==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
- "@types/memcached": "^2.2.6",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "cross-env": "7.0.3",
- "memcached": "2.2.2",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "postcss-selector-parser": "^6.0.10"
}
},
- "@opentelemetry/instrumentation-mongodb": {
- "version": "file:plugins/node/opentelemetry-instrumentation-mongodb",
+ "@npmcli/run-script": {
+ "version": "4.1.7",
+ "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-4.1.7.tgz",
+ "integrity": "sha512-WXr/MyM4tpKA4BotB81NccGAv8B48lNH0gRoILucbcAhTQXLCoi6HflMV3KdXubIqvP9SuLsFn68Z7r4jl+ppw==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-metrics": "^1.9.1",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/bson": "4.0.5",
- "@types/mocha": "7.0.2",
- "@types/mongodb": "3.6.20",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
- "mongodb": "6.5.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@npmcli/node-gyp": "^2.0.0",
+ "@npmcli/promise-spawn": "^3.0.0",
+ "node-gyp": "^9.0.0",
+ "read-package-json-fast": "^2.0.3",
+ "which": "^2.0.2"
},
"dependencies": {
- "@types/whatwg-url": {
- "version": "11.0.4",
- "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-11.0.4.tgz",
- "integrity": "sha512-lXCmTWSHJvf0TRSO58nm978b8HJ/EdsSsEKLd3ODHFjo+3VGAyyTp4v50nWvwtzBxSMQrVOK7tcuN0zGPLICMw==",
- "dev": true,
- "requires": {
- "@types/webidl-conversions": "*"
- }
+ "@npmcli/node-gyp": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/node-gyp/-/node-gyp-2.0.0.tgz",
+ "integrity": "sha512-doNI35wIe3bBaEgrlPfdJPaCpUR89pJWep4Hq3aRdh6gKazIVWfs0jHttvSSoq47ZXgC7h73kDsUl8AoIQUB+A==",
+ "dev": true
},
- "agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
+ "@npmcli/promise-spawn": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@npmcli/promise-spawn/-/promise-spawn-3.0.0.tgz",
+ "integrity": "sha512-s9SgS+p3a9Eohe68cSI3fi+hpcZUmXq5P7w0kMlAsWVtR7XbK3ptkZqKT2cK1zLDObJ3sR+8P59sJE0w/KTL1g==",
"dev": true,
- "optional": true,
- "peer": true,
"requires": {
- "debug": "4"
+ "infer-owner": "^1.0.4"
}
},
- "bson": {
- "version": "6.4.0",
- "resolved": "https://registry.npmjs.org/bson/-/bson-6.4.0.tgz",
- "integrity": "sha512-6/gSSEdbkuFlSb+ufj5jUSU4+wo8xQOwm2bDSqwmxiPE17JTpsP63eAwoN8iF8Oy4gJYj+PAL3zdRCTdaw5Y1g==",
+ "json-parse-even-better-errors": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
"dev": true
},
- "gaxios": {
- "version": "5.1.3",
- "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-5.1.3.tgz",
- "integrity": "sha512-95hVgBRgEIRQQQHIbnxBXeHbW4TqFk4ZDJW7wmVtvYar72FdhRIo1UGOLS2eRAKCPEdPBWu+M7+A33D9CdX9rA==",
+ "npm-normalize-package-bin": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz",
+ "integrity": "sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA==",
+ "dev": true
+ },
+ "read-package-json-fast": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz",
+ "integrity": "sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==",
"dev": true,
- "optional": true,
- "peer": true,
"requires": {
- "extend": "^3.0.2",
- "https-proxy-agent": "^5.0.0",
- "is-stream": "^2.0.0",
- "node-fetch": "^2.6.9"
+ "json-parse-even-better-errors": "^2.3.0",
+ "npm-normalize-package-bin": "^1.0.1"
+ }
+ }
+ }
+ },
+ "@nrwl/cli": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/cli/-/cli-15.9.7.tgz",
+ "integrity": "sha512-1jtHBDuJzA57My5nLzYiM372mJW0NY6rFKxlWt5a0RLsAZdPTHsd8lE3Gs9XinGC1jhXbruWmhhnKyYtZvX/zA==",
+ "dev": true,
+ "requires": {
+ "nx": "15.9.7"
+ }
+ },
+ "@nrwl/devkit": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/devkit/-/devkit-15.9.7.tgz",
+ "integrity": "sha512-Sb7Am2TMT8AVq8e+vxOlk3AtOA2M0qCmhBzoM1OJbdHaPKc0g0UgSnWRml1kPGg5qfPk72tWclLoZJ5/ut0vTg==",
+ "dev": true,
+ "requires": {
+ "ejs": "^3.1.7",
+ "ignore": "^5.0.4",
+ "semver": "7.5.4",
+ "tmp": "~0.2.1",
+ "tslib": "^2.3.0"
+ },
+ "dependencies": {
+ "lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "requires": {
+ "yallist": "^4.0.0"
}
},
- "gcp-metadata": {
- "version": "5.3.0",
- "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-5.3.0.tgz",
- "integrity": "sha512-FNTkdNEnBdlqF2oatizolQqNANMrcqJt6AAYt99B3y1aLLC8Hc5IOBb+ZnnzllodEEf6xMBp6wRcBbc16fa65w==",
+ "semver": {
+ "version": "7.5.4",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
+ "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
"dev": true,
- "optional": true,
- "peer": true,
"requires": {
- "gaxios": "^5.0.0",
- "json-bigint": "^1.0.0"
+ "lru-cache": "^6.0.0"
}
},
- "https-proxy-agent": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
- "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ }
+ }
+ },
+ "@nrwl/nx-darwin-arm64": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/nx-darwin-arm64/-/nx-darwin-arm64-15.9.7.tgz",
+ "integrity": "sha512-aBUgnhlkrgC0vu0fK6eb9Vob7eFnkuknrK+YzTjmLrrZwj7FGNAeyGXSlyo1dVokIzjVKjJg2saZZ0WQbfuCJw==",
+ "dev": true,
+ "optional": true
+ },
+ "@nrwl/nx-darwin-x64": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/nx-darwin-x64/-/nx-darwin-x64-15.9.7.tgz",
+ "integrity": "sha512-L+elVa34jhGf1cmn38Z0sotQatmLovxoASCIw5r1CBZZeJ5Tg7Y9nOwjRiDixZxNN56hPKXm6xl9EKlVHVeKlg==",
+ "dev": true,
+ "optional": true
+ },
+ "@nrwl/nx-linux-arm-gnueabihf": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-arm-gnueabihf/-/nx-linux-arm-gnueabihf-15.9.7.tgz",
+ "integrity": "sha512-pqmfqqEUGFu6PmmHKyXyUw1Al0Ki8PSaR0+ndgCAb1qrekVDGDfznJfaqxN0JSLeolPD6+PFtLyXNr9ZyPFlFg==",
+ "dev": true,
+ "optional": true
+ },
+ "@nrwl/nx-linux-arm64-gnu": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-arm64-gnu/-/nx-linux-arm64-gnu-15.9.7.tgz",
+ "integrity": "sha512-NYOa/eRrqmM+In5g3M0rrPVIS9Z+q6fvwXJYf/KrjOHqqan/KL+2TOfroA30UhcBrwghZvib7O++7gZ2hzwOnA==",
+ "dev": true,
+ "optional": true
+ },
+ "@nrwl/nx-linux-arm64-musl": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-arm64-musl/-/nx-linux-arm64-musl-15.9.7.tgz",
+ "integrity": "sha512-zyStqjEcmbvLbejdTOrLUSEdhnxNtdQXlmOuymznCzYUEGRv+4f7OAepD3yRoR0a/57SSORZmmGQB7XHZoYZJA==",
+ "dev": true,
+ "optional": true
+ },
+ "@nrwl/nx-linux-x64-gnu": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-x64-gnu/-/nx-linux-x64-gnu-15.9.7.tgz",
+ "integrity": "sha512-saNK5i2A8pKO3Il+Ejk/KStTApUpWgCxjeUz9G+T8A+QHeDloZYH2c7pU/P3jA9QoNeKwjVO9wYQllPL9loeVg==",
+ "dev": true,
+ "optional": true
+ },
+ "@nrwl/nx-linux-x64-musl": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/nx-linux-x64-musl/-/nx-linux-x64-musl-15.9.7.tgz",
+ "integrity": "sha512-extIUThYN94m4Vj4iZggt6hhMZWQSukBCo8pp91JHnDcryBg7SnYmnikwtY1ZAFyyRiNFBLCKNIDFGkKkSrZ9Q==",
+ "dev": true,
+ "optional": true
+ },
+ "@nrwl/nx-win32-arm64-msvc": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/nx-win32-arm64-msvc/-/nx-win32-arm64-msvc-15.9.7.tgz",
+ "integrity": "sha512-GSQ54hJ5AAnKZb4KP4cmBnJ1oC4ILxnrG1mekxeM65c1RtWg9NpBwZ8E0gU3xNrTv8ZNsBeKi/9UhXBxhsIh8A==",
+ "dev": true,
+ "optional": true
+ },
+ "@nrwl/nx-win32-x64-msvc": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/nx-win32-x64-msvc/-/nx-win32-x64-msvc-15.9.7.tgz",
+ "integrity": "sha512-x6URof79RPd8AlapVbPefUD3ynJZpmah3tYaYZ9xZRMXojVtEHV8Qh5vysKXQ1rNYJiiB8Ah6evSKWLbAH60tw==",
+ "dev": true,
+ "optional": true
+ },
+ "@nrwl/tao": {
+ "version": "15.9.7",
+ "resolved": "https://registry.npmjs.org/@nrwl/tao/-/tao-15.9.7.tgz",
+ "integrity": "sha512-OBnHNvQf3vBH0qh9YnvBQQWyyFZ+PWguF6dJ8+1vyQYlrLVk/XZ8nJ4ukWFb+QfPv/O8VBmqaofaOI9aFC4yTw==",
+ "dev": true,
+ "requires": {
+ "nx": "15.9.7"
+ }
+ },
+ "@nuxtjs/opencollective": {
+ "version": "0.3.2",
+ "resolved": "https://registry.npmjs.org/@nuxtjs/opencollective/-/opencollective-0.3.2.tgz",
+ "integrity": "sha512-um0xL3fO7Mf4fDxcqx9KryrB7zgRM5JSlvGN5AGkP6JLM5XEKyjeAiPbNxdXVXQ16isuAhYpvP88NgL2BGd6aA==",
+ "dev": true,
+ "requires": {
+ "chalk": "^4.1.0",
+ "consola": "^2.15.0",
+ "node-fetch": "^2.6.1"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true,
- "optional": true,
- "peer": true,
"requires": {
- "agent-base": "6",
- "debug": "4"
+ "color-convert": "^2.0.1"
}
},
- "mongodb": {
- "version": "6.5.0",
- "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.5.0.tgz",
- "integrity": "sha512-Fozq68InT+JKABGLqctgtb8P56pRrJFkbhW0ux+x1mdHeyinor8oNzJqwLjV/t5X5nJGfTlluxfyMnOXNggIUA==",
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
"dev": true,
"requires": {
- "@mongodb-js/saslprep": "^1.1.5",
- "bson": "^6.4.0",
- "mongodb-connection-string-url": "^3.0.0"
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
}
},
- "mongodb-connection-string-url": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-3.0.0.tgz",
- "integrity": "sha512-t1Vf+m1I5hC2M5RJx/7AtxgABy1cZmIPQRMXw+gEIPn/cZNF3Oiy+l0UIypUwVB5trcWHq3crg2g3uAR9aAwsQ==",
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"requires": {
- "@types/whatwg-url": "^11.0.2",
- "whatwg-url": "^13.0.0"
+ "color-name": "~1.1.4"
}
},
- "tr46": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/tr46/-/tr46-4.1.1.tgz",
- "integrity": "sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==",
- "dev": true,
- "requires": {
- "punycode": "^2.3.0"
- }
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
},
- "whatwg-url": {
- "version": "13.0.0",
- "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-13.0.0.tgz",
- "integrity": "sha512-9WWbymnqj57+XEuqADHrCJ2eSXzn8WXIW/YSGaZtb2WKAInQ6CHfaUUcTyyver0p8BDg5StLQq8h1vtZuwmOig==",
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
"dev": true,
"requires": {
- "tr46": "^4.1.1",
- "webidl-conversions": "^7.0.0"
+ "has-flag": "^4.0.0"
}
}
}
},
- "@opentelemetry/instrumentation-mongoose": {
- "version": "file:plugins/node/instrumentation-mongoose",
+ "@octokit/auth-token": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@octokit/auth-token/-/auth-token-3.0.4.tgz",
+ "integrity": "sha512-TWFX7cZF2LXoCvdmJWY7XVPi74aSY0+FfBZNSXEXFkMpjcqsQwDSYVv5FhRFaI0V1ECnwbz4j59T/G+rXNWaIQ==",
+ "dev": true
+ },
+ "@octokit/core": {
+ "version": "4.2.4",
+ "resolved": "https://registry.npmjs.org/@octokit/core/-/core-4.2.4.tgz",
+ "integrity": "sha512-rYKilwgzQ7/imScn3M9/pFfUf4I1AZEH3KhyJmtPdE2zfaXAn2mFfUy4FbKewzc2We5y/LlKLj36fWJLKC2SIQ==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "expect": "29.2.0",
- "mocha": "7.2.0",
- "mongoose": "6.12.3",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@octokit/auth-token": "^3.0.0",
+ "@octokit/graphql": "^5.0.0",
+ "@octokit/request": "^6.0.0",
+ "@octokit/request-error": "^3.0.0",
+ "@octokit/types": "^9.0.0",
+ "before-after-hook": "^2.2.0",
+ "universal-user-agent": "^6.0.0"
+ }
+ },
+ "@octokit/endpoint": {
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/@octokit/endpoint/-/endpoint-7.0.6.tgz",
+ "integrity": "sha512-5L4fseVRUsDFGR00tMWD/Trdeeihn999rTMGRMC1G/Ldi1uWlWJzI98H4Iak5DB/RVvQuyMYKqSK/R6mbSOQyg==",
+ "dev": true,
+ "requires": {
+ "@octokit/types": "^9.0.0",
+ "is-plain-object": "^5.0.0",
+ "universal-user-agent": "^6.0.0"
},
"dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "is-plain-object": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
+ "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
"dev": true
}
}
},
- "@opentelemetry/instrumentation-mysql": {
- "version": "file:plugins/node/opentelemetry-instrumentation-mysql",
+ "@octokit/graphql": {
+ "version": "5.0.6",
+ "resolved": "https://registry.npmjs.org/@octokit/graphql/-/graphql-5.0.6.tgz",
+ "integrity": "sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-metrics": "^1.8.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "7.0.2",
- "@types/mysql": "2.15.22",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
- "mysql": "2.18.1",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@octokit/request": "^6.0.0",
+ "@octokit/types": "^9.0.0",
+ "universal-user-agent": "^6.0.0"
}
},
- "@opentelemetry/instrumentation-mysql2": {
- "version": "file:plugins/node/opentelemetry-instrumentation-mysql2",
+ "@octokit/openapi-types": {
+ "version": "18.1.1",
+ "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-18.1.1.tgz",
+ "integrity": "sha512-VRaeH8nCDtF5aXWnjPuEMIYf1itK/s3JYyJcWFJT8X9pSNnBtriDf7wlEWsGuhPLl4QIH4xM8fqTXDwJ3Mu6sw==",
+ "dev": true
+ },
+ "@octokit/plugin-enterprise-rest": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz",
+ "integrity": "sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw==",
+ "dev": true
+ },
+ "@octokit/plugin-paginate-rest": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-3.1.0.tgz",
+ "integrity": "sha512-+cfc40pMzWcLkoDcLb1KXqjX0jTGYXjKuQdFQDc6UAknISJHnZTiBqld6HDwRJvD4DsouDKrWXNbNV0lE/3AXA==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@opentelemetry/sql-common": "^0.40.1",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "mocha": "7.2.0",
- "mysql2": "2.3.3",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@octokit/types": "^6.41.0"
},
"dependencies": {
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
+ "@octokit/openapi-types": {
+ "version": "12.11.0",
+ "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-12.11.0.tgz",
+ "integrity": "sha512-VsXyi8peyRq9PqIz/tpqiL2w3w80OgVMwBHltTml3LmVvXiphgeqmY9mvBw9Wu7e0QWk/fqD37ux8yP5uVekyQ==",
+ "dev": true
},
- "semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "@octokit/types": {
+ "version": "6.41.0",
+ "resolved": "https://registry.npmjs.org/@octokit/types/-/types-6.41.0.tgz",
+ "integrity": "sha512-eJ2jbzjdijiL3B4PrSQaSjuF2sPEQPVCPzBvTHJD9Nz+9dw2SGH4K4xeQJ77YfTq5bRQ+bD8wT11JbeDPmxmGg==",
"dev": true,
"requires": {
- "lru-cache": "^6.0.0"
+ "@octokit/openapi-types": "^12.11.0"
}
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
}
}
},
- "@opentelemetry/instrumentation-nestjs-core": {
- "version": "file:plugins/node/opentelemetry-instrumentation-nestjs-core",
+ "@octokit/plugin-request-log": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz",
+ "integrity": "sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA==",
+ "dev": true,
+ "requires": {}
+ },
+ "@octokit/plugin-rest-endpoint-methods": {
+ "version": "6.8.1",
+ "resolved": "https://registry.npmjs.org/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-6.8.1.tgz",
+ "integrity": "sha512-QrlaTm8Lyc/TbU7BL/8bO49vp+RZ6W3McxxmmQTgYxf2sWkO8ZKuj4dLhPNJD6VCUW1hetCmeIM0m6FTVpDiEg==",
+ "dev": true,
"requires": {
- "@nestjs/common": "9.4.3",
- "@nestjs/core": "9.4.3",
- "@nestjs/microservices": "9.4.3",
- "@nestjs/platform-express": "9.4.3",
- "@nestjs/websockets": "9.4.3",
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "cross-env": "7.0.3",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "reflect-metadata": "0.1.13",
- "rimraf": "5.0.5",
- "rxjs": "7.8.1",
- "rxjs-compat": "6.6.7",
- "semver": "7.5.4",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@octokit/types": "^8.1.1",
+ "deprecation": "^2.3.1"
},
"dependencies": {
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
+ "@octokit/openapi-types": {
+ "version": "14.0.0",
+ "resolved": "https://registry.npmjs.org/@octokit/openapi-types/-/openapi-types-14.0.0.tgz",
+ "integrity": "sha512-HNWisMYlR8VCnNurDU6os2ikx0s0VyEjDYHNS/h4cgb8DeOxQ0n72HyinUtdDVxJhFy3FWLGl0DJhfEWk3P5Iw==",
+ "dev": true
},
- "semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "@octokit/types": {
+ "version": "8.2.1",
+ "resolved": "https://registry.npmjs.org/@octokit/types/-/types-8.2.1.tgz",
+ "integrity": "sha512-8oWMUji8be66q2B9PmEIUyQm00VPDPun07umUWSaCwxmeaquFBro4Hcc3ruVoDo3zkQyZBlRvhIMEYS3pBhanw==",
"dev": true,
"requires": {
- "lru-cache": "^6.0.0"
+ "@octokit/openapi-types": "^14.0.0"
}
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ }
+ }
+ },
+ "@octokit/request": {
+ "version": "6.2.8",
+ "resolved": "https://registry.npmjs.org/@octokit/request/-/request-6.2.8.tgz",
+ "integrity": "sha512-ow4+pkVQ+6XVVsekSYBzJC0VTVvh/FCTUUgTsboGq+DTeWdyIFV8WSCdo0RIxk6wSkBTHqIK1mYuY7nOBXOchw==",
+ "dev": true,
+ "requires": {
+ "@octokit/endpoint": "^7.0.0",
+ "@octokit/request-error": "^3.0.0",
+ "@octokit/types": "^9.0.0",
+ "is-plain-object": "^5.0.0",
+ "node-fetch": "^2.6.7",
+ "universal-user-agent": "^6.0.0"
+ },
+ "dependencies": {
+ "is-plain-object": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/is-plain-object/-/is-plain-object-5.0.0.tgz",
+ "integrity": "sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==",
"dev": true
}
}
},
- "@opentelemetry/instrumentation-net": {
- "version": "file:plugins/node/opentelemetry-instrumentation-net",
+ "@octokit/request-error": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@octokit/request-error/-/request-error-3.0.3.tgz",
+ "integrity": "sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@octokit/types": "^9.0.0",
+ "deprecation": "^2.0.0",
+ "once": "^1.4.0"
}
},
- "@opentelemetry/instrumentation-pg": {
- "version": "file:plugins/node/opentelemetry-instrumentation-pg",
+ "@octokit/rest": {
+ "version": "19.0.3",
+ "resolved": "https://registry.npmjs.org/@octokit/rest/-/rest-19.0.3.tgz",
+ "integrity": "sha512-5arkTsnnRT7/sbI4fqgSJ35KiFaN7zQm0uQiQtivNQLI8RQx8EHwJCajcTUwmaCMNDg7tdCvqAnc7uvHHPxrtQ==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@opentelemetry/sql-common": "^0.40.1",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/pg": "8.6.1",
- "@types/pg-pool": "2.0.4",
- "@types/sinon": "10.0.18",
- "cross-env": "7.0.3",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "pg": "8.7.1",
- "pg-pool": "3.4.1",
- "rimraf": "5.0.5",
- "safe-stable-stringify": "^2.4.1",
- "sinon": "15.2.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "@octokit/core": "^4.0.0",
+ "@octokit/plugin-paginate-rest": "^3.0.0",
+ "@octokit/plugin-request-log": "^1.0.4",
+ "@octokit/plugin-rest-endpoint-methods": "^6.0.0"
}
},
- "@opentelemetry/instrumentation-pino": {
- "version": "file:plugins/node/opentelemetry-instrumentation-pino",
+ "@octokit/types": {
+ "version": "9.3.2",
+ "resolved": "https://registry.npmjs.org/@octokit/types/-/types-9.3.2.tgz",
+ "integrity": "sha512-D4iHGTdAnEEVsB8fl95m1hiz7D5YiRdQ9b/OEb3BYRVwbLsGHcRVPz+u+BgRLNk0Q0/4iZCBqDN96j2XNxfXrA==",
+ "dev": true,
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@octokit/openapi-types": "^18.0.0"
+ }
+ },
+ "@opentelemetry/api": {
+ "version": "1.9.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/api/-/api-1.9.0.tgz",
+ "integrity": "sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg=="
+ },
+ "@opentelemetry/api-logs": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/api-logs/-/api-logs-0.54.2.tgz",
+ "integrity": "sha512-4MTVwwmLgUh5QrJnZpYo6YRO5IBLAggf2h8gWDblwRagDStY13aEvt7gGk3jewrMaPlHiF83fENhIx0HO97/cQ==",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0"
+ }
+ },
+ "@opentelemetry/auto-configuration-propagators": {
+ "version": "file:metapackages/auto-configuration-propagators",
+ "requires": {
+ "@opentelemetry/api": "^1.4.1",
+ "@opentelemetry/core": "^1.25.1",
+ "@opentelemetry/propagator-aws-xray": "^1.25.1",
+ "@opentelemetry/propagator-aws-xray-lambda": "^0.53.0",
+ "@opentelemetry/propagator-b3": "^1.25.1",
+ "@opentelemetry/propagator-jaeger": "^1.25.1",
+ "@opentelemetry/propagator-ot-trace": "^0.27.2",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "pino": "8.3.1",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "lru-cache": "^6.0.0"
+ "undici-types": "~5.26.4"
}
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
}
}
},
- "@opentelemetry/instrumentation-redis": {
- "version": "file:plugins/node/opentelemetry-instrumentation-redis",
+ "@opentelemetry/auto-instrumentations-node": {
+ "version": "file:metapackages/auto-instrumentations-node",
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/redis-common": "^0.36.2",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/api": "^1.4.1",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/instrumentation-amqplib": "^0.43.0",
+ "@opentelemetry/instrumentation-aws-lambda": "^0.47.0",
+ "@opentelemetry/instrumentation-aws-sdk": "^0.46.0",
+ "@opentelemetry/instrumentation-bunyan": "^0.42.0",
+ "@opentelemetry/instrumentation-cassandra-driver": "^0.42.0",
+ "@opentelemetry/instrumentation-connect": "^0.40.0",
+ "@opentelemetry/instrumentation-cucumber": "^0.10.0",
+ "@opentelemetry/instrumentation-dataloader": "^0.13.0",
+ "@opentelemetry/instrumentation-dns": "^0.40.0",
+ "@opentelemetry/instrumentation-express": "^0.44.0",
+ "@opentelemetry/instrumentation-fastify": "^0.41.0",
+ "@opentelemetry/instrumentation-fs": "^0.16.0",
+ "@opentelemetry/instrumentation-generic-pool": "^0.40.0",
+ "@opentelemetry/instrumentation-graphql": "^0.44.0",
+ "@opentelemetry/instrumentation-grpc": "^0.54.0",
+ "@opentelemetry/instrumentation-hapi": "^0.42.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
+ "@opentelemetry/instrumentation-ioredis": "^0.44.0",
+ "@opentelemetry/instrumentation-kafkajs": "^0.4.0",
+ "@opentelemetry/instrumentation-knex": "^0.41.0",
+ "@opentelemetry/instrumentation-koa": "^0.44.0",
+ "@opentelemetry/instrumentation-lru-memoizer": "^0.41.0",
+ "@opentelemetry/instrumentation-memcached": "^0.40.0",
+ "@opentelemetry/instrumentation-mongodb": "^0.48.0",
+ "@opentelemetry/instrumentation-mongoose": "^0.43.0",
+ "@opentelemetry/instrumentation-mysql": "^0.42.0",
+ "@opentelemetry/instrumentation-mysql2": "^0.42.1",
+ "@opentelemetry/instrumentation-nestjs-core": "^0.41.0",
+ "@opentelemetry/instrumentation-net": "^0.40.0",
+ "@opentelemetry/instrumentation-pg": "^0.47.1",
+ "@opentelemetry/instrumentation-pino": "^0.43.0",
+ "@opentelemetry/instrumentation-redis": "^0.43.0",
+ "@opentelemetry/instrumentation-redis-4": "^0.43.0",
+ "@opentelemetry/instrumentation-restify": "^0.42.0",
+ "@opentelemetry/instrumentation-router": "^0.41.0",
+ "@opentelemetry/instrumentation-socket.io": "^0.43.0",
+ "@opentelemetry/instrumentation-tedious": "^0.15.0",
+ "@opentelemetry/instrumentation-undici": "^0.7.1",
+ "@opentelemetry/instrumentation-winston": "^0.41.0",
+ "@opentelemetry/resource-detector-alibaba-cloud": "^0.29.4",
+ "@opentelemetry/resource-detector-aws": "^1.7.0",
+ "@opentelemetry/resource-detector-azure": "^0.2.12",
+ "@opentelemetry/resource-detector-container": "^0.5.0",
+ "@opentelemetry/resource-detector-gcp": "^0.29.13",
+ "@opentelemetry/resources": "^1.24.0",
+ "@opentelemetry/sdk-node": "^0.54.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/redis": "2.8.32",
- "cross-env": "7.0.3",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "redis": "3.1.2",
- "rimraf": "5.0.5",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
"typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@opentelemetry/instrumentation-redis-4": {
- "version": "file:plugins/node/opentelemetry-instrumentation-redis-4",
+ "@opentelemetry/auto-instrumentations-web": {
+ "version": "file:metapackages/auto-instrumentations-web",
"requires": {
+ "@babel/core": "7.24.6",
+ "@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/redis-common": "^0.36.2",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "cross-env": "7.0.3",
- "mocha": "7.2.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/instrumentation-document-load": "^0.41.0",
+ "@opentelemetry/instrumentation-fetch": "^0.54.0",
+ "@opentelemetry/instrumentation-user-interaction": "^0.41.0",
+ "@opentelemetry/instrumentation-xml-http-request": "^0.54.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "@types/webpack-env": "1.16.3",
+ "assert": "2.0.0",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
+ "karma-chrome-launcher": "3.1.0",
+ "karma-coverage": "2.2.1",
+ "karma-mocha": "2.0.1",
+ "karma-spec-reporter": "0.0.36",
+ "karma-webpack": "5.0.1",
"nyc": "15.1.0",
- "redis": "4.1.0",
- "rimraf": "5.0.5",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
+ "rimraf": "5.0.10",
+ "sinon": "15.1.2",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4",
+ "webpack": "5.94.0",
+ "webpack-cli": "5.1.4",
+ "webpack-merge": "5.10.0"
},
"dependencies": {
- "redis": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/redis/-/redis-4.1.0.tgz",
- "integrity": "sha512-5hvJ8wbzpCCiuN1ges6tx2SAh2XXCY0ayresBmu40/SGusWHFW86TAlIPpbimMX2DFHOX7RN34G2XlPA1Z43zg==",
+ "@babel/core": {
+ "version": "7.24.6",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
+ "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
+ "dev": true,
+ "requires": {
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.24.6",
+ "@babel/generator": "^7.24.6",
+ "@babel/helper-compilation-targets": "^7.24.6",
+ "@babel/helper-module-transforms": "^7.24.6",
+ "@babel/helpers": "^7.24.6",
+ "@babel/parser": "^7.24.6",
+ "@babel/template": "^7.24.6",
+ "@babel/traverse": "^7.24.6",
+ "@babel/types": "^7.24.6",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true
+ }
+ }
+ },
+ "@sinonjs/commons": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
+ "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
"dev": true,
"requires": {
- "@redis/bloom": "1.0.2",
- "@redis/client": "1.1.0",
- "@redis/graph": "1.0.1",
- "@redis/json": "1.0.3",
- "@redis/search": "1.0.6",
- "@redis/time-series": "1.0.3"
+ "type-detect": "4.0.8"
+ }
+ },
+ "@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ },
+ "convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true
+ },
+ "diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
+ "dev": true
+ },
+ "sinon": {
+ "version": "15.1.2",
+ "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
+ "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ "dev": true,
+ "requires": {
+ "@sinonjs/commons": "^3.0.0",
+ "@sinonjs/fake-timers": "^10.1.0",
+ "@sinonjs/samsam": "^8.0.0",
+ "diff": "^5.1.0",
+ "nise": "^5.1.4",
+ "supports-color": "^7.2.0"
+ },
+ "dependencies": {
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
}
}
}
},
- "@opentelemetry/instrumentation-restify": {
- "version": "file:plugins/node/opentelemetry-instrumentation-restify",
+ "@opentelemetry/baggage-span-processor": {
+ "version": "file:packages/baggage-span-processor",
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/restify": "4.3.10",
- "@types/semver": "7.5.3",
- "mocha": "7.2.0",
+ "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/sdk-trace-base": "^1.0.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "expect": "29.2.0",
"nyc": "15.1.0",
- "restify": "11.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
- "test-all-versions": "^6.0.0",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"dependencies": {
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "dev": true
},
- "semver": {
- "version": "7.5.4",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz",
- "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "lru-cache": "^6.0.0"
+ "undici-types": "~5.26.4"
}
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
}
}
},
- "@opentelemetry/instrumentation-router": {
- "version": "file:plugins/node/opentelemetry-instrumentation-router",
+ "@opentelemetry/context-async-hooks": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/context-async-hooks/-/context-async-hooks-1.27.0.tgz",
+ "integrity": "sha512-CdZ3qmHCwNhFAzjTgHqrDQ44Qxcpz43cVxZRhOs+Ns/79ug+Mr84Bkb626bkJLkA3+BLimA5YAEVRlJC6pFb7g==",
+ "requires": {}
+ },
+ "@opentelemetry/context-zone-peer-dep": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/context-zone-peer-dep/-/context-zone-peer-dep-1.27.0.tgz",
+ "integrity": "sha512-gVeOOpqnLgP51F0EJGHeoAJmAHxXXroT1Tk2WVnMf/22jTiAunYzFFsMaqmcH8mNqjTYBLJb28Rz0tInO7uClg==",
+ "dev": true,
+ "requires": {}
+ },
+ "@opentelemetry/contrib-test-utils": {
+ "version": "file:packages/opentelemetry-test-utils",
"requires": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/core": "^1.0.0",
+ "@opentelemetry/exporter-jaeger": "^1.3.1",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/otlp-transformer": "^0.54.0",
+ "@opentelemetry/resources": "^1.8.0",
+ "@opentelemetry/sdk-metrics": "^1.27.0",
+ "@opentelemetry/sdk-node": "^0.54.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "router": "1.3.8",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- }
- },
- "@opentelemetry/instrumentation-runtime-node": {
- "version": "file:plugins/node/instrumentation-runtime-node",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-metrics": "^1.20.0",
- "@types/mocha": "^10.0.6",
- "@types/node": "^20.11.2",
- "mocha": "7.2.0",
- "nyc": "^15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/node": "18.18.14",
"typescript": "4.4.4"
},
"dependencies": {
- "@types/mocha": {
- "version": "10.0.6",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
- "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
- "dev": true
- },
"@types/node": {
- "version": "20.11.20",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-20.11.20.tgz",
- "integrity": "sha512-7/rR21OS+fq8IyHTgtLkDK949uzsa6n8BkziAKtPVpugIkO6D+/ooXMvzXxDnZrmtXVfjb1bKQafYpb8s89LOg==",
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
"undici-types": "~5.26.4"
@@ -54153,880 +48182,909 @@
}
}
},
- "@opentelemetry/instrumentation-socket.io": {
- "version": "file:plugins/node/instrumentation-socket.io",
+ "@opentelemetry/core": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/core/-/core-1.27.0.tgz",
+ "integrity": "sha512-yQPKnK5e+76XuiqUH/gKyS8wv/7qITd5ln56QkBTf3uggr0VkXOXfcaAuG330UfdYu83wsyoBwqwxigpIG+Jkg==",
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "8.2.3",
+ "@opentelemetry/semantic-conventions": "1.27.0"
+ }
+ },
+ "@opentelemetry/esbuild-plugin-node": {
+ "version": "file:packages/esbuild-plugin-node",
+ "requires": {
+ "@opentelemetry/api": "^1.9.0",
+ "@opentelemetry/auto-instrumentations-node": "0.52.1",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-node": "^0.54.0",
+ "@types/mocha": "7.0.2",
"@types/node": "18.6.5",
- "expect": "27.4.2",
+ "esbuild": "0.24.x",
+ "fastify": "4.15.0",
"mocha": "7.2.0",
"nyc": "15.1.0",
+ "pino": "^8.19.0",
+ "redis": "^4.7.0",
"rimraf": "5.0.5",
- "socket.io": "^4.1.3",
- "socket.io-client": "^4.1.3",
- "test-all-versions": "6.1.0",
"ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@jest/types": {
- "version": "27.5.1",
- "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz",
- "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==",
- "dev": true,
- "requires": {
- "@types/istanbul-lib-coverage": "^2.0.0",
- "@types/istanbul-reports": "^3.0.0",
- "@types/node": "*",
- "@types/yargs": "^16.0.0",
- "chalk": "^4.0.0"
- }
+ "@esbuild/aix-ppc64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.24.0.tgz",
+ "integrity": "sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==",
+ "optional": true
},
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
- "dev": true
+ "@esbuild/android-arm": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.24.0.tgz",
+ "integrity": "sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==",
+ "optional": true
},
- "@types/yargs": {
- "version": "16.0.9",
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.9.tgz",
- "integrity": "sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA==",
- "dev": true,
- "requires": {
- "@types/yargs-parser": "*"
- }
+ "@esbuild/android-arm64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.24.0.tgz",
+ "integrity": "sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==",
+ "optional": true
},
- "ansi-regex": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
- "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
- "dev": true
+ "@esbuild/android-x64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.24.0.tgz",
+ "integrity": "sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==",
+ "optional": true
},
- "ansi-styles": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
- "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
- "dev": true
+ "@esbuild/darwin-arm64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.24.0.tgz",
+ "integrity": "sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==",
+ "optional": true
},
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "@esbuild/darwin-x64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.24.0.tgz",
+ "integrity": "sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==",
+ "optional": true
+ },
+ "@esbuild/freebsd-arm64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.24.0.tgz",
+ "integrity": "sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==",
+ "optional": true
+ },
+ "@esbuild/freebsd-x64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.24.0.tgz",
+ "integrity": "sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==",
+ "optional": true
+ },
+ "@esbuild/linux-arm": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.24.0.tgz",
+ "integrity": "sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==",
+ "optional": true
+ },
+ "@esbuild/linux-arm64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.24.0.tgz",
+ "integrity": "sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==",
+ "optional": true
+ },
+ "@esbuild/linux-ia32": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.24.0.tgz",
+ "integrity": "sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==",
+ "optional": true
+ },
+ "@esbuild/linux-loong64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.24.0.tgz",
+ "integrity": "sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==",
+ "optional": true
+ },
+ "@esbuild/linux-mips64el": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.24.0.tgz",
+ "integrity": "sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==",
+ "optional": true
+ },
+ "@esbuild/linux-ppc64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.24.0.tgz",
+ "integrity": "sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==",
+ "optional": true
+ },
+ "@esbuild/linux-riscv64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.24.0.tgz",
+ "integrity": "sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==",
+ "optional": true
+ },
+ "@esbuild/linux-s390x": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.24.0.tgz",
+ "integrity": "sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==",
+ "optional": true
+ },
+ "@esbuild/linux-x64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.24.0.tgz",
+ "integrity": "sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==",
+ "optional": true
+ },
+ "@esbuild/netbsd-x64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.24.0.tgz",
+ "integrity": "sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==",
+ "optional": true
+ },
+ "@esbuild/openbsd-x64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.24.0.tgz",
+ "integrity": "sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==",
+ "optional": true
+ },
+ "@esbuild/sunos-x64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.24.0.tgz",
+ "integrity": "sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==",
+ "optional": true
+ },
+ "@esbuild/win32-arm64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.24.0.tgz",
+ "integrity": "sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==",
+ "optional": true
+ },
+ "@esbuild/win32-ia32": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.24.0.tgz",
+ "integrity": "sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==",
+ "optional": true
+ },
+ "@esbuild/win32-x64": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.24.0.tgz",
+ "integrity": "sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==",
+ "optional": true
+ },
+ "@redis/bloom": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@redis/bloom/-/bloom-1.2.0.tgz",
+ "integrity": "sha512-HG2DFjYKbpNmVXsa0keLHp/3leGJz1mjh09f2RLGGLQZzSHpkmZWuwJbAvo3QcRY8p80m5+ZdXZdYOSBLlp7Cg==",
"dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- }
- }
+ "requires": {}
},
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "@redis/client": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.6.0.tgz",
+ "integrity": "sha512-aR0uffYI700OEEH4gYnitAnv3vzVGXCFvYfdpu/CJKvk4pHfLPEy/JSZyrpQ+15WhXe1yJRXLtfQ84s4mEXnPg==",
"dev": true,
"requires": {
- "color-name": "~1.1.4"
+ "cluster-key-slot": "1.1.2",
+ "generic-pool": "3.9.0",
+ "yallist": "4.0.0"
}
},
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
+ "@redis/graph": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@redis/graph/-/graph-1.1.1.tgz",
+ "integrity": "sha512-FEMTcTHZozZciLRl6GiiIB4zGm5z5F3F6a6FZCyrfxdKOhFlGkiAqlexWMBzCi4DcRoyiOsuLfW+cjlGWyExOw==",
+ "dev": true,
+ "requires": {}
},
- "diff-sequences": {
- "version": "27.5.1",
- "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz",
- "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==",
+ "@redis/json": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/@redis/json/-/json-1.0.7.tgz",
+ "integrity": "sha512-6UyXfjVaTBTJtKNG4/9Z8PSpKE6XgSyEb8iwaqDcy+uKrd/DGYHTWkUdnQDyzm727V7p21WUMhsqz5oy65kPcQ==",
+ "dev": true,
+ "requires": {}
+ },
+ "@redis/search": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@redis/search/-/search-1.2.0.tgz",
+ "integrity": "sha512-tYoDBbtqOVigEDMAcTGsRlMycIIjwMCgD8eR2t0NANeQmgK/lvxNAvYyb6bZDD4frHRhIHkJu2TBRvB0ERkOmw==",
+ "dev": true,
+ "requires": {}
+ },
+ "@redis/time-series": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@redis/time-series/-/time-series-1.1.0.tgz",
+ "integrity": "sha512-c1Q99M5ljsIuc4YdaCwfUEXsofakb9c8+Zse2qxTadu8TalLXuAESzLvFAvNVbkmSlvlzIQOLpBCmWI9wTOt+g==",
+ "dev": true,
+ "requires": {}
+ },
+ "ansi-colors": {
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz",
+ "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==",
"dev": true
},
- "expect": {
- "version": "27.4.2",
- "resolved": "https://registry.npmjs.org/expect/-/expect-27.4.2.tgz",
- "integrity": "sha512-BjAXIDC6ZOW+WBFNg96J22D27Nq5ohn+oGcuP2rtOtcjuxNoV9McpQ60PcQWhdFOSBIQdR72e+4HdnbZTFSTyg==",
+ "argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
"dev": true,
"requires": {
- "@jest/types": "^27.4.2",
- "ansi-styles": "^5.0.0",
- "jest-get-type": "^27.4.0",
- "jest-matcher-utils": "^27.4.2",
- "jest-message-util": "^27.4.2",
- "jest-regex-util": "^27.4.0"
+ "sprintf-js": "~1.0.2"
}
},
- "jest-diff": {
- "version": "27.5.1",
- "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz",
- "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==",
+ "buffer": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
+ "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
"dev": true,
"requires": {
- "chalk": "^4.0.0",
- "diff-sequences": "^27.5.1",
- "jest-get-type": "^27.5.1",
- "pretty-format": "^27.5.1"
+ "base64-js": "^1.3.1",
+ "ieee754": "^1.2.1"
}
},
- "jest-get-type": {
- "version": "27.5.1",
- "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz",
- "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==",
- "dev": true
- },
- "jest-matcher-utils": {
- "version": "27.5.1",
- "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz",
- "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==",
+ "chokidar": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz",
+ "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==",
"dev": true,
"requires": {
- "chalk": "^4.0.0",
- "jest-diff": "^27.5.1",
- "jest-get-type": "^27.5.1",
- "pretty-format": "^27.5.1"
+ "anymatch": "~3.1.1",
+ "braces": "~3.0.2",
+ "fsevents": "~2.1.1",
+ "glob-parent": "~5.1.0",
+ "is-binary-path": "~2.1.0",
+ "is-glob": "~4.0.1",
+ "normalize-path": "~3.0.0",
+ "readdirp": "~3.2.0"
}
},
- "jest-message-util": {
- "version": "27.5.1",
- "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz",
- "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==",
+ "cliui": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
+ "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
"dev": true,
"requires": {
- "@babel/code-frame": "^7.12.13",
- "@jest/types": "^27.5.1",
- "@types/stack-utils": "^2.0.0",
- "chalk": "^4.0.0",
- "graceful-fs": "^4.2.9",
- "micromatch": "^4.0.4",
- "pretty-format": "^27.5.1",
- "slash": "^3.0.0",
- "stack-utils": "^2.0.3"
+ "string-width": "^3.1.0",
+ "strip-ansi": "^5.2.0",
+ "wrap-ansi": "^5.1.0"
}
},
- "pretty-format": {
- "version": "27.5.1",
- "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz",
- "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==",
+ "debug": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
"dev": true,
"requires": {
- "ansi-regex": "^5.0.1",
- "ansi-styles": "^5.0.0",
- "react-is": "^17.0.1"
+ "ms": "^2.1.1"
}
},
- "react-is": {
- "version": "17.0.2",
- "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
- "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
+ "diff": {
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz",
+ "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==",
"dev": true
},
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+ "dev": true
+ },
+ "esbuild": {
+ "version": "0.24.0",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.24.0.tgz",
+ "integrity": "sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==",
+ "requires": {
+ "@esbuild/aix-ppc64": "0.24.0",
+ "@esbuild/android-arm": "0.24.0",
+ "@esbuild/android-arm64": "0.24.0",
+ "@esbuild/android-x64": "0.24.0",
+ "@esbuild/darwin-arm64": "0.24.0",
+ "@esbuild/darwin-x64": "0.24.0",
+ "@esbuild/freebsd-arm64": "0.24.0",
+ "@esbuild/freebsd-x64": "0.24.0",
+ "@esbuild/linux-arm": "0.24.0",
+ "@esbuild/linux-arm64": "0.24.0",
+ "@esbuild/linux-ia32": "0.24.0",
+ "@esbuild/linux-loong64": "0.24.0",
+ "@esbuild/linux-mips64el": "0.24.0",
+ "@esbuild/linux-ppc64": "0.24.0",
+ "@esbuild/linux-riscv64": "0.24.0",
+ "@esbuild/linux-s390x": "0.24.0",
+ "@esbuild/linux-x64": "0.24.0",
+ "@esbuild/netbsd-x64": "0.24.0",
+ "@esbuild/openbsd-arm64": "0.24.0",
+ "@esbuild/openbsd-x64": "0.24.0",
+ "@esbuild/sunos-x64": "0.24.0",
+ "@esbuild/win32-arm64": "0.24.0",
+ "@esbuild/win32-ia32": "0.24.0",
+ "@esbuild/win32-x64": "0.24.0"
+ }
+ },
+ "events": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
+ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+ "dev": true
+ },
+ "fastify": {
+ "version": "4.15.0",
+ "resolved": "https://registry.npmjs.org/fastify/-/fastify-4.15.0.tgz",
+ "integrity": "sha512-m/CaRN8nf5uyYdrDe2qqq+0z3oGyE+A++qlKQoLJTI4WI0nWK9D6R3FxXQ3MVwt/md977GMR4F43pE9oqrS2zw==",
"dev": true,
"requires": {
- "has-flag": "^4.0.0"
+ "@fastify/ajv-compiler": "^3.5.0",
+ "@fastify/error": "^3.0.0",
+ "@fastify/fast-json-stringify-compiler": "^4.2.0",
+ "abstract-logging": "^2.0.1",
+ "avvio": "^8.2.0",
+ "fast-content-type-parse": "^1.0.0",
+ "find-my-way": "^7.6.0",
+ "light-my-request": "^5.6.1",
+ "pino": "^8.5.0",
+ "process-warning": "^2.0.0",
+ "proxy-addr": "^2.0.7",
+ "rfdc": "^1.3.0",
+ "secure-json-parse": "^2.5.0",
+ "semver": "^7.3.7",
+ "tiny-lru": "^10.0.0"
}
- }
- }
- },
- "@opentelemetry/instrumentation-tedious": {
- "version": "file:plugins/node/instrumentation-tedious",
- "requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/tedious": "^4.0.10",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.6.0",
- "tedious": "17.0.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "bl": {
- "version": "6.0.12",
- "resolved": "https://registry.npmjs.org/bl/-/bl-6.0.12.tgz",
- "integrity": "sha512-EnEYHilP93oaOa2MnmNEjAcovPS3JlQZOyzGXi3EyEpPhm9qWvdDp7BmAVEVusGzp8LlwQK56Av+OkDoRjzE0w==",
+ },
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
"dev": true,
"requires": {
- "@types/readable-stream": "^4.0.0",
- "buffer": "^6.0.3",
- "inherits": "^2.0.4",
- "readable-stream": "^4.2.0"
+ "locate-path": "^3.0.0"
}
},
- "buffer": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
- "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
+ "flat": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz",
+ "integrity": "sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==",
"dev": true,
"requires": {
- "base64-js": "^1.3.1",
- "ieee754": "^1.2.1"
+ "is-buffer": "~2.0.3"
}
},
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+ "fsevents": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
+ "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
+ "dev": true,
+ "optional": true
+ },
+ "generic-pool": {
+ "version": "3.9.0",
+ "resolved": "https://registry.npmjs.org/generic-pool/-/generic-pool-3.9.0.tgz",
+ "integrity": "sha512-hymDOu5B53XvN4QT9dBmZxPX4CWhBPPLguTZ9MMFeFa/Kg0xWVfylOVNlJji/E7yTZWFd/q9GO5TxDLq156D7g==",
"dev": true
},
- "iconv-lite": {
- "version": "0.6.3",
- "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
- "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "glob-parent": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
+ "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
"dev": true,
"requires": {
- "safer-buffer": ">= 2.1.2 < 3.0.0"
+ "is-glob": "^4.0.1"
}
},
+ "has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
+ "dev": true
+ },
"ieee754": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
"integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
"dev": true
},
- "readable-stream": {
- "version": "4.5.2",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz",
- "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==",
- "dev": true,
- "requires": {
- "abort-controller": "^3.0.0",
- "buffer": "^6.0.3",
- "events": "^3.3.0",
- "process": "^0.11.10",
- "string_decoder": "^1.3.0"
- }
+ "is-fullwidth-code-point": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+ "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
+ "dev": true
},
- "tedious": {
- "version": "17.0.0",
- "resolved": "https://registry.npmjs.org/tedious/-/tedious-17.0.0.tgz",
- "integrity": "sha512-tXsl/kvDAFpnXU+ooEOQyrXdJFD0/OWvPq9i1bDhbOvoFGcrZURiXyUxbI8gJPsG6o2K5fs3HX6zRTSxuCUC5g==",
+ "js-yaml": {
+ "version": "3.13.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
+ "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
"dev": true,
"requires": {
- "@azure/identity": "^3.4.1",
- "@azure/keyvault-keys": "^4.4.0",
- "@js-joda/core": "^5.5.3",
- "bl": "^6.0.3",
- "es-aggregate-error": "^1.0.9",
- "iconv-lite": "^0.6.3",
- "js-md4": "^0.3.2",
- "jsbi": "^4.3.0",
- "native-duplexpair": "^1.0.0",
- "node-abort-controller": "^3.1.1",
- "sprintf-js": "^1.1.2"
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
}
- }
- }
- },
- "@opentelemetry/instrumentation-undici": {
- "version": "file:plugins/node/instrumentation-undici",
- "requires": {
- "@opentelemetry/api": "^1.7.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-metrics": "^1.8.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-node": "^1.8.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "^7.6.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4",
- "undici": "6.11.1"
- }
- },
- "@opentelemetry/instrumentation-user-interaction": {
- "version": "file:plugins/web/opentelemetry-instrumentation-user-interaction",
- "requires": {
- "@babel/core": "7.24.6",
- "@babel/preset-env": "7.24.6",
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/context-zone-peer-dep": "^1.8.0",
- "@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/instrumentation-xml-http-request": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/sdk-trace-web": "^1.8.0",
- "@types/jquery": "3.5.30",
- "@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
- "@types/webpack-env": "1.16.3",
- "assert": "2.0.0",
- "babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
- "karma-chrome-launcher": "3.1.0",
- "karma-coverage": "2.2.1",
- "karma-jquery": "0.2.4",
- "karma-mocha": "2.0.1",
- "karma-spec-reporter": "0.0.36",
- "karma-webpack": "5.0.1",
- "mocha": "10.2.0",
- "nyc": "15.1.0",
- "sinon": "15.1.2",
- "ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4",
- "webpack": "5.89.0",
- "webpack-cli": "5.1.4",
- "webpack-merge": "5.10.0",
- "zone.js": "^0.11.4 || ^0.13.0 || ^0.14.0"
- },
- "dependencies": {
- "@babel/core": {
- "version": "7.24.6",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
- "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
"dev": true,
"requires": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.24.6",
- "@babel/generator": "^7.24.6",
- "@babel/helper-compilation-targets": "^7.24.6",
- "@babel/helper-module-transforms": "^7.24.6",
- "@babel/helpers": "^7.24.6",
- "@babel/parser": "^7.24.6",
- "@babel/template": "^7.24.6",
- "@babel/traverse": "^7.24.6",
- "@babel/types": "^7.24.6",
- "convert-source-map": "^2.0.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.3",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
}
},
- "@sinonjs/commons": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
- "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
+ "log-symbols": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz",
+ "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==",
"dev": true,
"requires": {
- "type-detect": "4.0.8"
+ "chalk": "^2.4.2"
}
},
- "@types/mocha": {
- "version": "10.0.6",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
- "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
- "dev": true
- },
- "@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
+ "minimatch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"dev": true,
"requires": {
- "@types/sinonjs__fake-timers": "*"
+ "brace-expansion": "^1.1.7"
}
},
- "ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
- "dev": true
- },
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "mkdirp": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
"dev": true,
"requires": {
- "color-convert": "^2.0.1"
+ "minimist": "^1.2.5"
}
},
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
- "dev": true
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "mocha": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz",
+ "integrity": "sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==",
"dev": true,
"requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
+ "ansi-colors": "3.2.3",
+ "browser-stdout": "1.3.1",
+ "chokidar": "3.3.0",
+ "debug": "3.2.6",
+ "diff": "3.5.0",
+ "escape-string-regexp": "1.0.5",
+ "find-up": "3.0.0",
+ "glob": "7.1.3",
+ "growl": "1.10.5",
+ "he": "1.2.0",
+ "js-yaml": "3.13.1",
+ "log-symbols": "3.0.0",
+ "minimatch": "3.0.4",
+ "mkdirp": "0.5.5",
+ "ms": "2.1.1",
+ "node-environment-flags": "1.0.6",
+ "object.assign": "4.1.0",
+ "strip-json-comments": "2.0.1",
+ "supports-color": "6.0.0",
+ "which": "1.3.1",
+ "wide-align": "1.1.3",
+ "yargs": "13.3.2",
+ "yargs-parser": "13.1.2",
+ "yargs-unparser": "1.6.0"
},
"dependencies": {
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "glob": {
+ "version": "7.1.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
+ "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
"dev": true,
"requires": {
- "has-flag": "^4.0.0"
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
}
}
}
},
- "chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
+ "ms": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
+ "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
+ "dev": true
+ },
+ "object.assign": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
+ "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
"dev": true,
"requires": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "fsevents": "~2.3.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
+ "define-properties": "^1.1.2",
+ "function-bind": "^1.1.1",
+ "has-symbols": "^1.0.0",
+ "object-keys": "^1.0.11"
}
},
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
"dev": true,
"requires": {
- "color-name": "~1.1.4"
+ "p-try": "^2.0.0"
}
},
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.0.0"
+ }
},
- "decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
+ "path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
+ "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
"dev": true
},
- "diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
- "dev": true
+ "pino": {
+ "version": "8.21.0",
+ "resolved": "https://registry.npmjs.org/pino/-/pino-8.21.0.tgz",
+ "integrity": "sha512-ip4qdzjkAyDDZklUaZkcRFb2iA118H9SgRh8yzTkSQK8HilsOJF7rSY8HoW5+I0M46AZgX/pxbprf2vvzQCE0Q==",
+ "dev": true,
+ "requires": {
+ "atomic-sleep": "^1.0.0",
+ "fast-redact": "^3.1.1",
+ "on-exit-leak-free": "^2.1.0",
+ "pino-abstract-transport": "^1.2.0",
+ "pino-std-serializers": "^6.0.0",
+ "process-warning": "^3.0.0",
+ "quick-format-unescaped": "^4.0.3",
+ "real-require": "^0.2.0",
+ "safe-stable-stringify": "^2.3.1",
+ "sonic-boom": "^3.7.0",
+ "thread-stream": "^2.6.0"
+ },
+ "dependencies": {
+ "process-warning": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/process-warning/-/process-warning-3.0.0.tgz",
+ "integrity": "sha512-mqn0kFRl0EoqhnL0GQ0veqFHyIN1yig9RHh/InzORTUiZHFRAur+aMtRkELNwGs9aNwKS6tg/An4NYBPGwvtzQ==",
+ "dev": true
+ }
+ }
},
- "enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
+ "pino-abstract-transport": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/pino-abstract-transport/-/pino-abstract-transport-1.2.0.tgz",
+ "integrity": "sha512-Guhh8EZfPCfH+PMXAb6rKOjGQEoy0xlAIn+irODG5kgfYV+BQ0rGYYWTIel3P5mmyXqkYkPmdIkywsn6QKUR1Q==",
"dev": true,
"requires": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
+ "readable-stream": "^4.0.0",
+ "split2": "^4.0.0"
}
},
- "escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true
+ "readable-stream": {
+ "version": "4.5.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz",
+ "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==",
+ "dev": true,
+ "requires": {
+ "abort-controller": "^3.0.0",
+ "buffer": "^6.0.3",
+ "events": "^3.3.0",
+ "process": "^0.11.10",
+ "string_decoder": "^1.3.0"
+ }
},
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true
+ "readdirp": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz",
+ "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==",
+ "dev": true,
+ "requires": {
+ "picomatch": "^2.0.4"
+ }
},
- "glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
+ "redis": {
+ "version": "4.7.0",
+ "resolved": "https://registry.npmjs.org/redis/-/redis-4.7.0.tgz",
+ "integrity": "sha512-zvmkHEAdGMn+hMRXuMBtu4Vo5P6rHQjLoHftu+lBqq8ZTA3RCVC/WzD790bkKKiNFp7d5/9PcSD19fJyyRvOdQ==",
"dev": true,
"requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "dependencies": {
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- }
+ "@redis/bloom": "1.2.0",
+ "@redis/client": "1.6.0",
+ "@redis/graph": "1.1.1",
+ "@redis/json": "1.0.7",
+ "@redis/search": "1.2.0",
+ "@redis/time-series": "1.1.0"
}
},
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "rimraf": {
+ "version": "5.0.5",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz",
+ "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==",
"dev": true,
"requires": {
- "is-glob": "^4.0.1"
+ "glob": "^10.3.7"
}
},
- "is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
+ "split2": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz",
+ "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==",
"dev": true
},
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
+ "sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
"dev": true
},
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ "string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
"dev": true,
"requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.1.0"
}
},
- "minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
"dev": true,
"requires": {
- "brace-expansion": "^2.0.1"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "requires": {
- "balanced-match": "^1.0.0"
- }
- }
+ "ansi-regex": "^4.1.0"
}
},
- "mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
+ "strip-json-comments": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
+ "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz",
+ "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==",
"dev": true,
"requires": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
+ "has-flag": "^3.0.0"
}
},
- "ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- },
- "nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+ "tiny-lru": {
+ "version": "10.4.1",
+ "resolved": "https://registry.npmjs.org/tiny-lru/-/tiny-lru-10.4.1.tgz",
+ "integrity": "sha512-buLIzw7ppqymuO3pt10jHk/6QMeZLbidihMQU+N6sogF6EnBzG0qtDWIHuhw1x3dyNgVL/KTGIZsTK81+yCzLg==",
"dev": true
},
- "schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+ "which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
"dev": true,
"requires": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
+ "isexe": "^2.0.0"
}
},
- "sinon": {
- "version": "15.1.2",
- "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
- "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ "wrap-ansi": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
+ "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
"dev": true,
"requires": {
- "@sinonjs/commons": "^3.0.0",
- "@sinonjs/fake-timers": "^10.1.0",
- "@sinonjs/samsam": "^8.0.0",
- "diff": "^5.1.0",
- "nise": "^5.1.4",
- "supports-color": "^7.2.0"
- },
- "dependencies": {
- "diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "ansi-styles": "^3.2.0",
+ "string-width": "^3.0.0",
+ "strip-ansi": "^5.0.0"
}
},
- "source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "y18n": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
+ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
"dev": true
},
- "tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"dev": true
},
- "ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
- "dev": true,
- "requires": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
- }
- },
- "webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
+ "yargs": {
+ "version": "13.3.2",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
+ "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
"dev": true,
"requires": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
+ "cliui": "^5.0.0",
+ "find-up": "^3.0.0",
+ "get-caller-file": "^2.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^2.0.0",
+ "set-blocking": "^2.0.0",
+ "string-width": "^3.0.0",
+ "which-module": "^2.0.0",
+ "y18n": "^4.0.0",
+ "yargs-parser": "^13.1.2"
}
},
- "yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+ "yargs-parser": {
+ "version": "13.1.2",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
+ "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
"dev": true,
"requires": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
}
},
"yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz",
+ "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==",
"dev": true,
"requires": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
+ "flat": "^4.1.0",
+ "lodash": "^4.17.15",
+ "yargs": "^13.3.0"
}
}
}
},
- "@opentelemetry/instrumentation-winston": {
- "version": "file:plugins/node/opentelemetry-instrumentation-winston",
+ "@opentelemetry/exporter-jaeger": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.27.0.tgz",
+ "integrity": "sha512-ULWBtyNQDQQBWTkoCPfpGZTXZ9gLOFHeLZ3BoeZAkxYOgqqTH83IDRbtH8sHt6j84OPQfAcd18uHOb/lc9q0Bw==",
"requires": {
- "@opentelemetry/api": "^1.3.0",
- "@opentelemetry/api-logs": "^0.52.0",
- "@opentelemetry/context-async-hooks": "^1.21.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.21.0",
- "@opentelemetry/sdk-trace-node": "^1.21.0",
- "@opentelemetry/winston-transport": "^0.4.0",
- "@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "@types/triple-beam": "^1.3.2",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4",
- "winston": "3.3.3",
- "winston2": "npm:winston@2.4.7"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0",
+ "jaeger-client": "^3.15.0"
}
},
- "@opentelemetry/instrumentation-xml-http-request": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-xml-http-request/-/instrumentation-xml-http-request-0.52.0.tgz",
- "integrity": "sha512-Q6dEFKBkVmLs6XByXNPkCZXYF1Ovs3fFCD33nA4d4dgBgv8zMPt7xBLIxfEw0QVDZhyBhKXwv7byvMDB+yYQdA==",
+ "@opentelemetry/exporter-logs-otlp-grpc": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-logs-otlp-grpc/-/exporter-logs-otlp-grpc-0.54.2.tgz",
+ "integrity": "sha512-MQNmV5r96+5n3axLFgNYtVy62x8Ru7VERZH3zgC50KDcIKWCiQT3vHOtzakhzd1Wq0HqOgu6bzKdwzneSoDrEQ==",
"requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/instrumentation": "0.52.0",
- "@opentelemetry/sdk-trace-web": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
+ "@grpc/grpc-js": "^1.7.1",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-grpc-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/sdk-logs": "0.54.2"
}
},
- "@opentelemetry/otlp-exporter-base": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.52.0.tgz",
- "integrity": "sha512-rlyg5UKW9yMTNMUxYYib9XxEE/krpH7Q6mIuJNOBMbjLwmqe1WQ2MNKNzobVZTKop/FX4CvyNN3wUEl/6gnvfw==",
+ "@opentelemetry/exporter-logs-otlp-http": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-logs-otlp-http/-/exporter-logs-otlp-http-0.54.2.tgz",
+ "integrity": "sha512-wYeCSbX2XWX2wFslnfQ/YFUolO0fj2nUiGI7oEQWpLKSg40Lc4xOOW14X/EXOkCCijhP7bigo6nvyEQlxEVLjA==",
"requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/otlp-transformer": "0.52.0"
+ "@opentelemetry/api-logs": "0.54.2",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/sdk-logs": "0.54.2"
}
},
- "@opentelemetry/otlp-grpc-exporter-base": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-grpc-exporter-base/-/otlp-grpc-exporter-base-0.52.0.tgz",
- "integrity": "sha512-iVq3wCElOoKUkxBOuvV8cfaELG8WO/zfLWIZil6iw/6hj6rktLodnJ7kVOneVmLki7Po1BjE1K7JOp2G3UPgYg==",
+ "@opentelemetry/exporter-logs-otlp-proto": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-logs-otlp-proto/-/exporter-logs-otlp-proto-0.54.2.tgz",
+ "integrity": "sha512-agrzFbSNmIy6dhkyg41ERlEDUDqkaUJj2n/tVRFp9Tl+6wyNVPsqmwU5RWJOXpyK+lYH/znv6A47VpTeJF0lrw==",
+ "requires": {
+ "@opentelemetry/api-logs": "0.54.2",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-logs": "0.54.2",
+ "@opentelemetry/sdk-trace-base": "1.27.0"
+ }
+ },
+ "@opentelemetry/exporter-trace-otlp-grpc": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-grpc/-/exporter-trace-otlp-grpc-0.54.2.tgz",
+ "integrity": "sha512-tmxiCYhQdPrzwlM6O7VQeNP9PBjKhaiOo54wFxQFZQcoVaDiOOES4+6PwHU1eW+43mDsgdQHN5AHSRHVLe9jDA==",
"requires": {
"@grpc/grpc-js": "^1.7.1",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/otlp-exporter-base": "0.52.0",
- "@opentelemetry/otlp-transformer": "0.52.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-grpc-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0"
}
},
- "@opentelemetry/otlp-transformer": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.52.0.tgz",
- "integrity": "sha512-40acy3JxCAqQYcYepypF/64GVB8jerC6Oiz1HRUXxiSTVwg+ud7UtywfOkPRpc9bjHiyJouWxTjiUPQ9VBMKbg==",
- "requires": {
- "@opentelemetry/api-logs": "0.52.0",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-logs": "0.52.0",
- "@opentelemetry/sdk-metrics": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
- "protobufjs": "^7.3.0"
+ "@opentelemetry/exporter-trace-otlp-http": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.54.2.tgz",
+ "integrity": "sha512-BgWKKyD/h2zpISdmYHN/sapwTjvt1P4p5yx4xeBV8XAEqh4OQUhOtSGFG80+nPQ1F8of3mKOT1DDoDbJp1u25w==",
+ "requires": {
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0"
}
},
- "@opentelemetry/plugin-react-load": {
- "version": "file:plugins/web/opentelemetry-plugin-react-load",
+ "@opentelemetry/exporter-trace-otlp-proto": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-trace-otlp-proto/-/exporter-trace-otlp-proto-0.54.2.tgz",
+ "integrity": "sha512-XSmm1N2wAhoWDXP1q/N6kpLebWaxl6VIADv4WA5QWKHLRpF3gLz5NAWNJBR8ygsvv8jQcrwnXgwfnJ18H3v1fg==",
+ "requires": {
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0"
+ }
+ },
+ "@opentelemetry/exporter-zipkin": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/exporter-zipkin/-/exporter-zipkin-1.27.0.tgz",
+ "integrity": "sha512-eGMY3s4QprspFZojqsuQyQpWNFpo+oNVE/aosTbtvAlrJBAlvXcwwsOROOHOd8Y9lkU4i0FpQW482rcXkgwCSw==",
+ "requires": {
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
+ }
+ },
+ "@opentelemetry/host-metrics": {
+ "version": "file:packages/opentelemetry-host-metrics",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/sdk-metrics": "^1.8.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "systeminformation": "5.22.9",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
+ }
+ },
+ "@opentelemetry/id-generator-aws-xray": {
+ "version": "file:packages/opentelemetry-id-generator-aws-xray",
"requires": {
"@babel/core": "7.24.6",
"@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/context-zone": "^1.0.0",
"@opentelemetry/core": "^1.0.0",
- "@opentelemetry/propagator-b3": "1.25.0",
- "@opentelemetry/sdk-trace-base": "^1.0.0",
- "@opentelemetry/sdk-trace-web": "^1.0.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/react": "17.0.67",
- "@types/react-addons-test-utils": "0.14.26",
- "@types/react-dom": "18.0.2",
- "@types/shimmer": "1.0.3",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
- "react": "17.0.2",
- "react-dom": "17.0.2",
- "rimraf": "5.0.5",
- "shimmer": "^1.2.1",
+ "rimraf": "5.0.10",
"sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0"
},
@@ -55077,44 +49135,39 @@
"integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
"dev": true
},
- "@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "@types/sinonjs__fake-timers": "*"
+ "undici-types": "~5.26.4"
}
},
- "ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
+ "convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true
},
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true
},
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "sinon": {
+ "version": "15.1.2",
+ "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
+ "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
"dev": true,
"requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
+ "@sinonjs/commons": "^3.0.0",
+ "@sinonjs/fake-timers": "^10.1.0",
+ "@sinonjs/samsam": "^8.0.0",
+ "diff": "^5.1.0",
+ "nise": "^5.1.4",
+ "supports-color": "^7.2.0"
},
"dependencies": {
"supports-color": {
@@ -55127,392 +49180,753 @@
}
}
}
+ }
+ }
+ },
+ "@opentelemetry/instrumentation": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation/-/instrumentation-0.54.2.tgz",
+ "integrity": "sha512-go6zpOVoZVztT9r1aPd79Fr3OWiD4N24bCPJsIKkBses8oyFo12F/Ew3UBTdIu6hsW4HC4MVEJygG6TEyJI/lg==",
+ "requires": {
+ "@opentelemetry/api-logs": "0.54.2",
+ "@types/shimmer": "^1.2.0",
+ "import-in-the-middle": "^1.8.1",
+ "require-in-the-middle": "^7.1.1",
+ "semver": "^7.5.2",
+ "shimmer": "^1.2.1"
+ },
+ "dependencies": {
+ "@types/shimmer": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@types/shimmer/-/shimmer-1.2.0.tgz",
+ "integrity": "sha512-UE7oxhQLLd9gub6JKIAhDq06T0F6FnztwMNRvYgjeQSBeMc1ZG/tA47EwfduvkuQS8apbkM/lpLpWsaCeYsXVg=="
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-amqplib": {
+ "version": "file:plugins/node/instrumentation-amqplib",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/amqplib": "^0.5.17",
+ "@types/lodash": "4.14.199",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "amqplib": "0.8.0",
+ "expect": "29.2.0",
+ "lodash": "4.17.21",
+ "nyc": "15.1.0",
+ "sinon": "15.2.0",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "dev": true
},
- "chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "fsevents": "~2.3.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
+ "undici-types": "~5.26.4"
}
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-aws-lambda": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-aws-lambda",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/propagator-aws-xray": "^1.25.1",
+ "@opentelemetry/propagator-aws-xray-lambda": "^0.53.0",
+ "@opentelemetry/sdk-metrics": "^1.8.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/aws-lambda": "8.10.143",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "color-name": "~1.1.4"
+ "undici-types": "~5.26.4"
}
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
- },
- "decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
- "dev": true
- },
- "diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-aws-sdk": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-aws-sdk",
+ "requires": {
+ "@aws-sdk/client-dynamodb": "3.85.0",
+ "@aws-sdk/client-kinesis": "3.85.0",
+ "@aws-sdk/client-lambda": "3.85.0",
+ "@aws-sdk/client-s3": "3.85.0",
+ "@aws-sdk/client-sns": "3.85.0",
+ "@aws-sdk/client-sqs": "3.85.0",
+ "@aws-sdk/types": "3.78.0",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/propagation-utils": "^0.30.12",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@smithy/node-http-handler": "2.4.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "aws-sdk": "2.1008.0",
+ "eslint": "8.7.0",
+ "expect": "29.2.0",
+ "nock": "13.3.3",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
- "enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
+ "undici-types": "~5.26.4"
}
- },
- "escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true
- },
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true
- },
- "glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-bunyan": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-bunyan",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/api-logs": "^0.54.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/resources": "^1.8.0",
+ "@opentelemetry/sdk-logs": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/bunyan": "1.8.9",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "bunyan": "1.8.15",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "dependencies": {
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- }
+ "undici-types": "~5.26.4"
}
- },
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-cassandra-driver": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-cassandra",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "@types/sinon": "10.0.20",
+ "cassandra-driver": "4.6.4",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "is-glob": "^4.0.1"
+ "undici-types": "~5.26.4"
}
- },
- "is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
- "dev": true
- },
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true
- },
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-connect": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-connect",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/connect": "3.4.36",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "connect": "3.7.0",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
+ "undici-types": "~5.26.4"
}
- },
- "minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-cucumber": {
+ "version": "file:plugins/node/instrumentation-cucumber",
+ "requires": {
+ "@cucumber/cucumber": "^9.0.0",
+ "@cucumber/messages": "^22.0.0",
+ "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/core": "^1.3.1",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.3.1",
+ "@opentelemetry/sdk-trace-node": "^1.3.1",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/semver": "7.5.8",
+ "@types/shimmer": "1.0.3",
+ "@types/sinon": "10.0.20",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
+ "sinon": "15.2.0",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ }
+ },
+ "@opentelemetry/instrumentation-dataloader": {
+ "version": "file:plugins/node/instrumentation-dataloader",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "dataloader": "2.2.2",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "brace-expansion": "^2.0.1"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "requires": {
- "balanced-match": "^1.0.0"
- }
- }
+ "undici-types": "~5.26.4"
}
- },
- "mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-dns": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-dns",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "@types/shimmer": "1.0.3",
+ "@types/sinon": "10.0.20",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
+ "undici-types": "~5.26.4"
}
- },
- "ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- },
- "nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-document-load": {
+ "version": "file:plugins/web/opentelemetry-instrumentation-document-load",
+ "requires": {
+ "@babel/core": "7.22.17",
+ "@jsdevtools/coverage-istanbul-loader": "3.0.5",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.0.0",
+ "@opentelemetry/sdk-trace-web": "^1.15.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@rollup/plugin-commonjs": "^26.0.0",
+ "@rollup/plugin-node-resolve": "^15.2.3",
+ "@types/chai": "^4.3.10",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "@web/dev-server-esbuild": "^1.0.1",
+ "@web/dev-server-rollup": "^0.6.1",
+ "@web/test-runner": "^0.18.0",
+ "chai": "^4.3.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
- "schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
+ "undici-types": "~5.26.4"
}
- },
- "sinon": {
- "version": "15.1.2",
- "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
- "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-express": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-express",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/express": "4.17.21",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "express": "4.20.0",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "@sinonjs/commons": "^3.0.0",
- "@sinonjs/fake-timers": "^10.1.0",
- "@sinonjs/samsam": "^8.0.0",
- "diff": "^5.1.0",
- "nise": "^5.1.4",
- "supports-color": "^7.2.0"
- },
- "dependencies": {
- "diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "undici-types": "~5.26.4"
}
- },
- "source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true
- },
- "tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-fastify": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-fastify",
+ "requires": {
+ "@fastify/express": "^3.0.0",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/express": "4.17.21",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.15.3",
+ "@types/semver": "7.5.8",
+ "fastify": "4.18.0",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "semver": "^7.5.4",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.15.3",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.3.tgz",
+ "integrity": "sha512-p6ua9zBxz5otCmbpb5D3U4B5Nanw6Pk3PPyX05xnxbB/fRv71N7CPmORg7uAD5P70T0xmx1pzAx/FUfa5X+3cw==",
"dev": true
- },
- "ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-fetch": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-fetch/-/instrumentation-fetch-0.54.2.tgz",
+ "integrity": "sha512-7G2mn0K5BJ41AIarIMGuMDDcdJ13DQdk4go2CIL7QZkY0TgZmmq6wO6fHwdocZlPPkZ47Mflo4DwSQtMLykfyQ==",
+ "requires": {
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/instrumentation": "0.54.2",
+ "@opentelemetry/sdk-trace-web": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
+ }
+ },
+ "@opentelemetry/instrumentation-fs": {
+ "version": "file:plugins/node/instrumentation-fs",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/resources": "^1.8.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/sinon": "^10.0.11",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
+ "undici-types": "~5.26.4"
}
- },
- "webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-generic-pool": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-generic-pool",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@types/generic-pool": "^3.1.9",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "generic-pool": "3.8.2",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
+ "undici-types": "~5.26.4"
}
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-graphql": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-graphql",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "graphql": "^16.5.0",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "dev": true
},
- "yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
+ "undici-types": "~5.26.4"
}
- },
- "yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-grpc": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-grpc/-/instrumentation-grpc-0.54.2.tgz",
+ "integrity": "sha512-KhSzerCaaqVH2zfDro7nTunWUZXt1pQISQpE83LuQTOKGk7mN3G60T1wliQ3Qdg0X3UUuhCXEC7u6IAVfDxkUQ==",
+ "requires": {
+ "@opentelemetry/instrumentation": "0.54.2",
+ "@opentelemetry/semantic-conventions": "1.27.0"
+ }
+ },
+ "@opentelemetry/instrumentation-hapi": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-hapi",
+ "requires": {
+ "@hapi/hapi": "21.3.10",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "joi": "17.12.2",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
+ "undici-types": "~5.26.4"
}
}
}
},
- "@opentelemetry/propagation-utils": {
- "version": "file:packages/opentelemetry-propagation-utils",
+ "@opentelemetry/instrumentation-http": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-http/-/instrumentation-http-0.54.2.tgz",
+ "integrity": "sha512-mABjJ34UcU32pg8g18L9xBh0U3JON/2F6/57BYYy8AZJp2a71lZjcKr0T00pICoic50TW5HvcTrmyfMil+AiXQ==",
+ "requires": {
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/instrumentation": "0.54.2",
+ "@opentelemetry/semantic-conventions": "1.27.0",
+ "forwarded-parse": "2.1.2",
+ "semver": "^7.5.2"
+ }
+ },
+ "@opentelemetry/instrumentation-ioredis": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-ioredis",
"requires": {
- "@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@types/mocha": "^9.1.1",
- "@types/node": "18.6.5",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/redis-common": "^0.36.2",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/ioredis4": "npm:@types/ioredis@4.28.10",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "cross-env": "7.0.3",
+ "ioredis": "5.2.2",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-kafkajs": {
+ "version": "file:plugins/node/instrumentation-kafkajs",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.24.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
"@types/sinon": "^10.0.11",
- "expect": "29.2.0",
- "mocha": "7.2.0",
+ "kafkajs": "^2.2.4",
"nyc": "15.1.0",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@types/mocha": {
- "version": "9.1.1",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz",
- "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==",
- "dev": true
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
}
}
},
- "@opentelemetry/propagator-aws-xray": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-aws-xray/-/propagator-aws-xray-1.25.0.tgz",
- "integrity": "sha512-+honT9J/Xa6Mxk7AO/VlSUGaVSSQzqHr0wZDWrSunnc3eVbS5YTuv7UrcoHTED+AYziawTlx7ICeAX2VPc1M+w==",
+ "@opentelemetry/instrumentation-knex": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-knex",
"requires": {
- "@opentelemetry/core": "1.25.0"
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "knex": "0.95.9",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sqlite3": "5.1.7",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@opentelemetry/propagator-b3": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.25.0.tgz",
- "integrity": "sha512-/A+1Tbnf0uwnP51OkoaQlrb9YILdHsoqIISna1MNXpZRzf42xm6LVLb49i+m/zlJoW1e8P4ekcrditR5pfmwog==",
+ "@opentelemetry/instrumentation-koa": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-koa",
"requires": {
- "@opentelemetry/core": "1.25.0"
+ "@koa/router": "12.0.1",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/koa": "2.15.0",
+ "@types/koa__router": "12.0.4",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "koa": "2.13.1",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@opentelemetry/propagator-instana": {
- "version": "file:propagators/opentelemetry-propagator-instana",
+ "@opentelemetry/instrumentation-long-task": {
+ "version": "file:plugins/web/opentelemetry-instrumentation-long-task",
"requires": {
"@babel/core": "7.24.6",
"@babel/preset-env": "7.24.6",
- "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-web": "^1.8.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
- "process": "0.11.10",
+ "rimraf": "5.0.10",
+ "sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
- "webpack-merge": "5.10.0"
+ "webpack-merge": "5.10.0",
+ "zone.js": "^0.11.4 || ^0.13.0 || ^0.14.0"
},
"dependencies": {
"@babel/core": {
@@ -55546,50 +49960,54 @@
}
}
},
+ "@sinonjs/commons": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
+ "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
+ "dev": true,
+ "requires": {
+ "type-detect": "4.0.8"
+ }
+ },
"@types/mocha": {
"version": "10.0.6",
"resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
"integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
"dev": true
},
- "@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "@types/sinonjs__fake-timers": "*"
+ "undici-types": "~5.26.4"
}
},
- "ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
+ "convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true
},
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true
},
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "sinon": {
+ "version": "15.1.2",
+ "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
+ "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
"dev": true,
"requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
+ "@sinonjs/commons": "^3.0.0",
+ "@sinonjs/fake-timers": "^10.1.0",
+ "@sinonjs/samsam": "^8.0.0",
+ "diff": "^5.1.0",
+ "nise": "^5.1.4",
+ "supports-color": "^7.2.0"
},
"dependencies": {
"supports-color": {
@@ -55602,503 +50020,711 @@
}
}
}
- },
- "chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
- "dev": true,
- "requires": {
- "anymatch": "~3.1.2",
- "braces": "~3.0.2",
- "fsevents": "~2.3.2",
- "glob-parent": "~5.1.2",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
- }
- },
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
- },
- "decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
- "dev": true
- },
- "diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-lru-memoizer": {
+ "version": "file:plugins/node/instrumentation-lru-memoizer",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@types/lru-cache": "7.10.10",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "expect": "29.2.0",
+ "lru-memoizer": "2.1.4",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
- "enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
+ "undici-types": "~5.26.4"
}
- },
- "escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true
- },
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true
- },
- "glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-memcached": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-memcached",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/memcached": "^2.2.6",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "cross-env": "7.0.3",
+ "memcached": "2.2.2",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- },
- "dependencies": {
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- }
+ "undici-types": "~5.26.4"
+ }
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-mongodb": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-mongodb",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-metrics": "^1.9.1",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/bson": "4.0.5",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "mongodb": "6.8.0",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
}
},
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
+ "@types/whatwg-url": {
+ "version": "11.0.4",
+ "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-11.0.4.tgz",
+ "integrity": "sha512-lXCmTWSHJvf0TRSO58nm978b8HJ/EdsSsEKLd3ODHFjo+3VGAyyTp4v50nWvwtzBxSMQrVOK7tcuN0zGPLICMw==",
"dev": true,
"requires": {
- "is-glob": "^4.0.1"
+ "@types/webidl-conversions": "*"
}
},
- "is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
- "dev": true
+ "agent-base": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
+ "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
+ "dev": true,
+ "optional": true,
+ "peer": true,
+ "requires": {
+ "debug": "4"
+ }
},
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
+ "bson": {
+ "version": "6.8.0",
+ "resolved": "https://registry.npmjs.org/bson/-/bson-6.8.0.tgz",
+ "integrity": "sha512-iOJg8pr7wq2tg/zSlCCHMi3hMm5JTOxLTagf3zxhcenHsFp+c6uOs6K7W5UE7A4QIJGtqh/ZovFNMP4mOPJynQ==",
"dev": true
},
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ "gaxios": {
+ "version": "5.1.3",
+ "resolved": "https://registry.npmjs.org/gaxios/-/gaxios-5.1.3.tgz",
+ "integrity": "sha512-95hVgBRgEIRQQQHIbnxBXeHbW4TqFk4ZDJW7wmVtvYar72FdhRIo1UGOLS2eRAKCPEdPBWu+M7+A33D9CdX9rA==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
+ "extend": "^3.0.2",
+ "https-proxy-agent": "^5.0.0",
+ "is-stream": "^2.0.0",
+ "node-fetch": "^2.6.9"
}
},
- "minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+ "gcp-metadata": {
+ "version": "5.3.0",
+ "resolved": "https://registry.npmjs.org/gcp-metadata/-/gcp-metadata-5.3.0.tgz",
+ "integrity": "sha512-FNTkdNEnBdlqF2oatizolQqNANMrcqJt6AAYt99B3y1aLLC8Hc5IOBb+ZnnzllodEEf6xMBp6wRcBbc16fa65w==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
- "brace-expansion": "^2.0.1"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "requires": {
- "balanced-match": "^1.0.0"
- }
- }
+ "gaxios": "^5.0.0",
+ "json-bigint": "^1.0.0"
}
},
- "mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
+ "https-proxy-agent": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
+ "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
- "ansi-colors": "4.1.1",
- "browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
- "he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
+ "agent-base": "6",
+ "debug": "4"
}
},
- "ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
- "dev": true
- },
- "nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
- "dev": true
+ "mongodb": {
+ "version": "6.8.0",
+ "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-6.8.0.tgz",
+ "integrity": "sha512-HGQ9NWDle5WvwMnrvUxsFYPd3JEbqD3RgABHBQRuoCEND0qzhsd0iH5ypHsf1eJ+sXmvmyKpP+FLOKY8Il7jMw==",
+ "dev": true,
+ "requires": {
+ "@mongodb-js/saslprep": "^1.1.5",
+ "bson": "^6.7.0",
+ "mongodb-connection-string-url": "^3.0.0"
+ }
},
- "schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+ "mongodb-connection-string-url": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/mongodb-connection-string-url/-/mongodb-connection-string-url-3.0.0.tgz",
+ "integrity": "sha512-t1Vf+m1I5hC2M5RJx/7AtxgABy1cZmIPQRMXw+gEIPn/cZNF3Oiy+l0UIypUwVB5trcWHq3crg2g3uAR9aAwsQ==",
"dev": true,
"requires": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
+ "@types/whatwg-url": "^11.0.2",
+ "whatwg-url": "^13.0.0"
}
},
- "source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true
+ "tr46": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-4.1.1.tgz",
+ "integrity": "sha512-2lv/66T7e5yNyhAAC4NaKe5nVavzuGJQVVtRYLyQ2OI8tsJ61PMLlelehb0wi2Hx6+hT/OJUWZcw8MjlSRnxvw==",
+ "dev": true,
+ "requires": {
+ "punycode": "^2.3.0"
+ }
},
- "tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "whatwg-url": {
+ "version": "13.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-13.0.0.tgz",
+ "integrity": "sha512-9WWbymnqj57+XEuqADHrCJ2eSXzn8WXIW/YSGaZtb2WKAInQ6CHfaUUcTyyver0p8BDg5StLQq8h1vtZuwmOig==",
+ "dev": true,
+ "requires": {
+ "tr46": "^4.1.1",
+ "webidl-conversions": "^7.0.0"
+ }
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-mongoose": {
+ "version": "file:plugins/node/instrumentation-mongoose",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "expect": "29.2.0",
+ "mongoose": "6.13.0",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
},
- "ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
+ "undici-types": "~5.26.4"
}
- },
- "webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-mysql": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-mysql",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-metrics": "^1.8.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/mysql": "2.15.26",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "mysql": "2.18.1",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
+ "undici-types": "~5.26.4"
}
- },
- "yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-mysql2": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-mysql2",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@opentelemetry/sql-common": "^0.40.1",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "mysql2": "3.11.3",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
+ "undici-types": "~5.26.4"
}
- },
- "yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-nestjs-core": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-nestjs-core",
+ "requires": {
+ "@nestjs/common": "9.4.3",
+ "@nestjs/core": "9.4.3",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "cross-env": "7.0.3",
+ "nyc": "15.1.0",
+ "reflect-metadata": "0.1.13",
+ "rimraf": "5.0.10",
+ "rxjs": "7.8.1",
+ "rxjs-compat": "6.6.7",
+ "semver": "7.6.3",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
+ "undici-types": "~5.26.4"
}
}
}
},
- "@opentelemetry/propagator-jaeger": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.25.0.tgz",
- "integrity": "sha512-uwA5xqaPISXeX+YutqbjmzENnCGCvrIXlqIXP5gRoA5N6S3W28p+ExL77TugMKHN5gXklapF67jDfz7lq5ETzQ==",
+ "@opentelemetry/instrumentation-net": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-net",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-pg": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-pg",
"requires": {
- "@opentelemetry/core": "1.25.0"
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.26.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "1.27.0",
+ "@opentelemetry/sql-common": "^0.40.1",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/pg": "8.6.1",
+ "@types/pg-pool": "2.0.6",
+ "@types/sinon": "10.0.20",
+ "cross-env": "7.0.3",
+ "nyc": "15.1.0",
+ "pg": "8.7.1",
+ "pg-pool": "3.4.1",
+ "rimraf": "5.0.10",
+ "safe-stable-stringify": "^2.4.1",
+ "sinon": "15.2.0",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@opentelemetry/propagator-ot-trace": {
- "version": "file:propagators/opentelemetry-propagator-ot-trace",
+ "@opentelemetry/instrumentation-pino": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-pino",
"requires": {
- "@babel/core": "7.24.6",
- "@babel/preset-env": "7.24.6",
- "@opentelemetry/api": "^1.0.0",
- "@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
- "@types/webpack-env": "1.16.3",
- "assert": "2.0.0",
- "babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
- "karma-chrome-launcher": "3.1.0",
- "karma-coverage": "2.2.1",
- "karma-mocha": "2.0.1",
- "karma-spec-reporter": "0.0.36",
- "karma-webpack": "5.0.1",
- "mocha": "10.2.0",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/api-logs": "^0.54.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.25.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "sinon": "15.1.2",
- "ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4",
- "webpack": "5.89.0",
- "webpack-cli": "5.1.4",
- "webpack-merge": "5.10.0"
+ "pino": "8.3.1",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
+ "sinon": "15.2.0",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
},
"dependencies": {
- "@babel/core": {
- "version": "7.24.6",
- "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
- "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "@ampproject/remapping": "^2.2.0",
- "@babel/code-frame": "^7.24.6",
- "@babel/generator": "^7.24.6",
- "@babel/helper-compilation-targets": "^7.24.6",
- "@babel/helper-module-transforms": "^7.24.6",
- "@babel/helpers": "^7.24.6",
- "@babel/parser": "^7.24.6",
- "@babel/template": "^7.24.6",
- "@babel/traverse": "^7.24.6",
- "@babel/types": "^7.24.6",
- "convert-source-map": "^2.0.0",
- "debug": "^4.1.0",
- "gensync": "^1.0.0-beta.2",
- "json5": "^2.2.3",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
+ "undici-types": "~5.26.4"
}
- },
- "@sinonjs/commons": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
- "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-redis": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-redis",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/redis-common": "^0.36.2",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/redis": "2.8.32",
+ "cross-env": "7.0.3",
+ "nyc": "15.1.0",
+ "redis": "3.1.2",
+ "rimraf": "5.0.10",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "type-detect": "4.0.8"
+ "undici-types": "~5.26.4"
+ }
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-redis-4": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-redis-4",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/redis-common": "^0.36.2",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "cross-env": "7.0.3",
+ "nyc": "15.1.0",
+ "redis": "4.1.0",
+ "rimraf": "5.0.10",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
}
},
+ "redis": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/redis/-/redis-4.1.0.tgz",
+ "integrity": "sha512-5hvJ8wbzpCCiuN1ges6tx2SAh2XXCY0ayresBmu40/SGusWHFW86TAlIPpbimMX2DFHOX7RN34G2XlPA1Z43zg==",
+ "dev": true,
+ "requires": {
+ "@redis/bloom": "1.0.2",
+ "@redis/client": "1.1.0",
+ "@redis/graph": "1.0.1",
+ "@redis/json": "1.0.3",
+ "@redis/search": "1.0.6",
+ "@redis/time-series": "1.0.3"
+ }
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-restify": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-restify",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/restify": "4.3.12",
+ "@types/semver": "7.5.8",
+ "nyc": "15.1.0",
+ "restify": "11.1.0",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
+ "test-all-versions": "^6.0.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-router": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-router",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "router": "1.3.8",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
+ }
+ },
+ "@opentelemetry/instrumentation-runtime-node": {
+ "version": "file:plugins/node/instrumentation-runtime-node",
+ "requires": {
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-metrics": "^1.20.0",
+ "@types/mocha": "^10.0.6",
+ "@types/node": "18.18.14",
+ "mocha": "7.2.0",
+ "nyc": "^15.1.0",
+ "rimraf": "5.0.10",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
"@types/mocha": {
"version": "10.0.6",
"resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
"integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
"dev": true
},
- "@types/sinon": {
- "version": "17.0.3",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-17.0.3.tgz",
- "integrity": "sha512-j3uovdn8ewky9kRBG19bOwaZbexJu/XjtkHyjvUgt4xfPFz18dcORIMqnYh66Fx3Powhcr85NT5+er3+oViapw==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "@types/sinonjs__fake-timers": "*"
+ "undici-types": "~5.26.4"
}
},
"ansi-colors": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz",
- "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==",
- "dev": true
- },
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "version": "3.2.3",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz",
+ "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==",
"dev": true
},
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- },
- "dependencies": {
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dev": true,
+ "requires": {
+ "sprintf-js": "~1.0.2"
}
},
"chokidar": {
- "version": "3.5.3",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.3.tgz",
- "integrity": "sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw==",
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz",
+ "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==",
"dev": true,
"requires": {
- "anymatch": "~3.1.2",
+ "anymatch": "~3.1.1",
"braces": "~3.0.2",
- "fsevents": "~2.3.2",
- "glob-parent": "~5.1.2",
+ "fsevents": "~2.1.1",
+ "glob-parent": "~5.1.0",
"is-binary-path": "~2.1.0",
"is-glob": "~4.0.1",
"normalize-path": "~3.0.0",
- "readdirp": "~3.6.0"
+ "readdirp": "~3.2.0"
}
},
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "cliui": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
+ "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
"dev": true,
"requires": {
- "color-name": "~1.1.4"
+ "string-width": "^3.1.0",
+ "strip-ansi": "^5.2.0",
+ "wrap-ansi": "^5.1.0"
}
},
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
+ "debug": {
+ "version": "3.2.6",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
+ "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
+ "dev": true,
+ "requires": {
+ "ms": "^2.1.1"
+ }
},
- "decamelize": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
- "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
+ "diff": {
+ "version": "3.5.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz",
+ "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==",
"dev": true
},
- "diff": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz",
- "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==",
+ "emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
"dev": true
},
- "enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
"dev": true,
"requires": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
+ "locate-path": "^3.0.0"
}
},
- "escape-string-regexp": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
- "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
- "dev": true
+ "flat": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz",
+ "integrity": "sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==",
+ "dev": true,
+ "requires": {
+ "is-buffer": "~2.0.3"
+ }
},
- "events": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
- "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true
+ "fsevents": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
+ "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
+ "dev": true,
+ "optional": true
},
"glob": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
- "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
+ "version": "7.1.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
+ "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
"dev": true,
"requires": {
"fs.realpath": "^1.0.0",
@@ -56107,17 +50733,6 @@
"minimatch": "^3.0.4",
"once": "^1.3.0",
"path-is-absolute": "^1.0.0"
- },
- "dependencies": {
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- }
}
},
"glob-parent": {
@@ -56129,1032 +50744,1071 @@
"is-glob": "^4.0.1"
}
},
- "is-plain-obj": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
- "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
+ "has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
"dev": true
},
- "json-parse-even-better-errors": {
- "version": "2.3.1",
- "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
- "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
+ "is-fullwidth-code-point": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+ "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
"dev": true
},
+ "js-yaml": {
+ "version": "3.13.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
+ "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
+ "dev": true,
+ "requires": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ }
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "dev": true,
+ "requires": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
"log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz",
+ "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==",
"dev": true,
"requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
+ "chalk": "^2.4.2"
}
},
"minimatch": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.0.1.tgz",
- "integrity": "sha512-nLDxIFRyhDblz3qMuq+SoRZED4+miJ/G+tdDrjkkkRnjAsBexeGpgjLEQ0blJy7rHhR2b93rhQY4SvyWu9v03g==",
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
"dev": true,
"requires": {
- "brace-expansion": "^2.0.1"
- },
- "dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "requires": {
- "balanced-match": "^1.0.0"
- }
- }
+ "brace-expansion": "^1.1.7"
+ }
+ },
+ "mkdirp": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.5"
}
},
"mocha": {
- "version": "10.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.2.0.tgz",
- "integrity": "sha512-IDY7fl/BecMwFHzoqF2sg/SHHANeBoMMXFlS9r0OXKDssYE1M5O43wUY/9BVPeIvfH2zmEbBfseqN9gBQZzXkg==",
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz",
+ "integrity": "sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==",
"dev": true,
"requires": {
- "ansi-colors": "4.1.1",
+ "ansi-colors": "3.2.3",
"browser-stdout": "1.3.1",
- "chokidar": "3.5.3",
- "debug": "4.3.4",
- "diff": "5.0.0",
- "escape-string-regexp": "4.0.0",
- "find-up": "5.0.0",
- "glob": "7.2.0",
+ "chokidar": "3.3.0",
+ "debug": "3.2.6",
+ "diff": "3.5.0",
+ "escape-string-regexp": "1.0.5",
+ "find-up": "3.0.0",
+ "glob": "7.1.3",
+ "growl": "1.10.5",
"he": "1.2.0",
- "js-yaml": "4.1.0",
- "log-symbols": "4.1.0",
- "minimatch": "5.0.1",
- "ms": "2.1.3",
- "nanoid": "3.3.3",
- "serialize-javascript": "6.0.0",
- "strip-json-comments": "3.1.1",
- "supports-color": "8.1.1",
- "workerpool": "6.2.1",
- "yargs": "16.2.0",
- "yargs-parser": "20.2.4",
- "yargs-unparser": "2.0.0"
+ "js-yaml": "3.13.1",
+ "log-symbols": "3.0.0",
+ "minimatch": "3.0.4",
+ "mkdirp": "0.5.5",
+ "ms": "2.1.1",
+ "node-environment-flags": "1.0.6",
+ "object.assign": "4.1.0",
+ "strip-json-comments": "2.0.1",
+ "supports-color": "6.0.0",
+ "which": "1.3.1",
+ "wide-align": "1.1.3",
+ "yargs": "13.3.2",
+ "yargs-parser": "13.1.2",
+ "yargs-unparser": "1.6.0"
}
},
"ms": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
- "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
+ "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
"dev": true
},
- "nanoid": {
- "version": "3.3.3",
- "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.3.tgz",
- "integrity": "sha512-p1sjXuopFs0xg+fPASzQ28agW1oHD7xDsd9Xkf3T15H3c/cifrFHVwrh74PdoklAPi+i7MdRsE47vm2r6JoB+w==",
- "dev": true
+ "object.assign": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
+ "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
+ "dev": true,
+ "requires": {
+ "define-properties": "^1.1.2",
+ "function-bind": "^1.1.1",
+ "has-symbols": "^1.0.0",
+ "object-keys": "^1.0.11"
+ }
},
- "schema-utils": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
- "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+ "p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
"dev": true,
"requires": {
- "@types/json-schema": "^7.0.8",
- "ajv": "^6.12.5",
- "ajv-keywords": "^3.5.2"
+ "p-try": "^2.0.0"
}
},
- "sinon": {
- "version": "15.1.2",
- "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
- "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
"dev": true,
"requires": {
- "@sinonjs/commons": "^3.0.0",
- "@sinonjs/fake-timers": "^10.1.0",
- "@sinonjs/samsam": "^8.0.0",
- "diff": "^5.1.0",
- "nise": "^5.1.4",
- "supports-color": "^7.2.0"
- },
- "dependencies": {
- "diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
- "dev": true
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
- }
+ "p-limit": "^2.0.0"
}
},
- "source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
+ "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
"dev": true
},
- "tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "readdirp": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz",
+ "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==",
+ "dev": true,
+ "requires": {
+ "picomatch": "^2.0.4"
+ }
+ },
+ "sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
"dev": true
},
- "ts-loader": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
- "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
+ "string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
"dev": true,
"requires": {
- "chalk": "^4.1.0",
- "enhanced-resolve": "^5.0.0",
- "micromatch": "^4.0.0",
- "semver": "^7.3.4",
- "source-map": "^0.7.4"
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.1.0"
}
},
- "webpack": {
- "version": "5.89.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.89.0.tgz",
- "integrity": "sha512-qyfIC10pOr70V+jkmud8tMfajraGCZMBWJtrmuBymQKCrLTRejBI8STDp1MCyZu/QTdZSeacCQYpYNQVOzX5kw==",
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
"dev": true,
"requires": {
- "@types/eslint-scope": "^3.7.3",
- "@types/estree": "^1.0.0",
- "@webassemblyjs/ast": "^1.11.5",
- "@webassemblyjs/wasm-edit": "^1.11.5",
- "@webassemblyjs/wasm-parser": "^1.11.5",
- "acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
- "browserslist": "^4.14.5",
- "chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.15.0",
- "es-module-lexer": "^1.2.1",
- "eslint-scope": "5.1.1",
- "events": "^3.2.0",
- "glob-to-regexp": "^0.4.1",
- "graceful-fs": "^4.2.9",
- "json-parse-even-better-errors": "^2.3.1",
- "loader-runner": "^4.2.0",
- "mime-types": "^2.1.27",
- "neo-async": "^2.6.2",
- "schema-utils": "^3.2.0",
- "tapable": "^2.1.1",
- "terser-webpack-plugin": "^5.3.7",
- "watchpack": "^2.4.0",
- "webpack-sources": "^3.2.3"
+ "ansi-regex": "^4.1.0"
+ }
+ },
+ "strip-json-comments": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
+ "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz",
+ "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^3.0.0"
+ }
+ },
+ "which": {
+ "version": "1.3.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
+ "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "dev": true,
+ "requires": {
+ "isexe": "^2.0.0"
+ }
+ },
+ "wrap-ansi": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
+ "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.2.0",
+ "string-width": "^3.0.0",
+ "strip-ansi": "^5.0.0"
}
},
+ "y18n": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
+ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
+ "dev": true
+ },
"yargs": {
- "version": "16.2.0",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
- "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
+ "version": "13.3.2",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
+ "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
"dev": true,
"requires": {
- "cliui": "^7.0.2",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
+ "cliui": "^5.0.0",
+ "find-up": "^3.0.0",
+ "get-caller-file": "^2.0.1",
"require-directory": "^2.1.1",
- "string-width": "^4.2.0",
- "y18n": "^5.0.5",
- "yargs-parser": "^20.2.2"
+ "require-main-filename": "^2.0.0",
+ "set-blocking": "^2.0.0",
+ "string-width": "^3.0.0",
+ "which-module": "^2.0.0",
+ "y18n": "^4.0.0",
+ "yargs-parser": "^13.1.2"
}
},
- "yargs-unparser": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
+ "yargs-parser": {
+ "version": "13.1.2",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
+ "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
"dev": true,
"requires": {
- "camelcase": "^6.0.0",
- "decamelize": "^4.0.0",
- "flat": "^5.0.2",
- "is-plain-obj": "^2.1.0"
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ }
+ },
+ "yargs-unparser": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz",
+ "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==",
+ "dev": true,
+ "requires": {
+ "flat": "^4.1.0",
+ "lodash": "^4.17.15",
+ "yargs": "^13.3.0"
}
}
}
},
- "@opentelemetry/redis-common": {
- "version": "file:packages/opentelemetry-redis-common",
- "requires": {
- "@types/mocha": "^9.1.1",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/mocha": {
- "version": "9.1.1",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz",
- "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==",
- "dev": true
- }
- }
- },
- "@opentelemetry/resource-detector-alibaba-cloud": {
- "version": "file:detectors/node/opentelemetry-resource-detector-alibaba-cloud",
- "requires": {
- "@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
- "nock": "13.3.3",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
- "dev": true
- }
- }
- },
- "@opentelemetry/resource-detector-aws": {
- "version": "file:detectors/node/opentelemetry-resource-detector-aws",
- "requires": {
- "@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/core": "^1.0.0",
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
- "nock": "13.3.3",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
- "dev": true
- }
- }
- },
- "@opentelemetry/resource-detector-azure": {
- "version": "file:detectors/node/opentelemetry-resource-detector-azure",
- "requires": {
- "@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/resources": "^1.10.1",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
- "nock": "13.3.3",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
- "dev": true
- }
- }
- },
- "@opentelemetry/resource-detector-container": {
- "version": "file:detectors/node/opentelemetry-resource-detector-container",
- "requires": {
- "@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "eslint-plugin-header": "^3.1.1",
- "mocha": "7.2.0",
- "nock": "13.3.3",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
- "dev": true
- }
- }
- },
- "@opentelemetry/resource-detector-gcp": {
- "version": "file:detectors/node/opentelemetry-resource-detector-gcp",
- "requires": {
- "@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/core": "^1.0.0",
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "gcp-metadata": "^6.0.0",
- "mocha": "7.2.0",
- "nock": "13.3.3",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
- "dev": true
- }
- }
- },
- "@opentelemetry/resource-detector-github": {
- "version": "file:detectors/node/opentelemetry-resource-detector-github",
- "requires": {
- "@opentelemetry/api": "^1.0.0",
- "@opentelemetry/resources": "^1.0.0",
- "@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
- "nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
- "typescript": "4.4.4"
- },
- "dependencies": {
- "@types/mocha": {
- "version": "8.2.3",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
- "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
- "dev": true
- }
- }
- },
- "@opentelemetry/resource-detector-instana": {
- "version": "file:detectors/node/opentelemetry-resource-detector-instana",
+ "@opentelemetry/instrumentation-socket.io": {
+ "version": "file:plugins/node/instrumentation-socket.io",
"requires": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/resources": "^1.0.0",
- "@opentelemetry/sdk-node": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "mocha": "7.2.0",
- "nock": "13.3.3",
+ "@types/node": "18.18.14",
+ "expect": "27.4.2",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
+ "socket.io": "^4.1.3",
+ "socket.io-client": "^4.1.3",
+ "test-all-versions": "6.1.0",
"typescript": "4.4.4"
},
"dependencies": {
+ "@jest/types": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/@jest/types/-/types-27.5.1.tgz",
+ "integrity": "sha512-Cx46iJ9QpwQTjIdq5VJu2QTMMs3QlEjI0x1QbBP5W1+nMzyc2XmimiRR/CbX9TO0cPTeUlxWMOu8mslYsJ8DEw==",
+ "dev": true,
+ "requires": {
+ "@types/istanbul-lib-coverage": "^2.0.0",
+ "@types/istanbul-reports": "^3.0.0",
+ "@types/node": "*",
+ "@types/yargs": "^16.0.0",
+ "chalk": "^4.0.0"
+ }
+ },
"@types/mocha": {
"version": "8.2.3",
"resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
"integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
"dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ },
+ "@types/yargs": {
+ "version": "16.0.9",
+ "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-16.0.9.tgz",
+ "integrity": "sha512-tHhzvkFXZQeTECenFoRljLBYPZJ7jAVxqqtEI0qTLOmuultnFp4I9yKE17vTuhf7BkhCu7I4XuemPgikDVuYqA==",
+ "dev": true,
+ "requires": {
+ "@types/yargs-parser": "*"
+ }
+ },
+ "ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "dev": true
+ },
+ "ansi-styles": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz",
+ "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==",
+ "dev": true
+ },
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ }
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "diff-sequences": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/diff-sequences/-/diff-sequences-27.5.1.tgz",
+ "integrity": "sha512-k1gCAXAsNgLwEL+Y8Wvl+M6oEFj5bgazfZULpS5CneoPPXRaCCW7dm+q21Ky2VEE5X+VeRDBVg1Pcvvsr4TtNQ==",
+ "dev": true
+ },
+ "expect": {
+ "version": "27.4.2",
+ "resolved": "https://registry.npmjs.org/expect/-/expect-27.4.2.tgz",
+ "integrity": "sha512-BjAXIDC6ZOW+WBFNg96J22D27Nq5ohn+oGcuP2rtOtcjuxNoV9McpQ60PcQWhdFOSBIQdR72e+4HdnbZTFSTyg==",
+ "dev": true,
+ "requires": {
+ "@jest/types": "^27.4.2",
+ "ansi-styles": "^5.0.0",
+ "jest-get-type": "^27.4.0",
+ "jest-matcher-utils": "^27.4.2",
+ "jest-message-util": "^27.4.2",
+ "jest-regex-util": "^27.4.0"
+ }
+ },
+ "jest-diff": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-27.5.1.tgz",
+ "integrity": "sha512-m0NvkX55LDt9T4mctTEgnZk3fmEg3NRYutvMPWM/0iPnkFj2wIeF45O1718cMSOFO1vINkqmxqD8vE37uTEbqw==",
+ "dev": true,
+ "requires": {
+ "chalk": "^4.0.0",
+ "diff-sequences": "^27.5.1",
+ "jest-get-type": "^27.5.1",
+ "pretty-format": "^27.5.1"
+ }
+ },
+ "jest-get-type": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/jest-get-type/-/jest-get-type-27.5.1.tgz",
+ "integrity": "sha512-2KY95ksYSaK7DMBWQn6dQz3kqAf3BB64y2udeG+hv4KfSOb9qwcYQstTJc1KCbsix+wLZWZYN8t7nwX3GOBLRw==",
+ "dev": true
+ },
+ "jest-matcher-utils": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-27.5.1.tgz",
+ "integrity": "sha512-z2uTx/T6LBaCoNWNFWwChLBKYxTMcGBRjAt+2SbP929/Fflb9aa5LGma654Rz8z9HLxsrUaYzxE9T/EFIL/PAw==",
+ "dev": true,
+ "requires": {
+ "chalk": "^4.0.0",
+ "jest-diff": "^27.5.1",
+ "jest-get-type": "^27.5.1",
+ "pretty-format": "^27.5.1"
+ }
+ },
+ "jest-message-util": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-27.5.1.tgz",
+ "integrity": "sha512-rMyFe1+jnyAAf+NHwTclDz0eAaLkVDdKVHHBFWsBWHnnh5YeJMNWWsv7AbFYXfK3oTqvL7VTWkhNLu1jX24D+g==",
+ "dev": true,
+ "requires": {
+ "@babel/code-frame": "^7.12.13",
+ "@jest/types": "^27.5.1",
+ "@types/stack-utils": "^2.0.0",
+ "chalk": "^4.0.0",
+ "graceful-fs": "^4.2.9",
+ "micromatch": "^4.0.4",
+ "pretty-format": "^27.5.1",
+ "slash": "^3.0.0",
+ "stack-utils": "^2.0.3"
+ }
+ },
+ "pretty-format": {
+ "version": "27.5.1",
+ "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-27.5.1.tgz",
+ "integrity": "sha512-Qb1gy5OrP5+zDf2Bvnzdl3jsTf1qXVMazbvCoKhtKqVs4/YK4ozX4gKQJJVyNe+cajNPn0KoC0MC3FUmaHWEmQ==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^5.0.1",
+ "ansi-styles": "^5.0.0",
+ "react-is": "^17.0.1"
+ }
+ },
+ "react-is": {
+ "version": "17.0.2",
+ "resolved": "https://registry.npmjs.org/react-is/-/react-is-17.0.2.tgz",
+ "integrity": "sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
}
}
},
- "@opentelemetry/resources": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.25.0.tgz",
- "integrity": "sha512-iHjydPMYJ+Li1auveJCq2rp5U2h6Mhq8BidiyE0jfVlDTFyR1ny8AfJHfmFzJ/RAM8vT8L7T21kcmGybxZC7lQ==",
- "requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
- }
- },
- "@opentelemetry/sdk-logs": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.52.0.tgz",
- "integrity": "sha512-Dp6g7w7WglrDZMn2yHBMAKRGqQy8C0PUbFovkSwcSsmL47n4FSEc3eeGblZTtueOUW+rTsPJpLHoUpEdS0Wibw==",
- "requires": {
- "@opentelemetry/api-logs": "0.52.0",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/resources": "1.25.0"
- }
- },
- "@opentelemetry/sdk-metrics": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.25.0.tgz",
- "integrity": "sha512-IF+Sv4VHgBr/BPMKabl+GouJIhEqAOexCHgXVTISdz3q9P9H/uA8ScCF+22gitQ69aFtESbdYOV+Fen5+avQng==",
- "requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/resources": "1.25.0",
- "lodash.merge": "^4.6.2"
- }
- },
- "@opentelemetry/sdk-node": {
- "version": "0.52.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-node/-/sdk-node-0.52.0.tgz",
- "integrity": "sha512-3RNnsoHGutya3oVsoc2WRrk/TKlxr+R2uN6H4boNJvW7kc8yxS4QrOI6DlbQYAgEMeC1PMu95jW9LirPOWcMGw==",
- "requires": {
- "@opentelemetry/api-logs": "0.52.0",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/exporter-trace-otlp-grpc": "0.52.0",
- "@opentelemetry/exporter-trace-otlp-http": "0.52.0",
- "@opentelemetry/exporter-trace-otlp-proto": "0.52.0",
- "@opentelemetry/exporter-zipkin": "1.25.0",
- "@opentelemetry/instrumentation": "0.52.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/sdk-logs": "0.52.0",
- "@opentelemetry/sdk-metrics": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
- "@opentelemetry/sdk-trace-node": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
- }
- },
- "@opentelemetry/sdk-trace-base": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.25.0.tgz",
- "integrity": "sha512-6+g2fiRQUG39guCsKVeY8ToeuUf3YUnPkN6DXRA1qDmFLprlLvZm9cS6+chgbW70cZJ406FTtSCDnJwxDC5sGQ==",
- "requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/resources": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
- }
- },
- "@opentelemetry/sdk-trace-node": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.25.0.tgz",
- "integrity": "sha512-sYdZmNCkqthPpjwCxAJk5aQNLxCOQjT1u3JMGvO6rb3Ic8uFdnzXavP13Md9uYPcZBo+KxetyDhCf0x8wJGRng==",
- "requires": {
- "@opentelemetry/context-async-hooks": "1.25.0",
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/propagator-b3": "1.25.0",
- "@opentelemetry/propagator-jaeger": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
- "semver": "^7.5.2"
- }
- },
- "@opentelemetry/sdk-trace-web": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.25.0.tgz",
- "integrity": "sha512-TAWRDRiVOeliE1A99z8idWb4pwEKKY9Vj5aTpLtrF4cvPOl0mPg3ZczvOw/HnpfRsWY0Ra/J3vS5uFSpoqPwEA==",
- "requires": {
- "@opentelemetry/core": "1.25.0",
- "@opentelemetry/sdk-trace-base": "1.25.0",
- "@opentelemetry/semantic-conventions": "1.25.0"
- }
- },
- "@opentelemetry/semantic-conventions": {
- "version": "1.25.0",
- "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.25.0.tgz",
- "integrity": "sha512-M+kkXKRAIAiAP6qYyesfrC5TOmDpDVtsxuGfPcqd9B/iBrac+E14jYwrgm0yZBUIbIP2OnqC3j+UgkXLm1vxUQ=="
- },
- "@opentelemetry/sql-common": {
- "version": "file:packages/opentelemetry-sql-common",
+ "@opentelemetry/instrumentation-tedious": {
+ "version": "file:plugins/node/instrumentation-tedious",
"requires": {
- "@opentelemetry/api": "^1.1.0",
- "@opentelemetry/core": "^1.1.0",
- "@types/mocha": "^7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-async-hooks": "^1.8.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/tedious": "^4.0.14",
"nyc": "15.1.0",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
+ "tedious": "17.0.0",
+ "test-all-versions": "6.1.0",
"typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ },
+ "bl": {
+ "version": "6.0.12",
+ "resolved": "https://registry.npmjs.org/bl/-/bl-6.0.12.tgz",
+ "integrity": "sha512-EnEYHilP93oaOa2MnmNEjAcovPS3JlQZOyzGXi3EyEpPhm9qWvdDp7BmAVEVusGzp8LlwQK56Av+OkDoRjzE0w==",
+ "dev": true,
+ "requires": {
+ "@types/readable-stream": "^4.0.0",
+ "buffer": "^6.0.3",
+ "inherits": "^2.0.4",
+ "readable-stream": "^4.2.0"
+ }
+ },
+ "buffer": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/buffer/-/buffer-6.0.3.tgz",
+ "integrity": "sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA==",
+ "dev": true,
+ "requires": {
+ "base64-js": "^1.3.1",
+ "ieee754": "^1.2.1"
+ }
+ },
+ "events": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
+ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+ "dev": true
+ },
+ "iconv-lite": {
+ "version": "0.6.3",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz",
+ "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==",
+ "dev": true,
+ "requires": {
+ "safer-buffer": ">= 2.1.2 < 3.0.0"
+ }
+ },
+ "ieee754": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz",
+ "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==",
+ "dev": true
+ },
+ "readable-stream": {
+ "version": "4.5.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-4.5.2.tgz",
+ "integrity": "sha512-yjavECdqeZ3GLXNgRXgeQEdz9fvDDkNKyHnbHRFtOr7/LcfgBcmct7t/ET+HaCTqfh06OzoAxrkN/IfjJBVe+g==",
+ "dev": true,
+ "requires": {
+ "abort-controller": "^3.0.0",
+ "buffer": "^6.0.3",
+ "events": "^3.3.0",
+ "process": "^0.11.10",
+ "string_decoder": "^1.3.0"
+ }
+ },
+ "tedious": {
+ "version": "17.0.0",
+ "resolved": "https://registry.npmjs.org/tedious/-/tedious-17.0.0.tgz",
+ "integrity": "sha512-tXsl/kvDAFpnXU+ooEOQyrXdJFD0/OWvPq9i1bDhbOvoFGcrZURiXyUxbI8gJPsG6o2K5fs3HX6zRTSxuCUC5g==",
+ "dev": true,
+ "requires": {
+ "@azure/identity": "^3.4.1",
+ "@azure/keyvault-keys": "^4.4.0",
+ "@js-joda/core": "^5.5.3",
+ "bl": "^6.0.3",
+ "es-aggregate-error": "^1.0.9",
+ "iconv-lite": "^0.6.3",
+ "js-md4": "^0.3.2",
+ "jsbi": "^4.3.0",
+ "native-duplexpair": "^1.0.0",
+ "node-abort-controller": "^3.1.1",
+ "sprintf-js": "^1.1.2"
+ }
+ }
}
},
- "@opentelemetry/winston-transport": {
- "version": "file:packages/winston-transport",
+ "@opentelemetry/instrumentation-undici": {
+ "version": "file:plugins/node/instrumentation-undici",
"requires": {
- "@opentelemetry/api-logs": "^0.52.0",
+ "@opentelemetry/api": "^1.7.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-metrics": "^1.8.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "@types/triple-beam": "1.3.2",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sinon": "15.2.0",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
+ "semver": "^7.6.0",
+ "test-all-versions": "6.1.0",
"typescript": "4.4.4",
- "winston-transport": "4.*"
+ "undici": "6.11.1"
},
"dependencies": {
- "@types/triple-beam": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz",
- "integrity": "sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==",
- "dev": true
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
}
}
},
- "@parcel/watcher": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.0.4.tgz",
- "integrity": "sha512-cTDi+FUDBIUOBKEtj+nhiJ71AZVlkAsQFuGQTun5tV9mwQBQgZvhCzG+URPQc8myeN32yRVZEfVAPCs1RW+Jvg==",
- "dev": true,
- "requires": {
- "node-addon-api": "^3.2.1",
- "node-gyp-build": "^4.3.0"
- }
- },
- "@pkgjs/parseargs": {
- "version": "0.11.0",
- "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
- "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
- "dev": true,
- "optional": true
- },
- "@protobufjs/aspromise": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
- "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ=="
- },
- "@protobufjs/base64": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
- "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg=="
- },
- "@protobufjs/codegen": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz",
- "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg=="
- },
- "@protobufjs/eventemitter": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz",
- "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q=="
- },
- "@protobufjs/fetch": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz",
- "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==",
- "requires": {
- "@protobufjs/aspromise": "^1.1.1",
- "@protobufjs/inquire": "^1.1.0"
- }
- },
- "@protobufjs/float": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
- "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ=="
- },
- "@protobufjs/inquire": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz",
- "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q=="
- },
- "@protobufjs/path": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
- "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA=="
- },
- "@protobufjs/pool": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
- "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw=="
- },
- "@protobufjs/utf8": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
- "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
- },
- "@puppeteer/browsers": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.1.0.tgz",
- "integrity": "sha512-xloWvocjvryHdUjDam/ZuGMh7zn4Sn3ZAaV4Ah2e2EwEt90N3XphZlSsU3n0VDc1F7kggCjMuH0UuxfPQ5mD9w==",
- "dev": true,
- "requires": {
- "debug": "4.3.4",
- "extract-zip": "2.0.1",
- "progress": "2.0.3",
- "proxy-agent": "6.4.0",
- "semver": "7.6.0",
- "tar-fs": "3.0.5",
- "unbzip2-stream": "1.4.3",
- "yargs": "17.7.2"
- }
- },
- "@redis/bloom": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@redis/bloom/-/bloom-1.0.2.tgz",
- "integrity": "sha512-EBw7Ag1hPgFzdznK2PBblc1kdlj5B5Cw3XwI9/oG7tSn85/HKy3X9xHy/8tm/eNXJYHLXHJL/pkwBpFMVVefkw==",
- "dev": true,
- "requires": {}
- },
- "@redis/client": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.1.0.tgz",
- "integrity": "sha512-xO9JDIgzsZYDl3EvFhl6LC52DP3q3GCMUer8zHgKV6qSYsq1zB+pZs9+T80VgcRogrlRYhi4ZlfX6A+bHiBAgA==",
- "dev": true,
+ "@opentelemetry/instrumentation-user-interaction": {
+ "version": "file:plugins/web/opentelemetry-instrumentation-user-interaction",
"requires": {
- "cluster-key-slot": "1.1.0",
- "generic-pool": "3.8.2",
- "yallist": "4.0.0"
+ "@babel/core": "7.24.6",
+ "@babel/preset-env": "7.24.6",
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/context-zone-peer-dep": "^1.8.0",
+ "@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/instrumentation-xml-http-request": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-web": "^1.8.0",
+ "@types/jquery": "3.5.30",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "@types/webpack-env": "1.16.3",
+ "assert": "2.0.0",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
+ "karma-chrome-launcher": "3.1.0",
+ "karma-coverage": "2.2.1",
+ "karma-jquery": "0.2.4",
+ "karma-mocha": "2.0.1",
+ "karma-spec-reporter": "0.0.36",
+ "karma-webpack": "5.0.1",
+ "nyc": "15.1.0",
+ "sinon": "15.1.2",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4",
+ "webpack": "5.94.0",
+ "webpack-cli": "5.1.4",
+ "webpack-merge": "5.10.0",
+ "zone.js": "^0.11.4 || ^0.13.0 || ^0.14.0"
},
"dependencies": {
- "cluster-key-slot": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.0.tgz",
- "integrity": "sha512-2Nii8p3RwAPiFwsnZvukotvow2rIHM+yQ6ZcBXGHdniadkYGZYiGmkHJIbZPIV9nfv7m/U1IPMVVcAhoWFeklw==",
+ "@babel/core": {
+ "version": "7.24.6",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
+ "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
+ "dev": true,
+ "requires": {
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.24.6",
+ "@babel/generator": "^7.24.6",
+ "@babel/helper-compilation-targets": "^7.24.6",
+ "@babel/helper-module-transforms": "^7.24.6",
+ "@babel/helpers": "^7.24.6",
+ "@babel/parser": "^7.24.6",
+ "@babel/template": "^7.24.6",
+ "@babel/traverse": "^7.24.6",
+ "@babel/types": "^7.24.6",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true
+ }
+ }
+ },
+ "@sinonjs/commons": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
+ "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
+ "dev": true,
+ "requires": {
+ "type-detect": "4.0.8"
+ }
+ },
+ "@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
"dev": true
},
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ },
+ "convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true
+ },
+ "diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true
+ },
+ "sinon": {
+ "version": "15.1.2",
+ "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
+ "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ "dev": true,
+ "requires": {
+ "@sinonjs/commons": "^3.0.0",
+ "@sinonjs/fake-timers": "^10.1.0",
+ "@sinonjs/samsam": "^8.0.0",
+ "diff": "^5.1.0",
+ "nise": "^5.1.4",
+ "supports-color": "^7.2.0"
+ },
+ "dependencies": {
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
+ }
}
}
},
- "@redis/graph": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@redis/graph/-/graph-1.0.1.tgz",
- "integrity": "sha512-oDE4myMCJOCVKYMygEMWuriBgqlS5FqdWerikMoJxzmmTUErnTRRgmIDa2VcgytACZMFqpAOWDzops4DOlnkfQ==",
- "dev": true,
- "requires": {}
- },
- "@redis/json": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/@redis/json/-/json-1.0.3.tgz",
- "integrity": "sha512-4X0Qv0BzD9Zlb0edkUoau5c1bInWSICqXAGrpwEltkncUwcxJIGEcVryZhLgb0p/3PkKaLIWkjhHRtLe9yiA7Q==",
- "dev": true,
- "requires": {}
- },
- "@redis/search": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/@redis/search/-/search-1.0.6.tgz",
- "integrity": "sha512-pP+ZQRis5P21SD6fjyCeLcQdps+LuTzp2wdUbzxEmNhleighDDTD5ck8+cYof+WLec4csZX7ks+BuoMw0RaZrA==",
- "dev": true,
- "requires": {}
- },
- "@redis/time-series": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/@redis/time-series/-/time-series-1.0.3.tgz",
- "integrity": "sha512-OFp0q4SGrTH0Mruf6oFsHGea58u8vS/iI5+NpYdicaM+7BgqBZH8FFvNZ8rYYLrUO/QRqMq72NpXmxLVNcdmjA==",
- "dev": true,
- "requires": {}
- },
- "@rollup/plugin-commonjs": {
- "version": "26.0.1",
- "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-26.0.1.tgz",
- "integrity": "sha512-UnsKoZK6/aGIH6AdkptXhNvhaqftcjq3zZdT+LY5Ftms6JR06nADcDsYp5hTU9E2lbJUEOhdlY5J4DNTneM+jQ==",
- "dev": true,
+ "@opentelemetry/instrumentation-winston": {
+ "version": "file:plugins/node/opentelemetry-instrumentation-winston",
"requires": {
- "@rollup/pluginutils": "^5.0.1",
- "commondir": "^1.0.1",
- "estree-walker": "^2.0.2",
- "glob": "^10.4.1",
- "is-reference": "1.2.1",
- "magic-string": "^0.30.3"
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/api-logs": "^0.54.0",
+ "@opentelemetry/context-async-hooks": "^1.21.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/sdk-trace-base": "^1.21.0",
+ "@opentelemetry/sdk-trace-node": "^1.21.0",
+ "@opentelemetry/winston-transport": "^0.7.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "@types/triple-beam": "^1.3.2",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "test-all-versions": "6.1.0",
+ "typescript": "4.4.4",
+ "winston": "3.3.3",
+ "winston2": "npm:winston@2.4.7"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@rollup/plugin-node-resolve": {
- "version": "15.2.3",
- "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.2.3.tgz",
- "integrity": "sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==",
- "dev": true,
+ "@opentelemetry/instrumentation-xml-http-request": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/instrumentation-xml-http-request/-/instrumentation-xml-http-request-0.54.2.tgz",
+ "integrity": "sha512-Y07iCr4OuXQwiPft2GqXpp7hNpIDa/72wzwfDRP/fh1DZcm2MjXgvcOos45VFoXPW5YxHs/ONobT4UTrS/yovA==",
"requires": {
- "@rollup/pluginutils": "^5.0.1",
- "@types/resolve": "1.20.2",
- "deepmerge": "^4.2.2",
- "is-builtin-module": "^3.2.1",
- "is-module": "^1.0.0",
- "resolve": "^1.22.1"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/instrumentation": "0.54.2",
+ "@opentelemetry/sdk-trace-web": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
}
},
- "@rollup/pluginutils": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.0.tgz",
- "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==",
- "dev": true,
+ "@opentelemetry/otlp-exporter-base": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.54.2.tgz",
+ "integrity": "sha512-NrNyxu6R/bGAwanhz1HI0aJWKR6xUED4TjCH4iWMlAfyRukGbI9Kt/Akd2sYLwRKNhfS+sKetKGCUQPMDyYYMA==",
"requires": {
- "@types/estree": "^1.0.0",
- "estree-walker": "^2.0.2",
- "picomatch": "^2.3.1"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-transformer": "0.54.2"
}
},
- "@rollup/rollup-android-arm-eabi": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.12.1.tgz",
- "integrity": "sha512-iU2Sya8hNn1LhsYyf0N+L4Gf9Qc+9eBTJJJsaOGUp+7x4n2M9dxTt8UvhJl3oeftSjblSlpCfvjA/IfP3g5VjQ==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-android-arm64": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.12.1.tgz",
- "integrity": "sha512-wlzcWiH2Ir7rdMELxFE5vuM7D6TsOcJ2Yw0c3vaBR3VOsJFVTx9xvwnAvhgU5Ii8Gd6+I11qNHwndDscIm0HXg==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-darwin-arm64": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.12.1.tgz",
- "integrity": "sha512-YRXa1+aZIFN5BaImK+84B3uNK8C6+ynKLPgvn29X9s0LTVCByp54TB7tdSMHDR7GTV39bz1lOmlLDuedgTwwHg==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-darwin-x64": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.12.1.tgz",
- "integrity": "sha512-opjWJ4MevxeA8FhlngQWPBOvVWYNPFkq6/25rGgG+KOy0r8clYwL1CFd+PGwRqqMFVQ4/Qd3sQu5t7ucP7C/Uw==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-linux-arm-gnueabihf": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.12.1.tgz",
- "integrity": "sha512-uBkwaI+gBUlIe+EfbNnY5xNyXuhZbDSx2nzzW8tRMjUmpScd6lCQYKY2V9BATHtv5Ef2OBq6SChEP8h+/cxifQ==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-linux-arm64-gnu": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.12.1.tgz",
- "integrity": "sha512-0bK9aG1kIg0Su7OcFTlexkVeNZ5IzEsnz1ept87a0TUgZ6HplSgkJAnFpEVRW7GRcikT4GlPV0pbtVedOaXHQQ==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-linux-arm64-musl": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.12.1.tgz",
- "integrity": "sha512-qB6AFRXuP8bdkBI4D7UPUbE7OQf7u5OL+R94JE42Z2Qjmyj74FtDdLGeriRyBDhm4rQSvqAGCGC01b8Fu2LthQ==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-linux-riscv64-gnu": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.12.1.tgz",
- "integrity": "sha512-sHig3LaGlpNgDj5o8uPEoGs98RII8HpNIqFtAI8/pYABO8i0nb1QzT0JDoXF/pxzqO+FkxvwkHZo9k0NJYDedg==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-linux-x64-gnu": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.12.1.tgz",
- "integrity": "sha512-nD3YcUv6jBJbBNFvSbp0IV66+ba/1teuBcu+fBBPZ33sidxitc6ErhON3JNavaH8HlswhWMC3s5rgZpM4MtPqQ==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-linux-x64-musl": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.12.1.tgz",
- "integrity": "sha512-7/XVZqgBby2qp/cO0TQ8uJK+9xnSdJ9ct6gSDdEr4MfABrjTyrW6Bau7HQ73a2a5tPB7hno49A0y1jhWGDN9OQ==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-win32-arm64-msvc": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.12.1.tgz",
- "integrity": "sha512-CYc64bnICG42UPL7TrhIwsJW4QcKkIt9gGlj21gq3VV0LL6XNb1yAdHVp1pIi9gkts9gGcT3OfUYHjGP7ETAiw==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-win32-ia32-msvc": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.12.1.tgz",
- "integrity": "sha512-LN+vnlZ9g0qlHGlS920GR4zFCqAwbv2lULrR29yGaWP9u7wF5L7GqWu9Ah6/kFZPXPUkpdZwd//TNR+9XC9hvA==",
- "dev": true,
- "optional": true
- },
- "@rollup/rollup-win32-x64-msvc": {
- "version": "4.12.1",
- "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.12.1.tgz",
- "integrity": "sha512-n+vkrSyphvmU0qkQ6QBNXCGr2mKjhP08mPRM/Xp5Ck2FV4NrHU+y6axzDeixUrCBHVUS51TZhjqrKBBsHLKb2Q==",
- "dev": true,
- "optional": true
- },
- "@sideway/address": {
- "version": "4.1.5",
- "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz",
- "integrity": "sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==",
- "dev": true,
+ "@opentelemetry/otlp-grpc-exporter-base": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-grpc-exporter-base/-/otlp-grpc-exporter-base-0.54.2.tgz",
+ "integrity": "sha512-HZtACQuLhgDcgNa9arGnVVGV28sSGQ+iwRgICWikFKiVxUsoWffqBvTxPa6G3DUTg5R+up97j/zxubEyxSAOHg==",
"requires": {
- "@hapi/hoek": "^9.0.0"
+ "@grpc/grpc-js": "^1.7.1",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/otlp-exporter-base": "0.54.2",
+ "@opentelemetry/otlp-transformer": "0.54.2"
}
},
- "@sideway/formula": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz",
- "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==",
- "dev": true
- },
- "@sideway/pinpoint": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz",
- "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==",
- "dev": true
- },
- "@sigstore/bundle": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz",
- "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==",
- "dev": true,
- "requires": {
- "@sigstore/protobuf-specs": "^0.2.0"
+ "@opentelemetry/otlp-transformer": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/otlp-transformer/-/otlp-transformer-0.54.2.tgz",
+ "integrity": "sha512-2tIjahJlMRRUz0A2SeE+qBkeBXBFkSjR0wqJ08kuOqaL8HNGan5iZf+A8cfrfmZzPUuMKCyY9I+okzFuFs6gKQ==",
+ "requires": {
+ "@opentelemetry/api-logs": "0.54.2",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-logs": "0.54.2",
+ "@opentelemetry/sdk-metrics": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
+ "protobufjs": "^7.3.0"
}
},
- "@sigstore/protobuf-specs": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz",
- "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==",
- "dev": true
- },
- "@sigstore/sign": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-1.0.0.tgz",
- "integrity": "sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==",
- "dev": true,
+ "@opentelemetry/plugin-react-load": {
+ "version": "file:plugins/web/opentelemetry-plugin-react-load",
"requires": {
- "@sigstore/bundle": "^1.1.0",
- "@sigstore/protobuf-specs": "^0.2.0",
- "make-fetch-happen": "^11.0.1"
+ "@babel/core": "7.24.6",
+ "@babel/preset-env": "7.24.6",
+ "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/core": "^1.0.0",
+ "@opentelemetry/propagator-b3": "^1.26.0",
+ "@opentelemetry/sdk-trace-base": "^1.0.0",
+ "@opentelemetry/sdk-trace-web": "^1.0.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.18.14",
+ "@types/react": "17.0.80",
+ "@types/react-addons-test-utils": "0.14.26",
+ "@types/react-dom": "18.0.2",
+ "@types/shimmer": "1.0.3",
+ "@types/sinon": "10.0.20",
+ "@types/webpack-env": "1.16.3",
+ "assert": "2.0.0",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
+ "karma-chrome-launcher": "3.1.0",
+ "karma-coverage": "2.2.1",
+ "karma-mocha": "2.0.1",
+ "karma-spec-reporter": "0.0.36",
+ "karma-webpack": "5.0.1",
+ "nyc": "15.1.0",
+ "react": "17.0.2",
+ "react-dom": "17.0.2",
+ "rimraf": "5.0.10",
+ "shimmer": "^1.2.1",
+ "sinon": "15.1.2",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4",
+ "webpack": "5.94.0",
+ "webpack-cli": "5.1.4",
+ "webpack-merge": "5.10.0"
},
"dependencies": {
- "@tootallnate/once": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
- "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
- "dev": true
- },
- "agent-base": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
- "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
- "dev": true,
- "requires": {
- "debug": "4"
- }
- },
- "http-proxy-agent": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
- "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
+ "@babel/core": {
+ "version": "7.24.6",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
+ "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
"dev": true,
"requires": {
- "@tootallnate/once": "2",
- "agent-base": "6",
- "debug": "4"
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.24.6",
+ "@babel/generator": "^7.24.6",
+ "@babel/helper-compilation-targets": "^7.24.6",
+ "@babel/helper-module-transforms": "^7.24.6",
+ "@babel/helpers": "^7.24.6",
+ "@babel/parser": "^7.24.6",
+ "@babel/template": "^7.24.6",
+ "@babel/traverse": "^7.24.6",
+ "@babel/types": "^7.24.6",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true
+ }
}
},
- "https-proxy-agent": {
- "version": "5.0.1",
- "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
- "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
+ "@sinonjs/commons": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
+ "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
"dev": true,
"requires": {
- "agent-base": "6",
- "debug": "4"
+ "type-detect": "4.0.8"
}
},
- "lru-cache": {
- "version": "7.18.3",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
- "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
+ "@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
"dev": true
},
- "make-fetch-happen": {
- "version": "11.1.1",
- "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz",
- "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "agentkeepalive": "^4.2.1",
- "cacache": "^17.0.0",
- "http-cache-semantics": "^4.1.1",
- "http-proxy-agent": "^5.0.0",
- "https-proxy-agent": "^5.0.0",
- "is-lambda": "^1.0.1",
- "lru-cache": "^7.7.1",
- "minipass": "^5.0.0",
- "minipass-fetch": "^3.0.0",
- "minipass-flush": "^1.0.5",
- "minipass-pipeline": "^1.2.4",
- "negotiator": "^0.6.3",
- "promise-retry": "^2.0.1",
- "socks-proxy-agent": "^7.0.0",
- "ssri": "^10.0.0"
+ "undici-types": "~5.26.4"
}
},
- "minipass": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
- "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
+ "convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true
},
- "minipass-fetch": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz",
- "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==",
+ "diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
+ "dev": true
+ },
+ "sinon": {
+ "version": "15.1.2",
+ "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
+ "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
"dev": true,
"requires": {
- "encoding": "^0.1.13",
- "minipass": "^7.0.3",
- "minipass-sized": "^1.0.3",
- "minizlib": "^2.1.2"
+ "@sinonjs/commons": "^3.0.0",
+ "@sinonjs/fake-timers": "^10.1.0",
+ "@sinonjs/samsam": "^8.0.0",
+ "diff": "^5.1.0",
+ "nise": "^5.1.4",
+ "supports-color": "^7.2.0"
},
"dependencies": {
- "minipass": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz",
- "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==",
- "dev": true
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
}
}
+ }
+ }
+ },
+ "@opentelemetry/propagation-utils": {
+ "version": "file:packages/opentelemetry-propagation-utils",
+ "requires": {
+ "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@types/mocha": "^9.1.1",
+ "@types/node": "18.18.14",
+ "@types/sinon": "^10.0.11",
+ "expect": "29.2.0",
+ "nyc": "15.1.0",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "9.1.1",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz",
+ "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==",
+ "dev": true
},
- "socks-proxy-agent": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz",
- "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==",
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
"requires": {
- "agent-base": "^6.0.2",
- "debug": "^4.3.3",
- "socks": "^2.6.2"
+ "undici-types": "~5.26.4"
}
+ }
+ }
+ },
+ "@opentelemetry/propagator-aws-xray": {
+ "version": "file:propagators/propagator-aws-xray",
+ "requires": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0",
+ "@opentelemetry/core": "^1.0.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.6.5",
+ "@types/sinon": "10.0.20",
+ "@types/webpack-env": "1.16.3",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
+ "karma-chrome-launcher": "3.1.0",
+ "karma-coverage": "2.2.1",
+ "karma-mocha": "2.0.1",
+ "karma-spec-reporter": "0.0.36",
+ "karma-webpack": "5.0.1",
+ "lerna": "6.6.2",
+ "nyc": "15.1.0",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4",
+ "webpack": "5.95.0",
+ "webpack-cli": "5.1.4",
+ "webpack-merge": "5.10.0"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
+ "dev": true
},
- "ssri": {
- "version": "10.0.5",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz",
- "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==",
+ "events": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
+ "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
+ "dev": true
+ },
+ "json-parse-even-better-errors": {
+ "version": "2.3.1",
+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
+ "dev": true
+ },
+ "schema-utils": {
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
+ "integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
+ "dev": true,
+ "requires": {
+ "@types/json-schema": "^7.0.8",
+ "ajv": "^6.12.5",
+ "ajv-keywords": "^3.5.2"
+ }
+ },
+ "webpack": {
+ "version": "5.95.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.95.0.tgz",
+ "integrity": "sha512-2t3XstrKULz41MNMBF+cJ97TyHdyQ8HCt//pqErqDvNjU9YQBnZxIHa11VXsi7F3mb5/aO2tuDxdeTPdU7xu9Q==",
"dev": true,
"requires": {
- "minipass": "^7.0.3"
- },
- "dependencies": {
- "minipass": {
- "version": "7.0.4",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz",
- "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==",
- "dev": true
- }
+ "@types/estree": "^1.0.5",
+ "@webassemblyjs/ast": "^1.12.1",
+ "@webassemblyjs/wasm-edit": "^1.12.1",
+ "@webassemblyjs/wasm-parser": "^1.12.1",
+ "acorn": "^8.7.1",
+ "acorn-import-attributes": "^1.9.5",
+ "browserslist": "^4.21.10",
+ "chrome-trace-event": "^1.0.2",
+ "enhanced-resolve": "^5.17.1",
+ "es-module-lexer": "^1.2.1",
+ "eslint-scope": "5.1.1",
+ "events": "^3.2.0",
+ "glob-to-regexp": "^0.4.1",
+ "graceful-fs": "^4.2.11",
+ "json-parse-even-better-errors": "^2.3.1",
+ "loader-runner": "^4.2.0",
+ "mime-types": "^2.1.27",
+ "neo-async": "^2.6.2",
+ "schema-utils": "^3.2.0",
+ "tapable": "^2.1.1",
+ "terser-webpack-plugin": "^5.3.10",
+ "watchpack": "^2.4.1",
+ "webpack-sources": "^3.2.3"
}
}
}
},
- "@sigstore/tuf": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.3.tgz",
- "integrity": "sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==",
- "dev": true,
- "requires": {
- "@sigstore/protobuf-specs": "^0.2.0",
- "tuf-js": "^1.1.7"
- }
- },
- "@sinclair/typebox": {
- "version": "0.27.8",
- "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz",
- "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==",
- "dev": true
- },
- "@sindresorhus/merge-streams": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz",
- "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==",
- "dev": true
- },
- "@sinonjs/commons": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz",
- "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==",
- "dev": true,
- "requires": {
- "type-detect": "4.0.8"
- }
- },
- "@sinonjs/fake-timers": {
- "version": "10.3.0",
- "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz",
- "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==",
- "dev": true,
+ "@opentelemetry/propagator-aws-xray-lambda": {
+ "version": "file:propagators/propagator-aws-xray-lambda",
"requires": {
- "@sinonjs/commons": "^3.0.0"
+ "@babel/core": "^7.21.8",
+ "@babel/preset-env": "7.24.6",
+ "@opentelemetry/api": "1.9.0",
+ "@opentelemetry/propagator-aws-xray": "^1.26.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.6.5",
+ "@types/sinon": "10.0.20",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "lerna": "6.6.2",
+ "nyc": "15.1.0",
+ "sinon": "15.1.2",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4"
},
"dependencies": {
"@sinonjs/commons": {
@@ -57165,3597 +51819,3824 @@
"requires": {
"type-detect": "4.0.8"
}
+ },
+ "@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
+ "dev": true
+ },
+ "diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
+ "dev": true
+ },
+ "sinon": {
+ "version": "15.1.2",
+ "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
+ "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ "dev": true,
+ "requires": {
+ "@sinonjs/commons": "^3.0.0",
+ "@sinonjs/fake-timers": "^10.1.0",
+ "@sinonjs/samsam": "^8.0.0",
+ "diff": "^5.1.0",
+ "nise": "^5.1.4",
+ "supports-color": "^7.2.0"
+ },
+ "dependencies": {
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
+ }
}
}
},
- "@sinonjs/samsam": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.0.tgz",
- "integrity": "sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==",
- "dev": true,
- "requires": {
- "@sinonjs/commons": "^2.0.0",
- "lodash.get": "^4.4.2",
- "type-detect": "^4.0.8"
- }
- },
- "@sinonjs/text-encoding": {
- "version": "0.7.2",
- "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz",
- "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==",
- "dev": true
- },
- "@smithy/abort-controller": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-2.1.2.tgz",
- "integrity": "sha512-iwUxrFm/ZFCXhzhtZ6JnoJzAsqUrVfBAZUTQj8ypXGtIjwXZpKqmgYiuqrDERiydDI5gesqvsC4Rqe57GGhbVg==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@smithy/config-resolver": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-2.1.2.tgz",
- "integrity": "sha512-ZDMY63xJVsJl7ei/yIMv9nx8OiEOulwNnQOUDGpIvzoBrcbvYwiMjIMe5mP5J4fUmttKkpiTKwta/7IUriAn9w==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/propagator-b3": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-b3/-/propagator-b3-1.27.0.tgz",
+ "integrity": "sha512-pTsko3gnMioe3FeWcwTQR3omo5C35tYsKKwjgTCTVCgd3EOWL9BZrMfgLBmszrwXABDfUrlAEFN/0W0FfQGynQ==",
"requires": {
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/types": "^2.10.0",
- "@smithy/util-config-provider": "^2.2.1",
- "@smithy/util-middleware": "^2.1.2",
- "tslib": "^2.5.0"
+ "@opentelemetry/core": "1.27.0"
}
},
- "@smithy/core": {
- "version": "1.3.3",
- "resolved": "https://registry.npmjs.org/@smithy/core/-/core-1.3.3.tgz",
- "integrity": "sha512-8cT/swERvU1EUMuJF914+psSeVy4+NcNhbRe1WEKN1yIMPE5+Tq5EaPq1HWjKCodcdBIyU9ViTjd62XnebXMHA==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/propagator-instana": {
+ "version": "file:propagators/opentelemetry-propagator-instana",
"requires": {
- "@smithy/middleware-endpoint": "^2.4.2",
- "@smithy/middleware-retry": "^2.1.2",
- "@smithy/middleware-serde": "^2.1.2",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/smithy-client": "^2.4.0",
- "@smithy/types": "^2.10.0",
- "@smithy/util-middleware": "^2.1.2",
- "tslib": "^2.5.0"
+ "@babel/core": "7.24.6",
+ "@babel/preset-env": "7.24.6",
+ "@opentelemetry/api": "^1.0.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "@types/webpack-env": "1.16.3",
+ "assert": "2.0.0",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
+ "karma-chrome-launcher": "3.1.0",
+ "karma-coverage": "2.2.1",
+ "karma-mocha": "2.0.1",
+ "karma-spec-reporter": "0.0.36",
+ "karma-webpack": "5.0.1",
+ "nyc": "15.1.0",
+ "process": "0.11.10",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4",
+ "webpack": "5.94.0",
+ "webpack-cli": "5.1.4",
+ "webpack-merge": "5.10.0"
+ },
+ "dependencies": {
+ "@babel/core": {
+ "version": "7.24.6",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
+ "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
+ "dev": true,
+ "requires": {
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.24.6",
+ "@babel/generator": "^7.24.6",
+ "@babel/helper-compilation-targets": "^7.24.6",
+ "@babel/helper-module-transforms": "^7.24.6",
+ "@babel/helpers": "^7.24.6",
+ "@babel/parser": "^7.24.6",
+ "@babel/template": "^7.24.6",
+ "@babel/traverse": "^7.24.6",
+ "@babel/types": "^7.24.6",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true
+ }
+ }
+ },
+ "@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ },
+ "convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true
+ }
}
},
- "@smithy/credential-provider-imds": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-2.2.2.tgz",
- "integrity": "sha512-a2xpqWzhzcYwImGbFox5qJLf6i5HKdVeOVj7d6kVFElmbS2QW2T4HmefRc5z1huVArk9bh5Rk1NiFp9YBCXU3g==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/propagator-jaeger": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/propagator-jaeger/-/propagator-jaeger-1.27.0.tgz",
+ "integrity": "sha512-EI1bbK0wn0yIuKlc2Qv2LKBRw6LiUWevrjCF80fn/rlaB+7StAi8Y5s8DBqAYNpY7v1q86+NjU18v7hj2ejU3A==",
"requires": {
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/property-provider": "^2.1.2",
- "@smithy/types": "^2.10.0",
- "@smithy/url-parser": "^2.1.2",
- "tslib": "^2.5.0"
+ "@opentelemetry/core": "1.27.0"
}
},
- "@smithy/eventstream-codec": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-2.1.2.tgz",
- "integrity": "sha512-2PHrVRixITHSOj3bxfZmY93apGf8/DFiyhRh9W0ukfi07cvlhlRonZ0fjgcqryJjUZ5vYHqqmfIE/Qe1HM9mlw==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/propagator-ot-trace": {
+ "version": "file:propagators/opentelemetry-propagator-ot-trace",
"requires": {
- "@aws-crypto/crc32": "3.0.0",
- "@smithy/types": "^2.10.0",
- "@smithy/util-hex-encoding": "^2.1.1",
- "tslib": "^2.5.0"
+ "@babel/core": "7.24.6",
+ "@babel/preset-env": "7.24.6",
+ "@opentelemetry/api": "^1.0.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "@types/webpack-env": "1.16.3",
+ "assert": "2.0.0",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
+ "karma-chrome-launcher": "3.1.0",
+ "karma-coverage": "2.2.1",
+ "karma-mocha": "2.0.1",
+ "karma-spec-reporter": "0.0.36",
+ "karma-webpack": "5.0.1",
+ "nyc": "15.1.0",
+ "sinon": "15.1.2",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4",
+ "webpack": "5.94.0",
+ "webpack-cli": "5.1.4",
+ "webpack-merge": "5.10.0"
},
"dependencies": {
- "@aws-crypto/crc32": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-3.0.0.tgz",
- "integrity": "sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==",
+ "@babel/core": {
+ "version": "7.24.6",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.24.6.tgz",
+ "integrity": "sha512-qAHSfAdVyFmIvl0VHELib8xar7ONuSHrE2hLnsaWkYNTI68dmi1x8GYDhJjMI/e7XWal9QBlZkwbOnkcw7Z8gQ==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-crypto/util": "^3.0.0",
- "@aws-sdk/types": "^3.222.0",
- "tslib": "^1.11.1"
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.24.6",
+ "@babel/generator": "^7.24.6",
+ "@babel/helper-compilation-targets": "^7.24.6",
+ "@babel/helper-module-transforms": "^7.24.6",
+ "@babel/helpers": "^7.24.6",
+ "@babel/parser": "^7.24.6",
+ "@babel/template": "^7.24.6",
+ "@babel/traverse": "^7.24.6",
+ "@babel/types": "^7.24.6",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
},
"dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true
}
}
},
- "@aws-crypto/util": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz",
- "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==",
+ "@sinonjs/commons": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
+ "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
"dev": true,
- "optional": true,
"requires": {
- "@aws-sdk/types": "^3.222.0",
- "@aws-sdk/util-utf8-browser": "^3.0.0",
- "tslib": "^1.11.1"
- },
- "dependencies": {
- "tslib": {
- "version": "1.14.1",
- "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
- "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
- "dev": true,
- "optional": true
- }
+ "type-detect": "4.0.8"
}
},
- "@aws-sdk/types": {
- "version": "3.521.0",
- "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
- "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
+ "@types/mocha": {
+ "version": "10.0.6",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-10.0.6.tgz",
+ "integrity": "sha512-dJvrYWxP/UcXm36Qn36fxhUKu8A/xMRXVT2cliFF1Z7UA9liG5Psj3ezNSZw+5puH2czDXRLcXQxf8JbJt0ejg==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
"dev": true,
- "optional": true,
"requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "undici-types": "~5.26.4"
+ }
+ },
+ "convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true
+ },
+ "diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
+ "dev": true
+ },
+ "sinon": {
+ "version": "15.1.2",
+ "resolved": "https://registry.npmjs.org/sinon/-/sinon-15.1.2.tgz",
+ "integrity": "sha512-uG1pU54Fis4EfYOPoEi13fmRHgZNg/u+3aReSEzHsN52Bpf+bMVfsBQS5MjouI+rTuG6UBIINlpuuO2Epr7SiA==",
+ "dev": true,
+ "requires": {
+ "@sinonjs/commons": "^3.0.0",
+ "@sinonjs/fake-timers": "^10.1.0",
+ "@sinonjs/samsam": "^8.0.0",
+ "diff": "^5.1.0",
+ "nise": "^5.1.4",
+ "supports-color": "^7.2.0"
+ },
+ "dependencies": {
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
}
}
}
},
- "@smithy/fetch-http-handler": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-2.4.2.tgz",
- "integrity": "sha512-sIGMVwa/8h6eqNjarI3F07gvML3mMXcqBe+BINNLuKsVKXMNBN6wRzeZbbx7lfiJDEHAP28qRns8flHEoBB7zw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/querystring-builder": "^2.1.2",
- "@smithy/types": "^2.10.0",
- "@smithy/util-base64": "^2.1.1",
- "tslib": "^2.5.0"
- }
- },
- "@smithy/hash-node": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-2.1.2.tgz",
- "integrity": "sha512-3Sgn4s0g4xud1M/j6hQwYCkz04lVJ24wvCAx4xI26frr3Ao6v0o2VZkBpUySTeQbMUBp2DhuzJ0fV1zybzkckw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/types": "^2.10.0",
- "@smithy/util-buffer-from": "^2.1.1",
- "@smithy/util-utf8": "^2.1.1",
- "tslib": "^2.5.0"
- }
- },
- "@smithy/invalid-dependency": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-2.1.2.tgz",
- "integrity": "sha512-qdgKhkFYxDJnKecx2ANwz3JRkXjm0qDgEnAs5BIfb2z/XqA2l7s9BTH7GTC/RR4E8h6EDCeb5rM2rnARxviqIg==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@smithy/is-array-buffer": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.1.1.tgz",
- "integrity": "sha512-xozSQrcUinPpNPNPds4S7z/FakDTh1MZWtRP/2vQtYB/u3HYrX2UXuZs+VhaKBd6Vc7g2XPr2ZtwGBNDN6fNKQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "tslib": "^2.5.0"
- }
- },
- "@smithy/middleware-content-length": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-2.1.2.tgz",
- "integrity": "sha512-XEWtul1tHP31EtUIobEyN499paUIbnCTRtjY+ciDCEXW81lZmpjrDG3aL0FxJDPnvatVQuMV1V5eg6MCqTFaLQ==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@smithy/middleware-endpoint": {
- "version": "2.4.2",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-2.4.2.tgz",
- "integrity": "sha512-72qbmVwaWcLOd/OT52fszrrlXywPwciwpsRiIk/dIvpcwkpGE9qrYZ2bt/SYcA/ma8Rz9Ni2AbBuSXLDYISS+A==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/middleware-serde": "^2.1.2",
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/shared-ini-file-loader": "^2.3.2",
- "@smithy/types": "^2.10.0",
- "@smithy/url-parser": "^2.1.2",
- "@smithy/util-middleware": "^2.1.2",
- "tslib": "^2.5.0"
- }
- },
- "@smithy/middleware-retry": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-2.1.2.tgz",
- "integrity": "sha512-tlvSK+v9bPHHb0dLWvEaFW2Iz0IeA57ISvSaso36I33u8F8wYqo5FCvenH7TgMVBx57jyJBXOmYCZa9n5gdJIg==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/service-error-classification": "^2.1.2",
- "@smithy/smithy-client": "^2.4.0",
- "@smithy/types": "^2.10.0",
- "@smithy/util-middleware": "^2.1.2",
- "@smithy/util-retry": "^2.1.2",
- "tslib": "^2.5.0",
- "uuid": "^8.3.2"
- }
- },
- "@smithy/middleware-serde": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-2.1.2.tgz",
- "integrity": "sha512-XNU6aVIhlSbjuo2XsfZ7rd4HhjTXDlNWxAmhlBfViTW1TNK02CeWdeEntp5XtQKYD//pyTIbYi35EQvIidAkOw==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
- },
- "@smithy/middleware-stack": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-2.1.2.tgz",
- "integrity": "sha512-EPGaHGd4XmZcaRYjbhyqiqN/Q/ESxXu5e5TK24CTZUe99y8/XCxmiX8VLMM4H0DI7K3yfElR0wPAAvceoSkTgw==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/redis-common": {
+ "version": "file:packages/opentelemetry-redis-common",
"requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "@types/mocha": "^9.1.1",
+ "@types/node": "18.18.14",
+ "nyc": "15.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "9.1.1",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-9.1.1.tgz",
+ "integrity": "sha512-Z61JK7DKDtdKTWwLeElSEBcWGRLY8g95ic5FoQqI9CMx0ns/Ghep3B4DfcEimiKMvtamNVULVNKEsiwV3aQmXw==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@smithy/node-config-provider": {
- "version": "2.2.2",
- "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-2.2.2.tgz",
- "integrity": "sha512-QXvpqHSijAm13ZsVkUo92b085UzDvYP1LblWTb3uWi9WilhDvYnVyPLXaryLhOWZ2YvdhK2170T3ZBqtg+quIQ==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/resource-detector-alibaba-cloud": {
+ "version": "file:detectors/node/opentelemetry-resource-detector-alibaba-cloud",
"requires": {
- "@smithy/property-provider": "^2.1.2",
- "@smithy/shared-ini-file-loader": "^2.3.2",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.26.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "nock": "13.3.3",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@smithy/node-http-handler": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-2.4.0.tgz",
- "integrity": "sha512-Mf2f7MMy31W8LisJ9O+7J5cKiNwBwBBLU6biQ7/sFSFdhuOxPN7hOPoZ8vlaFjvrpfOUJw9YOpjGyNTKuvomOQ==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/resource-detector-aws": {
+ "version": "file:detectors/node/opentelemetry-resource-detector-aws",
"requires": {
- "@smithy/abort-controller": "^2.1.2",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/querystring-builder": "^2.1.2",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.0.0",
+ "@opentelemetry/instrumentation-fs": "^0.16.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "nock": "13.3.3",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@smithy/property-provider": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-2.1.2.tgz",
- "integrity": "sha512-yaXCVFKzxbSXqOoyA7AdAgXhwdjiLeui7n2P6XLjBCz/GZFdLUJgSY6KL1PevaxT4REMwUSs/bSHAe/0jdzEHw==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/resource-detector-azure": {
+ "version": "file:detectors/node/opentelemetry-resource-detector-azure",
"requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.25.1",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
+ "@opentelemetry/resources": "^1.10.1",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "nock": "13.3.3",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@smithy/protocol-http": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.2.0.tgz",
- "integrity": "sha512-VRp0YITYIQum+rX4zeZ3cW1wl9r90IQzQN+VLS1NxdSMt6NLsJiJqR9czTxlaeWNrLHsFAETmjmdrS48Ug1liA==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/resource-detector-container": {
+ "version": "file:detectors/node/opentelemetry-resource-detector-container",
"requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.26.0",
+ "@opentelemetry/instrumentation-fs": "^0.16.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "eslint-plugin-header": "^3.1.1",
+ "nock": "13.3.3",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@smithy/querystring-builder": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-2.1.2.tgz",
- "integrity": "sha512-wk6QpuvBBLJF5w8aADsZOtxaHY9cF5MZe1Ry3hSqqBxARdUrMoXi/jukUz5W0ftXGlbA398IN8dIIUj3WXqJXg==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/resource-detector-gcp": {
+ "version": "file:detectors/node/opentelemetry-resource-detector-gcp",
"requires": {
- "@smithy/types": "^2.10.0",
- "@smithy/util-uri-escape": "^2.1.1",
- "tslib": "^2.5.0"
+ "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/core": "^1.0.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "gcp-metadata": "^6.0.0",
+ "nock": "13.3.3",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@smithy/querystring-parser": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-2.1.2.tgz",
- "integrity": "sha512-z1yL5Iiagm/UxVy1tcuTFZdfOBK/QtYeK6wfClAJ7cOY7kIaYR6jn1cVXXJmhAQSh1b2ljP4xiZN4Ybj7Tbs5w==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/resource-detector-github": {
+ "version": "file:detectors/node/opentelemetry-resource-detector-github",
"requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "@opentelemetry/api": "^1.0.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@smithy/service-error-classification": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-2.1.2.tgz",
- "integrity": "sha512-R+gL1pAPuWkH6unFridk57wDH5PFY2IlVg2NUjSAjoaIaU+sxqKf/7AOWIcx9Bdn+xY0/4IRQ69urlC+F3I9gg==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/resource-detector-instana": {
+ "version": "file:detectors/node/opentelemetry-resource-detector-instana",
"requires": {
- "@smithy/types": "^2.10.0"
+ "@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/resources": "^1.10.0",
+ "@opentelemetry/sdk-node": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mocha": "8.2.3",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "nock": "13.3.3",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/mocha": {
+ "version": "8.2.3",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-8.2.3.tgz",
+ "integrity": "sha512-ekGvFhFgrc2zYQoX4JeZPmVzZxw6Dtllga7iGHzfbYIYkAMUx/sAFP2GdFpLff+vdHXu5fl7WX9AT+TtqYcsyw==",
+ "dev": true
+ },
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@smithy/shared-ini-file-loader": {
- "version": "2.3.2",
- "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-2.3.2.tgz",
- "integrity": "sha512-idHGDJB+gBh+aaIjmWj6agmtNWftoyAenErky74hAtKyUaCvfocSBgEJ2pQ6o68svBluvGIj4NGFgJu0198mow==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/resources": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/resources/-/resources-1.27.0.tgz",
+ "integrity": "sha512-jOwt2VJ/lUD5BLc+PMNymDrUCpm5PKi1E9oSVYAvz01U/VdndGmrtV3DU1pG4AwlYhJRHbHfOUIlpBeXCPw6QQ==",
"requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
}
},
- "@smithy/signature-v4": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-2.1.2.tgz",
- "integrity": "sha512-DdPWaNGIbxzyocR3ncH8xlxQgsqteRADEdCPoivgBzwv17UzKy2obtdi2vwNc5lAJ955bGEkkWef9O7kc1Eocg==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/sdk-logs": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-logs/-/sdk-logs-0.54.2.tgz",
+ "integrity": "sha512-yIbYqDLS/AtBbPjCjh6eSToGNRMqW2VR8RrKEy+G+J7dFG7pKoptTH5T+XlKPleP9NY8JZYIpgJBlI+Osi0rFw==",
"requires": {
- "@smithy/eventstream-codec": "^2.1.2",
- "@smithy/is-array-buffer": "^2.1.1",
- "@smithy/types": "^2.10.0",
- "@smithy/util-hex-encoding": "^2.1.1",
- "@smithy/util-middleware": "^2.1.2",
- "@smithy/util-uri-escape": "^2.1.1",
- "@smithy/util-utf8": "^2.1.1",
- "tslib": "^2.5.0"
+ "@opentelemetry/api-logs": "0.54.2",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/resources": "1.27.0"
}
},
- "@smithy/smithy-client": {
- "version": "2.4.0",
- "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-2.4.0.tgz",
- "integrity": "sha512-6/jxk0om9l2s9BcgHtrBn+Hd3xcFGDzxfEJ2FvGpZxIz0S7bgvZg1gyR66O1xf1w9WZBH+W7JClhfSn2gETINw==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/sdk-metrics": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-metrics/-/sdk-metrics-1.27.0.tgz",
+ "integrity": "sha512-JzWgzlutoXCydhHWIbLg+r76m+m3ncqvkCcsswXAQ4gqKS+LOHKhq+t6fx1zNytvLuaOUBur7EvWxECc4jPQKg==",
"requires": {
- "@smithy/middleware-endpoint": "^2.4.2",
- "@smithy/middleware-stack": "^2.1.2",
- "@smithy/protocol-http": "^3.2.0",
- "@smithy/types": "^2.10.0",
- "@smithy/util-stream": "^2.1.2",
- "tslib": "^2.5.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/resources": "1.27.0"
}
},
- "@smithy/types": {
- "version": "2.10.0",
- "resolved": "https://registry.npmjs.org/@smithy/types/-/types-2.10.0.tgz",
- "integrity": "sha512-QYXQmpIebS8/jYXgyJjCanKZbI4Rr8tBVGBAIdDhA35f025TVjJNW69FJ0TGiDqt+lIGo037YIswq2t2Y1AYZQ==",
- "dev": true,
- "requires": {
- "tslib": "^2.5.0"
+ "@opentelemetry/sdk-node": {
+ "version": "0.54.2",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-node/-/sdk-node-0.54.2.tgz",
+ "integrity": "sha512-afn8GBpA7Gb55aU0LUxIQ+oe6QxLhsf+Te9iw12Non3ZAspzdoCcfz5+hqecwpuVpEDdnj5iSalF7VVaL2pDeg==",
+ "requires": {
+ "@opentelemetry/api-logs": "0.54.2",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/exporter-logs-otlp-grpc": "0.54.2",
+ "@opentelemetry/exporter-logs-otlp-http": "0.54.2",
+ "@opentelemetry/exporter-logs-otlp-proto": "0.54.2",
+ "@opentelemetry/exporter-trace-otlp-grpc": "0.54.2",
+ "@opentelemetry/exporter-trace-otlp-http": "0.54.2",
+ "@opentelemetry/exporter-trace-otlp-proto": "0.54.2",
+ "@opentelemetry/exporter-zipkin": "1.27.0",
+ "@opentelemetry/instrumentation": "0.54.2",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/sdk-logs": "0.54.2",
+ "@opentelemetry/sdk-metrics": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
+ "@opentelemetry/sdk-trace-node": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
}
},
- "@smithy/url-parser": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-2.1.2.tgz",
- "integrity": "sha512-KBPi740ciTujUaY+RfQuPABD0QFmgSBN5qNVDCGTryfsbG4jkwC0YnElSzi72m24HegMyxzZDLG4Oh4/97mw2g==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/sdk-trace-base": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.27.0.tgz",
+ "integrity": "sha512-btz6XTQzwsyJjombpeqCX6LhiMQYpzt2pIYNPnw0IPO/3AhT6yjnf8Mnv3ZC2A4eRYOjqrg+bfaXg9XHDRJDWQ==",
"requires": {
- "@smithy/querystring-parser": "^2.1.2",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/resources": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
}
},
- "@smithy/util-base64": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-2.1.1.tgz",
- "integrity": "sha512-UfHVpY7qfF/MrgndI5PexSKVTxSZIdz9InghTFa49QOvuu9I52zLPLUHXvHpNuMb1iD2vmc6R+zbv/bdMipR/g==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/util-buffer-from": "^2.1.1",
- "tslib": "^2.5.0"
+ "@opentelemetry/sdk-trace-node": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.27.0.tgz",
+ "integrity": "sha512-dWZp/dVGdUEfRBjBq2BgNuBlFqHCxyyMc8FsN0NX15X07mxSUO0SZRLyK/fdAVrde8nqFI/FEdMH4rgU9fqJfQ==",
+ "requires": {
+ "@opentelemetry/context-async-hooks": "1.27.0",
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/propagator-b3": "1.27.0",
+ "@opentelemetry/propagator-jaeger": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
+ "semver": "^7.5.2"
}
},
- "@smithy/util-body-length-browser": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-2.1.1.tgz",
- "integrity": "sha512-ekOGBLvs1VS2d1zM2ER4JEeBWAvIOUKeaFch29UjjJsxmZ/f0L3K3x0dEETgh3Q9bkZNHgT+rkdl/J/VUqSRag==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/sdk-trace-web": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.27.0.tgz",
+ "integrity": "sha512-ORZfG8Sm5IkJeI+P8MyW8v4m5OcmjEtD7VsjBghv5sDKH3f5p2mQpEEoJWlCr5GiW50Y1MaI2R4uFGIsxmDE9A==",
"requires": {
- "tslib": "^2.5.0"
+ "@opentelemetry/core": "1.27.0",
+ "@opentelemetry/sdk-trace-base": "1.27.0",
+ "@opentelemetry/semantic-conventions": "1.27.0"
}
},
- "@smithy/util-body-length-node": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-2.2.1.tgz",
- "integrity": "sha512-/ggJG+ta3IDtpNVq4ktmEUtOkH1LW64RHB5B0hcr5ZaWBmo96UX2cIOVbjCqqDickTXqBWZ4ZO0APuaPrD7Abg==",
- "dev": true,
- "optional": true,
- "requires": {
- "tslib": "^2.5.0"
- }
+ "@opentelemetry/semantic-conventions": {
+ "version": "1.27.0",
+ "resolved": "https://registry.npmjs.org/@opentelemetry/semantic-conventions/-/semantic-conventions-1.27.0.tgz",
+ "integrity": "sha512-sAay1RrB+ONOem0OZanAR1ZI/k7yDpnOQSQmTMuGImUQb2y8EbSaCJ94FQluM74xoU03vlb2d2U90hZluL6nQg=="
},
- "@smithy/util-buffer-from": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.1.1.tgz",
- "integrity": "sha512-clhNjbyfqIv9Md2Mg6FffGVrJxw7bgK7s3Iax36xnfVj6cg0fUG7I4RH0XgXJF8bxi+saY5HR21g2UPKSxVCXg==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/sql-common": {
+ "version": "file:packages/opentelemetry-sql-common",
"requires": {
- "@smithy/is-array-buffer": "^2.1.1",
- "tslib": "^2.5.0"
+ "@opentelemetry/api": "^1.1.0",
+ "@opentelemetry/core": "^1.1.0",
+ "@types/mocha": "^7.0.2",
+ "@types/node": "18.18.14",
+ "nyc": "15.1.0",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ }
}
},
- "@smithy/util-config-provider": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-2.2.1.tgz",
- "integrity": "sha512-50VL/tx9oYYcjJn/qKqNy7sCtpD0+s8XEBamIFo4mFFTclKMNp+rsnymD796uybjiIquB7VCB/DeafduL0y2kw==",
- "dev": true,
- "optional": true,
+ "@opentelemetry/winston-transport": {
+ "version": "file:packages/winston-transport",
"requires": {
- "tslib": "^2.5.0"
+ "@opentelemetry/api-logs": "^0.54.0",
+ "@types/mocha": "7.0.2",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "@types/triple-beam": "1.3.2",
+ "nyc": "15.1.0",
+ "rimraf": "5.0.10",
+ "sinon": "15.2.0",
+ "typescript": "4.4.4",
+ "winston-transport": "4.*"
+ },
+ "dependencies": {
+ "@types/node": {
+ "version": "18.18.14",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.18.14.tgz",
+ "integrity": "sha512-iSOeNeXYNYNLLOMDSVPvIFojclvMZ/HDY2dU17kUlcsOsSQETbWIslJbYLZgA+ox8g2XQwSHKTkght1a5X26lQ==",
+ "dev": true,
+ "requires": {
+ "undici-types": "~5.26.4"
+ }
+ },
+ "@types/triple-beam": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.2.tgz",
+ "integrity": "sha512-txGIh+0eDFzKGC25zORnswy+br1Ha7hj5cMVwKIU7+s0U2AxxJru/jZSMU6OC9MJWP6+pc/hc6ZjyZShpsyY2g==",
+ "dev": true
+ }
}
},
- "@smithy/util-defaults-mode-browser": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-2.1.2.tgz",
- "integrity": "sha512-YmojdmsE7VbvFGJ/8btn/5etLm1HOQkgVX6nMWlB0yBL/Vb//s3aTebUJ66zj2+LNrBS3B9S+18+LQU72Yj0AQ==",
+ "@parcel/watcher": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/@parcel/watcher/-/watcher-2.0.4.tgz",
+ "integrity": "sha512-cTDi+FUDBIUOBKEtj+nhiJ71AZVlkAsQFuGQTun5tV9mwQBQgZvhCzG+URPQc8myeN32yRVZEfVAPCs1RW+Jvg==",
"dev": true,
- "optional": true,
"requires": {
- "@smithy/property-provider": "^2.1.2",
- "@smithy/smithy-client": "^2.4.0",
- "@smithy/types": "^2.10.0",
- "bowser": "^2.11.0",
- "tslib": "^2.5.0"
+ "node-addon-api": "^3.2.1",
+ "node-gyp-build": "^4.3.0"
}
},
- "@smithy/util-defaults-mode-node": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-2.2.1.tgz",
- "integrity": "sha512-kof7M9Q2qP5yaQn8hHJL3KwozyvIfLe+ys7feifSul6gBAAeoraibo/MWqotb/I0fVLMlCMDwn7WXFsGUwnsew==",
+ "@pkgjs/parseargs": {
+ "version": "0.11.0",
+ "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
+ "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
"dev": true,
- "optional": true,
- "requires": {
- "@smithy/config-resolver": "^2.1.2",
- "@smithy/credential-provider-imds": "^2.2.2",
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/property-provider": "^2.1.2",
- "@smithy/smithy-client": "^2.4.0",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
+ "optional": true
},
- "@smithy/util-endpoints": {
+ "@protobufjs/aspromise": {
"version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-1.1.2.tgz",
- "integrity": "sha512-2/REfdcJ20y9iF+9kSBRBsaoGzjT5dZ3E6/TA45GHJuJAb/vZTj76VLTcrl2iN3fWXiDK1B8RxchaLGbr7RxxA==",
- "dev": true,
- "optional": true,
- "requires": {
- "@smithy/node-config-provider": "^2.2.2",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
- }
+ "resolved": "https://registry.npmjs.org/@protobufjs/aspromise/-/aspromise-1.1.2.tgz",
+ "integrity": "sha512-j+gKExEuLmKwvz3OgROXtrJ2UG2x8Ch2YZUxahh+s1F2HZ+wAceUNLkvy6zKCPVRkU++ZWQrdxsUeQXmcg4uoQ=="
},
- "@smithy/util-hex-encoding": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-2.1.1.tgz",
- "integrity": "sha512-3UNdP2pkYUUBGEXzQI9ODTDK+Tcu1BlCyDBaRHwyxhA+8xLP8agEKQq4MGmpjqb4VQAjq9TwlCQX0kP6XDKYLg==",
- "dev": true,
- "optional": true,
- "requires": {
- "tslib": "^2.5.0"
- }
+ "@protobufjs/base64": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@protobufjs/base64/-/base64-1.1.2.tgz",
+ "integrity": "sha512-AZkcAA5vnN/v4PDqKyMR5lx7hZttPDgClv83E//FMNhR2TMcLUhfRUBHCmSl0oi9zMgDDqRUJkSxO3wm85+XLg=="
},
- "@smithy/util-middleware": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-2.1.2.tgz",
- "integrity": "sha512-lvSOnwQ7iAajtWb1nAyy0CkOIn8d+jGykQOtt2NXDsPzOTfejZM/Uph+O/TmVgWoXdcGuw5peUMG2f5xEIl6UQ==",
- "dev": true,
- "optional": true,
+ "@protobufjs/codegen": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/@protobufjs/codegen/-/codegen-2.0.4.tgz",
+ "integrity": "sha512-YyFaikqM5sH0ziFZCN3xDC7zeGaB/d0IUb9CATugHWbd1FRFwWwt4ld4OYMPWu5a3Xe01mGAULCdqhMlPl29Jg=="
+ },
+ "@protobufjs/eventemitter": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@protobufjs/eventemitter/-/eventemitter-1.1.0.tgz",
+ "integrity": "sha512-j9ednRT81vYJ9OfVuXG6ERSTdEL1xVsNgqpkxMsbIabzSo3goCjDIveeGv5d03om39ML71RdmrGNjG5SReBP/Q=="
+ },
+ "@protobufjs/fetch": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@protobufjs/fetch/-/fetch-1.1.0.tgz",
+ "integrity": "sha512-lljVXpqXebpsijW71PZaCYeIcE5on1w5DlQy5WH6GLbFryLUrBD4932W/E2BSpfRJWseIL4v/KPgBFxDOIdKpQ==",
"requires": {
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "@protobufjs/aspromise": "^1.1.1",
+ "@protobufjs/inquire": "^1.1.0"
}
},
- "@smithy/util-retry": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-2.1.2.tgz",
- "integrity": "sha512-pqifOgRqwLfRu+ks3awEKKqPeYxrHLwo4Yu2EarGzeoarTd1LVEyyf5qLE6M7IiCsxnXRhn9FoWIdZOC+oC/VQ==",
+ "@protobufjs/float": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@protobufjs/float/-/float-1.0.2.tgz",
+ "integrity": "sha512-Ddb+kVXlXst9d+R9PfTIxh1EdNkgoRe5tOX6t01f1lYWOvJnSPDBlG241QLzcyPdoNTsblLUdujGSE4RzrTZGQ=="
+ },
+ "@protobufjs/inquire": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@protobufjs/inquire/-/inquire-1.1.0.tgz",
+ "integrity": "sha512-kdSefcPdruJiFMVSbn801t4vFK7KB/5gd2fYvrxhuJYg8ILrmn9SKSX2tZdV6V+ksulWqS7aXjBcRXl3wHoD9Q=="
+ },
+ "@protobufjs/path": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@protobufjs/path/-/path-1.1.2.tgz",
+ "integrity": "sha512-6JOcJ5Tm08dOHAbdR3GrvP+yUUfkjG5ePsHYczMFLq3ZmMkAD98cDgcT2iA1lJ9NVwFd4tH/iSSoe44YWkltEA=="
+ },
+ "@protobufjs/pool": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@protobufjs/pool/-/pool-1.1.0.tgz",
+ "integrity": "sha512-0kELaGSIDBKvcgS4zkjz1PeddatrjYcmMWOlAuAPwAeccUrPHdUqo/J6LiymHHEiJT5NrF1UVwxY14f+fy4WQw=="
+ },
+ "@protobufjs/utf8": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@protobufjs/utf8/-/utf8-1.1.0.tgz",
+ "integrity": "sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw=="
+ },
+ "@puppeteer/browsers": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/@puppeteer/browsers/-/browsers-2.1.0.tgz",
+ "integrity": "sha512-xloWvocjvryHdUjDam/ZuGMh7zn4Sn3ZAaV4Ah2e2EwEt90N3XphZlSsU3n0VDc1F7kggCjMuH0UuxfPQ5mD9w==",
"dev": true,
- "optional": true,
"requires": {
- "@smithy/service-error-classification": "^2.1.2",
- "@smithy/types": "^2.10.0",
- "tslib": "^2.5.0"
+ "debug": "4.3.4",
+ "extract-zip": "2.0.1",
+ "progress": "2.0.3",
+ "proxy-agent": "6.4.0",
+ "semver": "7.6.0",
+ "tar-fs": "3.0.5",
+ "unbzip2-stream": "1.4.3",
+ "yargs": "17.7.2"
+ },
+ "dependencies": {
+ "lru-cache": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
+ "dev": true,
+ "requires": {
+ "yallist": "^4.0.0"
+ }
+ },
+ "semver": {
+ "version": "7.6.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
+ "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
+ "dev": true,
+ "requires": {
+ "lru-cache": "^6.0.0"
+ }
+ },
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ }
}
},
- "@smithy/util-stream": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-2.1.2.tgz",
- "integrity": "sha512-AbGjvoSok7YeUKv9WRVRSChQfsufLR54YCAabTbaABRdIucywRQs29em0uAP6r4RLj+4aFZStWGYpFgT0P8UlQ==",
+ "@redis/bloom": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@redis/bloom/-/bloom-1.0.2.tgz",
+ "integrity": "sha512-EBw7Ag1hPgFzdznK2PBblc1kdlj5B5Cw3XwI9/oG7tSn85/HKy3X9xHy/8tm/eNXJYHLXHJL/pkwBpFMVVefkw==",
"dev": true,
- "optional": true,
- "requires": {
- "@smithy/fetch-http-handler": "^2.4.2",
- "@smithy/node-http-handler": "^2.4.0",
- "@smithy/types": "^2.10.0",
- "@smithy/util-base64": "^2.1.1",
- "@smithy/util-buffer-from": "^2.1.1",
- "@smithy/util-hex-encoding": "^2.1.1",
- "@smithy/util-utf8": "^2.1.1",
- "tslib": "^2.5.0"
- }
+ "requires": {}
},
- "@smithy/util-uri-escape": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-2.1.1.tgz",
- "integrity": "sha512-saVzI1h6iRBUVSqtnlOnc9ssU09ypo7n+shdQ8hBTZno/9rZ3AuRYvoHInV57VF7Qn7B+pFJG7qTzFiHxWlWBw==",
+ "@redis/client": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@redis/client/-/client-1.1.0.tgz",
+ "integrity": "sha512-xO9JDIgzsZYDl3EvFhl6LC52DP3q3GCMUer8zHgKV6qSYsq1zB+pZs9+T80VgcRogrlRYhi4ZlfX6A+bHiBAgA==",
"dev": true,
- "optional": true,
"requires": {
- "tslib": "^2.5.0"
+ "cluster-key-slot": "1.1.0",
+ "generic-pool": "3.8.2",
+ "yallist": "4.0.0"
+ },
+ "dependencies": {
+ "cluster-key-slot": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/cluster-key-slot/-/cluster-key-slot-1.1.0.tgz",
+ "integrity": "sha512-2Nii8p3RwAPiFwsnZvukotvow2rIHM+yQ6ZcBXGHdniadkYGZYiGmkHJIbZPIV9nfv7m/U1IPMVVcAhoWFeklw==",
+ "dev": true
+ },
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ }
}
},
- "@smithy/util-utf8": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.1.1.tgz",
- "integrity": "sha512-BqTpzYEcUMDwAKr7/mVRUtHDhs6ZoXDi9NypMvMfOr/+u1NW7JgqodPDECiiLboEm6bobcPcECxzjtQh865e9A==",
+ "@redis/graph": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@redis/graph/-/graph-1.0.1.tgz",
+ "integrity": "sha512-oDE4myMCJOCVKYMygEMWuriBgqlS5FqdWerikMoJxzmmTUErnTRRgmIDa2VcgytACZMFqpAOWDzops4DOlnkfQ==",
"dev": true,
- "optional": true,
- "requires": {
- "@smithy/util-buffer-from": "^2.1.1",
- "tslib": "^2.5.0"
- }
- },
- "@socket.io/component-emitter": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz",
- "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==",
- "dev": true
- },
- "@teppeis/multimaps": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@teppeis/multimaps/-/multimaps-2.0.0.tgz",
- "integrity": "sha512-TL1adzq1HdxUf9WYduLcQ/DNGYiz71U31QRgbnr0Ef1cPyOUOsBojxHVWpFeOSUucB6Lrs0LxFRA14ntgtkc9w==",
- "dev": true
+ "requires": {}
},
- "@tootallnate/once": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz",
- "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",
- "dev": true
+ "@redis/json": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/@redis/json/-/json-1.0.3.tgz",
+ "integrity": "sha512-4X0Qv0BzD9Zlb0edkUoau5c1bInWSICqXAGrpwEltkncUwcxJIGEcVryZhLgb0p/3PkKaLIWkjhHRtLe9yiA7Q==",
+ "dev": true,
+ "requires": {}
},
- "@tootallnate/quickjs-emscripten": {
- "version": "0.23.0",
- "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz",
- "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==",
- "dev": true
+ "@redis/search": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/@redis/search/-/search-1.0.6.tgz",
+ "integrity": "sha512-pP+ZQRis5P21SD6fjyCeLcQdps+LuTzp2wdUbzxEmNhleighDDTD5ck8+cYof+WLec4csZX7ks+BuoMw0RaZrA==",
+ "dev": true,
+ "requires": {}
},
- "@tufjs/canonical-json": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz",
- "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==",
- "dev": true
+ "@redis/time-series": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/@redis/time-series/-/time-series-1.0.3.tgz",
+ "integrity": "sha512-OFp0q4SGrTH0Mruf6oFsHGea58u8vS/iI5+NpYdicaM+7BgqBZH8FFvNZ8rYYLrUO/QRqMq72NpXmxLVNcdmjA==",
+ "dev": true,
+ "requires": {}
},
- "@tufjs/models": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz",
- "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==",
+ "@rollup/plugin-commonjs": {
+ "version": "26.0.1",
+ "resolved": "https://registry.npmjs.org/@rollup/plugin-commonjs/-/plugin-commonjs-26.0.1.tgz",
+ "integrity": "sha512-UnsKoZK6/aGIH6AdkptXhNvhaqftcjq3zZdT+LY5Ftms6JR06nADcDsYp5hTU9E2lbJUEOhdlY5J4DNTneM+jQ==",
"dev": true,
"requires": {
- "@tufjs/canonical-json": "1.0.0",
- "minimatch": "^9.0.0"
+ "@rollup/pluginutils": "^5.0.1",
+ "commondir": "^1.0.1",
+ "estree-walker": "^2.0.2",
+ "glob": "^10.4.1",
+ "is-reference": "1.2.1",
+ "magic-string": "^0.30.3"
}
},
- "@types/accepts": {
- "version": "1.3.7",
- "resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.7.tgz",
- "integrity": "sha512-Pay9fq2lM2wXPWbteBsRAGiWH2hig4ZE2asK+mm7kUzlxRTfL961rj89I6zV/E3PcIkDqyuBEcMxFT7rccugeQ==",
+ "@rollup/plugin-node-resolve": {
+ "version": "15.2.3",
+ "resolved": "https://registry.npmjs.org/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.2.3.tgz",
+ "integrity": "sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ==",
+ "dev": true,
"requires": {
- "@types/node": "*"
+ "@rollup/pluginutils": "^5.0.1",
+ "@types/resolve": "1.20.2",
+ "deepmerge": "^4.2.2",
+ "is-builtin-module": "^3.2.1",
+ "is-module": "^1.0.0",
+ "resolve": "^1.22.1"
}
},
- "@types/amqplib": {
- "version": "0.5.17",
- "resolved": "https://registry.npmjs.org/@types/amqplib/-/amqplib-0.5.17.tgz",
- "integrity": "sha512-RImqiLP1swDqWBW8UX9iBXVEOw6MYzNmxdXqfemDfdwtUvdTM/W0s2RlSuMVIGkRhaWvpkC9O/N81VzzQwfAbw==",
+ "@rollup/pluginutils": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.0.tgz",
+ "integrity": "sha512-XTIWOPPcpvyKI6L1NHo0lFlCyznUEyPmPY1mc3KpPVDYulHSTvyeLNVW00QTLIAFNhR3kYnJTQHeGqU4M3n09g==",
"dev": true,
"requires": {
- "@types/bluebird": "*",
- "@types/node": "*"
+ "@types/estree": "^1.0.0",
+ "estree-walker": "^2.0.2",
+ "picomatch": "^2.3.1"
}
},
- "@types/aws-lambda": {
- "version": "8.10.122",
- "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.122.tgz",
- "integrity": "sha512-vBkIh9AY22kVOCEKo5CJlyCgmSWvasC+SWUxL/x/vOwRobMpI/HG1xp/Ae3AqmSiZeLUbOhW0FCD3ZjqqUxmXw=="
- },
- "@types/babel__code-frame": {
- "version": "7.0.6",
- "resolved": "https://registry.npmjs.org/@types/babel__code-frame/-/babel__code-frame-7.0.6.tgz",
- "integrity": "sha512-Anitqkl3+KrzcW2k77lRlg/GfLZLWXBuNgbEcIOU6M92yw42vsd3xV/Z/yAHEj8m+KUjL6bWOVOFqX8PFPJ4LA==",
- "dev": true
+ "@rollup/rollup-android-arm-eabi": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.12.1.tgz",
+ "integrity": "sha512-iU2Sya8hNn1LhsYyf0N+L4Gf9Qc+9eBTJJJsaOGUp+7x4n2M9dxTt8UvhJl3oeftSjblSlpCfvjA/IfP3g5VjQ==",
+ "dev": true,
+ "optional": true
},
- "@types/bluebird": {
- "version": "3.5.42",
- "resolved": "https://registry.npmjs.org/@types/bluebird/-/bluebird-3.5.42.tgz",
- "integrity": "sha512-Jhy+MWRlro6UjVi578V/4ZGNfeCOcNCp0YaFNIUGFKlImowqwb1O/22wDVk3FDGMLqxdpOV3qQHD5fPEH4hK6A==",
- "dev": true
+ "@rollup/rollup-android-arm64": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.12.1.tgz",
+ "integrity": "sha512-wlzcWiH2Ir7rdMELxFE5vuM7D6TsOcJ2Yw0c3vaBR3VOsJFVTx9xvwnAvhgU5Ii8Gd6+I11qNHwndDscIm0HXg==",
+ "dev": true,
+ "optional": true
},
- "@types/body-parser": {
- "version": "1.19.5",
- "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz",
- "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==",
- "requires": {
- "@types/connect": "*",
- "@types/node": "*"
- }
+ "@rollup/rollup-darwin-arm64": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.12.1.tgz",
+ "integrity": "sha512-YRXa1+aZIFN5BaImK+84B3uNK8C6+ynKLPgvn29X9s0LTVCByp54TB7tdSMHDR7GTV39bz1lOmlLDuedgTwwHg==",
+ "dev": true,
+ "optional": true
},
- "@types/bson": {
- "version": "4.0.5",
- "resolved": "https://registry.npmjs.org/@types/bson/-/bson-4.0.5.tgz",
- "integrity": "sha512-vVLwMUqhYJSQ/WKcE60eFqcyuWse5fGH+NMAXHuKrUAPoryq3ATxk5o4bgYNtg5aOM4APVg7Hnb3ASqUYG0PKg==",
+ "@rollup/rollup-darwin-x64": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.12.1.tgz",
+ "integrity": "sha512-opjWJ4MevxeA8FhlngQWPBOvVWYNPFkq6/25rGgG+KOy0r8clYwL1CFd+PGwRqqMFVQ4/Qd3sQu5t7ucP7C/Uw==",
"dev": true,
- "requires": {
- "@types/node": "*"
- }
+ "optional": true
},
- "@types/bunyan": {
- "version": "1.8.11",
- "resolved": "https://registry.npmjs.org/@types/bunyan/-/bunyan-1.8.11.tgz",
- "integrity": "sha512-758fRH7umIMk5qt5ELmRMff4mLDlN+xyYzC+dkPTdKwbSkJFvz6xwyScrytPU0QIBbRRwbiE8/BIg8bpajerNQ==",
+ "@rollup/rollup-linux-arm-gnueabihf": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.12.1.tgz",
+ "integrity": "sha512-uBkwaI+gBUlIe+EfbNnY5xNyXuhZbDSx2nzzW8tRMjUmpScd6lCQYKY2V9BATHtv5Ef2OBq6SChEP8h+/cxifQ==",
"dev": true,
- "requires": {
- "@types/node": "*"
- }
+ "optional": true
},
- "@types/chai": {
- "version": "4.3.12",
- "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.12.tgz",
- "integrity": "sha512-zNKDHG/1yxm8Il6uCCVsm+dRdEsJlFoDu73X17y09bId6UwoYww+vFBsAcRzl8knM1sab3Dp1VRikFQwDOtDDw==",
- "dev": true
+ "@rollup/rollup-linux-arm64-gnu": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.12.1.tgz",
+ "integrity": "sha512-0bK9aG1kIg0Su7OcFTlexkVeNZ5IzEsnz1ept87a0TUgZ6HplSgkJAnFpEVRW7GRcikT4GlPV0pbtVedOaXHQQ==",
+ "dev": true,
+ "optional": true
},
- "@types/co-body": {
- "version": "6.1.3",
- "resolved": "https://registry.npmjs.org/@types/co-body/-/co-body-6.1.3.tgz",
- "integrity": "sha512-UhuhrQ5hclX6UJctv5m4Rfp52AfG9o9+d9/HwjxhVB5NjXxr5t9oKgJxN8xRHgr35oo8meUEHUPFWiKg6y71aA==",
+ "@rollup/rollup-linux-arm64-musl": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.12.1.tgz",
+ "integrity": "sha512-qB6AFRXuP8bdkBI4D7UPUbE7OQf7u5OL+R94JE42Z2Qjmyj74FtDdLGeriRyBDhm4rQSvqAGCGC01b8Fu2LthQ==",
"dev": true,
- "requires": {
- "@types/node": "*",
- "@types/qs": "*"
- }
+ "optional": true
},
- "@types/command-line-args": {
- "version": "5.2.3",
- "resolved": "https://registry.npmjs.org/@types/command-line-args/-/command-line-args-5.2.3.tgz",
- "integrity": "sha512-uv0aG6R0Y8WHZLTamZwtfsDLVRnOa+n+n5rEvFWL5Na5gZ8V2Teab/duDPFzIIIhs9qizDpcavCusCLJZu62Kw==",
- "dev": true
+ "@rollup/rollup-linux-riscv64-gnu": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.12.1.tgz",
+ "integrity": "sha512-sHig3LaGlpNgDj5o8uPEoGs98RII8HpNIqFtAI8/pYABO8i0nb1QzT0JDoXF/pxzqO+FkxvwkHZo9k0NJYDedg==",
+ "dev": true,
+ "optional": true
},
- "@types/connect": {
- "version": "3.4.38",
- "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.38.tgz",
- "integrity": "sha512-K6uROf1LD88uDQqJCktA4yzL1YYAK6NgfsI0v/mTgyPKWsX1CnJ0XPSDhViejru1GcRkLWb8RlzFYJRqGUbaug==",
- "requires": {
- "@types/node": "*"
- }
+ "@rollup/rollup-linux-x64-gnu": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.12.1.tgz",
+ "integrity": "sha512-nD3YcUv6jBJbBNFvSbp0IV66+ba/1teuBcu+fBBPZ33sidxitc6ErhON3JNavaH8HlswhWMC3s5rgZpM4MtPqQ==",
+ "dev": true,
+ "optional": true
},
- "@types/content-disposition": {
- "version": "0.5.8",
- "resolved": "https://registry.npmjs.org/@types/content-disposition/-/content-disposition-0.5.8.tgz",
- "integrity": "sha512-QVSSvno3dE0MgO76pJhmv4Qyi/j0Yk9pBp0Y7TJ2Tlj+KCgJWY6qX7nnxCOLkZ3VYRSIk1WTxCvwUSdx6CCLdg=="
+ "@rollup/rollup-linux-x64-musl": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.12.1.tgz",
+ "integrity": "sha512-7/XVZqgBby2qp/cO0TQ8uJK+9xnSdJ9ct6gSDdEr4MfABrjTyrW6Bau7HQ73a2a5tPB7hno49A0y1jhWGDN9OQ==",
+ "dev": true,
+ "optional": true
},
- "@types/convert-source-map": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@types/convert-source-map/-/convert-source-map-2.0.3.tgz",
- "integrity": "sha512-ag0BfJLZf6CQz8VIuRIEYQ5Ggwk/82uvTQf27RcpyDNbY0Vw49LIPqAxk5tqYfrCs9xDaIMvl4aj7ZopnYL8bA==",
- "dev": true
+ "@rollup/rollup-win32-arm64-msvc": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.12.1.tgz",
+ "integrity": "sha512-CYc64bnICG42UPL7TrhIwsJW4QcKkIt9gGlj21gq3VV0LL6XNb1yAdHVp1pIi9gkts9gGcT3OfUYHjGP7ETAiw==",
+ "dev": true,
+ "optional": true
},
- "@types/cookie": {
- "version": "0.4.1",
- "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz",
- "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==",
- "dev": true
+ "@rollup/rollup-win32-ia32-msvc": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.12.1.tgz",
+ "integrity": "sha512-LN+vnlZ9g0qlHGlS920GR4zFCqAwbv2lULrR29yGaWP9u7wF5L7GqWu9Ah6/kFZPXPUkpdZwd//TNR+9XC9hvA==",
+ "dev": true,
+ "optional": true
},
- "@types/cookies": {
- "version": "0.9.0",
- "resolved": "https://registry.npmjs.org/@types/cookies/-/cookies-0.9.0.tgz",
- "integrity": "sha512-40Zk8qR147RABiQ7NQnBzWzDcjKzNrntB5BAmeGCb2p/MIyOE+4BVvc17wumsUqUw00bJYqoXFHYygQnEFh4/Q==",
- "requires": {
- "@types/connect": "*",
- "@types/express": "*",
- "@types/keygrip": "*",
- "@types/node": "*"
- }
+ "@rollup/rollup-win32-x64-msvc": {
+ "version": "4.12.1",
+ "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.12.1.tgz",
+ "integrity": "sha512-n+vkrSyphvmU0qkQ6QBNXCGr2mKjhP08mPRM/Xp5Ck2FV4NrHU+y6axzDeixUrCBHVUS51TZhjqrKBBsHLKb2Q==",
+ "dev": true,
+ "optional": true
},
- "@types/cors": {
- "version": "2.8.17",
- "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz",
- "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==",
+ "@sideway/address": {
+ "version": "4.1.5",
+ "resolved": "https://registry.npmjs.org/@sideway/address/-/address-4.1.5.tgz",
+ "integrity": "sha512-IqO/DUQHUkPeixNQ8n0JA6102hT9CmaljNTPmQ1u8MEhBo/R4Q8eKLN/vGZxuebwOroDB4cbpjheD4+/sKFK4Q==",
"dev": true,
"requires": {
- "@types/node": "*"
+ "@hapi/hoek": "^9.0.0"
}
},
- "@types/debounce": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/@types/debounce/-/debounce-1.2.4.tgz",
- "integrity": "sha512-jBqiORIzKDOToaF63Fm//haOCHuwQuLa2202RK4MozpA6lh93eCBc+/8+wZn5OzjJt3ySdc+74SXWXB55Ewtyw==",
+ "@sideway/formula": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sideway/formula/-/formula-3.0.1.tgz",
+ "integrity": "sha512-/poHZJJVjx3L+zVD6g9KgHfYnb443oi7wLu/XKojDviHy6HOEOA6z1Trk5aR1dGcmPenJEgb2sK2I80LeS3MIg==",
"dev": true
},
- "@types/eslint": {
- "version": "8.56.10",
- "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz",
- "integrity": "sha512-Shavhk87gCtY2fhXDctcfS3e6FdxWkCx1iUZ9eEUbh7rTqlZT0/IzOkCOVt0fCjcFuZ9FPYfuezTBImfHCDBGQ==",
- "dev": true,
- "requires": {
- "@types/estree": "*",
- "@types/json-schema": "*"
- }
+ "@sideway/pinpoint": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@sideway/pinpoint/-/pinpoint-2.0.0.tgz",
+ "integrity": "sha512-RNiOoTPkptFtSVzQevY/yWtZwf/RxyVnPy/OcA9HBM3MlGDnBEYL5B41H0MTn0Uec8Hi+2qUtTfG2WWZBmMejQ==",
+ "dev": true
},
- "@types/eslint-scope": {
- "version": "3.7.7",
- "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.7.tgz",
- "integrity": "sha512-MzMFlSLBqNF2gcHWO0G1vP/YQyfvrxZ0bF+u7mzUdZ1/xK4A4sru+nraZz5i3iEIk1l1uyicaDVTB4QbbEkAYg==",
+ "@sigstore/bundle": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@sigstore/bundle/-/bundle-1.1.0.tgz",
+ "integrity": "sha512-PFutXEy0SmQxYI4texPw3dd2KewuNqv7OuK1ZFtY2fM754yhvG2KdgwIhRnoEE2uHdtdGNQ8s0lb94dW9sELog==",
"dev": true,
"requires": {
- "@types/eslint": "*",
- "@types/estree": "*"
+ "@sigstore/protobuf-specs": "^0.2.0"
}
},
- "@types/estree": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
- "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==",
+ "@sigstore/protobuf-specs": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.2.1.tgz",
+ "integrity": "sha512-XTWVxnWJu+c1oCshMLwnKvz8ZQJJDVOlciMfgpJBQbThVjKTCG8dwyhgLngBD2KN0ap9F/gOV8rFDEx8uh7R2A==",
"dev": true
},
- "@types/express": {
- "version": "4.17.18",
- "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.18.tgz",
- "integrity": "sha512-Sxv8BSLLgsBYmcnGdGjjEjqET2U+AKAdCRODmMiq02FgjwuV75Ut85DRpvFjyw/Mk0vgUOliGRU0UUmuuZHByQ==",
- "requires": {
- "@types/body-parser": "*",
- "@types/express-serve-static-core": "^4.17.33",
- "@types/qs": "*",
- "@types/serve-static": "*"
- }
- },
- "@types/express-serve-static-core": {
- "version": "4.17.43",
- "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.43.tgz",
- "integrity": "sha512-oaYtiBirUOPQGSWNGPWnzyAFJ0BP3cwvN4oWZQY+zUBwpVIGsKUkpBpSztp74drYcjavs7SKFZ4DX1V2QeN8rg==",
- "requires": {
- "@types/node": "*",
- "@types/qs": "*",
- "@types/range-parser": "*",
- "@types/send": "*"
- }
- },
- "@types/generic-pool": {
- "version": "3.8.1",
- "resolved": "https://registry.npmjs.org/@types/generic-pool/-/generic-pool-3.8.1.tgz",
- "integrity": "sha512-eaMAbZS0EfKvaP5PUZ/Cdf5uJBO2t6T3RdvQTKuMqUwGhNpCnPAsKWEMyV+mCeCQG3UiHrtgdzni8X6DmhxRaQ==",
+ "@sigstore/sign": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/@sigstore/sign/-/sign-1.0.0.tgz",
+ "integrity": "sha512-INxFVNQteLtcfGmcoldzV6Je0sbbfh9I16DM4yJPw3j5+TFP8X6uIiA18mvpEa9yyeycAKgPmOA3X9hVdVTPUA==",
"dev": true,
"requires": {
- "generic-pool": "*"
+ "@sigstore/bundle": "^1.1.0",
+ "@sigstore/protobuf-specs": "^0.2.0",
+ "make-fetch-happen": "^11.0.1"
+ },
+ "dependencies": {
+ "@tootallnate/once": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-2.0.0.tgz",
+ "integrity": "sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A==",
+ "dev": true
+ },
+ "agent-base": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz",
+ "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==",
+ "dev": true,
+ "requires": {
+ "debug": "4"
+ }
+ },
+ "http-proxy-agent": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz",
+ "integrity": "sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w==",
+ "dev": true,
+ "requires": {
+ "@tootallnate/once": "2",
+ "agent-base": "6",
+ "debug": "4"
+ }
+ },
+ "https-proxy-agent": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz",
+ "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==",
+ "dev": true,
+ "requires": {
+ "agent-base": "6",
+ "debug": "4"
+ }
+ },
+ "lru-cache": {
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
+ "dev": true
+ },
+ "make-fetch-happen": {
+ "version": "11.1.1",
+ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz",
+ "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==",
+ "dev": true,
+ "requires": {
+ "agentkeepalive": "^4.2.1",
+ "cacache": "^17.0.0",
+ "http-cache-semantics": "^4.1.1",
+ "http-proxy-agent": "^5.0.0",
+ "https-proxy-agent": "^5.0.0",
+ "is-lambda": "^1.0.1",
+ "lru-cache": "^7.7.1",
+ "minipass": "^5.0.0",
+ "minipass-fetch": "^3.0.0",
+ "minipass-flush": "^1.0.5",
+ "minipass-pipeline": "^1.2.4",
+ "negotiator": "^0.6.3",
+ "promise-retry": "^2.0.1",
+ "socks-proxy-agent": "^7.0.0",
+ "ssri": "^10.0.0"
+ }
+ },
+ "minipass": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
+ "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
+ "dev": true
+ },
+ "minipass-fetch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.4.tgz",
+ "integrity": "sha512-jHAqnA728uUpIaFm7NWsCnqKT6UqZz7GcI/bDpPATuwYyKwJwW0remxSCxUlKiEty+eopHGa3oc8WxgQ1FFJqg==",
+ "dev": true,
+ "requires": {
+ "encoding": "^0.1.13",
+ "minipass": "^7.0.3",
+ "minipass-sized": "^1.0.3",
+ "minizlib": "^2.1.2"
+ },
+ "dependencies": {
+ "minipass": {
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz",
+ "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==",
+ "dev": true
+ }
+ }
+ },
+ "socks-proxy-agent": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-7.0.0.tgz",
+ "integrity": "sha512-Fgl0YPZ902wEsAyiQ+idGd1A7rSFx/ayC1CQVMw5P+EQx2V0SgpGtf6OKFhVjPflPUl9YMmEOnmfjCdMUsygww==",
+ "dev": true,
+ "requires": {
+ "agent-base": "^6.0.2",
+ "debug": "^4.3.3",
+ "socks": "^2.6.2"
+ }
+ },
+ "ssri": {
+ "version": "10.0.5",
+ "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.5.tgz",
+ "integrity": "sha512-bSf16tAFkGeRlUNDjXu8FzaMQt6g2HZJrun7mtMbIPOddxt3GLMSz5VWUWcqTJUPfLEaDIepGxv+bYQW49596A==",
+ "dev": true,
+ "requires": {
+ "minipass": "^7.0.3"
+ },
+ "dependencies": {
+ "minipass": {
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.0.4.tgz",
+ "integrity": "sha512-jYofLM5Dam9279rdkWzqHozUo4ybjdZmCsDHePy5V/PbBcVMiSZR97gmAy45aqi8CK1lG2ECd356FU86avfwUQ==",
+ "dev": true
+ }
+ }
+ }
}
},
- "@types/http-assert": {
- "version": "1.5.5",
- "resolved": "https://registry.npmjs.org/@types/http-assert/-/http-assert-1.5.5.tgz",
- "integrity": "sha512-4+tE/lwdAahgZT1g30Jkdm9PzFRde0xwxBNUyRsCitRvCQB90iuA2uJYdUnhnANRcqGXaWOGY4FEoxeElNAK2g=="
- },
- "@types/http-errors": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz",
- "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA=="
- },
- "@types/ioredis4": {
- "version": "npm:@types/ioredis@4.28.10",
- "resolved": "https://registry.npmjs.org/@types/ioredis/-/ioredis-4.28.10.tgz",
- "integrity": "sha512-69LyhUgrXdgcNDv7ogs1qXZomnfOEnSmrmMFqKgt1XMJxmoOSG/u3wYy13yACIfKuMJ8IhKgHafDO3sx19zVQQ==",
+ "@sigstore/tuf": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/@sigstore/tuf/-/tuf-1.0.3.tgz",
+ "integrity": "sha512-2bRovzs0nJZFlCN3rXirE4gwxCn97JNjMmwpecqlbgV9WcxX7WRuIrgzx/X7Ib7MYRbyUTpBYE0s2x6AmZXnlg==",
"dev": true,
"requires": {
- "@types/node": "*"
+ "@sigstore/protobuf-specs": "^0.2.0",
+ "tuf-js": "^1.1.7"
}
},
- "@types/istanbul-lib-coverage": {
- "version": "2.0.6",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz",
- "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==",
+ "@sinclair/typebox": {
+ "version": "0.27.8",
+ "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.27.8.tgz",
+ "integrity": "sha512-+Fj43pSMwJs4KRrH/938Uf+uAELIgVBmQzg/q1YG10djyfA3TnrU8N8XzqCh/okZdszqBQTZf96idMfE5lnwTA==",
"dev": true
},
- "@types/istanbul-lib-report": {
- "version": "3.0.3",
- "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz",
- "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==",
+ "@sindresorhus/merge-streams": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz",
+ "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==",
+ "dev": true
+ },
+ "@sinonjs/commons": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-2.0.0.tgz",
+ "integrity": "sha512-uLa0j859mMrg2slwQYdO/AkrOfmH+X6LTVmNTS9CqexuE2IvVORIkSpJLqePAbEnKJ77aMmCwr1NUZ57120Xcg==",
"dev": true,
"requires": {
- "@types/istanbul-lib-coverage": "*"
+ "type-detect": "4.0.8"
}
},
- "@types/istanbul-reports": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz",
- "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==",
+ "@sinonjs/fake-timers": {
+ "version": "10.3.0",
+ "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-10.3.0.tgz",
+ "integrity": "sha512-V4BG07kuYSUkTCSBHG8G8TNhM+F19jXFWnQtzj+we8DrkpSBCee9Z3Ms8yiGer/dlmhe35/Xdgyo3/0rQKg7YA==",
"dev": true,
"requires": {
- "@types/istanbul-lib-report": "*"
+ "@sinonjs/commons": "^3.0.0"
+ },
+ "dependencies": {
+ "@sinonjs/commons": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz",
+ "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==",
+ "dev": true,
+ "requires": {
+ "type-detect": "4.0.8"
+ }
+ }
}
},
- "@types/jquery": {
- "version": "3.5.30",
- "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.30.tgz",
- "integrity": "sha512-nbWKkkyb919DOUxjmRVk8vwtDb0/k8FKncmUKFi+NY+QXqWltooxTrswvz4LspQwxvLdvzBN1TImr6cw3aQx2A==",
+ "@sinonjs/samsam": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/@sinonjs/samsam/-/samsam-8.0.0.tgz",
+ "integrity": "sha512-Bp8KUVlLp8ibJZrnvq2foVhP0IVX2CIprMJPK0vqGqgrDa0OHVKeZyBykqskkrdxV6yKBPmGasO8LVjAKR3Gew==",
"dev": true,
"requires": {
- "@types/sizzle": "*"
+ "@sinonjs/commons": "^2.0.0",
+ "lodash.get": "^4.4.2",
+ "type-detect": "^4.0.8"
}
},
- "@types/json-schema": {
- "version": "7.0.15",
- "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz",
- "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
- "dev": true
- },
- "@types/json5": {
- "version": "0.0.29",
- "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
- "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==",
+ "@sinonjs/text-encoding": {
+ "version": "0.7.2",
+ "resolved": "https://registry.npmjs.org/@sinonjs/text-encoding/-/text-encoding-0.7.2.tgz",
+ "integrity": "sha512-sXXKG+uL9IrKqViTtao2Ws6dy0znu9sOaP1di/jKGW1M6VssO8vlpXCQcpZ+jisQ1tTFAC5Jo/EOzFbggBagFQ==",
"dev": true
},
- "@types/keygrip": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.6.tgz",
- "integrity": "sha512-lZuNAY9xeJt7Bx4t4dx0rYCDqGPW8RXhQZK1td7d4H6E9zYbLoOtjBvfwdTKpsyxQI/2jv+armjX/RW+ZNpXOQ=="
- },
- "@types/koa": {
- "version": "2.14.0",
- "resolved": "https://registry.npmjs.org/@types/koa/-/koa-2.14.0.tgz",
- "integrity": "sha512-DTDUyznHGNHAl+wd1n0z1jxNajduyTh8R53xoewuerdBzGo6Ogj6F2299BFtrexJw4NtgjsI5SMPCmV9gZwGXA==",
+ "@smithy/abort-controller": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/abort-controller/-/abort-controller-2.1.2.tgz",
+ "integrity": "sha512-iwUxrFm/ZFCXhzhtZ6JnoJzAsqUrVfBAZUTQj8ypXGtIjwXZpKqmgYiuqrDERiydDI5gesqvsC4Rqe57GGhbVg==",
+ "dev": true,
"requires": {
- "@types/accepts": "*",
- "@types/content-disposition": "*",
- "@types/cookies": "*",
- "@types/http-assert": "*",
- "@types/http-errors": "*",
- "@types/keygrip": "*",
- "@types/koa-compose": "*",
- "@types/node": "*"
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@types/koa__router": {
- "version": "12.0.3",
- "resolved": "https://registry.npmjs.org/@types/koa__router/-/koa__router-12.0.3.tgz",
- "integrity": "sha512-5YUJVv6NwM1z7m6FuYpKfNLTZ932Z6EF6xy2BbtpJSyn13DKNQEkXVffFVSnJHxvwwWh2SAeumpjAYUELqgjyw==",
+ "@smithy/config-resolver": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/config-resolver/-/config-resolver-2.1.2.tgz",
+ "integrity": "sha512-ZDMY63xJVsJl7ei/yIMv9nx8OiEOulwNnQOUDGpIvzoBrcbvYwiMjIMe5mP5J4fUmttKkpiTKwta/7IUriAn9w==",
+ "dev": true,
+ "optional": true,
"requires": {
- "@types/koa": "*"
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-config-provider": "^2.2.1",
+ "@smithy/util-middleware": "^2.1.2",
+ "tslib": "^2.5.0"
}
},
- "@types/koa-compose": {
- "version": "3.2.8",
- "resolved": "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.8.tgz",
- "integrity": "sha512-4Olc63RY+MKvxMwVknCUDhRQX1pFQoBZ/lXcRLP69PQkEpze/0cr8LNqJQe5NFb/b19DWi2a5bTi2VAlQzhJuA==",
+ "@smithy/core": {
+ "version": "1.3.3",
+ "resolved": "https://registry.npmjs.org/@smithy/core/-/core-1.3.3.tgz",
+ "integrity": "sha512-8cT/swERvU1EUMuJF914+psSeVy4+NcNhbRe1WEKN1yIMPE5+Tq5EaPq1HWjKCodcdBIyU9ViTjd62XnebXMHA==",
+ "dev": true,
+ "optional": true,
"requires": {
- "@types/koa": "*"
+ "@smithy/middleware-endpoint": "^2.4.2",
+ "@smithy/middleware-retry": "^2.1.2",
+ "@smithy/middleware-serde": "^2.1.2",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-middleware": "^2.1.2",
+ "tslib": "^2.5.0"
}
},
- "@types/lodash": {
- "version": "4.14.199",
- "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.199.tgz",
- "integrity": "sha512-Vrjz5N5Ia4SEzWWgIVwnHNEnb1UE1XMkvY5DGXrAeOGE9imk0hgTHh5GyDjLDJi9OTCn9oo9dXH1uToK1VRfrg==",
- "dev": true
- },
- "@types/long": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz",
- "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==",
- "dev": true
- },
- "@types/lru-cache": {
- "version": "7.10.9",
- "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-7.10.9.tgz",
- "integrity": "sha512-wrwgkdJ0xr8AbzKhVaRI8SXZN9saapPwwLoydBEr4HqMZET1LUTi1gdoaj82XmRJ9atqN7MtB0aja29iiK+7ag==",
+ "@smithy/credential-provider-imds": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/@smithy/credential-provider-imds/-/credential-provider-imds-2.2.2.tgz",
+ "integrity": "sha512-a2xpqWzhzcYwImGbFox5qJLf6i5HKdVeOVj7d6kVFElmbS2QW2T4HmefRc5z1huVArk9bh5Rk1NiFp9YBCXU3g==",
"dev": true,
+ "optional": true,
"requires": {
- "lru-cache": "*"
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/property-provider": "^2.1.2",
+ "@smithy/types": "^2.10.0",
+ "@smithy/url-parser": "^2.1.2",
+ "tslib": "^2.5.0"
}
},
- "@types/memcached": {
- "version": "2.2.10",
- "resolved": "https://registry.npmjs.org/@types/memcached/-/memcached-2.2.10.tgz",
- "integrity": "sha512-AM9smvZN55Gzs2wRrqeMHVP7KE8KWgCJO/XL5yCly2xF6EKa4YlbpK+cLSAH4NG/Ah64HrlegmGqW8kYws7Vxg==",
+ "@smithy/eventstream-codec": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/eventstream-codec/-/eventstream-codec-2.1.2.tgz",
+ "integrity": "sha512-2PHrVRixITHSOj3bxfZmY93apGf8/DFiyhRh9W0ukfi07cvlhlRonZ0fjgcqryJjUZ5vYHqqmfIE/Qe1HM9mlw==",
+ "dev": true,
+ "optional": true,
"requires": {
- "@types/node": "*"
+ "@aws-crypto/crc32": "3.0.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-hex-encoding": "^2.1.1",
+ "tslib": "^2.5.0"
+ },
+ "dependencies": {
+ "@aws-crypto/crc32": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/crc32/-/crc32-3.0.0.tgz",
+ "integrity": "sha512-IzSgsrxUcsrejQbPVilIKy16kAT52EwB6zSaI+M3xxIhKh5+aldEyvI+z6erM7TCLB2BJsFrtHjp6/4/sr+3dA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-crypto/util": "^3.0.0",
+ "@aws-sdk/types": "^3.222.0",
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-crypto/util": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/@aws-crypto/util/-/util-3.0.0.tgz",
+ "integrity": "sha512-2OJlpeJpCR48CC8r+uKVChzs9Iungj9wkZrl8Z041DWEWvyIHILYKCPNzJghKsivj+S3mLo6BVc7mBNzdxA46w==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@aws-sdk/types": "^3.222.0",
+ "@aws-sdk/util-utf8-browser": "^3.0.0",
+ "tslib": "^1.11.1"
+ },
+ "dependencies": {
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true,
+ "optional": true
+ }
+ }
+ },
+ "@aws-sdk/types": {
+ "version": "3.521.0",
+ "resolved": "https://registry.npmjs.org/@aws-sdk/types/-/types-3.521.0.tgz",
+ "integrity": "sha512-H9I3Lut0F9d+kTibrhnTRqDRzhxf/vrDu12FUdTXVZEvVAQ7w9yrVHAZx8j2e8GWegetsQsNitO3KMrj4dA4pw==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
+ }
}
},
- "@types/mime": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz",
- "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w=="
- },
- "@types/minimatch": {
- "version": "3.0.5",
- "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
- "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==",
- "dev": true
- },
- "@types/minimist": {
- "version": "1.2.5",
- "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz",
- "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==",
- "dev": true
- },
- "@types/mocha": {
- "version": "7.0.2",
- "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz",
- "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==",
- "dev": true
- },
- "@types/mongodb": {
- "version": "3.6.20",
- "resolved": "https://registry.npmjs.org/@types/mongodb/-/mongodb-3.6.20.tgz",
- "integrity": "sha512-WcdpPJCakFzcWWD9juKoZbRtQxKIMYF/JIAM4JrNHrMcnJL6/a2NWjXxW7fo9hxboxxkg+icff8d7+WIEvKgYQ==",
+ "@smithy/fetch-http-handler": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/@smithy/fetch-http-handler/-/fetch-http-handler-2.4.2.tgz",
+ "integrity": "sha512-sIGMVwa/8h6eqNjarI3F07gvML3mMXcqBe+BINNLuKsVKXMNBN6wRzeZbbx7lfiJDEHAP28qRns8flHEoBB7zw==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/bson": "*",
- "@types/node": "*"
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/querystring-builder": "^2.1.2",
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-base64": "^2.1.1",
+ "tslib": "^2.5.0"
}
},
- "@types/mysql": {
- "version": "2.15.22",
- "resolved": "https://registry.npmjs.org/@types/mysql/-/mysql-2.15.22.tgz",
- "integrity": "sha512-wK1pzsJVVAjYCSZWQoWHziQZbNggXFDUEIGf54g4ZM/ERuP86uGdWeKZWMYlqTPMZfHJJvLPyogXGvCOg87yLQ==",
+ "@smithy/hash-node": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/hash-node/-/hash-node-2.1.2.tgz",
+ "integrity": "sha512-3Sgn4s0g4xud1M/j6hQwYCkz04lVJ24wvCAx4xI26frr3Ao6v0o2VZkBpUySTeQbMUBp2DhuzJ0fV1zybzkckw==",
+ "dev": true,
+ "optional": true,
"requires": {
- "@types/node": "*"
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-buffer-from": "^2.1.1",
+ "@smithy/util-utf8": "^2.1.1",
+ "tslib": "^2.5.0"
}
},
- "@types/node": {
- "version": "18.6.5",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-18.6.5.tgz",
- "integrity": "sha512-Xjt5ZGUa5WusGZJ4WJPbOT8QOqp6nDynVFRKcUt32bOgvXEoc6o085WNkYTMO7ifAj2isEfQQ2cseE+wT6jsRw=="
- },
- "@types/normalize-package-data": {
- "version": "2.4.4",
- "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz",
- "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==",
- "dev": true
- },
- "@types/parse-json": {
- "version": "4.0.2",
- "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz",
- "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==",
- "dev": true
- },
- "@types/parse5": {
- "version": "6.0.3",
- "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz",
- "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==",
- "dev": true
- },
- "@types/pg": {
- "version": "8.6.1",
- "resolved": "https://registry.npmjs.org/@types/pg/-/pg-8.6.1.tgz",
- "integrity": "sha512-1Kc4oAGzAl7uqUStZCDvaLFqZrW9qWSjXOmBfdgyBP5La7Us6Mg4GBvRlSoaZMhQF/zSj1C8CtKMBkoiT8eL8w==",
+ "@smithy/invalid-dependency": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/invalid-dependency/-/invalid-dependency-2.1.2.tgz",
+ "integrity": "sha512-qdgKhkFYxDJnKecx2ANwz3JRkXjm0qDgEnAs5BIfb2z/XqA2l7s9BTH7GTC/RR4E8h6EDCeb5rM2rnARxviqIg==",
+ "dev": true,
+ "optional": true,
"requires": {
- "@types/node": "*",
- "pg-protocol": "*",
- "pg-types": "^2.2.0"
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@types/pg-pool": {
- "version": "2.0.4",
- "resolved": "https://registry.npmjs.org/@types/pg-pool/-/pg-pool-2.0.4.tgz",
- "integrity": "sha512-qZAvkv1K3QbmHHFYSNRYPkRjOWRLBYrL4B9c+wG0GSVGBw0NtJwPcgx/DSddeDJvRGMHCEQ4VMEVfuJ/0gZ3XQ==",
+ "@smithy/is-array-buffer": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@smithy/is-array-buffer/-/is-array-buffer-2.1.1.tgz",
+ "integrity": "sha512-xozSQrcUinPpNPNPds4S7z/FakDTh1MZWtRP/2vQtYB/u3HYrX2UXuZs+VhaKBd6Vc7g2XPr2ZtwGBNDN6fNKQ==",
+ "dev": true,
+ "optional": true,
"requires": {
- "@types/pg": "*"
+ "tslib": "^2.5.0"
}
},
- "@types/prop-types": {
- "version": "15.7.11",
- "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz",
- "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==",
- "dev": true
- },
- "@types/qs": {
- "version": "6.9.11",
- "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.11.tgz",
- "integrity": "sha512-oGk0gmhnEJK4Yyk+oI7EfXsLayXatCWPHary1MtcmbAifkobT9cM9yutG/hZKIseOU0MqbIwQ/u2nn/Gb+ltuQ=="
- },
- "@types/range-parser": {
- "version": "1.2.7",
- "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz",
- "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ=="
- },
- "@types/react": {
- "version": "17.0.67",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.67.tgz",
- "integrity": "sha512-zE76EIJ0Y58Oy9yDX/9csb/NuKjt0Eq2YgWb/8Wxo91YmuLzzbyiRoaqJE9h8iDlsT7n35GdpoLomHlaB1kFbg==",
+ "@smithy/middleware-content-length": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-content-length/-/middleware-content-length-2.1.2.tgz",
+ "integrity": "sha512-XEWtul1tHP31EtUIobEyN499paUIbnCTRtjY+ciDCEXW81lZmpjrDG3aL0FxJDPnvatVQuMV1V5eg6MCqTFaLQ==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/prop-types": "*",
- "@types/scheduler": "*",
- "csstype": "^3.0.2"
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@types/react-addons-test-utils": {
- "version": "0.14.26",
- "resolved": "https://registry.npmjs.org/@types/react-addons-test-utils/-/react-addons-test-utils-0.14.26.tgz",
- "integrity": "sha512-zrnMrqGCfIniXyipb9HFPgdWf9TO0llA7n5QduJsx0IDB0pPK8p3/4rL4SfOLgsmtbb2X2XWCW9kBn/2k+52fg==",
+ "@smithy/middleware-endpoint": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-endpoint/-/middleware-endpoint-2.4.2.tgz",
+ "integrity": "sha512-72qbmVwaWcLOd/OT52fszrrlXywPwciwpsRiIk/dIvpcwkpGE9qrYZ2bt/SYcA/ma8Rz9Ni2AbBuSXLDYISS+A==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/react": "*"
+ "@smithy/middleware-serde": "^2.1.2",
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/shared-ini-file-loader": "^2.3.2",
+ "@smithy/types": "^2.10.0",
+ "@smithy/url-parser": "^2.1.2",
+ "@smithy/util-middleware": "^2.1.2",
+ "tslib": "^2.5.0"
}
},
- "@types/react-dom": {
- "version": "18.0.2",
- "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.2.tgz",
- "integrity": "sha512-UxeS+Wtj5bvLRREz9tIgsK4ntCuLDo0EcAcACgw3E+9wE8ePDr9uQpq53MfcyxyIS55xJ+0B6mDS8c4qkkHLBg==",
+ "@smithy/middleware-retry": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-retry/-/middleware-retry-2.1.2.tgz",
+ "integrity": "sha512-tlvSK+v9bPHHb0dLWvEaFW2Iz0IeA57ISvSaso36I33u8F8wYqo5FCvenH7TgMVBx57jyJBXOmYCZa9n5gdJIg==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/react": "*"
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/service-error-classification": "^2.1.2",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-middleware": "^2.1.2",
+ "@smithy/util-retry": "^2.1.2",
+ "tslib": "^2.5.0",
+ "uuid": "^8.3.2"
}
},
- "@types/readable-stream": {
- "version": "4.0.12",
- "resolved": "https://registry.npmjs.org/@types/readable-stream/-/readable-stream-4.0.12.tgz",
- "integrity": "sha512-SCaw+bs9o/HCX1eTa3glTcQgW1oPxof49mqP2Qikik3xzTimNv2M4p43BQHhBuf7CwOJdQW0s1SrWU3MZxz6lw==",
+ "@smithy/middleware-serde": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-serde/-/middleware-serde-2.1.2.tgz",
+ "integrity": "sha512-XNU6aVIhlSbjuo2XsfZ7rd4HhjTXDlNWxAmhlBfViTW1TNK02CeWdeEntp5XtQKYD//pyTIbYi35EQvIidAkOw==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/node": "*",
- "safe-buffer": "~5.1.1"
- },
- "dependencies": {
- "safe-buffer": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
- "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true
- }
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@types/redis": {
- "version": "2.8.32",
- "resolved": "https://registry.npmjs.org/@types/redis/-/redis-2.8.32.tgz",
- "integrity": "sha512-7jkMKxcGq9p242exlbsVzuJb57KqHRhNl4dHoQu2Y5v9bCAbtIXXH0R3HleSQW4CTOqpHIYUW3t6tpUj4BVQ+w==",
+ "@smithy/middleware-stack": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/middleware-stack/-/middleware-stack-2.1.2.tgz",
+ "integrity": "sha512-EPGaHGd4XmZcaRYjbhyqiqN/Q/ESxXu5e5TK24CTZUe99y8/XCxmiX8VLMM4H0DI7K3yfElR0wPAAvceoSkTgw==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/node": "*"
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@types/resolve": {
- "version": "1.20.2",
- "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz",
- "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==",
- "dev": true
- },
- "@types/restify": {
- "version": "4.3.10",
- "resolved": "https://registry.npmjs.org/@types/restify/-/restify-4.3.10.tgz",
- "integrity": "sha512-lSt9uvWwdYrGgRCqKyh5DyC008xN8hij5RWzOPlPaTiec2smfpd7s034BASPDMIG4WhRfk0y4oLFoAi/AzVN9g==",
+ "@smithy/node-config-provider": {
+ "version": "2.2.2",
+ "resolved": "https://registry.npmjs.org/@smithy/node-config-provider/-/node-config-provider-2.2.2.tgz",
+ "integrity": "sha512-QXvpqHSijAm13ZsVkUo92b085UzDvYP1LblWTb3uWi9WilhDvYnVyPLXaryLhOWZ2YvdhK2170T3ZBqtg+quIQ==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/bunyan": "*",
- "@types/node": "*"
+ "@smithy/property-provider": "^2.1.2",
+ "@smithy/shared-ini-file-loader": "^2.3.2",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@types/scheduler": {
- "version": "0.16.8",
- "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz",
- "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==",
- "dev": true
- },
- "@types/semver": {
- "version": "7.5.3",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.3.tgz",
- "integrity": "sha512-OxepLK9EuNEIPxWNME+C6WwbRAOOI2o2BaQEGzz5Lu2e4Z5eDnEo+/aVEDMIXywoJitJ7xWd641wrGLZdtwRyw==",
- "dev": true
- },
- "@types/send": {
- "version": "0.17.4",
- "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz",
- "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==",
+ "@smithy/node-http-handler": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/@smithy/node-http-handler/-/node-http-handler-2.4.0.tgz",
+ "integrity": "sha512-Mf2f7MMy31W8LisJ9O+7J5cKiNwBwBBLU6biQ7/sFSFdhuOxPN7hOPoZ8vlaFjvrpfOUJw9YOpjGyNTKuvomOQ==",
+ "dev": true,
"requires": {
- "@types/mime": "^1",
- "@types/node": "*"
+ "@smithy/abort-controller": "^2.1.2",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/querystring-builder": "^2.1.2",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@types/serve-static": {
- "version": "1.15.5",
- "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.5.tgz",
- "integrity": "sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==",
+ "@smithy/property-provider": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/property-provider/-/property-provider-2.1.2.tgz",
+ "integrity": "sha512-yaXCVFKzxbSXqOoyA7AdAgXhwdjiLeui7n2P6XLjBCz/GZFdLUJgSY6KL1PevaxT4REMwUSs/bSHAe/0jdzEHw==",
+ "dev": true,
+ "optional": true,
"requires": {
- "@types/http-errors": "*",
- "@types/mime": "*",
- "@types/node": "*"
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@types/shimmer": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/@types/shimmer/-/shimmer-1.0.3.tgz",
- "integrity": "sha512-F/IjUGnV6pIN7R4ZV4npHJVoNtaLZWvb+2/9gctxjb99wkpI7Ozg8VPogwDiTRyjLwZXAYxjvdg1KS8LTHKdDA=="
- },
- "@types/sinon": {
- "version": "10.0.18",
- "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.18.tgz",
- "integrity": "sha512-OpQC9ug8BcnNxue2WF5aTruMaDRFn6NyfaE4DmAKOlQMn54b7CnCvDFV3wj5fk/HbSSTYmOYs2bTb5ShANjyQg==",
+ "@smithy/protocol-http": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/@smithy/protocol-http/-/protocol-http-3.2.0.tgz",
+ "integrity": "sha512-VRp0YITYIQum+rX4zeZ3cW1wl9r90IQzQN+VLS1NxdSMt6NLsJiJqR9czTxlaeWNrLHsFAETmjmdrS48Ug1liA==",
"dev": true,
"requires": {
- "@types/sinonjs__fake-timers": "*"
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@types/sinonjs__fake-timers": {
- "version": "8.1.5",
- "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz",
- "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==",
- "dev": true
- },
- "@types/sizzle": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.8.tgz",
- "integrity": "sha512-0vWLNK2D5MT9dg0iOo8GlKguPAU02QjmZitPEsXRuJXU/OGIOt9vT9Fc26wtYuavLxtO45v9PGleoL9Z0k1LHg==",
- "dev": true
- },
- "@types/stack-utils": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz",
- "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==",
- "dev": true
+ "@smithy/querystring-builder": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-builder/-/querystring-builder-2.1.2.tgz",
+ "integrity": "sha512-wk6QpuvBBLJF5w8aADsZOtxaHY9cF5MZe1Ry3hSqqBxARdUrMoXi/jukUz5W0ftXGlbA398IN8dIIUj3WXqJXg==",
+ "dev": true,
+ "requires": {
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-uri-escape": "^2.1.1",
+ "tslib": "^2.5.0"
+ }
},
- "@types/tedious": {
- "version": "4.0.14",
- "resolved": "https://registry.npmjs.org/@types/tedious/-/tedious-4.0.14.tgz",
- "integrity": "sha512-KHPsfX/FoVbUGbyYvk1q9MMQHLPeRZhRJZdO45Q4YjvFkv4hMNghCWTvy7rdKessBsmtz4euWCWAB6/tVpI1Iw==",
+ "@smithy/querystring-parser": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/querystring-parser/-/querystring-parser-2.1.2.tgz",
+ "integrity": "sha512-z1yL5Iiagm/UxVy1tcuTFZdfOBK/QtYeK6wfClAJ7cOY7kIaYR6jn1cVXXJmhAQSh1b2ljP4xiZN4Ybj7Tbs5w==",
+ "dev": true,
+ "optional": true,
"requires": {
- "@types/node": "*"
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@types/triple-beam": {
- "version": "1.3.5",
- "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz",
- "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw=="
- },
- "@types/uuid": {
- "version": "9.0.1",
- "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.1.tgz",
- "integrity": "sha512-rFT3ak0/2trgvp4yYZo5iKFEPsET7vKydKF+VRCxlQ9bpheehyAJH89dAkaLEq/j/RZXJIqcgsmPJKUP1Z28HA==",
- "dev": true
- },
- "@types/webidl-conversions": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz",
- "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==",
- "dev": true
- },
- "@types/webpack-env": {
- "version": "1.16.3",
- "resolved": "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.16.3.tgz",
- "integrity": "sha512-9gtOPPkfyNoEqCQgx4qJKkuNm/x0R2hKR7fdl7zvTJyHnIisuE/LfvXOsYWL0o3qq6uiBnKZNNNzi3l0y/X+xw==",
- "dev": true
+ "@smithy/service-error-classification": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/service-error-classification/-/service-error-classification-2.1.2.tgz",
+ "integrity": "sha512-R+gL1pAPuWkH6unFridk57wDH5PFY2IlVg2NUjSAjoaIaU+sxqKf/7AOWIcx9Bdn+xY0/4IRQ69urlC+F3I9gg==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@smithy/types": "^2.10.0"
+ }
},
- "@types/whatwg-url": {
- "version": "8.2.2",
- "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz",
- "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==",
+ "@smithy/shared-ini-file-loader": {
+ "version": "2.3.2",
+ "resolved": "https://registry.npmjs.org/@smithy/shared-ini-file-loader/-/shared-ini-file-loader-2.3.2.tgz",
+ "integrity": "sha512-idHGDJB+gBh+aaIjmWj6agmtNWftoyAenErky74hAtKyUaCvfocSBgEJ2pQ6o68svBluvGIj4NGFgJu0198mow==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/node": "*",
- "@types/webidl-conversions": "*"
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@types/ws": {
- "version": "7.4.7",
- "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz",
- "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==",
+ "@smithy/signature-v4": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/signature-v4/-/signature-v4-2.1.2.tgz",
+ "integrity": "sha512-DdPWaNGIbxzyocR3ncH8xlxQgsqteRADEdCPoivgBzwv17UzKy2obtdi2vwNc5lAJ955bGEkkWef9O7kc1Eocg==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/node": "*"
+ "@smithy/eventstream-codec": "^2.1.2",
+ "@smithy/is-array-buffer": "^2.1.1",
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-hex-encoding": "^2.1.1",
+ "@smithy/util-middleware": "^2.1.2",
+ "@smithy/util-uri-escape": "^2.1.1",
+ "@smithy/util-utf8": "^2.1.1",
+ "tslib": "^2.5.0"
}
},
- "@types/yargs": {
- "version": "17.0.32",
- "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz",
- "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==",
+ "@smithy/smithy-client": {
+ "version": "2.4.0",
+ "resolved": "https://registry.npmjs.org/@smithy/smithy-client/-/smithy-client-2.4.0.tgz",
+ "integrity": "sha512-6/jxk0om9l2s9BcgHtrBn+Hd3xcFGDzxfEJ2FvGpZxIz0S7bgvZg1gyR66O1xf1w9WZBH+W7JClhfSn2gETINw==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/yargs-parser": "*"
+ "@smithy/middleware-endpoint": "^2.4.2",
+ "@smithy/middleware-stack": "^2.1.2",
+ "@smithy/protocol-http": "^3.2.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-stream": "^2.1.2",
+ "tslib": "^2.5.0"
}
},
- "@types/yargs-parser": {
- "version": "21.0.3",
- "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz",
- "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==",
- "dev": true
+ "@smithy/types": {
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/@smithy/types/-/types-2.10.0.tgz",
+ "integrity": "sha512-QYXQmpIebS8/jYXgyJjCanKZbI4Rr8tBVGBAIdDhA35f025TVjJNW69FJ0TGiDqt+lIGo037YIswq2t2Y1AYZQ==",
+ "dev": true,
+ "requires": {
+ "tslib": "^2.5.0"
+ }
},
- "@types/yauzl": {
- "version": "2.10.3",
- "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz",
- "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==",
+ "@smithy/url-parser": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/url-parser/-/url-parser-2.1.2.tgz",
+ "integrity": "sha512-KBPi740ciTujUaY+RfQuPABD0QFmgSBN5qNVDCGTryfsbG4jkwC0YnElSzi72m24HegMyxzZDLG4Oh4/97mw2g==",
"dev": true,
"optional": true,
"requires": {
- "@types/node": "*"
+ "@smithy/querystring-parser": "^2.1.2",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@typescript-eslint/eslint-plugin": {
- "version": "5.8.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.8.1.tgz",
- "integrity": "sha512-wTZ5oEKrKj/8/366qTM366zqhIKAp6NCMweoRONtfuC07OAU9nVI2GZZdqQ1qD30WAAtcPdkH+npDwtRFdp4Rw==",
+ "@smithy/util-base64": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@smithy/util-base64/-/util-base64-2.1.1.tgz",
+ "integrity": "sha512-UfHVpY7qfF/MrgndI5PexSKVTxSZIdz9InghTFa49QOvuu9I52zLPLUHXvHpNuMb1iD2vmc6R+zbv/bdMipR/g==",
"dev": true,
+ "optional": true,
"requires": {
- "@typescript-eslint/experimental-utils": "5.8.1",
- "@typescript-eslint/scope-manager": "5.8.1",
- "debug": "^4.3.2",
- "functional-red-black-tree": "^1.0.1",
- "ignore": "^5.1.8",
- "regexpp": "^3.2.0",
- "semver": "^7.3.5",
- "tsutils": "^3.21.0"
+ "@smithy/util-buffer-from": "^2.1.1",
+ "tslib": "^2.5.0"
}
},
- "@typescript-eslint/experimental-utils": {
- "version": "5.8.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.8.1.tgz",
- "integrity": "sha512-fbodVnjIDU4JpeXWRDsG5IfIjYBxEvs8EBO8W1+YVdtrc2B9ppfof5sZhVEDOtgTfFHnYQJDI8+qdqLYO4ceww==",
+ "@smithy/util-body-length-browser": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@smithy/util-body-length-browser/-/util-body-length-browser-2.1.1.tgz",
+ "integrity": "sha512-ekOGBLvs1VS2d1zM2ER4JEeBWAvIOUKeaFch29UjjJsxmZ/f0L3K3x0dEETgh3Q9bkZNHgT+rkdl/J/VUqSRag==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/json-schema": "^7.0.9",
- "@typescript-eslint/scope-manager": "5.8.1",
- "@typescript-eslint/types": "5.8.1",
- "@typescript-eslint/typescript-estree": "5.8.1",
- "eslint-scope": "^5.1.1",
- "eslint-utils": "^3.0.0"
+ "tslib": "^2.5.0"
}
},
- "@typescript-eslint/parser": {
- "version": "5.8.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.8.1.tgz",
- "integrity": "sha512-K1giKHAjHuyB421SoXMXFHHVI4NdNY603uKw92++D3qyxSeYvC10CBJ/GE5Thpo4WTUvu1mmJI2/FFkz38F2Gw==",
+ "@smithy/util-body-length-node": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/@smithy/util-body-length-node/-/util-body-length-node-2.2.1.tgz",
+ "integrity": "sha512-/ggJG+ta3IDtpNVq4ktmEUtOkH1LW64RHB5B0hcr5ZaWBmo96UX2cIOVbjCqqDickTXqBWZ4ZO0APuaPrD7Abg==",
"dev": true,
+ "optional": true,
"requires": {
- "@typescript-eslint/scope-manager": "5.8.1",
- "@typescript-eslint/types": "5.8.1",
- "@typescript-eslint/typescript-estree": "5.8.1",
- "debug": "^4.3.2"
+ "tslib": "^2.5.0"
}
},
- "@typescript-eslint/scope-manager": {
- "version": "5.8.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.8.1.tgz",
- "integrity": "sha512-DGxJkNyYruFH3NIZc3PwrzwOQAg7vvgsHsHCILOLvUpupgkwDZdNq/cXU3BjF4LNrCsVg0qxEyWasys5AiJ85Q==",
+ "@smithy/util-buffer-from": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@smithy/util-buffer-from/-/util-buffer-from-2.1.1.tgz",
+ "integrity": "sha512-clhNjbyfqIv9Md2Mg6FffGVrJxw7bgK7s3Iax36xnfVj6cg0fUG7I4RH0XgXJF8bxi+saY5HR21g2UPKSxVCXg==",
"dev": true,
+ "optional": true,
"requires": {
- "@typescript-eslint/types": "5.8.1",
- "@typescript-eslint/visitor-keys": "5.8.1"
+ "@smithy/is-array-buffer": "^2.1.1",
+ "tslib": "^2.5.0"
}
},
- "@typescript-eslint/types": {
- "version": "5.8.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.8.1.tgz",
- "integrity": "sha512-L/FlWCCgnjKOLefdok90/pqInkomLnAcF9UAzNr+DSqMC3IffzumHTQTrINXhP1gVp9zlHiYYjvozVZDPleLcA==",
- "dev": true
- },
- "@typescript-eslint/typescript-estree": {
- "version": "5.8.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.8.1.tgz",
- "integrity": "sha512-26lQ8l8tTbG7ri7xEcCFT9ijU5Fk+sx/KRRyyzCv7MQ+rZZlqiDPtMKWLC8P7o+dtCnby4c+OlxuX1tp8WfafQ==",
+ "@smithy/util-config-provider": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/@smithy/util-config-provider/-/util-config-provider-2.2.1.tgz",
+ "integrity": "sha512-50VL/tx9oYYcjJn/qKqNy7sCtpD0+s8XEBamIFo4mFFTclKMNp+rsnymD796uybjiIquB7VCB/DeafduL0y2kw==",
"dev": true,
+ "optional": true,
"requires": {
- "@typescript-eslint/types": "5.8.1",
- "@typescript-eslint/visitor-keys": "5.8.1",
- "debug": "^4.3.2",
- "globby": "^11.0.4",
- "is-glob": "^4.0.3",
- "semver": "^7.3.5",
- "tsutils": "^3.21.0"
+ "tslib": "^2.5.0"
}
},
- "@typescript-eslint/visitor-keys": {
- "version": "5.8.1",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.8.1.tgz",
- "integrity": "sha512-SWgiWIwocK6NralrJarPZlWdr0hZnj5GXHIgfdm8hNkyKvpeQuFyLP6YjSIe9kf3YBIfU6OHSZLYkQ+smZwtNg==",
+ "@smithy/util-defaults-mode-browser": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-browser/-/util-defaults-mode-browser-2.1.2.tgz",
+ "integrity": "sha512-YmojdmsE7VbvFGJ/8btn/5etLm1HOQkgVX6nMWlB0yBL/Vb//s3aTebUJ66zj2+LNrBS3B9S+18+LQU72Yj0AQ==",
"dev": true,
+ "optional": true,
"requires": {
- "@typescript-eslint/types": "5.8.1",
- "eslint-visitor-keys": "^3.0.0"
+ "@smithy/property-provider": "^2.1.2",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "bowser": "^2.11.0",
+ "tslib": "^2.5.0"
}
},
- "@web/browser-logs": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/@web/browser-logs/-/browser-logs-0.4.0.tgz",
- "integrity": "sha512-/EBiDAUCJ2DzZhaFxTPRIznEPeafdLbXShIL6aTu7x73x7ZoxSDv7DGuTsh2rWNMUa4+AKli4UORrpyv6QBOiA==",
+ "@smithy/util-defaults-mode-node": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/@smithy/util-defaults-mode-node/-/util-defaults-mode-node-2.2.1.tgz",
+ "integrity": "sha512-kof7M9Q2qP5yaQn8hHJL3KwozyvIfLe+ys7feifSul6gBAAeoraibo/MWqotb/I0fVLMlCMDwn7WXFsGUwnsew==",
"dev": true,
+ "optional": true,
"requires": {
- "errorstacks": "^2.2.0"
+ "@smithy/config-resolver": "^2.1.2",
+ "@smithy/credential-provider-imds": "^2.2.2",
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/property-provider": "^2.1.2",
+ "@smithy/smithy-client": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@web/config-loader": {
- "version": "0.3.1",
- "resolved": "https://registry.npmjs.org/@web/config-loader/-/config-loader-0.3.1.tgz",
- "integrity": "sha512-IYjHXUgSGGNpO3YJQ9foLcazbJlAWDdJGRe9be7aOhon0Nd6Na5JIOJAej7jsMu76fKHr4b4w2LfIdNQ4fJ8pA==",
- "dev": true
+ "@smithy/util-endpoints": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/util-endpoints/-/util-endpoints-1.1.2.tgz",
+ "integrity": "sha512-2/REfdcJ20y9iF+9kSBRBsaoGzjT5dZ3E6/TA45GHJuJAb/vZTj76VLTcrl2iN3fWXiDK1B8RxchaLGbr7RxxA==",
+ "dev": true,
+ "optional": true,
+ "requires": {
+ "@smithy/node-config-provider": "^2.2.2",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
+ }
},
- "@web/dev-server": {
- "version": "0.4.3",
- "resolved": "https://registry.npmjs.org/@web/dev-server/-/dev-server-0.4.3.tgz",
- "integrity": "sha512-vf2ZVjdTj8ExrMSYagyHD+snRue9oRetynxd1p0P7ndEpZDKeNLYsvkJyo0pNU6moBxHmXnYeC5VrAT4E3+lNg==",
+ "@smithy/util-hex-encoding": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@smithy/util-hex-encoding/-/util-hex-encoding-2.1.1.tgz",
+ "integrity": "sha512-3UNdP2pkYUUBGEXzQI9ODTDK+Tcu1BlCyDBaRHwyxhA+8xLP8agEKQq4MGmpjqb4VQAjq9TwlCQX0kP6XDKYLg==",
"dev": true,
+ "optional": true,
"requires": {
- "@babel/code-frame": "^7.12.11",
- "@types/command-line-args": "^5.0.0",
- "@web/config-loader": "^0.3.0",
- "@web/dev-server-core": "^0.7.1",
- "@web/dev-server-rollup": "^0.6.1",
- "camelcase": "^6.2.0",
- "command-line-args": "^5.1.1",
- "command-line-usage": "^7.0.1",
- "debounce": "^1.2.0",
- "deepmerge": "^4.2.2",
- "ip": "^2.0.1",
- "nanocolors": "^0.2.1",
- "open": "^8.0.2",
- "portfinder": "^1.0.32"
- },
- "dependencies": {
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
- "dev": true
- }
+ "tslib": "^2.5.0"
}
},
- "@web/dev-server-core": {
- "version": "0.7.1",
- "resolved": "https://registry.npmjs.org/@web/dev-server-core/-/dev-server-core-0.7.1.tgz",
- "integrity": "sha512-alHd2j0f4e1ekqYDR8lWScrzR7D5gfsUZq3BP3De9bkFWM3AELINCmqqlVKmCtlkAdEc9VyQvNiEqrxraOdc2A==",
+ "@smithy/util-middleware": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/util-middleware/-/util-middleware-2.1.2.tgz",
+ "integrity": "sha512-lvSOnwQ7iAajtWb1nAyy0CkOIn8d+jGykQOtt2NXDsPzOTfejZM/Uph+O/TmVgWoXdcGuw5peUMG2f5xEIl6UQ==",
"dev": true,
+ "optional": true,
"requires": {
- "@types/koa": "^2.11.6",
- "@types/ws": "^7.4.0",
- "@web/parse5-utils": "^2.1.0",
- "chokidar": "^3.4.3",
- "clone": "^2.1.2",
- "es-module-lexer": "^1.0.0",
- "get-stream": "^6.0.0",
- "is-stream": "^2.0.0",
- "isbinaryfile": "^5.0.0",
- "koa": "^2.13.0",
- "koa-etag": "^4.0.0",
- "koa-send": "^5.0.1",
- "koa-static": "^5.0.0",
- "lru-cache": "^8.0.4",
- "mime-types": "^2.1.27",
- "parse5": "^6.0.1",
- "picomatch": "^2.2.2",
- "ws": "^7.4.2"
- },
- "dependencies": {
- "clone": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
- "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==",
- "dev": true
- },
- "isbinaryfile": {
- "version": "5.0.2",
- "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.2.tgz",
- "integrity": "sha512-GvcjojwonMjWbTkfMpnVHVqXW/wKMYDfEpY94/8zy8HFMOqb/VL6oeONq9v87q4ttVlaTLnGXnJD4B5B1OTGIg==",
- "dev": true
- },
- "lru-cache": {
- "version": "8.0.5",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-8.0.5.tgz",
- "integrity": "sha512-MhWWlVnuab1RG5/zMRRcVGXZLCXrZTgfwMikgzCegsPnG62yDQo5JnqKkrK4jO5iKqDAZGItAqN5CtKBCBWRUA==",
- "dev": true
- },
- "parse5": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
- "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
- "dev": true
- },
- "ws": {
- "version": "7.5.9",
- "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz",
- "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==",
- "dev": true,
- "requires": {}
- }
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@web/dev-server-esbuild": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@web/dev-server-esbuild/-/dev-server-esbuild-1.0.2.tgz",
- "integrity": "sha512-ak5mKt7L0H/Fa470Ku7p9A1eI32DNyFGM83jDkJviBO8r3lM00O5hVFW1K+UIYNC5EyanLyPxTqgtIuQEyMYcQ==",
+ "@smithy/util-retry": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/util-retry/-/util-retry-2.1.2.tgz",
+ "integrity": "sha512-pqifOgRqwLfRu+ks3awEKKqPeYxrHLwo4Yu2EarGzeoarTd1LVEyyf5qLE6M7IiCsxnXRhn9FoWIdZOC+oC/VQ==",
"dev": true,
+ "optional": true,
"requires": {
- "@mdn/browser-compat-data": "^4.0.0",
- "@web/dev-server-core": "^0.7.0",
- "esbuild": "^0.19.11",
- "get-tsconfig": "^4.7.2",
- "parse5": "^6.0.1",
- "ua-parser-js": "^1.0.33"
- },
- "dependencies": {
- "parse5": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
- "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
- "dev": true
- },
- "ua-parser-js": {
- "version": "1.0.37",
- "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.37.tgz",
- "integrity": "sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==",
- "dev": true
- }
+ "@smithy/service-error-classification": "^2.1.2",
+ "@smithy/types": "^2.10.0",
+ "tslib": "^2.5.0"
}
},
- "@web/dev-server-rollup": {
- "version": "0.6.1",
- "resolved": "https://registry.npmjs.org/@web/dev-server-rollup/-/dev-server-rollup-0.6.1.tgz",
- "integrity": "sha512-vhtsQ8qu1pBHailOBOYJwZnYDc1Lmx6ZAd2j+y5PD2ck0R1LmVsZ7dZK8hDCpkvpvlu2ndURjL9tbzdcsBRJmg==",
+ "@smithy/util-stream": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@smithy/util-stream/-/util-stream-2.1.2.tgz",
+ "integrity": "sha512-AbGjvoSok7YeUKv9WRVRSChQfsufLR54YCAabTbaABRdIucywRQs29em0uAP6r4RLj+4aFZStWGYpFgT0P8UlQ==",
"dev": true,
+ "optional": true,
"requires": {
- "@rollup/plugin-node-resolve": "^15.0.1",
- "@web/dev-server-core": "^0.7.0",
- "nanocolors": "^0.2.1",
- "parse5": "^6.0.1",
- "rollup": "^4.4.0",
- "whatwg-url": "^11.0.0"
- },
- "dependencies": {
- "parse5": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
- "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
- "dev": true
- }
+ "@smithy/fetch-http-handler": "^2.4.2",
+ "@smithy/node-http-handler": "^2.4.0",
+ "@smithy/types": "^2.10.0",
+ "@smithy/util-base64": "^2.1.1",
+ "@smithy/util-buffer-from": "^2.1.1",
+ "@smithy/util-hex-encoding": "^2.1.1",
+ "@smithy/util-utf8": "^2.1.1",
+ "tslib": "^2.5.0"
}
},
- "@web/parse5-utils": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/@web/parse5-utils/-/parse5-utils-2.1.0.tgz",
- "integrity": "sha512-GzfK5disEJ6wEjoPwx8AVNwUe9gYIiwc+x//QYxYDAFKUp4Xb1OJAGLc2l2gVrSQmtPGLKrTRcW90Hv4pEq1qA==",
+ "@smithy/util-uri-escape": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@smithy/util-uri-escape/-/util-uri-escape-2.1.1.tgz",
+ "integrity": "sha512-saVzI1h6iRBUVSqtnlOnc9ssU09ypo7n+shdQ8hBTZno/9rZ3AuRYvoHInV57VF7Qn7B+pFJG7qTzFiHxWlWBw==",
"dev": true,
"requires": {
- "@types/parse5": "^6.0.1",
- "parse5": "^6.0.1"
- },
- "dependencies": {
- "parse5": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
- "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
- "dev": true
- }
+ "tslib": "^2.5.0"
}
},
- "@web/test-runner": {
- "version": "0.18.1",
- "resolved": "https://registry.npmjs.org/@web/test-runner/-/test-runner-0.18.1.tgz",
- "integrity": "sha512-jB/9vrpGVtcLY6/7sPpKpSheQ3wWY9P5aQcz2SK2gMHTq3gNpa51NAyec0Al7EFpHvJ1wKYTGRLB2gPyEoJeDg==",
+ "@smithy/util-utf8": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@smithy/util-utf8/-/util-utf8-2.1.1.tgz",
+ "integrity": "sha512-BqTpzYEcUMDwAKr7/mVRUtHDhs6ZoXDi9NypMvMfOr/+u1NW7JgqodPDECiiLboEm6bobcPcECxzjtQh865e9A==",
"dev": true,
+ "optional": true,
"requires": {
- "@web/browser-logs": "^0.4.0",
- "@web/config-loader": "^0.3.0",
- "@web/dev-server": "^0.4.0",
- "@web/test-runner-chrome": "^0.16.0",
- "@web/test-runner-commands": "^0.9.0",
- "@web/test-runner-core": "^0.13.0",
- "@web/test-runner-mocha": "^0.9.0",
- "camelcase": "^6.2.0",
- "command-line-args": "^5.1.1",
- "command-line-usage": "^7.0.1",
- "convert-source-map": "^2.0.0",
- "diff": "^5.0.0",
- "globby": "^11.0.1",
- "nanocolors": "^0.2.1",
- "portfinder": "^1.0.32",
- "source-map": "^0.7.3"
- },
- "dependencies": {
- "camelcase": {
- "version": "6.3.0",
- "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
- "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
- "dev": true
- },
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
- },
- "diff": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
- "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
- "dev": true
- },
- "source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true
- }
+ "@smithy/util-buffer-from": "^2.1.1",
+ "tslib": "^2.5.0"
}
},
- "@web/test-runner-chrome": {
- "version": "0.16.0",
- "resolved": "https://registry.npmjs.org/@web/test-runner-chrome/-/test-runner-chrome-0.16.0.tgz",
- "integrity": "sha512-Edc6Y49aVB6k18S5IOj9OCX3rEf8F3jptIu0p95+imqxmcutFEh1GNmlAk2bQGnXS0U6uVY7Xbf61fiaXUQqhg==",
+ "@socket.io/component-emitter": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/@socket.io/component-emitter/-/component-emitter-3.1.0.tgz",
+ "integrity": "sha512-+9jVqKhRSpsc591z5vX+X5Yyw+he/HCB4iQ/RYxw35CEPaY1gnsNE43nf9n9AaYjAQrTiI/mOwKUKdUs9vf7Xg==",
+ "dev": true
+ },
+ "@teppeis/multimaps": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/@teppeis/multimaps/-/multimaps-2.0.0.tgz",
+ "integrity": "sha512-TL1adzq1HdxUf9WYduLcQ/DNGYiz71U31QRgbnr0Ef1cPyOUOsBojxHVWpFeOSUucB6Lrs0LxFRA14ntgtkc9w==",
+ "dev": true
+ },
+ "@tootallnate/once": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz",
+ "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==",
+ "dev": true
+ },
+ "@tootallnate/quickjs-emscripten": {
+ "version": "0.23.0",
+ "resolved": "https://registry.npmjs.org/@tootallnate/quickjs-emscripten/-/quickjs-emscripten-0.23.0.tgz",
+ "integrity": "sha512-C5Mc6rdnsaJDjO3UpGW/CQTHtCKaYlScZTly4JIu97Jxo/odCiH0ITnDXSJPTOrEKk/ycSZ0AOgTmkDtkOsvIA==",
+ "dev": true
+ },
+ "@tsconfig/node10": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.11.tgz",
+ "integrity": "sha512-DcRjDCujK/kCk/cUe8Xz8ZSpm8mS3mNNpta+jGCA6USEDfktlNvm1+IuZ9eTcDbNk41BHwpHHeW+N1lKCz4zOw==",
+ "dev": true
+ },
+ "@tsconfig/node12": {
+ "version": "1.0.11",
+ "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz",
+ "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==",
+ "dev": true
+ },
+ "@tsconfig/node14": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz",
+ "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==",
+ "dev": true
+ },
+ "@tsconfig/node16": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz",
+ "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==",
+ "dev": true
+ },
+ "@tufjs/canonical-json": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz",
+ "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==",
+ "dev": true
+ },
+ "@tufjs/models": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz",
+ "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==",
"dev": true,
"requires": {
- "@web/test-runner-core": "^0.13.0",
- "@web/test-runner-coverage-v8": "^0.8.0",
- "async-mutex": "0.4.0",
- "chrome-launcher": "^0.15.0",
- "puppeteer-core": "^22.0.0"
+ "@tufjs/canonical-json": "1.0.0",
+ "minimatch": "^9.0.0"
}
},
- "@web/test-runner-commands": {
- "version": "0.9.0",
- "resolved": "https://registry.npmjs.org/@web/test-runner-commands/-/test-runner-commands-0.9.0.tgz",
- "integrity": "sha512-zeLI6QdH0jzzJMDV5O42Pd8WLJtYqovgdt0JdytgHc0d1EpzXDsc7NTCJSImboc2NcayIsWAvvGGeRF69SMMYg==",
+ "@types/accepts": {
+ "version": "1.3.7",
+ "resolved": "https://registry.npmjs.org/@types/accepts/-/accepts-1.3.7.tgz",
+ "integrity": "sha512-Pay9fq2lM2wXPWbteBsRAGiWH2hig4ZE2asK+mm7kUzlxRTfL961rj89I6zV/E3PcIkDqyuBEcMxFT7rccugeQ==",
"dev": true,
"requires": {
- "@web/test-runner-core": "^0.13.0",
- "mkdirp": "^1.0.4"
- },
- "dependencies": {
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true
- }
+ "@types/node": "*"
}
},
- "@web/test-runner-core": {
- "version": "0.13.1",
- "resolved": "https://registry.npmjs.org/@web/test-runner-core/-/test-runner-core-0.13.1.tgz",
- "integrity": "sha512-2hESALx/UFsAzK+ApWXAkFp2eCmwcs2yj1v4YjwV8F38sQumJ40P3px3BMjFwkOYDORtQOicW0RUeSw1g3BMLA==",
+ "@types/amqplib": {
+ "version": "0.5.17",
+ "resolved": "https://registry.npmjs.org/@types/amqplib/-/amqplib-0.5.17.tgz",
+ "integrity": "sha512-RImqiLP1swDqWBW8UX9iBXVEOw6MYzNmxdXqfemDfdwtUvdTM/W0s2RlSuMVIGkRhaWvpkC9O/N81VzzQwfAbw==",
"dev": true,
"requires": {
- "@babel/code-frame": "^7.12.11",
- "@types/babel__code-frame": "^7.0.2",
- "@types/co-body": "^6.1.0",
- "@types/convert-source-map": "^2.0.0",
- "@types/debounce": "^1.2.0",
- "@types/istanbul-lib-coverage": "^2.0.3",
- "@types/istanbul-reports": "^3.0.0",
- "@web/browser-logs": "^0.4.0",
- "@web/dev-server-core": "^0.7.0",
- "chokidar": "^3.4.3",
- "cli-cursor": "^3.1.0",
- "co-body": "^6.1.0",
- "convert-source-map": "^2.0.0",
- "debounce": "^1.2.0",
- "dependency-graph": "^0.11.0",
- "globby": "^11.0.1",
- "ip": "^2.0.1",
- "istanbul-lib-coverage": "^3.0.0",
- "istanbul-lib-report": "^3.0.1",
- "istanbul-reports": "^3.0.2",
- "log-update": "^4.0.0",
- "nanocolors": "^0.2.1",
- "nanoid": "^3.1.25",
- "open": "^8.0.2",
- "picomatch": "^2.2.2",
- "source-map": "^0.7.3"
- },
- "dependencies": {
- "convert-source-map": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
- "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
- "dev": true
- },
- "source-map": {
- "version": "0.7.4",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
- "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
- "dev": true
- }
+ "@types/bluebird": "*",
+ "@types/node": "*"
}
},
- "@web/test-runner-coverage-v8": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/@web/test-runner-coverage-v8/-/test-runner-coverage-v8-0.8.0.tgz",
- "integrity": "sha512-PskiucYpjUtgNfR2zF2AWqWwjXL7H3WW/SnCAYmzUrtob7X9o/+BjdyZ4wKbOxWWSbJO4lEdGIDLu+8X2Xw+lA==",
+ "@types/aws-lambda": {
+ "version": "8.10.143",
+ "resolved": "https://registry.npmjs.org/@types/aws-lambda/-/aws-lambda-8.10.143.tgz",
+ "integrity": "sha512-u5vzlcR14ge/4pMTTMDQr3MF0wEe38B2F9o84uC4F43vN5DGTy63npRrB6jQhyt+C0lGv4ZfiRcRkqJoZuPnmg=="
+ },
+ "@types/babel__code-frame": {
+ "version": "7.0.6",
+ "resolved": "https://registry.npmjs.org/@types/babel__code-frame/-/babel__code-frame-7.0.6.tgz",
+ "integrity": "sha512-Anitqkl3+KrzcW2k77lRlg/GfLZLWXBuNgbEcIOU6M92yw42vsd3xV/Z/yAHEj8m+KUjL6bWOVOFqX8PFPJ4LA==",
+ "dev": true
+ },
+ "@types/bluebird": {
+ "version": "3.5.42",
+ "resolved": "https://registry.npmjs.org/@types/bluebird/-/bluebird-3.5.42.tgz",
+ "integrity": "sha512-Jhy+MWRlro6UjVi578V/4ZGNfeCOcNCp0YaFNIUGFKlImowqwb1O/22wDVk3FDGMLqxdpOV3qQHD5fPEH4hK6A==",
+ "dev": true
+ },
+ "@types/body-parser": {
+ "version": "1.19.5",
+ "resolved": "https://registry.npmjs.org/@types/body-parser/-/body-parser-1.19.5.tgz",
+ "integrity": "sha512-fB3Zu92ucau0iQ0JMCFQE7b/dv8Ot07NI3KaZIkIUNXq82k4eBAqUaneXfleGY9JWskeS9y+u0nXMyspcuQrCg==",
"dev": true,
"requires": {
- "@web/test-runner-core": "^0.13.0",
- "istanbul-lib-coverage": "^3.0.0",
- "lru-cache": "^8.0.4",
- "picomatch": "^2.2.2",
- "v8-to-istanbul": "^9.0.1"
- },
- "dependencies": {
- "lru-cache": {
- "version": "8.0.5",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-8.0.5.tgz",
- "integrity": "sha512-MhWWlVnuab1RG5/zMRRcVGXZLCXrZTgfwMikgzCegsPnG62yDQo5JnqKkrK4jO5iKqDAZGItAqN5CtKBCBWRUA==",
- "dev": true
- }
+ "@types/connect": "*",
+ "@types/node": "*"
}
},
- "@web/test-runner-mocha": {
- "version": "0.9.0",
- "resolved": "https://registry.npmjs.org/@web/test-runner-mocha/-/test-runner-mocha-0.9.0.tgz",
- "integrity": "sha512-ZL9F6FXd0DBQvo/h/+mSfzFTSRVxzV9st/AHhpgABtUtV/AIpVE9to6+xdkpu6827kwjezdpuadPfg+PlrBWqQ==",
+ "@types/bson": {
+ "version": "4.0.5",
+ "resolved": "https://registry.npmjs.org/@types/bson/-/bson-4.0.5.tgz",
+ "integrity": "sha512-vVLwMUqhYJSQ/WKcE60eFqcyuWse5fGH+NMAXHuKrUAPoryq3ATxk5o4bgYNtg5aOM4APVg7Hnb3ASqUYG0PKg==",
"dev": true,
"requires": {
- "@web/test-runner-core": "^0.13.0"
+ "@types/node": "*"
}
},
- "@webassemblyjs/ast": {
- "version": "1.12.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz",
- "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==",
- "dev": true,
+ "@types/bunyan": {
+ "version": "1.8.9",
+ "resolved": "https://registry.npmjs.org/@types/bunyan/-/bunyan-1.8.9.tgz",
+ "integrity": "sha512-ZqS9JGpBxVOvsawzmVt30sP++gSQMTejCkIAQ3VdadOcRE8izTyW66hufvwLeH+YEGP6Js2AW7Gz+RMyvrEbmw==",
"requires": {
- "@webassemblyjs/helper-numbers": "1.11.6",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.6"
+ "@types/node": "*"
}
},
- "@webassemblyjs/floating-point-hex-parser": {
- "version": "1.11.6",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz",
- "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==",
- "dev": true
- },
- "@webassemblyjs/helper-api-error": {
- "version": "1.11.6",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz",
- "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==",
- "dev": true
- },
- "@webassemblyjs/helper-buffer": {
- "version": "1.12.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz",
- "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==",
+ "@types/chai": {
+ "version": "4.3.17",
+ "resolved": "https://registry.npmjs.org/@types/chai/-/chai-4.3.17.tgz",
+ "integrity": "sha512-zmZ21EWzR71B4Sscphjief5djsLre50M6lI622OSySTmn9DB3j+C3kWroHfBQWXbOBwbgg/M8CG/hUxDLIloow==",
"dev": true
},
- "@webassemblyjs/helper-numbers": {
- "version": "1.11.6",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz",
- "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==",
+ "@types/co-body": {
+ "version": "6.1.3",
+ "resolved": "https://registry.npmjs.org/@types/co-body/-/co-body-6.1.3.tgz",
+ "integrity": "sha512-UhuhrQ5hclX6UJctv5m4Rfp52AfG9o9+d9/HwjxhVB5NjXxr5t9oKgJxN8xRHgr35oo8meUEHUPFWiKg6y71aA==",
"dev": true,
"requires": {
- "@webassemblyjs/floating-point-hex-parser": "1.11.6",
- "@webassemblyjs/helper-api-error": "1.11.6",
- "@xtuc/long": "4.2.2"
+ "@types/node": "*",
+ "@types/qs": "*"
}
},
- "@webassemblyjs/helper-wasm-bytecode": {
- "version": "1.11.6",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz",
- "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==",
+ "@types/command-line-args": {
+ "version": "5.2.3",
+ "resolved": "https://registry.npmjs.org/@types/command-line-args/-/command-line-args-5.2.3.tgz",
+ "integrity": "sha512-uv0aG6R0Y8WHZLTamZwtfsDLVRnOa+n+n5rEvFWL5Na5gZ8V2Teab/duDPFzIIIhs9qizDpcavCusCLJZu62Kw==",
"dev": true
},
- "@webassemblyjs/helper-wasm-section": {
- "version": "1.12.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz",
- "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==",
- "dev": true,
+ "@types/connect": {
+ "version": "3.4.36",
+ "resolved": "https://registry.npmjs.org/@types/connect/-/connect-3.4.36.tgz",
+ "integrity": "sha512-P63Zd/JUGq+PdrM1lv0Wv5SBYeA2+CORvbrXbngriYY0jzLUWfQMQQxOhjONEz/wlHOAxOdY7CY65rgQdTjq2w==",
"requires": {
- "@webassemblyjs/ast": "1.12.1",
- "@webassemblyjs/helper-buffer": "1.12.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
- "@webassemblyjs/wasm-gen": "1.12.1"
+ "@types/node": "*"
}
},
- "@webassemblyjs/ieee754": {
- "version": "1.11.6",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz",
- "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==",
+ "@types/content-disposition": {
+ "version": "0.5.8",
+ "resolved": "https://registry.npmjs.org/@types/content-disposition/-/content-disposition-0.5.8.tgz",
+ "integrity": "sha512-QVSSvno3dE0MgO76pJhmv4Qyi/j0Yk9pBp0Y7TJ2Tlj+KCgJWY6qX7nnxCOLkZ3VYRSIk1WTxCvwUSdx6CCLdg==",
+ "dev": true
+ },
+ "@types/convert-source-map": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@types/convert-source-map/-/convert-source-map-2.0.3.tgz",
+ "integrity": "sha512-ag0BfJLZf6CQz8VIuRIEYQ5Ggwk/82uvTQf27RcpyDNbY0Vw49LIPqAxk5tqYfrCs9xDaIMvl4aj7ZopnYL8bA==",
+ "dev": true
+ },
+ "@types/cookie": {
+ "version": "0.4.1",
+ "resolved": "https://registry.npmjs.org/@types/cookie/-/cookie-0.4.1.tgz",
+ "integrity": "sha512-XW/Aa8APYr6jSVVA1y/DEIZX0/GMKLEVekNG727R8cs56ahETkRAy/3DR7+fJyh7oUgGwNQaRfXCun0+KbWY7Q==",
+ "dev": true
+ },
+ "@types/cookies": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/@types/cookies/-/cookies-0.9.0.tgz",
+ "integrity": "sha512-40Zk8qR147RABiQ7NQnBzWzDcjKzNrntB5BAmeGCb2p/MIyOE+4BVvc17wumsUqUw00bJYqoXFHYygQnEFh4/Q==",
"dev": true,
"requires": {
- "@xtuc/ieee754": "^1.2.0"
+ "@types/connect": "*",
+ "@types/express": "*",
+ "@types/keygrip": "*",
+ "@types/node": "*"
}
},
- "@webassemblyjs/leb128": {
- "version": "1.11.6",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz",
- "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==",
+ "@types/cors": {
+ "version": "2.8.17",
+ "resolved": "https://registry.npmjs.org/@types/cors/-/cors-2.8.17.tgz",
+ "integrity": "sha512-8CGDvrBj1zgo2qE+oS3pOCyYNqCPryMWY2bGfwA0dcfopWGgxs+78df0Rs3rc9THP4JkOhLsAa+15VdpAqkcUA==",
"dev": true,
"requires": {
- "@xtuc/long": "4.2.2"
+ "@types/node": "*"
}
},
- "@webassemblyjs/utf8": {
- "version": "1.11.6",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz",
- "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==",
+ "@types/debounce": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/@types/debounce/-/debounce-1.2.4.tgz",
+ "integrity": "sha512-jBqiORIzKDOToaF63Fm//haOCHuwQuLa2202RK4MozpA6lh93eCBc+/8+wZn5OzjJt3ySdc+74SXWXB55Ewtyw==",
"dev": true
},
- "@webassemblyjs/wasm-edit": {
- "version": "1.12.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz",
- "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==",
+ "@types/estree": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz",
+ "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==",
+ "dev": true
+ },
+ "@types/express": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/@types/express/-/express-4.17.21.tgz",
+ "integrity": "sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.12.1",
- "@webassemblyjs/helper-buffer": "1.12.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
- "@webassemblyjs/helper-wasm-section": "1.12.1",
- "@webassemblyjs/wasm-gen": "1.12.1",
- "@webassemblyjs/wasm-opt": "1.12.1",
- "@webassemblyjs/wasm-parser": "1.12.1",
- "@webassemblyjs/wast-printer": "1.12.1"
+ "@types/body-parser": "*",
+ "@types/express-serve-static-core": "^4.17.33",
+ "@types/qs": "*",
+ "@types/serve-static": "*"
}
},
- "@webassemblyjs/wasm-gen": {
- "version": "1.12.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz",
- "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==",
+ "@types/express-serve-static-core": {
+ "version": "4.17.43",
+ "resolved": "https://registry.npmjs.org/@types/express-serve-static-core/-/express-serve-static-core-4.17.43.tgz",
+ "integrity": "sha512-oaYtiBirUOPQGSWNGPWnzyAFJ0BP3cwvN4oWZQY+zUBwpVIGsKUkpBpSztp74drYcjavs7SKFZ4DX1V2QeN8rg==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.12.1",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
- "@webassemblyjs/ieee754": "1.11.6",
- "@webassemblyjs/leb128": "1.11.6",
- "@webassemblyjs/utf8": "1.11.6"
+ "@types/node": "*",
+ "@types/qs": "*",
+ "@types/range-parser": "*",
+ "@types/send": "*"
}
},
- "@webassemblyjs/wasm-opt": {
- "version": "1.12.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz",
- "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==",
+ "@types/generic-pool": {
+ "version": "3.8.1",
+ "resolved": "https://registry.npmjs.org/@types/generic-pool/-/generic-pool-3.8.1.tgz",
+ "integrity": "sha512-eaMAbZS0EfKvaP5PUZ/Cdf5uJBO2t6T3RdvQTKuMqUwGhNpCnPAsKWEMyV+mCeCQG3UiHrtgdzni8X6DmhxRaQ==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.12.1",
- "@webassemblyjs/helper-buffer": "1.12.1",
- "@webassemblyjs/wasm-gen": "1.12.1",
- "@webassemblyjs/wasm-parser": "1.12.1"
+ "generic-pool": "*"
}
},
- "@webassemblyjs/wasm-parser": {
- "version": "1.12.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz",
- "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==",
+ "@types/http-assert": {
+ "version": "1.5.5",
+ "resolved": "https://registry.npmjs.org/@types/http-assert/-/http-assert-1.5.5.tgz",
+ "integrity": "sha512-4+tE/lwdAahgZT1g30Jkdm9PzFRde0xwxBNUyRsCitRvCQB90iuA2uJYdUnhnANRcqGXaWOGY4FEoxeElNAK2g==",
+ "dev": true
+ },
+ "@types/http-errors": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/@types/http-errors/-/http-errors-2.0.4.tgz",
+ "integrity": "sha512-D0CFMMtydbJAegzOyHjtiKPLlvnm3iTZyZRSZoLq2mRhDdmLfIWOCYPfQJ4cu2erKghU++QvjcUjp/5h7hESpA==",
+ "dev": true
+ },
+ "@types/ioredis4": {
+ "version": "npm:@types/ioredis@4.28.10",
+ "resolved": "https://registry.npmjs.org/@types/ioredis/-/ioredis-4.28.10.tgz",
+ "integrity": "sha512-69LyhUgrXdgcNDv7ogs1qXZomnfOEnSmrmMFqKgt1XMJxmoOSG/u3wYy13yACIfKuMJ8IhKgHafDO3sx19zVQQ==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.12.1",
- "@webassemblyjs/helper-api-error": "1.11.6",
- "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
- "@webassemblyjs/ieee754": "1.11.6",
- "@webassemblyjs/leb128": "1.11.6",
- "@webassemblyjs/utf8": "1.11.6"
+ "@types/node": "*"
}
},
- "@webassemblyjs/wast-printer": {
- "version": "1.12.1",
- "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz",
- "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==",
+ "@types/istanbul-lib-coverage": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz",
+ "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+zNU1w==",
+ "dev": true
+ },
+ "@types/istanbul-lib-report": {
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz",
+ "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA==",
"dev": true,
"requires": {
- "@webassemblyjs/ast": "1.12.1",
- "@xtuc/long": "4.2.2"
+ "@types/istanbul-lib-coverage": "*"
}
},
- "@webpack-cli/configtest": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz",
- "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==",
- "dev": true,
- "requires": {}
- },
- "@webpack-cli/info": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz",
- "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==",
+ "@types/istanbul-reports": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz",
+ "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==",
"dev": true,
- "requires": {}
+ "requires": {
+ "@types/istanbul-lib-report": "*"
+ }
},
- "@webpack-cli/serve": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz",
- "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==",
+ "@types/jquery": {
+ "version": "3.5.30",
+ "resolved": "https://registry.npmjs.org/@types/jquery/-/jquery-3.5.30.tgz",
+ "integrity": "sha512-nbWKkkyb919DOUxjmRVk8vwtDb0/k8FKncmUKFi+NY+QXqWltooxTrswvz4LspQwxvLdvzBN1TImr6cw3aQx2A==",
"dev": true,
- "requires": {}
+ "requires": {
+ "@types/sizzle": "*"
+ }
},
- "@xtuc/ieee754": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
- "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
+ "@types/json-schema": {
+ "version": "7.0.15",
+ "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz",
+ "integrity": "sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==",
"dev": true
},
- "@xtuc/long": {
- "version": "4.2.2",
- "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
- "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
+ "@types/json5": {
+ "version": "0.0.29",
+ "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz",
+ "integrity": "sha512-dRLjCWHYg4oaA77cxO64oO+7JwCwnIzkZPdrrC71jQmQtlhM556pwKo5bUzqvZndkVbeFLIIi+9TC40JNF5hNQ==",
"dev": true
},
- "@yarnpkg/lockfile": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz",
- "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==",
+ "@types/keygrip": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/@types/keygrip/-/keygrip-1.0.6.tgz",
+ "integrity": "sha512-lZuNAY9xeJt7Bx4t4dx0rYCDqGPW8RXhQZK1td7d4H6E9zYbLoOtjBvfwdTKpsyxQI/2jv+armjX/RW+ZNpXOQ==",
"dev": true
},
- "@yarnpkg/parsers": {
- "version": "3.0.0-rc.46",
- "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.46.tgz",
- "integrity": "sha512-aiATs7pSutzda/rq8fnuPwTglyVwjM22bNnK2ZgjrpAjQHSSl3lztd2f9evst1W/qnC58DRz7T7QndUDumAR4Q==",
+ "@types/koa": {
+ "version": "2.15.0",
+ "resolved": "https://registry.npmjs.org/@types/koa/-/koa-2.15.0.tgz",
+ "integrity": "sha512-7QFsywoE5URbuVnG3loe03QXuGajrnotr3gQkXcEBShORai23MePfFYdhz90FEtBBpkyIYQbVD+evKtloCgX3g==",
"dev": true,
"requires": {
- "js-yaml": "^3.10.0",
- "tslib": "^2.4.0"
- },
- "dependencies": {
- "argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
- "dev": true,
- "requires": {
- "sprintf-js": "~1.0.2"
- }
- },
- "js-yaml": {
- "version": "3.14.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
- "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
- "dev": true,
- "requires": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- }
- },
- "sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
- "dev": true
- }
+ "@types/accepts": "*",
+ "@types/content-disposition": "*",
+ "@types/cookies": "*",
+ "@types/http-assert": "*",
+ "@types/http-errors": "*",
+ "@types/keygrip": "*",
+ "@types/koa-compose": "*",
+ "@types/node": "*"
}
},
- "@zkochan/js-yaml": {
- "version": "0.0.6",
- "resolved": "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.6.tgz",
- "integrity": "sha512-nzvgl3VfhcELQ8LyVrYOru+UtAy1nrygk2+AGbTm8a5YcO6o8lSjAT+pfg3vJWxIoZKOUhrK6UU7xW/+00kQrg==",
+ "@types/koa__router": {
+ "version": "12.0.4",
+ "resolved": "https://registry.npmjs.org/@types/koa__router/-/koa__router-12.0.4.tgz",
+ "integrity": "sha512-Y7YBbSmfXZpa/m5UGGzb7XadJIRBRnwNY9cdAojZGp65Cpe5MAP3mOZE7e3bImt8dfKS4UFcR16SLH8L/z7PBw==",
"dev": true,
"requires": {
- "argparse": "^2.0.1"
+ "@types/koa": "*"
}
},
- "abbrev": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz",
- "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==",
- "dev": true
- },
- "abort-controller": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz",
- "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==",
+ "@types/koa-compose": {
+ "version": "3.2.8",
+ "resolved": "https://registry.npmjs.org/@types/koa-compose/-/koa-compose-3.2.8.tgz",
+ "integrity": "sha512-4Olc63RY+MKvxMwVknCUDhRQX1pFQoBZ/lXcRLP69PQkEpze/0cr8LNqJQe5NFb/b19DWi2a5bTi2VAlQzhJuA==",
"dev": true,
"requires": {
- "event-target-shim": "^5.0.0"
+ "@types/koa": "*"
}
},
- "abstract-logging": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz",
- "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==",
+ "@types/lodash": {
+ "version": "4.14.199",
+ "resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.199.tgz",
+ "integrity": "sha512-Vrjz5N5Ia4SEzWWgIVwnHNEnb1UE1XMkvY5DGXrAeOGE9imk0hgTHh5GyDjLDJi9OTCn9oo9dXH1uToK1VRfrg==",
"dev": true
},
- "accepts": {
- "version": "1.3.8",
- "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
- "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
+ "@types/long": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@types/long/-/long-4.0.2.tgz",
+ "integrity": "sha512-MqTGEo5bj5t157U6fA/BiDynNkn0YknVdh48CMPkTSpFTVmvao5UQmm7uEF6xBEo7qIMAlY/JSleYaE6VOdpaA==",
+ "dev": true
+ },
+ "@types/lru-cache": {
+ "version": "7.10.10",
+ "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-7.10.10.tgz",
+ "integrity": "sha512-nEpVRPWW9EBmx2SCfNn3ClYxPL7IktPX12HhIoSc/H5mMjdeW3+YsXIpseLQ2xF35+OcpwKQbEUw5VtqE4PDNA==",
"dev": true,
"requires": {
- "mime-types": "~2.1.34",
- "negotiator": "0.6.3"
+ "lru-cache": "*"
}
},
- "acorn": {
- "version": "8.11.3",
- "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz",
- "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg=="
- },
- "acorn-import-assertions": {
- "version": "1.9.0",
- "resolved": "https://registry.npmjs.org/acorn-import-assertions/-/acorn-import-assertions-1.9.0.tgz",
- "integrity": "sha512-cmMwop9x+8KFhxvKrKfPYmN6/pKTYYHBqLa0DfvVZcKMJWNyWLnaqND7dx/qn66R7ewM1UX5XMaDVP5wlVTaVA==",
- "dev": true,
- "requires": {}
- },
- "acorn-import-attributes": {
- "version": "1.9.5",
- "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz",
- "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==",
- "requires": {}
+ "@types/memcached": {
+ "version": "2.2.10",
+ "resolved": "https://registry.npmjs.org/@types/memcached/-/memcached-2.2.10.tgz",
+ "integrity": "sha512-AM9smvZN55Gzs2wRrqeMHVP7KE8KWgCJO/XL5yCly2xF6EKa4YlbpK+cLSAH4NG/Ah64HrlegmGqW8kYws7Vxg==",
+ "requires": {
+ "@types/node": "*"
+ }
},
- "acorn-jsx": {
- "version": "5.3.2",
- "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
- "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
- "dev": true,
- "requires": {}
+ "@types/mime": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/@types/mime/-/mime-1.3.5.tgz",
+ "integrity": "sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==",
+ "dev": true
},
- "add-stream": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz",
- "integrity": "sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==",
+ "@types/minimatch": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.5.tgz",
+ "integrity": "sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==",
"dev": true
},
- "adm-zip": {
- "version": "0.5.10",
- "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.10.tgz",
- "integrity": "sha512-x0HvcHqVJNTPk/Bw8JbLWlWoo6Wwnsug0fnYYro1HBrjxZ3G7/AZk7Ahv8JwDe1uIcz8eBqvu86FuF1POiG7vQ==",
+ "@types/minimist": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.5.tgz",
+ "integrity": "sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==",
"dev": true
},
- "after-all-results": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/after-all-results/-/after-all-results-2.0.0.tgz",
- "integrity": "sha512-2zHEyuhSJOuCrmas9YV0YL/MFCWLxe1dS6k/ENhgYrb/JqyMnadLN4iIAc9kkZrbElMDyyAGH/0J18OPErOWLg==",
+ "@types/mocha": {
+ "version": "7.0.2",
+ "resolved": "https://registry.npmjs.org/@types/mocha/-/mocha-7.0.2.tgz",
+ "integrity": "sha512-ZvO2tAcjmMi8V/5Z3JsyofMe3hasRcaw88cto5etSVMwVQfeivGAlEYmaQgceUSVYFofVjT+ioHsATjdWcFt1w==",
"dev": true
},
- "agent-base": {
- "version": "7.1.0",
- "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz",
- "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==",
+ "@types/mysql": {
+ "version": "2.15.26",
+ "resolved": "https://registry.npmjs.org/@types/mysql/-/mysql-2.15.26.tgz",
+ "integrity": "sha512-DSLCOXhkvfS5WNNPbfn2KdICAmk8lLc+/PNvnPnF7gOdMZCxopXduqv0OQ13y/yA/zXTSikZZqVgybUxOEg6YQ==",
"requires": {
- "debug": "^4.3.4"
+ "@types/node": "*"
}
},
- "agentkeepalive": {
- "version": "4.5.0",
- "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz",
- "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==",
- "dev": true,
+ "@types/node": {
+ "version": "18.6.5",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-18.6.5.tgz",
+ "integrity": "sha512-Xjt5ZGUa5WusGZJ4WJPbOT8QOqp6nDynVFRKcUt32bOgvXEoc6o085WNkYTMO7ifAj2isEfQQ2cseE+wT6jsRw=="
+ },
+ "@types/normalize-package-data": {
+ "version": "2.4.4",
+ "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.4.tgz",
+ "integrity": "sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==",
+ "dev": true
+ },
+ "@types/parse-json": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/@types/parse-json/-/parse-json-4.0.2.tgz",
+ "integrity": "sha512-dISoDXWWQwUquiKsyZ4Ng+HX2KsPL7LyHKHQwgGFEA3IaKac4Obd+h2a/a6waisAoepJlBcx9paWqjA8/HVjCw==",
+ "dev": true
+ },
+ "@types/parse5": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/@types/parse5/-/parse5-6.0.3.tgz",
+ "integrity": "sha512-SuT16Q1K51EAVPz1K29DJ/sXjhSQ0zjvsypYJ6tlwVsRV9jwW5Adq2ch8Dq8kDBCkYnELS7N7VNCSB5nC56t/g==",
+ "dev": true
+ },
+ "@types/pg": {
+ "version": "8.6.1",
+ "resolved": "https://registry.npmjs.org/@types/pg/-/pg-8.6.1.tgz",
+ "integrity": "sha512-1Kc4oAGzAl7uqUStZCDvaLFqZrW9qWSjXOmBfdgyBP5La7Us6Mg4GBvRlSoaZMhQF/zSj1C8CtKMBkoiT8eL8w==",
"requires": {
- "humanize-ms": "^1.2.1"
+ "@types/node": "*",
+ "pg-protocol": "*",
+ "pg-types": "^2.2.0"
}
},
- "aggregate-error": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
- "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
- "dev": true,
+ "@types/pg-pool": {
+ "version": "2.0.6",
+ "resolved": "https://registry.npmjs.org/@types/pg-pool/-/pg-pool-2.0.6.tgz",
+ "integrity": "sha512-TaAUE5rq2VQYxab5Ts7WZhKNmuN78Q6PiFonTDdpbx8a1H0M1vhy3rhiMjl+e2iHmogyMw7jZF4FrE6eJUy5HQ==",
"requires": {
- "clean-stack": "^2.0.0",
- "indent-string": "^4.0.0"
+ "@types/pg": "*"
}
},
- "ajv": {
- "version": "6.12.6",
- "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
- "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
+ "@types/prop-types": {
+ "version": "15.7.11",
+ "resolved": "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.11.tgz",
+ "integrity": "sha512-ga8y9v9uyeiLdpKddhxYQkxNDrfvuPrlFb0N1qnZZByvcElJaXthF1UhvCh9TLWJBEHeNtdnbysW7Y6Uq8CVng==",
+ "dev": true
+ },
+ "@types/qs": {
+ "version": "6.9.11",
+ "resolved": "https://registry.npmjs.org/@types/qs/-/qs-6.9.11.tgz",
+ "integrity": "sha512-oGk0gmhnEJK4Yyk+oI7EfXsLayXatCWPHary1MtcmbAifkobT9cM9yutG/hZKIseOU0MqbIwQ/u2nn/Gb+ltuQ==",
+ "dev": true
+ },
+ "@types/range-parser": {
+ "version": "1.2.7",
+ "resolved": "https://registry.npmjs.org/@types/range-parser/-/range-parser-1.2.7.tgz",
+ "integrity": "sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==",
+ "dev": true
+ },
+ "@types/react": {
+ "version": "17.0.80",
+ "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.80.tgz",
+ "integrity": "sha512-LrgHIu2lEtIo8M7d1FcI3BdwXWoRQwMoXOZ7+dPTW0lYREjmlHl3P0U1VD0i/9tppOuv8/sam7sOjx34TxSFbA==",
"dev": true,
"requires": {
- "fast-deep-equal": "^3.1.1",
- "fast-json-stable-stringify": "^2.0.0",
- "json-schema-traverse": "^0.4.1",
- "uri-js": "^4.2.2"
+ "@types/prop-types": "*",
+ "@types/scheduler": "^0.16",
+ "csstype": "^3.0.2"
}
},
- "ajv-formats": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz",
- "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==",
+ "@types/react-addons-test-utils": {
+ "version": "0.14.26",
+ "resolved": "https://registry.npmjs.org/@types/react-addons-test-utils/-/react-addons-test-utils-0.14.26.tgz",
+ "integrity": "sha512-zrnMrqGCfIniXyipb9HFPgdWf9TO0llA7n5QduJsx0IDB0pPK8p3/4rL4SfOLgsmtbb2X2XWCW9kBn/2k+52fg==",
"dev": true,
"requires": {
- "ajv": "^8.0.0"
- },
- "dependencies": {
- "ajv": {
- "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",
- "json-schema-traverse": "^1.0.0",
- "require-from-string": "^2.0.2",
- "uri-js": "^4.2.2"
- }
- },
- "json-schema-traverse": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
- "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
- "dev": true
- }
+ "@types/react": "*"
}
},
- "ajv-keywords": {
- "version": "3.5.2",
- "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
- "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
- "dev": true,
- "requires": {}
- },
- "amqplib": {
- "version": "0.8.0",
- "resolved": "https://registry.npmjs.org/amqplib/-/amqplib-0.8.0.tgz",
- "integrity": "sha512-icU+a4kkq4Y1PS4NNi+YPDMwdlbFcZ1EZTQT2nigW3fvOb6AOgUQ9+Mk4ue0Zu5cBg/XpDzB40oH10ysrk2dmA==",
+ "@types/react-dom": {
+ "version": "18.0.2",
+ "resolved": "https://registry.npmjs.org/@types/react-dom/-/react-dom-18.0.2.tgz",
+ "integrity": "sha512-UxeS+Wtj5bvLRREz9tIgsK4ntCuLDo0EcAcACgw3E+9wE8ePDr9uQpq53MfcyxyIS55xJ+0B6mDS8c4qkkHLBg==",
"dev": true,
"requires": {
- "bitsyntax": "~0.1.0",
- "bluebird": "^3.7.2",
- "buffer-more-ints": "~1.0.0",
- "readable-stream": "1.x >=1.1.9",
- "safe-buffer": "~5.2.1",
- "url-parse": "~1.5.1"
+ "@types/react": "*"
}
},
- "ansi-color": {
- "version": "0.2.1",
- "resolved": "https://registry.npmjs.org/ansi-color/-/ansi-color-0.2.1.tgz",
- "integrity": "sha512-bF6xLaZBLpOQzgYUtYEhJx090nPSZk1BQ/q2oyBK9aMMcJHzx9uXGCjI2Y+LebsN4Jwoykr0V9whbPiogdyHoQ=="
- },
- "ansi-colors": {
- "version": "3.2.3",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.3.tgz",
- "integrity": "sha512-LEHHyuhlPY3TmuUYMh2oz89lTShfvgbmzaBcxve9t/9Wuy7Dwf4yoAKcND7KFT1HAQfqZ12qtc+DUrBMeKF9nw==",
- "dev": true
- },
- "ansi-diff-stream": {
- "version": "1.2.1",
- "resolved": "https://registry.npmjs.org/ansi-diff-stream/-/ansi-diff-stream-1.2.1.tgz",
- "integrity": "sha512-PaKs34INoKpTzcjyKd2GM/CCEeTyDgWKuHSgF0z7ywjpbBFj/pzQf/30v+TR6VBBLia6Mso+W2ygU22ljqbi6A==",
+ "@types/readable-stream": {
+ "version": "4.0.12",
+ "resolved": "https://registry.npmjs.org/@types/readable-stream/-/readable-stream-4.0.12.tgz",
+ "integrity": "sha512-SCaw+bs9o/HCX1eTa3glTcQgW1oPxof49mqP2Qikik3xzTimNv2M4p43BQHhBuf7CwOJdQW0s1SrWU3MZxz6lw==",
"dev": true,
"requires": {
- "ansi-regex": "^2.0.0",
- "buffer-from": "^1.0.0",
- "through2": "^2.0.1"
+ "@types/node": "*",
+ "safe-buffer": "~5.1.1"
},
"dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
- "dev": true
- },
- "readable-stream": {
- "version": "2.3.8",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
- "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
- "dev": true,
- "requires": {
- "core-util-is": "~1.0.0",
- "inherits": "~2.0.3",
- "isarray": "~1.0.0",
- "process-nextick-args": "~2.0.0",
- "safe-buffer": "~5.1.1",
- "string_decoder": "~1.1.1",
- "util-deprecate": "~1.0.1"
- }
- },
"safe-buffer": {
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
"dev": true
- },
- "string_decoder": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
- "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
- "dev": true,
- "requires": {
- "safe-buffer": "~5.1.0"
- }
- },
- "through2": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
- "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
- "dev": true,
- "requires": {
- "readable-stream": "~2.3.6",
- "xtend": "~4.0.1"
- }
}
}
},
- "ansi-escapes": {
- "version": "4.3.2",
- "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
- "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
+ "@types/redis": {
+ "version": "2.8.32",
+ "resolved": "https://registry.npmjs.org/@types/redis/-/redis-2.8.32.tgz",
+ "integrity": "sha512-7jkMKxcGq9p242exlbsVzuJb57KqHRhNl4dHoQu2Y5v9bCAbtIXXH0R3HleSQW4CTOqpHIYUW3t6tpUj4BVQ+w==",
"dev": true,
"requires": {
- "type-fest": "^0.21.3"
+ "@types/node": "*"
}
},
- "ansi-regex": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
- "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
+ "@types/resolve": {
+ "version": "1.20.2",
+ "resolved": "https://registry.npmjs.org/@types/resolve/-/resolve-1.20.2.tgz",
+ "integrity": "sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==",
"dev": true
},
- "ansi-styles": {
- "version": "3.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
- "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "@types/restify": {
+ "version": "4.3.12",
+ "resolved": "https://registry.npmjs.org/@types/restify/-/restify-4.3.12.tgz",
+ "integrity": "sha512-Z0GnpGQUE/OPYPnuNAO/20BIVHKucwF/MPV9gQ2ksNlP/Fswz8KiqW4Sb/MTXD9h0BrQ7q0vLqXCfW0w2IIbKg==",
"dev": true,
"requires": {
- "color-convert": "^1.9.0"
+ "@types/bunyan": "*",
+ "@types/node": "*"
}
},
- "any-promise": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
- "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==",
+ "@types/scheduler": {
+ "version": "0.16.8",
+ "resolved": "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.8.tgz",
+ "integrity": "sha512-WZLiwShhwLRmeV6zH+GkbOFT6Z6VklCItrDioxUnv+u4Ll+8vKeFySoFyK/0ctcRpOmwAicELfmys1sDc/Rw+A==",
"dev": true
},
- "anymatch": {
- "version": "3.1.3",
- "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
- "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
+ "@types/semver": {
+ "version": "7.5.8",
+ "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.8.tgz",
+ "integrity": "sha512-I8EUhyrgfLrcTkzV3TSsGyl1tSuPrEDzr0yd5m90UgNxQkyDXULk3b6MlQqTCpZpNtWe1K0hzclnZkTcLBe2UQ==",
+ "dev": true
+ },
+ "@types/send": {
+ "version": "0.17.4",
+ "resolved": "https://registry.npmjs.org/@types/send/-/send-0.17.4.tgz",
+ "integrity": "sha512-x2EM6TJOybec7c52BX0ZspPodMsQUd5L6PRwOunVyVUhXiBSKf3AezDL8Dgvgt5o0UfKNfuA0eMLr2wLT4AiBA==",
"dev": true,
"requires": {
- "normalize-path": "^3.0.0",
- "picomatch": "^2.0.4"
+ "@types/mime": "^1",
+ "@types/node": "*"
}
},
- "append-field": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz",
- "integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==",
- "dev": true
- },
- "append-transform": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz",
- "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==",
+ "@types/serve-static": {
+ "version": "1.15.5",
+ "resolved": "https://registry.npmjs.org/@types/serve-static/-/serve-static-1.15.5.tgz",
+ "integrity": "sha512-PDRk21MnK70hja/YF8AHfC7yIsiQHn1rcXx7ijCFBX/k+XQJhQT/gw3xekXKJvx+5SXaMMS8oqQy09Mzvz2TuQ==",
"dev": true,
"requires": {
- "default-require-extensions": "^3.0.0"
+ "@types/http-errors": "*",
+ "@types/mime": "*",
+ "@types/node": "*"
}
},
- "aproba": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz",
- "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==",
- "dev": true
- },
- "archy": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz",
- "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==",
+ "@types/shimmer": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/@types/shimmer/-/shimmer-1.0.3.tgz",
+ "integrity": "sha512-F/IjUGnV6pIN7R4ZV4npHJVoNtaLZWvb+2/9gctxjb99wkpI7Ozg8VPogwDiTRyjLwZXAYxjvdg1KS8LTHKdDA==",
"dev": true
},
- "are-we-there-yet": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz",
- "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==",
+ "@types/sinon": {
+ "version": "10.0.20",
+ "resolved": "https://registry.npmjs.org/@types/sinon/-/sinon-10.0.20.tgz",
+ "integrity": "sha512-2APKKruFNCAZgx3daAyACGzWuJ028VVCUDk6o2rw/Z4PXT0ogwdV4KUegW0MwVs0Zu59auPXbbuBJHF12Sx1Eg==",
"dev": true,
"requires": {
- "delegates": "^1.0.0",
- "readable-stream": "^3.6.0"
+ "@types/sinonjs__fake-timers": "*"
}
},
- "argparse": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
- "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
+ "@types/sinonjs__fake-timers": {
+ "version": "8.1.5",
+ "resolved": "https://registry.npmjs.org/@types/sinonjs__fake-timers/-/sinonjs__fake-timers-8.1.5.tgz",
+ "integrity": "sha512-mQkU2jY8jJEF7YHjHvsQO8+3ughTL1mcnn96igfhONmR+fUPSKIkefQYpSe8bsly2Ep7oQbn/6VG5/9/0qcArQ==",
"dev": true
},
- "array-back": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz",
- "integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==",
+ "@types/sizzle": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/@types/sizzle/-/sizzle-2.3.8.tgz",
+ "integrity": "sha512-0vWLNK2D5MT9dg0iOo8GlKguPAU02QjmZitPEsXRuJXU/OGIOt9vT9Fc26wtYuavLxtO45v9PGleoL9Z0k1LHg==",
"dev": true
},
- "array-buffer-byte-length": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz",
- "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==",
- "dev": true,
+ "@types/stack-utils": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz",
+ "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==",
+ "dev": true
+ },
+ "@types/tedious": {
+ "version": "4.0.14",
+ "resolved": "https://registry.npmjs.org/@types/tedious/-/tedious-4.0.14.tgz",
+ "integrity": "sha512-KHPsfX/FoVbUGbyYvk1q9MMQHLPeRZhRJZdO45Q4YjvFkv4hMNghCWTvy7rdKessBsmtz4euWCWAB6/tVpI1Iw==",
"requires": {
- "call-bind": "^1.0.5",
- "is-array-buffer": "^3.0.4"
+ "@types/node": "*"
}
},
- "array-differ": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz",
- "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==",
+ "@types/triple-beam": {
+ "version": "1.3.5",
+ "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz",
+ "integrity": "sha512-6WaYesThRMCl19iryMYP7/x2OVgCtbIVflDGFpWnb9irXI3UjYE4AzmYuiUKY1AJstGijoY+MgUszMgRxIYTYw=="
+ },
+ "@types/uuid": {
+ "version": "9.0.1",
+ "resolved": "https://registry.npmjs.org/@types/uuid/-/uuid-9.0.1.tgz",
+ "integrity": "sha512-rFT3ak0/2trgvp4yYZo5iKFEPsET7vKydKF+VRCxlQ9bpheehyAJH89dAkaLEq/j/RZXJIqcgsmPJKUP1Z28HA==",
"dev": true
},
- "array-flatten": {
- "version": "1.1.1",
- "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
- "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==",
+ "@types/webidl-conversions": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/@types/webidl-conversions/-/webidl-conversions-7.0.3.tgz",
+ "integrity": "sha512-CiJJvcRtIgzadHCYXw7dqEnMNRjhGZlYK05Mj9OyktqV8uVT8fD2BFOB7S1uwBE3Kj2Z+4UyPmFw/Ixgw/LAlA==",
"dev": true
},
- "array-ify": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz",
- "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==",
+ "@types/webpack-env": {
+ "version": "1.16.3",
+ "resolved": "https://registry.npmjs.org/@types/webpack-env/-/webpack-env-1.16.3.tgz",
+ "integrity": "sha512-9gtOPPkfyNoEqCQgx4qJKkuNm/x0R2hKR7fdl7zvTJyHnIisuE/LfvXOsYWL0o3qq6uiBnKZNNNzi3l0y/X+xw==",
"dev": true
},
- "array-includes": {
- "version": "3.1.7",
- "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz",
- "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==",
+ "@types/whatwg-url": {
+ "version": "8.2.2",
+ "resolved": "https://registry.npmjs.org/@types/whatwg-url/-/whatwg-url-8.2.2.tgz",
+ "integrity": "sha512-FtQu10RWgn3D9U4aazdwIE2yzphmTJREDqNdODHrbrZmmMqI0vMheC/6NE/J1Yveaj8H+ela+YwWTjq5PGmuhA==",
"dev": true,
"requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "get-intrinsic": "^1.2.1",
- "is-string": "^1.0.7"
+ "@types/node": "*",
+ "@types/webidl-conversions": "*"
}
},
- "array-union": {
- "version": "2.1.0",
- "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
- "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
- "dev": true
- },
- "array.prototype.flat": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz",
- "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==",
+ "@types/ws": {
+ "version": "7.4.7",
+ "resolved": "https://registry.npmjs.org/@types/ws/-/ws-7.4.7.tgz",
+ "integrity": "sha512-JQbbmxZTZehdc2iszGKs5oC3NFnjeay7mtAWrdt7qNtAVK0g19muApzAy4bm9byz79xa2ZnO/BOBC2R8RC5Lww==",
"dev": true,
"requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0"
+ "@types/node": "*"
}
},
- "array.prototype.flatmap": {
- "version": "1.3.2",
- "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz",
- "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==",
+ "@types/yargs": {
+ "version": "17.0.32",
+ "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.32.tgz",
+ "integrity": "sha512-xQ67Yc/laOG5uMfX/093MRlGGCIBzZMarVa+gfNKJxWAIgykYpVGkBdbqEzGDDfCrVUj6Hiff4mTZ5BA6TmAog==",
"dev": true,
"requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-shim-unscopables": "^1.0.0"
+ "@types/yargs-parser": "*"
}
},
- "array.prototype.reduce": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.6.tgz",
- "integrity": "sha512-UW+Mz8LG/sPSU8jRDCjVr6J/ZKAGpHfwrZ6kWTG5qCxIEiXdVshqGnu5vEZA8S1y6X4aCSbQZ0/EEsfvEvBiSg==",
+ "@types/yargs-parser": {
+ "version": "21.0.3",
+ "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz",
+ "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==",
+ "dev": true
+ },
+ "@types/yauzl": {
+ "version": "2.10.3",
+ "resolved": "https://registry.npmjs.org/@types/yauzl/-/yauzl-2.10.3.tgz",
+ "integrity": "sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==",
"dev": true,
+ "optional": true,
"requires": {
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "es-array-method-boxes-properly": "^1.0.0",
- "is-string": "^1.0.7"
+ "@types/node": "*"
}
},
- "arraybuffer.prototype.slice": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz",
- "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==",
+ "@typescript-eslint/eslint-plugin": {
+ "version": "5.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.8.1.tgz",
+ "integrity": "sha512-wTZ5oEKrKj/8/366qTM366zqhIKAp6NCMweoRONtfuC07OAU9nVI2GZZdqQ1qD30WAAtcPdkH+npDwtRFdp4Rw==",
"dev": true,
"requires": {
- "array-buffer-byte-length": "^1.0.1",
- "call-bind": "^1.0.5",
- "define-properties": "^1.2.1",
- "es-abstract": "^1.22.3",
- "es-errors": "^1.2.1",
- "get-intrinsic": "^1.2.3",
- "is-array-buffer": "^3.0.4",
- "is-shared-array-buffer": "^1.0.2"
+ "@typescript-eslint/experimental-utils": "5.8.1",
+ "@typescript-eslint/scope-manager": "5.8.1",
+ "debug": "^4.3.2",
+ "functional-red-black-tree": "^1.0.1",
+ "ignore": "^5.1.8",
+ "regexpp": "^3.2.0",
+ "semver": "^7.3.5",
+ "tsutils": "^3.21.0"
}
},
- "arrify": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
- "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==",
- "dev": true
- },
- "asn1": {
- "version": "0.2.6",
- "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz",
- "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==",
+ "@typescript-eslint/experimental-utils": {
+ "version": "5.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/experimental-utils/-/experimental-utils-5.8.1.tgz",
+ "integrity": "sha512-fbodVnjIDU4JpeXWRDsG5IfIjYBxEvs8EBO8W1+YVdtrc2B9ppfof5sZhVEDOtgTfFHnYQJDI8+qdqLYO4ceww==",
"dev": true,
"requires": {
- "safer-buffer": "~2.1.0"
+ "@types/json-schema": "^7.0.9",
+ "@typescript-eslint/scope-manager": "5.8.1",
+ "@typescript-eslint/types": "5.8.1",
+ "@typescript-eslint/typescript-estree": "5.8.1",
+ "eslint-scope": "^5.1.1",
+ "eslint-utils": "^3.0.0"
}
},
- "assert": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz",
- "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==",
+ "@typescript-eslint/parser": {
+ "version": "5.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.8.1.tgz",
+ "integrity": "sha512-K1giKHAjHuyB421SoXMXFHHVI4NdNY603uKw92++D3qyxSeYvC10CBJ/GE5Thpo4WTUvu1mmJI2/FFkz38F2Gw==",
"dev": true,
"requires": {
- "es6-object-assign": "^1.1.0",
- "is-nan": "^1.2.1",
- "object-is": "^1.0.1",
- "util": "^0.12.0"
+ "@typescript-eslint/scope-manager": "5.8.1",
+ "@typescript-eslint/types": "5.8.1",
+ "@typescript-eslint/typescript-estree": "5.8.1",
+ "debug": "^4.3.2"
}
},
- "assert-plus": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
- "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==",
- "dev": true
+ "@typescript-eslint/scope-manager": {
+ "version": "5.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.8.1.tgz",
+ "integrity": "sha512-DGxJkNyYruFH3NIZc3PwrzwOQAg7vvgsHsHCILOLvUpupgkwDZdNq/cXU3BjF4LNrCsVg0qxEyWasys5AiJ85Q==",
+ "dev": true,
+ "requires": {
+ "@typescript-eslint/types": "5.8.1",
+ "@typescript-eslint/visitor-keys": "5.8.1"
+ }
},
- "assertion-error": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz",
- "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==",
+ "@typescript-eslint/types": {
+ "version": "5.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.8.1.tgz",
+ "integrity": "sha512-L/FlWCCgnjKOLefdok90/pqInkomLnAcF9UAzNr+DSqMC3IffzumHTQTrINXhP1gVp9zlHiYYjvozVZDPleLcA==",
"dev": true
},
- "assertion-error-formatter": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/assertion-error-formatter/-/assertion-error-formatter-3.0.0.tgz",
- "integrity": "sha512-6YyAVLrEze0kQ7CmJfUgrLHb+Y7XghmL2Ie7ijVa2Y9ynP3LV+VDiwFk62Dn0qtqbmY0BT0ss6p1xxpiF2PYbQ==",
+ "@typescript-eslint/typescript-estree": {
+ "version": "5.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.8.1.tgz",
+ "integrity": "sha512-26lQ8l8tTbG7ri7xEcCFT9ijU5Fk+sx/KRRyyzCv7MQ+rZZlqiDPtMKWLC8P7o+dtCnby4c+OlxuX1tp8WfafQ==",
"dev": true,
"requires": {
- "diff": "^4.0.1",
- "pad-right": "^0.2.2",
- "repeat-string": "^1.6.1"
+ "@typescript-eslint/types": "5.8.1",
+ "@typescript-eslint/visitor-keys": "5.8.1",
+ "debug": "^4.3.2",
+ "globby": "^11.0.4",
+ "is-glob": "^4.0.3",
+ "semver": "^7.3.5",
+ "tsutils": "^3.21.0"
}
},
- "ast-types": {
- "version": "0.13.4",
- "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz",
- "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==",
+ "@typescript-eslint/visitor-keys": {
+ "version": "5.8.1",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.8.1.tgz",
+ "integrity": "sha512-SWgiWIwocK6NralrJarPZlWdr0hZnj5GXHIgfdm8hNkyKvpeQuFyLP6YjSIe9kf3YBIfU6OHSZLYkQ+smZwtNg==",
"dev": true,
"requires": {
- "tslib": "^2.0.1"
+ "@typescript-eslint/types": "5.8.1",
+ "eslint-visitor-keys": "^3.0.0"
}
},
- "astral-regex": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
- "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
- "dev": true
- },
- "async": {
- "version": "3.2.5",
- "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz",
- "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==",
- "dev": true
- },
- "async-mutex": {
+ "@web/browser-logs": {
"version": "0.4.0",
- "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.4.0.tgz",
- "integrity": "sha512-eJFZ1YhRR8UN8eBLoNzcDPcy/jqjsg6I1AP+KvWQX80BqOSW1oJPJXDylPUEeMr2ZQvHgnQ//Lp6f3RQ1zI7HA==",
+ "resolved": "https://registry.npmjs.org/@web/browser-logs/-/browser-logs-0.4.0.tgz",
+ "integrity": "sha512-/EBiDAUCJ2DzZhaFxTPRIznEPeafdLbXShIL6aTu7x73x7ZoxSDv7DGuTsh2rWNMUa4+AKli4UORrpyv6QBOiA==",
"dev": true,
"requires": {
- "tslib": "^2.4.0"
+ "errorstacks": "^2.2.0"
}
},
- "asynckit": {
- "version": "0.4.0",
- "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
- "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
- "dev": true
- },
- "at-least-node": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
- "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
- "dev": true
- },
- "atomic-sleep": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz",
- "integrity": "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==",
+ "@web/config-loader": {
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/@web/config-loader/-/config-loader-0.3.1.tgz",
+ "integrity": "sha512-IYjHXUgSGGNpO3YJQ9foLcazbJlAWDdJGRe9be7aOhon0Nd6Na5JIOJAej7jsMu76fKHr4b4w2LfIdNQ4fJ8pA==",
"dev": true
},
- "available-typed-arrays": {
- "version": "1.0.7",
- "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
- "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==",
- "dev": true,
- "requires": {
- "possible-typed-array-names": "^1.0.0"
- }
- },
- "avvio": {
- "version": "8.3.0",
- "resolved": "https://registry.npmjs.org/avvio/-/avvio-8.3.0.tgz",
- "integrity": "sha512-VBVH0jubFr9LdFASy/vNtm5giTrnbVquWBhT0fyizuNK2rQ7e7ONU2plZQWUNqtE1EmxFEb+kbSkFRkstiaS9Q==",
+ "@web/dev-server": {
+ "version": "0.4.3",
+ "resolved": "https://registry.npmjs.org/@web/dev-server/-/dev-server-0.4.3.tgz",
+ "integrity": "sha512-vf2ZVjdTj8ExrMSYagyHD+snRue9oRetynxd1p0P7ndEpZDKeNLYsvkJyo0pNU6moBxHmXnYeC5VrAT4E3+lNg==",
"dev": true,
"requires": {
- "@fastify/error": "^3.3.0",
- "archy": "^1.0.0",
- "debug": "^4.0.0",
- "fastq": "^1.17.1"
+ "@babel/code-frame": "^7.12.11",
+ "@types/command-line-args": "^5.0.0",
+ "@web/config-loader": "^0.3.0",
+ "@web/dev-server-core": "^0.7.1",
+ "@web/dev-server-rollup": "^0.6.1",
+ "camelcase": "^6.2.0",
+ "command-line-args": "^5.1.1",
+ "command-line-usage": "^7.0.1",
+ "debounce": "^1.2.0",
+ "deepmerge": "^4.2.2",
+ "ip": "^2.0.1",
+ "nanocolors": "^0.2.1",
+ "open": "^8.0.2",
+ "portfinder": "^1.0.32"
+ },
+ "dependencies": {
+ "camelcase": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
+ "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
+ "dev": true
+ }
}
},
- "aws-sdk": {
- "version": "2.1008.0",
- "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1008.0.tgz",
- "integrity": "sha512-wBEon+ARCuMcwEPpOFZqRT3elBLfLtPqv8jMql3Hsr7Ua5toPlgKMmjf368iTzBNaY7TOZsjLAT9nAhvtSZ++g==",
+ "@web/dev-server-core": {
+ "version": "0.7.2",
+ "resolved": "https://registry.npmjs.org/@web/dev-server-core/-/dev-server-core-0.7.2.tgz",
+ "integrity": "sha512-Q/0jpF13Ipk+qGGQ+Yx/FW1TQBYazpkfgYHHo96HBE7qv4V4KKHqHglZcSUxti/zd4bToxX1cFTz8dmbTlb8JA==",
"dev": true,
"requires": {
- "buffer": "4.9.2",
- "events": "1.1.1",
- "ieee754": "1.1.13",
- "jmespath": "0.15.0",
- "querystring": "0.2.0",
- "sax": "1.2.1",
- "url": "0.10.3",
- "uuid": "3.3.2",
- "xml2js": "0.4.19"
+ "@types/koa": "^2.11.6",
+ "@types/ws": "^7.4.0",
+ "@web/parse5-utils": "^2.1.0",
+ "chokidar": "^3.4.3",
+ "clone": "^2.1.2",
+ "es-module-lexer": "^1.0.0",
+ "get-stream": "^6.0.0",
+ "is-stream": "^2.0.0",
+ "isbinaryfile": "^5.0.0",
+ "koa": "^2.13.0",
+ "koa-etag": "^4.0.0",
+ "koa-send": "^5.0.1",
+ "koa-static": "^5.0.0",
+ "lru-cache": "^8.0.4",
+ "mime-types": "^2.1.27",
+ "parse5": "^6.0.1",
+ "picomatch": "^2.2.2",
+ "ws": "^7.4.2"
},
"dependencies": {
- "uuid": {
- "version": "3.3.2",
- "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz",
- "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==",
+ "clone": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-2.1.2.tgz",
+ "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==",
+ "dev": true
+ },
+ "isbinaryfile": {
+ "version": "5.0.2",
+ "resolved": "https://registry.npmjs.org/isbinaryfile/-/isbinaryfile-5.0.2.tgz",
+ "integrity": "sha512-GvcjojwonMjWbTkfMpnVHVqXW/wKMYDfEpY94/8zy8HFMOqb/VL6oeONq9v87q4ttVlaTLnGXnJD4B5B1OTGIg==",
"dev": true
+ },
+ "lru-cache": {
+ "version": "8.0.5",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-8.0.5.tgz",
+ "integrity": "sha512-MhWWlVnuab1RG5/zMRRcVGXZLCXrZTgfwMikgzCegsPnG62yDQo5JnqKkrK4jO5iKqDAZGItAqN5CtKBCBWRUA==",
+ "dev": true
+ },
+ "parse5": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
+ "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
+ "dev": true
+ },
+ "ws": {
+ "version": "7.5.9",
+ "resolved": "https://registry.npmjs.org/ws/-/ws-7.5.9.tgz",
+ "integrity": "sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q==",
+ "dev": true,
+ "requires": {}
}
}
},
- "axios": {
- "version": "1.6.7",
- "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz",
- "integrity": "sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==",
+ "@web/dev-server-esbuild": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@web/dev-server-esbuild/-/dev-server-esbuild-1.0.2.tgz",
+ "integrity": "sha512-ak5mKt7L0H/Fa470Ku7p9A1eI32DNyFGM83jDkJviBO8r3lM00O5hVFW1K+UIYNC5EyanLyPxTqgtIuQEyMYcQ==",
"dev": true,
"requires": {
- "follow-redirects": "^1.15.4",
- "form-data": "^4.0.0",
- "proxy-from-env": "^1.1.0"
+ "@mdn/browser-compat-data": "^4.0.0",
+ "@web/dev-server-core": "^0.7.0",
+ "esbuild": "^0.19.11",
+ "get-tsconfig": "^4.7.2",
+ "parse5": "^6.0.1",
+ "ua-parser-js": "^1.0.33"
+ },
+ "dependencies": {
+ "parse5": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
+ "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
+ "dev": true
+ },
+ "ua-parser-js": {
+ "version": "1.0.37",
+ "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.37.tgz",
+ "integrity": "sha512-bhTyI94tZofjo+Dn8SN6Zv8nBDvyXTymAdM3LDI/0IboIUwTu1rEhW7v2TfiVsoYWgkQ4kOVqnI8APUFbIQIFQ==",
+ "dev": true
+ }
}
},
- "b4a": {
- "version": "1.6.6",
- "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.6.tgz",
- "integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==",
- "dev": true
- },
- "babel-code-frame": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
- "integrity": "sha512-XqYMR2dfdGMW+hd0IUZ2PwK+fGeFkOxZJ0wY+JaQAHzt1Zx8LcvpiZD2NiGkEG8qx0CfkAOr5xt76d1e8vG90g==",
+ "@web/dev-server-rollup": {
+ "version": "0.6.4",
+ "resolved": "https://registry.npmjs.org/@web/dev-server-rollup/-/dev-server-rollup-0.6.4.tgz",
+ "integrity": "sha512-sJZfTGCCrdku5xYnQQG51odGI092hKY9YFM0X3Z0tRY3iXKXcYRaLZrErw5KfCxr6g0JRuhe4BBhqXTA5Q2I3Q==",
"dev": true,
"requires": {
- "chalk": "^1.1.3",
- "esutils": "^2.0.2",
- "js-tokens": "^3.0.2"
+ "@rollup/plugin-node-resolve": "^15.0.1",
+ "@web/dev-server-core": "^0.7.2",
+ "nanocolors": "^0.2.1",
+ "parse5": "^6.0.1",
+ "rollup": "^4.4.0",
+ "whatwg-url": "^14.0.0"
},
"dependencies": {
- "ansi-regex": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
- "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
- "dev": true
- },
- "ansi-styles": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
- "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==",
+ "parse5": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
+ "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
"dev": true
},
- "chalk": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
- "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==",
- "dev": true,
- "requires": {
- "ansi-styles": "^2.2.1",
- "escape-string-regexp": "^1.0.2",
- "has-ansi": "^2.0.0",
- "strip-ansi": "^3.0.0",
- "supports-color": "^2.0.0"
- }
- },
- "has-ansi": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
- "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==",
+ "tr46": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.0.0.tgz",
+ "integrity": "sha512-tk2G5R2KRwBd+ZN0zaEXpmzdKyOYksXwywulIX95MBODjSzMIuQnQ3m8JxgbhnL1LeVo7lqQKsYa1O3Htl7K5g==",
"dev": true,
"requires": {
- "ansi-regex": "^2.0.0"
+ "punycode": "^2.3.1"
}
},
- "js-tokens": {
- "version": "3.0.2",
- "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
- "integrity": "sha512-RjTcuD4xjtthQkaWH7dFlH85L+QaVtSoOyGdZ3g6HFhS9dFNDfLyqgm2NFe2X6cQpeFmt0452FJjFG5UameExg==",
- "dev": true
- },
- "strip-ansi": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
- "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==",
+ "whatwg-url": {
+ "version": "14.0.0",
+ "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.0.0.tgz",
+ "integrity": "sha512-1lfMEm2IEr7RIV+f4lUNPOqfFL+pO+Xw3fJSqmjX9AbXcXcYOkCe1P6+9VBZB6n94af16NfZf+sSk0JCBZC9aw==",
"dev": true,
"requires": {
- "ansi-regex": "^2.0.0"
+ "tr46": "^5.0.0",
+ "webidl-conversions": "^7.0.0"
}
- },
- "supports-color": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
- "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==",
+ }
+ }
+ },
+ "@web/parse5-utils": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/@web/parse5-utils/-/parse5-utils-2.1.0.tgz",
+ "integrity": "sha512-GzfK5disEJ6wEjoPwx8AVNwUe9gYIiwc+x//QYxYDAFKUp4Xb1OJAGLc2l2gVrSQmtPGLKrTRcW90Hv4pEq1qA==",
+ "dev": true,
+ "requires": {
+ "@types/parse5": "^6.0.1",
+ "parse5": "^6.0.1"
+ },
+ "dependencies": {
+ "parse5": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/parse5/-/parse5-6.0.1.tgz",
+ "integrity": "sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw==",
"dev": true
}
}
},
- "babel-core": {
- "version": "6.26.3",
- "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz",
- "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==",
+ "@web/test-runner": {
+ "version": "0.18.3",
+ "resolved": "https://registry.npmjs.org/@web/test-runner/-/test-runner-0.18.3.tgz",
+ "integrity": "sha512-QkVK8Qguw3Zhyu8SYR7F4VdcjyXBeJNr8W8L++s4zO/Ok7DR/Wu7+rLswn3H7OH3xYoCHRmwteehcFejefz6ew==",
"dev": true,
"requires": {
- "babel-code-frame": "^6.26.0",
- "babel-generator": "^6.26.0",
- "babel-helpers": "^6.24.1",
- "babel-messages": "^6.23.0",
- "babel-register": "^6.26.0",
- "babel-runtime": "^6.26.0",
- "babel-template": "^6.26.0",
- "babel-traverse": "^6.26.0",
- "babel-types": "^6.26.0",
- "babylon": "^6.18.0",
- "convert-source-map": "^1.5.1",
- "debug": "^2.6.9",
- "json5": "^0.5.1",
- "lodash": "^4.17.4",
- "minimatch": "^3.0.4",
- "path-is-absolute": "^1.0.1",
- "private": "^0.1.8",
- "slash": "^1.0.0",
- "source-map": "^0.5.7"
+ "@web/browser-logs": "^0.4.0",
+ "@web/config-loader": "^0.3.0",
+ "@web/dev-server": "^0.4.0",
+ "@web/test-runner-chrome": "^0.16.0",
+ "@web/test-runner-commands": "^0.9.0",
+ "@web/test-runner-core": "^0.13.0",
+ "@web/test-runner-mocha": "^0.9.0",
+ "camelcase": "^6.2.0",
+ "command-line-args": "^5.1.1",
+ "command-line-usage": "^7.0.1",
+ "convert-source-map": "^2.0.0",
+ "diff": "^5.0.0",
+ "globby": "^11.0.1",
+ "nanocolors": "^0.2.1",
+ "portfinder": "^1.0.32",
+ "source-map": "^0.7.3"
},
"dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
- "dev": true,
- "requires": {
- "ms": "2.0.0"
- }
- },
- "json5": {
- "version": "0.5.1",
- "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz",
- "integrity": "sha512-4xrs1aW+6N5DalkqSVA8fxh458CXvR99WU8WLKmq4v8eWAL86Xo3BVqyd3SkA9wEVjCMqyvvRRkshAdOnBp5rw==",
+ "camelcase": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
+ "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
"dev": true
},
- "minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "ms": {
+ "convert-source-map": {
"version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true
},
- "slash": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz",
- "integrity": "sha512-3TYDR7xWt4dIqV2JauJr+EJeW356RXijHeUlO+8djJ+uBXPn8/2dpzBc8yQhh583sVvc9CvFAeQVgijsH+PNNg==",
+ "diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
"dev": true
},
"source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
+ "version": "0.7.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
+ "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
"dev": true
}
}
},
- "babel-generator": {
- "version": "6.26.1",
- "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz",
- "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==",
+ "@web/test-runner-chrome": {
+ "version": "0.16.0",
+ "resolved": "https://registry.npmjs.org/@web/test-runner-chrome/-/test-runner-chrome-0.16.0.tgz",
+ "integrity": "sha512-Edc6Y49aVB6k18S5IOj9OCX3rEf8F3jptIu0p95+imqxmcutFEh1GNmlAk2bQGnXS0U6uVY7Xbf61fiaXUQqhg==",
+ "dev": true,
+ "requires": {
+ "@web/test-runner-core": "^0.13.0",
+ "@web/test-runner-coverage-v8": "^0.8.0",
+ "async-mutex": "0.4.0",
+ "chrome-launcher": "^0.15.0",
+ "puppeteer-core": "^22.0.0"
+ }
+ },
+ "@web/test-runner-commands": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/@web/test-runner-commands/-/test-runner-commands-0.9.0.tgz",
+ "integrity": "sha512-zeLI6QdH0jzzJMDV5O42Pd8WLJtYqovgdt0JdytgHc0d1EpzXDsc7NTCJSImboc2NcayIsWAvvGGeRF69SMMYg==",
"dev": true,
"requires": {
- "babel-messages": "^6.23.0",
- "babel-runtime": "^6.26.0",
- "babel-types": "^6.26.0",
- "detect-indent": "^4.0.0",
- "jsesc": "^1.3.0",
- "lodash": "^4.17.4",
- "source-map": "^0.5.7",
- "trim-right": "^1.0.1"
+ "@web/test-runner-core": "^0.13.0",
+ "mkdirp": "^1.0.4"
},
"dependencies": {
- "detect-indent": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz",
- "integrity": "sha512-BDKtmHlOzwI7iRuEkhzsnPoi5ypEhWAJB5RvHWe1kMr06js3uK5B3734i3ui5Yd+wOJV1cpE4JnivPD283GU/A==",
- "dev": true,
- "requires": {
- "repeating": "^2.0.0"
- }
- },
- "jsesc": {
- "version": "1.3.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz",
- "integrity": "sha512-Mke0DA0QjUWuJlhsE0ZPPhYiJkRap642SmI/4ztCFaUs6V2AiH1sfecc+57NgaryfAA2VR3v6O+CSjC1jZJKOA==",
- "dev": true
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
+ "mkdirp": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
"dev": true
}
}
},
- "babel-helper-bindify-decorators": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-bindify-decorators/-/babel-helper-bindify-decorators-6.24.1.tgz",
- "integrity": "sha512-TYX2QQATKA6Wssp6j7jqlw4QLmABDN1olRdEHndYvBXdaXM5dcx6j5rN0+nd+aVL+Th40fAEYvvw/Xxd/LETuQ==",
+ "@web/test-runner-core": {
+ "version": "0.13.1",
+ "resolved": "https://registry.npmjs.org/@web/test-runner-core/-/test-runner-core-0.13.1.tgz",
+ "integrity": "sha512-2hESALx/UFsAzK+ApWXAkFp2eCmwcs2yj1v4YjwV8F38sQumJ40P3px3BMjFwkOYDORtQOicW0RUeSw1g3BMLA==",
"dev": true,
"requires": {
- "babel-runtime": "^6.22.0",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
+ "@babel/code-frame": "^7.12.11",
+ "@types/babel__code-frame": "^7.0.2",
+ "@types/co-body": "^6.1.0",
+ "@types/convert-source-map": "^2.0.0",
+ "@types/debounce": "^1.2.0",
+ "@types/istanbul-lib-coverage": "^2.0.3",
+ "@types/istanbul-reports": "^3.0.0",
+ "@web/browser-logs": "^0.4.0",
+ "@web/dev-server-core": "^0.7.0",
+ "chokidar": "^3.4.3",
+ "cli-cursor": "^3.1.0",
+ "co-body": "^6.1.0",
+ "convert-source-map": "^2.0.0",
+ "debounce": "^1.2.0",
+ "dependency-graph": "^0.11.0",
+ "globby": "^11.0.1",
+ "ip": "^2.0.1",
+ "istanbul-lib-coverage": "^3.0.0",
+ "istanbul-lib-report": "^3.0.1",
+ "istanbul-reports": "^3.0.2",
+ "log-update": "^4.0.0",
+ "nanocolors": "^0.2.1",
+ "nanoid": "^3.1.25",
+ "open": "^8.0.2",
+ "picomatch": "^2.2.2",
+ "source-map": "^0.7.3"
+ },
+ "dependencies": {
+ "convert-source-map": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.7.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
+ "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "dev": true
+ }
}
},
- "babel-helper-builder-binary-assignment-operator-visitor": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz",
- "integrity": "sha512-gCtfYORSG1fUMX4kKraymq607FWgMWg+j42IFPc18kFQEsmtaibP4UrqsXt8FlEJle25HUd4tsoDR7H2wDhe9Q==",
+ "@web/test-runner-coverage-v8": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/@web/test-runner-coverage-v8/-/test-runner-coverage-v8-0.8.0.tgz",
+ "integrity": "sha512-PskiucYpjUtgNfR2zF2AWqWwjXL7H3WW/SnCAYmzUrtob7X9o/+BjdyZ4wKbOxWWSbJO4lEdGIDLu+8X2Xw+lA==",
"dev": true,
"requires": {
- "babel-helper-explode-assignable-expression": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
+ "@web/test-runner-core": "^0.13.0",
+ "istanbul-lib-coverage": "^3.0.0",
+ "lru-cache": "^8.0.4",
+ "picomatch": "^2.2.2",
+ "v8-to-istanbul": "^9.0.1"
+ },
+ "dependencies": {
+ "lru-cache": {
+ "version": "8.0.5",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-8.0.5.tgz",
+ "integrity": "sha512-MhWWlVnuab1RG5/zMRRcVGXZLCXrZTgfwMikgzCegsPnG62yDQo5JnqKkrK4jO5iKqDAZGItAqN5CtKBCBWRUA==",
+ "dev": true
+ }
}
},
- "babel-helper-call-delegate": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz",
- "integrity": "sha512-RL8n2NiEj+kKztlrVJM9JT1cXzzAdvWFh76xh/H1I4nKwunzE4INBXn8ieCZ+wh4zWszZk7NBS1s/8HR5jDkzQ==",
+ "@web/test-runner-mocha": {
+ "version": "0.9.0",
+ "resolved": "https://registry.npmjs.org/@web/test-runner-mocha/-/test-runner-mocha-0.9.0.tgz",
+ "integrity": "sha512-ZL9F6FXd0DBQvo/h/+mSfzFTSRVxzV9st/AHhpgABtUtV/AIpVE9to6+xdkpu6827kwjezdpuadPfg+PlrBWqQ==",
"dev": true,
"requires": {
- "babel-helper-hoist-variables": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
+ "@web/test-runner-core": "^0.13.0"
}
},
- "babel-helper-define-map": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz",
- "integrity": "sha512-bHkmjcC9lM1kmZcVpA5t2om2nzT/xiZpo6TJq7UlZ3wqKfzia4veeXbIhKvJXAMzhhEBd3cR1IElL5AenWEUpA==",
+ "@webassemblyjs/ast": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.12.1.tgz",
+ "integrity": "sha512-EKfMUOPRRUTy5UII4qJDGPpqfwjOmZ5jeGFwid9mnoqIFK+e0vqoi1qH56JpmZSzEL53jKnNzScdmftJyG5xWg==",
"dev": true,
"requires": {
- "babel-helper-function-name": "^6.24.1",
- "babel-runtime": "^6.26.0",
- "babel-types": "^6.26.0",
- "lodash": "^4.17.4"
+ "@webassemblyjs/helper-numbers": "1.11.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6"
}
},
- "babel-helper-explode-assignable-expression": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz",
- "integrity": "sha512-qe5csbhbvq6ccry9G7tkXbzNtcDiH4r51rrPUbwwoTzZ18AqxWYRZT6AOmxrpxKnQBW0pYlBI/8vh73Z//78nQ==",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.22.0",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
- }
+ "@webassemblyjs/floating-point-hex-parser": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.6.tgz",
+ "integrity": "sha512-ejAj9hfRJ2XMsNHk/v6Fu2dGS+i4UaXBXGemOfQ/JfQ6mdQg/WXtwleQRLLS4OvfDhv8rYnVwH27YJLMyYsxhw==",
+ "dev": true
+ },
+ "@webassemblyjs/helper-api-error": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.6.tgz",
+ "integrity": "sha512-o0YkoP4pVu4rN8aTJgAyj9hC2Sv5UlkzCHhxqWj8butaLvnpdc2jOwh4ewE6CX0txSfLn/UYaV/pheS2Txg//Q==",
+ "dev": true
+ },
+ "@webassemblyjs/helper-buffer": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.12.1.tgz",
+ "integrity": "sha512-nzJwQw99DNDKr9BVCOZcLuJJUlqkJh+kVzVl6Fmq/tI5ZtEyWT1KZMyOXltXLZJmDtvLCDgwsyrkohEtopTXCw==",
+ "dev": true
},
- "babel-helper-explode-class": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-explode-class/-/babel-helper-explode-class-6.24.1.tgz",
- "integrity": "sha512-SFbWewr0/0U4AiRzsHqwsbOQeLXVa9T1ELdqEa2efcQB5KopTnunAqoj07TuHlN2lfTQNPGO/rJR4FMln5fVcA==",
+ "@webassemblyjs/helper-numbers": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.6.tgz",
+ "integrity": "sha512-vUIhZ8LZoIWHBohiEObxVm6hwP034jwmc9kuq5GdHZH0wiLVLIPcMCdpJzG4C11cHoQ25TFIQj9kaVADVX7N3g==",
"dev": true,
"requires": {
- "babel-helper-bindify-decorators": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
+ "@webassemblyjs/floating-point-hex-parser": "1.11.6",
+ "@webassemblyjs/helper-api-error": "1.11.6",
+ "@xtuc/long": "4.2.2"
}
},
- "babel-helper-function-name": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz",
- "integrity": "sha512-Oo6+e2iX+o9eVvJ9Y5eKL5iryeRdsIkwRYheCuhYdVHsdEQysbc2z2QkqCLIYnNxkT5Ss3ggrHdXiDI7Dhrn4Q==",
+ "@webassemblyjs/helper-wasm-bytecode": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.6.tgz",
+ "integrity": "sha512-sFFHKwcmBprO9e7Icf0+gddyWYDViL8bpPjJJl0WHxCdETktXdmtWLGVzoHbqUcY4Be1LkNfwTmXOJUFZYSJdA==",
+ "dev": true
+ },
+ "@webassemblyjs/helper-wasm-section": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.12.1.tgz",
+ "integrity": "sha512-Jif4vfB6FJlUlSbgEMHUyk1j234GTNG9dBJ4XJdOySoj518Xj0oGsNi59cUQF4RRMS9ouBUxDDdyBVfPTypa5g==",
"dev": true,
"requires": {
- "babel-helper-get-function-arity": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/wasm-gen": "1.12.1"
}
},
- "babel-helper-get-function-arity": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz",
- "integrity": "sha512-WfgKFX6swFB1jS2vo+DwivRN4NB8XUdM3ij0Y1gnC21y1tdBoe6xjVnd7NSI6alv+gZXCtJqvrTeMW3fR/c0ng==",
+ "@webassemblyjs/ieee754": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.6.tgz",
+ "integrity": "sha512-LM4p2csPNvbij6U1f19v6WR56QZ8JcHg3QIJTlSwzFcmx6WSORicYj6I63f9yU1kEUtrpG+kjkiIAkevHpDXrg==",
"dev": true,
"requires": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
+ "@xtuc/ieee754": "^1.2.0"
}
},
- "babel-helper-hoist-variables": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz",
- "integrity": "sha512-zAYl3tqerLItvG5cKYw7f1SpvIxS9zi7ohyGHaI9cgDUjAT6YcY9jIEH5CstetP5wHIVSceXwNS7Z5BpJg+rOw==",
+ "@webassemblyjs/leb128": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.6.tgz",
+ "integrity": "sha512-m7a0FhE67DQXgouf1tbN5XQcdWoNgaAuoULHIfGFIEVKA6tu/edls6XnIlkmS6FrXAquJRPni3ZZKjw6FSPjPQ==",
"dev": true,
"requires": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
+ "@xtuc/long": "4.2.2"
}
},
- "babel-helper-optimise-call-expression": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz",
- "integrity": "sha512-Op9IhEaxhbRT8MDXx2iNuMgciu2V8lDvYCNQbDGjdBNCjaMvyLf4wl4A3b8IgndCyQF8TwfgsQ8T3VD8aX1/pA==",
+ "@webassemblyjs/utf8": {
+ "version": "1.11.6",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.6.tgz",
+ "integrity": "sha512-vtXf2wTQ3+up9Zsg8sa2yWiQpzSsMyXj0qViVP6xKGCUT8p8YJ6HqI7l5eCnWx1T/FYdsv07HQs2wTFbbof/RA==",
+ "dev": true
+ },
+ "@webassemblyjs/wasm-edit": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.12.1.tgz",
+ "integrity": "sha512-1DuwbVvADvS5mGnXbE+c9NfA8QRcZ6iKquqjjmR10k6o+zzsRVesil54DKexiowcFCPdr/Q0qaMgB01+SQ1u6g==",
"dev": true,
"requires": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/helper-wasm-section": "1.12.1",
+ "@webassemblyjs/wasm-gen": "1.12.1",
+ "@webassemblyjs/wasm-opt": "1.12.1",
+ "@webassemblyjs/wasm-parser": "1.12.1",
+ "@webassemblyjs/wast-printer": "1.12.1"
}
},
- "babel-helper-regex": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz",
- "integrity": "sha512-VlPiWmqmGJp0x0oK27Out1D+71nVVCTSdlbhIVoaBAj2lUgrNjBCRR9+llO4lTSb2O4r7PJg+RobRkhBrf6ofg==",
+ "@webassemblyjs/wasm-gen": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.12.1.tgz",
+ "integrity": "sha512-TDq4Ojh9fcohAw6OIMXqiIcTq5KUXTGRkVxbSo1hQnSy6lAM5GSdfwWeSxpAo0YzgsgF182E/U0mDNhuA0tW7w==",
"dev": true,
"requires": {
- "babel-runtime": "^6.26.0",
- "babel-types": "^6.26.0",
- "lodash": "^4.17.4"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/ieee754": "1.11.6",
+ "@webassemblyjs/leb128": "1.11.6",
+ "@webassemblyjs/utf8": "1.11.6"
}
},
- "babel-helper-remap-async-to-generator": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-remap-async-to-generator/-/babel-helper-remap-async-to-generator-6.24.1.tgz",
- "integrity": "sha512-RYqaPD0mQyQIFRu7Ho5wE2yvA/5jxqCIj/Lv4BXNq23mHYu/vxikOy2JueLiBxQknwapwrJeNCesvY0ZcfnlHg==",
+ "@webassemblyjs/wasm-opt": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.12.1.tgz",
+ "integrity": "sha512-Jg99j/2gG2iaz3hijw857AVYekZe2SAskcqlWIZXjji5WStnOpVoat3gQfT/Q5tb2djnCjBtMocY/Su1GfxPBg==",
"dev": true,
"requires": {
- "babel-helper-function-name": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-buffer": "1.12.1",
+ "@webassemblyjs/wasm-gen": "1.12.1",
+ "@webassemblyjs/wasm-parser": "1.12.1"
}
},
- "babel-helper-replace-supers": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz",
- "integrity": "sha512-sLI+u7sXJh6+ToqDr57Bv973kCepItDhMou0xCP2YPVmR1jkHSCY+p1no8xErbV1Siz5QE8qKT1WIwybSWlqjw==",
+ "@webassemblyjs/wasm-parser": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.12.1.tgz",
+ "integrity": "sha512-xikIi7c2FHXysxXe3COrVUPSheuBtpcfhbpFj4gmu7KRLYOzANztwUU0IbsqvMqzuNK2+glRGWCEqZo1WCLyAQ==",
"dev": true,
"requires": {
- "babel-helper-optimise-call-expression": "^6.24.1",
- "babel-messages": "^6.23.0",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@webassemblyjs/helper-api-error": "1.11.6",
+ "@webassemblyjs/helper-wasm-bytecode": "1.11.6",
+ "@webassemblyjs/ieee754": "1.11.6",
+ "@webassemblyjs/leb128": "1.11.6",
+ "@webassemblyjs/utf8": "1.11.6"
}
},
- "babel-helpers": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz",
- "integrity": "sha512-n7pFrqQm44TCYvrCDb0MqabAF+JUBq+ijBvNMUxpkLjJaAu32faIexewMumrH5KLLJ1HDyT0PTEqRyAe/GwwuQ==",
+ "@webassemblyjs/wast-printer": {
+ "version": "1.12.1",
+ "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.12.1.tgz",
+ "integrity": "sha512-+X4WAlOisVWQMikjbcvY2e0rwPsKQ9F688lksZhBcPycBBuii3O7m8FACbDMWDojpAqvjIncrG8J0XHKyQfVeA==",
"dev": true,
"requires": {
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
+ "@webassemblyjs/ast": "1.12.1",
+ "@xtuc/long": "4.2.2"
}
},
- "babel-loader": {
- "version": "8.3.0",
- "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz",
- "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==",
+ "@webpack-cli/configtest": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-2.1.1.tgz",
+ "integrity": "sha512-wy0mglZpDSiSS0XHrVR+BAdId2+yxPSoJW8fsna3ZpYSlufjvxnP4YbKTCBZnNIcGN4r6ZPXV55X4mYExOfLmw==",
"dev": true,
- "requires": {
- "find-cache-dir": "^3.3.1",
- "loader-utils": "^2.0.0",
- "make-dir": "^3.1.0",
- "schema-utils": "^2.6.5"
- }
+ "requires": {}
},
- "babel-messages": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz",
- "integrity": "sha512-Bl3ZiA+LjqaMtNYopA9TYE9HP1tQ+E5dLxE0XrAzcIJeK2UqF0/EaqXwBn9esd4UmTfEab+P+UYQ1GnioFIb/w==",
+ "@webpack-cli/info": {
+ "version": "2.0.2",
+ "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-2.0.2.tgz",
+ "integrity": "sha512-zLHQdI/Qs1UyT5UBdWNqsARasIA+AaF8t+4u2aS2nEpBQh2mWIVb8qAklq0eUENnC5mOItrIB4LiS9xMtph18A==",
"dev": true,
- "requires": {
- "babel-runtime": "^6.22.0"
- }
+ "requires": {}
},
- "babel-plugin-check-es2015-constants": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz",
- "integrity": "sha512-B1M5KBP29248dViEo1owyY32lk1ZSH2DaNNrXLGt8lyjjHm7pBqAdQ7VKUPR6EEDO323+OvT3MQXbCin8ooWdA==",
+ "@webpack-cli/serve": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-2.0.5.tgz",
+ "integrity": "sha512-lqaoKnRYBdo1UgDX8uF24AfGMifWK19TxPmM5FHc2vAGxrJ/qtyUyFBWoY1tISZdelsQ5fBcOusifo5o5wSJxQ==",
"dev": true,
- "requires": {
- "babel-runtime": "^6.22.0"
- }
+ "requires": {}
},
- "babel-plugin-istanbul": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz",
- "integrity": "sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA==",
+ "@xtuc/ieee754": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/@xtuc/ieee754/-/ieee754-1.2.0.tgz",
+ "integrity": "sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA==",
+ "dev": true
+ },
+ "@xtuc/long": {
+ "version": "4.2.2",
+ "resolved": "https://registry.npmjs.org/@xtuc/long/-/long-4.2.2.tgz",
+ "integrity": "sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ==",
+ "dev": true
+ },
+ "@yarnpkg/lockfile": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz",
+ "integrity": "sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==",
+ "dev": true
+ },
+ "@yarnpkg/parsers": {
+ "version": "3.0.0-rc.46",
+ "resolved": "https://registry.npmjs.org/@yarnpkg/parsers/-/parsers-3.0.0-rc.46.tgz",
+ "integrity": "sha512-aiATs7pSutzda/rq8fnuPwTglyVwjM22bNnK2ZgjrpAjQHSSl3lztd2f9evst1W/qnC58DRz7T7QndUDumAR4Q==",
"dev": true,
"requires": {
- "@babel/helper-plugin-utils": "^7.0.0",
- "@istanbuljs/load-nyc-config": "^1.0.0",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-instrument": "^5.0.4",
- "test-exclude": "^6.0.0"
+ "js-yaml": "^3.10.0",
+ "tslib": "^2.4.0"
},
"dependencies": {
- "istanbul-lib-instrument": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz",
- "integrity": "sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg==",
+ "argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
"dev": true,
"requires": {
- "@babel/core": "^7.12.3",
- "@babel/parser": "^7.14.7",
- "@istanbuljs/schema": "^0.1.2",
- "istanbul-lib-coverage": "^3.2.0",
- "semver": "^6.3.0"
+ "sprintf-js": "~1.0.2"
}
},
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "js-yaml": {
+ "version": "3.14.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
+ "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
+ "dev": true,
+ "requires": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ }
+ },
+ "sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
"dev": true
}
}
},
- "babel-plugin-polyfill-corejs2": {
- "version": "0.4.11",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz",
- "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==",
+ "@zkochan/js-yaml": {
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/@zkochan/js-yaml/-/js-yaml-0.0.6.tgz",
+ "integrity": "sha512-nzvgl3VfhcELQ8LyVrYOru+UtAy1nrygk2+AGbTm8a5YcO6o8lSjAT+pfg3vJWxIoZKOUhrK6UU7xW/+00kQrg==",
"dev": true,
"requires": {
- "@babel/compat-data": "^7.22.6",
- "@babel/helper-define-polyfill-provider": "^0.6.2",
- "semver": "^6.3.1"
- },
- "dependencies": {
- "semver": {
- "version": "6.3.1",
- "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
- "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
- "dev": true
- }
+ "argparse": "^2.0.1"
}
},
- "babel-plugin-polyfill-corejs3": {
- "version": "0.10.4",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz",
- "integrity": "sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==",
- "dev": true,
- "requires": {
- "@babel/helper-define-polyfill-provider": "^0.6.1",
- "core-js-compat": "^3.36.1"
- }
+ "abbrev": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-2.0.0.tgz",
+ "integrity": "sha512-6/mh1E2u2YgEsCHdY0Yx5oW+61gZU+1vXaoiHHrpKeuRNNgFvS+/jrwHiQhB5apAf5oB7UB7E19ol2R2LKH8hQ==",
+ "dev": true
},
- "babel-plugin-polyfill-regenerator": {
- "version": "0.6.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz",
- "integrity": "sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==",
+ "abort-controller": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz",
+ "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==",
"dev": true,
"requires": {
- "@babel/helper-define-polyfill-provider": "^0.6.2"
+ "event-target-shim": "^5.0.0"
}
},
- "babel-plugin-syntax-async-functions": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-functions/-/babel-plugin-syntax-async-functions-6.13.0.tgz",
- "integrity": "sha512-4Zp4unmHgw30A1eWI5EpACji2qMocisdXhAftfhXoSV9j0Tvj6nRFE3tOmRY912E0FMRm/L5xWE7MGVT2FoLnw==",
- "dev": true
- },
- "babel-plugin-syntax-async-generators": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-async-generators/-/babel-plugin-syntax-async-generators-6.13.0.tgz",
- "integrity": "sha512-EbciFN5Jb9iqU9bqaLmmFLx2G8pAUsvpWJ6OzOWBNrSY9qTohXj+7YfZx6Ug1Qqh7tCb1EA7Jvn9bMC1HBiucg==",
- "dev": true
- },
- "babel-plugin-syntax-class-constructor-call": {
- "version": "6.18.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-constructor-call/-/babel-plugin-syntax-class-constructor-call-6.18.0.tgz",
- "integrity": "sha512-EEuBcXz/wZ81Jaac0LnMHtD4Mfz9XWn2oH2Xj+CHwz2SZWUqqdtR2BgWPSdTGMmxN/5KLSh4PImt9+9ZedDarA==",
- "dev": true
- },
- "babel-plugin-syntax-class-properties": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-class-properties/-/babel-plugin-syntax-class-properties-6.13.0.tgz",
- "integrity": "sha512-chI3Rt9T1AbrQD1s+vxw3KcwC9yHtF621/MacuItITfZX344uhQoANjpoSJZleAmW2tjlolqB/f+h7jIqXa7pA==",
+ "abstract-logging": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/abstract-logging/-/abstract-logging-2.0.1.tgz",
+ "integrity": "sha512-2BjRTZxTPvheOvGbBslFSYOUkr+SjPtOnrLP33f+VIWLzezQpZcqVg7ja3L4dBXmzzgwT+a029jRx5PCi3JuiA==",
"dev": true
},
- "babel-plugin-syntax-decorators": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-decorators/-/babel-plugin-syntax-decorators-6.13.0.tgz",
- "integrity": "sha512-AWj19x2aDm8qFQ5O2JcD6pwJDW1YdcnO+1b81t7gxrGjz5VHiUqeYWAR4h7zueWMalRelrQDXprv2FrY1dbpbw==",
- "dev": true
+ "accepts": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
+ "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
+ "dev": true,
+ "requires": {
+ "mime-types": "~2.1.34",
+ "negotiator": "0.6.3"
+ }
},
- "babel-plugin-syntax-do-expressions": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-do-expressions/-/babel-plugin-syntax-do-expressions-6.13.0.tgz",
- "integrity": "sha512-HD/5qJB9oSXzl0caxM+aRD7ENICXqcc3Up/8toDQk7zNIDE7TzsqtxC5f4t9Rwhu2Ya8l9l4j6b3vOsy+a6qxg==",
- "dev": true
+ "acorn": {
+ "version": "8.11.3",
+ "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.11.3.tgz",
+ "integrity": "sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg=="
},
- "babel-plugin-syntax-dynamic-import": {
- "version": "6.18.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-dynamic-import/-/babel-plugin-syntax-dynamic-import-6.18.0.tgz",
- "integrity": "sha512-MioUE+LfjCEz65Wf7Z/Rm4XCP5k2c+TbMd2Z2JKc7U9uwjBhAfNPE48KC4GTGKhppMeYVepwDBNO/nGY6NYHBA==",
- "dev": true
+ "acorn-import-attributes": {
+ "version": "1.9.5",
+ "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz",
+ "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==",
+ "requires": {}
},
- "babel-plugin-syntax-exponentiation-operator": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz",
- "integrity": "sha512-Z/flU+T9ta0aIEKl1tGEmN/pZiI1uXmCiGFRegKacQfEJzp7iNsKloZmyJlQr+75FCJtiFfGIK03SiCvCt9cPQ==",
- "dev": true
+ "acorn-jsx": {
+ "version": "5.3.2",
+ "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz",
+ "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==",
+ "dev": true,
+ "requires": {}
},
- "babel-plugin-syntax-export-extensions": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-export-extensions/-/babel-plugin-syntax-export-extensions-6.13.0.tgz",
- "integrity": "sha512-Eo0rcRaIDMld/W6mVhePiudIuLW+Cr/8eveW3mBREfZORScZgx4rh6BAPyvzdEc/JZvQ+LkC80t0VGFs6FX+lg==",
- "dev": true
+ "acorn-walk": {
+ "version": "8.3.3",
+ "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.3.tgz",
+ "integrity": "sha512-MxXdReSRhGO7VlFe1bRG/oI7/mdLV9B9JJT0N8vZOhF7gFRR5l3M8W9G8JxmKV+JC5mGqJ0QvqfSOLsCPa4nUw==",
+ "dev": true,
+ "requires": {
+ "acorn": "^8.11.0"
+ }
},
- "babel-plugin-syntax-function-bind": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-function-bind/-/babel-plugin-syntax-function-bind-6.13.0.tgz",
- "integrity": "sha512-m8yMoh9LIiNyeLdQs5I9G+3YXo4nqVsKQkk7YplrG4qAFbNi9hkZlow8HDHxhH9QOVFPHmy8+03NzRCdyChIKw==",
+ "add-stream": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/add-stream/-/add-stream-1.0.0.tgz",
+ "integrity": "sha512-qQLMr+8o0WC4FZGQTcJiKBVC59JylcPSrTtk6usvmIDFUOCKegapy1VHQwRbFMOFyb/inzUVqHs+eMYKDM1YeQ==",
"dev": true
},
- "babel-plugin-syntax-object-rest-spread": {
- "version": "6.13.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-object-rest-spread/-/babel-plugin-syntax-object-rest-spread-6.13.0.tgz",
- "integrity": "sha512-C4Aq+GaAj83pRQ0EFgTvw5YO6T3Qz2KGrNRwIj9mSoNHVvdZY4KO2uA6HNtNXCw993iSZnckY1aLW8nOi8i4+w==",
+ "adm-zip": {
+ "version": "0.5.10",
+ "resolved": "https://registry.npmjs.org/adm-zip/-/adm-zip-0.5.10.tgz",
+ "integrity": "sha512-x0HvcHqVJNTPk/Bw8JbLWlWoo6Wwnsug0fnYYro1HBrjxZ3G7/AZk7Ahv8JwDe1uIcz8eBqvu86FuF1POiG7vQ==",
"dev": true
},
- "babel-plugin-syntax-trailing-function-commas": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-syntax-trailing-function-commas/-/babel-plugin-syntax-trailing-function-commas-6.22.0.tgz",
- "integrity": "sha512-Gx9CH3Q/3GKbhs07Bszw5fPTlU+ygrOGfAhEt7W2JICwufpC4SuO0mG0+4NykPBSYPMJhqvVlDBU17qB1D+hMQ==",
+ "after-all-results": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/after-all-results/-/after-all-results-2.0.0.tgz",
+ "integrity": "sha512-2zHEyuhSJOuCrmas9YV0YL/MFCWLxe1dS6k/ENhgYrb/JqyMnadLN4iIAc9kkZrbElMDyyAGH/0J18OPErOWLg==",
"dev": true
},
- "babel-plugin-transform-async-generator-functions": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-generator-functions/-/babel-plugin-transform-async-generator-functions-6.24.1.tgz",
- "integrity": "sha512-uT7eovUxtXe8Q2ufcjRuJIOL0hg6VAUJhiWJBLxH/evYAw+aqoJLcYTR8hqx13iOx/FfbCMHgBmXWZjukbkyPg==",
- "dev": true,
+ "agent-base": {
+ "version": "7.1.0",
+ "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.0.tgz",
+ "integrity": "sha512-o/zjMZRhJxny7OyEF+Op8X+efiELC7k7yOjMzgfzVqOzXqkBkWI79YoTdOtsuWd5BWhAGAuOY/Xa6xpiaWXiNg==",
"requires": {
- "babel-helper-remap-async-to-generator": "^6.24.1",
- "babel-plugin-syntax-async-generators": "^6.5.0",
- "babel-runtime": "^6.22.0"
+ "debug": "^4.3.4"
}
},
- "babel-plugin-transform-async-to-generator": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-async-to-generator/-/babel-plugin-transform-async-to-generator-6.24.1.tgz",
- "integrity": "sha512-7BgYJujNCg0Ti3x0c/DL3tStvnKS6ktIYOmo9wginv/dfZOrbSZ+qG4IRRHMBOzZ5Awb1skTiAsQXg/+IWkZYw==",
+ "agentkeepalive": {
+ "version": "4.5.0",
+ "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz",
+ "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==",
"dev": true,
"requires": {
- "babel-helper-remap-async-to-generator": "^6.24.1",
- "babel-plugin-syntax-async-functions": "^6.8.0",
- "babel-runtime": "^6.22.0"
+ "humanize-ms": "^1.2.1"
}
},
- "babel-plugin-transform-class-constructor-call": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-constructor-call/-/babel-plugin-transform-class-constructor-call-6.24.1.tgz",
- "integrity": "sha512-RvYukT1Nh7njz8P8326ztpQUGCKwmjgu6aRIx1lkvylWITYcskg29vy1Kp8WXIq7FvhXsz0Crf2kS94bjB690A==",
+ "aggregate-error": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz",
+ "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==",
"dev": true,
"requires": {
- "babel-plugin-syntax-class-constructor-call": "^6.18.0",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
+ "clean-stack": "^2.0.0",
+ "indent-string": "^4.0.0"
}
},
- "babel-plugin-transform-class-properties": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-class-properties/-/babel-plugin-transform-class-properties-6.24.1.tgz",
- "integrity": "sha512-n4jtBA3OYBdvG5PRMKsMXJXHfLYw/ZOmtxCLOOwz6Ro5XlrColkStLnz1AS1L2yfPA9BKJ1ZNlmVCLjAL9DSIg==",
+ "ajv": {
+ "version": "6.12.6",
+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz",
+ "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==",
"dev": true,
"requires": {
- "babel-helper-function-name": "^6.24.1",
- "babel-plugin-syntax-class-properties": "^6.8.0",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
+ "fast-deep-equal": "^3.1.1",
+ "fast-json-stable-stringify": "^2.0.0",
+ "json-schema-traverse": "^0.4.1",
+ "uri-js": "^4.2.2"
}
},
- "babel-plugin-transform-decorators": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-decorators/-/babel-plugin-transform-decorators-6.24.1.tgz",
- "integrity": "sha512-skQ2CImwDkCHu0mkWvCOlBCpBIHW4/49IZWVwV4A/EnWjL9bB6UBvLyMNe3Td5XDStSZNhe69j4bfEW8dvUbew==",
+ "ajv-formats": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ajv-formats/-/ajv-formats-2.1.1.tgz",
+ "integrity": "sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA==",
"dev": true,
"requires": {
- "babel-helper-explode-class": "^6.24.1",
- "babel-plugin-syntax-decorators": "^6.13.0",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-types": "^6.24.1"
+ "ajv": "^8.0.0"
+ },
+ "dependencies": {
+ "ajv": {
+ "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",
+ "json-schema-traverse": "^1.0.0",
+ "require-from-string": "^2.0.2",
+ "uri-js": "^4.2.2"
+ }
+ },
+ "json-schema-traverse": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz",
+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==",
+ "dev": true
+ }
}
},
- "babel-plugin-transform-do-expressions": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-do-expressions/-/babel-plugin-transform-do-expressions-6.22.0.tgz",
- "integrity": "sha512-yQwYqYg+Tnj1InA8W1rsItsZVhkv1Euc4KVua9ledtPz5PDWYz7LVyy6rDBpVYUWFZj5k6GUm3YZpCbIm8Tqew==",
+ "ajv-keywords": {
+ "version": "3.5.2",
+ "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz",
+ "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==",
"dev": true,
- "requires": {
- "babel-plugin-syntax-do-expressions": "^6.8.0",
- "babel-runtime": "^6.22.0"
- }
+ "requires": {}
},
- "babel-plugin-transform-es2015-arrow-functions": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz",
- "integrity": "sha512-PCqwwzODXW7JMrzu+yZIaYbPQSKjDTAsNNlK2l5Gg9g4rz2VzLnZsStvp/3c46GfXpwkyufb3NCyG9+50FF1Vg==",
+ "amqplib": {
+ "version": "0.8.0",
+ "resolved": "https://registry.npmjs.org/amqplib/-/amqplib-0.8.0.tgz",
+ "integrity": "sha512-icU+a4kkq4Y1PS4NNi+YPDMwdlbFcZ1EZTQT2nigW3fvOb6AOgUQ9+Mk4ue0Zu5cBg/XpDzB40oH10ysrk2dmA==",
"dev": true,
"requires": {
- "babel-runtime": "^6.22.0"
+ "bitsyntax": "~0.1.0",
+ "bluebird": "^3.7.2",
+ "buffer-more-ints": "~1.0.0",
+ "readable-stream": "1.x >=1.1.9",
+ "safe-buffer": "~5.2.1",
+ "url-parse": "~1.5.1"
}
},
- "babel-plugin-transform-es2015-block-scoped-functions": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz",
- "integrity": "sha512-2+ujAT2UMBzYFm7tidUsYh+ZoIutxJ3pN9IYrF1/H6dCKtECfhmB8UkHVpyxDwkj0CYbQG35ykoz925TUnBc3A==",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.22.0"
- }
+ "ansi-color": {
+ "version": "0.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-color/-/ansi-color-0.2.1.tgz",
+ "integrity": "sha512-bF6xLaZBLpOQzgYUtYEhJx090nPSZk1BQ/q2oyBK9aMMcJHzx9uXGCjI2Y+LebsN4Jwoykr0V9whbPiogdyHoQ=="
},
- "babel-plugin-transform-es2015-block-scoping": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz",
- "integrity": "sha512-YiN6sFAQ5lML8JjCmr7uerS5Yc/EMbgg9G8ZNmk2E3nYX4ckHR01wrkeeMijEf5WHNK5TW0Sl0Uu3pv3EdOJWw==",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.26.0",
- "babel-template": "^6.26.0",
- "babel-traverse": "^6.26.0",
- "babel-types": "^6.26.0",
- "lodash": "^4.17.4"
- }
+ "ansi-colors": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
+ "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==",
+ "dev": true
},
- "babel-plugin-transform-es2015-classes": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz",
- "integrity": "sha512-5Dy7ZbRinGrNtmWpquZKZ3EGY8sDgIVB4CU8Om8q8tnMLrD/m94cKglVcHps0BCTdZ0TJeeAWOq2TK9MIY6cag==",
+ "ansi-diff-stream": {
+ "version": "1.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-diff-stream/-/ansi-diff-stream-1.2.1.tgz",
+ "integrity": "sha512-PaKs34INoKpTzcjyKd2GM/CCEeTyDgWKuHSgF0z7ywjpbBFj/pzQf/30v+TR6VBBLia6Mso+W2ygU22ljqbi6A==",
"dev": true,
"requires": {
- "babel-helper-define-map": "^6.24.1",
- "babel-helper-function-name": "^6.24.1",
- "babel-helper-optimise-call-expression": "^6.24.1",
- "babel-helper-replace-supers": "^6.24.1",
- "babel-messages": "^6.23.0",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
+ "ansi-regex": "^2.0.0",
+ "buffer-from": "^1.0.0",
+ "through2": "^2.0.1"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
+ "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
+ "dev": true
+ },
+ "readable-stream": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
+ "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "dev": true
+ },
+ "string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "through2": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/through2/-/through2-2.0.5.tgz",
+ "integrity": "sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ==",
+ "dev": true,
+ "requires": {
+ "readable-stream": "~2.3.6",
+ "xtend": "~4.0.1"
+ }
+ }
}
},
- "babel-plugin-transform-es2015-computed-properties": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz",
- "integrity": "sha512-C/uAv4ktFP/Hmh01gMTvYvICrKze0XVX9f2PdIXuriCSvUmV9j+u+BB9f5fJK3+878yMK6dkdcq+Ymr9mrcLzw==",
+ "ansi-escapes": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
+ "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
"dev": true,
"requires": {
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
+ "type-fest": "^0.21.3"
}
},
- "babel-plugin-transform-es2015-destructuring": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz",
- "integrity": "sha512-aNv/GDAW0j/f4Uy1OEPZn1mqD+Nfy9viFGBfQ5bZyT35YqOiqx7/tXdyfZkJ1sC21NyEsBdfDY6PYmLHF4r5iA==",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.22.0"
- }
+ "ansi-regex": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz",
+ "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==",
+ "dev": true
},
- "babel-plugin-transform-es2015-duplicate-keys": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz",
- "integrity": "sha512-ossocTuPOssfxO2h+Z3/Ea1Vo1wWx31Uqy9vIiJusOP4TbF7tPs9U0sJ9pX9OJPf4lXRGj5+6Gkl/HHKiAP5ug==",
+ "ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
"dev": true,
"requires": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
+ "color-convert": "^1.9.0"
}
},
- "babel-plugin-transform-es2015-for-of": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz",
- "integrity": "sha512-DLuRwoygCoXx+YfxHLkVx5/NpeSbVwfoTeBykpJK7JhYWlL/O8hgAK/reforUnZDlxasOrVPPJVI/guE3dCwkw==",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.22.0"
- }
+ "any-promise": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/any-promise/-/any-promise-1.3.0.tgz",
+ "integrity": "sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==",
+ "dev": true
},
- "babel-plugin-transform-es2015-function-name": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz",
- "integrity": "sha512-iFp5KIcorf11iBqu/y/a7DK3MN5di3pNCzto61FqCNnUX4qeBwcV1SLqe10oXNnCaxBUImX3SckX2/o1nsrTcg==",
+ "anymatch": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz",
+ "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==",
"dev": true,
"requires": {
- "babel-helper-function-name": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
+ "normalize-path": "^3.0.0",
+ "picomatch": "^2.0.4"
}
},
- "babel-plugin-transform-es2015-literals": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz",
- "integrity": "sha512-tjFl0cwMPpDYyoqYA9li1/7mGFit39XiNX5DKC/uCNjBctMxyL1/PT/l4rSlbvBG1pOKI88STRdUsWXB3/Q9hQ==",
+ "append-field": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/append-field/-/append-field-1.0.0.tgz",
+ "integrity": "sha512-klpgFSWLW1ZEs8svjfb7g4qWY0YS5imI82dTg+QahUvJ8YqAY0P10Uk8tTyh9ZGuYEZEMaeJYCF5BFuX552hsw==",
"dev": true,
- "requires": {
- "babel-runtime": "^6.22.0"
- }
+ "optional": true,
+ "peer": true
},
- "babel-plugin-transform-es2015-modules-amd": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz",
- "integrity": "sha512-LnIIdGWIKdw7zwckqx+eGjcS8/cl8D74A3BpJbGjKTFFNJSMrjN4bIh22HY1AlkUbeLG6X6OZj56BDvWD+OeFA==",
+ "append-transform": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/append-transform/-/append-transform-2.0.0.tgz",
+ "integrity": "sha512-7yeyCEurROLQJFv5Xj4lEGTy0borxepjFv1g22oAdqFu//SrAlDl1O1Nxx15SH1RoliUml6p8dwJW9jvZughhg==",
"dev": true,
"requires": {
- "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
+ "default-require-extensions": "^3.0.0"
}
},
- "babel-plugin-transform-es2015-modules-commonjs": {
- "version": "6.26.2",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz",
- "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==",
- "dev": true,
- "requires": {
- "babel-plugin-transform-strict-mode": "^6.24.1",
- "babel-runtime": "^6.26.0",
- "babel-template": "^6.26.0",
- "babel-types": "^6.26.0"
- }
+ "aproba": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz",
+ "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==",
+ "dev": true
},
- "babel-plugin-transform-es2015-modules-systemjs": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz",
- "integrity": "sha512-ONFIPsq8y4bls5PPsAWYXH/21Hqv64TBxdje0FvU3MhIV6QM2j5YS7KvAzg/nTIVLot2D2fmFQrFWCbgHlFEjg==",
- "dev": true,
- "requires": {
- "babel-helper-hoist-variables": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
- }
+ "archy": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/archy/-/archy-1.0.0.tgz",
+ "integrity": "sha512-Xg+9RwCg/0p32teKdGMPTPnVXKD0w3DfHnFTficozsAgsvq2XenPJq/MYpzzQ/v8zrOyJn6Ds39VA4JIDwFfqw==",
+ "dev": true
},
- "babel-plugin-transform-es2015-modules-umd": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz",
- "integrity": "sha512-LpVbiT9CLsuAIp3IG0tfbVo81QIhn6pE8xBJ7XSeCtFlMltuar5VuBV6y6Q45tpui9QWcy5i0vLQfCfrnF7Kiw==",
+ "are-we-there-yet": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz",
+ "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==",
"dev": true,
"requires": {
- "babel-plugin-transform-es2015-modules-amd": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1"
+ "delegates": "^1.0.0",
+ "readable-stream": "^3.6.0"
}
},
- "babel-plugin-transform-es2015-object-super": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz",
- "integrity": "sha512-8G5hpZMecb53vpD3mjs64NhI1au24TAmokQ4B+TBFBjN9cVoGoOvotdrMMRmHvVZUEvqGUPWL514woru1ChZMA==",
- "dev": true,
- "requires": {
- "babel-helper-replace-supers": "^6.24.1",
- "babel-runtime": "^6.22.0"
- }
+ "arg": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz",
+ "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==",
+ "dev": true
},
- "babel-plugin-transform-es2015-parameters": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz",
- "integrity": "sha512-8HxlW+BB5HqniD+nLkQ4xSAVq3bR/pcYW9IigY+2y0dI+Y7INFeTbfAQr+63T3E4UDsZGjyb+l9txUnABWxlOQ==",
- "dev": true,
- "requires": {
- "babel-helper-call-delegate": "^6.24.1",
- "babel-helper-get-function-arity": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-template": "^6.24.1",
- "babel-traverse": "^6.24.1",
- "babel-types": "^6.24.1"
- }
+ "argparse": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz",
+ "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==",
+ "dev": true
},
- "babel-plugin-transform-es2015-shorthand-properties": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz",
- "integrity": "sha512-mDdocSfUVm1/7Jw/FIRNw9vPrBQNePy6wZJlR8HAUBLybNp1w/6lr6zZ2pjMShee65t/ybR5pT8ulkLzD1xwiw==",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
- }
+ "array-back": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz",
+ "integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==",
+ "dev": true
},
- "babel-plugin-transform-es2015-spread": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz",
- "integrity": "sha512-3Ghhi26r4l3d0Js933E5+IhHwk0A1yiutj9gwvzmFbVV0sPMYk2lekhOufHBswX7NCoSeF4Xrl3sCIuSIa+zOg==",
+ "array-buffer-byte-length": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz",
+ "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==",
"dev": true,
"requires": {
- "babel-runtime": "^6.22.0"
+ "call-bind": "^1.0.5",
+ "is-array-buffer": "^3.0.4"
}
},
- "babel-plugin-transform-es2015-sticky-regex": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz",
- "integrity": "sha512-CYP359ADryTo3pCsH0oxRo/0yn6UsEZLqYohHmvLQdfS9xkf+MbCzE3/Kolw9OYIY4ZMilH25z/5CbQbwDD+lQ==",
- "dev": true,
- "requires": {
- "babel-helper-regex": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
- }
+ "array-differ": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/array-differ/-/array-differ-3.0.0.tgz",
+ "integrity": "sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg==",
+ "dev": true
},
- "babel-plugin-transform-es2015-template-literals": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz",
- "integrity": "sha512-x8b9W0ngnKzDMHimVtTfn5ryimars1ByTqsfBDwAqLibmuuQY6pgBQi5z1ErIsUOWBdw1bW9FSz5RZUojM4apg==",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.22.0"
- }
+ "array-flatten": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
+ "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg==",
+ "dev": true
+ },
+ "array-ify": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz",
+ "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==",
+ "dev": true
},
- "babel-plugin-transform-es2015-typeof-symbol": {
- "version": "6.23.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz",
- "integrity": "sha512-fz6J2Sf4gYN6gWgRZaoFXmq93X+Li/8vf+fb0sGDVtdeWvxC9y5/bTD7bvfWMEq6zetGEHpWjtzRGSugt5kNqw==",
+ "array-includes": {
+ "version": "3.1.7",
+ "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.7.tgz",
+ "integrity": "sha512-dlcsNBIiWhPkHdOEEKnehA+RNUWDc4UqFtnIXU4uuYDPtA4LDkr7qip2p0VvFAEXNDr0yWZ9PJyIRiGjRLQzwQ==",
"dev": true,
"requires": {
- "babel-runtime": "^6.22.0"
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.2.0",
+ "es-abstract": "^1.22.1",
+ "get-intrinsic": "^1.2.1",
+ "is-string": "^1.0.7"
}
},
- "babel-plugin-transform-es2015-unicode-regex": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz",
- "integrity": "sha512-v61Dbbihf5XxnYjtBN04B/JBvsScY37R1cZT5r9permN1cp+b70DY3Ib3fIkgn1DI9U3tGgBJZVD8p/mE/4JbQ==",
+ "array-union": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/array-union/-/array-union-2.1.0.tgz",
+ "integrity": "sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==",
+ "dev": true
+ },
+ "array.prototype.flat": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.3.2.tgz",
+ "integrity": "sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==",
"dev": true,
"requires": {
- "babel-helper-regex": "^6.24.1",
- "babel-runtime": "^6.22.0",
- "regexpu-core": "^2.0.0"
- },
- "dependencies": {
- "jsesc": {
- "version": "0.5.0",
- "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz",
- "integrity": "sha512-uZz5UnB7u4T9LvwmFqXii7pZSouaRPorGs5who1Ip7VO0wxanFvBL7GkM6dTHlgX+jhBApRetaWpnDabOeTcnA==",
- "dev": true
- },
- "regexpu-core": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz",
- "integrity": "sha512-tJ9+S4oKjxY8IZ9jmjnp/mtytu1u3iyIQAfmI51IKWH6bFf7XR1ybtaO6j7INhZKXOTYADk7V5qxaqLkmNxiZQ==",
- "dev": true,
- "requires": {
- "regenerate": "^1.2.1",
- "regjsgen": "^0.2.0",
- "regjsparser": "^0.1.4"
- }
- },
- "regjsparser": {
- "version": "0.1.5",
- "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz",
- "integrity": "sha512-jlQ9gYLfk2p3V5Ag5fYhA7fv7OHzd1KUH0PRP46xc3TgwjwgROIW572AfYg/X9kaNq/LJnu6oJcFRXlIrGoTRw==",
- "dev": true,
- "requires": {
- "jsesc": "~0.5.0"
- }
- }
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.2.0",
+ "es-abstract": "^1.22.1",
+ "es-shim-unscopables": "^1.0.0"
}
},
- "babel-plugin-transform-exponentiation-operator": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz",
- "integrity": "sha512-LzXDmbMkklvNhprr20//RStKVcT8Cu+SQtX18eMHLhjHf2yFzwtQ0S2f0jQ+89rokoNdmwoSqYzAhq86FxlLSQ==",
+ "array.prototype.flatmap": {
+ "version": "1.3.2",
+ "resolved": "https://registry.npmjs.org/array.prototype.flatmap/-/array.prototype.flatmap-1.3.2.tgz",
+ "integrity": "sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==",
"dev": true,
"requires": {
- "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1",
- "babel-plugin-syntax-exponentiation-operator": "^6.8.0",
- "babel-runtime": "^6.22.0"
+ "call-bind": "^1.0.2",
+ "define-properties": "^1.2.0",
+ "es-abstract": "^1.22.1",
+ "es-shim-unscopables": "^1.0.0"
}
},
- "babel-plugin-transform-export-extensions": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-export-extensions/-/babel-plugin-transform-export-extensions-6.22.0.tgz",
- "integrity": "sha512-mtzELzINaYqdVglyZrDDVwkcFRuE7s6QUFWXxwffKAHB/NkfbJ2NJSytugB43ytIC8UVt30Ereyx+7gNyTkDLg==",
+ "array.prototype.reduce": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/array.prototype.reduce/-/array.prototype.reduce-1.0.7.tgz",
+ "integrity": "sha512-mzmiUCVwtiD4lgxYP8g7IYy8El8p2CSMePvIbTS7gchKir/L1fgJrk0yDKmAX6mnRQFKNADYIk8nNlTris5H1Q==",
"dev": true,
"requires": {
- "babel-plugin-syntax-export-extensions": "^6.8.0",
- "babel-runtime": "^6.22.0"
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.2",
+ "es-array-method-boxes-properly": "^1.0.0",
+ "es-errors": "^1.3.0",
+ "es-object-atoms": "^1.0.0",
+ "is-string": "^1.0.7"
}
},
- "babel-plugin-transform-function-bind": {
- "version": "6.22.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-function-bind/-/babel-plugin-transform-function-bind-6.22.0.tgz",
- "integrity": "sha512-9Ec4KYf1GurT39mlUjDSlN7HWSlB3u3mWRMogQbb+Y88lO0ZM3rJ0ADhPnQwWK9TbO6e/4E+Et1rrfGY9mFimA==",
+ "arraybuffer.prototype.slice": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz",
+ "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==",
"dev": true,
"requires": {
- "babel-plugin-syntax-function-bind": "^6.8.0",
- "babel-runtime": "^6.22.0"
+ "array-buffer-byte-length": "^1.0.1",
+ "call-bind": "^1.0.5",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.22.3",
+ "es-errors": "^1.2.1",
+ "get-intrinsic": "^1.2.3",
+ "is-array-buffer": "^3.0.4",
+ "is-shared-array-buffer": "^1.0.2"
}
},
- "babel-plugin-transform-object-rest-spread": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-object-rest-spread/-/babel-plugin-transform-object-rest-spread-6.26.0.tgz",
- "integrity": "sha512-ocgA9VJvyxwt+qJB0ncxV8kb/CjfTcECUY4tQ5VT7nP6Aohzobm8CDFaQ5FHdvZQzLmf0sgDxB8iRXZXxwZcyA==",
- "dev": true,
- "requires": {
- "babel-plugin-syntax-object-rest-spread": "^6.8.0",
- "babel-runtime": "^6.26.0"
- }
+ "arrify": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
+ "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==",
+ "dev": true
},
- "babel-plugin-transform-regenerator": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz",
- "integrity": "sha512-LS+dBkUGlNR15/5WHKe/8Neawx663qttS6AGqoOUhICc9d1KciBvtrQSuc0PI+CxQ2Q/S1aKuJ+u64GtLdcEZg==",
+ "asn1": {
+ "version": "0.2.6",
+ "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.6.tgz",
+ "integrity": "sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ==",
"dev": true,
"requires": {
- "regenerator-transform": "^0.10.0"
- },
- "dependencies": {
- "regenerator-transform": {
- "version": "0.10.1",
- "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz",
- "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==",
- "dev": true,
- "requires": {
- "babel-runtime": "^6.18.0",
- "babel-types": "^6.19.0",
- "private": "^0.1.6"
- }
- }
+ "safer-buffer": "~2.1.0"
}
},
- "babel-plugin-transform-strict-mode": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz",
- "integrity": "sha512-j3KtSpjyLSJxNoCDrhwiJad8kw0gJ9REGj8/CqL0HeRyLnvUNYV9zcqluL6QJSXh3nfsLEmSLvwRfGzrgR96Pw==",
+ "assert": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/assert/-/assert-2.0.0.tgz",
+ "integrity": "sha512-se5Cd+js9dXJnu6Ag2JFc00t+HmHOen+8Q+L7O9zI0PqQXr20uk2J0XQqMxZEeo5U50o8Nvmmx7dZrl+Ufr35A==",
"dev": true,
"requires": {
- "babel-runtime": "^6.22.0",
- "babel-types": "^6.24.1"
+ "es6-object-assign": "^1.1.0",
+ "is-nan": "^1.2.1",
+ "object-is": "^1.0.1",
+ "util": "^0.12.0"
}
},
- "babel-preset-es2015": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz",
- "integrity": "sha512-XfwUqG1Ry6R43m4Wfob+vHbIVBIqTg/TJY4Snku1iIzeH7mUnwHA8Vagmv+ZQbPwhS8HgsdQvy28Py3k5zpoFQ==",
+ "assert-plus": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz",
+ "integrity": "sha512-NfJ4UzBCcQGLDlQq7nHxH+tv3kyZ0hHQqF5BO6J7tNJeP5do1llPr8dZ8zHonfhAu0PHAdMkSo+8o0wxg9lZWw==",
+ "dev": true
+ },
+ "assertion-error": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/assertion-error/-/assertion-error-1.1.0.tgz",
+ "integrity": "sha512-jgsaNduz+ndvGyFt3uSuWqvy4lCnIJiovtouQN5JZHOKCS2QuhEdbcQHFhVksz2N2U9hXJo8odG7ETyWlEeuDw==",
+ "dev": true
+ },
+ "assertion-error-formatter": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/assertion-error-formatter/-/assertion-error-formatter-3.0.0.tgz",
+ "integrity": "sha512-6YyAVLrEze0kQ7CmJfUgrLHb+Y7XghmL2Ie7ijVa2Y9ynP3LV+VDiwFk62Dn0qtqbmY0BT0ss6p1xxpiF2PYbQ==",
"dev": true,
"requires": {
- "babel-plugin-check-es2015-constants": "^6.22.0",
- "babel-plugin-transform-es2015-arrow-functions": "^6.22.0",
- "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0",
- "babel-plugin-transform-es2015-block-scoping": "^6.24.1",
- "babel-plugin-transform-es2015-classes": "^6.24.1",
- "babel-plugin-transform-es2015-computed-properties": "^6.24.1",
- "babel-plugin-transform-es2015-destructuring": "^6.22.0",
- "babel-plugin-transform-es2015-duplicate-keys": "^6.24.1",
- "babel-plugin-transform-es2015-for-of": "^6.22.0",
- "babel-plugin-transform-es2015-function-name": "^6.24.1",
- "babel-plugin-transform-es2015-literals": "^6.22.0",
- "babel-plugin-transform-es2015-modules-amd": "^6.24.1",
- "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1",
- "babel-plugin-transform-es2015-modules-systemjs": "^6.24.1",
- "babel-plugin-transform-es2015-modules-umd": "^6.24.1",
- "babel-plugin-transform-es2015-object-super": "^6.24.1",
- "babel-plugin-transform-es2015-parameters": "^6.24.1",
- "babel-plugin-transform-es2015-shorthand-properties": "^6.24.1",
- "babel-plugin-transform-es2015-spread": "^6.22.0",
- "babel-plugin-transform-es2015-sticky-regex": "^6.24.1",
- "babel-plugin-transform-es2015-template-literals": "^6.22.0",
- "babel-plugin-transform-es2015-typeof-symbol": "^6.22.0",
- "babel-plugin-transform-es2015-unicode-regex": "^6.24.1",
- "babel-plugin-transform-regenerator": "^6.24.1"
+ "diff": "^4.0.1",
+ "pad-right": "^0.2.2",
+ "repeat-string": "^1.6.1"
}
},
- "babel-preset-stage-0": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-stage-0/-/babel-preset-stage-0-6.24.1.tgz",
- "integrity": "sha512-MJD+xBbpsApbKlzAX0sOBF+VeFaUmv5s8FSOO7SSZpes1QgphCjq/UIGRFWSmQ/0i5bqQjLGCTXGGXqcLQ9JDA==",
+ "ast-types": {
+ "version": "0.13.4",
+ "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.13.4.tgz",
+ "integrity": "sha512-x1FCFnFifvYDDzTaLII71vG5uvDwgtmDTEVWAxrgeiR8VjMONcCXJx7E+USjDtHlwFmt9MysbqgF9b9Vjr6w+w==",
"dev": true,
"requires": {
- "babel-plugin-transform-do-expressions": "^6.22.0",
- "babel-plugin-transform-function-bind": "^6.22.0",
- "babel-preset-stage-1": "^6.24.1"
+ "tslib": "^2.0.1"
}
},
- "babel-preset-stage-1": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-stage-1/-/babel-preset-stage-1-6.24.1.tgz",
- "integrity": "sha512-rn+UOcd7BHDniq1SVxv2/AVVSVI1NK+hfS0I/iR6m6KbOi/aeBRcqBilqO73pd9VUpRXF2HFtlDuC9F2BEQqmg==",
+ "astral-regex": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz",
+ "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==",
+ "dev": true
+ },
+ "async": {
+ "version": "3.2.5",
+ "resolved": "https://registry.npmjs.org/async/-/async-3.2.5.tgz",
+ "integrity": "sha512-baNZyqaaLhyLVKm/DlvdW051MSgO6b8eVfIezl9E5PqWxFgzLm/wQntEW4zOytVburDEr0JlALEpdOFwvErLsg==",
+ "dev": true
+ },
+ "async-mutex": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/async-mutex/-/async-mutex-0.4.0.tgz",
+ "integrity": "sha512-eJFZ1YhRR8UN8eBLoNzcDPcy/jqjsg6I1AP+KvWQX80BqOSW1oJPJXDylPUEeMr2ZQvHgnQ//Lp6f3RQ1zI7HA==",
"dev": true,
"requires": {
- "babel-plugin-transform-class-constructor-call": "^6.24.1",
- "babel-plugin-transform-export-extensions": "^6.22.0",
- "babel-preset-stage-2": "^6.24.1"
+ "tslib": "^2.4.0"
}
},
- "babel-preset-stage-2": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-stage-2/-/babel-preset-stage-2-6.24.1.tgz",
- "integrity": "sha512-9F+nquz+37PrlTSBdpeQBKnQfAMNBnryXw+m4qBh35FNbJPfzZz+sjN2G5Uf1CRedU9PH7fJkTbYijxmkLX8Og==",
+ "asynckit": {
+ "version": "0.4.0",
+ "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz",
+ "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==",
+ "dev": true
+ },
+ "at-least-node": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz",
+ "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==",
+ "dev": true
+ },
+ "atomic-sleep": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/atomic-sleep/-/atomic-sleep-1.0.0.tgz",
+ "integrity": "sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ==",
+ "dev": true
+ },
+ "available-typed-arrays": {
+ "version": "1.0.7",
+ "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz",
+ "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==",
"dev": true,
"requires": {
- "babel-plugin-syntax-dynamic-import": "^6.18.0",
- "babel-plugin-transform-class-properties": "^6.24.1",
- "babel-plugin-transform-decorators": "^6.24.1",
- "babel-preset-stage-3": "^6.24.1"
+ "possible-typed-array-names": "^1.0.0"
}
},
- "babel-preset-stage-3": {
- "version": "6.24.1",
- "resolved": "https://registry.npmjs.org/babel-preset-stage-3/-/babel-preset-stage-3-6.24.1.tgz",
- "integrity": "sha512-eCbEOF8uN0KypFXJmZXn2sTk7bPV9uM5xov7G/7BM08TbQEObsVs0cEWfy6NQySlfk7JBi/t+XJP1JkruYfthA==",
+ "avvio": {
+ "version": "8.3.0",
+ "resolved": "https://registry.npmjs.org/avvio/-/avvio-8.3.0.tgz",
+ "integrity": "sha512-VBVH0jubFr9LdFASy/vNtm5giTrnbVquWBhT0fyizuNK2rQ7e7ONU2plZQWUNqtE1EmxFEb+kbSkFRkstiaS9Q==",
"dev": true,
"requires": {
- "babel-plugin-syntax-trailing-function-commas": "^6.22.0",
- "babel-plugin-transform-async-generator-functions": "^6.24.1",
- "babel-plugin-transform-async-to-generator": "^6.24.1",
- "babel-plugin-transform-exponentiation-operator": "^6.24.1",
- "babel-plugin-transform-object-rest-spread": "^6.22.0"
+ "@fastify/error": "^3.3.0",
+ "archy": "^1.0.0",
+ "debug": "^4.0.0",
+ "fastq": "^1.17.1"
}
},
- "babel-register": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz",
- "integrity": "sha512-veliHlHX06wjaeY8xNITbveXSiI+ASFnOqvne/LaIJIqOWi2Ogmj91KOugEz/hoh/fwMhXNBJPCv8Xaz5CyM4A==",
+ "aws-sdk": {
+ "version": "2.1008.0",
+ "resolved": "https://registry.npmjs.org/aws-sdk/-/aws-sdk-2.1008.0.tgz",
+ "integrity": "sha512-wBEon+ARCuMcwEPpOFZqRT3elBLfLtPqv8jMql3Hsr7Ua5toPlgKMmjf368iTzBNaY7TOZsjLAT9nAhvtSZ++g==",
"dev": true,
"requires": {
- "babel-core": "^6.26.0",
- "babel-runtime": "^6.26.0",
- "core-js": "^2.5.0",
- "home-or-tmp": "^2.0.0",
- "lodash": "^4.17.4",
- "mkdirp": "^0.5.1",
- "source-map-support": "^0.4.15"
+ "buffer": "4.9.2",
+ "events": "1.1.1",
+ "ieee754": "1.1.13",
+ "jmespath": "0.15.0",
+ "querystring": "0.2.0",
+ "sax": "1.2.1",
+ "url": "0.10.3",
+ "uuid": "3.3.2",
+ "xml2js": "0.4.19"
},
"dependencies": {
- "mkdirp": {
- "version": "0.5.6",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
- "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
- "dev": true,
- "requires": {
- "minimist": "^1.2.6"
- }
- },
- "source-map": {
- "version": "0.5.7",
- "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz",
- "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==",
+ "uuid": {
+ "version": "3.3.2",
+ "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz",
+ "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==",
"dev": true
- },
- "source-map-support": {
- "version": "0.4.18",
- "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz",
- "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==",
- "dev": true,
- "requires": {
- "source-map": "^0.5.6"
- }
}
}
},
- "babel-runtime": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz",
- "integrity": "sha512-ITKNuq2wKlW1fJg9sSW52eepoYgZBggvOAHC0u/CYu/qxQ9EVzThCgR69BnSXLHjy2f7SY5zaQ4yt7H9ZVxY2g==",
+ "aws-ssl-profiles": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/aws-ssl-profiles/-/aws-ssl-profiles-1.1.2.tgz",
+ "integrity": "sha512-NZKeq9AfyQvEeNlN0zSYAaWrmBffJh3IELMZfRpJVWgrpEbtEpnjvzqBPf+mxoI287JohRDoa+/nsfqqiZmF6g==",
+ "dev": true
+ },
+ "axios": {
+ "version": "1.6.7",
+ "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.7.tgz",
+ "integrity": "sha512-/hDJGff6/c7u0hDkvkGxR/oy6CbCs8ziCsC7SqmhjfozqiJGc8Z11wrv9z9lYfY4K8l+H9TpjcMDX0xOZmx+RA==",
"dev": true,
"requires": {
- "core-js": "^2.4.0",
- "regenerator-runtime": "^0.11.0"
+ "follow-redirects": "^1.15.4",
+ "form-data": "^4.0.0",
+ "proxy-from-env": "^1.1.0"
}
},
- "babel-template": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz",
- "integrity": "sha512-PCOcLFW7/eazGUKIoqH97sO9A2UYMahsn/yRQ7uOk37iutwjq7ODtcTNF+iFDSHNfkctqsLRjLP7URnOx0T1fg==",
+ "b4a": {
+ "version": "1.6.6",
+ "resolved": "https://registry.npmjs.org/b4a/-/b4a-1.6.6.tgz",
+ "integrity": "sha512-5Tk1HLk6b6ctmjIkAcU/Ujv/1WqiDl0F0JdRCR80VsOcUlHcu7pWeWRlOqQLHfDEsVx9YH/aif5AG4ehoCtTmg==",
+ "dev": true
+ },
+ "babel-loader": {
+ "version": "8.3.0",
+ "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.3.0.tgz",
+ "integrity": "sha512-H8SvsMF+m9t15HNLMipppzkC+Y2Yq+v3SonZyU70RBL/h1gxPkH08Ot8pEE9Z4Kd+czyWJClmFS8qzIP9OZ04Q==",
"dev": true,
"requires": {
- "babel-runtime": "^6.26.0",
- "babel-traverse": "^6.26.0",
- "babel-types": "^6.26.0",
- "babylon": "^6.18.0",
- "lodash": "^4.17.4"
+ "find-cache-dir": "^3.3.1",
+ "loader-utils": "^2.0.0",
+ "make-dir": "^3.1.0",
+ "schema-utils": "^2.6.5"
}
},
- "babel-traverse": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz",
- "integrity": "sha512-iSxeXx7apsjCHe9c7n8VtRXGzI2Bk1rBSOJgCCjfyXb6v1aCqE1KSEpq/8SXuVN8Ka/Rh1WDTF0MDzkvTA4MIA==",
+ "babel-plugin-istanbul": {
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.0.tgz",
+ "integrity": "sha512-C5OzENSx/A+gt7t4VH1I2XsflxyPUmXRFPKBxt33xncdOmq7oROVM3bZv9Ysjjkv8OJYDMa+tKuKMvqU/H3xdw==",
"dev": true,
"requires": {
- "babel-code-frame": "^6.26.0",
- "babel-messages": "^6.23.0",
- "babel-runtime": "^6.26.0",
- "babel-types": "^6.26.0",
- "babylon": "^6.18.0",
- "debug": "^2.6.8",
- "globals": "^9.18.0",
- "invariant": "^2.2.2",
- "lodash": "^4.17.4"
+ "@babel/helper-plugin-utils": "^7.0.0",
+ "@istanbuljs/load-nyc-config": "^1.0.0",
+ "@istanbuljs/schema": "^0.1.3",
+ "istanbul-lib-instrument": "^6.0.2",
+ "test-exclude": "^6.0.0"
},
"dependencies": {
- "debug": {
- "version": "2.6.9",
- "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
- "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "@babel/core": {
+ "version": "7.25.2",
+ "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.25.2.tgz",
+ "integrity": "sha512-BBt3opiCOxUr9euZ5/ro/Xv8/V7yJ5bjYMqG/C1YAo8MIKAnumZalCN+msbci3Pigy4lIQfPUpfMM27HMGaYEA==",
"dev": true,
"requires": {
- "ms": "2.0.0"
+ "@ampproject/remapping": "^2.2.0",
+ "@babel/code-frame": "^7.24.7",
+ "@babel/generator": "^7.25.0",
+ "@babel/helper-compilation-targets": "^7.25.2",
+ "@babel/helper-module-transforms": "^7.25.2",
+ "@babel/helpers": "^7.25.0",
+ "@babel/parser": "^7.25.0",
+ "@babel/template": "^7.25.0",
+ "@babel/traverse": "^7.25.2",
+ "@babel/types": "^7.25.2",
+ "convert-source-map": "^2.0.0",
+ "debug": "^4.1.0",
+ "gensync": "^1.0.0-beta.2",
+ "json5": "^2.2.3",
+ "semver": "^6.3.1"
+ },
+ "dependencies": {
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
+ "dev": true
+ }
}
},
- "globals": {
- "version": "9.18.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz",
- "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==",
- "dev": true
- },
- "ms": {
+ "convert-source-map": {
"version": "2.0.0",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
- "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==",
+ "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz",
+ "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==",
"dev": true
+ },
+ "istanbul-lib-instrument": {
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz",
+ "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/Q==",
+ "dev": true,
+ "requires": {
+ "@babel/core": "^7.23.9",
+ "@babel/parser": "^7.23.9",
+ "@istanbuljs/schema": "^0.1.3",
+ "istanbul-lib-coverage": "^3.2.0",
+ "semver": "^7.5.4"
+ }
}
}
},
- "babel-types": {
- "version": "6.26.0",
- "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz",
- "integrity": "sha512-zhe3V/26rCWsEZK8kZN+HaQj5yQ1CilTObixFzKW1UWjqG7618Twz6YEsCnjfg5gBcJh02DrpCkS9h98ZqDY+g==",
+ "babel-plugin-polyfill-corejs2": {
+ "version": "0.4.11",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.4.11.tgz",
+ "integrity": "sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==",
"dev": true,
"requires": {
- "babel-runtime": "^6.26.0",
- "esutils": "^2.0.2",
- "lodash": "^4.17.4",
- "to-fast-properties": "^1.0.3"
+ "@babel/compat-data": "^7.22.6",
+ "@babel/helper-define-polyfill-provider": "^0.6.2",
+ "semver": "^6.3.1"
},
"dependencies": {
- "to-fast-properties": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz",
- "integrity": "sha512-lxrWP8ejsq+7E3nNjwYmUBMAgjMTZoTI+sdBOpvNyijeDLa29LUn9QaoXAHv4+Z578hbmHHJKZknzxVtvo77og==",
+ "semver": {
+ "version": "6.3.1",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz",
+ "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==",
"dev": true
}
}
},
- "babylon": {
- "version": "6.18.0",
- "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz",
- "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==",
- "dev": true
+ "babel-plugin-polyfill-corejs3": {
+ "version": "0.10.4",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-corejs3/-/babel-plugin-polyfill-corejs3-0.10.4.tgz",
+ "integrity": "sha512-25J6I8NGfa5YkCDogHRID3fVCadIR8/pGl1/spvCkzb6lVn6SR3ojpx9nOn9iEBcUsjY24AmdKm5khcfKdylcg==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-define-polyfill-provider": "^0.6.1",
+ "core-js-compat": "^3.36.1"
+ }
+ },
+ "babel-plugin-polyfill-regenerator": {
+ "version": "0.6.2",
+ "resolved": "https://registry.npmjs.org/babel-plugin-polyfill-regenerator/-/babel-plugin-polyfill-regenerator-0.6.2.tgz",
+ "integrity": "sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==",
+ "dev": true,
+ "requires": {
+ "@babel/helper-define-polyfill-provider": "^0.6.2"
+ }
},
"balanced-match": {
"version": "1.0.2",
@@ -60892,6 +55773,15 @@
"integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==",
"dev": true
},
+ "bindings": {
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz",
+ "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==",
+ "dev": true,
+ "requires": {
+ "file-uri-to-path": "1.0.0"
+ }
+ },
"bitsyntax": {
"version": "0.1.0",
"resolved": "https://registry.npmjs.org/bitsyntax/-/bitsyntax-0.1.0.tgz",
@@ -61024,15 +55914,15 @@
"dev": true
},
"browserslist": {
- "version": "4.23.0",
- "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.0.tgz",
- "integrity": "sha512-QW8HiM1shhT2GuzkvklfjcKDiWFXHOeFCIA/huJPwHsslwcydgk7X+z2zXpEijP98UCY7HbubZt5J2Zgvf0CaQ==",
+ "version": "4.23.3",
+ "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.3.tgz",
+ "integrity": "sha512-btwCFJVjI4YWDNfau8RhZ+B1Q/VLoUITrm3RlP6y1tYGWIOa+InuYiRGXUBXo8nA1qKmHMyLB/iVQg5TT4eFoA==",
"dev": true,
"requires": {
- "caniuse-lite": "^1.0.30001587",
- "electron-to-chromium": "^1.4.668",
- "node-releases": "^2.0.14",
- "update-browserslist-db": "^1.0.13"
+ "caniuse-lite": "^1.0.30001646",
+ "electron-to-chromium": "^1.5.4",
+ "node-releases": "^2.0.18",
+ "update-browserslist-db": "^1.1.0"
}
},
"bson": {
@@ -61140,6 +56030,8 @@
"resolved": "https://registry.npmjs.org/busboy/-/busboy-1.6.0.tgz",
"integrity": "sha512-8SFQbg/0hQ9xy3UNTB0YEnsNBbWfhf7RtnzpL7TkBiTBRfrQ9Fxcnz7VJsleJpyp6rVLvXiuORqjlHi5q+PYuA==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
"streamsearch": "^1.1.0"
}
@@ -61266,9 +56158,9 @@
}
},
"caniuse-lite": {
- "version": "1.0.30001589",
- "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001589.tgz",
- "integrity": "sha512-vNQWS6kI+q6sBlHbh71IIeC+sRwK2N3EDySc/updIGhIee2x5z00J4c1242/5/d6EpEMdOnk/m+6tuk4/tcsqg==",
+ "version": "1.0.30001651",
+ "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001651.tgz",
+ "integrity": "sha512-9Cf+Xv1jJNe1xPZLGuUXLNkE1BoDkqRqYyFJ9TDYSqhduqA4hu4oR9HluGoWYQC/aj8WHjsGVV+bwkh0+tegRg==",
"dev": true
},
"capital-case": {
@@ -62123,7 +57015,9 @@
"version": "0.5.0",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
"integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"cookie-signature": {
"version": "1.0.6",
@@ -62141,12 +57035,6 @@
"keygrip": "~1.1.0"
}
},
- "core-js": {
- "version": "2.6.12",
- "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.12.tgz",
- "integrity": "sha512-Kb2wC0fvsWfQrgk8HU5lW6U/Lcs8+9aaYcy4ZFc6DDlo4nZ7n70dEgE5rtR0oG6ufKDUnrwfWL1mXR5ljDatrQ==",
- "dev": true
- },
"core-js-compat": {
"version": "3.37.1",
"resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.37.1.tgz",
@@ -62192,6 +57080,12 @@
}
}
},
+ "create-require": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz",
+ "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==",
+ "dev": true
+ },
"cross-env": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/cross-env/-/cross-env-7.0.3.tgz",
@@ -62221,72 +57115,6 @@
"which": "^2.0.1"
}
},
- "cross-var": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/cross-var/-/cross-var-1.1.0.tgz",
- "integrity": "sha512-wIcFax9RNm5ayuORUeJ5MLxPbfh8XdZhhUpKutIszU46Fs9UIhEdPJ7+YguM+7FxEj+68hSQVyathVsIu84SiA==",
- "dev": true,
- "requires": {
- "babel-preset-es2015": "^6.18.0",
- "babel-preset-stage-0": "^6.16.0",
- "babel-register": "^6.18.0",
- "cross-spawn": "^5.0.1",
- "exit": "^0.1.2"
- },
- "dependencies": {
- "cross-spawn": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-5.1.0.tgz",
- "integrity": "sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==",
- "dev": true,
- "requires": {
- "lru-cache": "^4.0.1",
- "shebang-command": "^1.2.0",
- "which": "^1.2.9"
- }
- },
- "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==",
- "dev": true,
- "requires": {
- "pseudomap": "^1.0.2",
- "yallist": "^2.1.2"
- }
- },
- "shebang-command": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz",
- "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==",
- "dev": true,
- "requires": {
- "shebang-regex": "^1.0.0"
- }
- },
- "shebang-regex": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
- "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==",
- "dev": true
- },
- "which": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
- "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
- "dev": true,
- "requires": {
- "isexe": "^2.0.0"
- }
- },
- "yallist": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
- "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
- "dev": true
- }
- }
- },
"crypto-random-string": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/crypto-random-string/-/crypto-random-string-2.0.0.tgz",
@@ -62457,6 +57285,15 @@
}
}
},
+ "decompress-response": {
+ "version": "6.0.0",
+ "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz",
+ "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==",
+ "dev": true,
+ "requires": {
+ "mimic-response": "^3.1.0"
+ }
+ },
"dedent": {
"version": "0.7.0",
"resolved": "https://registry.npmjs.org/dedent/-/dedent-0.7.0.tgz",
@@ -62478,6 +57315,12 @@
"integrity": "sha512-bHtC0iYvWhyaTzvV3CZgPeZQqCOBGyGsVV7v4eevpdkLHfiSrXUdBG+qAuSz4RI70sszvjQ1QSZ98An1yNwpSw==",
"dev": true
},
+ "deep-extend": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz",
+ "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==",
+ "dev": true
+ },
"deep-is": {
"version": "0.1.4",
"resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz",
@@ -62791,9 +57634,9 @@
}
},
"electron-to-chromium": {
- "version": "1.4.681",
- "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.681.tgz",
- "integrity": "sha512-1PpuqJUFWoXZ1E54m8bsLPVYwIVCRzvaL+n5cjigGga4z854abDnFRc+cTa2th4S79kyGqya/1xoR7h+Y5G5lg==",
+ "version": "1.5.8",
+ "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.8.tgz",
+ "integrity": "sha512-4Nx0gP2tPNBLTrFxBMHpkQbtn2hidPVr/+/FTtcCiBYTucqc70zRyVZiOLj17Ui3wTO7SQ1/N+hkHYzJjBzt6A==",
"dev": true
},
"emoji-regex": {
@@ -62893,6 +57736,16 @@
"integrity": "sha512-RcyUFKA93/CXH20l4SoVvzZfrSDMOTUS3bWVpTt2FuFP+XYrL8i8oonHP7WInRyVHXh0n/ORtoeiE1os+8qkSw==",
"dev": true
},
+ "enhanced-resolve": {
+ "version": "5.17.1",
+ "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz",
+ "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==",
+ "dev": true,
+ "requires": {
+ "graceful-fs": "^4.2.4",
+ "tapable": "^2.2.0"
+ }
+ },
"enquirer": {
"version": "2.3.6",
"resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz",
@@ -62900,14 +57753,6 @@
"dev": true,
"requires": {
"ansi-colors": "^4.1.1"
- },
- "dependencies": {
- "ansi-colors": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz",
- "integrity": "sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw==",
- "dev": true
- }
}
},
"ent": {
@@ -63704,10 +58549,10 @@
"strip-final-newline": "^2.0.0"
}
},
- "exit": {
- "version": "0.1.2",
- "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz",
- "integrity": "sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ==",
+ "expand-template": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz",
+ "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==",
"dev": true
},
"expect": {
@@ -63730,37 +58575,37 @@
"dev": true
},
"express": {
- "version": "4.19.2",
- "resolved": "https://registry.npmjs.org/express/-/express-4.19.2.tgz",
- "integrity": "sha512-5T6nhjsT+EOMzuck8JjBHARTHfMht0POzlA60WV2pMD3gyXw2LZnZ+ueGdNxG+0calOJcWKbpFcuzLZ91YWq9Q==",
+ "version": "4.20.0",
+ "resolved": "https://registry.npmjs.org/express/-/express-4.20.0.tgz",
+ "integrity": "sha512-pLdae7I6QqShF5PnNTCVn4hI91Dx0Grkn2+IAsMTgMIKuQVte2dN9PeGSSAME2FR8anOhVA62QDIUaWVfEXVLw==",
"dev": true,
"requires": {
"accepts": "~1.3.8",
"array-flatten": "1.1.1",
- "body-parser": "1.20.2",
+ "body-parser": "1.20.3",
"content-disposition": "0.5.4",
"content-type": "~1.0.4",
"cookie": "0.6.0",
"cookie-signature": "1.0.6",
"debug": "2.6.9",
"depd": "2.0.0",
- "encodeurl": "~1.0.2",
+ "encodeurl": "~2.0.0",
"escape-html": "~1.0.3",
"etag": "~1.8.1",
"finalhandler": "1.2.0",
"fresh": "0.5.2",
"http-errors": "2.0.0",
- "merge-descriptors": "1.0.1",
+ "merge-descriptors": "1.0.3",
"methods": "~1.1.2",
"on-finished": "2.4.1",
"parseurl": "~1.3.3",
- "path-to-regexp": "0.1.7",
+ "path-to-regexp": "0.1.10",
"proxy-addr": "~2.0.7",
"qs": "6.11.0",
"range-parser": "~1.2.1",
"safe-buffer": "5.2.1",
- "send": "0.18.0",
- "serve-static": "1.15.0",
+ "send": "0.19.0",
+ "serve-static": "1.16.0",
"setprototypeof": "1.2.0",
"statuses": "2.0.1",
"type-is": "~1.6.18",
@@ -63768,6 +58613,37 @@
"vary": "~1.1.2"
},
"dependencies": {
+ "body-parser": {
+ "version": "1.20.3",
+ "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.3.tgz",
+ "integrity": "sha512-7rAxByjUMqQ3/bHJy7D6OGXvx/MMc4IqBn/X0fcM1QUcAItpZrBEYhWGem+tzXH90c+G01ypMcYJBO9Y30203g==",
+ "dev": true,
+ "requires": {
+ "bytes": "3.1.2",
+ "content-type": "~1.0.5",
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "http-errors": "2.0.0",
+ "iconv-lite": "0.4.24",
+ "on-finished": "2.4.1",
+ "qs": "6.13.0",
+ "raw-body": "2.5.2",
+ "type-is": "~1.6.18",
+ "unpipe": "1.0.0"
+ },
+ "dependencies": {
+ "qs": {
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz",
+ "integrity": "sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg==",
+ "dev": true,
+ "requires": {
+ "side-channel": "^1.0.6"
+ }
+ }
+ }
+ },
"cookie": {
"version": "0.6.0",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.6.0.tgz",
@@ -63783,6 +58659,12 @@
"ms": "2.0.0"
}
},
+ "encodeurl": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz",
+ "integrity": "sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg==",
+ "dev": true
+ },
"finalhandler": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
@@ -63796,8 +58678,28 @@
"parseurl": "~1.3.3",
"statuses": "2.0.1",
"unpipe": "~1.0.0"
+ },
+ "dependencies": {
+ "encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
+ "dev": true
+ }
}
},
+ "merge-descriptors": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz",
+ "integrity": "sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ==",
+ "dev": true
+ },
+ "mime": {
+ "version": "1.6.0",
+ "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz",
+ "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==",
+ "dev": true
+ },
"ms": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
@@ -63805,10 +58707,92 @@
"dev": true
},
"path-to-regexp": {
- "version": "0.1.7",
- "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
- "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ==",
+ "version": "0.1.10",
+ "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.10.tgz",
+ "integrity": "sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==",
"dev": true
+ },
+ "send": {
+ "version": "0.19.0",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.19.0.tgz",
+ "integrity": "sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw==",
+ "dev": true,
+ "requires": {
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "mime": "1.6.0",
+ "ms": "2.1.3",
+ "on-finished": "2.4.1",
+ "range-parser": "~1.2.1",
+ "statuses": "2.0.1"
+ },
+ "dependencies": {
+ "encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
+ "dev": true
+ },
+ "ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "dev": true
+ }
+ }
+ },
+ "serve-static": {
+ "version": "1.16.0",
+ "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.16.0.tgz",
+ "integrity": "sha512-pDLK8zwl2eKaYrs8mrPZBJua4hMplRWJ1tIFksVC3FtBEBnl8dxgeHtsaMS8DhS9i4fLObaon6ABoc4/hQGdPA==",
+ "dev": true,
+ "requires": {
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "parseurl": "~1.3.3",
+ "send": "0.18.0"
+ },
+ "dependencies": {
+ "encodeurl": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
+ "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==",
+ "dev": true
+ },
+ "ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
+ "dev": true
+ },
+ "send": {
+ "version": "0.18.0",
+ "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz",
+ "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==",
+ "dev": true,
+ "requires": {
+ "debug": "2.6.9",
+ "depd": "2.0.0",
+ "destroy": "1.2.0",
+ "encodeurl": "~1.0.2",
+ "escape-html": "~1.0.3",
+ "etag": "~1.8.1",
+ "fresh": "0.5.2",
+ "http-errors": "2.0.0",
+ "mime": "1.6.0",
+ "ms": "2.1.3",
+ "on-finished": "2.4.1",
+ "range-parser": "~1.2.1",
+ "statuses": "2.0.1"
+ }
+ }
+ }
}
}
},
@@ -64165,6 +59149,12 @@
"flat-cache": "^3.0.4"
}
},
+ "file-uri-to-path": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz",
+ "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==",
+ "dev": true
+ },
"file-url": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/file-url/-/file-url-3.0.0.tgz",
@@ -64408,6 +59398,11 @@
"integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==",
"dev": true
},
+ "forwarded-parse": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/forwarded-parse/-/forwarded-parse-2.1.2.tgz",
+ "integrity": "sha512-alTFZZQDKMporBH77856pXgzhEzaUVmLCDk+egLgIgHst3Tpndzz8MnKe+GzRJRfvVdn69HhpW7cmXzvtLvJAw=="
+ },
"fresh": {
"version": "0.5.2",
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
@@ -64837,23 +59832,30 @@
}
}
},
+ "github-from-package": {
+ "version": "0.0.0",
+ "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
+ "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==",
+ "dev": true
+ },
"glob": {
- "version": "10.4.1",
- "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.1.tgz",
- "integrity": "sha512-2jelhlq3E4ho74ZyVLN03oKdAZVUa6UDZzFLVH1H7dnoax+y9qyaq8zBkfDIggjniU19z0wU18y16jMB2eyVIw==",
+ "version": "10.4.5",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.4.5.tgz",
+ "integrity": "sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==",
"dev": true,
"requires": {
"foreground-child": "^3.1.0",
"jackspeak": "^3.1.2",
"minimatch": "^9.0.4",
"minipass": "^7.1.2",
+ "package-json-from-dist": "^1.0.0",
"path-scurry": "^1.11.1"
},
"dependencies": {
"foreground-child": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
- "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
+ "version": "3.3.0",
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.0.tgz",
+ "integrity": "sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==",
"dev": true,
"requires": {
"cross-spawn": "^7.0.0",
@@ -65102,16 +60104,6 @@
"integrity": "sha512-tzcUFauisWKNHaRkN4Wjl/ZA07gENAjFl3J/c480dprkGTg5EQstgaNFqBfUqCq54kZRIEcreTsAgF/m2quD7A==",
"dev": true
},
- "home-or-tmp": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz",
- "integrity": "sha512-ycURW7oUxE2sNiPVw1HVEFsW+ecOpJ5zaj7eC0RlwhibhRBod20muUN8qu/gzx956YrLolVvs1MTXwKgC2rVEg==",
- "dev": true,
- "requires": {
- "os-homedir": "^1.0.0",
- "os-tmpdir": "^1.0.1"
- }
- },
"hosted-git-info": {
"version": "6.1.1",
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-6.1.1.tgz",
@@ -65370,9 +60362,9 @@
}
},
"import-in-the-middle": {
- "version": "1.8.0",
- "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.8.0.tgz",
- "integrity": "sha512-/xQjze8szLNnJ5rvHSzn+dcVXqCAU6Plbk4P24U/jwPmg1wy7IIp9OjKIO5tYue8GSPhDpPDiApQjvBUmWwhsQ==",
+ "version": "1.8.1",
+ "resolved": "https://registry.npmjs.org/import-in-the-middle/-/import-in-the-middle-1.8.1.tgz",
+ "integrity": "sha512-yhRwoHtiLGvmSozNOALgjRPFI6uYsds60EoMqqnXyyv+JOIW/BrrLejuTGBt+bq0T5tLzOHrN0T7xYTm4Qt/ng==",
"requires": {
"acorn": "^8.8.2",
"acorn-import-attributes": "^1.9.5",
@@ -65570,15 +60562,6 @@
"integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==",
"dev": true
},
- "invariant": {
- "version": "2.2.4",
- "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz",
- "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==",
- "dev": true,
- "requires": {
- "loose-envify": "^1.0.0"
- }
- },
"ioredis": {
"version": "5.2.2",
"resolved": "https://registry.npmjs.org/ioredis/-/ioredis-5.2.2.tgz",
@@ -65672,6 +60655,12 @@
"has-tostringtag": "^1.0.0"
}
},
+ "is-buffer": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz",
+ "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==",
+ "dev": true
+ },
"is-builtin-module": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/is-builtin-module/-/is-builtin-module-3.2.1.tgz",
@@ -65742,12 +60731,6 @@
"integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==",
"dev": true
},
- "is-finite": {
- "version": "1.1.0",
- "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.1.0.tgz",
- "integrity": "sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w==",
- "dev": true
- },
"is-fullwidth-code-point": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
@@ -66800,9 +61783,9 @@
"dev": true
},
"karma": {
- "version": "6.4.3",
- "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.3.tgz",
- "integrity": "sha512-LuucC/RE92tJ8mlCwqEoRWXP38UMAqpnq98vktmS9SznSoUPPUJQbc91dHcxcunROvfQjdORVA/YFviH+Xci9Q==",
+ "version": "6.4.4",
+ "resolved": "https://registry.npmjs.org/karma/-/karma-6.4.4.tgz",
+ "integrity": "sha512-LrtUxbdvt1gOpo3gxG+VAJlJAEMhbWlM4YrFQgql98FwF7+K8K12LYO4hnDdUkNjeztYrOXEMqgTajSWgmtI/w==",
"dev": true,
"requires": {
"@colors/colors": "1.5.0",
@@ -68223,7 +63206,8 @@
"lodash.merge": {
"version": "4.6.2",
"resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz",
- "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ=="
+ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==",
+ "dev": true
},
"lodash.mergewith": {
"version": "4.6.2",
@@ -68238,12 +63222,58 @@
"dev": true
},
"log-symbols": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz",
- "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==",
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
+ "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
"dev": true,
"requires": {
- "chalk": "^2.4.2"
+ "chalk": "^4.1.0",
+ "is-unicode-supported": "^0.1.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
}
},
"log-update": {
@@ -68272,9 +63302,9 @@
}
},
"logform": {
- "version": "2.6.0",
- "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.0.tgz",
- "integrity": "sha512-1ulHeNPp6k/LD8H91o7VYFBng5i1BDE7HoKxVbZiGFidS1Rj65qcywLxX+pVfAPoQJEjRdvKcusKwOupHCVOVQ==",
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/logform/-/logform-2.6.1.tgz",
+ "integrity": "sha512-CdaO738xRapbKIMVn2m4F6KTj4j7ooJ8POVnebSgKo3KBz5axNXRAL7ZdRjIV6NOr2Uf4vjtRkxrFETOioCqSA==",
"requires": {
"@colors/colors": "1.6.0",
"@types/triple-beam": "^1.3.2",
@@ -68360,6 +63390,12 @@
}
}
},
+ "lru.min": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/lru.min/-/lru.min-1.1.1.tgz",
+ "integrity": "sha512-FbAj6lXil6t8z4z3j0E5mfRlPzxkySotzUHwRXjlpRh10vc6AI6WN62ehZj82VG7M20rqogJ0GLwar2Xa05a8Q==",
+ "dev": true
+ },
"luxon": {
"version": "3.2.1",
"resolved": "https://registry.npmjs.org/luxon/-/luxon-3.2.1.tgz",
@@ -68887,7 +63923,9 @@
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
"integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"merge-source-map": {
"version": "1.1.0",
@@ -68953,6 +63991,12 @@
"integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
"dev": true
},
+ "mimic-response": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz",
+ "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==",
+ "dev": true
+ },
"min-indent": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz",
@@ -68966,9 +64010,9 @@
"dev": true
},
"minimatch": {
- "version": "9.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.4.tgz",
- "integrity": "sha512-KqWh+VchfxcMNRAJjj2tnsSJdNbHsVgnkBhTNrW7AjVo6OvLtxw8zfT9oLw1JSohlFzJ8jCoTgaoXvJ+kHt6fw==",
+ "version": "9.0.5",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz",
+ "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==",
"dev": true,
"requires": {
"brace-expansion": "^2.0.1"
@@ -69074,490 +64118,278 @@
"minipass": {
"version": "3.3.6",
"resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- }
- }
- },
- "minipass-json-stream": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz",
- "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==",
- "dev": true,
- "requires": {
- "jsonparse": "^1.3.1",
- "minipass": "^3.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- }
- }
- },
- "minipass-pipeline": {
- "version": "1.2.4",
- "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz",
- "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==",
- "dev": true,
- "requires": {
- "minipass": "^3.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- }
- }
- },
- "minipass-sized": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz",
- "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==",
- "dev": true,
- "requires": {
- "minipass": "^3.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- }
- }
- },
- "minizlib": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
- "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
- "dev": true,
- "requires": {
- "minipass": "^3.0.0",
- "yallist": "^4.0.0"
- },
- "dependencies": {
- "minipass": {
- "version": "3.3.6",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
- "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
- }
- }
- },
- "mitt": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz",
- "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==",
- "dev": true
- },
- "mkdirp": {
- "version": "2.1.6",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-2.1.6.tgz",
- "integrity": "sha512-+hEnITedc8LAtIP9u3HJDFIdcLV2vXP33sqLLIzkv1Db1zO/1OxbvYf0Y1OC/S/Qo5dxHXepofhmxL02PsKe+A==",
- "dev": true
- },
- "mkdirp-infer-owner": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz",
- "integrity": "sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw==",
- "dev": true,
- "requires": {
- "chownr": "^2.0.0",
- "infer-owner": "^1.0.4",
- "mkdirp": "^1.0.3"
- },
- "dependencies": {
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true
- }
- }
- },
- "mnemonist": {
- "version": "0.38.3",
- "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.3.tgz",
- "integrity": "sha512-2K9QYubXx/NAjv4VLq1d1Ly8pWNC5L3BrixtdkyTegXWJIqY+zLNDhhX/A+ZwWt70tB1S8H4BE8FLYEFyNoOBw==",
- "dev": true,
- "requires": {
- "obliterator": "^1.6.1"
- }
- },
- "mocha": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/mocha/-/mocha-7.2.0.tgz",
- "integrity": "sha512-O9CIypScywTVpNaRrCAgoUnJgozpIofjKUYmJhiCIJMiuYnLI6otcb1/kpW9/n/tJODHGZ7i8aLQoDVsMtOKQQ==",
- "dev": true,
- "requires": {
- "ansi-colors": "3.2.3",
- "browser-stdout": "1.3.1",
- "chokidar": "3.3.0",
- "debug": "3.2.6",
- "diff": "3.5.0",
- "escape-string-regexp": "1.0.5",
- "find-up": "3.0.0",
- "glob": "7.1.3",
- "growl": "1.10.5",
- "he": "1.2.0",
- "js-yaml": "3.13.1",
- "log-symbols": "3.0.0",
- "minimatch": "3.0.4",
- "mkdirp": "0.5.5",
- "ms": "2.1.1",
- "node-environment-flags": "1.0.6",
- "object.assign": "4.1.0",
- "strip-json-comments": "2.0.1",
- "supports-color": "6.0.0",
- "which": "1.3.1",
- "wide-align": "1.1.3",
- "yargs": "13.3.2",
- "yargs-parser": "13.1.2",
- "yargs-unparser": "1.6.0"
- },
- "dependencies": {
- "argparse": {
- "version": "1.0.10",
- "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
- "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
- "dev": true,
- "requires": {
- "sprintf-js": "~1.0.2"
- }
- },
- "chokidar": {
- "version": "3.3.0",
- "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.3.0.tgz",
- "integrity": "sha512-dGmKLDdT3Gdl7fBUe8XK+gAtGmzy5Fn0XkkWQuYxGIgWVPPse2CxFA5mtrlD0TOHaHjEUqkWNyP1XdHoJES/4A==",
- "dev": true,
- "requires": {
- "anymatch": "~3.1.1",
- "braces": "~3.0.2",
- "fsevents": "~2.1.1",
- "glob-parent": "~5.1.0",
- "is-binary-path": "~2.1.0",
- "is-glob": "~4.0.1",
- "normalize-path": "~3.0.0",
- "readdirp": "~3.2.0"
- }
- },
- "cliui": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
- "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
- "dev": true,
- "requires": {
- "string-width": "^3.1.0",
- "strip-ansi": "^5.2.0",
- "wrap-ansi": "^5.1.0"
- }
- },
- "debug": {
- "version": "3.2.6",
- "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.6.tgz",
- "integrity": "sha512-mel+jf7nrtEl5Pn1Qx46zARXKDpBbvzezse7p7LqINmdoIk8PYP5SySaxEmYv6TZ0JyEKA1hsCId6DIhgITtWQ==",
- "dev": true,
- "requires": {
- "ms": "^2.1.1"
- }
- },
- "diff": {
- "version": "3.5.0",
- "resolved": "https://registry.npmjs.org/diff/-/diff-3.5.0.tgz",
- "integrity": "sha512-A46qtFgd+g7pDZinpnwiRJtxbC1hpgf0uzP3iG89scHk0AUC7A1TGxf5OiiOUv/JMZR8GOt8hL900hV0bOy5xA==",
- "dev": true
- },
- "emoji-regex": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
- "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
- "dev": true
- },
- "find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "dev": true,
- "requires": {
- "locate-path": "^3.0.0"
- }
- },
- "fsevents": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.1.3.tgz",
- "integrity": "sha512-Auw9a4AxqWpa9GUfj370BMPzzyncfBABW8Mab7BGWBYDj4Isgq+cDKtx0i6u9jcX9pQDnswsaaOTgTmA5pEjuQ==",
- "dev": true,
- "optional": true,
- "peer": true
- },
- "glob": {
- "version": "7.1.3",
- "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
- "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^3.0.4",
- "once": "^1.3.0",
- "path-is-absolute": "^1.0.0"
- }
- },
- "glob-parent": {
- "version": "5.1.2",
- "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz",
- "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==",
- "dev": true,
- "requires": {
- "is-glob": "^4.0.1"
- }
- },
- "has-flag": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
- "integrity": "sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==",
- "dev": true
- },
- "is-fullwidth-code-point": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
- "dev": true
- },
- "js-yaml": {
- "version": "3.13.1",
- "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz",
- "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==",
- "dev": true,
- "requires": {
- "argparse": "^1.0.7",
- "esprima": "^4.0.0"
- }
- },
- "locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
- "dev": true,
- "requires": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "minimatch": {
- "version": "3.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
- "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
- "dev": true,
- "requires": {
- "brace-expansion": "^1.1.7"
- }
- },
- "mkdirp": {
- "version": "0.5.5",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
- "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
- "dev": true,
- "requires": {
- "minimist": "^1.2.5"
- }
- },
- "ms": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz",
- "integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==",
- "dev": true
- },
- "object.assign": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.0.tgz",
- "integrity": "sha512-exHJeq6kBKj58mqGyTQ9DFvrZC/eR6OwxzoM9YRoGBqrXYonaFyGiFMuc9VZrXf7DarreEwMpurG3dd+CNyW5w==",
+ "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
"dev": true,
"requires": {
- "define-properties": "^1.1.2",
- "function-bind": "^1.1.1",
- "has-symbols": "^1.0.0",
- "object-keys": "^1.0.11"
+ "yallist": "^4.0.0"
}
},
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ }
+ }
+ },
+ "minipass-json-stream": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz",
+ "integrity": "sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg==",
+ "dev": true,
+ "requires": {
+ "jsonparse": "^1.3.1",
+ "minipass": "^3.0.0"
+ },
+ "dependencies": {
+ "minipass": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+ "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
"dev": true,
"requires": {
- "p-try": "^2.0.0"
+ "yallist": "^4.0.0"
}
},
- "p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ }
+ }
+ },
+ "minipass-pipeline": {
+ "version": "1.2.4",
+ "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz",
+ "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==",
+ "dev": true,
+ "requires": {
+ "minipass": "^3.0.0"
+ },
+ "dependencies": {
+ "minipass": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+ "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
"dev": true,
"requires": {
- "p-limit": "^2.0.0"
+ "yallist": "^4.0.0"
}
},
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"dev": true
- },
- "readdirp": {
- "version": "3.2.0",
- "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.2.0.tgz",
- "integrity": "sha512-crk4Qu3pmXwgxdSgGhgA/eXiJAPQiX4GMOZZMXnqKxHX7TaoL+3gQVo/WeuAiogr07DpnfjIMpXXa+PAIvwPGQ==",
+ }
+ }
+ },
+ "minipass-sized": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz",
+ "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==",
+ "dev": true,
+ "requires": {
+ "minipass": "^3.0.0"
+ },
+ "dependencies": {
+ "minipass": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+ "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
"dev": true,
"requires": {
- "picomatch": "^2.0.4"
+ "yallist": "^4.0.0"
}
},
- "sprintf-js": {
- "version": "1.0.3",
- "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
- "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==",
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
"dev": true
- },
- "string-width": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
- "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+ }
+ }
+ },
+ "minizlib": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz",
+ "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==",
+ "dev": true,
+ "requires": {
+ "minipass": "^3.0.0",
+ "yallist": "^4.0.0"
+ },
+ "dependencies": {
+ "minipass": {
+ "version": "3.3.6",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz",
+ "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==",
"dev": true,
"requires": {
- "emoji-regex": "^7.0.1",
- "is-fullwidth-code-point": "^2.0.0",
- "strip-ansi": "^5.1.0"
+ "yallist": "^4.0.0"
}
},
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "yallist": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
+ "dev": true
+ }
+ }
+ },
+ "mitt": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz",
+ "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==",
+ "dev": true
+ },
+ "mkdirp": {
+ "version": "2.1.6",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-2.1.6.tgz",
+ "integrity": "sha512-+hEnITedc8LAtIP9u3HJDFIdcLV2vXP33sqLLIzkv1Db1zO/1OxbvYf0Y1OC/S/Qo5dxHXepofhmxL02PsKe+A==",
+ "dev": true
+ },
+ "mkdirp-classic": {
+ "version": "0.5.3",
+ "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz",
+ "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==",
+ "dev": true
+ },
+ "mkdirp-infer-owner": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz",
+ "integrity": "sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw==",
+ "dev": true,
+ "requires": {
+ "chownr": "^2.0.0",
+ "infer-owner": "^1.0.4",
+ "mkdirp": "^1.0.3"
+ },
+ "dependencies": {
+ "mkdirp": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+ "dev": true
+ }
+ }
+ },
+ "mnemonist": {
+ "version": "0.38.3",
+ "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.3.tgz",
+ "integrity": "sha512-2K9QYubXx/NAjv4VLq1d1Ly8pWNC5L3BrixtdkyTegXWJIqY+zLNDhhX/A+ZwWt70tB1S8H4BE8FLYEFyNoOBw==",
+ "dev": true,
+ "requires": {
+ "obliterator": "^1.6.1"
+ }
+ },
+ "mocha": {
+ "version": "10.7.3",
+ "resolved": "https://registry.npmjs.org/mocha/-/mocha-10.7.3.tgz",
+ "integrity": "sha512-uQWxAu44wwiACGqjbPYmjo7Lg8sFrS3dQe7PP2FQI+woptP4vZXSMcfMyFL/e1yFEeEpV4RtyTpZROOKmxis+A==",
+ "dev": true,
+ "requires": {
+ "ansi-colors": "^4.1.3",
+ "browser-stdout": "^1.3.1",
+ "chokidar": "^3.5.3",
+ "debug": "^4.3.5",
+ "diff": "^5.2.0",
+ "escape-string-regexp": "^4.0.0",
+ "find-up": "^5.0.0",
+ "glob": "^8.1.0",
+ "he": "^1.2.0",
+ "js-yaml": "^4.1.0",
+ "log-symbols": "^4.1.0",
+ "minimatch": "^5.1.6",
+ "ms": "^2.1.3",
+ "serialize-javascript": "^6.0.2",
+ "strip-json-comments": "^3.1.1",
+ "supports-color": "^8.1.1",
+ "workerpool": "^6.5.1",
+ "yargs": "^16.2.0",
+ "yargs-parser": "^20.2.9",
+ "yargs-unparser": "^2.0.0"
+ },
+ "dependencies": {
+ "brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
"dev": true,
"requires": {
- "ansi-regex": "^4.1.0"
+ "balanced-match": "^1.0.0"
}
},
- "strip-json-comments": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
- "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
- "dev": true
- },
- "supports-color": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-6.0.0.tgz",
- "integrity": "sha512-on9Kwidc1IUQo+bQdhi8+Tijpo0e1SS6RoGo2guUwn5vdaxw8RXOF9Vb2ws+ihWOmh4JnCJOvaziZWP1VABaLg==",
+ "debug": {
+ "version": "4.3.7",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz",
+ "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==",
"dev": true,
"requires": {
- "has-flag": "^3.0.0"
+ "ms": "^2.1.3"
}
},
- "which": {
- "version": "1.3.1",
- "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz",
- "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==",
+ "diff": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/diff/-/diff-5.2.0.tgz",
+ "integrity": "sha512-uIFDxqpRZGZ6ThOk84hEfqWoHx2devRFvpTZcTHur85vImfaxUbTW9Ryh4CpCuDnToOP1CEtXKIgytHBPVff5A==",
+ "dev": true
+ },
+ "escape-string-regexp": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz",
+ "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==",
+ "dev": true
+ },
+ "glob": {
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
+ "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
"dev": true,
"requires": {
- "isexe": "^2.0.0"
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^5.0.1",
+ "once": "^1.3.0"
}
},
- "wrap-ansi": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
- "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
+ "minimatch": {
+ "version": "5.1.6",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
+ "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
"dev": true,
"requires": {
- "ansi-styles": "^3.2.0",
- "string-width": "^3.0.0",
- "strip-ansi": "^5.0.0"
+ "brace-expansion": "^2.0.1"
}
},
- "y18n": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
- "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
+ "ms": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
+ "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==",
"dev": true
},
"yargs": {
- "version": "13.3.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
- "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
+ "version": "16.2.0",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-16.2.0.tgz",
+ "integrity": "sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw==",
"dev": true,
"requires": {
- "cliui": "^5.0.0",
- "find-up": "^3.0.0",
- "get-caller-file": "^2.0.1",
+ "cliui": "^7.0.2",
+ "escalade": "^3.1.1",
+ "get-caller-file": "^2.0.5",
"require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^3.0.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^13.1.2"
+ "string-width": "^4.2.0",
+ "y18n": "^5.0.5",
+ "yargs-parser": "^20.2.2"
}
},
"yargs-parser": {
- "version": "13.1.2",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
- "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
- "dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
+ "version": "20.2.9",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.9.tgz",
+ "integrity": "sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w==",
+ "dev": true
}
}
},
@@ -69580,9 +64412,9 @@
"optional": true
},
"mongodb": {
- "version": "4.17.1",
- "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.17.1.tgz",
- "integrity": "sha512-MBuyYiPUPRTqfH2dV0ya4dcr2E5N52ocBuZ8Sgg/M030nGF78v855B3Z27mZJnp8PxjnUquEnAtjOsphgMZOlQ==",
+ "version": "4.17.2",
+ "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-4.17.2.tgz",
+ "integrity": "sha512-mLV7SEiov2LHleRJPMPrK2PMyhXFZt2UQLC4VD4pnth3jMjYKHhtqfwwkkvS/NXuo/Fp3vbhaNcXrIDaLRb9Tg==",
"dev": true,
"requires": {
"@aws-sdk/credential-providers": "^3.186.0",
@@ -69603,14 +64435,14 @@
}
},
"mongoose": {
- "version": "6.12.3",
- "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.12.3.tgz",
- "integrity": "sha512-MNJymaaXali7w7rHBxVUoQ3HzHHMk/7I/+yeeoSa4rUzdjZwIWQznBNvVgc0A8ghuJwsuIkb5LyLV6gSjGjWyQ==",
+ "version": "6.13.0",
+ "resolved": "https://registry.npmjs.org/mongoose/-/mongoose-6.13.0.tgz",
+ "integrity": "sha512-mieZBTtRIqA2xCGgl9Hlcr6fXU+AKNSOdeKfMYrb/IgdL3M/bDO4kYftsItIy86XyAoT5xV28alfCbMocFG8oA==",
"dev": true,
"requires": {
"bson": "^4.7.2",
"kareem": "2.5.1",
- "mongodb": "4.17.1",
+ "mongodb": "4.17.2",
"mpath": "0.9.0",
"mquery": "4.0.3",
"ms": "2.1.3",
@@ -69650,6 +64482,8 @@
"resolved": "https://registry.npmjs.org/multer/-/multer-1.4.4-lts.1.tgz",
"integrity": "sha512-WeSGziVj6+Z2/MwQo3GvqzgR+9Uc+qt8SwHKh3gvNPiISKfsMfG4SvCOFYlxxgkXt7yIV2i1yczehm0EOKIxIg==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
"append-field": "^1.0.0",
"busboy": "^1.0.0",
@@ -69665,6 +64499,8 @@
"resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
"integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
"buffer-from": "^1.0.0",
"inherits": "^2.0.3",
@@ -69677,6 +64513,8 @@
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz",
"integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
"minimist": "^1.2.6"
}
@@ -69686,6 +64524,8 @@
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz",
"integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
"core-util-is": "~1.0.0",
"inherits": "~2.0.3",
@@ -69700,13 +64540,17 @@
"version": "5.1.2",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"string_decoder": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
"integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
"safe-buffer": "~5.1.0"
}
@@ -69864,17 +64708,18 @@
}
},
"mysql2": {
- "version": "2.3.3",
- "resolved": "https://registry.npmjs.org/mysql2/-/mysql2-2.3.3.tgz",
- "integrity": "sha512-wxJUev6LgMSgACDkb/InIFxDprRa6T95+VEoR+xPvtngtccNH2dGjEB/fVZ8yg1gWv1510c9CvXuJHi5zUm0ZA==",
+ "version": "3.11.3",
+ "resolved": "https://registry.npmjs.org/mysql2/-/mysql2-3.11.3.tgz",
+ "integrity": "sha512-Qpu2ADfbKzyLdwC/5d4W7+5Yz7yBzCU05YWt5npWzACST37wJsB23wgOSo00qi043urkiRwXtEvJc9UnuLX/MQ==",
"dev": true,
"requires": {
- "denque": "^2.0.1",
+ "aws-ssl-profiles": "^1.1.1",
+ "denque": "^2.1.0",
"generate-function": "^2.3.1",
"iconv-lite": "^0.6.3",
- "long": "^4.0.0",
- "lru-cache": "^6.0.0",
- "named-placeholders": "^1.1.2",
+ "long": "^5.2.1",
+ "lru.min": "^1.0.0",
+ "named-placeholders": "^1.1.3",
"seq-queue": "^0.0.5",
"sqlstring": "^2.3.2"
},
@@ -69887,27 +64732,6 @@
"requires": {
"safer-buffer": ">= 2.1.2 < 3.0.0"
}
- },
- "long": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/long/-/long-4.0.0.tgz",
- "integrity": "sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA==",
- "dev": true
- },
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "dev": true,
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==",
- "dev": true
}
}
},
@@ -69958,6 +64782,12 @@
"integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==",
"dev": true
},
+ "napi-build-utils": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz",
+ "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==",
+ "dev": true
+ },
"native-duplexpair": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/native-duplexpair/-/native-duplexpair-1.0.0.tgz",
@@ -70047,6 +64877,15 @@
"propagate": "^2.0.0"
}
},
+ "node-abi": {
+ "version": "3.65.0",
+ "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.65.0.tgz",
+ "integrity": "sha512-ThjYBfoDNr08AWx6hGaRbfPwxKV9kVzAzOzlLKbk2CuqXE2xnCh+cbAGnwM3t8Lq4v9rUB7VfondlkBckcJrVA==",
+ "dev": true,
+ "requires": {
+ "semver": "^7.3.5"
+ }
+ },
"node-abort-controller": {
"version": "3.1.1",
"resolved": "https://registry.npmjs.org/node-abort-controller/-/node-abort-controller-3.1.1.tgz",
@@ -70413,9 +65252,9 @@
}
},
"node-releases": {
- "version": "2.0.14",
- "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz",
- "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==",
+ "version": "2.0.18",
+ "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz",
+ "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==",
"dev": true
},
"nopt": {
@@ -71200,7 +66039,9 @@
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/object-hash/-/object-hash-3.0.0.tgz",
"integrity": "sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"object-inspect": {
"version": "1.13.1",
@@ -71248,16 +66089,18 @@
}
},
"object.getownpropertydescriptors": {
- "version": "2.1.7",
- "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.7.tgz",
- "integrity": "sha512-PrJz0C2xJ58FNn11XV2lr4Jt5Gzl94qpy9Lu0JlfEj14z88sqbSBJCBEzdlNUCzY2gburhbrwOZ5BHCmuNUy0g==",
+ "version": "2.1.8",
+ "resolved": "https://registry.npmjs.org/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.8.tgz",
+ "integrity": "sha512-qkHIGe4q0lSYMv0XI4SsBTJz3WaURhLvd0lKSgtVuOsJ2krg4SgMw3PIRQFMp07yi++UR3se2mkcLqsBNpBb/A==",
"dev": true,
"requires": {
"array.prototype.reduce": "^1.0.6",
- "call-bind": "^1.0.2",
- "define-properties": "^1.2.0",
- "es-abstract": "^1.22.1",
- "safe-array-concat": "^1.0.0"
+ "call-bind": "^1.0.7",
+ "define-properties": "^1.2.1",
+ "es-abstract": "^1.23.2",
+ "es-object-atoms": "^1.0.0",
+ "gopd": "^1.0.1",
+ "safe-array-concat": "^1.1.2"
}
},
"object.values": {
@@ -71412,16 +66255,6 @@
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- }
- },
"supports-color": {
"version": "7.2.0",
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
@@ -71433,12 +66266,6 @@
}
}
},
- "os-homedir": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
- "integrity": "sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==",
- "dev": true
- },
"os-tmpdir": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
@@ -71591,6 +66418,12 @@
"release-zalgo": "^1.0.0"
}
},
+ "package-json-from-dist": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.0.tgz",
+ "integrity": "sha512-dATvCeZN/8wQsGywez1mzHtTlP22H8OEfPrVMLNr4/eGa+ijtLn/6M5f0dY8UKNrC2O9UCU6SSoG3qRKnt7STw==",
+ "dev": true
+ },
"packet-reader": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz",
@@ -71962,9 +66795,9 @@
}
},
"picocolors": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.0.tgz",
- "integrity": "sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ==",
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz",
+ "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==",
"dev": true
},
"picomatch": {
@@ -72193,6 +67026,46 @@
"xtend": "^4.0.0"
}
},
+ "prebuild-install": {
+ "version": "7.1.2",
+ "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.2.tgz",
+ "integrity": "sha512-UnNke3IQb6sgarcZIDU3gbMeTp/9SSU1DAIkil7PrqG1vZlBtY5msYccSKSHDqa3hNg436IXK+SNImReuA1wEQ==",
+ "dev": true,
+ "requires": {
+ "detect-libc": "^2.0.0",
+ "expand-template": "^2.0.3",
+ "github-from-package": "0.0.0",
+ "minimist": "^1.2.3",
+ "mkdirp-classic": "^0.5.3",
+ "napi-build-utils": "^1.0.1",
+ "node-abi": "^3.3.0",
+ "pump": "^3.0.0",
+ "rc": "^1.2.7",
+ "simple-get": "^4.0.0",
+ "tar-fs": "^2.0.0",
+ "tunnel-agent": "^0.6.0"
+ },
+ "dependencies": {
+ "chownr": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz",
+ "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==",
+ "dev": true
+ },
+ "tar-fs": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz",
+ "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==",
+ "dev": true,
+ "requires": {
+ "chownr": "^1.1.1",
+ "mkdirp-classic": "^0.5.2",
+ "pump": "^3.0.0",
+ "tar-stream": "^2.1.4"
+ }
+ }
+ }
+ },
"prelude-ls": {
"version": "1.2.1",
"resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz",
@@ -72233,12 +67106,6 @@
}
}
},
- "private": {
- "version": "0.1.8",
- "resolved": "https://registry.npmjs.org/private/-/private-0.1.8.tgz",
- "integrity": "sha512-VvivMrbvd2nKkiG38qjULzlc+4Vx4wm/whI9pQD35YrARNnhxeiRktSOhSukRLFNlzg6Br/cJPet5J/u19r/mg==",
- "dev": true
- },
"proc-log": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/proc-log/-/proc-log-3.0.0.tgz",
@@ -72554,6 +67421,32 @@
"unpipe": "1.0.0"
}
},
+ "rc": {
+ "version": "1.2.8",
+ "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz",
+ "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==",
+ "dev": true,
+ "requires": {
+ "deep-extend": "^0.6.0",
+ "ini": "~1.3.0",
+ "minimist": "^1.2.0",
+ "strip-json-comments": "~2.0.1"
+ },
+ "dependencies": {
+ "ini": {
+ "version": "1.3.8",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz",
+ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==",
+ "dev": true
+ },
+ "strip-json-comments": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
+ "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==",
+ "dev": true
+ }
+ }
+ },
"react": {
"version": "17.0.2",
"resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz",
@@ -72950,12 +67843,6 @@
"regenerate": "^1.4.2"
}
},
- "regenerator-runtime": {
- "version": "0.11.1",
- "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz",
- "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==",
- "dev": true
- },
"regenerator-transform": {
"version": "0.15.2",
"resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.15.2.tgz",
@@ -73012,12 +67899,6 @@
"unicode-match-property-value-ecmascript": "^2.1.0"
}
},
- "regjsgen": {
- "version": "0.2.0",
- "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz",
- "integrity": "sha512-x+Y3yA24uF68m5GA+tBjbGYo64xXVJpbToBaWCoSNSc1hdk6dfctaRWrNFTVJZIIhL5GxW8zwjoixbnifnK59g==",
- "dev": true
- },
"regjsparser": {
"version": "0.9.1",
"resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.9.1.tgz",
@@ -73050,15 +67931,6 @@
"integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==",
"dev": true
},
- "repeating": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/repeating/-/repeating-2.0.1.tgz",
- "integrity": "sha512-ZqtSMuVybkISo2OWvqvm7iHSWngvdaW3IpsT9/uP8v4gMi591LY6h35wdOfvQdWCKFWZWm2Y1Opp4kV7vQKT6A==",
- "dev": true,
- "requires": {
- "is-finite": "^1.0.0"
- }
- },
"require-directory": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
@@ -73369,9 +68241,9 @@
"dev": true
},
"rimraf": {
- "version": "5.0.5",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.5.tgz",
- "integrity": "sha512-CqDakW+hMe/Bz202FPEymy68P+G50RfMQK+Qo5YUqc9SPipvbGjCGKd0RSKEelbsfQuw3g5NZDSrlZZAJurH1A==",
+ "version": "5.0.10",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-5.0.10.tgz",
+ "integrity": "sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==",
"dev": true,
"requires": {
"glob": "^10.3.7"
@@ -73584,27 +68456,9 @@
"dev": true
},
"semver": {
- "version": "7.6.0",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.0.tgz",
- "integrity": "sha512-EnwXhrlwXMk9gKu5/flx5sv/an57AkRplG3hTK68W7FRDN+k+OWBj65M7719OkA82XLBxrcX0KSHj+X5COhOVg==",
- "requires": {
- "lru-cache": "^6.0.0"
- },
- "dependencies": {
- "lru-cache": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz",
- "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==",
- "requires": {
- "yallist": "^4.0.0"
- }
- },
- "yallist": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz",
- "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A=="
- }
- }
+ "version": "7.6.3",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz",
+ "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A=="
},
"send": {
"version": "0.18.0",
@@ -73665,9 +68519,9 @@
"dev": true
},
"serialize-javascript": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz",
- "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==",
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz",
+ "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
"dev": true,
"requires": {
"randombytes": "^2.1.0"
@@ -73678,6 +68532,8 @@
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz",
"integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==",
"dev": true,
+ "optional": true,
+ "peer": true,
"requires": {
"encodeurl": "~1.0.2",
"escape-html": "~1.0.3",
@@ -73759,12 +68615,12 @@
"integrity": "sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw=="
},
"side-channel": {
- "version": "1.0.5",
- "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.5.tgz",
- "integrity": "sha512-QcgiIWV4WV7qWExbN5llt6frQB/lBven9pqliLXfGPB+K9ZYXxDozp0wLkHS24kWCm+6YXH/f0HhnObZnZOBnQ==",
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.6.tgz",
+ "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==",
"dev": true,
"requires": {
- "call-bind": "^1.0.6",
+ "call-bind": "^1.0.7",
"es-errors": "^1.3.0",
"get-intrinsic": "^1.2.4",
"object-inspect": "^1.13.1"
@@ -73916,6 +68772,23 @@
}
}
},
+ "simple-concat": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz",
+ "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==",
+ "dev": true
+ },
+ "simple-get": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz",
+ "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==",
+ "dev": true,
+ "requires": {
+ "decompress-response": "^6.0.0",
+ "once": "^1.3.1",
+ "simple-concat": "^1.0.0"
+ }
+ },
"simple-lru-cache": {
"version": "0.0.2",
"resolved": "https://registry.npmjs.org/simple-lru-cache/-/simple-lru-cache-0.0.2.tgz",
@@ -74029,9 +68902,9 @@
"dev": true
},
"socket.io": {
- "version": "4.7.4",
- "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.4.tgz",
- "integrity": "sha512-DcotgfP1Zg9iP/dH9zvAQcWrE0TtbMVwXmlV4T4mqsvY+gw+LqUGPfx2AoVyRk0FLME+GQhufDMyacFmw7ksqw==",
+ "version": "4.7.5",
+ "resolved": "https://registry.npmjs.org/socket.io/-/socket.io-4.7.5.tgz",
+ "integrity": "sha512-DmeAkF6cwM9jSfmp6Dr/5/mfMwb5Z5qRrSXLpo3Fq5SqyU8CMF15jIN4ZhfSwu35ksM1qmHZDQ/DK5XTccSTvA==",
"dev": true,
"requires": {
"accepts": "~1.3.4",
@@ -74054,9 +68927,9 @@
}
},
"socket.io-client": {
- "version": "4.7.4",
- "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.4.tgz",
- "integrity": "sha512-wh+OkeF0rAVCrABWQBaEjLfb7DVPotMbu0cgWgyR0v6eA4EoVnAwcIeIbcdTE3GT/H3kbdLl7OoH2+asoDRIIg==",
+ "version": "4.7.5",
+ "resolved": "https://registry.npmjs.org/socket.io-client/-/socket.io-client-4.7.5.tgz",
+ "integrity": "sha512-sJ/tqHOCe7Z50JCBCXrsY3I2k03iOiUe+tj1OmKeD2lXPiGH/RUCdTZFoqVyN7l1MnpIzPrGtLcijffmeouNlQ==",
"dev": true,
"requires": {
"@socket.io/component-emitter": "~3.1.0",
@@ -74302,14 +69175,15 @@
"dev": true
},
"sqlite3": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.6.tgz",
- "integrity": "sha512-olYkWoKFVNSSSQNvxVUfjiVbz3YtBwTJj+mfV5zpHmqW3sELx2Cf4QCdirMelhM5Zh+KDVaKgQHqCxrqiWHybw==",
+ "version": "5.1.7",
+ "resolved": "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.7.tgz",
+ "integrity": "sha512-GGIyOiFaG+TUra3JIfkI/zGP8yZYLPQ0pl1bH+ODjiX57sPhrLU5sQJn1y9bDKZUFYkX1crlrPfSYt0BKKdkog==",
"dev": true,
"requires": {
- "@mapbox/node-pre-gyp": "^1.0.0",
- "node-addon-api": "^4.2.0",
+ "bindings": "^1.5.0",
+ "node-addon-api": "^7.0.0",
"node-gyp": "8.x",
+ "prebuild-install": "^7.1.1",
"tar": "^6.1.11"
},
"dependencies": {
@@ -74346,9 +69220,9 @@
}
},
"node-addon-api": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-4.3.0.tgz",
- "integrity": "sha512-73sE9+3UaLYYFmDsFZnqCInzPyh3MqIwZO9cw58yIqAZhONrrabrYyYe3TuIqtIiOuTXVhsGau8hcrhhwSsDIQ==",
+ "version": "7.1.1",
+ "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz",
+ "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==",
"dev": true
},
"node-gyp": {
@@ -74551,7 +69425,9 @@
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/streamsearch/-/streamsearch-1.1.0.tgz",
"integrity": "sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg==",
- "dev": true
+ "dev": true,
+ "optional": true,
+ "peer": true
},
"streamx": {
"version": "2.16.1",
@@ -74764,6 +69640,12 @@
}
}
},
+ "tapable": {
+ "version": "2.2.1",
+ "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
+ "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
+ "dev": true
+ },
"tar": {
"version": "6.1.11",
"resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz",
@@ -74930,15 +69812,6 @@
"ajv": "^6.12.5",
"ajv-keywords": "^3.5.2"
}
- },
- "serialize-javascript": {
- "version": "6.0.2",
- "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.2.tgz",
- "integrity": "sha512-Saa1xPByTTq2gdeFZYLLo+RFE35NHZkAbqZeWNd3BpzppeVisAqpDjcp8dyf6uIvEqJRd46jemmyA4iFIeVk8g==",
- "dev": true,
- "requires": {
- "randombytes": "^2.1.0"
- }
}
}
},
@@ -74966,46 +69839,12 @@
"which": "^2.0.2"
},
"dependencies": {
- "ansi-styles": {
- "version": "4.3.0",
- "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
- "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
- "dev": true,
- "requires": {
- "color-convert": "^2.0.1"
- }
- },
- "chalk": {
- "version": "4.1.2",
- "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
- "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.1.0",
- "supports-color": "^7.1.0"
- }
- },
"cli-spinners": {
"version": "2.9.2",
"resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz",
"integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==",
"dev": true
},
- "color-convert": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
- "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
- "dev": true,
- "requires": {
- "color-name": "~1.1.4"
- }
- },
- "color-name": {
- "version": "1.1.4",
- "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
- "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
- "dev": true
- },
"is-ci": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/is-ci/-/is-ci-3.0.1.tgz",
@@ -75014,25 +69853,6 @@
"requires": {
"ci-info": "^3.2.0"
}
- },
- "log-symbols": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz",
- "integrity": "sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==",
- "dev": true,
- "requires": {
- "chalk": "^4.1.0",
- "is-unicode-supported": "^0.1.0"
- }
- },
- "supports-color": {
- "version": "7.2.0",
- "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
- "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
- "dev": true,
- "requires": {
- "has-flag": "^4.0.0"
- }
}
}
},
@@ -75258,17 +70078,75 @@
"integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==",
"dev": true
},
- "trim-right": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/trim-right/-/trim-right-1.0.1.tgz",
- "integrity": "sha512-WZGXGstmCWgeevgTL54hrCuw1dyMQIzWy7ZfqRJfSmJZBwklI15egmQytFP6bPidmw3M8d5yEowl1niq4vmqZw==",
- "dev": true
- },
"triple-beam": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz",
"integrity": "sha512-aZbgViZrg1QNcG+LULa7nhZpJTZSLm/mXnHXnbAbjmN5aSa0y7V+wvv6+4WaBtpISJzThKy+PIPxc1Nq1EJ9mg=="
},
+ "ts-loader": {
+ "version": "9.5.1",
+ "resolved": "https://registry.npmjs.org/ts-loader/-/ts-loader-9.5.1.tgz",
+ "integrity": "sha512-rNH3sK9kGZcH9dYzC7CewQm4NtxJTjSEVRJ2DyBZR7f8/wcta+iV44UPCXc5+nzDzivKtlzV6c9P4e+oFhDLYg==",
+ "dev": true,
+ "requires": {
+ "chalk": "^4.1.0",
+ "enhanced-resolve": "^5.0.0",
+ "micromatch": "^4.0.0",
+ "semver": "^7.3.4",
+ "source-map": "^0.7.4"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "source-map": {
+ "version": "0.7.4",
+ "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.4.tgz",
+ "integrity": "sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ }
+ }
+ },
"ts-mocha": {
"version": "10.0.0",
"resolved": "https://registry.npmjs.org/ts-mocha/-/ts-mocha-10.0.0.tgz",
@@ -75277,22 +70155,6 @@
"requires": {
"ts-node": "7.0.1",
"tsconfig-paths": "^3.5.0"
- }
- },
- "ts-node": {
- "version": "7.0.1",
- "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz",
- "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==",
- "dev": true,
- "requires": {
- "arrify": "^1.0.0",
- "buffer-from": "^1.1.0",
- "diff": "^3.1.0",
- "make-error": "^1.1.1",
- "minimist": "^1.2.0",
- "mkdirp": "^0.5.1",
- "source-map-support": "^0.5.6",
- "yn": "^2.0.0"
},
"dependencies": {
"diff": {
@@ -75309,9 +70171,52 @@
"requires": {
"minimist": "^1.2.6"
}
+ },
+ "ts-node": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-7.0.1.tgz",
+ "integrity": "sha512-BVwVbPJRspzNh2yfslyT1PSbl5uIk03EZlb493RKHN4qej/D06n1cEhjlOJG69oFsE7OT8XjpTUcYf6pKTLMhw==",
+ "dev": true,
+ "requires": {
+ "arrify": "^1.0.0",
+ "buffer-from": "^1.1.0",
+ "diff": "^3.1.0",
+ "make-error": "^1.1.1",
+ "minimist": "^1.2.0",
+ "mkdirp": "^0.5.1",
+ "source-map-support": "^0.5.6",
+ "yn": "^2.0.0"
+ }
+ },
+ "yn": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz",
+ "integrity": "sha512-uTv8J/wiWTgUTg+9vLTi//leUl5vDQS6uii/emeTb2ssY7vl6QWf2fFbIIGjnhjvbdKlU0ed7QPgY1htTC86jQ==",
+ "dev": true
}
}
},
+ "ts-node": {
+ "version": "10.9.2",
+ "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz",
+ "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==",
+ "dev": true,
+ "requires": {
+ "@cspotcode/source-map-support": "^0.8.0",
+ "@tsconfig/node10": "^1.0.7",
+ "@tsconfig/node12": "^1.0.7",
+ "@tsconfig/node14": "^1.0.0",
+ "@tsconfig/node16": "^1.0.2",
+ "acorn": "^8.4.1",
+ "acorn-walk": "^8.1.1",
+ "arg": "^4.1.0",
+ "create-require": "^1.1.0",
+ "diff": "^4.0.1",
+ "make-error": "^1.1.1",
+ "v8-compile-cache-lib": "^3.0.1",
+ "yn": "3.1.1"
+ }
+ },
"tsconfig-paths": {
"version": "3.15.0",
"resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.15.0.tgz",
@@ -75501,6 +70406,15 @@
}
}
},
+ "tunnel-agent": {
+ "version": "0.6.0",
+ "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz",
+ "integrity": "sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "^5.0.1"
+ }
+ },
"tweetnacl": {
"version": "0.14.5",
"resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz",
@@ -75777,13 +70691,13 @@
"dev": true
},
"update-browserslist-db": {
- "version": "1.0.13",
- "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz",
- "integrity": "sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg==",
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz",
+ "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==",
"dev": true,
"requires": {
- "escalade": "^3.1.1",
- "picocolors": "^1.0.0"
+ "escalade": "^3.1.2",
+ "picocolors": "^1.0.1"
}
},
"upper-case-first": {
@@ -75880,6 +70794,12 @@
"integrity": "sha512-ocyWc3bAHBB/guyqJQVI5o4BZkPhznPYUG2ea80Gond/BgNWpap8TOmLSeeQG7bnh2KMISxskdADG59j7zruhw==",
"dev": true
},
+ "v8-compile-cache-lib": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz",
+ "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==",
+ "dev": true
+ },
"v8-to-istanbul": {
"version": "9.2.0",
"resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.2.0.tgz",
@@ -76018,22 +70938,20 @@
"dev": true
},
"webpack": {
- "version": "5.91.0",
- "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.91.0.tgz",
- "integrity": "sha512-rzVwlLeBWHJbmgTC/8TvAcu5vpJNII+MelQpylD4jNERPwpBJOE2lEcko1zJX3QJeLjTTAnQxn/OJ8bjDzVQaw==",
+ "version": "5.94.0",
+ "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.94.0.tgz",
+ "integrity": "sha512-KcsGn50VT+06JH/iunZJedYGUJS5FGjow8wb9c0v5n1Om8O1g4L6LjtfxwlXIATopoQu+vOXXa7gYisWxCoPyg==",
"dev": true,
- "peer": true,
"requires": {
- "@types/eslint-scope": "^3.7.3",
"@types/estree": "^1.0.5",
"@webassemblyjs/ast": "^1.12.1",
"@webassemblyjs/wasm-edit": "^1.12.1",
"@webassemblyjs/wasm-parser": "^1.12.1",
"acorn": "^8.7.1",
- "acorn-import-assertions": "^1.9.0",
+ "acorn-import-attributes": "^1.9.5",
"browserslist": "^4.21.10",
"chrome-trace-event": "^1.0.2",
- "enhanced-resolve": "^5.16.0",
+ "enhanced-resolve": "^5.17.1",
"es-module-lexer": "^1.2.1",
"eslint-scope": "5.1.1",
"events": "^3.2.0",
@@ -76050,49 +70968,28 @@
"webpack-sources": "^3.2.3"
},
"dependencies": {
- "enhanced-resolve": {
- "version": "5.17.0",
- "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz",
- "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==",
- "dev": true,
- "peer": true,
- "requires": {
- "graceful-fs": "^4.2.4",
- "tapable": "^2.2.0"
- }
- },
"events": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz",
"integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==",
- "dev": true,
- "peer": true
+ "dev": true
},
"json-parse-even-better-errors": {
"version": "2.3.1",
"resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz",
"integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==",
- "dev": true,
- "peer": true
+ "dev": true
},
"schema-utils": {
"version": "3.3.0",
"resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.3.0.tgz",
"integrity": "sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==",
"dev": true,
- "peer": true,
"requires": {
"@types/json-schema": "^7.0.8",
"ajv": "^6.12.5",
"ajv-keywords": "^3.5.2"
}
- },
- "tapable": {
- "version": "2.2.1",
- "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.1.tgz",
- "integrity": "sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==",
- "dev": true,
- "peer": true
}
}
},
@@ -76259,12 +71156,12 @@
}
},
"winston-transport": {
- "version": "4.7.0",
- "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.7.0.tgz",
- "integrity": "sha512-ajBj65K5I7denzer2IYW6+2bNIVqLGDHqDw3Ow8Ohh+vdW+rv4MZ6eiDvHoKhfJFZ2auyN8byXieDDJ96ViONg==",
+ "version": "4.7.1",
+ "resolved": "https://registry.npmjs.org/winston-transport/-/winston-transport-4.7.1.tgz",
+ "integrity": "sha512-wQCXXVgfv/wUPOfb2x0ruxzwkcZfxcktz6JIMUaPLmcNhO4bZTwA/WtDWK74xV3F2dKu8YadrFv0qhwYjVEwhA==",
"requires": {
- "logform": "^2.3.2",
- "readable-stream": "^3.6.0",
+ "logform": "^2.6.1",
+ "readable-stream": "^3.6.2",
"triple-beam": "^1.3.0"
}
},
@@ -76312,9 +71209,9 @@
"dev": true
},
"workerpool": {
- "version": "6.2.1",
- "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.2.1.tgz",
- "integrity": "sha512-ILEIE97kDZvF9Wb9f6h5aXK4swSlKGUcOEGiIYb2OOu/IrDU9iwj0fD//SsA6E5ibwJxpEvhullJY4Sl4GcpAw==",
+ "version": "6.5.1",
+ "resolved": "https://registry.npmjs.org/workerpool/-/workerpool-6.5.1.tgz",
+ "integrity": "sha512-Fs4dNYcsdpYSAfVxhnl1L5zTksjvOJxtC5hzMNl+1t9B8hTJTdKDyZ5ju7ztgPy+ft9tBFXoOlDNiOT9WUXZlA==",
"dev": true
},
"wrap-ansi": {
@@ -76608,161 +71505,34 @@
"dev": true
},
"yargs-unparser": {
- "version": "1.6.0",
- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-1.6.0.tgz",
- "integrity": "sha512-W9tKgmSn0DpSatfri0nx52Joq5hVXgeLiqR/5G0sZNDoLZFOr/xjBUDcShCOGNsBnEMNo1KAMBkTej1Hm62HTw==",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz",
+ "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==",
"dev": true,
"requires": {
- "flat": "^4.1.0",
- "lodash": "^4.17.15",
- "yargs": "^13.3.0"
+ "camelcase": "^6.0.0",
+ "decamelize": "^4.0.0",
+ "flat": "^5.0.2",
+ "is-plain-obj": "^2.1.0"
},
"dependencies": {
- "cliui": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
- "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
- "dev": true,
- "requires": {
- "string-width": "^3.1.0",
- "strip-ansi": "^5.2.0",
- "wrap-ansi": "^5.1.0"
- }
- },
- "emoji-regex": {
- "version": "7.0.3",
- "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
- "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
- "dev": true
- },
- "find-up": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
- "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
- "dev": true,
- "requires": {
- "locate-path": "^3.0.0"
- }
- },
- "flat": {
- "version": "4.1.1",
- "resolved": "https://registry.npmjs.org/flat/-/flat-4.1.1.tgz",
- "integrity": "sha512-FmTtBsHskrU6FJ2VxCnsDb84wu9zhmO3cUX2kGFb5tuwhfXxGciiT0oRY+cck35QmG+NmGh5eLz6lLCpWTqwpA==",
- "dev": true,
- "requires": {
- "is-buffer": "~2.0.3"
- }
- },
- "is-buffer": {
- "version": "2.0.5",
- "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz",
- "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==",
- "dev": true
- },
- "is-fullwidth-code-point": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
- "integrity": "sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==",
+ "camelcase": {
+ "version": "6.3.0",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz",
+ "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==",
"dev": true
},
- "locate-path": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
- "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
- "dev": true,
- "requires": {
- "p-locate": "^3.0.0",
- "path-exists": "^3.0.0"
- }
- },
- "p-limit": {
- "version": "2.3.0",
- "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
- "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
- "dev": true,
- "requires": {
- "p-try": "^2.0.0"
- }
- },
- "p-locate": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
- "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
- "dev": true,
- "requires": {
- "p-limit": "^2.0.0"
- }
- },
- "path-exists": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
- "integrity": "sha512-bpC7GYwiDYQ4wYLe+FA8lhRjhQCMcQGuSgGGqDkg/QerRWw9CmGRT0iSOVRSZJ29NMLZgIzqaljJ63oaL4NIJQ==",
+ "decamelize": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz",
+ "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==",
"dev": true
},
- "string-width": {
- "version": "3.1.0",
- "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
- "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
- "dev": true,
- "requires": {
- "emoji-regex": "^7.0.1",
- "is-fullwidth-code-point": "^2.0.0",
- "strip-ansi": "^5.1.0"
- }
- },
- "strip-ansi": {
- "version": "5.2.0",
- "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
- "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
- "dev": true,
- "requires": {
- "ansi-regex": "^4.1.0"
- }
- },
- "wrap-ansi": {
- "version": "5.1.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
- "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
- "dev": true,
- "requires": {
- "ansi-styles": "^3.2.0",
- "string-width": "^3.0.0",
- "strip-ansi": "^5.0.0"
- }
- },
- "y18n": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
- "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
+ "is-plain-obj": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz",
+ "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==",
"dev": true
- },
- "yargs": {
- "version": "13.3.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
- "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
- "dev": true,
- "requires": {
- "cliui": "^5.0.0",
- "find-up": "^3.0.0",
- "get-caller-file": "^2.0.1",
- "require-directory": "^2.1.1",
- "require-main-filename": "^2.0.0",
- "set-blocking": "^2.0.0",
- "string-width": "^3.0.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^13.1.2"
- }
- },
- "yargs-parser": {
- "version": "13.1.2",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
- "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
- "dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
}
}
},
@@ -76783,9 +71553,9 @@
"dev": true
},
"yn": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/yn/-/yn-2.0.0.tgz",
- "integrity": "sha512-uTv8J/wiWTgUTg+9vLTi//leUl5vDQS6uii/emeTb2ssY7vl6QWf2fFbIIGjnhjvbdKlU0ed7QPgY1htTC86jQ==",
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz",
+ "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==",
"dev": true
},
"yocto-queue": {
diff --git a/package.json b/package.json
index 74dbe0ce2e..09705c8907 100644
--- a/package.json
+++ b/package.json
@@ -12,23 +12,22 @@
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"scripts": {
- "clean": "lerna run clean",
- "precompile": "tsc --version && npm run version:update",
- "version:update": "lerna run version:update",
- "compile": "lerna run compile",
- "prewatch": "npm run precompile",
- "test": "lerna run test",
- "test:ci:changed": "lerna run test --since origin/main",
- "test:browser": "lerna run test:browser --concurrency 1",
- "test-all-versions": "npm run --if-present --workspaces test-all-versions",
- "bump": "lerna publish",
+ "clean": "nx run-many -t clean",
+ "version:update": "nx run-many -t version:update",
+ "compile": "nx run-many -t compile",
+ "test": "nx run-many -t test",
+ "test:browser": "nx run-many -t test:browser",
+ "test:ci:changed": "nx affected -t test --base=origin/main --head=HEAD",
+ "test-all-versions": "nx run-many -t test-all-versions",
"changelog": "lerna-changelog",
- "lint": "lerna run lint",
- "lint:fix": "lerna run lint:fix",
+ "lint": "nx run-many -t lint && npm run lint:readme && npm run lint:markdown",
+ "lint:fix": "nx run-many -t lint:fix && npm run lint:markdown:fix",
+ "lint:deps": "npx --yes knip@5.33.3 --dependencies --production --tags=-knipignore",
"lint:examples": "eslint ./examples/**/*.js",
"lint:examples:fix": "eslint ./examples/**/*.js --fix",
"lint:markdown": "markdownlint-cli2 $(git ls-files '*.md')",
- "lint:markdown:fix": "markdownlint-cli2 --fix $(git ls-files '*.md')"
+ "lint:markdown:fix": "markdownlint-cli2 --fix $(git ls-files '*.md')",
+ "lint:readme": "nx run-many -t lint:readme"
},
"keywords": [
"opentelemetry",
@@ -55,9 +54,12 @@
"lerna-changelog": "2.2.0",
"markdownlint-cli2": "0.13.0",
"minimatch": "^9.0.3",
+ "nx": "15.9.7",
+ "mocha": "^10.7.3",
"prettier": "2.8.8",
- "semver": "^7.6.0",
"process": "0.11.10",
+ "semver": "^7.6.0",
+ "ts-node": "10.9.2",
"util": "0.12.5"
},
"changelog": {
diff --git a/packages/baggage-span-processor/package.json b/packages/baggage-span-processor/package.json
index f61aa0e39a..a3a105ffbd 100644
--- a/packages/baggage-span-processor/package.json
+++ b/packages/baggage-span-processor/package.json
@@ -10,11 +10,10 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/baggage-span-processor --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts",
+ "test": "nyc mocha test/**/*.test.ts",
"version:update": "node ../../scripts/version-update.js",
"watch": "tsc -w"
},
@@ -47,12 +46,10 @@
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"expect": "29.2.0",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/baggage-span-processor#readme"
diff --git a/packages/baggage-span-processor/src/index.ts b/packages/baggage-span-processor/src/index.ts
index 23a4aa44e7..2faf967b81 100644
--- a/packages/baggage-span-processor/src/index.ts
+++ b/packages/baggage-span-processor/src/index.ts
@@ -14,5 +14,5 @@
* limitations under the License.
*/
-export * from './baggage-span-processor';
-export * from './types';
+export { BaggageSpanProcessor } from './baggage-span-processor';
+export { ALLOW_ALL_BAGGAGE_KEYS, BaggageKeyPredicate } from './types';
diff --git a/packages/baggage-span-processor/test/baggage-span-processor.test.ts b/packages/baggage-span-processor/test/baggage-span-processor.test.ts
index fdc19560c8..0efba4af43 100644
--- a/packages/baggage-span-processor/test/baggage-span-processor.test.ts
+++ b/packages/baggage-span-processor/test/baggage-span-processor.test.ts
@@ -16,12 +16,7 @@
import { BaggageSpanProcessor } from '../src/baggage-span-processor';
import { ALLOW_ALL_BAGGAGE_KEYS } from '../src/types';
-import {
- propagation,
- ROOT_CONTEXT,
- SpanKind,
- TraceFlags,
-} from '@opentelemetry/api';
+import { propagation, ROOT_CONTEXT, SpanKind } from '@opentelemetry/api';
import { BasicTracerProvider, Span } from '@opentelemetry/sdk-trace-base';
import { expect } from 'expect';
@@ -39,17 +34,14 @@ describe('BaggageSpanProcessor with all keys filter', () => {
let span: Span;
beforeEach(() => {
- span = new Span(
- new BasicTracerProvider().getTracer('baggage-testing'),
- ROOT_CONTEXT,
+ const tracer = new BasicTracerProvider().getTracer('baggage-testing');
+ span = tracer.startSpan(
'Edward W. Span',
{
- traceId: 'e4cda95b652f4a1592b449d5929fda1b',
- spanId: '7e0c63257de34c92',
- traceFlags: TraceFlags.SAMPLED,
+ kind: SpanKind.SERVER,
},
- SpanKind.SERVER
- );
+ ROOT_CONTEXT
+ ) as Span;
});
it('onStart adds current Baggage entries to a span as attributes', () => {
@@ -91,17 +83,14 @@ describe('BaggageSpanProcessor with startWith key filter', () => {
let span: Span;
beforeEach(() => {
- span = new Span(
- new BasicTracerProvider().getTracer('baggage-testing'),
- ROOT_CONTEXT,
+ const tracer = new BasicTracerProvider().getTracer('baggage-testing');
+ span = tracer.startSpan(
'Edward W. Span',
{
- traceId: 'e4cda95b652f4a1592b449d5929fda1b',
- spanId: '7e0c63257de34c92',
- traceFlags: TraceFlags.SAMPLED,
+ kind: SpanKind.SERVER,
},
- SpanKind.SERVER
- );
+ ROOT_CONTEXT
+ ) as Span;
});
it('should only add baggage entries that match filter', () => {
@@ -131,17 +120,14 @@ describe('BaggageSpanProcessor with regex key filter', () => {
let span: Span;
beforeEach(() => {
- span = new Span(
- new BasicTracerProvider().getTracer('baggage-testing'),
- ROOT_CONTEXT,
+ const tracer = new BasicTracerProvider().getTracer('baggage-testing');
+ span = tracer.startSpan(
'Edward W. Span',
{
- traceId: 'e4cda95b652f4a1592b449d5929fda1b',
- spanId: '7e0c63257de34c92',
- traceFlags: TraceFlags.SAMPLED,
+ kind: SpanKind.SERVER,
},
- SpanKind.SERVER
- );
+ ROOT_CONTEXT
+ ) as Span;
});
it('should only add baggage entries that match filter', () => {
diff --git a/packages/esbuild-plugin-node/package.json b/packages/esbuild-plugin-node/package.json
index 38324ceb99..1d8006eb95 100644
--- a/packages/esbuild-plugin-node/package.json
+++ b/packages/esbuild-plugin-node/package.json
@@ -38,7 +38,7 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.9.0",
- "@opentelemetry/sdk-node": "^0.52.0",
+ "@opentelemetry/sdk-node": "^0.54.0",
"@types/mocha": "7.0.2",
"@types/node": "18.6.5",
"fastify": "4.15.0",
@@ -51,9 +51,9 @@
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/auto-instrumentations-node": "0.47.1",
- "@opentelemetry/instrumentation": "^0.52.0",
- "esbuild": "0.21.x"
+ "@opentelemetry/auto-instrumentations-node": "0.52.1",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "esbuild": "0.24.x"
},
"files": [
"build/src/**/*.js",
diff --git a/packages/esbuild-plugin-node/test/plugin.test.ts b/packages/esbuild-plugin-node/test/plugin.test.ts
index 3dd1a739fe..19a1179362 100644
--- a/packages/esbuild-plugin-node/test/plugin.test.ts
+++ b/packages/esbuild-plugin-node/test/plugin.test.ts
@@ -16,7 +16,7 @@
import * as assert from 'assert';
-import { SpawnSyncReturns, exec as execCb, spawnSync } from 'child_process';
+import { exec as execCb, spawnSync } from 'child_process';
import { promisify } from 'util';
diff --git a/packages/opentelemetry-host-metrics/CHANGELOG.md b/packages/opentelemetry-host-metrics/CHANGELOG.md
index 7eb4e1e938..4db5391541 100644
--- a/packages/opentelemetry-host-metrics/CHANGELOG.md
+++ b/packages/opentelemetry-host-metrics/CHANGELOG.md
@@ -1,5 +1,19 @@
# Changelog
+## [0.35.4](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/host-metrics-v0.35.3...host-metrics-v0.35.4) (2024-10-08)
+
+
+### Bug Fixes
+
+* **host-metrics:** widen MeterProvider type restriction in BaseMetrics class ([#2428](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2428)) ([cb89486](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/cb89486f7ade51769acdc78f10d978e711b1ab3e))
+
+## [0.35.3](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/host-metrics-v0.35.2...host-metrics-v0.35.3) (2024-07-03)
+
+
+### Bug Fixes
+
+* **host-metrics:** make host metrics constructor options optional ([#2300](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2300)) ([16bff40](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/16bff40d1bf5d3729db235c90f560b4e3387c13c))
+
## [0.35.2](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/host-metrics-v0.35.1...host-metrics-v0.35.2) (2024-06-06)
diff --git a/packages/opentelemetry-host-metrics/README.md b/packages/opentelemetry-host-metrics/README.md
index 46952bd1a3..587c5e57a7 100644
--- a/packages/opentelemetry-host-metrics/README.md
+++ b/packages/opentelemetry-host-metrics/README.md
@@ -36,7 +36,7 @@ const meterProvider = new MeterProvider({
readers: [reader],
});
-const hostMetrics = new HostMetrics({ meterProvider, name: 'example-host-metrics' });
+const hostMetrics = new HostMetrics({ meterProvider });
hostMetrics.start();
```
diff --git a/packages/opentelemetry-host-metrics/package.json b/packages/opentelemetry-host-metrics/package.json
index 3bb3ddd307..23cbf62681 100644
--- a/packages/opentelemetry-host-metrics/package.json
+++ b/packages/opentelemetry-host-metrics/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/host-metrics",
- "version": "0.35.2",
+ "version": "0.35.4",
"description": "OpenTelemetry Host Metrics for Node.js",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,11 +10,10 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/host-metrics --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts",
+ "test": "nyc mocha test/**/*.test.ts",
"version:update": "node ../../scripts/version-update.js",
"watch": "tsc -w"
},
@@ -44,18 +43,16 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/sdk-metrics": "^1.8.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/sdk-metrics": "^1.8.0",
"systeminformation": "5.22.9"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/opentelemetry-host-metrics#readme"
diff --git a/packages/opentelemetry-host-metrics/src/BaseMetrics.ts b/packages/opentelemetry-host-metrics/src/BaseMetrics.ts
index a4f2232820..ff39b8475f 100644
--- a/packages/opentelemetry-host-metrics/src/BaseMetrics.ts
+++ b/packages/opentelemetry-host-metrics/src/BaseMetrics.ts
@@ -14,9 +14,9 @@
* limitations under the License.
*/
-import { Meter, diag, metrics } from '@opentelemetry/api';
-import { MeterProvider } from '@opentelemetry/sdk-metrics';
+import { Meter, MeterProvider, diag, metrics } from '@opentelemetry/api';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
/**
@@ -25,12 +25,8 @@ import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
export interface MetricsCollectorConfig {
// Meter Provider
meterProvider?: MeterProvider;
- // Character to be used to join metrics - default is "."
- metricNameSeparator?: string;
// Name of component
- name: string;
- // metric export endpoint
- url?: string;
+ name?: string;
}
const DEFAULT_NAME = PACKAGE_NAME;
@@ -43,12 +39,14 @@ export abstract class BaseMetrics {
protected _meter: Meter;
private _name: string;
- constructor(config: MetricsCollectorConfig) {
- this._name = config.name || DEFAULT_NAME;
- const meterProvider = config.meterProvider || metrics.getMeterProvider();
- if (!config.meterProvider) {
+ constructor(config?: MetricsCollectorConfig) {
+ // Do not use `??` operator to allow falling back to default when the
+ // specified name is an empty string.
+ this._name = config?.name || DEFAULT_NAME;
+ if (config?.meterProvider == null) {
this._logger.warn('No meter provider, using default');
}
+ const meterProvider = config?.meterProvider ?? metrics.getMeterProvider();
this._meter = meterProvider.getMeter(this._name, PACKAGE_VERSION);
}
diff --git a/packages/opentelemetry-host-metrics/test/metric.test.ts b/packages/opentelemetry-host-metrics/test/metric.test.ts
index c98ad92636..f3844e57e9 100644
--- a/packages/opentelemetry-host-metrics/test/metric.test.ts
+++ b/packages/opentelemetry-host-metrics/test/metric.test.ts
@@ -103,9 +103,7 @@ describe('Host Metrics', () => {
describe('constructor', () => {
it('should create a new instance', () => {
- const hostMetrics = new HostMetrics({
- name: 'opentelemetry-host-metrics',
- });
+ const hostMetrics = new HostMetrics();
assert.ok(hostMetrics instanceof HostMetrics);
});
@@ -114,7 +112,6 @@ describe('Host Metrics', () => {
const hostMetrics = new HostMetrics({
meterProvider,
- name: 'opentelemetry-host-metrics',
});
hostMetrics.start();
assert.ok(hostMetrics instanceof HostMetrics);
diff --git a/packages/opentelemetry-id-generator-aws-xray/README.md b/packages/opentelemetry-id-generator-aws-xray/README.md
index 8c7d77604d..f3ce28564a 100644
--- a/packages/opentelemetry-id-generator-aws-xray/README.md
+++ b/packages/opentelemetry-id-generator-aws-xray/README.md
@@ -12,7 +12,7 @@ enabling compatibility with AWS X-Ray.
| Maturity | [Component Owner](../../.github/component_owners.yml) | Compatibility |
| -------------------------------------- | ----------------------------------------------------- | --------------------- |
-| [Stable](../../CONTRIBUTING.md#stable) | @carolabadeer | API 1.0+
SDK 1.0+ |
+| [Stable](../../CONTRIBUTING.md#stable) | @jj22ee | API 1.0+
SDK 1.0+ |
## Installation
diff --git a/packages/opentelemetry-id-generator-aws-xray/package.json b/packages/opentelemetry-id-generator-aws-xray/package.json
index 03fd94813f..20c6a6392f 100644
--- a/packages/opentelemetry-id-generator-aws-xray/package.json
+++ b/packages/opentelemetry-id-generator-aws-xray/package.json
@@ -15,11 +15,10 @@
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/id-generator-aws-xray --include-dependencies",
"prewatch": "npm run precompile",
"compile": "tsc --build tsconfig.json tsconfig.esm.json",
"clean": "tsc --build --clean tsconfig.json tsconfig.esm.json",
- "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts",
+ "test": "nyc mocha test/**/*.test.ts",
"test:browser": "nyc karma start --single-run",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
@@ -55,27 +54,24 @@
"@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.0.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0"
},
diff --git a/packages/opentelemetry-propagation-utils/CHANGELOG.md b/packages/opentelemetry-propagation-utils/CHANGELOG.md
index 8b378afad8..a46d65c9b3 100644
--- a/packages/opentelemetry-propagation-utils/CHANGELOG.md
+++ b/packages/opentelemetry-propagation-utils/CHANGELOG.md
@@ -1,5 +1,23 @@
# Changelog
+## [0.30.12](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagation-utils-v0.30.11...propagation-utils-v0.30.12) (2024-10-25)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.30.11](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagation-utils-v0.30.10...propagation-utils-v0.30.11) (2024-09-02)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
## [0.30.10](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/propagation-utils-v0.30.9...propagation-utils-v0.30.10) (2024-06-06)
diff --git a/packages/opentelemetry-propagation-utils/package.json b/packages/opentelemetry-propagation-utils/package.json
index ca0cd27bee..bff486b5f2 100644
--- a/packages/opentelemetry-propagation-utils/package.json
+++ b/packages/opentelemetry-propagation-utils/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/propagation-utils",
- "version": "0.30.10",
+ "version": "0.30.12",
"description": "Propagation utilities for opentelemetry instrumentations",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -12,11 +12,10 @@
"compile": "tsc --build tsconfig.json tsconfig.esm.json",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/propagation-utils --include-dependencies",
"prepublishOnly": "npm run compile",
"prewatch": "npm run precompile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"watch": "tsc --build --watch tsconfig.json tsconfig.esm.json"
},
"repository": "open-telemetry/opentelemetry-js-contrib",
@@ -43,15 +42,13 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@types/mocha": "^9.1.1",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"@types/sinon": "^10.0.11",
"expect": "29.2.0",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
}
}
diff --git a/packages/opentelemetry-redis-common/package.json b/packages/opentelemetry-redis-common/package.json
index 57ea62092b..4627a99167 100644
--- a/packages/opentelemetry-redis-common/package.json
+++ b/packages/opentelemetry-redis-common/package.json
@@ -11,10 +11,9 @@
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
"compile": "tsc --build tsconfig.json",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/redis-common --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"watch": "tsc -w"
},
"repository": "open-telemetry/opentelemetry-js-contrib",
@@ -38,10 +37,8 @@
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/redis-common#readme",
"devDependencies": {
"@types/mocha": "^9.1.1",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
}
}
diff --git a/packages/opentelemetry-sql-common/package.json b/packages/opentelemetry-sql-common/package.json
index f4ba7ad04a..0c47fb33c3 100644
--- a/packages/opentelemetry-sql-common/package.json
+++ b/packages/opentelemetry-sql-common/package.json
@@ -11,10 +11,9 @@
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
"compile": "tsc --build tsconfig.json",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/sql-common --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"watch": "tsc -w"
},
"repository": "open-telemetry/opentelemetry-js-contrib",
@@ -46,10 +45,8 @@
"devDependencies": {
"@opentelemetry/api": "^1.1.0",
"@types/mocha": "^7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
}
}
diff --git a/packages/opentelemetry-test-utils/CHANGELOG.md b/packages/opentelemetry-test-utils/CHANGELOG.md
index d3d0cc41d4..1befd4fe52 100644
--- a/packages/opentelemetry-test-utils/CHANGELOG.md
+++ b/packages/opentelemetry-test-utils/CHANGELOG.md
@@ -1,5 +1,21 @@
# Changelog
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/contrib-test-utils-v0.41.0...contrib-test-utils-v0.42.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/contrib-test-utils-v0.40.0...contrib-test-utils-v0.41.0) (2024-09-02)
+
+
+### Features
+
+* **opentelemetry-test-utils:** export class TestMetricReader ([7054bc1](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/7054bc14001843d32b2cc044ebc77caa3c94d1dd))
+* **opentelemetry-test-utils:** export class TestMetricReader ([7e27039](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/7e270395feca8a1b9a703491b189df41bcef5b79))
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/contrib-test-utils-v0.39.0...contrib-test-utils-v0.40.0) (2024-06-06)
diff --git a/packages/opentelemetry-test-utils/README.md b/packages/opentelemetry-test-utils/README.md
index 62219eb7c3..57dec0f383 100644
--- a/packages/opentelemetry-test-utils/README.md
+++ b/packages/opentelemetry-test-utils/README.md
@@ -28,7 +28,7 @@ Since [root hook plugin](https://mochajs.org/#root-hook-plugins) are used, this
1. Add dev dependency on this package:
```sh
-npm install @opentelemetry/test-utils --save-dev
+npm install @opentelemetry/contrib-test-utils --save-dev
```
1. [`require`](https://mochajs.org/#-require-module-r-module) this package in mocha invocation:
@@ -37,22 +37,22 @@ As command line argument option to mocha:
```js
"scripts": {
- "test": "mocha --require @opentelemetry/test-utils",
- "test:jaeger": "OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require @opentelemetry/test-utils",
+ "test": "mocha --require @opentelemetry/contrib-test-utils",
+ "test:jaeger": "OTEL_EXPORTER_JAEGER_AGENT_HOST=localhost mocha --require @opentelemetry/contrib-test-utils",
},
``
Or by using config file / package.json config:
```js
"mocha": {
- "require": [ "@opentelemetry/test-utils" ]
+ "require": [ "@opentelemetry/contrib-test-utils" ]
}
```
1. In your `.spec` file, import `registerInstrumentationTesting` and `getTestSpans` functions and use them to create instrumentation class instance and make assertions in the test:
```js
-import { getTestSpans, registerInstrumentationTesting } from '@opentelemetry/test-utils';
+import { getTestSpans, registerInstrumentationTesting } from '@opentelemetry/contrib-test-utils';
const instrumentation = registerInstrumentationTesting(new MyAwesomeInstrumentation());
diff --git a/packages/opentelemetry-test-utils/package.json b/packages/opentelemetry-test-utils/package.json
index 3228db3c5f..68401ca666 100644
--- a/packages/opentelemetry-test-utils/package.json
+++ b/packages/opentelemetry-test-utils/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/contrib-test-utils",
- "version": "0.40.0",
+ "version": "0.42.0",
"description": "Test utilities for opentelemetry components",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -11,7 +11,6 @@
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
"compile": "tsc -p .",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/contrib-test-utils --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"watch": "tsc -w"
@@ -40,17 +39,19 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"typescript": "4.4.4"
},
"dependencies": {
"@opentelemetry/core": "^1.0.0",
"@opentelemetry/exporter-jaeger": "^1.3.1",
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/otlp-transformer": "^0.54.0",
"@opentelemetry/resources": "^1.8.0",
- "@opentelemetry/sdk-node": "^0.52.0",
+ "@opentelemetry/sdk-metrics": "^1.27.0",
+ "@opentelemetry/sdk-node": "^0.54.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
}
}
diff --git a/packages/opentelemetry-test-utils/src/test-fixtures.ts b/packages/opentelemetry-test-utils/src/test-fixtures.ts
index 21064bc193..ff0dd9e313 100644
--- a/packages/opentelemetry-test-utils/src/test-fixtures.ts
+++ b/packages/opentelemetry-test-utils/src/test-fixtures.ts
@@ -55,6 +55,15 @@ export function createTestNodeSdk(opts: {
return sdk;
}
+export enum OtlpSpanKind {
+ UNSPECIFIED = 0,
+ INTERNAL = 1,
+ SERVER = 2,
+ CLIENT = 3,
+ PRODUCER = 4,
+ CONSUMER = 5,
+}
+
// TestSpan is an OTLP span plus references to `resource` and
// `instrumentationScope` that are shared between multiple spans in the
// protocol.
@@ -101,14 +110,38 @@ export class TestCollector {
return this._http.close();
}
- // Return the spans sorted by start time for testing convenience.
+ /**
+ * Return the spans sorted by which started first, for testing convenience.
+ *
+ * Note: This sorting is a *best effort*. `span.startTimeUnixNano` has
+ * millisecond accuracy, so if multiple spans start in the same millisecond
+ * then this cannot know the start ordering. If `startTimeUnixNano` are the
+ * same, this attempts to get the correct ordering using `parentSpanId` -- a
+ * parent span starts before any of its direct children. This isn't perfect.
+ */
get sortedSpans(): Array {
return this.spans.slice().sort((a, b) => {
assert(typeof a.startTimeUnixNano === 'string');
assert(typeof b.startTimeUnixNano === 'string');
const aStartInt = BigInt(a.startTimeUnixNano);
const bStartInt = BigInt(b.startTimeUnixNano);
- return aStartInt < bStartInt ? -1 : aStartInt > bStartInt ? 1 : 0;
+ if (aStartInt < bStartInt) {
+ return -1;
+ } else if (aStartInt > bStartInt) {
+ return 1;
+ } else {
+ // Same startTimeUnixNano, which has millisecond accuracy. This is
+ // common for Express middleware spans on a fast enough dev machine.
+ // Attempt to use spanId/parentSpanId to decide on span ordering.
+ if (a.traceId === b.traceId) {
+ if (a.spanId === b.parentSpanId) {
+ return -1;
+ } else if (a.parentSpanId === b.spanId) {
+ return 1;
+ }
+ }
+ return 0;
+ }
});
}
diff --git a/packages/opentelemetry-test-utils/src/test-utils.ts b/packages/opentelemetry-test-utils/src/test-utils.ts
index 6edcddf4a3..91efd64b03 100644
--- a/packages/opentelemetry-test-utils/src/test-utils.ts
+++ b/packages/opentelemetry-test-utils/src/test-utils.ts
@@ -24,12 +24,14 @@ import {
} from '@opentelemetry/api';
import * as assert from 'assert';
import { ReadableSpan } from '@opentelemetry/sdk-trace-base';
+import { MetricReader, MeterProvider } from '@opentelemetry/sdk-metrics';
import {
hrTimeToMilliseconds,
hrTimeToMicroseconds,
} from '@opentelemetry/core';
import * as path from 'path';
import * as fs from 'fs';
+import { InstrumentationBase } from '@opentelemetry/instrumentation';
const dockerRunCmds = {
cassandra:
@@ -37,7 +39,7 @@ const dockerRunCmds = {
memcached:
'docker run --rm -d --name otel-memcached -p 11211:11211 memcached:1.6.9-alpine',
mssql:
- 'docker run --rm -d --name otel-mssql -p 1433:1433 -e SA_PASSWORD=mssql_passw0rd -e ACCEPT_EULA=Y mcr.microsoft.com/mssql/server:2017-latest',
+ 'docker run --rm -d --name otel-mssql -p 1433:1433 -e MSSQL_SA_PASSWORD=mssql_passw0rd -e ACCEPT_EULA=Y mcr.microsoft.com/mssql/server:2022-latest',
mysql:
'docker run --rm -d --name otel-mysql -p 33306:3306 -e MYSQL_ROOT_PASSWORD=rootpw -e MYSQL_DATABASE=test_db -e MYSQL_USER=otel -e MYSQL_PASSWORD=secret mysql:5.7 --log_output=TABLE --general_log=ON',
postgres:
@@ -179,3 +181,24 @@ export const getPackageVersion = (packageName: string) => {
);
return JSON.parse(fs.readFileSync(pjPath, 'utf8')).version;
};
+
+export class TestMetricReader extends MetricReader {
+ constructor() {
+ super();
+ }
+
+ protected async onForceFlush(): Promise {}
+ protected async onShutdown(): Promise {}
+}
+
+export const initMeterProvider = (
+ instrumentation: InstrumentationBase
+): TestMetricReader => {
+ const metricReader = new TestMetricReader();
+ const meterProvider = new MeterProvider({
+ readers: [metricReader],
+ });
+ instrumentation.setMeterProvider(meterProvider);
+
+ return metricReader;
+};
diff --git a/packages/winston-transport/CHANGELOG.md b/packages/winston-transport/CHANGELOG.md
index 7ab5b34625..19e603735f 100644
--- a/packages/winston-transport/CHANGELOG.md
+++ b/packages/winston-transport/CHANGELOG.md
@@ -1,5 +1,30 @@
# Changelog
+## [0.7.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/winston-transport-v0.6.0...winston-transport-v0.7.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.6.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/winston-transport-v0.5.0...winston-transport-v0.6.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.5.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/winston-transport-v0.4.0...winston-transport-v0.5.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.4.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/winston-transport-v0.3.0...winston-transport-v0.4.0) (2024-06-06)
diff --git a/packages/winston-transport/README.md b/packages/winston-transport/README.md
index 977d2da610..8da57f9634 100644
--- a/packages/winston-transport/README.md
+++ b/packages/winston-transport/README.md
@@ -49,9 +49,12 @@ const logger = winston.createLogger({
});
```
+> [!IMPORTANT]
+> Logs will be duplicated if `@opentelemetry/winston-transport` is added as a transport in `winston` and `@opentelemetry/instrumentation-winston` is configured with `disableLogSending: false`.
+
### Supported versions
-Winston `3.x`
+- [`winston`](https://www.npmjs.com/package/winston) versions `>=3.0.0 <4`
## Useful links
diff --git a/packages/winston-transport/package.json b/packages/winston-transport/package.json
index 59ba8105e7..a40610ad5f 100644
--- a/packages/winston-transport/package.json
+++ b/packages/winston-transport/package.json
@@ -1,17 +1,16 @@
{
"name": "@opentelemetry/winston-transport",
- "version": "0.4.0",
+ "version": "0.7.0",
"description": "OpenTelemetry Transport for winston",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/winston-transport --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../scripts/version-update.js",
@@ -39,18 +38,16 @@
},
"devDependencies": {
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/triple-beam": "1.3.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/api-logs": "^0.52.0",
+ "@opentelemetry/api-logs": "^0.54.0",
"winston-transport": "4.*"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/winston-transport#readme"
diff --git a/packages/winston-transport/src/OpenTelemetryTransportV3.ts b/packages/winston-transport/src/OpenTelemetryTransportV3.ts
index e3a93b1b57..e24c29840e 100644
--- a/packages/winston-transport/src/OpenTelemetryTransportV3.ts
+++ b/packages/winston-transport/src/OpenTelemetryTransportV3.ts
@@ -16,6 +16,7 @@
import { Logger, logs } from '@opentelemetry/api-logs';
import TransportStream = require('winston-transport');
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import { emitLogRecord } from './utils';
diff --git a/plugins/node/instrumentation-amqplib/.tav.yml b/plugins/node/instrumentation-amqplib/.tav.yml
index bf4e3eed80..8dd3a78a9b 100644
--- a/plugins/node/instrumentation-amqplib/.tav.yml
+++ b/plugins/node/instrumentation-amqplib/.tav.yml
@@ -1,4 +1,6 @@
-'amqplib':
- versions: ">=0.5.5"
+amqplib:
+ versions:
+ include: ">=0.5.5"
+ mode: latest-minors
commands:
- - yarn test
+ - npm test
diff --git a/plugins/node/instrumentation-amqplib/CHANGELOG.md b/plugins/node/instrumentation-amqplib/CHANGELOG.md
index a4ad8e22c5..598f5e62ef 100644
--- a/plugins/node/instrumentation-amqplib/CHANGELOG.md
+++ b/plugins/node/instrumentation-amqplib/CHANGELOG.md
@@ -1,5 +1,62 @@
# Changelog
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-amqplib-v0.42.0...instrumentation-amqplib-v0.43.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-amqplib-v0.41.0...instrumentation-amqplib-v0.42.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-amqplib-v0.40.0...instrumentation-amqplib-v0.41.0) (2024-08-05)
+
+
+### ⚠ BREAKING CHANGES
+
+* **amqplib:** instrumentation produced high cardinality span names ([#2366](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2366))
+
+### Bug Fixes
+
+* **amqplib:** instrumentation produced high cardinality span names ([#2366](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2366)) ([184b19f](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/184b19f191635fa8d433eddcc6ed3f7d94a35d8a))
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-amqplib-v0.39.0...instrumentation-amqplib-v0.40.0) (2024-07-23)
+
+
+### Features
+
+* Add the ability to use span links when consuming a message amqp plugin ([#1972](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1972)) ([5f2c160](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/5f2c160ac0fd4f6aa76c227537c34329c6c9dfb2))
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-amqplib-v0.38.0...instrumentation-amqplib-v0.39.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-amqplib-v0.37.0...instrumentation-amqplib-v0.38.0) (2024-06-06)
diff --git a/plugins/node/instrumentation-amqplib/README.md b/plugins/node/instrumentation-amqplib/README.md
index 1fce886b89..eb3553ce9d 100644
--- a/plugins/node/instrumentation-amqplib/README.md
+++ b/plugins/node/instrumentation-amqplib/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-amqplib
## Supported Versions
-- `>=0.5.5`
+- [`amqplib`](https://www.npmjs.com/package/amqplib) versions `>=0.5.5 <1`
## Usage
@@ -40,6 +40,7 @@ registerInstrumentations({
// publishConfirmHook: (span: Span, publishConfirmedInto: PublishConfirmedInfo) => { },
// consumeHook: (span: Span, consumeInfo: ConsumeInfo) => { },
// consumeEndHook: (span: Span, consumeEndInfo: ConsumeEndInfo) => { },
+ // useLinksForConsume: boolean,
}),
],
})
@@ -49,13 +50,14 @@ registerInstrumentations({
amqplib instrumentation has few options available to choose from. You can set the following:
-| Options | Type | Description |
-| --------------------------------- | ----------------------------------------- | -------------------------------------------------------------------------------------------------------------------------- |
-| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent. |
-| `publishConfirmHook` | `AmqplibPublishConfirmCustomAttributeFunction` | hook for adding custom attributes after publish message is confirmed by the broker. |
-| `consumeHook` | `AmqplibConsumeCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed. |
-| `consumeEndHook` | `AmqplibConsumeEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server. |
-| `consumeTimeoutMs` | `number` | read [Consume Timeout](#consume-timeout) below |
+| Options | Type | Description |
+| -------------------- | ---------------------------------------------- | ----------------------------------------------------------------------------------- |
+| `publishHook` | `AmqplibPublishCustomAttributeFunction` | hook for adding custom attributes before publish message is sent. |
+| `publishConfirmHook` | `AmqplibPublishConfirmCustomAttributeFunction` | hook for adding custom attributes after publish message is confirmed by the broker. |
+| `consumeHook` | `AmqplibConsumeCustomAttributeFunction` | hook for adding custom attributes before consumer message is processed. |
+| `consumeEndHook` | `AmqplibConsumeEndCustomAttributeFunction` | hook for adding custom attributes after consumer message is acked to server. |
+| `consumeTimeoutMs` | `number` | read [Consume Timeout](#consume-timeout) below |
+| `useLinksForConsume` | `boolean` | read [Links for Consume](#links-for-consume) below |
### Consume Timeout
@@ -69,17 +71,21 @@ If timeout is not big enough, span might be closed with 'InstrumentationTimeout'
Default is 1 minute
-## Migration From opentelemetry-instrumentation-amqplib
+### Links for Consume
-This instrumentation was originally published under the name `"opentelemetry-instrumentation-amqplib"` in [this repo](https://github.com/aspecto-io/opentelemetry-ext-js). Few breaking changes were made during porting to the contrib repo to align with conventions:
+By default, consume spans continue the trace where a message was produced. However, per the [spec](https://opentelemetry.io/docs/specs/semconv/messaging/messaging-spans/#consumer-spans), consume spans should be linked to the message's creation context. Setting to true, this will enable the behavior to follow the spec.
-### Hook Info
+Default is false
-The instrumentation's config `publishHook`, `publishConfirmHook`, `consumeHook` and `consumeEndHook` functions signature changed, so the second function parameter is info object, containing the relevant hook data.
+## Running Tests Locally
-### `moduleVersionAttributeName` config option
+To run the tests locally, you need to have a RabbitMQ server running. You can use the following command to start a RabbitMQ server using Docker:
-The `moduleVersionAttributeName` config option is removed. To add the amqplib package version to spans, use the `moduleVersion` attribute in hook info for `publishHook` and `consumeHook` functions.
+```bash
+npm run test:docker:run
+```
+
+By default, the tests that connect to RabbitMQ are skipped. To make sure these tests are run, you can set the `RUN_RABBIT_TESTS` environment variable to `true`
## Semantic Conventions
diff --git a/plugins/node/instrumentation-amqplib/package.json b/plugins/node/instrumentation-amqplib/package.json
index f564585eb1..7483e686d6 100644
--- a/plugins/node/instrumentation-amqplib/package.json
+++ b/plugins/node/instrumentation-amqplib/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-amqplib",
- "version": "0.38.0",
+ "version": "0.43.0",
"description": "OpenTelemetry instrumentation for the `amqplib` messaging client for RabbitMQ",
"keywords": [
"amqplib",
@@ -30,11 +30,11 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-amqplib --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/**/*.test.ts'",
+ "test": "nyc mocha --require '@opentelemetry/contrib-test-utils' 'test/**/*.test.ts'",
"test-all-versions": "tav",
"version:update": "node ../../../scripts/version-update.js",
"watch": "tsc -w",
@@ -45,25 +45,23 @@
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@types/amqplib": "^0.5.17",
"@types/lodash": "4.14.199",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"amqplib": "0.8.0",
"expect": "29.2.0",
"lodash": "4.17.21",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
diff --git a/plugins/node/instrumentation-amqplib/src/amqplib.ts b/plugins/node/instrumentation-amqplib/src/amqplib.ts
index 6cca9bfd80..bcdf9c7acb 100644
--- a/plugins/node/instrumentation-amqplib/src/amqplib.ts
+++ b/plugins/node/instrumentation-amqplib/src/amqplib.ts
@@ -22,6 +22,8 @@ import {
SpanKind,
SpanStatusCode,
ROOT_CONTEXT,
+ Link,
+ Context,
} from '@opentelemetry/api';
import {
hrTime,
@@ -72,48 +74,45 @@ import {
normalizeExchange,
unmarkConfirmChannelTracing,
} from './utils';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
-export class AmqplibInstrumentation extends InstrumentationBase {
- protected override _config!: AmqplibInstrumentationConfig;
+const supportedVersions = ['>=0.5.5 <1'];
+export class AmqplibInstrumentation extends InstrumentationBase {
constructor(config: AmqplibInstrumentationConfig = {}) {
- super(
- PACKAGE_NAME,
- PACKAGE_VERSION,
- Object.assign({}, DEFAULT_CONFIG, config)
- );
+ super(PACKAGE_NAME, PACKAGE_VERSION, { ...DEFAULT_CONFIG, ...config });
}
override setConfig(config: AmqplibInstrumentationConfig = {}) {
- this._config = Object.assign({}, DEFAULT_CONFIG, config);
+ super.setConfig({ ...DEFAULT_CONFIG, ...config });
}
protected init() {
const channelModelModuleFile = new InstrumentationNodeModuleFile(
'amqplib/lib/channel_model.js',
- ['>=0.5.5'],
+ supportedVersions,
this.patchChannelModel.bind(this),
this.unpatchChannelModel.bind(this)
);
const callbackModelModuleFile = new InstrumentationNodeModuleFile(
'amqplib/lib/callback_model.js',
- ['>=0.5.5'],
+ supportedVersions,
this.patchChannelModel.bind(this),
this.unpatchChannelModel.bind(this)
);
const connectModuleFile = new InstrumentationNodeModuleFile(
'amqplib/lib/connect.js',
- ['>=0.5.5'],
+ supportedVersions,
this.patchConnect.bind(this),
this.unpatchConnect.bind(this)
);
const module = new InstrumentationNodeModuleDefinition(
'amqplib',
- ['>=0.5.5'],
+ supportedVersions,
undefined,
undefined,
[channelModelModuleFile, connectModuleFile, callbackModelModuleFile]
@@ -390,10 +389,11 @@ export class AmqplibInstrumentation extends InstrumentationBase {
if (
!Object.prototype.hasOwnProperty.call(channel, CHANNEL_SPANS_NOT_ENDED)
) {
- if (self._config.consumeTimeoutMs) {
+ const { consumeTimeoutMs } = self.getConfig();
+ if (consumeTimeoutMs) {
const timer = setInterval(() => {
self.checkConsumeTimeoutOnChannel(channel);
- }, self._config.consumeTimeoutMs);
+ }, consumeTimeoutMs);
timer.unref();
channel[CHANNEL_CONSUME_TIMEOUT_TIMER] = timer;
}
@@ -412,8 +412,25 @@ export class AmqplibInstrumentation extends InstrumentationBase {
}
const headers = msg.properties.headers ?? {};
- const parentContext = propagation.extract(ROOT_CONTEXT, headers);
+ let parentContext: Context | undefined = propagation.extract(
+ ROOT_CONTEXT,
+ headers
+ );
const exchange = msg.fields?.exchange;
+ let links: Link[] | undefined;
+ if (self._config.useLinksForConsume) {
+ const parentSpanContext = parentContext
+ ? trace.getSpan(parentContext)?.spanContext()
+ : undefined;
+ parentContext = undefined;
+ if (parentSpanContext) {
+ links = [
+ {
+ context: parentSpanContext,
+ },
+ ];
+ }
+ }
const span = self.tracer.startSpan(
`${queue} process`,
{
@@ -429,13 +446,15 @@ export class AmqplibInstrumentation extends InstrumentationBase {
[SEMATTRS_MESSAGING_CONVERSATION_ID]:
msg?.properties.correlationId,
},
+ links,
},
parentContext
);
- if (self._config.consumeHook) {
+ const { consumeHook } = self.getConfig();
+ if (consumeHook) {
safeExecuteInTheMiddle(
- () => self._config.consumeHook!(span, { moduleVersion, msg }),
+ () => consumeHook(span, { moduleVersion, msg }),
e => {
if (e) {
diag.error('amqplib instrumentation: consumerHook error', e);
@@ -455,8 +474,10 @@ export class AmqplibInstrumentation extends InstrumentationBase {
// store the span on the message, so we can end it when user call 'ack' on it
msg[MESSAGE_STORED_SPAN] = span;
}
-
- context.with(trace.setSpan(parentContext, span), () => {
+ const setContext: Context = parentContext
+ ? parentContext
+ : ROOT_CONTEXT;
+ context.with(trace.setSpan(setContext, span), () => {
onMessage.call(this, msg);
});
@@ -492,10 +513,11 @@ export class AmqplibInstrumentation extends InstrumentationBase {
options
);
- if (self._config.publishHook) {
+ const { publishHook } = self.getConfig();
+ if (publishHook) {
safeExecuteInTheMiddle(
() =>
- self._config.publishHook!(span, {
+ publishHook(span, {
moduleVersion,
exchange,
routingKey,
@@ -520,10 +542,11 @@ export class AmqplibInstrumentation extends InstrumentationBase {
try {
callback?.call(this, err, ok);
} finally {
- if (self._config.publishConfirmHook) {
+ const { publishConfirmHook } = self.getConfig();
+ if (publishConfirmHook) {
safeExecuteInTheMiddle(
() =>
- self._config.publishConfirmHook!(span, {
+ publishConfirmHook(span, {
moduleVersion,
exchange,
routingKey,
@@ -592,10 +615,11 @@ export class AmqplibInstrumentation extends InstrumentationBase {
options
);
- if (self._config.publishHook) {
+ const { publishHook } = self.getConfig();
+ if (publishHook) {
safeExecuteInTheMiddle(
() =>
- self._config.publishHook!(span, {
+ publishHook(span, {
moduleVersion,
exchange,
routingKey,
@@ -632,21 +656,18 @@ export class AmqplibInstrumentation extends InstrumentationBase {
) {
const normalizedExchange = normalizeExchange(exchange);
- const span = self.tracer.startSpan(
- `${normalizedExchange} -> ${routingKey} send`,
- {
- kind: SpanKind.PRODUCER,
- attributes: {
- ...channel.connection[CONNECTION_ATTRIBUTES],
- [SEMATTRS_MESSAGING_DESTINATION]: exchange,
- [SEMATTRS_MESSAGING_DESTINATION_KIND]:
- MESSAGINGDESTINATIONKINDVALUES_TOPIC,
- [SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]: routingKey,
- [SEMATTRS_MESSAGING_MESSAGE_ID]: options?.messageId,
- [SEMATTRS_MESSAGING_CONVERSATION_ID]: options?.correlationId,
- },
- }
- );
+ const span = self.tracer.startSpan(`publish ${normalizedExchange}`, {
+ kind: SpanKind.PRODUCER,
+ attributes: {
+ ...channel.connection[CONNECTION_ATTRIBUTES],
+ [SEMATTRS_MESSAGING_DESTINATION]: exchange,
+ [SEMATTRS_MESSAGING_DESTINATION_KIND]:
+ MESSAGINGDESTINATIONKINDVALUES_TOPIC,
+ [SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]: routingKey,
+ [SEMATTRS_MESSAGING_MESSAGE_ID]: options?.messageId,
+ [SEMATTRS_MESSAGING_CONVERSATION_ID]: options?.correlationId,
+ },
+ });
const modifiedOptions = options ?? {};
modifiedOptions.headers = modifiedOptions.headers ?? {};
@@ -707,10 +728,11 @@ export class AmqplibInstrumentation extends InstrumentationBase {
rejected: boolean | null,
endOperation: EndOperation
) {
- if (!this._config.consumeEndHook) return;
+ const { consumeEndHook } = this.getConfig();
+ if (!consumeEndHook) return;
safeExecuteInTheMiddle(
- () => this._config.consumeEndHook!(span, { msg, rejected, endOperation }),
+ () => consumeEndHook(span, { msg, rejected, endOperation }),
e => {
if (e) {
diag.error('amqplib instrumentation: consumerEndHook error', e);
@@ -724,15 +746,14 @@ export class AmqplibInstrumentation extends InstrumentationBase {
const currentTime = hrTime();
const spansNotEnded = channel[CHANNEL_SPANS_NOT_ENDED] ?? [];
let i: number;
+ const { consumeTimeoutMs } = this.getConfig();
for (i = 0; i < spansNotEnded.length; i++) {
const currMessage = spansNotEnded[i];
const timeFromConsume = hrTimeDuration(
currMessage.timeOfConsume,
currentTime
);
- if (
- hrTimeToMilliseconds(timeFromConsume) < this._config.consumeTimeoutMs!
- ) {
+ if (hrTimeToMilliseconds(timeFromConsume) < consumeTimeoutMs!) {
break;
}
this.endConsumerSpan(
diff --git a/plugins/node/instrumentation-amqplib/src/types.ts b/plugins/node/instrumentation-amqplib/src/types.ts
index 2e82b471b5..55a80fdba3 100644
--- a/plugins/node/instrumentation-amqplib/src/types.ts
+++ b/plugins/node/instrumentation-amqplib/src/types.ts
@@ -96,10 +96,14 @@ export interface AmqplibInstrumentationConfig extends InstrumentationConfig {
* Default is 1 minute
*/
consumeTimeoutMs?: number;
+
+ /** option to use a span link for the consume message instead of continuing a trace */
+ useLinksForConsume?: boolean;
}
export const DEFAULT_CONFIG: AmqplibInstrumentationConfig = {
consumeTimeoutMs: 1000 * 60, // 1 minute
+ useLinksForConsume: false,
};
// The following types are vendored from `@types/amqplib@0.10.1` - commit SHA: 4205e03127692a40b4871709a7134fe4e2ed5510
diff --git a/plugins/node/instrumentation-amqplib/src/utils.ts b/plugins/node/instrumentation-amqplib/src/utils.ts
index 2f0db1ad62..3526c96fd4 100644
--- a/plugins/node/instrumentation-amqplib/src/utils.ts
+++ b/plugins/node/instrumentation-amqplib/src/utils.ts
@@ -55,7 +55,7 @@ export type InstrumentationConsumeChannel = amqp.Channel & {
msg: amqp.ConsumeMessage;
timeOfConsume: HrTime;
}[];
- [CHANNEL_CONSUME_TIMEOUT_TIMER]?: NodeJS.Timer;
+ [CHANNEL_CONSUME_TIMEOUT_TIMER]?: NodeJS.Timeout;
};
export type InstrumentationMessage = amqp.Message & {
[MESSAGE_STORED_SPAN]?: Span;
diff --git a/plugins/node/instrumentation-amqplib/test/amqplib-callbacks.test.ts b/plugins/node/instrumentation-amqplib/test/amqplib-callbacks.test.ts
index 533b5d9942..1e415cb084 100644
--- a/plugins/node/instrumentation-amqplib/test/amqplib-callbacks.test.ts
+++ b/plugins/node/instrumentation-amqplib/test/amqplib-callbacks.test.ts
@@ -21,7 +21,9 @@ import {
registerInstrumentationTesting,
} from '@opentelemetry/contrib-test-utils';
-registerInstrumentationTesting(new AmqplibInstrumentation());
+const instrumentation = registerInstrumentationTesting(
+ new AmqplibInstrumentation()
+);
import * as amqpCallback from 'amqplib/callback_api';
import {
@@ -134,6 +136,7 @@ describe('amqplib instrumentation callback model', () => {
const [publishSpan, consumeSpan] = getTestSpans();
// assert publish span
+ expect(publishSpan.name).toMatch('publish ');
expect(publishSpan.kind).toEqual(SpanKind.PRODUCER);
expect(publishSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
'rabbitmq'
@@ -401,4 +404,266 @@ describe('amqplib instrumentation callback model', () => {
});
});
});
+
+ describe('channel with links config', () => {
+ let channel: amqpCallback.Channel;
+ beforeEach(done => {
+ instrumentation.setConfig({
+ useLinksForConsume: true,
+ });
+ conn.createChannel(
+ context.bind(context.active(), (err, c) => {
+ channel = c;
+ // install an error handler, otherwise when we have tests that create error on the channel,
+ // it throws and crash process
+ channel.on('error', () => {});
+ channel.assertQueue(
+ queueName,
+ { durable: false },
+ context.bind(context.active(), (err, ok) => {
+ channel.purgeQueue(
+ queueName,
+ context.bind(context.active(), (err, ok) => {
+ done();
+ })
+ );
+ })
+ );
+ })
+ );
+ });
+
+ afterEach(done => {
+ try {
+ channel.close(err => {
+ done();
+ });
+ } catch {}
+ });
+
+ it('simple publish and consume from queue callback', done => {
+ const hadSpaceInBuffer = channel.sendToQueue(
+ queueName,
+ Buffer.from(msgPayload)
+ );
+ expect(hadSpaceInBuffer).toBeTruthy();
+
+ asyncConsume(
+ channel,
+ queueName,
+ [msg => expect(msg.content.toString()).toEqual(msgPayload)],
+ {
+ noAck: true,
+ }
+ ).then(() => {
+ const [publishSpan, consumeSpan] = getTestSpans();
+
+ // assert publish span
+ expect(publishSpan.kind).toEqual(SpanKind.PRODUCER);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
+ ''
+ ); // according to spec: "This will be an empty string if the default exchange is used"
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(queueName);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_URL]).toEqual(
+ censoredUrl
+ );
+ expect(publishSpan.attributes[SEMATTRS_NET_PEER_NAME]).toEqual(
+ TEST_RABBITMQ_HOST
+ );
+ expect(publishSpan.attributes[SEMATTRS_NET_PEER_PORT]).toEqual(
+ TEST_RABBITMQ_PORT
+ );
+
+ // assert consume span
+ expect(consumeSpan.kind).toEqual(SpanKind.CONSUMER);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
+ ''
+ ); // according to spec: "This will be an empty string if the default exchange is used"
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(queueName);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_URL]).toEqual(
+ censoredUrl
+ );
+ expect(consumeSpan.attributes[SEMATTRS_NET_PEER_NAME]).toEqual(
+ TEST_RABBITMQ_HOST
+ );
+ expect(consumeSpan.attributes[SEMATTRS_NET_PEER_PORT]).toEqual(
+ TEST_RABBITMQ_PORT
+ );
+
+ // new trace should be created
+ expect(consumeSpan.spanContext().traceId).not.toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.parentSpanId).toBeUndefined();
+
+ // link back to publish span
+ expect(consumeSpan.links.length).toBe(1);
+ expect(consumeSpan.links[0].context.traceId).toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.links[0].context.spanId).toEqual(
+ publishSpan.spanContext().spanId
+ );
+
+ done();
+ });
+ });
+ });
+
+ describe('confirm channel with links config', () => {
+ let confirmChannel: amqpCallback.ConfirmChannel;
+ beforeEach(done => {
+ instrumentation.setConfig({
+ useLinksForConsume: true,
+ });
+ conn.createConfirmChannel(
+ context.bind(context.active(), (err, c) => {
+ confirmChannel = c;
+ // install an error handler, otherwise when we have tests that create error on the channel,
+ // it throws and crash process
+ confirmChannel.on('error', () => {});
+ confirmChannel.assertQueue(
+ queueName,
+ { durable: false },
+ context.bind(context.active(), (err, ok) => {
+ confirmChannel.purgeQueue(
+ queueName,
+ context.bind(context.active(), (err, ok) => {
+ done();
+ })
+ );
+ })
+ );
+ })
+ );
+ });
+
+ afterEach(done => {
+ try {
+ confirmChannel.close(err => {
+ done();
+ });
+ } catch {}
+ });
+
+ it('simple publish and consume from queue callback', done => {
+ asyncConfirmSend(confirmChannel, queueName, msgPayload).then(() => {
+ asyncConsume(
+ confirmChannel,
+ queueName,
+ [msg => expect(msg.content.toString()).toEqual(msgPayload)],
+ {
+ noAck: true,
+ }
+ ).then(() => {
+ const [publishSpan, consumeSpan] = getTestSpans();
+
+ // assert publish span
+ expect(publishSpan.kind).toEqual(SpanKind.PRODUCER);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]
+ ).toEqual(''); // according to spec: "This will be an empty string if the default exchange is used"
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(queueName);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_URL]).toEqual(
+ censoredUrl
+ );
+ expect(publishSpan.attributes[SEMATTRS_NET_PEER_NAME]).toEqual(
+ TEST_RABBITMQ_HOST
+ );
+ expect(publishSpan.attributes[SEMATTRS_NET_PEER_PORT]).toEqual(
+ TEST_RABBITMQ_PORT
+ );
+
+ // assert consume span
+ expect(consumeSpan.kind).toEqual(SpanKind.CONSUMER);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]
+ ).toEqual(''); // according to spec: "This will be an empty string if the default exchange is used"
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(queueName);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_URL]).toEqual(
+ censoredUrl
+ );
+ expect(consumeSpan.attributes[SEMATTRS_NET_PEER_NAME]).toEqual(
+ TEST_RABBITMQ_HOST
+ );
+ expect(consumeSpan.attributes[SEMATTRS_NET_PEER_PORT]).toEqual(
+ TEST_RABBITMQ_PORT
+ );
+
+ // new trace should be created
+ expect(consumeSpan.spanContext().traceId).not.toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.parentSpanId).toBeUndefined();
+
+ // link back to publish span
+ expect(consumeSpan.links.length).toBe(1);
+ expect(consumeSpan.links[0].context.traceId).toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.links[0].context.spanId).toEqual(
+ publishSpan.spanContext().spanId
+ );
+
+ done();
+ });
+ });
+ });
+ });
});
diff --git a/plugins/node/instrumentation-amqplib/test/amqplib-promise.test.ts b/plugins/node/instrumentation-amqplib/test/amqplib-promise.test.ts
index 2205d76a5a..6df63296a1 100644
--- a/plugins/node/instrumentation-amqplib/test/amqplib-promise.test.ts
+++ b/plugins/node/instrumentation-amqplib/test/amqplib-promise.test.ts
@@ -1246,4 +1246,409 @@ describe('amqplib instrumentation promise model', () => {
});
});
});
+ describe('channel using links config', () => {
+ let channel: amqp.Channel & { [CHANNEL_CLOSED_IN_TEST]?: boolean };
+ beforeEach(async () => {
+ endHookSpy = sinon.spy();
+ instrumentation.setConfig({
+ consumeEndHook: endHookSpy,
+ useLinksForConsume: true,
+ });
+
+ channel = await conn.createChannel();
+ await channel.assertQueue(queueName, { durable: false });
+ await channel.purgeQueue(queueName);
+ // install an error handler, otherwise when we have tests that create error on the channel,
+ // it throws and crash process
+ channel.on('error', (err: Error) => {});
+ });
+ afterEach(async () => {
+ if (!channel[CHANNEL_CLOSED_IN_TEST]) {
+ try {
+ await new Promise(resolve => {
+ channel.on('close', resolve);
+ channel.close();
+ });
+ } catch {}
+ }
+ });
+
+ it('simple publish and consume from queue', async () => {
+ const hadSpaceInBuffer = channel.sendToQueue(
+ queueName,
+ Buffer.from(msgPayload)
+ );
+ expect(hadSpaceInBuffer).toBeTruthy();
+
+ await asyncConsume(
+ channel,
+ queueName,
+ [msg => expect(msg.content.toString()).toEqual(msgPayload)],
+ {
+ noAck: true,
+ }
+ );
+ const [publishSpan, consumeSpan] = getTestSpans();
+
+ // assert publish span
+ expect(publishSpan.kind).toEqual(SpanKind.PRODUCER);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
+ ''
+ ); // according to spec: "This will be an empty string if the default exchange is used"
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(queueName);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_URL]).toEqual(
+ censoredUrl
+ );
+ expect(publishSpan.attributes[SEMATTRS_NET_PEER_NAME]).toEqual(
+ TEST_RABBITMQ_HOST
+ );
+ expect(publishSpan.attributes[SEMATTRS_NET_PEER_PORT]).toEqual(
+ TEST_RABBITMQ_PORT
+ );
+
+ // assert consume span
+ expect(consumeSpan.kind).toEqual(SpanKind.CONSUMER);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
+ ''
+ ); // according to spec: "This will be an empty string if the default exchange is used"
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(queueName);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_URL]).toEqual(
+ censoredUrl
+ );
+ expect(consumeSpan.attributes[SEMATTRS_NET_PEER_NAME]).toEqual(
+ TEST_RABBITMQ_HOST
+ );
+ expect(consumeSpan.attributes[SEMATTRS_NET_PEER_PORT]).toEqual(
+ TEST_RABBITMQ_PORT
+ );
+
+ // new trace should be created
+ expect(consumeSpan.spanContext().traceId).not.toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.parentSpanId).toBeUndefined();
+
+ // link back to publish span
+ expect(consumeSpan.links.length).toBe(1);
+ expect(consumeSpan.links[0].context.traceId).toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.links[0].context.spanId).toEqual(
+ publishSpan.spanContext().spanId
+ );
+
+ expectConsumeEndSpyStatus([EndOperation.AutoAck]);
+ });
+
+ describe('routing and exchange', () => {
+ it('topic exchange', async () => {
+ const exchangeName = 'topic exchange';
+ const routingKey = 'topic.name.from.unittest';
+ await channel.assertExchange(exchangeName, 'topic', { durable: false });
+
+ const { queue: queueName } = await channel.assertQueue('', {
+ durable: false,
+ });
+ await channel.bindQueue(queueName, exchangeName, '#');
+
+ channel.publish(exchangeName, routingKey, Buffer.from(msgPayload));
+
+ await asyncConsume(channel, queueName, [null], {
+ noAck: true,
+ });
+
+ const [publishSpan, consumeSpan] = getTestSpans();
+
+ // assert publish span
+ expect(publishSpan.kind).toEqual(SpanKind.PRODUCER);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
+ exchangeName
+ );
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(routingKey);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+
+ // assert consume span
+ expect(consumeSpan.kind).toEqual(SpanKind.CONSUMER);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
+ exchangeName
+ );
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(routingKey);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+
+ // new trace should be created
+ expect(consumeSpan.spanContext().traceId).not.toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.parentSpanId).toBeUndefined();
+
+ // link back to publish span
+ expect(consumeSpan.links.length).toBe(1);
+ expect(consumeSpan.links[0].context.traceId).toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.links[0].context.spanId).toEqual(
+ publishSpan.spanContext().spanId
+ );
+ });
+ });
+ });
+
+ describe('confirm channel links config', () => {
+ let confirmChannel: amqp.ConfirmChannel & {
+ [CHANNEL_CLOSED_IN_TEST]?: boolean;
+ };
+ beforeEach(async () => {
+ endHookSpy = sinon.spy();
+ instrumentation.setConfig({
+ consumeEndHook: endHookSpy,
+ useLinksForConsume: true,
+ });
+
+ confirmChannel = await conn.createConfirmChannel();
+ await confirmChannel.assertQueue(queueName, { durable: false });
+ await confirmChannel.purgeQueue(queueName);
+ // install an error handler, otherwise when we have tests that create error on the channel,
+ // it throws and crash process
+ confirmChannel.on('error', (err: Error) => {});
+ });
+ afterEach(async () => {
+ if (!confirmChannel[CHANNEL_CLOSED_IN_TEST]) {
+ try {
+ await new Promise(resolve => {
+ confirmChannel.on('close', resolve);
+ confirmChannel.close();
+ });
+ } catch {}
+ }
+ });
+
+ it('simple publish with confirm and consume from queue', async () => {
+ await asyncConfirmSend(confirmChannel, queueName, msgPayload);
+
+ await asyncConsume(
+ confirmChannel,
+ queueName,
+ [msg => expect(msg.content.toString()).toEqual(msgPayload)],
+ {
+ noAck: true,
+ }
+ );
+ const [publishSpan, consumeSpan] = getTestSpans();
+
+ // assert publish span
+ expect(publishSpan.kind).toEqual(SpanKind.PRODUCER);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
+ ''
+ ); // according to spec: "This will be an empty string if the default exchange is used"
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(queueName);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_URL]).toEqual(
+ censoredUrl
+ );
+ expect(publishSpan.attributes[SEMATTRS_NET_PEER_NAME]).toEqual(
+ TEST_RABBITMQ_HOST
+ );
+ expect(publishSpan.attributes[SEMATTRS_NET_PEER_PORT]).toEqual(
+ TEST_RABBITMQ_PORT
+ );
+
+ // assert consume span
+ expect(consumeSpan.kind).toEqual(SpanKind.CONSUMER);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
+ ''
+ ); // according to spec: "This will be an empty string if the default exchange is used"
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(queueName);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_URL]).toEqual(
+ censoredUrl
+ );
+ expect(consumeSpan.attributes[SEMATTRS_NET_PEER_NAME]).toEqual(
+ TEST_RABBITMQ_HOST
+ );
+ expect(consumeSpan.attributes[SEMATTRS_NET_PEER_PORT]).toEqual(
+ TEST_RABBITMQ_PORT
+ );
+ // new trace should be created
+ expect(consumeSpan.spanContext().traceId).not.toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.parentSpanId).toBeUndefined();
+
+ // link back to publish span
+ expect(consumeSpan.links.length).toBe(1);
+ expect(consumeSpan.links[0].context.traceId).toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.links[0].context.spanId).toEqual(
+ publishSpan.spanContext().spanId
+ );
+
+ expectConsumeEndSpyStatus([EndOperation.AutoAck]);
+ });
+
+ describe('routing and exchange', () => {
+ it('topic exchange', async () => {
+ const exchangeName = 'topic exchange';
+ const routingKey = 'topic.name.from.unittest';
+ await confirmChannel.assertExchange(exchangeName, 'topic', {
+ durable: false,
+ });
+
+ const { queue: queueName } = await confirmChannel.assertQueue('', {
+ durable: false,
+ });
+ await confirmChannel.bindQueue(queueName, exchangeName, '#');
+
+ await asyncConfirmPublish(
+ confirmChannel,
+ exchangeName,
+ routingKey,
+ msgPayload
+ );
+
+ await asyncConsume(confirmChannel, queueName, [null], {
+ noAck: true,
+ });
+
+ const [publishSpan, consumeSpan] = getTestSpans();
+
+ // assert publish span
+ expect(publishSpan.kind).toEqual(SpanKind.PRODUCER);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
+ exchangeName
+ );
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(routingKey);
+ expect(publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ publishSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+
+ // assert consume span
+ expect(consumeSpan.kind).toEqual(SpanKind.CONSUMER);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
+ 'rabbitmq'
+ );
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
+ exchangeName
+ );
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]
+ ).toEqual(MESSAGINGDESTINATIONKINDVALUES_TOPIC);
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_RABBITMQ_ROUTING_KEY]
+ ).toEqual(routingKey);
+ expect(consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL]).toEqual(
+ 'AMQP'
+ );
+ expect(
+ consumeSpan.attributes[SEMATTRS_MESSAGING_PROTOCOL_VERSION]
+ ).toEqual('0.9.1');
+
+ // new trace should be created
+ expect(consumeSpan.spanContext().traceId).not.toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.parentSpanId).toBeUndefined();
+
+ // link back to publish span
+ expect(consumeSpan.links.length).toBe(1);
+ expect(consumeSpan.links[0].context.traceId).toEqual(
+ publishSpan.spanContext().traceId
+ );
+ expect(consumeSpan.links[0].context.spanId).toEqual(
+ publishSpan.spanContext().spanId
+ );
+ });
+ });
+ });
});
diff --git a/plugins/node/instrumentation-cucumber/.tav.yml b/plugins/node/instrumentation-cucumber/.tav.yml
index a1771a240c..0a9cf7031d 100644
--- a/plugins/node/instrumentation-cucumber/.tav.yml
+++ b/plugins/node/instrumentation-cucumber/.tav.yml
@@ -1,7 +1,11 @@
'@cucumber/cucumber':
- - versions: '^8.0.0 || ^9.0.0'
+ - versions:
+ include: '^8.0.0 || ^9.0.0'
+ mode: latest-minors
node: '>=14'
commands: npm test
- - versions: '^10.0.0'
+ - versions:
+ include: '^10.0.0'
+ mode: latest-minors
node: '>=18'
commands: npm test
diff --git a/plugins/node/instrumentation-cucumber/CHANGELOG.md b/plugins/node/instrumentation-cucumber/CHANGELOG.md
index 519cdf1710..01d4f9cc2e 100644
--- a/plugins/node/instrumentation-cucumber/CHANGELOG.md
+++ b/plugins/node/instrumentation-cucumber/CHANGELOG.md
@@ -1,5 +1,30 @@
# Changelog
+## [0.10.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cucumber-v0.9.0...instrumentation-cucumber-v0.10.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.9.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cucumber-v0.8.0...instrumentation-cucumber-v0.9.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.8.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cucumber-v0.7.0...instrumentation-cucumber-v0.8.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.7.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cucumber-v0.6.0...instrumentation-cucumber-v0.7.0) (2024-06-06)
diff --git a/plugins/node/instrumentation-cucumber/README.md b/plugins/node/instrumentation-cucumber/README.md
index acc5466c36..60933c2c10 100644
--- a/plugins/node/instrumentation-cucumber/README.md
+++ b/plugins/node/instrumentation-cucumber/README.md
@@ -15,6 +15,10 @@ Compatible with OpenTelemetry JS API and SDK `1.0+`.
npm install --save @opentelemetry/instrumentation-cucumber
```
+## Supported Versions
+
+- [`@cucumber/cucumber`](https://www.npmjs.com/package/@cucumber/cucumber) versions `>=8.0.0 <11`
+
## Usage
```js
diff --git a/plugins/node/instrumentation-cucumber/package.json b/plugins/node/instrumentation-cucumber/package.json
index cdef209a8b..99eadf755f 100644
--- a/plugins/node/instrumentation-cucumber/package.json
+++ b/plugins/node/instrumentation-cucumber/package.json
@@ -1,18 +1,18 @@
{
"name": "@opentelemetry/instrumentation-cucumber",
- "version": "0.7.0",
+ "version": "0.10.0",
"description": "OpenTelemetry instrumentation for `@cucumber/cucumber` automated tests runner",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"test-all-versions": "tav",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-cucumber --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
@@ -44,26 +44,25 @@
},
"devDependencies": {
"@cucumber/cucumber": "^9.0.0",
+ "@cucumber/messages": "^22.0.0",
"@opentelemetry/api": "^1.0.0",
"@opentelemetry/core": "^1.3.1",
"@opentelemetry/sdk-trace-base": "^1.3.1",
"@opentelemetry/sdk-trace-node": "^1.3.1",
"@types/mocha": "7.0.2",
- "@types/semver": "7.5.3",
+ "@types/semver": "7.5.8",
"@types/shimmer": "1.0.3",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-cucumber#readme"
}
diff --git a/plugins/node/instrumentation-cucumber/src/instrumentation.ts b/plugins/node/instrumentation-cucumber/src/instrumentation.ts
index 42962feb78..62341ad990 100644
--- a/plugins/node/instrumentation-cucumber/src/instrumentation.ts
+++ b/plugins/node/instrumentation-cucumber/src/instrumentation.ts
@@ -38,6 +38,7 @@ import type {
} from '@cucumber/cucumber/lib/support_code_library_builder/types';
import { AttributeNames, CucumberInstrumentationConfig } from './types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
const hooks = ['Before', 'BeforeStep', 'AfterStep', 'After'] as const;
@@ -46,7 +47,9 @@ type Cucumber = typeof cucumber;
type Hook = (typeof hooks)[number];
type Step = (typeof steps)[number];
-export class CucumberInstrumentation extends InstrumentationBase {
+const supportedVersions = ['>=8.0.0 <11'];
+
+export class CucumberInstrumentation extends InstrumentationBase {
private module: Cucumber | undefined;
constructor(config: CucumberInstrumentationConfig = {}) {
@@ -57,7 +60,7 @@ export class CucumberInstrumentation extends InstrumentationBase {
return [
new InstrumentationNodeModuleDefinition(
'@cucumber/cucumber',
- ['^8.0.0', '^9.0.0', '^10.0.0'],
+ supportedVersions,
(moduleExports: Cucumber) => {
this.module = moduleExports;
steps.forEach(step => {
@@ -83,7 +86,7 @@ export class CucumberInstrumentation extends InstrumentationBase {
[
new InstrumentationNodeModuleFile(
'@cucumber/cucumber/lib/runtime/test_case_runner.js',
- ['^8.0.0', '^9.0.0', '^10.0.0'],
+ supportedVersions,
moduleExports => {
if (isWrapped(moduleExports.default.prototype.run)) {
this._unwrap(moduleExports.default.prototype, 'run');
diff --git a/plugins/node/instrumentation-dataloader/.tav.yml b/plugins/node/instrumentation-dataloader/.tav.yml
index f0baa3a47a..6b8c5c32dd 100644
--- a/plugins/node/instrumentation-dataloader/.tav.yml
+++ b/plugins/node/instrumentation-dataloader/.tav.yml
@@ -1,4 +1,6 @@
dataloader:
# Testing ^2.0.0 covers about 90% of the downloaded versions
- versions: "^2.0.0"
+ versions:
+ include: "^2.0.0"
+ mode: latest-minors
commands: npm run test
diff --git a/plugins/node/instrumentation-dataloader/CHANGELOG.md b/plugins/node/instrumentation-dataloader/CHANGELOG.md
index 7d7b3bc973..76610e8580 100644
--- a/plugins/node/instrumentation-dataloader/CHANGELOG.md
+++ b/plugins/node/instrumentation-dataloader/CHANGELOG.md
@@ -1,5 +1,32 @@
# Changelog
+## [0.13.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dataloader-v0.12.0...instrumentation-dataloader-v0.13.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.12.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dataloader-v0.11.0...instrumentation-dataloader-v0.12.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.11.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dataloader-v0.10.0...instrumentation-dataloader-v0.11.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.10.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dataloader-v0.9.0...instrumentation-dataloader-v0.10.0) (2024-06-06)
diff --git a/plugins/node/instrumentation-dataloader/README.md b/plugins/node/instrumentation-dataloader/README.md
index 9f3a1f0832..bef652dfbd 100644
--- a/plugins/node/instrumentation-dataloader/README.md
+++ b/plugins/node/instrumentation-dataloader/README.md
@@ -15,9 +15,9 @@ Compatible with OpenTelemetry JS API and SDK `1.0+`.
npm install --save @opentelemetry/instrumentation-dataloader
```
-### Supported Versions
+## Supported Versions
-- `^2.0.0`
+- [`dataloader`](https://www.npmjs.com/package/dataloader) versions `>=2.0.0 <3`
## Usage
diff --git a/plugins/node/instrumentation-dataloader/package.json b/plugins/node/instrumentation-dataloader/package.json
index 39c1bf1e92..4246429abc 100644
--- a/plugins/node/instrumentation-dataloader/package.json
+++ b/plugins/node/instrumentation-dataloader/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-dataloader",
- "version": "0.10.0",
+ "version": "0.13.0",
"description": "OpenTelemetry instrumentation for `dataloader` data fetching layer",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,11 +10,10 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-dataloader --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"test-all-versions": "tav",
"version:update": "node ../../../scripts/version-update.js"
},
@@ -48,17 +47,15 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"dataloader": "2.2.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-dataloader#readme"
}
diff --git a/plugins/node/instrumentation-dataloader/src/index.ts b/plugins/node/instrumentation-dataloader/src/index.ts
index 400b81745a..a41cc4c8df 100644
--- a/plugins/node/instrumentation-dataloader/src/index.ts
+++ b/plugins/node/instrumentation-dataloader/src/index.ts
@@ -15,4 +15,4 @@
*/
export * from './types';
-export { DataloaderInstrumentation } from './instrumentation';
+export * from './instrumentation';
diff --git a/plugins/node/instrumentation-dataloader/src/instrumentation.ts b/plugins/node/instrumentation-dataloader/src/instrumentation.ts
index ecfa6ac9aa..21a192484f 100644
--- a/plugins/node/instrumentation-dataloader/src/instrumentation.ts
+++ b/plugins/node/instrumentation-dataloader/src/instrumentation.ts
@@ -27,6 +27,7 @@ import {
SpanKind,
} from '@opentelemetry/api';
import { DataloaderInstrumentationConfig } from './types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import type * as Dataloader from 'dataloader';
@@ -43,7 +44,7 @@ type DataloaderInternal = typeof Dataloader.prototype & {
type LoadFn = (typeof Dataloader.prototype)['load'];
type LoadManyFn = (typeof Dataloader.prototype)['loadMany'];
-export class DataloaderInstrumentation extends InstrumentationBase {
+export class DataloaderInstrumentation extends InstrumentationBase {
constructor(config: DataloaderInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -52,7 +53,7 @@ export class DataloaderInstrumentation extends InstrumentationBase {
return [
new InstrumentationNodeModuleDefinition(
MODULE_NAME,
- ['^2.0.0'],
+ ['>=2.0.0 <3'],
dataloader => {
this._patchLoad(dataloader.prototype);
this._patchLoadMany(dataloader.prototype);
@@ -72,14 +73,6 @@ export class DataloaderInstrumentation extends InstrumentationBase {
];
}
- override getConfig(): DataloaderInstrumentationConfig {
- return this._config;
- }
-
- override setConfig(config: DataloaderInstrumentationConfig = {}) {
- this._config = config;
- }
-
private shouldCreateSpans(): boolean {
const config = this.getConfig();
const hasParentSpan = trace.getSpan(context.active()) !== undefined;
diff --git a/plugins/node/instrumentation-fs/CHANGELOG.md b/plugins/node/instrumentation-fs/CHANGELOG.md
index 8077c1e627..752bd5ee68 100644
--- a/plugins/node/instrumentation-fs/CHANGELOG.md
+++ b/plugins/node/instrumentation-fs/CHANGELOG.md
@@ -1,5 +1,32 @@
# Changelog
+## [0.16.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fs-v0.15.0...instrumentation-fs-v0.16.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.15.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fs-v0.14.0...instrumentation-fs-v0.15.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.14.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fs-v0.13.0...instrumentation-fs-v0.14.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.13.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fs-v0.12.0...instrumentation-fs-v0.13.0) (2024-06-06)
diff --git a/plugins/node/instrumentation-fs/README.md b/plugins/node/instrumentation-fs/README.md
index 77718809da..669b33ee93 100644
--- a/plugins/node/instrumentation-fs/README.md
+++ b/plugins/node/instrumentation-fs/README.md
@@ -17,6 +17,10 @@ See the full list of instrumented functions in [constants.ts](src/constants.ts);
npm install --save @opentelemetry/instrumentation-fs
```
+## Supported Versions
+
+- Node.js `>=14`
+
## Usage
```js
diff --git a/plugins/node/instrumentation-fs/package.json b/plugins/node/instrumentation-fs/package.json
index f6ee4bcb9e..4f72b011fc 100644
--- a/plugins/node/instrumentation-fs/package.json
+++ b/plugins/node/instrumentation-fs/package.json
@@ -1,17 +1,17 @@
{
"name": "@opentelemetry/instrumentation-fs",
- "version": "0.13.0",
+ "version": "0.16.0",
"description": "OpenTelemetry instrumentation for `node:fs` file system interactions module",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-fs --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
@@ -48,18 +48,16 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"@types/sinon": "^10.0.11",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-fs#readme"
}
diff --git a/plugins/node/instrumentation-fs/src/index.ts b/plugins/node/instrumentation-fs/src/index.ts
index 27e4d2717e..c26f998cff 100644
--- a/plugins/node/instrumentation-fs/src/index.ts
+++ b/plugins/node/instrumentation-fs/src/index.ts
@@ -14,11 +14,5 @@
* limitations under the License.
*/
-import FsInstrumentation from './instrumentation';
-
-export { FsInstrumentation };
-
export * from './instrumentation';
export * from './types';
-
-export default FsInstrumentation;
diff --git a/plugins/node/instrumentation-fs/src/instrumentation.ts b/plugins/node/instrumentation-fs/src/instrumentation.ts
index 57db632a0e..9976af4ba1 100644
--- a/plugins/node/instrumentation-fs/src/instrumentation.ts
+++ b/plugins/node/instrumentation-fs/src/instrumentation.ts
@@ -21,6 +21,7 @@ import {
InstrumentationNodeModuleDefinition,
isWrapped,
} from '@opentelemetry/instrumentation';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import {
CALLBACK_FUNCTIONS,
@@ -51,7 +52,7 @@ function patchedFunctionWithOriginalProperties<
return Object.assign(patchedFunction, original);
}
-export default class FsInstrumentation extends InstrumentationBase {
+export class FsInstrumentation extends InstrumentationBase {
constructor(config: FsInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -438,7 +439,7 @@ export default class FsInstrumentation extends InstrumentationBase {
protected _runCreateHook(
...args: Parameters
): ReturnType {
- const { createHook } = this.getConfig() as FsInstrumentationConfig;
+ const { createHook } = this.getConfig();
if (typeof createHook === 'function') {
try {
return createHook(...args);
@@ -450,7 +451,7 @@ export default class FsInstrumentation extends InstrumentationBase {
}
protected _runEndHook(...args: Parameters): ReturnType {
- const { endHook } = this.getConfig() as FsInstrumentationConfig;
+ const { endHook } = this.getConfig();
if (typeof endHook === 'function') {
try {
endHook(...args);
@@ -467,7 +468,7 @@ export default class FsInstrumentation extends InstrumentationBase {
return false;
}
- const { requireParentSpan } = this.getConfig() as FsInstrumentationConfig;
+ const { requireParentSpan } = this.getConfig();
if (requireParentSpan) {
const parentSpan = api.trace.getSpan(context);
if (parentSpan == null) {
diff --git a/plugins/node/instrumentation-fs/test/fs.test.ts b/plugins/node/instrumentation-fs/test/fs.test.ts
index e8f97b6ab2..4e639ceb82 100644
--- a/plugins/node/instrumentation-fs/test/fs.test.ts
+++ b/plugins/node/instrumentation-fs/test/fs.test.ts
@@ -22,7 +22,7 @@ import {
} from '@opentelemetry/sdk-trace-base';
import * as assert from 'assert';
import { promisify } from 'util';
-import Instrumentation from '../src';
+import { FsInstrumentation } from '../src';
import * as sinon from 'sinon';
import type * as FSType from 'fs';
import tests, { TestCase, TestCreator } from './definitions';
@@ -40,8 +40,8 @@ const TEST_VALUE = 'test.attr.value';
const createHook = sinon.spy(
(fnName: FMember | FPMember, { args, span }) => {
- // `ts-node`, which we use via `ts-mocha` also patches module loading and creates
- // a lot of unrelated spans. Filter those out.
+ // `ts-node`, which we use via `mocha` also patches module loading and
+ // creates a lot of unrelated spans. Filter those out.
if (['readFileSync', 'existsSync'].includes(fnName as string)) {
const filename = args[0];
if (!/test\/fixtures/.test(filename)) {
@@ -66,12 +66,12 @@ provider.addSpanProcessor(new SimpleSpanProcessor(memoryExporter));
describe('fs instrumentation', () => {
let contextManager: AsyncHooksContextManager;
let fs: typeof FSType;
- let plugin: Instrumentation;
+ let plugin: FsInstrumentation;
beforeEach(async () => {
contextManager = new AsyncHooksContextManager();
context.setGlobalContextManager(contextManager.enable());
- plugin = new Instrumentation(pluginConfig);
+ plugin = new FsInstrumentation(pluginConfig);
plugin.setTracerProvider(provider);
plugin.enable();
fs = require('fs');
diff --git a/plugins/node/instrumentation-fs/test/fsHooks.test.ts b/plugins/node/instrumentation-fs/test/fsHooks.test.ts
index 1ae9e5b0eb..bdffab00e8 100644
--- a/plugins/node/instrumentation-fs/test/fsHooks.test.ts
+++ b/plugins/node/instrumentation-fs/test/fsHooks.test.ts
@@ -19,7 +19,7 @@ import {
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
import * as assert from 'assert';
-import Instrumentation from '../src';
+import { FsInstrumentation } from '../src';
import * as sinon from 'sinon';
import type * as FSType from 'fs';
import type { FsInstrumentationConfig } from '../src/types';
@@ -76,11 +76,11 @@ const assertFailingCallHooks = (expectedFunctionName: string) => {
};
describe('fs instrumentation: hooks', () => {
- let plugin: Instrumentation;
+ let plugin: FsInstrumentation;
let fs: typeof FSType;
beforeEach(async () => {
- plugin = new Instrumentation(pluginConfig);
+ plugin = new FsInstrumentation(pluginConfig);
plugin.setTracerProvider(provider);
plugin.setConfig(pluginConfig as FsInstrumentationConfig);
plugin.enable();
diff --git a/plugins/node/instrumentation-fs/test/fsPromises.test.ts b/plugins/node/instrumentation-fs/test/fsPromises.test.ts
index 9af00a13a5..0400f57ee7 100644
--- a/plugins/node/instrumentation-fs/test/fsPromises.test.ts
+++ b/plugins/node/instrumentation-fs/test/fsPromises.test.ts
@@ -21,7 +21,7 @@ import {
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
import * as assert from 'assert';
-import Instrumentation from '../src';
+import { FsInstrumentation } from '../src';
import * as sinon from 'sinon';
import type * as FSPromisesType from 'fs/promises';
import tests, { FsFunction, TestCase, TestCreator } from './definitions';
@@ -45,12 +45,12 @@ provider.addSpanProcessor(new SimpleSpanProcessor(memoryExporter));
describe('fs/promises instrumentation', () => {
let contextManager: AsyncHooksContextManager;
let fsPromises: typeof FSPromisesType;
- let plugin: Instrumentation;
+ let plugin: FsInstrumentation;
beforeEach(async () => {
contextManager = new AsyncHooksContextManager();
context.setGlobalContextManager(contextManager.enable());
- plugin = new Instrumentation(pluginConfig);
+ plugin = new FsInstrumentation(pluginConfig);
plugin.setTracerProvider(provider);
plugin.enable();
fsPromises = require('fs/promises');
diff --git a/plugins/node/instrumentation-fs/test/fsPromisesHooks.test.ts b/plugins/node/instrumentation-fs/test/fsPromisesHooks.test.ts
index d69be21ed9..be3db71202 100644
--- a/plugins/node/instrumentation-fs/test/fsPromisesHooks.test.ts
+++ b/plugins/node/instrumentation-fs/test/fsPromisesHooks.test.ts
@@ -19,7 +19,7 @@ import {
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
import * as assert from 'assert';
-import Instrumentation from '../src';
+import { FsInstrumentation } from '../src';
import * as sinon from 'sinon';
import type * as FSPromisesType from 'fs/promises';
import type { FsInstrumentationConfig } from '../src/types';
@@ -80,11 +80,11 @@ const assertFailingCallHooks = (expectedFunctionName: string) => {
const fsConstantsR_OK = 4;
describe('fs/promises instrumentation: hooks', () => {
- let plugin: Instrumentation;
+ let plugin: FsInstrumentation;
let fsPromises: typeof FSPromisesType;
beforeEach(async () => {
- plugin = new Instrumentation(pluginConfig);
+ plugin = new FsInstrumentation(pluginConfig);
plugin.setTracerProvider(provider);
plugin.setConfig(pluginConfig as FsInstrumentationConfig);
plugin.enable();
diff --git a/plugins/node/instrumentation-fs/test/parent.test.ts b/plugins/node/instrumentation-fs/test/parent.test.ts
index 9ca6d90059..903e7e48e8 100644
--- a/plugins/node/instrumentation-fs/test/parent.test.ts
+++ b/plugins/node/instrumentation-fs/test/parent.test.ts
@@ -18,7 +18,7 @@ import {
InMemorySpanExporter,
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
-import Instrumentation from '../src';
+import { FsInstrumentation } from '../src';
import * as assert from 'assert';
import type * as FSType from 'fs';
import type { FsInstrumentationConfig } from '../src/types';
@@ -32,14 +32,14 @@ provider.addSpanProcessor(new SimpleSpanProcessor(memoryExporter));
const tracer = provider.getTracer('default');
describe('fs instrumentation: requireParentSpan', () => {
- let plugin: Instrumentation;
+ let plugin: FsInstrumentation;
let fs: typeof FSType;
let ambientContext: api.Context;
let endRootSpan: () => void;
let expectedAmbientSpanCount: number;
const initializePlugin = (pluginConfig: FsInstrumentationConfig) => {
- plugin = new Instrumentation();
+ plugin = new FsInstrumentation();
plugin.setTracerProvider(provider);
plugin.setConfig(pluginConfig);
plugin.enable();
diff --git a/plugins/node/instrumentation-kafkajs/CHANGELOG.md b/plugins/node/instrumentation-kafkajs/CHANGELOG.md
index 0829a25384..f902d9069d 100644
--- a/plugins/node/instrumentation-kafkajs/CHANGELOG.md
+++ b/plugins/node/instrumentation-kafkajs/CHANGELOG.md
@@ -1,5 +1,44 @@
# Changelog
+## [0.4.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-kafkajs-v0.3.0...instrumentation-kafkajs-v0.4.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.3.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-kafkajs-v0.2.0...instrumentation-kafkajs-v0.3.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.2.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-kafkajs-v0.1.0...instrumentation-kafkajs-v0.2.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.1.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-kafkajs-v0.0.1...instrumentation-kafkajs-v0.1.0) (2024-06-06)
diff --git a/plugins/node/instrumentation-kafkajs/README.md b/plugins/node/instrumentation-kafkajs/README.md
index 9f00d430e2..a5f54ee2ee 100644
--- a/plugins/node/instrumentation-kafkajs/README.md
+++ b/plugins/node/instrumentation-kafkajs/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-kafkajs
### Supported versions
-- `<3.0.0`
+- [`kafkajs`](https://www.npmjs.com/package/kafkajs) versions `>=0.1.0 <3`
## Usage
diff --git a/plugins/node/instrumentation-kafkajs/package.json b/plugins/node/instrumentation-kafkajs/package.json
index 8ea5ebca2f..4bb40cbc0d 100644
--- a/plugins/node/instrumentation-kafkajs/package.json
+++ b/plugins/node/instrumentation-kafkajs/package.json
@@ -1,17 +1,17 @@
{
"name": "@opentelemetry/instrumentation-kafkajs",
- "version": "0.1.0",
+ "version": "0.4.0",
"description": "OpenTelemetry instrumentation for `kafkajs` messaging client for Apache Kafka",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "ts-mocha --require @opentelemetry/contrib-test-utils -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "mocha --require @opentelemetry/contrib-test-utils 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-kafkajs --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
@@ -43,22 +43,20 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.24.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"@types/sinon": "^10.0.11",
"kafkajs": "^2.2.4",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.24.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-kafkajs#readme"
}
diff --git a/plugins/node/instrumentation-kafkajs/src/instrumentation.ts b/plugins/node/instrumentation-kafkajs/src/instrumentation.ts
index ed3eeeea27..1dacb4351c 100644
--- a/plugins/node/instrumentation-kafkajs/src/instrumentation.ts
+++ b/plugins/node/instrumentation-kafkajs/src/instrumentation.ts
@@ -44,6 +44,7 @@ import type {
Consumer,
} from 'kafkajs';
import { KafkaJsInstrumentationConfig } from './types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import { bufferTextMapGetter } from './propagator';
import {
@@ -53,9 +54,7 @@ import {
isWrapped,
} from '@opentelemetry/instrumentation';
-export class KafkaJsInstrumentation extends InstrumentationBase {
- protected override _config!: KafkaJsInstrumentationConfig;
-
+export class KafkaJsInstrumentation extends InstrumentationBase {
constructor(config: KafkaJsInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -72,7 +71,7 @@ export class KafkaJsInstrumentation extends InstrumentationBase {
const module = new InstrumentationNodeModuleDefinition(
'kafkajs',
- ['< 3'],
+ ['>=0.1.0 <3'],
(moduleExports: typeof kafkaJs) => {
unpatch(moduleExports);
this._wrap(
@@ -367,9 +366,10 @@ export class KafkaJsInstrumentation extends InstrumentationBase {
context
);
- if (this._config?.consumerHook && message) {
+ const { consumerHook } = this.getConfig();
+ if (consumerHook && message) {
safeExecuteInTheMiddle(
- () => this._config.consumerHook!(span, { topic, message }),
+ () => consumerHook(span, { topic, message }),
e => {
if (e) this._diag.error('consumerHook error', e);
},
@@ -392,9 +392,10 @@ export class KafkaJsInstrumentation extends InstrumentationBase {
message.headers = message.headers ?? {};
propagation.inject(trace.setSpan(context.active(), span), message.headers);
- if (this._config?.producerHook) {
+ const { producerHook } = this.getConfig();
+ if (producerHook) {
safeExecuteInTheMiddle(
- () => this._config.producerHook!(span, { topic, message }),
+ () => producerHook(span, { topic, message }),
e => {
if (e) this._diag.error('producerHook error', e);
},
diff --git a/plugins/node/instrumentation-lru-memoizer/.tav.yml b/plugins/node/instrumentation-lru-memoizer/.tav.yml
index bf8a138d1b..e6a3bbf017 100644
--- a/plugins/node/instrumentation-lru-memoizer/.tav.yml
+++ b/plugins/node/instrumentation-lru-memoizer/.tav.yml
@@ -1,4 +1,6 @@
'lru-memoizer':
- versions: ">=1.3 <3"
+ versions:
+ include: ">=1.3 <3"
+ mode: latest-minors
commands:
- npm test
diff --git a/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md b/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md
index a9224dad66..eb186e8aea 100644
--- a/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md
+++ b/plugins/node/instrumentation-lru-memoizer/CHANGELOG.md
@@ -1,5 +1,46 @@
# Changelog
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-lru-memoizer-v0.40.0...instrumentation-lru-memoizer-v0.41.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-lru-memoizer-v0.39.0...instrumentation-lru-memoizer-v0.40.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-lru-memoizer-v0.38.0...instrumentation-lru-memoizer-v0.39.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-lru-memoizer-v0.37.0...instrumentation-lru-memoizer-v0.38.0) (2024-06-06)
diff --git a/plugins/node/instrumentation-lru-memoizer/README.md b/plugins/node/instrumentation-lru-memoizer/README.md
index d59881a792..0e6d62ed4c 100644
--- a/plugins/node/instrumentation-lru-memoizer/README.md
+++ b/plugins/node/instrumentation-lru-memoizer/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-lru-memoizer
## Supported Versions
-- `>=1.3 <3`
+- [`lru-memorizer`](https://www.npmjs.com/package/lru-memoizer) versions `>=1.3.0 <3`
## Usage
diff --git a/plugins/node/instrumentation-lru-memoizer/package.json b/plugins/node/instrumentation-lru-memoizer/package.json
index 3406f6d31b..b50bcd9e93 100644
--- a/plugins/node/instrumentation-lru-memoizer/package.json
+++ b/plugins/node/instrumentation-lru-memoizer/package.json
@@ -1,18 +1,18 @@
{
"name": "@opentelemetry/instrumentation-lru-memoizer",
- "version": "0.38.0",
+ "version": "0.41.0",
"description": "OpenTelemetry instrumentation for `lru-memoizer` function memoization using lru-cache",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/**/*.test.ts'",
+ "test": "mocha --require '@opentelemetry/contrib-test-utils' 'test/**/*.test.ts'",
"test-all-versions": "tav",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-lru-memoizer --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
@@ -43,21 +43,19 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@types/lru-cache": "7.10.9",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@types/lru-cache": "7.10.10",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"expect": "29.2.0",
"lru-memoizer": "2.1.4",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-lru-memoizer#readme"
}
diff --git a/plugins/node/instrumentation-lru-memoizer/src/index.ts b/plugins/node/instrumentation-lru-memoizer/src/index.ts
index fc85cdf0f8..24c76056a1 100644
--- a/plugins/node/instrumentation-lru-memoizer/src/index.ts
+++ b/plugins/node/instrumentation-lru-memoizer/src/index.ts
@@ -14,8 +14,4 @@
* limitations under the License.
*/
-import LruMemoizerInstrumentation from './instrumentation';
-
-export { LruMemoizerInstrumentation };
-
-export default LruMemoizerInstrumentation;
+export * from './instrumentation';
diff --git a/plugins/node/instrumentation-lru-memoizer/src/instrumentation.ts b/plugins/node/instrumentation-lru-memoizer/src/instrumentation.ts
index 6224fe7edf..a48b4c403f 100644
--- a/plugins/node/instrumentation-lru-memoizer/src/instrumentation.ts
+++ b/plugins/node/instrumentation-lru-memoizer/src/instrumentation.ts
@@ -20,9 +20,10 @@ import {
InstrumentationConfig,
InstrumentationNodeModuleDefinition,
} from '@opentelemetry/instrumentation';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
-export default class LruMemoizerInstrumentation extends InstrumentationBase {
+export class LruMemoizerInstrumentation extends InstrumentationBase {
constructor(config: InstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
diff --git a/plugins/node/instrumentation-lru-memoizer/test/index.test.ts b/plugins/node/instrumentation-lru-memoizer/test/index.test.ts
index aced9416b4..42f7605046 100644
--- a/plugins/node/instrumentation-lru-memoizer/test/index.test.ts
+++ b/plugins/node/instrumentation-lru-memoizer/test/index.test.ts
@@ -13,7 +13,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-import LruMemoizerInstrumentation from '../src';
+import { LruMemoizerInstrumentation } from '../src';
import { trace, context } from '@opentelemetry/api';
import { expect } from 'expect';
diff --git a/plugins/node/instrumentation-mongoose/.tav.yml b/plugins/node/instrumentation-mongoose/.tav.yml
index 9824934548..ba89e40faf 100644
--- a/plugins/node/instrumentation-mongoose/.tav.yml
+++ b/plugins/node/instrumentation-mongoose/.tav.yml
@@ -1,5 +1,15 @@
-'mongoose':
- # Test all the latest minor versions in the range ">=5.9.7 <7".
- versions: "5.9.7 || 5.9.29 || 5.10.19 || 5.11.20 || 5.12.15 || 5.13.21 || 6.0.15 || 6.1.10 || 6.2.11 || 6.3.9 || 6.4.7 || 6.5.5 || 6.6.7 || 6.7.5 || 6.8.4 || 6.9.3 || 6.10.5 || 6.11.6 || ^6.12.3"
- commands:
- - npm run test
+mongoose:
+ - versions:
+ include: ">=5.9.7 <7"
+ mode: latest-minors
+ commands: npm run test-v5-v6
+ - versions:
+ include: ">=7 <8"
+ mode: latest-minors
+ node: '>=14.20.1'
+ commands: npm run test-v7-v8
+ - versions:
+ include: ">=8 <9"
+ mode: latest-minors
+ node: '>=16.20.1'
+ commands: npm run test-v7-v8
diff --git a/plugins/node/instrumentation-mongoose/CHANGELOG.md b/plugins/node/instrumentation-mongoose/CHANGELOG.md
index c47f2e7f83..bdf9542ca0 100644
--- a/plugins/node/instrumentation-mongoose/CHANGELOG.md
+++ b/plugins/node/instrumentation-mongoose/CHANGELOG.md
@@ -1,5 +1,51 @@
# Changelog
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongoose-v0.42.0...instrumentation-mongoose-v0.43.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongoose-v0.41.0...instrumentation-mongoose-v0.42.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongoose-v0.40.0...instrumentation-mongoose-v0.41.0) (2024-08-27)
+
+
+### Features
+
+* **instrumentation-mongoose:** Support v7 and v8 ([#2353](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2353)) ([770130a](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/770130a7a41125dbf8a8c18b3384e5fcc370deef))
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongoose-v0.39.0...instrumentation-mongoose-v0.40.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongoose-v0.38.1...instrumentation-mongoose-v0.39.0) (2024-06-06)
diff --git a/plugins/node/instrumentation-mongoose/README.md b/plugins/node/instrumentation-mongoose/README.md
index 159e01568b..31a19b4e7d 100644
--- a/plugins/node/instrumentation-mongoose/README.md
+++ b/plugins/node/instrumentation-mongoose/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-mongoose
## Supported Versions
-- `>=5.9.7 <7`
+- [`mongoose`](https://www.npmjs.com/package/mongoose) versions `>=5.9.7 <9`
## Usage
@@ -38,20 +38,6 @@ registerInstrumentations({
})
```
-## Migration From opentelemetry-instrumentation-mongoose
-
-This instrumentation was originally published and maintained under the name `"opentelemetry-instrumentation-mongoose"` in [this repo](https://github.com/aspecto-io/opentelemetry-ext-js).
-
-Few breaking changes were made during porting to the contrib repo to align with conventions:
-
-### Hook Info
-
-The instrumentation's config `responseHook` functions signature changed, so the second function parameter is info object, containing the relevant hook data.
-
-### `moduleVersionAttributeName` config option
-
-The `moduleVersionAttributeName` config option is removed. To add the mongoose package version to spans, use the `moduleVersion` attribute in hook info for `responseHook` function.
-
## Semantic Conventions
This package uses `@opentelemetry/semantic-conventions` version `1.22+`, which implements Semantic Convention [Version 1.7.0](https://github.com/open-telemetry/opentelemetry-specification/blob/v1.7.0/semantic_conventions/README.md)
diff --git a/plugins/node/instrumentation-mongoose/package.json b/plugins/node/instrumentation-mongoose/package.json
index 6dd3d52944..226adace35 100644
--- a/plugins/node/instrumentation-mongoose/package.json
+++ b/plugins/node/instrumentation-mongoose/package.json
@@ -1,19 +1,21 @@
{
"name": "@opentelemetry/instrumentation-mongoose",
- "version": "0.39.0",
+ "version": "0.43.0",
"description": "OpenTelemetry instrumentation for `mongoose` database object data modeling (ODM) library for MongoDB",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
"docker:start": "docker run -e MONGODB_DB=opentelemetry-tests -e MONGODB_PORT=27017 -e MONGODB_HOST=127.0.0.1 -p 27017:27017 --rm mongo",
- "test": "ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/**/*.test.ts'",
+ "test": "npm run test-v5-v6",
+ "test-v5-v6": "nyc mocha --require '@opentelemetry/contrib-test-utils' 'test/mongoose-common.test.ts' 'test/**/mongoose-v5-v6.test.ts'",
+ "test-v7-v8": "nyc mocha --require '@opentelemetry/contrib-test-utils' 'test/mongoose-common.test.ts' 'test/**/mongoose-v7-v8.test.ts'",
"test-all-versions": "tav",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-mongoose --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
@@ -46,23 +48,21 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"expect": "29.2.0",
- "mocha": "7.2.0",
- "mongoose": "6.12.3",
+ "mongoose": "6.13.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-mongoose#readme"
}
diff --git a/plugins/node/instrumentation-mongoose/src/mongoose.ts b/plugins/node/instrumentation-mongoose/src/mongoose.ts
index 827b42e7cd..30fbddd661 100644
--- a/plugins/node/instrumentation-mongoose/src/mongoose.ts
+++ b/plugins/node/instrumentation-mongoose/src/mongoose.ts
@@ -27,6 +27,7 @@ import {
InstrumentationModuleDefinition,
InstrumentationNodeModuleDefinition,
} from '@opentelemetry/instrumentation';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import {
SEMATTRS_DB_OPERATION,
@@ -34,44 +35,71 @@ import {
SEMATTRS_DB_SYSTEM,
} from '@opentelemetry/semantic-conventions';
-const contextCaptureFunctions = [
- 'remove',
+const contextCaptureFunctionsCommon = [
'deleteOne',
'deleteMany',
'find',
'findOne',
'estimatedDocumentCount',
'countDocuments',
- 'count',
'distinct',
'where',
'$where',
'findOneAndUpdate',
'findOneAndDelete',
'findOneAndReplace',
+];
+
+const contextCaptureFunctions6 = [
+ 'remove',
+ 'count',
+ 'findOneAndRemove',
+ ...contextCaptureFunctionsCommon,
+];
+const contextCaptureFunctions7 = [
+ 'count',
'findOneAndRemove',
+ ...contextCaptureFunctionsCommon,
];
+const contextCaptureFunctions8 = [...contextCaptureFunctionsCommon];
+
+function getContextCaptureFunctions(
+ moduleVersion: string | undefined
+): string[] {
+ /* istanbul ignore next */
+ if (!moduleVersion) {
+ return contextCaptureFunctionsCommon;
+ } else if (moduleVersion.startsWith('6.') || moduleVersion.startsWith('5.')) {
+ return contextCaptureFunctions6;
+ } else if (moduleVersion.startsWith('7.')) {
+ return contextCaptureFunctions7;
+ } else {
+ return contextCaptureFunctions8;
+ }
+}
+
+function instrumentRemove(moduleVersion: string | undefined): boolean {
+ return (
+ (moduleVersion &&
+ (moduleVersion.startsWith('5.') || moduleVersion.startsWith('6.'))) ||
+ false
+ );
+}
// when mongoose functions are called, we store the original call context
// and then set it as the parent for the spans created by Query/Aggregate exec()
// calls. this bypass the unlinked spans issue on thenables await operations.
export const _STORED_PARENT_SPAN: unique symbol = Symbol('stored-parent-span');
-export class MongooseInstrumentation extends InstrumentationBase {
- protected override _config!: MongooseInstrumentationConfig;
-
+export class MongooseInstrumentation extends InstrumentationBase {
constructor(config: MongooseInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
- override setConfig(config: MongooseInstrumentationConfig = {}) {
- this._config = Object.assign({}, config);
- }
-
protected init(): InstrumentationModuleDefinition {
const module = new InstrumentationNodeModuleDefinition(
'mongoose',
- ['>=5.9.7 <7'],
+ ['>=5.9.7 <9'],
this.patch.bind(this),
this.unpatch.bind(this)
);
@@ -93,11 +121,14 @@ export class MongooseInstrumentation extends InstrumentationBase {
// so we need to apply the same logic after instrumenting the save function.
moduleExports.Model.prototype.$save = moduleExports.Model.prototype.save;
- this._wrap(
- moduleExports.Model.prototype,
- 'remove',
- this.patchOnModelMethods('remove', moduleVersion)
- );
+ if (instrumentRemove(moduleVersion)) {
+ this._wrap(
+ moduleExports.Model.prototype,
+ 'remove',
+ this.patchOnModelMethods('remove', moduleVersion)
+ );
+ }
+
this._wrap(
moduleExports.Query.prototype,
'exec',
@@ -109,6 +140,8 @@ export class MongooseInstrumentation extends InstrumentationBase {
this.patchAggregateExec(moduleVersion)
);
+ const contextCaptureFunctions = getContextCaptureFunctions(moduleVersion);
+
contextCaptureFunctions.forEach((funcName: string) => {
this._wrap(
moduleExports.Query.prototype,
@@ -121,11 +154,20 @@ export class MongooseInstrumentation extends InstrumentationBase {
return moduleExports;
}
- private unpatch(moduleExports: typeof mongoose): void {
+ private unpatch(
+ moduleExports: typeof mongoose,
+ moduleVersion: string | undefined
+ ): void {
+ const contextCaptureFunctions = getContextCaptureFunctions(moduleVersion);
+
this._unwrap(moduleExports.Model.prototype, 'save');
// revert the patch for $save which we applied by aliasing it to patched `save`
moduleExports.Model.prototype.$save = moduleExports.Model.prototype.save;
- this._unwrap(moduleExports.Model.prototype, 'remove');
+
+ if (instrumentRemove(moduleVersion)) {
+ this._unwrap(moduleExports.Model.prototype, 'remove');
+ }
+
this._unwrap(moduleExports.Query.prototype, 'exec');
this._unwrap(moduleExports.Aggregate.prototype, 'exec');
@@ -140,7 +182,7 @@ export class MongooseInstrumentation extends InstrumentationBase {
return (originalAggregate: Function) => {
return function exec(this: any, callback?: Function) {
if (
- self._config.requireParentSpan &&
+ self.getConfig().requireParentSpan &&
trace.getSpan(context.active()) === undefined
) {
return originalAggregate.apply(this, arguments);
@@ -148,12 +190,15 @@ export class MongooseInstrumentation extends InstrumentationBase {
const parentSpan = this[_STORED_PARENT_SPAN];
const attributes: Attributes = {};
- if (self._config.dbStatementSerializer) {
- attributes[SEMATTRS_DB_STATEMENT] =
- self._config.dbStatementSerializer('aggregate', {
+ const { dbStatementSerializer } = self.getConfig();
+ if (dbStatementSerializer) {
+ attributes[SEMATTRS_DB_STATEMENT] = dbStatementSerializer(
+ 'aggregate',
+ {
options: this.options,
aggregatePipeline: this._pipeline,
- });
+ }
+ );
}
const span = self._startSpan(
@@ -181,7 +226,7 @@ export class MongooseInstrumentation extends InstrumentationBase {
return (originalExec: Function) => {
return function exec(this: any, callback?: Function) {
if (
- self._config.requireParentSpan &&
+ self.getConfig().requireParentSpan &&
trace.getSpan(context.active()) === undefined
) {
return originalExec.apply(this, arguments);
@@ -189,14 +234,14 @@ export class MongooseInstrumentation extends InstrumentationBase {
const parentSpan = this[_STORED_PARENT_SPAN];
const attributes: Attributes = {};
- if (self._config.dbStatementSerializer) {
- attributes[SEMATTRS_DB_STATEMENT] =
- self._config.dbStatementSerializer(this.op, {
- condition: this._conditions,
- updates: this._update,
- options: this.options,
- fields: this._fields,
- });
+ const { dbStatementSerializer } = self.getConfig();
+ if (dbStatementSerializer) {
+ attributes[SEMATTRS_DB_STATEMENT] = dbStatementSerializer(this.op, {
+ condition: this._conditions,
+ updates: this._update,
+ options: this.options,
+ fields: this._fields,
+ });
}
const span = self._startSpan(
this.mongooseCollection,
@@ -223,7 +268,7 @@ export class MongooseInstrumentation extends InstrumentationBase {
return (originalOnModelFunction: Function) => {
return function method(this: any, options?: any, callback?: Function) {
if (
- self._config.requireParentSpan &&
+ self.getConfig().requireParentSpan &&
trace.getSpan(context.active()) === undefined
) {
return originalOnModelFunction.apply(this, arguments);
@@ -234,9 +279,12 @@ export class MongooseInstrumentation extends InstrumentationBase {
serializePayload.options = options;
}
const attributes: Attributes = {};
- if (self._config.dbStatementSerializer) {
- attributes[SEMATTRS_DB_STATEMENT] =
- self._config.dbStatementSerializer(op, serializePayload);
+ const { dbStatementSerializer } = self.getConfig();
+ if (dbStatementSerializer) {
+ attributes[SEMATTRS_DB_STATEMENT] = dbStatementSerializer(
+ op,
+ serializePayload
+ );
}
const span = self._startSpan(
this.constructor.collection,
@@ -331,7 +379,7 @@ export class MongooseInstrumentation extends InstrumentationBase {
originalThis,
span,
args,
- self._config.responseHook,
+ self.getConfig().responseHook,
moduleVersion
)
);
@@ -342,14 +390,14 @@ export class MongooseInstrumentation extends InstrumentationBase {
return handlePromiseResponse(
response,
span,
- self._config.responseHook,
+ self.getConfig().responseHook,
moduleVersion
);
}
}
private _callOriginalFunction(originalFunction: (...args: any[]) => T): T {
- if (this._config?.suppressInternalInstrumentation) {
+ if (this.getConfig().suppressInternalInstrumentation) {
return context.with(suppressTracing(context.active()), originalFunction);
} else {
return originalFunction();
diff --git a/plugins/node/instrumentation-mongoose/test/mongoose.test.ts b/plugins/node/instrumentation-mongoose/test/mongoose-common.test.ts
similarity index 68%
rename from plugins/node/instrumentation-mongoose/test/mongoose.test.ts
rename to plugins/node/instrumentation-mongoose/test/mongoose-common.test.ts
index 3badef8d6d..3a8a16086d 100644
--- a/plugins/node/instrumentation-mongoose/test/mongoose.test.ts
+++ b/plugins/node/instrumentation-mongoose/test/mongoose-common.test.ts
@@ -37,7 +37,7 @@ import { assertSpan, getStatement } from './asserts';
import { DB_NAME, MONGO_URI } from './config';
// Please run mongodb in the background: docker run -d -p 27017:27017 -v ~/data:/data/db mongo
-describe('mongoose instrumentation', () => {
+describe('mongoose instrumentation [common]', () => {
before(async () => {
try {
await mongoose.connect(MONGO_URI, {
@@ -82,33 +82,16 @@ describe('mongoose instrumentation', () => {
await User.collection.drop().catch();
});
- it('instrumenting save operation with promise', async () => {
- const document = {
- firstName: 'Test first name',
- lastName: 'Test last name',
- email: 'test@example.com',
- };
- const user: IUser = new User(document);
-
- await user.save();
-
- const spans = getTestSpans();
- expect(spans.length).toBe(1);
- assertSpan(spans[0] as ReadableSpan);
- expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('save');
- const statement = getStatement(spans[0] as ReadableSpan);
- expect(statement.document).toEqual(expect.objectContaining(document));
- });
-
- describe('when save call does not have callback', async () => {
- it('instrumenting save operation with option property set', async () => {
+ describe('instrumenting save operation', async () => {
+ it('instrumenting save operation with promise', async () => {
const document = {
firstName: 'Test first name',
lastName: 'Test last name',
email: 'test@example.com',
};
const user: IUser = new User(document);
- await user.save({ wtimeout: 42 });
+
+ await user.save();
const spans = getTestSpans();
expect(spans.length).toBe(1);
@@ -116,74 +99,29 @@ describe('mongoose instrumentation', () => {
expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('save');
const statement = getStatement(spans[0] as ReadableSpan);
expect(statement.document).toEqual(expect.objectContaining(document));
- expect(statement.options.wtimeout).toEqual(42);
-
- const createdUser = await User.findById(user._id).lean();
- expect(createdUser?._id.toString()).toEqual(user._id.toString());
- });
- });
-
- describe('when save call has callback', async () => {
- it('instrumenting save operation with promise and option property set', done => {
- const document = {
- firstName: 'Test first name',
- lastName: 'Test last name',
- email: 'test@example.com',
- };
- const user: IUser = new User(document);
- user.save({ wtimeout: 42 }, async () => {
- const spans = getTestSpans();
- expect(spans.length).toBe(1);
- assertSpan(spans[0] as ReadableSpan);
- expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('save');
- const statement = getStatement(spans[0] as ReadableSpan);
- expect(statement.document).toEqual(expect.objectContaining(document));
- expect(statement.options.wtimeout).toEqual(42);
-
- const createdUser = await User.findById(user._id).lean();
- expect(createdUser?._id.toString()).toEqual(user._id.toString());
- done();
- });
- });
-
- it('instrumenting save operation with generic options and callback', done => {
- const document = {
- firstName: 'Test first name',
- lastName: 'Test last name',
- email: 'test@example.com',
- };
- const user: IUser = new User(document);
-
- user.save({}, () => {
- const spans = getTestSpans();
-
- expect(spans.length).toBe(1);
- assertSpan(spans[0] as ReadableSpan);
- expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('save');
- const statement = getStatement(spans[0] as ReadableSpan);
- expect(statement.document).toEqual(expect.objectContaining(document));
- done();
- });
});
- it('instrumenting save operation with only callback', done => {
+ it('instrumenting save operation with option property set', async () => {
const document = {
firstName: 'Test first name',
lastName: 'Test last name',
email: 'test@example.com',
};
const user: IUser = new User(document);
+ await user.save({ wtimeout: 42 });
- user.save(() => {
- const spans = getTestSpans();
+ const spans = getTestSpans();
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('save');
+ const statement = getStatement(spans[0] as ReadableSpan);
+ expect(statement.document).toEqual(expect.objectContaining(document));
+ expect(statement.options.wtimeout).toEqual(42);
- expect(spans.length).toBe(1);
- assertSpan(spans[0] as ReadableSpan);
- expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('save');
- const statement = getStatement(spans[0] as ReadableSpan);
- expect(statement.document).toEqual(expect.objectContaining(document));
- done();
- });
+ const createdUser = await User.findById(user._id).lean();
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
+ // @ts-ignore - v8 made `._id` optional
+ expect(createdUser?._id.toString()).toEqual(user._id.toString());
});
});
@@ -234,31 +172,6 @@ describe('mongoose instrumentation', () => {
});
});
- it('instrumenting remove operation [deprecated]', async () => {
- const user = await User.findOne({ email: 'john.doe@example.com' });
- await user!.remove();
-
- const spans = getTestSpans();
- expect(spans.length).toBe(2);
- assertSpan(spans[1] as ReadableSpan);
- expect(spans[1].attributes[SEMATTRS_DB_OPERATION]).toBe('remove');
- });
-
- it('instrumenting remove operation with callbacks [deprecated]', done => {
- User.findOne({ email: 'john.doe@example.com' }).then(user =>
- user!.remove({ overwrite: true }, () => {
- const spans = getTestSpans();
- expect(spans.length).toBe(2);
- assertSpan(spans[1] as ReadableSpan);
- expect(spans[1].attributes[SEMATTRS_DB_OPERATION]).toBe('remove');
- expect(getStatement(spans[1] as ReadableSpan).options).toEqual({
- overwrite: true,
- });
- done();
- })
- );
- });
-
it('instrumenting deleteOne operation', async () => {
await User.deleteOne({ email: 'john.doe@example.com' });
@@ -301,18 +214,6 @@ describe('mongoose instrumentation', () => {
expect(statement.condition).toEqual({ email: 'john.doe@example.com' });
});
- it('instrumenting count operation [deprecated]', async () => {
- await User.count({});
-
- const spans = getTestSpans();
- expect(spans.length).toBe(1);
- assertSpan(spans[0] as ReadableSpan);
- expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('count');
- const statement = getStatement(spans[0] as ReadableSpan);
- expect(statement.options).toEqual({});
- expect(statement.condition).toEqual({});
- });
-
it('instrumenting countDocuments operation', async () => {
await User.countDocuments({ email: 'john.doe@example.com' });
@@ -363,22 +264,6 @@ describe('mongoose instrumentation', () => {
expect(statement.condition).toEqual({ email: 'john.doe@example.com' });
});
- it('instrumenting update operation [deprecated]', async () => {
- await User.update(
- { email: 'john.doe@example.com' },
- { email: 'john.doe2@example.com' }
- );
-
- const spans = getTestSpans();
- expect(spans.length).toBe(1);
- assertSpan(spans[0] as ReadableSpan);
- expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('update');
- const statement = getStatement(spans[0] as ReadableSpan);
- expect(statement.options).toEqual({});
- expect(statement.condition).toEqual({ email: 'john.doe@example.com' });
- expect(statement.updates).toEqual({ email: 'john.doe2@example.com' });
- });
-
it('instrumenting updateOne operation', async () => {
await User.updateOne({ email: 'john.doe@example.com' }, { age: 55 });
@@ -417,36 +302,6 @@ describe('mongoose instrumentation', () => {
expect(statement.condition).toEqual({ email: 'john.doe@example.com' });
});
- it('instrumenting findOneAndUpdate operation', async () => {
- await User.findOneAndUpdate(
- { email: 'john.doe@example.com' },
- { isUpdated: true }
- );
-
- const spans = getTestSpans();
- expect(spans.length).toBe(2);
- assertSpan(spans[0] as ReadableSpan);
- assertSpan(spans[1] as ReadableSpan);
- expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('findOne');
- expect(spans[1].attributes[SEMATTRS_DB_OPERATION]).toBe('findOneAndUpdate');
- const statement = getStatement(spans[1] as ReadableSpan);
- expect(statement.options).toEqual({});
- expect(statement.condition).toEqual({ email: 'john.doe@example.com' });
- expect(statement.updates).toEqual({ isUpdated: true });
- });
-
- it('instrumenting findOneAndRemove operation', async () => {
- await User.findOneAndRemove({ email: 'john.doe@example.com' });
-
- const spans = getTestSpans();
- expect(spans.length).toBe(1);
- assertSpan(spans[0] as ReadableSpan);
- expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('findOneAndRemove');
- const statement = getStatement(spans[0] as ReadableSpan);
- expect(statement.options).toEqual({});
- expect(statement.condition).toEqual({ email: 'john.doe@example.com' });
- });
-
it('instrumenting create operation', async () => {
const document = {
firstName: 'John',
@@ -481,27 +336,6 @@ describe('mongoose instrumentation', () => {
]);
});
- it('instrumenting aggregate operation with callback', done => {
- User.aggregate(
- [
- { $match: { firstName: 'John' } },
- { $group: { _id: 'John', total: { $sum: '$amount' } } },
- ],
- () => {
- const spans = getTestSpans();
- expect(spans.length).toBe(1);
- assertSpan(spans[0] as ReadableSpan);
- expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('aggregate');
- const statement = getStatement(spans[0] as ReadableSpan);
- expect(statement.aggregatePipeline).toEqual([
- { $match: { firstName: 'John' } },
- { $group: { _id: 'John', total: { $sum: '$amount' } } },
- ]);
- done();
- }
- );
- });
-
it('instrumenting combined operation with async/await', async () => {
await User.find({ id: '_test' }).skip(1).limit(2).sort({ email: 'asc' });
@@ -572,20 +406,6 @@ describe('mongoose instrumentation', () => {
);
});
- it('responseHook works with callback in exec patch', done => {
- User.deleteOne({ email: 'john.doe@example.com' }, { lean: 1 }, () => {
- const spans = getTestSpans();
- expect(spans.length).toBe(1);
- assertSpan(spans[0] as ReadableSpan);
- expect(
- JSON.parse(spans[0].attributes[RESPONSE] as string)
- ).toMatchObject({
- deletedCount: 1,
- });
- done();
- });
- });
-
it('responseHook works with async/await in model methods patch', async () => {
const document = {
firstName: 'Test first name',
@@ -602,24 +422,6 @@ describe('mongoose instrumentation', () => {
);
});
- it('responseHook works with callback in model methods patch', done => {
- const document = {
- firstName: 'Test first name',
- lastName: 'Test last name',
- email: 'test@example.com',
- };
- const user: IUser = new User(document);
- user.save((_err, createdUser) => {
- const spans = getTestSpans();
- expect(spans.length).toBe(1);
- assertSpan(spans[0] as ReadableSpan);
- expect(spans[0].attributes[RESPONSE]).toEqual(
- JSON.stringify(createdUser)
- );
- done();
- });
- });
-
it('responseHook works with async/await in aggregate patch', async () => {
await User.aggregate([
{ $match: { firstName: 'John' } },
@@ -634,24 +436,6 @@ describe('mongoose instrumentation', () => {
]);
});
- it('responseHook works with callback in aggregate patch', done => {
- User.aggregate(
- [
- { $match: { firstName: 'John' } },
- { $group: { _id: 'John', total: { $sum: '$amount' } } },
- ],
- () => {
- const spans = getTestSpans();
- expect(spans.length).toBe(1);
- assertSpan(spans[0] as ReadableSpan);
- expect(JSON.parse(spans[0].attributes[RESPONSE] as string)).toEqual([
- { _id: 'John', total: 0 },
- ]);
- done();
- }
- );
- });
-
it('error in response hook does not fail anything', async () => {
instrumentation.disable();
instrumentation.setConfig({
diff --git a/plugins/node/instrumentation-mongoose/test/mongoose-v5-v6.test.ts b/plugins/node/instrumentation-mongoose/test/mongoose-v5-v6.test.ts
new file mode 100644
index 0000000000..1e2fe97740
--- /dev/null
+++ b/plugins/node/instrumentation-mongoose/test/mongoose-v5-v6.test.ts
@@ -0,0 +1,338 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import 'mocha';
+import { expect } from 'expect';
+import { SEMATTRS_DB_OPERATION } from '@opentelemetry/semantic-conventions';
+import { MongooseInstrumentation } from '../src';
+import {
+ getTestSpans,
+ registerInstrumentationTesting,
+} from '@opentelemetry/contrib-test-utils';
+import type { ReadableSpan } from '@opentelemetry/sdk-trace-base';
+
+const instrumentation = registerInstrumentationTesting(
+ new MongooseInstrumentation()
+);
+
+import * as mongoose from 'mongoose';
+import User, { IUser, loadUsers } from './user';
+import { assertSpan, getStatement } from './asserts';
+import { DB_NAME, MONGO_URI } from './config';
+
+// We can't use @ts-expect-error because it will fail depending on the used mongoose version on tests
+/* eslint-disable @typescript-eslint/ban-ts-comment */
+
+// Please run mongodb in the background: docker run -d -p 27017:27017 -v ~/data:/data/db mongo
+describe('mongoose instrumentation [v5/v6]', () => {
+ before(async () => {
+ try {
+ await mongoose.connect(MONGO_URI, {
+ useNewUrlParser: true,
+ useUnifiedTopology: true,
+ useFindAndModify: false,
+ useCreateIndex: true,
+ dbName: DB_NAME,
+ } as any); // TODO: amir - document older mongoose support
+ } catch (err: any) {
+ // connect signature changed from mongo v5 to v6.
+ // the following check tries both signatures, so test-all-versions
+ // can run against both versions.
+ if (err?.name === 'MongoParseError') {
+ await mongoose.connect(MONGO_URI, {
+ dbName: DB_NAME,
+ }); // TODO: amir - document older mongoose support
+ }
+ }
+ });
+
+ after(async () => {
+ await mongoose.connection.close();
+ });
+
+ beforeEach(async () => {
+ instrumentation.disable();
+ instrumentation.setConfig({
+ dbStatementSerializer: (_operation: string, payload) => {
+ return JSON.stringify(payload, (key, value) => {
+ return key === 'session' ? '[Session]' : value;
+ });
+ },
+ });
+ instrumentation.enable();
+ await loadUsers();
+ await User.createIndexes();
+ });
+
+ afterEach(async () => {
+ instrumentation.disable();
+ await User.collection.drop().catch();
+ });
+
+ describe('when save call has callback', async () => {
+ it('instrumenting save operation with promise and option property set', done => {
+ const document = {
+ firstName: 'Test first name',
+ lastName: 'Test last name',
+ email: 'test@example.com',
+ };
+ const user: IUser = new User(document);
+ // @ts-ignore - v7 removed callback support
+ // https://mongoosejs.com/docs/migrating_to_7.html#dropped-callback-support
+ user.save({ wtimeout: 42 }, async () => {
+ const spans = getTestSpans();
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('save');
+ const statement = getStatement(spans[0] as ReadableSpan);
+ expect(statement.document).toEqual(expect.objectContaining(document));
+ expect(statement.options.wtimeout).toEqual(42);
+
+ const createdUser = await User.findById(user._id).lean();
+ // @ts-ignore - v8 made `._id` optional
+ // https://mongoosejs.com/docs/migrating_to_8.html#removed-id-setter
+ expect(createdUser?._id.toString()).toEqual(user._id.toString());
+ done();
+ });
+ });
+
+ it('instrumenting save operation with generic options and callback', done => {
+ const document = {
+ firstName: 'Test first name',
+ lastName: 'Test last name',
+ email: 'test@example.com',
+ };
+ const user: IUser = new User(document);
+
+ // @ts-ignore - v7 removed callback support
+ // https://mongoosejs.com/docs/migrating_to_7.html#dropped-callback-support
+ user.save({}, () => {
+ const spans = getTestSpans();
+
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('save');
+ const statement = getStatement(spans[0] as ReadableSpan);
+ expect(statement.document).toEqual(expect.objectContaining(document));
+ done();
+ });
+ });
+
+ it('instrumenting save operation with only callback', done => {
+ const document = {
+ firstName: 'Test first name',
+ lastName: 'Test last name',
+ email: 'test@example.com',
+ };
+ const user: IUser = new User(document);
+
+ // @ts-ignore - v7 removed callback support
+ user.save(() => {
+ const spans = getTestSpans();
+
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('save');
+ const statement = getStatement(spans[0] as ReadableSpan);
+ expect(statement.document).toEqual(expect.objectContaining(document));
+ done();
+ });
+ });
+ });
+
+ describe('remove operation', () => {
+ it('instrumenting remove operation [deprecated]', async () => {
+ const user = await User.findOne({ email: 'john.doe@example.com' });
+ // @ts-ignore - v7 removed `remove` method
+ // https://mongoosejs.com/docs/migrating_to_7.html#removed-remove
+ await user!.remove();
+
+ const spans = getTestSpans();
+ expect(spans.length).toBe(2);
+ assertSpan(spans[1] as ReadableSpan);
+ expect(spans[1].attributes[SEMATTRS_DB_OPERATION]).toBe('remove');
+ });
+
+ it('instrumenting remove operation with callbacks [deprecated]', done => {
+ User.findOne({ email: 'john.doe@example.com' }).then(user =>
+ // @ts-ignore - v7 removed `remove` method
+ // https://mongoosejs.com/docs/migrating_to_7.html#removed-remove
+ user!.remove({ overwrite: true }, () => {
+ const spans = getTestSpans();
+ expect(spans.length).toBe(2);
+ assertSpan(spans[1] as ReadableSpan);
+ expect(spans[1].attributes[SEMATTRS_DB_OPERATION]).toBe('remove');
+ expect(getStatement(spans[1] as ReadableSpan).options).toEqual({
+ overwrite: true,
+ });
+ done();
+ })
+ );
+ });
+ });
+
+ it('instrumenting count operation [deprecated]', async () => {
+ // @ts-ignore - v8 removed `count` method
+ // https://mongoosejs.com/docs/migrating_to_8.html#removed-count
+ await User.count({});
+
+ const spans = getTestSpans();
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('count');
+ const statement = getStatement(spans[0] as ReadableSpan);
+ expect(statement.options).toEqual({});
+ expect(statement.condition).toEqual({});
+ });
+
+ it('instrumenting update operation [deprecated]', async () => {
+ // @ts-ignore - v7 removed `update` method
+ // https://mongoosejs.com/docs/migrating_to_7.html#removed-update
+ await User.update(
+ { email: 'john.doe@example.com' },
+ { email: 'john.doe2@example.com' }
+ );
+
+ const spans = getTestSpans();
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('update');
+ const statement = getStatement(spans[0] as ReadableSpan);
+ expect(statement.options).toEqual({});
+ expect(statement.condition).toEqual({ email: 'john.doe@example.com' });
+ expect(statement.updates).toEqual({ email: 'john.doe2@example.com' });
+ });
+
+ it('instrumenting findOneAndUpdate operation', async () => {
+ await User.findOneAndUpdate(
+ { email: 'john.doe@example.com' },
+ { isUpdated: true }
+ );
+
+ const spans = getTestSpans();
+ expect(spans.length).toBe(2);
+ assertSpan(spans[0] as ReadableSpan);
+ assertSpan(spans[1] as ReadableSpan);
+ expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('findOne');
+ expect(spans[1].attributes[SEMATTRS_DB_OPERATION]).toBe('findOneAndUpdate');
+ const statement = getStatement(spans[1] as ReadableSpan);
+ expect(statement.options).toEqual({});
+ expect(statement.condition).toEqual({ email: 'john.doe@example.com' });
+ expect(statement.updates).toEqual({ isUpdated: true });
+ });
+
+ it('instrumenting findOneAndRemove operation', async () => {
+ // @ts-ignore - v8 removed `findOneAndRemove` method
+ // https://mongoosejs.com/docs/migrating_to_8.html#removed-findoneandremove
+ await User.findOneAndRemove({ email: 'john.doe@example.com' });
+
+ const spans = getTestSpans();
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('findOneAndRemove');
+ const statement = getStatement(spans[0] as ReadableSpan);
+ expect(statement.options).toEqual({});
+ expect(statement.condition).toEqual({ email: 'john.doe@example.com' });
+ });
+
+ it('instrumenting aggregate operation with callback', done => {
+ User.aggregate(
+ [
+ { $match: { firstName: 'John' } },
+ { $group: { _id: 'John', total: { $sum: '$amount' } } },
+ ],
+ () => {
+ const spans = getTestSpans();
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('aggregate');
+ const statement = getStatement(spans[0] as ReadableSpan);
+ expect(statement.aggregatePipeline).toEqual([
+ { $match: { firstName: 'John' } },
+ { $group: { _id: 'John', total: { $sum: '$amount' } } },
+ ]);
+ done();
+ }
+ );
+ });
+
+ describe('responseHook', () => {
+ const RESPONSE = 'db.response';
+ beforeEach(() => {
+ instrumentation.disable();
+ instrumentation.setConfig({
+ responseHook: (span, responseInfo) =>
+ span.setAttribute(RESPONSE, JSON.stringify(responseInfo.response)),
+ });
+ instrumentation.enable();
+ });
+
+ it('responseHook works with callback in exec patch', done => {
+ // @ts-ignore - v7 removed callback support
+ // https://mongoosejs.com/docs/migrating_to_7.html#dropped-callback-support
+ User.deleteOne({ email: 'john.doe@example.com' }, { lean: 1 }, () => {
+ const spans = getTestSpans();
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(
+ JSON.parse(spans[0].attributes[RESPONSE] as string)
+ ).toMatchObject({
+ deletedCount: 1,
+ });
+ done();
+ });
+ });
+
+ it('responseHook works with callback in model methods patch', done => {
+ const document = {
+ firstName: 'Test first name',
+ lastName: 'Test last name',
+ email: 'test@example.com',
+ };
+ const user: IUser = new User(document);
+ // @ts-ignore - v7 removed callback support
+ // https://mongoosejs.com/docs/migrating_to_7.html#dropped-callback-support
+ user.save((_err, createdUser) => {
+ const spans = getTestSpans();
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(spans[0].attributes[RESPONSE]).toEqual(
+ JSON.stringify(createdUser)
+ );
+ done();
+ });
+ });
+
+ it('responseHook works with callback in aggregate patch', done => {
+ User.aggregate(
+ [
+ { $match: { firstName: 'John' } },
+ { $group: { _id: 'John', total: { $sum: '$amount' } } },
+ ],
+ () => {
+ const spans = getTestSpans();
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(JSON.parse(spans[0].attributes[RESPONSE] as string)).toEqual([
+ { _id: 'John', total: 0 },
+ ]);
+ done();
+ }
+ );
+ });
+ });
+});
+
+/* eslint-enable @typescript-eslint/ban-ts-comment */
diff --git a/plugins/node/instrumentation-mongoose/test/mongoose-v7-v8.test.ts b/plugins/node/instrumentation-mongoose/test/mongoose-v7-v8.test.ts
new file mode 100644
index 0000000000..5324e84b6f
--- /dev/null
+++ b/plugins/node/instrumentation-mongoose/test/mongoose-v7-v8.test.ts
@@ -0,0 +1,96 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import 'mocha';
+import { expect } from 'expect';
+import { SEMATTRS_DB_OPERATION } from '@opentelemetry/semantic-conventions';
+import { MongooseInstrumentation } from '../src';
+import {
+ getTestSpans,
+ registerInstrumentationTesting,
+} from '@opentelemetry/contrib-test-utils';
+import type { ReadableSpan } from '@opentelemetry/sdk-trace-base';
+
+const instrumentation = registerInstrumentationTesting(
+ new MongooseInstrumentation()
+);
+
+import * as mongoose from 'mongoose';
+import User, { loadUsers } from './user';
+import { assertSpan, getStatement } from './asserts';
+import { DB_NAME, MONGO_URI } from './config';
+
+// Please run mongodb in the background: docker run -d -p 27017:27017 -v ~/data:/data/db mongo
+describe('mongoose instrumentation [v7/v8]', () => {
+ before(async () => {
+ try {
+ await mongoose.connect(MONGO_URI, {
+ useNewUrlParser: true,
+ useUnifiedTopology: true,
+ useFindAndModify: false,
+ useCreateIndex: true,
+ dbName: DB_NAME,
+ } as any); // TODO: amir - document older mongoose support
+ } catch (err: any) {
+ // connect signature changed from mongo v5 to v6.
+ // the following check tries both signatures, so test-all-versions
+ // can run against both versions.
+ if (err?.name === 'MongoParseError') {
+ await mongoose.connect(MONGO_URI, {
+ dbName: DB_NAME,
+ }); // TODO: amir - document older mongoose support
+ }
+ }
+ });
+
+ after(async () => {
+ await mongoose.connection.close();
+ });
+
+ beforeEach(async () => {
+ instrumentation.disable();
+ instrumentation.setConfig({
+ dbStatementSerializer: (_operation: string, payload) => {
+ return JSON.stringify(payload, (key, value) => {
+ return key === 'session' ? '[Session]' : value;
+ });
+ },
+ });
+ instrumentation.enable();
+ await loadUsers();
+ await User.createIndexes();
+ });
+
+ afterEach(async () => {
+ instrumentation.disable();
+ await User.collection.drop().catch();
+ });
+
+ it('instrumenting findOneAndUpdate operation', async () => {
+ await User.findOneAndUpdate(
+ { email: 'john.doe@example.com' },
+ { isUpdated: true }
+ );
+
+ const spans = getTestSpans();
+ expect(spans.length).toBe(1);
+ assertSpan(spans[0] as ReadableSpan);
+ expect(spans[0].attributes[SEMATTRS_DB_OPERATION]).toBe('findOneAndUpdate');
+ const statement = getStatement(spans[0] as ReadableSpan);
+ expect(statement.options).toEqual({});
+ expect(statement.condition).toEqual({ email: 'john.doe@example.com' });
+ expect(statement.updates).toEqual({ isUpdated: true });
+ });
+});
diff --git a/plugins/node/instrumentation-runtime-node/CHANGELOG.md b/plugins/node/instrumentation-runtime-node/CHANGELOG.md
index b9bb7edb17..1166ab5e97 100644
--- a/plugins/node/instrumentation-runtime-node/CHANGELOG.md
+++ b/plugins/node/instrumentation-runtime-node/CHANGELOG.md
@@ -1,5 +1,43 @@
# Changelog
+## [0.9.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-runtime-node-v0.8.0...instrumentation-runtime-node-v0.9.0) (2024-11-07)
+
+
+### ⚠ BREAKING CHANGES
+
+* **instrumentation-runtime-node:** add prom-client-metrics ([#2136](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2136))
+
+### Features
+
+* **instrumentation-runtime-node:** add prom-client-metrics ([#2136](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2136)) ([80d0c74](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/80d0c74f8cafdfce681ef39e6cea103dca4e4ccd))
+
+## [0.8.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-runtime-node-v0.7.0...instrumentation-runtime-node-v0.8.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.7.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-runtime-node-v0.6.0...instrumentation-runtime-node-v0.7.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.6.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-runtime-node-v0.5.0...instrumentation-runtime-node-v0.6.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.5.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-runtime-node-v0.4.0...instrumentation-runtime-node-v0.5.0) (2024-06-06)
diff --git a/plugins/node/instrumentation-runtime-node/README.md b/plugins/node/instrumentation-runtime-node/README.md
index 017a372db4..c7c93bb53a 100644
--- a/plugins/node/instrumentation-runtime-node/README.md
+++ b/plugins/node/instrumentation-runtime-node/README.md
@@ -6,6 +6,12 @@
This module provides automatic metric instrumentation that exposes measurements from the [Performance measurement APIs](https://nodejs.org/api/perf_hooks.html) (i.e. `perf_hooks`).
While currently it is limited to metrics, it may be modified to produce other signals in the future.
+## Supported Versions
+
+- Node.js `>=14.10`
+
+
+
## Example
```bash
@@ -26,7 +32,7 @@ const prometheusExporter = new PrometheusExporter({
const sdk = new NodeSDK({
metricReader: prometheusExporter,
instrumentations: [new RuntimeNodeInstrumentation({
- eventLoopUtilizationMeasurementInterval: 5000,
+ monitoringPrecision: 5000,
})],
});
@@ -44,7 +50,7 @@ Go to [`localhost:9464/metrics`](http://localhost:9464/metrics), and you should
nodejs_performance_event_loop_utilization 0.010140079547955264
```
-> Metrics will only be exported after it has collected two ELU readings (at least approximately `RuntimeNodeInstrumentationConfig.eventLoopUtilizationMeasurementInterval` milliseconds after initialization). Otherwise, you may see:
+> Metrics will only be exported after it has collected two ELU readings (at least approximately `RuntimeNodeInstrumentationConfig.monitoringPrecision` milliseconds after initialization). Otherwise, you may see:
>
> ```txt
> # no registered metrics
@@ -55,14 +61,8 @@ nodejs_performance_event_loop_utilization 0.010140079547955264
`RuntimeNodeInstrumentation`'s constructor accepts the following options:
| name | type | unit | default | description |
-|---|---|---|---|---|
-| [`eventLoopUtilizationMeasurementInterval`](./src/types.ts#L25) | `int` | millisecond | `5000` | The approximate number of milliseconds for which to calculate event loop utilization averages. A larger value will result in more accurate averages at the expense of less granular data. Should be set to below the scrape interval of your metrics collector to avoid duplicated data points. |
-
-## Supported Node.js versions
-
-v14.10.0+
-
-
+|---|---|---|---------|---|
+| [`monitoringPrecision`](./src/types.ts#L25) | `int` | millisecond | `10` | The approximate number of milliseconds for which to calculate event loop utilization averages. A larger value will result in more accurate averages at the expense of less granular data. Should be set to below the scrape interval of your metrics collector to avoid duplicated data points. |
## Useful links
diff --git a/plugins/node/instrumentation-runtime-node/package.json b/plugins/node/instrumentation-runtime-node/package.json
index f057b9c636..24f95f3af3 100644
--- a/plugins/node/instrumentation-runtime-node/package.json
+++ b/plugins/node/instrumentation-runtime-node/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-runtime-node",
- "version": "0.5.0",
+ "version": "0.9.0",
"description": "OpenTelemetry instrumentation for Node.js Performance measurement API",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -11,16 +11,15 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-runtime-node --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"version:update": "node ../../../scripts/version-update.js"
},
"author": "OpenTelemetry Authors",
"license": "Apache-2.0",
"engines": {
- "node": ">=14.10.0"
+ "node": ">=17.4.0"
},
"keywords": [
"perf_hooks",
@@ -39,17 +38,16 @@
"access": "public"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/sdk-metrics": "^1.20.0",
"@types/mocha": "^10.0.6",
- "@types/node": "^20.11.2",
+ "@types/node": "18.18.14",
"mocha": "7.2.0",
"nyc": "^15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"peerDependencies": {
diff --git a/plugins/node/instrumentation-runtime-node/src/consts/attributes.ts b/plugins/node/instrumentation-runtime-node/src/consts/attributes.ts
new file mode 100644
index 0000000000..5370097402
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/src/consts/attributes.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+export const ATTR_V8JS_HEAP_SPACE_NAME = 'heap.space.name';
diff --git a/plugins/node/instrumentation-runtime-node/src/global.d.ts b/plugins/node/instrumentation-runtime-node/src/global.d.ts
new file mode 100644
index 0000000000..a3affb3ff2
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/src/global.d.ts
@@ -0,0 +1,36 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { Histogram } from 'perf_hooks';
+
+declare module 'node:perf_hooks' {
+ interface IntervalHistogram extends Histogram {
+ /**
+ * Enables the update interval timer. Returns `true` if the timer was
+ * started, `false` if it was already started.
+ * @since v11.10.0
+ */
+ enable(): boolean;
+
+ /**
+ * Disables the update interval timer. Returns `true` if the timer was
+ * stopped, `false` if it was already stopped.
+ * @since v11.10.0
+ */
+ disable(): boolean;
+
+ count: number;
+ }
+}
diff --git a/plugins/node/instrumentation-runtime-node/src/index.ts b/plugins/node/instrumentation-runtime-node/src/index.ts
index 7e29b98aeb..c26f998cff 100644
--- a/plugins/node/instrumentation-runtime-node/src/index.ts
+++ b/plugins/node/instrumentation-runtime-node/src/index.ts
@@ -13,5 +13,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-export { RuntimeNodeInstrumentation } from './instrumentation';
-export { RuntimeNodeInstrumentationConfig } from './types';
+
+export * from './instrumentation';
+export * from './types';
diff --git a/plugins/node/instrumentation-runtime-node/src/instrumentation.ts b/plugins/node/instrumentation-runtime-node/src/instrumentation.ts
index ba26129590..effb3e8e91 100644
--- a/plugins/node/instrumentation-runtime-node/src/instrumentation.ts
+++ b/plugins/node/instrumentation-runtime-node/src/instrumentation.ts
@@ -13,22 +13,25 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-import { EventLoopUtilization, performance } from 'node:perf_hooks';
-const { eventLoopUtilization } = performance;
-
import { InstrumentationBase } from '@opentelemetry/instrumentation';
-import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import { RuntimeNodeInstrumentationConfig } from './types';
+import { MetricCollector } from './types/metricCollector';
+import { EventLoopUtilizationCollector } from './metrics/eventLoopUtilizationCollector';
+import { EventLoopDelayCollector } from './metrics/eventLoopDelayCollector';
+import { GCCollector } from './metrics/gcCollector';
+import { HeapSpacesSizeAndUsedCollector } from './metrics/heapSpacesSizeAndUsedCollector';
+import { ConventionalNamePrefix } from './types/ConventionalNamePrefix';
+import { EventLoopTimeCollector } from './metrics/eventLoopTimeCollector';
+/** @knipignore */
+import { PACKAGE_VERSION, PACKAGE_NAME } from './version';
-const ELUS_LENGTH = 2;
const DEFAULT_CONFIG: RuntimeNodeInstrumentationConfig = {
- eventLoopUtilizationMeasurementInterval: 5000,
+ monitoringPrecision: 10,
};
-export class RuntimeNodeInstrumentation extends InstrumentationBase {
- private _ELUs: EventLoopUtilization[] = [];
- private _interval: NodeJS.Timeout | undefined;
+export class RuntimeNodeInstrumentation extends InstrumentationBase {
+ private readonly _collectors: MetricCollector[] = [];
constructor(config: RuntimeNodeInstrumentationConfig = {}) {
super(
@@ -36,37 +39,33 @@ export class RuntimeNodeInstrumentation extends InstrumentationBase {
PACKAGE_VERSION,
Object.assign({}, DEFAULT_CONFIG, config)
);
- }
-
- private _addELU() {
- this._ELUs.unshift(eventLoopUtilization());
- if (this._ELUs.length > ELUS_LENGTH) {
- this._ELUs.pop();
- }
- }
-
- private _clearELU() {
- if (!this._ELUs) {
- this._ELUs = [];
+ this._collectors = [
+ new EventLoopUtilizationCollector(
+ this._config,
+ ConventionalNamePrefix.NodeJs
+ ),
+ new EventLoopTimeCollector(this._config, ConventionalNamePrefix.NodeJs),
+ new EventLoopDelayCollector(this._config, ConventionalNamePrefix.NodeJs),
+ new GCCollector(this._config, ConventionalNamePrefix.V8js),
+ new HeapSpacesSizeAndUsedCollector(
+ this._config,
+ ConventionalNamePrefix.V8js
+ ),
+ ];
+ if (this._config.enabled) {
+ for (const collector of this._collectors) {
+ collector.enable();
+ }
}
- this._ELUs.length = 0;
}
// Called when a new `MeterProvider` is set
// the Meter (result of @opentelemetry/api's getMeter) is available as this.meter within this method
override _updateMetricInstruments() {
- this.meter
- .createObservableGauge('nodejs.event_loop.utilization', {
- description: 'Event loop utilization',
- unit: '1',
- })
- .addCallback(async observableResult => {
- if (this._ELUs.length !== ELUS_LENGTH) {
- return;
- }
- const elu = eventLoopUtilization(...this._ELUs);
- observableResult.observe(elu.utilization);
- });
+ if (!this._collectors) return;
+ for (const collector of this._collectors) {
+ collector.updateMetricInstruments(this.meter);
+ }
}
init() {
@@ -74,22 +73,16 @@ export class RuntimeNodeInstrumentation extends InstrumentationBase {
}
override enable() {
- this._clearELU();
- this._addELU();
- clearInterval(this._interval);
- this._interval = setInterval(
- () => this._addELU(),
- (this._config as RuntimeNodeInstrumentationConfig)
- .eventLoopUtilizationMeasurementInterval
- );
+ if (!this._collectors) return;
- // unref so that it does not keep the process running if disable() is never called
- this._interval?.unref();
+ for (const collector of this._collectors) {
+ collector.enable();
+ }
}
override disable() {
- this._clearELU();
- clearInterval(this._interval);
- this._interval = undefined;
+ for (const collector of this._collectors) {
+ collector.disable();
+ }
}
}
diff --git a/plugins/node/instrumentation-runtime-node/src/metrics/baseCollector.ts b/plugins/node/instrumentation-runtime-node/src/metrics/baseCollector.ts
new file mode 100644
index 0000000000..60147d3b75
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/src/metrics/baseCollector.ts
@@ -0,0 +1,48 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { MetricCollector } from '../types/metricCollector';
+import { Meter } from '@opentelemetry/api';
+import { RuntimeNodeInstrumentationConfig } from '../types';
+
+export abstract class BaseCollector implements MetricCollector {
+ protected _config: RuntimeNodeInstrumentationConfig = {};
+
+ protected namePrefix: string;
+
+ protected constructor(
+ config: RuntimeNodeInstrumentationConfig = {},
+ namePrefix: string
+ ) {
+ this._config = config;
+ this.namePrefix = namePrefix;
+ }
+
+ public disable(): void {
+ this._config.enabled = false;
+ this.internalDisable();
+ }
+
+ public enable(): void {
+ this._config.enabled = true;
+ this.internalEnable();
+ }
+
+ public abstract updateMetricInstruments(meter: Meter): void;
+
+ protected abstract internalEnable(): void;
+
+ protected abstract internalDisable(): void;
+}
diff --git a/plugins/node/instrumentation-runtime-node/src/metrics/eventLoopDelayCollector.ts b/plugins/node/instrumentation-runtime-node/src/metrics/eventLoopDelayCollector.ts
new file mode 100644
index 0000000000..8ec15a1863
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/src/metrics/eventLoopDelayCollector.ts
@@ -0,0 +1,185 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { RuntimeNodeInstrumentationConfig } from '../types';
+import { Meter } from '@opentelemetry/api';
+import * as perf_hooks from 'node:perf_hooks';
+import { IntervalHistogram } from 'node:perf_hooks';
+import { BaseCollector } from './baseCollector';
+
+enum NodeJsEventLoopDelayAttributes {
+ min = 'eventloop.delay.min',
+ max = 'eventloop.delay.max',
+ mean = 'eventloop.delay.mean',
+ stddev = 'eventloop.delay.stddev',
+ p50 = 'eventloop.delay.p50',
+ p90 = 'eventloop.delay.p90',
+ p99 = 'eventloop.delay.p99',
+}
+
+export const metricNames: Record<
+ NodeJsEventLoopDelayAttributes,
+ { description: string }
+> = {
+ [NodeJsEventLoopDelayAttributes.min]: {
+ description: 'Event loop minimum delay.',
+ },
+ [NodeJsEventLoopDelayAttributes.max]: {
+ description: 'Event loop maximum delay.',
+ },
+ [NodeJsEventLoopDelayAttributes.mean]: {
+ description: 'Event loop mean delay.',
+ },
+ [NodeJsEventLoopDelayAttributes.stddev]: {
+ description: 'Event loop standard deviation delay.',
+ },
+ [NodeJsEventLoopDelayAttributes.p50]: {
+ description: 'Event loop 50 percentile delay.',
+ },
+ [NodeJsEventLoopDelayAttributes.p90]: {
+ description: 'Event loop 90 percentile delay.',
+ },
+ [NodeJsEventLoopDelayAttributes.p99]: {
+ description: 'Event loop 99 percentile delay.',
+ },
+};
+
+export interface EventLoopLagInformation {
+ min: number;
+ max: number;
+ mean: number;
+ stddev: number;
+ p50: number;
+ p90: number;
+ p99: number;
+}
+
+export class EventLoopDelayCollector extends BaseCollector {
+ private _histogram: IntervalHistogram;
+
+ constructor(
+ config: RuntimeNodeInstrumentationConfig = {},
+ namePrefix: string
+ ) {
+ super(config, namePrefix);
+ this._histogram = perf_hooks.monitorEventLoopDelay({
+ resolution: config.monitoringPrecision,
+ });
+ }
+
+ updateMetricInstruments(meter: Meter): void {
+ const delayMin = meter.createObservableGauge(
+ `${this.namePrefix}.${NodeJsEventLoopDelayAttributes.min}`,
+ {
+ description:
+ metricNames[NodeJsEventLoopDelayAttributes.min].description,
+ unit: 's',
+ }
+ );
+ const delayMax = meter.createObservableGauge(
+ `${this.namePrefix}.${NodeJsEventLoopDelayAttributes.max}`,
+ {
+ description:
+ metricNames[NodeJsEventLoopDelayAttributes.max].description,
+ unit: 's',
+ }
+ );
+ const delayMean = meter.createObservableGauge(
+ `${this.namePrefix}.${NodeJsEventLoopDelayAttributes.mean}`,
+ {
+ description:
+ metricNames[NodeJsEventLoopDelayAttributes.mean].description,
+ unit: 's',
+ }
+ );
+ const delayStddev = meter.createObservableGauge(
+ `${this.namePrefix}.${NodeJsEventLoopDelayAttributes.stddev}`,
+ {
+ description:
+ metricNames[NodeJsEventLoopDelayAttributes.stddev].description,
+ unit: 's',
+ }
+ );
+ const delayp50 = meter.createObservableGauge(
+ `${this.namePrefix}.${NodeJsEventLoopDelayAttributes.p50}`,
+ {
+ description:
+ metricNames[NodeJsEventLoopDelayAttributes.p50].description,
+ unit: 's',
+ }
+ );
+ const delayp90 = meter.createObservableGauge(
+ `${this.namePrefix}.${NodeJsEventLoopDelayAttributes.p90}`,
+ {
+ description:
+ metricNames[NodeJsEventLoopDelayAttributes.p90].description,
+ unit: 's',
+ }
+ );
+ const delayp99 = meter.createObservableGauge(
+ `${this.namePrefix}.${NodeJsEventLoopDelayAttributes.p99}`,
+ {
+ description:
+ metricNames[NodeJsEventLoopDelayAttributes.p99].description,
+ unit: 's',
+ }
+ );
+
+ meter.addBatchObservableCallback(
+ async observableResult => {
+ if (!this._config.enabled) return;
+
+ const data = this.scrape();
+ if (data === undefined) return;
+ if (this._histogram.count < 5) return; // Don't return histogram data if we have less than 5 samples
+
+ observableResult.observe(delayMin, data.min);
+ observableResult.observe(delayMax, data.max);
+ observableResult.observe(delayMean, data.mean);
+ observableResult.observe(delayStddev, data.stddev);
+ observableResult.observe(delayp50, data.p50);
+ observableResult.observe(delayp90, data.p90);
+ observableResult.observe(delayp99, data.p99);
+
+ this._histogram.reset();
+ },
+ [delayMin, delayMax, delayMean, delayStddev, delayp50, delayp90, delayp99]
+ );
+ }
+
+ internalEnable(): void {
+ this._histogram.enable();
+ }
+
+ internalDisable(): void {
+ this._histogram.disable();
+ }
+
+ private scrape(): EventLoopLagInformation {
+ return {
+ min: this.checkNan(this._histogram.min / 1e9),
+ max: this.checkNan(this._histogram.max / 1e9),
+ mean: this.checkNan(this._histogram.mean / 1e9),
+ stddev: this.checkNan(this._histogram.stddev / 1e9),
+ p50: this.checkNan(this._histogram.percentile(50) / 1e9),
+ p90: this.checkNan(this._histogram.percentile(90) / 1e9),
+ p99: this.checkNan(this._histogram.percentile(99) / 1e9),
+ };
+ }
+
+ private checkNan(value: number) {
+ return isNaN(value) ? 0 : value;
+ }
+}
diff --git a/plugins/node/instrumentation-runtime-node/src/metrics/eventLoopTimeCollector.ts b/plugins/node/instrumentation-runtime-node/src/metrics/eventLoopTimeCollector.ts
new file mode 100644
index 0000000000..c8bf7a0f44
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/src/metrics/eventLoopTimeCollector.ts
@@ -0,0 +1,68 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { EventLoopUtilization, performance } from 'node:perf_hooks';
+import { RuntimeNodeInstrumentationConfig } from '../types';
+import { Meter } from '@opentelemetry/api';
+import { BaseCollector } from './baseCollector';
+
+const { eventLoopUtilization: eventLoopUtilizationCollector } = performance;
+
+export const ATTR_NODEJS_EVENT_LOOP_TIME = 'eventloop.time';
+
+export class EventLoopTimeCollector extends BaseCollector {
+ constructor(
+ config: RuntimeNodeInstrumentationConfig = {},
+ namePrefix: string
+ ) {
+ super(config, namePrefix);
+ }
+
+ public updateMetricInstruments(meter: Meter): void {
+ const timeCounter = meter.createObservableCounter(
+ `${this.namePrefix}.${ATTR_NODEJS_EVENT_LOOP_TIME}`,
+ {
+ description:
+ 'Cumulative duration of time the event loop has been in each state.',
+ unit: 's',
+ }
+ );
+
+ meter.addBatchObservableCallback(
+ async observableResult => {
+ if (!this._config.enabled) return;
+
+ const data = this.scrape();
+ if (data === undefined) return;
+
+ observableResult.observe(timeCounter, data.active / 1000, {
+ [`${this.namePrefix}.eventloop.state`]: 'active',
+ });
+ observableResult.observe(timeCounter, data.idle / 1000, {
+ [`${this.namePrefix}.eventloop.state`]: 'idle',
+ });
+ },
+ [timeCounter]
+ );
+ }
+
+ protected internalDisable(): void {}
+
+ protected internalEnable(): void {}
+
+ private scrape(): EventLoopUtilization {
+ return eventLoopUtilizationCollector();
+ }
+}
diff --git a/plugins/node/instrumentation-runtime-node/src/metrics/eventLoopUtilizationCollector.ts b/plugins/node/instrumentation-runtime-node/src/metrics/eventLoopUtilizationCollector.ts
new file mode 100644
index 0000000000..321e54aa6f
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/src/metrics/eventLoopUtilizationCollector.ts
@@ -0,0 +1,56 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { EventLoopUtilization, performance } from 'node:perf_hooks';
+import { RuntimeNodeInstrumentationConfig } from '../types';
+import { Meter } from '@opentelemetry/api';
+import { BaseCollector } from './baseCollector';
+
+const { eventLoopUtilization: eventLoopUtilizationCollector } = performance;
+
+export const ATTR_NODEJS_EVENT_LOOP_UTILIZATION = 'eventloop.utilization';
+
+export class EventLoopUtilizationCollector extends BaseCollector {
+ private _lastValue?: EventLoopUtilization;
+
+ constructor(
+ config: RuntimeNodeInstrumentationConfig = {},
+ namePrefix: string
+ ) {
+ super(config, namePrefix);
+ }
+
+ public updateMetricInstruments(meter: Meter): void {
+ meter
+ .createObservableGauge(
+ `${this.namePrefix}.${ATTR_NODEJS_EVENT_LOOP_UTILIZATION}`,
+ {
+ description: 'Event loop utilization',
+ unit: 's',
+ }
+ )
+ .addCallback(async observableResult => {
+ if (!this._config.enabled) return;
+
+ const elu = eventLoopUtilizationCollector(this._lastValue);
+ observableResult.observe(elu.utilization);
+ this._lastValue = elu;
+ });
+ }
+
+ protected internalDisable(): void {}
+
+ protected internalEnable(): void {}
+}
diff --git a/plugins/node/instrumentation-runtime-node/src/metrics/gcCollector.ts b/plugins/node/instrumentation-runtime-node/src/metrics/gcCollector.ts
new file mode 100644
index 0000000000..c262aebc2e
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/src/metrics/gcCollector.ts
@@ -0,0 +1,80 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { RuntimeNodeInstrumentationConfig } from '../types';
+import { Meter } from '@opentelemetry/api';
+import { Histogram, ValueType } from '@opentelemetry/api';
+import { BaseCollector } from './baseCollector';
+import * as perf_hooks from 'node:perf_hooks';
+import { PerformanceObserver } from 'node:perf_hooks';
+
+const ATTR_NODEJS_GC_DURATION_SECONDS = 'gc.duration';
+const DEFAULT_GC_DURATION_BUCKETS = [0.01, 0.1, 1, 10];
+
+const kinds: string[] = [];
+kinds[perf_hooks.constants.NODE_PERFORMANCE_GC_MAJOR] = 'major';
+kinds[perf_hooks.constants.NODE_PERFORMANCE_GC_MINOR] = 'minor';
+kinds[perf_hooks.constants.NODE_PERFORMANCE_GC_INCREMENTAL] = 'incremental';
+kinds[perf_hooks.constants.NODE_PERFORMANCE_GC_WEAKCB] = 'weakcb';
+
+export class GCCollector extends BaseCollector {
+ private _gcDurationByKindHistogram?: Histogram;
+ private _observer: PerformanceObserver;
+
+ constructor(
+ config: RuntimeNodeInstrumentationConfig = {},
+ namePrefix: string
+ ) {
+ super(config, namePrefix);
+ this._observer = new perf_hooks.PerformanceObserver(list => {
+ if (!this._config.enabled) return;
+
+ const entry = list.getEntries()[0];
+ // Node < 16 uses entry.kind
+ // Node >= 16 uses entry.detail.kind
+ // See: https://nodejs.org/docs/latest-v16.x/api/deprecations.html#deprecations_dep0152_extension_performanceentry_properties
+ // eslint-disable-next-line @typescript-eslint/ban-ts-comment
+ // @ts-ignore
+ const kind = entry.detail ? kinds[entry.detail.kind] : kinds[entry.kind];
+ this._gcDurationByKindHistogram?.record(
+ entry.duration / 1000,
+ Object.assign({ [`${this.namePrefix}.gc.type`]: kind })
+ );
+ });
+ }
+
+ updateMetricInstruments(meter: Meter): void {
+ this._gcDurationByKindHistogram = meter.createHistogram(
+ `${this.namePrefix}.${ATTR_NODEJS_GC_DURATION_SECONDS}`,
+ {
+ description:
+ 'Garbage collection duration by kind, one of major, minor, incremental or weakcb.',
+ unit: 's',
+ valueType: ValueType.DOUBLE,
+ advice: {
+ explicitBucketBoundaries: DEFAULT_GC_DURATION_BUCKETS,
+ },
+ }
+ );
+ }
+
+ internalEnable(): void {
+ this._observer.observe({ entryTypes: ['gc'] });
+ }
+
+ internalDisable(): void {
+ this._observer.disconnect();
+ }
+}
diff --git a/plugins/node/instrumentation-runtime-node/src/metrics/heapSpacesSizeAndUsedCollector.ts b/plugins/node/instrumentation-runtime-node/src/metrics/heapSpacesSizeAndUsedCollector.ts
new file mode 100644
index 0000000000..27582cb0fd
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/src/metrics/heapSpacesSizeAndUsedCollector.ts
@@ -0,0 +1,130 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { RuntimeNodeInstrumentationConfig } from '../types';
+import { Meter } from '@opentelemetry/api';
+import { BaseCollector } from './baseCollector';
+import * as v8 from 'node:v8';
+import { HeapSpaceInfo } from 'v8';
+import { ATTR_V8JS_HEAP_SPACE_NAME } from '../consts/attributes';
+
+export enum V8HeapSpaceMetrics {
+ heapLimit = 'memory.heap.limit',
+ used = 'memory.heap.used',
+ available = 'memory.heap.space.available_size',
+ physical = 'memory.heap.space.physical_size',
+}
+
+export const metricNames: Record =
+ {
+ [V8HeapSpaceMetrics.heapLimit]: {
+ description: 'Total heap memory size pre-allocated.',
+ },
+ [V8HeapSpaceMetrics.used]: {
+ description: 'Heap Memory size allocated.',
+ },
+ [V8HeapSpaceMetrics.available]: {
+ description: 'Heap space available size.',
+ },
+ [V8HeapSpaceMetrics.physical]: {
+ description: 'Committed size of a heap space.',
+ },
+ };
+
+export class HeapSpacesSizeAndUsedCollector extends BaseCollector {
+ constructor(
+ config: RuntimeNodeInstrumentationConfig = {},
+ namePrefix: string
+ ) {
+ super(config, namePrefix);
+ }
+
+ updateMetricInstruments(meter: Meter): void {
+ const heapLimit = meter.createObservableGauge(
+ `${this.namePrefix}.${V8HeapSpaceMetrics.heapLimit}`,
+ {
+ description: metricNames[V8HeapSpaceMetrics.heapLimit].description,
+ unit: 'By',
+ }
+ );
+ const heapSpaceUsed = meter.createObservableGauge(
+ `${this.namePrefix}.${V8HeapSpaceMetrics.used}`,
+ {
+ description: metricNames[V8HeapSpaceMetrics.used].description,
+ unit: 'By',
+ }
+ );
+ const heapSpaceAvailable = meter.createObservableGauge(
+ `${this.namePrefix}.${V8HeapSpaceMetrics.available}`,
+ {
+ description: metricNames[V8HeapSpaceMetrics.available].description,
+ unit: 'By',
+ }
+ );
+ const heapSpacePhysical = meter.createObservableGauge(
+ `${this.namePrefix}.${V8HeapSpaceMetrics.physical}`,
+ {
+ description: metricNames[V8HeapSpaceMetrics.physical].description,
+ unit: 'By',
+ }
+ );
+ const heapSpaceNameAttributeName = `${this.namePrefix}.${ATTR_V8JS_HEAP_SPACE_NAME}`;
+
+ meter.addBatchObservableCallback(
+ observableResult => {
+ if (!this._config.enabled) return;
+
+ const data = this.scrape();
+ if (data === undefined) return;
+ for (const space of data) {
+ const spaceName = space.space_name;
+
+ observableResult.observe(heapLimit, space.space_size, {
+ [heapSpaceNameAttributeName]: spaceName,
+ });
+
+ observableResult.observe(heapSpaceUsed, space.space_used_size, {
+ [heapSpaceNameAttributeName]: spaceName,
+ });
+
+ observableResult.observe(
+ heapSpaceAvailable,
+ space.space_available_size,
+ {
+ [heapSpaceNameAttributeName]: spaceName,
+ }
+ );
+
+ observableResult.observe(
+ heapSpacePhysical,
+ space.physical_space_size,
+ {
+ [heapSpaceNameAttributeName]: spaceName,
+ }
+ );
+ }
+ },
+ [heapLimit, heapSpaceUsed, heapSpaceAvailable, heapSpacePhysical]
+ );
+ }
+
+ internalEnable(): void {}
+
+ internalDisable(): void {}
+
+ private scrape(): HeapSpaceInfo[] {
+ return v8.getHeapSpaceStatistics();
+ }
+}
diff --git a/plugins/node/instrumentation-runtime-node/src/types.ts b/plugins/node/instrumentation-runtime-node/src/types.ts
index af0c5b12ef..68227c98f2 100644
--- a/plugins/node/instrumentation-runtime-node/src/types.ts
+++ b/plugins/node/instrumentation-runtime-node/src/types.ts
@@ -17,11 +17,5 @@ import type { InstrumentationConfig } from '@opentelemetry/instrumentation';
export interface RuntimeNodeInstrumentationConfig
extends InstrumentationConfig {
- /**
- * The approximate number of milliseconds for which to calculate event loop utilization averages.
- * A larger value will result in more accurate averages at the expense of less granular data.
- * Should be set to below the scrape interval of your metrics collector to avoid duplicated data points.
- * @default 5000
- */
- eventLoopUtilizationMeasurementInterval?: number;
+ monitoringPrecision?: number;
}
diff --git a/plugins/node/instrumentation-runtime-node/src/types/ConventionalNamePrefix.ts b/plugins/node/instrumentation-runtime-node/src/types/ConventionalNamePrefix.ts
new file mode 100644
index 0000000000..6b17a6e00d
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/src/types/ConventionalNamePrefix.ts
@@ -0,0 +1,19 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+export enum ConventionalNamePrefix {
+ NodeJs = 'nodejs',
+ V8js = 'v8js',
+}
diff --git a/plugins/node/instrumentation-runtime-node/src/types/metricCollector.ts b/plugins/node/instrumentation-runtime-node/src/types/metricCollector.ts
new file mode 100644
index 0000000000..bfb7eda171
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/src/types/metricCollector.ts
@@ -0,0 +1,24 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { Meter } from '@opentelemetry/api';
+
+export interface MetricCollector {
+ updateMetricInstruments(meter: Meter): void;
+
+ enable(): void;
+
+ disable(): void;
+}
diff --git a/plugins/node/instrumentation-runtime-node/test/event_loop_delay.test.ts b/plugins/node/instrumentation-runtime-node/test/event_loop_delay.test.ts
new file mode 100644
index 0000000000..9571ff23c6
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/test/event_loop_delay.test.ts
@@ -0,0 +1,77 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { MeterProvider, DataPointType } from '@opentelemetry/sdk-metrics';
+
+import { RuntimeNodeInstrumentation } from '../src';
+import * as assert from 'assert';
+import { TestMetricReader } from './testMetricsReader';
+import { metricNames } from '../src/metrics/eventLoopDelayCollector';
+import { ConventionalNamePrefix } from '../src/types/ConventionalNamePrefix';
+
+describe(`${ConventionalNamePrefix.NodeJs}.eventloop`, function () {
+ let metricReader: TestMetricReader;
+ let meterProvider: MeterProvider;
+
+ beforeEach(() => {
+ metricReader = new TestMetricReader();
+ meterProvider = new MeterProvider();
+ meterProvider.addMetricReader(metricReader);
+ });
+
+ for (const metricName in metricNames) {
+ it(`should write ${ConventionalNamePrefix.NodeJs}.${metricName} after monitoringPrecision`, async function () {
+ // arrange
+ const instrumentation = new RuntimeNodeInstrumentation({
+ monitoringPrecision: 10,
+ });
+ instrumentation.setMeterProvider(meterProvider);
+
+ // act
+ await new Promise(resolve => setTimeout(resolve, 100));
+ const { resourceMetrics, errors } = await metricReader.collect();
+
+ // assert
+ assert.deepEqual(
+ errors,
+ [],
+ 'expected no errors from the callback during collection'
+ );
+ const scopeMetrics = resourceMetrics.scopeMetrics;
+ const metric = scopeMetrics[0].metrics.find(
+ x =>
+ x.descriptor.name === `${ConventionalNamePrefix.NodeJs}.${metricName}`
+ );
+
+ assert.notEqual(
+ metric,
+ undefined,
+ `${ConventionalNamePrefix.NodeJs}.${metricName} not found`
+ );
+
+ assert.strictEqual(
+ metric!.dataPointType,
+ DataPointType.GAUGE,
+ 'expected gauge'
+ );
+
+ assert.strictEqual(
+ metric!.descriptor.name,
+ `${ConventionalNamePrefix.NodeJs}.${metricName}`,
+ 'descriptor.name'
+ );
+ });
+ }
+});
diff --git a/plugins/node/instrumentation-runtime-node/test/event_loop_time.test.ts b/plugins/node/instrumentation-runtime-node/test/event_loop_time.test.ts
new file mode 100644
index 0000000000..ac9a672ab9
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/test/event_loop_time.test.ts
@@ -0,0 +1,97 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { MeterProvider } from '@opentelemetry/sdk-metrics';
+
+import { RuntimeNodeInstrumentation } from '../src';
+import * as assert from 'assert';
+import { TestMetricReader } from './testMetricsReader';
+import { ConventionalNamePrefix } from '../src/types/ConventionalNamePrefix';
+import { ATTR_NODEJS_EVENT_LOOP_TIME } from '../src/metrics/eventLoopTimeCollector';
+
+const MEASUREMENT_INTERVAL = 10;
+
+describe(`${ConventionalNamePrefix.NodeJs}.${ATTR_NODEJS_EVENT_LOOP_TIME}`, function () {
+ let metricReader: TestMetricReader;
+ let meterProvider: MeterProvider;
+
+ beforeEach(() => {
+ metricReader = new TestMetricReader();
+ meterProvider = new MeterProvider();
+ meterProvider.addMetricReader(metricReader);
+ });
+
+ it('should not export before being enabled', async function () {
+ // arrange
+ const instrumentation = new RuntimeNodeInstrumentation({
+ monitoringPrecision: MEASUREMENT_INTERVAL,
+ enabled: false,
+ });
+ instrumentation.setMeterProvider(meterProvider);
+
+ // act
+ await new Promise(resolve => setTimeout(resolve, MEASUREMENT_INTERVAL * 5));
+ const { resourceMetrics, errors } = await metricReader.collect();
+
+ // assert
+ assert.deepEqual(errors, []);
+ const scopeMetrics = resourceMetrics.scopeMetrics;
+ assert.strictEqual(scopeMetrics.length, 0);
+ });
+
+ it(`should write ${ConventionalNamePrefix.NodeJs}.${ATTR_NODEJS_EVENT_LOOP_TIME}`, async function () {
+ // arrange
+ const instrumentation = new RuntimeNodeInstrumentation({
+ monitoringPrecision: MEASUREMENT_INTERVAL,
+ });
+ instrumentation.setMeterProvider(meterProvider);
+
+ // act
+ await new Promise(resolve => setTimeout(resolve, MEASUREMENT_INTERVAL * 5));
+ const { resourceMetrics, errors } = await metricReader.collect();
+
+ // assert
+ assert.deepEqual(
+ errors,
+ [],
+ 'expected no errors from the callback during collection'
+ );
+ const scopeMetrics = resourceMetrics.scopeMetrics;
+ const timeMetric = scopeMetrics[0].metrics.find(
+ x =>
+ x.descriptor.name ===
+ `${ConventionalNamePrefix.NodeJs}.${ATTR_NODEJS_EVENT_LOOP_TIME}`
+ );
+
+ assert.notEqual(timeMetric, undefined, 'metric not found');
+
+ assert.strictEqual(
+ timeMetric!.descriptor.name,
+ `${ConventionalNamePrefix.NodeJs}.${ATTR_NODEJS_EVENT_LOOP_TIME}`,
+ 'descriptor.name'
+ );
+
+ assert.strictEqual(
+ timeMetric!.descriptor.description,
+ 'Cumulative duration of time the event loop has been in each state.'
+ );
+
+ assert.strictEqual(
+ timeMetric!.descriptor.unit,
+ 's',
+ 'expected default unit'
+ );
+ });
+});
diff --git a/plugins/node/instrumentation-runtime-node/test/event_loop_utilization.test.ts b/plugins/node/instrumentation-runtime-node/test/event_loop_utilization.test.ts
index ccc3a04ff7..77aaf77a9d 100644
--- a/plugins/node/instrumentation-runtime-node/test/event_loop_utilization.test.ts
+++ b/plugins/node/instrumentation-runtime-node/test/event_loop_utilization.test.ts
@@ -13,28 +13,17 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-import {
- MeterProvider,
- DataPointType,
- MetricReader,
-} from '@opentelemetry/sdk-metrics';
+import { MeterProvider } from '@opentelemetry/sdk-metrics';
import { RuntimeNodeInstrumentation } from '../src';
import * as assert from 'assert';
+import { TestMetricReader } from './testMetricsReader';
+import { ConventionalNamePrefix } from '../src/types/ConventionalNamePrefix';
+import { ATTR_NODEJS_EVENT_LOOP_UTILIZATION } from '../src/metrics/eventLoopUtilizationCollector';
const MEASUREMENT_INTERVAL = 10;
-class TestMetricReader extends MetricReader {
- constructor() {
- super();
- }
-
- protected async onForceFlush(): Promise {}
-
- protected async onShutdown(): Promise {}
-}
-
-describe('nodejs.event_loop.utilization', function () {
+describe(`${ConventionalNamePrefix.NodeJs}.${ATTR_NODEJS_EVENT_LOOP_UTILIZATION}`, function () {
let metricReader: TestMetricReader;
let meterProvider: MeterProvider;
@@ -47,7 +36,7 @@ describe('nodejs.event_loop.utilization', function () {
it('should not export before being enabled', async function () {
// arrange
const instrumentation = new RuntimeNodeInstrumentation({
- eventLoopUtilizationMeasurementInterval: MEASUREMENT_INTERVAL,
+ monitoringPrecision: MEASUREMENT_INTERVAL,
enabled: false,
});
instrumentation.setMeterProvider(meterProvider);
@@ -62,32 +51,10 @@ describe('nodejs.event_loop.utilization', function () {
assert.strictEqual(scopeMetrics.length, 0);
});
- it('should not record result when collecting immediately with custom config', async function () {
- const instrumentation = new RuntimeNodeInstrumentation({
- eventLoopUtilizationMeasurementInterval: MEASUREMENT_INTERVAL,
- });
- instrumentation.setMeterProvider(meterProvider);
-
- assert.deepEqual(
- (await metricReader.collect()).resourceMetrics.scopeMetrics,
- []
- );
- });
-
- it('should not record result when collecting immediately with default config', async function () {
- const instrumentation = new RuntimeNodeInstrumentation();
- instrumentation.setMeterProvider(meterProvider);
-
- assert.deepEqual(
- (await metricReader.collect()).resourceMetrics.scopeMetrics,
- []
- );
- });
-
- it('should write event loop utilization metrics after eventLoopUtilizationMeasurementInterval', async function () {
+ it(`should write ${ConventionalNamePrefix.NodeJs}.${ATTR_NODEJS_EVENT_LOOP_UTILIZATION}`, async function () {
// arrange
const instrumentation = new RuntimeNodeInstrumentation({
- eventLoopUtilizationMeasurementInterval: MEASUREMENT_INTERVAL,
+ monitoringPrecision: MEASUREMENT_INTERVAL,
});
instrumentation.setMeterProvider(meterProvider);
@@ -102,43 +69,35 @@ describe('nodejs.event_loop.utilization', function () {
'expected no errors from the callback during collection'
);
const scopeMetrics = resourceMetrics.scopeMetrics;
- assert.strictEqual(
- scopeMetrics.length,
- 1,
- 'expected one scope (one meter created by instrumentation)'
- );
- const metrics = scopeMetrics[0].metrics;
- assert.strictEqual(
- metrics.length,
- 1,
- 'expected one metric (one metric created by instrumentation)'
- );
- assert.strictEqual(
- metrics[0].dataPointType,
- DataPointType.GAUGE,
- 'expected gauge'
+ const utilizationMetric = scopeMetrics[0].metrics.find(
+ x =>
+ x.descriptor.name ===
+ `${ConventionalNamePrefix.NodeJs}.${ATTR_NODEJS_EVENT_LOOP_UTILIZATION}`
);
+
+ assert.notEqual(utilizationMetric, undefined, 'metric not found');
+
assert.strictEqual(
- metrics[0].descriptor.name,
- 'nodejs.event_loop.utilization',
+ utilizationMetric!.descriptor.name,
+ `${ConventionalNamePrefix.NodeJs}.${ATTR_NODEJS_EVENT_LOOP_UTILIZATION}`,
'descriptor.name'
);
+
assert.strictEqual(
- metrics[0].descriptor.description,
+ utilizationMetric!.descriptor.description,
'Event loop utilization'
);
+
assert.strictEqual(
- metrics[0].descriptor.unit,
- '1',
+ utilizationMetric!.descriptor.unit,
+ 's',
'expected default unit'
);
+
assert.strictEqual(
- metrics[0].dataPoints.length,
+ utilizationMetric!.dataPoints.length,
1,
'expected one data point'
);
- const val = metrics[0].dataPoints[0].value;
- assert.strictEqual(val > 0, true, `val (${val}) > 0`);
- assert.strictEqual(val <= 1, true, `val (${val}) <= 1`);
});
});
diff --git a/plugins/node/instrumentation-runtime-node/test/heap_space_and_used.test.ts b/plugins/node/instrumentation-runtime-node/test/heap_space_and_used.test.ts
new file mode 100644
index 0000000000..177834332f
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/test/heap_space_and_used.test.ts
@@ -0,0 +1,133 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { DataPointType, MeterProvider } from '@opentelemetry/sdk-metrics';
+
+import { RuntimeNodeInstrumentation } from '../src';
+import * as assert from 'assert';
+import { TestMetricReader } from './testMetricsReader';
+import { metricNames } from '../src/metrics/heapSpacesSizeAndUsedCollector';
+import { ConventionalNamePrefix } from '../src/types/ConventionalNamePrefix';
+import { ATTR_V8JS_HEAP_SPACE_NAME } from '../src/consts/attributes';
+import { GaugeMetricData } from '@opentelemetry/sdk-metrics/build/src/export/MetricData';
+
+const MEASUREMENT_INTERVAL = 10;
+
+describe('nodejs.heap_space', function () {
+ let metricReader: TestMetricReader;
+ let meterProvider: MeterProvider;
+
+ beforeEach(() => {
+ metricReader = new TestMetricReader();
+ meterProvider = new MeterProvider();
+ meterProvider.addMetricReader(metricReader);
+ });
+
+ for (const metricName in metricNames) {
+ it(`should write ${ConventionalNamePrefix.V8js}.${metricName} after monitoringPrecision`, async function () {
+ // arrange
+ const instrumentation = new RuntimeNodeInstrumentation({
+ monitoringPrecision: MEASUREMENT_INTERVAL,
+ });
+ instrumentation.setMeterProvider(meterProvider);
+
+ // act
+ await new Promise(resolve =>
+ setTimeout(resolve, MEASUREMENT_INTERVAL * 5)
+ );
+ const { resourceMetrics, errors } = await metricReader.collect();
+
+ // assert
+ assert.deepEqual(
+ errors,
+ [],
+ 'expected no errors from the callback during collection'
+ );
+ const scopeMetrics = resourceMetrics.scopeMetrics;
+ const metric = scopeMetrics[0].metrics.find(
+ x =>
+ x.descriptor.name === `${ConventionalNamePrefix.V8js}.${metricName}`
+ );
+
+ assert.notEqual(
+ metric,
+ undefined,
+ `${ConventionalNamePrefix.V8js}.${metricName} not found`
+ );
+
+ assert.strictEqual(
+ metric!.dataPointType,
+ DataPointType.GAUGE,
+ 'expected gauge'
+ );
+
+ assert.strictEqual(
+ metric!.descriptor.name,
+ `${ConventionalNamePrefix.V8js}.${metricName}`,
+ 'descriptor.name'
+ );
+ });
+
+ for (const space of [
+ 'new_space',
+ 'old_space',
+ 'code_space',
+ 'large_object_space',
+ ]) {
+ it(`should write ${ConventionalNamePrefix.V8js}.${metricName} ${space} attribute`, async function () {
+ // arrange
+ const instrumentation = new RuntimeNodeInstrumentation({
+ monitoringPrecision: MEASUREMENT_INTERVAL,
+ });
+ instrumentation.setMeterProvider(meterProvider);
+ const map = [...Array(10).keys()].map(x => x + 10);
+ map.indexOf(1);
+ // act
+ await new Promise(resolve =>
+ setTimeout(resolve, MEASUREMENT_INTERVAL * 5)
+ );
+ const { resourceMetrics, errors } = await metricReader.collect();
+
+ // assert
+ assert.deepEqual(
+ errors,
+ [],
+ 'expected no errors from the callback during collection'
+ );
+ const scopeMetrics = resourceMetrics.scopeMetrics;
+ let metric: GaugeMetricData | undefined = undefined;
+ const foundMetric = scopeMetrics[0].metrics.find(
+ x =>
+ x.descriptor.name === `${ConventionalNamePrefix.V8js}.${metricName}`
+ );
+ if (foundMetric?.dataPointType === DataPointType.GAUGE) {
+ metric = foundMetric;
+ }
+ const spaceAttribute = metric?.dataPoints.find(
+ x =>
+ x.attributes[
+ `${ConventionalNamePrefix.V8js}.${ATTR_V8JS_HEAP_SPACE_NAME}`
+ ] === space
+ );
+
+ assert.notEqual(
+ spaceAttribute,
+ undefined,
+ `${ConventionalNamePrefix.V8js}.${metricName} space: ${space} not found`
+ );
+ });
+ }
+ }
+});
diff --git a/plugins/node/instrumentation-runtime-node/test/instrumentation.test.ts b/plugins/node/instrumentation-runtime-node/test/instrumentation.test.ts
new file mode 100644
index 0000000000..34de947e15
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/test/instrumentation.test.ts
@@ -0,0 +1,85 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { MeterProvider } from '@opentelemetry/sdk-metrics';
+
+import { RuntimeNodeInstrumentation } from '../src';
+import * as assert from 'assert';
+import { TestMetricReader } from './testMetricsReader';
+
+const MEASUREMENT_INTERVAL = 10;
+
+describe('instrumentation', function () {
+ let metricReader: TestMetricReader;
+ let meterProvider: MeterProvider;
+
+ beforeEach(() => {
+ metricReader = new TestMetricReader();
+ meterProvider = new MeterProvider();
+ meterProvider.addMetricReader(metricReader);
+ });
+
+ it('should not export before being enabled', async function () {
+ // arrange
+ const instrumentation = new RuntimeNodeInstrumentation({
+ monitoringPrecision: MEASUREMENT_INTERVAL,
+ enabled: false,
+ });
+ instrumentation.setMeterProvider(meterProvider);
+
+ // act
+ await new Promise(resolve => setTimeout(resolve, MEASUREMENT_INTERVAL * 5));
+ const { resourceMetrics, errors } = await metricReader.collect();
+
+ // assert
+ assert.deepEqual(errors, []);
+ const scopeMetrics = resourceMetrics.scopeMetrics;
+ assert.strictEqual(scopeMetrics.length, 0);
+ });
+
+ it('should export after being enabled', async function () {
+ // arrange
+ const instrumentation = new RuntimeNodeInstrumentation({
+ monitoringPrecision: MEASUREMENT_INTERVAL,
+ enabled: false,
+ });
+ instrumentation.setMeterProvider(meterProvider);
+
+ // act
+ await new Promise(resolve => setTimeout(resolve, MEASUREMENT_INTERVAL * 5));
+ const firstCollections = await metricReader.collect();
+
+ // assert
+ assert.deepEqual(firstCollections.errors, []);
+ const scopeMetrics = firstCollections.resourceMetrics.scopeMetrics;
+ assert.strictEqual(scopeMetrics.length, 0);
+
+ instrumentation.enable();
+ await new Promise(resolve => setTimeout(resolve, MEASUREMENT_INTERVAL * 5));
+
+ const secondCollection = await metricReader.collect();
+ assert.deepEqual(
+ secondCollection.errors,
+ [],
+ 'expected no errors from the callback during collection'
+ );
+ const secondScopeMetrics = secondCollection.resourceMetrics.scopeMetrics;
+ assert.strictEqual(
+ secondScopeMetrics.length,
+ 1,
+ 'expected one scope (one meter created by instrumentation)'
+ );
+ });
+});
diff --git a/plugins/node/instrumentation-runtime-node/test/testMetricsReader.ts b/plugins/node/instrumentation-runtime-node/test/testMetricsReader.ts
new file mode 100644
index 0000000000..f40d1d7382
--- /dev/null
+++ b/plugins/node/instrumentation-runtime-node/test/testMetricsReader.ts
@@ -0,0 +1,25 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { MetricReader } from '@opentelemetry/sdk-metrics';
+export class TestMetricReader extends MetricReader {
+ constructor() {
+ super();
+ }
+
+ protected async onForceFlush(): Promise {}
+
+ protected async onShutdown(): Promise {}
+}
diff --git a/plugins/node/instrumentation-socket.io/.tav.yml b/plugins/node/instrumentation-socket.io/.tav.yml
index a7c5a52ec5..c8d487e10d 100644
--- a/plugins/node/instrumentation-socket.io/.tav.yml
+++ b/plugins/node/instrumentation-socket.io/.tav.yml
@@ -1,5 +1,7 @@
'socket.io':
- - versions: "2.1.1 || 2.2.0 || 2.3.0 || 2.4.0 || ^2.5.0"
+ - versions:
+ include: "^2.1.1"
+ mode: latest-minors
peerDependencies: socket.io-client@^2
commands:
- npm run test
@@ -9,7 +11,9 @@
commands:
- npm run test
- - versions: "4.5.3 || 4.6.2 || ^4.7.1"
+ - versions:
+ include: "^4.5.3"
+ mode: latest-minors
peerDependencies: socket.io-client@^4
commands:
- npm run test
diff --git a/plugins/node/instrumentation-socket.io/CHANGELOG.md b/plugins/node/instrumentation-socket.io/CHANGELOG.md
index c69f15f002..d4a2026418 100644
--- a/plugins/node/instrumentation-socket.io/CHANGELOG.md
+++ b/plugins/node/instrumentation-socket.io/CHANGELOG.md
@@ -1,5 +1,49 @@
# Changelog
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-socket.io-v0.42.0...instrumentation-socket.io-v0.43.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Bug Fixes
+
+* change span names for socket-io ([#2495](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2495)) ([86dba74](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/86dba74c5f12a3e47c08fef7cdb2edf0776ee6f8))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-socket.io-v0.41.0...instrumentation-socket.io-v0.42.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-socket.io-v0.40.0...instrumentation-socket.io-v0.41.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-socket.io-v0.39.0...instrumentation-socket.io-v0.40.0) (2024-06-06)
diff --git a/plugins/node/instrumentation-socket.io/README.md b/plugins/node/instrumentation-socket.io/README.md
index 28370b58f2..757805358a 100644
--- a/plugins/node/instrumentation-socket.io/README.md
+++ b/plugins/node/instrumentation-socket.io/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-socket.io
## Supported Versions
-- `>=2 <5`
+- [socket.io](https://www.npmjs.com/package/socket.io) versions `>=2.0.0 <5`
## Usage
@@ -48,16 +48,9 @@ registerInstrumentations({
| `onIgnoreEventList` | `string[]` | `[]` | names of listened events to ignore tracing for |
| `traceReserved` | `boolean` | `false` | set to true if you want to trace socket.io reserved events (see [docs](https://socket.io/docs/v4/emit-cheatsheet/#Reserved-events)) |
-## Migration From opentelemetry-instrumentation-socket.io
+## Filter Http Transport
-This instrumentation was originally published and maintained under the name `"opentelemetry-instrumentation-socket.io"` in [this repo](https://github.com/aspecto-io/opentelemetry-ext-js).
-
-Few breaking changes were made during porting to the contrib repo:
-
-### filterHttpTransport
-
-The instrumentation's config `filterHttpTransport` option was removed to decouple this instrumentation from the http instrumentation.
-if you do not want to trace the socket.io http requests, add the default socket.io route (`/socket.io/`) to the `HttpInstrumentationConfig.ignoreIncomingPaths` array
+If you do not want to trace the socket.io http requests, add the default socket.io route (`/socket.io/`) to the `HttpInstrumentationConfig.ignoreIncomingPaths` array
## Semantic Conventions
diff --git a/plugins/node/instrumentation-socket.io/package.json b/plugins/node/instrumentation-socket.io/package.json
index f8933eaafb..c86f71e28f 100644
--- a/plugins/node/instrumentation-socket.io/package.json
+++ b/plugins/node/instrumentation-socket.io/package.json
@@ -1,18 +1,18 @@
{
"name": "@opentelemetry/instrumentation-socket.io",
- "version": "0.40.0",
+ "version": "0.43.0",
"description": "OpenTelemetry instrumentation for `socket.io` messaging server implementation for Socket.IO communication",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/**/*.test.ts'",
+ "test": "mocha --require '@opentelemetry/contrib-test-utils' 'test/**/*.test.ts'",
"test-all-versions": "tav",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-socket.io --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
@@ -43,23 +43,21 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"expect": "27.4.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"socket.io": "^4.1.3",
"socket.io-client": "^4.1.3",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-socket.io#readme"
}
diff --git a/plugins/node/instrumentation-socket.io/src/socket.io.ts b/plugins/node/instrumentation-socket.io/src/socket.io.ts
index 9f8de7b534..d2b872dc9e 100644
--- a/plugins/node/instrumentation-socket.io/src/socket.io.ts
+++ b/plugins/node/instrumentation-socket.io/src/socket.io.ts
@@ -37,6 +37,7 @@ import {
} from '@opentelemetry/semantic-conventions';
import { SocketIoInstrumentationConfig } from './types';
import { SocketIoInstrumentationAttributes } from './AttributeNames';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import {
extractRoomsAttributeValue,
@@ -53,9 +54,7 @@ const reservedEvents = [
'removeListener',
];
-export class SocketIoInstrumentation extends InstrumentationBase {
- protected override _config!: SocketIoInstrumentationConfig;
-
+export class SocketIoInstrumentation extends InstrumentationBase {
constructor(config: SocketIoInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, normalizeConfig(config));
}
@@ -286,22 +285,17 @@ export class SocketIoInstrumentation extends InstrumentationBase {
const self = this;
return (original: Function) => {
return function (this: any, ev: any, originalListener: Function) {
- if (!self._config.traceReserved && reservedEvents.includes(ev)) {
+ if (!self.getConfig().traceReserved && reservedEvents.includes(ev)) {
return original.apply(this, arguments);
}
- if (self._config.onIgnoreEventList?.includes(ev)) {
+ if (self.getConfig().onIgnoreEventList?.includes(ev)) {
return original.apply(this, arguments);
}
const wrappedListener = function (this: any, ...args: any[]) {
const eventName = ev;
- const defaultNamespace = '/';
const namespace = this.name || this.adapter?.nsp?.name;
- const destination =
- namespace === defaultNamespace
- ? eventName
- : `${namespace} ${eventName}`;
const span: Span = self.tracer.startSpan(
- `${destination} ${MESSAGINGOPERATIONVALUES_RECEIVE}`,
+ `${MESSAGINGOPERATIONVALUES_RECEIVE} ${namespace}`,
{
kind: SpanKind.CONSUMER,
attributes: {
@@ -315,10 +309,10 @@ export class SocketIoInstrumentation extends InstrumentationBase {
}
);
- if (self._config.onHook) {
+ const { onHook } = self.getConfig();
+ if (onHook) {
safeExecuteInTheMiddle(
- () =>
- self._config?.onHook?.(span, { moduleVersion, payload: args }),
+ () => onHook(span, { moduleVersion, payload: args }),
e => {
if (e) self._diag.error('onHook error', e);
},
@@ -369,10 +363,10 @@ export class SocketIoInstrumentation extends InstrumentationBase {
const self = this;
return (original: Function) => {
return function (this: any, ev: any, ...args: any[]) {
- if (!self._config.traceReserved && reservedEvents.includes(ev)) {
+ if (!self.getConfig().traceReserved && reservedEvents.includes(ev)) {
return original.apply(this, arguments);
}
- if (self._config?.emitIgnoreEventList?.includes(ev)) {
+ if (self.getConfig().emitIgnoreEventList?.includes(ev)) {
return original.apply(this, arguments);
}
const messagingSystem = 'socket.io';
@@ -395,16 +389,15 @@ export class SocketIoInstrumentation extends InstrumentationBase {
namespace;
attributes[SEMATTRS_MESSAGING_DESTINATION] = namespace;
}
- const spanRooms = rooms.length ? `[${rooms.join()}]` : '';
- const span = self.tracer.startSpan(`${namespace}${spanRooms} send`, {
+ const span = self.tracer.startSpan(`send ${namespace}`, {
kind: SpanKind.PRODUCER,
attributes,
});
- if (self._config.emitHook) {
+ const { emitHook } = self.getConfig();
+ if (emitHook) {
safeExecuteInTheMiddle(
- () =>
- self._config.emitHook?.(span, { moduleVersion, payload: args }),
+ () => emitHook(span, { moduleVersion, payload: args }),
e => {
if (e) self._diag.error('emitHook error', e);
},
diff --git a/plugins/node/instrumentation-socket.io/test/socket.io.test.ts b/plugins/node/instrumentation-socket.io/test/socket.io.test.ts
index 0b733a438c..71ca13bf94 100644
--- a/plugins/node/instrumentation-socket.io/test/socket.io.test.ts
+++ b/plugins/node/instrumentation-socket.io/test/socket.io.test.ts
@@ -39,6 +39,7 @@ import {
io,
getSocketIoSpans,
expectSpan,
+ expectSpans,
isV2,
} from './utils';
@@ -56,7 +57,7 @@ describe('SocketIoInstrumentation', () => {
it('emit is instrumented', () => {
const io = createServerInstance();
io.emit('test');
- expectSpan('/ send', span => {
+ expectSpan('send /', span => {
expect(span.kind).toEqual(SpanKind.PRODUCER);
expect(span.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual('socket.io');
expect(span.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]).toEqual(
@@ -87,14 +88,14 @@ describe('SocketIoInstrumentation', () => {
} catch (error) {}
if (isV2) {
// only for v2: connect do not throw, but are just ignored
- return expectSpan('/ send', span => {
+ return expectSpan('send /', span => {
expect(span.kind).toEqual(SpanKind.PRODUCER);
expect(span.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
'socket.io'
);
});
}
- expectSpan('/ send', span => {
+ expectSpan('send /', span => {
expect(span.status.code).toEqual(SpanStatusCode.ERROR);
expect(span.status.message).toEqual(
'"connect" is a reserved event name'
@@ -105,7 +106,7 @@ describe('SocketIoInstrumentation', () => {
it('send is instrumented', () => {
const io = createServerInstance();
io.send('test');
- expectSpan('/ send', span => {
+ expectSpan('send /', span => {
expect(span.kind).toEqual(SpanKind.PRODUCER);
expect(span.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual('socket.io');
expect(span.attributes[SEMATTRS_MESSAGING_DESTINATION_KIND]).toEqual(
@@ -125,7 +126,7 @@ describe('SocketIoInstrumentation', () => {
const io = createServerInstance();
io.emit('test', 1234);
- expectSpan('/ send', span => {
+ expectSpan('send /', span => {
expect(span.attributes['payload']).toEqual(JSON.stringify([1234]));
});
});
@@ -164,17 +165,22 @@ describe('SocketIoInstrumentation', () => {
socket.on('test_reply', data => {
client.close();
sio.close();
+
//trace is created after the listener method is completed
setTimeout(() => {
- expectSpan(
- 'test_reply receive',
- span => {
+ expectSpans(
+ 'receive /',
+ spans => {
try {
- expect(span.kind).toEqual(SpanKind.CONSUMER);
- expect(span.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
- 'socket.io'
- );
- expect(span.attributes['payload']).toEqual(
+ expect(spans[0].kind).toEqual(SpanKind.CONSUMER);
+ expect(
+ spans[0].attributes[SEMATTRS_MESSAGING_SYSTEM]
+ ).toEqual('socket.io');
+ expect(spans[1].kind).toEqual(SpanKind.CONSUMER);
+ expect(
+ spans[1].attributes[SEMATTRS_MESSAGING_SYSTEM]
+ ).toEqual('socket.io');
+ expect(spans[1].attributes['payload']).toEqual(
JSON.stringify([data])
);
done();
@@ -205,18 +211,18 @@ describe('SocketIoInstrumentation', () => {
createServer((sio, port) => {
const client = io(`http://localhost:${port}`);
sio.on('connection', () => {
- client.close();
- sio.close();
//trace is created after the listener method is completed
setTimeout(() => {
- expectSpan('connection receive', span => {
+ expectSpan('receive /', span => {
expect(span.kind).toEqual(SpanKind.CONSUMER);
expect(span.attributes[SEMATTRS_MESSAGING_SYSTEM]).toEqual(
'socket.io'
);
+ client.close();
+ sio.close();
done();
});
- });
+ }, 10);
});
});
});
@@ -238,7 +244,7 @@ describe('SocketIoInstrumentation', () => {
//trace is created after the listener method is completed
setTimeout(() => {
expectSpan(
- 'test_reply receive',
+ 'receive /',
span => {
try {
expect(span.kind).toEqual(SpanKind.CONSUMER);
@@ -291,7 +297,7 @@ describe('SocketIoInstrumentation', () => {
const roomName = 'room';
const sio = createServerInstance();
sio.to(roomName).emit('broadcast', '1234');
- expectSpan('/[room] send', span => {
+ expectSpan('send /', span => {
expect(span.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual('/');
expect(
span.attributes[SocketIoInstrumentationAttributes.SOCKET_IO_ROOMS]
@@ -302,7 +308,7 @@ describe('SocketIoInstrumentation', () => {
it('broadcast to multiple rooms', () => {
const sio = createServerInstance();
sio.to('room1').to('room2').emit('broadcast', '1234');
- expectSpan('/[room1,room2] send', span => {
+ expectSpan('send /', span => {
expect(span.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual('/');
expect(
span.attributes[SocketIoInstrumentationAttributes.SOCKET_IO_ROOMS]
@@ -316,7 +322,7 @@ describe('SocketIoInstrumentation', () => {
const io = createServerInstance();
const namespace = io.of('/testing');
namespace.emit('namespace');
- expectSpan('/testing send', span => {
+ expectSpan('send /testing', span => {
expect(span.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
'/testing'
);
@@ -331,7 +337,7 @@ describe('SocketIoInstrumentation', () => {
const io = createServerInstance();
const namespace = io.of('/testing');
namespace.to(roomName).emit('broadcast', '1234');
- expectSpan('/testing[room] send', span => {
+ expectSpan('send /testing', span => {
expect(span.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
'/testing'
);
@@ -348,7 +354,7 @@ describe('SocketIoInstrumentation', () => {
const io = createServerInstance();
const namespace = io.of('/testing');
namespace.to('room1').to('room2').emit('broadcast', '1234');
- expectSpan('/testing[room1,room2] send', span => {
+ expectSpan('send /testing', span => {
expect(span.attributes[SEMATTRS_MESSAGING_DESTINATION]).toEqual(
'/testing'
);
@@ -379,7 +385,7 @@ describe('SocketIoInstrumentation', () => {
//trace is created after the listener method is completed
setTimeout(() => {
expectSpan(
- '/testing test_reply receive',
+ 'receive /testing',
span => {
try {
expect(span.kind).toEqual(SpanKind.CONSUMER);
@@ -417,11 +423,11 @@ describe('SocketIoInstrumentation', () => {
});
sio.on('connection', (socket: Socket) => {
socket.emit('test');
- client.close();
- sio.close();
setTimeout(() => {
+ client.close();
+ sio.close();
expectSpan(
- `/[${socket.id}] send`,
+ 'send /',
span => {
try {
expect(span.kind).toEqual(SpanKind.PRODUCER);
@@ -435,7 +441,7 @@ describe('SocketIoInstrumentation', () => {
},
2
);
- });
+ }, 10);
});
});
});
diff --git a/plugins/node/instrumentation-socket.io/test/utils.ts b/plugins/node/instrumentation-socket.io/test/utils.ts
index 1561a5ec4e..df11067ad7 100644
--- a/plugins/node/instrumentation-socket.io/test/utils.ts
+++ b/plugins/node/instrumentation-socket.io/test/utils.ts
@@ -73,3 +73,15 @@ export const expectSpan = (
callback(span);
}
};
+
+export const expectSpans = (
+ spanNames: string,
+ callback?: (spans: ReadableSpan[]) => void,
+ spanCount?: number
+) => {
+ const spans = getSocketIoSpans();
+ expect(spans.length).toEqual(spanCount || 1);
+ const foundSpans = spans.filter(span => spanNames.includes(span.name));
+ expect(foundSpans).toBeDefined();
+ callback?.(foundSpans);
+};
diff --git a/plugins/node/instrumentation-tedious/.tav.yml b/plugins/node/instrumentation-tedious/.tav.yml
index 0f4602307a..f61f4456f7 100644
--- a/plugins/node/instrumentation-tedious/.tav.yml
+++ b/plugins/node/instrumentation-tedious/.tav.yml
@@ -1,7 +1,33 @@
tedious:
- versions:
- include: ">=1.11.0 <=17"
- # 4.0.0 is broken: https://github.com/tediousjs/tedious/commit/4eceb48
- exclude: "4.0.0"
- mode: latest-majors
- commands: npm run test
\ No newline at end of file
+ - versions:
+ include: ">=1.11.0 <12"
+ # 4.0.0 is broken: https://github.com/tediousjs/tedious/commit/4eceb48
+ exclude: "4.0.0"
+ mode: latest-majors
+ commands: npm run test
+ - versions:
+ include: ">=12 <17"
+ mode: latest-majors
+ node: '>=16'
+ commands: npm run test
+ - versions:
+ include: ">=17 <18"
+ mode: latest-majors
+ node: '>=18'
+ commands: npm run test
+ - versions:
+ include: ">=18 <19"
+ mode: latest-majors
+ node: '>=18'
+ commands: npm run test
+ # tedious@18 started including its own .d.ts files, and they require
+ # TypeScript v5 to use. This peerDependencies can be removed when this
+ # package updates to TypeScript v5.
+ peerDependencies: typescript@5
+ - versions:
+ include: ">=19 <20"
+ mode: latest-majors
+ node: '>=18.17'
+ commands: npm run test
+ # See typescript@5 note above.
+ peerDependencies: typescript@5
diff --git a/plugins/node/instrumentation-tedious/CHANGELOG.md b/plugins/node/instrumentation-tedious/CHANGELOG.md
index 0c1e2bc090..5e51bf3e1d 100644
--- a/plugins/node/instrumentation-tedious/CHANGELOG.md
+++ b/plugins/node/instrumentation-tedious/CHANGELOG.md
@@ -1,5 +1,54 @@
# Changelog
+## [0.15.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-tedious-v0.14.0...instrumentation-tedious-v0.15.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.14.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-tedious-v0.13.0...instrumentation-tedious-v0.14.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.13.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-tedious-v0.12.0...instrumentation-tedious-v0.13.0) (2024-08-27)
+
+
+### Features
+
+* **instr-tedious:** support tedious@18 ([#2381](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2381)) ([0e9791a](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0e9791ad7a812268cc3416448316a5f2adeb8f32)), closes [#2266](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2266)
+* **instr-tedious:** support tedious@19 ([#2401](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2401)) ([d30c85c](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/d30c85ce4fb42dcd8a0f15e79fae1a72bf7578bf)), closes [#2400](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2400)
+
+## [0.12.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-tedious-v0.11.0...instrumentation-tedious-v0.12.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.11.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-tedious-v0.10.1...instrumentation-tedious-v0.11.0) (2024-06-06)
diff --git a/plugins/node/instrumentation-tedious/README.md b/plugins/node/instrumentation-tedious/README.md
index d12d5b1982..740b4da52f 100644
--- a/plugins/node/instrumentation-tedious/README.md
+++ b/plugins/node/instrumentation-tedious/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-tedious
## Supported Versions
-- `>=1.11.0 <=17`
+- [tedious](https://www.npmjs.com/package/tedious) `>=1.11.0 <20`
## Usage
diff --git a/plugins/node/instrumentation-tedious/package.json b/plugins/node/instrumentation-tedious/package.json
index 1075dbe082..e4d7ae6699 100644
--- a/plugins/node/instrumentation-tedious/package.json
+++ b/plugins/node/instrumentation-tedious/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-tedious",
- "version": "0.11.0",
+ "version": "0.15.0",
"description": "OpenTelemetry instrumentation for `tedious` database client for Microsoft SQL Server",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,11 +10,10 @@
"compile": "tsc -p .",
"lint:fix": "eslint . --ext .ts --fix",
"lint": "eslint . --ext .ts",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-tedious --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"test-all-versions": "tav",
"version:update": "node ../../../scripts/version-update.js"
},
@@ -49,23 +48,21 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.6.0",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"tedious": "17.0.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/tedious": "^4.0.10"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/tedious": "^4.0.14"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-tedious#readme"
}
diff --git a/plugins/node/instrumentation-tedious/src/index.ts b/plugins/node/instrumentation-tedious/src/index.ts
index add054c2a8..c26f998cff 100644
--- a/plugins/node/instrumentation-tedious/src/index.ts
+++ b/plugins/node/instrumentation-tedious/src/index.ts
@@ -14,9 +14,5 @@
* limitations under the License.
*/
-import { TediousInstrumentation } from './instrumentation';
-
export * from './instrumentation';
-export default TediousInstrumentation;
-
export * from './types';
diff --git a/plugins/node/instrumentation-tedious/src/instrumentation.ts b/plugins/node/instrumentation-tedious/src/instrumentation.ts
index f701451421..adc328b8ed 100644
--- a/plugins/node/instrumentation-tedious/src/instrumentation.ts
+++ b/plugins/node/instrumentation-tedious/src/instrumentation.ts
@@ -34,6 +34,7 @@ import {
import type * as tedious from 'tedious';
import { TediousInstrumentationConfig } from './types';
import { getSpanName, once } from './utils';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
const CURRENT_DATABASE = Symbol(
@@ -67,7 +68,7 @@ function setDatabase(this: ApproxConnection, databaseName: string) {
});
}
-export class TediousInstrumentation extends InstrumentationBase {
+export class TediousInstrumentation extends InstrumentationBase {
static readonly COMPONENT = 'tedious';
constructor(config: TediousInstrumentationConfig = {}) {
@@ -78,7 +79,7 @@ export class TediousInstrumentation extends InstrumentationBase {
return [
new InstrumentationNodeModuleDefinition(
TediousInstrumentation.COMPONENT,
- ['>=1.11.0 <18'],
+ ['>=1.11.0 <20'],
(moduleExports: typeof tedious) => {
const ConnectionPrototype: any = moduleExports.Connection.prototype;
for (const method of PATCHED_METHODS) {
diff --git a/plugins/node/instrumentation-tedious/test/api.ts b/plugins/node/instrumentation-tedious/test/api.ts
index b6a221bd54..f4e356783f 100644
--- a/plugins/node/instrumentation-tedious/test/api.ts
+++ b/plugins/node/instrumentation-tedious/test/api.ts
@@ -16,14 +16,14 @@
import * as assert from 'assert';
import { promisify } from 'util';
-import type { Connection, Request, TYPES, ConnectionConfig } from 'tedious';
+import type { Connection, Request, TYPES } from 'tedious';
type Method = keyof Connection & ('execSql' | 'execSqlBatch' | 'prepare');
export type tedious = {
Connection: typeof Connection;
Request: typeof Request;
TYPES: typeof TYPES;
- ConnectionConfig: ConnectionConfig;
+ ConnectionConfig: any;
};
export const makeApi = (tedious: tedious) => {
@@ -32,7 +32,7 @@ export const makeApi = (tedious: tedious) => {
return `[dbo].[${resource}]`;
};
- const createConnection = (config: ConnectionConfig): Promise => {
+ const createConnection = (config: any): Promise => {
return new Promise((resolve, reject) => {
const connection = new tedious.Connection(config);
@@ -268,11 +268,11 @@ export const makeApi = (tedious: tedious) => {
},
execute: (connection: Connection): Promise => {
return new Promise((resolve, reject) => {
- const requestDoneCb = (err: any, rowCount: number) => {
+ const requestDoneCb = (err: any, rowCount?: number) => {
if (err) {
return reject(err);
}
- resolve(rowCount);
+ resolve(rowCount!);
};
// <2.2.0 didn't take bulkOptions
const request =
@@ -294,7 +294,7 @@ export const makeApi = (tedious: tedious) => {
// required in <=11.5. not supported in 14
request.addRow({ c1: 1 });
request.addRow({ c1: 2, c2: 'hello' });
- return connection.execBulkLoad(request);
+ return (connection.execBulkLoad as any)(request);
}
(connection.execBulkLoad as any)(request, [
diff --git a/plugins/node/instrumentation-tedious/test/instrumentation.test.ts b/plugins/node/instrumentation-tedious/test/instrumentation.test.ts
index 662a352559..f9419cc4c6 100644
--- a/plugins/node/instrumentation-tedious/test/instrumentation.test.ts
+++ b/plugins/node/instrumentation-tedious/test/instrumentation.test.ts
@@ -37,7 +37,7 @@ import {
import * as assert from 'assert';
import { TediousInstrumentation } from '../src';
import makeApi from './api';
-import type { Connection, ConnectionConfig } from 'tedious';
+import type { Connection } from 'tedious';
import * as semver from 'semver';
const port = Number(process.env.MSSQL_PORT) || 1433;
@@ -50,7 +50,7 @@ const instrumentation = new TediousInstrumentation();
instrumentation.enable();
instrumentation.disable();
-const config: ConnectionConfig & { userName: string; password: string } = {
+const config: any = {
userName: user,
password,
server: host,
@@ -79,7 +79,11 @@ const incompatVersions =
(semver.lt(processVersion, '15.0.0') &&
semver.gte(tediousVersion, '16.0.0')) ||
// tedious@17 removed support for node v16 and v19 https://github.com/tediousjs/tedious/releases/tag/v17.0.0
- (semver.lt(processVersion, '17.0.0') && semver.gte(tediousVersion, '17.0.0'));
+ (semver.lt(processVersion, '17.0.0') &&
+ semver.gte(tediousVersion, '17.0.0')) ||
+ // tedious@19 removed support for node <18.17.0 https://github.com/tediousjs/tedious/releases/tag/v19.0.0
+ (semver.lt(processVersion, '18.17.0') &&
+ semver.gte(tediousVersion, '19.0.0'));
describe('tedious', () => {
let tedious: any;
diff --git a/plugins/node/instrumentation-tedious/tsconfig.json b/plugins/node/instrumentation-tedious/tsconfig.json
index 28be80d266..403245c3ac 100644
--- a/plugins/node/instrumentation-tedious/tsconfig.json
+++ b/plugins/node/instrumentation-tedious/tsconfig.json
@@ -2,7 +2,12 @@
"extends": "../../../tsconfig.base",
"compilerOptions": {
"rootDir": ".",
- "outDir": "build"
+ "outDir": "build",
+ // When testing with tedious@18, skipLibCheck:true is needed to avoid
+ // checking its types. They require AggregateError that is only available
+ // with `"target": "es2022"`, which, IIUC we don't want with our regular TS
+ // v4 build for release.
+ "skipLibCheck": true
},
"include": [
"src/**/*.ts",
diff --git a/plugins/node/instrumentation-undici/CHANGELOG.md b/plugins/node/instrumentation-undici/CHANGELOG.md
index 553e8013fc..c3a5f30d1f 100644
--- a/plugins/node/instrumentation-undici/CHANGELOG.md
+++ b/plugins/node/instrumentation-undici/CHANGELOG.md
@@ -1,5 +1,54 @@
# Changelog
+## [0.7.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-undici-v0.7.0...instrumentation-undici-v0.7.1) (2024-11-07)
+
+
+### Bug Fixes
+
+* **instrumentation-undici:** fix a possible crash if the request path is a full URL ([#2518](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2518)) ([28e209a](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/28e209a9da36bc4e1f8c2b0db7360170ed46cb80)), closes [#2471](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2471)
+* **instrumentation-undici:** Fix RequestType ([#2503](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2503)) ([9a20e15](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9a20e15547669450987b2bb7cab193f17e04ebb7))
+
+## [0.7.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-undici-v0.6.0...instrumentation-undici-v0.7.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.6.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-undici-v0.5.0...instrumentation-undici-v0.6.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.5.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-undici-v0.4.0...instrumentation-undici-v0.5.0) (2024-08-27)
+
+
+### Features
+
+* **instrumentation-undici:** Add `responseHook` ([#2356](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2356)) ([60a99c9](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/60a99c98fd3a5594c7c2234184f06166b375e707))
+
+
+### Bug Fixes
+
+* **instr-undici:** fix issue with config in constructor ([#2395](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2395)) ([ca70bb9](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/ca70bb9c8cc8128bd202a8a9a29bb5c788ea5332))
+
+## [0.4.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-undici-v0.3.0...instrumentation-undici-v0.4.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* **instr-undici:** respect requireParent flag when INVALID_SPAN_CONTEXT is used ([#2273](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2273)) ([b08f01f](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/b08f01f2d4604c14334b860e411eb55c58631171))
+* **instr-undici:** wrong user agent reported if no user agent were set ([#2282](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2282)) ([72e3f66](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/72e3f66c2049189172491a166a20c1af3f547ee5))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.3.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-undici-v0.2.0...instrumentation-undici-v0.3.0) (2024-06-06)
diff --git a/plugins/node/instrumentation-undici/README.md b/plugins/node/instrumentation-undici/README.md
index cf533955fc..e0d9f8d158 100644
--- a/plugins/node/instrumentation-undici/README.md
+++ b/plugins/node/instrumentation-undici/README.md
@@ -16,7 +16,7 @@ npm install --save @opentelemetry/instrumentation-undici
## Supported Versions
-- `undici@>=5.12.0`
+- [`undici`](https://www.npmjs.com/package/undici) version `>=5.12.0`
## Usage
@@ -51,11 +51,12 @@ Undici instrumentation has few options available to choose from. You can set the
| Options | Type | Description |
| ------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
-| [`ignoreRequestHook`](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/plugins/node/instrumentation-undici/src/types.ts#L63) | `IgnoreRequestFunction` | Undici instrumentation will not trace all incoming requests that matched with custom function. |
-| [`requestHook`](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/plugins/node/instrumentation-undici/src/types.ts#L65) | `RequestHookFunction` | Function for adding custom attributes before request is handled. |
-| [`startSpanHook`](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/plugins/node/instrumentation-undici/src/types.ts#L67) | `StartSpanHookFunction` | Function for adding custom attributes before a span is started. |
-| [`requireParentforSpans`](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/plugins/node/instrumentation-undici/src/types.ts#L69) | `Boolean` | Require a parent span is present to create new span for outgoing requests. |
-| [`headersToSpanAttributes`](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/plugins/node/instrumentation-undici/src/types.ts#L71) | `Object` | List of case insensitive HTTP headers to convert to span attributes. Headers will be converted to span attributes in the form of `http.{request\|response}.header.header-name` where the name is only lowercased, e.g. `http.response.header.content-length` |
+| [`ignoreRequestHook`](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/plugins/node/instrumentation-undici/src/types.ts#L73) | `IgnoreRequestFunction` | Undici instrumentation will not trace all incoming requests that matched with custom function. |
+| [`requestHook`](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/plugins/node/instrumentation-undici/src/types.ts#L75) | `RequestHookFunction` | Function for adding custom attributes before request is handled. |
+| [`responseHook`](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/plugins/node/instrumentation-undici/src/types.ts#L77) | `ResponseHookFunction` | Function for adding custom attributes after the response headers are received. |
+| [`startSpanHook`](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/plugins/node/instrumentation-undici/src/types.ts#L79) | `StartSpanHookFunction` | Function for adding custom attributes before a span is started. |
+| [`requireParentforSpans`](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/plugins/node/instrumentation-undici/src/types.ts#L81) | `Boolean` | Require a parent span is present to create new span for outgoing requests. |
+| [`headersToSpanAttributes`](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/plugins/node/instrumentation-undici/src/types.ts#L83) | `Object` | List of case insensitive HTTP headers to convert to span attributes. Headers will be converted to span attributes in the form of `http.{request\|response}.header.header-name` where the name is only lowercased, e.g. `http.response.header.content-length` |
### Observations
diff --git a/plugins/node/instrumentation-undici/package.json b/plugins/node/instrumentation-undici/package.json
index a2c182c32b..3bea1dc564 100644
--- a/plugins/node/instrumentation-undici/package.json
+++ b/plugins/node/instrumentation-undici/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-undici",
- "version": "0.3.0",
+ "version": "0.7.1",
"description": "OpenTelemetry instrumentation for `undici` http client and Node.js fetch()",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -8,14 +8,13 @@
"scripts": {
"prepublishOnly": "npm run compile",
"compile": "tsc -p .",
- "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts",
+ "test": "nyc mocha test/**/*.test.ts",
"test-all-versions": "tav",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
"watch": "tsc -w",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-undici --include-dependencies",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js"
},
@@ -46,13 +45,11 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"semver": "^7.6.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
"undici": "6.11.1"
},
@@ -61,7 +58,7 @@
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-undici",
"sideEffects": false
diff --git a/plugins/node/instrumentation-undici/src/index.ts b/plugins/node/instrumentation-undici/src/index.ts
index 80c6504fbc..809207c6ce 100644
--- a/plugins/node/instrumentation-undici/src/index.ts
+++ b/plugins/node/instrumentation-undici/src/index.ts
@@ -14,12 +14,5 @@
* limitations under the License.
*/
-export { UndiciInstrumentation } from './undici';
-export {
- UndiciRequest,
- UndiciResponse,
- IgnoreRequestFunction,
- RequestHookFunction,
- StartSpanHookFunction,
- UndiciInstrumentationConfig,
-} from './types';
+export * from './undici';
+export * from './types';
diff --git a/plugins/node/instrumentation-undici/src/internal-types.ts b/plugins/node/instrumentation-undici/src/internal-types.ts
index fee0e7294a..e6b2fff535 100644
--- a/plugins/node/instrumentation-undici/src/internal-types.ts
+++ b/plugins/node/instrumentation-undici/src/internal-types.ts
@@ -13,14 +13,12 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-import type { Channel } from 'diagnostics_channel';
import { UndiciRequest, UndiciResponse } from './types';
export interface ListenerRecord {
name: string;
- channel: Channel;
- onMessage: (message: any, name: string) => void;
+ unsubscribe: () => void;
}
export interface RequestMessage {
diff --git a/plugins/node/instrumentation-undici/src/types.ts b/plugins/node/instrumentation-undici/src/types.ts
index 0d28e1fff9..0b56998e6b 100644
--- a/plugins/node/instrumentation-undici/src/types.ts
+++ b/plugins/node/instrumentation-undici/src/types.ts
@@ -41,6 +41,7 @@ export interface UndiciRequest {
export interface UndiciResponse {
headers: Buffer[];
statusCode: number;
+ statusText: string;
}
export interface IgnoreRequestFunction {
@@ -51,18 +52,29 @@ export interface RequestHookFunction {
(span: Span, request: T): void;
}
+export interface ResponseHookFunction<
+ RequestType = UndiciRequest,
+ ResponseType = UndiciResponse
+> {
+ (span: Span, info: { request: RequestType; response: ResponseType }): void;
+}
+
export interface StartSpanHookFunction {
(request: T): Attributes;
}
// This package will instrument HTTP requests made through `undici` or `fetch` global API
// so it seems logical to have similar options than the HTTP instrumentation
-export interface UndiciInstrumentationConfig
- extends InstrumentationConfig {
+export interface UndiciInstrumentationConfig<
+ RequestType = UndiciRequest,
+ ResponseType = UndiciResponse
+> extends InstrumentationConfig {
/** Not trace all outgoing requests that matched with custom function */
ignoreRequestHook?: IgnoreRequestFunction;
/** Function for adding custom attributes before request is handled */
requestHook?: RequestHookFunction;
+ /** Function called once response headers have been received */
+ responseHook?: ResponseHookFunction;
/** Function for adding custom attributes before a span is started */
startSpanHook?: StartSpanHookFunction;
/** Require parent to create span for outgoing requests */
diff --git a/plugins/node/instrumentation-undici/src/undici.ts b/plugins/node/instrumentation-undici/src/undici.ts
index aa89c4f4ea..949b1e11c7 100644
--- a/plugins/node/instrumentation-undici/src/undici.ts
+++ b/plugins/node/instrumentation-undici/src/undici.ts
@@ -34,6 +34,7 @@ import {
ValueType,
} from '@opentelemetry/api';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import {
@@ -59,7 +60,7 @@ interface InstrumentationRecord {
// A combination of https://github.com/elastic/apm-agent-nodejs and
// https://github.com/gadget-inc/opentelemetry-instrumentations/blob/main/packages/opentelemetry-instrumentation-undici/src/index.ts
-export class UndiciInstrumentation extends InstrumentationBase {
+export class UndiciInstrumentation extends InstrumentationBase {
// Keep ref to avoid https://github.com/nodejs/node/issues/42170 bug and for
// unsubscribing.
private _channelSubs!: Array;
@@ -68,7 +69,6 @@ export class UndiciInstrumentation extends InstrumentationBase {
private _httpClientDurationHistogram!: Histogram;
constructor(config: UndiciInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
- this.setConfig(config);
}
// No need to instrument files/modules
@@ -77,24 +77,32 @@ export class UndiciInstrumentation extends InstrumentationBase {
}
override disable(): void {
- if (!this._config.enabled) {
- return;
- }
-
- this._channelSubs.forEach(sub => sub.channel.unsubscribe(sub.onMessage));
+ super.disable();
+ this._channelSubs.forEach(sub => sub.unsubscribe());
this._channelSubs.length = 0;
- this._config.enabled = false;
}
override enable(): void {
- if (this._config.enabled) {
+ // "enabled" handling is currently a bit messy with InstrumentationBase.
+ // If constructed with `{enabled: false}`, this `.enable()` is still called,
+ // and `this.getConfig().enabled !== this.isEnabled()`, creating confusion.
+ //
+ // For now, this class will setup for instrumenting if `.enable()` is
+ // called, but use `this.getConfig().enabled` to determine if
+ // instrumentation should be generated. This covers the more likely common
+ // case of config being given a construction time, rather than later via
+ // `instance.enable()`, `.disable()`, or `.setConfig()` calls.
+ super.enable();
+
+ // This method is called by the super-class constructor before ours is
+ // called. So we need to ensure the property is initalized.
+ this._channelSubs = this._channelSubs || [];
+
+ // Avoid to duplicate subscriptions
+ if (this._channelSubs.length > 0) {
return;
}
- this._config.enabled = true;
- // This method is called by the `InstrumentationAbstract` constructor before
- // ours is called. So we need to ensure the property is initalized
- this._channelSubs = this._channelSubs || [];
this.subscribeToChannel(
'undici:request:create',
this.onRequestCreated.bind(this)
@@ -111,16 +119,6 @@ export class UndiciInstrumentation extends InstrumentationBase {
this.subscribeToChannel('undici:request:error', this.onError.bind(this));
}
- override setConfig(config: UndiciInstrumentationConfig = {}): void {
- super.setConfig(config);
-
- if (config?.enabled) {
- this.enable();
- } else {
- this.disable();
- }
- }
-
protected override _updateMetricInstruments() {
this._httpClientDurationHistogram = this.meter.createHistogram(
'http.client.request.duration',
@@ -138,20 +136,31 @@ export class UndiciInstrumentation extends InstrumentationBase {
);
}
- private _getConfig(): UndiciInstrumentationConfig {
- return this._config as UndiciInstrumentationConfig;
- }
-
private subscribeToChannel(
diagnosticChannel: string,
- onMessage: ListenerRecord['onMessage']
+ onMessage: (message: any, name: string | symbol) => void
) {
- const channel = diagch.channel(diagnosticChannel);
- channel.subscribe(onMessage);
+ // `diagnostics_channel` had a ref counting bug until v18.19.0.
+ // https://github.com/nodejs/node/pull/47520
+ const [major, minor] = process.version
+ .replace('v', '')
+ .split('.')
+ .map(n => Number(n));
+ const useNewSubscribe = major > 18 || (major === 18 && minor >= 19);
+
+ let unsubscribe: () => void;
+ if (useNewSubscribe) {
+ diagch.subscribe?.(diagnosticChannel, onMessage);
+ unsubscribe = () => diagch.unsubscribe?.(diagnosticChannel, onMessage);
+ } else {
+ const channel = diagch.channel(diagnosticChannel);
+ channel.subscribe(onMessage);
+ unsubscribe = () => channel.unsubscribe(onMessage);
+ }
+
this._channelSubs.push({
name: diagnosticChannel,
- channel,
- onMessage,
+ unsubscribe,
});
}
@@ -163,10 +172,11 @@ export class UndiciInstrumentation extends InstrumentationBase {
// - instrumentation is disabled
// - ignored by config
// - method is 'CONNECT'
- const config = this._getConfig();
+ const config = this.getConfig();
+ const enabled = config.enabled !== false;
const shouldIgnoreReq = safeExecuteInTheMiddle(
() =>
- !config.enabled ||
+ !enabled ||
request.method === 'CONNECT' ||
config.ignoreRequestHook?.(request),
e => e && this._diag.error('caught ignoreRequestHook error: ', e),
@@ -178,7 +188,14 @@ export class UndiciInstrumentation extends InstrumentationBase {
}
const startTime = hrTime();
- const requestUrl = new URL(request.origin + request.path);
+ let requestUrl;
+ try {
+ requestUrl = new URL(request.path, request.origin);
+ } catch (err) {
+ this._diag.warn('could not determine url.full:', err);
+ // Skip instrumenting this request.
+ return;
+ }
const urlScheme = requestUrl.protocol.replace(':', '');
const requestMethod = this.getRequestMethod(request.method);
const attributes: Attributes = {
@@ -205,7 +222,9 @@ export class UndiciInstrumentation extends InstrumentationBase {
const idx = request.headers.findIndex(
h => h.toLowerCase() === 'user-agent'
);
- userAgent = request.headers[idx + 1];
+ if (idx >= 0) {
+ userAgent = request.headers[idx + 1];
+ }
} else if (typeof request.headers === 'string') {
const headers = request.headers.split('\r\n');
const uaHeader = headers.find(h =>
@@ -239,7 +258,10 @@ export class UndiciInstrumentation extends InstrumentationBase {
const currentSpan = trace.getSpan(activeCtx);
let span: Span;
- if (config.requireParentforSpans && !currentSpan) {
+ if (
+ config.requireParentforSpans &&
+ (!currentSpan || !trace.isSpanContextValid(currentSpan.spanContext()))
+ ) {
span = trace.wrapSpanContext(INVALID_SPAN_CONTEXT);
} else {
span = this.tracer.startSpan(
@@ -292,7 +314,7 @@ export class UndiciInstrumentation extends InstrumentationBase {
return;
}
- const config = this._getConfig();
+ const config = this.getConfig();
const { span } = record;
const { remoteAddress, remotePort } = socket;
const spanAttributes: Attributes = {
@@ -350,7 +372,15 @@ export class UndiciInstrumentation extends InstrumentationBase {
[SemanticAttributes.HTTP_RESPONSE_STATUS_CODE]: response.statusCode,
};
- const config = this._getConfig();
+ const config = this.getConfig();
+
+ // Execute the response hook if defined
+ safeExecuteInTheMiddle(
+ () => config.responseHook?.(span, { request, response }),
+ e => e && this._diag.error('caught responseHook error: ', e),
+ true
+ );
+
const headersToAttribs = new Set();
if (config.headersToSpanAttributes?.responseHeaders) {
diff --git a/plugins/node/instrumentation-undici/test/fetch.test.ts b/plugins/node/instrumentation-undici/test/fetch.test.ts
index 96fa7090f4..9ef4e90767 100644
--- a/plugins/node/instrumentation-undici/test/fetch.test.ts
+++ b/plugins/node/instrumentation-undici/test/fetch.test.ts
@@ -35,19 +35,16 @@ import { MockPropagation } from './utils/mock-propagation';
import { MockServer } from './utils/mock-server';
import { assertSpan } from './utils/assertSpan';
-const instrumentation = new UndiciInstrumentation();
-instrumentation.enable();
-instrumentation.disable();
-
-const protocol = 'http';
-const hostname = 'localhost';
-const mockServer = new MockServer();
-const memoryExporter = new InMemorySpanExporter();
-const provider = new NodeTracerProvider();
-provider.addSpanProcessor(new SimpleSpanProcessor(memoryExporter));
-instrumentation.setTracerProvider(provider);
-
describe('UndiciInstrumentation `fetch` tests', function () {
+ let instrumentation: UndiciInstrumentation;
+
+ const protocol = 'http';
+ const hostname = 'localhost';
+ const mockServer = new MockServer();
+ const memoryExporter = new InMemorySpanExporter();
+ const provider = new NodeTracerProvider();
+ provider.addSpanProcessor(new SimpleSpanProcessor(memoryExporter));
+
before(function (done) {
// Do not test if the `fetch` global API is not available
// This applies to nodejs < v18 or nodejs < v16.15 wihtout the flag
@@ -57,6 +54,9 @@ describe('UndiciInstrumentation `fetch` tests', function () {
this.skip();
}
+ instrumentation = new UndiciInstrumentation();
+ instrumentation.setTracerProvider(provider);
+
propagation.setGlobalPropagator(new MockPropagation());
context.setGlobalContextManager(new AsyncHooksContextManager().enable());
mockServer.start(done);
@@ -105,8 +105,8 @@ describe('UndiciInstrumentation `fetch` tests', function () {
let spans = memoryExporter.getFinishedSpans();
assert.strictEqual(spans.length, 0);
- // Disable via config
- instrumentation.setConfig({ enabled: false });
+ // Disable
+ instrumentation.disable();
const fetchUrl = `${protocol}://${hostname}:${mockServer.port}/?query=test`;
const response = await fetch(fetchUrl);
@@ -126,7 +126,8 @@ describe('UndiciInstrumentation `fetch` tests', function () {
});
afterEach(function () {
// Empty configuration & disable
- instrumentation.setConfig({ enabled: false });
+ instrumentation.setConfig({});
+ instrumentation.disable();
});
it('should create valid spans even if the configuration hooks fail', async function () {
@@ -135,13 +136,15 @@ describe('UndiciInstrumentation `fetch` tests', function () {
// Set the bad configuration
instrumentation.setConfig({
- enabled: true,
ignoreRequestHook: () => {
throw new Error('ignoreRequestHook error');
},
requestHook: () => {
throw new Error('requestHook error');
},
+ responseHook: () => {
+ throw new Error('responseHook error');
+ },
startSpanHook: () => {
throw new Error('startSpanHook error');
},
@@ -201,7 +204,6 @@ describe('UndiciInstrumentation `fetch` tests', function () {
// Set configuration
instrumentation.setConfig({
- enabled: true,
ignoreRequestHook: req => {
return req.path.indexOf('/ignore/path') !== -1;
},
@@ -213,6 +215,12 @@ describe('UndiciInstrumentation `fetch` tests', function () {
req.headers.push('x-requested-with', 'undici');
}
},
+ responseHook: (span, { response }) => {
+ span.setAttribute(
+ 'test.response-hook.attribute',
+ response.statusText
+ );
+ },
startSpanHook: request => {
return {
'test.hook.attribute': 'hook-value',
@@ -281,6 +289,11 @@ describe('UndiciInstrumentation `fetch` tests', function () {
'hook-value',
'startSpanHook is called'
);
+ assert.strictEqual(
+ span.attributes['test.response-hook.attribute'],
+ 'OK',
+ 'responseHook is called'
+ );
});
it('should not create spans without parent if required in configuration', async function () {
@@ -288,7 +301,6 @@ describe('UndiciInstrumentation `fetch` tests', function () {
assert.strictEqual(spans.length, 0);
instrumentation.setConfig({
- enabled: true,
requireParentforSpans: true,
});
@@ -308,7 +320,6 @@ describe('UndiciInstrumentation `fetch` tests', function () {
assert.strictEqual(spans.length, 0);
instrumentation.setConfig({
- enabled: true,
requireParentforSpans: true,
});
diff --git a/plugins/node/instrumentation-undici/test/metrics.test.ts b/plugins/node/instrumentation-undici/test/metrics.test.ts
index 0fc633ef19..a903698385 100644
--- a/plugins/node/instrumentation-undici/test/metrics.test.ts
+++ b/plugins/node/instrumentation-undici/test/metrics.test.ts
@@ -31,24 +31,19 @@ import { MockServer } from './utils/mock-server';
import { MockMetricsReader } from './utils/mock-metrics-reader';
import { SemanticAttributes } from '../src/enums/SemanticAttributes';
-const instrumentation = new UndiciInstrumentation();
-instrumentation.enable();
-instrumentation.disable();
-
-const protocol = 'http';
-const hostname = 'localhost';
-const mockServer = new MockServer();
-const provider = new NodeTracerProvider();
-const meterProvider = new MeterProvider();
-const metricsMemoryExporter = new InMemoryMetricExporter(
- AggregationTemporality.DELTA
-);
-const metricReader = new MockMetricsReader(metricsMemoryExporter);
-meterProvider.addMetricReader(metricReader);
-instrumentation.setTracerProvider(provider);
-instrumentation.setMeterProvider(meterProvider);
-
describe('UndiciInstrumentation metrics tests', function () {
+ let instrumentation: UndiciInstrumentation;
+ const protocol = 'http';
+ const hostname = 'localhost';
+ const mockServer = new MockServer();
+ const provider = new NodeTracerProvider();
+ const meterProvider = new MeterProvider();
+ const metricsMemoryExporter = new InMemoryMetricExporter(
+ AggregationTemporality.DELTA
+ );
+ const metricReader = new MockMetricsReader(metricsMemoryExporter);
+ meterProvider.addMetricReader(metricReader);
+
before(function (done) {
// Do not test if the `fetch` global API is not available
// This applies to nodejs < v18 or nodejs < v16.15 without the flag
@@ -58,6 +53,10 @@ describe('UndiciInstrumentation metrics tests', function () {
this.skip();
}
+ instrumentation = new UndiciInstrumentation();
+ instrumentation.setTracerProvider(provider);
+ instrumentation.setMeterProvider(meterProvider);
+
context.setGlobalContextManager(new AsyncHooksContextManager().enable());
mockServer.start(done);
mockServer.mockListener((req, res) => {
@@ -67,13 +66,10 @@ describe('UndiciInstrumentation metrics tests', function () {
res.write(JSON.stringify({ success: true }));
res.end();
});
-
- // enable instrumentation for all tests
- instrumentation.enable();
});
after(function (done) {
- instrumentation.disable();
+ instrumentation?.disable();
context.disable();
propagation.disable();
mockServer.mockListener(undefined);
diff --git a/plugins/node/instrumentation-undici/test/undici.test.ts b/plugins/node/instrumentation-undici/test/undici.test.ts
index c125b2e189..effa2b3a3f 100644
--- a/plugins/node/instrumentation-undici/test/undici.test.ts
+++ b/plugins/node/instrumentation-undici/test/undici.test.ts
@@ -17,6 +17,7 @@ import * as assert from 'assert';
import { Writable } from 'stream';
import {
+ INVALID_SPAN_CONTEXT,
SpanKind,
SpanStatusCode,
context,
@@ -38,26 +39,6 @@ import { assertSpan } from './utils/assertSpan';
import type { fetch, stream, request, Client, Dispatcher } from 'undici';
-const instrumentation = new UndiciInstrumentation();
-instrumentation.enable();
-instrumentation.disable();
-
-// Reference to the `undici` module
-let undici: {
- fetch: typeof fetch;
- request: typeof request;
- stream: typeof stream;
- Client: typeof Client;
-};
-
-const protocol = 'http';
-const hostname = 'localhost';
-const mockServer = new MockServer();
-const memoryExporter = new InMemorySpanExporter();
-const provider = new NodeTracerProvider();
-provider.addSpanProcessor(new SimpleSpanProcessor(memoryExporter));
-instrumentation.setTracerProvider(provider);
-
// Undici docs (https://github.com/nodejs/undici#garbage-collection) suggest
// that an undici response body should always be consumed.
async function consumeResponseBody(body: Dispatcher.ResponseData['body']) {
@@ -73,6 +54,23 @@ async function consumeResponseBody(body: Dispatcher.ResponseData['body']) {
}
describe('UndiciInstrumentation `undici` tests', function () {
+ let instrumentation: UndiciInstrumentation;
+
+ // Reference to the `undici` module
+ let undici: {
+ fetch: typeof fetch;
+ request: typeof request;
+ stream: typeof stream;
+ Client: typeof Client;
+ };
+
+ const protocol = 'http';
+ const hostname = 'localhost';
+ const mockServer = new MockServer();
+ const memoryExporter = new InMemorySpanExporter();
+ const provider = new NodeTracerProvider();
+ provider.addSpanProcessor(new SimpleSpanProcessor(memoryExporter));
+
before(function (done) {
// Load `undici`. It may fail if nodejs version is <18 because the module uses
// features only available from that version. In that case skip the test.
@@ -82,6 +80,9 @@ describe('UndiciInstrumentation `undici` tests', function () {
this.skip();
}
+ instrumentation = new UndiciInstrumentation();
+ instrumentation.setTracerProvider(provider);
+
propagation.setGlobalPropagator(new MockPropagation());
context.setGlobalContextManager(new AsyncHooksContextManager().enable());
mockServer.start(done);
@@ -135,7 +136,7 @@ describe('UndiciInstrumentation `undici` tests', function () {
assert.strictEqual(spans.length, 0);
// Disable via config
- instrumentation.setConfig({ enabled: false });
+ instrumentation.disable();
const requestUrl = `${protocol}://${hostname}:${mockServer.port}/?query=test`;
const { headers, body } = await undici.request(requestUrl);
@@ -156,7 +157,6 @@ describe('UndiciInstrumentation `undici` tests', function () {
instrumentation.enable();
// Set configuration
instrumentation.setConfig({
- enabled: true,
ignoreRequestHook: req => {
return req.path.indexOf('/ignore/path') !== -1;
},
@@ -168,6 +168,12 @@ describe('UndiciInstrumentation `undici` tests', function () {
req.headers.push('x-requested-with', 'undici');
}
},
+ responseHook: (span, { response }) => {
+ span.setAttribute(
+ 'test.response-hook.attribute',
+ response.statusText
+ );
+ },
startSpanHook: request => {
return {
'test.hook.attribute': 'hook-value',
@@ -181,7 +187,8 @@ describe('UndiciInstrumentation `undici` tests', function () {
});
afterEach(function () {
// Empty configuration & disable
- instrumentation.setConfig({ enabled: false });
+ instrumentation.setConfig({});
+ instrumentation.disable();
});
it('should ignore requests based on the result of ignoreRequestHook', async function () {
@@ -356,6 +363,11 @@ describe('UndiciInstrumentation `undici` tests', function () {
'hook-value',
'startSpanHook is called'
);
+ assert.strictEqual(
+ span.attributes['test.response-hook.attribute'],
+ 'OK',
+ 'responseHook is called'
+ );
});
it('should create valid spans for "fetch" method', async function () {
@@ -416,6 +428,11 @@ describe('UndiciInstrumentation `undici` tests', function () {
'hook-value',
'startSpanHook is called'
);
+ assert.strictEqual(
+ span.attributes['test.response-hook.attribute'],
+ 'OK',
+ 'responseHook is called'
+ );
});
it('should create valid spans for "stream" method', async function () {
@@ -484,6 +501,11 @@ describe('UndiciInstrumentation `undici` tests', function () {
'hook-value',
'startSpanHook is called'
);
+ assert.strictEqual(
+ span.attributes['test.response-hook.attribute'],
+ 'OK',
+ 'responseHook is called'
+ );
});
it('should create valid spans for "dispatch" method', async function () {
@@ -560,6 +582,11 @@ describe('UndiciInstrumentation `undici` tests', function () {
'hook-value',
'startSpanHook is called'
);
+ assert.strictEqual(
+ span.attributes['test.response-hook.attribute'],
+ 'OK',
+ 'responseHook is called'
+ );
});
it('should create valid spans even if the configuration hooks fail', async function () {
@@ -568,13 +595,15 @@ describe('UndiciInstrumentation `undici` tests', function () {
// Set the bad configuration
instrumentation.setConfig({
- enabled: true,
ignoreRequestHook: () => {
throw new Error('ignoreRequestHook error');
},
requestHook: () => {
throw new Error('requestHook error');
},
+ responseHook: () => {
+ throw new Error('responseHook error');
+ },
startSpanHook: () => {
throw new Error('startSpanHook error');
},
@@ -609,7 +638,6 @@ describe('UndiciInstrumentation `undici` tests', function () {
assert.strictEqual(spans.length, 0);
instrumentation.setConfig({
- enabled: true,
requireParentforSpans: true,
});
@@ -626,12 +654,34 @@ describe('UndiciInstrumentation `undici` tests', function () {
assert.strictEqual(spans.length, 0, 'no spans are created');
});
+ it('should not create spans with INVALID_SPAN_CONTEXT parent if required in configuration', async function () {
+ let spans = memoryExporter.getFinishedSpans();
+ assert.strictEqual(spans.length, 0);
+
+ instrumentation.setConfig({
+ requireParentforSpans: true,
+ });
+
+ const root = trace.wrapSpanContext(INVALID_SPAN_CONTEXT);
+ await context.with(trace.setSpan(context.active(), root), async () => {
+ const requestUrl = `${protocol}://${hostname}:${mockServer.port}/?query=test`;
+ const response = await undici.request(requestUrl);
+ await consumeResponseBody(response.body);
+ assert.ok(
+ response.headers['propagation-error'] == null,
+ 'propagation is set for instrumented requests'
+ );
+ });
+
+ spans = memoryExporter.getFinishedSpans();
+ assert.strictEqual(spans.length, 0, 'no spans are created');
+ });
+
it('should create spans with parent if required in configuration', function (done) {
let spans = memoryExporter.getFinishedSpans();
assert.strictEqual(spans.length, 0);
instrumentation.setConfig({
- enabled: true,
requireParentforSpans: true,
});
@@ -743,5 +793,71 @@ describe('UndiciInstrumentation `undici` tests', function () {
},
});
});
+
+ it('should not report an user-agent if it was not defined', async function () {
+ let spans = memoryExporter.getFinishedSpans();
+ assert.strictEqual(spans.length, 0);
+
+ // Do some requests
+ const headers = {
+ 'foo-client': 'bar',
+ };
+
+ const queryRequestUrl = `${protocol}://${hostname}:${mockServer.port}/?query=test`;
+ const queryResponse = await undici.request(queryRequestUrl, { headers });
+ await consumeResponseBody(queryResponse.body);
+
+ assert.ok(
+ queryResponse.headers['propagation-error'] == null,
+ 'propagation is set for instrumented requests'
+ );
+
+ spans = memoryExporter.getFinishedSpans();
+ const span = spans[0];
+ assert.ok(span, 'a span is present');
+ assert.strictEqual(spans.length, 1);
+ assertSpan(span, {
+ hostname: 'localhost',
+ httpStatusCode: queryResponse.statusCode,
+ httpMethod: 'GET',
+ path: '/',
+ query: '?query=test',
+ reqHeaders: headers,
+ resHeaders: queryResponse.headers,
+ });
+ assert.strictEqual(
+ span.attributes['user_agent.original'],
+ undefined,
+ 'user-agent is undefined'
+ );
+ });
+
+ it('should create valid span if request.path is a full URL', async function () {
+ let spans = memoryExporter.getFinishedSpans();
+ assert.strictEqual(spans.length, 0);
+
+ const origin = `${protocol}://${hostname}:${mockServer.port}`;
+ const fullUrl = `${origin}/?query=test`;
+ const client = new undici.Client(origin);
+ const res = await client.request({
+ path: fullUrl,
+ method: 'GET',
+ });
+ await consumeResponseBody(res.body);
+
+ spans = memoryExporter.getFinishedSpans();
+ const span = spans[0];
+ assert.ok(span, 'a span is present');
+ assert.strictEqual(spans.length, 1);
+ assertSpan(span, {
+ hostname: 'localhost',
+ httpStatusCode: res.statusCode,
+ httpMethod: 'GET',
+ path: '/',
+ query: '?query=test',
+ resHeaders: res.headers,
+ });
+ assert.strictEqual(span.attributes['url.full'], fullUrl);
+ });
});
});
diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md
index 18c43c1de2..6218d5a0a3 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/CHANGELOG.md
@@ -1,5 +1,49 @@
# Changelog
+## [0.47.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-lambda-v0.46.0...instrumentation-aws-lambda-v0.47.0) (2024-11-07)
+
+
+### ⚠ BREAKING CHANGES
+
+* **aws-lambda:** Remove explicit x-ray context in favor of global propagator ([#2369](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2369))
+
+### Features
+
+* **aws-lambda:** Remove explicit x-ray context in favor of global propagator ([#2369](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2369)) ([a926f53](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/a926f536733a2add23464bd26988cf253bdda305))
+* **instrumentation-aws-lambda:** take care of ESM based (`.mjs`) handlers ([#2508](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2508)) ([0309cae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0309caeafc44ac9cb13a3345b790b01b76d0497d))
+
+## [0.46.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-lambda-v0.45.0...instrumentation-aws-lambda-v0.46.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.45.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-lambda-v0.44.0...instrumentation-aws-lambda-v0.45.0) (2024-10-08)
+
+
+### Features
+
+* Record AWS Lambda coldstarts ([#2403](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2403)) ([bc69fff](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/bc69fffc106142ed4c8333d3f6122329f51e4039))
+
+## [0.44.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-lambda-v0.43.0...instrumentation-aws-lambda-v0.44.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-lambda-v0.42.0...instrumentation-aws-lambda-v0.43.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-lambda-v0.41.1...instrumentation-aws-lambda-v0.42.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/README.md b/plugins/node/opentelemetry-instrumentation-aws-lambda/README.md
index 59543ddb2d..dd0568d652 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-lambda/README.md
+++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/README.md
@@ -3,22 +3,26 @@
[![NPM Published Version][npm-img]][npm-url]
[![Apache License][license-image]][license-image]
-[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @carolabadeer
+[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @jj22ee
This module provides automatic instrumentation for the [`AWS Lambda`](https://docs.aws.amazon.com/lambda/latest/dg/nodejs-handler.html) module, which may be loaded using the [`@opentelemetry/sdk-trace-node`](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node) package and is included in the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle.
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience.
-This module is currently under active development and not ready for general use.
-
Compatible with OpenTelemetry JS API and SDK `1.0+`.
+This module is currently under active development and not ready for general use.
+
## Installation
```bash
npm install --save @opentelemetry/instrumentation-aws-lambda
```
+## Supported Versions
+
+- This package will instrument the lambda execution regardless of versions.
+
## Usage
Create a file to initialize the instrumentation, such as `lambda-wrapper.js`.
@@ -50,8 +54,7 @@ In your Lambda function configuration, add or update the `NODE_OPTIONS` environm
| --- | --- | --- |
| `requestHook` | `RequestHook` (function) | Hook for adding custom attributes before lambda starts handling the request. Receives params: `span, { event, context }` |
| `responseHook` | `ResponseHook` (function) | Hook for adding custom attributes before lambda returns the response. Receives params: `span, { err?, res? }` |
-| `disableAwsContextPropagation` | `boolean` | By default, this instrumentation will try to read the context from the `_X_AMZN_TRACE_ID` environment variable set by Lambda, set this to `true` or set the environment variable `OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION=true` to disable this behavior |
-| `eventContextExtractor` | `EventContextExtractor` (function) | Function for providing custom context extractor in order to support different event types that are handled by AWS Lambda (e.g., SQS, CloudWatch, Kinesis, API Gateway). Applied only when `disableAwsContextPropagation` is set to `true`. Receives params: `event, context` |
+| `eventContextExtractor` | `EventContextExtractor` (function) | Function for providing custom context extractor in order to support different event types that are handled by AWS Lambda (e.g., SQS, CloudWatch, Kinesis, API Gateway). |
| `lambdaHandler` | `string` | By default, this instrumentation automatically determines the Lambda handler function to instrument. This option is used to override that behavior by explicitly specifying the Lambda handler to instrument. See [Specifying the Lambda Handler](#specifying-the-lambda-handler) for additional information. |
### Hooks Usage Example
@@ -82,6 +85,62 @@ The `lambdaHandler` should be specified as a string in the format `.0.46.0`, the Active Tracing context is no longer used by default. In order to enable it, include the [AWSXRayLambdaPropagator](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/propagators/propagator-aws-xray-lambda) propagator in the list of propagators provided to the TracerProvider via its configuration, or by including `xray-lambda` in the OTEL_PROPAGATORS environment variable (see the example below on using the env variable).
+
+Note that there are two AWS-related propagators: [AWSXRayPropagator](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/propagators/propagator-aws-xray) and [AWSXRayLambdaPropagator](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/propagators/propagator-aws-xray-lambda). Here is a guideline for when to use one or the other:
+
+- If you export traces to AWS X-Ray, then use the `AWSXRayLambdaPropagator` or the `xray-lambda` value in the OTEL_PROPAGATORS environment variable. This will handle the active tracing lambda context as well as X-Ray HTTP headers.
+- If you export traces to a backend other than AWS X-Ray, then use the `AWSXrayPropagator` or `xray` in the environment variable. This propagator only handles the X-Ray HTTP headers.
+
+Examples:
+
+1. Active Tracing is enabled and the OpenTelemetry SDK is configured to export traces to AWS X-Ray. In this case, configure the SDK to use the `AWSXRayLambdaPropagator`.
+
+```js
+const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
+const { AWSXRayLambdaPropagator } = require('@opentelemetry/propagator-aws-xray-lambda');
+
+const provider = new NodeTracerProvider();
+provider.register({
+ propagator: new AWSXRayLambdaPropagator()
+});
+```
+
+Alternatively, use the `getPropagators()` function from the [auto-configuration-propagators](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/metapackages/auto-configuration-propagators/README.md) package, and set the OTEL_PROPAGATORS environment variable to `xray-lambda`.
+
+```js
+const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
+const { getPropagator } = require('@opentelemetry/auto-configuration-propagators');
+
+const provider = new NodeTracerProvider();
+provider.register({
+ propagator: getPropagator()
+});
+```
+
+1. The OpenTelemetry SDK is configured to export traces to a backend other than AWX X-Ray, but the lambda function is invoked by other AWS services which send the context using the X-Ray HTTP headers. In this case, include the `AWSXRayPropagator`, which extracts context from the HTTP header but not the Lambda Active Tracing context.
+
+```js
+const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
+const { AWSXRayLambdaPropagator } = require('@opentelemetry/propagator-aws-xray-lambda');
+
+const provider = new NodeTracerProvider();
+provider.register({
+ propagator: new AWSXRayPropagator()
+});
+```
+
+Alternatively, use the `auto-configuration-package` as in example #1 and set the OTEL_PROPAGATORS environment variable to `xray`.
+
+For additional information, see the [documentation for lambda semantic conventions](https://github.com/open-telemetry/semantic-conventions/blob/main/docs/faas/aws-lambda.md#aws-x-ray-active-tracing-considerations).
+
## Semantic Conventions
This package uses `@opentelemetry/semantic-conventions` version `1.22+`, which implements Semantic Convention [Version 1.7.0](https://github.com/open-telemetry/opentelemetry-specification/blob/v1.7.0/semantic_conventions/README.md)
diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json
index e09fe6acd7..7a7877d21b 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json
+++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/package.json
@@ -1,17 +1,17 @@
{
"name": "@opentelemetry/instrumentation-aws-lambda",
- "version": "0.42.0",
+ "version": "0.47.0",
"description": "OpenTelemetry instrumentation for AWS Lambda function invocations",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-aws-lambda --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
@@ -44,23 +44,21 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/core": "^1.8.0",
+ "@opentelemetry/propagator-aws-xray": "^1.25.1",
+ "@opentelemetry/propagator-aws-xray-lambda": "^0.53.0",
"@opentelemetry/sdk-metrics": "^1.8.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/propagator-aws-xray": "^1.3.1",
- "@opentelemetry/resources": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/aws-lambda": "8.10.122"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/aws-lambda": "8.10.143"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-aws-lambda#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts
index 0d8eb8a5e2..23755bb264 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/src/instrumentation.ts
@@ -35,19 +35,15 @@ import {
SpanKind,
SpanStatusCode,
TextMapGetter,
- TraceFlags,
TracerProvider,
ROOT_CONTEXT,
} from '@opentelemetry/api';
-import {
- AWSXRAY_TRACE_ID_HEADER,
- AWSXRayPropagator,
-} from '@opentelemetry/propagator-aws-xray';
import {
SEMATTRS_FAAS_EXECUTION,
SEMRESATTRS_CLOUD_ACCOUNT_ID,
SEMRESATTRS_FAAS_ID,
} from '@opentelemetry/semantic-conventions';
+import { ATTR_FAAS_COLDSTART } from '@opentelemetry/semantic-conventions/incubating';
import {
APIGatewayProxyEventHeaders,
@@ -57,11 +53,10 @@ import {
} from 'aws-lambda';
import { AwsLambdaInstrumentationConfig, EventContextExtractor } from './types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
-import { env } from 'process';
import { LambdaModule } from './internal-types';
-const awsPropagator = new AWSXRayPropagator();
const headerGetter: TextMapGetter = {
keys(carrier): string[] {
return Object.keys(carrier);
@@ -71,36 +66,19 @@ const headerGetter: TextMapGetter = {
},
};
-export const traceContextEnvironmentKey = '_X_AMZN_TRACE_ID';
+export const lambdaMaxInitInMilliseconds = 10_000;
-export class AwsLambdaInstrumentation extends InstrumentationBase {
+export class AwsLambdaInstrumentation extends InstrumentationBase {
private _traceForceFlusher?: () => Promise;
private _metricForceFlusher?: () => Promise;
- protected override _config!: AwsLambdaInstrumentationConfig;
-
constructor(config: AwsLambdaInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
- if (this._config.disableAwsContextPropagation == null) {
- if (
- typeof env['OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION'] ===
- 'string' &&
- env[
- 'OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION'
- ].toLocaleLowerCase() === 'true'
- ) {
- this._config.disableAwsContextPropagation = true;
- }
- }
- }
-
- override setConfig(config: AwsLambdaInstrumentationConfig = {}) {
- this._config = config;
}
init() {
const taskRoot = process.env.LAMBDA_TASK_ROOT;
- const handlerDef = this._config.lambdaHandler ?? process.env._HANDLER;
+ const handlerDef = this.getConfig().lambdaHandler ?? process.env._HANDLER;
// _HANDLER and LAMBDA_TASK_ROOT are always defined in Lambda but guard bail out if in the future this changes.
if (!taskRoot || !handlerDef) {
@@ -119,14 +97,28 @@ export class AwsLambdaInstrumentation extends InstrumentationBase {
// Lambda loads user function using an absolute path.
let filename = path.resolve(taskRoot, moduleRoot, module);
if (!filename.endsWith('.js')) {
- // its impossible to know in advance if the user has a cjs or js file.
- // check that the .js file exists otherwise fallback to next known possibility
+ // It's impossible to know in advance if the user has a js, mjs or cjs file.
+ // Check that the .js file exists otherwise fallback to the next known possibilities (.mjs, .cjs).
try {
fs.statSync(`${filename}.js`);
filename += '.js';
} catch (e) {
- // fallback to .cjs
- filename += '.cjs';
+ try {
+ fs.statSync(`${filename}.mjs`);
+ // fallback to .mjs (ESM)
+ filename += '.mjs';
+ } catch (e2) {
+ try {
+ fs.statSync(`${filename}.cjs`);
+ // fallback to .cjs (CommonJS)
+ filename += '.cjs';
+ } catch (e3) {
+ this._diag.warn(
+ 'No handler file was able to resolved with one of the known extensions for the file',
+ filename
+ );
+ }
+ }
}
}
@@ -140,6 +132,10 @@ export class AwsLambdaInstrumentation extends InstrumentationBase {
functionName,
});
+ const lambdaStartTime =
+ this.getConfig().lambdaStartTime ||
+ Date.now() - Math.floor(1000 * process.uptime());
+
return [
new InstrumentationNodeModuleDefinition(
// NB: The patching infrastructure seems to match names backwards, this must be the filename, while
@@ -156,7 +152,11 @@ export class AwsLambdaInstrumentation extends InstrumentationBase {
if (isWrapped(moduleExports[functionName])) {
this._unwrap(moduleExports, functionName);
}
- this._wrap(moduleExports, functionName, this._getHandler());
+ this._wrap(
+ moduleExports,
+ functionName,
+ this._getHandler(lambdaStartTime)
+ );
return moduleExports;
},
(moduleExports?: LambdaModule) => {
@@ -169,16 +169,47 @@ export class AwsLambdaInstrumentation extends InstrumentationBase {
];
}
- private _getHandler() {
+ private _getHandler(handlerLoadStartTime: number) {
return (original: Handler) => {
- return this._getPatchHandler(original);
+ return this._getPatchHandler(original, handlerLoadStartTime);
};
}
- private _getPatchHandler(original: Handler) {
+ private _getPatchHandler(original: Handler, lambdaStartTime: number) {
diag.debug('patch handler function');
const plugin = this;
+ let requestHandledBefore = false;
+ let requestIsColdStart = true;
+
+ function _onRequest(): void {
+ if (requestHandledBefore) {
+ // Non-first requests cannot be coldstart.
+ requestIsColdStart = false;
+ } else {
+ if (
+ process.env.AWS_LAMBDA_INITIALIZATION_TYPE ===
+ 'provisioned-concurrency'
+ ) {
+ // If sandbox environment is initialized with provisioned concurrency,
+ // even the first requests should not be considered as coldstart.
+ requestIsColdStart = false;
+ } else {
+ // Check whether it is proactive initialization or not:
+ // https://aaronstuyvenberg.com/posts/understanding-proactive-initialization
+ const passedTimeSinceHandlerLoad: number =
+ Date.now() - lambdaStartTime;
+ const proactiveInitialization: boolean =
+ passedTimeSinceHandlerLoad > lambdaMaxInitInMilliseconds;
+
+ // If sandbox has been initialized proactively before the actual request,
+ // even the first requests should not be considered as coldstart.
+ requestIsColdStart = !proactiveInitialization;
+ }
+ requestHandledBefore = true;
+ }
+ }
+
return function patchedHandler(
this: never,
// The event can be a user type, it truly is any.
@@ -187,11 +218,12 @@ export class AwsLambdaInstrumentation extends InstrumentationBase {
context: Context,
callback: Callback
) {
- const config = plugin._config;
+ _onRequest();
+
+ const config = plugin.getConfig();
const parent = AwsLambdaInstrumentation._determineParent(
event,
context,
- config.disableAwsContextPropagation === true,
config.eventContextExtractor ||
AwsLambdaInstrumentation._defaultEventContextExtractor
);
@@ -208,14 +240,16 @@ export class AwsLambdaInstrumentation extends InstrumentationBase {
AwsLambdaInstrumentation._extractAccountId(
context.invokedFunctionArn
),
+ [ATTR_FAAS_COLDSTART]: requestIsColdStart,
},
},
parent
);
- if (config.requestHook) {
+ const { requestHook } = config;
+ if (requestHook) {
safeExecuteInTheMiddle(
- () => config.requestHook!(span, { event, context }),
+ () => requestHook(span, { event, context }),
e => {
if (e)
diag.error('aws-lambda instrumentation: requestHook error', e);
@@ -362,9 +396,10 @@ export class AwsLambdaInstrumentation extends InstrumentationBase {
err?: Error | string | null,
res?: any
) {
- if (this._config?.responseHook) {
+ const { responseHook } = this.getConfig();
+ if (responseHook) {
safeExecuteInTheMiddle(
- () => this._config.responseHook!(span, { err, res }),
+ () => responseHook(span, { err, res }),
e => {
if (e)
diag.error('aws-lambda instrumentation: responseHook error', e);
@@ -391,32 +426,8 @@ export class AwsLambdaInstrumentation extends InstrumentationBase {
private static _determineParent(
event: any,
context: Context,
- disableAwsContextPropagation: boolean,
eventContextExtractor: EventContextExtractor
): OtelContext {
- let parent: OtelContext | undefined = undefined;
- if (!disableAwsContextPropagation) {
- const lambdaTraceHeader = process.env[traceContextEnvironmentKey];
- if (lambdaTraceHeader) {
- parent = awsPropagator.extract(
- otelContext.active(),
- { [AWSXRAY_TRACE_ID_HEADER]: lambdaTraceHeader },
- headerGetter
- );
- }
- if (parent) {
- const spanContext = trace.getSpan(parent)?.spanContext();
- if (
- spanContext &&
- (spanContext.traceFlags & TraceFlags.SAMPLED) === TraceFlags.SAMPLED
- ) {
- // Trace header provided by Lambda only sampled if a sampled context was propagated from
- // an upstream cloud service such as S3, or the user is using X-Ray. In these cases, we
- // need to use it as the parent.
- return parent;
- }
- }
- }
const extractedContext = safeExecuteInTheMiddle(
() => eventContextExtractor(event, context),
e => {
@@ -431,10 +442,6 @@ export class AwsLambdaInstrumentation extends InstrumentationBase {
if (trace.getSpan(extractedContext)?.spanContext()) {
return extractedContext;
}
- if (!parent) {
- // No context in Lambda environment or HTTP headers.
- return ROOT_CONTEXT;
- }
- return parent;
+ return ROOT_CONTEXT;
}
}
diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/src/types.ts b/plugins/node/opentelemetry-instrumentation-aws-lambda/src/types.ts
index 279eb1a9a7..096ac3003c 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-lambda/src/types.ts
+++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/src/types.ts
@@ -38,7 +38,7 @@ export type EventContextExtractor = (
export interface AwsLambdaInstrumentationConfig extends InstrumentationConfig {
requestHook?: RequestHook;
responseHook?: ResponseHook;
- disableAwsContextPropagation?: boolean;
eventContextExtractor?: EventContextExtractor;
lambdaHandler?: string;
+ lambdaStartTime?: number;
}
diff --git a/plugins/node/opentelemetry-instrumentation-aws-lambda/test/integrations/lambda-handler.test.ts b/plugins/node/opentelemetry-instrumentation-aws-lambda/test/integrations/lambda-handler.test.ts
index 2088c4316f..7b338cbd6d 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-lambda/test/integrations/lambda-handler.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-aws-lambda/test/integrations/lambda-handler.test.ts
@@ -22,7 +22,7 @@ import * as path from 'path';
import {
AwsLambdaInstrumentation,
AwsLambdaInstrumentationConfig,
- traceContextEnvironmentKey,
+ lambdaMaxInitInMilliseconds,
} from '../../src';
import {
BatchSpanProcessor,
@@ -34,6 +34,7 @@ import { Context } from 'aws-lambda';
import * as assert from 'assert';
import {
SEMATTRS_EXCEPTION_MESSAGE,
+ SEMATTRS_FAAS_COLDSTART,
SEMATTRS_FAAS_EXECUTION,
SEMRESATTRS_FAAS_NAME,
} from '@opentelemetry/semantic-conventions';
@@ -47,9 +48,11 @@ import {
SpanStatusCode,
TextMapPropagator,
ROOT_CONTEXT,
+ defaultTextMapGetter,
} from '@opentelemetry/api';
import { AWSXRayPropagator } from '@opentelemetry/propagator-aws-xray';
import { W3CTraceContextPropagator } from '@opentelemetry/core';
+import { AWSXRayLambdaPropagator } from '@opentelemetry/propagator-aws-xray-lambda';
const memoryExporter = new InMemorySpanExporter();
@@ -140,39 +143,6 @@ describe('lambda handler', () => {
new AWSXRayPropagator()
);
- const sampledHttpSpanContext: SpanContext = {
- traceId: '8a3c60f7d188f8fa79d48a391a778fa7',
- spanId: '0000000000000457',
- traceFlags: 1,
- isRemote: true,
- };
- const sampledHttpHeader = serializeSpanContext(
- sampledHttpSpanContext,
- new W3CTraceContextPropagator()
- );
-
- const unsampledAwsSpanContext: SpanContext = {
- traceId: '8a3c60f7d188f8fa79d48a391a778fa8',
- spanId: '0000000000000458',
- traceFlags: 0,
- isRemote: true,
- };
- const unsampledAwsHeader = serializeSpanContext(
- unsampledAwsSpanContext,
- new AWSXRayPropagator()
- );
-
- const unsampledHttpSpanContext: SpanContext = {
- traceId: '8a3c60f7d188f8fa79d48a391a778fa9',
- spanId: '0000000000000459',
- traceFlags: 0,
- isRemote: true,
- };
- const unsampledHttpHeader = serializeSpanContext(
- unsampledHttpSpanContext,
- new W3CTraceContextPropagator()
- );
-
const sampledGenericSpanContext: SpanContext = {
traceId: '8a3c60f7d188f8fa79d48a391a778faa',
spanId: '0000000000000460',
@@ -295,6 +265,100 @@ describe('lambda handler', () => {
assert.strictEqual(span.parentSpanId, undefined);
});
+ it('should record coldstart', async () => {
+ initializeHandler('lambda-test/sync.handler');
+
+ const handlerModule = lambdaRequire('lambda-test/sync');
+
+ const result1 = await new Promise((resolve, reject) => {
+ handlerModule.handler('arg', ctx, (err: Error, res: any) => {
+ if (err) {
+ reject(err);
+ } else {
+ resolve(res);
+ }
+ });
+ });
+
+ const result2 = await new Promise((resolve, reject) => {
+ handlerModule.handler('arg', ctx, (err: Error, res: any) => {
+ if (err) {
+ reject(err);
+ } else {
+ resolve(res);
+ }
+ });
+ });
+
+ const spans = memoryExporter.getFinishedSpans();
+ assert.strictEqual(spans.length, 2);
+ const [span1, span2] = spans;
+
+ assert.strictEqual(result1, 'ok');
+ assertSpanSuccess(span1);
+ assert.strictEqual(span1.parentSpanId, undefined);
+ assert.strictEqual(span1.attributes[SEMATTRS_FAAS_COLDSTART], true);
+
+ assert.strictEqual(result2, 'ok');
+ assertSpanSuccess(span2);
+ assert.strictEqual(span2.parentSpanId, undefined);
+ assert.strictEqual(span2.attributes[SEMATTRS_FAAS_COLDSTART], false);
+ });
+
+ it('should record coldstart with provisioned concurrency', async () => {
+ process.env.AWS_LAMBDA_INITIALIZATION_TYPE = 'provisioned-concurrency';
+
+ initializeHandler('lambda-test/sync.handler');
+
+ const result = await new Promise((resolve, reject) => {
+ lambdaRequire('lambda-test/sync').handler(
+ 'arg',
+ ctx,
+ (err: Error, res: any) => {
+ if (err) {
+ reject(err);
+ } else {
+ resolve(res);
+ }
+ }
+ );
+ });
+ assert.strictEqual(result, 'ok');
+ const spans = memoryExporter.getFinishedSpans();
+ const [span] = spans;
+ assert.strictEqual(spans.length, 1);
+ assertSpanSuccess(span);
+ assert.strictEqual(span.parentSpanId, undefined);
+ assert.strictEqual(span.attributes[SEMATTRS_FAAS_COLDSTART], false);
+ });
+
+ it('should record coldstart with proactive initialization', async () => {
+ initializeHandler('lambda-test/sync.handler', {
+ lambdaStartTime: Date.now() - 2 * lambdaMaxInitInMilliseconds,
+ });
+
+ const result = await new Promise((resolve, reject) => {
+ lambdaRequire('lambda-test/sync').handler(
+ 'arg',
+ ctx,
+ (err: Error, res: any) => {
+ if (err) {
+ reject(err);
+ } else {
+ resolve(res);
+ }
+ }
+ );
+ });
+ assert.strictEqual(result, 'ok');
+ const spans = memoryExporter.getFinishedSpans();
+ const [span] = spans;
+ assert.strictEqual(spans.length, 1);
+ assertSpanSuccess(span);
+ assert.strictEqual(span.parentSpanId, undefined);
+ assert.strictEqual(span.attributes[SEMATTRS_FAAS_COLDSTART], false);
+ });
+
it('should record error', async () => {
initializeHandler('lambda-test/sync.error');
@@ -439,99 +503,17 @@ describe('lambda handler', () => {
});
describe('with remote parent', () => {
- it('uses lambda context if sampled and no http context', async () => {
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
- initializeHandler('lambda-test/async.handler');
-
- const result = await lambdaRequire('lambda-test/async').handler(
- 'arg',
- ctx
- );
- assert.strictEqual(result, 'ok');
- const spans = memoryExporter.getFinishedSpans();
- const [span] = spans;
- assert.strictEqual(spans.length, 1);
- assertSpanSuccess(span);
- assert.strictEqual(
- span.spanContext().traceId,
- sampledAwsSpanContext.traceId
- );
- assert.strictEqual(span.parentSpanId, sampledAwsSpanContext.spanId);
- });
-
- it('uses lambda context if unsampled and no http context', async () => {
- process.env[traceContextEnvironmentKey] = unsampledAwsHeader;
- initializeHandler('lambda-test/async.handler');
-
- const result = await lambdaRequire('lambda-test/async').handler(
- 'arg',
- ctx
- );
- assert.strictEqual(result, 'ok');
- const spans = memoryExporter.getFinishedSpans();
- // Parent unsampled so no exported spans.
- assert.strictEqual(spans.length, 0);
- });
-
- it('uses lambda context if sampled and http context present', async () => {
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
- initializeHandler('lambda-test/async.handler');
-
- const proxyEvent = {
- headers: {
- traceparent: sampledHttpHeader,
- },
- };
-
- const result = await lambdaRequire('lambda-test/async').handler(
- proxyEvent,
- ctx
- );
- assert.strictEqual(result, 'ok');
- const spans = memoryExporter.getFinishedSpans();
- const [span] = spans;
- assert.strictEqual(spans.length, 1);
- assertSpanSuccess(span);
- assert.strictEqual(
- span.spanContext().traceId,
- sampledAwsSpanContext.traceId
- );
- assert.strictEqual(span.parentSpanId, sampledAwsSpanContext.spanId);
- });
-
- it('uses http context if sampled and lambda context unsampled', async () => {
- process.env[traceContextEnvironmentKey] = unsampledAwsHeader;
- initializeHandler('lambda-test/async.handler');
-
- const proxyEvent = {
- headers: {
- traceparent: sampledHttpHeader,
- },
- };
-
- const result = await lambdaRequire('lambda-test/async').handler(
- proxyEvent,
- ctx
- );
- assert.strictEqual(result, 'ok');
- const spans = memoryExporter.getFinishedSpans();
- const [span] = spans;
- assert.strictEqual(spans.length, 1);
- assertSpanSuccess(span);
- assert.strictEqual(
- span.spanContext().traceId,
- sampledHttpSpanContext.traceId
- );
- assert.strictEqual(span.parentSpanId, sampledHttpSpanContext.spanId);
+ beforeEach(() => {
+ propagation.disable();
});
- it('uses http context if unsampled and lambda context unsampled', async () => {
- process.env[traceContextEnvironmentKey] = unsampledAwsHeader;
+ it('uses globally registered propagator', async () => {
+ propagation.setGlobalPropagator(new AWSXRayPropagator());
initializeHandler('lambda-test/async.handler');
const proxyEvent = {
headers: {
- traceparent: unsampledHttpHeader,
+ 'x-amzn-trace-id': sampledAwsHeader,
},
};
@@ -541,161 +523,55 @@ describe('lambda handler', () => {
);
assert.strictEqual(result, 'ok');
const spans = memoryExporter.getFinishedSpans();
- // Parent unsampled so no spans exported.
- assert.strictEqual(spans.length, 0);
- });
-
- it('ignores sampled lambda context if env OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION is set to "true"', async () => {
- process.env['OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION'] = 'true';
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
- initializeHandler('lambda-test/async.handler', {});
-
- const result = await lambdaRequire('lambda-test/async').handler(
- 'arg',
- ctx
- );
- assert.strictEqual(result, 'ok');
- const spans = memoryExporter.getFinishedSpans();
- const [span] = spans;
- assert.strictEqual(spans.length, 1);
- assertSpanSuccess(span);
- assert.notDeepStrictEqual(
- span.spanContext().traceId,
- sampledAwsSpanContext.traceId
- );
- assert.strictEqual(span.parentSpanId, undefined);
- });
- it('ignores sampled lambda context if env OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION is set to "TRUE"', async () => {
- process.env['OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION'] = 'TRUE';
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
- initializeHandler('lambda-test/async.handler', {});
-
- const result = await lambdaRequire('lambda-test/async').handler(
- 'arg',
- ctx
- );
- assert.strictEqual(result, 'ok');
- const spans = memoryExporter.getFinishedSpans();
- const [span] = spans;
assert.strictEqual(spans.length, 1);
- assertSpanSuccess(span);
- assert.notDeepStrictEqual(
- span.spanContext().traceId,
+ assert.equal(
+ spans[0].spanContext().traceId,
sampledAwsSpanContext.traceId
);
- assert.strictEqual(span.parentSpanId, undefined);
+ assert.equal(spans[0].parentSpanId, sampledAwsSpanContext.spanId);
});
- it('ignores sampled lambda context if env OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION is set to "True"', async () => {
- process.env['OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION'] = 'True';
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
- initializeHandler('lambda-test/async.handler', {});
+ it('can extract context from lambda context env variable using a global propagator', async () => {
+ process.env['_X_AMZN_TRACE_ID'] = sampledAwsHeader;
+ propagation.setGlobalPropagator(new AWSXRayLambdaPropagator());
+ initializeHandler('lambda-test/async.handler');
const result = await lambdaRequire('lambda-test/async').handler(
'arg',
ctx
);
- assert.strictEqual(result, 'ok');
- const spans = memoryExporter.getFinishedSpans();
- const [span] = spans;
- assert.strictEqual(spans.length, 1);
- assertSpanSuccess(span);
- assert.notDeepStrictEqual(
- span.spanContext().traceId,
- sampledAwsSpanContext.traceId
- );
- assert.strictEqual(span.parentSpanId, undefined);
- });
-
- it('ignores OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION if `config.disableAwsContextPropagation` is set', async () => {
- process.env['OTEL_LAMBDA_DISABLE_AWS_CONTEXT_PROPAGATION'] = 'true';
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
- initializeHandler('lambda-test/async.handler', {
- disableAwsContextPropagation: false,
- });
- const result = await lambdaRequire('lambda-test/async').handler(
- 'arg',
- ctx
- );
assert.strictEqual(result, 'ok');
const spans = memoryExporter.getFinishedSpans();
- const [span] = spans;
- assert.strictEqual(spans.length, 1);
- assertSpanSuccess(span);
- assert.strictEqual(
- span.spanContext().traceId,
- sampledAwsSpanContext.traceId
- );
- assert.strictEqual(span.parentSpanId, sampledAwsSpanContext.spanId);
- });
- it('ignores sampled lambda context if "disableAwsContextPropagation" config option is true', async () => {
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
- initializeHandler('lambda-test/async.handler', {
- disableAwsContextPropagation: true,
- });
-
- const result = await lambdaRequire('lambda-test/async').handler(
- 'arg',
- ctx
- );
- assert.strictEqual(result, 'ok');
- const spans = memoryExporter.getFinishedSpans();
- const [span] = spans;
assert.strictEqual(spans.length, 1);
- assertSpanSuccess(span);
- assert.notDeepStrictEqual(
- span.spanContext().traceId,
+ assert.equal(
+ spans[0].spanContext().traceId,
sampledAwsSpanContext.traceId
);
- assert.strictEqual(span.parentSpanId, undefined);
+ assert.equal(spans[0].parentSpanId, sampledAwsSpanContext.spanId);
});
- it('takes sampled http context over sampled lambda context if "disableAwsContextPropagation" config option is true', async () => {
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
- initializeHandler('lambda-test/async.handler', {
- disableAwsContextPropagation: true,
- });
-
- const proxyEvent = {
- headers: {
- traceparent: sampledHttpHeader,
- },
- };
-
- const result = await lambdaRequire('lambda-test/async').handler(
- proxyEvent,
- ctx
- );
-
- assert.strictEqual(result, 'ok');
- const spans = memoryExporter.getFinishedSpans();
- const [span] = spans;
- assert.strictEqual(spans.length, 1);
- assertSpanSuccess(span);
- assert.strictEqual(
- span.spanContext().traceId,
- sampledHttpSpanContext.traceId
- );
- assert.strictEqual(span.parentSpanId, sampledHttpSpanContext.spanId);
- });
-
- it('takes sampled custom context over sampled lambda context if "eventContextExtractor" is defined', async () => {
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
+ it('used custom eventContextExtractor over global propagator if defined', async () => {
+ propagation.setGlobalPropagator(new W3CTraceContextPropagator());
const customExtractor = (event: any): OtelContext => {
- return propagation.extract(context.active(), event.contextCarrier);
+ const propagator = new AWSXRayPropagator();
+ return propagator.extract(
+ context.active(),
+ event.contextCarrier,
+ defaultTextMapGetter
+ );
};
initializeHandler('lambda-test/async.handler', {
- disableAwsContextPropagation: true,
eventContextExtractor: customExtractor,
});
const otherEvent = {
contextCarrier: {
traceparent: sampledGenericSpan,
+ 'x-amzn-trace-id': sampledAwsHeader,
},
};
@@ -711,44 +587,12 @@ describe('lambda handler', () => {
assertSpanSuccess(span);
assert.strictEqual(
span.spanContext().traceId,
- sampledGenericSpanContext.traceId
- );
- assert.strictEqual(span.parentSpanId, sampledGenericSpanContext.spanId);
- });
-
- it('prefers to extract baggage over sampled lambda context if "eventContextExtractor" is defined', async () => {
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
- const customExtractor = (event: any): OtelContext => {
- return propagation.extract(
- context.active(),
- event.customContextCarrier
- );
- };
-
- initializeHandler('lambda-test/async.handler_return_baggage', {
- disableAwsContextPropagation: true,
- eventContextExtractor: customExtractor,
- });
-
- const baggage = 'abcd=1234';
- const customRemoteEvent = {
- customContextCarrier: {
- traceparent: sampledGenericSpan,
- baggage,
- },
- };
-
- const lambdaTestAsync = lambdaRequire('lambda-test/async');
- const actual = await lambdaTestAsync.handler_return_baggage(
- customRemoteEvent,
- ctx
+ sampledAwsSpanContext.traceId
);
-
- assert.strictEqual(actual, baggage);
+ assert.strictEqual(span.parentSpanId, sampledAwsSpanContext.spanId);
});
- it('creates trace from ROOT_CONTEXT when "disableAwsContextPropagation" is true, eventContextExtractor is provided, and no custom context is found', async () => {
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
+ it('creates trace from ROOT_CONTEXT eventContextExtractor is provided, and no custom context is found', async () => {
const customExtractor = (event: any): OtelContext => {
if (!event.contextCarrier) {
return ROOT_CONTEXT;
@@ -758,7 +602,6 @@ describe('lambda handler', () => {
};
const provider = initializeHandler('lambda-test/async.handler', {
- disableAwsContextPropagation: true,
eventContextExtractor: customExtractor,
});
@@ -777,64 +620,6 @@ describe('lambda handler', () => {
const [span] = spans;
assert.strictEqual(span.parentSpanId, undefined);
});
-
- it('passes the lambda context object into the eventContextExtractor for scenarios where it is the otel context carrier', async () => {
- process.env[traceContextEnvironmentKey] = sampledAwsHeader;
- const customExtractor = (
- event: any,
- handlerContext: Context
- ): OtelContext => {
- const contextCarrier = handlerContext.clientContext?.Custom ?? {};
- return propagation.extract(context.active(), contextCarrier);
- };
-
- initializeHandler('lambda-test/async.handler', {
- disableAwsContextPropagation: true,
- eventContextExtractor: customExtractor,
- });
-
- const otherEvent = {};
- const ctxWithCustomData = {
- functionName: 'my_function',
- invokedFunctionArn: 'my_arn',
- awsRequestId: 'aws_request_id',
- clientContext: {
- client: {
- installationId: '',
- appTitle: '',
- appVersionName: '',
- appVersionCode: '',
- appPackageName: '',
- },
- Custom: {
- traceparent: sampledGenericSpan,
- },
- env: {
- platformVersion: '',
- platform: '',
- make: '',
- model: '',
- locale: '',
- },
- },
- } as Context;
-
- const result = await lambdaRequire('lambda-test/async').handler(
- otherEvent,
- ctxWithCustomData
- );
-
- assert.strictEqual(result, 'ok');
- const spans = memoryExporter.getFinishedSpans();
- const [span] = spans;
- assert.strictEqual(spans.length, 1);
- assertSpanSuccess(span);
- assert.strictEqual(
- span.spanContext().traceId,
- sampledGenericSpanContext.traceId
- );
- assert.strictEqual(span.parentSpanId, sampledGenericSpanContext.spanId);
- });
});
describe('hooks', () => {
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/.tav.yml b/plugins/node/opentelemetry-instrumentation-aws-sdk/.tav.yml
index 5db96c82f3..33461acc0b 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-sdk/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/.tav.yml
@@ -1,19 +1,28 @@
"aws-sdk":
# A small subset of releases in the range [2.308.0, 3) to reduce testing time.
- versions: "2.308.0 || 2.556.0 || 2.801.0 || 2.1049.0 || 2.1297.0 || 2.1546.0 || >=2.1548.0"
+ versions:
+ include: "^2.308.0"
+ mode: max-7
commands:
- npm run test
+# Versions [3.363.0, 3.377.0] of all @aws-sdk/client-* were bad releases. See:
+# - https://github.com/open-telemetry/opentelemetry-js-contrib/pull/2464#issuecomment-2403652552
+# - https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1828#issuecomment-1834276719
+
"@aws-sdk/client-s3":
- # A small subset of releases in the range [3.6.1, 4) to reduce testing time.
- # - 3.377.0 was a bad release (see issue #1828).
# - 3.529.0 was missing the fast-xml-parser dependency (https://github.com/aws/aws-sdk-js-v3/releases/tag/v3.529.1)
- versions: "3.6.1 || 3.55.0 || 3.180.0 || 3.289.0 || 3.385.0 || 3.498.0 || >=3.529.1"
+ versions:
+ include: "^3.6.1"
+ exclude: "3.529.0 || >=3.363.0 <=3.377.0"
+ mode: "max-7"
commands:
- npm run test
"@aws-sdk/client-sqs":
- # A small subset of releases in the range [3.24.0, 4) to reduce testing time.
- versions: "3.24.0 || 3.94.0 || 3.202.0 || 3.296.0 || 3.388.0 || 3.496.0 || >=3.503.1"
+ versions:
+ include: "^3.24.0"
+ exclude: ">=3.363.0 <=3.377.0"
+ mode: "max-7"
commands:
- npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md
index b7169dba57..4abb5d21e7 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/CHANGELOG.md
@@ -1,5 +1,62 @@
# Changelog
+## [0.46.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-sdk-v0.45.0...instrumentation-aws-sdk-v0.46.0) (2024-11-07)
+
+
+### Features
+
+* **aws-sdk:** add s3 and kinesis service extensions for aws-sdk instrumentation ([#2361](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2361)) ([a5b5614](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/a5b5614b18d0b77ce5772df9f286492879323c88))
+
+## [0.45.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-sdk-v0.44.0...instrumentation-aws-sdk-v0.45.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/propagation-utils bumped from ^0.30.11 to ^0.30.12
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.44.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-sdk-v0.43.1...instrumentation-aws-sdk-v0.44.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * dependencies
+ * @opentelemetry/propagation-utils bumped from ^0.30.10 to ^0.30.11
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.43.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-sdk-v0.43.0...instrumentation-aws-sdk-v0.43.1) (2024-07-23)
+
+
+### Bug Fixes
+
+* **aws-sdk:** add http status code attribute to aws sdk span if aws sdk v3 client exception occurs ([#2344](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2344)) ([9a06381](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9a06381afc6a7a27bc49af4ef796a547eafbf6ff))
+
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-sdk-v0.42.0...instrumentation-aws-sdk-v0.43.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-aws-sdk-v0.41.0...instrumentation-aws-sdk-v0.42.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/README.md b/plugins/node/opentelemetry-instrumentation-aws-sdk/README.md
index 52017e7497..0538603631 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-sdk/README.md
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/README.md
@@ -3,18 +3,25 @@
[![NPM Published Version][npm-img]][npm-url]
[![Apache License][license-image]][license-image]
-[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @carolabadeer @blumamir
+[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @blumamir @jj22ee
This module provides automatic instrumentation for the [`aws-sdk` v2](https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/) and [`@aws-sdk` v3](https://github.com/aws/aws-sdk-js-v3) modules, which may be loaded using the [`@opentelemetry/sdk-trace-node`](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node) package and is included in the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle.
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience.
+Compatible with OpenTelemetry JS API and SDK `1.0+`.
+
## Installation
```bash
npm install --save @opentelemetry/instrumentation-aws-sdk
```
+## Supported Versions
+
+- [`aws-sdk`](https://www.npmjs.com/package/aws-sdk) versions `>=2.308.0 <3`
+- `@aws-sdk/client-*` versions `>=3.0.0 <4`
+
## Usage
For further automatic instrumentation instruction see the [@opentelemetry/instrumentation](https://www.npmjs.com/package/@opentelemetry/instrumentation) package.
@@ -105,18 +112,6 @@ Specific service logic currently implemented for:
The instrumentation is doing best effort to support the trace specification of OpenTelemetry. For SQS, it involves defining new attributes on the `Messages` array, as well as on the manipulated types generated from this array (to set correct trace context for a single SQS message operation). Those properties are defined as [non-enumerable](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Enumerability_and_ownership_of_properties) properties, so they have minimum side effect on the app. They will, however, show when using the `Object.getOwnPropertyDescriptors` and `Reflect.ownKeys` functions on SQS `Messages` array and for each `Message` in the array.
-## Migration From opentelemetry-instrumentation-aws-sdk
-
-This instrumentation was originally published under the name `"opentelemetry-instrumentation-aws-sdk"` in [this repo](https://github.com/aspecto-io/opentelemetry-ext-js). Few breaking changes were made during porting to the contrib repo to align with conventions:
-
-### Hook Info
-
-The instrumentation's config `preRequestHook`, `responseHook` and `sqsProcessHook` functions signature changed, so the second function parameter is info object, containing the relevant hook data.
-
-### `moduleVersionAttributeName` config option
-
-The `moduleVersionAttributeName` config option is removed. To add the aws-sdk package version to spans, use the `moduleVersion` attribute in hook info for `preRequestHook` and `responseHook` functions.
-
## Semantic Conventions
This package uses `@opentelemetry/semantic-conventions` version `1.22+`, which implements Semantic Convention [Version 1.7.0](https://github.com/open-telemetry/opentelemetry-specification/blob/v1.7.0/semantic_conventions/README.md)
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json
index d55e356552..fc1c425011 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-aws-sdk",
- "version": "0.42.0",
+ "version": "0.46.0",
"description": "OpenTelemetry instrumentation for `aws-sdk` and `@aws-sdk/client-*` clients for various AWS services",
"keywords": [
"aws",
@@ -31,11 +31,11 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-aws-sdk --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/**/*.test.ts'",
+ "test": "nyc mocha --require '@opentelemetry/contrib-test-utils' 'test/**/*.test.ts'",
"test-all-versions": "tav",
"version:update": "node ../../../scripts/version-update.js",
"watch": "tsc -w"
@@ -45,33 +45,33 @@
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/propagation-utils": "^0.30.10",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/propagation-utils": "^0.30.12",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"devDependencies": {
"@aws-sdk/client-dynamodb": "3.85.0",
+ "@aws-sdk/client-kinesis": "3.85.0",
"@aws-sdk/client-lambda": "3.85.0",
"@aws-sdk/client-s3": "3.85.0",
"@aws-sdk/client-sns": "3.85.0",
"@aws-sdk/client-sqs": "3.85.0",
"@aws-sdk/types": "3.78.0",
+ "@smithy/node-http-handler": "2.4.0",
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"aws-sdk": "2.1008.0",
"eslint": "8.7.0",
"expect": "29.2.0",
- "mocha": "7.2.0",
"nock": "13.3.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"engines": {
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/aws-sdk.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/aws-sdk.ts
index cca362e293..a3040a15a9 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/aws-sdk.ts
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/aws-sdk.ts
@@ -33,6 +33,7 @@ import {
NormalizedRequest,
NormalizedResponse,
} from './types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import {
InstrumentationBase,
@@ -72,19 +73,14 @@ type V2PluginRequest = AWS.Request & {
[REQUEST_SPAN_KEY]?: Span;
};
-export class AwsInstrumentation extends InstrumentationBase {
+export class AwsInstrumentation extends InstrumentationBase {
static readonly component = 'aws-sdk';
- protected override _config!: AwsSdkInstrumentationConfig;
private servicesExtensions: ServicesExtensions = new ServicesExtensions();
constructor(config: AwsSdkInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
- override setConfig(config: AwsSdkInstrumentationConfig = {}) {
- this._config = Object.assign({}, config);
- }
-
protected init(): InstrumentationModuleDefinition[] {
const v3MiddlewareStackFileOldVersions = new InstrumentationNodeModuleFile(
'@aws-sdk/middleware-stack/dist/cjs/MiddlewareStack.js',
@@ -274,13 +270,14 @@ export class AwsInstrumentation extends InstrumentationBase {
request: NormalizedRequest,
moduleVersion: string | undefined
) {
- if (this._config?.preRequestHook) {
+ const { preRequestHook } = this.getConfig();
+ if (preRequestHook) {
const requestInfo: AwsSdkRequestHookInformation = {
moduleVersion,
request,
};
safeExecuteInTheMiddle(
- () => this._config.preRequestHook!(span, requestInfo),
+ () => preRequestHook(span, requestInfo),
(e: Error | undefined) => {
if (e)
diag.error(
@@ -294,7 +291,7 @@ export class AwsInstrumentation extends InstrumentationBase {
}
private _callUserResponseHook(span: Span, response: NormalizedResponse) {
- const responseHook = this._config?.responseHook;
+ const { responseHook } = this.getConfig();
if (!responseHook) return;
const responseInfo: AwsSdkResponseHookInformation = {
@@ -343,7 +340,7 @@ export class AwsInstrumentation extends InstrumentationBase {
normalizedResponse,
span,
self.tracer,
- self._config
+ self.getConfig()
);
}
@@ -462,7 +459,7 @@ export class AwsInstrumentation extends InstrumentationBase {
);
const requestMetadata = self.servicesExtensions.requestPreSpanHook(
normalizedRequest,
- self._config,
+ self.getConfig(),
self._diag
);
const span = self._startAwsV3Span(normalizedRequest, requestMetadata);
@@ -528,7 +525,7 @@ export class AwsInstrumentation extends InstrumentationBase {
normalizedResponse,
span,
self.tracer,
- self._config
+ self.getConfig()
);
self._callUserResponseHook(span, normalizedResponse);
return response;
@@ -538,6 +535,15 @@ export class AwsInstrumentation extends InstrumentationBase {
if (requestId) {
span.setAttribute(AttributeNames.AWS_REQUEST_ID, requestId);
}
+
+ const httpStatusCode = err?.$metadata?.httpStatusCode;
+ if (httpStatusCode) {
+ span.setAttribute(
+ SEMATTRS_HTTP_STATUS_CODE,
+ httpStatusCode
+ );
+ }
+
const extendedRequestId = err?.extendedRequestId;
if (extendedRequestId) {
span.setAttribute(
@@ -592,7 +598,7 @@ export class AwsInstrumentation extends InstrumentationBase {
const normalizedRequest = normalizeV2Request(this);
const requestMetadata = self.servicesExtensions.requestPreSpanHook(
normalizedRequest,
- self._config,
+ self.getConfig(),
self._diag
);
const span = self._startAwsV2Span(
@@ -635,7 +641,7 @@ export class AwsInstrumentation extends InstrumentationBase {
const normalizedRequest = normalizeV2Request(this);
const requestMetadata = self.servicesExtensions.requestPreSpanHook(
normalizedRequest,
- self._config,
+ self.getConfig(),
self._diag
);
const span = self._startAwsV2Span(
@@ -671,7 +677,7 @@ export class AwsInstrumentation extends InstrumentationBase {
}
private _callOriginalFunction(originalFunction: (...args: any[]) => T): T {
- if (this._config?.suppressInternalInstrumentation) {
+ if (this.getConfig().suppressInternalInstrumentation) {
return context.with(suppressTracing(context.active()), originalFunction);
} else {
return originalFunction();
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/enums.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/enums.ts
index c3a36dcb12..764bd173c7 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/enums.ts
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/enums.ts
@@ -22,4 +22,10 @@ export enum AttributeNames {
AWS_REQUEST_ID = 'aws.request.id',
AWS_REQUEST_EXTENDED_ID = 'aws.request.extended_id',
AWS_SIGNATURE_VERSION = 'aws.signature.version',
+
+ // TODO: Add these semantic attributes to:
+ // - https://github.com/open-telemetry/opentelemetry-js/blob/main/packages/opentelemetry-semantic-conventions/src/trace/SemanticAttributes.ts
+ // For S3, see specification: https://github.com/open-telemetry/semantic-conventions/blob/main/docs/object-stores/s3.md
+ AWS_S3_BUCKET = 'aws.s3.bucket',
+ AWS_KINESIS_STREAM_NAME = 'aws.kinesis.stream.name',
}
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/ServicesExtensions.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/ServicesExtensions.ts
index cb739a2011..609ed7f7a0 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/ServicesExtensions.ts
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/ServicesExtensions.ts
@@ -24,6 +24,8 @@ import {
import { DynamodbServiceExtension } from './dynamodb';
import { SnsServiceExtension } from './sns';
import { LambdaServiceExtension } from './lambda';
+import { S3ServiceExtension } from './s3';
+import { KinesisServiceExtension } from './kinesis';
export class ServicesExtensions implements ServiceExtension {
services: Map = new Map();
@@ -33,6 +35,8 @@ export class ServicesExtensions implements ServiceExtension {
this.services.set('SNS', new SnsServiceExtension());
this.services.set('DynamoDB', new DynamodbServiceExtension());
this.services.set('Lambda', new LambdaServiceExtension());
+ this.services.set('S3', new S3ServiceExtension());
+ this.services.set('Kinesis', new KinesisServiceExtension());
}
requestPreSpanHook(
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/kinesis.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/kinesis.ts
new file mode 100644
index 0000000000..76ecdf805c
--- /dev/null
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/kinesis.ts
@@ -0,0 +1,42 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { Attributes, SpanKind } from '@opentelemetry/api';
+import { AttributeNames } from '../enums';
+import { AwsSdkInstrumentationConfig, NormalizedRequest } from '../types';
+import { RequestMetadata, ServiceExtension } from './ServiceExtension';
+
+export class KinesisServiceExtension implements ServiceExtension {
+ requestPreSpanHook(
+ request: NormalizedRequest,
+ _config: AwsSdkInstrumentationConfig
+ ): RequestMetadata {
+ const streamName = request.commandInput?.StreamName;
+ const spanKind: SpanKind = SpanKind.CLIENT;
+ const spanAttributes: Attributes = {};
+
+ if (streamName) {
+ spanAttributes[AttributeNames.AWS_KINESIS_STREAM_NAME] = streamName;
+ }
+
+ const isIncoming = false;
+
+ return {
+ isIncoming,
+ spanAttributes,
+ spanKind,
+ };
+ }
+}
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/s3.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/s3.ts
new file mode 100644
index 0000000000..5bf0830e11
--- /dev/null
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/services/s3.ts
@@ -0,0 +1,42 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import { Attributes, SpanKind } from '@opentelemetry/api';
+import { AttributeNames } from '../enums';
+import { AwsSdkInstrumentationConfig, NormalizedRequest } from '../types';
+import { RequestMetadata, ServiceExtension } from './ServiceExtension';
+
+export class S3ServiceExtension implements ServiceExtension {
+ requestPreSpanHook(
+ request: NormalizedRequest,
+ _config: AwsSdkInstrumentationConfig
+ ): RequestMetadata {
+ const bucketName = request.commandInput?.Bucket;
+ const spanKind: SpanKind = SpanKind.CLIENT;
+ const spanAttributes: Attributes = {};
+
+ if (bucketName) {
+ spanAttributes[AttributeNames.AWS_S3_BUCKET] = bucketName;
+ }
+
+ const isIncoming = false;
+
+ return {
+ isIncoming,
+ spanAttributes,
+ spanKind,
+ };
+ }
+}
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/utils.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/utils.ts
index e3d0db6bdb..cb8aaa6591 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-sdk/src/utils.ts
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/src/utils.ts
@@ -13,7 +13,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-import { NormalizedRequest } from './types';
import { Attributes, Context, context } from '@opentelemetry/api';
import {
SEMATTRS_RPC_METHOD,
@@ -21,6 +20,7 @@ import {
SEMATTRS_RPC_SYSTEM,
} from '@opentelemetry/semantic-conventions';
import { AttributeNames } from './enums';
+import { NormalizedRequest } from './types';
const toPascalCase = (str: string): string =>
typeof str === 'string' ? str.charAt(0).toUpperCase() + str.slice(1) : str;
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/test/aws-sdk-v3.test.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/test/aws-sdk-v3.test.ts
index 8dee305175..29a1f6bded 100644
--- a/plugins/node/opentelemetry-instrumentation-aws-sdk/test/aws-sdk-v3.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/test/aws-sdk-v3.test.ts
@@ -84,6 +84,9 @@ describe('instrumentation-aws-sdk-v3', () => {
expect(span.attributes[SEMATTRS_RPC_SYSTEM]).toEqual('aws-api');
expect(span.attributes[SEMATTRS_RPC_METHOD]).toEqual('PutObject');
expect(span.attributes[SEMATTRS_RPC_SERVICE]).toEqual('S3');
+ expect(span.attributes[AttributeNames.AWS_S3_BUCKET]).toEqual(
+ 'ot-demo-test'
+ );
expect(span.attributes[AttributeNames.AWS_REGION]).toEqual(region);
expect(span.name).toEqual('S3.PutObject');
expect(span.kind).toEqual(SpanKind.CLIENT);
@@ -108,6 +111,9 @@ describe('instrumentation-aws-sdk-v3', () => {
expect(span.attributes[SEMATTRS_RPC_SYSTEM]).toEqual('aws-api');
expect(span.attributes[SEMATTRS_RPC_METHOD]).toEqual('PutObject');
expect(span.attributes[SEMATTRS_RPC_SERVICE]).toEqual('S3');
+ expect(span.attributes[AttributeNames.AWS_S3_BUCKET]).toEqual(
+ 'ot-demo-test'
+ );
expect(span.attributes[AttributeNames.AWS_REGION]).toEqual(region);
expect(span.name).toEqual('S3.PutObject');
expect(span.attributes[SEMATTRS_HTTP_STATUS_CODE]).toEqual(200);
@@ -134,6 +140,9 @@ describe('instrumentation-aws-sdk-v3', () => {
expect(span.attributes[SEMATTRS_RPC_SYSTEM]).toEqual('aws-api');
expect(span.attributes[SEMATTRS_RPC_METHOD]).toEqual('PutObject');
expect(span.attributes[SEMATTRS_RPC_SERVICE]).toEqual('S3');
+ expect(span.attributes[AttributeNames.AWS_S3_BUCKET]).toEqual(
+ 'ot-demo-test'
+ );
expect(span.attributes[AttributeNames.AWS_REGION]).toEqual(region);
expect(span.name).toEqual('S3.PutObject');
expect(span.attributes[SEMATTRS_HTTP_STATUS_CODE]).toEqual(200);
@@ -167,6 +176,10 @@ describe('instrumentation-aws-sdk-v3', () => {
expect(span.attributes[SEMATTRS_RPC_SYSTEM]).toEqual('aws-api');
expect(span.attributes[SEMATTRS_RPC_METHOD]).toEqual('PutObject');
expect(span.attributes[SEMATTRS_RPC_SERVICE]).toEqual('S3');
+ expect(span.attributes[AttributeNames.AWS_S3_BUCKET]).toEqual(
+ 'invalid-bucket-name'
+ );
+ expect(span.attributes[SEMATTRS_HTTP_STATUS_CODE]).toEqual(403);
expect(span.attributes[AttributeNames.AWS_REGION]).toEqual(region);
expect(span.attributes[AttributeNames.AWS_REQUEST_ID]).toEqual(
'MS95GTS7KXQ34X2S'
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/test/kinesis.test.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/test/kinesis.test.ts
new file mode 100644
index 0000000000..cdd4d92cfa
--- /dev/null
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/test/kinesis.test.ts
@@ -0,0 +1,76 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import {
+ getTestSpans,
+ registerInstrumentationTesting,
+} from '@opentelemetry/contrib-test-utils';
+import { AwsInstrumentation } from '../src';
+import { AttributeNames } from '../src/enums';
+registerInstrumentationTesting(new AwsInstrumentation());
+
+import { DescribeStreamCommand, KinesisClient } from '@aws-sdk/client-kinesis';
+import { NodeHttpHandler } from '@smithy/node-http-handler';
+import * as fs from 'fs';
+import * as nock from 'nock';
+
+import { SpanKind } from '@opentelemetry/api';
+import { ReadableSpan } from '@opentelemetry/sdk-trace-base';
+import { expect } from 'expect';
+
+const region = 'us-east-1';
+
+describe('Kinesis - v3', () => {
+ describe('DescribeStream', () => {
+ it('Request span attributes - adds Stream Name', async () => {
+ const dummyStreamName = 'dummy-stream-name';
+
+ nock(`https://kinesis.${region}.amazonaws.com`)
+ .post('/')
+ .reply(
+ 200,
+ fs.readFileSync(
+ './test/mock-responses/kinesis-describe-stream.json',
+ 'utf8'
+ )
+ );
+
+ const params = {
+ StreamName: dummyStreamName,
+ };
+
+ // Use NodeHttpHandler to use HTTP instead of HTTP2 because nock does not support HTTP2
+ const client = new KinesisClient({
+ region: region,
+ requestHandler: new NodeHttpHandler(),
+ });
+ await client.send(new DescribeStreamCommand(params));
+
+ const testSpans: ReadableSpan[] = getTestSpans();
+ const describeSpans: ReadableSpan[] = testSpans.filter(
+ (s: ReadableSpan) => {
+ return s.name === 'Kinesis.DescribeStream';
+ }
+ );
+ expect(describeSpans.length).toBe(1);
+ const describeSpan = describeSpans[0];
+ expect(
+ describeSpan.attributes[AttributeNames.AWS_KINESIS_STREAM_NAME]
+ ).toBe(dummyStreamName);
+ expect(describeSpan.kind).toBe(SpanKind.CLIENT);
+ });
+ });
+});
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/test/mock-responses/kinesis-describe-stream.json b/plugins/node/opentelemetry-instrumentation-aws-sdk/test/mock-responses/kinesis-describe-stream.json
new file mode 100644
index 0000000000..7d60744f59
--- /dev/null
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/test/mock-responses/kinesis-describe-stream.json
@@ -0,0 +1 @@
+{"StreamDescription":{"EncryptionType":"NONE","EnhancedMonitoring":[{"ShardLevelMetrics":[]}],"HasMoreShards":false,"RetentionPeriodHours":24,"Shards":[{"HashKeyRange":{"EndingHashKey":"113238940823489329203432849230874303284","StartingHashKey":"0"},"SequenceNumberRange":{"StartingSequenceNumber":"43987583475293457385930053489574375382543783454534789435"},"ShardId":"shardId-000000000000"},{"HashKeyRange":{"EndingHashKey":"226854911280625642308916401214512140969","StartingHashKey":"113427455579312821154458202477256070485"},"SequenceNumberRange":{"StartingSequenceNumber":"49654869303348141538950437146463849462533012903803486226"},"ShardId":"shardId-000000000001"},{"HashKeyRange":{"EndingHashKey":"340282366920284953463374607431768211455","StartingHashKey":"226854911280625642308916382954512140970"},"SequenceNumberRange":{"StartingSequenceNumber":"49654869303370442228501967769610713180805661265309466658"},"ShardId":"shardId-000000000002"}],"StreamARN":"arn:aws:kinesis:us-east-1:123456789012:stream/dummy-stream-name","StreamCreationTimestamp":1.723630733E9,"StreamModeDetails":{"StreamMode":"PROVISIONED"},"StreamName":"dummy-stream-name","StreamStatus":"ACTIVE"}}
\ No newline at end of file
diff --git a/plugins/node/opentelemetry-instrumentation-aws-sdk/test/s3.test.ts b/plugins/node/opentelemetry-instrumentation-aws-sdk/test/s3.test.ts
new file mode 100644
index 0000000000..47795dd466
--- /dev/null
+++ b/plugins/node/opentelemetry-instrumentation-aws-sdk/test/s3.test.ts
@@ -0,0 +1,68 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import {
+ getTestSpans,
+ registerInstrumentationTesting,
+} from '@opentelemetry/contrib-test-utils';
+import { AwsInstrumentation } from '../src';
+import { AttributeNames } from '../src/enums';
+registerInstrumentationTesting(new AwsInstrumentation());
+
+import { PutObjectCommand, S3Client } from '@aws-sdk/client-s3';
+import * as fs from 'fs';
+import * as nock from 'nock';
+
+import { SpanKind } from '@opentelemetry/api';
+import { ReadableSpan } from '@opentelemetry/sdk-trace-base';
+import { expect } from 'expect';
+
+const region = 'us-east-1';
+
+describe('S3 - v3', () => {
+ describe('PutObject', () => {
+ it('Request span attributes - adds bucket Name', async () => {
+ const dummyBucketName = 'ot-demo-test';
+
+ nock(`https://${dummyBucketName}.s3.${region}.amazonaws.com/`)
+ .put('/aws-ot-s3-test-object.txt?x-id=PutObject')
+ .reply(
+ 200,
+ fs.readFileSync('./test/mock-responses/s3-put-object.xml', 'utf8')
+ );
+
+ const params = {
+ Bucket: dummyBucketName,
+ Key: 'aws-ot-s3-test-object.txt',
+ };
+ const client = new S3Client({ region });
+ await client.send(new PutObjectCommand(params));
+
+ const testSpans: ReadableSpan[] = getTestSpans();
+ const listObjectsSpans: ReadableSpan[] = testSpans.filter(
+ (s: ReadableSpan) => {
+ return s.name === 'S3.PutObject';
+ }
+ );
+ expect(listObjectsSpans.length).toBe(1);
+ const listObjectsSpan = listObjectsSpans[0];
+ expect(listObjectsSpan.attributes[AttributeNames.AWS_S3_BUCKET]).toBe(
+ dummyBucketName
+ );
+ expect(listObjectsSpan.kind).toBe(SpanKind.CLIENT);
+ });
+ });
+});
diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/.tav.yml b/plugins/node/opentelemetry-instrumentation-bunyan/.tav.yml
index 84c75a6dc0..f3fa90578f 100644
--- a/plugins/node/opentelemetry-instrumentation-bunyan/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-bunyan/.tav.yml
@@ -1,4 +1,6 @@
bunyan:
# Testing ^1.8.12 covers at least 95% of the downloaded versions
- versions: "^1.8.12"
+ versions:
+ include: "^1.8.12"
+ mode: latest-minors
commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md
index a939f1ac76..485dacb6b6 100644
--- a/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-bunyan/CHANGELOG.md
@@ -1,5 +1,30 @@
# Changelog
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-bunyan-v0.41.0...instrumentation-bunyan-v0.42.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-bunyan-v0.40.0...instrumentation-bunyan-v0.41.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-bunyan-v0.39.0...instrumentation-bunyan-v0.40.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-bunyan-v0.38.0...instrumentation-bunyan-v0.39.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/README.md b/plugins/node/opentelemetry-instrumentation-bunyan/README.md
index 84bf360858..a9f70d220e 100644
--- a/plugins/node/opentelemetry-instrumentation-bunyan/README.md
+++ b/plugins/node/opentelemetry-instrumentation-bunyan/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-bunyan
## Supported Versions
-- `bunyan@^1.0.0`
+- [`bunyan`](https://www.npmjs.com/package/bunyan) versions `>=1.0.0 <2`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/package.json b/plugins/node/opentelemetry-instrumentation-bunyan/package.json
index 478f32a1b3..e1c95707d9 100644
--- a/plugins/node/opentelemetry-instrumentation-bunyan/package.json
+++ b/plugins/node/opentelemetry-instrumentation-bunyan/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-bunyan",
- "version": "0.39.0",
+ "version": "0.42.0",
"description": "OpenTelemetry instrumentation for `bunyan` logger",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,11 +10,10 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-bunyan --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"test-all-versions": "tav",
"version:update": "node ../../../scripts/version-update.js"
},
@@ -46,25 +45,23 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/resources": "^1.8.0",
- "@opentelemetry/sdk-logs": "^0.52.0",
+ "@opentelemetry/sdk-logs": "^0.54.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"bunyan": "1.8.15",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/api-logs": "^0.52.0",
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/api-logs": "^0.54.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
"@types/bunyan": "1.8.9"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-bunyan#readme"
diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/src/OpenTelemetryBunyanStream.ts b/plugins/node/opentelemetry-instrumentation-bunyan/src/OpenTelemetryBunyanStream.ts
index c82f967372..4699dd353c 100644
--- a/plugins/node/opentelemetry-instrumentation-bunyan/src/OpenTelemetryBunyanStream.ts
+++ b/plugins/node/opentelemetry-instrumentation-bunyan/src/OpenTelemetryBunyanStream.ts
@@ -16,6 +16,7 @@
import { logs, SeverityNumber, Logger } from '@opentelemetry/api-logs';
import type { LogLevelString } from 'bunyan';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
const DEFAULT_INSTRUMENTATION_SCOPE_NAME = PACKAGE_NAME;
diff --git a/plugins/node/opentelemetry-instrumentation-bunyan/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-bunyan/src/instrumentation.ts
index c2eb53bb58..d51595b0b5 100644
--- a/plugins/node/opentelemetry-instrumentation-bunyan/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-bunyan/src/instrumentation.ts
@@ -22,6 +22,7 @@ import {
safeExecuteInTheMiddle,
} from '@opentelemetry/instrumentation';
import { BunyanInstrumentationConfig } from './types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import { OpenTelemetryBunyanStream } from './OpenTelemetryBunyanStream';
import type * as BunyanLogger from 'bunyan';
@@ -32,20 +33,16 @@ const DEFAULT_CONFIG: BunyanInstrumentationConfig = {
disableLogCorrelation: false,
};
-export class BunyanInstrumentation extends InstrumentationBase {
+export class BunyanInstrumentation extends InstrumentationBase {
constructor(config: BunyanInstrumentationConfig = {}) {
- super(
- PACKAGE_NAME,
- PACKAGE_VERSION,
- Object.assign({}, DEFAULT_CONFIG, config)
- );
+ super(PACKAGE_NAME, PACKAGE_VERSION, { ...DEFAULT_CONFIG, ...config });
}
protected init() {
return [
new InstrumentationNodeModuleDefinition(
'bunyan',
- ['<2.0'],
+ ['>=1.0.0 <2'],
(module: any) => {
const instrumentation = this;
const Logger =
@@ -99,12 +96,8 @@ export class BunyanInstrumentation extends InstrumentationBase {
];
}
- override getConfig(): BunyanInstrumentationConfig {
- return this._config;
- }
-
override setConfig(config: BunyanInstrumentationConfig = {}) {
- this._config = Object.assign({}, DEFAULT_CONFIG, config);
+ super.setConfig({ ...DEFAULT_CONFIG, ...config });
}
private _getPatchedEmit() {
@@ -150,7 +143,7 @@ export class BunyanInstrumentation extends InstrumentationBase {
}
private _addStream(logger: any) {
- const config: BunyanInstrumentationConfig = this.getConfig();
+ const config = this.getConfig();
if (!this.isEnabled() || config.disableLogSending) {
return;
}
@@ -168,14 +161,14 @@ export class BunyanInstrumentation extends InstrumentationBase {
}
private _callHook(span: Span, record: Record) {
- const hook = this.getConfig().logHook;
+ const { logHook } = this.getConfig();
- if (typeof hook !== 'function') {
+ if (typeof logHook !== 'function') {
return;
}
safeExecuteInTheMiddle(
- () => hook(span, record),
+ () => logHook(span, record),
err => {
if (err) {
this._diag.error('error calling logHook', err);
diff --git a/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md
index 175e828147..f6c91a797c 100644
--- a/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-cassandra/CHANGELOG.md
@@ -1,5 +1,44 @@
# Changelog
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cassandra-driver-v0.41.0...instrumentation-cassandra-driver-v0.42.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cassandra-driver-v0.40.0...instrumentation-cassandra-driver-v0.41.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cassandra-driver-v0.39.0...instrumentation-cassandra-driver-v0.40.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-cassandra-driver-v0.38.0...instrumentation-cassandra-driver-v0.39.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-cassandra/README.md b/plugins/node/opentelemetry-instrumentation-cassandra/README.md
index ce80ed50ee..43b6563eb7 100644
--- a/plugins/node/opentelemetry-instrumentation-cassandra/README.md
+++ b/plugins/node/opentelemetry-instrumentation-cassandra/README.md
@@ -15,6 +15,10 @@ Compatible with OpenTelemetry JS API and SDK `1.0+`.
npm install --save @opentelemetry/instrumentation-cassandra-driver
```
+### Supported Versions
+
+- [`cassandra-driver`](https://www.npmjs.com/package/cassandra-driver) versions `>=4.4.0 <5`
+
## Usage
```js
@@ -45,10 +49,6 @@ await client.execute('select * from foo');
| `responseHook` | `CassandraDriverResponseCustomAttributeFunction` | `undefined` | Hook for adding custom attributes before response is handled |
| `maxQueryLength` | `number` | `65536` | If `enhancedDatabaseReporting` is enabled, limits the attached query strings to this length. |
-### Supported versions
-
-`>=4.4 <5.0`
-
## Semantic Conventions
This package uses `@opentelemetry/semantic-conventions` version `1.22+`, which implements Semantic Convention [Version 1.7.0](https://github.com/open-telemetry/opentelemetry-specification/blob/v1.7.0/semantic_conventions/README.md)
diff --git a/plugins/node/opentelemetry-instrumentation-cassandra/package.json b/plugins/node/opentelemetry-instrumentation-cassandra/package.json
index 74346ded65..0045766edc 100644
--- a/plugins/node/opentelemetry-instrumentation-cassandra/package.json
+++ b/plugins/node/opentelemetry-instrumentation-cassandra/package.json
@@ -1,17 +1,17 @@
{
"name": "@opentelemetry/instrumentation-cassandra-driver",
- "version": "0.39.0",
+ "version": "0.42.0",
"description": "OpenTelemetry instrumentation for `cassandra-driver` database client library for Apache Cassandra",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-cassandra-driver --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
@@ -45,24 +45,22 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "@types/sinon": "10.0.20",
"cassandra-driver": "4.6.4",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-cassandra#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-cassandra/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-cassandra/src/instrumentation.ts
index 3d90300b9c..3a65a0bd6a 100644
--- a/plugins/node/opentelemetry-instrumentation-cassandra/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-cassandra/src/instrumentation.ts
@@ -39,15 +39,14 @@ import {
SEMATTRS_NET_PEER_NAME,
SEMATTRS_NET_PEER_PORT,
} from '@opentelemetry/semantic-conventions';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import { EventEmitter } from 'events';
import type * as CassandraDriver from 'cassandra-driver';
-const supportedVersions = ['>=4.4 <5.0'];
-
-export class CassandraDriverInstrumentation extends InstrumentationBase {
- protected override _config!: CassandraDriverInstrumentationConfig;
+const supportedVersions = ['>=4.4.0 <5'];
+export class CassandraDriverInstrumentation extends InstrumentationBase {
constructor(config: CassandraDriverInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -120,13 +119,11 @@ export class CassandraDriverInstrumentation extends InstrumentationBase {
}
private _getMaxQueryLength(): number {
- const config = this.getConfig() as CassandraDriverInstrumentationConfig;
- return config.maxQueryLength ?? 65536;
+ return this.getConfig().maxQueryLength ?? 65536;
}
private _shouldIncludeDbStatement(): boolean {
- const config = this.getConfig() as CassandraDriverInstrumentationConfig;
- return config.enhancedDatabaseReporting ?? false;
+ return this.getConfig().enhancedDatabaseReporting ?? false;
}
private _getPatchedExecute() {
@@ -334,12 +331,13 @@ export class CassandraDriverInstrumentation extends InstrumentationBase {
}
private _callResponseHook(span: Span, response: ResultSet) {
- if (!this._config.responseHook) {
+ const { responseHook } = this.getConfig();
+ if (!responseHook) {
return;
}
safeExecuteInTheMiddle(
- () => this._config.responseHook!(span, { response: response }),
+ () => responseHook(span, { response: response }),
e => {
if (e) {
this._diag.error('responseHook error', e);
diff --git a/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md
index 70c12893dd..30474827ce 100644
--- a/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-connect/CHANGELOG.md
@@ -1,5 +1,30 @@
# Changelog
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-connect-v0.39.0...instrumentation-connect-v0.40.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-connect-v0.38.0...instrumentation-connect-v0.39.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-connect-v0.37.0...instrumentation-connect-v0.38.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.37.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-connect-v0.36.1...instrumentation-connect-v0.37.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-connect/README.md b/plugins/node/opentelemetry-instrumentation-connect/README.md
index d16302b84a..604ee668b4 100644
--- a/plugins/node/opentelemetry-instrumentation-connect/README.md
+++ b/plugins/node/opentelemetry-instrumentation-connect/README.md
@@ -7,6 +7,8 @@ This module provides automatic instrumentation for the [`connect`](https://githu
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience.
+Compatible with OpenTelemetry JS API and SDK `1.0+`.
+
## Status
| Maturity | [Component Owner](../../../.github/component_owners.yml) | Compatibility |
@@ -23,7 +25,7 @@ npm install --save @opentelemetry/instrumentation-http @opentelemetry/instrument
### Supported Versions
-- `^3.0.0`
+- [`connect`](https://www.npmjs.com/package/connect) versions `>=3.0.0 <4`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-connect/package.json b/plugins/node/opentelemetry-instrumentation-connect/package.json
index e3dcb5bd0a..f9e99d269e 100644
--- a/plugins/node/opentelemetry-instrumentation-connect/package.json
+++ b/plugins/node/opentelemetry-instrumentation-connect/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-connect",
- "version": "0.37.0",
+ "version": "0.40.0",
"description": "OpenTelemetry instrumentation for `connect` http middleware framework",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,10 +10,10 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-connect --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"version:update": "node ../../../scripts/version-update.js",
"watch": "tsc -w"
},
@@ -47,18 +47,16 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"connect": "3.7.0",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@types/connect": "3.4.36"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-connect#readme"
diff --git a/plugins/node/opentelemetry-instrumentation-connect/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-connect/src/instrumentation.ts
index 0c1fde4956..8d5ecb3f82 100644
--- a/plugins/node/opentelemetry-instrumentation-connect/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-connect/src/instrumentation.ts
@@ -24,6 +24,7 @@ import {
ConnectTypes,
} from './enums/AttributeNames';
import { PatchedRequest, Use, UseArgs, UseArgs2 } from './internal-types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import {
InstrumentationBase,
@@ -50,7 +51,7 @@ export class ConnectInstrumentation extends InstrumentationBase {
return [
new InstrumentationNodeModuleDefinition(
'connect',
- ['^3.0.0'],
+ ['>=3.0.0 <4'],
moduleExports => {
return this._patchConstructor(moduleExports);
}
diff --git a/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md
index cd60cca23d..a3508d264c 100644
--- a/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-dns/CHANGELOG.md
@@ -1,5 +1,30 @@
# Changelog
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dns-v0.39.0...instrumentation-dns-v0.40.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dns-v0.38.0...instrumentation-dns-v0.39.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dns-v0.37.0...instrumentation-dns-v0.38.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.37.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-dns-v0.36.1...instrumentation-dns-v0.37.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-dns/README.md b/plugins/node/opentelemetry-instrumentation-dns/README.md
index d394584264..e1940425d9 100644
--- a/plugins/node/opentelemetry-instrumentation-dns/README.md
+++ b/plugins/node/opentelemetry-instrumentation-dns/README.md
@@ -7,6 +7,8 @@ This module provides automatic instrumentation for the [`dns`](http://nodejs.org
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience.
+Compatible with OpenTelemetry JS API and SDK `1.0+`.
+
## Status
| Maturity | [Component Owner](../../../.github/component_owners.yml) | Compatibility |
@@ -19,6 +21,10 @@ If total installation size is not constrained, it is recommended to use the [`@o
npm install --save @opentelemetry/instrumentation-dns
```
+## Supported Versions
+
+- Node.js `>=14`
+
## Usage
```js
diff --git a/plugins/node/opentelemetry-instrumentation-dns/package.json b/plugins/node/opentelemetry-instrumentation-dns/package.json
index d54c69b26c..a5caaad5fe 100644
--- a/plugins/node/opentelemetry-instrumentation-dns/package.json
+++ b/plugins/node/opentelemetry-instrumentation-dns/package.json
@@ -1,20 +1,20 @@
{
"name": "@opentelemetry/instrumentation-dns",
- "version": "0.37.0",
+ "version": "0.40.0",
"description": "OpenTelemetry instrumentation for `node:dns` name resolution module",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-dns --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
+ "lint:readme": "node ../../../scripts/lint-readme",
"compile": "tsc -p ."
},
"keywords": [
@@ -47,20 +47,17 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
"@types/shimmer": "1.0.3",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "semver": "^7.5.4"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-dns#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-dns/src/index.ts b/plugins/node/opentelemetry-instrumentation-dns/src/index.ts
index c26f998cff..4af26a8a72 100644
--- a/plugins/node/opentelemetry-instrumentation-dns/src/index.ts
+++ b/plugins/node/opentelemetry-instrumentation-dns/src/index.ts
@@ -14,5 +14,5 @@
* limitations under the License.
*/
-export * from './instrumentation';
-export * from './types';
+export { DnsInstrumentation } from './instrumentation';
+export { DnsInstrumentationConfig, IgnoreMatcher } from './types';
diff --git a/plugins/node/opentelemetry-instrumentation-dns/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-dns/src/instrumentation.ts
index ae97438ddb..ea01547840 100644
--- a/plugins/node/opentelemetry-instrumentation-dns/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-dns/src/instrumentation.ts
@@ -27,6 +27,7 @@ import {
import { AddressFamily } from './enums/AddressFamily';
import { DnsInstrumentationConfig } from './types';
import * as utils from './utils';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import {
LookupCallbackSignature,
@@ -36,9 +37,7 @@ import {
/**
* Dns instrumentation for Opentelemetry
*/
-export class DnsInstrumentation extends InstrumentationBase {
- protected override _config!: DnsInstrumentationConfig;
-
+export class DnsInstrumentation extends InstrumentationBase {
constructor(config: DnsInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -112,8 +111,10 @@ export class DnsInstrumentation extends InstrumentationBase {
...args: unknown[]
) {
if (
- utils.isIgnored(hostname, plugin._config.ignoreHostnames, (e: Error) =>
- diag.error('caught ignoreHostname error: ', e)
+ utils.isIgnored(
+ hostname,
+ plugin.getConfig().ignoreHostnames,
+ (e: Error) => diag.error('caught ignoreHostname error: ', e)
)
) {
return original.apply(this, [hostname, ...args]);
diff --git a/plugins/node/opentelemetry-instrumentation-dns/src/utils.ts b/plugins/node/opentelemetry-instrumentation-dns/src/utils.ts
index 1b1d858052..ceb622bd53 100644
--- a/plugins/node/opentelemetry-instrumentation-dns/src/utils.ts
+++ b/plugins/node/opentelemetry-instrumentation-dns/src/utils.ts
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-import { Span, SpanStatusCode, SpanAttributes } from '@opentelemetry/api';
+import { Span, SpanStatusCode, Attributes } from '@opentelemetry/api';
import { AttributeNames } from './enums/AttributeNames';
import { AddressFamily } from './enums/AddressFamily';
import * as dns from 'dns';
@@ -31,7 +31,7 @@ export const setError = (err: NodeJS.ErrnoException, span: Span) => {
const attributes = {
[AttributeNames.DNS_ERROR_MESSAGE]: message,
[AttributeNames.DNS_ERROR_NAME]: name,
- } as SpanAttributes;
+ } as Attributes;
span.setAttributes(attributes);
@@ -70,7 +70,7 @@ export const setLookupAttributes = (
address: string | dns.LookupAddress[] | dns.LookupAddress,
family?: number
) => {
- const attributes = {} as SpanAttributes;
+ const attributes = {} as Attributes;
const isObject = typeof address === 'object';
let addresses = address;
diff --git a/plugins/node/opentelemetry-instrumentation-dns/test/functionals/utils.test.ts b/plugins/node/opentelemetry-instrumentation-dns/test/functionals/utils.test.ts
index c9cb8d01c9..ccf94b8788 100644
--- a/plugins/node/opentelemetry-instrumentation-dns/test/functionals/utils.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-dns/test/functionals/utils.test.ts
@@ -14,8 +14,7 @@
* limitations under the License.
*/
-import { diag, ROOT_CONTEXT, SpanKind, TraceFlags } from '@opentelemetry/api';
-import { BasicTracerProvider, Span } from '@opentelemetry/sdk-trace-base';
+import { diag, Span, SpanStatusCode } from '@opentelemetry/api';
import * as assert from 'assert';
import * as sinon from 'sinon';
import { AttributeNames } from '../../src/enums/AttributeNames';
@@ -153,21 +152,28 @@ describe('Utility', () => {
describe('setError()', () => {
it('should have error attributes', () => {
+ // Prepare
const errorMessage = 'test error';
- const span = new Span(
- new BasicTracerProvider().getTracer('default'),
- ROOT_CONTEXT,
- 'test',
- { spanId: '', traceId: '', traceFlags: TraceFlags.NONE },
- SpanKind.INTERNAL
- );
+ const span = {
+ setAttributes(attrs) {},
+ setStatus(status) {},
+ } as Span;
+ const mockSpan = sinon.mock(span);
+
+ mockSpan.expects('setAttributes').withExactArgs({
+ [AttributeNames.DNS_ERROR_NAME]: 'Error',
+ [AttributeNames.DNS_ERROR_MESSAGE]: errorMessage,
+ });
+ mockSpan.expects('setStatus').withExactArgs({
+ code: SpanStatusCode.ERROR,
+ message: errorMessage,
+ });
+
+ // Act
utils.setError(new Error(errorMessage), span);
- const attributes = span.attributes;
- assert.strictEqual(
- attributes[AttributeNames.DNS_ERROR_MESSAGE],
- errorMessage
- );
- assert.ok(attributes[AttributeNames.DNS_ERROR_NAME]);
+
+ // Assert
+ mockSpan.verify();
});
});
});
diff --git a/plugins/node/opentelemetry-instrumentation-express/.tav.yml b/plugins/node/opentelemetry-instrumentation-express/.tav.yml
index 241e7dcc4b..eeee57a593 100644
--- a/plugins/node/opentelemetry-instrumentation-express/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-express/.tav.yml
@@ -1,3 +1,5 @@
express:
- - versions: "^4.16.2"
+ - versions:
+ include: "^4.16.2"
+ mode: latest-minors
commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md
index 37c57d491d..0a10b99dfa 100644
--- a/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-express/CHANGELOG.md
@@ -1,5 +1,58 @@
# Changelog
+## [0.44.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-express-v0.43.0...instrumentation-express-v0.44.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-express-v0.42.0...instrumentation-express-v0.43.0) (2024-10-08)
+
+
+### Features
+
+* **instrumentation-express:** Use router path in router span names ([#2319](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2319)) ([ee5c584](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/ee5c584c943eb8a3de0566843a42784f16c0f31f))
+
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-express-v0.41.1...instrumentation-express-v0.42.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.41.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-express-v0.41.0...instrumentation-express-v0.41.1) (2024-07-23)
+
+
+### Bug Fixes
+
+* **instr-express:** fix handler patching for already patched router ([#2294](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2294)) ([2c32e58](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2c32e5869ef9b6d582ba4da02623a030309bcaf3))
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-express-v0.40.1...instrumentation-express-v0.41.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.40.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-express-v0.40.0...instrumentation-express-v0.40.1) (2024-06-10)
diff --git a/plugins/node/opentelemetry-instrumentation-express/README.md b/plugins/node/opentelemetry-instrumentation-express/README.md
index f6758e09db..742dc21a81 100644
--- a/plugins/node/opentelemetry-instrumentation-express/README.md
+++ b/plugins/node/opentelemetry-instrumentation-express/README.md
@@ -19,7 +19,7 @@ npm install --save @opentelemetry/instrumentation-http @opentelemetry/instrument
### Supported Versions
-- `^4.0.0`
+- [`express`](https://www.npmjs.com/package/express) version `>=4.0.0 <5`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-express/package.json b/plugins/node/opentelemetry-instrumentation-express/package.json
index d8aa38a859..a99ee37b7c 100644
--- a/plugins/node/opentelemetry-instrumentation-express/package.json
+++ b/plugins/node/opentelemetry-instrumentation-express/package.json
@@ -1,18 +1,18 @@
{
"name": "@opentelemetry/instrumentation-express",
- "version": "0.40.1",
+ "version": "0.44.0",
"description": "OpenTelemetry instrumentation for `express` http web application framework",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
"test-all-versions": "tav",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "yarn test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-express --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc -p .",
@@ -46,26 +46,24 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
- "@types/express": "4.17.18",
+ "@types/express": "4.17.21",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "express": "4.19.2",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
+ "express": "4.20.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-express#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-express/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-express/src/instrumentation.ts
index f15e8cb2ce..2e283158b8 100644
--- a/plugins/node/opentelemetry-instrumentation-express/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-express/src/instrumentation.ts
@@ -33,6 +33,7 @@ import {
isLayerIgnored,
storeLayerPath,
} from './utils';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import {
InstrumentationBase,
@@ -50,24 +51,16 @@ import {
} from './internal-types';
/** Express instrumentation for OpenTelemetry */
-export class ExpressInstrumentation extends InstrumentationBase {
+export class ExpressInstrumentation extends InstrumentationBase {
constructor(config: ExpressInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
- override setConfig(config: ExpressInstrumentationConfig = {}) {
- this._config = Object.assign({}, config);
- }
-
- override getConfig(): ExpressInstrumentationConfig {
- return this._config as ExpressInstrumentationConfig;
- }
-
init() {
return [
new InstrumentationNodeModuleDefinition(
'express',
- ['^4.0.0'],
+ ['>=4.0.0 <5'],
moduleExports => {
const routerProto = moduleExports.Router as unknown as express.Router;
// patch express.Router.route
@@ -188,7 +181,7 @@ export class ExpressInstrumentation extends InstrumentationBase {
const attributes: Attributes = {
[SEMATTRS_HTTP_ROUTE]: route.length > 0 ? route : '/',
};
- const metadata = getLayerMetadata(layer, layerPath);
+ const metadata = getLayerMetadata(route, layer, layerPath);
const type = metadata.attributes[
AttributeNames.EXPRESS_TYPE
] as ExpressLayerType;
@@ -199,7 +192,7 @@ export class ExpressInstrumentation extends InstrumentationBase {
}
// verify against the config if the layer should be ignored
- if (isLayerIgnored(metadata.name, type, instrumentation._config)) {
+ if (isLayerIgnored(metadata.name, type, instrumentation.getConfig())) {
if (type === ExpressLayerType.MIDDLEWARE) {
(req[_LAYERS_STORE_PROPERTY] as string[]).pop();
}
@@ -222,10 +215,11 @@ export class ExpressInstrumentation extends InstrumentationBase {
attributes: Object.assign(attributes, metadata.attributes),
});
- if (instrumentation.getConfig().requestHook) {
+ const { requestHook } = instrumentation.getConfig();
+ if (requestHook) {
safeExecuteInTheMiddle(
() =>
- instrumentation.getConfig().requestHook!(span, {
+ requestHook(span, {
request: req,
layerType: type,
route,
@@ -315,7 +309,11 @@ export class ExpressInstrumentation extends InstrumentationBase {
// some properties holding metadata and state so we need to proxy them
// through through patched function
// ref: https://github.com/open-telemetry/opentelemetry-js-contrib/issues/1950
- Object.keys(original).forEach(key => {
+ // Also some apps/libs do their own patching before OTEL and have these properties
+ // in the proptotype. So we use a `for...in` loop to get own properties and also
+ // any enumerable prop in the prototype chain
+ // ref: https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2271
+ for (const key in original) {
Object.defineProperty(patched, key, {
get() {
return original[key];
@@ -324,21 +322,20 @@ export class ExpressInstrumentation extends InstrumentationBase {
original[key] = value;
},
});
- });
-
+ }
return patched;
});
}
_getSpanName(info: ExpressRequestInfo, defaultName: string) {
- const hook = this.getConfig().spanNameHook;
+ const { spanNameHook } = this.getConfig();
- if (!(hook instanceof Function)) {
+ if (!(spanNameHook instanceof Function)) {
return defaultName;
}
try {
- return hook(info, defaultName) ?? defaultName;
+ return spanNameHook(info, defaultName) ?? defaultName;
} catch (err) {
diag.error(
'express instrumentation: error calling span name rewrite hook',
diff --git a/plugins/node/opentelemetry-instrumentation-express/src/internal-types.ts b/plugins/node/opentelemetry-instrumentation-express/src/internal-types.ts
index a661bf9de4..ebdc260bc3 100644
--- a/plugins/node/opentelemetry-instrumentation-express/src/internal-types.ts
+++ b/plugins/node/opentelemetry-instrumentation-express/src/internal-types.ts
@@ -64,6 +64,7 @@ export type ExpressLayer = {
params: { [key: string]: string };
path: string;
regexp: RegExp;
+ route?: ExpressLayer;
};
export type LayerMetadata = {
diff --git a/plugins/node/opentelemetry-instrumentation-express/src/utils.ts b/plugins/node/opentelemetry-instrumentation-express/src/utils.ts
index fa7b0ee9a0..fdc8f3728c 100644
--- a/plugins/node/opentelemetry-instrumentation-express/src/utils.ts
+++ b/plugins/node/opentelemetry-instrumentation-express/src/utils.ts
@@ -44,12 +44,34 @@ export const storeLayerPath = (request: PatchedRequest, value?: string) => {
(request[_LAYERS_STORE_PROPERTY] as string[]).push(value);
};
+/**
+ * Recursively search the router path from layer stack
+ * @param path The path to reconstruct
+ * @param layer The layer to reconstruct from
+ * @returns The reconstructed path
+ */
+export const getRouterPath = (path: string, layer: ExpressLayer): string => {
+ const stackLayer = layer.handle?.stack?.[0];
+
+ if (stackLayer?.route?.path) {
+ return `${path}${stackLayer.route.path}`;
+ }
+
+ if (stackLayer?.handle?.stack) {
+ return getRouterPath(path, stackLayer);
+ }
+
+ return path;
+};
+
/**
* Parse express layer context to retrieve a name and attributes.
+ * @param route The route of the layer
* @param layer Express layer
* @param [layerPath] if present, the path on which the layer has been mounted
*/
export const getLayerMetadata = (
+ route: string,
layer: ExpressLayer,
layerPath?: string
): {
@@ -57,20 +79,26 @@ export const getLayerMetadata = (
name: string;
} => {
if (layer.name === 'router') {
+ const maybeRouterPath = getRouterPath('', layer);
+ const extractedRouterPath = maybeRouterPath
+ ? maybeRouterPath
+ : layerPath || route || '/';
+
return {
attributes: {
- [AttributeNames.EXPRESS_NAME]: layerPath,
+ [AttributeNames.EXPRESS_NAME]: extractedRouterPath,
[AttributeNames.EXPRESS_TYPE]: ExpressLayerType.ROUTER,
},
- name: `router - ${layerPath}`,
+ name: `router - ${extractedRouterPath}`,
};
} else if (layer.name === 'bound dispatch') {
return {
attributes: {
- [AttributeNames.EXPRESS_NAME]: layerPath ?? 'request handler',
+ [AttributeNames.EXPRESS_NAME]:
+ (route || layerPath) ?? 'request handler',
[AttributeNames.EXPRESS_TYPE]: ExpressLayerType.REQUEST_HANDLER,
},
- name: `request handler${layer.path ? ` - ${layerPath}` : ''}`,
+ name: `request handler${layer.path ? ` - ${route || layerPath}` : ''}`,
};
} else {
return {
@@ -159,11 +187,13 @@ export const asErrorAndMessage = (
export const getLayerPath = (
args: [LayerPathSegment | LayerPathSegment[], ...unknown[]]
): string | undefined => {
- if (Array.isArray(args[0])) {
- return args[0].map(arg => extractLayerPathSegment(arg) || '').join(',');
+ const firstArg = args[0];
+
+ if (Array.isArray(firstArg)) {
+ return firstArg.map(arg => extractLayerPathSegment(arg) || '').join(',');
}
- return extractLayerPathSegment(args[0]);
+ return extractLayerPathSegment(firstArg);
};
const extractLayerPathSegment = (arg: LayerPathSegment) => {
diff --git a/plugins/node/opentelemetry-instrumentation-express/test/express.test.ts b/plugins/node/opentelemetry-instrumentation-express/test/express.test.ts
index e13c13a424..5991688ffd 100644
--- a/plugins/node/opentelemetry-instrumentation-express/test/express.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-express/test/express.test.ts
@@ -14,7 +14,7 @@
* limitations under the License.
*/
-import { SpanStatusCode, context, SpanKind, trace } from '@opentelemetry/api';
+import { SpanStatusCode, context, trace } from '@opentelemetry/api';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import { AsyncHooksContextManager } from '@opentelemetry/context-async-hooks';
import {
@@ -517,6 +517,47 @@ describe('ExpressInstrumentation', () => {
}
);
});
+
+ it('should keep the handle properties even if router is patched before instrumentation does it', async () => {
+ const rootSpan = tracer.startSpan('rootSpan');
+ let routerLayer: { name: string; handle: { stack: any[] } };
+
+ const expressApp = express();
+ const router = express.Router();
+ const CustomRouter: (...p: Parameters) => void = (
+ req,
+ res,
+ next
+ ) => router(req, res, next);
+ router.use('/:slug', (req, res, next) => {
+ const stack = req.app._router.stack as any[];
+ routerLayer = stack.find(router => router.name === 'CustomRouter');
+ return res.status(200).end('bar');
+ });
+ // The patched router now has express router's own properties in its prototype so
+ // they are not accessible through `Object.keys(...)`
+ // https://github.com/TryGhost/Ghost/blob/fefb9ec395df8695d06442b6ecd3130dae374d94/ghost/core/core/frontend/web/site.js#L192
+ Object.setPrototypeOf(CustomRouter, router);
+ expressApp.use(CustomRouter);
+
+ const httpServer = await createServer(expressApp);
+ server = httpServer.server;
+ port = httpServer.port;
+ await context.with(
+ trace.setSpan(context.active(), rootSpan),
+ async () => {
+ const response = await httpRequest.get(
+ `http://localhost:${port}/foo`
+ );
+ assert.strictEqual(response, 'bar');
+ rootSpan.end();
+ assert.ok(
+ routerLayer.handle.stack.length === 1,
+ 'router layer stack is accessible'
+ );
+ }
+ );
+ });
});
describe('Disabling plugin', () => {
@@ -579,20 +620,103 @@ describe('ExpressInstrumentation', () => {
// `- span 'middleware - simpleMiddleware'
// `- span 'request handler - /post/:id'
const spans = collector.sortedSpans;
- assert.strictEqual(spans[0].name, 'GET /post/:id');
- assert.strictEqual(spans[0].kind, SpanKind.CLIENT);
- assert.strictEqual(spans[1].name, 'middleware - query');
- assert.strictEqual(spans[1].kind, SpanKind.SERVER);
+ assert.strictEqual(spans[0].name, 'GET');
+ assert.strictEqual(spans[0].kind, testUtils.OtlpSpanKind.CLIENT);
+ assert.strictEqual(spans[1].name, 'GET /post/:id');
+ assert.strictEqual(spans[1].kind, testUtils.OtlpSpanKind.SERVER);
assert.strictEqual(spans[1].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[2].name, 'middleware - expressInit');
- assert.strictEqual(spans[2].kind, SpanKind.SERVER);
- assert.strictEqual(spans[2].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[3].name, 'middleware - simpleMiddleware');
- assert.strictEqual(spans[3].kind, SpanKind.SERVER);
- assert.strictEqual(spans[3].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[4].name, 'request handler - /post/:id');
- assert.strictEqual(spans[4].kind, SpanKind.SERVER);
- assert.strictEqual(spans[4].parentSpanId, spans[0].spanId);
+ assert.strictEqual(spans[2].name, 'middleware - query');
+ assert.strictEqual(spans[2].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[2].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[3].name, 'middleware - expressInit');
+ assert.strictEqual(spans[3].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[3].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[4].name, 'middleware - simpleMiddleware');
+ assert.strictEqual(spans[4].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[4].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[5].name, 'request handler - /post/:id');
+ assert.strictEqual(spans[5].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[5].parentSpanId, spans[1].spanId);
+ },
+ });
+ });
+
+ it('should work with Express routers', async () => {
+ await testUtils.runTestFixture({
+ cwd: __dirname,
+ argv: ['fixtures/use-express-router.mjs'],
+ env: {
+ NODE_OPTIONS:
+ '--experimental-loader=@opentelemetry/instrumentation/hook.mjs',
+ NODE_NO_WARNINGS: '1',
+ },
+ checkResult: (err, stdout, stderr) => {
+ assert.ifError(err);
+ },
+ checkCollector: (collector: testUtils.TestCollector) => {
+ const spans = collector.sortedSpans;
+
+ assert.strictEqual(spans[0].name, 'GET');
+ assert.strictEqual(spans[0].kind, testUtils.OtlpSpanKind.CLIENT);
+ assert.strictEqual(spans[1].name, 'GET /api/user/:id');
+ assert.strictEqual(spans[1].kind, testUtils.OtlpSpanKind.SERVER);
+ assert.strictEqual(spans[1].parentSpanId, spans[0].spanId);
+ assert.strictEqual(spans[2].name, 'middleware - query');
+ assert.strictEqual(spans[3].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[3].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[4].name, 'middleware - simpleMiddleware');
+ assert.strictEqual(spans[4].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[4].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[5].name, 'router - /api/user/:id');
+ assert.strictEqual(spans[5].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[5].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[6].name, 'request handler - /api/user/:id');
+ assert.strictEqual(spans[6].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[6].parentSpanId, spans[1].spanId);
+ },
+ });
+ });
+
+ it('should work with nested Express routers', async () => {
+ await testUtils.runTestFixture({
+ cwd: __dirname,
+ argv: ['fixtures/use-express-nested-router.mjs'],
+ env: {
+ NODE_OPTIONS:
+ '--experimental-loader=@opentelemetry/instrumentation/hook.mjs',
+ NODE_NO_WARNINGS: '1',
+ },
+ checkResult: (err, stdout, stderr) => {
+ assert.ifError(err);
+ },
+ checkCollector: (collector: testUtils.TestCollector) => {
+ const spans = collector.sortedSpans;
+
+ assert.strictEqual(spans[0].name, 'GET');
+ assert.strictEqual(spans[0].kind, testUtils.OtlpSpanKind.CLIENT);
+ assert.strictEqual(spans[1].name, 'GET /api/user/:id/posts/:postId');
+ assert.strictEqual(spans[1].kind, testUtils.OtlpSpanKind.SERVER);
+ assert.strictEqual(spans[2].name, 'middleware - query');
+ assert.strictEqual(spans[2].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[2].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[3].name, 'middleware - expressInit');
+ assert.strictEqual(spans[3].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[3].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[4].name, 'middleware - simpleMiddleware');
+ assert.strictEqual(spans[4].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[4].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[5].name, 'router - /api/user/:id');
+ assert.strictEqual(spans[5].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[5].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[6].name, 'router - /:postId');
+ assert.strictEqual(spans[6].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[6].parentSpanId, spans[1].spanId);
+ assert.strictEqual(
+ spans[7].name,
+ 'request handler - /api/user/:id/posts/:postId'
+ );
+ assert.strictEqual(spans[7].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[7].parentSpanId, spans[1].spanId);
},
});
});
@@ -613,23 +737,26 @@ describe('ExpressInstrumentation', () => {
checkCollector: (collector: testUtils.TestCollector) => {
const spans = collector.sortedSpans;
- assert.strictEqual(spans[0].name, 'GET /\\/test\\/regex/');
- assert.strictEqual(spans[0].kind, SpanKind.CLIENT);
- assert.strictEqual(spans[1].name, 'middleware - query');
- assert.strictEqual(spans[1].kind, SpanKind.SERVER);
+ assert.strictEqual(spans[0].name, 'GET');
+ assert.strictEqual(spans[0].kind, testUtils.OtlpSpanKind.CLIENT);
+ assert.strictEqual(spans[1].name, 'GET /\\/test\\/regex/');
assert.strictEqual(spans[1].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[2].name, 'middleware - expressInit');
- assert.strictEqual(spans[2].kind, SpanKind.SERVER);
- assert.strictEqual(spans[2].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[3].name, 'middleware - simpleMiddleware');
- assert.strictEqual(spans[3].kind, SpanKind.SERVER);
- assert.strictEqual(spans[3].parentSpanId, spans[0].spanId);
+ assert.strictEqual(spans[1].kind, testUtils.OtlpSpanKind.SERVER);
+ assert.strictEqual(spans[2].name, 'middleware - query');
+ assert.strictEqual(spans[2].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[2].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[3].name, 'middleware - expressInit');
+ assert.strictEqual(spans[3].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[3].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[4].name, 'middleware - simpleMiddleware');
+ assert.strictEqual(spans[4].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[4].parentSpanId, spans[1].spanId);
assert.strictEqual(
- spans[4].name,
+ spans[5].name,
'request handler - /\\/test\\/regex/'
);
- assert.strictEqual(spans[4].kind, SpanKind.SERVER);
- assert.strictEqual(spans[4].parentSpanId, spans[0].spanId);
+ assert.strictEqual(spans[5].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[5].parentSpanId, spans[1].spanId);
},
});
});
@@ -650,20 +777,22 @@ describe('ExpressInstrumentation', () => {
checkCollector: (collector: testUtils.TestCollector) => {
const spans = collector.sortedSpans;
- assert.strictEqual(spans[0].name, 'GET /test,6,/test/');
- assert.strictEqual(spans[0].kind, SpanKind.CLIENT);
- assert.strictEqual(spans[1].name, 'middleware - query');
- assert.strictEqual(spans[1].kind, SpanKind.SERVER);
- assert.strictEqual(spans[1].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[2].name, 'middleware - expressInit');
- assert.strictEqual(spans[2].kind, SpanKind.SERVER);
- assert.strictEqual(spans[2].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[3].name, 'middleware - simpleMiddleware');
- assert.strictEqual(spans[3].kind, SpanKind.SERVER);
- assert.strictEqual(spans[3].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[4].name, 'request handler - /test,6,/test/');
- assert.strictEqual(spans[4].kind, SpanKind.SERVER);
- assert.strictEqual(spans[4].parentSpanId, spans[0].spanId);
+ assert.strictEqual(spans[0].name, 'GET');
+ assert.strictEqual(spans[0].kind, testUtils.OtlpSpanKind.CLIENT);
+ assert.strictEqual(spans[1].name, 'GET /test,6,/test/');
+ assert.strictEqual(spans[1].kind, testUtils.OtlpSpanKind.SERVER);
+ assert.strictEqual(spans[2].name, 'middleware - query');
+ assert.strictEqual(spans[2].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[2].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[3].name, 'middleware - expressInit');
+ assert.strictEqual(spans[3].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[3].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[4].name, 'middleware - simpleMiddleware');
+ assert.strictEqual(spans[4].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[4].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[5].name, 'request handler - /test,6,/test/');
+ assert.strictEqual(spans[5].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[5].parentSpanId, spans[1].spanId);
},
});
});
@@ -685,26 +814,28 @@ describe('ExpressInstrumentation', () => {
checkCollector: (collector: testUtils.TestCollector) => {
const spans = collector.sortedSpans;
+ assert.strictEqual(spans[0].name, 'GET');
+ assert.strictEqual(spans[0].kind, testUtils.OtlpSpanKind.CLIENT);
assert.strictEqual(
- spans[0].name,
+ spans[1].name,
'GET /test/array1,/\\/test\\/array[2-9]/'
);
- assert.strictEqual(spans[0].kind, SpanKind.CLIENT);
- assert.strictEqual(spans[1].name, 'middleware - query');
- assert.strictEqual(spans[1].kind, SpanKind.SERVER);
- assert.strictEqual(spans[1].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[2].name, 'middleware - expressInit');
- assert.strictEqual(spans[2].kind, SpanKind.SERVER);
- assert.strictEqual(spans[2].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[3].name, 'middleware - simpleMiddleware');
- assert.strictEqual(spans[3].kind, SpanKind.SERVER);
- assert.strictEqual(spans[3].parentSpanId, spans[0].spanId);
+ assert.strictEqual(spans[1].kind, testUtils.OtlpSpanKind.SERVER);
+ assert.strictEqual(spans[2].name, 'middleware - query');
+ assert.strictEqual(spans[2].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[2].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[3].name, 'middleware - expressInit');
+ assert.strictEqual(spans[3].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[3].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[4].name, 'middleware - simpleMiddleware');
+ assert.strictEqual(spans[4].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[4].parentSpanId, spans[1].spanId);
assert.strictEqual(
- spans[4].name,
+ spans[5].name,
'request handler - /test/array1,/\\/test\\/array[2-9]/'
);
- assert.strictEqual(spans[4].kind, SpanKind.SERVER);
- assert.strictEqual(spans[4].parentSpanId, spans[0].spanId);
+ assert.strictEqual(spans[5].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[5].parentSpanId, spans[1].spanId);
},
});
});
@@ -736,26 +867,28 @@ describe('ExpressInstrumentation', () => {
checkCollector: (collector: testUtils.TestCollector) => {
const spans = collector.sortedSpans;
+ assert.strictEqual(spans[0].name, 'GET');
+ assert.strictEqual(spans[0].kind, testUtils.OtlpSpanKind.CLIENT);
assert.strictEqual(
- spans[0].name,
+ spans[1].name,
'GET /test/arr/:id,/\\/test\\/arr[0-9]*\\/required(path)?(\\/optionalPath)?\\/(lastParam)?/'
);
- assert.strictEqual(spans[0].kind, SpanKind.CLIENT);
- assert.strictEqual(spans[1].name, 'middleware - query');
- assert.strictEqual(spans[1].kind, SpanKind.SERVER);
- assert.strictEqual(spans[1].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[2].name, 'middleware - expressInit');
- assert.strictEqual(spans[2].kind, SpanKind.SERVER);
- assert.strictEqual(spans[2].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[3].name, 'middleware - simpleMiddleware');
- assert.strictEqual(spans[3].kind, SpanKind.SERVER);
- assert.strictEqual(spans[3].parentSpanId, spans[0].spanId);
+ assert.strictEqual(spans[1].kind, testUtils.OtlpSpanKind.SERVER);
+ assert.strictEqual(spans[2].name, 'middleware - query');
+ assert.strictEqual(spans[2].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[2].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[3].name, 'middleware - expressInit');
+ assert.strictEqual(spans[3].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[3].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[4].name, 'middleware - simpleMiddleware');
+ assert.strictEqual(spans[4].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[4].parentSpanId, spans[1].spanId);
assert.strictEqual(
- spans[4].name,
+ spans[5].name,
'request handler - /test/arr/:id,/\\/test\\/arr[0-9]*\\/required(path)?(\\/optionalPath)?\\/(lastParam)?/'
);
- assert.strictEqual(spans[4].kind, SpanKind.SERVER);
- assert.strictEqual(spans[4].parentSpanId, spans[0].spanId);
+ assert.strictEqual(spans[5].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[5].parentSpanId, spans[1].spanId);
},
});
});
diff --git a/plugins/node/opentelemetry-instrumentation-express/test/fixtures/use-express-nested-router.mjs b/plugins/node/opentelemetry-instrumentation-express/test/fixtures/use-express-nested-router.mjs
new file mode 100644
index 0000000000..98ba0bf236
--- /dev/null
+++ b/plugins/node/opentelemetry-instrumentation-express/test/fixtures/use-express-nested-router.mjs
@@ -0,0 +1,81 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { promisify } from 'util';
+import { createTestNodeSdk } from '@opentelemetry/contrib-test-utils';
+
+import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
+import { ExpressInstrumentation } from '../../build/src/index.js';
+
+const sdk = createTestNodeSdk({
+ serviceName: 'use-express-nested',
+ instrumentations: [
+ new HttpInstrumentation(),
+ new ExpressInstrumentation()
+ ]
+})
+
+sdk.start();
+
+import express from 'express';
+import * as http from 'http';
+
+const app = express();
+
+app.use(async function simpleMiddleware(req, res, next) {
+ // Wait a short delay to ensure this "middleware - ..." span clearly starts
+ // before the "router - ..." span. The test rely on a start-time-based sort
+ // of the produced spans. If they start in the same millisecond, then tests
+ // can be flaky.
+ await promisify(setTimeout)(10);
+ next();
+});
+
+const userRouter = express.Router();
+const postsRouter = express.Router();
+
+postsRouter.get('/:postId', (req, res, next) => {
+ res.json({ hello: 'yes' });
+ res.end();
+ next();
+});
+
+userRouter.get('/api/user/:id', (req, res, next) => {
+ res.json({ hello: 'yes' });
+ res.end();
+ next();
+});
+
+userRouter.use('/api/user/:id/posts', postsRouter);
+
+app.use(userRouter);
+
+const server = http.createServer(app);
+await new Promise(resolve => server.listen(0, resolve));
+const port = server.address().port;
+
+
+await new Promise(resolve => {
+ http.get(`http://localhost:${port}/api/user/123/posts/321`, (res) => {
+ res.resume();
+ res.on('end', data => {
+ resolve(data);
+ });
+ })
+});
+
+await new Promise(resolve => server.close(resolve));
+await sdk.shutdown();
diff --git a/plugins/node/opentelemetry-instrumentation-express/test/fixtures/use-express-regex.mjs b/plugins/node/opentelemetry-instrumentation-express/test/fixtures/use-express-regex.mjs
index 8fc412841b..d674342dd6 100644
--- a/plugins/node/opentelemetry-instrumentation-express/test/fixtures/use-express-regex.mjs
+++ b/plugins/node/opentelemetry-instrumentation-express/test/fixtures/use-express-regex.mjs
@@ -61,7 +61,7 @@ app.get(['/test/array1', /\/test\/array[2-9]/], (_req, res) => {
res.send({ response: 'response 3' });
});
-app.get(['/test', 6, /test/], (_req, res) => {
+app.get(['/test', '6', /test/], (_req, res) => {
res.send({ response: 'response 4' });
});
diff --git a/plugins/node/opentelemetry-instrumentation-express/test/fixtures/use-express-router.mjs b/plugins/node/opentelemetry-instrumentation-express/test/fixtures/use-express-router.mjs
new file mode 100644
index 0000000000..5846da88ae
--- /dev/null
+++ b/plugins/node/opentelemetry-instrumentation-express/test/fixtures/use-express-router.mjs
@@ -0,0 +1,72 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { promisify } from 'util';
+import { createTestNodeSdk } from '@opentelemetry/contrib-test-utils';
+
+import { HttpInstrumentation } from '@opentelemetry/instrumentation-http';
+import { ExpressInstrumentation } from '../../build/src/index.js';
+
+const sdk = createTestNodeSdk({
+ serviceName: 'use-express-nested',
+ instrumentations: [
+ new HttpInstrumentation(),
+ new ExpressInstrumentation()
+ ]
+})
+
+sdk.start();
+
+import express from 'express';
+import * as http from 'http';
+
+const app = express();
+
+app.use(async function simpleMiddleware(req, res, next) {
+ // Wait a short delay to ensure this "middleware - ..." span clearly starts
+ // before the "router - ..." span. The test rely on a start-time-based sort
+ // of the produced spans. If they start in the same millisecond, then tests
+ // can be flaky.
+ await promisify(setTimeout)(10);
+ next();
+});
+
+const router = express.Router();
+
+router.get('/api/user/:id', (req, res, next) => {
+ res.json({ hello: 'yes' });
+ res.end();
+ next();
+});
+
+app.use(router);
+
+const server = http.createServer(app);
+await new Promise(resolve => server.listen(0, resolve));
+const port = server.address().port;
+
+
+await new Promise(resolve => {
+ http.get(`http://localhost:${port}/api/user/123`, (res) => {
+ res.resume();
+ res.on('end', data => {
+ resolve(data);
+ });
+ })
+});
+
+await new Promise(resolve => server.close(resolve));
+await sdk.shutdown();
diff --git a/plugins/node/opentelemetry-instrumentation-express/test/utils.test.ts b/plugins/node/opentelemetry-instrumentation-express/test/utils.test.ts
index 098bab4e8c..f8dac5035b 100644
--- a/plugins/node/opentelemetry-instrumentation-express/test/utils.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-express/test/utils.test.ts
@@ -94,6 +94,7 @@ describe('Utils', () => {
it('should return router metadata', () => {
assert.deepEqual(
utils.getLayerMetadata(
+ '/test',
{
name: 'router',
} as ExpressLayer,
@@ -112,6 +113,7 @@ describe('Utils', () => {
it('should return request handler metadata', () => {
assert.deepEqual(
utils.getLayerMetadata(
+ '/:id',
{
name: 'bound dispatch',
} as ExpressLayer,
@@ -129,7 +131,7 @@ describe('Utils', () => {
it('should return middleware metadata', () => {
assert.deepEqual(
- utils.getLayerMetadata({
+ utils.getLayerMetadata('', {
name: 'bodyParser',
} as ExpressLayer),
{
@@ -143,6 +145,51 @@ describe('Utils', () => {
});
});
+ describe('reconstructRouterPath()', () => {
+ it('should reconstruct a simple router path', () => {
+ const layer = {
+ handle: {
+ stack: [
+ {
+ route: {
+ path: '/test',
+ },
+ },
+ ],
+ },
+ };
+
+ assert.strictEqual(
+ utils.getRouterPath('', layer as unknown as ExpressLayer),
+ '/test'
+ );
+ });
+
+ it('should reconstruct a parameterized router path', () => {
+ const layer = {
+ handle: {
+ stack: [
+ {
+ handle: {
+ stack: [
+ {
+ route: {
+ path: '/:id',
+ },
+ },
+ ],
+ },
+ },
+ ],
+ },
+ };
+
+ assert.strictEqual(
+ utils.getRouterPath('', layer as unknown as ExpressLayer),
+ '/:id'
+ );
+ });
+ });
describe('asErrorAndMessage', () => {
it('should special case Error instances', () => {
const input = new Error('message');
diff --git a/plugins/node/opentelemetry-instrumentation-fastify/.tav.yml b/plugins/node/opentelemetry-instrumentation-fastify/.tav.yml
index 48410d0903..608eb2dbf8 100644
--- a/plugins/node/opentelemetry-instrumentation-fastify/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-fastify/.tav.yml
@@ -1,8 +1,14 @@
"fastify":
- # Sanity check the first 4.x release, instead of all releases, plus recent
- # releases.
- - versions: "4.0.0 || >=4.24.3 <5"
+ - versions:
+ include: "^4.0.0"
+ mode: max-7
commands: npm run test
+ - versions:
+ include: ">=5 <6"
+ mode: max-7
+ commands: npm run test
+ peerDependencies: "@fastify/express@4.0.1"
+ node: '>=20'
# Fastify versions after 4.18.0 require a typescript greater than 4.4.4.
"typescript":
diff --git a/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md
index 491e4fbb64..3f6c04761a 100644
--- a/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-fastify/CHANGELOG.md
@@ -1,5 +1,51 @@
# Changelog
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fastify-v0.40.0...instrumentation-fastify-v0.41.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fastify-v0.39.0...instrumentation-fastify-v0.40.0) (2024-10-08)
+
+
+### Features
+
+* **instrumentation-fastify:** Enable Fastify v5 ([#2460](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2460)) ([02a9fdb](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/02a9fdb60ce9cb05f77bb431811cd40b348c45f1))
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fastify-v0.38.0...instrumentation-fastify-v0.39.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fastify-v0.37.0...instrumentation-fastify-v0.38.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.37.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-fastify-v0.36.1...instrumentation-fastify-v0.37.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-fastify/README.md b/plugins/node/opentelemetry-instrumentation-fastify/README.md
index ffaf255868..51b7dcccfc 100644
--- a/plugins/node/opentelemetry-instrumentation-fastify/README.md
+++ b/plugins/node/opentelemetry-instrumentation-fastify/README.md
@@ -7,6 +7,8 @@ This module provides automatic instrumentation for the [`fastify`](https://www.f
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience.
+Compatible with OpenTelemetry JS API and SDK `1.0+`.
+
## Installation
This instrumentation relies on HTTP calls to also be instrumented. Make sure you install and enable both, otherwise you will have spans that are not connected with each other.
@@ -17,7 +19,7 @@ npm install --save @opentelemetry/instrumentation-http @opentelemetry/instrument
### Supported Versions
-- fastify: `^3.0.0 || ^4.0.0`
+- [`fastify`](https://www.npmjs.com/package/fastify) versions `>=3.0.0 <5`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-fastify/package.json b/plugins/node/opentelemetry-instrumentation-fastify/package.json
index 25b709cfff..267aa0710a 100644
--- a/plugins/node/opentelemetry-instrumentation-fastify/package.json
+++ b/plugins/node/opentelemetry-instrumentation-fastify/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-fastify",
- "version": "0.37.0",
+ "version": "0.41.0",
"description": "OpenTelemetry instrumentation for `fastify` http web application framework",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,9 +10,9 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-fastify --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"test-all-versions": "tav",
"version:update": "node ../../../scripts/version-update.js",
"prewatch": "npm run precompile",
@@ -46,27 +46,25 @@
"@fastify/express": "^3.0.0",
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation-http": "^0.52.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
- "@types/express": "4.17.18",
+ "@types/express": "4.17.21",
"@types/mocha": "7.0.2",
"@types/node": "18.15.3",
- "@types/semver": "7.5.5",
+ "@types/semver": "7.5.8",
"fastify": "4.18.0",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"semver": "^7.5.4",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-fastify#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-fastify/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-fastify/src/instrumentation.ts
index 34871ee978..08df2aa533 100644
--- a/plugins/node/opentelemetry-instrumentation-fastify/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-fastify/src/instrumentation.ts
@@ -41,29 +41,22 @@ import {
safeExecuteInTheMiddleMaybePromise,
startSpan,
} from './utils';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
export const ANONYMOUS_NAME = 'anonymous';
/** Fastify instrumentation for OpenTelemetry */
-export class FastifyInstrumentation extends InstrumentationBase {
+export class FastifyInstrumentation extends InstrumentationBase {
constructor(config: FastifyInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
- override setConfig(config: FastifyInstrumentationConfig = {}) {
- this._config = Object.assign({}, config);
- }
-
- override getConfig(): FastifyInstrumentationConfig {
- return this._config as FastifyInstrumentationConfig;
- }
-
init() {
return [
new InstrumentationNodeModuleDefinition(
'fastify',
- ['^3.0.0', '^4.0.0'],
+ ['>=3.0.0 <6'],
moduleExports => {
return this._patchConstructor(moduleExports);
}
@@ -281,9 +274,10 @@ export class FastifyInstrumentation extends InstrumentationBase {
spanAttributes
);
- if (instrumentation.getConfig().requestHook) {
+ const { requestHook } = instrumentation.getConfig();
+ if (requestHook) {
safeExecuteInTheMiddle(
- () => instrumentation.getConfig().requestHook!(span, { request }),
+ () => requestHook(span, { request }),
e => {
if (e) {
instrumentation._diag.error('request hook failed', e);
diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md
index 497b119a9f..a4cc3d70e6 100644
--- a/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-generic-pool/CHANGELOG.md
@@ -1,5 +1,39 @@
# Changelog
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-generic-pool-v0.39.0...instrumentation-generic-pool-v0.40.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-generic-pool-v0.38.1...instrumentation-generic-pool-v0.39.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.38.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-generic-pool-v0.38.0...instrumentation-generic-pool-v0.38.1) (2024-08-27)
+
+
+### Bug Fixes
+
+* **instrumentation-generic-pool:** update span name typo ([#2405](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2405)) ([2105609](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2105609ec5ba529fba0317c70f7d9d92f8ce4c8f))
+
+## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-generic-pool-v0.37.0...instrumentation-generic-pool-v0.38.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.37.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-generic-pool-v0.36.0...instrumentation-generic-pool-v0.37.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/README.md b/plugins/node/opentelemetry-instrumentation-generic-pool/README.md
index ea9dee4228..90404555dc 100644
--- a/plugins/node/opentelemetry-instrumentation-generic-pool/README.md
+++ b/plugins/node/opentelemetry-instrumentation-generic-pool/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-generic-pool
### Supported Versions
-- `>=2.0.0`
+- [`generic-pool`](https://www.npmjs.com/package/generic-pool) version `>=2.0.0 <4`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json
index c66c810714..4374004fc5 100644
--- a/plugins/node/opentelemetry-instrumentation-generic-pool/package.json
+++ b/plugins/node/opentelemetry-instrumentation-generic-pool/package.json
@@ -1,17 +1,17 @@
{
"name": "@opentelemetry/instrumentation-generic-pool",
- "version": "0.37.0",
+ "version": "0.40.0",
"description": "OpenTelemetry instrumentation for `generic-pool` resource pool for managing expensive resources",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.ts'",
+ "test": "nyc mocha 'test/**/*.ts'",
"tdd": "yarn test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-generic-pool --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc -p .",
@@ -48,18 +48,16 @@
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/generic-pool": "^3.1.9",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
"generic-pool": "3.8.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-generic-pool#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/src/index.ts b/plugins/node/opentelemetry-instrumentation-generic-pool/src/index.ts
index 3b04638af8..24c76056a1 100644
--- a/plugins/node/opentelemetry-instrumentation-generic-pool/src/index.ts
+++ b/plugins/node/opentelemetry-instrumentation-generic-pool/src/index.ts
@@ -14,7 +14,4 @@
* limitations under the License.
*/
-import GenericPoolInstrumentation from './instrumentation';
-
-export { GenericPoolInstrumentation };
-export default GenericPoolInstrumentation;
+export * from './instrumentation';
diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-generic-pool/src/instrumentation.ts
index 08b31e5eb1..6b6ad90f81 100644
--- a/plugins/node/opentelemetry-instrumentation-generic-pool/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-generic-pool/src/instrumentation.ts
@@ -24,11 +24,12 @@ import {
import type * as genericPool from 'generic-pool';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
const MODULE_NAME = 'generic-pool';
-export default class Instrumentation extends InstrumentationBase {
+export class GenericPoolInstrumentation extends InstrumentationBase {
// only used for v2 - v2.3)
private _isDisabled = false;
@@ -40,7 +41,7 @@ export default class Instrumentation extends InstrumentationBase {
return [
new InstrumentationNodeModuleDefinition(
MODULE_NAME,
- ['>=3'],
+ ['>=3.0.0 <4'],
moduleExports => {
const Pool: any = moduleExports.Pool;
if (isWrapped(Pool.prototype.acquire)) {
@@ -61,7 +62,7 @@ export default class Instrumentation extends InstrumentationBase {
),
new InstrumentationNodeModuleDefinition(
MODULE_NAME,
- ['^2.4'],
+ ['>=2.4.0 <3'],
moduleExports => {
const Pool: any = moduleExports.Pool;
if (isWrapped(Pool.prototype.acquire)) {
@@ -82,7 +83,7 @@ export default class Instrumentation extends InstrumentationBase {
),
new InstrumentationNodeModuleDefinition(
MODULE_NAME,
- ['2 - 2.3'],
+ ['>=2.0.0 <2.4'],
moduleExports => {
this._isDisabled = false;
if (isWrapped(moduleExports.Pool)) {
@@ -109,7 +110,7 @@ export default class Instrumentation extends InstrumentationBase {
) {
const parent = api.context.active();
const span = instrumentation.tracer.startSpan(
- 'generic-pool.aquire',
+ 'generic-pool.acquire',
{},
parent
);
@@ -156,7 +157,7 @@ export default class Instrumentation extends InstrumentationBase {
}
const parent = api.context.active();
const span = instrumentation.tracer.startSpan(
- 'generic-pool.aquire',
+ 'generic-pool.acquire',
{},
parent
);
diff --git a/plugins/node/opentelemetry-instrumentation-generic-pool/test/index.test.ts b/plugins/node/opentelemetry-instrumentation-generic-pool/test/index.test.ts
index c3794e0324..e2e634d4be 100644
--- a/plugins/node/opentelemetry-instrumentation-generic-pool/test/index.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-generic-pool/test/index.test.ts
@@ -22,8 +22,8 @@ import {
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
-import Instrumentation from '../src';
-const plugin = new Instrumentation();
+import { GenericPoolInstrumentation } from '../src';
+const plugin = new GenericPoolInstrumentation();
import * as util from 'util';
import * as genericPool from 'generic-pool';
@@ -94,7 +94,7 @@ describe('GenericPool instrumentation', () => {
assert.strictEqual(await acquire(), CLIENT);
const [span] = memoryExporter.getFinishedSpans();
assert.strictEqual(memoryExporter.getFinishedSpans().length, 1);
- assert.strictEqual(span.name, 'generic-pool.aquire');
+ assert.strictEqual(span.name, 'generic-pool.acquire');
});
it('should attach it to the parent span', async () => {
@@ -107,7 +107,7 @@ describe('GenericPool instrumentation', () => {
assert.strictEqual(memoryExporter.getFinishedSpans().length, 2);
const [span] = memoryExporter.getFinishedSpans();
- assert.strictEqual(span.name, 'generic-pool.aquire');
+ assert.strictEqual(span.name, 'generic-pool.acquire');
assert.strictEqual(span.parentSpanId, rootSpan.spanContext().spanId);
});
});
diff --git a/plugins/node/opentelemetry-instrumentation-graphql/.tav.yml b/plugins/node/opentelemetry-instrumentation-graphql/.tav.yml
index 603ce40daf..ab32f433d2 100644
--- a/plugins/node/opentelemetry-instrumentation-graphql/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-graphql/.tav.yml
@@ -1,4 +1,5 @@
graphql:
- # Taking a sample from the most downloaded versions in the range "14 || 15 || 16"
- versions: "16.4.0 || 16.3.0 || 16.2.0 || 16.0.0 || ^15.8.0 || 15.7.2 || 15.6.1 || 15.6.0 || 15.5.3 || 15.5.1 || 15.5.0 || 15.4.0 || 15.3.0 || ^14.7.0 || 14.6.0 || 14.5.8 || 14.0.0"
+ versions:
+ include: "14 || 15 || 16"
+ mode: max-7
commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md
index 681f5f763d..8d08501380 100644
--- a/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-graphql/CHANGELOG.md
@@ -1,5 +1,30 @@
# Changelog
+## [0.44.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-graphql-v0.43.0...instrumentation-graphql-v0.44.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-graphql-v0.42.0...instrumentation-graphql-v0.43.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-graphql-v0.41.0...instrumentation-graphql-v0.42.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-graphql-v0.40.0...instrumentation-graphql-v0.41.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-graphql/README.md b/plugins/node/opentelemetry-instrumentation-graphql/README.md
index 5a23f47660..b7ec85b58b 100644
--- a/plugins/node/opentelemetry-instrumentation-graphql/README.md
+++ b/plugins/node/opentelemetry-instrumentation-graphql/README.md
@@ -9,10 +9,10 @@ This module provides automatic instrumentation and tracing for GraphQL in Node.j
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience.
-*Note*: graphql plugin instruments graphql directly. it should work with any package that wraps the graphql package (e.g apollo).
-
Compatible with OpenTelemetry JS API and SDK `1.0+`.
+*Note*: graphql plugin instruments graphql directly. it should work with any package that wraps the graphql package (e.g apollo).
+
## Installation
```shell script
@@ -21,7 +21,7 @@ npm install @opentelemetry/instrumentation-graphql
### Supported Versions
-`^14.0 | ^15.0 | ^16.0`
+- [`graphql`](https://www.npmjs.com/package/graphql) versions `>=14.0.0 <17`
## Usage
@@ -131,7 +131,7 @@ This package does not currently generate any attributes from semantic convention
Apache 2.0 - See [LICENSE][license-url] for more information.
[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions
-[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE
+[license-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/LICENSE
[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat
[npm-url]: https://www.npmjs.com/package/@opentelemetry/instrumentation-graphql
[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Finstrumentation-graphql.svg
diff --git a/plugins/node/opentelemetry-instrumentation-graphql/package.json b/plugins/node/opentelemetry-instrumentation-graphql/package.json
index 7bcb771167..3c6b62bb53 100644
--- a/plugins/node/opentelemetry-instrumentation-graphql/package.json
+++ b/plugins/node/opentelemetry-instrumentation-graphql/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-graphql",
- "version": "0.41.0",
+ "version": "0.44.0",
"description": "OpenTelemetry instrumentation for `graphql` gql query language and runtime for GraphQL",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,10 +10,10 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-graphql --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"test-all-versions": "tav",
"tdd": "npm run test -- --watch-extensions ts --watch",
"version:update": "node ../../../scripts/version-update.js",
@@ -46,19 +46,17 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"graphql": "^16.5.0",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-graphql#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-graphql/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-graphql/src/instrumentation.ts
index e6e55cf118..7c764099e5 100644
--- a/plugins/node/opentelemetry-instrumentation-graphql/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-graphql/src/instrumentation.ts
@@ -33,7 +33,6 @@ import {
executeType,
parseType,
validateType,
- GraphQLInstrumentationParsedConfig,
OtelExecutionArgs,
ObjectWithGraphQLData,
OPERATION_NOT_SUPPORTED,
@@ -49,35 +48,31 @@ import {
wrapFields,
} from './utils';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import * as api from '@opentelemetry/api';
import type { PromiseOrValue } from 'graphql/jsutils/PromiseOrValue';
-import { GraphQLInstrumentationConfig } from './types';
+import {
+ GraphQLInstrumentationConfig,
+ GraphQLInstrumentationParsedConfig,
+} from './types';
-const DEFAULT_CONFIG: GraphQLInstrumentationConfig = {
+const DEFAULT_CONFIG: GraphQLInstrumentationParsedConfig = {
mergeItems: false,
depth: -1,
allowValues: false,
ignoreResolveSpans: false,
};
-const supportedVersions = ['>=14 <17'];
+const supportedVersions = ['>=14.0.0 <17'];
-export class GraphQLInstrumentation extends InstrumentationBase {
+export class GraphQLInstrumentation extends InstrumentationBase {
constructor(config: GraphQLInstrumentationConfig = {}) {
- super(
- PACKAGE_NAME,
- PACKAGE_VERSION,
- Object.assign({}, DEFAULT_CONFIG, config)
- );
- }
-
- private _getConfig(): GraphQLInstrumentationParsedConfig {
- return this._config as GraphQLInstrumentationParsedConfig;
+ super(PACKAGE_NAME, PACKAGE_VERSION, { ...DEFAULT_CONFIG, ...config });
}
override setConfig(config: GraphQLInstrumentationConfig = {}) {
- this._config = Object.assign({}, DEFAULT_CONFIG, config);
+ super.setConfig({ ...DEFAULT_CONFIG, ...config });
}
protected init() {
@@ -238,7 +233,7 @@ export class GraphQLInstrumentation extends InstrumentationBase {
err?: Error,
result?: PromiseOrValue
) {
- const config = this._getConfig();
+ const config = this.getConfig();
if (result === undefined || err) {
endSpan(span, err);
return;
@@ -270,10 +265,14 @@ export class GraphQLInstrumentation extends InstrumentationBase {
span: api.Span,
result: graphqlTypes.ExecutionResult
) {
- const config = this._getConfig();
+ const { responseHook } = this.getConfig();
+ if (!responseHook) {
+ return;
+ }
+
safeExecuteInTheMiddle(
() => {
- config.responseHook(span, result);
+ responseHook(span, result);
},
err => {
if (err) {
@@ -329,7 +328,7 @@ export class GraphQLInstrumentation extends InstrumentationBase {
source: string | graphqlTypes.Source,
options?: graphqlTypes.ParseOptions
): graphqlTypes.DocumentNode {
- const config = this._getConfig();
+ const config = this.getConfig();
const span = this.tracer.startSpan(SpanNames.PARSE);
return context.with(trace.setSpan(context.active(), span), () => {
@@ -397,7 +396,7 @@ export class GraphQLInstrumentation extends InstrumentationBase {
operation: graphqlTypes.DefinitionNode | undefined,
processedArgs: graphqlTypes.ExecutionArgs
): api.Span {
- const config = this._getConfig();
+ const config = this.getConfig();
const span = this.tracer.startSpan(SpanNames.EXECUTE, {});
if (operation) {
@@ -457,7 +456,7 @@ export class GraphQLInstrumentation extends InstrumentationBase {
if (
contextValue[OTEL_GRAPHQL_DATA_SYMBOL] ||
- this._getConfig().ignoreResolveSpans
+ this.getConfig().ignoreResolveSpans
) {
return {
schema,
@@ -477,22 +476,14 @@ export class GraphQLInstrumentation extends InstrumentationBase {
const fieldResolverForExecute = fieldResolver ?? defaultFieldResolved;
fieldResolver = wrapFieldResolver(
this.tracer,
- this._getConfig.bind(this),
+ () => this.getConfig(),
fieldResolverForExecute,
isUsingDefaultResolver
);
if (schema) {
- wrapFields(
- schema.getQueryType(),
- this.tracer,
- this._getConfig.bind(this)
- );
- wrapFields(
- schema.getMutationType(),
- this.tracer,
- this._getConfig.bind(this)
- );
+ wrapFields(schema.getQueryType(), this.tracer, () => this.getConfig());
+ wrapFields(schema.getMutationType(), this.tracer, () => this.getConfig());
}
return {
diff --git a/plugins/node/opentelemetry-instrumentation-graphql/src/internal-types.ts b/plugins/node/opentelemetry-instrumentation-graphql/src/internal-types.ts
index 3242ea94e4..59cd1b5b31 100644
--- a/plugins/node/opentelemetry-instrumentation-graphql/src/internal-types.ts
+++ b/plugins/node/opentelemetry-instrumentation-graphql/src/internal-types.ts
@@ -14,7 +14,6 @@
* limitations under the License.
*/
-import { InstrumentationConfig } from '@opentelemetry/instrumentation';
import type * as graphqlTypes from 'graphql';
import type * as api from '@opentelemetry/api';
import type { PromiseOrValue } from 'graphql/jsutils/PromiseOrValue';
@@ -24,17 +23,10 @@ import type {
GraphQLTypeResolver,
} from 'graphql/type/definition';
import { OTEL_GRAPHQL_DATA_SYMBOL, OTEL_PATCHED_SYMBOL } from './symbols';
-import { GraphQLInstrumentationConfig } from './types';
export const OPERATION_NOT_SUPPORTED =
'Operation$operationName$not' + ' supported';
-/**
- * Merged and parsed config of default instrumentation config and GraphQL
- */
-export type GraphQLInstrumentationParsedConfig =
- Required & InstrumentationConfig;
-
export type executeFunctionWithObj = (
args: graphqlTypes.ExecutionArgs
) => PromiseOrValue;
diff --git a/plugins/node/opentelemetry-instrumentation-graphql/src/types.ts b/plugins/node/opentelemetry-instrumentation-graphql/src/types.ts
index 7cedff14a8..0ec82003aa 100644
--- a/plugins/node/opentelemetry-instrumentation-graphql/src/types.ts
+++ b/plugins/node/opentelemetry-instrumentation-graphql/src/types.ts
@@ -80,3 +80,12 @@ export interface GraphQLInstrumentationConfig extends InstrumentationConfig {
*/
responseHook?: GraphQLInstrumentationExecutionResponseHook;
}
+
+// Utility type to make specific properties required
+type RequireSpecificKeys = T & { [P in K]-?: T[P] };
+
+// Merged and parsed config of default instrumentation config and GraphQL
+export type GraphQLInstrumentationParsedConfig = RequireSpecificKeys<
+ GraphQLInstrumentationConfig,
+ 'mergeItems' | 'depth' | 'allowValues' | 'ignoreResolveSpans'
+>;
diff --git a/plugins/node/opentelemetry-instrumentation-graphql/src/utils.ts b/plugins/node/opentelemetry-instrumentation-graphql/src/utils.ts
index de7a555975..9bb98ed975 100644
--- a/plugins/node/opentelemetry-instrumentation-graphql/src/utils.ts
+++ b/plugins/node/opentelemetry-instrumentation-graphql/src/utils.ts
@@ -22,12 +22,11 @@ import { OTEL_GRAPHQL_DATA_SYMBOL, OTEL_PATCHED_SYMBOL } from './symbols';
import {
GraphQLField,
GraphQLPath,
- GraphQLInstrumentationParsedConfig,
ObjectWithGraphQLData,
OtelPatched,
Maybe,
} from './internal-types';
-import { GraphQLInstrumentationConfig } from './types';
+import { GraphQLInstrumentationParsedConfig } from './types';
const OPERATION_VALUES = Object.values(AllowedOperationTypes);
@@ -367,12 +366,17 @@ const handleResolveSpanSuccess = (
export function wrapFieldResolver(
tracer: api.Tracer,
- getConfig: () => Required,
+ getConfig: () => GraphQLInstrumentationParsedConfig,
fieldResolver: Maybe<
graphqlTypes.GraphQLFieldResolver & OtelPatched
>,
isDefaultResolver = false
-): graphqlTypes.GraphQLFieldResolver & OtelPatched {
+): graphqlTypes.GraphQLFieldResolver<
+ TSource,
+ TContext & ObjectWithGraphQLData,
+ TArgs
+> &
+ OtelPatched {
if (
(wrappedFieldResolver as OtelPatched)[OTEL_PATCHED_SYMBOL] ||
typeof fieldResolver !== 'function'
diff --git a/plugins/node/opentelemetry-instrumentation-hapi/.tav.yml b/plugins/node/opentelemetry-instrumentation-hapi/.tav.yml
index c1d07484cb..738740e3f9 100644
--- a/plugins/node/opentelemetry-instrumentation-hapi/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-hapi/.tav.yml
@@ -1,11 +1,17 @@
"@hapi/hapi":
- - versions: "^19.2.0 || ^18.4.1 || ^17.9.0"
+ - versions:
+ include: "^19.2.0 || ^18.4.1 || ^17.9.0"
+ mode: latest-minors
node: ">=14 <16"
commands: npm test
- - versions: "^20.3.0"
+ - versions:
+ include: "^20.3.0"
+ mode: latest-minors
node: ">=14"
commands: npm test
- - versions: "^21.3.3"
+ - versions:
+ include: "^21.3.3"
+ mode: latest-minors
node: ">=14.15.0"
commands: npm test
diff --git a/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md
index ba21f79e6b..bc412c1d1e 100644
--- a/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-hapi/CHANGELOG.md
@@ -1,5 +1,44 @@
# Changelog
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-hapi-v0.41.0...instrumentation-hapi-v0.42.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-hapi-v0.40.0...instrumentation-hapi-v0.41.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-hapi-v0.39.0...instrumentation-hapi-v0.40.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-hapi-v0.38.0...instrumentation-hapi-v0.39.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-hapi/README.md b/plugins/node/opentelemetry-instrumentation-hapi/README.md
index c9b4062ea5..7a5e2c3ac7 100644
--- a/plugins/node/opentelemetry-instrumentation-hapi/README.md
+++ b/plugins/node/opentelemetry-instrumentation-hapi/README.md
@@ -7,6 +7,8 @@ This module provides automatic instrumentation for the [Hapi Framework](https://
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience.
+Compatible with OpenTelemetry JS API and SDK `1.0+`.
+
## Status
| Maturity | [Component Owner](../../../.github/component_owners.yml) | Compatibility |
@@ -21,7 +23,7 @@ npm install --save @opentelemetry/instrumentation-hapi
### Supported Versions
-- `>=17.0.0 <22`
+- [`@hapi/hapi`](https://www.npmjs.com/package/@hapi/hapi) versions `>=17.0.0 <22`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-hapi/package.json b/plugins/node/opentelemetry-instrumentation-hapi/package.json
index fc8a7769af..62876f1146 100644
--- a/plugins/node/opentelemetry-instrumentation-hapi/package.json
+++ b/plugins/node/opentelemetry-instrumentation-hapi/package.json
@@ -1,18 +1,18 @@
{
"name": "@opentelemetry/instrumentation-hapi",
- "version": "0.39.0",
+ "version": "0.42.0",
"description": "OpenTelemetry instrumentation for `@hapi/hapi` http web application framework",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"test-all-versions": "tav",
"tdd": "yarn test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-hapi --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc -p .",
@@ -43,26 +43,24 @@
"@opentelemetry/api": "^1.3.0"
},
"devDependencies": {
- "@hapi/hapi": "21.3.3",
+ "@hapi/hapi": "21.3.10",
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"joi": "17.12.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-hapi#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-hapi/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-hapi/src/instrumentation.ts
index 8fd9442974..91bda4397e 100644
--- a/plugins/node/opentelemetry-instrumentation-hapi/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-hapi/src/instrumentation.ts
@@ -24,6 +24,7 @@ import {
} from '@opentelemetry/instrumentation';
import type * as Hapi from '@hapi/hapi';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import {
HapiComponentName,
@@ -56,7 +57,7 @@ export class HapiInstrumentation extends InstrumentationBase {
protected init() {
return new InstrumentationNodeModuleDefinition(
HapiComponentName,
- ['>=17 <22'],
+ ['>=17.0.0 <22'],
(module: any) => {
const moduleExports: typeof Hapi =
module[Symbol.toStringTag] === 'Module' ? module.default : module;
diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/.tav.yml b/plugins/node/opentelemetry-instrumentation-ioredis/.tav.yml
index cc4d970155..eb2248a00b 100644
--- a/plugins/node/opentelemetry-instrumentation-ioredis/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-ioredis/.tav.yml
@@ -1,4 +1,7 @@
ioredis:
# Ignoring v4.19.0. Tests never ends. Caused by https://github.com/luin/ioredis/pull/1219
- versions: "^2.5.0 || ^3.2.2 || 4.14.1 || 4.16.3 || 4.17.3 || 4.18.0 || 4.19.2 || 4.19.4 || 4.22.0 || 4.24.5 || 4.26.0 || 4.27.11 || ^4.28.5 || 5.0.6 || 5.2.6 || ^5.3.2"
+ versions:
+ include: '>=2.0.0 <6'
+ exclude: '4.19.0'
+ mode: max-7
commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md
index a75d5802ca..df11ecbc5a 100644
--- a/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-ioredis/CHANGELOG.md
@@ -1,5 +1,44 @@
# Changelog
+## [0.44.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-ioredis-v0.43.0...instrumentation-ioredis-v0.44.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-ioredis-v0.42.0...instrumentation-ioredis-v0.43.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-ioredis-v0.41.0...instrumentation-ioredis-v0.42.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-ioredis-v0.40.0...instrumentation-ioredis-v0.41.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/README.md b/plugins/node/opentelemetry-instrumentation-ioredis/README.md
index 907eba1995..d8063be0b8 100644
--- a/plugins/node/opentelemetry-instrumentation-ioredis/README.md
+++ b/plugins/node/opentelemetry-instrumentation-ioredis/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-ioredis
### Supported Versions
-- `>=2.0.0 <6`
+- [`ioredis`](https://www.npmjs.com/package/ioredis) versions `>=2.0.0 <6`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/package.json b/plugins/node/opentelemetry-instrumentation-ioredis/package.json
index a8cbb1292f..be1dbe5abd 100644
--- a/plugins/node/opentelemetry-instrumentation-ioredis/package.json
+++ b/plugins/node/opentelemetry-instrumentation-ioredis/package.json
@@ -1,13 +1,13 @@
{
"name": "@opentelemetry/instrumentation-ioredis",
- "version": "0.41.0",
+ "version": "0.44.0",
"description": "OpenTelemetry instrumentation for `ioredis` database redis client for Redis",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
- "test:debug": "cross-env RUN_REDIS_TESTS_LOCAL=true ts-mocha --inspect-brk --no-timeouts -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
+ "test:debug": "cross-env RUN_REDIS_TESTS_LOCAL=true mocha --inspect-brk --no-timeouts 'test/**/*.test.ts'",
"test:local": "cross-env RUN_REDIS_TESTS_LOCAL=true npm run test",
"test-all-versions": "tav",
"test-all-versions:local": "cross-env RUN_REDIS_TESTS_LOCAL=true npm run test-all-versions",
@@ -15,7 +15,7 @@
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-ioredis --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc -p .",
@@ -49,27 +49,25 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/ioredis4": "npm:@types/ioredis@4.28.10",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"cross-env": "7.0.3",
"ioredis": "5.2.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
"@opentelemetry/redis-common": "^0.36.2",
- "@opentelemetry/semantic-conventions": "^1.23.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-ioredis#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-ioredis/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-ioredis/src/instrumentation.ts
index abf9e2c5e8..daecaaa63b 100644
--- a/plugins/node/opentelemetry-instrumentation-ioredis/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-ioredis/src/instrumentation.ts
@@ -33,28 +33,27 @@ import {
import { safeExecuteInTheMiddle } from '@opentelemetry/instrumentation';
import { endSpan } from './utils';
import { defaultDbStatementSerializer } from '@opentelemetry/redis-common';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
const DEFAULT_CONFIG: IORedisInstrumentationConfig = {
requireParentSpan: true,
};
-export class IORedisInstrumentation extends InstrumentationBase {
- protected override _config!: IORedisInstrumentationConfig;
-
+export class IORedisInstrumentation extends InstrumentationBase {
constructor(config: IORedisInstrumentationConfig = {}) {
- super(
- PACKAGE_NAME,
- PACKAGE_VERSION,
- Object.assign({}, DEFAULT_CONFIG, config)
- );
+ super(PACKAGE_NAME, PACKAGE_VERSION, { ...DEFAULT_CONFIG, ...config });
+ }
+
+ override setConfig(config: IORedisInstrumentationConfig = {}) {
+ super.setConfig({ ...DEFAULT_CONFIG, ...config });
}
init(): InstrumentationNodeModuleDefinition[] {
return [
new InstrumentationNodeModuleDefinition(
'ioredis',
- ['>1', '<6'],
+ ['>=2.0.0 <6'],
(module, moduleVersion?: string) => {
const moduleExports =
module[Symbol.toStringTag] === 'Module'
@@ -112,13 +111,12 @@ export class IORedisInstrumentation extends InstrumentationBase {
if (arguments.length < 1 || typeof cmd !== 'object') {
return original.apply(this, arguments);
}
- const config =
- instrumentation.getConfig() as IORedisInstrumentationConfig;
+ const config = instrumentation.getConfig();
const dbStatementSerializer =
- config?.dbStatementSerializer || defaultDbStatementSerializer;
+ config.dbStatementSerializer || defaultDbStatementSerializer;
const hasNoParentSpan = trace.getSpan(context.active()) === undefined;
- if (config?.requireParentSpan === true && hasNoParentSpan) {
+ if (config.requireParentSpan === true && hasNoParentSpan) {
return original.apply(this, arguments);
}
@@ -130,10 +128,11 @@ export class IORedisInstrumentation extends InstrumentationBase {
},
});
- if (config?.requestHook) {
+ const { requestHook } = config;
+ if (requestHook) {
safeExecuteInTheMiddle(
() =>
- config?.requestHook!(span, {
+ requestHook(span, {
moduleVersion,
cmdName: cmd.name,
cmdArgs: cmd.args,
@@ -162,7 +161,7 @@ export class IORedisInstrumentation extends InstrumentationBase {
/* eslint-disable @typescript-eslint/no-explicit-any */
cmd.resolve = function (result: any) {
safeExecuteInTheMiddle(
- () => config?.responseHook?.(span, cmd.name, cmd.args, result),
+ () => config.responseHook?.(span, cmd.name, cmd.args, result),
e => {
if (e) {
diag.error('ioredis instrumentation: response hook failed', e);
@@ -192,10 +191,11 @@ export class IORedisInstrumentation extends InstrumentationBase {
private _traceConnection(original: Function) {
const instrumentation = this;
return function (this: RedisInterface) {
- const config =
- instrumentation.getConfig() as IORedisInstrumentationConfig;
const hasNoParentSpan = trace.getSpan(context.active()) === undefined;
- if (config?.requireParentSpan === true && hasNoParentSpan) {
+ if (
+ instrumentation.getConfig().requireParentSpan === true &&
+ hasNoParentSpan
+ ) {
return original.apply(this, arguments);
}
diff --git a/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md
index ac8c7f426d..477e38d0e7 100644
--- a/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-knex/CHANGELOG.md
@@ -1,5 +1,39 @@
# Changelog
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-knex-v0.40.0...instrumentation-knex-v0.41.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-knex-v0.39.0...instrumentation-knex-v0.40.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-knex-v0.38.0...instrumentation-knex-v0.39.0) (2024-07-23)
+
+
+### Features
+
+* **instr-knex:** implement requireParentSpan config flag ([#2288](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2288)) ([6e8989d](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/6e8989de4d60c32bc9b3e3ef760e92c68ae7f491))
+
+## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-knex-v0.37.0...instrumentation-knex-v0.38.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.37.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-knex-v0.36.1...instrumentation-knex-v0.37.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-knex/README.md b/plugins/node/opentelemetry-instrumentation-knex/README.md
index ba3e97846e..e467172648 100644
--- a/plugins/node/opentelemetry-instrumentation-knex/README.md
+++ b/plugins/node/opentelemetry-instrumentation-knex/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-knex
### Supported Versions
-- `>=0.10.0`
+- [`knex`](https://www.npmjs.com/package/knex) versions `>=0.10.0 <4`
## Usage
@@ -47,6 +47,7 @@ registerInstrumentations({
| Options | Type | Example | Description |
| ------- | ---- | ------- | ----------- |
| `maxQueryLength` | `number` | `100` | Truncate `db.statement` attribute to a maximum length. If the statement is truncated `'..'` is added to it's end. Default `1022`. `-1` leaves `db.statement` untouched. |
+| `requireParentSpan` | `boolean` | `false` | Don't create spans unless they are part of an existing trace. Default is `false`. |
## Semantic Conventions
diff --git a/plugins/node/opentelemetry-instrumentation-knex/package.json b/plugins/node/opentelemetry-instrumentation-knex/package.json
index 3b957dbde3..1a3dc6cb58 100644
--- a/plugins/node/opentelemetry-instrumentation-knex/package.json
+++ b/plugins/node/opentelemetry-instrumentation-knex/package.json
@@ -1,19 +1,19 @@
{
"name": "@opentelemetry/instrumentation-knex",
- "version": "0.37.0",
+ "version": "0.41.0",
"description": "OpenTelemetry instrumentation for `knex` database SQL query builder",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.ts'",
+ "test": "nyc mocha 'test/**/*.ts'",
"tdd": "yarn test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-knex --include-dependencies",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
+ "lint:readme": "node ../../../scripts/lint-readme",
"compile": "tsc -p .",
"prepublishOnly": "npm run compile",
"watch": "tsc -w"
@@ -47,18 +47,16 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"knex": "0.95.9",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "sqlite3": "5.1.6",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
+ "sqlite3": "5.1.7",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-knex#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-knex/src/constants.ts b/plugins/node/opentelemetry-instrumentation-knex/src/constants.ts
index dfb011cd45..2887f41925 100644
--- a/plugins/node/opentelemetry-instrumentation-knex/src/constants.ts
+++ b/plugins/node/opentelemetry-instrumentation-knex/src/constants.ts
@@ -17,7 +17,7 @@
export const MODULE_NAME = 'knex';
export const SUPPORTED_VERSIONS = [
// use "lib/execution" for runner.js, "lib" for client.js as basepath, latest tested 0.95.6
- '>=0.22.0',
+ '>=0.22.0 <4',
// use "lib" as basepath
'>=0.10.0 <0.18.0',
'>=0.19.0 <0.22.0',
diff --git a/plugins/node/opentelemetry-instrumentation-knex/src/index.ts b/plugins/node/opentelemetry-instrumentation-knex/src/index.ts
index 4d2b9abbeb..c26f998cff 100644
--- a/plugins/node/opentelemetry-instrumentation-knex/src/index.ts
+++ b/plugins/node/opentelemetry-instrumentation-knex/src/index.ts
@@ -14,9 +14,5 @@
* limitations under the License.
*/
-import { KnexInstrumentation } from './instrumentation';
-
export * from './instrumentation';
-export default KnexInstrumentation;
-
export * from './types';
diff --git a/plugins/node/opentelemetry-instrumentation-knex/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-knex/src/instrumentation.ts
index c80ebbe55c..ca144b2751 100644
--- a/plugins/node/opentelemetry-instrumentation-knex/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-knex/src/instrumentation.ts
@@ -15,6 +15,7 @@
*/
import * as api from '@opentelemetry/api';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import * as constants from './constants';
import {
@@ -35,20 +36,21 @@ import {
SEMATTRS_NET_TRANSPORT,
} from '@opentelemetry/semantic-conventions';
import * as utils from './utils';
-import * as types from './types';
+import { KnexInstrumentationConfig } from './types';
const contextSymbol = Symbol('opentelemetry.instrumentation-knex.context');
-const DEFAULT_CONFIG: types.KnexInstrumentationConfig = {
+const DEFAULT_CONFIG: KnexInstrumentationConfig = {
maxQueryLength: 1022,
+ requireParentSpan: false,
};
-export class KnexInstrumentation extends InstrumentationBase {
- constructor(config: types.KnexInstrumentationConfig = {}) {
- super(
- PACKAGE_NAME,
- PACKAGE_VERSION,
- Object.assign({}, DEFAULT_CONFIG, config)
- );
+export class KnexInstrumentation extends InstrumentationBase {
+ constructor(config: KnexInstrumentationConfig = {}) {
+ super(PACKAGE_NAME, PACKAGE_VERSION, { ...DEFAULT_CONFIG, ...config });
+ }
+
+ override setConfig(config: KnexInstrumentationConfig = {}) {
+ super.setConfig({ ...DEFAULT_CONFIG, ...config });
}
init() {
@@ -120,7 +122,7 @@ export class KnexInstrumentation extends InstrumentationBase {
private createQueryWrapper(moduleVersion?: string) {
const instrumentation = this;
- return function wrapQuery(original: () => any) {
+ return function wrapQuery(original: (...args: any[]) => any) {
return function wrapped_logging_method(this: any, query: any) {
const config = this.client.config;
@@ -130,9 +132,7 @@ export class KnexInstrumentation extends InstrumentationBase {
const operation = query?.method;
const name =
config?.connection?.filename || config?.connection?.database;
- const maxLen = (
- instrumentation._config as types.KnexInstrumentationConfig
- ).maxQueryLength!;
+ const { maxQueryLength } = instrumentation.getConfig();
const attributes: api.SpanAttributes = {
'knex.version': moduleVersion,
@@ -146,21 +146,30 @@ export class KnexInstrumentation extends InstrumentationBase {
[SEMATTRS_NET_TRANSPORT]:
config?.connection?.filename === ':memory:' ? 'inproc' : undefined,
};
- if (maxLen !== 0) {
+ if (maxQueryLength) {
+ // filters both undefined and 0
attributes[SEMATTRS_DB_STATEMENT] = utils.limitLength(
query?.sql,
- maxLen
+ maxQueryLength
);
}
- const parent = this.builder[contextSymbol];
+ const parentContext =
+ this.builder[contextSymbol] || api.context.active();
+ const parentSpan = api.trace.getSpan(parentContext);
+ const hasActiveParent =
+ parentSpan && api.trace.isSpanContextValid(parentSpan.spanContext());
+ if (instrumentation._config.requireParentSpan && !hasActiveParent) {
+ return original.bind(this)(...arguments);
+ }
+
const span = instrumentation.tracer.startSpan(
utils.getName(name, operation, table),
{
kind: api.SpanKind.CLIENT,
attributes,
},
- parent
+ parentContext
);
const spanContext = api.trace.setSpan(api.context.active(), span);
diff --git a/plugins/node/opentelemetry-instrumentation-knex/src/types.ts b/plugins/node/opentelemetry-instrumentation-knex/src/types.ts
index a952a66e3d..4d0e8495f7 100644
--- a/plugins/node/opentelemetry-instrumentation-knex/src/types.ts
+++ b/plugins/node/opentelemetry-instrumentation-knex/src/types.ts
@@ -18,4 +18,6 @@ import { InstrumentationConfig } from '@opentelemetry/instrumentation';
export interface KnexInstrumentationConfig extends InstrumentationConfig {
/** max query length in db.statement attribute ".." is added to the end when query is truncated */
maxQueryLength?: number;
+ /** only create spans if part of an existing trace */
+ requireParentSpan?: boolean;
}
diff --git a/plugins/node/opentelemetry-instrumentation-knex/test/index.test.ts b/plugins/node/opentelemetry-instrumentation-knex/test/index.test.ts
index 9072465c47..e84dcbc398 100644
--- a/plugins/node/opentelemetry-instrumentation-knex/test/index.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-knex/test/index.test.ts
@@ -14,7 +14,12 @@
* limitations under the License.
*/
-import { SpanKind, context, trace } from '@opentelemetry/api';
+import {
+ INVALID_SPAN_CONTEXT,
+ SpanKind,
+ context,
+ trace,
+} from '@opentelemetry/api';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import { AsyncHooksContextManager } from '@opentelemetry/context-async-hooks';
import {
@@ -23,8 +28,8 @@ import {
} from '@opentelemetry/sdk-trace-base';
import * as assert from 'assert';
-import Instrumentation from '../src';
-const plugin = new Instrumentation({
+import { KnexInstrumentation } from '../src';
+const plugin = new KnexInstrumentation({
maxQueryLength: 50,
});
@@ -452,6 +457,73 @@ describe('Knex instrumentation', () => {
);
});
});
+
+ describe('Setting requireParentSpan=true', () => {
+ beforeEach(() => {
+ plugin.disable();
+ plugin.setConfig({ requireParentSpan: true });
+ plugin.enable();
+ });
+
+ it('should not create new spans when there is no parent', async () => {
+ await client.schema.createTable('testTable1', (table: any) => {
+ table.string('title');
+ });
+ assert.deepEqual(await client('testTable1').select('*'), []);
+ assert.deepEqual(await client.raw('select 1 as result'), [{ result: 1 }]);
+ assert.strictEqual(memoryExporter.getFinishedSpans().length, 0);
+ });
+
+ it('should not create new spans when there is an INVALID_SPAN_CONTEXT parent', async () => {
+ const parentSpan = trace.wrapSpanContext(INVALID_SPAN_CONTEXT);
+ await context.with(
+ trace.setSpan(context.active(), parentSpan),
+ async () => {
+ await client.schema.createTable('testTable1', (table: any) => {
+ table.string('title');
+ });
+ assert.deepEqual(await client('testTable1').select('*'), []);
+ assert.deepEqual(await client.raw('select 1 as result'), [
+ { result: 1 },
+ ]);
+ }
+ );
+ assert.strictEqual(memoryExporter.getFinishedSpans().length, 0);
+ });
+
+ it('should create new spans when there is a parent', async () => {
+ await tracer.startActiveSpan('parentSpan', async parentSpan => {
+ await client.schema.createTable('testTable1', (table: any) => {
+ table.string('title');
+ });
+ assert.deepEqual(await client('testTable1').select('*'), []);
+ assert.deepEqual(await client.raw('select 1 as result'), [
+ { result: 1 },
+ ]);
+ parentSpan.end();
+ });
+ assert.strictEqual(memoryExporter.getFinishedSpans().length, 4);
+ const instrumentationSpans = memoryExporter.getFinishedSpans();
+ const last = instrumentationSpans.pop() as any;
+ assertSpans(instrumentationSpans, [
+ {
+ statement: 'create table `testTable1` (`title` varchar(255))',
+ parentSpan: last,
+ },
+ {
+ op: 'select',
+ table: 'testTable1',
+ statement: 'select * from `testTable1`',
+ parentSpan: last,
+ },
+ {
+ op: 'raw',
+ statement: 'select 1 as result',
+ parentSpan: last,
+ },
+ ]);
+ });
+ });
});
const assertSpans = (actualSpans: any[], expectedSpans: any[]) => {
diff --git a/plugins/node/opentelemetry-instrumentation-koa/.tav.yml b/plugins/node/opentelemetry-instrumentation-koa/.tav.yml
index 2cd22120aa..973c1fb861 100644
--- a/plugins/node/opentelemetry-instrumentation-koa/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-koa/.tav.yml
@@ -1,8 +1,12 @@
"@koa/router":
- versions: "8.0.8 || 9.4.0 || 10.0.0 || 10.1.1 || 11.0.1 || >=12.0.0"
+ versions:
+ include: ">=8.0.0"
+ mode: latest-minors
commands: npm run test
koa:
# Testing ^2.7.0 covers at least 97% of the downloaded koa versions
- versions: "^2.7.0"
+ versions:
+ include: "^2.7.0"
+ mode: latest-minors
commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md
index 6cb5e767ae..1f48c6ad91 100644
--- a/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-koa/CHANGELOG.md
@@ -1,5 +1,46 @@
# Changelog
+## [0.44.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-koa-v0.43.0...instrumentation-koa-v0.44.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-koa-v0.42.0...instrumentation-koa-v0.43.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-koa-v0.41.0...instrumentation-koa-v0.42.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* **koa:** use generic config hook types and move dep to dev ([#2303](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2303))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* **koa:** use generic config hook types and move dep to dev ([#2303](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2303)) ([d9d558f](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/d9d558f42de006b2894f0bb8f4c5d733a9fa3b83))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-koa-v0.40.0...instrumentation-koa-v0.41.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-koa/README.md b/plugins/node/opentelemetry-instrumentation-koa/README.md
index aee8051ccd..43e717a171 100644
--- a/plugins/node/opentelemetry-instrumentation-koa/README.md
+++ b/plugins/node/opentelemetry-instrumentation-koa/README.md
@@ -7,6 +7,8 @@ This module provides automatic instrumentation for the [Koa](https://github.com/
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience.
+Compatible with OpenTelemetry JS API and SDK `1.0+`.
+
## Status
| Maturity | [Component Owner](../../../.github/component_owners.yml) | Compatibility |
@@ -21,8 +23,8 @@ npm install --save @opentelemetry/instrumentation-koa
### Supported Versions
-- `koa`: `^2.0.0`
-- `@koa/router`: `>=8`
+- [`koa`](https://www.npmjs.com/package/koa) versions `>=2.0.0 <3`
+- [`@koa/router`](https://www.npmjs.com/package/@koa/router) versions `>=8.0.0`
## Usage
@@ -63,11 +65,18 @@ Note that generator-based middleware are deprecated and won't be instrumented.
Instrumentation configuration accepts a custom "hook" function which will be called for every instrumented Koa middleware layer involved in a request. Custom attributes can be set on the span or run any custom logic per layer.
-```javascript
+NOTE: `KoaRequestInfo.context` and `KoaRequestInfo.middlewareLayer` are typed as `any`. If you want type support make sure you have `@types/koa` and `@types/koa__router` installed then you can use the following type definitions:
+
+```typescript
import { KoaInstrumentation } from "@opentelemetry/instrumentation-koa"
+import type { Middleware, ParameterizedContext, DefaultState } from 'koa';
+import type { RouterParamContext } from '@koa/router';
+
+type KoaContext = ParameterizedContext;
+type KoaMiddleware = Middleware;
const koaInstrumentation = new KoaInstrumentation({
- requestHook: function (span: Span, info: KoaRequestInfo) {
+ requestHook: function (span: Span, info: KoaRequestInfo) {
span.setAttribute(
'http.method',
info.context.request.method
diff --git a/plugins/node/opentelemetry-instrumentation-koa/package.json b/plugins/node/opentelemetry-instrumentation-koa/package.json
index 6a1995235d..3a7bef2ca5 100644
--- a/plugins/node/opentelemetry-instrumentation-koa/package.json
+++ b/plugins/node/opentelemetry-instrumentation-koa/package.json
@@ -1,18 +1,18 @@
{
"name": "@opentelemetry/instrumentation-koa",
- "version": "0.41.0",
+ "version": "0.44.0",
"description": "OpenTelemetry instrumentation for `koa` http web application framework",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.ts'",
+ "test": "nyc mocha 'test/**/*.ts'",
"test-all-versions": "tav",
"tdd": "yarn test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-koa --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc -p .",
@@ -45,31 +45,29 @@
"@opentelemetry/api": "^1.3.0"
},
"devDependencies": {
- "@koa/router": "12.0.0",
+ "@koa/router": "12.0.1",
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
- "@opentelemetry/instrumentation-http": "^0.52.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/instrumentation-http": "^0.54.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@types/koa": "2.15.0",
+ "@types/koa__router": "12.0.4",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"koa": "2.13.1",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/koa": "2.14.0",
- "@types/koa__router": "12.0.3"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-koa#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-koa/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-koa/src/instrumentation.ts
index 0598850569..3d7eb864a4 100644
--- a/plugins/node/opentelemetry-instrumentation-koa/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-koa/src/instrumentation.ts
@@ -23,34 +23,28 @@ import {
} from '@opentelemetry/instrumentation';
import type * as koa from 'koa';
-import { KoaContext, KoaLayerType, KoaInstrumentationConfig } from './types';
+import { KoaLayerType, KoaInstrumentationConfig } from './types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import { getMiddlewareMetadata, isLayerIgnored } from './utils';
import { getRPCMetadata, RPCType } from '@opentelemetry/core';
import {
kLayerPatched,
+ KoaContext,
KoaMiddleware,
KoaPatchedMiddleware,
} from './internal-types';
/** Koa instrumentation for OpenTelemetry */
-export class KoaInstrumentation extends InstrumentationBase {
+export class KoaInstrumentation extends InstrumentationBase {
constructor(config: KoaInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
- override setConfig(config: KoaInstrumentationConfig = {}) {
- this._config = Object.assign({}, config);
- }
-
- override getConfig(): KoaInstrumentationConfig {
- return this._config as KoaInstrumentationConfig;
- }
-
protected init() {
return new InstrumentationNodeModuleDefinition(
'koa',
- ['^2.0.0'],
+ ['>=2.0.0 <3'],
(module: any) => {
const moduleExports: typeof koa =
module[Symbol.toStringTag] === 'Module'
@@ -178,10 +172,11 @@ export class KoaInstrumentation extends InstrumentationBase {
rpcMetadata.route = context._matchedRoute.toString();
}
- if (this.getConfig().requestHook) {
+ const { requestHook } = this.getConfig();
+ if (requestHook) {
safeExecuteInTheMiddle(
() =>
- this.getConfig().requestHook!(span, {
+ requestHook(span, {
context,
middlewareLayer,
layerType,
diff --git a/plugins/node/opentelemetry-instrumentation-koa/src/internal-types.ts b/plugins/node/opentelemetry-instrumentation-koa/src/internal-types.ts
index 58c7bcf5a3..e236780aae 100644
--- a/plugins/node/opentelemetry-instrumentation-koa/src/internal-types.ts
+++ b/plugins/node/opentelemetry-instrumentation-koa/src/internal-types.ts
@@ -13,10 +13,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-import type { Middleware, DefaultState } from 'koa';
-import { KoaContext } from './types';
+import type { Middleware, ParameterizedContext, DefaultState } from 'koa';
import type * as Router from '@koa/router';
+export type KoaContext = ParameterizedContext<
+ DefaultState,
+ Router.RouterParamContext
+>;
export type KoaMiddleware = Middleware & {
router?: Router;
};
diff --git a/plugins/node/opentelemetry-instrumentation-koa/src/types.ts b/plugins/node/opentelemetry-instrumentation-koa/src/types.ts
index 3c249e3a6a..494141d0f3 100644
--- a/plugins/node/opentelemetry-instrumentation-koa/src/types.ts
+++ b/plugins/node/opentelemetry-instrumentation-koa/src/types.ts
@@ -13,8 +13,6 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-import type { Middleware, ParameterizedContext, DefaultState } from 'koa';
-import type { RouterParamContext } from '@koa/router';
import { Span } from '@opentelemetry/api';
import { InstrumentationConfig } from '@opentelemetry/instrumentation';
@@ -23,11 +21,30 @@ export enum KoaLayerType {
MIDDLEWARE = 'middleware',
}
-export type KoaContext = ParameterizedContext;
-
-export type KoaRequestInfo = {
- context: KoaContext;
- middlewareLayer: Middleware;
+/**
+ * Information about the current Koa middleware layer
+ * The middleware layer type is any by default.
+ * One can install koa types packages `@types/koa` and `@types/koa__router`
+ * with compatible versions to the koa version used in the project
+ * to get more specific types for the middleware layer property.
+ *
+ * Example use in a custom attribute function:
+ * ```ts
+ * import type { Middleware, ParameterizedContext, DefaultState } from 'koa';
+ * import type { RouterParamContext } from '@koa/router';
+ *
+ * type KoaContext = ParameterizedContext;
+ * type KoaMiddleware = Middleware;
+ *
+ * const koaConfig: KoaInstrumentationConfig = {
+ * requestHook: (span: Span, info: KoaRequestInfo) => {
+ * // custom typescript code that can access the typed into.middlewareLayer and info.context
+ * }
+ *
+ */
+export type KoaRequestInfo = {
+ context: KoaContextType;
+ middlewareLayer: KoaMiddlewareType;
layerType: KoaLayerType;
};
@@ -36,16 +53,25 @@ export type KoaRequestInfo = {
* @param span - The Express middleware layer span.
* @param context - The current KoaContext.
*/
-export interface KoaRequestCustomAttributeFunction {
- (span: Span, info: KoaRequestInfo): void;
+export interface KoaRequestCustomAttributeFunction<
+ KoaContextType = any,
+ KoaMiddlewareType = any
+> {
+ (span: Span, info: KoaRequestInfo): void;
}
/**
* Options available for the Koa Instrumentation (see [documentation](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-Instrumentation-koa#koa-Instrumentation-options))
*/
-export interface KoaInstrumentationConfig extends InstrumentationConfig {
+export interface KoaInstrumentationConfig<
+ KoaContextType = any,
+ KoaMiddlewareType = any
+> extends InstrumentationConfig {
/** Ignore specific layers based on their type */
ignoreLayersType?: KoaLayerType[];
/** Function for adding custom attributes to each middleware layer span */
- requestHook?: KoaRequestCustomAttributeFunction;
+ requestHook?: KoaRequestCustomAttributeFunction<
+ KoaContextType,
+ KoaMiddlewareType
+ >;
}
diff --git a/plugins/node/opentelemetry-instrumentation-koa/src/utils.ts b/plugins/node/opentelemetry-instrumentation-koa/src/utils.ts
index 26c58fa6e3..2bbfd027ef 100644
--- a/plugins/node/opentelemetry-instrumentation-koa/src/utils.ts
+++ b/plugins/node/opentelemetry-instrumentation-koa/src/utils.ts
@@ -13,8 +13,8 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-import { KoaContext, KoaLayerType, KoaInstrumentationConfig } from './types';
-import { KoaMiddleware } from './internal-types';
+import { KoaLayerType, KoaInstrumentationConfig } from './types';
+import { KoaContext, KoaMiddleware } from './internal-types';
import { AttributeNames } from './enums/AttributeNames';
import { Attributes } from '@opentelemetry/api';
import { SEMATTRS_HTTP_ROUTE } from '@opentelemetry/semantic-conventions';
diff --git a/plugins/node/opentelemetry-instrumentation-koa/test/koa.test.ts b/plugins/node/opentelemetry-instrumentation-koa/test/koa.test.ts
index 8d97864208..a40cd033c1 100644
--- a/plugins/node/opentelemetry-instrumentation-koa/test/koa.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-koa/test/koa.test.ts
@@ -14,8 +14,10 @@
* limitations under the License.
*/
+import type { Middleware, ParameterizedContext, DefaultState } from 'koa';
+import type { RouterParamContext } from '@koa/router';
import * as KoaRouter from '@koa/router';
-import { context, trace, Span, SpanKind } from '@opentelemetry/api';
+import { context, trace, Span } from '@opentelemetry/api';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
import { AsyncHooksContextManager } from '@opentelemetry/context-async-hooks';
import * as testUtils from '@opentelemetry/contrib-test-utils';
@@ -29,6 +31,9 @@ import {
SEMATTRS_HTTP_ROUTE,
} from '@opentelemetry/semantic-conventions';
+type KoaContext = ParameterizedContext;
+type KoaMiddleware = Middleware;
+
import { KoaInstrumentation } from '../src';
const plugin = new KoaInstrumentation();
@@ -594,11 +599,13 @@ describe('Koa Instrumentation', () => {
)
);
- const requestHook = sinon.spy((span: Span, info: KoaRequestInfo) => {
- span.setAttribute(SEMATTRS_HTTP_METHOD, info.context.request.method);
+ const requestHook = sinon.spy(
+ (span: Span, info: KoaRequestInfo) => {
+ span.setAttribute(SEMATTRS_HTTP_METHOD, info.context.request.method);
- throw Error('error thrown in requestHook');
- });
+ throw Error('error thrown in requestHook');
+ }
+ );
plugin.setConfig({
requestHook,
@@ -645,11 +652,13 @@ describe('Koa Instrumentation', () => {
)
);
- const requestHook = sinon.spy((span: Span, info: KoaRequestInfo) => {
- span.setAttribute('http.method', info.context.request.method);
- span.setAttribute('app.env', info.context.app.env);
- span.setAttribute('koa.layer', info.layerType);
- });
+ const requestHook = sinon.spy(
+ (span: Span, info: KoaRequestInfo) => {
+ span.setAttribute('http.method', info.context.request.method);
+ span.setAttribute('app.env', info.context.app.env);
+ span.setAttribute('koa.layer', info.layerType);
+ }
+ );
plugin.setConfig({
requestHook,
@@ -732,14 +741,16 @@ describe('Koa Instrumentation', () => {
// `- span 'middleware - simpleMiddleware'
// `- span 'router - /post/:id'
const spans = collector.sortedSpans;
- assert.strictEqual(spans[0].name, 'GET /post/:id');
- assert.strictEqual(spans[0].kind, SpanKind.CLIENT);
- assert.strictEqual(spans[1].name, 'middleware - simpleMiddleware');
- assert.strictEqual(spans[1].kind, SpanKind.SERVER);
- assert.strictEqual(spans[1].parentSpanId, spans[0].spanId);
- assert.strictEqual(spans[2].name, 'router - /post/:id');
- assert.strictEqual(spans[2].kind, SpanKind.SERVER);
+ assert.strictEqual(spans[0].name, 'GET');
+ assert.strictEqual(spans[0].kind, testUtils.OtlpSpanKind.CLIENT);
+ assert.strictEqual(spans[1].name, 'GET /post/:id');
+ assert.strictEqual(spans[1].kind, testUtils.OtlpSpanKind.SERVER);
+ assert.strictEqual(spans[2].name, 'middleware - simpleMiddleware');
+ assert.strictEqual(spans[2].kind, testUtils.OtlpSpanKind.INTERNAL);
assert.strictEqual(spans[2].parentSpanId, spans[1].spanId);
+ assert.strictEqual(spans[3].name, 'router - /post/:id');
+ assert.strictEqual(spans[3].kind, testUtils.OtlpSpanKind.INTERNAL);
+ assert.strictEqual(spans[3].parentSpanId, spans[2].spanId);
},
});
});
diff --git a/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md
index bd26feacbb..dd14982143 100644
--- a/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-memcached/CHANGELOG.md
@@ -1,5 +1,46 @@
# Changelog
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-memcached-v0.39.0...instrumentation-memcached-v0.40.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-memcached-v0.38.0...instrumentation-memcached-v0.39.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-memcached-v0.37.0...instrumentation-memcached-v0.38.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.37.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-memcached-v0.36.0...instrumentation-memcached-v0.37.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-memcached/README.md b/plugins/node/opentelemetry-instrumentation-memcached/README.md
index 24e6477889..d429346390 100644
--- a/plugins/node/opentelemetry-instrumentation-memcached/README.md
+++ b/plugins/node/opentelemetry-instrumentation-memcached/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-memcached
### Supported Versions
-- `>=2.2`
+- [`memcached`](https://www.npmjs.com/package/memcached) versions `>=2.2.0 <3`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-memcached/package.json b/plugins/node/opentelemetry-instrumentation-memcached/package.json
index c6db4c96bd..0fac551c36 100644
--- a/plugins/node/opentelemetry-instrumentation-memcached/package.json
+++ b/plugins/node/opentelemetry-instrumentation-memcached/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-memcached",
- "version": "0.37.0",
+ "version": "0.40.0",
"description": "OpenTelemetry instrumentation for `memcached` database client for memcached",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,12 +10,11 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-memcached --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
- "test:debug": "cross-env RUN_MEMCACHED_TESTS_LOCAL=true ts-mocha --inspect-brk --no-timeouts -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
+ "test:debug": "cross-env RUN_MEMCACHED_TESTS_LOCAL=true mocha --inspect-brk --no-timeouts 'test/**/*.test.ts'",
"test:local": "cross-env RUN_MEMCACHED_TESTS_LOCAL=true npm run test",
"version:update": "node ../../../scripts/version-update.js"
},
@@ -46,22 +45,20 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"cross-env": "7.0.3",
"memcached": "2.2.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "ts-mocha": "10.0.0",
+ "rimraf": "5.0.10",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.23.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@types/memcached": "^2.2.6"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-memcached#readme"
diff --git a/plugins/node/opentelemetry-instrumentation-memcached/src/index.ts b/plugins/node/opentelemetry-instrumentation-memcached/src/index.ts
index 22efa9b0a5..c26f998cff 100644
--- a/plugins/node/opentelemetry-instrumentation-memcached/src/index.ts
+++ b/plugins/node/opentelemetry-instrumentation-memcached/src/index.ts
@@ -14,9 +14,5 @@
* limitations under the License.
*/
-import { Instrumentation } from './instrumentation';
-export * from './types';
-
export * from './instrumentation';
-export default Instrumentation;
-export { Instrumentation as MemcachedInstrumentation };
+export * from './types';
diff --git a/plugins/node/opentelemetry-instrumentation-memcached/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-memcached/src/instrumentation.ts
index 600179254b..a8534265e8 100644
--- a/plugins/node/opentelemetry-instrumentation-memcached/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-memcached/src/instrumentation.ts
@@ -29,9 +29,10 @@ import {
} from '@opentelemetry/semantic-conventions';
import * as utils from './utils';
import { InstrumentationConfig } from './types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
-export class Instrumentation extends InstrumentationBase {
+export class MemcachedInstrumentation extends InstrumentationBase {
static readonly COMPONENT = 'memcached';
static readonly COMMON_ATTRIBUTES = {
[SEMATTRS_DB_SYSTEM]: DBSYSTEMVALUES_MEMCACHED,
@@ -41,22 +42,21 @@ export class Instrumentation extends InstrumentationBase {
};
constructor(config: InstrumentationConfig = {}) {
- super(
- PACKAGE_NAME,
- PACKAGE_VERSION,
- Object.assign({}, Instrumentation.DEFAULT_CONFIG, config)
- );
+ super(PACKAGE_NAME, PACKAGE_VERSION, {
+ ...MemcachedInstrumentation.DEFAULT_CONFIG,
+ ...config,
+ });
}
override setConfig(config: InstrumentationConfig = {}) {
- this._config = Object.assign({}, Instrumentation.DEFAULT_CONFIG, config);
+ super.setConfig({ ...MemcachedInstrumentation.DEFAULT_CONFIG, ...config });
}
init() {
return [
new InstrumentationNodeModuleDefinition(
'memcached',
- ['>=2.2'],
+ ['>=2.2.0 <3'],
(moduleExports: typeof Memcached, moduleVersion) => {
this.ensureWrapped(
moduleExports.prototype,
@@ -97,7 +97,7 @@ export class Instrumentation extends InstrumentationBase {
kind: api.SpanKind.CLIENT,
attributes: {
'memcached.version': moduleVersion,
- ...Instrumentation.COMMON_ATTRIBUTES,
+ ...MemcachedInstrumentation.COMMON_ATTRIBUTES,
},
}
);
@@ -138,9 +138,8 @@ export class Instrumentation extends InstrumentationBase {
'db.memcached.key': query.key,
'db.memcached.lifetime': query.lifetime,
[SEMATTRS_DB_OPERATION]: query.type,
- [SEMATTRS_DB_STATEMENT]: (
- instrumentation._config as InstrumentationConfig
- ).enhancedDatabaseReporting
+ [SEMATTRS_DB_STATEMENT]: instrumentation.getConfig()
+ .enhancedDatabaseReporting
? query.command
: undefined,
...utils.getPeerAttributes(client, server, query),
diff --git a/plugins/node/opentelemetry-instrumentation-memcached/test/index.test.ts b/plugins/node/opentelemetry-instrumentation-memcached/test/index.test.ts
index 4e32af5fa6..ca6e883cac 100644
--- a/plugins/node/opentelemetry-instrumentation-memcached/test/index.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-memcached/test/index.test.ts
@@ -30,7 +30,7 @@ import {
} from '@opentelemetry/sdk-trace-base';
import type * as Memcached from 'memcached';
import * as assert from 'assert';
-import Instrumentation from '../src';
+import { MemcachedInstrumentation } from '../src';
import {
DBSYSTEMVALUES_MEMCACHED,
SEMATTRS_DB_SYSTEM,
@@ -40,7 +40,7 @@ import {
} from '@opentelemetry/semantic-conventions';
import * as util from 'util';
-const instrumentation = new Instrumentation();
+const instrumentation = new MemcachedInstrumentation();
const memoryExporter = new InMemorySpanExporter();
const CONFIG = {
diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/.tav.yml b/plugins/node/opentelemetry-instrumentation-mongodb/.tav.yml
index 64af522512..681ef1dcb6 100644
--- a/plugins/node/opentelemetry-instrumentation-mongodb/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-mongodb/.tav.yml
@@ -1,17 +1,24 @@
mongodb:
- - versions: ">=3.3 <4"
+ - versions:
+ include: ">=3.3 <4"
+ mode: max-7
commands: npm run test-v3
- versions:
include: ">=4 <5"
- # This version has been excluded because `mongoose` instrumentation has it
- # pined as a transitive dependency.
- # When `test-all-versions` tries to install it npm actually does nothing and
- # we end up running tests for the wrong version (v6.5.0)
+ # This version has been excluded because `mongoose` instrumentation has
+ # it pinned as a transitive dependency. When `test-all-versions` tries
+ # to install it, **npm actually does nothing** and we end up running
+ # tests for the wrong version.
# Ref: https://github.com/open-telemetry/opentelemetry-js-contrib/pull/2001#issuecomment-1992202942
- exclude: "4.17.1"
+ exclude: "4.17.2"
+ mode: max-7
commands: npm run test-v4
- - versions: ">=5 <6"
+ - versions:
+ include: ">=5 <6"
+ mode: max-7
commands: npm run test-v5-v6
- - versions: ">=6 <7"
+ - versions:
+ include: ">=6 <7"
+ mode: max-7
node: '>=15.0.0'
commands: npm run test-v5-v6
diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md
index 8038c77321..74d26e0beb 100644
--- a/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-mongodb/CHANGELOG.md
@@ -1,5 +1,45 @@
# Changelog
+## [0.48.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongodb-v0.47.0...instrumentation-mongodb-v0.48.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.47.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongodb-v0.46.0...instrumentation-mongodb-v0.47.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.46.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongodb-v0.45.0...instrumentation-mongodb-v0.46.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* **instr-mongodb:** fix function patch missing one argument introduced in v6.8.0 ([#2314](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2314)) ([9dc55da](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9dc55da3b856e6bc147d59547582f0bf056384a1))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.45.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mongodb-v0.44.0...instrumentation-mongodb-v0.45.0) (2024-06-10)
diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/README.md b/plugins/node/opentelemetry-instrumentation-mongodb/README.md
index efec965ee9..ca43f4e3bd 100644
--- a/plugins/node/opentelemetry-instrumentation-mongodb/README.md
+++ b/plugins/node/opentelemetry-instrumentation-mongodb/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-mongodb
### Supported Versions
-- `>=3.3 <7`
+- [`mongodb`](https://www.npmjs.com/package/mongodb) version `>=3.3.0 <7`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/package.json b/plugins/node/opentelemetry-instrumentation-mongodb/package.json
index 7570e0afe6..cdfc5f8546 100644
--- a/plugins/node/opentelemetry-instrumentation-mongodb/package.json
+++ b/plugins/node/opentelemetry-instrumentation-mongodb/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-mongodb",
- "version": "0.45.0",
+ "version": "0.48.0",
"description": "OpenTelemetry instrumentation for `mongodb` database client for MongoDB",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -8,15 +8,15 @@
"scripts": {
"docker:start": "docker run -e MONGODB_DB=opentelemetry-tests -e MONGODB_PORT=27017 -e MONGODB_HOST=127.0.0.1 -p 27017:27017 --rm mongo",
"test": "npm run test-v5-v6",
- "test-v3": "nyc ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/**/mongodb-v3.test.ts'",
- "test-v4": "nyc ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/mongodb-v4-v5-v6.metrics.test.ts' 'test/**/mongodb-v4.test.ts'",
- "test-v5-v6": "nyc ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/mongodb-v4-v5-v6.metrics.test.ts' 'test/**/mongodb-v5-v6.test.ts'",
+ "test-v3": "nyc mocha --require '@opentelemetry/contrib-test-utils' 'test/**/mongodb-v3.test.ts'",
+ "test-v4": "nyc mocha --require '@opentelemetry/contrib-test-utils' 'test/mongodb-v4-v5-v6.metrics.test.ts' 'test/**/mongodb-v4.test.ts'",
+ "test-v5-v6": "nyc mocha --require '@opentelemetry/contrib-test-utils' 'test/mongodb-v4-v5-v6.metrics.test.ts' 'test/**/mongodb-v5-v6.test.ts'",
"test-all-versions": "tav",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-mongodb --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc -p .",
@@ -50,25 +50,22 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
+ "@opentelemetry/sdk-metrics": "^1.9.1",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/bson": "4.0.5",
"@types/mocha": "7.0.2",
- "@types/mongodb": "3.6.20",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
- "mongodb": "6.5.0",
+ "@types/node": "18.18.14",
+ "mongodb": "6.8.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-metrics": "^1.9.1",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-mongodb#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-mongodb/src/instrumentation.ts
index 54d9dfa26c..caaff5c550 100644
--- a/plugins/node/opentelemetry-instrumentation-mongodb/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-mongodb/src/instrumentation.ts
@@ -44,22 +44,22 @@ import {
ServerSession,
MongodbCommandType,
MongoInternalCommand,
+ MongodbNamespace,
MongoInternalTopology,
WireProtocolInternal,
V4Connection,
V4ConnectionPool,
} from './internal-types';
import { V4Connect, V4Session } from './internal-types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import { UpDownCounter } from '@opentelemetry/api';
/** mongodb instrumentation plugin for OpenTelemetry */
-export class MongoDBInstrumentation extends InstrumentationBase {
+export class MongoDBInstrumentation extends InstrumentationBase {
private _connectionsUsage!: UpDownCounter;
private _poolName!: string;
- protected override _config!: MongoDBInstrumentationConfig;
-
constructor(config: MongoDBInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -94,13 +94,13 @@ export class MongoDBInstrumentation extends InstrumentationBase {
return [
new InstrumentationNodeModuleDefinition(
'mongodb',
- ['>=3.3 <4'],
+ ['>=3.3.0 <4'],
undefined,
undefined,
[
new InstrumentationNodeModuleFile(
'mongodb/lib/core/wireprotocol/index.js',
- ['>=3.3 <4'],
+ ['>=3.3.0 <4'],
v3PatchConnection,
v3UnpatchConnection
),
@@ -108,37 +108,37 @@ export class MongoDBInstrumentation extends InstrumentationBase {
),
new InstrumentationNodeModuleDefinition(
'mongodb',
- ['4.*', '5.*', '6.*'],
+ ['>=4.0.0 <7'],
undefined,
undefined,
[
new InstrumentationNodeModuleFile(
'mongodb/lib/cmap/connection.js',
- ['4.*', '5.*', '>=6 <6.4'],
+ ['>=4.0.0 <6.4'],
v4PatchConnectionCallback,
v4UnpatchConnection
),
new InstrumentationNodeModuleFile(
'mongodb/lib/cmap/connection.js',
- ['>=6.4'],
+ ['>=6.4.0 <7'],
v4PatchConnectionPromise,
v4UnpatchConnection
),
new InstrumentationNodeModuleFile(
'mongodb/lib/cmap/connection_pool.js',
- ['4.*', '5.*', '>=6 <6.4'],
+ ['>=4.0.0 <6.4'],
v4PatchConnectionPool,
v4UnpatchConnectionPool
),
new InstrumentationNodeModuleFile(
'mongodb/lib/cmap/connect.js',
- ['4.*', '5.*', '6.*'],
+ ['>=4.0.0 <7'],
v4PatchConnect,
v4UnpatchConnect
),
new InstrumentationNodeModuleFile(
'mongodb/lib/sessions.js',
- ['4.*', '5.*', '6.*'],
+ ['>=4.0.0 <7'],
v4PatchSessions,
v4UnpatchSessions
),
@@ -529,7 +529,7 @@ export class MongoDBInstrumentation extends InstrumentationBase {
return (original: V4Connection['commandCallback']) => {
return function patchedV4ServerCommand(
this: any,
- ns: any,
+ ns: MongodbNamespace,
cmd: any,
options: undefined | unknown,
callback: any
@@ -577,16 +577,15 @@ export class MongoDBInstrumentation extends InstrumentationBase {
return (original: V4Connection['commandPromise']) => {
return function patchedV4ServerCommand(
this: any,
- ns: any,
- cmd: any,
- options: undefined | unknown
+ ...args: Parameters
) {
+ const [ns, cmd] = args;
const currentSpan = trace.getSpan(context.active());
const commandType = Object.keys(cmd)[0];
const resultHandler = () => undefined;
if (typeof cmd !== 'object' || cmd.ismaster || cmd.hello) {
- return original.call(this, ns, cmd, options);
+ return original.apply(this, args);
}
let span = undefined;
@@ -610,7 +609,7 @@ export class MongoDBInstrumentation extends InstrumentationBase {
commandType
);
- const result = original.call(this, ns, cmd, options);
+ const result = original.apply(this, args);
result.then(
(res: any) => patchedCallback(null, res),
(err: any) => patchedCallback(err)
@@ -792,7 +791,7 @@ export class MongoDBInstrumentation extends InstrumentationBase {
private _populateV4Attributes(
span: Span,
connectionCtx: any,
- ns: any,
+ ns: MongodbNamespace,
command?: any,
operation?: string
) {
@@ -903,9 +902,12 @@ export class MongoDBInstrumentation extends InstrumentationBase {
}
}
if (!commandObj) return;
+
+ const { dbStatementSerializer: configDbStatementSerializer } =
+ this.getConfig();
const dbStatementSerializer =
- typeof this._config.dbStatementSerializer === 'function'
- ? this._config.dbStatementSerializer
+ typeof configDbStatementSerializer === 'function'
+ ? configDbStatementSerializer
: this._defaultDbStatementSerializer.bind(this);
safeExecuteInTheMiddle(
@@ -923,8 +925,8 @@ export class MongoDBInstrumentation extends InstrumentationBase {
}
private _defaultDbStatementSerializer(commandObj: Record) {
- const enhancedDbReporting = !!this._config?.enhancedDatabaseReporting;
- const resultObj = enhancedDbReporting
+ const { enhancedDatabaseReporting } = this.getConfig();
+ const resultObj = enhancedDatabaseReporting
? commandObj
: this._scrubStatement(commandObj);
return JSON.stringify(resultObj);
@@ -954,11 +956,11 @@ export class MongoDBInstrumentation extends InstrumentationBase {
* @param result The command result
*/
private _handleExecutionResult(span: Span, result: CommandResult) {
- const config: MongoDBInstrumentationConfig = this.getConfig();
- if (typeof config.responseHook === 'function') {
+ const { responseHook } = this.getConfig();
+ if (typeof responseHook === 'function') {
safeExecuteInTheMiddle(
() => {
- config.responseHook!(span, { data: result });
+ responseHook(span, { data: result });
},
err => {
if (err) {
diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/src/internal-types.ts b/plugins/node/opentelemetry-instrumentation-mongodb/src/internal-types.ts
index b660ae879c..7a281574da 100644
--- a/plugins/node/opentelemetry-instrumentation-mongodb/src/internal-types.ts
+++ b/plugins/node/opentelemetry-instrumentation-mongodb/src/internal-types.ts
@@ -176,19 +176,28 @@ export type Document = {
[key: string]: any;
};
+// https://github.com/mongodb/node-mongodb-native/blob/v6.4.0/src/utils.ts#L281
+export interface MongodbNamespace {
+ db: string;
+ collection?: string;
+}
+
export type V4Connection = {
command: Function;
// From version 6.4.0 the method does not expect a callback and returns a promise
// https://github.com/mongodb/node-mongodb-native/blob/v6.4.2/src/cmap/connection.ts
commandPromise(
- ns: any,
+ ns: MongodbNamespace,
cmd: Document,
- options: undefined | unknown
+ options: undefined | unknown,
+ // From v6.6.0 we have this new param which is a constructor function
+ // https://github.com/mongodb/node-mongodb-native/blob/v6.6.0/src/cmap/connection.ts#L588
+ responseType: undefined | unknown
): Promise;
// Earlier versions expect a callback param and return void
// https://github.com/mongodb/node-mongodb-native/blob/v4.2.2/src/cmap/connection.ts
commandCallback(
- ns: any,
+ ns: MongodbNamespace,
cmd: Document,
options: undefined | unknown,
callback: any
diff --git a/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v5-v6.test.ts b/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v5-v6.test.ts
index bac9b6d17e..debe84dbdc 100644
--- a/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v5-v6.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-mongodb/test/mongodb-v5-v6.test.ts
@@ -499,12 +499,23 @@ describe('MongoDBInstrumentation-Tracing-v5', () => {
});
describe('when specifying a responseHook configuration', () => {
- const dataAttributeName = 'mongodb_data';
describe('with a valid function', () => {
beforeEach(() => {
create({
- responseHook: (span: Span, result: MongoResponseHookInformation) => {
- span.setAttribute(dataAttributeName, JSON.stringify(result.data));
+ responseHook: (span: Span, result: any) => {
+ const { data } = result;
+ if (data.n) {
+ span.setAttribute('mongodb_insert_count', result.data.n);
+ }
+ // from v6.8.0 the cursor property is not an object but an instance of
+ // `CursorResponse`. We need to use the `toObject` method to be able to inspect the data
+ const cursorObj = data.cursor.firstBatch
+ ? data.cursor
+ : data.cursor.toObject();
+ span.setAttribute(
+ 'mongodb_first_result',
+ JSON.stringify(cursorObj.firstBatch[0])
+ );
},
});
});
@@ -520,8 +531,7 @@ describe('MongoDBInstrumentation-Tracing-v5', () => {
const spans = getTestSpans();
const insertSpan = spans[0];
assert.deepStrictEqual(
- JSON.parse(insertSpan.attributes[dataAttributeName] as string)
- .n,
+ insertSpan.attributes['mongodb_insert_count'],
results?.insertedCount
);
@@ -544,12 +554,12 @@ describe('MongoDBInstrumentation-Tracing-v5', () => {
const spans = getTestSpans();
const findSpan = spans[0];
const hookAttributeValue = JSON.parse(
- findSpan.attributes[dataAttributeName] as string
+ findSpan.attributes['mongodb_first_result'] as string
);
if (results) {
assert.strictEqual(
- hookAttributeValue?.cursor?.firstBatch[0]._id,
+ hookAttributeValue?._id,
results[0]._id.toString()
);
} else {
diff --git a/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md
index 224bcc1123..1024923d02 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-mysql/CHANGELOG.md
@@ -1,5 +1,44 @@
# Changelog
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql-v0.41.0...instrumentation-mysql-v0.42.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql-v0.40.0...instrumentation-mysql-v0.41.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql-v0.39.0...instrumentation-mysql-v0.40.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql-v0.38.1...instrumentation-mysql-v0.39.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-mysql/README.md b/plugins/node/opentelemetry-instrumentation-mysql/README.md
index 971fc5351a..ee4b8da9a4 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql/README.md
+++ b/plugins/node/opentelemetry-instrumentation-mysql/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-mysql
## Supported Versions
-- `2.x`
+- [`mysql`](https://www.npmjs.com/package/mysql) versions `>=2.0.0 <3`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-mysql/package.json b/plugins/node/opentelemetry-instrumentation-mysql/package.json
index 516f0b42e2..fc67dd5046 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql/package.json
+++ b/plugins/node/opentelemetry-instrumentation-mysql/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-mysql",
- "version": "0.39.0",
+ "version": "0.42.0",
"description": "OpenTelemetry instrumentation for `mysql` database client for MySQL",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,11 +10,10 @@
"compile": "tsc -p .",
"lint:fix": "eslint . --ext .ts --fix",
"lint": "eslint . --ext .ts",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-mysql --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"version:update": "node ../../../scripts/version-update.js"
},
"keywords": [
@@ -44,24 +43,22 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-metrics": "^1.8.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"mysql": "2.18.1",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
- "@types/mysql": "2.15.22"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
+ "@types/mysql": "2.15.26"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-mysql#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-mysql/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-mysql/src/instrumentation.ts
index 11eab4bf93..7bf5863fe5 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-mysql/src/instrumentation.ts
@@ -42,6 +42,7 @@ import {
getSpanName,
getPoolName,
} from './utils';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import { UpDownCounter, MeterProvider } from '@opentelemetry/api';
@@ -50,7 +51,7 @@ type getConnectionCallbackType = (
connection: mysqlTypes.PoolConnection
) => void;
-export class MySQLInstrumentation extends InstrumentationBase {
+export class MySQLInstrumentation extends InstrumentationBase {
static readonly COMMON_ATTRIBUTES = {
[SEMATTRS_DB_SYSTEM]: DBSYSTEMVALUES_MYSQL,
};
@@ -81,7 +82,7 @@ export class MySQLInstrumentation extends InstrumentationBase {
return [
new InstrumentationNodeModuleDefinition(
'mysql',
- ['2.*'],
+ ['>=2.0.0 <3'],
(moduleExports: typeof mysqlTypes) => {
if (isWrapped(moduleExports.createConnection)) {
this._unwrap(moduleExports, 'createConnection');
@@ -317,10 +318,7 @@ export class MySQLInstrumentation extends InstrumentationBase {
span.setAttribute(SEMATTRS_DB_STATEMENT, getDbStatement(query));
- const instrumentationConfig: MySQLInstrumentationConfig =
- thisPlugin.getConfig();
-
- if (instrumentationConfig.enhancedDatabaseReporting) {
+ if (thisPlugin.getConfig().enhancedDatabaseReporting) {
let values;
if (Array.isArray(_valuesOrCallback)) {
diff --git a/plugins/node/opentelemetry-instrumentation-mysql/src/utils.ts b/plugins/node/opentelemetry-instrumentation-mysql/src/utils.ts
index 8230052d0e..0d8711e360 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql/src/utils.ts
+++ b/plugins/node/opentelemetry-instrumentation-mysql/src/utils.ts
@@ -112,10 +112,13 @@ export function getDbValues(
* @returns SQL statement without variable arguments or SQL verb
*/
export function getSpanName(query: string | Query | QueryOptions): string {
- if (typeof query === 'object') {
- return query.sql;
+ const rawQuery = typeof query === 'object' ? query.sql : query;
+ // Extract the SQL verb
+ const firstSpace = rawQuery?.indexOf(' ');
+ if (typeof firstSpace === 'number' && firstSpace !== -1) {
+ return rawQuery?.substring(0, firstSpace);
}
- return query.split(' ')[0];
+ return rawQuery;
}
export function arrayStringifyHelper(arr: Array | undefined): string {
diff --git a/plugins/node/opentelemetry-instrumentation-mysql/test/index.test.ts b/plugins/node/opentelemetry-instrumentation-mysql/test/index.test.ts
index 676081d47e..36b7cd1d5f 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql/test/index.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-mysql/test/index.test.ts
@@ -153,7 +153,7 @@ describe('mysql@2.x-Tracing', () => {
query.on('end', () => {
const spans = memoryExporter.getFinishedSpans();
- assert.strictEqual(spans[0].name, sql);
+ assert.strictEqual(spans[0].name, 'SELECT');
done();
});
});
diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml b/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml
index e0965468ab..10c6cee55b 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-mysql2/.tav.yml
@@ -1,11 +1,8 @@
mysql2:
- - versions: <4 >=3.2.0 || 3.1.0 || 3.0.0
- commands: npm run test
-
- - versions: <3 >=2.3.2 || 2.3.0 || 2.2.5 || 2.1.0
- # Skip 2.3.3 which installs types from git which takes 10m on it's own
- commands: npm run test
-
- - versions: 1.4.2 || 1.5.3 || 1.6.4 || 1.6.5 || 1.7.0
+ versions:
+ include: ">=1.4.2 <4"
# Skip v1.6.2, which is broken
- commands: npm run test
+ # Skip 2.3.3 which installs types from git which takes 10m on it's own
+ exclude: "1.6.2 || 2.3.3"
+ mode: latest-minors
+ commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md
index b0e22415ce..8dbd9f6dd9 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-mysql2/CHANGELOG.md
@@ -1,5 +1,53 @@
# Changelog
+## [0.42.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql2-v0.42.0...instrumentation-mysql2-v0.42.1) (2024-11-07)
+
+
+### Bug Fixes
+
+* **instrumentation-mysql:** fix test for mysql2 v3 ([#2168](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2168)) ([#2451](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2451)) ([ad8c581](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/ad8c581c24f47e1ed413598b78f866977af56124))
+
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql2-v0.41.0...instrumentation-mysql2-v0.42.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql2-v0.40.0...instrumentation-mysql2-v0.41.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql2-v0.39.0...instrumentation-mysql2-v0.40.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-mysql2-v0.38.1...instrumentation-mysql2-v0.39.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/README.md b/plugins/node/opentelemetry-instrumentation-mysql2/README.md
index a0f3c73658..52d6d65d60 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql2/README.md
+++ b/plugins/node/opentelemetry-instrumentation-mysql2/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-mysql2
## Supported Versions
-- `>= 1.4.2, < 4.0`
+- [`mysql2`](https://www.npmjs.com/package/mysql2) versions `>=1.4.2 <4`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/package.json b/plugins/node/opentelemetry-instrumentation-mysql2/package.json
index db8c381c28..5b0ac2c370 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql2/package.json
+++ b/plugins/node/opentelemetry-instrumentation-mysql2/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-mysql2",
- "version": "0.39.0",
+ "version": "0.42.1",
"description": "OpenTelemetry instrumentation for `mysql2` database client for MySQL",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,11 +10,10 @@
"compile": "tsc -p .",
"lint:fix": "eslint . --ext .ts --fix",
"lint": "eslint . --ext .ts",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-mysql2 --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"test-all-versions": "tav",
"version:update": "node ../../../scripts/version-update.js"
},
@@ -46,23 +45,21 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "mocha": "7.2.0",
- "mysql2": "2.3.3",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "mysql2": "3.11.3",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@opentelemetry/sql-common": "^0.40.1"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-mysql2#readme"
diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/src/index.ts b/plugins/node/opentelemetry-instrumentation-mysql2/src/index.ts
index 1973717afb..c26f998cff 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql2/src/index.ts
+++ b/plugins/node/opentelemetry-instrumentation-mysql2/src/index.ts
@@ -14,9 +14,5 @@
* limitations under the License.
*/
-import { MySQL2Instrumentation } from './instrumentation';
-
export * from './instrumentation';
-export default MySQL2Instrumentation;
-
export * from './types';
diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-mysql2/src/instrumentation.ts
index 38f2ce8bd3..7557cf7a01 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql2/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-mysql2/src/instrumentation.ts
@@ -35,11 +35,12 @@ import {
getSpanName,
once,
} from './utils';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
type formatType = typeof mysqlTypes.format;
-export class MySQL2Instrumentation extends InstrumentationBase {
+export class MySQL2Instrumentation extends InstrumentationBase {
static readonly COMMON_ATTRIBUTES = {
[SEMATTRS_DB_SYSTEM]: DBSYSTEMVALUES_MYSQL,
};
@@ -52,7 +53,7 @@ export class MySQL2Instrumentation extends InstrumentationBase {
return [
new InstrumentationNodeModuleDefinition(
'mysql2',
- ['>= 1.4.2 < 4.0'],
+ ['>=1.4.2 <4'],
(moduleExports: any) => {
const ConnectionPrototype: mysqlTypes.Connection =
moduleExports.Connection.prototype;
@@ -96,9 +97,6 @@ export class MySQL2Instrumentation extends InstrumentationBase {
_valuesOrCallback?: unknown[] | Function,
_callback?: Function
) {
- const thisPluginConfig: MySQL2InstrumentationConfig =
- thisPlugin._config;
-
let values;
if (Array.isArray(_valuesOrCallback)) {
values = _valuesOrCallback;
@@ -115,7 +113,10 @@ export class MySQL2Instrumentation extends InstrumentationBase {
},
});
- if (!isPrepared && thisPluginConfig.addSqlCommenterCommentToQueries) {
+ if (
+ !isPrepared &&
+ thisPlugin.getConfig().addSqlCommenterCommentToQueries
+ ) {
arguments[0] = query =
typeof query === 'string'
? addSqlCommenterComment(span, query)
@@ -131,10 +132,11 @@ export class MySQL2Instrumentation extends InstrumentationBase {
message: err.message,
});
} else {
- if (typeof thisPluginConfig.responseHook === 'function') {
+ const { responseHook } = thisPlugin.getConfig();
+ if (typeof responseHook === 'function') {
safeExecuteInTheMiddle(
() => {
- thisPluginConfig.responseHook!(span, {
+ responseHook(span, {
queryResults: results,
});
},
diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/src/utils.ts b/plugins/node/opentelemetry-instrumentation-mysql2/src/utils.ts
index cfd9f2ef0f..0a045ff45a 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql2/src/utils.ts
+++ b/plugins/node/opentelemetry-instrumentation-mysql2/src/utils.ts
@@ -131,7 +131,11 @@ export function getDbStatement(
export function getSpanName(query: string | Query | QueryOptions): string {
const rawQuery = typeof query === 'object' ? query.sql : query;
// Extract the SQL verb
- return rawQuery?.split(' ')?.[0];
+ const firstSpace = rawQuery?.indexOf(' ');
+ if (typeof firstSpace === 'number' && firstSpace !== -1) {
+ return rawQuery?.substring(0, firstSpace);
+ }
+ return rawQuery;
}
export const once = (fn: Function) => {
diff --git a/plugins/node/opentelemetry-instrumentation-mysql2/test/mysql.test.ts b/plugins/node/opentelemetry-instrumentation-mysql2/test/mysql.test.ts
index 404e1da839..a11480418c 100644
--- a/plugins/node/opentelemetry-instrumentation-mysql2/test/mysql.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-mysql2/test/mysql.test.ts
@@ -54,7 +54,7 @@ interface Result extends mysqlTypes.RowDataPacket {
solution: number;
}
-describe('mysql2@2.x', () => {
+describe('mysql2', () => {
let contextManager: AsyncHooksContextManager;
let connection: mysqlTypes.Connection;
let rootConnection: mysqlTypes.Connection;
@@ -148,7 +148,7 @@ describe('mysql2@2.x', () => {
host,
password,
database,
- } as mysqlTypes.PoolClusterOptions);
+ });
});
afterEach(done => {
diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/.tav.yml b/plugins/node/opentelemetry-instrumentation-nestjs-core/.tav.yml
index ba5fe6062a..f412b3cb3e 100644
--- a/plugins/node/opentelemetry-instrumentation-nestjs-core/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/.tav.yml
@@ -1,27 +1,44 @@
"@nestjs/core":
- - versions: "^8.2.0 || 8.1.2 || 8.1.1 || 8.0.11 || 8.0.9 || 8.0.6"
+ - versions:
+ include: ">=10.0.0 <11"
+ mode: latest-minors
+ # NestJS 10 requires Node.js v16 or later.
+ # https://docs.nestjs.com/migration-guide#dropping-support-for-nodejs-v12
+ node: ">=16"
+ peerDependencies:
+ - "@nestjs/common@^10.0.0"
+ - "rxjs@^7.1.0"
+ commands: npm run test
+
+ - versions:
+ include: ">=9.0.0 <10"
+ mode: latest-minors
+ peerDependencies:
+ - "@nestjs/common@^9.0.0"
+ - "rxjs@^7.1.0"
+ commands: npm run test
+
+ - versions:
+ include: ">=8.0.0 <9"
+ mode: latest-minors
peerDependencies:
- "@nestjs/common@^8.0.0"
- - "@nestjs/microservices@^8.0.0"
- - "@nestjs/platform-express@^8.0.0"
- - "@nestjs/websockets@^8.0.0"
- "rxjs@^7.1.0"
commands: npm run test
- - versions: "^7.6.17 || 7.6.15 || 7.6.13 || 7.6.12"
+ - versions:
+ # We *could* test all 7.x "latest-minors", but the latest 7.x release was
+ # 2021, so let's just test the latest.
+ include: "^7.6.18"
peerDependencies:
- "@nestjs/common@^7.0.0"
- - "@nestjs/microservices@^7.0.0"
- "@nestjs/platform-express@^7.0.0"
- - "@nestjs/websockets@^7.0.0"
- "rxjs@^6.0.0"
commands: npm run test
- versions: "6.11.11"
peerDependencies:
- "@nestjs/common@^6.0.0"
- - "@nestjs/microservices@^6.0.0"
- "@nestjs/platform-express@^6.0.0"
- - "@nestjs/websockets@^6.0.0"
- "rxjs@^6.0.0"
commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md
index f84b25f56a..fc295911f2 100644
--- a/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/CHANGELOG.md
@@ -1,5 +1,32 @@
# Changelog
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-nestjs-core-v0.40.0...instrumentation-nestjs-core-v0.41.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-nestjs-core-v0.39.0...instrumentation-nestjs-core-v0.40.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-nestjs-core-v0.38.0...instrumentation-nestjs-core-v0.39.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-nestjs-core-v0.37.1...instrumentation-nestjs-core-v0.38.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/README.md b/plugins/node/opentelemetry-instrumentation-nestjs-core/README.md
index 1c1f0cd347..932f94097f 100644
--- a/plugins/node/opentelemetry-instrumentation-nestjs-core/README.md
+++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-nestjs-core
### Supported Versions
-- `>=4.0.0`
+- [`@nestjs/core`](https://www.npmjs.com/package/@nestjs/core) versions `>=4.0.0 <11`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json
index aafbddf494..34fc1ffef3 100644
--- a/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json
+++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-nestjs-core",
- "version": "0.38.0",
+ "version": "0.41.0",
"description": "OpenTelemetry instrumentation for NestJS server side applications framework",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -11,11 +11,10 @@
"compile:watch": "tsc -w",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-nestjs-core --include-dependencies",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha --timeout 5000 -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha --timeout 5000 'test/**/*.test.ts'",
"test-all-versions": "tav",
"version:update": "node ../../../scripts/version-update.js"
},
@@ -47,31 +46,26 @@
"devDependencies": {
"@nestjs/common": "9.4.3",
"@nestjs/core": "9.4.3",
- "@nestjs/microservices": "9.4.3",
- "@nestjs/platform-express": "9.4.3",
- "@nestjs/websockets": "9.4.3",
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
"cross-env": "7.0.3",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"reflect-metadata": "0.1.13",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"rxjs": "7.8.1",
"rxjs-compat": "6.6.7",
- "semver": "7.5.4",
+ "semver": "7.6.3",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.23.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-nestjs-core#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/scripts/test-all-versions b/plugins/node/opentelemetry-instrumentation-nestjs-core/scripts/test-all-versions
deleted file mode 100755
index 07de70e070..0000000000
--- a/plugins/node/opentelemetry-instrumentation-nestjs-core/scripts/test-all-versions
+++ /dev/null
@@ -1,78 +0,0 @@
-#!/usr/bin/env bash
-
-# return to the default package.json and install all deps
-git checkout -- package.json
-npm install
-
-test_silent () {
- npm run test &> /dev/null && echo OK || echo FAIL
-}
-
-echo -e "\n## 4.0.0"
-npm install -D \
- reflect-metadata@0.1.13 \
- @nestjs/common@^4.0.0 \
- @nestjs/core@^4.0.0 \
- @nestjs/microservices@^4.0.0 \
- @nestjs/websockets@^4.0.0 \
- rxjs@^5.4.2 \
- rxjs-compat@^6.0.0 > /dev/null
-test_silent
-
-echo -e "\n## ^4.0.0"
-npm install -D \
- reflect-metadata@0.1.13 \
- @nestjs/common@^4.4.0 \
- @nestjs/core@^4.4.0 \
- @nestjs/microservices@^4.4.0 \
- @nestjs/websockets@^4.4.0 \
- rxjs@^5.4.2 \
- rxjs-compat@^6.0.0 > /dev/null
-test_silent
-
-echo -e "\n## ^5.0.0"
-npm install -D \
- reflect-metadata@0.1.13 \
- @nestjs/common@^5.0.0 \
- @nestjs/core@^5.0.0 \
- @nestjs/microservices@^5.0.0 \
- @nestjs/websockets@^5.0.0 \
- rxjs@^6.0.0 \
- rxjs-compat@^6.0.0 > /dev/null
-test_silent
-
-echo -e "\n## ^6.0.0"
-npm install -D \
- reflect-metadata@0.1.13 \
- @nestjs/common@^6.0.0 \
- @nestjs/core@^6.0.0 \
- @nestjs/microservices@^6.0.0 \
- @nestjs/websockets@^6.0.0 \
- @nestjs/platform-express@^6.0.0 \
- rxjs@^6.0.0 \
- rxjs-compat@^6.0.0 > /dev/null
-test_silent
-
-echo -e "\n## ^7.0.0"
-npm install -D \
- reflect-metadata@0.1.13 \
- @nestjs/common@^7.0.0 \
- @nestjs/core@^7.0.0 \
- @nestjs/microservices@^7.0.0 \
- @nestjs/websockets@^7.0.0 \
- @nestjs/platform-express@^7.0.0 \
- rxjs@^7.0.0 \
- rxjs-compat@latest > /dev/null
-test_silent
-
-echo -e "\n## ^8.0.0"
-npm install -D \
- reflect-metadata@0.1.13 \
- @nestjs/common@^8.0.0 \
- @nestjs/core@^8.0.0 \
- @nestjs/microservices@^8.0.0 \
- @nestjs/websockets@^8.0.0 \
- @nestjs/platform-express@^8.0.0 \
- rxjs@^7.2.0 \
- rxjs-compat@latest > /dev/null
-test_silent
diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/src/index.ts b/plugins/node/opentelemetry-instrumentation-nestjs-core/src/index.ts
index 8744bbf0ae..c464af622c 100644
--- a/plugins/node/opentelemetry-instrumentation-nestjs-core/src/index.ts
+++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/src/index.ts
@@ -14,9 +14,5 @@
* limitations under the License.
*/
-import { Instrumentation } from './instrumentation';
-
export * from './instrumentation';
-export { Instrumentation as NestInstrumentation };
-
export * from './enums/AttributeNames';
diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-nestjs-core/src/instrumentation.ts
index a7b2380250..edc7bc5d2f 100644
--- a/plugins/node/opentelemetry-instrumentation-nestjs-core/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/src/instrumentation.ts
@@ -25,6 +25,7 @@ import {
import type { NestFactory } from '@nestjs/core/nest-factory.js';
import type { RouterExecutionContext } from '@nestjs/core/router/router-execution-context.js';
import type { Controller } from '@nestjs/common/interfaces';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import {
SEMATTRS_HTTP_METHOD,
@@ -33,10 +34,12 @@ import {
} from '@opentelemetry/semantic-conventions';
import { AttributeNames, NestType } from './enums';
-export class Instrumentation extends InstrumentationBase {
+const supportedVersions = ['>=4.0.0 <11'];
+
+export class NestInstrumentation extends InstrumentationBase {
static readonly COMPONENT = '@nestjs/core';
static readonly COMMON_ATTRIBUTES = {
- component: Instrumentation.COMPONENT,
+ component: NestInstrumentation.COMPONENT,
};
constructor(config: InstrumentationConfig = {}) {
@@ -45,13 +48,13 @@ export class Instrumentation extends InstrumentationBase {
init() {
const module = new InstrumentationNodeModuleDefinition(
- Instrumentation.COMPONENT,
- ['>=4.0.0']
+ NestInstrumentation.COMPONENT,
+ supportedVersions
);
module.files.push(
- this.getNestFactoryFileInstrumentation(['>=4.0.0']),
- this.getRouterExecutionContextFileInstrumentation(['>=4.0.0'])
+ this.getNestFactoryFileInstrumentation(supportedVersions),
+ this.getRouterExecutionContextFileInstrumentation(supportedVersions)
);
return module;
@@ -120,7 +123,7 @@ function createWrapNestFactoryCreate(
) {
const span = tracer.startSpan('Create Nest App', {
attributes: {
- ...Instrumentation.COMMON_ATTRIBUTES,
+ ...NestInstrumentation.COMMON_ATTRIBUTES,
[AttributeNames.TYPE]: NestType.APP_CREATION,
[AttributeNames.VERSION]: moduleVersion,
[AttributeNames.MODULE]: nestModule.name,
@@ -169,7 +172,7 @@ function createWrapCreateHandler(tracer: api.Tracer, moduleVersion?: string) {
) {
const span = tracer.startSpan(spanName, {
attributes: {
- ...Instrumentation.COMMON_ATTRIBUTES,
+ ...NestInstrumentation.COMMON_ATTRIBUTES,
[AttributeNames.VERSION]: moduleVersion,
[AttributeNames.TYPE]: NestType.REQUEST_CONTEXT,
[SEMATTRS_HTTP_METHOD]: req.method,
@@ -204,7 +207,7 @@ function createWrapHandler(
const spanName = handler.name || 'anonymous nest handler';
const options = {
attributes: {
- ...Instrumentation.COMMON_ATTRIBUTES,
+ ...NestInstrumentation.COMMON_ATTRIBUTES,
[AttributeNames.VERSION]: moduleVersion,
[AttributeNames.TYPE]: NestType.REQUEST_HANDLER,
[AttributeNames.CALLBACK]: handler.name,
diff --git a/plugins/node/opentelemetry-instrumentation-nestjs-core/test/setup.ts b/plugins/node/opentelemetry-instrumentation-nestjs-core/test/setup.ts
index 1b77efe8ea..23fdcb8662 100644
--- a/plugins/node/opentelemetry-instrumentation-nestjs-core/test/setup.ts
+++ b/plugins/node/opentelemetry-instrumentation-nestjs-core/test/setup.ts
@@ -232,7 +232,7 @@ export const setup = async (version: string): Promise => {
);
}
- const app = await core.NestFactory.create(AppModule);
+ const app = await core.NestFactory.create(AppModule, { logger: false });
if (app.listenAsync) {
await app.listenAsync(0, 'localhost');
} else {
diff --git a/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md
index 93c9ce96a8..f90a0f3b62 100644
--- a/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-net/CHANGELOG.md
@@ -1,5 +1,30 @@
# Changelog
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-net-v0.39.0...instrumentation-net-v0.40.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-net-v0.38.0...instrumentation-net-v0.39.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-net-v0.37.0...instrumentation-net-v0.38.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.37.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-net-v0.36.0...instrumentation-net-v0.37.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-net/README.md b/plugins/node/opentelemetry-instrumentation-net/README.md
index 60fc7ca98a..1aa5784b13 100644
--- a/plugins/node/opentelemetry-instrumentation-net/README.md
+++ b/plugins/node/opentelemetry-instrumentation-net/README.md
@@ -7,16 +7,20 @@ This module provides automatic instrumentation for the [`net`](http://nodejs.org
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience.
-Supports both TCP and IPC connections.
-
Compatible with OpenTelemetry JS API and SDK `1.0+`.
+Supports both TCP and IPC connections.
+
## Installation
```bash
npm install --save @opentelemetry/instrumentation-net
```
+## Supported Versions
+
+- Node.js `>=14`
+
## Usage
```js
diff --git a/plugins/node/opentelemetry-instrumentation-net/package.json b/plugins/node/opentelemetry-instrumentation-net/package.json
index 303510e996..1dd8a286bb 100644
--- a/plugins/node/opentelemetry-instrumentation-net/package.json
+++ b/plugins/node/opentelemetry-instrumentation-net/package.json
@@ -1,17 +1,17 @@
{
"name": "@opentelemetry/instrumentation-net",
- "version": "0.37.0",
+ "version": "0.40.0",
"description": "OpenTelemetry instrumentation for `node:net` network API module",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-net --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
@@ -48,18 +48,16 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.23.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-net#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-net/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-net/src/instrumentation.ts
index 567df7dee3..11ae9dbc9d 100644
--- a/plugins/node/opentelemetry-instrumentation-net/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-net/src/instrumentation.ts
@@ -34,6 +34,7 @@ import {
import { TLSAttributes } from './types';
import { NormalizedOptions, SocketEvent } from './internal-types';
import { getNormalizedArgs, IPC_TRANSPORT } from './utils';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import { Socket } from 'net';
import { TLSSocket } from 'tls';
diff --git a/plugins/node/opentelemetry-instrumentation-pg/.tav.yml b/plugins/node/opentelemetry-instrumentation-pg/.tav.yml
index 9f9320f8d5..eea3b2b2fb 100644
--- a/plugins/node/opentelemetry-instrumentation-pg/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-pg/.tav.yml
@@ -1,5 +1,6 @@
pg:
- # a sample from supported versions
- - versions: "8.5.1 || 8.6.0 || 8.7.1"
- peerDependencies: pg-pool@^3
- commands: npm run test
+ versions:
+ include: '>=8.0.3 <9'
+ mode: max-7
+ peerDependencies: pg-pool@^3
+ commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md
index c53a87a7fe..2cba7bbfc6 100644
--- a/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-pg/CHANGELOG.md
@@ -1,5 +1,84 @@
# Changelog
+## [0.47.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.47.0...instrumentation-pg-v0.47.1) (2024-11-07)
+
+
+### Bug Fixes
+
+* **pg:** Do not add SQLCommenter comments to prepared statements ([#2456](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2456)) ([8070c7f](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/8070c7f9e50110046b72a658e7fbd8d2f06b73e9))
+
+## [0.47.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.46.0...instrumentation-pg-v0.47.0) (2024-10-25)
+
+
+### Features
+
+* **instrumentation-pg:** add error type to db duration metric ([#2476](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2476)) ([9564380](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9564380782164c8d8da6cac675d76d2fb4cdf20b))
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Bug Fixes
+
+* **instrumentation-pg:** ensure db.client.operation.duration metric is recorded for Promises API usage of pg ([#2480](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2480)) ([97a2956](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/97a2956f2703ebe62c16863decada93fef4574ec)), closes [#2380](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2380)
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.46.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.45.1...instrumentation-pg-v0.46.0) (2024-10-16)
+
+
+### Features
+
+* **instrumentation-pg:** add operation name attribute to db duration metric ([#2475](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2475)) ([b043ffb](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/b043ffbe17947409c0ae9ea6fabe6ab1ec5b4cc9))
+
+
+### Bug Fixes
+
+* **instrumentation-pg:** not add duplicate listeners to pg pool ([#2484](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2484)) ([33c093d](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/33c093daf77153ea3d0ab8d7925772efd37bdebe))
+
+## [0.45.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.45.0...instrumentation-pg-v0.45.1) (2024-10-10)
+
+
+### Bug Fixes
+
+* add missing @opentelemetry/core dependency ([#2473](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2473)) ([4d66431](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/4d66431a2ad480720bf6c33663a419ec1404cd33))
+
+## [0.45.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.44.0...instrumentation-pg-v0.45.0) (2024-10-08)
+
+
+### Features
+
+* **instrumentation-pg:** implementation of metric operation duration ([#2380](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2380)) ([050fee0](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/050fee0551ccf0fa593b84030ab73e2701372b4b))
+* **instrumentation-pg:** initial implementation of DB metrics ([#2349](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2349)) ([12adb43](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/12adb4354f09ade438cd96340bdfd1f715b5fed3))
+
+## [0.44.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.43.0...instrumentation-pg-v0.44.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.42.0...instrumentation-pg-v0.43.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pg-v0.41.0...instrumentation-pg-v0.42.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-pg/README.md b/plugins/node/opentelemetry-instrumentation-pg/README.md
index abc18e2089..b2657c625e 100644
--- a/plugins/node/opentelemetry-instrumentation-pg/README.md
+++ b/plugins/node/opentelemetry-instrumentation-pg/README.md
@@ -17,7 +17,8 @@ npm install --save @opentelemetry/instrumentation-pg
### Supported Versions
-- `>=8 <9`
+- [`pg`](https://www.npmjs.com/package/pg) versions `>=8.0.3 <9`
+- [`pg-pool`](https://www.npmjs.com/package/pg-pool) versions `>=2.0.0 <4`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-pg/package.json b/plugins/node/opentelemetry-instrumentation-pg/package.json
index 24dad46903..53b2312e7a 100644
--- a/plugins/node/opentelemetry-instrumentation-pg/package.json
+++ b/plugins/node/opentelemetry-instrumentation-pg/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-pg",
- "version": "0.42.0",
+ "version": "0.47.1",
"description": "OpenTelemetry instrumentation for `pg` and `pg-pool` database client for PostgreSQL",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,14 +10,14 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-pg --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"tdd": "npm run test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
- "test-all-versions": "cross-env IN_TAV=true tav",
- "test-all-versions:local": "cross-env IN_TAV=true RUN_POSTGRES_TESTS_LOCAL=true npm run test-all-versions",
- "test:debug": "ts-mocha --inspect-brk --no-timeouts -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
+ "test-all-versions": "tav",
+ "test-all-versions:local": "cross-env RUN_POSTGRES_TESTS_LOCAL=true npm run test-all-versions",
+ "test:debug": "mocha --inspect-brk --no-timeouts 'test/**/*.test.ts'",
"test:local": "cross-env RUN_POSTGRES_TESTS_LOCAL=true npm run test",
"version:update": "node ../../../scripts/version-update.js",
"watch": "tsc -w"
@@ -52,30 +52,29 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"cross-env": "7.0.3",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"pg": "8.7.1",
"pg-pool": "3.4.1",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"safe-stable-stringify": "^2.4.1",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0",
+ "@opentelemetry/core": "^1.26.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "1.27.0",
"@opentelemetry/sql-common": "^0.40.1",
"@types/pg": "8.6.1",
- "@types/pg-pool": "2.0.4"
+ "@types/pg-pool": "2.0.6"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-pg#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-pg/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-pg/src/instrumentation.ts
index c6bee00999..933796be7c 100644
--- a/plugins/node/opentelemetry-instrumentation-pg/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-pg/src/instrumentation.ts
@@ -19,13 +19,17 @@ import {
InstrumentationNodeModuleDefinition,
safeExecuteInTheMiddle,
} from '@opentelemetry/instrumentation';
-
import {
context,
trace,
Span,
SpanStatusCode,
SpanKind,
+ Histogram,
+ ValueType,
+ Attributes,
+ HrTime,
+ UpDownCounter,
} from '@opentelemetry/api';
import type * as pgTypes from 'pg';
import type * as pgPoolTypes from 'pg-pool';
@@ -35,22 +39,95 @@ import {
PostgresCallback,
PgPoolExtended,
PgPoolCallback,
+ EVENT_LISTENERS_SET,
} from './internal-types';
import { PgInstrumentationConfig } from './types';
import * as utils from './utils';
import { addSqlCommenterComment } from '@opentelemetry/sql-common';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import { SpanNames } from './enums/SpanNames';
+import {
+ hrTime,
+ hrTimeDuration,
+ hrTimeToMilliseconds,
+} from '@opentelemetry/core';
+import {
+ DBSYSTEMVALUES_POSTGRESQL,
+ SEMATTRS_DB_SYSTEM,
+ ATTR_ERROR_TYPE,
+ ATTR_SERVER_PORT,
+ ATTR_SERVER_ADDRESS,
+} from '@opentelemetry/semantic-conventions';
+import {
+ METRIC_DB_CLIENT_CONNECTION_COUNT,
+ METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,
+ METRIC_DB_CLIENT_OPERATION_DURATION,
+ ATTR_DB_NAMESPACE,
+ ATTR_DB_OPERATION_NAME,
+} from '@opentelemetry/semantic-conventions/incubating';
+
+export class PgInstrumentation extends InstrumentationBase {
+ private _operationDuration!: Histogram;
+ private _connectionsCount!: UpDownCounter;
+ private _connectionPendingRequests!: UpDownCounter;
+ // Pool events connect, acquire, release and remove can be called
+ // multiple times without changing the values of total, idle and waiting
+ // connections. The _connectionsCounter is used to keep track of latest
+ // values and only update the metrics _connectionsCount and _connectionPendingRequests
+ // when the value change.
+ private _connectionsCounter: utils.poolConnectionsCounter = {
+ used: 0,
+ idle: 0,
+ pending: 0,
+ };
-export class PgInstrumentation extends InstrumentationBase {
constructor(config: PgInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
+ override _updateMetricInstruments() {
+ this._operationDuration = this.meter.createHistogram(
+ METRIC_DB_CLIENT_OPERATION_DURATION,
+ {
+ description: 'Duration of database client operations.',
+ unit: 's',
+ valueType: ValueType.DOUBLE,
+ advice: {
+ explicitBucketBoundaries: [
+ 0.001, 0.005, 0.01, 0.05, 0.1, 0.5, 1, 5, 10,
+ ],
+ },
+ }
+ );
+
+ this._connectionsCounter = {
+ idle: 0,
+ pending: 0,
+ used: 0,
+ };
+ this._connectionsCount = this.meter.createUpDownCounter(
+ METRIC_DB_CLIENT_CONNECTION_COUNT,
+ {
+ description:
+ 'The number of connections that are currently in state described by the state attribute.',
+ unit: '{connection}',
+ }
+ );
+ this._connectionPendingRequests = this.meter.createUpDownCounter(
+ METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,
+ {
+ description:
+ 'The number of current pending requests for an open connection.',
+ unit: '{connection}',
+ }
+ );
+ }
+
protected init() {
const modulePG = new InstrumentationNodeModuleDefinition(
'pg',
- ['8.*'],
+ ['>=8.0.3 <9'],
(module: any) => {
const moduleExports: typeof pgTypes =
module[Symbol.toStringTag] === 'Module'
@@ -91,7 +168,7 @@ export class PgInstrumentation extends InstrumentationBase {
const modulePGPool = new InstrumentationNodeModuleDefinition(
'pg-pool',
- ['2.*', '3.*'],
+ ['>=2.0.0 <4'],
(moduleExports: typeof pgPoolTypes) => {
if (isWrapped(moduleExports.prototype.connect)) {
this._unwrap(moduleExports.prototype, 'connect');
@@ -113,14 +190,6 @@ export class PgInstrumentation extends InstrumentationBase {
return [modulePG, modulePGPool];
}
- override setConfig(config: PgInstrumentationConfig = {}) {
- this._config = Object.assign({}, config);
- }
-
- override getConfig(): PgInstrumentationConfig {
- return this._config as PgInstrumentationConfig;
- }
-
private _getClientConnectPatch() {
const plugin = this;
return (original: PgClientConnect) => {
@@ -154,6 +223,28 @@ export class PgInstrumentation extends InstrumentationBase {
};
}
+ private recordOperationDuration(attributes: Attributes, startTime: HrTime) {
+ const metricsAttributes: Attributes = {};
+ const keysToCopy = [
+ SEMATTRS_DB_SYSTEM,
+ ATTR_DB_NAMESPACE,
+ ATTR_ERROR_TYPE,
+ ATTR_SERVER_PORT,
+ ATTR_SERVER_ADDRESS,
+ ATTR_DB_OPERATION_NAME,
+ ];
+
+ keysToCopy.forEach(key => {
+ if (key in attributes) {
+ metricsAttributes[key] = attributes[key];
+ }
+ });
+
+ const durationSeconds =
+ hrTimeToMilliseconds(hrTimeDuration(startTime, hrTime())) / 1000;
+ this._operationDuration.record(durationSeconds, metricsAttributes);
+ }
+
private _getClientQueryPatch() {
const plugin = this;
return (original: typeof pgTypes.Client.prototype.query) => {
@@ -162,6 +253,7 @@ export class PgInstrumentation extends InstrumentationBase {
if (utils.shouldSkipInstrumentation(plugin.getConfig())) {
return original.apply(this, args as never);
}
+ const startTime = hrTime();
// client.query(text, cb?), client.query(text, values, cb?), and
// client.query(configObj, cb?) are all valid signatures. We construct
@@ -187,6 +279,22 @@ export class PgInstrumentation extends InstrumentationBase {
? (arg0 as utils.ObjectWithText)
: undefined;
+ const attributes: Attributes = {
+ [SEMATTRS_DB_SYSTEM]: DBSYSTEMVALUES_POSTGRESQL,
+ [ATTR_DB_NAMESPACE]: this.database,
+ [ATTR_SERVER_PORT]: this.connectionParameters.port,
+ [ATTR_SERVER_ADDRESS]: this.connectionParameters.host,
+ };
+
+ if (queryConfig?.text) {
+ attributes[ATTR_DB_OPERATION_NAME] =
+ utils.parseNormalizedOperationName(queryConfig?.text);
+ }
+
+ const recordDuration = () => {
+ plugin.recordOperationDuration(attributes, startTime);
+ };
+
const instrumentationConfig = plugin.getConfig();
const span = utils.handleConfigQuery.call(
@@ -199,14 +307,17 @@ export class PgInstrumentation extends InstrumentationBase {
// Modify query text w/ a tracing comment before invoking original for
// tracing, but only if args[0] has one of our expected shapes.
if (instrumentationConfig.addSqlCommenterCommentToQueries) {
- args[0] = firstArgIsString
- ? addSqlCommenterComment(span, arg0)
- : firstArgIsQueryObjectWithText
- ? {
- ...arg0,
- text: addSqlCommenterComment(span, arg0.text),
- }
- : args[0];
+ if (firstArgIsString) {
+ args[0] = addSqlCommenterComment(span, arg0);
+ } else if (firstArgIsQueryObjectWithText && !('name' in arg0)) {
+ // In the case of a query object, we need to ensure there's no name field
+ // as this indicates a prepared query, where the comment would remain the same
+ // for every invocation and contain an outdated trace context.
+ args[0] = {
+ ...arg0,
+ text: addSqlCommenterComment(span, arg0.text),
+ };
+ }
}
// Bind callback (if any) to parent span (if any)
@@ -217,7 +328,9 @@ export class PgInstrumentation extends InstrumentationBase {
args[args.length - 1] = utils.patchCallback(
instrumentationConfig,
span,
- args[args.length - 1] as PostgresCallback // nb: not type safe.
+ args[args.length - 1] as PostgresCallback, // nb: not type safe.
+ attributes,
+ recordDuration
);
// If a parent span exists, bind the callback
@@ -232,7 +345,9 @@ export class PgInstrumentation extends InstrumentationBase {
let callback = utils.patchCallback(
plugin.getConfig(),
span,
- queryConfig.callback as PostgresCallback // nb: not type safe.
+ queryConfig.callback as PostgresCallback, // nb: not type safe.
+ attributes,
+ recordDuration
);
// If a parent span existed, bind the callback
@@ -244,10 +359,8 @@ export class PgInstrumentation extends InstrumentationBase {
}
}
- if (
- typeof instrumentationConfig.requestHook === 'function' &&
- queryConfig
- ) {
+ const { requestHook } = instrumentationConfig;
+ if (typeof requestHook === 'function' && queryConfig) {
safeExecuteInTheMiddle(
() => {
// pick keys to expose explicitly, so we're not leaking pg package
@@ -255,7 +368,7 @@ export class PgInstrumentation extends InstrumentationBase {
const { database, host, port, user } = this.connectionParameters;
const connection = { database, host, port, user };
- instrumentationConfig.requestHook!(span, {
+ requestHook(span, {
connection,
query: {
text: queryConfig.text,
@@ -292,7 +405,6 @@ export class PgInstrumentation extends InstrumentationBase {
try {
result = original.apply(this, args as never);
} catch (e: unknown) {
- // span.recordException(e);
span.setStatus({
code: SpanStatusCode.ERROR,
message: utils.getErrorMessage(e),
@@ -308,6 +420,7 @@ export class PgInstrumentation extends InstrumentationBase {
// Return a pass-along promise which ends the span and then goes to user's orig resolvers
return new Promise(resolve => {
utils.handleExecutionResult(plugin.getConfig(), span, result);
+ recordDuration();
span.end();
resolve(result);
});
@@ -318,6 +431,7 @@ export class PgInstrumentation extends InstrumentationBase {
code: SpanStatusCode.ERROR,
message: error.message,
});
+ recordDuration();
span.end();
reject(error);
});
@@ -330,6 +444,52 @@ export class PgInstrumentation extends InstrumentationBase {
};
}
+ private _setPoolConnectEventListeners(pgPool: PgPoolExtended) {
+ if (pgPool[EVENT_LISTENERS_SET]) return;
+ const poolName = utils.getPoolName(pgPool.options);
+
+ pgPool.on('connect', () => {
+ this._connectionsCounter = utils.updateCounter(
+ poolName,
+ pgPool,
+ this._connectionsCount,
+ this._connectionPendingRequests,
+ this._connectionsCounter
+ );
+ });
+
+ pgPool.on('acquire', () => {
+ this._connectionsCounter = utils.updateCounter(
+ poolName,
+ pgPool,
+ this._connectionsCount,
+ this._connectionPendingRequests,
+ this._connectionsCounter
+ );
+ });
+
+ pgPool.on('remove', () => {
+ this._connectionsCounter = utils.updateCounter(
+ poolName,
+ pgPool,
+ this._connectionsCount,
+ this._connectionPendingRequests,
+ this._connectionsCounter
+ );
+ });
+
+ pgPool.on('release' as any, () => {
+ this._connectionsCounter = utils.updateCounter(
+ poolName,
+ pgPool,
+ this._connectionsCount,
+ this._connectionPendingRequests,
+ this._connectionsCounter
+ );
+ });
+ pgPool[EVENT_LISTENERS_SET] = true;
+ }
+
private _getPoolConnectPatch() {
const plugin = this;
return (originalConnect: typeof pgPoolTypes.prototype.connect) => {
@@ -344,6 +504,8 @@ export class PgInstrumentation extends InstrumentationBase {
attributes: utils.getSemanticAttributesFromPool(this.options),
});
+ plugin._setPoolConnectEventListeners(this);
+
if (callback) {
const parentSpan = trace.getSpan(context.active());
callback = utils.patchCallbackPGPool(
diff --git a/plugins/node/opentelemetry-instrumentation-pg/src/internal-types.ts b/plugins/node/opentelemetry-instrumentation-pg/src/internal-types.ts
index 1270814499..d01432b65c 100644
--- a/plugins/node/opentelemetry-instrumentation-pg/src/internal-types.ts
+++ b/plugins/node/opentelemetry-instrumentation-pg/src/internal-types.ts
@@ -55,8 +55,13 @@ export interface PgPoolOptionsParams {
maxClient: number; // maximum size of the pool
}
+export const EVENT_LISTENERS_SET = Symbol(
+ 'opentelemetry.instrumentation.pg.eventListenersSet'
+);
+
export interface PgPoolExtended extends pgPoolTypes {
options: PgPoolOptionsParams;
+ [EVENT_LISTENERS_SET]?: boolean; // flag to identify if the event listeners for instrumentation have been set
}
export type PgClientConnect = (callback?: Function) => Promise | void;
diff --git a/plugins/node/opentelemetry-instrumentation-pg/src/utils.ts b/plugins/node/opentelemetry-instrumentation-pg/src/utils.ts
index a16ccc9cd0..de21084a95 100644
--- a/plugins/node/opentelemetry-instrumentation-pg/src/utils.ts
+++ b/plugins/node/opentelemetry-instrumentation-pg/src/utils.ts
@@ -22,9 +22,12 @@ import {
Tracer,
SpanKind,
diag,
+ UpDownCounter,
+ Attributes,
} from '@opentelemetry/api';
import { AttributeNames } from './enums/AttributeNames';
import {
+ ATTR_ERROR_TYPE,
SEMATTRS_DB_SYSTEM,
SEMATTRS_DB_NAME,
SEMATTRS_DB_CONNECTION_STRING,
@@ -34,6 +37,12 @@ import {
SEMATTRS_DB_STATEMENT,
DBSYSTEMVALUES_POSTGRESQL,
} from '@opentelemetry/semantic-conventions';
+import {
+ ATTR_DB_CLIENT_CONNECTION_POOL_NAME,
+ ATTR_DB_CLIENT_CONNECTION_STATE,
+ DB_CLIENT_CONNECTION_STATE_VALUE_USED,
+ DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,
+} from '@opentelemetry/semantic-conventions/incubating';
import {
PgClientExtended,
PostgresCallback,
@@ -85,7 +94,7 @@ export function getQuerySpanName(
return `${SpanNames.QUERY_PREFIX}:${command}${dbName ? ` ${dbName}` : ''}`;
}
-function parseNormalizedOperationName(queryText: string) {
+export function parseNormalizedOperationName(queryText: string) {
const indexOfFirstSpace = queryText.indexOf(' ');
let sqlCommand =
indexOfFirstSpace === -1
@@ -236,7 +245,9 @@ export function handleExecutionResult(
export function patchCallback(
instrumentationConfig: PgInstrumentationConfig,
span: Span,
- cb: PostgresCallback
+ cb: PostgresCallback,
+ attributes: Attributes,
+ recordDuration: { (): void }
): PostgresCallback {
return function patchedCallback(
this: PgClientExtended,
@@ -244,7 +255,10 @@ export function patchCallback(
res: object
) {
if (err) {
- // span.recordException(err);
+ if (Object.prototype.hasOwnProperty.call(err, 'code')) {
+ attributes[ATTR_ERROR_TYPE] = (err as any)['code'];
+ }
+
span.setStatus({
code: SpanStatusCode.ERROR,
message: err.message,
@@ -253,11 +267,56 @@ export function patchCallback(
handleExecutionResult(instrumentationConfig, span, res);
}
+ recordDuration();
span.end();
cb.call(this, err, res);
};
}
+export function getPoolName(pool: PgPoolOptionsParams): string {
+ let poolName = '';
+ poolName += (pool?.host ? `${pool.host}` : 'unknown_host') + ':';
+ poolName += (pool?.port ? `${pool.port}` : 'unknown_port') + '/';
+ poolName += pool?.database ? `${pool.database}` : 'unknown_database';
+
+ return poolName.trim();
+}
+
+export interface poolConnectionsCounter {
+ used: number;
+ idle: number;
+ pending: number;
+}
+
+export function updateCounter(
+ poolName: string,
+ pool: PgPoolExtended,
+ connectionCount: UpDownCounter,
+ connectionPendingRequests: UpDownCounter,
+ latestCounter: poolConnectionsCounter
+): poolConnectionsCounter {
+ const all = pool.totalCount;
+ const pending = pool.waitingCount;
+ const idle = pool.idleCount;
+ const used = all - idle;
+
+ connectionCount.add(used - latestCounter.used, {
+ [ATTR_DB_CLIENT_CONNECTION_STATE]: DB_CLIENT_CONNECTION_STATE_VALUE_USED,
+ [ATTR_DB_CLIENT_CONNECTION_POOL_NAME]: poolName,
+ });
+
+ connectionCount.add(idle - latestCounter.idle, {
+ [ATTR_DB_CLIENT_CONNECTION_STATE]: DB_CLIENT_CONNECTION_STATE_VALUE_IDLE,
+ [ATTR_DB_CLIENT_CONNECTION_POOL_NAME]: poolName,
+ });
+
+ connectionPendingRequests.add(pending - latestCounter.pending, {
+ [ATTR_DB_CLIENT_CONNECTION_POOL_NAME]: poolName,
+ });
+
+ return { used: used, idle: idle, pending: pending };
+}
+
export function patchCallbackPGPool(
span: Span,
cb: PgPoolCallback
diff --git a/plugins/node/opentelemetry-instrumentation-pg/test/pg-pool.test.ts b/plugins/node/opentelemetry-instrumentation-pg/test/pg-pool.test.ts
index 62bfaf1711..f0ac1508d9 100644
--- a/plugins/node/opentelemetry-instrumentation-pg/test/pg-pool.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-pg/test/pg-pool.test.ts
@@ -50,6 +50,12 @@ import {
SEMATTRS_DB_USER,
SEMATTRS_DB_STATEMENT,
} from '@opentelemetry/semantic-conventions';
+import {
+ ATTR_DB_CLIENT_CONNECTION_STATE,
+ METRIC_DB_CLIENT_CONNECTION_COUNT,
+ METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS,
+ METRIC_DB_CLIENT_OPERATION_DURATION,
+} from '@opentelemetry/semantic-conventions/incubating';
const memoryExporter = new InMemorySpanExporter();
@@ -180,7 +186,7 @@ describe('pg-pool', () => {
describe('#pool.connect()', () => {
// promise - checkout a client
it('should intercept pool.connect()', async () => {
- const pgPoolattributes = {
+ const pgPoolAttributes = {
...DEFAULT_PGPOOL_ATTRIBUTES,
};
const pgAttributes = {
@@ -191,7 +197,7 @@ describe('pg-pool', () => {
const span = provider.getTracer('test-pg-pool').startSpan('test span');
await context.with(trace.setSpan(context.active(), span), async () => {
const client = await pool.connect();
- runCallbackTest(span, pgPoolattributes, events, unsetStatus, 2, 1);
+ runCallbackTest(span, pgPoolAttributes, events, unsetStatus, 2, 1);
const [connectSpan, poolConnectSpan] =
memoryExporter.getFinishedSpans();
@@ -212,7 +218,7 @@ describe('pg-pool', () => {
// callback - checkout a client
it('should not return a promise if callback is provided', done => {
- const pgPoolattributes = {
+ const pgPoolAttributes = {
...DEFAULT_PGPOOL_ATTRIBUTES,
};
const pgAttributes = {
@@ -237,7 +243,7 @@ describe('pg-pool', () => {
assert.ok(client);
runCallbackTest(
parentSpan,
- pgPoolattributes,
+ pgPoolAttributes,
events,
unsetStatus,
1,
@@ -276,6 +282,7 @@ describe('pg-pool', () => {
await client.query('SELECT NOW()');
} finally {
client.release();
+ await newPool.end();
}
const spans = memoryExporter.getFinishedSpans();
assert.strictEqual(spans.length, 0);
@@ -285,7 +292,7 @@ describe('pg-pool', () => {
describe('#pool.query()', () => {
// promise
it('should call patched client.query()', async () => {
- const pgPoolattributes = {
+ const pgPoolAttributes = {
...DEFAULT_PGPOOL_ATTRIBUTES,
};
const pgAttributes = {
@@ -296,7 +303,7 @@ describe('pg-pool', () => {
const span = provider.getTracer('test-pg-pool').startSpan('test span');
await context.with(trace.setSpan(context.active(), span), async () => {
const result = await pool.query('SELECT NOW()');
- runCallbackTest(span, pgPoolattributes, events, unsetStatus, 2, 0);
+ runCallbackTest(span, pgPoolAttributes, events, unsetStatus, 2, 0);
runCallbackTest(span, pgAttributes, events, unsetStatus, 2, 1);
assert.ok(result, 'pool.query() returns a promise');
});
@@ -304,7 +311,7 @@ describe('pg-pool', () => {
// callback
it('should not return a promise if callback is provided', done => {
- const pgPoolattributes = {
+ const pgPoolAttributes = {
...DEFAULT_PGPOOL_ATTRIBUTES,
};
const pgAttributes = {
@@ -322,7 +329,7 @@ describe('pg-pool', () => {
}
runCallbackTest(
parentSpan,
- pgPoolattributes,
+ pgPoolAttributes,
events,
unsetStatus,
2,
@@ -341,7 +348,7 @@ describe('pg-pool', () => {
const events: TimedEvent[] = [];
describe('AND valid responseHook', () => {
- const pgPoolattributes = {
+ const pgPoolAttributes = {
...DEFAULT_PGPOOL_ATTRIBUTES,
};
const pgAttributes = {
@@ -375,7 +382,7 @@ describe('pg-pool', () => {
}
runCallbackTest(
parentSpan,
- pgPoolattributes,
+ pgPoolAttributes,
events,
unsetStatus,
2,
@@ -409,7 +416,7 @@ describe('pg-pool', () => {
const result = await pool.query(query);
runCallbackTest(
span,
- pgPoolattributes,
+ pgPoolAttributes,
events,
unsetStatus,
2,
@@ -423,7 +430,7 @@ describe('pg-pool', () => {
});
describe('AND invalid responseHook', () => {
- const pgPoolattributes = {
+ const pgPoolAttributes = {
...DEFAULT_PGPOOL_ATTRIBUTES,
};
const pgAttributes = {
@@ -456,7 +463,7 @@ describe('pg-pool', () => {
runCallbackTest(
parentSpan,
- pgPoolattributes,
+ pgPoolAttributes,
events,
unsetStatus,
2,
@@ -482,4 +489,395 @@ describe('pg-pool', () => {
});
});
});
+
+ describe('pg metrics', () => {
+ let metricReader: testUtils.TestMetricReader;
+
+ beforeEach(() => {
+ metricReader = testUtils.initMeterProvider(instrumentation);
+ });
+
+ it('should generate `db.client.connection.count` and `db.client.connection.pending_requests` metrics', done => {
+ pool.connect((err, client, release) => {
+ if (err) {
+ throw new Error(err.message);
+ }
+ if (!release) {
+ throw new Error('Did not receive release function');
+ }
+ if (!client) {
+ throw new Error('No client received');
+ }
+ assert.ok(client);
+
+ client.query('SELECT NOW()', async (err, ret) => {
+ release();
+ if (err) {
+ throw new Error(err.message);
+ }
+ assert.ok(ret);
+
+ const { resourceMetrics, errors } = await metricReader.collect();
+ assert.deepEqual(
+ errors,
+ [],
+ 'expected no errors from the callback during metric collection'
+ );
+
+ const metrics = resourceMetrics.scopeMetrics[0].metrics;
+ assert.strictEqual(
+ metrics[0].descriptor.name,
+ METRIC_DB_CLIENT_OPERATION_DURATION
+ );
+
+ assert.strictEqual(
+ metrics[1].descriptor.name,
+ METRIC_DB_CLIENT_CONNECTION_COUNT
+ );
+ assert.strictEqual(
+ metrics[1].descriptor.description,
+ 'The number of connections that are currently in state described by the state attribute.'
+ );
+ assert.strictEqual(
+ metrics[1].dataPoints[0].attributes[
+ ATTR_DB_CLIENT_CONNECTION_STATE
+ ],
+ 'used'
+ );
+ assert.strictEqual(
+ metrics[1].dataPoints[0].value,
+ 1,
+ 'expected to have 1 used connection'
+ );
+ assert.strictEqual(
+ metrics[1].dataPoints[1].attributes[
+ ATTR_DB_CLIENT_CONNECTION_STATE
+ ],
+ 'idle'
+ );
+ assert.strictEqual(
+ metrics[1].dataPoints[1].value,
+ 0,
+ 'expected to have 0 idle connections'
+ );
+
+ assert.strictEqual(
+ metrics[2].descriptor.name,
+ METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS
+ );
+ assert.strictEqual(
+ metrics[2].descriptor.description,
+ 'The number of current pending requests for an open connection.'
+ );
+ assert.strictEqual(
+ metrics[2].dataPoints[0].value,
+ 0,
+ 'expected to have 0 pending requests'
+ );
+ done();
+ });
+ });
+ });
+
+ it('should generate `db.client.*` metrics (Promises-style)', async (...args) => {
+ const client = await pool.connect();
+
+ try {
+ const ret = await client.query('SELECT NOW()');
+ assert.ok(ret);
+ } finally {
+ client.release();
+ }
+
+ const { resourceMetrics, errors } = await metricReader.collect();
+ assert.deepEqual(
+ errors,
+ [],
+ 'expected no errors from the callback during metric collection'
+ );
+
+ // We just test the expected metric *names* here. The particulars of the
+ // metric values are already tested in other test cases.
+ const metrics = resourceMetrics.scopeMetrics[0].metrics;
+ assert.strictEqual(
+ metrics[0].descriptor.name,
+ METRIC_DB_CLIENT_OPERATION_DURATION
+ );
+ assert.strictEqual(
+ metrics[1].descriptor.name,
+ METRIC_DB_CLIENT_CONNECTION_COUNT
+ );
+ assert.strictEqual(
+ metrics[2].descriptor.name,
+ METRIC_DB_CLIENT_CONNECTION_PENDING_REQUESTS
+ );
+ });
+
+ it('should not add duplicate event listeners to PgPool events', done => {
+ const poolAux: pgPool = new pgPool(CONFIG);
+ let completed = 0;
+ poolAux.connect((err, client, release) => {
+ if (err) {
+ throw new Error(err.message);
+ }
+ if (!release) {
+ throw new Error('Did not receive release function');
+ }
+ if (!client) {
+ throw new Error('No client received');
+ }
+ assert.ok(client);
+ release();
+
+ assert.equal(
+ poolAux.listenerCount('connect'),
+ 1,
+ `${poolAux.listenerCount('connect')} event listener(s) for 'connect'`
+ );
+ assert.equal(
+ poolAux.listenerCount('acquire'),
+ 1,
+ `${poolAux.listenerCount('acquire')} event listener(s) for 'acquire'`
+ );
+ assert.equal(
+ poolAux.listenerCount('remove'),
+ 1,
+ `${poolAux.listenerCount('remove')} event listener(s) for 'remove'`
+ );
+ assert.equal(
+ poolAux.listenerCount('release'),
+ 1,
+ `${poolAux.listenerCount('release')} event listener(s) for 'release'`
+ );
+
+ completed++;
+ if (completed >= 2) {
+ done();
+ }
+ });
+
+ poolAux.connect((err, client, release) => {
+ if (err) {
+ throw new Error(err.message);
+ }
+ if (!release) {
+ throw new Error('Did not receive release function');
+ }
+ if (!client) {
+ throw new Error('No client received');
+ }
+ assert.ok(client);
+ release();
+
+ assert.equal(
+ poolAux.listenerCount('connect'),
+ 1,
+ `${poolAux.listenerCount('connect')} event listener(s) for 'connect'`
+ );
+ assert.equal(
+ poolAux.listenerCount('acquire'),
+ 1,
+ `${poolAux.listenerCount('acquire')} event listener(s) for 'acquire'`
+ );
+ assert.equal(
+ poolAux.listenerCount('remove'),
+ 1,
+ `${poolAux.listenerCount('remove')} event listener(s) for 'remove'`
+ );
+ assert.equal(
+ poolAux.listenerCount('release'),
+ 1,
+ `${poolAux.listenerCount('release')} event listener(s) for 'release'`
+ );
+
+ completed++;
+ if (completed >= 2) {
+ done();
+ }
+ });
+ });
+
+ it('adding a custom event listener should still work with the default event listeners to PgPool events', done => {
+ const poolAux: pgPool = new pgPool(CONFIG);
+ let testValue = 0;
+ poolAux.on('connect', () => {
+ testValue = 1;
+ });
+
+ poolAux.connect((err, client, release) => {
+ if (err) {
+ throw new Error(err.message);
+ }
+ if (!release) {
+ throw new Error('Did not receive release function');
+ }
+ if (!client) {
+ throw new Error('No client received');
+ }
+ assert.ok(client);
+
+ client.query('SELECT NOW()', async (err, ret) => {
+ release();
+ if (err) {
+ throw new Error(err.message);
+ }
+ assert.ok(ret);
+ assert.equal(
+ poolAux.listenerCount('connect'),
+ 2,
+ `${poolAux.listenerCount(
+ 'connect'
+ )} event listener(s) for 'connect'`
+ );
+ assert.equal(
+ poolAux.listenerCount('acquire'),
+ 1,
+ `${poolAux.listenerCount(
+ 'acquire'
+ )} event listener(s) for 'acquire'`
+ );
+ assert.equal(
+ poolAux.listenerCount('remove'),
+ 1,
+ `${poolAux.listenerCount('remove')} event listener(s) for 'remove'`
+ );
+ assert.equal(
+ poolAux.listenerCount('release'),
+ 1,
+ `${poolAux.listenerCount(
+ 'release'
+ )} event listener(s) for 'release'`
+ );
+ assert.equal(testValue, 1);
+
+ const { resourceMetrics, errors } = await metricReader.collect();
+ assert.deepEqual(
+ errors,
+ [],
+ 'expected no errors from the callback during metric collection'
+ );
+
+ const metrics = resourceMetrics.scopeMetrics[0].metrics;
+ assert.strictEqual(
+ metrics[1].descriptor.name,
+ METRIC_DB_CLIENT_CONNECTION_COUNT
+ );
+ assert.strictEqual(
+ metrics[1].dataPoints[0].attributes[
+ ATTR_DB_CLIENT_CONNECTION_STATE
+ ],
+ 'used'
+ );
+ assert.strictEqual(
+ metrics[1].dataPoints[0].value,
+ 1,
+ 'expected to have 1 used connection'
+ );
+ done();
+ });
+ });
+ });
+
+ it('when creating multiple pools, all of them should be instrumented', done => {
+ const pool1: pgPool = new pgPool(CONFIG);
+ const pool2: pgPool = new pgPool(CONFIG);
+
+ let completed = 0;
+ pool1.connect((err, client, release) => {
+ if (err) {
+ throw new Error(err.message);
+ }
+ if (!release) {
+ throw new Error('Did not receive release function');
+ }
+ if (!client) {
+ throw new Error('No client received');
+ }
+ assert.ok(client);
+ release();
+
+ assert.equal(
+ pool1.listenerCount('connect'),
+ 1,
+ `${pool1.listenerCount(
+ 'connect'
+ )} event listener(s) for 'connect' on pool1`
+ );
+ assert.equal(
+ pool1.listenerCount('acquire'),
+ 1,
+ `${pool1.listenerCount(
+ 'acquire'
+ )} event listener(s) for 'acquire' on pool1`
+ );
+ assert.equal(
+ pool1.listenerCount('remove'),
+ 1,
+ `${pool1.listenerCount(
+ 'remove'
+ )} event listener(s) for 'remove' on pool1`
+ );
+ assert.equal(
+ pool1.listenerCount('release'),
+ 1,
+ `${pool1.listenerCount(
+ 'release'
+ )} event listener(s) for 'release' on pool1`
+ );
+
+ completed++;
+ if (completed >= 2) {
+ done();
+ }
+ });
+
+ pool2.connect((err, client, release) => {
+ if (err) {
+ throw new Error(err.message);
+ }
+ if (!release) {
+ throw new Error('Did not receive release function');
+ }
+ if (!client) {
+ throw new Error('No client received');
+ }
+ assert.ok(client);
+ release();
+
+ assert.equal(
+ pool2.listenerCount('connect'),
+ 1,
+ `${pool2.listenerCount(
+ 'connect'
+ )} event listener(s) for 'connect' on pool2`
+ );
+ assert.equal(
+ pool2.listenerCount('acquire'),
+ 1,
+ `${pool2.listenerCount(
+ 'acquire'
+ )} event listener(s) for 'acquire' on pool2`
+ );
+ assert.equal(
+ pool2.listenerCount('remove'),
+ 1,
+ `${pool2.listenerCount(
+ 'remove'
+ )} event listener(s) for 'remove' on pool2`
+ );
+ assert.equal(
+ pool2.listenerCount('release'),
+ 1,
+ `${pool2.listenerCount(
+ 'release'
+ )} event listener(s) for 'release' on pool2`
+ );
+
+ completed++;
+ if (completed >= 2) {
+ done();
+ }
+ });
+ });
+ });
});
diff --git a/plugins/node/opentelemetry-instrumentation-pg/test/pg.test.ts b/plugins/node/opentelemetry-instrumentation-pg/test/pg.test.ts
index eb2e847328..b7169ec785 100644
--- a/plugins/node/opentelemetry-instrumentation-pg/test/pg.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-pg/test/pg.test.ts
@@ -30,6 +30,7 @@ import {
InMemorySpanExporter,
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
+import { DataPoint, Histogram } from '@opentelemetry/sdk-metrics';
import * as assert from 'assert';
import type * as pg from 'pg';
import * as sinon from 'sinon';
@@ -50,7 +51,12 @@ import {
SEMATTRS_NET_PEER_PORT,
SEMATTRS_DB_USER,
DBSYSTEMVALUES_POSTGRESQL,
+ ATTR_ERROR_TYPE,
} from '@opentelemetry/semantic-conventions';
+import {
+ METRIC_DB_CLIENT_OPERATION_DURATION,
+ ATTR_DB_OPERATION_NAME,
+} from '@opentelemetry/semantic-conventions/incubating';
import { addSqlCommenterComment } from '@opentelemetry/sql-common';
const memoryExporter = new InMemorySpanExporter();
@@ -847,15 +853,9 @@ describe('pg', () => {
const [span] = memoryExporter.getFinishedSpans();
assert.ok(span);
- const commentedQuery = addSqlCommenterComment(
- trace.wrapSpanContext(span.spanContext()),
- query
- );
-
const executedQueries = getExecutedQueries();
assert.equal(executedQueries.length, 1);
assert.equal(executedQueries[0].text, query);
- assert.notEqual(query, commentedQuery);
} catch (e: any) {
assert.ok(false, e.message);
}
@@ -873,15 +873,11 @@ describe('pg', () => {
assert.ok(res);
const [span] = memoryExporter.getFinishedSpans();
- const commentedQuery = addSqlCommenterComment(
- trace.wrapSpanContext(span.spanContext()),
- query
- );
+ assert.ok(span);
const executedQueries = getExecutedQueries();
assert.equal(executedQueries.length, 1);
assert.equal(executedQueries[0].text, query);
- assert.notEqual(query, commentedQuery);
done();
},
} as pg.QueryConfig);
@@ -946,6 +942,33 @@ describe('pg', () => {
});
});
+ it('should not add sqlcommenter comment when addSqlCommenterCommentToQueries=true is specified with a prepared statement', async () => {
+ instrumentation.setConfig({
+ addSqlCommenterCommentToQueries: true,
+ });
+
+ const span = tracer.startSpan('test span');
+ await context.with(trace.setSpan(context.active(), span), async () => {
+ try {
+ const query = 'SELECT NOW()';
+ const resPromise = await client.query({
+ text: query,
+ name: 'prepared sqlcommenter',
+ });
+ assert.ok(resPromise);
+
+ const [span] = memoryExporter.getFinishedSpans();
+ assert.ok(span);
+
+ const executedQueries = getExecutedQueries();
+ assert.equal(executedQueries.length, 1);
+ assert.equal(executedQueries[0].text, query);
+ } catch (e: any) {
+ assert.ok(false, e.message);
+ }
+ });
+ });
+
it('should not generate traces for client.query() when requireParentSpan=true is specified', done => {
instrumentation.setConfig({
requireParentSpan: true,
@@ -960,4 +983,107 @@ describe('pg', () => {
});
});
});
+
+ describe('pg metrics', () => {
+ let metricReader: testUtils.TestMetricReader;
+
+ beforeEach(() => {
+ metricReader = testUtils.initMeterProvider(instrumentation);
+ });
+
+ it('should generate db.client.operation.duration metric', done => {
+ client.query('SELECT NOW()', async (_, ret) => {
+ assert.ok(ret, 'query should be executed');
+
+ const { resourceMetrics, errors } = await metricReader.collect();
+ assert.deepEqual(
+ errors,
+ [],
+ 'expected no errors from the callback during metric collection'
+ );
+
+ const metrics = resourceMetrics.scopeMetrics[0].metrics;
+ assert.strictEqual(
+ metrics[0].descriptor.name,
+ METRIC_DB_CLIENT_OPERATION_DURATION
+ );
+ assert.strictEqual(
+ metrics[0].descriptor.description,
+ 'Duration of database client operations.'
+ );
+ const dataPoint = metrics[0].dataPoints[0];
+ assert.strictEqual(
+ dataPoint.attributes[SEMATTRS_DB_SYSTEM],
+ DBSYSTEMVALUES_POSTGRESQL
+ );
+ assert.strictEqual(
+ dataPoint.attributes[ATTR_DB_OPERATION_NAME],
+ 'SELECT'
+ );
+ assert.strictEqual(dataPoint.attributes[ATTR_ERROR_TYPE], undefined);
+
+ const v = (dataPoint as DataPoint).value;
+ v.min = v.min ? v.min : 0;
+ v.max = v.max ? v.max : 0;
+ assert.equal(
+ v.min > 0,
+ true,
+ 'expect min value for Histogram to be greater than 0'
+ );
+ assert.equal(
+ v.max > 0,
+ true,
+ 'expect max value for Histogram to be greater than 0'
+ );
+ done();
+ });
+ });
+
+ it('should generate db.client.operation.duration metric with error attribute', done => {
+ client.query('SELECT foo from bar', async (err, ret) => {
+ assert.notEqual(err, null);
+ const { resourceMetrics, errors } = await metricReader.collect();
+ assert.deepEqual(
+ errors,
+ [],
+ 'expected no errors from the callback during metric collection'
+ );
+
+ const metrics = resourceMetrics.scopeMetrics[0].metrics;
+ assert.strictEqual(
+ metrics[0].descriptor.name,
+ METRIC_DB_CLIENT_OPERATION_DURATION
+ );
+ assert.strictEqual(
+ metrics[0].descriptor.description,
+ 'Duration of database client operations.'
+ );
+ const dataPoint = metrics[0].dataPoints[0];
+ assert.strictEqual(
+ dataPoint.attributes[SEMATTRS_DB_SYSTEM],
+ DBSYSTEMVALUES_POSTGRESQL
+ );
+ assert.strictEqual(
+ dataPoint.attributes[ATTR_DB_OPERATION_NAME],
+ 'SELECT'
+ );
+ assert.strictEqual(dataPoint.attributes[ATTR_ERROR_TYPE], '42P01');
+
+ const v = (dataPoint as DataPoint).value;
+ v.min = v.min ? v.min : 0;
+ v.max = v.max ? v.max : 0;
+ assert.equal(
+ v.min > 0,
+ true,
+ 'expect min value for Histogram to be greater than 0'
+ );
+ assert.equal(
+ v.max > 0,
+ true,
+ 'expect max value for Histogram to be greater than 0'
+ );
+ done();
+ });
+ });
+ });
});
diff --git a/plugins/node/opentelemetry-instrumentation-pg/test/utils.test.ts b/plugins/node/opentelemetry-instrumentation-pg/test/utils.test.ts
index 41ab6e5621..a76bb61988 100644
--- a/plugins/node/opentelemetry-instrumentation-pg/test/utils.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-pg/test/utils.test.ts
@@ -26,7 +26,7 @@ import * as assert from 'assert';
import * as pg from 'pg';
import { PgInstrumentationConfig } from '../src';
import { AttributeNames } from '../src/enums/AttributeNames';
-import { PgClientExtended } from '../src/internal-types';
+import { PgClientExtended, PgPoolOptionsParams } from '../src/internal-types';
import * as utils from '../src/utils';
import { SEMATTRS_NET_PEER_PORT } from '@opentelemetry/semantic-conventions';
@@ -238,4 +238,22 @@ describe('utils.ts', () => {
);
});
});
+
+ describe('.getPoolName()', () => {
+ it('creation of pool name based on pool config', () => {
+ const dummyPool: PgPoolOptionsParams = {
+ host: 'host_name',
+ port: 1234,
+ user: 'username',
+ database: 'database_name',
+ idleTimeoutMillis: 10,
+ maxClient: 5,
+ };
+
+ assert.strictEqual(
+ utils.getPoolName(dummyPool),
+ 'host_name:1234/database_name'
+ );
+ });
+ });
});
diff --git a/plugins/node/opentelemetry-instrumentation-pino/.tav.yml b/plugins/node/opentelemetry-instrumentation-pino/.tav.yml
index 94d5d5f97e..737cc73989 100644
--- a/plugins/node/opentelemetry-instrumentation-pino/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-pino/.tav.yml
@@ -1,10 +1,11 @@
pino:
- - versions: "^9.0.0"
+ - versions:
+ include: '>=9.0.0 <10'
+ mode: latest-minors
node: ">=18"
commands: npm run test
- - versions: "^8.21.0 || 8.20.0 || 8.16.2 || 8.12.1 || 8.8.0 || 8.4.0 || 8.0.0 || ^7.11.0 || 7.8.0 || 7.2.0 || ^6.13.3 || 5.17.0 || 5.14.0"
+ - versions:
+ include: '>=5.14.0 <9'
+ mode: max-7
node: ">=14"
commands: npm run test
- - versions: "^7.11.0 || 7.8.0 || 7.2.0 || ^6.13.1 || 5.17.0 || 5.14.0"
- node: ">=8 <14"
- commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md
index 0e5355a848..73c7418747 100644
--- a/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-pino/CHANGELOG.md
@@ -1,5 +1,49 @@
# Changelog
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pino-v0.42.0...instrumentation-pino-v0.43.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pino-v0.41.0...instrumentation-pino-v0.42.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pino-v0.40.0...instrumentation-pino-v0.41.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Features
+
+* **instrumentation-pino:** add log sending to Logs Bridge API ([#2249](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2249)) ([055ef41](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/055ef417ade05072421c1cee9f8221ce731bdf89))
+
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-pino-v0.39.0...instrumentation-pino-v0.40.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-pino/README.md b/plugins/node/opentelemetry-instrumentation-pino/README.md
index a4038c5f57..bbd6fa9e5c 100644
--- a/plugins/node/opentelemetry-instrumentation-pino/README.md
+++ b/plugins/node/opentelemetry-instrumentation-pino/README.md
@@ -3,7 +3,7 @@
[![NPM Published Version][npm-img]][npm-url]
[![Apache License][license-image]][license-image]
-This module provides automatic instrumentation for injection of trace context for the [`pino`](https://www.npmjs.com/package/pino) module, which may be loaded using the [`@opentelemetry/sdk-trace-node`](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node) package and is included in the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle.
+This module provides automatic instrumentation of the [`pino`](https://www.npmjs.com/package/pino) module to inject trace-context into Pino log records (log correlation) and to send Pino logging to the OpenTelemetry Logging SDK (log sending). It may be loaded using the [`@opentelemetry/sdk-trace-node`](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node) package and is included in the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle.
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience.
@@ -15,60 +15,105 @@ Compatible with OpenTelemetry JS API and SDK `1.0+`.
npm install --save @opentelemetry/instrumentation-pino
```
+## Supported Versions
+
+- [`pino`](https://www.npmjs.com/package/pino) versions `>=5.14.0 <10`
+ - The "log sending" feature is only supported in pino v7 and later.
+
## Usage
```js
-const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
+const { NodeSDK, tracing, logs, api } = require('@opentelemetry/sdk-node');
const { PinoInstrumentation } = require('@opentelemetry/instrumentation-pino');
-const { registerInstrumentations } = require('@opentelemetry/instrumentation');
-
-const provider = new NodeTracerProvider();
-provider.register();
-
-registerInstrumentations({
+const sdk = new NodeSDK({
+ spanProcessor: new tracing.SimpleSpanProcessor(new tracing.ConsoleSpanExporter()),
+ logRecordProcessor: new logs.SimpleLogRecordProcessor(new logs.ConsoleLogRecordExporter()),
instrumentations: [
new PinoInstrumentation({
- // Optional hook to insert additional context to log object.
- logHook: (span, record, level) => {
- record['resource.service.name'] =
- provider.resource.attributes['service.name'];
- },
- // Log span context under custom keys
- // This is optional, and will default to "trace_id", "span_id" and "trace_flags" as the keys
- logKeys: {
- traceId: 'traceId',
- spanId: 'spanId',
- traceFlags: 'traceFlags',
- },
+ // See below for Pino instrumentation options.
}),
- // other instrumentations
- ],
-});
+ ]
+})
+sdk.start();
const pino = require('pino');
const logger = pino();
-logger.info('foobar');
-// {"msg":"foobar","trace_id":"fc30029f30df383a4090d3189fe0ffdf","span_id":"625fa861d19d1056","trace_flags":"01", ...}
+
+logger.info('hi');
+// 1. Log records will be sent to the SDK-registered log record processor, if any.
+// This is called "log sending".
+
+const tracer = api.trace.getTracer('example');
+tracer.startActiveSpan('manual-span', span => {
+ logger.info('in a span');
+ // 2. Fields identifying the current span will be added to log records:
+ // {"level":30,...,"msg":"in a span","trace_id":"d61b4e4af1032e0aae279d12f3ab0159","span_id":"d140da862204f2a2","trace_flags":"01"}
+ // This feature is called "log correlation".
+});
```
-### Fields added to pino log objects
+### Log sending
+
+Creation of a Pino Logger will automatically add a [Pino destination](https://getpino.io/#/docs/api?id=pinooptions-destination-gt-logger) that sends log records to the OpenTelemetry Logs SDK. The OpenTelemetry SDK can be configured to handle those records -- for example, sending them on to an OpenTelemetry collector for log archiving and processing. The example above shows a minimal configuration that emits OpenTelemetry log records to the console for debugging.
-For the current active span, the following fields are injected. These field names can be optionally configured via `logKeys` in the PinoInstrumentation config:
+If the OpenTelemetry SDK is not configured with a Logger provider, then this added destination will be a no-op.
+
+Log sending can be disabled with the `disableLogSending: true` option.
+
+### Log correlation
+
+Pino logger calls in the context of a tracing span will have fields identifying the span added to the log record. This allows [correlating](https://opentelemetry.io/docs/specs/otel/logs/#log-correlation) log records with tracing data. The added fields are ([spec](https://opentelemetry.io/docs/specs/otel/compatibility/logging_trace_context/)):
- `trace_id`
- `span_id`
- `trace_flags`
+These field names can optionally be configured via the `logKeys` option. For example:
+
+```js
+ new PinoInstrumentation({
+ logKeys: {
+ traceId: 'myTraceId',
+ spanId: 'mySpanId',
+ traceFlags: 'myTraceFlags',
+ },
+ }),
+```
+
+After adding these fields, the optional `logHook` is called to allow injecting additional fields. For example:
+
+```js
+ logHook: (span, record) => {
+ record['resource.service.name'] = provider.resource.attributes['service.name'];
+ }
+```
+
When no span context is active or the span context is invalid, injection is skipped.
+Log injection can be disabled with the `disableLogCorrelation: true` option.
-### Supported versions
+### Pino instrumentation options
-`>=5.14.0 <10`
+| Option | Type | Description |
+| ----------------------- | ----------------- | ----------- |
+| `disableLogSending` | `boolean` | Whether to disable [log sending](#log-sending). Default `false`. |
+| `disableLogCorrelation` | `boolean` | Whether to disable [log correlation](#log-correlation). Default `false`. |
+| `logKeys` | record | A record with keys `traceId`, `spanId`, and `traceFlags` string fields giving the field names to use for log-correlation span data. |
+| `logHook` | `LogHookFunction` | An option hook to inject additional context to a log record after trace-context has been added. This requires `disableLogCorrelation` to be false. |
## Semantic Conventions
This package does not currently generate any attributes from semantic conventions.
+## Alternative log sending with `pino-opentelemetry-transport`
+
+A possible alternative to the "log sending" support provided by this instrumentation is the [`pino-opentelemetry-transport` package](https://github.com/pinojs/pino-opentelemetry-transport).
+
+Every Pino logger has an output ["destination"](https://getpino.io/#/docs/api?id=destination), for example, a file or stdout. Since v7, Pino includes support for ["transports"](https://getpino.io/#/docs/transports), a type of destination that uses a [worker thread](https://nodejs.org/api/worker_threads.html) to run the transport code. When calling `logger.info("hi")`, Pino serializes the log record to a JSON string, [sends that string to the worker](https://nodejs.org/api/worker_threads.html#workerpostmessagevalue-transferlist) for it to be handled.
+
+The `pino-opentelemetry-transport` package uses this mechanism. It starts an OpenTelemetry SDK `LoggerProvider` in the worker thread, parses each log record string, translates it into the OpenTelemetry Logs data model and sends it. Note that this `LoggerProvider` is independent of any OpenTelemetry SDK components in the main thread.
+
+The log sending support in this instrumentation works on the main thread and uses the OpenTelemetry SDK configured in the main thread. Otherwise the two mechanisms are very similar. Note that because they are maintained separately, there might be small differences in how Pino log records are translated into the OpenTelemetry Logs data model.
+
## Useful links
- For more information on OpenTelemetry, visit:
diff --git a/plugins/node/opentelemetry-instrumentation-pino/package.json b/plugins/node/opentelemetry-instrumentation-pino/package.json
index 3d5bb458b1..fcc4a233e2 100644
--- a/plugins/node/opentelemetry-instrumentation-pino/package.json
+++ b/plugins/node/opentelemetry-instrumentation-pino/package.json
@@ -1,18 +1,18 @@
{
"name": "@opentelemetry/instrumentation-pino",
- "version": "0.40.0",
+ "version": "0.43.0",
"description": "OpenTelemetry instrumentation for `pino` logger",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"test-all-versions": "tav",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-pino --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
@@ -45,25 +45,26 @@
},
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/semver": "7.5.3",
- "@types/sinon": "10.0.18",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/semver": "7.5.8",
+ "@types/sinon": "10.0.20",
"nyc": "15.1.0",
"pino": "8.3.1",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/api-logs": "^0.54.0",
+ "@opentelemetry/core": "^1.25.0",
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-pino#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-pino/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-pino/src/instrumentation.ts
index f7dc81f034..ef16fdda40 100644
--- a/plugins/node/opentelemetry-instrumentation-pino/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-pino/src/instrumentation.ts
@@ -27,7 +27,9 @@ import {
safeExecuteInTheMiddle,
} from '@opentelemetry/instrumentation';
import { PinoInstrumentationConfig } from './types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
+import { getTimeConverter, OTelPinoStream } from './log-sending-utils';
const pinoVersions = ['>=5.14.0 <10'];
@@ -37,7 +39,7 @@ const DEFAULT_LOG_KEYS = {
traceFlags: 'trace_flags',
};
-export class PinoInstrumentation extends InstrumentationBase {
+export class PinoInstrumentation extends InstrumentationBase {
constructor(config: PinoInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -48,30 +50,73 @@ export class PinoInstrumentation extends InstrumentationBase {
const isESM = module[Symbol.toStringTag] === 'Module';
const moduleExports = isESM ? module.default : module;
const instrumentation = this;
+
const patchedPino = Object.assign((...args: unknown[]) => {
- if (args.length === 0) {
- return moduleExports({
- mixin: instrumentation._getMixinFunction(),
- });
+ const config = instrumentation.getConfig();
+ const isEnabled = instrumentation.isEnabled();
+
+ const logger = moduleExports(...args);
+
+ // Setup "log correlation" -- injection of `trace_id` et al fields.
+ // Note: If the Pino logger is configured with `nestedKey`, then
+ // the `trace_id` et al fields added by `otelMixin` will be nested
+ // as well. https://getpino.io/#/docs/api?id=mixin-function
+ const otelMixin = instrumentation._getMixinFunction();
+ const mixinSym = moduleExports.symbols.mixinSym;
+ const origMixin = logger[mixinSym];
+ if (origMixin === undefined) {
+ logger[mixinSym] = otelMixin;
+ } else {
+ logger[mixinSym] = (ctx: object, level: number) => {
+ return Object.assign(
+ otelMixin(ctx, level),
+ origMixin(ctx, level)
+ );
+ };
}
- if (args.length === 1) {
- // eslint-disable-next-line @typescript-eslint/no-explicit-any
- const optsOrStream = args[0] as any;
- if (
- typeof optsOrStream === 'string' ||
- typeof optsOrStream?.write === 'function'
- ) {
- args.splice(0, 0, {
- mixin: instrumentation._getMixinFunction(),
- });
- return moduleExports(...args);
- }
- }
+ // Setup "log sending" -- sending log records to the Logs API.
+ // This depends on `pino.multistream`, which was added in v7.0.0.
+ if (
+ isEnabled &&
+ !config.disableLogSending &&
+ typeof moduleExports.multistream === 'function'
+ ) {
+ const otelTimestampFromTime = getTimeConverter(
+ logger,
+ moduleExports
+ );
+ const otelStream = new OTelPinoStream({
+ messageKey: logger[moduleExports.symbols.messageKeySym],
+ levels: logger.levels,
+ otelTimestampFromTime,
+ });
+ (otelStream as any)[Symbol.for('pino.metadata')] = true; // for `stream.lastLevel`
+
+ // An error typically indicates a Pino bug, or logger configuration
+ // bug. `diag.warn` *once* for the first error on the assumption
+ // subsequent ones stem from the same bug.
+ otelStream.once('unknown', (line, err) => {
+ instrumentation._diag.warn(
+ 'could not send pino log line (will only log first occurrence)',
+ { line, err }
+ );
+ });
- args[0] = instrumentation._combineOptions(args[0]);
+ // Use pino's own `multistream` to send to the original stream and
+ // to the OTel Logs API/SDK.
+ // https://getpino.io/#/docs/api?id=pinomultistreamstreamsarray-opts-gt-multistreamres
+ const origStream = logger[moduleExports.symbols.streamSym];
+ logger[moduleExports.symbols.streamSym] = moduleExports.multistream(
+ [
+ { level: logger.level, stream: origStream },
+ { level: logger.level, stream: otelStream },
+ ],
+ { levels: logger.levels.values }
+ );
+ }
- return moduleExports(...args);
+ return logger;
}, moduleExports);
if (typeof patchedPino.pino === 'function') {
@@ -80,6 +125,7 @@ export class PinoInstrumentation extends InstrumentationBase {
if (typeof patchedPino.default === 'function') {
patchedPino.default = patchedPino;
}
+ /* istanbul ignore if */
if (isESM) {
if (module.pino) {
// This was added in pino@6.8.0 (https://github.com/pinojs/pino/pull/936).
@@ -93,23 +139,15 @@ export class PinoInstrumentation extends InstrumentationBase {
];
}
- override getConfig(): PinoInstrumentationConfig {
- return this._config;
- }
-
- override setConfig(config: PinoInstrumentationConfig = {}) {
- this._config = config;
- }
-
private _callHook(span: Span, record: Record, level: number) {
- const hook = this.getConfig().logHook;
+ const { logHook } = this.getConfig();
- if (!hook) {
+ if (!logHook) {
return;
}
safeExecuteInTheMiddle(
- () => hook(span, record, level),
+ () => logHook(span, record, level),
err => {
if (err) {
diag.error('pino instrumentation: error calling logHook', err);
@@ -122,7 +160,10 @@ export class PinoInstrumentation extends InstrumentationBase {
private _getMixinFunction() {
const instrumentation = this;
return function otelMixin(_context: object, level: number) {
- if (!instrumentation.isEnabled()) {
+ if (
+ !instrumentation.isEnabled() ||
+ instrumentation.getConfig().disableLogCorrelation
+ ) {
return {};
}
@@ -151,27 +192,4 @@ export class PinoInstrumentation extends InstrumentationBase {
return record;
};
}
-
- private _combineOptions(options?: any) {
- if (options === undefined) {
- return { mixin: this._getMixinFunction() };
- }
-
- if (options.mixin === undefined) {
- options.mixin = this._getMixinFunction();
- return options;
- }
-
- const originalMixin = options.mixin;
- const otelMixin = this._getMixinFunction();
-
- options.mixin = (context: object, level: number) => {
- return Object.assign(
- otelMixin(context, level),
- originalMixin(context, level)
- );
- };
-
- return options;
- }
}
diff --git a/plugins/node/opentelemetry-instrumentation-pino/src/log-sending-utils.ts b/plugins/node/opentelemetry-instrumentation-pino/src/log-sending-utils.ts
new file mode 100644
index 0000000000..defb8d3685
--- /dev/null
+++ b/plugins/node/opentelemetry-instrumentation-pino/src/log-sending-utils.ts
@@ -0,0 +1,242 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import { Writable } from 'stream';
+
+import { logs, Logger, SeverityNumber } from '@opentelemetry/api-logs';
+/** @knipignore */
+import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
+import { millisToHrTime } from '@opentelemetry/core';
+
+// This block is a copy (modulo code style and TypeScript types) of the Pino
+// code that defines log level value and names. This file is part of
+// *instrumenting* Pino, so we want to avoid a dependency on the library.
+const DEFAULT_LEVELS = {
+ trace: 10,
+ debug: 20,
+ info: 30,
+ warn: 40,
+ error: 50,
+ fatal: 60,
+};
+
+const OTEL_SEV_NUM_FROM_PINO_LEVEL: { [level: number]: SeverityNumber } = {
+ [DEFAULT_LEVELS.trace]: SeverityNumber.TRACE,
+ [DEFAULT_LEVELS.debug]: SeverityNumber.DEBUG,
+ [DEFAULT_LEVELS.info]: SeverityNumber.INFO,
+ [DEFAULT_LEVELS.warn]: SeverityNumber.WARN,
+ [DEFAULT_LEVELS.error]: SeverityNumber.ERROR,
+ [DEFAULT_LEVELS.fatal]: SeverityNumber.FATAL,
+};
+
+const EXTRA_SEV_NUMS = [
+ SeverityNumber.TRACE2,
+ SeverityNumber.TRACE3,
+ SeverityNumber.TRACE4,
+ SeverityNumber.DEBUG2,
+ SeverityNumber.DEBUG3,
+ SeverityNumber.DEBUG4,
+ SeverityNumber.INFO2,
+ SeverityNumber.INFO3,
+ SeverityNumber.INFO4,
+ SeverityNumber.WARN2,
+ SeverityNumber.WARN3,
+ SeverityNumber.WARN4,
+ SeverityNumber.ERROR2,
+ SeverityNumber.ERROR3,
+ SeverityNumber.ERROR4,
+ SeverityNumber.FATAL2,
+ SeverityNumber.FATAL3,
+ SeverityNumber.FATAL4,
+];
+
+function severityNumberFromPinoLevel(lvl: number) {
+ // Fast common case: one of the known levels
+ const sev = OTEL_SEV_NUM_FROM_PINO_LEVEL[lvl];
+ if (sev !== undefined) {
+ return sev;
+ }
+
+ // Otherwise, scale the Pino level range -- 10 (trace) to 70 (fatal+10)
+ // -- onto the extra OTel severity numbers (TRACE2, TRACE3, ..., FATAL4).
+ // Values below trace (10) map to SeverityNumber.TRACE2, which may be
+ // considered a bit weird, but it means the unnumbered levels are always
+ // just for exactly matching values.
+ const relativeLevelWeight = (lvl - 10) / (70 - 10);
+ const otelSevIdx = Math.floor(relativeLevelWeight * EXTRA_SEV_NUMS.length);
+ const cappedOTelIdx = Math.min(
+ EXTRA_SEV_NUMS.length - 1,
+ Math.max(0, otelSevIdx)
+ );
+ const otelSevValue = EXTRA_SEV_NUMS[cappedOTelIdx];
+ return otelSevValue;
+}
+
+/**
+ * Return a function that knows how to convert the "time" field value on a
+ * Pino log record to an OTel LogRecord timestamp value.
+ *
+ * How to convert the serialized "time" on a Pino log record
+ * depends on the Logger's `Symbol(pino.time)` prop, configurable
+ * via https://getpino.io/#/docs/api?id=timestamp-boolean-function
+ *
+ * For example:
+ * const logger = pino({timestamp: pino.stdTimeFunctions.isoTime})
+ * results in log record entries of the form:
+ * ,"time":"2024-05-17T22:03:25.969Z"
+ * `otelTimestampFromTime` will be given the value of the "time" field:
+ * "2024-05-17T22:03:25.969Z"
+ * which should be parsed to a number of milliseconds since the epoch.
+ */
+export function getTimeConverter(pinoLogger: any, pinoMod: any) {
+ const stdTimeFns = pinoMod.stdTimeFunctions;
+ const loggerTimeFn = pinoLogger[pinoMod.symbols.timeSym];
+ if (loggerTimeFn === stdTimeFns.epochTime) {
+ return (time: number) => time;
+ } else if (loggerTimeFn === stdTimeFns.unixTime) {
+ return (time: number) => time * 1e3;
+ } else if (loggerTimeFn === stdTimeFns.isoTime) {
+ return (time: string) => new Date(time).getTime();
+ } else if (loggerTimeFn === stdTimeFns.nullTime) {
+ return () => Date.now();
+ } else {
+ // The logger has a custom time function. Don't guess.
+ return () => NaN;
+ }
+}
+
+interface OTelPinoStreamOptions {
+ messageKey: string;
+ levels: any; // Pino.LevelMapping
+ otelTimestampFromTime: (time: any) => number;
+}
+
+/**
+ * A Pino stream for sending records to the OpenTelemetry Logs API.
+ *
+ * - This stream emits an 'unknown' event on an unprocessable pino record.
+ * The event arguments are: `logLine: string`, `err: string | Error`.
+ */
+export class OTelPinoStream extends Writable {
+ private _otelLogger: Logger;
+ private _messageKey: string;
+ private _levels;
+ private _otelTimestampFromTime;
+
+ constructor(options: OTelPinoStreamOptions) {
+ super();
+
+ // Note: A PINO_CONFIG event was added to pino (2024-04-04) to send config
+ // to transports. Eventually OTelPinoStream might be able to use this
+ // for auto-configuration in newer pino versions. The event currently does
+ // not include the `timeSym` value that is needed here, however.
+ this._messageKey = options.messageKey;
+ this._levels = options.levels;
+ this._otelTimestampFromTime = options.otelTimestampFromTime;
+
+ // Cannot use `instrumentation.logger` until have delegating LoggerProvider:
+ // https://github.com/open-telemetry/opentelemetry-js/issues/4399
+ this._otelLogger = logs.getLogger(PACKAGE_NAME, PACKAGE_VERSION);
+ }
+
+ override _write(s: string, _encoding: string, callback: Function) {
+ /* istanbul ignore if */
+ if (!s) {
+ return;
+ }
+
+ // Parse, and handle edge cases similar to how `pino-abtract-transport` does:
+ // https://github.com/pinojs/pino-abstract-transport/blob/v1.2.0/index.js#L28-L45
+ // - Emitting an 'unknown' event on parse error mimicks pino-abstract-transport.
+ let recObj;
+ try {
+ recObj = JSON.parse(s);
+ } catch (parseErr) {
+ // Invalid JSON suggests a bug in Pino, or a logger configuration bug
+ // (a bogus `options.timestamp` or serializer).
+ this.emit('unknown', s.toString(), parseErr);
+ callback();
+ return;
+ }
+ /* istanbul ignore if */
+ if (recObj === null) {
+ this.emit('unknown', s.toString(), 'Null value ignored');
+ callback();
+ return;
+ }
+ /* istanbul ignore if */
+ if (typeof recObj !== 'object') {
+ recObj = {
+ data: recObj,
+ };
+ }
+
+ const {
+ time,
+ [this._messageKey]: body,
+ level, // eslint-disable-line @typescript-eslint/no-unused-vars
+
+ // The typical Pino `hostname` and `pid` fields are removed because they
+ // are redundant with the OpenTelemetry `host.name` and `process.pid`
+ // Resource attributes, respectively. This code cannot change the
+ // LoggerProvider's `resource`, so getting the OpenTelemetry equivalents
+ // depends on the user using the OpenTelemetry HostDetector and
+ // ProcessDetector.
+ // https://getpino.io/#/docs/api?id=opt-base
+ hostname, // eslint-disable-line @typescript-eslint/no-unused-vars
+ pid, // eslint-disable-line @typescript-eslint/no-unused-vars
+
+ // The `trace_id` et al fields that may have been added by the
+ // "log correlation" feature are stripped, because they are redundant.
+ trace_id, // eslint-disable-line @typescript-eslint/no-unused-vars
+ span_id, // eslint-disable-line @typescript-eslint/no-unused-vars
+ trace_flags, // eslint-disable-line @typescript-eslint/no-unused-vars
+
+ ...attributes
+ } = recObj;
+
+ let timestamp = this._otelTimestampFromTime(time);
+ if (isNaN(timestamp)) {
+ attributes['time'] = time; // save the unexpected "time" field to attributes
+ timestamp = Date.now();
+ }
+
+ // This avoids a possible subtle bug when a Pino logger uses
+ // `time: pino.stdTimeFunctions.unixTime` and logs in the first half-second
+ // since process start. The rounding involved results in:
+ // timestamp < performance.timeOrigin
+ // If that is passed to Logger.emit() it will be misinterpreted by
+ // `timeInputToHrTime` as a `performance.now()` value.
+ const timestampHrTime = millisToHrTime(timestamp);
+
+ // Prefer using `stream.lastLevel`, because `recObj.level` can be customized
+ // to anything via `formatters.level`
+ // (https://getpino.io/#/docs/api?id=formatters-object).
+ const lastLevel = (this as any).lastLevel;
+
+ const otelRec = {
+ timestamp: timestampHrTime,
+ observedTimestamp: timestampHrTime,
+ severityNumber: severityNumberFromPinoLevel(lastLevel),
+ severityText: this._levels.labels[lastLevel],
+ body,
+ attributes,
+ };
+
+ this._otelLogger.emit(otelRec);
+ callback();
+ }
+}
diff --git a/plugins/node/opentelemetry-instrumentation-pino/src/types.ts b/plugins/node/opentelemetry-instrumentation-pino/src/types.ts
index 52484885a7..43fabc5065 100644
--- a/plugins/node/opentelemetry-instrumentation-pino/src/types.ts
+++ b/plugins/node/opentelemetry-instrumentation-pino/src/types.ts
@@ -25,9 +25,31 @@ export type LogHookFunction = (
) => void;
export interface PinoInstrumentationConfig extends InstrumentationConfig {
+ /**
+ * Whether to disable the automatic sending of log records to the
+ * OpenTelemetry Logs SDK.
+ * @default false
+ */
+ disableLogSending?: boolean;
+
+ /**
+ * Whether to disable the injection trace-context fields, and possibly other
+ * fields from `logHook()`, into log records for log correlation.
+ * @default false
+ */
+ disableLogCorrelation?: boolean;
+
+ /**
+ * A function that allows injecting additional fields in log records. It is
+ * called, as `logHook(span, record)`, for each log record emitted in a valid
+ * span context. It requires `disableLogCorrelation` to be false.
+ */
logHook?: LogHookFunction;
- /** Configure the names of field injected into logs when there is span context available. */
+ /**
+ * Configure the names of field injected into logs when there is span context
+ * available.
+ */
logKeys?: {
traceId: string;
spanId: string;
diff --git a/plugins/node/opentelemetry-instrumentation-pino/test/pino.test.ts b/plugins/node/opentelemetry-instrumentation-pino/test/pino.test.ts
index 4b0936452d..6f03e197cd 100644
--- a/plugins/node/opentelemetry-instrumentation-pino/test/pino.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-pino/test/pino.test.ts
@@ -20,17 +20,28 @@ import { Writable } from 'stream';
import * as semver from 'semver';
import * as sinon from 'sinon';
import { INVALID_SPAN_CONTEXT, context, trace, Span } from '@opentelemetry/api';
+import { diag, DiagLogLevel } from '@opentelemetry/api';
+import { hrTimeToMilliseconds } from '@opentelemetry/core';
+import { SEMRESATTRS_SERVICE_NAME } from '@opentelemetry/semantic-conventions';
+import { Resource } from '@opentelemetry/resources';
import {
InMemorySpanExporter,
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
import { NodeTracerProvider } from '@opentelemetry/sdk-trace-node';
+import { logs, SeverityNumber } from '@opentelemetry/api-logs';
+import {
+ LoggerProvider,
+ SimpleLogRecordProcessor,
+ InMemoryLogRecordExporter,
+} from '@opentelemetry/sdk-logs';
import {
runTestFixture,
TestCollector,
} from '@opentelemetry/contrib-test-utils';
import { PinoInstrumentation, PinoInstrumentationConfig } from '../src';
+import { PACKAGE_NAME, PACKAGE_VERSION } from '../src/version';
import type { pino as Pino } from 'pino';
@@ -41,6 +52,15 @@ tracerProvider.addSpanProcessor(
);
const tracer = tracerProvider.getTracer('default');
+// Setup LoggerProvider for "log sending" tests.
+const resource = new Resource({
+ [SEMRESATTRS_SERVICE_NAME]: 'test-instrumentation-pino',
+});
+const loggerProvider = new LoggerProvider({ resource });
+const memExporter = new InMemoryLogRecordExporter();
+loggerProvider.addLogRecordProcessor(new SimpleLogRecordProcessor(memExporter));
+logs.setGlobalLoggerProvider(loggerProvider);
+
const instrumentation = new PinoInstrumentation();
const pino = require('pino');
@@ -113,6 +133,7 @@ describe('PinoInstrumentation', () => {
beforeEach(() => {
instrumentation.setConfig({}); // reset to defaults
+ memExporter.getFinishedLogRecords().length = 0; // clear
stream = new Writable();
stream._write = () => {};
writeSpy = sinon.spy(stream, 'write');
@@ -228,6 +249,27 @@ describe('PinoInstrumentation', () => {
});
});
+ it('does not inject or call logHook if disableLogCorrelation=true', () => {
+ instrumentation.setConfig({
+ disableLogCorrelation: true,
+ logHook: (_span, record) => {
+ record['resource.service.name'] = 'test-service';
+ },
+ });
+ tracer.startActiveSpan('abc', span => {
+ logger.info('foo');
+ span.end();
+
+ sinon.assert.calledOnce(writeSpy);
+ const record = JSON.parse(writeSpy.firstCall.args[0].toString());
+ assert.strictEqual('foo', record['msg']);
+ assert.strictEqual(record['trace_id'], undefined);
+ assert.strictEqual(record['span_id'], undefined);
+ assert.strictEqual(record['trace_flags'], undefined);
+ assert.strictEqual(record['resource.service.name'], undefined);
+ });
+ });
+
it('instrumentation of `pino.default(...)` works', function () {
if (!pino.default) {
this.skip();
@@ -349,6 +391,334 @@ describe('PinoInstrumentation', () => {
});
});
+ describe('log sending', () => {
+ let logger: Pino.Logger;
+ let stream: Writable;
+ let writeSpy: sinon.SinonSpy;
+
+ before(function () {
+ if (typeof pino.multistream !== 'function') {
+ this.skip();
+ }
+ });
+
+ beforeEach(() => {
+ instrumentation.setConfig({}); // reset to defaults
+ memExporter.getFinishedLogRecords().length = 0; // clear
+ stream = new Writable();
+ stream._write = () => {};
+ writeSpy = sinon.spy(stream, 'write');
+ logger = pino(
+ {
+ name: 'test-logger-name',
+ level: 'debug',
+ },
+ stream
+ );
+ });
+
+ it('emits log records to Logs SDK', () => {
+ const logRecords = memExporter.getFinishedLogRecords();
+
+ // levels
+ logger.silent('silent');
+ logger.trace('at trace level');
+ logger.debug('at debug level');
+ logger.info('at info level');
+ logger.warn('at warn level');
+ logger.error('at error level');
+ logger.fatal('at fatal level');
+ assert.strictEqual(logRecords.length, 5);
+ assert.strictEqual(logRecords[0].severityNumber, SeverityNumber.DEBUG);
+ assert.strictEqual(logRecords[0].severityText, 'debug');
+ assert.strictEqual(logRecords[1].severityNumber, SeverityNumber.INFO);
+ assert.strictEqual(logRecords[1].severityText, 'info');
+ assert.strictEqual(logRecords[2].severityNumber, SeverityNumber.WARN);
+ assert.strictEqual(logRecords[2].severityText, 'warn');
+ assert.strictEqual(logRecords[3].severityNumber, SeverityNumber.ERROR);
+ assert.strictEqual(logRecords[3].severityText, 'error');
+ assert.strictEqual(logRecords[4].severityNumber, SeverityNumber.FATAL);
+ assert.strictEqual(logRecords[4].severityText, 'fatal');
+
+ // attributes, resource, instrumentationScope, etc.
+ logger.info({ foo: 'bar' }, 'a message');
+ const rec = logRecords[logRecords.length - 1];
+ assert.strictEqual(rec.body, 'a message');
+ assert.deepStrictEqual(rec.attributes, {
+ name: 'test-logger-name',
+ foo: 'bar',
+ });
+ assert.strictEqual(
+ rec.resource.attributes['service.name'],
+ 'test-instrumentation-pino'
+ );
+ assert.strictEqual(rec.instrumentationScope.name, PACKAGE_NAME);
+ assert.strictEqual(rec.instrumentationScope.version, PACKAGE_VERSION);
+ assert.strictEqual(rec.spanContext, undefined);
+
+ // spanContext
+ tracer.startActiveSpan('abc', span => {
+ logger.info('in active span');
+ span.end();
+
+ const { traceId, spanId, traceFlags } = span.spanContext();
+ const rec = logRecords[logRecords.length - 1];
+ assert.strictEqual(rec.spanContext?.traceId, traceId);
+ assert.strictEqual(rec.spanContext?.spanId, spanId);
+ assert.strictEqual(rec.spanContext?.traceFlags, traceFlags);
+
+ // This rec should *NOT* have the `trace_id` et al attributes.
+ assert.strictEqual(rec.attributes.trace_id, undefined);
+ assert.strictEqual(rec.attributes.span_id, undefined);
+ assert.strictEqual(rec.attributes.trace_flags, undefined);
+ });
+ });
+
+ it('does not emit to the Logs SDK if disableLogSending=true', () => {
+ instrumentation.setConfig({ disableLogSending: true });
+
+ // Changing `disableLogSending` only has an impact on Loggers created
+ // *after* it is set. So we cannot test with the `logger` created in
+ // `beforeEach()` above.
+ logger = pino({ name: 'test-logger-name' }, stream);
+
+ tracer.startActiveSpan('abc', span => {
+ logger.info('foo');
+ span.end();
+
+ assert.strictEqual(memExporter.getFinishedLogRecords().length, 0);
+
+ // Test log correlation still works.
+ const { traceId, spanId } = span.spanContext();
+ sinon.assert.calledOnce(writeSpy);
+ const record = JSON.parse(writeSpy.firstCall.args[0].toString());
+ assert.strictEqual('foo', record['msg']);
+ assert.strictEqual(record['trace_id'], traceId);
+ assert.strictEqual(record['span_id'], spanId);
+ });
+ });
+
+ it('edge case: non-time "time" field is stored in attributes', () => {
+ const logRecords = memExporter.getFinishedLogRecords();
+
+ // Pino will emit a JSON object with two "time" fields, e.g.
+ // {...,"time":1716933636063,...,"time":"miller"}
+ // JSON *parsing* rules are that the last duplicate key wins, so it
+ // would be nice to maintain that "time" attribute if possible.
+ logger.info({ time: 'miller' }, 'hi');
+ const rec = logRecords[logRecords.length - 1];
+ assert.deepEqual(
+ rec.hrTime.map(n => typeof n),
+ ['number', 'number']
+ );
+ assert.strictEqual(rec.attributes.time, 'miller');
+ });
+
+ it('edge case: custom "timestamp" option', () => {
+ let otelRec, pinoRec;
+ const logRecords = memExporter.getFinishedLogRecords();
+
+ logger = pino({ timestamp: false }, stream);
+ logger.info('using false');
+ otelRec = logRecords[logRecords.length - 1];
+ pinoRec = JSON.parse(writeSpy.lastCall.args[0].toString());
+ assert.deepEqual(
+ otelRec.hrTime.map(n => typeof n),
+ ['number', 'number']
+ );
+ assert.strictEqual(pinoRec.time, undefined);
+
+ logger = pino({ timestamp: pino.stdTimeFunctions.epochTime }, stream);
+ logger.info('using epochTime');
+ otelRec = logRecords[logRecords.length - 1];
+ pinoRec = JSON.parse(writeSpy.lastCall.args[0].toString());
+ assert.strictEqual(hrTimeToMilliseconds(otelRec.hrTime), pinoRec.time);
+
+ logger = pino({ timestamp: pino.stdTimeFunctions.unixTime }, stream);
+ logger.info('using unixTime');
+ otelRec = logRecords[logRecords.length - 1];
+ pinoRec = JSON.parse(writeSpy.lastCall.args[0].toString());
+ assert.strictEqual(
+ hrTimeToMilliseconds(otelRec.hrTime),
+ pinoRec.time * 1e3
+ );
+
+ logger = pino({ timestamp: pino.stdTimeFunctions.isoTime }, stream);
+ logger.info('using isoTime');
+ otelRec = logRecords[logRecords.length - 1];
+ pinoRec = JSON.parse(writeSpy.lastCall.args[0].toString());
+ assert.strictEqual(
+ hrTimeToMilliseconds(otelRec.hrTime),
+ new Date(pinoRec.time).getTime()
+ );
+
+ logger = pino({ timestamp: () => ',"time":"quittin"' }, stream);
+ logger.info('using custom timestamp fn');
+ otelRec = logRecords[logRecords.length - 1];
+ pinoRec = JSON.parse(writeSpy.lastCall.args[0].toString());
+ assert.deepEqual(
+ otelRec.hrTime.map(n => typeof n),
+ ['number', 'number']
+ );
+ assert.strictEqual(pinoRec.time, 'quittin');
+ assert.strictEqual(otelRec.attributes.time, 'quittin');
+ });
+
+ // A custom 'timestamp' fn that returns invalid data will result in a Pino
+ // log record line that is invalid JSON. We expect the OTel stream to
+ // gracefully handle this.
+ it('edge case: error parsing pino log line', () => {
+ const logRecords = memExporter.getFinishedLogRecords();
+
+ const diagWarns = [] as any;
+ // This messily leaves the diag logger set for other tests.
+ diag.setLogger(
+ {
+ verbose() {},
+ debug() {},
+ info() {},
+ warn(...args) {
+ diagWarns.push(args);
+ },
+ error() {},
+ },
+ DiagLogLevel.WARN
+ );
+
+ logger = pino({ timestamp: () => 'invalid JSON' }, stream);
+ logger.info('using custom timestamp fn returning bogus result');
+ assert.strictEqual(logRecords.length, 0);
+ assert.ok(writeSpy.lastCall.args[0].toString().includes('invalid JSON'));
+ assert.equal(diagWarns.length, 1);
+ assert.ok(diagWarns[0][1].includes('could not send pino log line'));
+ });
+
+ it('edge case: customLevels', () => {
+ let rec;
+ const logRecords = memExporter.getFinishedLogRecords();
+
+ logger = pino(
+ {
+ customLevels: {
+ foo: pino.levels.values.warn,
+ bar: pino.levels.values.warn - 1, // a little closer to INFO
+ baz: pino.levels.values.warn + 1, // a little above WARN
+ },
+ },
+ stream
+ );
+
+ (logger as any).foo('foomsg');
+ rec = logRecords[logRecords.length - 1];
+ assert.strictEqual(rec.severityNumber, SeverityNumber.WARN);
+ assert.strictEqual(rec.severityText, 'foo');
+
+ (logger as any).bar('barmsg');
+ rec = logRecords[logRecords.length - 1];
+ assert.strictEqual(rec.severityNumber, SeverityNumber.INFO4);
+ assert.strictEqual(rec.severityText, 'bar');
+
+ (logger as any).baz('bazmsg');
+ rec = logRecords[logRecords.length - 1];
+ assert.strictEqual(rec.severityNumber, SeverityNumber.WARN2);
+ assert.strictEqual(rec.severityText, 'baz');
+ });
+
+ it('edge case: customLevels and formatters.level', () => {
+ logger = pino(
+ {
+ customLevels: {
+ foo: pino.levels.values.warn,
+ bar: pino.levels.values.warn - 1, // a little closer to INFO
+ },
+ formatters: {
+ level(label: string, _num: number) {
+ return { level: label };
+ },
+ },
+ },
+ stream
+ );
+
+ const logRecords = memExporter.getFinishedLogRecords();
+ (logger as any).foo('foomsg');
+ const otelRec = logRecords[logRecords.length - 1];
+ assert.strictEqual(otelRec.severityNumber, SeverityNumber.WARN);
+ assert.strictEqual(otelRec.severityText, 'foo');
+
+ sinon.assert.calledOnce(writeSpy);
+ const pinoRec = JSON.parse(writeSpy.firstCall.args[0].toString());
+ assert.equal((pinoRec as any).level, 'foo');
+ });
+
+ it('edge case: customLevels and useOnlyCustomLevels', () => {
+ let rec;
+ const logRecords = memExporter.getFinishedLogRecords();
+
+ logger = pino(
+ {
+ customLevels: {
+ foo: pino.levels.values.warn,
+ bar: pino.levels.values.warn - 1, // a little closer to INFO
+ },
+ useOnlyCustomLevels: true,
+ level: 'bar',
+ },
+ stream
+ );
+
+ (logger as any).foo('foomsg');
+ rec = logRecords[logRecords.length - 1];
+ assert.strictEqual(rec.severityNumber, SeverityNumber.WARN);
+ assert.strictEqual(rec.severityText, 'foo');
+
+ (logger as any).bar('barmsg');
+ rec = logRecords[logRecords.length - 1];
+ assert.strictEqual(rec.severityNumber, SeverityNumber.INFO4);
+ assert.strictEqual(rec.severityText, 'bar');
+ });
+
+ // We use multistream internally to write to the OTel SDK. This test ensures
+ // that multistream wrapping of a multistream works.
+ it('edge case: multistream', () => {
+ const logRecords = memExporter.getFinishedLogRecords();
+
+ const stream2 = new Writable();
+ stream2._write = () => {};
+ const writeSpy2 = sinon.spy(stream2, 'write');
+
+ logger = pino(
+ {},
+ pino.multistream([{ stream: stream }, { stream: stream2 }])
+ );
+ logger.info('using multistream');
+
+ const otelRec = logRecords[logRecords.length - 1];
+ assert.equal(otelRec.body, 'using multistream');
+
+ sinon.assert.calledOnce(writeSpy);
+ const pinoRec = JSON.parse(writeSpy.firstCall.args[0].toString());
+ assert.equal((pinoRec as any).msg, 'using multistream');
+
+ sinon.assert.calledOnce(writeSpy2);
+ const pinoRec2 = JSON.parse(writeSpy2.firstCall.args[0].toString());
+ assert.equal((pinoRec2 as any).msg, 'using multistream');
+ });
+
+ it('edge case: messageKey', () => {
+ logger = pino({ messageKey: 'mymsg' }, stream);
+ logger.info('using messageKey');
+
+ const logRecords = memExporter.getFinishedLogRecords();
+ const otelRec = logRecords[logRecords.length - 1];
+ assert.equal(otelRec.body, 'using messageKey');
+
+ sinon.assert.calledOnce(writeSpy);
+ const pinoRec = JSON.parse(writeSpy.firstCall.args[0].toString());
+ assert.equal((pinoRec as any).mymsg, 'using messageKey');
+ });
+ });
+
describe('ESM usage', () => {
it('should work with ESM default import', async function () {
let logRecords: any[];
diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/.tav.yml b/plugins/node/opentelemetry-instrumentation-redis-4/.tav.yml
index 2a13580b74..8890082e4c 100644
--- a/plugins/node/opentelemetry-instrumentation-redis-4/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-redis-4/.tav.yml
@@ -1,7 +1,7 @@
redis:
- jobs:
- # The latest minor releases in the range "^4.0.0", excluding
- # "4.6.9", which was a bad release that accidentally broke
- # node v14 support.
- - versions: "4.0.0 || 4.0.6 || 4.1.1 || 4.2.0 || 4.3.1 || 4.4.0 || 4.5.1 || ^4.6.11"
- commands: npm run test
+ versions:
+ include: "^4.0.0"
+ # "4.6.9" was a bad release that accidentally broke node v14 support.
+ exclude: "4.6.9"
+ mode: latest-minors
+ commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md
index d926bf9d23..d9506f4478 100644
--- a/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-redis-4/CHANGELOG.md
@@ -1,5 +1,58 @@
# Changelog
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-4-v0.42.1...instrumentation-redis-4-v0.43.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.42.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-4-v0.42.0...instrumentation-redis-4-v0.42.1) (2024-10-08)
+
+
+### Bug Fixes
+
+* **instrumentation-redis-4:** avoid diag.error spam when configured client URL is the empty string ([#2399](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2399)) ([ec3b9c8](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/ec3b9c87aa2c79dc8cdcb4023df71dcafc6f08a4)), closes [#2389](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2389)
+
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-4-v0.41.1...instrumentation-redis-4-v0.42.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.41.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-4-v0.41.0...instrumentation-redis-4-v0.41.1) (2024-08-27)
+
+
+### Bug Fixes
+
+* **instrumentation-redis-4:** avoid crash from incorrect this._diag ref ([#2397](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2397)) ([de7a6cb](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/de7a6cb77e643ed0de82e514510089fba5ae0405)), closes [#2389](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2389)
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-4-v0.40.0...instrumentation-redis-4-v0.41.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-4-v0.39.0...instrumentation-redis-4-v0.40.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/README.md b/plugins/node/opentelemetry-instrumentation-redis-4/README.md
index 19eea1b33a..a8e9449d4b 100644
--- a/plugins/node/opentelemetry-instrumentation-redis-4/README.md
+++ b/plugins/node/opentelemetry-instrumentation-redis-4/README.md
@@ -17,7 +17,8 @@ npm install --save @opentelemetry/instrumentation-redis-4
### Supported Versions
-This package supports `redis@^4.0.0`
+- [`redis`](https://www.npmjs.com/package/redis) versions `>=4.0.0`
+
For versions `redis@^2.6.0` and `redis@^3.0.0`, please use `@opentelemetry/instrumentation-redis`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/package.json b/plugins/node/opentelemetry-instrumentation-redis-4/package.json
index f28faa3784..4639be7f20 100644
--- a/plugins/node/opentelemetry-instrumentation-redis-4/package.json
+++ b/plugins/node/opentelemetry-instrumentation-redis-4/package.json
@@ -1,13 +1,13 @@
{
"name": "@opentelemetry/instrumentation-redis-4",
- "version": "0.40.0",
+ "version": "0.43.0",
"description": "OpenTelemetry instrumentation for `redis` v4 database client for Redis",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json --require '@opentelemetry/contrib-test-utils' 'test/redis.test.ts'",
- "test:debug": "cross-env RUN_REDIS_TESTS_LOCAL=true ts-mocha --inspect-brk --no-timeouts -p tsconfig.json 'test/redis.test.ts'",
+ "test": "nyc mocha --require '@opentelemetry/contrib-test-utils' 'test/redis.test.ts'",
+ "test:debug": "cross-env RUN_REDIS_TESTS_LOCAL=true mocha --inspect-brk --no-timeouts test/redis.test.ts",
"test:local": "cross-env RUN_REDIS_TESTS_LOCAL=true npm run test",
"test:docker:run": "docker run --rm -d --name otel-redis -p 63790:6379 redis:alpine",
"test:docker:stop": "docker stop otel-redis",
@@ -17,7 +17,7 @@
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-redis-4 --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc -p .",
@@ -50,25 +50,23 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/core": "^1.8.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"cross-env": "7.0.3",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"redis": "4.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
"@opentelemetry/redis-common": "^0.36.2",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-redis-4#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-redis-4/src/instrumentation.ts
index d62eceaa2c..cbbbb0aab1 100644
--- a/plugins/node/opentelemetry-instrumentation-redis-4/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-redis-4/src/instrumentation.ts
@@ -30,6 +30,7 @@ import {
import { getClientAttributes } from './utils';
import { defaultDbStatementSerializer } from '@opentelemetry/redis-common';
import { RedisInstrumentationConfig } from './types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import { SEMATTRS_DB_STATEMENT } from '@opentelemetry/semantic-conventions';
import type { MultiErrorReply } from './internal-types';
@@ -51,17 +52,15 @@ const DEFAULT_CONFIG: RedisInstrumentationConfig = {
requireParentSpan: false,
};
-export class RedisInstrumentation extends InstrumentationBase {
+export class RedisInstrumentation extends InstrumentationBase {
static readonly COMPONENT = 'redis';
- protected override _config!: RedisInstrumentationConfig;
-
constructor(config: RedisInstrumentationConfig = {}) {
- super(PACKAGE_NAME, PACKAGE_VERSION, config);
+ super(PACKAGE_NAME, PACKAGE_VERSION, { ...DEFAULT_CONFIG, ...config });
}
override setConfig(config: RedisInstrumentationConfig = {}) {
- this._config = Object.assign({}, DEFAULT_CONFIG, config);
+ super.setConfig({ ...DEFAULT_CONFIG, ...config });
}
protected init() {
@@ -337,7 +336,7 @@ export class RedisInstrumentation extends InstrumentationBase {
return function patchedConnect(this: any): Promise {
const options = this.options;
- const attributes = getClientAttributes(this._diag, options);
+ const attributes = getClientAttributes(plugin._diag, options);
const span = plugin.tracer.startSpan(
`${RedisInstrumentation.COMPONENT}-connect`,
@@ -376,7 +375,7 @@ export class RedisInstrumentation extends InstrumentationBase {
redisCommandArguments: Array
) {
const hasNoParentSpan = trace.getSpan(context.active()) === undefined;
- if (hasNoParentSpan && this._config?.requireParentSpan) {
+ if (hasNoParentSpan && this.getConfig().requireParentSpan) {
return origFunction.apply(origThis, origArguments);
}
@@ -386,7 +385,7 @@ export class RedisInstrumentation extends InstrumentationBase {
const commandArgs = redisCommandArguments.slice(1);
const dbStatementSerializer =
- this._config?.dbStatementSerializer || defaultDbStatementSerializer;
+ this.getConfig().dbStatementSerializer || defaultDbStatementSerializer;
const attributes = getClientAttributes(this._diag, clientOptions);
@@ -474,9 +473,10 @@ export class RedisInstrumentation extends InstrumentationBase {
response: unknown,
error: Error | undefined
) {
- if (!error && this._config.responseHook) {
+ const { responseHook } = this.getConfig();
+ if (!error && responseHook) {
try {
- this._config.responseHook(span, commandName, commandArgs, response);
+ responseHook(span, commandName, commandArgs, response);
} catch (err) {
this._diag.error('responseHook throw an exception', err);
}
diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/src/utils.ts b/plugins/node/opentelemetry-instrumentation-redis-4/src/utils.ts
index 7bdbf768ac..b7cc79628d 100644
--- a/plugins/node/opentelemetry-instrumentation-redis-4/src/utils.ts
+++ b/plugins/node/opentelemetry-instrumentation-redis-4/src/utils.ts
@@ -46,7 +46,7 @@ function removeCredentialsFromDBConnectionStringAttribute(
diag: DiagLogger,
url?: unknown
): string | undefined {
- if (typeof url !== 'string') {
+ if (typeof url !== 'string' || !url) {
return;
}
diff --git a/plugins/node/opentelemetry-instrumentation-redis-4/test/redis.test.ts b/plugins/node/opentelemetry-instrumentation-redis-4/test/redis.test.ts
index 6200b4c1eb..14b439e797 100644
--- a/plugins/node/opentelemetry-instrumentation-redis-4/test/redis.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-redis-4/test/redis.test.ts
@@ -13,6 +13,8 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
+
+import { diag, DiagLogLevel } from '@opentelemetry/api';
import {
getTestSpans,
registerInstrumentationTesting,
@@ -288,6 +290,36 @@ describe('redis@^4.0.0', () => {
expectAttributeConnString
);
});
+
+ it('with empty string for client URL, there is no crash and no diag.error', async () => {
+ // Note: This messily leaves the diag logger set for other tests.
+ const diagErrors = [] as any;
+ diag.setLogger(
+ {
+ verbose() {},
+ debug() {},
+ info() {},
+ warn() {},
+ error(...args) {
+ diagErrors.push(args);
+ },
+ },
+ DiagLogLevel.WARN
+ );
+
+ const newClient = createClient({ url: '' });
+ try {
+ await newClient.connect();
+ } catch (_err) {
+ // Ignore. If the test Redis is not at the default port we expect this
+ // to error.
+ }
+ await newClient.disconnect();
+
+ const [span] = getTestSpans();
+ assert.strictEqual(span.name, 'redis-connect');
+ assert.strictEqual(diagErrors.length, 0, "no diag.error's");
+ });
});
describe('multi (transactions) commands', () => {
diff --git a/plugins/node/opentelemetry-instrumentation-redis/.tav.yml b/plugins/node/opentelemetry-instrumentation-redis/.tav.yml
index c6b5a4154f..81020bc78f 100644
--- a/plugins/node/opentelemetry-instrumentation-redis/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-redis/.tav.yml
@@ -1,3 +1,5 @@
redis:
- versions: ^2.6.0 || ^3.0.0
+ versions:
+ include: '>=2.6.0 <4'
+ mode: latest-minors
commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md
index d1c01295fd..b529c68819 100644
--- a/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-redis/CHANGELOG.md
@@ -1,5 +1,44 @@
# Changelog
+## [0.43.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-v0.42.0...instrumentation-redis-v0.43.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.41.0 to ^0.42.0
+
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-v0.41.0...instrumentation-redis-v0.42.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/contrib-test-utils bumped from ^0.40.0 to ^0.41.0
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-v0.40.0...instrumentation-redis-v0.41.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-redis-v0.39.1...instrumentation-redis-v0.40.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-redis/README.md b/plugins/node/opentelemetry-instrumentation-redis/README.md
index f345f9ac02..b5c9f1cdc1 100644
--- a/plugins/node/opentelemetry-instrumentation-redis/README.md
+++ b/plugins/node/opentelemetry-instrumentation-redis/README.md
@@ -3,7 +3,7 @@
[![NPM Published Version][npm-img]][npm-url]
[![Apache License][license-image]][license-image]
-This module provides automatic instrumentation for the [`redis@^2.6.0`](https://github.com/NodeRedis/node_redis) module, which may be loaded using the [`@opentelemetry/sdk-trace-node`](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node) package and is included in the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle.
+This module provides automatic instrumentation for the [`redis`](https://github.com/NodeRedis/node_redis) module versions `>=2.6.0 <4`, which may be loaded using the [`@opentelemetry/sdk-trace-node`](https://github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node) package and is included in the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle.
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-node`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](`https://www.npmjs.com/package/@opentelemetry/sdk-node`) for the most seamless instrumentation experience.
@@ -17,8 +17,9 @@ npm install --save @opentelemetry/instrumentation-redis
### Supported Versions
-This package supports `redis@^2.6.0` and `redis@^3.0.0`
-For version `redis@^4.0.0`, please use `@opentelemetry/instrumentation-redis-4`
+- [`redis`](https://www.npmjs.com/package/redis) versions `>=2.6.0 <4`
+
+For versions `redis@^4.0.0`, please use `@opentelemetry/instrumentation-redis-4`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-redis/package.json b/plugins/node/opentelemetry-instrumentation-redis/package.json
index f4b4b54da0..6eee358ca5 100644
--- a/plugins/node/opentelemetry-instrumentation-redis/package.json
+++ b/plugins/node/opentelemetry-instrumentation-redis/package.json
@@ -1,13 +1,13 @@
{
"name": "@opentelemetry/instrumentation-redis",
- "version": "0.40.0",
+ "version": "0.43.0",
"description": "OpenTelemetry instrumentation for `redis` v2 and v3 database client for Redis",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
- "test:debug": "cross-env RUN_REDIS_TESTS_LOCAL=true ts-mocha --inspect-brk --no-timeouts -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
+ "test:debug": "cross-env RUN_REDIS_TESTS_LOCAL=true mocha --inspect-brk --no-timeouts 'test/**/*.test.ts'",
"test:local": "cross-env RUN_REDIS_TESTS_LOCAL=true npm run test",
"test:docker:run": "docker run --rm -d --name otel-redis -p 63790:6379 redis:alpine",
"test:docker:stop": "docker stop otel-redis",
@@ -17,7 +17,7 @@
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-redis --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc -p .",
@@ -50,25 +50,23 @@
"devDependencies": {
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-async-hooks": "^1.8.0",
- "@opentelemetry/contrib-test-utils": "^0.40.0",
+ "@opentelemetry/contrib-test-utils": "^0.42.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
+ "@types/node": "18.18.14",
"@types/redis": "2.8.32",
"cross-env": "7.0.3",
- "mocha": "7.2.0",
"nyc": "15.1.0",
"redis": "3.1.2",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
"@opentelemetry/redis-common": "^0.36.2",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-redis#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-redis/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-redis/src/instrumentation.ts
index 1d627b5820..dd0960d533 100644
--- a/plugins/node/opentelemetry-instrumentation-redis/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-redis/src/instrumentation.ts
@@ -25,30 +25,29 @@ import {
getTracedInternalSendCommand,
} from './utils';
import { RedisInstrumentationConfig } from './types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
const DEFAULT_CONFIG: RedisInstrumentationConfig = {
requireParentSpan: false,
};
-export class RedisInstrumentation extends InstrumentationBase {
+export class RedisInstrumentation extends InstrumentationBase {
static readonly COMPONENT = 'redis';
- protected override _config!: RedisInstrumentationConfig;
-
constructor(config: RedisInstrumentationConfig = {}) {
- super(PACKAGE_NAME, PACKAGE_VERSION, config);
+ super(PACKAGE_NAME, PACKAGE_VERSION, { ...DEFAULT_CONFIG, ...config });
}
override setConfig(config: RedisInstrumentationConfig = {}) {
- this._config = Object.assign({}, DEFAULT_CONFIG, config);
+ super.setConfig({ ...DEFAULT_CONFIG, ...config });
}
protected init() {
return [
new InstrumentationNodeModuleDefinition(
'redis',
- ['^2.6.0', '^3.0.0'],
+ ['>=2.6.0 <4'],
moduleExports => {
if (
isWrapped(
@@ -102,7 +101,7 @@ export class RedisInstrumentation extends InstrumentationBase {
*/
private _getPatchInternalSendCommand() {
const tracer = this.tracer;
- const config = this._config;
+ const config = this.getConfig();
return function internal_send_command(original: Function) {
return getTracedInternalSendCommand(tracer, original, config);
};
diff --git a/plugins/node/opentelemetry-instrumentation-restify/.tav.yml b/plugins/node/opentelemetry-instrumentation-restify/.tav.yml
index a1ef4c915c..8d354d0d58 100644
--- a/plugins/node/opentelemetry-instrumentation-restify/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-restify/.tav.yml
@@ -1,8 +1,12 @@
restify:
- - versions: "^10.0.0 || ^11.1.0"
+ - versions:
+ include: '>=10.0.0 <12'
+ mode: latest-minors
node: ">=18"
commands: npm run test
- - versions: "4.3.4 || 5.2.0 || 6.4.0 || 7.7.0 || ^8.4.0 || 9.1.0 || ^10.0.0 || ^11.1.0"
+ - versions:
+ include: '>=4.1.0 <10'
+ mode: max-7
node: "<18"
commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md
index 3b736d5a07..d5f2852933 100644
--- a/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-restify/CHANGELOG.md
@@ -1,5 +1,32 @@
# Changelog
+## [0.42.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-restify-v0.41.0...instrumentation-restify-v0.42.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-restify-v0.40.0...instrumentation-restify-v0.41.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-restify-v0.39.0...instrumentation-restify-v0.40.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-restify-v0.38.0...instrumentation-restify-v0.39.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-restify/README.md b/plugins/node/opentelemetry-instrumentation-restify/README.md
index fd9b7fc7cd..1894864da5 100644
--- a/plugins/node/opentelemetry-instrumentation-restify/README.md
+++ b/plugins/node/opentelemetry-instrumentation-restify/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-restify
### Supported Versions
-- `>=4.0.0 <12`
+- [`restify`](https://www.npmjs.com/package/restify) versions `>=4.1.0 <12`
## Usage
diff --git a/plugins/node/opentelemetry-instrumentation-restify/package.json b/plugins/node/opentelemetry-instrumentation-restify/package.json
index 514bff4c35..833a6c8641 100644
--- a/plugins/node/opentelemetry-instrumentation-restify/package.json
+++ b/plugins/node/opentelemetry-instrumentation-restify/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-restify",
- "version": "0.39.0",
+ "version": "0.42.0",
"description": "OpenTelemetry instrumentation for `restify` http web application framework",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
@@ -10,11 +10,11 @@
"compile": "tsc -p .",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-restify --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prepublishOnly": "npm run compile",
"prewatch": "npm run precompile",
"tdd": "yarn test -- --watch-extensions ts --watch",
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.ts'",
+ "test": "nyc mocha 'test/**/*.ts'",
"test-all-versions": "tav",
"version:update": "node ../../../scripts/version-update.js",
"watch": "tsc -w"
@@ -48,22 +48,20 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/restify": "4.3.10",
- "@types/semver": "7.5.3",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
+ "@types/restify": "4.3.12",
+ "@types/semver": "7.5.8",
"nyc": "15.1.0",
"restify": "11.1.0",
- "rimraf": "5.0.5",
- "semver": "7.5.4",
+ "rimraf": "5.0.10",
+ "semver": "7.6.3",
"test-all-versions": "^6.0.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-restify#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-restify/src/constants.ts b/plugins/node/opentelemetry-instrumentation-restify/src/constants.ts
index ebd38f91cc..6298f2d56b 100644
--- a/plugins/node/opentelemetry-instrumentation-restify/src/constants.ts
+++ b/plugins/node/opentelemetry-instrumentation-restify/src/constants.ts
@@ -24,4 +24,3 @@ export const RESTIFY_METHODS = [
'patch',
];
export const MODULE_NAME = 'restify';
-export const SUPPORTED_VERSIONS = ['>=4.0.0 <12'];
diff --git a/plugins/node/opentelemetry-instrumentation-restify/src/index.ts b/plugins/node/opentelemetry-instrumentation-restify/src/index.ts
index 331bf99930..45cd8db559 100644
--- a/plugins/node/opentelemetry-instrumentation-restify/src/index.ts
+++ b/plugins/node/opentelemetry-instrumentation-restify/src/index.ts
@@ -14,10 +14,6 @@
* limitations under the License.
*/
-import { RestifyInstrumentation } from './instrumentation';
-
export * from './instrumentation';
-export default RestifyInstrumentation;
-
export * from './enums/AttributeNames';
export * from './types';
diff --git a/plugins/node/opentelemetry-instrumentation-restify/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-restify/src/instrumentation.ts
index 5d4c7f39cb..2a8a1b3d1b 100644
--- a/plugins/node/opentelemetry-instrumentation-restify/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-restify/src/instrumentation.ts
@@ -21,6 +21,7 @@ import * as api from '@opentelemetry/api';
import type { Server } from 'restify';
import { LayerType } from './types';
import { AttributeNames } from './enums/AttributeNames';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import * as constants from './constants';
import {
@@ -35,7 +36,9 @@ import { isPromise, isAsyncFunction } from './utils';
import { getRPCMetadata, RPCType } from '@opentelemetry/core';
import type { RestifyInstrumentationConfig } from './types';
-export class RestifyInstrumentation extends InstrumentationBase {
+const supportedVersions = ['>=4.1.0 <12'];
+
+export class RestifyInstrumentation extends InstrumentationBase {
constructor(config: RestifyInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -43,18 +46,10 @@ export class RestifyInstrumentation extends InstrumentationBase {
private _moduleVersion?: string;
private _isDisabled = false;
- override setConfig(config: RestifyInstrumentationConfig = {}) {
- this._config = Object.assign({}, config);
- }
-
- override getConfig(): RestifyInstrumentationConfig {
- return this._config as RestifyInstrumentationConfig;
- }
-
init() {
const module = new InstrumentationNodeModuleDefinition(
constants.MODULE_NAME,
- constants.SUPPORTED_VERSIONS,
+ supportedVersions,
(moduleExports, moduleVersion) => {
this._moduleVersion = moduleVersion;
return moduleExports;
@@ -64,7 +59,7 @@ export class RestifyInstrumentation extends InstrumentationBase {
module.files.push(
new InstrumentationNodeModuleFile(
'restify/lib/server.js',
- constants.SUPPORTED_VERSIONS,
+ supportedVersions,
moduleExports => {
this._isDisabled = false;
const Server: any = moduleExports;
@@ -188,11 +183,11 @@ export class RestifyInstrumentation extends InstrumentationBase {
);
const instrumentation = this;
- const requestHook = instrumentation.getConfig().requestHook;
+ const { requestHook } = instrumentation.getConfig();
if (requestHook) {
safeExecuteInTheMiddle(
() => {
- return requestHook!(span, {
+ return requestHook(span, {
request: req,
layerType: metadata.type,
});
diff --git a/plugins/node/opentelemetry-instrumentation-restify/test/restify.test.ts b/plugins/node/opentelemetry-instrumentation-restify/test/restify.test.ts
index bea8b196a0..ee7e6c524e 100644
--- a/plugins/node/opentelemetry-instrumentation-restify/test/restify.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-restify/test/restify.test.ts
@@ -24,7 +24,7 @@ import {
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
-import RestifyInstrumentation from '../src';
+import { RestifyInstrumentation } from '../src';
import * as types from '../src/internal-types';
import { RestifyRequestInfo } from '../src/types';
const plugin = new RestifyInstrumentation();
@@ -241,12 +241,13 @@ describe('Restify Instrumentation', () => {
rootSpan.end();
assert.strictEqual(memoryExporter.getFinishedSpans().length, 4);
- if (semver.satisfies(LIB_VERSION, '>=8')) {
+ if (semver.satisfies(LIB_VERSION, '>=8.2.0')) {
+ // Error handling changed slightly in v8.2.0 (https://github.com/restify/node-restify/pull/1757).
assert.deepEqual(
result,
'{"code":"Internal","message":"Error: NOK"}'
);
- } else if (semver.satisfies(LIB_VERSION, '>=7 <8')) {
+ } else if (semver.satisfies(LIB_VERSION, '>=7 <8.2.0')) {
assert.deepEqual(
result,
'{"code":"Internal","message":"caused by Error: NOK"}'
diff --git a/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md
index 675457a28f..b314574544 100644
--- a/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-router/CHANGELOG.md
@@ -1,5 +1,32 @@
# Changelog
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-router-v0.40.0...instrumentation-router-v0.41.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-router-v0.39.0...instrumentation-router-v0.40.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-router-v0.38.0...instrumentation-router-v0.39.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* export instrumentations only as named export ([#2296](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2296)) ([0ed4038](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/0ed40384287a8d06549c2a9c98a26ea9b068c472))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-router-v0.37.0...instrumentation-router-v0.38.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-router/README.md b/plugins/node/opentelemetry-instrumentation-router/README.md
index 152a9cf081..7145d3b8a3 100644
--- a/plugins/node/opentelemetry-instrumentation-router/README.md
+++ b/plugins/node/opentelemetry-instrumentation-router/README.md
@@ -17,7 +17,7 @@ npm install --save @opentelemetry/instrumentation-router
### Supported Versions
-- `>=1.0.0`
+- [`router`](https://www.npmjs.com/package/router) versions `>=1.0.0 <2`
## Usage
@@ -25,7 +25,7 @@ npm install --save @opentelemetry/instrumentation-router
const { ConsoleSpanExporter, SimpleSpanProcessor } = require('@opentelemetry/sdk-trace-base');
const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
const { registerInstrumentations } = require('@opentelemetry/instrumentation');
-const RouterInstrumentation = require('@opentelemetry/instrumentation-router');
+const { RouterInstrumentation } = require('@opentelemetry/instrumentation-router');
const provider = new NodeTracerProvider();
diff --git a/plugins/node/opentelemetry-instrumentation-router/package.json b/plugins/node/opentelemetry-instrumentation-router/package.json
index 9e76e9b0ac..89ae9fb7d1 100644
--- a/plugins/node/opentelemetry-instrumentation-router/package.json
+++ b/plugins/node/opentelemetry-instrumentation-router/package.json
@@ -1,17 +1,17 @@
{
"name": "@opentelemetry/instrumentation-router",
- "version": "0.38.0",
+ "version": "0.41.0",
"description": "OpenTelemetry instrumentation for `router` http middleware router",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.ts'",
+ "test": "nyc mocha 'test/**/*.ts'",
"tdd": "yarn test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-router --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc -p .",
@@ -47,17 +47,15 @@
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@opentelemetry/sdk-trace-node": "^1.8.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "mocha": "7.2.0",
+ "@types/node": "18.18.14",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"router": "1.3.8",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4"
},
"dependencies": {
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/instrumentation": "^0.54.0",
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-router#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-router/src/constants.ts b/plugins/node/opentelemetry-instrumentation-router/src/constants.ts
index ae69202fe3..a45b7aabf6 100644
--- a/plugins/node/opentelemetry-instrumentation-router/src/constants.ts
+++ b/plugins/node/opentelemetry-instrumentation-router/src/constants.ts
@@ -15,7 +15,6 @@
*/
export const MODULE_NAME = 'router';
-export const SUPPORTED_VERSIONS = ['1'];
// Router.prototype.handle
export const ROUTE_ROUTER_FN = `function router(req, res, next) {
diff --git a/plugins/node/opentelemetry-instrumentation-router/src/index.ts b/plugins/node/opentelemetry-instrumentation-router/src/index.ts
index b1cddbd9a5..c464af622c 100644
--- a/plugins/node/opentelemetry-instrumentation-router/src/index.ts
+++ b/plugins/node/opentelemetry-instrumentation-router/src/index.ts
@@ -14,9 +14,5 @@
* limitations under the License.
*/
-import RouterInstrumentation from './instrumentation';
-
-export { RouterInstrumentation };
-export default RouterInstrumentation;
-
+export * from './instrumentation';
export * from './enums/AttributeNames';
diff --git a/plugins/node/opentelemetry-instrumentation-router/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-router/src/instrumentation.ts
index 50803ab148..995bc6ec79 100644
--- a/plugins/node/opentelemetry-instrumentation-router/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-router/src/instrumentation.ts
@@ -28,13 +28,16 @@ import * as http from 'http';
import type * as Router from 'router';
import * as types from './internal-types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import * as constants from './constants';
import * as utils from './utils';
import AttributeNames from './enums/AttributeNames';
import LayerType from './enums/LayerType';
-export default class RouterInstrumentation extends InstrumentationBase {
+const supportedVersions = ['>=1.0.0 <2'];
+
+export class RouterInstrumentation extends InstrumentationBase {
constructor(config: InstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -44,7 +47,7 @@ export default class RouterInstrumentation extends InstrumentationBase {
init() {
const module = new InstrumentationNodeModuleDefinition(
constants.MODULE_NAME,
- constants.SUPPORTED_VERSIONS,
+ supportedVersions,
(moduleExports, moduleVersion) => {
this._moduleVersion = moduleVersion;
return moduleExports;
@@ -54,7 +57,7 @@ export default class RouterInstrumentation extends InstrumentationBase {
module.files.push(
new InstrumentationNodeModuleFile(
'router/lib/layer.js',
- constants.SUPPORTED_VERSIONS,
+ supportedVersions,
moduleExports => {
const Layer: any = moduleExports;
if (isWrapped(Layer.prototype.handle_request)) {
diff --git a/plugins/node/opentelemetry-instrumentation-router/test/index.test.ts b/plugins/node/opentelemetry-instrumentation-router/test/index.test.ts
index 3b16b6eb9f..4958ca77f0 100644
--- a/plugins/node/opentelemetry-instrumentation-router/test/index.test.ts
+++ b/plugins/node/opentelemetry-instrumentation-router/test/index.test.ts
@@ -22,9 +22,9 @@ import {
SimpleSpanProcessor,
} from '@opentelemetry/sdk-trace-base';
-import Instrumentation from '../src';
+import { RouterInstrumentation } from '../src';
import { InstrumentationSpan } from '../src/internal-types';
-const plugin = new Instrumentation();
+const plugin = new RouterInstrumentation();
import * as http from 'http';
import * as Router from 'router';
diff --git a/plugins/node/opentelemetry-instrumentation-winston/.tav.yml b/plugins/node/opentelemetry-instrumentation-winston/.tav.yml
index 34335a07f7..4ab7caaa65 100644
--- a/plugins/node/opentelemetry-instrumentation-winston/.tav.yml
+++ b/plugins/node/opentelemetry-instrumentation-winston/.tav.yml
@@ -1,5 +1,6 @@
winston:
- # A selection of versions of Winston 2.x and 3.x
- - versions: "2.0.0 || 2.4.0 || 2.4.7 || 3.3.1 || 3.6.0 || 3.10.0 || ^3.11.0"
- commands: npm run test
+ versions:
+ include: '>=2.0.0 <4'
+ mode: max-7
+ commands: npm run test
diff --git a/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md b/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md
index be955cf560..bf60114bb4 100644
--- a/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md
+++ b/plugins/node/opentelemetry-instrumentation-winston/CHANGELOG.md
@@ -1,5 +1,52 @@
# Changelog
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-winston-v0.40.0...instrumentation-winston-v0.41.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/winston-transport bumped from ^0.6.0 to ^0.7.0
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-winston-v0.39.0...instrumentation-winston-v0.40.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/winston-transport bumped from ^0.5.0 to ^0.6.0
+
+## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-winston-v0.38.0...instrumentation-winston-v0.39.0) (2024-07-03)
+
+
+### ⚠ BREAKING CHANGES
+
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196))
+
+### Bug Fixes
+
+* **@opentelemetry/instrumentation-winston:** Removing error details when @opentelemetry/winston-transport is not available ([#2301](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2301)) ([fbf25c5](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/fbf25c5e14eaa7d13fc3ff213f4648ae22c64cef))
+* standardize supported versions and set upper bound limit ([#2196](https://github.com/open-telemetry/opentelemetry-js-contrib/issues/2196)) ([01c28ae](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/01c28ae016ed32f9968e52bc91e3e3700dcef82e))
+
+
+### Dependencies
+
+* The following workspace dependencies were updated
+ * devDependencies
+ * @opentelemetry/winston-transport bumped from ^0.4.0 to ^0.5.0
+
## [0.38.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-winston-v0.37.0...instrumentation-winston-v0.38.0) (2024-06-06)
diff --git a/plugins/node/opentelemetry-instrumentation-winston/README.md b/plugins/node/opentelemetry-instrumentation-winston/README.md
index 9dfa9365b7..341226f283 100644
--- a/plugins/node/opentelemetry-instrumentation-winston/README.md
+++ b/plugins/node/opentelemetry-instrumentation-winston/README.md
@@ -15,6 +15,12 @@ Compatible with OpenTelemetry JS API and SDK `1.0+`.
npm install --save @opentelemetry/instrumentation-winston
```
+### Supported Versions
+
+- [`winston`](https://www.npmjs.com/package/winston) versions `>=1.0.0 <4`
+
+Log sending: [`winston`](https://www.npmjs.com/package/winston) versions `>=3.0.0 <4`
+
## Usage
```js
@@ -98,13 +104,42 @@ logHook: (span, record) => {
Log injection can be disabled with the `disableLogCorrelation: true` option.
-### Supported versions
+### Using OpenTelemetryTransportV3 without instrumentation
+
+[@opentelemetry/winston-transport](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/winston-transport) package exports the Winston transport class that is used to send records to the
+OpenTelemetry Logs SDK. It can be used directly when configuring a Winston logger.
+For example:
+
+```js
+const logsAPI = require('@opentelemetry/api-logs');
+const {
+ LoggerProvider,
+ SimpleLogRecordProcessor,
+ ConsoleLogRecordExporter,
+} = require('@opentelemetry/sdk-logs');
+const { OpenTelemetryTransportV3 } = require('@opentelemetry/winston-transport');
+const winston = require('winston');
+
-`1.x`, `2.x`, `3.x`
+// To start a logger, you first need to initialize the Logger provider.
+const loggerProvider = new LoggerProvider();
+// Add a processor to export log record
+loggerProvider.addLogRecordProcessor(
+ new SimpleLogRecordProcessor(new ConsoleLogRecordExporter())
+);
+logsAPI.logs.setGlobalLoggerProvider(loggerProvider);
-Log sending
+const logger = winston.createLogger({
+ level: 'info',
+ transports: [
+ new winston.transports.Console(),
+ new OpenTelemetryTransportV3()
+ ]
+});
+```
-`3.x`
+> [!IMPORTANT]
+> Logs will be duplicated if `@opentelemetry/winston-transport` is added as a transport in `winston` and `@opentelemetry/instrumentation-winston` is configured with `disableLogSending: false`.
## Semantic Conventions
diff --git a/plugins/node/opentelemetry-instrumentation-winston/package.json b/plugins/node/opentelemetry-instrumentation-winston/package.json
index 8d9e9575ab..eace15a4e3 100644
--- a/plugins/node/opentelemetry-instrumentation-winston/package.json
+++ b/plugins/node/opentelemetry-instrumentation-winston/package.json
@@ -1,18 +1,18 @@
{
"name": "@opentelemetry/instrumentation-winston",
- "version": "0.38.0",
+ "version": "0.41.0",
"description": "OpenTelemetry instrumentation for `winston` logger",
"main": "build/src/index.js",
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "test": "nyc ts-mocha -p tsconfig.json 'test/**/*.test.ts'",
+ "test": "nyc mocha 'test/**/*.test.ts'",
"test-all-versions": "tav",
"tdd": "npm run test -- --watch-extensions ts --watch",
"clean": "rimraf build/*",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-winston --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"prepublishOnly": "npm run compile",
"version:update": "node ../../../scripts/version-update.js",
@@ -48,24 +48,22 @@
"@opentelemetry/context-async-hooks": "^1.21.0",
"@opentelemetry/sdk-trace-base": "^1.21.0",
"@opentelemetry/sdk-trace-node": "^1.21.0",
- "@opentelemetry/winston-transport": "^0.4.0",
+ "@opentelemetry/winston-transport": "^0.7.0",
"@types/mocha": "7.0.2",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/triple-beam": "^1.3.2",
- "mocha": "7.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.2.0",
"test-all-versions": "6.1.0",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
"winston": "3.3.3",
"winston2": "npm:winston@2.4.7"
},
"dependencies": {
- "@opentelemetry/api-logs": "^0.52.0",
- "@opentelemetry/instrumentation": "^0.52.0"
+ "@opentelemetry/api-logs": "^0.54.0",
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-winston#readme"
}
diff --git a/plugins/node/opentelemetry-instrumentation-winston/src/instrumentation.ts b/plugins/node/opentelemetry-instrumentation-winston/src/instrumentation.ts
index dddb1c0835..6eceec0526 100644
--- a/plugins/node/opentelemetry-instrumentation-winston/src/instrumentation.ts
+++ b/plugins/node/opentelemetry-instrumentation-winston/src/instrumentation.ts
@@ -31,12 +31,13 @@ import type {
Winston3LogMethod,
Winston3Logger,
} from './internal-types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
const winston3Versions = ['>=3 <4'];
const winstonPre3Versions = ['>=1 <3'];
-export class WinstonInstrumentation extends InstrumentationBase {
+export class WinstonInstrumentation extends InstrumentationBase {
constructor(config: WinstonInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -112,23 +113,15 @@ export class WinstonInstrumentation extends InstrumentationBase {
];
}
- override getConfig(): WinstonInstrumentationConfig {
- return this._config;
- }
-
- override setConfig(config: WinstonInstrumentationConfig = {}) {
- this._config = config;
- }
-
private _callHook(span: Span, record: Record) {
- const hook = this.getConfig().logHook;
+ const { logHook } = this.getConfig();
- if (!hook) {
+ if (!logHook) {
return;
}
safeExecuteInTheMiddle(
- () => hook(span, record),
+ () => logHook(span, record),
err => {
if (err) {
this._diag.error('error calling logHook', err);
@@ -221,8 +214,7 @@ export class WinstonInstrumentation extends InstrumentationBase {
args[0].transports = newTransports;
} catch (err) {
instrumentation._diag.warn(
- 'OpenTelemetry Winston transport is not available, log records will not be automatically sent.',
- err
+ '@opentelemetry/winston-transport is not available, log records will not be automatically sent.'
);
}
}
diff --git a/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md b/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md
index a43dfb0895..05326374ec 100644
--- a/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md
+++ b/plugins/web/opentelemetry-instrumentation-document-load/CHANGELOG.md
@@ -1,5 +1,19 @@
# Changelog
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-document-load-v0.40.0...instrumentation-document-load-v0.41.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-document-load-v0.39.0...instrumentation-document-load-v0.40.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-document-load-v0.38.0...instrumentation-document-load-v0.39.0) (2024-06-06)
diff --git a/plugins/web/opentelemetry-instrumentation-document-load/README.md b/plugins/web/opentelemetry-instrumentation-document-load/README.md
index a538ecf399..c672add7a5 100644
--- a/plugins/web/opentelemetry-instrumentation-document-load/README.md
+++ b/plugins/web/opentelemetry-instrumentation-document-load/README.md
@@ -145,7 +145,7 @@ Attributes collected:
Apache 2.0 - See [LICENSE][license-url] for more information.
[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions
-[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE
+[license-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/LICENSE
[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat
[npm-url]: https://www.npmjs.com/package/@opentelemetry/instrumentation-document-load
[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Finstrumentation-document-load.svg
diff --git a/plugins/web/opentelemetry-instrumentation-document-load/package.json b/plugins/web/opentelemetry-instrumentation-document-load/package.json
index ebab74aea6..f32de17af6 100644
--- a/plugins/web/opentelemetry-instrumentation-document-load/package.json
+++ b/plugins/web/opentelemetry-instrumentation-document-load/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-document-load",
- "version": "0.39.0",
+ "version": "0.41.0",
"description": "OpenTelemetry instrumentation for document load operations in browser applications",
"main": "build/src/index.js",
"module": "build/esm/index.js",
@@ -11,7 +11,7 @@
"clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-document-load --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
@@ -54,12 +54,13 @@
"@babel/core": "7.22.17",
"@jsdevtools/coverage-istanbul-loader": "3.0.5",
"@opentelemetry/api": "^1.3.0",
+ "@opentelemetry/sdk-trace-base": "^1.0.0",
"@rollup/plugin-commonjs": "^26.0.0",
"@rollup/plugin-node-resolve": "^15.2.3",
"@types/chai": "^4.3.10",
"@types/mocha": "8.2.3",
- "@types/node": "18.6.5",
- "@types/sinon": "10.0.18",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@web/dev-server-esbuild": "^1.0.1",
"@web/dev-server-rollup": "^0.6.1",
"@web/test-runner": "^0.18.0",
@@ -69,10 +70,9 @@
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-base": "^1.0.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
"@opentelemetry/sdk-trace-web": "^1.15.0",
- "@opentelemetry/semantic-conventions": "^1.22.0"
+ "@opentelemetry/semantic-conventions": "^1.27.0"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/web/opentelemetry-instrumentation-document-load#readme"
}
diff --git a/plugins/web/opentelemetry-instrumentation-document-load/src/instrumentation.ts b/plugins/web/opentelemetry-instrumentation-document-load/src/instrumentation.ts
index 5849be561d..f2ae8f48ea 100644
--- a/plugins/web/opentelemetry-instrumentation-document-load/src/instrumentation.ts
+++ b/plugins/web/opentelemetry-instrumentation-document-load/src/instrumentation.ts
@@ -39,6 +39,7 @@ import {
ResourceFetchCustomAttributeFunction,
} from './types';
import { AttributeNames } from './enums/AttributeNames';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import {
SEMATTRS_HTTP_URL,
@@ -52,15 +53,11 @@ import {
/**
* This class represents a document load plugin
*/
-export class DocumentLoadInstrumentation extends InstrumentationBase {
+export class DocumentLoadInstrumentation extends InstrumentationBase {
readonly component: string = 'document-load';
readonly version: string = '1';
moduleName = this.component;
- /**
- *
- * @param config
- */
constructor(config: DocumentLoadInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -120,12 +117,12 @@ export class DocumentLoadInstrumentation extends InstrumentationBase {
if (fetchSpan) {
fetchSpan.setAttribute(SEMATTRS_HTTP_URL, location.href);
context.with(trace.setSpan(context.active(), fetchSpan), () => {
- if (!this._getConfig().ignoreNetworkEvents) {
+ if (!this.getConfig().ignoreNetworkEvents) {
addSpanNetworkEvents(fetchSpan, entries);
}
this._addCustomAttributesOnSpan(
fetchSpan,
- this._getConfig().applyCustomAttributesOnSpan?.documentFetch
+ this.getConfig().applyCustomAttributesOnSpan?.documentFetch
);
this._endSpan(fetchSpan, PTN.RESPONSE_END, entries);
});
@@ -137,7 +134,7 @@ export class DocumentLoadInstrumentation extends InstrumentationBase {
this._addResourcesSpans(rootSpan);
- if (!this._getConfig().ignoreNetworkEvents) {
+ if (!this.getConfig().ignoreNetworkEvents) {
addSpanNetworkEvent(rootSpan, PTN.FETCH_START, entries);
addSpanNetworkEvent(rootSpan, PTN.UNLOAD_EVENT_START, entries);
addSpanNetworkEvent(rootSpan, PTN.UNLOAD_EVENT_END, entries);
@@ -157,13 +154,13 @@ export class DocumentLoadInstrumentation extends InstrumentationBase {
addSpanNetworkEvent(rootSpan, PTN.LOAD_EVENT_END, entries);
}
- if (!this._getConfig().ignorePerformancePaintEvents) {
+ if (!this.getConfig().ignorePerformancePaintEvents) {
addSpanPerformancePaintEvents(rootSpan);
}
this._addCustomAttributesOnSpan(
rootSpan,
- this._getConfig().applyCustomAttributesOnSpan?.documentLoad
+ this.getConfig().applyCustomAttributesOnSpan?.documentLoad
);
this._endSpan(rootSpan, PTN.LOAD_EVENT_END, entries);
});
@@ -208,13 +205,13 @@ export class DocumentLoadInstrumentation extends InstrumentationBase {
);
if (span) {
span.setAttribute(SEMATTRS_HTTP_URL, resource.name);
- if (!this._getConfig().ignoreNetworkEvents) {
+ if (!this.getConfig().ignoreNetworkEvents) {
addSpanNetworkEvents(span, resource);
}
this._addCustomAttributesOnResourceSpan(
span,
resource,
- this._getConfig().applyCustomAttributesOnSpan?.resourceFetch
+ this.getConfig().applyCustomAttributesOnSpan?.resourceFetch
);
this._endSpan(span, PTN.RESPONSE_END, resource);
}
@@ -261,9 +258,6 @@ export class DocumentLoadInstrumentation extends InstrumentationBase {
}
}
- private _getConfig(): DocumentLoadInstrumentationConfig {
- return this._config;
- }
/**
* adds custom attributes to root span if configured
*/
diff --git a/plugins/web/opentelemetry-instrumentation-document-load/test/documentLoad.test.ts b/plugins/web/opentelemetry-instrumentation-document-load/test/documentLoad.test.ts
index a239945bec..cbe4b0c7b3 100644
--- a/plugins/web/opentelemetry-instrumentation-document-load/test/documentLoad.test.ts
+++ b/plugins/web/opentelemetry-instrumentation-document-load/test/documentLoad.test.ts
@@ -45,7 +45,7 @@ import {
} from '@opentelemetry/semantic-conventions';
import { EventNames } from '../src/enums/EventNames';
-const { assert } = chai as typeof import('chai');
+const assert = chai.assert;
const exporter = new InMemorySpanExporter();
const provider = new BasicTracerProvider();
diff --git a/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md b/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md
index 023f9b770b..5852c8d33b 100644
--- a/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md
+++ b/plugins/web/opentelemetry-instrumentation-long-task/CHANGELOG.md
@@ -1,5 +1,19 @@
# Changelog
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-long-task-v0.40.0...instrumentation-long-task-v0.41.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-long-task-v0.39.0...instrumentation-long-task-v0.40.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-long-task-v0.38.0...instrumentation-long-task-v0.39.0) (2024-06-06)
diff --git a/plugins/web/opentelemetry-instrumentation-long-task/README.md b/plugins/web/opentelemetry-instrumentation-long-task/README.md
index 5f15447e58..fd3a3df856 100644
--- a/plugins/web/opentelemetry-instrumentation-long-task/README.md
+++ b/plugins/web/opentelemetry-instrumentation-long-task/README.md
@@ -69,7 +69,7 @@ longtaskInstrumentationConfig = {
Apache 2.0 - See [LICENSE][license-url] for more information.
[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions
-[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE
+[license-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/LICENSE
[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat
[npm-url]: https://www.npmjs.com/package/@opentelemetry/instrumentation-long-task
[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Finstrumentation-long-task.svg
diff --git a/plugins/web/opentelemetry-instrumentation-long-task/package.json b/plugins/web/opentelemetry-instrumentation-long-task/package.json
index 6bb5fc796f..5781710de1 100644
--- a/plugins/web/opentelemetry-instrumentation-long-task/package.json
+++ b/plugins/web/opentelemetry-instrumentation-long-task/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-long-task",
- "version": "0.39.0",
+ "version": "0.41.0",
"description": "OpenTelemetry instrumentation for long task Web API",
"main": "build/src/index.js",
"module": "build/esm/index.js",
@@ -10,8 +10,8 @@
"scripts": {
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-user-interaction --include-dependencies",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
@@ -52,36 +52,33 @@
"@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
+ "@opentelemetry/sdk-trace-web": "^1.8.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0",
"zone.js": "^0.11.4 || ^0.13.0 || ^0.14.0"
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
- "@opentelemetry/sdk-trace-web": "^1.8.0"
+ "@opentelemetry/instrumentation": "^0.54.0"
},
"peerDependencies": {
"@opentelemetry/api": "^1.3.0"
diff --git a/plugins/web/opentelemetry-instrumentation-long-task/src/instrumentation.ts b/plugins/web/opentelemetry-instrumentation-long-task/src/instrumentation.ts
index b77bae7a65..f00110b7f6 100644
--- a/plugins/web/opentelemetry-instrumentation-long-task/src/instrumentation.ts
+++ b/plugins/web/opentelemetry-instrumentation-long-task/src/instrumentation.ts
@@ -16,6 +16,7 @@
import { hrTime } from '@opentelemetry/core';
import { diag } from '@opentelemetry/api';
import { InstrumentationBase } from '@opentelemetry/instrumentation';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
import type {
PerformanceLongTaskTiming,
@@ -24,16 +25,11 @@ import type {
const LONGTASK_PERFORMANCE_TYPE = 'longtask';
-export class LongTaskInstrumentation extends InstrumentationBase {
+export class LongTaskInstrumentation extends InstrumentationBase {
readonly version: string = PACKAGE_VERSION;
private _observer?: PerformanceObserver;
- override _config!: LongtaskInstrumentationConfig;
- /**
- *
- * @param config
- */
constructor(config: LongtaskInstrumentationConfig = {}) {
super(PACKAGE_NAME, PACKAGE_VERSION, config);
}
@@ -57,9 +53,10 @@ export class LongTaskInstrumentation extends InstrumentationBase {
const span = this.tracer.startSpan(LONGTASK_PERFORMANCE_TYPE, {
startTime: hrTime(entry.startTime),
});
- if (this._config.observerCallback) {
+ const { observerCallback } = this.getConfig();
+ if (observerCallback) {
try {
- this._config.observerCallback(span, { longtaskEntry: entry });
+ observerCallback(span, { longtaskEntry: entry });
} catch (err) {
diag.error('longtask instrumentation: observer callback failed', err);
}
diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md b/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md
index 78a39fbae4..c0a3ee0c07 100644
--- a/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md
+++ b/plugins/web/opentelemetry-instrumentation-user-interaction/CHANGELOG.md
@@ -1,5 +1,19 @@
# Changelog
+## [0.41.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-user-interaction-v0.40.0...instrumentation-user-interaction-v0.41.0) (2024-10-25)
+
+
+### Features
+
+* update "@opentelemetry/*" dependencies to 1.27.0/0.54.0 ([2822511](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/2822511a8acffb875ebd67ff2cf95980a9ddc01e))
+
+## [0.40.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-user-interaction-v0.39.0...instrumentation-user-interaction-v0.40.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
## [0.39.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/instrumentation-user-interaction-v0.38.0...instrumentation-user-interaction-v0.39.0) (2024-06-06)
diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/README.md b/plugins/web/opentelemetry-instrumentation-user-interaction/README.md
index c72a693fc8..9823e3f068 100644
--- a/plugins/web/opentelemetry-instrumentation-user-interaction/README.md
+++ b/plugins/web/opentelemetry-instrumentation-user-interaction/README.md
@@ -163,7 +163,7 @@ registerInstrumentations({
Apache 2.0 - See [LICENSE][license-url] for more information.
[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions
-[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE
+[license-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/LICENSE
[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat
[npm-url]: https://www.npmjs.com/package/@opentelemetry/instrumentation-user-interaction
[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Finstrumentation-user-interaction.svg
diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json
index 41553cf08c..81d2ab9487 100644
--- a/plugins/web/opentelemetry-instrumentation-user-interaction/package.json
+++ b/plugins/web/opentelemetry-instrumentation-user-interaction/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/instrumentation-user-interaction",
- "version": "0.39.0",
+ "version": "0.41.0",
"description": "OpenTelemetry instrumentation for user interactions as click events in a web application",
"main": "build/src/index.js",
"module": "build/esm/index.js",
@@ -10,8 +10,8 @@
"scripts": {
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/instrumentation-user-interaction --include-dependencies",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
@@ -52,38 +52,35 @@
"@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.3.0",
"@opentelemetry/context-zone-peer-dep": "^1.8.0",
- "@opentelemetry/instrumentation-xml-http-request": "^0.52.0",
+ "@opentelemetry/instrumentation-xml-http-request": "^0.54.0",
"@opentelemetry/sdk-trace-base": "^1.8.0",
"@types/jquery": "3.5.30",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-jquery": "0.2.4",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
"sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0",
"zone.js": "^0.11.4 || ^0.13.0 || ^0.14.0"
},
"dependencies": {
"@opentelemetry/core": "^1.8.0",
- "@opentelemetry/instrumentation": "^0.52.0",
+ "@opentelemetry/instrumentation": "^0.54.0",
"@opentelemetry/sdk-trace-web": "^1.8.0"
},
"peerDependencies": {
diff --git a/plugins/web/opentelemetry-instrumentation-user-interaction/src/instrumentation.ts b/plugins/web/opentelemetry-instrumentation-user-interaction/src/instrumentation.ts
index 4a502b7051..c1b7ff4cad 100644
--- a/plugins/web/opentelemetry-instrumentation-user-interaction/src/instrumentation.ts
+++ b/plugins/web/opentelemetry-instrumentation-user-interaction/src/instrumentation.ts
@@ -34,6 +34,7 @@ import {
WindowWithZone,
ZoneTypeWithPrototype,
} from './internal-types';
+/** @knipignore */
import { PACKAGE_NAME, PACKAGE_VERSION } from './version';
const ZONE_CONTEXT_KEY = 'OT_ZONE_CONTEXT';
@@ -49,7 +50,7 @@ function defaultShouldPreventSpanCreation() {
* If zone.js is available then it patches the zone otherwise it patches
* addEventListener of HTMLElement
*/
-export class UserInteractionInstrumentation extends InstrumentationBase {
+export class UserInteractionInstrumentation extends InstrumentationBase {
readonly version = PACKAGE_VERSION;
readonly moduleName: string = 'user-interaction';
private _spansData = new WeakMap();
diff --git a/plugins/web/opentelemetry-plugin-react-load/CHANGELOG.md b/plugins/web/opentelemetry-plugin-react-load/CHANGELOG.md
index 20e4ba31cb..a040f12dcf 100644
--- a/plugins/web/opentelemetry-plugin-react-load/CHANGELOG.md
+++ b/plugins/web/opentelemetry-plugin-react-load/CHANGELOG.md
@@ -1,5 +1,12 @@
# Changelog
+## [0.31.0](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/plugin-react-load-v0.30.1...plugin-react-load-v0.31.0) (2024-09-02)
+
+
+### Features
+
+* update deps matching "@opentelemetry/" ([9fa058e](https://github.com/open-telemetry/opentelemetry-js-contrib/commit/9fa058ebb919de4e2a4e1af95b3c792c6ea962ac))
+
## [0.30.1](https://github.com/open-telemetry/opentelemetry-js-contrib/compare/plugin-react-load-v0.30.0...plugin-react-load-v0.30.1) (2024-04-25)
diff --git a/plugins/web/opentelemetry-plugin-react-load/README.md b/plugins/web/opentelemetry-plugin-react-load/README.md
index 76155f67b4..ab822d1955 100644
--- a/plugins/web/opentelemetry-plugin-react-load/README.md
+++ b/plugins/web/opentelemetry-plugin-react-load/README.md
@@ -7,6 +7,8 @@ This module provides automatic instrumentation for *React lifecycles* for Web ap
If total installation size is not constrained, it is recommended to use the [`@opentelemetry/auto-instrumentations-web`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-web) bundle with [`@opentelemetry/sdk-trace-web`](https://www.npmjs.com/package/@opentelemetry/sdk-trace-web) for the most seamless instrumentation experience.
+Compatible with OpenTelemetry JS API and SDK `1.0+`.
+
## Status
| Maturity | [Component Owner](../../../.github/component_owners.yml) | Compatibility |
@@ -54,7 +56,7 @@ This package does not currently generate any attributes from semantic convention
Apache 2.0 - See [LICENSE][license-url] for more information.
[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions
-[license-url]: https://github.com/open-telemetry/opentelemetry-js/blob/main/LICENSE
+[license-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/LICENSE
[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat
[npm-url]: https://www.npmjs.com/package/@opentelemetry/plugin-react-load
[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fplugin-react-load.svg
diff --git a/plugins/web/opentelemetry-plugin-react-load/package.json b/plugins/web/opentelemetry-plugin-react-load/package.json
index 948fe986eb..155015a8ea 100644
--- a/plugins/web/opentelemetry-plugin-react-load/package.json
+++ b/plugins/web/opentelemetry-plugin-react-load/package.json
@@ -1,6 +1,6 @@
{
"name": "@opentelemetry/plugin-react-load",
- "version": "0.30.1",
+ "version": "0.31.0",
"description": "OpenTelemetry instrumentation for React class component lifecycle methods",
"main": "build/src/index.js",
"module": "build/esm/index.js",
@@ -11,7 +11,7 @@
"clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/plugin-react-load --include-dependencies",
+ "lint:readme": "node ../../../scripts/lint-readme.js",
"prewatch": "npm run precompile",
"version:update": "node ../../../scripts/version-update.js",
"compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
@@ -51,34 +51,34 @@
"@babel/core": "7.24.6",
"@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.0.0",
- "@opentelemetry/propagator-b3": "1.25.0",
+ "@opentelemetry/propagator-b3": "^1.26.0",
+ "@opentelemetry/sdk-trace-base": "^1.0.0",
+ "@opentelemetry/sdk-trace-web": "^1.0.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/react": "17.0.67",
+ "@types/node": "18.18.14",
+ "@types/react": "17.0.80",
"@types/react-addons-test-utils": "0.14.26",
"@types/react-dom": "18.0.2",
"@types/shimmer": "1.0.3",
- "@types/sinon": "17.0.3",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
"react": "17.0.2",
"react-dom": "17.0.2",
- "rimraf": "5.0.5",
+ "rimraf": "5.0.10",
"sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0"
},
@@ -87,10 +87,7 @@
"react": "^16.13.1 || ^17.0.0"
},
"dependencies": {
- "@opentelemetry/context-zone": "^1.0.0",
"@opentelemetry/core": "^1.0.0",
- "@opentelemetry/sdk-trace-base": "^1.0.0",
- "@opentelemetry/sdk-trace-web": "^1.0.0",
"shimmer": "^1.2.1"
},
"homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/web/opentelemetry-plugin-react-load#readme"
diff --git a/plugins/web/opentelemetry-plugin-react-load/src/BaseOpenTelemetryComponent.ts b/plugins/web/opentelemetry-plugin-react-load/src/BaseOpenTelemetryComponent.ts
index fa7b007d0a..b3b7c9d926 100644
--- a/plugins/web/opentelemetry-plugin-react-load/src/BaseOpenTelemetryComponent.ts
+++ b/plugins/web/opentelemetry-plugin-react-load/src/BaseOpenTelemetryComponent.ts
@@ -19,6 +19,7 @@ import { isWrapped } from '@opentelemetry/core';
import * as shimmer from 'shimmer';
import { AttributeNames } from './enums/AttributeNames';
import * as React from 'react';
+/** @knipignore */
import { PACKAGE_VERSION } from './version';
import {
RenderFunction,
diff --git a/propagators/opentelemetry-propagator-instana/README.md b/propagators/opentelemetry-propagator-instana/README.md
index 13b1635335..87605247d6 100644
--- a/propagators/opentelemetry-propagator-instana/README.md
+++ b/propagators/opentelemetry-propagator-instana/README.md
@@ -3,7 +3,7 @@
[![NPM Published Version][npm-img]][npm-url]
[![Apache License][license-image]][license-image]
-[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @basti1302, @kirrg001
+[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @kirrg001
The OpenTelemetry Propagator for Instana provides HTTP header propagation for systems that are using IBM Observability by Instana.
This propagator translates the Instana trace correlation headers (`X-INSTANA-T/X-INSTANA-S/X-INSTANA-L`) into the OpenTelemetry `SpanContext`, and vice versa.
diff --git a/propagators/opentelemetry-propagator-instana/package.json b/propagators/opentelemetry-propagator-instana/package.json
index ea88db3b1e..8cd2cca638 100644
--- a/propagators/opentelemetry-propagator-instana/package.json
+++ b/propagators/opentelemetry-propagator-instana/package.json
@@ -7,11 +7,10 @@
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/propagator-instana --include-dependencies",
"prewatch": "npm run precompile",
"compile": "tsc --build tsconfig.json tsconfig.esm.json",
"clean": "tsc --build --clean tsconfig.json tsconfig.esm.json",
- "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts",
+ "test": "nyc mocha test/**/*.test.ts",
"test:browser": "nyc karma start --single-run",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
@@ -51,26 +50,23 @@
"@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.0.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
"process": "0.11.10",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0"
},
diff --git a/propagators/opentelemetry-propagator-ot-trace/package.json b/propagators/opentelemetry-propagator-ot-trace/package.json
index ff172873f3..50f407b4a2 100644
--- a/propagators/opentelemetry-propagator-ot-trace/package.json
+++ b/propagators/opentelemetry-propagator-ot-trace/package.json
@@ -7,11 +7,10 @@
"types": "build/src/index.d.ts",
"repository": "open-telemetry/opentelemetry-js-contrib",
"scripts": {
- "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/propagator-ot-trace --include-dependencies",
"prewatch": "npm run precompile",
"compile": "tsc --build tsconfig.json tsconfig.esm.json",
"clean": "tsc --build --clean tsconfig.json tsconfig.esm.json",
- "test": "nyc ts-mocha -p tsconfig.json test/**/*.test.ts",
+ "test": "nyc mocha test/**/*.test.ts",
"test:browser": "nyc karma start --single-run",
"lint": "eslint . --ext .ts",
"lint:fix": "eslint . --ext .ts --fix",
@@ -51,26 +50,23 @@
"@babel/preset-env": "7.24.6",
"@opentelemetry/api": "^1.0.0",
"@types/mocha": "10.0.6",
- "@types/node": "18.6.5",
- "@types/sinon": "17.0.3",
+ "@types/node": "18.18.14",
+ "@types/sinon": "10.0.20",
"@types/webpack-env": "1.16.3",
"assert": "2.0.0",
"babel-loader": "8.3.0",
- "babel-plugin-istanbul": "6.1.1",
- "cross-var": "1.1.0",
- "karma": "6.4.3",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
"karma-chrome-launcher": "3.1.0",
"karma-coverage": "2.2.1",
"karma-mocha": "2.0.1",
"karma-spec-reporter": "0.0.36",
"karma-webpack": "5.0.1",
- "mocha": "10.2.0",
"nyc": "15.1.0",
"sinon": "15.1.2",
"ts-loader": "9.5.1",
- "ts-mocha": "10.0.0",
"typescript": "4.4.4",
- "webpack": "5.89.0",
+ "webpack": "5.94.0",
"webpack-cli": "5.1.4",
"webpack-merge": "5.10.0"
},
diff --git a/archive/opentelemetry-propagator-grpc-census-binary/.eslintignore b/propagators/propagator-aws-xray-lambda/.eslintignore
similarity index 100%
rename from archive/opentelemetry-propagator-grpc-census-binary/.eslintignore
rename to propagators/propagator-aws-xray-lambda/.eslintignore
diff --git a/propagators/propagator-aws-xray-lambda/.eslintrc.js b/propagators/propagator-aws-xray-lambda/.eslintrc.js
new file mode 100644
index 0000000000..56b0964fe6
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/.eslintrc.js
@@ -0,0 +1,9 @@
+module.exports = {
+ "env": {
+ "mocha": true,
+ "commonjs": true,
+ "node": true,
+ "browser": true
+ },
+ ...require('../../eslint.config.js')
+}
diff --git a/propagators/propagator-aws-xray-lambda/.npmignore b/propagators/propagator-aws-xray-lambda/.npmignore
new file mode 100644
index 0000000000..9505ba9450
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/.npmignore
@@ -0,0 +1,4 @@
+/bin
+/coverage
+/doc
+/test
diff --git a/propagators/propagator-aws-xray-lambda/LICENSE b/propagators/propagator-aws-xray-lambda/LICENSE
new file mode 100644
index 0000000000..261eeb9e9f
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/LICENSE
@@ -0,0 +1,201 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/propagators/propagator-aws-xray-lambda/README.md b/propagators/propagator-aws-xray-lambda/README.md
new file mode 100644
index 0000000000..6d1183c8f2
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/README.md
@@ -0,0 +1,35 @@
+# OpenTelemetry Propagator AWS X-Ray-Lambda
+
+[![NPM Published Version][npm-img]][npm-url]
+[![Apache License][license-image]][license-image]
+
+**Note: This is an experimental package under active development. New releases may include breaking changes.**
+
+The OpenTelemetry Propagator for AWS X-Ray Lambda provides propagation based on the X-Ray `_X_AMZN_TRACE_ID` environment
+variable in addition to the AWS X-Ray HTTP headers. This propagator should be used only for an AWS Lambda instrumentation.
+
+## Usage
+
+The preferred method for using this propagator is by using the `OTEL_PROPAGATORS` environment variable. For more details,
+see the [semantic conventions specification for AWS Lambda](https://github.com/open-telemetry/semantic-conventions/blob/main/docs/faas/aws-lambda.md).
+
+## Propagator Details
+
+The propagator extracts context from the `_X_AMZN_TRACE_ID` environment variable, except when there is already another
+context active. It also automatically uses the [AWS X-Ray propagator](https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/propagators/opentelemetry-propagator-aws-xray).
+
+## Useful links
+
+- For more information on OpenTelemetry, visit:
+- For more about OpenTelemetry JavaScript:
+- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]
+
+## License
+
+Apache 2.0 - See [LICENSE][license-url] for more information.
+
+[discussions-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/discussions
+[license-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/LICENSE
+[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat
+[npm-url]: https://www.npmjs.com/package/@opentelemetry/propagator-aws-xray
+[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fpropagator-aws-xray.svg
diff --git a/propagators/propagator-aws-xray-lambda/package.json b/propagators/propagator-aws-xray-lambda/package.json
new file mode 100644
index 0000000000..f4273dc81f
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/package.json
@@ -0,0 +1,64 @@
+{
+ "name": "@opentelemetry/propagator-aws-xray-lambda",
+ "version": "0.53.0",
+ "description": "OpenTelemetry AWS Xray propagator provides context propagation for systems that are using AWS X-Ray format.",
+ "main": "build/src/index.js",
+ "module": "build/esm/index.js",
+ "types": "build/src/index.d.ts",
+ "repository": "open-telemetry/opentelemetry-js-contrib",
+ "scripts": {
+ "precompile": "tsc --version && lerna run version:update --scope @opentelemetry/propagator-aws-xray-lambda --include-dependencies",
+ "prewatch": "npm run precompile",
+ "compile": "tsc --build tsconfig.json tsconfig.esm.json",
+ "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json",
+ "test": "nyc mocha test/**/*.test.ts",
+ "lint": "eslint . --ext .ts",
+ "lint:fix": "eslint . --ext .ts --fix",
+ "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json",
+ "prepublishOnly": "npm run compile"
+ },
+ "keywords": [
+ "opentelemetry",
+ "nodejs",
+ "tracing",
+ "awsxray"
+ ],
+ "author": "OpenTelemetry Authors",
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=14"
+ },
+ "files": [
+ "build/esm/**/*.js",
+ "build/esm/**/*.js.map",
+ "build/esm/**/*.d.ts",
+ "build/src/**/*.js",
+ "build/src/**/*.js.map",
+ "build/src/**/*.d.ts"
+ ],
+ "publishConfig": {
+ "access": "public"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.3.0 <1.10.0"
+ },
+ "devDependencies": {
+ "@babel/core": "^7.21.8",
+ "@babel/preset-env": "7.24.6",
+ "@opentelemetry/api": "1.9.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.6.5",
+ "@types/sinon": "10.0.20",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "lerna": "6.6.2",
+ "nyc": "15.1.0",
+ "sinon": "15.1.2",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4"
+ },
+ "dependencies": {
+ "@opentelemetry/propagator-aws-xray": "^1.26.0"
+ },
+ "homepage": "https://github.com/open-telemetry/opentelemetry-js/tree/main/propagators/propagator-aws-xray-lambda#readme"
+}
diff --git a/propagators/propagator-aws-xray-lambda/src/AWSXRayLambdaPropagator.ts b/propagators/propagator-aws-xray-lambda/src/AWSXRayLambdaPropagator.ts
new file mode 100644
index 0000000000..51d7ca4889
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/src/AWSXRayLambdaPropagator.ts
@@ -0,0 +1,74 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import {
+ Context,
+ TextMapPropagator,
+ TextMapSetter,
+ TextMapGetter,
+ isSpanContextValid,
+ defaultTextMapGetter,
+ trace,
+} from '@opentelemetry/api';
+import {
+ AWSXRayPropagator,
+ AWSXRAY_TRACE_ID_HEADER,
+} from '@opentelemetry/propagator-aws-xray';
+
+export const AWSXRAY_TRACE_ID_ENV_VAR = '_X_AMZN_TRACE_ID';
+
+/**
+ * Implementation of the AWS X-Ray Trace Header propagation protocol with special
+ * logic for handling Lambda X-ray environment variable.
+ *
+ * An example AWS Xray Tracing Header is shown below:
+ * X-Amzn-Trace-Id: Root=1-5759e988-bd862e3fe1be46a994272793;Parent=53995c3f42cd8ad8;Sampled=1
+ */
+export class AWSXRayLambdaPropagator implements TextMapPropagator {
+ private _awsXrayPropagator = new AWSXRayPropagator();
+
+ inject(context: Context, carrier: unknown, setter: TextMapSetter) {
+ this._awsXrayPropagator.inject(context, carrier, setter);
+ }
+
+ extract(context: Context, carrier: unknown, getter: TextMapGetter): Context {
+ const xrayContext = this._awsXrayPropagator.extract(
+ context,
+ carrier,
+ getter
+ );
+
+ const spanContext = trace.getSpanContext(context);
+ if (spanContext && isSpanContextValid(spanContext)) {
+ return xrayContext;
+ }
+
+ const xrayEnvVar = process.env[AWSXRAY_TRACE_ID_ENV_VAR];
+ if (!xrayEnvVar) {
+ return xrayContext;
+ }
+
+ return this._awsXrayPropagator.extract(
+ xrayContext,
+ { [AWSXRAY_TRACE_ID_HEADER]: xrayEnvVar },
+ defaultTextMapGetter
+ );
+ }
+
+ fields(): string[] {
+ return this._awsXrayPropagator.fields();
+ }
+}
diff --git a/propagators/propagator-aws-xray-lambda/src/index.ts b/propagators/propagator-aws-xray-lambda/src/index.ts
new file mode 100644
index 0000000000..0841580d07
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/src/index.ts
@@ -0,0 +1,17 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+export { AWSXRayLambdaPropagator } from './AWSXRayLambdaPropagator';
diff --git a/propagators/propagator-aws-xray-lambda/test/AWSXRayLambdaPropagator.test.ts b/propagators/propagator-aws-xray-lambda/test/AWSXRayLambdaPropagator.test.ts
new file mode 100644
index 0000000000..23f01482c7
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/test/AWSXRayLambdaPropagator.test.ts
@@ -0,0 +1,207 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import * as assert from 'assert';
+
+import {
+ defaultTextMapGetter,
+ defaultTextMapSetter,
+ ROOT_CONTEXT,
+ SpanContext,
+ TraceFlags,
+ trace,
+ context,
+} from '@opentelemetry/api';
+import * as sinon from 'sinon';
+
+import { AWSXRayLambdaPropagator } from '../src';
+import { AWSXRAY_TRACE_ID_ENV_VAR } from '../src/AWSXRayLambdaPropagator';
+import {
+ AWSXRAY_TRACE_ID_HEADER,
+ AWSXRayPropagator,
+} from '@opentelemetry/propagator-aws-xray';
+
+describe('AWSXRayPropagator', () => {
+ const xrayLambdaPropagator = new AWSXRayLambdaPropagator();
+
+ let carrier: { [key: string]: unknown };
+
+ beforeEach(() => {
+ carrier = {};
+ });
+
+ describe('.inject()', () => {
+ it('should use AWSXRayPropagator inject()', () => {
+ const spy = sinon.spy(AWSXRayPropagator.prototype, 'inject');
+ assert.equal(spy.callCount, 0);
+ xrayLambdaPropagator.inject(
+ context.active(),
+ carrier,
+ defaultTextMapSetter
+ );
+ sinon.assert.calledOnceWithExactly(
+ spy,
+ context.active(),
+ carrier,
+ defaultTextMapSetter
+ );
+ });
+ });
+
+ describe('.extract()', () => {
+ it('should extract context from the _X_AMZN_TRACE_ID env variable', () => {
+ const xrayEnvSpanId = '53995c3f42cd8ad8';
+ const xrayEnvTraceId = '8a3c60f7d188f8fa79d48a391a778fa6';
+ process.env[AWSXRAY_TRACE_ID_ENV_VAR] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayLambdaPropagator.extract(
+ ROOT_CONTEXT,
+ carrier,
+ defaultTextMapGetter
+ )
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, {
+ traceId: xrayEnvTraceId,
+ spanId: xrayEnvSpanId,
+ isRemote: true,
+ traceFlags: TraceFlags.SAMPLED,
+ });
+ });
+
+ it('should return current context if one exists', () => {
+ const traceId = 'fd14414f1e61351035c43863714b4aa8';
+ const spanId = '81e77faacf9f61f3';
+ const existingContext: SpanContext = {
+ traceId: traceId,
+ spanId: spanId,
+ traceFlags: TraceFlags.SAMPLED,
+ isRemote: true,
+ };
+ const ctx = trace.setSpanContext(context.active(), existingContext);
+
+ process.env[AWSXRAY_TRACE_ID_ENV_VAR] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1';
+
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayLambdaPropagator.extract(ctx, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, {
+ traceId: traceId,
+ spanId: spanId,
+ isRemote: true,
+ traceFlags: TraceFlags.SAMPLED,
+ });
+ });
+
+ it('should return X-ray context from carrier when there is an existing context', () => {
+ const traceId = 'fd14414f1e61351035c43863714b4aa8';
+ const spanId = '81e77faacf9f61f3';
+ const existingContext: SpanContext = {
+ traceId: traceId,
+ spanId: spanId,
+ traceFlags: TraceFlags.SAMPLED,
+ isRemote: true,
+ };
+ const ctx = trace.setSpanContext(context.active(), existingContext);
+
+ process.env[AWSXRAY_TRACE_ID_ENV_VAR] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1';
+
+ const xrayHeaderSpanId = '4635c8688f46eb5d';
+ const xrayHeaderTraceId = '48165d1ad6255f4cb1ddf9999ef6d536';
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-48165d1a-d6255f4cb1ddf9999ef6d536;Parent=4635c8688f46eb5d;Sampled=1';
+
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayLambdaPropagator.extract(ctx, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, {
+ traceId: xrayHeaderTraceId,
+ spanId: xrayHeaderSpanId,
+ isRemote: true,
+ traceFlags: TraceFlags.SAMPLED,
+ });
+ });
+
+ it('should return env variable context if there is no active context but carrier also has xray headers', () => {
+ const xrayEnvSpanId = '53995c3f42cd8ad8';
+ const xrayEnvTraceId = '8a3c60f7d188f8fa79d48a391a778fa6';
+ process.env[AWSXRAY_TRACE_ID_ENV_VAR] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1';
+
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-48165d1a-d6255f4cb1ddf9999ef6d536;Parent=4635c8688f46eb5d;Sampled=1';
+
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayLambdaPropagator.extract(
+ context.active(),
+ carrier,
+ defaultTextMapGetter
+ )
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, {
+ traceId: xrayEnvTraceId,
+ spanId: xrayEnvSpanId,
+ isRemote: true,
+ traceFlags: TraceFlags.SAMPLED,
+ });
+ });
+
+ it('should return current context if one exists', () => {
+ delete process.env[AWSXRAY_TRACE_ID_ENV_VAR];
+
+ const xrayHeaderSpanId = '53995c3f42cd8ad8';
+ const xrayHeaderTraceId = '8a3c60f7d188f8fa79d48a391a778fa6';
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayLambdaPropagator.extract(
+ ROOT_CONTEXT,
+ carrier,
+ defaultTextMapGetter
+ )
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, {
+ traceId: xrayHeaderTraceId,
+ spanId: xrayHeaderSpanId,
+ isRemote: true,
+ traceFlags: TraceFlags.SAMPLED,
+ });
+ });
+ });
+
+ describe('.fields()', () => {
+ it('should return a field with AWS X-Ray Trace ID header', () => {
+ const actualFields = xrayLambdaPropagator.fields();
+ assert.deepStrictEqual([AWSXRAY_TRACE_ID_HEADER], actualFields);
+ });
+ });
+});
diff --git a/propagators/propagator-aws-xray-lambda/test/index-webpack.ts b/propagators/propagator-aws-xray-lambda/test/index-webpack.ts
new file mode 100644
index 0000000000..061a48ccfa
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/test/index-webpack.ts
@@ -0,0 +1,20 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+const testsContext = require.context('.', true, /test$/);
+testsContext.keys().forEach(testsContext);
+
+const srcContext = require.context('.', true, /src$/);
+srcContext.keys().forEach(srcContext);
diff --git a/propagators/propagator-aws-xray-lambda/tsconfig.esm.json b/propagators/propagator-aws-xray-lambda/tsconfig.esm.json
new file mode 100644
index 0000000000..a94adff6aa
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/tsconfig.esm.json
@@ -0,0 +1,11 @@
+{
+ "extends": "../../tsconfig.base.esm.json",
+ "compilerOptions": {
+ "rootDir": "src",
+ "outDir": "build/esm",
+ "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo"
+ },
+ "include": [
+ "src/**/*.ts"
+ ]
+}
diff --git a/propagators/propagator-aws-xray-lambda/tsconfig.esnext.json b/propagators/propagator-aws-xray-lambda/tsconfig.esnext.json
new file mode 100644
index 0000000000..65a918cf6b
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/tsconfig.esnext.json
@@ -0,0 +1,11 @@
+{
+ "extends": "../../tsconfig.base.esnext.json",
+ "compilerOptions": {
+ "rootDir": "src",
+ "outDir": "build/esnext",
+ "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo"
+ },
+ "include": [
+ "src/**/*.ts"
+ ]
+}
diff --git a/propagators/propagator-aws-xray-lambda/tsconfig.json b/propagators/propagator-aws-xray-lambda/tsconfig.json
new file mode 100644
index 0000000000..4078877ce6
--- /dev/null
+++ b/propagators/propagator-aws-xray-lambda/tsconfig.json
@@ -0,0 +1,11 @@
+{
+ "extends": "../../tsconfig.base",
+ "compilerOptions": {
+ "rootDir": ".",
+ "outDir": "build"
+ },
+ "include": [
+ "src/**/*.ts",
+ "test/**/*.ts"
+ ]
+}
diff --git a/propagators/propagator-aws-xray/.eslintignore b/propagators/propagator-aws-xray/.eslintignore
new file mode 100644
index 0000000000..378eac25d3
--- /dev/null
+++ b/propagators/propagator-aws-xray/.eslintignore
@@ -0,0 +1 @@
+build
diff --git a/propagators/propagator-aws-xray/.eslintrc.js b/propagators/propagator-aws-xray/.eslintrc.js
new file mode 100644
index 0000000000..56b0964fe6
--- /dev/null
+++ b/propagators/propagator-aws-xray/.eslintrc.js
@@ -0,0 +1,9 @@
+module.exports = {
+ "env": {
+ "mocha": true,
+ "commonjs": true,
+ "node": true,
+ "browser": true
+ },
+ ...require('../../eslint.config.js')
+}
diff --git a/propagators/propagator-aws-xray/LICENSE b/propagators/propagator-aws-xray/LICENSE
new file mode 100644
index 0000000000..261eeb9e9f
--- /dev/null
+++ b/propagators/propagator-aws-xray/LICENSE
@@ -0,0 +1,201 @@
+ Apache License
+ Version 2.0, January 2004
+ http://www.apache.org/licenses/
+
+ TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+ 1. Definitions.
+
+ "License" shall mean the terms and conditions for use, reproduction,
+ and distribution as defined by Sections 1 through 9 of this document.
+
+ "Licensor" shall mean the copyright owner or entity authorized by
+ the copyright owner that is granting the License.
+
+ "Legal Entity" shall mean the union of the acting entity and all
+ other entities that control, are controlled by, or are under common
+ control with that entity. For the purposes of this definition,
+ "control" means (i) the power, direct or indirect, to cause the
+ direction or management of such entity, whether by contract or
+ otherwise, or (ii) ownership of fifty percent (50%) or more of the
+ outstanding shares, or (iii) beneficial ownership of such entity.
+
+ "You" (or "Your") shall mean an individual or Legal Entity
+ exercising permissions granted by this License.
+
+ "Source" form shall mean the preferred form for making modifications,
+ including but not limited to software source code, documentation
+ source, and configuration files.
+
+ "Object" form shall mean any form resulting from mechanical
+ transformation or translation of a Source form, including but
+ not limited to compiled object code, generated documentation,
+ and conversions to other media types.
+
+ "Work" shall mean the work of authorship, whether in Source or
+ Object form, made available under the License, as indicated by a
+ copyright notice that is included in or attached to the work
+ (an example is provided in the Appendix below).
+
+ "Derivative Works" shall mean any work, whether in Source or Object
+ form, that is based on (or derived from) the Work and for which the
+ editorial revisions, annotations, elaborations, or other modifications
+ represent, as a whole, an original work of authorship. For the purposes
+ of this License, Derivative Works shall not include works that remain
+ separable from, or merely link (or bind by name) to the interfaces of,
+ the Work and Derivative Works thereof.
+
+ "Contribution" shall mean any work of authorship, including
+ the original version of the Work and any modifications or additions
+ to that Work or Derivative Works thereof, that is intentionally
+ submitted to Licensor for inclusion in the Work by the copyright owner
+ or by an individual or Legal Entity authorized to submit on behalf of
+ the copyright owner. For the purposes of this definition, "submitted"
+ means any form of electronic, verbal, or written communication sent
+ to the Licensor or its representatives, including but not limited to
+ communication on electronic mailing lists, source code control systems,
+ and issue tracking systems that are managed by, or on behalf of, the
+ Licensor for the purpose of discussing and improving the Work, but
+ excluding communication that is conspicuously marked or otherwise
+ designated in writing by the copyright owner as "Not a Contribution."
+
+ "Contributor" shall mean Licensor and any individual or Legal Entity
+ on behalf of whom a Contribution has been received by Licensor and
+ subsequently incorporated within the Work.
+
+ 2. Grant of Copyright License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ copyright license to reproduce, prepare Derivative Works of,
+ publicly display, publicly perform, sublicense, and distribute the
+ Work and such Derivative Works in Source or Object form.
+
+ 3. Grant of Patent License. Subject to the terms and conditions of
+ this License, each Contributor hereby grants to You a perpetual,
+ worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+ (except as stated in this section) patent license to make, have made,
+ use, offer to sell, sell, import, and otherwise transfer the Work,
+ where such license applies only to those patent claims licensable
+ by such Contributor that are necessarily infringed by their
+ Contribution(s) alone or by combination of their Contribution(s)
+ with the Work to which such Contribution(s) was submitted. If You
+ institute patent litigation against any entity (including a
+ cross-claim or counterclaim in a lawsuit) alleging that the Work
+ or a Contribution incorporated within the Work constitutes direct
+ or contributory patent infringement, then any patent licenses
+ granted to You under this License for that Work shall terminate
+ as of the date such litigation is filed.
+
+ 4. Redistribution. You may reproduce and distribute copies of the
+ Work or Derivative Works thereof in any medium, with or without
+ modifications, and in Source or Object form, provided that You
+ meet the following conditions:
+
+ (a) You must give any other recipients of the Work or
+ Derivative Works a copy of this License; and
+
+ (b) You must cause any modified files to carry prominent notices
+ stating that You changed the files; and
+
+ (c) You must retain, in the Source form of any Derivative Works
+ that You distribute, all copyright, patent, trademark, and
+ attribution notices from the Source form of the Work,
+ excluding those notices that do not pertain to any part of
+ the Derivative Works; and
+
+ (d) If the Work includes a "NOTICE" text file as part of its
+ distribution, then any Derivative Works that You distribute must
+ include a readable copy of the attribution notices contained
+ within such NOTICE file, excluding those notices that do not
+ pertain to any part of the Derivative Works, in at least one
+ of the following places: within a NOTICE text file distributed
+ as part of the Derivative Works; within the Source form or
+ documentation, if provided along with the Derivative Works; or,
+ within a display generated by the Derivative Works, if and
+ wherever such third-party notices normally appear. The contents
+ of the NOTICE file are for informational purposes only and
+ do not modify the License. You may add Your own attribution
+ notices within Derivative Works that You distribute, alongside
+ or as an addendum to the NOTICE text from the Work, provided
+ that such additional attribution notices cannot be construed
+ as modifying the License.
+
+ You may add Your own copyright statement to Your modifications and
+ may provide additional or different license terms and conditions
+ for use, reproduction, or distribution of Your modifications, or
+ for any such Derivative Works as a whole, provided Your use,
+ reproduction, and distribution of the Work otherwise complies with
+ the conditions stated in this License.
+
+ 5. Submission of Contributions. Unless You explicitly state otherwise,
+ any Contribution intentionally submitted for inclusion in the Work
+ by You to the Licensor shall be under the terms and conditions of
+ this License, without any additional terms or conditions.
+ Notwithstanding the above, nothing herein shall supersede or modify
+ the terms of any separate license agreement you may have executed
+ with Licensor regarding such Contributions.
+
+ 6. Trademarks. This License does not grant permission to use the trade
+ names, trademarks, service marks, or product names of the Licensor,
+ except as required for reasonable and customary use in describing the
+ origin of the Work and reproducing the content of the NOTICE file.
+
+ 7. Disclaimer of Warranty. Unless required by applicable law or
+ agreed to in writing, Licensor provides the Work (and each
+ Contributor provides its Contributions) on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+ implied, including, without limitation, any warranties or conditions
+ of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+ PARTICULAR PURPOSE. You are solely responsible for determining the
+ appropriateness of using or redistributing the Work and assume any
+ risks associated with Your exercise of permissions under this License.
+
+ 8. Limitation of Liability. In no event and under no legal theory,
+ whether in tort (including negligence), contract, or otherwise,
+ unless required by applicable law (such as deliberate and grossly
+ negligent acts) or agreed to in writing, shall any Contributor be
+ liable to You for damages, including any direct, indirect, special,
+ incidental, or consequential damages of any character arising as a
+ result of this License or out of the use or inability to use the
+ Work (including but not limited to damages for loss of goodwill,
+ work stoppage, computer failure or malfunction, or any and all
+ other commercial damages or losses), even if such Contributor
+ has been advised of the possibility of such damages.
+
+ 9. Accepting Warranty or Additional Liability. While redistributing
+ the Work or Derivative Works thereof, You may choose to offer,
+ and charge a fee for, acceptance of support, warranty, indemnity,
+ or other liability obligations and/or rights consistent with this
+ License. However, in accepting such obligations, You may act only
+ on Your own behalf and on Your sole responsibility, not on behalf
+ of any other Contributor, and only if You agree to indemnify,
+ defend, and hold each Contributor harmless for any liability
+ incurred by, or claims asserted against, such Contributor by reason
+ of your accepting any such warranty or additional liability.
+
+ END OF TERMS AND CONDITIONS
+
+ APPENDIX: How to apply the Apache License to your work.
+
+ To apply the Apache License to your work, attach the following
+ boilerplate notice, with the fields enclosed by brackets "[]"
+ replaced with your own identifying information. (Don't include
+ the brackets!) The text should be enclosed in the appropriate
+ comment syntax for the file format. We also recommend that a
+ file or class name and description of purpose be included on the
+ same "printed page" as the copyright notice for easier
+ identification within third-party archives.
+
+ Copyright [yyyy] [name of copyright owner]
+
+ Licensed under the Apache License, Version 2.0 (the "License");
+ you may not use this file except in compliance with the License.
+ You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
diff --git a/propagators/propagator-aws-xray/README.md b/propagators/propagator-aws-xray/README.md
new file mode 100644
index 0000000000..d6282a3ac2
--- /dev/null
+++ b/propagators/propagator-aws-xray/README.md
@@ -0,0 +1,74 @@
+# OpenTelemetry Propagator AWS X-Ray
+
+[![NPM Published Version][npm-img]][npm-url]
+[![Apache License][license-image]][license-image]
+
+[component owners](https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/.github/component_owners.yml): @jj22ee
+
+The OpenTelemetry Propagator for AWS X-Ray provides HTTP header propagation for systems that are using AWS `X-Amzn-Trace-Id` format.
+This propagator translates the OpenTelemetry SpanContext into the equivalent AWS header format, for use with the OpenTelemetry JS SDK.
+`TraceState` is currently not propagated.
+
+## Installation
+
+```sh
+npm install --save @opentelemetry/propagator-aws-xray
+```
+
+## Usage
+
+In the [global tracer configuration file](https://opentelemetry.io/docs/instrumentation/js/getting-started/nodejs/#setup), configure the following:
+
+```js
+const { NodeTracerProvider } = require('@opentelemetry/sdk-trace-node');
+const { AWSXRayPropagator } = require('@opentelemetry/propagator-aws-xray');
+// ...
+
+const provider = new NodeTracerProvider();
+
+// Set the global trace context propagator to use X-Ray formatted trace header
+provider.register({
+ propagator: new AWSXRayPropagator()
+});
+```
+
+## Propagator Details
+
+Example header:`X-Amzn-Trace-Id: Root=1-5759e988-bd862e3fe1be46a994272793;Parent=53995c3f42cd8ad8;Sampled=1`
+
+The header consists of three parts: the root trace ID, the parent ID and the sampling decision.
+
+### Root - The AWS X-Ray format trace ID
+
+- Format: (spec-version)-(timestamp)-(UUID)
+ - spec_version - The version of the AWS X-Ray header format. Currently, only "1" is valid.
+ - timestamp - 32-bit number in base16 format, corresponds to the first 8 characters of the OpenTelemetry trace ID. Note, while X-Ray calls this timestamp, for the purpose of propagation it is opaque and any value will work.
+ - UUID - 96-bit random number in base16 format, corresponds to the last 10 characters of the OpenTelemetry trace ID.
+
+Root is analogous to the [OpenTelemetry Trace ID](https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/overview.md#spancontext), with some small format changes.
+For additional reading, see the [AWS X-Ray Trace ID](https://docs.aws.amazon.com/xray/latest/devguide/xray-api-sendingdata.html#xray-api-traceids) public documentation.
+
+### Parent - The ID of the AWS X-Ray Segment
+
+- 64-bit random number in base16 format. Populated from the [OpenTelemetry Span ID](https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/overview.md#spancontext).
+
+### Sampled - The sampling decision
+
+- Defined in the AWS X-Ray specification as a tri-state field, with "0", "1" and "?" as valid values. Only "0" and "1" are used in this propagator. If "?", a new trace will be started.
+- Populated from the [OpenTelemetry trace flags](https://github.com/open-telemetry/opentelemetry-specification/blob/master/specification/overview.md#spancontext).
+
+## Useful links
+
+- For more information on OpenTelemetry, visit:
+- For more about OpenTelemetry JavaScript:
+- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]
+
+## License
+
+Apache 2.0 - See [LICENSE][license-url] for more information.
+
+[discussions-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/discussions
+[license-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/LICENSE
+[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat
+[npm-url]: https://www.npmjs.com/package/@opentelemetry/propagator-aws-xray
+[npm-img]: https://badge.fury.io/js/%40opentelemetry%2Fpropagator-aws-xray.svg
diff --git a/propagators/propagator-aws-xray/karma.conf.js b/propagators/propagator-aws-xray/karma.conf.js
new file mode 100644
index 0000000000..133e22df63
--- /dev/null
+++ b/propagators/propagator-aws-xray/karma.conf.js
@@ -0,0 +1,43 @@
+/*!
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+const webpack = require('webpack');
+
+const karmaWebpackConfig = require('../../karma.webpack');
+const karmaBaseConfig = require('../../karma.base');
+
+module.exports = (config) => {
+ {
+ const plugins = karmaWebpackConfig.plugins = [];
+ plugins.push(new webpack.ProvidePlugin({
+ process: 'process/browser',
+ }));
+ }
+
+ {
+ const plugins = karmaBaseConfig.plugins = [];
+ const toAdd = Object.keys(require('./package.json').devDependencies)
+ .filter((packageName) => packageName.startsWith('karma-'))
+ .map((packageName) => require(packageName));
+ plugins.push(
+ ...toAdd
+ );
+ }
+
+ config.set(Object.assign({}, karmaBaseConfig, {
+ webpack: karmaWebpackConfig
+ }))
+};
diff --git a/propagators/propagator-aws-xray/package.json b/propagators/propagator-aws-xray/package.json
new file mode 100644
index 0000000000..f11a4b7f36
--- /dev/null
+++ b/propagators/propagator-aws-xray/package.json
@@ -0,0 +1,80 @@
+{
+ "name": "@opentelemetry/propagator-aws-xray",
+ "version": "1.26.0",
+ "description": "OpenTelemetry AWS Xray propagator provides context propagation for systems that are using AWS X-Ray format.",
+ "main": "build/src/index.js",
+ "module": "build/esm/index.js",
+ "types": "build/src/index.d.ts",
+ "repository": "open-telemetry/opentelemetry-js-contrib",
+ "scripts": {
+ "prepublishOnly": "npm run compile",
+ "compile": "tsc --build tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
+ "test": "nyc mocha test/**/*.test.ts",
+ "test:browser": "nyc karma start --single-run",
+ "tdd": "npm run tdd:node",
+ "tdd:node": "npm run test -- --watch-extensions ts --watch",
+ "tdd:browser": "karma start",
+ "clean": "tsc --build --clean tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
+ "lint": "eslint . --ext .ts",
+ "lint:fix": "eslint . --ext .ts --fix",
+ "version": "node ../../scripts/version-update.js",
+ "watch": "tsc --build --watch tsconfig.json tsconfig.esm.json tsconfig.esnext.json",
+ "precompile": "lerna run version --scope @opentelemetry/propagator-aws-xray --include-dependencies",
+ "prewatch": "npm run precompile"
+ },
+ "keywords": [
+ "opentelemetry",
+ "nodejs",
+ "tracing",
+ "profiling",
+ "awsxray"
+ ],
+ "author": "OpenTelemetry Authors",
+ "license": "Apache-2.0",
+ "engines": {
+ "node": ">=14"
+ },
+ "files": [
+ "build/esm/**/*.js",
+ "build/esm/**/*.js.map",
+ "build/esm/**/*.d.ts",
+ "build/esnext/**/*.js",
+ "build/esnext/**/*.js.map",
+ "build/esnext/**/*.d.ts",
+ "build/src/**/*.js",
+ "build/src/**/*.js.map",
+ "build/src/**/*.d.ts",
+ "LICENSE",
+ "README.md"
+ ],
+ "publishConfig": {
+ "access": "public"
+ },
+ "peerDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0"
+ },
+ "devDependencies": {
+ "@opentelemetry/api": ">=1.0.0 <1.10.0",
+ "@opentelemetry/core": "^1.0.0",
+ "@types/mocha": "10.0.6",
+ "@types/node": "18.6.5",
+ "@types/sinon": "10.0.20",
+ "@types/webpack-env": "1.16.3",
+ "babel-loader": "8.3.0",
+ "babel-plugin-istanbul": "7.0.0",
+ "karma": "6.4.4",
+ "karma-chrome-launcher": "3.1.0",
+ "karma-coverage": "2.2.1",
+ "karma-mocha": "2.0.1",
+ "karma-spec-reporter": "0.0.36",
+ "karma-webpack": "5.0.1",
+ "lerna": "6.6.2",
+ "nyc": "15.1.0",
+ "ts-loader": "9.5.1",
+ "typescript": "4.4.4",
+ "webpack": "5.95.0",
+ "webpack-cli": "5.1.4",
+ "webpack-merge": "5.10.0"
+ },
+ "homepage": "https://github.com/open-telemetry/opentelemetry-js-contrib/tree/main/propagators/propagator-aws-xray#readme"
+}
diff --git a/propagators/propagator-aws-xray/src/AWSXRayPropagator.ts b/propagators/propagator-aws-xray/src/AWSXRayPropagator.ts
new file mode 100644
index 0000000000..e06568d9ee
--- /dev/null
+++ b/propagators/propagator-aws-xray/src/AWSXRayPropagator.ts
@@ -0,0 +1,200 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import {
+ trace,
+ Context,
+ TextMapPropagator,
+ SpanContext,
+ TraceFlags,
+ TextMapSetter,
+ TextMapGetter,
+ isSpanContextValid,
+ isValidSpanId,
+ isValidTraceId,
+ INVALID_TRACEID,
+ INVALID_SPANID,
+ INVALID_SPAN_CONTEXT,
+} from '@opentelemetry/api';
+
+export const AWSXRAY_TRACE_ID_HEADER = 'x-amzn-trace-id';
+
+const TRACE_HEADER_DELIMITER = ';';
+const KV_DELIMITER = '=';
+
+const TRACE_ID_KEY = 'Root';
+const TRACE_ID_LENGTH = 35;
+const TRACE_ID_VERSION = '1';
+const TRACE_ID_DELIMITER = '-';
+const TRACE_ID_DELIMITER_INDEX_1 = 1;
+const TRACE_ID_DELIMITER_INDEX_2 = 10;
+const TRACE_ID_FIRST_PART_LENGTH = 8;
+
+const PARENT_ID_KEY = 'Parent';
+
+const SAMPLED_FLAG_KEY = 'Sampled';
+const IS_SAMPLED = '1';
+const NOT_SAMPLED = '0';
+
+/**
+ * Implementation of the AWS X-Ray Trace Header propagation protocol. See AWS
+ * Tracing header spec
+ *
+ * An example AWS Xray Tracing Header is shown below:
+ * X-Amzn-Trace-Id: Root=1-5759e988-bd862e3fe1be46a994272793;Parent=53995c3f42cd8ad8;Sampled=1
+ */
+export class AWSXRayPropagator implements TextMapPropagator {
+ inject(context: Context, carrier: unknown, setter: TextMapSetter) {
+ const spanContext = trace.getSpan(context)?.spanContext();
+ if (!spanContext || !isSpanContextValid(spanContext)) return;
+
+ const otTraceId = spanContext.traceId;
+ const timestamp = otTraceId.substring(0, TRACE_ID_FIRST_PART_LENGTH);
+ const randomNumber = otTraceId.substring(TRACE_ID_FIRST_PART_LENGTH);
+
+ const parentId = spanContext.spanId;
+ const samplingFlag =
+ (TraceFlags.SAMPLED & spanContext.traceFlags) === TraceFlags.SAMPLED
+ ? IS_SAMPLED
+ : NOT_SAMPLED;
+ // TODO: Add OT trace state to the X-Ray trace header
+
+ const traceHeader = `Root=1-${timestamp}-${randomNumber};Parent=${parentId};Sampled=${samplingFlag}`;
+ setter.set(carrier, AWSXRAY_TRACE_ID_HEADER, traceHeader);
+ }
+
+ extract(context: Context, carrier: unknown, getter: TextMapGetter): Context {
+ const spanContext = this.getSpanContextFromHeader(carrier, getter);
+ if (!isSpanContextValid(spanContext)) return context;
+
+ return trace.setSpan(context, trace.wrapSpanContext(spanContext));
+ }
+
+ fields(): string[] {
+ return [AWSXRAY_TRACE_ID_HEADER];
+ }
+
+ private getSpanContextFromHeader(
+ carrier: unknown,
+ getter: TextMapGetter
+ ): SpanContext {
+ const headerKeys = getter.keys(carrier);
+ const relevantHeaderKey = headerKeys.find(e => {
+ return e.toLowerCase() === AWSXRAY_TRACE_ID_HEADER;
+ });
+ if (!relevantHeaderKey) {
+ return INVALID_SPAN_CONTEXT;
+ }
+ const traceHeader = getter.get(carrier, relevantHeaderKey);
+
+ if (!traceHeader || typeof traceHeader !== 'string') {
+ return INVALID_SPAN_CONTEXT;
+ }
+
+ let pos = 0;
+ let trimmedPart: string;
+ let parsedTraceId = INVALID_TRACEID;
+ let parsedSpanId = INVALID_SPANID;
+ let parsedTraceFlags = null;
+ while (pos < traceHeader.length) {
+ const delimiterIndex = traceHeader.indexOf(TRACE_HEADER_DELIMITER, pos);
+ if (delimiterIndex >= 0) {
+ trimmedPart = traceHeader.substring(pos, delimiterIndex).trim();
+ pos = delimiterIndex + 1;
+ } else {
+ //last part
+ trimmedPart = traceHeader.substring(pos).trim();
+ pos = traceHeader.length;
+ }
+ const equalsIndex = trimmedPart.indexOf(KV_DELIMITER);
+
+ const value = trimmedPart.substring(equalsIndex + 1);
+
+ if (trimmedPart.startsWith(TRACE_ID_KEY)) {
+ parsedTraceId = AWSXRayPropagator._parseTraceId(value);
+ } else if (trimmedPart.startsWith(PARENT_ID_KEY)) {
+ parsedSpanId = AWSXRayPropagator._parseSpanId(value);
+ } else if (trimmedPart.startsWith(SAMPLED_FLAG_KEY)) {
+ parsedTraceFlags = AWSXRayPropagator._parseTraceFlag(value);
+ }
+ }
+ if (parsedTraceFlags === null) {
+ return INVALID_SPAN_CONTEXT;
+ }
+ const resultSpanContext: SpanContext = {
+ traceId: parsedTraceId,
+ spanId: parsedSpanId,
+ traceFlags: parsedTraceFlags,
+ isRemote: true,
+ };
+ if (!isSpanContextValid(resultSpanContext)) {
+ return INVALID_SPAN_CONTEXT;
+ }
+ return resultSpanContext;
+ }
+
+ private static _parseTraceId(xrayTraceId: string): string {
+ // Check length of trace id
+ if (xrayTraceId.length !== TRACE_ID_LENGTH) {
+ return INVALID_TRACEID;
+ }
+
+ // Check version trace id version
+ if (!xrayTraceId.startsWith(TRACE_ID_VERSION)) {
+ return INVALID_TRACEID;
+ }
+
+ // Check delimiters
+ if (
+ xrayTraceId.charAt(TRACE_ID_DELIMITER_INDEX_1) !== TRACE_ID_DELIMITER ||
+ xrayTraceId.charAt(TRACE_ID_DELIMITER_INDEX_2) !== TRACE_ID_DELIMITER
+ ) {
+ return INVALID_TRACEID;
+ }
+
+ const epochPart = xrayTraceId.substring(
+ TRACE_ID_DELIMITER_INDEX_1 + 1,
+ TRACE_ID_DELIMITER_INDEX_2
+ );
+ const uniquePart = xrayTraceId.substring(
+ TRACE_ID_DELIMITER_INDEX_2 + 1,
+ TRACE_ID_LENGTH
+ );
+ const resTraceId = epochPart + uniquePart;
+
+ // Check the content of trace id
+ if (!isValidTraceId(resTraceId)) {
+ return INVALID_TRACEID;
+ }
+
+ return resTraceId;
+ }
+
+ private static _parseSpanId(xrayParentId: string): string {
+ return isValidSpanId(xrayParentId) ? xrayParentId : INVALID_SPANID;
+ }
+
+ private static _parseTraceFlag(xraySampledFlag: string): TraceFlags | null {
+ if (xraySampledFlag === NOT_SAMPLED) {
+ return TraceFlags.NONE;
+ }
+ if (xraySampledFlag === IS_SAMPLED) {
+ return TraceFlags.SAMPLED;
+ }
+ return null;
+ }
+}
diff --git a/propagators/propagator-aws-xray/src/index.ts b/propagators/propagator-aws-xray/src/index.ts
new file mode 100644
index 0000000000..ff6d1ed17e
--- /dev/null
+++ b/propagators/propagator-aws-xray/src/index.ts
@@ -0,0 +1,20 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+export {
+ AWSXRAY_TRACE_ID_HEADER,
+ AWSXRayPropagator,
+} from './AWSXRayPropagator';
diff --git a/propagators/propagator-aws-xray/test/AWSXRayPropagator.test.ts b/propagators/propagator-aws-xray/test/AWSXRayPropagator.test.ts
new file mode 100644
index 0000000000..5cf47916d5
--- /dev/null
+++ b/propagators/propagator-aws-xray/test/AWSXRayPropagator.test.ts
@@ -0,0 +1,328 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+import * as assert from 'assert';
+
+import {
+ defaultTextMapGetter,
+ defaultTextMapSetter,
+ INVALID_SPAN_CONTEXT,
+ ROOT_CONTEXT,
+ SpanContext,
+ TraceFlags,
+ trace,
+} from '@opentelemetry/api';
+import { TraceState } from '@opentelemetry/core';
+
+import { AWSXRAY_TRACE_ID_HEADER, AWSXRayPropagator } from '../src';
+
+describe('AWSXRayPropagator', () => {
+ const xrayPropagator = new AWSXRayPropagator();
+ const TRACE_ID = '8a3c60f7d188f8fa79d48a391a778fa6';
+ const SPAN_ID = '53995c3f42cd8ad8';
+ const SAMPLED_TRACE_FLAG = TraceFlags.SAMPLED;
+ const NOT_SAMPLED_TRACE_FLAG = TraceFlags.NONE;
+
+ let carrier: { [key: string]: unknown };
+
+ beforeEach(() => {
+ carrier = {};
+ });
+
+ describe('.inject()', () => {
+ it('should inject sampled context', () => {
+ const spanContext: SpanContext = {
+ traceId: TRACE_ID,
+ spanId: SPAN_ID,
+ traceFlags: SAMPLED_TRACE_FLAG,
+ };
+ xrayPropagator.inject(
+ trace.setSpan(ROOT_CONTEXT, trace.wrapSpanContext(spanContext)),
+ carrier,
+ defaultTextMapSetter
+ );
+
+ assert.deepStrictEqual(
+ carrier[AWSXRAY_TRACE_ID_HEADER],
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1'
+ );
+ });
+
+ it('should inject not sampled context', () => {
+ const spanContext: SpanContext = {
+ traceId: TRACE_ID,
+ spanId: SPAN_ID,
+ traceFlags: NOT_SAMPLED_TRACE_FLAG,
+ };
+ xrayPropagator.inject(
+ trace.setSpan(ROOT_CONTEXT, trace.wrapSpanContext(spanContext)),
+ carrier,
+ defaultTextMapSetter
+ );
+
+ assert.deepStrictEqual(
+ carrier[AWSXRAY_TRACE_ID_HEADER],
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=0'
+ );
+ });
+
+ it('should inject with TraceState', () => {
+ const traceState = new TraceState();
+ traceState.set('foo', 'bar');
+ const spanContext: SpanContext = {
+ traceId: TRACE_ID,
+ spanId: SPAN_ID,
+ traceFlags: SAMPLED_TRACE_FLAG,
+ traceState: traceState,
+ };
+ xrayPropagator.inject(
+ trace.setSpan(ROOT_CONTEXT, trace.wrapSpanContext(spanContext)),
+ carrier,
+ defaultTextMapSetter
+ );
+
+ // TODO: assert trace state when the propagator supports it
+ assert.deepStrictEqual(
+ carrier[AWSXRAY_TRACE_ID_HEADER],
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1'
+ );
+ });
+
+ it('inject without spanContext - should inject nothing', () => {
+ xrayPropagator.inject(ROOT_CONTEXT, carrier, defaultTextMapSetter);
+
+ assert.deepStrictEqual(carrier, {});
+ });
+
+ it('inject default invalid spanContext - should inject nothing', () => {
+ xrayPropagator.inject(
+ trace.setSpan(
+ ROOT_CONTEXT,
+ trace.wrapSpanContext(INVALID_SPAN_CONTEXT)
+ ),
+ carrier,
+ defaultTextMapSetter
+ );
+
+ assert.deepStrictEqual(carrier, {});
+ });
+ });
+
+ describe('.extract()', () => {
+ it('extract nothing from context', () => {
+ // context remains untouched
+ assert.strictEqual(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter),
+ ROOT_CONTEXT
+ );
+ });
+
+ it('should extract sampled context', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, {
+ traceId: TRACE_ID,
+ spanId: SPAN_ID,
+ isRemote: true,
+ traceFlags: TraceFlags.SAMPLED,
+ });
+ });
+
+ it('should extract sampled context with arbitrary order', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Parent=53995c3f42cd8ad8;Sampled=1;Root=1-8a3c60f7-d188f8fa79d48a391a778fa6';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, {
+ traceId: TRACE_ID,
+ spanId: SPAN_ID,
+ isRemote: true,
+ traceFlags: TraceFlags.SAMPLED,
+ });
+ });
+
+ it('should extract context with additional fields', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1;Foo=Bar';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ // TODO: assert additional fields when the propagator supports it
+ assert.deepStrictEqual(extractedSpanContext, {
+ traceId: TRACE_ID,
+ spanId: SPAN_ID,
+ isRemote: true,
+ traceFlags: TraceFlags.SAMPLED,
+ });
+ });
+
+ it('extract empty header value - should return undefined', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] = '';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, undefined);
+ });
+
+ it('extract invalid traceId - should return undefined', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-abcdefgh-ijklmnopabcdefghijklmnop;Parent=53995c3f42cd8ad8;Sampled=0';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, undefined);
+ });
+
+ it('extract invalid traceId size - should return undefined', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa600;Parent=53995c3f42cd8ad8;Sampled=0';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, undefined);
+ });
+
+ it('extract invalid traceId delimiter - should return undefined', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1*8a3c60f7+d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1;Foo=Bar';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, undefined);
+ });
+
+ it('extract invalid spanId - should return undefined', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=abcdefghijklmnop;Sampled=0';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, undefined);
+ });
+
+ it('extract invalid spanId size - should return undefined', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad800;Sampled=0';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, undefined);
+ });
+
+ it('extract invalid traceFlags - should return undefined', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, undefined);
+ });
+
+ it('extract invalid traceFlags length - should return undefined', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=10220';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, undefined);
+ });
+
+ it('extract nonnumeric invalid traceFlags - should return undefined', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=a';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, undefined);
+ });
+
+ it('extract invalid aws xray version - should return undefined', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER] =
+ 'Root=2-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, undefined);
+ });
+
+ it('extracts context in a case-insensitive fashion', () => {
+ carrier[AWSXRAY_TRACE_ID_HEADER.toUpperCase()] =
+ 'Root=1-8a3c60f7-d188f8fa79d48a391a778fa6;Parent=53995c3f42cd8ad8;Sampled=1;Foo=Bar';
+ const extractedSpanContext = trace
+ .getSpan(
+ xrayPropagator.extract(ROOT_CONTEXT, carrier, defaultTextMapGetter)
+ )
+ ?.spanContext();
+
+ assert.deepStrictEqual(extractedSpanContext, {
+ traceId: TRACE_ID,
+ spanId: SPAN_ID,
+ isRemote: true,
+ traceFlags: TraceFlags.SAMPLED,
+ });
+ });
+
+ describe('.fields()', () => {
+ it('should return a field with AWS X-Ray Trace ID header', () => {
+ const expectedField = xrayPropagator.fields();
+
+ assert.deepStrictEqual([AWSXRAY_TRACE_ID_HEADER], expectedField);
+ });
+ });
+ });
+});
diff --git a/propagators/propagator-aws-xray/test/index-webpack.ts b/propagators/propagator-aws-xray/test/index-webpack.ts
new file mode 100644
index 0000000000..061a48ccfa
--- /dev/null
+++ b/propagators/propagator-aws-xray/test/index-webpack.ts
@@ -0,0 +1,20 @@
+/*
+ * Copyright The OpenTelemetry Authors
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * https://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+const testsContext = require.context('.', true, /test$/);
+testsContext.keys().forEach(testsContext);
+
+const srcContext = require.context('.', true, /src$/);
+srcContext.keys().forEach(srcContext);
diff --git a/propagators/propagator-aws-xray/tsconfig.esm.json b/propagators/propagator-aws-xray/tsconfig.esm.json
new file mode 100644
index 0000000000..a94adff6aa
--- /dev/null
+++ b/propagators/propagator-aws-xray/tsconfig.esm.json
@@ -0,0 +1,11 @@
+{
+ "extends": "../../tsconfig.base.esm.json",
+ "compilerOptions": {
+ "rootDir": "src",
+ "outDir": "build/esm",
+ "tsBuildInfoFile": "build/esm/tsconfig.esm.tsbuildinfo"
+ },
+ "include": [
+ "src/**/*.ts"
+ ]
+}
diff --git a/propagators/propagator-aws-xray/tsconfig.esnext.json b/propagators/propagator-aws-xray/tsconfig.esnext.json
new file mode 100644
index 0000000000..65a918cf6b
--- /dev/null
+++ b/propagators/propagator-aws-xray/tsconfig.esnext.json
@@ -0,0 +1,11 @@
+{
+ "extends": "../../tsconfig.base.esnext.json",
+ "compilerOptions": {
+ "rootDir": "src",
+ "outDir": "build/esnext",
+ "tsBuildInfoFile": "build/esnext/tsconfig.esnext.tsbuildinfo"
+ },
+ "include": [
+ "src/**/*.ts"
+ ]
+}
diff --git a/propagators/propagator-aws-xray/tsconfig.json b/propagators/propagator-aws-xray/tsconfig.json
new file mode 100644
index 0000000000..4078877ce6
--- /dev/null
+++ b/propagators/propagator-aws-xray/tsconfig.json
@@ -0,0 +1,11 @@
+{
+ "extends": "../../tsconfig.base",
+ "compilerOptions": {
+ "rootDir": ".",
+ "outDir": "build"
+ },
+ "include": [
+ "src/**/*.ts",
+ "test/**/*.ts"
+ ]
+}
diff --git a/release-please-config.json b/release-please-config.json
index 1770b2f846..f2236d9782 100644
--- a/release-please-config.json
+++ b/release-please-config.json
@@ -13,6 +13,7 @@
"detectors/node/opentelemetry-resource-detector-gcp": {},
"detectors/node/opentelemetry-resource-detector-github": {},
"detectors/node/opentelemetry-resource-detector-instana": {},
+ "metapackages/auto-configuration-propagators": {},
"metapackages/auto-instrumentations-node": {},
"metapackages/auto-instrumentations-web": {},
"packages/baggage-span-processor": {},
@@ -67,6 +68,8 @@
"plugins/web/opentelemetry-instrumentation-user-interaction": {},
"plugins/web/opentelemetry-plugin-react-load": {},
"propagators/opentelemetry-propagator-instana": {},
- "propagators/opentelemetry-propagator-ot-trace": {}
+ "propagators/opentelemetry-propagator-ot-trace": {},
+ "propagators/propagator-aws-xray": {},
+ "propagators/propagator-aws-xray-lambda": {}
}
}
diff --git a/scripts/lint-readme.js b/scripts/lint-readme.js
new file mode 100644
index 0000000000..78dd0d4b5e
--- /dev/null
+++ b/scripts/lint-readme.js
@@ -0,0 +1,84 @@
+const fs = require('fs');
+const path = require('path');
+
+const packageRoot = process.cwd();
+const monorepoRoot = path.resolve(__dirname, '..');
+
+const autoInstrumentationNodeDeps = require(`${monorepoRoot}/metapackages/auto-instrumentations-node/package.json`).dependencies;
+const autoInstrumentationWebDeps = require(`${monorepoRoot}/metapackages/auto-instrumentations-web/package.json`).dependencies;
+
+// extract info from package.json
+const packageJsonUrl = path.resolve(`${packageRoot}/package.json`);
+const pjson = require(packageJsonUrl);
+const instrumentationPackageName = pjson.name;
+
+// identify if it's node or web
+const isNode = instrumentationPackageName in autoInstrumentationNodeDeps;
+const isWeb = instrumentationPackageName in autoInstrumentationWebDeps;
+
+// extract info from README.md
+const currentReadmeContent = fs.readFileSync(
+ path.resolve(`${packageRoot}/README.md`),
+ 'utf8'
+);
+
+// make sure the footer is present
+
+const footerToVerify = `## Useful links
+
+- For more information on OpenTelemetry, visit:
+- For more about OpenTelemetry JavaScript:
+- For help or feedback on this project, join us in [GitHub Discussions][discussions-url]
+
+## License
+
+Apache 2.0 - See [LICENSE][license-url] for more information.
+
+[discussions-url]: https://github.com/open-telemetry/opentelemetry-js/discussions
+[license-url]: https://github.com/open-telemetry/opentelemetry-js-contrib/blob/main/LICENSE
+[license-image]: https://img.shields.io/badge/license-Apache_2.0-green.svg?style=flat
+[npm-url]: https://www.npmjs.com/package/${instrumentationPackageName}
+[npm-img]: https://badge.fury.io/js/${encodeURIComponent(instrumentationPackageName)}.svg
+`;
+
+if (!currentReadmeContent.includes(footerToVerify)) {
+ throw new Error(
+ `README.md footer is not valid. Please add the following text to the README.md file:\n\n${footerToVerify}`
+ );
+}
+
+// make sure we have badges at the top
+
+const badgesToVerify = `[![NPM Published Version][npm-img]][npm-url]
+[![Apache License][license-image]][license-image]
+`;
+
+if (!currentReadmeContent.includes(badgesToVerify)) {
+ throw new Error(
+ `README.md badges are not valid. Please add the following text to the README.md file:\n\n${badgesToVerify}`
+ );
+}
+
+if (isNode) {
+ const distText = `If total installation size is not constrained, it is recommended to use the [\`@opentelemetry/auto-instrumentations-node\`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-node) bundle with [@opentelemetry/sdk-node](\`https://www.npmjs.com/package/@opentelemetry/sdk-node\`) for the most seamless instrumentation experience.
+
+Compatible with OpenTelemetry JS API and SDK \`1.0+\`.
+`
+
+ if (!currentReadmeContent.includes(distText)) {
+ throw new Error(
+ `README.md dist text is not valid. Please add the following text to the README.md file:\n\n${distText}`
+ );
+ }
+} else if (isWeb) {
+ const distText = `If total installation size is not constrained, it is recommended to use the [\`@opentelemetry/auto-instrumentations-web\`](https://www.npmjs.com/package/@opentelemetry/auto-instrumentations-web) bundle with [\`@opentelemetry/sdk-trace-web\`](https://www.npmjs.com/package/@opentelemetry/sdk-trace-web) for the most seamless instrumentation experience.
+
+Compatible with OpenTelemetry JS API and SDK \`1.0+\`.
+`;
+
+ if (!currentReadmeContent.includes(distText)) {
+ throw new Error(
+ `README.md dist text is not valid. Please add the following text to the README.md file:\n\n${distText}`
+ );
+ }
+}
diff --git a/scripts/peer-api-check.js b/scripts/peer-api-check.js
index 66b9a1ef71..a3bae3318b 100644
--- a/scripts/peer-api-check.js
+++ b/scripts/peer-api-check.js
@@ -19,6 +19,7 @@ const path = require('path');
const appRoot = process.cwd();
const packageJsonUrl = path.resolve(`${appRoot}/package.json`);
const pjson = require(packageJsonUrl);
+const semver = require("semver");
const isExample = pjson.private && /-example$/.test(pjson.name);
@@ -33,7 +34,7 @@ if (pjson.dependencies && pjson.dependencies['@opentelemetry/api']) {
const peerVersion = pjson.peerDependencies && pjson.peerDependencies['@opentelemetry/api'];
const devVersion = pjson.devDependencies && pjson.devDependencies['@opentelemetry/api'];
if (peerVersion) {
- if (devVersion !== peerVersion) {
+ if (!semver.subset(devVersion, peerVersion)) {
throw new Error(
`Package ${pjson.name} depends on peer API version ${peerVersion} ` +
`but version ${devVersion} in development which doesn't match the peer API version`
diff --git a/scripts/update-otel-deps.js b/scripts/update-otel-deps.js
index 410d6d592b..ab446a9fc8 100755
--- a/scripts/update-otel-deps.js
+++ b/scripts/update-otel-deps.js
@@ -143,9 +143,12 @@ function updateNpmWorkspacesDeps({patterns, allowRangeBumpFor0x, dryRun}) {
return;
}
// We use 'npm outdated -j ...' as a quick way to get the current
- // installed version and latest published version of deps. The '-j'
- // output shows a limited/random subset of data such that its `wanted`
- // value cannot be used (see "npm outdated" perils above).
+ // installed version and latest published version of deps.
+ // Note: The '-j' output with npm@9 shows a limited/random subset of
+ // data such that its `wanted` value cannot be used (see "npm outdated"
+ // perils above). This has changed with npm@10 such that we might be
+ // able to use the `wanted` values now.
+ debug(` $ cd ${wsDir} && npm outdated --json ${depNames.join(' ')}`);
const p = spawnSync('npm', ['outdated', '--json'].concat(depNames), {
cwd: wsDir,
encoding: 'utf8',
@@ -156,13 +159,17 @@ function updateNpmWorkspacesDeps({patterns, allowRangeBumpFor0x, dryRun}) {
}
const npmInstallArgs = [];
+ let npmInstallingALocalDep = false;
for (let depName of depNames) {
if (!(depName in outdated)) {
continue;
}
+ const anOutdatedEntry = Array.isArray(outdated[depName])
+ ? outdated[depName][0]
+ : outdated[depName];
const summaryNote = localPkgNames.has(depName) ? ' (local)' : '';
- const currVer = outdated[depName].current;
- const latestVer = outdated[depName].latest;
+ const currVer = anOutdatedEntry.current;
+ const latestVer = anOutdatedEntry.latest;
if (semver.satisfies(latestVer, info.deps[depName])) {
// `npm update` should suffice.
npmUpdatePkgNames.add(depName);
@@ -172,6 +179,9 @@ function updateNpmWorkspacesDeps({patterns, allowRangeBumpFor0x, dryRun}) {
} else if (semver.lt(currVer, '1.0.0')) {
if (allowRangeBumpFor0x) {
npmInstallArgs.push(`${depName}@${latestVer}`);
+ if (localPkgNames.has(depName)) {
+ npmInstallingALocalDep = true;
+ }
summaryStrs.add(
`${currVer} -> ${latestVer} ${depName} (range-bump)${summaryNote}`
);
@@ -192,6 +202,18 @@ function updateNpmWorkspacesDeps({patterns, allowRangeBumpFor0x, dryRun}) {
cwd: wsDir,
argv: ['npm', 'install'].concat(npmInstallArgs),
});
+ if (npmInstallingALocalDep) {
+ // A surprise I've found with 'npm install ...': When the dep
+ // being updated (e.g. '@otel/foo@0.1.0' to '@otel/foo@0.2.0')
+ // is a *local* dep (i.e. it is another workspace in the same
+ // repo) then updating successfully sometimes requires running the
+ // 'npm install ...' **twice**.
+ npmInstallTasks.push({
+ cwd: wsDir,
+ argv: ['npm', 'install'].concat(npmInstallArgs),
+ comment: 'second time because "npm install"ing a *local* dep can take two tries'
+ });
+ }
}
});
@@ -203,7 +225,7 @@ function updateNpmWorkspacesDeps({patterns, allowRangeBumpFor0x, dryRun}) {
debug('npmInstallTasks: ', npmInstallTasks);
debug('npmUpdatePkgNames: ', npmUpdatePkgNames);
for (let task of npmInstallTasks) {
- console.log(` $ cd ${task.cwd} && ${task.argv.join(' ')}`);
+ console.log(` $ cd ${task.cwd} && ${task.argv.join(' ')} ${task.comment ? `# ${task.comment}` : ''}`);
if (!dryRun) {
const p = spawnSync(task.argv[0], task.argv.slice(1), {
cwd: task.cwd,