From a93a992150d598908b6ca2066df2aad26e3487e6 Mon Sep 17 00:00:00 2001 From: Noah Santschi-Cooney Date: Tue, 25 Nov 2025 13:01:07 +0000 Subject: [PATCH 1/2] chore: remove local integration tests --- .github/workflows/test.yml | 7 +- CONTRIBUTING.md | 5 +- package.json | 3 +- test/it/end-to-end.js | 114 - test/it/test_manifests/go/go.mod | 10 - test/it/test_manifests/go/go.sum | 301 -- .../test_manifests/gradle-groovy/build.gradle | 29 - .../gradle-kotlin/build.gradle.kts | 29 - test/it/test_manifests/maven/pom.xml | 30 - test/it/test_manifests/npm/package-lock.json | 96 - test/it/test_manifests/npm/package.json | 16 - test/it/test_manifests/pip/requirements.txt | 6 - test/it/test_manifests/pnpm/package.json | 16 - test/it/test_manifests/pnpm/pnpm-lock.yaml | 62 - .../yarn-berry/.yarn/install-state.gz | Bin 218246 -> 0 bytes test/it/test_manifests/yarn-berry/.yarnrc.yml | 1 - .../it/test_manifests/yarn-berry/package.json | 33 - test/it/test_manifests/yarn-berry/yarn.lock | 2741 ----------------- .../test_manifests/yarn-classic/package.json | 30 - test/it/test_manifests/yarn-classic/yarn.lock | 1447 --------- test/it/tsconfig.json | 17 - 21 files changed, 4 insertions(+), 4989 deletions(-) delete mode 100644 test/it/end-to-end.js delete mode 100644 test/it/test_manifests/go/go.mod delete mode 100644 test/it/test_manifests/go/go.sum delete mode 100644 test/it/test_manifests/gradle-groovy/build.gradle delete mode 100644 test/it/test_manifests/gradle-kotlin/build.gradle.kts delete mode 100644 test/it/test_manifests/maven/pom.xml delete mode 100644 test/it/test_manifests/npm/package-lock.json delete mode 100644 test/it/test_manifests/npm/package.json delete mode 100644 test/it/test_manifests/pip/requirements.txt delete mode 100644 test/it/test_manifests/pnpm/package.json delete mode 100644 test/it/test_manifests/pnpm/pnpm-lock.yaml delete mode 100644 test/it/test_manifests/yarn-berry/.yarn/install-state.gz delete mode 100644 test/it/test_manifests/yarn-berry/.yarnrc.yml delete mode 100644 test/it/test_manifests/yarn-berry/package.json delete mode 100644 test/it/test_manifests/yarn-berry/yarn.lock delete mode 100644 test/it/test_manifests/yarn-classic/package.json delete mode 100644 test/it/test_manifests/yarn-classic/yarn.lock delete mode 100644 test/it/tsconfig.json diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 7b9c5839..9bdcb1d7 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -94,12 +94,7 @@ jobs: - name: Compile project run: npm run compile - - name: Run integration tests - run: npm run integration-tests - env: - TRUSTIFY_DA_BACKEND_URL: 'https://exhort.stage.devshift.net' - - - name: Run integration tests cli + - name: Run CLI integration tests working-directory: integration run: bash ./run_its.sh env: diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 6cd6389d..8f285288 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -67,9 +67,8 @@ excluded from both linting and coverage. to the _Backend_. Use [java_maven.js](src/providers/java_maven.js) as an example to get you started. * Import the new _Provider_ and list in the in _availableProviders_ array in [provider.js](src/provider.js). -* Update the _choices_ configuration for the _manifest-name_ positional argument in [cli.js](src/cli.js). -* Add Integration Test scenarios for the added provider in [integration/scenarios](integration/scenarios). - Use the [java scenarios](integration/scenarios/maven) as an example. +* Update the _choices_ configuration for the _manifest-name_ positional argument in [cli.js](src/cli.js). +* Add Integration Test scenarios for the added provider in the [trustification/integration](https://github.com/trustification/exhort-integration-tests/) repository. * Update the documentation. This document and [README.md](README.md). ### Integration Tests diff --git a/package.json b/package.json index 33f758cf..44626fb2 100644 --- a/package.json +++ b/package.json @@ -38,9 +38,8 @@ "lint": "eslint src test --ext js", "lint:fix": "eslint src test --ext js --fix", "test": "c8 npm run tests", - "tests": "mocha --config .mocharc.json --grep \"Integration Tests|.*analysis module.*\" --invert", + "tests": "mocha --config .mocharc.json --grep \".*analysis module.*\" --invert", "tests:rep": "mocha --reporter-option maxDiffSize=0 --reporter json > unit-tests-result.json", - "integration-tests": "mocha --grep \"Integration Tests\"", "precompile": "rm -rf dist", "compile": "tsc -p tsconfig.json" }, diff --git a/test/it/end-to-end.js b/test/it/end-to-end.js deleted file mode 100644 index 8fad6cf7..00000000 --- a/test/it/end-to-end.js +++ /dev/null @@ -1,114 +0,0 @@ -import { expect } from 'chai' - -import index from "../../src/index.js" - -const packageManagersDict = - { - "maven" : "pom.xml", - "npm" : "package.json", - "pnpm": "package.json", - "yarn-berry": "package.json", - "yarn-classic": "package.json", - "go" : "go.mod", - "pip" : "requirements.txt", - "gradle-groovy" : "build.gradle", - "gradle-kotlin" : "build.gradle.kts" - } - -function getParsedKeyFromHtml(html, key,keyLength) { - let beginSummary = html.substring(html.indexOf(key)) - let summary = beginSummary.substring(keyLength , beginSummary.indexOf("}") + 1); - return JSON.parse(summary); -} - -function extractTotalsGeneralOrFromProvider(providedDataForStack, provider) { - if(providedDataForStack.providers[provider].sources && Object.keys(providedDataForStack.providers[provider].sources).length > 0) { - // Get the first source (e.g., "osv") and return its summary total - const firstSource = Object.keys(providedDataForStack.providers[provider].sources)[0]; - return providedDataForStack.providers[provider].sources[firstSource].summary.total; - } else { - return providedDataForStack.scanned.total; - } -} - -suite('Integration Tests', () => { - [ - "gradle-groovy", - "gradle-kotlin", - "maven", - "npm", - "pnpm", - "yarn-berry", - "yarn-classic", - "go", - "pip" - - ].forEach(packageManager => { - test(`Stack Analysis json for ${packageManager}`, async () => { - if(packageManager === "pip") { - process.env["TRUSTIFY_DA_PYTHON_VIRTUAL_ENV"] = "true" - } else { - process.env["TRUSTIFY_DA_PYTHON_VIRTUAL_ENV"] = "" - } - process.env["TRUSTIFY_DA_DEV_MODE"] = "true" - let manifestName = packageManagersDict[packageManager] - let pomPath = `test/it/test_manifests/${packageManager}/${manifestName}` - let providedDataForStack = await index.stackAnalysis(pomPath) - console.log(JSON.stringify(providedDataForStack,null , 4)) - let providers = ["rhtpa"] - providers.forEach(provider => expect(extractTotalsGeneralOrFromProvider(providedDataForStack, provider)).greaterThan(0)) - // TODO: if sources doesn't exist, add "scanned" instead - // python transitive count for stack analysis is awaiting fix in the DA backend - if(packageManager !== "pip") { - expect(providedDataForStack.scanned.transitive).greaterThan(0) - } - providers.forEach(provider => expect(providedDataForStack.providers[provider].status.code).equals(200)) - }).timeout(120000); - - test(`Stack Analysis html for ${packageManager}`, async () => { - let manifestName = packageManagersDict[packageManager] - let pomPath = `test/it/test_manifests/${packageManager}/${manifestName}` - let html = await index.stackAnalysis(pomPath,true) - if(packageManager === "pip") { - process.env["TRUSTIFY_DA_PYTHON_VIRTUAL_ENV"] = "true" - } else { - process.env["TRUSTIFY_DA_PYTHON_VIRTUAL_ENV"] = "" - } - let reportParsedFromHtml - let parsedSummaryFromHtml - let parsedStatusFromProvider - let parsedScannedFromHtml - try { - reportParsedFromHtml = JSON.parse(html.substring(html.indexOf("\"report\" :") + 10, html.search(/([}](\s*)){5}/) + html.substring(html.search(/([}](\s*)){5}/)).indexOf(","))) - parsedSummaryFromHtml = getParsedKeyFromHtml(html,"\"summary\"",11) - expect(parsedSummaryFromHtml.total).greaterThanOrEqual(0) - } catch (e) { - let startOfJson = html.substring(html.indexOf("\"report\" :")) - reportParsedFromHtml = JSON.parse("{" + startOfJson.substring(0,startOfJson.indexOf("};") + 1)) - reportParsedFromHtml = reportParsedFromHtml.report - } finally { - parsedStatusFromProvider = reportParsedFromHtml.providers["rhtpa"].status - expect(parsedStatusFromProvider.code).equals(200) - parsedScannedFromHtml = reportParsedFromHtml.scanned - expect( typeof html).equals("string") - expect(html).include("html").include("svg") - expect(parsedScannedFromHtml.total).greaterThan(0) - expect(parsedScannedFromHtml.transitive).greaterThan(0) - } - }).timeout(60000); - - test(`Component Analysis for ${packageManager}`, async () => { - let manifestName = packageManagersDict[packageManager] - let manifestPath = `test/it/test_manifests/${packageManager}/${manifestName}` - const analysisReport = await index.componentAnalysis(manifestPath) - - expect(analysisReport.scanned.total).greaterThan(0) - expect(analysisReport.scanned.transitive).equal(0) - let providers = ["rhtpa"] - providers.forEach(provider => expect(extractTotalsGeneralOrFromProvider(analysisReport, provider)).greaterThan(0)) - providers.forEach(provider => expect(analysisReport.providers[provider].status.code).equals(200)) - }).timeout(20000); - - - }); -}).beforeAll(() => process.env["TRUSTIFY_DA_DEV_MODE"] = "true"); diff --git a/test/it/test_manifests/go/go.mod b/test/it/test_manifests/go/go.mod deleted file mode 100644 index c6911e8a..00000000 --- a/test/it/test_manifests/go/go.mod +++ /dev/null @@ -1,10 +0,0 @@ -module github.com/test-golang-namespace/test-golang-app - -go 1.19 - -require( - - github.com/gin-gonic/gin v1.6.0 - github.com/ipld/go-car v0.3.0 - go.elastic.co/apm v1.11.0 -) diff --git a/test/it/test_manifests/go/go.sum b/test/it/test_manifests/go/go.sum deleted file mode 100644 index eb339779..00000000 --- a/test/it/test_manifests/go/go.sum +++ /dev/null @@ -1,301 +0,0 @@ -github.com/AndreasBriese/bbloom v0.0.0-20180913140656-343706a395b7/go.mod h1:bOvUY6CB00SOBii9/FifXqc0awNKxLFCL/+pkDPuyl8= -github.com/Kubuxu/go-os-helper v0.0.1/go.mod h1:N8B+I7vPCT80IcP58r50u4+gEEcsZETFUpAzWW2ep1Y= -github.com/aead/siphash v1.0.1/go.mod h1:Nywa3cDsYNNK3gaciGTWPwHt0wlpNV15vwmswBAUSII= -github.com/armon/go-radix v1.0.0/go.mod h1:ufUuZ+zHj4x4TnLV4JWEpy2hxWSpsRywHrMgIH9cCH8= -github.com/btcsuite/btcd v0.0.0-20190213025234-306aecffea32/go.mod h1:DrZx5ec/dmnfpw9KyYoQyYo7d0KEvTkk/5M/vbZjAr8= -github.com/btcsuite/btcd v0.0.0-20190523000118-16327141da8c/go.mod h1:3J08xEfcugPacsc34/LKRU2yO7YmuT8yt28J8k2+rrI= -github.com/btcsuite/btclog v0.0.0-20170628155309-84c8d2346e9f/go.mod h1:TdznJufoqS23FtqVCzL0ZqgP5MqXbb4fg/WgDys70nA= -github.com/btcsuite/btcutil v0.0.0-20190207003914-4c204d697803/go.mod h1:+5NJ2+qvTyV9exUAL/rxXi3DcLg2Ts+ymUAY5y4NvMg= -github.com/btcsuite/btcutil v0.0.0-20190425235716-9e5f4b9a998d/go.mod h1:+5NJ2+qvTyV9exUAL/rxXi3DcLg2Ts+ymUAY5y4NvMg= -github.com/btcsuite/go-socks v0.0.0-20170105172521-4720035b7bfd/go.mod h1:HHNXQzUsZCxOoE+CPiyCTO6x34Zs86zZUiwtpXoGdtg= -github.com/btcsuite/goleveldb v0.0.0-20160330041536-7834afc9e8cd/go.mod h1:F+uVaaLLH7j4eDXPRvw78tMflu7Ie2bzYOH4Y8rRKBY= -github.com/btcsuite/snappy-go v0.0.0-20151229074030-0bdef8d06723/go.mod h1:8woku9dyThutzjeg+3xrA5iCpBRH8XEEg3lh6TiUghc= -github.com/btcsuite/websocket v0.0.0-20150119174127-31079b680792/go.mod h1:ghJtEyQwv5/p4Mg4C0fgbePVuGr935/5ddU9Z3TmDRY= -github.com/btcsuite/winsvc v1.0.0/go.mod h1:jsenWakMcC0zFBFurPLEAyrnc/teJEM1O46fmI40EZs= -github.com/coreos/go-semver v0.3.0/go.mod h1:nnelYz7RCh+5ahJtPPxZlU+153eP4D4r3EedlOD2RNk= -github.com/cskr/pubsub v1.0.2/go.mod h1:/8MzYXk/NJAz782G8RPkFzXTZVu63VotefPnR9TIRis= -github.com/cucumber/godog v0.8.1/go.mod h1:vSh3r/lM+psC1BPXvdkSEuNjmXfpVqrMGYAElF6hxnA= -github.com/davecgh/go-spew v0.0.0-20171005155431-ecdeabc65495/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/davecgh/go-spew v1.1.0/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/davecgh/go-spew v1.1.1/go.mod h1:J7Y8YcW2NihsgmVo/mv3lAwl/skON4iLHjSsI+c5H38= -github.com/dgraph-io/badger v1.5.5-0.20190226225317-8115aed38f8f/go.mod h1:VZxzAIRPHRVNRKRo6AXrX9BJegn6il06VMTZVJYCIjQ= -github.com/dgryski/go-farm v0.0.0-20190104051053-3adb47b1fb0f/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw= -github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk= -github.com/elastic/go-sysinfo v1.1.1/go.mod h1:i1ZYdU10oLNfRzq4vq62BEwD2fH8KaWh6eh0ikPT9F0= -github.com/elastic/go-windows v1.0.0/go.mod h1:TsU0Nrp7/y3+VwE82FoZF8gC/XFg/Elz6CcloAxnPgU= -github.com/frankban/quicktest v1.11.3/go.mod h1:wRf/ReqHper53s+kmmSZizM8NamnL3IM0I9ntUbOk+k= -github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo= -github.com/gin-contrib/sse v0.1.0/go.mod h1:RHrZQHXnP2xjPF+u1gW/2HnVO7nvIa9PG3Gm+fLHvGI= -github.com/gin-gonic/gin v1.6.0/go.mod h1:75u5sXoLsGZoRN5Sgbi1eraJ4GU3++wFwWzhwvtwp4M= -github.com/go-check/check v0.0.0-20180628173108-788fd7840127/go.mod h1:9ES+weclKsC9YodN5RgxqK/VD9HM9JsCSh7rNhMZE98= -github.com/go-playground/assert/v2 v2.0.1/go.mod h1:VDjEfimB/XKnb+ZQfWdccd7VUvScMdVu0Titje2rxJ4= -github.com/go-playground/locales v0.13.0/go.mod h1:taPMhCMXrRLJO55olJkUXHZBHCxTMfnGwq/HNwmWNS8= -github.com/go-playground/universal-translator v0.17.0/go.mod h1:UkSxE5sNxxRwHyU+Scu5vgOQjsIJAF8j9muTVoKLVtA= -github.com/go-playground/validator/v10 v10.2.0/go.mod h1:uOYAAleCW8F/7oMFd6aG0GOhaH6EGOAJShg8Id5JGkI= -github.com/gogo/protobuf v1.2.1/go.mod h1:hp+jE20tsWTFYpLwKvXlhS1hjn+gTNwPg2I6zVXpSg4= -github.com/gogo/protobuf v1.3.1/go.mod h1:SlYgWuQ5SjCEi6WLHjHCa1yvBfUnHcTbrrZtXPKa29o= -github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.0/go.mod h1:Qd/q+1AKNOZr9uGQzbzCmRO6sUih6GTPZv6a1/R87v0= -github.com/golang/protobuf v1.3.1/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U= -github.com/golang/protobuf v1.3.3/go.mod h1:vzj43D7+SQXF/4pzW/hwtAqwc6iTitCiVSaWz5lYuqw= -github.com/golang/snappy v0.0.0-20180518054509-2e65f85255db/go.mod h1:/XxbfmMg8lxefKM7IXC3fBNl/7bRcc72aCRzEWrmP2Q= -github.com/google/go-cmp v0.3.0/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMywk6iLU= -github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/gofuzz v1.0.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg= -github.com/google/uuid v1.1.1/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= -github.com/gopherjs/gopherjs v0.0.0-20181017120253-0766667cb4d1/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY= -github.com/gorilla/websocket v1.4.0/go.mod h1:E7qHFY5m1UJ88s3WnNqhKjPHQ0heANvMoAMk2YaljkQ= -github.com/gxed/hashland/keccakpg v0.0.1/go.mod h1:kRzw3HkwxFU1mpmPP8v1WyQzwdGfmKFJ6tItnhQ67kU= -github.com/gxed/hashland/murmur3 v0.0.1/go.mod h1:KjXop02n4/ckmZSnY2+HKcLud/tcmvhST0bie/0lS48= -github.com/hashicorp/golang-lru v0.5.1/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8= -github.com/hpcloud/tail v1.0.0/go.mod h1:ab1qPbhIpdTxEkNHXyeSf5vhxWSCs/tWer42PpOxQnU= -github.com/huin/goupnp v1.0.0/go.mod h1:n9v9KO1tAxYH82qOn+UTIFQDmx5n1Zxd/ClZDMX7Bnc= -github.com/huin/goutil v0.0.0-20170803182201-1ca381bf3150/go.mod h1:PpLOETDnJ0o3iZrZfqZzyLl6l7F3c6L1oWn7OICBi6o= -github.com/ipfs/bbloom v0.0.1/go.mod h1:oqo8CVWsJFMOZqTglBG4wydCE4IQA/G2/SEofB0rjUI= -github.com/ipfs/bbloom v0.0.4/go.mod h1:cS9YprKXpoZ9lT0n/Mw/a6/aFV6DTjTLYHeA+gyqMG0= -github.com/ipfs/go-bitswap v0.1.0/go.mod h1:FFJEf18E9izuCqUtHxbWEvq+reg7o4CW5wSAE1wsxj0= -github.com/ipfs/go-block-format v0.0.1/go.mod h1:DK/YYcsSUIVAFNwo/KZCdIIbpN0ROH/baNLgayt4pFc= -github.com/ipfs/go-block-format v0.0.2/go.mod h1:AWR46JfpcObNfg3ok2JHDUfdiHRgWhJgCQF+KIgOPJY= -github.com/ipfs/go-block-format v0.0.3/go.mod h1:4LmD4ZUw0mhO+JSKdpWwrzATiEfM7WWgQ8H5l6P8MVk= -github.com/ipfs/go-blockservice v0.1.0/go.mod h1:hzmMScl1kXHg3M2BjTymbVPjv627N7sYcvYaKbop39M= -github.com/ipfs/go-cid v0.0.1/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM= -github.com/ipfs/go-cid v0.0.2/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM= -github.com/ipfs/go-cid v0.0.3/go.mod h1:GHWU/WuQdMPmIosc4Yn1bcCT7dSeX4lBafM7iqUPQvM= -github.com/ipfs/go-cid v0.0.4/go.mod h1:4LLaPOQwmk5z9LBgQnpkivrx8BJjUyGwTXCd5Xfj6+M= -github.com/ipfs/go-cid v0.0.7/go.mod h1:6Ux9z5e+HpkQdckYoX1PG/6xqKspzlEIR5SDmgqgC/I= -github.com/ipfs/go-datastore v0.0.1/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= -github.com/ipfs/go-datastore v0.0.5/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= -github.com/ipfs/go-datastore v0.1.0/go.mod h1:d4KVXhMt913cLBEI/PXAy6ko+W7e9AhyAKBGh803qeE= -github.com/ipfs/go-datastore v0.3.1/go.mod h1:w38XXW9kVFNp57Zj5knbKWM2T+KOZCGDRVNdgPHtbHw= -github.com/ipfs/go-detect-race v0.0.1/go.mod h1:8BNT7shDZPo99Q74BpGMK+4D8Mn4j46UU0LZ723meps= -github.com/ipfs/go-ds-badger v0.0.2/go.mod h1:Y3QpeSFWQf6MopLTiZD+VT6IC1yZqaGmjvRcKeSGij8= -github.com/ipfs/go-ds-leveldb v0.0.1/go.mod h1:feO8V3kubwsEF22n0YRQCffeb79OOYIykR4L04tMOYc= -github.com/ipfs/go-ipfs-blockstore v0.0.1/go.mod h1:d3WClOmRQKFnJ0Jz/jj/zmksX0ma1gROTlovZKBmN08= -github.com/ipfs/go-ipfs-blockstore v0.1.0/go.mod h1:5aD0AvHPi7mZc6Ci1WCAhiBQu2IsfTduLl+422H6Rqw= -github.com/ipfs/go-ipfs-blocksutil v0.0.1/go.mod h1:Yq4M86uIOmxmGPUHv/uI7uKqZNtLb449gwKqXjIsnRk= -github.com/ipfs/go-ipfs-delay v0.0.0-20181109222059-70721b86a9a8/go.mod h1:8SP1YXK1M1kXuc4KJZINY3TQQ03J2rwBG9QfXmbRPrw= -github.com/ipfs/go-ipfs-delay v0.0.1/go.mod h1:8SP1YXK1M1kXuc4KJZINY3TQQ03J2rwBG9QfXmbRPrw= -github.com/ipfs/go-ipfs-ds-help v0.0.1/go.mod h1:gtP9xRaZXqIQRh1HRpp595KbBEdgqWFxefeVKOV8sxo= -github.com/ipfs/go-ipfs-exchange-interface v0.0.1/go.mod h1:c8MwfHjtQjPoDyiy9cFquVtVHkO9b9Ob3FG91qJnWCM= -github.com/ipfs/go-ipfs-exchange-offline v0.0.1/go.mod h1:WhHSFCVYX36H/anEKQboAzpUws3x7UeEGkzQc3iNkM0= -github.com/ipfs/go-ipfs-pq v0.0.1/go.mod h1:LWIqQpqfRG3fNc5XsnIhz/wQ2XXGyugQwls7BgUmUfY= -github.com/ipfs/go-ipfs-routing v0.1.0/go.mod h1:hYoUkJLyAUKhF58tysKpids8RNDPO42BVMgK5dNsoqY= -github.com/ipfs/go-ipfs-util v0.0.1/go.mod h1:spsl5z8KUnrve+73pOhSVZND1SIxPW5RyBCNzQxlJBc= -github.com/ipfs/go-ipfs-util v0.0.2/go.mod h1:CbPtkWJzjLdEcezDns2XYaehFVNXG9zrdrtMecczcsQ= -github.com/ipfs/go-ipld-cbor v0.0.3/go.mod h1:wTBtrQZA3SoFKMVkp6cn6HMRteIB1VsmHA0AQFOn7Nc= -github.com/ipfs/go-ipld-cbor v0.0.5/go.mod h1:BkCduEx3XBCO6t2Sfo5BaHzuok7hbhdMm9Oh8B2Ftq4= -github.com/ipfs/go-ipld-format v0.0.1/go.mod h1:kyJtbkDALmFHv3QR6et67i35QzO3S0dCDnkOJhcZkms= -github.com/ipfs/go-ipld-format v0.0.2/go.mod h1:4B6+FM2u9OJ9zCV+kSbgFAZlOrv1Hqbf0INGQgiKf9k= -github.com/ipfs/go-ipld-format v0.2.0/go.mod h1:3l3C1uKoadTPbeNfrDi+xMInYKlx2Cvg1BuydPSdzQs= -github.com/ipfs/go-log v0.0.1/go.mod h1:kL1d2/hzSpI0thNYjiKfjanbVNU+IIGA/WnNESY9leM= -github.com/ipfs/go-merkledag v0.3.2/go.mod h1:fvkZNNZixVW6cKSZ/JfLlON5OlgTXNdRLz0p6QG/I2M= -github.com/ipfs/go-metrics-interface v0.0.1/go.mod h1:6s6euYU4zowdslK0GKHmqaIZ3j/b/tL7HTWtJ4VPgWY= -github.com/ipfs/go-peertaskqueue v0.1.0/go.mod h1:Jmk3IyCcfl1W3jTW3YpghSwSEC6IJ3Vzz/jUmWw8Z0U= -github.com/ipfs/go-verifcid v0.0.1/go.mod h1:5Hrva5KBeIog4A+UpqlaIU+DEstipcJYQQZc0g37pY0= -github.com/ipld/go-car v0.3.0/go.mod h1:dPkEWeAK8KaVvH5TahaCs6Mncpd4lDMpkbs0/SPzuVs= -github.com/ipld/go-codec-dagpb v1.2.0/go.mod h1:6nBN7X7h8EOsEejZGqC7tej5drsdBAXbMHyBT+Fne5s= -github.com/ipld/go-ipld-prime v0.9.0/go.mod h1:KvBLMr4PX1gWptgkzRjVZCrLmSGcZCb/jioOQwCqZN8= -github.com/jackpal/gateway v1.0.5/go.mod h1:lTpwd4ACLXmpyiCTRtfiNyVnUmqT9RivzCDQetPfnjA= -github.com/jackpal/go-nat-pmp v1.0.1/go.mod h1:QPH045xvCAeXUZOxsnwmrtiCoxIr9eob+4orBN1SBKc= -github.com/jbenet/go-cienv v0.0.0-20150120210510-1bb1476777ec/go.mod h1:rGaEvXB4uRSZMmzKNLoXvTu1sfx+1kv/DojUlPrSZGs= -github.com/jbenet/go-cienv v0.1.0/go.mod h1:TqNnHUmJgXau0nCzC7kXWeotg3J9W34CUv5Djy1+FlA= -github.com/jbenet/go-temp-err-catcher v0.0.0-20150120210811-aac704a3f4f2/go.mod h1:8GXXJV31xl8whumTzdZsTt3RnUIiPqzkyf7mxToRCMs= -github.com/jbenet/goprocess v0.0.0-20160826012719-b497e2f366b8/go.mod h1:Ly/wlsjFq/qrU3Rar62tu1gASgGw6chQbSh/XgIIXCY= -github.com/jbenet/goprocess v0.1.3/go.mod h1:5yspPrukOVuOLORacaBi858NqyClJPQxYZlqdZVfqY4= -github.com/jessevdk/go-flags v0.0.0-20141203071132-1679536dcc89/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= -github.com/jessevdk/go-flags v1.4.0/go.mod h1:4FA24M0QyGHXBuZZK/XkWh8h0e1EYbRYJSGM75WSRxI= -github.com/joeshaw/multierror v0.0.0-20140124173710-69b34d4ec901/go.mod h1:Z86h9688Y0wesXCyonoVr47MasHilkuLMqGhRZ4Hpak= -github.com/jrick/logrotate v1.0.0/go.mod h1:LNinyqDIJnpAur+b8yyulnQw/wDuN1+BYKlTRt3OuAQ= -github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4= -github.com/jtolds/gls v4.2.1+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= -github.com/jtolds/gls v4.20.0+incompatible/go.mod h1:QJZ7F/aHp+rZTRtaJ1ow/lLfFfVYBRgL+9YlvaHOwJU= -github.com/kisielk/errcheck v1.1.0/go.mod h1:EZBBE59ingxPouuu3KfxchcWSUPOHkagtvWXihfKN4Q= -github.com/kisielk/errcheck v1.2.0/go.mod h1:/BMXB+zMLi60iA8Vv6Ksmxu/1UDYcXs4uQLJ+jE2L00= -github.com/kisielk/gotool v1.0.0/go.mod h1:XhKaO+MFFWcvkIS/tQcRk01m1F5IRFswLeQ+oQHNcck= -github.com/kkdai/bstream v0.0.0-20161212061736-f391b8402d23/go.mod h1:J+Gs4SYgM6CZQHDETBtE9HaSEkGmuNXF86RwHhHUvq4= -github.com/klauspost/cpuid/v2 v2.0.4/go.mod h1:FInQzS24/EEf25PyTYn52gqo7WaD8xa0213Md/qVLRg= -github.com/koron/go-ssdp v0.0.0-20180514024734-4a0ed625a78b/go.mod h1:5Ky9EC2xfoUKUor0Hjgi2BJhCSXJfMOFlmyYrVKGQMk= -github.com/kr/pretty v0.1.0/go.mod h1:dAy3ld7l9f0ibDNOQOHHMYYIIbhfbHSm3C4ZsoJORNo= -github.com/kr/pretty v0.2.1/go.mod h1:ipq/a2n7PKx3OHsz4KJII5eveXtPO4qwEXGdVfWzfnI= -github.com/kr/pty v1.1.1/go.mod h1:pFQYn66WHrOpPYNljwOMqo10TkYh1fy3cYio2l3bCsQ= -github.com/kr/text v0.1.0/go.mod h1:4Jbv+DJW3UT/LiOwJeYQe1efqtUx/iVham/4vfdArNI= -github.com/leodido/go-urn v1.2.0/go.mod h1:+8+nEpDfqqsY+g338gtMEUOtuK+4dEMhiQEgxpxOKII= -github.com/libp2p/go-addr-util v0.0.1/go.mod h1:4ac6O7n9rIAKB1dnd+s8IbbMXkt+oBpzX4/+RACcnlQ= -github.com/libp2p/go-buffer-pool v0.0.1/go.mod h1:xtyIz9PMobb13WaxR6Zo1Pd1zXJKYg0a8KiIvDp3TzQ= -github.com/libp2p/go-buffer-pool v0.0.2/go.mod h1:MvaB6xw5vOrDl8rYZGLFdKAuk/hRoRZd1Vi32+RXyFM= -github.com/libp2p/go-conn-security-multistream v0.1.0/go.mod h1:aw6eD7LOsHEX7+2hJkDxw1MteijaVcI+/eP2/x3J1xc= -github.com/libp2p/go-flow-metrics v0.0.1/go.mod h1:Iv1GH0sG8DtYN3SVJ2eG221wMiNpZxBdp967ls1g+k8= -github.com/libp2p/go-libp2p v0.1.0/go.mod h1:6D/2OBauqLUoqcADOJpn9WbKqvaM07tDw68qHM0BxUM= -github.com/libp2p/go-libp2p-autonat v0.1.0/go.mod h1:1tLf2yXxiE/oKGtDwPYWTSYG3PtvYlJmg7NeVtPRqH8= -github.com/libp2p/go-libp2p-blankhost v0.1.1/go.mod h1:pf2fvdLJPsC1FsVrNP3DUUvMzUts2dsLLBEpo1vW1ro= -github.com/libp2p/go-libp2p-circuit v0.1.0/go.mod h1:Ahq4cY3V9VJcHcn1SBXjr78AbFkZeIRmfunbA7pmFh8= -github.com/libp2p/go-libp2p-core v0.0.1/go.mod h1:g/VxnTZ/1ygHxH3dKok7Vno1VfpvGcGip57wjTU4fco= -github.com/libp2p/go-libp2p-core v0.0.2/go.mod h1:9dAcntw/n46XycV4RnlBq3BpgrmyUi9LuoTNdPrbUco= -github.com/libp2p/go-libp2p-crypto v0.1.0/go.mod h1:sPUokVISZiy+nNuTTH/TY+leRSxnFj/2GLjtOTW90hI= -github.com/libp2p/go-libp2p-discovery v0.1.0/go.mod h1:4F/x+aldVHjHDHuX85x1zWoFTGElt8HnoDzwkFZm29g= -github.com/libp2p/go-libp2p-loggables v0.1.0/go.mod h1:EyumB2Y6PrYjr55Q3/tiJ/o3xoDasoRYM7nOzEpoa90= -github.com/libp2p/go-libp2p-mplex v0.2.0/go.mod h1:Ejl9IyjvXJ0T9iqUTE1jpYATQ9NM3g+OtR+EMMODbKo= -github.com/libp2p/go-libp2p-mplex v0.2.1/go.mod h1:SC99Rxs8Vuzrf/6WhmH41kNn13TiYdAWNYHrwImKLnE= -github.com/libp2p/go-libp2p-nat v0.0.4/go.mod h1:N9Js/zVtAXqaeT99cXgTV9e75KpnWCvVOiGzlcHmBbY= -github.com/libp2p/go-libp2p-netutil v0.1.0/go.mod h1:3Qv/aDqtMLTUyQeundkKsA+YCThNdbQD54k3TqjpbFU= -github.com/libp2p/go-libp2p-peer v0.2.0/go.mod h1:RCffaCvUyW2CJmG2gAWVqwePwW7JMgxjsHm7+J5kjWY= -github.com/libp2p/go-libp2p-peerstore v0.1.0/go.mod h1:2CeHkQsr8svp4fZ+Oi9ykN1HBb6u0MOvdJ7YIsmcwtY= -github.com/libp2p/go-libp2p-record v0.1.0/go.mod h1:ujNc8iuE5dlKWVy6wuL6dd58t0n7xI4hAIl8pE6wu5Q= -github.com/libp2p/go-libp2p-secio v0.1.0/go.mod h1:tMJo2w7h3+wN4pgU2LSYeiKPrfqBgkOsdiKK77hE7c8= -github.com/libp2p/go-libp2p-swarm v0.1.0/go.mod h1:wQVsCdjsuZoc730CgOvh5ox6K8evllckjebkdiY5ta4= -github.com/libp2p/go-libp2p-testing v0.0.2/go.mod h1:gvchhf3FQOtBdr+eFUABet5a4MBLK8jM3V4Zghvmi+E= -github.com/libp2p/go-libp2p-testing v0.0.3/go.mod h1:gvchhf3FQOtBdr+eFUABet5a4MBLK8jM3V4Zghvmi+E= -github.com/libp2p/go-libp2p-transport-upgrader v0.1.1/go.mod h1:IEtA6or8JUbsV07qPW4r01GnTenLW4oi3lOPbUMGJJA= -github.com/libp2p/go-libp2p-yamux v0.2.0/go.mod h1:Db2gU+XfLpm6E4rG5uGCFX6uXA8MEXOxFcRoXUODaK8= -github.com/libp2p/go-maddr-filter v0.0.4/go.mod h1:6eT12kSQMA9x2pvFQa+xesMKUBlj9VImZbj3B9FBH/Q= -github.com/libp2p/go-mplex v0.0.3/go.mod h1:pK5yMLmOoBR1pNCqDlA2GQrdAVTMkqFalaTWe7l4Yd0= -github.com/libp2p/go-mplex v0.1.0/go.mod h1:SXgmdki2kwCUlCCbfGLEgHjC4pFqhTp0ZoV6aiKgxDU= -github.com/libp2p/go-msgio v0.0.2/go.mod h1:63lBBgOTDKQL6EWazRMCwXsEeEeK9O2Cd+0+6OOuipQ= -github.com/libp2p/go-nat v0.0.3/go.mod h1:88nUEt0k0JD45Bk93NIwDqjlhiOwOoV36GchpcVc1yI= -github.com/libp2p/go-reuseport v0.0.1/go.mod h1:jn6RmB1ufnQwl0Q1f+YxAj8isJgDCQzaaxIFYDhcYEA= -github.com/libp2p/go-reuseport-transport v0.0.2/go.mod h1:YkbSDrvjUVDL6b8XqriyA20obEtsW9BLkuOUyQAOCbs= -github.com/libp2p/go-stream-muxer v0.0.1/go.mod h1:bAo8x7YkSpadMTbtTaxGVHWUQsR/l5MEaHbKaliuT14= -github.com/libp2p/go-stream-muxer-multistream v0.2.0/go.mod h1:j9eyPol/LLRqT+GPLSxvimPhNph4sfYfMoDPd7HkzIc= -github.com/libp2p/go-tcp-transport v0.1.0/go.mod h1:oJ8I5VXryj493DEJ7OsBieu8fcg2nHGctwtInJVpipc= -github.com/libp2p/go-testutil v0.1.0/go.mod h1:81b2n5HypcVyrCg/MJx4Wgfp/VHojytjVe/gLzZ2Ehc= -github.com/libp2p/go-ws-transport v0.1.0/go.mod h1:rjw1MG1LU9YDC6gzmwObkPd/Sqwhw7yT74kj3raBFuo= -github.com/libp2p/go-yamux v1.2.2/go.mod h1:FGTiPvoV/3DVdgWpX+tM0OW3tsM+W5bSE3gZwqQTcow= -github.com/mattn/go-colorable v0.1.1/go.mod h1:FuOcm+DKB9mbwrcAfNl7/TZVBZ6rcnceauSikq3lYCQ= -github.com/mattn/go-colorable v0.1.2/go.mod h1:U0ppj6V5qS13XJ6of8GYAs25YV2eR4EVcfRqFIhoBtE= -github.com/mattn/go-isatty v0.0.5/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= -github.com/mattn/go-isatty v0.0.8/go.mod h1:Iq45c/XA43vh69/j3iqttzPXn0bhXyGjM0Hdxcsrc5s= -github.com/mattn/go-isatty v0.0.12/go.mod h1:cbi8OIDigv2wuxKPP5vlRcQ1OAZbq2CE4Kysco4FUpU= -github.com/miekg/dns v1.1.12/go.mod h1:W1PPwlIAgtquWBMBEV9nkV9Cazfe8ScdGz/Lj7v3Nrg= -github.com/minio/blake2b-simd v0.0.0-20160723061019-3f5f724cb5b1/go.mod h1:pD8RvIylQ358TN4wwqatJ8rNavkEINozVn9DtGI3dfQ= -github.com/minio/sha256-simd v0.0.0-20190131020904-2d45a736cd16/go.mod h1:2FMWW+8GMoPweT6+pI63m9YE3Lmw4J71hV56Chs1E/U= -github.com/minio/sha256-simd v0.0.0-20190328051042-05b4dd3047e5/go.mod h1:2FMWW+8GMoPweT6+pI63m9YE3Lmw4J71hV56Chs1E/U= -github.com/minio/sha256-simd v0.1.0/go.mod h1:2FMWW+8GMoPweT6+pI63m9YE3Lmw4J71hV56Chs1E/U= -github.com/minio/sha256-simd v0.1.1-0.20190913151208-6de447530771/go.mod h1:B5e1o+1/KgNmWrSQK08Y6Z1Vb5pwIktudl0J58iy0KM= -github.com/minio/sha256-simd v1.0.0/go.mod h1:OuYzVNI5vcoYIAmbIvHPl3N3jUzVedXbKy5RFepssQM= -github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q= -github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0= -github.com/mr-tron/base58 v1.1.0/go.mod h1:xcD2VGqlgYjBdcBLw+TuYLr8afG+Hj8g2eTVqeSzSU8= -github.com/mr-tron/base58 v1.1.1/go.mod h1:xcD2VGqlgYjBdcBLw+TuYLr8afG+Hj8g2eTVqeSzSU8= -github.com/mr-tron/base58 v1.1.2/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= -github.com/mr-tron/base58 v1.1.3/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= -github.com/mr-tron/base58 v1.2.0/go.mod h1:BinMc/sQntlIE1frQmRFPUoPA1Zkr8VRgBdjWI2mNwc= -github.com/multiformats/go-base32 v0.0.3/go.mod h1:pLiuGC8y0QR3Ue4Zug5UzK9LjgbkL8NSQj0zQ5Nz/AA= -github.com/multiformats/go-base36 v0.1.0/go.mod h1:kFGE83c6s80PklsHO9sRn2NCoffoRdUUOENyW/Vv6sM= -github.com/multiformats/go-multiaddr v0.0.1/go.mod h1:xKVEak1K9cS1VdmPZW3LSIb6lgmoS58qz/pzqmAxV44= -github.com/multiformats/go-multiaddr v0.0.2/go.mod h1:xKVEak1K9cS1VdmPZW3LSIb6lgmoS58qz/pzqmAxV44= -github.com/multiformats/go-multiaddr v0.0.4/go.mod h1:xKVEak1K9cS1VdmPZW3LSIb6lgmoS58qz/pzqmAxV44= -github.com/multiformats/go-multiaddr-dns v0.0.1/go.mod h1:9kWcqw/Pj6FwxAwW38n/9403szc57zJPs45fmnznu3Q= -github.com/multiformats/go-multiaddr-dns v0.0.2/go.mod h1:9kWcqw/Pj6FwxAwW38n/9403szc57zJPs45fmnznu3Q= -github.com/multiformats/go-multiaddr-fmt v0.0.1/go.mod h1:aBYjqL4T/7j4Qx+R73XSv/8JsgnRFlf0w2KGLCmXl3Q= -github.com/multiformats/go-multiaddr-net v0.0.1/go.mod h1:nw6HSxNmCIQH27XPGBuX+d1tnvM7ihcFwHMSstNAVUU= -github.com/multiformats/go-multibase v0.0.1/go.mod h1:bja2MqRZ3ggyXtZSEDKpl0uO/gviWFaSteVbWT51qgs= -github.com/multiformats/go-multibase v0.0.3/go.mod h1:5+1R4eQrT3PkYZ24C3W2Ue2tPwIdYQD509ZjSb5y9Oc= -github.com/multiformats/go-multihash v0.0.1/go.mod h1:w/5tugSrLEbWqlcgJabL3oHFKTwfvkofsjW2Qa1ct4U= -github.com/multiformats/go-multihash v0.0.5/go.mod h1:lt/HCbqlQwlPBz7lv0sQCdtfcMtlJvakRUn/0Ual8po= -github.com/multiformats/go-multihash v0.0.10/go.mod h1:YSLudS+Pi8NHE7o6tb3D8vrpKa63epEDmG8nTduyAew= -github.com/multiformats/go-multihash v0.0.13/go.mod h1:VdAWLKTwram9oKAatUcLxBNUjdtcVwxObEQBtRfuyjc= -github.com/multiformats/go-multihash v0.0.14/go.mod h1:VdAWLKTwram9oKAatUcLxBNUjdtcVwxObEQBtRfuyjc= -github.com/multiformats/go-multihash v0.0.15/go.mod h1:D6aZrWNLFTV/ynMpKsNtB40mJzmCl4jb1alC0OvHiHg= -github.com/multiformats/go-multistream v0.1.0/go.mod h1:fJTiDfXJVmItycydCnNx4+wSzZ5NwG2FEVAI30fiovg= -github.com/multiformats/go-varint v0.0.5/go.mod h1:3Ls8CIEsrijN6+B7PbrXRPxHRPuXSrVKRY101jdMZYE= -github.com/multiformats/go-varint v0.0.6/go.mod h1:3Ls8CIEsrijN6+B7PbrXRPxHRPuXSrVKRY101jdMZYE= -github.com/onsi/ginkgo v1.6.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v1.7.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/ginkgo v1.8.0/go.mod h1:lLunBs/Ym6LB5Z9jYTR76FiuTmxDTDusOGeTQH+WWjE= -github.com/onsi/gomega v1.4.3/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= -github.com/onsi/gomega v1.5.0/go.mod h1:ex+gbHU/CVuBBDIJjb2X0qEXbFg53c61hWP/1CpauHY= -github.com/opentracing/opentracing-go v1.0.2/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= -github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o= -github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0= -github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4= -github.com/polydawn/refmt v0.0.0-20190221155625-df39d6c2d992/go.mod h1:uIp+gprXxxrWSjjklXD+mN4wed/tMfjMMmN/9+JsA9o= -github.com/polydawn/refmt v0.0.0-20190807091052-3d65705ee9f1/go.mod h1:uIp+gprXxxrWSjjklXD+mN4wed/tMfjMMmN/9+JsA9o= -github.com/polydawn/refmt v0.0.0-20201211092308-30ac6d18308e/go.mod h1:uIp+gprXxxrWSjjklXD+mN4wed/tMfjMMmN/9+JsA9o= -github.com/prometheus/procfs v0.0.0-20190425082905-87a4384529e0/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsTZCD3I8kEA= -github.com/prometheus/procfs v0.0.3/go.mod h1:4A/X28fw3Fc593LaREMrKMqOKvUAntwMDaekg4FpcdQ= -github.com/santhosh-tekuri/jsonschema v1.2.4/go.mod h1:TEAUOeZSmIxTTuHatJzrvARHiuO9LYd+cIxzgEHCQI4= -github.com/smartystreets/assertions v0.0.0-20180927180507-b2de0cb4f26d/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc= -github.com/smartystreets/goconvey v0.0.0-20190222223459-a17d461953aa/go.mod h1:2RVY1rIf+2J2o/IM9+vPq9RzmHDSseB7FoXiSNIUsoU= -github.com/smartystreets/goconvey v1.6.4/go.mod h1:syvi0/a8iFYH4r/RixwvyeAJjdLS9QV7WQ/tjFTllLA= -github.com/spacemonkeygo/openssl v0.0.0-20181017203307-c2dcc5cca94a/go.mod h1:7AyxJNCJ7SBZ1MfVQCWD6Uqo2oubI2Eq2y2eqf+A5r0= -github.com/spacemonkeygo/spacelog v0.0.0-20180420211403-2296661a0572/go.mod h1:w0SWMsp6j9O/dk4/ZpIhL+3CkG8ofA2vuv7k+ltqUMc= -github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA= -github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME= -github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI= -github.com/stretchr/testify v1.4.0/go.mod h1:j7eGeouHqKxXV5pUuKE4zz7dFj8WfuZ+81PSLYec5m4= -github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg= -github.com/syndtr/goleveldb v1.0.0/go.mod h1:ZVVdQEZoIme9iO1Ch2Jdy24qqXrMMOU6lpPAyBWyWuQ= -github.com/ugorji/go v1.1.7/go.mod h1:kZn38zHttfInRq0xu/PH0az30d+z6vm202qpg1oXVMw= -github.com/ugorji/go/codec v1.1.7/go.mod h1:Ax+UKWsSmolVDwsd+7N3ZtXu+yMGCf907BLYF3GoBXY= -github.com/warpfork/go-wish v0.0.0-20180510122957-5ad1f5abf436/go.mod h1:x6AKhvSSexNrVSrViXSHUEbICjmGXhtgABaHIySUSGw= -github.com/warpfork/go-wish v0.0.0-20200122115046-b9ea61034e4a/go.mod h1:x6AKhvSSexNrVSrViXSHUEbICjmGXhtgABaHIySUSGw= -github.com/whyrusleeping/cbor-gen v0.0.0-20200123233031-1cdf64d27158/go.mod h1:Xj/M2wWU+QdTdRbu/L/1dIZY8/Wb2K9pAhtroQuxJJI= -github.com/whyrusleeping/go-keyspace v0.0.0-20160322163242-5b898ac5add1/go.mod h1:8UvriyWtv5Q5EOgjHaSseUEdkQfvwFv1I/In/O2M9gc= -github.com/whyrusleeping/go-logging v0.0.0-20170515211332-0457bb6b88fc/go.mod h1:bopw91TMyo8J3tvftk8xmU2kPmlrt4nScJQZU2hE5EM= -github.com/whyrusleeping/go-notifier v0.0.0-20170827234753-097c5d47330f/go.mod h1:cZNvX9cFybI01GriPRMXDtczuvUhgbcYr9iCGaNlRv8= -github.com/whyrusleeping/mafmt v1.2.8/go.mod h1:faQJFPbLSxzD9xpA02ttW/tS9vZykNvXwGvqIpk20FA= -github.com/whyrusleeping/mdns v0.0.0-20180901202407-ef14215e6b30/go.mod h1:j4l84WPFclQPj320J9gp0XwNKBb3U0zt5CBqjPp22G4= -github.com/whyrusleeping/multiaddr-filter v0.0.0-20160516205228-e903e4adabd7/go.mod h1:X2c0RVCI1eSUFI8eLcY3c0423ykwiUdxLJtkDvruhjI= -github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74= -go.elastic.co/apm v1.11.0/go.mod h1:qoOSi09pnzJDh5fKnfY7bPmQgl8yl2tULdOu03xhui0= -go.elastic.co/fastjson v1.1.0/go.mod h1:boNGISWMjQsUPy/t6yqt2/1Wx4YNPSe+mZjlyw9vKKI= -golang.org/x/crypto v0.0.0-20170930174604-9419663f5a44/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20190211182817-74369b46fc67/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20190225124518-7f87c0fbb88b/go.mod h1:6SG95UA2DQfeDnfUPMdvaQW0Q7yPrPDi9nlGo2tz2b4= -golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= -golang.org/x/crypto v0.0.0-20190426145343-a29dc8fdc734/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20190513172903-22d7a77e9e5f/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20190611184440-5c40567a22f8/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= -golang.org/x/crypto v0.0.0-20210220033148-5ea612d1eb83/go.mod h1:jdWPYTVW3xRLrWPugEBEK3UY2ZEsg3UU495nc5E+M+I= -golang.org/x/mod v0.2.0/go.mod h1:s0Qsj1ACt9ePp/hMypM3fl4fZqREWJwdYDEqhRiZZUA= -golang.org/x/net v0.0.0-20180906233101-161cd47e91fd/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20181011144130-49bb7cea24b1/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20190227160552-c95aed5357e7/go.mod h1:mL1N/T3taQHkDXs73rZJwtUhF3w3ftmwwsq0BUmARs4= -golang.org/x/net v0.0.0-20190311183353-d8887717615a/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190404232315-eb5bcb51f2a3/go.mod h1:t9HGtf8HONx5eT2rtn7q6eTqICYqUVnKs3thJo3Qplg= -golang.org/x/net v0.0.0-20190522155817-f3200d17e092/go.mod h1:HSz+uSET+XFnRR8LxR5pz3Of3rY3CfYBVs4xY44aLks= -golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/net v0.0.0-20200226121028-0de0cce0169b/go.mod h1:z5CRVTTTmAJ677TzLLGU+0bjPO0LkuOLi4/5GtJWs/s= -golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM= -golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190219092855-153ac476189d/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190222072716-a9d3bda3a223/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190228124157-a34e9553db1e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY= -golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20190524122548-abf6ff778158/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191025021431-6c3a3bfe00ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20191204072324-ce4227a45e2e/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20200116001909-b77594299b42/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/sys v0.0.0-20210309074719-68d13333faf2/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs= -golang.org/x/term v0.0.0-20201117132131-f5c789dd3221/go.mod h1:Nr5EML6q2oocZ2LXRh80K7BxOlk5/8JxuGnuhpl+muw= -golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= -golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk= -golang.org/x/tools v0.0.0-20180221164845-07fd8470d635/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20181030221726-6c7e314b6563/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ= -golang.org/x/tools v0.0.0-20190328211700-ab21143f2384/go.mod h1:LCzVGOaR6xXOjkQ3onu1FJEFr0SW1gC7cKk1uF8kGRs= -golang.org/x/tools v0.0.0-20191119224855-298f0cb1881e/go.mod h1:b+2E5dAYhXwXZwtnZ6UAqBI28+e2cm9otk0dWdXHAEo= -golang.org/x/tools v0.0.0-20200509030707-2212a7e161a5/go.mod h1:EkVYQZoAsY45+roYkvgYkIh4xh/qjgUK9TdY2XT94GE= -golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -golang.org/x/xerrors v0.0.0-20200804184101-5ec99f83aff1/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0= -google.golang.org/genproto v0.0.0-20180831171423-11092d34479b/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc= -gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= -gopkg.in/fsnotify.v1 v1.4.7/go.mod h1:Tz8NjZHkW78fSQdbUxIjBTcgA1z1m8ZHf0WmKUhAMys= -gopkg.in/tomb.v1 v1.0.0-20141024135613-dd632973f1e7/go.mod h1:dt/ZhP58zS4L8KSrWDmTeBkI65Dw0HsyUHuEVlX15mw= -gopkg.in/yaml.v2 v2.2.1/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.2/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v2 v2.2.8/go.mod h1:hI93XBmqTisBFMUTm0b8Fm+jr3Dg1NNxqwp+5A1VGuI= -gopkg.in/yaml.v3 v3.0.0-20200313102051-9f266ea9e77c/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM= -howett.net/plist v0.0.0-20181124034731-591f970eefbb/go.mod h1:vMygbs4qMhSZSc4lCUl2OEE+rDiIIJAIdR4m7MiMcm0= diff --git a/test/it/test_manifests/gradle-groovy/build.gradle b/test/it/test_manifests/gradle-groovy/build.gradle deleted file mode 100644 index ae7fc99f..00000000 --- a/test/it/test_manifests/gradle-groovy/build.gradle +++ /dev/null @@ -1,29 +0,0 @@ -plugins { - id 'java' -} - -group = 'org.acme.dbaas' -version = '1.0.0-SNAPSHOT' - -repositories { - mavenCentral() -} - -dependencies { - implementation "io.quarkus:quarkus-hibernate-orm:2.13.5.Final" - implementation "io.quarkus:quarkus-agroal:2.13.5.Final" - implementation "io.quarkus:quarkus-resteasy:2.13.5.Final" - implementation "io.quarkus:quarkus-resteasy-jackson:2.13.5.Final" - implementation "io.quarkus:quarkus-jdbc-postgresql:2.13.5.Final" - implementation "io.quarkus:quarkus-vertx-http:2.13.5.Final" - implementation "io.quarkus:quarkus-kubernetes-service-binding:2.13.5.Final" - implementation "io.quarkus:quarkus-container-image-docker:2.13.5.Final" - implementation "jakarta.validation:jakarta.validation-api:2.0.2" - implementation "io.quarkus:quarkus-resteasy-multipart:2.13.7.Final" - implementation "io.quarkus:quarkus-hibernate-orm-deployment:2.0.2.Final" - implementation "log4j:log4j:1.2.17" - implementation group: 'log4j', name: 'log4j' -} -test { - useJUnitPlatform() -} diff --git a/test/it/test_manifests/gradle-kotlin/build.gradle.kts b/test/it/test_manifests/gradle-kotlin/build.gradle.kts deleted file mode 100644 index 4a2aba94..00000000 --- a/test/it/test_manifests/gradle-kotlin/build.gradle.kts +++ /dev/null @@ -1,29 +0,0 @@ -plugins { - id("java") -} - -group = "org.acme.dbaas" -version = "1.0.0-SNAPSHOT" - -repositories { - mavenCentral() -} - -dependencies { - implementation("io.quarkus:quarkus-hibernate-orm:2.13.5.Final") - implementation("io.quarkus:quarkus-agroal:2.13.5.Final") - implementation("io.quarkus:quarkus-resteasy:2.13.5.Final") - implementation("io.quarkus:quarkus-resteasy-jackson:2.13.5.Final") - implementation("io.quarkus:quarkus-jdbc-postgresql:2.13.5.Final") - implementation("io.quarkus:quarkus-vertx-http:2.13.5.Final") - implementation("io.quarkus:quarkus-kubernetes-service-binding:2.13.5.Final") - implementation("io.quarkus:quarkus-container-image-docker:2.13.5.Final") - implementation("jakarta.validation:jakarta.validation-api:2.0.2") - implementation("io.quarkus:quarkus-resteasy-multipart:2.13.7.Final") - implementation("io.quarkus:quarkus-hibernate-orm-deployment:2.0.2.Final") - implementation("log4j:log4j:1.2.17") -} - -tasks.test { - useJUnitPlatform() -} diff --git a/test/it/test_manifests/maven/pom.xml b/test/it/test_manifests/maven/pom.xml deleted file mode 100644 index 423c98bc..00000000 --- a/test/it/test_manifests/maven/pom.xml +++ /dev/null @@ -1,30 +0,0 @@ - - - 4.0.0 - - pom-with-deps-no-ignore - pom-with-dependency-not-ignored-for-tests - 0.0.1 - - - - log4j - log4j - 1.2.17 - - - - org.projectlombok - lombok - 1.16.6 - - - - com.fasterxml.jackson.core - jackson-databind - 2.14.0 - - - - diff --git a/test/it/test_manifests/npm/package-lock.json b/test/it/test_manifests/npm/package-lock.json deleted file mode 100644 index cbb3d399..00000000 --- a/test/it/test_manifests/npm/package-lock.json +++ /dev/null @@ -1,96 +0,0 @@ -{ - "name": "test-app", - "version": "1.0.0", - "lockfileVersion": 3, - "requires": true, - "packages": { - "": { - "name": "test-app", - "version": "1.0.0", - "license": "ISC", - "dependencies": { - "@hapi/joi": "^17.1.1", - "axios": "^0.19.0" - } - }, - "node_modules/@hapi/address": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/@hapi/address/-/address-4.1.0.tgz", - "integrity": "sha512-SkszZf13HVgGmChdHo/PxchnSaCJ6cetVqLzyciudzZRT0jcOouIF/Q93mgjw8cce+D+4F4C1Z/WrfFN+O3VHQ==", - "deprecated": "Moved to 'npm install @sideway/address'", - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/@hapi/formula": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/@hapi/formula/-/formula-2.0.0.tgz", - "integrity": "sha512-V87P8fv7PI0LH7LiVi8Lkf3x+KCO7pQozXRssAHNXXL9L1K+uyu4XypLXwxqVDKgyQai6qj3/KteNlrqDx4W5A==", - "deprecated": "Moved to 'npm install @sideway/formula'" - }, - "node_modules/@hapi/hoek": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz", - "integrity": "sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ==" - }, - "node_modules/@hapi/joi": { - "version": "17.1.1", - "resolved": "https://registry.npmjs.org/@hapi/joi/-/joi-17.1.1.tgz", - "integrity": "sha512-p4DKeZAoeZW4g3u7ZeRo+vCDuSDgSvtsB/NpfjXEHTUjSeINAi/RrVOWiVQ1isaoLzMvFEhe8n5065mQq1AdQg==", - "deprecated": "Switch to 'npm install joi'", - "dependencies": { - "@hapi/address": "^4.0.1", - "@hapi/formula": "^2.0.0", - "@hapi/hoek": "^9.0.0", - "@hapi/pinpoint": "^2.0.0", - "@hapi/topo": "^5.0.0" - } - }, - "node_modules/@hapi/pinpoint": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/@hapi/pinpoint/-/pinpoint-2.0.1.tgz", - "integrity": "sha512-EKQmr16tM8s16vTT3cA5L0kZZcTMU5DUOZTuvpnY738m+jyP3JIUj+Mm1xc1rsLkGBQ/gVnfKYPwOmPg1tUR4Q==" - }, - "node_modules/@hapi/topo": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz", - "integrity": "sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg==", - "dependencies": { - "@hapi/hoek": "^9.0.0" - } - }, - "node_modules/axios": { - "version": "0.19.2", - "resolved": "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz", - "integrity": "sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==", - "deprecated": "Critical security vulnerability fixed in v0.21.1. For more information, see https://github.com/axios/axios/pull/3410", - "dependencies": { - "follow-redirects": "1.5.10" - } - }, - "node_modules/debug": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz", - "integrity": "sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==", - "dependencies": { - "ms": "2.0.0" - } - }, - "node_modules/follow-redirects": { - "version": "1.5.10", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz", - "integrity": "sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==", - "dependencies": { - "debug": "=3.1.0" - }, - "engines": { - "node": ">=4.0" - } - }, - "node_modules/ms": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", - "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==" - } - } -} diff --git a/test/it/test_manifests/npm/package.json b/test/it/test_manifests/npm/package.json deleted file mode 100644 index 7e26367d..00000000 --- a/test/it/test_manifests/npm/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "test-app", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "start": "node app.js", - "server": "nodemon server.js" - }, - "keywords": [], - "license": "ISC", - "dependencies": { - "@hapi/joi": "^17.1.1", - "axios": "^0.19.0" - } -} diff --git a/test/it/test_manifests/pip/requirements.txt b/test/it/test_manifests/pip/requirements.txt deleted file mode 100644 index fded9502..00000000 --- a/test/it/test_manifests/pip/requirements.txt +++ /dev/null @@ -1,6 +0,0 @@ -anyio==3.6.2 - # fakepackage==11.69 -click==8.0.4 - # sample comment that should definitely not be resolved -Flask==2.0.3 -# another sample comment diff --git a/test/it/test_manifests/pnpm/package.json b/test/it/test_manifests/pnpm/package.json deleted file mode 100644 index 3be1563f..00000000 --- a/test/it/test_manifests/pnpm/package.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "name": "test-app", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "start": "node app.js", - "server": "nodemon server.js" - }, - "keywords": [], - "license": "ISC", - "dependencies": { - "axios": "^0.19.0", - "node-json-converter": "0.0.1-security" - } -} diff --git a/test/it/test_manifests/pnpm/pnpm-lock.yaml b/test/it/test_manifests/pnpm/pnpm-lock.yaml deleted file mode 100644 index 8be47c95..00000000 --- a/test/it/test_manifests/pnpm/pnpm-lock.yaml +++ /dev/null @@ -1,62 +0,0 @@ -lockfileVersion: '9.0' - -settings: - autoInstallPeers: true - excludeLinksFromLockfile: false - -importers: - - .: - dependencies: - axios: - specifier: ^0.19.0 - version: 0.19.2 - node-json-converter: - specifier: 0.0.1-security - version: 0.0.1-security - -packages: - - axios@0.19.2: - resolution: {integrity: sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==} - deprecated: Critical security vulnerability fixed in v0.21.1. For more information, see https://github.com/axios/axios/pull/3410 - - debug@3.1.0: - resolution: {integrity: sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g==} - peerDependencies: - supports-color: '*' - peerDependenciesMeta: - supports-color: - optional: true - - follow-redirects@1.5.10: - resolution: {integrity: sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ==} - engines: {node: '>=4.0'} - - ms@2.0.0: - resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} - - node-json-converter@0.0.1-security: - resolution: {integrity: sha512-KxZvcO/m1dly7F8QvHKHq/kTXC/NtEzprCDCEt6ipJasWbT9YetNt0y7kSOblgR/l5sIS1455WQNtzSyu9Qe1Q==} - -snapshots: - - axios@0.19.2: - dependencies: - follow-redirects: 1.5.10 - transitivePeerDependencies: - - supports-color - - debug@3.1.0: - dependencies: - ms: 2.0.0 - - follow-redirects@1.5.10: - dependencies: - debug: 3.1.0 - transitivePeerDependencies: - - supports-color - - ms@2.0.0: {} - - node-json-converter@0.0.1-security: {} diff --git a/test/it/test_manifests/yarn-berry/.yarn/install-state.gz b/test/it/test_manifests/yarn-berry/.yarn/install-state.gz deleted file mode 100644 index 9b2420682c314c6867290fada09a704d1fd470c6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 218246 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

y?`^!)jc|L6Tzbgcir!}$FZfBl;9 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⋙K$d5&DE<=qbKUFbPiw^$ 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

s3v#u|}@I54M;W;q|st^Xrf6?Xy&@$FADvtNAlr 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%0D)`9fjxe%uU4oj7Rrq22Qdw_Z_F5#z*3Ldq?eh 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

2uD6co%Pd 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 z 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

^PO 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 Z&gU=u`kQ!D_z(Qte*urD=to~q3IJQ1I4uAG diff --git a/test/it/test_manifests/yarn-berry/.yarnrc.yml b/test/it/test_manifests/yarn-berry/.yarnrc.yml deleted file mode 100644 index 3186f3f0..00000000 --- a/test/it/test_manifests/yarn-berry/.yarnrc.yml +++ /dev/null @@ -1 +0,0 @@ -nodeLinker: node-modules diff --git a/test/it/test_manifests/yarn-berry/package.json b/test/it/test_manifests/yarn-berry/package.json deleted file mode 100644 index 003db0f3..00000000 --- a/test/it/test_manifests/yarn-berry/package.json +++ /dev/null @@ -1,33 +0,0 @@ -{ - "name": "backend", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "start": "node app.js", - "server": "nodemon server.js", - "client-install": "npm install --prefix ../frontend", - "client": "npm start --prefix ../frontend", - "dev": "concurrently \"npm run server\" \"npm run client\"", - "heroku-postbuild": "NPM_CONFIG_PRODUCTION=false npm install --prefix ../frontend && npm run build --prefix ../frontend" - }, - "keywords": [], - "author": "", - "license": "ISC", - "dependencies": { - "@hapi/joi": "^17.1.1", - "axios": "^0.19.0", - "backend": "^0.0.0", - "bcryptjs": "^2.4.3", - "dotenv": "^8.2.0", - "express": "^4.17.1", - "jsdom": "^19.0.0", - "jsonwebtoken": "^8.5.1", - "mongoose": "^5.9.18", - "nodemon": "^2.0.4" - }, - "exhortignore": [ - "jsonwebtoken" - ], - "packageManager": "yarn@4.9.1" -} diff --git a/test/it/test_manifests/yarn-berry/yarn.lock b/test/it/test_manifests/yarn-berry/yarn.lock deleted file mode 100644 index 55719165..00000000 --- a/test/it/test_manifests/yarn-berry/yarn.lock +++ /dev/null @@ -1,2741 +0,0 @@ -# This file is generated by running "yarn install" inside your project. -# Manual changes might be lost - proceed with caution! - -__metadata: - version: 8 - cacheKey: 10c0 - -"@hapi/address@npm:^4.0.1": - version: 4.1.0 - resolution: "@hapi/address@npm:4.1.0" - dependencies: - "@hapi/hoek": "npm:^9.0.0" - checksum: 10c0/6f111f57d9ff72bab8f0a356cdc95f3a5561a347fedc5c2d398906a3754273db4f83e6f92f5d20759c95077f52d01837175a9128b705aef98101f2d34cabe3ac - languageName: node - linkType: hard - -"@hapi/formula@npm:^2.0.0": - version: 2.0.0 - resolution: "@hapi/formula@npm:2.0.0" - checksum: 10c0/93fd1768da51043e49e008a1556c68e9bbf19f6be4823a7c04ed982afaea8f7079f1d4a5452620fe6124976ea0867a6f42e69579fc74f9b9f3dac6bdcc1fc969 - languageName: node - linkType: hard - -"@hapi/hoek@npm:^9.0.0": - version: 9.3.0 - resolution: "@hapi/hoek@npm:9.3.0" - checksum: 10c0/a096063805051fb8bba4c947e293c664b05a32b47e13bc654c0dd43813a1cec993bdd8f29ceb838020299e1d0f89f68dc0d62a603c13c9cc8541963f0beca055 - languageName: node - linkType: hard - -"@hapi/joi@npm:^17.1.1": - version: 17.1.1 - resolution: "@hapi/joi@npm:17.1.1" - dependencies: - "@hapi/address": "npm:^4.0.1" - "@hapi/formula": "npm:^2.0.0" - "@hapi/hoek": "npm:^9.0.0" - "@hapi/pinpoint": "npm:^2.0.0" - "@hapi/topo": "npm:^5.0.0" - checksum: 10c0/0c9fc1e8d26909b0bd1458728d10071170c5112980d455b865fca17964f65befe8b4c30a3d362d423ec60be77afd2d811d2e40a028d3b099adaba80b960db297 - languageName: node - linkType: hard - -"@hapi/pinpoint@npm:^2.0.0": - version: 2.0.1 - resolution: "@hapi/pinpoint@npm:2.0.1" - checksum: 10c0/b3072f2c57c9fa2e44d85168e253e331324158509e1c45dae2676f31555326410345fd2422f890c41201e2783c5e9bb8c7b0bdcf6abe01079742a943b0c300b9 - languageName: node - linkType: hard - -"@hapi/topo@npm:^5.0.0": - version: 5.1.0 - resolution: "@hapi/topo@npm:5.1.0" - dependencies: - "@hapi/hoek": "npm:^9.0.0" - checksum: 10c0/b16b06d9357947149e032bdf10151eb71aea8057c79c4046bf32393cb89d0d0f7ca501c40c0f7534a5ceca078de0700d2257ac855c15e59fe4e00bba2f25c86f - languageName: node - linkType: hard - -"@isaacs/cliui@npm:^8.0.2": - version: 8.0.2 - resolution: "@isaacs/cliui@npm:8.0.2" - dependencies: - string-width: "npm:^5.1.2" - string-width-cjs: "npm:string-width@^4.2.0" - strip-ansi: "npm:^7.0.1" - strip-ansi-cjs: "npm:strip-ansi@^6.0.1" - wrap-ansi: "npm:^8.1.0" - wrap-ansi-cjs: "npm:wrap-ansi@^7.0.0" - checksum: 10c0/b1bf42535d49f11dc137f18d5e4e63a28c5569de438a221c369483731e9dac9fb797af554e8bf02b6192d1e5eba6e6402cf93900c3d0ac86391d00d04876789e - languageName: node - linkType: hard - -"@isaacs/fs-minipass@npm:^4.0.0": - version: 4.0.1 - resolution: "@isaacs/fs-minipass@npm:4.0.1" - dependencies: - minipass: "npm:^7.0.4" - checksum: 10c0/c25b6dc1598790d5b55c0947a9b7d111cfa92594db5296c3b907e2f533c033666f692a3939eadac17b1c7c40d362d0b0635dc874cbfe3e70db7c2b07cc97a5d2 - languageName: node - linkType: hard - -"@npmcli/agent@npm:^3.0.0": - version: 3.0.0 - resolution: "@npmcli/agent@npm:3.0.0" - dependencies: - agent-base: "npm:^7.1.0" - http-proxy-agent: "npm:^7.0.0" - https-proxy-agent: "npm:^7.0.1" - lru-cache: "npm:^10.0.1" - socks-proxy-agent: "npm:^8.0.3" - checksum: 10c0/efe37b982f30740ee77696a80c196912c274ecd2cb243bc6ae7053a50c733ce0f6c09fda085145f33ecf453be19654acca74b69e81eaad4c90f00ccffe2f9271 - languageName: node - linkType: hard - -"@npmcli/fs@npm:^4.0.0": - version: 4.0.0 - resolution: "@npmcli/fs@npm:4.0.0" - dependencies: - semver: "npm:^7.3.5" - checksum: 10c0/c90935d5ce670c87b6b14fab04a965a3b8137e585f8b2a6257263bd7f97756dd736cb165bb470e5156a9e718ecd99413dccc54b1138c1a46d6ec7cf325982fe5 - languageName: node - linkType: hard - -"@pkgjs/parseargs@npm:^0.11.0": - version: 0.11.0 - resolution: "@pkgjs/parseargs@npm:0.11.0" - checksum: 10c0/5bd7576bb1b38a47a7fc7b51ac9f38748e772beebc56200450c4a817d712232b8f1d3ef70532c80840243c657d491cf6a6be1e3a214cff907645819fdc34aadd - languageName: node - linkType: hard - -"@tootallnate/once@npm:2": - version: 2.0.0 - resolution: "@tootallnate/once@npm:2.0.0" - checksum: 10c0/073bfa548026b1ebaf1659eb8961e526be22fa77139b10d60e712f46d2f0f05f4e6c8bec62a087d41088ee9e29faa7f54838568e475ab2f776171003c3920858 - languageName: node - linkType: hard - -"@types/bson@npm:*": - version: 4.2.4 - resolution: "@types/bson@npm:4.2.4" - dependencies: - bson: "npm:*" - checksum: 10c0/5203f87e54ea5b9e8b7724d5465d163463c3578b8cf04a9f39bb85713426377bfdf199a5bc4a560232470e698882f5af0acfe307becfe9546d04cdc89b0fd4b2 - languageName: node - linkType: hard - -"@types/bson@npm:1.x || 4.0.x": - version: 4.0.5 - resolution: "@types/bson@npm:4.0.5" - dependencies: - "@types/node": "npm:*" - checksum: 10c0/0a1ff97af10796769756cce1da114cbf43752f129e4503ae8d9f6995d6a65619bcf7e96bcb66992c8619a53825e0a79dd5dff8a86ce3c378d3b721d07f5e624f - languageName: node - linkType: hard - -"@types/mongodb@npm:^3.5.27": - version: 3.6.20 - resolution: "@types/mongodb@npm:3.6.20" - dependencies: - "@types/bson": "npm:*" - "@types/node": "npm:*" - checksum: 10c0/eafa1074bfed07ab128a1d4635d8b2afdbb1dd1bf1c9fc3b5701b34f50cc6ec5f0de5b3fd59434254cf7b3e7fdc4549492478996ac9a5e5a7c5aba2aeae53560 - languageName: node - linkType: hard - -"@types/node@npm:*": - version: 22.15.3 - resolution: "@types/node@npm:22.15.3" - dependencies: - undici-types: "npm:~6.21.0" - checksum: 10c0/2879f012d1aeba0bfdb5fed80d165f4f2cb3d1f2e1f98a24b18d4a211b4ace7d64bf2622784c78355982ffc1081ba79d0934efc2fb8353913e5871a63609661f - languageName: node - linkType: hard - -"abab@npm:^2.0.5, abab@npm:^2.0.6": - version: 2.0.6 - resolution: "abab@npm:2.0.6" - checksum: 10c0/0b245c3c3ea2598fe0025abf7cc7bb507b06949d51e8edae5d12c1b847a0a0c09639abcb94788332b4e2044ac4491c1e8f571b51c7826fd4b0bda1685ad4a278 - languageName: node - linkType: hard - -"abbrev@npm:^3.0.0": - version: 3.0.1 - resolution: "abbrev@npm:3.0.1" - checksum: 10c0/21ba8f574ea57a3106d6d35623f2c4a9111d9ee3e9a5be47baed46ec2457d2eac46e07a5c4a60186f88cb98abbe3e24f2d4cca70bc2b12f1692523e2209a9ccf - languageName: node - linkType: hard - -"accepts@npm:~1.3.8": - version: 1.3.8 - resolution: "accepts@npm:1.3.8" - dependencies: - mime-types: "npm:~2.1.34" - negotiator: "npm:0.6.3" - checksum: 10c0/3a35c5f5586cfb9a21163ca47a5f77ac34fa8ceb5d17d2fa2c0d81f41cbd7f8c6fa52c77e2c039acc0f4d09e71abdc51144246900f6bef5e3c4b333f77d89362 - languageName: node - linkType: hard - -"acorn-globals@npm:^6.0.0": - version: 6.0.0 - resolution: "acorn-globals@npm:6.0.0" - dependencies: - acorn: "npm:^7.1.1" - acorn-walk: "npm:^7.1.1" - checksum: 10c0/5f92390a3fd7e5a4f84fe976d4650e2a33ecf27135aa9efc5406e3406df7f00a1bbb00648ee0c8058846f55ad0924ff574e6c73395705690e754589380a41801 - languageName: node - linkType: hard - -"acorn-walk@npm:^7.1.1": - version: 7.2.0 - resolution: "acorn-walk@npm:7.2.0" - checksum: 10c0/ff99f3406ed8826f7d6ef6ac76b7608f099d45a1ff53229fa267125da1924188dbacf02e7903dfcfd2ae4af46f7be8847dc7d564c73c4e230dfb69c8ea8e6b4c - languageName: node - linkType: hard - -"acorn@npm:^7.1.1": - version: 7.4.1 - resolution: "acorn@npm:7.4.1" - bin: - acorn: bin/acorn - checksum: 10c0/bd0b2c2b0f334bbee48828ff897c12bd2eb5898d03bf556dcc8942022cec795ac5bb5b6b585e2de687db6231faf07e096b59a361231dd8c9344d5df5f7f0e526 - languageName: node - linkType: hard - -"acorn@npm:^8.5.0": - version: 8.14.1 - resolution: "acorn@npm:8.14.1" - bin: - acorn: bin/acorn - checksum: 10c0/dbd36c1ed1d2fa3550140000371fcf721578095b18777b85a79df231ca093b08edc6858d75d6e48c73e431c174dcf9214edbd7e6fa5911b93bd8abfa54e47123 - languageName: node - linkType: hard - -"agent-base@npm:6": - version: 6.0.2 - resolution: "agent-base@npm:6.0.2" - dependencies: - debug: "npm:4" - checksum: 10c0/dc4f757e40b5f3e3d674bc9beb4f1048f4ee83af189bae39be99f57bf1f48dde166a8b0a5342a84b5944ee8e6ed1e5a9d801858f4ad44764e84957122fe46261 - languageName: node - linkType: hard - -"agent-base@npm:^7.1.0, agent-base@npm:^7.1.2": - version: 7.1.3 - resolution: "agent-base@npm:7.1.3" - checksum: 10c0/6192b580c5b1d8fb399b9c62bf8343d76654c2dd62afcb9a52b2cf44a8b6ace1e3b704d3fe3547d91555c857d3df02603341ff2cb961b9cfe2b12f9f3c38ee11 - languageName: node - linkType: hard - -"ansi-regex@npm:^5.0.1": - version: 5.0.1 - resolution: "ansi-regex@npm:5.0.1" - checksum: 10c0/9a64bb8627b434ba9327b60c027742e5d17ac69277960d041898596271d992d4d52ba7267a63ca10232e29f6107fc8a835f6ce8d719b88c5f8493f8254813737 - languageName: node - linkType: hard - -"ansi-regex@npm:^6.0.1": - version: 6.1.0 - resolution: "ansi-regex@npm:6.1.0" - checksum: 10c0/a91daeddd54746338478eef88af3439a7edf30f8e23196e2d6ed182da9add559c601266dbef01c2efa46a958ad6f1f8b176799657616c702b5b02e799e7fd8dc - languageName: node - linkType: hard - -"ansi-styles@npm:^4.0.0": - version: 4.3.0 - resolution: "ansi-styles@npm:4.3.0" - dependencies: - color-convert: "npm:^2.0.1" - checksum: 10c0/895a23929da416f2bd3de7e9cb4eabd340949328ab85ddd6e484a637d8f6820d485f53933446f5291c3b760cbc488beb8e88573dd0f9c7daf83dccc8fe81b041 - languageName: node - linkType: hard - -"ansi-styles@npm:^6.1.0": - version: 6.2.1 - resolution: "ansi-styles@npm:6.2.1" - checksum: 10c0/5d1ec38c123984bcedd996eac680d548f31828bd679a66db2bdf11844634dde55fec3efa9c6bb1d89056a5e79c1ac540c4c784d592ea1d25028a92227d2f2d5c - languageName: node - linkType: hard - -"anymatch@npm:~3.1.2": - version: 3.1.3 - resolution: "anymatch@npm:3.1.3" - dependencies: - normalize-path: "npm:^3.0.0" - picomatch: "npm:^2.0.4" - checksum: 10c0/57b06ae984bc32a0d22592c87384cd88fe4511b1dd7581497831c56d41939c8a001b28e7b853e1450f2bf61992dfcaa8ae2d0d161a0a90c4fb631ef07098fbac - languageName: node - linkType: hard - -"array-flatten@npm:1.1.1": - version: 1.1.1 - resolution: "array-flatten@npm:1.1.1" - checksum: 10c0/806966c8abb2f858b08f5324d9d18d7737480610f3bd5d3498aaae6eb5efdc501a884ba019c9b4a8f02ff67002058749d05548fd42fa8643f02c9c7f22198b91 - languageName: node - linkType: hard - -"asynckit@npm:^0.4.0": - version: 0.4.0 - resolution: "asynckit@npm:0.4.0" - checksum: 10c0/d73e2ddf20c4eb9337e1b3df1a0f6159481050a5de457c55b14ea2e5cb6d90bb69e004c9af54737a5ee0917fcf2c9e25de67777bbe58261847846066ba75bc9d - languageName: node - linkType: hard - -"axios@npm:^0.19.0": - version: 0.19.2 - resolution: "axios@npm:0.19.2" - dependencies: - follow-redirects: "npm:1.5.10" - checksum: 10c0/b775abf2db44ea4f182f4c2bfa4bf84a723b86f5aa001f222f12193fa45ba243b7e3f27b66289c6afa51d696402b05c82715fd621a34add5b538e850adcdbce1 - languageName: node - linkType: hard - -"backend@npm:^0.0.0": - version: 0.0.0 - resolution: "backend@npm:0.0.0" - checksum: 10c0/686c7b54482f3dfd3991e596fab4681d2d7a5940a8b00578fc78f565a0804b57fe9f5c1eeebca5c67b17b61f43e8fb92563ccaf77e4c8551058f5be391831bab - languageName: node - linkType: hard - -"backend@workspace:.": - version: 0.0.0-use.local - resolution: "backend@workspace:." - dependencies: - "@hapi/joi": "npm:^17.1.1" - axios: "npm:^0.19.0" - backend: "npm:^0.0.0" - bcryptjs: "npm:^2.4.3" - dotenv: "npm:^8.2.0" - express: "npm:^4.17.1" - jsdom: "npm:^19.0.0" - jsonwebtoken: "npm:^8.5.1" - mongoose: "npm:^5.9.18" - nodemon: "npm:^2.0.4" - languageName: unknown - linkType: soft - -"balanced-match@npm:^1.0.0": - version: 1.0.2 - resolution: "balanced-match@npm:1.0.2" - checksum: 10c0/9308baf0a7e4838a82bbfd11e01b1cb0f0cf2893bc1676c27c2a8c0e70cbae1c59120c3268517a8ae7fb6376b4639ef81ca22582611dbee4ed28df945134aaee - languageName: node - linkType: hard - -"bcryptjs@npm:^2.4.3": - version: 2.4.3 - resolution: "bcryptjs@npm:2.4.3" - checksum: 10c0/b969467087ed7a01ff905a1c6a0c45014ec586248a448ea08370c8ed8bb314bda16a870ca23e0961d7d23bdce1a04c76fa70a9d680be814fa9ac7d8fc61870a3 - languageName: node - linkType: hard - -"binary-extensions@npm:^2.0.0": - version: 2.3.0 - resolution: "binary-extensions@npm:2.3.0" - checksum: 10c0/75a59cafc10fb12a11d510e77110c6c7ae3f4ca22463d52487709ca7f18f69d886aa387557cc9864fbdb10153d0bdb4caacabf11541f55e89ed6e18d12ece2b5 - languageName: node - linkType: hard - -"bl@npm:^2.2.1": - version: 2.2.1 - resolution: "bl@npm:2.2.1" - dependencies: - readable-stream: "npm:^2.3.5" - safe-buffer: "npm:^5.1.1" - checksum: 10c0/37481260f1661755253b6205fcdd64b6d852147aaf61628947d2193fcdb78e625ee061dae0094ac16e7c7f10b12c90110fb2b08826815d47a28f9628bebb5a8f - languageName: node - linkType: hard - -"bluebird@npm:3.5.1": - version: 3.5.1 - resolution: "bluebird@npm:3.5.1" - checksum: 10c0/6df1d4499612aecc146cf6f89a8e81f4f7fd0f7a896bf57742214861c97882d9a4e0d8deab1a4e0c5270ad722d4ff74f161cce81c2742b58fb72f113cafd9ad6 - languageName: node - linkType: hard - -"body-parser@npm:1.20.3": - version: 1.20.3 - resolution: "body-parser@npm:1.20.3" - dependencies: - bytes: "npm:3.1.2" - content-type: "npm:~1.0.5" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:1.2.0" - http-errors: "npm:2.0.0" - iconv-lite: "npm:0.4.24" - on-finished: "npm:2.4.1" - qs: "npm:6.13.0" - raw-body: "npm:2.5.2" - type-is: "npm:~1.6.18" - unpipe: "npm:1.0.0" - checksum: 10c0/0a9a93b7518f222885498dcecaad528cf010dd109b071bf471c93def4bfe30958b83e03496eb9c1ad4896db543d999bb62be1a3087294162a88cfa1b42c16310 - languageName: node - linkType: hard - -"brace-expansion@npm:^1.1.7": - version: 1.1.11 - resolution: "brace-expansion@npm:1.1.11" - dependencies: - balanced-match: "npm:^1.0.0" - concat-map: "npm:0.0.1" - checksum: 10c0/695a56cd058096a7cb71fb09d9d6a7070113c7be516699ed361317aca2ec169f618e28b8af352e02ab4233fb54eb0168460a40dc320bab0034b36ab59aaad668 - languageName: node - linkType: hard - -"brace-expansion@npm:^2.0.1": - version: 2.0.1 - resolution: "brace-expansion@npm:2.0.1" - dependencies: - balanced-match: "npm:^1.0.0" - checksum: 10c0/b358f2fe060e2d7a87aa015979ecea07f3c37d4018f8d6deb5bd4c229ad3a0384fe6029bb76cd8be63c81e516ee52d1a0673edbe2023d53a5191732ae3c3e49f - languageName: node - linkType: hard - -"braces@npm:~3.0.2": - version: 3.0.3 - resolution: "braces@npm:3.0.3" - dependencies: - fill-range: "npm:^7.1.1" - checksum: 10c0/7c6dfd30c338d2997ba77500539227b9d1f85e388a5f43220865201e407e076783d0881f2d297b9f80951b4c957fcf0b51c1d2d24227631643c3f7c284b0aa04 - languageName: node - linkType: hard - -"browser-process-hrtime@npm:^1.0.0": - version: 1.0.0 - resolution: "browser-process-hrtime@npm:1.0.0" - checksum: 10c0/65da78e51e9d7fa5909147f269c54c65ae2e03d1cf797cc3cfbbe49f475578b8160ce4a76c36c1a2ffbff26c74f937d73096c508057491ddf1a6dfd11143f72d - languageName: node - linkType: hard - -"bson@npm:*": - version: 6.10.3 - resolution: "bson@npm:6.10.3" - checksum: 10c0/15ad7a9b3bf8090add5fea1761b1ba7d75e5256efcfbb8c9ca448ca98e59c3b079c37c36c7aca0cc916236bd2d4684a5525c68f3d76da8a13d55dc230abbdd21 - languageName: node - linkType: hard - -"bson@npm:^1.1.4": - version: 1.1.6 - resolution: "bson@npm:1.1.6" - checksum: 10c0/a45416578e09837d0341149ee4bf2f2704d2e4ec5cdacbc343600e0d3cf01efdf17d6b64f8fc2e664ec2f727ad6ad2bce05894d9e7e4d4a0a10342ddbb122163 - languageName: node - linkType: hard - -"buffer-equal-constant-time@npm:1.0.1": - version: 1.0.1 - resolution: "buffer-equal-constant-time@npm:1.0.1" - checksum: 10c0/fb2294e64d23c573d0dd1f1e7a466c3e978fe94a4e0f8183937912ca374619773bef8e2aceb854129d2efecbbc515bbd0cc78d2734a3e3031edb0888531bbc8e - languageName: node - linkType: hard - -"bytes@npm:3.1.2": - version: 3.1.2 - resolution: "bytes@npm:3.1.2" - checksum: 10c0/76d1c43cbd602794ad8ad2ae94095cddeb1de78c5dddaa7005c51af10b0176c69971a6d88e805a90c2b6550d76636e43c40d8427a808b8645ede885de4a0358e - languageName: node - linkType: hard - -"cacache@npm:^19.0.1": - version: 19.0.1 - resolution: "cacache@npm:19.0.1" - dependencies: - "@npmcli/fs": "npm:^4.0.0" - fs-minipass: "npm:^3.0.0" - glob: "npm:^10.2.2" - lru-cache: "npm:^10.0.1" - minipass: "npm:^7.0.3" - minipass-collect: "npm:^2.0.1" - minipass-flush: "npm:^1.0.5" - minipass-pipeline: "npm:^1.2.4" - p-map: "npm:^7.0.2" - ssri: "npm:^12.0.0" - tar: "npm:^7.4.3" - unique-filename: "npm:^4.0.0" - checksum: 10c0/01f2134e1bd7d3ab68be851df96c8d63b492b1853b67f2eecb2c37bb682d37cb70bb858a16f2f0554d3c0071be6dfe21456a1ff6fa4b7eed996570d6a25ffe9c - languageName: node - linkType: hard - -"call-bind-apply-helpers@npm:^1.0.1, call-bind-apply-helpers@npm:^1.0.2": - version: 1.0.2 - resolution: "call-bind-apply-helpers@npm:1.0.2" - dependencies: - es-errors: "npm:^1.3.0" - function-bind: "npm:^1.1.2" - checksum: 10c0/47bd9901d57b857590431243fea704ff18078b16890a6b3e021e12d279bbf211d039155e27d7566b374d49ee1f8189344bac9833dec7a20cdec370506361c938 - languageName: node - linkType: hard - -"call-bound@npm:^1.0.2": - version: 1.0.4 - resolution: "call-bound@npm:1.0.4" - dependencies: - call-bind-apply-helpers: "npm:^1.0.2" - get-intrinsic: "npm:^1.3.0" - checksum: 10c0/f4796a6a0941e71c766aea672f63b72bc61234c4f4964dc6d7606e3664c307e7d77845328a8f3359ce39ddb377fed67318f9ee203dea1d47e46165dcf2917644 - languageName: node - linkType: hard - -"chokidar@npm:^3.5.2": - version: 3.6.0 - resolution: "chokidar@npm:3.6.0" - dependencies: - anymatch: "npm:~3.1.2" - braces: "npm:~3.0.2" - fsevents: "npm:~2.3.2" - glob-parent: "npm:~5.1.2" - is-binary-path: "npm:~2.1.0" - is-glob: "npm:~4.0.1" - normalize-path: "npm:~3.0.0" - readdirp: "npm:~3.6.0" - dependenciesMeta: - fsevents: - optional: true - checksum: 10c0/8361dcd013f2ddbe260eacb1f3cb2f2c6f2b0ad118708a343a5ed8158941a39cb8fb1d272e0f389712e74ee90ce8ba864eece9e0e62b9705cb468a2f6d917462 - languageName: node - linkType: hard - -"chownr@npm:^3.0.0": - version: 3.0.0 - resolution: "chownr@npm:3.0.0" - checksum: 10c0/43925b87700f7e3893296c8e9c56cc58f926411cce3a6e5898136daaf08f08b9a8eb76d37d3267e707d0dcc17aed2e2ebdf5848c0c3ce95cf910a919935c1b10 - languageName: node - linkType: hard - -"color-convert@npm:^2.0.1": - version: 2.0.1 - resolution: "color-convert@npm:2.0.1" - dependencies: - color-name: "npm:~1.1.4" - checksum: 10c0/37e1150172f2e311fe1b2df62c6293a342ee7380da7b9cfdba67ea539909afbd74da27033208d01d6d5cfc65ee7868a22e18d7e7648e004425441c0f8a15a7d7 - languageName: node - linkType: hard - -"color-name@npm:~1.1.4": - version: 1.1.4 - resolution: "color-name@npm:1.1.4" - checksum: 10c0/a1a3f914156960902f46f7f56bc62effc6c94e84b2cae157a526b1c1f74b677a47ec602bf68a61abfa2b42d15b7c5651c6dbe72a43af720bc588dff885b10f95 - languageName: node - linkType: hard - -"combined-stream@npm:^1.0.8": - version: 1.0.8 - resolution: "combined-stream@npm:1.0.8" - dependencies: - delayed-stream: "npm:~1.0.0" - checksum: 10c0/0dbb829577e1b1e839fa82b40c07ffaf7de8a09b935cadd355a73652ae70a88b4320db322f6634a4ad93424292fa80973ac6480986247f1734a1137debf271d5 - languageName: node - linkType: hard - -"concat-map@npm:0.0.1": - version: 0.0.1 - resolution: "concat-map@npm:0.0.1" - checksum: 10c0/c996b1cfdf95b6c90fee4dae37e332c8b6eb7d106430c17d538034c0ad9a1630cb194d2ab37293b1bdd4d779494beee7786d586a50bd9376fd6f7bcc2bd4c98f - languageName: node - linkType: hard - -"content-disposition@npm:0.5.4": - version: 0.5.4 - resolution: "content-disposition@npm:0.5.4" - dependencies: - safe-buffer: "npm:5.2.1" - checksum: 10c0/bac0316ebfeacb8f381b38285dc691c9939bf0a78b0b7c2d5758acadad242d04783cee5337ba7d12a565a19075af1b3c11c728e1e4946de73c6ff7ce45f3f1bb - languageName: node - linkType: hard - -"content-type@npm:~1.0.4, content-type@npm:~1.0.5": - version: 1.0.5 - resolution: "content-type@npm:1.0.5" - checksum: 10c0/b76ebed15c000aee4678c3707e0860cb6abd4e680a598c0a26e17f0bfae723ec9cc2802f0ff1bc6e4d80603719010431d2231018373d4dde10f9ccff9dadf5af - languageName: node - linkType: hard - -"cookie-signature@npm:1.0.6": - version: 1.0.6 - resolution: "cookie-signature@npm:1.0.6" - checksum: 10c0/b36fd0d4e3fef8456915fcf7742e58fbfcc12a17a018e0eb9501c9d5ef6893b596466f03b0564b81af29ff2538fd0aa4b9d54fe5ccbfb4c90ea50ad29fe2d221 - languageName: node - linkType: hard - -"cookie@npm:0.7.1": - version: 0.7.1 - resolution: "cookie@npm:0.7.1" - checksum: 10c0/5de60c67a410e7c8dc8a46a4b72eb0fe925871d057c9a5d2c0e8145c4270a4f81076de83410c4d397179744b478e33cd80ccbcc457abf40a9409ad27dcd21dde - languageName: node - linkType: hard - -"core-util-is@npm:~1.0.0": - version: 1.0.3 - resolution: "core-util-is@npm:1.0.3" - checksum: 10c0/90a0e40abbddfd7618f8ccd63a74d88deea94e77d0e8dbbea059fa7ebebb8fbb4e2909667fe26f3a467073de1a542ebe6ae4c73a73745ac5833786759cd906c9 - languageName: node - linkType: hard - -"cross-spawn@npm:^7.0.6": - version: 7.0.6 - resolution: "cross-spawn@npm:7.0.6" - dependencies: - path-key: "npm:^3.1.0" - shebang-command: "npm:^2.0.0" - which: "npm:^2.0.1" - checksum: 10c0/053ea8b2135caff68a9e81470e845613e374e7309a47731e81639de3eaeb90c3d01af0e0b44d2ab9d50b43467223b88567dfeb3262db942dc063b9976718ffc1 - languageName: node - linkType: hard - -"cssom@npm:^0.5.0": - version: 0.5.0 - resolution: "cssom@npm:0.5.0" - checksum: 10c0/8c4121c243baf0678c65dcac29b201ff0067dfecf978de9d5c83b2ff127a8fdefd2bfd54577f5ad8c80ed7d2c8b489ae01c82023545d010c4ecb87683fb403dd - languageName: node - linkType: hard - -"cssom@npm:~0.3.6": - version: 0.3.8 - resolution: "cssom@npm:0.3.8" - checksum: 10c0/d74017b209440822f9e24d8782d6d2e808a8fdd58fa626a783337222fe1c87a518ba944d4c88499031b4786e68772c99dfae616638d71906fe9f203aeaf14411 - languageName: node - linkType: hard - -"cssstyle@npm:^2.3.0": - version: 2.3.0 - resolution: "cssstyle@npm:2.3.0" - dependencies: - cssom: "npm:~0.3.6" - checksum: 10c0/863400da2a458f73272b9a55ba7ff05de40d850f22eb4f37311abebd7eff801cf1cd2fb04c4c92b8c3daed83fe766e52e4112afb7bc88d86c63a9c2256a7d178 - languageName: node - linkType: hard - -"data-urls@npm:^3.0.1": - version: 3.0.2 - resolution: "data-urls@npm:3.0.2" - dependencies: - abab: "npm:^2.0.6" - whatwg-mimetype: "npm:^3.0.0" - whatwg-url: "npm:^11.0.0" - checksum: 10c0/051c3aaaf3e961904f136aab095fcf6dff4db23a7fc759dd8ba7b3e6ba03fc07ef608086caad8ab910d864bd3b5e57d0d2f544725653d77c96a2c971567045f4 - languageName: node - linkType: hard - -"debug@npm:2.6.9": - version: 2.6.9 - resolution: "debug@npm:2.6.9" - dependencies: - ms: "npm:2.0.0" - checksum: 10c0/121908fb839f7801180b69a7e218a40b5a0b718813b886b7d6bdb82001b931c938e2941d1e4450f33a1b1df1da653f5f7a0440c197f29fbf8a6e9d45ff6ef589 - languageName: node - linkType: hard - -"debug@npm:3.1.0, debug@npm:=3.1.0": - version: 3.1.0 - resolution: "debug@npm:3.1.0" - dependencies: - ms: "npm:2.0.0" - checksum: 10c0/5bff34a352d7b2eaa31886eeaf2ee534b5461ec0548315b2f9f80bd1d2533cab7df1fa52e130ce27bc31c3945fbffb0fc72baacdceb274b95ce853db89254ea4 - languageName: node - linkType: hard - -"debug@npm:4, debug@npm:^4.3.4": - version: 4.4.0 - resolution: "debug@npm:4.4.0" - dependencies: - ms: "npm:^2.1.3" - peerDependenciesMeta: - supports-color: - optional: true - checksum: 10c0/db94f1a182bf886f57b4755f85b3a74c39b5114b9377b7ab375dc2cfa3454f09490cc6c30f829df3fc8042bc8b8995f6567ce5cd96f3bc3688bd24027197d9de - languageName: node - linkType: hard - -"debug@npm:^3.2.7": - version: 3.2.7 - resolution: "debug@npm:3.2.7" - dependencies: - ms: "npm:^2.1.1" - checksum: 10c0/37d96ae42cbc71c14844d2ae3ba55adf462ec89fd3a999459dec3833944cd999af6007ff29c780f1c61153bcaaf2c842d1e4ce1ec621e4fc4923244942e4a02a - languageName: node - linkType: hard - -"decimal.js@npm:^10.3.1": - version: 10.5.0 - resolution: "decimal.js@npm:10.5.0" - checksum: 10c0/785c35279df32762143914668df35948920b6c1c259b933e0519a69b7003fc0a5ed2a766b1e1dda02574450c566b21738a45f15e274b47c2ac02072c0d1f3ac3 - languageName: node - linkType: hard - -"delayed-stream@npm:~1.0.0": - version: 1.0.0 - resolution: "delayed-stream@npm:1.0.0" - checksum: 10c0/d758899da03392e6712f042bec80aa293bbe9e9ff1b2634baae6a360113e708b91326594c8a486d475c69d6259afb7efacdc3537bfcda1c6c648e390ce601b19 - languageName: node - linkType: hard - -"denque@npm:^1.4.1": - version: 1.5.1 - resolution: "denque@npm:1.5.1" - checksum: 10c0/9e6fc1a63e1c9ded38325290302fef40e5ad28471ad8c66d68eaea623ef847bd25fc75a7c3f47396206dc967922615999066470a364e1786f2758d61337872b7 - languageName: node - linkType: hard - -"depd@npm:2.0.0": - version: 2.0.0 - resolution: "depd@npm:2.0.0" - checksum: 10c0/58bd06ec20e19529b06f7ad07ddab60e504d9e0faca4bd23079fac2d279c3594334d736508dc350e06e510aba5e22e4594483b3a6562ce7c17dd797f4cc4ad2c - languageName: node - linkType: hard - -"destroy@npm:1.2.0": - version: 1.2.0 - resolution: "destroy@npm:1.2.0" - checksum: 10c0/bd7633942f57418f5a3b80d5cb53898127bcf53e24cdf5d5f4396be471417671f0fee48a4ebe9a1e9defbde2a31280011af58a57e090ff822f589b443ed4e643 - languageName: node - linkType: hard - -"domexception@npm:^4.0.0": - version: 4.0.0 - resolution: "domexception@npm:4.0.0" - dependencies: - webidl-conversions: "npm:^7.0.0" - checksum: 10c0/774277cd9d4df033f852196e3c0077a34dbd15a96baa4d166e0e47138a80f4c0bdf0d94e4703e6ff5883cec56bb821a6fff84402d8a498e31de7c87eb932a294 - languageName: node - linkType: hard - -"dotenv@npm:^8.2.0": - version: 8.6.0 - resolution: "dotenv@npm:8.6.0" - checksum: 10c0/6750431dea8efbd54b9f2d9681b04e1ccc7989486461dcf058bb708d9e3d63b04115fcdf8840e38ad1e24a4a2e1e7c1560626c5e3ac7bc09371b127c49e2d45f - languageName: node - linkType: hard - -"dunder-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "dunder-proto@npm:1.0.1" - dependencies: - call-bind-apply-helpers: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - gopd: "npm:^1.2.0" - checksum: 10c0/199f2a0c1c16593ca0a145dbf76a962f8033ce3129f01284d48c45ed4e14fea9bbacd7b3610b6cdc33486cef20385ac054948fefc6272fcce645c09468f93031 - languageName: node - linkType: hard - -"eastasianwidth@npm:^0.2.0": - version: 0.2.0 - resolution: "eastasianwidth@npm:0.2.0" - checksum: 10c0/26f364ebcdb6395f95124fda411f63137a4bfb5d3a06453f7f23dfe52502905bd84e0488172e0f9ec295fdc45f05c23d5d91baf16bd26f0fe9acd777a188dc39 - languageName: node - linkType: hard - -"ecdsa-sig-formatter@npm:1.0.11": - version: 1.0.11 - resolution: "ecdsa-sig-formatter@npm:1.0.11" - dependencies: - safe-buffer: "npm:^5.0.1" - checksum: 10c0/ebfbf19d4b8be938f4dd4a83b8788385da353d63307ede301a9252f9f7f88672e76f2191618fd8edfc2f24679236064176fab0b78131b161ee73daa37125408c - languageName: node - linkType: hard - -"ee-first@npm:1.1.1": - version: 1.1.1 - resolution: "ee-first@npm:1.1.1" - checksum: 10c0/b5bb125ee93161bc16bfe6e56c6b04de5ad2aa44234d8f644813cc95d861a6910903132b05093706de2b706599367c4130eb6d170f6b46895686b95f87d017b7 - languageName: node - linkType: hard - -"emoji-regex@npm:^8.0.0": - version: 8.0.0 - resolution: "emoji-regex@npm:8.0.0" - checksum: 10c0/b6053ad39951c4cf338f9092d7bfba448cdfd46fe6a2a034700b149ac9ffbc137e361cbd3c442297f86bed2e5f7576c1b54cc0a6bf8ef5106cc62f496af35010 - languageName: node - linkType: hard - -"emoji-regex@npm:^9.2.2": - version: 9.2.2 - resolution: "emoji-regex@npm:9.2.2" - checksum: 10c0/af014e759a72064cf66e6e694a7fc6b0ed3d8db680427b021a89727689671cefe9d04151b2cad51dbaf85d5ba790d061cd167f1cf32eb7b281f6368b3c181639 - languageName: node - linkType: hard - -"encodeurl@npm:~1.0.2": - version: 1.0.2 - resolution: "encodeurl@npm:1.0.2" - checksum: 10c0/f6c2387379a9e7c1156c1c3d4f9cb7bb11cf16dd4c1682e1f6746512564b053df5781029b6061296832b59fb22f459dbe250386d217c2f6e203601abb2ee0bec - languageName: node - linkType: hard - -"encodeurl@npm:~2.0.0": - version: 2.0.0 - resolution: "encodeurl@npm:2.0.0" - checksum: 10c0/5d317306acb13e6590e28e27924c754163946a2480de11865c991a3a7eed4315cd3fba378b543ca145829569eefe9b899f3d84bb09870f675ae60bc924b01ceb - languageName: node - linkType: hard - -"encoding@npm:^0.1.13": - version: 0.1.13 - resolution: "encoding@npm:0.1.13" - dependencies: - iconv-lite: "npm:^0.6.2" - checksum: 10c0/36d938712ff00fe1f4bac88b43bcffb5930c1efa57bbcdca9d67e1d9d6c57cfb1200fb01efe0f3109b2ce99b231f90779532814a81370a1bd3274a0f58585039 - languageName: node - linkType: hard - -"env-paths@npm:^2.2.0": - version: 2.2.1 - resolution: "env-paths@npm:2.2.1" - checksum: 10c0/285325677bf00e30845e330eec32894f5105529db97496ee3f598478e50f008c5352a41a30e5e72ec9de8a542b5a570b85699cd63bd2bc646dbcb9f311d83bc4 - languageName: node - linkType: hard - -"err-code@npm:^2.0.2": - version: 2.0.3 - resolution: "err-code@npm:2.0.3" - checksum: 10c0/b642f7b4dd4a376e954947550a3065a9ece6733ab8e51ad80db727aaae0817c2e99b02a97a3d6cecc648a97848305e728289cf312d09af395403a90c9d4d8a66 - languageName: node - linkType: hard - -"es-define-property@npm:^1.0.1": - version: 1.0.1 - resolution: "es-define-property@npm:1.0.1" - checksum: 10c0/3f54eb49c16c18707949ff25a1456728c883e81259f045003499efba399c08bad00deebf65cccde8c0e07908c1a225c9d472b7107e558f2a48e28d530e34527c - languageName: node - linkType: hard - -"es-errors@npm:^1.3.0": - version: 1.3.0 - resolution: "es-errors@npm:1.3.0" - checksum: 10c0/0a61325670072f98d8ae3b914edab3559b6caa980f08054a3b872052640d91da01d38df55df797fcc916389d77fc92b8d5906cf028f4db46d7e3003abecbca85 - languageName: node - linkType: hard - -"es-object-atoms@npm:^1.0.0, es-object-atoms@npm:^1.1.1": - version: 1.1.1 - resolution: "es-object-atoms@npm:1.1.1" - dependencies: - es-errors: "npm:^1.3.0" - checksum: 10c0/65364812ca4daf48eb76e2a3b7a89b3f6a2e62a1c420766ce9f692665a29d94fe41fe88b65f24106f449859549711e4b40d9fb8002d862dfd7eb1c512d10be0c - languageName: node - linkType: hard - -"es-set-tostringtag@npm:^2.1.0": - version: 2.1.0 - resolution: "es-set-tostringtag@npm:2.1.0" - dependencies: - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.6" - has-tostringtag: "npm:^1.0.2" - hasown: "npm:^2.0.2" - checksum: 10c0/ef2ca9ce49afe3931cb32e35da4dcb6d86ab02592cfc2ce3e49ced199d9d0bb5085fc7e73e06312213765f5efa47cc1df553a6a5154584b21448e9fb8355b1af - languageName: node - linkType: hard - -"escape-html@npm:~1.0.3": - version: 1.0.3 - resolution: "escape-html@npm:1.0.3" - checksum: 10c0/524c739d776b36c3d29fa08a22e03e8824e3b2fd57500e5e44ecf3cc4707c34c60f9ca0781c0e33d191f2991161504c295e98f68c78fe7baa6e57081ec6ac0a3 - languageName: node - linkType: hard - -"escodegen@npm:^2.0.0": - version: 2.1.0 - resolution: "escodegen@npm:2.1.0" - dependencies: - esprima: "npm:^4.0.1" - estraverse: "npm:^5.2.0" - esutils: "npm:^2.0.2" - source-map: "npm:~0.6.1" - dependenciesMeta: - source-map: - optional: true - bin: - escodegen: bin/escodegen.js - esgenerate: bin/esgenerate.js - checksum: 10c0/e1450a1f75f67d35c061bf0d60888b15f62ab63aef9df1901cffc81cffbbb9e8b3de237c5502cf8613a017c1df3a3003881307c78835a1ab54d8c8d2206e01d3 - languageName: node - linkType: hard - -"esprima@npm:^4.0.1": - version: 4.0.1 - resolution: "esprima@npm:4.0.1" - bin: - esparse: ./bin/esparse.js - esvalidate: ./bin/esvalidate.js - checksum: 10c0/ad4bab9ead0808cf56501750fd9d3fb276f6b105f987707d059005d57e182d18a7c9ec7f3a01794ebddcca676773e42ca48a32d67a250c9d35e009ca613caba3 - languageName: node - linkType: hard - -"estraverse@npm:^5.2.0": - version: 5.3.0 - resolution: "estraverse@npm:5.3.0" - checksum: 10c0/1ff9447b96263dec95d6d67431c5e0771eb9776427421260a3e2f0fdd5d6bd4f8e37a7338f5ad2880c9f143450c9b1e4fc2069060724570a49cf9cf0312bd107 - languageName: node - linkType: hard - -"esutils@npm:^2.0.2": - version: 2.0.3 - resolution: "esutils@npm:2.0.3" - checksum: 10c0/9a2fe69a41bfdade834ba7c42de4723c97ec776e40656919c62cbd13607c45e127a003f05f724a1ea55e5029a4cf2de444b13009f2af71271e42d93a637137c7 - languageName: node - linkType: hard - -"etag@npm:~1.8.1": - version: 1.8.1 - resolution: "etag@npm:1.8.1" - checksum: 10c0/12be11ef62fb9817314d790089a0a49fae4e1b50594135dcb8076312b7d7e470884b5100d249b28c18581b7fd52f8b485689ffae22a11ed9ec17377a33a08f84 - languageName: node - linkType: hard - -"exponential-backoff@npm:^3.1.1": - version: 3.1.2 - resolution: "exponential-backoff@npm:3.1.2" - checksum: 10c0/d9d3e1eafa21b78464297df91f1776f7fbaa3d5e3f7f0995648ca5b89c069d17055033817348d9f4a43d1c20b0eab84f75af6991751e839df53e4dfd6f22e844 - languageName: node - linkType: hard - -"express@npm:^4.17.1": - version: 4.21.2 - resolution: "express@npm:4.21.2" - dependencies: - accepts: "npm:~1.3.8" - array-flatten: "npm:1.1.1" - body-parser: "npm:1.20.3" - content-disposition: "npm:0.5.4" - content-type: "npm:~1.0.4" - cookie: "npm:0.7.1" - cookie-signature: "npm:1.0.6" - debug: "npm:2.6.9" - depd: "npm:2.0.0" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - finalhandler: "npm:1.3.1" - fresh: "npm:0.5.2" - http-errors: "npm:2.0.0" - merge-descriptors: "npm:1.0.3" - methods: "npm:~1.1.2" - on-finished: "npm:2.4.1" - parseurl: "npm:~1.3.3" - path-to-regexp: "npm:0.1.12" - proxy-addr: "npm:~2.0.7" - qs: "npm:6.13.0" - range-parser: "npm:~1.2.1" - safe-buffer: "npm:5.2.1" - send: "npm:0.19.0" - serve-static: "npm:1.16.2" - setprototypeof: "npm:1.2.0" - statuses: "npm:2.0.1" - type-is: "npm:~1.6.18" - utils-merge: "npm:1.0.1" - vary: "npm:~1.1.2" - checksum: 10c0/38168fd0a32756600b56e6214afecf4fc79ec28eca7f7a91c2ab8d50df4f47562ca3f9dee412da7f5cea6b1a1544b33b40f9f8586dbacfbdada0fe90dbb10a1f - languageName: node - linkType: hard - -"fdir@npm:^6.4.4": - version: 6.4.4 - resolution: "fdir@npm:6.4.4" - peerDependencies: - picomatch: ^3 || ^4 - peerDependenciesMeta: - picomatch: - optional: true - checksum: 10c0/6ccc33be16945ee7bc841e1b4178c0b4cf18d3804894cb482aa514651c962a162f96da7ffc6ebfaf0df311689fb70091b04dd6caffe28d56b9ebdc0e7ccadfdd - languageName: node - linkType: hard - -"fill-range@npm:^7.1.1": - version: 7.1.1 - resolution: "fill-range@npm:7.1.1" - dependencies: - to-regex-range: "npm:^5.0.1" - checksum: 10c0/b75b691bbe065472f38824f694c2f7449d7f5004aa950426a2c28f0306c60db9b880c0b0e4ed819997ffb882d1da02cfcfc819bddc94d71627f5269682edf018 - languageName: node - linkType: hard - -"finalhandler@npm:1.3.1": - version: 1.3.1 - resolution: "finalhandler@npm:1.3.1" - dependencies: - debug: "npm:2.6.9" - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - on-finished: "npm:2.4.1" - parseurl: "npm:~1.3.3" - statuses: "npm:2.0.1" - unpipe: "npm:~1.0.0" - checksum: 10c0/d38035831865a49b5610206a3a9a9aae4e8523cbbcd01175d0480ffbf1278c47f11d89be3ca7f617ae6d94f29cf797546a4619cd84dd109009ef33f12f69019f - languageName: node - linkType: hard - -"follow-redirects@npm:1.5.10": - version: 1.5.10 - resolution: "follow-redirects@npm:1.5.10" - dependencies: - debug: "npm:=3.1.0" - checksum: 10c0/f56ca26dcf3c9996a6cf8868b61e369a35d4000ade0292bdd27b5e0934902681b037060b9fabe58e7042bb8b85166d5db8bbcf027f1825c1577e4cffd904fd3f - languageName: node - linkType: hard - -"foreground-child@npm:^3.1.0": - version: 3.3.1 - resolution: "foreground-child@npm:3.3.1" - dependencies: - cross-spawn: "npm:^7.0.6" - signal-exit: "npm:^4.0.1" - checksum: 10c0/8986e4af2430896e65bc2788d6679067294d6aee9545daefc84923a0a4b399ad9c7a3ea7bd8c0b2b80fdf4a92de4c69df3f628233ff3224260e9c1541a9e9ed3 - languageName: node - linkType: hard - -"form-data@npm:^4.0.0": - version: 4.0.2 - resolution: "form-data@npm:4.0.2" - dependencies: - asynckit: "npm:^0.4.0" - combined-stream: "npm:^1.0.8" - es-set-tostringtag: "npm:^2.1.0" - mime-types: "npm:^2.1.12" - checksum: 10c0/e534b0cf025c831a0929bf4b9bbe1a9a6b03e273a8161f9947286b9b13bf8fb279c6944aae0070c4c311100c6d6dbb815cd955dc217728caf73fad8dc5b8ee9c - languageName: node - linkType: hard - -"forwarded@npm:0.2.0": - version: 0.2.0 - resolution: "forwarded@npm:0.2.0" - checksum: 10c0/9b67c3fac86acdbc9ae47ba1ddd5f2f81526fa4c8226863ede5600a3f7c7416ef451f6f1e240a3cc32d0fd79fcfe6beb08fd0da454f360032bde70bf80afbb33 - languageName: node - linkType: hard - -"fresh@npm:0.5.2": - version: 0.5.2 - resolution: "fresh@npm:0.5.2" - checksum: 10c0/c6d27f3ed86cc5b601404822f31c900dd165ba63fff8152a3ef714e2012e7535027063bc67ded4cb5b3a49fa596495d46cacd9f47d6328459cf570f08b7d9e5a - languageName: node - linkType: hard - -"fs-minipass@npm:^3.0.0": - version: 3.0.3 - resolution: "fs-minipass@npm:3.0.3" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/63e80da2ff9b621e2cb1596abcb9207f1cf82b968b116ccd7b959e3323144cce7fb141462200971c38bbf2ecca51695069db45265705bed09a7cd93ae5b89f94 - languageName: node - linkType: hard - -"fsevents@npm:~2.3.2": - version: 2.3.3 - resolution: "fsevents@npm:2.3.3" - dependencies: - node-gyp: "npm:latest" - checksum: 10c0/a1f0c44595123ed717febbc478aa952e47adfc28e2092be66b8ab1635147254ca6cfe1df792a8997f22716d4cbafc73309899ff7bfac2ac3ad8cf2e4ecc3ec60 - conditions: os=darwin - languageName: node - linkType: hard - -"fsevents@patch:fsevents@npm%3A~2.3.2#optional!builtin": - version: 2.3.3 - resolution: "fsevents@patch:fsevents@npm%3A2.3.3#optional!builtin::version=2.3.3&hash=df0bf1" - dependencies: - node-gyp: "npm:latest" - conditions: os=darwin - languageName: node - linkType: hard - -"function-bind@npm:^1.1.2": - version: 1.1.2 - resolution: "function-bind@npm:1.1.2" - checksum: 10c0/d8680ee1e5fcd4c197e4ac33b2b4dce03c71f4d91717292785703db200f5c21f977c568d28061226f9b5900cbcd2c84463646134fd5337e7925e0942bc3f46d5 - languageName: node - linkType: hard - -"get-intrinsic@npm:^1.2.5, get-intrinsic@npm:^1.2.6, get-intrinsic@npm:^1.3.0": - version: 1.3.0 - resolution: "get-intrinsic@npm:1.3.0" - dependencies: - call-bind-apply-helpers: "npm:^1.0.2" - es-define-property: "npm:^1.0.1" - es-errors: "npm:^1.3.0" - es-object-atoms: "npm:^1.1.1" - function-bind: "npm:^1.1.2" - get-proto: "npm:^1.0.1" - gopd: "npm:^1.2.0" - has-symbols: "npm:^1.1.0" - hasown: "npm:^2.0.2" - math-intrinsics: "npm:^1.1.0" - checksum: 10c0/52c81808af9a8130f581e6a6a83e1ba4a9f703359e7a438d1369a5267a25412322f03dcbd7c549edaef0b6214a0630a28511d7df0130c93cfd380f4fa0b5b66a - languageName: node - linkType: hard - -"get-proto@npm:^1.0.1": - version: 1.0.1 - resolution: "get-proto@npm:1.0.1" - dependencies: - dunder-proto: "npm:^1.0.1" - es-object-atoms: "npm:^1.0.0" - checksum: 10c0/9224acb44603c5526955e83510b9da41baf6ae73f7398875fba50edc5e944223a89c4a72b070fcd78beb5f7bdda58ecb6294adc28f7acfc0da05f76a2399643c - languageName: node - linkType: hard - -"glob-parent@npm:~5.1.2": - version: 5.1.2 - resolution: "glob-parent@npm:5.1.2" - dependencies: - is-glob: "npm:^4.0.1" - checksum: 10c0/cab87638e2112bee3f839ef5f6e0765057163d39c66be8ec1602f3823da4692297ad4e972de876ea17c44d652978638d2fd583c6713d0eb6591706825020c9ee - languageName: node - linkType: hard - -"glob@npm:^10.2.2": - version: 10.4.5 - resolution: "glob@npm:10.4.5" - dependencies: - foreground-child: "npm:^3.1.0" - jackspeak: "npm:^3.1.2" - minimatch: "npm:^9.0.4" - minipass: "npm:^7.1.2" - package-json-from-dist: "npm:^1.0.0" - path-scurry: "npm:^1.11.1" - bin: - glob: dist/esm/bin.mjs - checksum: 10c0/19a9759ea77b8e3ca0a43c2f07ecddc2ad46216b786bb8f993c445aee80d345925a21e5280c7b7c6c59e860a0154b84e4b2b60321fea92cd3c56b4a7489f160e - languageName: node - linkType: hard - -"gopd@npm:^1.2.0": - version: 1.2.0 - resolution: "gopd@npm:1.2.0" - checksum: 10c0/50fff1e04ba2b7737c097358534eacadad1e68d24cccee3272e04e007bed008e68d2614f3987788428fd192a5ae3889d08fb2331417e4fc4a9ab366b2043cead - languageName: node - linkType: hard - -"graceful-fs@npm:^4.2.6": - version: 4.2.11 - resolution: "graceful-fs@npm:4.2.11" - checksum: 10c0/386d011a553e02bc594ac2ca0bd6d9e4c22d7fa8cfbfc448a6d148c59ea881b092db9dbe3547ae4b88e55f1b01f7c4a2ecc53b310c042793e63aa44cf6c257f2 - languageName: node - linkType: hard - -"has-flag@npm:^3.0.0": - version: 3.0.0 - resolution: "has-flag@npm:3.0.0" - checksum: 10c0/1c6c83b14b8b1b3c25b0727b8ba3e3b647f99e9e6e13eb7322107261de07a4c1be56fc0d45678fc376e09772a3a1642ccdaf8fc69bdf123b6c086598397ce473 - languageName: node - linkType: hard - -"has-symbols@npm:^1.0.3, has-symbols@npm:^1.1.0": - version: 1.1.0 - resolution: "has-symbols@npm:1.1.0" - checksum: 10c0/dde0a734b17ae51e84b10986e651c664379018d10b91b6b0e9b293eddb32f0f069688c841fb40f19e9611546130153e0a2a48fd7f512891fb000ddfa36f5a20e - languageName: node - linkType: hard - -"has-tostringtag@npm:^1.0.2": - version: 1.0.2 - resolution: "has-tostringtag@npm:1.0.2" - dependencies: - has-symbols: "npm:^1.0.3" - checksum: 10c0/a8b166462192bafe3d9b6e420a1d581d93dd867adb61be223a17a8d6dad147aa77a8be32c961bb2f27b3ef893cae8d36f564ab651f5e9b7938ae86f74027c48c - languageName: node - linkType: hard - -"hasown@npm:^2.0.2": - version: 2.0.2 - resolution: "hasown@npm:2.0.2" - dependencies: - function-bind: "npm:^1.1.2" - checksum: 10c0/3769d434703b8ac66b209a4cca0737519925bbdb61dd887f93a16372b14694c63ff4e797686d87c90f08168e81082248b9b028bad60d4da9e0d1148766f56eb9 - languageName: node - linkType: hard - -"html-encoding-sniffer@npm:^3.0.0": - version: 3.0.0 - resolution: "html-encoding-sniffer@npm:3.0.0" - dependencies: - whatwg-encoding: "npm:^2.0.0" - checksum: 10c0/b17b3b0fb5d061d8eb15121c3b0b536376c3e295ecaf09ba48dd69c6b6c957839db124fe1e2b3f11329753a4ee01aa7dedf63b7677999e86da17fbbdd82c5386 - languageName: node - linkType: hard - -"http-cache-semantics@npm:^4.1.1": - version: 4.1.1 - resolution: "http-cache-semantics@npm:4.1.1" - checksum: 10c0/ce1319b8a382eb3cbb4a37c19f6bfe14e5bb5be3d09079e885e8c513ab2d3cd9214902f8a31c9dc4e37022633ceabfc2d697405deeaf1b8f3552bb4ed996fdfc - languageName: node - linkType: hard - -"http-errors@npm:2.0.0": - version: 2.0.0 - resolution: "http-errors@npm:2.0.0" - dependencies: - depd: "npm:2.0.0" - inherits: "npm:2.0.4" - setprototypeof: "npm:1.2.0" - statuses: "npm:2.0.1" - toidentifier: "npm:1.0.1" - checksum: 10c0/fc6f2715fe188d091274b5ffc8b3657bd85c63e969daa68ccb77afb05b071a4b62841acb7a21e417b5539014dff2ebf9550f0b14a9ff126f2734a7c1387f8e19 - languageName: node - linkType: hard - -"http-proxy-agent@npm:^5.0.0": - version: 5.0.0 - resolution: "http-proxy-agent@npm:5.0.0" - dependencies: - "@tootallnate/once": "npm:2" - agent-base: "npm:6" - debug: "npm:4" - checksum: 10c0/32a05e413430b2c1e542e5c74b38a9f14865301dd69dff2e53ddb684989440e3d2ce0c4b64d25eb63cf6283e6265ff979a61cf93e3ca3d23047ddfdc8df34a32 - languageName: node - linkType: hard - -"http-proxy-agent@npm:^7.0.0": - version: 7.0.2 - resolution: "http-proxy-agent@npm:7.0.2" - dependencies: - agent-base: "npm:^7.1.0" - debug: "npm:^4.3.4" - checksum: 10c0/4207b06a4580fb85dd6dff521f0abf6db517489e70863dca1a0291daa7f2d3d2d6015a57bd702af068ea5cf9f1f6ff72314f5f5b4228d299c0904135d2aef921 - languageName: node - linkType: hard - -"https-proxy-agent@npm:^5.0.0": - version: 5.0.1 - resolution: "https-proxy-agent@npm:5.0.1" - dependencies: - agent-base: "npm:6" - debug: "npm:4" - checksum: 10c0/6dd639f03434003577c62b27cafdb864784ef19b2de430d8ae2a1d45e31c4fd60719e5637b44db1a88a046934307da7089e03d6089ec3ddacc1189d8de8897d1 - languageName: node - linkType: hard - -"https-proxy-agent@npm:^7.0.1": - version: 7.0.6 - resolution: "https-proxy-agent@npm:7.0.6" - dependencies: - agent-base: "npm:^7.1.2" - debug: "npm:4" - checksum: 10c0/f729219bc735edb621fa30e6e84e60ee5d00802b8247aac0d7b79b0bd6d4b3294737a337b93b86a0bd9e68099d031858a39260c976dc14cdbba238ba1f8779ac - languageName: node - linkType: hard - -"iconv-lite@npm:0.4.24": - version: 0.4.24 - resolution: "iconv-lite@npm:0.4.24" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3" - checksum: 10c0/c6886a24cc00f2a059767440ec1bc00d334a89f250db8e0f7feb4961c8727118457e27c495ba94d082e51d3baca378726cd110aaf7ded8b9bbfd6a44760cf1d4 - languageName: node - linkType: hard - -"iconv-lite@npm:0.6.3, iconv-lite@npm:^0.6.2": - version: 0.6.3 - resolution: "iconv-lite@npm:0.6.3" - dependencies: - safer-buffer: "npm:>= 2.1.2 < 3.0.0" - checksum: 10c0/98102bc66b33fcf5ac044099d1257ba0b7ad5e3ccd3221f34dd508ab4070edff183276221684e1e0555b145fce0850c9f7d2b60a9fcac50fbb4ea0d6e845a3b1 - languageName: node - linkType: hard - -"ignore-by-default@npm:^1.0.1": - version: 1.0.1 - resolution: "ignore-by-default@npm:1.0.1" - checksum: 10c0/9ab6e70e80f7cc12735def7ecb5527cfa56ab4e1152cd64d294522827f2dcf1f6d85531241537dc3713544e88dd888f65cb3c49c7b2cddb9009087c75274e533 - languageName: node - linkType: hard - -"imurmurhash@npm:^0.1.4": - version: 0.1.4 - resolution: "imurmurhash@npm:0.1.4" - checksum: 10c0/8b51313850dd33605c6c9d3fd9638b714f4c4c40250cff658209f30d40da60f78992fb2df5dabee4acf589a6a82bbc79ad5486550754bd9ec4e3fc0d4a57d6a6 - languageName: node - linkType: hard - -"inherits@npm:2.0.4, inherits@npm:~2.0.3": - version: 2.0.4 - resolution: "inherits@npm:2.0.4" - checksum: 10c0/4e531f648b29039fb7426fb94075e6545faa1eb9fe83c29f0b6d9e7263aceb4289d2d4557db0d428188eeb449cc7c5e77b0a0b2c4e248ff2a65933a0dee49ef2 - languageName: node - linkType: hard - -"ip-address@npm:^9.0.5": - version: 9.0.5 - resolution: "ip-address@npm:9.0.5" - dependencies: - jsbn: "npm:1.1.0" - sprintf-js: "npm:^1.1.3" - checksum: 10c0/331cd07fafcb3b24100613e4b53e1a2b4feab11e671e655d46dc09ee233da5011284d09ca40c4ecbdfe1d0004f462958675c224a804259f2f78d2465a87824bc - languageName: node - linkType: hard - -"ipaddr.js@npm:1.9.1": - version: 1.9.1 - resolution: "ipaddr.js@npm:1.9.1" - checksum: 10c0/0486e775047971d3fdb5fb4f063829bac45af299ae0b82dcf3afa2145338e08290563a2a70f34b732d795ecc8311902e541a8530eeb30d75860a78ff4e94ce2a - languageName: node - linkType: hard - -"is-binary-path@npm:~2.1.0": - version: 2.1.0 - resolution: "is-binary-path@npm:2.1.0" - dependencies: - binary-extensions: "npm:^2.0.0" - checksum: 10c0/a16eaee59ae2b315ba36fad5c5dcaf8e49c3e27318f8ab8fa3cdb8772bf559c8d1ba750a589c2ccb096113bb64497084361a25960899cb6172a6925ab6123d38 - languageName: node - linkType: hard - -"is-extglob@npm:^2.1.1": - version: 2.1.1 - resolution: "is-extglob@npm:2.1.1" - checksum: 10c0/5487da35691fbc339700bbb2730430b07777a3c21b9ebaecb3072512dfd7b4ba78ac2381a87e8d78d20ea08affb3f1971b4af629173a6bf435ff8a4c47747912 - languageName: node - linkType: hard - -"is-fullwidth-code-point@npm:^3.0.0": - version: 3.0.0 - resolution: "is-fullwidth-code-point@npm:3.0.0" - checksum: 10c0/bb11d825e049f38e04c06373a8d72782eee0205bda9d908cc550ccb3c59b99d750ff9537982e01733c1c94a58e35400661f57042158ff5e8f3e90cf936daf0fc - languageName: node - linkType: hard - -"is-glob@npm:^4.0.1, is-glob@npm:~4.0.1": - version: 4.0.3 - resolution: "is-glob@npm:4.0.3" - dependencies: - is-extglob: "npm:^2.1.1" - checksum: 10c0/17fb4014e22be3bbecea9b2e3a76e9e34ff645466be702f1693e8f1ee1adac84710d0be0bd9f967d6354036fd51ab7c2741d954d6e91dae6bb69714de92c197a - languageName: node - linkType: hard - -"is-number@npm:^7.0.0": - version: 7.0.0 - resolution: "is-number@npm:7.0.0" - checksum: 10c0/b4686d0d3053146095ccd45346461bc8e53b80aeb7671cc52a4de02dbbf7dc0d1d2a986e2fe4ae206984b4d34ef37e8b795ebc4f4295c978373e6575e295d811 - languageName: node - linkType: hard - -"is-potential-custom-element-name@npm:^1.0.1": - version: 1.0.1 - resolution: "is-potential-custom-element-name@npm:1.0.1" - checksum: 10c0/b73e2f22bc863b0939941d369486d308b43d7aef1f9439705e3582bfccaa4516406865e32c968a35f97a99396dac84e2624e67b0a16b0a15086a785e16ce7db9 - languageName: node - linkType: hard - -"isarray@npm:~1.0.0": - version: 1.0.0 - resolution: "isarray@npm:1.0.0" - checksum: 10c0/18b5be6669be53425f0b84098732670ed4e727e3af33bc7f948aac01782110eb9a18b3b329c5323bcdd3acdaae547ee077d3951317e7f133bff7105264b3003d - languageName: node - linkType: hard - -"isexe@npm:^2.0.0": - version: 2.0.0 - resolution: "isexe@npm:2.0.0" - checksum: 10c0/228cfa503fadc2c31596ab06ed6aa82c9976eec2bfd83397e7eaf06d0ccf42cd1dfd6743bf9aeb01aebd4156d009994c5f76ea898d2832c1fe342da923ca457d - languageName: node - linkType: hard - -"isexe@npm:^3.1.1": - version: 3.1.1 - resolution: "isexe@npm:3.1.1" - checksum: 10c0/9ec257654093443eb0a528a9c8cbba9c0ca7616ccb40abd6dde7202734d96bb86e4ac0d764f0f8cd965856aacbff2f4ce23e730dc19dfb41e3b0d865ca6fdcc7 - languageName: node - linkType: hard - -"jackspeak@npm:^3.1.2": - version: 3.4.3 - resolution: "jackspeak@npm:3.4.3" - dependencies: - "@isaacs/cliui": "npm:^8.0.2" - "@pkgjs/parseargs": "npm:^0.11.0" - dependenciesMeta: - "@pkgjs/parseargs": - optional: true - checksum: 10c0/6acc10d139eaefdbe04d2f679e6191b3abf073f111edf10b1de5302c97ec93fffeb2fdd8681ed17f16268aa9dd4f8c588ed9d1d3bffbbfa6e8bf897cbb3149b9 - languageName: node - linkType: hard - -"jsbn@npm:1.1.0": - version: 1.1.0 - resolution: "jsbn@npm:1.1.0" - checksum: 10c0/4f907fb78d7b712e11dea8c165fe0921f81a657d3443dde75359ed52eb2b5d33ce6773d97985a089f09a65edd80b11cb75c767b57ba47391fee4c969f7215c96 - languageName: node - linkType: hard - -"jsdom@npm:^19.0.0": - version: 19.0.0 - resolution: "jsdom@npm:19.0.0" - dependencies: - abab: "npm:^2.0.5" - acorn: "npm:^8.5.0" - acorn-globals: "npm:^6.0.0" - cssom: "npm:^0.5.0" - cssstyle: "npm:^2.3.0" - data-urls: "npm:^3.0.1" - decimal.js: "npm:^10.3.1" - domexception: "npm:^4.0.0" - escodegen: "npm:^2.0.0" - form-data: "npm:^4.0.0" - html-encoding-sniffer: "npm:^3.0.0" - http-proxy-agent: "npm:^5.0.0" - https-proxy-agent: "npm:^5.0.0" - is-potential-custom-element-name: "npm:^1.0.1" - nwsapi: "npm:^2.2.0" - parse5: "npm:6.0.1" - saxes: "npm:^5.0.1" - symbol-tree: "npm:^3.2.4" - tough-cookie: "npm:^4.0.0" - w3c-hr-time: "npm:^1.0.2" - w3c-xmlserializer: "npm:^3.0.0" - webidl-conversions: "npm:^7.0.0" - whatwg-encoding: "npm:^2.0.0" - whatwg-mimetype: "npm:^3.0.0" - whatwg-url: "npm:^10.0.0" - ws: "npm:^8.2.3" - xml-name-validator: "npm:^4.0.0" - peerDependencies: - canvas: ^2.5.0 - peerDependenciesMeta: - canvas: - optional: true - checksum: 10c0/c39c71aa64df60f2b609adfc61fa4406c1a710da3278c730b0093181d1d09c1e6ba5551e32d78259a21800e10c2984c571777d6f7080249a5d21287be4f17bd9 - languageName: node - linkType: hard - -"jsonwebtoken@npm:^8.5.1": - version: 8.5.1 - resolution: "jsonwebtoken@npm:8.5.1" - dependencies: - jws: "npm:^3.2.2" - lodash.includes: "npm:^4.3.0" - lodash.isboolean: "npm:^3.0.3" - lodash.isinteger: "npm:^4.0.4" - lodash.isnumber: "npm:^3.0.3" - lodash.isplainobject: "npm:^4.0.6" - lodash.isstring: "npm:^4.0.1" - lodash.once: "npm:^4.0.0" - ms: "npm:^2.1.1" - semver: "npm:^5.6.0" - checksum: 10c0/c5ad937b6fa23a230efa8ed8ca3c0da8ebfdd377bafc3e8432a11b03ef90e733400a00b26c0dfee47db44a2e64b88b154b57e9926a92990f98dd25aaed15006e - languageName: node - linkType: hard - -"jwa@npm:^1.4.1": - version: 1.4.1 - resolution: "jwa@npm:1.4.1" - dependencies: - buffer-equal-constant-time: "npm:1.0.1" - ecdsa-sig-formatter: "npm:1.0.11" - safe-buffer: "npm:^5.0.1" - checksum: 10c0/5c533540bf38702e73cf14765805a94027c66a0aa8b16bc3e89d8d905e61a4ce2791e87e21be97d1293a5ee9d4f3e5e47737e671768265ca4f25706db551d5e9 - languageName: node - linkType: hard - -"jws@npm:^3.2.2": - version: 3.2.2 - resolution: "jws@npm:3.2.2" - dependencies: - jwa: "npm:^1.4.1" - safe-buffer: "npm:^5.0.1" - checksum: 10c0/e770704533d92df358adad7d1261fdecad4d7b66fa153ba80d047e03ca0f1f73007ce5ed3fbc04d2eba09ba6e7e6e645f351e08e5ab51614df1b0aa4f384dfff - languageName: node - linkType: hard - -"kareem@npm:2.3.2": - version: 2.3.2 - resolution: "kareem@npm:2.3.2" - checksum: 10c0/f3da6015d61a6da734a2795a165e756b2c2f814b2286e3ee45f4208115869c5d2bab1b237c40dbab967830c43884ea3fb965af9568858836621f6a60735a5dfd - languageName: node - linkType: hard - -"lodash.includes@npm:^4.3.0": - version: 4.3.0 - resolution: "lodash.includes@npm:4.3.0" - checksum: 10c0/7ca498b9b75bf602d04e48c0adb842dfc7d90f77bcb2a91a2b2be34a723ad24bc1c8b3683ec6b2552a90f216c723cdea530ddb11a3320e08fa38265703978f4b - languageName: node - linkType: hard - -"lodash.isboolean@npm:^3.0.3": - version: 3.0.3 - resolution: "lodash.isboolean@npm:3.0.3" - checksum: 10c0/0aac604c1ef7e72f9a6b798e5b676606042401dd58e49f051df3cc1e3adb497b3d7695635a5cbec4ae5f66456b951fdabe7d6b387055f13267cde521f10ec7f7 - languageName: node - linkType: hard - -"lodash.isinteger@npm:^4.0.4": - version: 4.0.4 - resolution: "lodash.isinteger@npm:4.0.4" - checksum: 10c0/4c3e023a2373bf65bf366d3b8605b97ec830bca702a926939bcaa53f8e02789b6a176e7f166b082f9365bfec4121bfeb52e86e9040cb8d450e64c858583f61b7 - languageName: node - linkType: hard - -"lodash.isnumber@npm:^3.0.3": - version: 3.0.3 - resolution: "lodash.isnumber@npm:3.0.3" - checksum: 10c0/2d01530513a1ee4f72dd79528444db4e6360588adcb0e2ff663db2b3f642d4bb3d687051ae1115751ca9082db4fdef675160071226ca6bbf5f0c123dbf0aa12d - languageName: node - linkType: hard - -"lodash.isplainobject@npm:^4.0.6": - version: 4.0.6 - resolution: "lodash.isplainobject@npm:4.0.6" - checksum: 10c0/afd70b5c450d1e09f32a737bed06ff85b873ecd3d3d3400458725283e3f2e0bb6bf48e67dbe7a309eb371a822b16a26cca4a63c8c52db3fc7dc9d5f9dd324cbb - languageName: node - linkType: hard - -"lodash.isstring@npm:^4.0.1": - version: 4.0.1 - resolution: "lodash.isstring@npm:4.0.1" - checksum: 10c0/09eaf980a283f9eef58ef95b30ec7fee61df4d6bf4aba3b5f096869cc58f24c9da17900febc8ffd67819b4e29de29793190e88dc96983db92d84c95fa85d1c92 - languageName: node - linkType: hard - -"lodash.once@npm:^4.0.0": - version: 4.1.1 - resolution: "lodash.once@npm:4.1.1" - checksum: 10c0/46a9a0a66c45dd812fcc016e46605d85ad599fe87d71a02f6736220554b52ffbe82e79a483ad40f52a8a95755b0d1077fba259da8bfb6694a7abbf4a48f1fc04 - languageName: node - linkType: hard - -"lru-cache@npm:^10.0.1, lru-cache@npm:^10.2.0": - version: 10.4.3 - resolution: "lru-cache@npm:10.4.3" - checksum: 10c0/ebd04fbca961e6c1d6c0af3799adcc966a1babe798f685bb84e6599266599cd95d94630b10262f5424539bc4640107e8a33aa28585374abf561d30d16f4b39fb - languageName: node - linkType: hard - -"make-fetch-happen@npm:^14.0.3": - version: 14.0.3 - resolution: "make-fetch-happen@npm:14.0.3" - dependencies: - "@npmcli/agent": "npm:^3.0.0" - cacache: "npm:^19.0.1" - http-cache-semantics: "npm:^4.1.1" - minipass: "npm:^7.0.2" - minipass-fetch: "npm:^4.0.0" - minipass-flush: "npm:^1.0.5" - minipass-pipeline: "npm:^1.2.4" - negotiator: "npm:^1.0.0" - proc-log: "npm:^5.0.0" - promise-retry: "npm:^2.0.1" - ssri: "npm:^12.0.0" - checksum: 10c0/c40efb5e5296e7feb8e37155bde8eb70bc57d731b1f7d90e35a092fde403d7697c56fb49334d92d330d6f1ca29a98142036d6480a12681133a0a1453164cb2f0 - languageName: node - linkType: hard - -"math-intrinsics@npm:^1.1.0": - version: 1.1.0 - resolution: "math-intrinsics@npm:1.1.0" - checksum: 10c0/7579ff94e899e2f76ab64491d76cf606274c874d8f2af4a442c016bd85688927fcfca157ba6bf74b08e9439dc010b248ce05b96cc7c126a354c3bae7fcb48b7f - languageName: node - linkType: hard - -"media-typer@npm:0.3.0": - version: 0.3.0 - resolution: "media-typer@npm:0.3.0" - checksum: 10c0/d160f31246907e79fed398470285f21bafb45a62869dc469b1c8877f3f064f5eabc4bcc122f9479b8b605bc5c76187d7871cf84c4ee3ecd3e487da1993279928 - languageName: node - linkType: hard - -"memory-pager@npm:^1.0.2": - version: 1.5.0 - resolution: "memory-pager@npm:1.5.0" - checksum: 10c0/2596e80c99fee24f05bd8a20cde2ee899012c996f4ec361ac76ed6f009f34149d733ac6f76880106ccd6a66d062ad439357578d383d429df66ba1278f68806e9 - languageName: node - linkType: hard - -"merge-descriptors@npm:1.0.3": - version: 1.0.3 - resolution: "merge-descriptors@npm:1.0.3" - checksum: 10c0/866b7094afd9293b5ea5dcd82d71f80e51514bed33b4c4e9f516795dc366612a4cbb4dc94356e943a8a6914889a914530badff27f397191b9b75cda20b6bae93 - languageName: node - linkType: hard - -"methods@npm:~1.1.2": - version: 1.1.2 - resolution: "methods@npm:1.1.2" - checksum: 10c0/bdf7cc72ff0a33e3eede03708c08983c4d7a173f91348b4b1e4f47d4cdbf734433ad971e7d1e8c77247d9e5cd8adb81ea4c67b0a2db526b758b2233d7814b8b2 - languageName: node - linkType: hard - -"mime-db@npm:1.52.0": - version: 1.52.0 - resolution: "mime-db@npm:1.52.0" - checksum: 10c0/0557a01deebf45ac5f5777fe7740b2a5c309c6d62d40ceab4e23da9f821899ce7a900b7ac8157d4548ddbb7beffe9abc621250e6d182b0397ec7f10c7b91a5aa - languageName: node - linkType: hard - -"mime-types@npm:^2.1.12, mime-types@npm:~2.1.24, mime-types@npm:~2.1.34": - version: 2.1.35 - resolution: "mime-types@npm:2.1.35" - dependencies: - mime-db: "npm:1.52.0" - checksum: 10c0/82fb07ec56d8ff1fc999a84f2f217aa46cb6ed1033fefaabd5785b9a974ed225c90dc72fff460259e66b95b73648596dbcc50d51ed69cdf464af2d237d3149b2 - languageName: node - linkType: hard - -"mime@npm:1.6.0": - version: 1.6.0 - resolution: "mime@npm:1.6.0" - bin: - mime: cli.js - checksum: 10c0/b92cd0adc44888c7135a185bfd0dddc42c32606401c72896a842ae15da71eb88858f17669af41e498b463cd7eb998f7b48939a25b08374c7924a9c8a6f8a81b0 - languageName: node - linkType: hard - -"minimatch@npm:^3.1.2": - version: 3.1.2 - resolution: "minimatch@npm:3.1.2" - dependencies: - brace-expansion: "npm:^1.1.7" - checksum: 10c0/0262810a8fc2e72cca45d6fd86bd349eee435eb95ac6aa45c9ea2180e7ee875ef44c32b55b5973ceabe95ea12682f6e3725cbb63d7a2d1da3ae1163c8b210311 - languageName: node - linkType: hard - -"minimatch@npm:^9.0.4": - version: 9.0.5 - resolution: "minimatch@npm:9.0.5" - dependencies: - brace-expansion: "npm:^2.0.1" - checksum: 10c0/de96cf5e35bdf0eab3e2c853522f98ffbe9a36c37797778d2665231ec1f20a9447a7e567cb640901f89e4daaa95ae5d70c65a9e8aa2bb0019b6facbc3c0575ed - languageName: node - linkType: hard - -"minipass-collect@npm:^2.0.1": - version: 2.0.1 - resolution: "minipass-collect@npm:2.0.1" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/5167e73f62bb74cc5019594709c77e6a742051a647fe9499abf03c71dca75515b7959d67a764bdc4f8b361cf897fbf25e2d9869ee039203ed45240f48b9aa06e - languageName: node - linkType: hard - -"minipass-fetch@npm:^4.0.0": - version: 4.0.1 - resolution: "minipass-fetch@npm:4.0.1" - dependencies: - encoding: "npm:^0.1.13" - minipass: "npm:^7.0.3" - minipass-sized: "npm:^1.0.3" - minizlib: "npm:^3.0.1" - dependenciesMeta: - encoding: - optional: true - checksum: 10c0/a3147b2efe8e078c9bf9d024a0059339c5a09c5b1dded6900a219c218cc8b1b78510b62dae556b507304af226b18c3f1aeb1d48660283602d5b6586c399eed5c - languageName: node - linkType: hard - -"minipass-flush@npm:^1.0.5": - version: 1.0.5 - resolution: "minipass-flush@npm:1.0.5" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/2a51b63feb799d2bb34669205eee7c0eaf9dce01883261a5b77410c9408aa447e478efd191b4de6fc1101e796ff5892f8443ef20d9544385819093dbb32d36bd - languageName: node - linkType: hard - -"minipass-pipeline@npm:^1.2.4": - version: 1.2.4 - resolution: "minipass-pipeline@npm:1.2.4" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/cbda57cea20b140b797505dc2cac71581a70b3247b84480c1fed5ca5ba46c25ecc25f68bfc9e6dcb1a6e9017dab5c7ada5eab73ad4f0a49d84e35093e0c643f2 - languageName: node - linkType: hard - -"minipass-sized@npm:^1.0.3": - version: 1.0.3 - resolution: "minipass-sized@npm:1.0.3" - dependencies: - minipass: "npm:^3.0.0" - checksum: 10c0/298f124753efdc745cfe0f2bdfdd81ba25b9f4e753ca4a2066eb17c821f25d48acea607dfc997633ee5bf7b6dfffb4eee4f2051eb168663f0b99fad2fa4829cb - languageName: node - linkType: hard - -"minipass@npm:^3.0.0": - version: 3.3.6 - resolution: "minipass@npm:3.3.6" - dependencies: - yallist: "npm:^4.0.0" - checksum: 10c0/a114746943afa1dbbca8249e706d1d38b85ed1298b530f5808ce51f8e9e941962e2a5ad2e00eae7dd21d8a4aae6586a66d4216d1a259385e9d0358f0c1eba16c - languageName: node - linkType: hard - -"minipass@npm:^5.0.0 || ^6.0.2 || ^7.0.0, minipass@npm:^7.0.2, minipass@npm:^7.0.3, minipass@npm:^7.0.4, minipass@npm:^7.1.2": - version: 7.1.2 - resolution: "minipass@npm:7.1.2" - checksum: 10c0/b0fd20bb9fb56e5fa9a8bfac539e8915ae07430a619e4b86ff71f5fc757ef3924b23b2c4230393af1eda647ed3d75739e4e0acb250a6b1eb277cf7f8fe449557 - languageName: node - linkType: hard - -"minizlib@npm:^3.0.1": - version: 3.0.2 - resolution: "minizlib@npm:3.0.2" - dependencies: - minipass: "npm:^7.1.2" - checksum: 10c0/9f3bd35e41d40d02469cb30470c55ccc21cae0db40e08d1d0b1dff01cc8cc89a6f78e9c5d2b7c844e485ec0a8abc2238111213fdc5b2038e6d1012eacf316f78 - languageName: node - linkType: hard - -"mkdirp@npm:^3.0.1": - version: 3.0.1 - resolution: "mkdirp@npm:3.0.1" - bin: - mkdirp: dist/cjs/src/bin.js - checksum: 10c0/9f2b975e9246351f5e3a40dcfac99fcd0baa31fbfab615fe059fb11e51f10e4803c63de1f384c54d656e4db31d000e4767e9ef076a22e12a641357602e31d57d - languageName: node - linkType: hard - -"mongodb@npm:3.7.4": - version: 3.7.4 - resolution: "mongodb@npm:3.7.4" - dependencies: - bl: "npm:^2.2.1" - bson: "npm:^1.1.4" - denque: "npm:^1.4.1" - optional-require: "npm:^1.1.8" - safe-buffer: "npm:^5.1.2" - saslprep: "npm:^1.0.0" - dependenciesMeta: - saslprep: - optional: true - peerDependenciesMeta: - aws4: - optional: true - bson-ext: - optional: true - kerberos: - optional: true - mongodb-client-encryption: - optional: true - mongodb-extjson: - optional: true - snappy: - optional: true - checksum: 10c0/747da737df701344f804f18f2fe833873af2b5bcdb9c07f85e2c53c465f6dd6a0727860dde4ee4fdff0635040c88c9c1fea2a48c2afd3e89a5cbda8d7307056e - languageName: node - linkType: hard - -"mongoose-legacy-pluralize@npm:1.0.2": - version: 1.0.2 - resolution: "mongoose-legacy-pluralize@npm:1.0.2" - peerDependencies: - mongoose: "*" - checksum: 10c0/d09f90f60ad83bb99c3d9974e6055433fd4f324de79688f811e4f23c878cdd266a44dd4387b644e5fef1ef7871c5a7038546ff3dc335ba5935e6060e7c60a6fb - languageName: node - linkType: hard - -"mongoose@npm:^5.9.18": - version: 5.13.23 - resolution: "mongoose@npm:5.13.23" - dependencies: - "@types/bson": "npm:1.x || 4.0.x" - "@types/mongodb": "npm:^3.5.27" - bson: "npm:^1.1.4" - kareem: "npm:2.3.2" - mongodb: "npm:3.7.4" - mongoose-legacy-pluralize: "npm:1.0.2" - mpath: "npm:0.8.4" - mquery: "npm:3.2.5" - ms: "npm:2.1.2" - optional-require: "npm:1.0.x" - regexp-clone: "npm:1.0.0" - safe-buffer: "npm:5.2.1" - sift: "npm:13.5.2" - sliced: "npm:1.0.1" - checksum: 10c0/d2babdffb27676a370e2dd3cfba487ec32e21fe760ec67490ee56e6cee283ce364d11f8c1d0725779720eef85cac81760a9146ddc311e6f61add17b7a705b9d5 - languageName: node - linkType: hard - -"mpath@npm:0.8.4": - version: 0.8.4 - resolution: "mpath@npm:0.8.4" - checksum: 10c0/ebec4657d01c3b51e63dac31a0d21c14067b000f5f8a9240619f67f0dea1d64da972209da11ceff13f7ecb0b76be61ea87313ba3c5bf5cd3f6c506b0f977793f - languageName: node - linkType: hard - -"mquery@npm:3.2.5": - version: 3.2.5 - resolution: "mquery@npm:3.2.5" - dependencies: - bluebird: "npm:3.5.1" - debug: "npm:3.1.0" - regexp-clone: "npm:^1.0.0" - safe-buffer: "npm:5.1.2" - sliced: "npm:1.0.1" - checksum: 10c0/a01d0aea9d64cde449790bbb7939547f97e54597486909a751845aab916faf518d10f701163ea95148225e744d3d0e5f6ca3798e5889a6f64e86664c4b2de4ef - languageName: node - linkType: hard - -"ms@npm:2.0.0": - version: 2.0.0 - resolution: "ms@npm:2.0.0" - checksum: 10c0/f8fda810b39fd7255bbdc451c46286e549794fcc700dc9cd1d25658bbc4dc2563a5de6fe7c60f798a16a60c6ceb53f033cb353f493f0cf63e5199b702943159d - languageName: node - linkType: hard - -"ms@npm:2.1.2": - version: 2.1.2 - resolution: "ms@npm:2.1.2" - checksum: 10c0/a437714e2f90dbf881b5191d35a6db792efbca5badf112f87b9e1c712aace4b4b9b742dd6537f3edf90fd6f684de897cec230abde57e87883766712ddda297cc - languageName: node - linkType: hard - -"ms@npm:2.1.3, ms@npm:^2.1.1, ms@npm:^2.1.3": - version: 2.1.3 - resolution: "ms@npm:2.1.3" - checksum: 10c0/d924b57e7312b3b63ad21fc5b3dc0af5e78d61a1fc7cfb5457edaf26326bf62be5307cc87ffb6862ef1c2b33b0233cdb5d4f01c4c958cc0d660948b65a287a48 - languageName: node - linkType: hard - -"negotiator@npm:0.6.3": - version: 0.6.3 - resolution: "negotiator@npm:0.6.3" - checksum: 10c0/3ec9fd413e7bf071c937ae60d572bc67155262068ed522cf4b3be5edbe6ddf67d095ec03a3a14ebf8fc8e95f8e1d61be4869db0dbb0de696f6b837358bd43fc2 - languageName: node - linkType: hard - -"negotiator@npm:^1.0.0": - version: 1.0.0 - resolution: "negotiator@npm:1.0.0" - checksum: 10c0/4c559dd52669ea48e1914f9d634227c561221dd54734070791f999c52ed0ff36e437b2e07d5c1f6e32909fc625fe46491c16e4a8f0572567d4dd15c3a4fda04b - languageName: node - linkType: hard - -"node-gyp@npm:latest": - version: 11.2.0 - resolution: "node-gyp@npm:11.2.0" - dependencies: - env-paths: "npm:^2.2.0" - exponential-backoff: "npm:^3.1.1" - graceful-fs: "npm:^4.2.6" - make-fetch-happen: "npm:^14.0.3" - nopt: "npm:^8.0.0" - proc-log: "npm:^5.0.0" - semver: "npm:^7.3.5" - tar: "npm:^7.4.3" - tinyglobby: "npm:^0.2.12" - which: "npm:^5.0.0" - bin: - node-gyp: bin/node-gyp.js - checksum: 10c0/bd8d8c76b06be761239b0c8680f655f6a6e90b48e44d43415b11c16f7e8c15be346fba0cbf71588c7cdfb52c419d928a7d3db353afc1d952d19756237d8f10b9 - languageName: node - linkType: hard - -"nodemon@npm:^2.0.4": - version: 2.0.22 - resolution: "nodemon@npm:2.0.22" - dependencies: - chokidar: "npm:^3.5.2" - debug: "npm:^3.2.7" - ignore-by-default: "npm:^1.0.1" - minimatch: "npm:^3.1.2" - pstree.remy: "npm:^1.1.8" - semver: "npm:^5.7.1" - simple-update-notifier: "npm:^1.0.7" - supports-color: "npm:^5.5.0" - touch: "npm:^3.1.0" - undefsafe: "npm:^2.0.5" - bin: - nodemon: bin/nodemon.js - checksum: 10c0/37e960b995b66e6d9e3b0e435ecc07a45200c4c566c4820a4deb6e7cc234b305e076a8ff0b4dc9c01ee690c663ae82a217d60c591dcbbcd4af1e3a7d0ad2b2c6 - languageName: node - linkType: hard - -"nopt@npm:^8.0.0": - version: 8.1.0 - resolution: "nopt@npm:8.1.0" - dependencies: - abbrev: "npm:^3.0.0" - bin: - nopt: bin/nopt.js - checksum: 10c0/62e9ea70c7a3eb91d162d2c706b6606c041e4e7b547cbbb48f8b3695af457dd6479904d7ace600856bf923dd8d1ed0696f06195c8c20f02ac87c1da0e1d315ef - languageName: node - linkType: hard - -"normalize-path@npm:^3.0.0, normalize-path@npm:~3.0.0": - version: 3.0.0 - resolution: "normalize-path@npm:3.0.0" - checksum: 10c0/e008c8142bcc335b5e38cf0d63cfd39d6cf2d97480af9abdbe9a439221fd4d749763bab492a8ee708ce7a194bb00c9da6d0a115018672310850489137b3da046 - languageName: node - linkType: hard - -"nwsapi@npm:^2.2.0": - version: 2.2.20 - resolution: "nwsapi@npm:2.2.20" - checksum: 10c0/07f4dafa3186aef7c007863e90acd4342a34ba9d44b22f14f644fdb311f6086887e21c2fc15efaa826c2bc39ab2bc841364a1a630e7c87e0cb723ba59d729297 - languageName: node - linkType: hard - -"object-inspect@npm:^1.13.3": - version: 1.13.4 - resolution: "object-inspect@npm:1.13.4" - checksum: 10c0/d7f8711e803b96ea3191c745d6f8056ce1f2496e530e6a19a0e92d89b0fa3c76d910c31f0aa270432db6bd3b2f85500a376a83aaba849a8d518c8845b3211692 - languageName: node - linkType: hard - -"on-finished@npm:2.4.1": - version: 2.4.1 - resolution: "on-finished@npm:2.4.1" - dependencies: - ee-first: "npm:1.1.1" - checksum: 10c0/46fb11b9063782f2d9968863d9cbba33d77aa13c17f895f56129c274318b86500b22af3a160fe9995aa41317efcd22941b6eba747f718ced08d9a73afdb087b4 - languageName: node - linkType: hard - -"optional-require@npm:1.0.x": - version: 1.0.3 - resolution: "optional-require@npm:1.0.3" - checksum: 10c0/4adff64b552303a7abb8cc48bfa19e1890f4c05f4ba46d10a0722ee2486a4ebc208484a019f76b7450c7d1fd834f5c09d33c22c823da8e7837347de36b2cf0b2 - languageName: node - linkType: hard - -"optional-require@npm:^1.1.8": - version: 1.1.8 - resolution: "optional-require@npm:1.1.8" - dependencies: - require-at: "npm:^1.0.6" - checksum: 10c0/cfb827331277d562b2a6f3c37c6f38da458b0750ec60eff3032385ae8121a7b6855feed272c5c95793661d17bd9418110b81239f284dd702891ec3d91273dc95 - languageName: node - linkType: hard - -"p-map@npm:^7.0.2": - version: 7.0.3 - resolution: "p-map@npm:7.0.3" - checksum: 10c0/46091610da2b38ce47bcd1d8b4835a6fa4e832848a6682cf1652bc93915770f4617afc844c10a77d1b3e56d2472bb2d5622353fa3ead01a7f42b04fc8e744a5c - languageName: node - linkType: hard - -"package-json-from-dist@npm:^1.0.0": - version: 1.0.1 - resolution: "package-json-from-dist@npm:1.0.1" - checksum: 10c0/62ba2785eb655fec084a257af34dbe24292ab74516d6aecef97ef72d4897310bc6898f6c85b5cd22770eaa1ce60d55a0230e150fb6a966e3ecd6c511e23d164b - languageName: node - linkType: hard - -"parse5@npm:6.0.1": - version: 6.0.1 - resolution: "parse5@npm:6.0.1" - checksum: 10c0/595821edc094ecbcfb9ddcb46a3e1fe3a718540f8320eff08b8cf6742a5114cce2d46d45f95c26191c11b184dcaf4e2960abcd9c5ed9eb9393ac9a37efcfdecb - languageName: node - linkType: hard - -"parseurl@npm:~1.3.3": - version: 1.3.3 - resolution: "parseurl@npm:1.3.3" - checksum: 10c0/90dd4760d6f6174adb9f20cf0965ae12e23879b5f5464f38e92fce8073354341e4b3b76fa3d878351efe7d01e617121955284cfd002ab087fba1a0726ec0b4f5 - languageName: node - linkType: hard - -"path-key@npm:^3.1.0": - version: 3.1.1 - resolution: "path-key@npm:3.1.1" - checksum: 10c0/748c43efd5a569c039d7a00a03b58eecd1d75f3999f5a28303d75f521288df4823bc057d8784eb72358b2895a05f29a070bc9f1f17d28226cc4e62494cc58c4c - languageName: node - linkType: hard - -"path-scurry@npm:^1.11.1": - version: 1.11.1 - resolution: "path-scurry@npm:1.11.1" - dependencies: - lru-cache: "npm:^10.2.0" - minipass: "npm:^5.0.0 || ^6.0.2 || ^7.0.0" - checksum: 10c0/32a13711a2a505616ae1cc1b5076801e453e7aae6ac40ab55b388bb91b9d0547a52f5aaceff710ea400205f18691120d4431e520afbe4266b836fadede15872d - languageName: node - linkType: hard - -"path-to-regexp@npm:0.1.12": - version: 0.1.12 - resolution: "path-to-regexp@npm:0.1.12" - checksum: 10c0/1c6ff10ca169b773f3bba943bbc6a07182e332464704572962d277b900aeee81ac6aa5d060ff9e01149636c30b1f63af6e69dd7786ba6e0ddb39d4dee1f0645b - languageName: node - linkType: hard - -"picomatch@npm:^2.0.4, picomatch@npm:^2.2.1": - version: 2.3.1 - resolution: "picomatch@npm:2.3.1" - checksum: 10c0/26c02b8d06f03206fc2ab8d16f19960f2ff9e81a658f831ecb656d8f17d9edc799e8364b1f4a7873e89d9702dff96204be0fa26fe4181f6843f040f819dac4be - languageName: node - linkType: hard - -"picomatch@npm:^4.0.2": - version: 4.0.2 - resolution: "picomatch@npm:4.0.2" - checksum: 10c0/7c51f3ad2bb42c776f49ebf964c644958158be30d0a510efd5a395e8d49cb5acfed5b82c0c5b365523ce18e6ab85013c9ebe574f60305892ec3fa8eee8304ccc - languageName: node - linkType: hard - -"proc-log@npm:^5.0.0": - version: 5.0.0 - resolution: "proc-log@npm:5.0.0" - checksum: 10c0/bbe5edb944b0ad63387a1d5b1911ae93e05ce8d0f60de1035b218cdcceedfe39dbd2c697853355b70f1a090f8f58fe90da487c85216bf9671f9499d1a897e9e3 - languageName: node - linkType: hard - -"process-nextick-args@npm:~2.0.0": - version: 2.0.1 - resolution: "process-nextick-args@npm:2.0.1" - checksum: 10c0/bec089239487833d46b59d80327a1605e1c5287eaad770a291add7f45fda1bb5e28b38e0e061add0a1d0ee0984788ce74fa394d345eed1c420cacf392c554367 - languageName: node - linkType: hard - -"promise-retry@npm:^2.0.1": - version: 2.0.1 - resolution: "promise-retry@npm:2.0.1" - dependencies: - err-code: "npm:^2.0.2" - retry: "npm:^0.12.0" - checksum: 10c0/9c7045a1a2928094b5b9b15336dcd2a7b1c052f674550df63cc3f36cd44028e5080448175b6f6ca32b642de81150f5e7b1a98b728f15cb069f2dd60ac2616b96 - languageName: node - linkType: hard - -"proxy-addr@npm:~2.0.7": - version: 2.0.7 - resolution: "proxy-addr@npm:2.0.7" - dependencies: - forwarded: "npm:0.2.0" - ipaddr.js: "npm:1.9.1" - checksum: 10c0/c3eed999781a35f7fd935f398b6d8920b6fb00bbc14287bc6de78128ccc1a02c89b95b56742bf7cf0362cc333c61d138532049c7dedc7a328ef13343eff81210 - languageName: node - linkType: hard - -"psl@npm:^1.1.33": - version: 1.15.0 - resolution: "psl@npm:1.15.0" - dependencies: - punycode: "npm:^2.3.1" - checksum: 10c0/d8d45a99e4ca62ca12ac3c373e63d80d2368d38892daa40cfddaa1eb908be98cd549ac059783ef3a56cfd96d57ae8e2fd9ae53d1378d90d42bc661ff924e102a - languageName: node - linkType: hard - -"pstree.remy@npm:^1.1.8": - version: 1.1.8 - resolution: "pstree.remy@npm:1.1.8" - checksum: 10c0/30f78c88ce6393cb3f7834216cb6e282eb83c92ccb227430d4590298ab2811bc4a4745f850a27c5178e79a8f3e316591de0fec87abc19da648c2b3c6eb766d14 - languageName: node - linkType: hard - -"punycode@npm:^2.1.1, punycode@npm:^2.3.1": - version: 2.3.1 - resolution: "punycode@npm:2.3.1" - checksum: 10c0/14f76a8206bc3464f794fb2e3d3cc665ae416c01893ad7a02b23766eb07159144ee612ad67af5e84fa4479ccfe67678c4feb126b0485651b302babf66f04f9e9 - languageName: node - linkType: hard - -"qs@npm:6.13.0": - version: 6.13.0 - resolution: "qs@npm:6.13.0" - dependencies: - side-channel: "npm:^1.0.6" - checksum: 10c0/62372cdeec24dc83a9fb240b7533c0fdcf0c5f7e0b83343edd7310f0ab4c8205a5e7c56406531f2e47e1b4878a3821d652be4192c841de5b032ca83619d8f860 - languageName: node - linkType: hard - -"querystringify@npm:^2.1.1": - version: 2.2.0 - resolution: "querystringify@npm:2.2.0" - checksum: 10c0/3258bc3dbdf322ff2663619afe5947c7926a6ef5fb78ad7d384602974c467fadfc8272af44f5eb8cddd0d011aae8fabf3a929a8eee4b86edcc0a21e6bd10f9aa - languageName: node - linkType: hard - -"range-parser@npm:~1.2.1": - version: 1.2.1 - resolution: "range-parser@npm:1.2.1" - checksum: 10c0/96c032ac2475c8027b7a4e9fe22dc0dfe0f6d90b85e496e0f016fbdb99d6d066de0112e680805075bd989905e2123b3b3d002765149294dce0c1f7f01fcc2ea0 - languageName: node - linkType: hard - -"raw-body@npm:2.5.2": - version: 2.5.2 - resolution: "raw-body@npm:2.5.2" - dependencies: - bytes: "npm:3.1.2" - http-errors: "npm:2.0.0" - iconv-lite: "npm:0.4.24" - unpipe: "npm:1.0.0" - checksum: 10c0/b201c4b66049369a60e766318caff5cb3cc5a900efd89bdac431463822d976ad0670912c931fdbdcf5543207daf6f6833bca57aa116e1661d2ea91e12ca692c4 - languageName: node - linkType: hard - -"readable-stream@npm:^2.3.5": - version: 2.3.8 - resolution: "readable-stream@npm:2.3.8" - dependencies: - core-util-is: "npm:~1.0.0" - inherits: "npm:~2.0.3" - isarray: "npm:~1.0.0" - process-nextick-args: "npm:~2.0.0" - safe-buffer: "npm:~5.1.1" - string_decoder: "npm:~1.1.1" - util-deprecate: "npm:~1.0.1" - checksum: 10c0/7efdb01f3853bc35ac62ea25493567bf588773213f5f4a79f9c365e1ad13bab845ac0dae7bc946270dc40c3929483228415e92a3fc600cc7e4548992f41ee3fa - languageName: node - linkType: hard - -"readdirp@npm:~3.6.0": - version: 3.6.0 - resolution: "readdirp@npm:3.6.0" - dependencies: - picomatch: "npm:^2.2.1" - checksum: 10c0/6fa848cf63d1b82ab4e985f4cf72bd55b7dcfd8e0a376905804e48c3634b7e749170940ba77b32804d5fe93b3cc521aa95a8d7e7d725f830da6d93f3669ce66b - languageName: node - linkType: hard - -"regexp-clone@npm:1.0.0, regexp-clone@npm:^1.0.0": - version: 1.0.0 - resolution: "regexp-clone@npm:1.0.0" - checksum: 10c0/5fc477a6d99d37d3360e146d6cc8b8502d1c3b4a9f7a3752f2a2815858d2057611348180778ccb98e8a53569e05d8720046d238a1e6cfc63e10cae3b0eb42ad2 - languageName: node - linkType: hard - -"require-at@npm:^1.0.6": - version: 1.0.6 - resolution: "require-at@npm:1.0.6" - checksum: 10c0/2497ef4e9630943337b3d3f37d9dc7509030a279dcf5614a06b07819c83ce7d811b9a4dba058a914cf8ee1ad9e8162c53af29e4004f3a450206a4e06b95e1acd - languageName: node - linkType: hard - -"requires-port@npm:^1.0.0": - version: 1.0.0 - resolution: "requires-port@npm:1.0.0" - checksum: 10c0/b2bfdd09db16c082c4326e573a82c0771daaf7b53b9ce8ad60ea46aa6e30aaf475fe9b164800b89f93b748d2c234d8abff945d2551ba47bf5698e04cd7713267 - languageName: node - linkType: hard - -"retry@npm:^0.12.0": - version: 0.12.0 - resolution: "retry@npm:0.12.0" - checksum: 10c0/59933e8501727ba13ad73ef4a04d5280b3717fd650408460c987392efe9d7be2040778ed8ebe933c5cbd63da3dcc37919c141ef8af0a54a6e4fca5a2af177bfe - languageName: node - linkType: hard - -"safe-buffer@npm:5.1.2, safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1": - version: 5.1.2 - resolution: "safe-buffer@npm:5.1.2" - checksum: 10c0/780ba6b5d99cc9a40f7b951d47152297d0e260f0df01472a1b99d4889679a4b94a13d644f7dbc4f022572f09ae9005fa2fbb93bbbd83643316f365a3e9a45b21 - languageName: node - linkType: hard - -"safe-buffer@npm:5.2.1, safe-buffer@npm:^5.0.1, safe-buffer@npm:^5.1.1, safe-buffer@npm:^5.1.2": - version: 5.2.1 - resolution: "safe-buffer@npm:5.2.1" - checksum: 10c0/6501914237c0a86e9675d4e51d89ca3c21ffd6a31642efeba25ad65720bce6921c9e7e974e5be91a786b25aa058b5303285d3c15dbabf983a919f5f630d349f3 - languageName: node - linkType: hard - -"safer-buffer@npm:>= 2.1.2 < 3, safer-buffer@npm:>= 2.1.2 < 3.0.0": - version: 2.1.2 - resolution: "safer-buffer@npm:2.1.2" - checksum: 10c0/7e3c8b2e88a1841c9671094bbaeebd94448111dd90a81a1f606f3f67708a6ec57763b3b47f06da09fc6054193e0e6709e77325415dc8422b04497a8070fa02d4 - languageName: node - linkType: hard - -"saslprep@npm:^1.0.0": - version: 1.0.3 - resolution: "saslprep@npm:1.0.3" - dependencies: - sparse-bitfield: "npm:^3.0.3" - checksum: 10c0/7dea5b2c0cb507132d4a6e1a65082b1118b435f9bb5b13665e71e581875dc574d4fb26dd0246d72daa1d7a453b131043aa0f8c1a8813ca2d4b577335156f99ac - languageName: node - linkType: hard - -"saxes@npm:^5.0.1": - version: 5.0.1 - resolution: "saxes@npm:5.0.1" - dependencies: - xmlchars: "npm:^2.2.0" - checksum: 10c0/b7476c41dbe1c3a89907d2546fecfba234de5e66743ef914cde2603f47b19bed09732ab51b528ad0f98b958369d8be72b6f5af5c9cfad69972a73d061f0b3952 - languageName: node - linkType: hard - -"semver@npm:^5.6.0, semver@npm:^5.7.1": - version: 5.7.2 - resolution: "semver@npm:5.7.2" - bin: - semver: bin/semver - checksum: 10c0/e4cf10f86f168db772ae95d86ba65b3fd6c5967c94d97c708ccb463b778c2ee53b914cd7167620950fc07faf5a564e6efe903836639e512a1aa15fbc9667fa25 - languageName: node - linkType: hard - -"semver@npm:^7.3.5": - version: 7.7.1 - resolution: "semver@npm:7.7.1" - bin: - semver: bin/semver.js - checksum: 10c0/fd603a6fb9c399c6054015433051bdbe7b99a940a8fb44b85c2b524c4004b023d7928d47cb22154f8d054ea7ee8597f586605e05b52047f048278e4ac56ae958 - languageName: node - linkType: hard - -"semver@npm:~7.0.0": - version: 7.0.0 - resolution: "semver@npm:7.0.0" - bin: - semver: bin/semver.js - checksum: 10c0/7fd341680a967a0abfd66f3a7d36ba44e52ff5d3e799e9a6cdb01a68160b64ef09be82b4af05459effeecdd836f002c2462555d2821cd890dfdfe36a0d9f56a5 - languageName: node - linkType: hard - -"send@npm:0.19.0": - version: 0.19.0 - resolution: "send@npm:0.19.0" - dependencies: - debug: "npm:2.6.9" - depd: "npm:2.0.0" - destroy: "npm:1.2.0" - encodeurl: "npm:~1.0.2" - escape-html: "npm:~1.0.3" - etag: "npm:~1.8.1" - fresh: "npm:0.5.2" - http-errors: "npm:2.0.0" - mime: "npm:1.6.0" - ms: "npm:2.1.3" - on-finished: "npm:2.4.1" - range-parser: "npm:~1.2.1" - statuses: "npm:2.0.1" - checksum: 10c0/ea3f8a67a8f0be3d6bf9080f0baed6d2c51d11d4f7b4470de96a5029c598a7011c497511ccc28968b70ef05508675cebff27da9151dd2ceadd60be4e6cf845e3 - languageName: node - linkType: hard - -"serve-static@npm:1.16.2": - version: 1.16.2 - resolution: "serve-static@npm:1.16.2" - dependencies: - encodeurl: "npm:~2.0.0" - escape-html: "npm:~1.0.3" - parseurl: "npm:~1.3.3" - send: "npm:0.19.0" - checksum: 10c0/528fff6f5e12d0c5a391229ad893910709bc51b5705962b09404a1d813857578149b8815f35d3ee5752f44cd378d0f31669d4b1d7e2d11f41e08283d5134bd1f - languageName: node - linkType: hard - -"setprototypeof@npm:1.2.0": - version: 1.2.0 - resolution: "setprototypeof@npm:1.2.0" - checksum: 10c0/68733173026766fa0d9ecaeb07f0483f4c2dc70ca376b3b7c40b7cda909f94b0918f6c5ad5ce27a9160bdfb475efaa9d5e705a11d8eaae18f9835d20976028bc - languageName: node - linkType: hard - -"shebang-command@npm:^2.0.0": - version: 2.0.0 - resolution: "shebang-command@npm:2.0.0" - dependencies: - shebang-regex: "npm:^3.0.0" - checksum: 10c0/a41692e7d89a553ef21d324a5cceb5f686d1f3c040759c50aab69688634688c5c327f26f3ecf7001ebfd78c01f3c7c0a11a7c8bfd0a8bc9f6240d4f40b224e4e - languageName: node - linkType: hard - -"shebang-regex@npm:^3.0.0": - version: 3.0.0 - resolution: "shebang-regex@npm:3.0.0" - checksum: 10c0/1dbed0726dd0e1152a92696c76c7f06084eb32a90f0528d11acd764043aacf76994b2fb30aa1291a21bd019d6699164d048286309a278855ee7bec06cf6fb690 - languageName: node - linkType: hard - -"side-channel-list@npm:^1.0.0": - version: 1.0.0 - resolution: "side-channel-list@npm:1.0.0" - dependencies: - es-errors: "npm:^1.3.0" - object-inspect: "npm:^1.13.3" - checksum: 10c0/644f4ac893456c9490ff388bf78aea9d333d5e5bfc64cfb84be8f04bf31ddc111a8d4b83b85d7e7e8a7b845bc185a9ad02c052d20e086983cf59f0be517d9b3d - languageName: node - linkType: hard - -"side-channel-map@npm:^1.0.1": - version: 1.0.1 - resolution: "side-channel-map@npm:1.0.1" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.5" - object-inspect: "npm:^1.13.3" - checksum: 10c0/010584e6444dd8a20b85bc926d934424bd809e1a3af941cace229f7fdcb751aada0fb7164f60c2e22292b7fa3c0ff0bce237081fd4cdbc80de1dc68e95430672 - languageName: node - linkType: hard - -"side-channel-weakmap@npm:^1.0.2": - version: 1.0.2 - resolution: "side-channel-weakmap@npm:1.0.2" - dependencies: - call-bound: "npm:^1.0.2" - es-errors: "npm:^1.3.0" - get-intrinsic: "npm:^1.2.5" - object-inspect: "npm:^1.13.3" - side-channel-map: "npm:^1.0.1" - checksum: 10c0/71362709ac233e08807ccd980101c3e2d7efe849edc51455030327b059f6c4d292c237f94dc0685031dd11c07dd17a68afde235d6cf2102d949567f98ab58185 - languageName: node - linkType: hard - -"side-channel@npm:^1.0.6": - version: 1.1.0 - resolution: "side-channel@npm:1.1.0" - dependencies: - es-errors: "npm:^1.3.0" - object-inspect: "npm:^1.13.3" - side-channel-list: "npm:^1.0.0" - side-channel-map: "npm:^1.0.1" - side-channel-weakmap: "npm:^1.0.2" - checksum: 10c0/cb20dad41eb032e6c24c0982e1e5a24963a28aa6122b4f05b3f3d6bf8ae7fd5474ef382c8f54a6a3ab86e0cac4d41a23bd64ede3970e5bfb50326ba02a7996e6 - languageName: node - linkType: hard - -"sift@npm:13.5.2": - version: 13.5.2 - resolution: "sift@npm:13.5.2" - checksum: 10c0/1a34b2a5275212319614cfd4cf5b76a543d8b48f5564eaae7442b0efd3c4e3125b89d60e95ed7ccf947820ecfddeb3fc354f75b9413fce21620215c716499478 - languageName: node - linkType: hard - -"signal-exit@npm:^4.0.1": - version: 4.1.0 - resolution: "signal-exit@npm:4.1.0" - checksum: 10c0/41602dce540e46d599edba9d9860193398d135f7ff72cab629db5171516cfae628d21e7bfccde1bbfdf11c48726bc2a6d1a8fb8701125852fbfda7cf19c6aa83 - languageName: node - linkType: hard - -"simple-update-notifier@npm:^1.0.7": - version: 1.1.0 - resolution: "simple-update-notifier@npm:1.1.0" - dependencies: - semver: "npm:~7.0.0" - checksum: 10c0/3cbbbc71a5d9a2924f0e3f42fbf3cbe1854bfe142203456b00d5233bdbbdeb5091b8067cd34fb00f81dbfbc29fc30dbb6e026b3d58ea0551e3f26c0e64082092 - languageName: node - linkType: hard - -"sliced@npm:1.0.1": - version: 1.0.1 - resolution: "sliced@npm:1.0.1" - checksum: 10c0/42f93fdc87b79492704d6af45efaafe407384812467514f6763ec823fedb32f7cbe8addd85bfebc6eff094f79fab899225b82690ab57c62d1959c4f6bbc6f5b1 - languageName: node - linkType: hard - -"smart-buffer@npm:^4.2.0": - version: 4.2.0 - resolution: "smart-buffer@npm:4.2.0" - checksum: 10c0/a16775323e1404dd43fabafe7460be13a471e021637bc7889468eb45ce6a6b207261f454e4e530a19500cc962c4cc5348583520843b363f4193cee5c00e1e539 - languageName: node - linkType: hard - -"socks-proxy-agent@npm:^8.0.3": - version: 8.0.5 - resolution: "socks-proxy-agent@npm:8.0.5" - dependencies: - agent-base: "npm:^7.1.2" - debug: "npm:^4.3.4" - socks: "npm:^2.8.3" - checksum: 10c0/5d2c6cecba6821389aabf18728325730504bf9bb1d9e342e7987a5d13badd7a98838cc9a55b8ed3cb866ad37cc23e1086f09c4d72d93105ce9dfe76330e9d2a6 - languageName: node - linkType: hard - -"socks@npm:^2.8.3": - version: 2.8.4 - resolution: "socks@npm:2.8.4" - dependencies: - ip-address: "npm:^9.0.5" - smart-buffer: "npm:^4.2.0" - checksum: 10c0/00c3271e233ccf1fb83a3dd2060b94cc37817e0f797a93c560b9a7a86c4a0ec2961fb31263bdd24a3c28945e24868b5f063cd98744171d9e942c513454b50ae5 - languageName: node - linkType: hard - -"source-map@npm:~0.6.1": - version: 0.6.1 - resolution: "source-map@npm:0.6.1" - checksum: 10c0/ab55398007c5e5532957cb0beee2368529618ac0ab372d789806f5718123cc4367d57de3904b4e6a4170eb5a0b0f41373066d02ca0735a0c4d75c7d328d3e011 - languageName: node - linkType: hard - -"sparse-bitfield@npm:^3.0.3": - version: 3.0.3 - resolution: "sparse-bitfield@npm:3.0.3" - dependencies: - memory-pager: "npm:^1.0.2" - checksum: 10c0/248c6ff7b5e354735e1daac4059222a29c9d291dfcf265daf675d13515eeaac454cfcccd687c8d134f86698b39abd7ad4d7434f7272dd6f8e41a00f21aae4194 - languageName: node - linkType: hard - -"sprintf-js@npm:^1.1.3": - version: 1.1.3 - resolution: "sprintf-js@npm:1.1.3" - checksum: 10c0/09270dc4f30d479e666aee820eacd9e464215cdff53848b443964202bf4051490538e5dd1b42e1a65cf7296916ca17640aebf63dae9812749c7542ee5f288dec - languageName: node - linkType: hard - -"ssri@npm:^12.0.0": - version: 12.0.0 - resolution: "ssri@npm:12.0.0" - dependencies: - minipass: "npm:^7.0.3" - checksum: 10c0/caddd5f544b2006e88fa6b0124d8d7b28208b83c72d7672d5ade44d794525d23b540f3396108c4eb9280dcb7c01f0bef50682f5b4b2c34291f7c5e211fd1417d - languageName: node - linkType: hard - -"statuses@npm:2.0.1": - version: 2.0.1 - resolution: "statuses@npm:2.0.1" - checksum: 10c0/34378b207a1620a24804ce8b5d230fea0c279f00b18a7209646d5d47e419d1cc23e7cbf33a25a1e51ac38973dc2ac2e1e9c647a8e481ef365f77668d72becfd0 - languageName: node - linkType: hard - -"string-width-cjs@npm:string-width@^4.2.0, string-width@npm:^4.1.0": - version: 4.2.3 - resolution: "string-width@npm:4.2.3" - dependencies: - emoji-regex: "npm:^8.0.0" - is-fullwidth-code-point: "npm:^3.0.0" - strip-ansi: "npm:^6.0.1" - checksum: 10c0/1e525e92e5eae0afd7454086eed9c818ee84374bb80328fc41217ae72ff5f065ef1c9d7f72da41de40c75fa8bb3dee63d92373fd492c84260a552c636392a47b - languageName: node - linkType: hard - -"string-width@npm:^5.0.1, string-width@npm:^5.1.2": - version: 5.1.2 - resolution: "string-width@npm:5.1.2" - dependencies: - eastasianwidth: "npm:^0.2.0" - emoji-regex: "npm:^9.2.2" - strip-ansi: "npm:^7.0.1" - checksum: 10c0/ab9c4264443d35b8b923cbdd513a089a60de339216d3b0ed3be3ba57d6880e1a192b70ae17225f764d7adbf5994e9bb8df253a944736c15a0240eff553c678ca - languageName: node - linkType: hard - -"string_decoder@npm:~1.1.1": - version: 1.1.1 - resolution: "string_decoder@npm:1.1.1" - dependencies: - safe-buffer: "npm:~5.1.0" - checksum: 10c0/b4f89f3a92fd101b5653ca3c99550e07bdf9e13b35037e9e2a1c7b47cec4e55e06ff3fc468e314a0b5e80bfbaf65c1ca5a84978764884ae9413bec1fc6ca924e - languageName: node - linkType: hard - -"strip-ansi-cjs@npm:strip-ansi@^6.0.1, strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": - version: 6.0.1 - resolution: "strip-ansi@npm:6.0.1" - dependencies: - ansi-regex: "npm:^5.0.1" - checksum: 10c0/1ae5f212a126fe5b167707f716942490e3933085a5ff6c008ab97ab2f272c8025d3aa218b7bd6ab25729ca20cc81cddb252102f8751e13482a5199e873680952 - languageName: node - linkType: hard - -"strip-ansi@npm:^7.0.1": - version: 7.1.0 - resolution: "strip-ansi@npm:7.1.0" - dependencies: - ansi-regex: "npm:^6.0.1" - checksum: 10c0/a198c3762e8832505328cbf9e8c8381de14a4fa50a4f9b2160138158ea88c0f5549fb50cb13c651c3088f47e63a108b34622ec18c0499b6c8c3a5ddf6b305ac4 - languageName: node - linkType: hard - -"supports-color@npm:^5.5.0": - version: 5.5.0 - resolution: "supports-color@npm:5.5.0" - dependencies: - has-flag: "npm:^3.0.0" - checksum: 10c0/6ae5ff319bfbb021f8a86da8ea1f8db52fac8bd4d499492e30ec17095b58af11f0c55f8577390a749b1c4dde691b6a0315dab78f5f54c9b3d83f8fb5905c1c05 - languageName: node - linkType: hard - -"symbol-tree@npm:^3.2.4": - version: 3.2.4 - resolution: "symbol-tree@npm:3.2.4" - checksum: 10c0/dfbe201ae09ac6053d163578778c53aa860a784147ecf95705de0cd23f42c851e1be7889241495e95c37cabb058edb1052f141387bef68f705afc8f9dd358509 - languageName: node - linkType: hard - -"tar@npm:^7.4.3": - version: 7.4.3 - resolution: "tar@npm:7.4.3" - dependencies: - "@isaacs/fs-minipass": "npm:^4.0.0" - chownr: "npm:^3.0.0" - minipass: "npm:^7.1.2" - minizlib: "npm:^3.0.1" - mkdirp: "npm:^3.0.1" - yallist: "npm:^5.0.0" - checksum: 10c0/d4679609bb2a9b48eeaf84632b6d844128d2412b95b6de07d53d8ee8baf4ca0857c9331dfa510390a0727b550fd543d4d1a10995ad86cdf078423fbb8d99831d - languageName: node - linkType: hard - -"tinyglobby@npm:^0.2.12": - version: 0.2.13 - resolution: "tinyglobby@npm:0.2.13" - dependencies: - fdir: "npm:^6.4.4" - picomatch: "npm:^4.0.2" - checksum: 10c0/ef07dfaa7b26936601d3f6d999f7928a4d1c6234c5eb36896bb88681947c0d459b7ebe797022400e555fe4b894db06e922b95d0ce60cb05fd827a0a66326b18c - languageName: node - linkType: hard - -"to-regex-range@npm:^5.0.1": - version: 5.0.1 - resolution: "to-regex-range@npm:5.0.1" - dependencies: - is-number: "npm:^7.0.0" - checksum: 10c0/487988b0a19c654ff3e1961b87f471702e708fa8a8dd02a298ef16da7206692e8552a0250e8b3e8759270f62e9d8314616f6da274734d3b558b1fc7b7724e892 - languageName: node - linkType: hard - -"toidentifier@npm:1.0.1": - version: 1.0.1 - resolution: "toidentifier@npm:1.0.1" - checksum: 10c0/93937279934bd66cc3270016dd8d0afec14fb7c94a05c72dc57321f8bd1fa97e5bea6d1f7c89e728d077ca31ea125b78320a616a6c6cd0e6b9cb94cb864381c1 - languageName: node - linkType: hard - -"touch@npm:^3.1.0": - version: 3.1.1 - resolution: "touch@npm:3.1.1" - bin: - nodetouch: bin/nodetouch.js - checksum: 10c0/d2e4d269a42c846a22a29065b9af0b263de58effc85a1764bb7a2e8fc4b47700e9e2fcbd7eb1f5bffbb7c73d860f93600cef282b93ddac8f0b62321cb498b36e - languageName: node - linkType: hard - -"tough-cookie@npm:^4.0.0": - version: 4.1.4 - resolution: "tough-cookie@npm:4.1.4" - dependencies: - psl: "npm:^1.1.33" - punycode: "npm:^2.1.1" - universalify: "npm:^0.2.0" - url-parse: "npm:^1.5.3" - checksum: 10c0/aca7ff96054f367d53d1e813e62ceb7dd2eda25d7752058a74d64b7266fd07be75908f3753a32ccf866a2f997604b414cfb1916d6e7f69bc64d9d9939b0d6c45 - languageName: node - linkType: hard - -"tr46@npm:^3.0.0": - version: 3.0.0 - resolution: "tr46@npm:3.0.0" - dependencies: - punycode: "npm:^2.1.1" - checksum: 10c0/cdc47cad3a9d0b6cb293e39ccb1066695ae6fdd39b9e4f351b010835a1f8b4f3a6dc3a55e896b421371187f22b48d7dac1b693de4f6551bdef7b6ab6735dfe3b - languageName: node - linkType: hard - -"type-is@npm:~1.6.18": - version: 1.6.18 - resolution: "type-is@npm:1.6.18" - dependencies: - media-typer: "npm:0.3.0" - mime-types: "npm:~2.1.24" - checksum: 10c0/a23daeb538591b7efbd61ecf06b6feb2501b683ffdc9a19c74ef5baba362b4347e42f1b4ed81f5882a8c96a3bfff7f93ce3ffaf0cbbc879b532b04c97a55db9d - languageName: node - linkType: hard - -"undefsafe@npm:^2.0.5": - version: 2.0.5 - resolution: "undefsafe@npm:2.0.5" - checksum: 10c0/96c0466a5fbf395917974a921d5d4eee67bca4b30d3a31ce7e621e0228c479cf893e783a109af6e14329b52fe2f0cb4108665fad2b87b0018c0df6ac771261d5 - languageName: node - linkType: hard - -"undici-types@npm:~6.21.0": - version: 6.21.0 - resolution: "undici-types@npm:6.21.0" - checksum: 10c0/c01ed51829b10aa72fc3ce64b747f8e74ae9b60eafa19a7b46ef624403508a54c526ffab06a14a26b3120d055e1104d7abe7c9017e83ced038ea5cf52f8d5e04 - languageName: node - linkType: hard - -"unique-filename@npm:^4.0.0": - version: 4.0.0 - resolution: "unique-filename@npm:4.0.0" - dependencies: - unique-slug: "npm:^5.0.0" - checksum: 10c0/38ae681cceb1408ea0587b6b01e29b00eee3c84baee1e41fd5c16b9ed443b80fba90c40e0ba69627e30855570a34ba8b06702d4a35035d4b5e198bf5a64c9ddc - languageName: node - linkType: hard - -"unique-slug@npm:^5.0.0": - version: 5.0.0 - resolution: "unique-slug@npm:5.0.0" - dependencies: - imurmurhash: "npm:^0.1.4" - checksum: 10c0/d324c5a44887bd7e105ce800fcf7533d43f29c48757ac410afd42975de82cc38ea2035c0483f4de82d186691bf3208ef35c644f73aa2b1b20b8e651be5afd293 - languageName: node - linkType: hard - -"universalify@npm:^0.2.0": - version: 0.2.0 - resolution: "universalify@npm:0.2.0" - checksum: 10c0/cedbe4d4ca3967edf24c0800cfc161c5a15e240dac28e3ce575c689abc11f2c81ccc6532c8752af3b40f9120fb5e454abecd359e164f4f6aa44c29cd37e194fe - languageName: node - linkType: hard - -"unpipe@npm:1.0.0, unpipe@npm:~1.0.0": - version: 1.0.0 - resolution: "unpipe@npm:1.0.0" - checksum: 10c0/193400255bd48968e5c5383730344fbb4fa114cdedfab26e329e50dd2d81b134244bb8a72c6ac1b10ab0281a58b363d06405632c9d49ca9dfd5e90cbd7d0f32c - languageName: node - linkType: hard - -"url-parse@npm:^1.5.3": - version: 1.5.10 - resolution: "url-parse@npm:1.5.10" - dependencies: - querystringify: "npm:^2.1.1" - requires-port: "npm:^1.0.0" - checksum: 10c0/bd5aa9389f896974beb851c112f63b466505a04b4807cea2e5a3b7092f6fbb75316f0491ea84e44f66fed55f1b440df5195d7e3a8203f64fcefa19d182f5be87 - languageName: node - linkType: hard - -"util-deprecate@npm:~1.0.1": - version: 1.0.2 - resolution: "util-deprecate@npm:1.0.2" - checksum: 10c0/41a5bdd214df2f6c3ecf8622745e4a366c4adced864bc3c833739791aeeeb1838119af7daed4ba36428114b5c67dcda034a79c882e97e43c03e66a4dd7389942 - languageName: node - linkType: hard - -"utils-merge@npm:1.0.1": - version: 1.0.1 - resolution: "utils-merge@npm:1.0.1" - checksum: 10c0/02ba649de1b7ca8854bfe20a82f1dfbdda3fb57a22ab4a8972a63a34553cf7aa51bc9081cf7e001b035b88186d23689d69e71b510e610a09a4c66f68aa95b672 - languageName: node - linkType: hard - -"vary@npm:~1.1.2": - version: 1.1.2 - resolution: "vary@npm:1.1.2" - checksum: 10c0/f15d588d79f3675135ba783c91a4083dcd290a2a5be9fcb6514220a1634e23df116847b1cc51f66bfb0644cf9353b2abb7815ae499bab06e46dd33c1a6bf1f4f - languageName: node - linkType: hard - -"w3c-hr-time@npm:^1.0.2": - version: 1.0.2 - resolution: "w3c-hr-time@npm:1.0.2" - dependencies: - browser-process-hrtime: "npm:^1.0.0" - checksum: 10c0/7795b61fb51ce222414891eef8e6cb13240b62f64351b4474f99c84de2bc37d37dd0efa193f37391e9737097b881a111d1e003e3d7a9583693f8d5a858b02627 - languageName: node - linkType: hard - -"w3c-xmlserializer@npm:^3.0.0": - version: 3.0.0 - resolution: "w3c-xmlserializer@npm:3.0.0" - dependencies: - xml-name-validator: "npm:^4.0.0" - checksum: 10c0/8c455303ee2aec813f8688f4a1618b78d2fd90156a233c8ef60b853418a6b23f00fe86b680f7584f48d1c2348ee0677ad43be6fb6fcc032130cfda4de8c7188e - languageName: node - linkType: hard - -"webidl-conversions@npm:^7.0.0": - version: 7.0.0 - resolution: "webidl-conversions@npm:7.0.0" - checksum: 10c0/228d8cb6d270c23b0720cb2d95c579202db3aaf8f633b4e9dd94ec2000a04e7e6e43b76a94509cdb30479bd00ae253ab2371a2da9f81446cc313f89a4213a2c4 - languageName: node - linkType: hard - -"whatwg-encoding@npm:^2.0.0": - version: 2.0.0 - resolution: "whatwg-encoding@npm:2.0.0" - dependencies: - iconv-lite: "npm:0.6.3" - checksum: 10c0/91b90a49f312dc751496fd23a7e68981e62f33afe938b97281ad766235c4872fc4e66319f925c5e9001502b3040dd25a33b02a9c693b73a4cbbfdc4ad10c3e3e - languageName: node - linkType: hard - -"whatwg-mimetype@npm:^3.0.0": - version: 3.0.0 - resolution: "whatwg-mimetype@npm:3.0.0" - checksum: 10c0/323895a1cda29a5fb0b9ca82831d2c316309fede0365047c4c323073e3239067a304a09a1f4b123b9532641ab604203f33a1403b5ca6a62ef405bcd7a204080f - languageName: node - linkType: hard - -"whatwg-url@npm:^10.0.0": - version: 10.0.0 - resolution: "whatwg-url@npm:10.0.0" - dependencies: - tr46: "npm:^3.0.0" - webidl-conversions: "npm:^7.0.0" - checksum: 10c0/57f295913cbad3b8f7843168f30dde5ff0a875cbcf80f9cceb96276e296ba925f0455b2bfd55b6829eb3d770c6ebcac48abcc182826decb748c139dbe85d92e8 - languageName: node - linkType: hard - -"whatwg-url@npm:^11.0.0": - version: 11.0.0 - resolution: "whatwg-url@npm:11.0.0" - dependencies: - tr46: "npm:^3.0.0" - webidl-conversions: "npm:^7.0.0" - checksum: 10c0/f7ec264976d7c725e0696fcaf9ebe056e14422eacbf92fdbb4462034609cba7d0c85ffa1aab05e9309d42969bcf04632ba5ed3f3882c516d7b093053315bf4c1 - languageName: node - linkType: hard - -"which@npm:^2.0.1": - version: 2.0.2 - resolution: "which@npm:2.0.2" - dependencies: - isexe: "npm:^2.0.0" - bin: - node-which: ./bin/node-which - checksum: 10c0/66522872a768b60c2a65a57e8ad184e5372f5b6a9ca6d5f033d4b0dc98aff63995655a7503b9c0a2598936f532120e81dd8cc155e2e92ed662a2b9377cc4374f - languageName: node - linkType: hard - -"which@npm:^5.0.0": - version: 5.0.0 - resolution: "which@npm:5.0.0" - dependencies: - isexe: "npm:^3.1.1" - bin: - node-which: bin/which.js - checksum: 10c0/e556e4cd8b7dbf5df52408c9a9dd5ac6518c8c5267c8953f5b0564073c66ed5bf9503b14d876d0e9c7844d4db9725fb0dcf45d6e911e17e26ab363dc3965ae7b - languageName: node - linkType: hard - -"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": - version: 7.0.0 - resolution: "wrap-ansi@npm:7.0.0" - dependencies: - ansi-styles: "npm:^4.0.0" - string-width: "npm:^4.1.0" - strip-ansi: "npm:^6.0.0" - checksum: 10c0/d15fc12c11e4cbc4044a552129ebc75ee3f57aa9c1958373a4db0292d72282f54373b536103987a4a7594db1ef6a4f10acf92978f79b98c49306a4b58c77d4da - languageName: node - linkType: hard - -"wrap-ansi@npm:^8.1.0": - version: 8.1.0 - resolution: "wrap-ansi@npm:8.1.0" - dependencies: - ansi-styles: "npm:^6.1.0" - string-width: "npm:^5.0.1" - strip-ansi: "npm:^7.0.1" - checksum: 10c0/138ff58a41d2f877eae87e3282c0630fc2789012fc1af4d6bd626eeb9a2f9a65ca92005e6e69a75c7b85a68479fe7443c7dbe1eb8fbaa681a4491364b7c55c60 - languageName: node - linkType: hard - -"ws@npm:^8.2.3": - version: 8.18.1 - resolution: "ws@npm:8.18.1" - peerDependencies: - bufferutil: ^4.0.1 - utf-8-validate: ">=5.0.2" - peerDependenciesMeta: - bufferutil: - optional: true - utf-8-validate: - optional: true - checksum: 10c0/e498965d6938c63058c4310ffb6967f07d4fa06789d3364829028af380d299fe05762961742971c764973dce3d1f6a2633fe8b2d9410c9b52e534b4b882a99fa - languageName: node - linkType: hard - -"xml-name-validator@npm:^4.0.0": - version: 4.0.0 - resolution: "xml-name-validator@npm:4.0.0" - checksum: 10c0/c1bfa219d64e56fee265b2bd31b2fcecefc063ee802da1e73bad1f21d7afd89b943c9e2c97af2942f60b1ad46f915a4c81e00039c7d398b53cf410e29d3c30bd - languageName: node - linkType: hard - -"xmlchars@npm:^2.2.0": - version: 2.2.0 - resolution: "xmlchars@npm:2.2.0" - checksum: 10c0/b64b535861a6f310c5d9bfa10834cf49127c71922c297da9d4d1b45eeaae40bf9b4363275876088fbe2667e5db028d2cd4f8ee72eed9bede840a67d57dab7593 - languageName: node - linkType: hard - -"yallist@npm:^4.0.0": - version: 4.0.0 - resolution: "yallist@npm:4.0.0" - checksum: 10c0/2286b5e8dbfe22204ab66e2ef5cc9bbb1e55dfc873bbe0d568aa943eb255d131890dfd5bf243637273d31119b870f49c18fcde2c6ffbb7a7a092b870dc90625a - languageName: node - linkType: hard - -"yallist@npm:^5.0.0": - version: 5.0.0 - resolution: "yallist@npm:5.0.0" - checksum: 10c0/a499c81ce6d4a1d260d4ea0f6d49ab4da09681e32c3f0472dee16667ed69d01dae63a3b81745a24bd78476ec4fcf856114cb4896ace738e01da34b2c42235416 - languageName: node - linkType: hard diff --git a/test/it/test_manifests/yarn-classic/package.json b/test/it/test_manifests/yarn-classic/package.json deleted file mode 100644 index 9d18fd62..00000000 --- a/test/it/test_manifests/yarn-classic/package.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "name": "backend", - "version": "1.0.0", - "description": "", - "main": "index.js", - "scripts": { - "start": "node app.js", - "server": "nodemon server.js", - "client-install": "npm install --prefix ../frontend", - "client": "npm start --prefix ../frontend", - "dev": "concurrently \"npm run server\" \"npm run client\"", - "heroku-postbuild": "NPM_CONFIG_PRODUCTION=false npm install --prefix ../frontend && npm run build --prefix ../frontend" - }, - "keywords": [], - "author": "", - "license": "ISC", - "dependencies": { - "@hapi/joi": "^17.1.1", - "backend": "^0.0.0", - "bcryptjs": "^2.4.3", - "dotenv": "^8.2.0", - "express": "^4.17.1", - "jsdom": "^19.0.0", - "jsonwebtoken": "^8.5.1", - "mongoose": "^5.9.18", - "nodemon": "^2.0.4", - "axios": "^0.19.0" - }, - "packageManager": "yarn@1.22.22+sha512.a6b2f7906b721bba3d67d4aff083df04dad64c399707841b7acf00f6b133b7ac24255f2652fa22ae3534329dc6180534e98d17432037ff6fd140556e2bb3137e" -} diff --git a/test/it/test_manifests/yarn-classic/yarn.lock b/test/it/test_manifests/yarn-classic/yarn.lock deleted file mode 100644 index 55a68999..00000000 --- a/test/it/test_manifests/yarn-classic/yarn.lock +++ /dev/null @@ -1,1447 +0,0 @@ -# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. -# yarn lockfile v1 - - -"@hapi/address@^4.0.1": - version "4.1.0" - resolved "https://registry.npmjs.org/@hapi/address/-/address-4.1.0.tgz" - integrity sha512-SkszZf13HVgGmChdHo/PxchnSaCJ6cetVqLzyciudzZRT0jcOouIF/Q93mgjw8cce+D+4F4C1Z/WrfFN+O3VHQ== - dependencies: - "@hapi/hoek" "^9.0.0" - -"@hapi/formula@^2.0.0": - version "2.0.0" - resolved "https://registry.npmjs.org/@hapi/formula/-/formula-2.0.0.tgz" - integrity sha512-V87P8fv7PI0LH7LiVi8Lkf3x+KCO7pQozXRssAHNXXL9L1K+uyu4XypLXwxqVDKgyQai6qj3/KteNlrqDx4W5A== - -"@hapi/hoek@^9.0.0": - version "9.3.0" - resolved "https://registry.npmjs.org/@hapi/hoek/-/hoek-9.3.0.tgz" - integrity sha512-/c6rf4UJlmHlC9b5BaNvzAcFv7HZ2QHaV0D4/HNlBdvFnvQq8RI4kYdhyPCl7Xj+oWvTWQ8ujhqS53LIgAe6KQ== - -"@hapi/joi@^17.1.1": - version "17.1.1" - resolved "https://registry.npmjs.org/@hapi/joi/-/joi-17.1.1.tgz" - integrity sha512-p4DKeZAoeZW4g3u7ZeRo+vCDuSDgSvtsB/NpfjXEHTUjSeINAi/RrVOWiVQ1isaoLzMvFEhe8n5065mQq1AdQg== - dependencies: - "@hapi/address" "^4.0.1" - "@hapi/formula" "^2.0.0" - "@hapi/hoek" "^9.0.0" - "@hapi/pinpoint" "^2.0.0" - "@hapi/topo" "^5.0.0" - -"@hapi/pinpoint@^2.0.0": - version "2.0.1" - resolved "https://registry.npmjs.org/@hapi/pinpoint/-/pinpoint-2.0.1.tgz" - integrity sha512-EKQmr16tM8s16vTT3cA5L0kZZcTMU5DUOZTuvpnY738m+jyP3JIUj+Mm1xc1rsLkGBQ/gVnfKYPwOmPg1tUR4Q== - -"@hapi/topo@^5.0.0": - version "5.1.0" - resolved "https://registry.npmjs.org/@hapi/topo/-/topo-5.1.0.tgz" - integrity sha512-foQZKJig7Ob0BMAYBfcJk8d77QtOe7Wo4ox7ff1lQYoNNAb6jwcY1ncdoy2e9wQZzvNy7ODZCYJkK8kzmcAnAg== - dependencies: - "@hapi/hoek" "^9.0.0" - -"@tootallnate/once@2": - version "2.0.0" - resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-2.0.0.tgz#f544a148d3ab35801c1f633a7441fd87c2e484bf" - integrity sha512-XCuKFP5PS55gnMVu3dty8KPatLqUoy/ZYzDzAGCQ8JNFCkLXzmI7vNHCR+XpbZaMWQK/vQubr7PkYq8g470J/A== - -"@types/bson@*": - version "4.2.4" - resolved "https://registry.npmjs.org/@types/bson/-/bson-4.2.4.tgz" - integrity sha512-SG23E3JDH6y8qF20a4G9txLuUl+TCV16gxsKyntmGiJez2V9VBJr1Y8WxTBBD6OgBVcvspQ7sxgdNMkXFVcaEA== - dependencies: - bson "*" - -"@types/bson@1.x || 4.0.x": - version "4.0.5" - resolved "https://registry.npmjs.org/@types/bson/-/bson-4.0.5.tgz" - integrity sha512-vVLwMUqhYJSQ/WKcE60eFqcyuWse5fGH+NMAXHuKrUAPoryq3ATxk5o4bgYNtg5aOM4APVg7Hnb3ASqUYG0PKg== - dependencies: - "@types/node" "*" - -"@types/mongodb@^3.5.27": - version "3.6.20" - resolved "https://registry.npmjs.org/@types/mongodb/-/mongodb-3.6.20.tgz" - integrity sha512-WcdpPJCakFzcWWD9juKoZbRtQxKIMYF/JIAM4JrNHrMcnJL6/a2NWjXxW7fo9hxboxxkg+icff8d7+WIEvKgYQ== - dependencies: - "@types/bson" "*" - "@types/node" "*" - -"@types/node@*": - version "22.14.1" - resolved "https://registry.npmjs.org/@types/node/-/node-22.14.1.tgz" - integrity sha512-u0HuPQwe/dHrItgHHpmw3N2fYCR6x4ivMNbPHRkBVP4CvN+kiRrKHWk3i8tXiO/joPwXLMYvF9TTF0eqgHIuOw== - dependencies: - undici-types "~6.21.0" - -abab@^2.0.5, abab@^2.0.6: - version "2.0.6" - resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" - integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== - -accepts@~1.3.8: - 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== - dependencies: - mime-types "~2.1.34" - negotiator "0.6.3" - -acorn-globals@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" - integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== - dependencies: - acorn "^7.1.1" - acorn-walk "^7.1.1" - -acorn-walk@^7.1.1: - version "7.2.0" - resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" - integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== - -acorn@^7.1.1: - version "7.4.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" - integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== - -acorn@^8.5.0: - version "8.14.1" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.14.1.tgz#721d5dc10f7d5b5609a891773d47731796935dfb" - integrity sha512-OvQ/2pUDKmgfCg++xsTX1wGxfTaszcHVcTctW4UJB4hibJx2HXxxO5UmVgyjMa+ZDsiaf5wWLXYpRWMmBI0QHg== - -agent-base@6: - version "6.0.2" - resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" - integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== - dependencies: - debug "4" - -anymatch@~3.1.2: - version "3.1.3" - resolved "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz" - integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== - dependencies: - normalize-path "^3.0.0" - picomatch "^2.0.4" - -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz" - integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== - -asynckit@^0.4.0: - version "0.4.0" - resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" - integrity sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q== - -axios@^0.19.0: - version "0.19.2" - resolved "https://registry.npmjs.org/axios/-/axios-0.19.2.tgz" - integrity sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA== - dependencies: - follow-redirects "1.5.10" - -backend@^0.0.0: - version "0.0.0" - resolved "https://registry.npmjs.org/backend/-/backend-0.0.0.tgz" - integrity sha512-Fq2aG5+zmmsKv2Dhm3ijAU5spnKOb5ldJlnnC/Vhk6n8In6zaq9eCPBMRiz2j94P/r84QEaBmtwh9tjaDPiQqg== - -balanced-match@^1.0.0: - version "1.0.2" - resolved "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz" - integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== - -bcryptjs@^2.4.3: - version "2.4.3" - resolved "https://registry.npmjs.org/bcryptjs/-/bcryptjs-2.4.3.tgz" - integrity sha512-V/Hy/X9Vt7f3BbPJEi8BdVFMByHi+jNXrYkW3huaybV/kQ0KJg0Y6PkEMbn+zeT+i+SiKZ/HMqJGIIt4LZDqNQ== - -binary-extensions@^2.0.0: - version "2.3.0" - resolved "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz" - integrity sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw== - -bl@^2.2.1: - version "2.2.1" - resolved "https://registry.npmjs.org/bl/-/bl-2.2.1.tgz" - integrity sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g== - dependencies: - readable-stream "^2.3.5" - safe-buffer "^5.1.1" - -bluebird@3.5.1: - version "3.5.1" - resolved "https://registry.npmjs.org/bluebird/-/bluebird-3.5.1.tgz" - integrity sha512-MKiLiV+I1AA596t9w1sQJ8jkiSr5+ZKi0WKrYGUn6d1Fx+Ij4tIj+m2WMQSGczs5jZVxV339chE8iwk6F64wjA== - -body-parser@1.20.3: - 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== - 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" - -brace-expansion@^1.1.7: - version "1.1.11" - resolved "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz" - integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== - dependencies: - balanced-match "^1.0.0" - concat-map "0.0.1" - -braces@~3.0.2: - version "3.0.3" - resolved "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz" - integrity sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA== - dependencies: - fill-range "^7.1.1" - -browser-process-hrtime@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" - integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== - -bson@*: - version "6.10.3" - resolved "https://registry.npmjs.org/bson/-/bson-6.10.3.tgz" - integrity sha512-MTxGsqgYTwfshYWTRdmZRC+M7FnG1b4y7RO7p2k3X24Wq0yv1m77Wsj0BzlPzd/IowgESfsruQCUToa7vbOpPQ== - -bson@^1.1.4: - version "1.1.6" - resolved "https://registry.npmjs.org/bson/-/bson-1.1.6.tgz" - integrity sha512-EvVNVeGo4tHxwi8L6bPj3y3itEvStdwvvlojVxxbyYfoaxJ6keLgrTuKdyfEAszFK+H3olzBuafE0yoh0D1gdg== - -buffer-equal-constant-time@1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz" - integrity sha512-zRpUiDwd/xk6ADqPMATG8vc9VPrkck7T07OIx0gnjmJAnHnTVXNQG3vfvWNuiZIkwu9KrKdA1iJKfsfTVxE6NA== - -bytes@3.1.2: - version "3.1.2" - resolved "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz" - integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== - -call-bind-apply-helpers@^1.0.1, call-bind-apply-helpers@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz" - integrity sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ== - dependencies: - es-errors "^1.3.0" - function-bind "^1.1.2" - -call-bound@^1.0.2: - version "1.0.4" - resolved "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz" - integrity sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg== - dependencies: - call-bind-apply-helpers "^1.0.2" - get-intrinsic "^1.3.0" - -chokidar@^3.5.2: - version "3.6.0" - resolved "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz" - integrity sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw== - 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" - optionalDependencies: - fsevents "~2.3.2" - -combined-stream@^1.0.8: - version "1.0.8" - resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" - integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== - dependencies: - delayed-stream "~1.0.0" - -concat-map@0.0.1: - version "0.0.1" - resolved "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz" - integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== - -content-disposition@0.5.4: - version "0.5.4" - resolved "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz" - integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== - dependencies: - safe-buffer "5.2.1" - -content-type@~1.0.4, content-type@~1.0.5: - version "1.0.5" - resolved "https://registry.npmjs.org/content-type/-/content-type-1.0.5.tgz" - integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== - -cookie-signature@1.0.6: - version "1.0.6" - resolved "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz" - integrity sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ== - -cookie@0.7.1: - version "0.7.1" - resolved "https://registry.npmjs.org/cookie/-/cookie-0.7.1.tgz" - integrity sha512-6DnInpx7SJ2AK3+CTUE/ZM0vWTUboZCegxhC2xiIydHR9jNuTAASBrfEpHhiGOZw/nX51bHt6YQl8jsGo4y/0w== - -core-util-is@~1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz" - integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== - -cssom@^0.5.0: - version "0.5.0" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.5.0.tgz#d254fa92cd8b6fbd83811b9fbaed34663cc17c36" - integrity sha512-iKuQcq+NdHqlAcwUY0o/HL69XQrUaQdMjmStJ8JFmUaiiQErlhrmuigkg/CU4E2J0IyUKUrMAgl36TvN67MqTw== - -cssom@~0.3.6: - version "0.3.8" - resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" - integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== - -cssstyle@^2.3.0: - version "2.3.0" - resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" - integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== - dependencies: - cssom "~0.3.6" - -data-urls@^3.0.1: - version "3.0.2" - resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-3.0.2.tgz#9cf24a477ae22bcef5cd5f6f0bfbc1d2d3be9143" - integrity sha512-Jy/tj3ldjZJo63sVAvg6LHt2mHvl4V6AgRAmNDtLdm7faqtsx+aJG42rsyCo9JCoRVKwPFzKlIPx3DIibwSIaQ== - dependencies: - abab "^2.0.6" - whatwg-mimetype "^3.0.0" - whatwg-url "^11.0.0" - -debug@2.6.9: - version "2.6.9" - resolved "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz" - integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== - dependencies: - ms "2.0.0" - -debug@3.1.0, debug@=3.1.0: - version "3.1.0" - resolved "https://registry.npmjs.org/debug/-/debug-3.1.0.tgz" - integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== - dependencies: - ms "2.0.0" - -debug@4: - version "4.4.0" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.0.tgz#2b3f2aea2ffeb776477460267377dc8710faba8a" - integrity sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA== - dependencies: - ms "^2.1.3" - -debug@^3.2.7: - version "3.2.7" - resolved "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz" - integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== - dependencies: - ms "^2.1.1" - -decimal.js@^10.3.1: - version "10.5.0" - resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.5.0.tgz#0f371c7cf6c4898ce0afb09836db73cd82010f22" - integrity sha512-8vDa8Qxvr/+d94hSh5P3IJwI5t8/c0KsMp+g8bNw9cY2icONa5aPfvKeieW1WlG0WQYwwhJ7mjui2xtiePQSXw== - -delayed-stream@~1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" - integrity sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ== - -denque@^1.4.1: - version "1.5.1" - resolved "https://registry.npmjs.org/denque/-/denque-1.5.1.tgz" - integrity sha512-XwE+iZ4D6ZUB7mfYRMb5wByE8L74HCn30FBN7sWnXksWc1LO1bPDl67pBR9o/kC4z/xSNAwkMYcGgqDV3BE3Hw== - -depd@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz" - integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== - -destroy@1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz" - integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== - -domexception@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/domexception/-/domexception-4.0.0.tgz#4ad1be56ccadc86fc76d033353999a8037d03673" - integrity sha512-A2is4PLG+eeSfoTMA95/s4pvAoSo2mKtiM5jlHkAVewmiO8ISFTFKZjH7UAM1Atli/OT/7JHOrJRJiMKUZKYBw== - dependencies: - webidl-conversions "^7.0.0" - -dotenv@^8.2.0: - version "8.6.0" - resolved "https://registry.npmjs.org/dotenv/-/dotenv-8.6.0.tgz" - integrity sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g== - -dunder-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz" - integrity sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A== - dependencies: - call-bind-apply-helpers "^1.0.1" - es-errors "^1.3.0" - gopd "^1.2.0" - -ecdsa-sig-formatter@1.0.11: - version "1.0.11" - resolved "https://registry.npmjs.org/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz" - integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== - dependencies: - safe-buffer "^5.0.1" - -ee-first@1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz" - integrity sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow== - -encodeurl@~1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz" - integrity sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w== - -encodeurl@~2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/encodeurl/-/encodeurl-2.0.0.tgz" - integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== - -es-define-property@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz" - integrity sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g== - -es-errors@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz" - integrity sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw== - -es-object-atoms@^1.0.0, es-object-atoms@^1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz" - integrity sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA== - dependencies: - es-errors "^1.3.0" - -es-set-tostringtag@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/es-set-tostringtag/-/es-set-tostringtag-2.1.0.tgz#f31dbbe0c183b00a6d26eb6325c810c0fd18bd4d" - integrity sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA== - dependencies: - es-errors "^1.3.0" - get-intrinsic "^1.2.6" - has-tostringtag "^1.0.2" - hasown "^2.0.2" - -escape-html@~1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz" - integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== - -escodegen@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.1.0.tgz#ba93bbb7a43986d29d6041f99f5262da773e2e17" - integrity sha512-2NlIDTwUWJN0mRPQOdtQBzbUHvdGY2P1VXSyU83Q3xKxM7WHX2Ql8dKq782Q9TgQUNOLEzEYu9bzLNj1q88I5w== - dependencies: - esprima "^4.0.1" - estraverse "^5.2.0" - esutils "^2.0.2" - optionalDependencies: - source-map "~0.6.1" - -esprima@^4.0.1: - version "4.0.1" - resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" - integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== - -estraverse@^5.2.0: - version "5.3.0" - resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" - integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== - -esutils@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" - integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== - -etag@~1.8.1: - version "1.8.1" - resolved "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz" - integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== - -express@^4.17.1: - version "4.21.2" - resolved "https://registry.npmjs.org/express/-/express-4.21.2.tgz" - integrity sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA== - dependencies: - accepts "~1.3.8" - array-flatten "1.1.1" - body-parser "1.20.3" - content-disposition "0.5.4" - content-type "~1.0.4" - cookie "0.7.1" - cookie-signature "1.0.6" - debug "2.6.9" - depd "2.0.0" - encodeurl "~2.0.0" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "1.3.1" - fresh "0.5.2" - http-errors "2.0.0" - merge-descriptors "1.0.3" - methods "~1.1.2" - on-finished "2.4.1" - parseurl "~1.3.3" - path-to-regexp "0.1.12" - proxy-addr "~2.0.7" - qs "6.13.0" - range-parser "~1.2.1" - safe-buffer "5.2.1" - send "0.19.0" - serve-static "1.16.2" - setprototypeof "1.2.0" - statuses "2.0.1" - type-is "~1.6.18" - utils-merge "1.0.1" - vary "~1.1.2" - -fill-range@^7.1.1: - version "7.1.1" - resolved "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz" - integrity sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg== - dependencies: - to-regex-range "^5.0.1" - -finalhandler@1.3.1: - version "1.3.1" - resolved "https://registry.npmjs.org/finalhandler/-/finalhandler-1.3.1.tgz" - integrity sha512-6BN9trH7bp3qvnrRyzsBz+g3lZxTNZTbVO2EV1CS0WIcDbawYVdYvGflME/9QP0h0pYlCDBCTjYa9nZzMDpyxQ== - dependencies: - debug "2.6.9" - encodeurl "~2.0.0" - escape-html "~1.0.3" - on-finished "2.4.1" - parseurl "~1.3.3" - statuses "2.0.1" - unpipe "~1.0.0" - -follow-redirects@1.5.10: - version "1.5.10" - resolved "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.5.10.tgz" - integrity sha512-0V5l4Cizzvqt5D44aTXbFZz+FtyXV1vrDN6qrelxtfYQKW0KO0W2T/hkE8xvGa/540LkZlkaUjO4ailYTFtHVQ== - dependencies: - debug "=3.1.0" - -form-data@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.2.tgz#35cabbdd30c3ce73deb2c42d3c8d3ed9ca51794c" - integrity sha512-hGfm/slu0ZabnNt4oaRZ6uREyfCj6P4fT/n6A1rGV+Z0VdGXjfOhVUpkn6qVQONHGIFwmveGXyDs75+nr6FM8w== - dependencies: - asynckit "^0.4.0" - combined-stream "^1.0.8" - es-set-tostringtag "^2.1.0" - mime-types "^2.1.12" - -forwarded@0.2.0: - version "0.2.0" - resolved "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz" - integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== - -fresh@0.5.2: - version "0.5.2" - resolved "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz" - integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== - -fsevents@~2.3.2: - version "2.3.3" - resolved "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz" - integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== - -function-bind@^1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz" - integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== - -get-intrinsic@^1.2.5, get-intrinsic@^1.2.6, get-intrinsic@^1.3.0: - version "1.3.0" - resolved "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz" - integrity sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ== - dependencies: - call-bind-apply-helpers "^1.0.2" - es-define-property "^1.0.1" - es-errors "^1.3.0" - es-object-atoms "^1.1.1" - function-bind "^1.1.2" - get-proto "^1.0.1" - gopd "^1.2.0" - has-symbols "^1.1.0" - hasown "^2.0.2" - math-intrinsics "^1.1.0" - -get-proto@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz" - integrity sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g== - dependencies: - dunder-proto "^1.0.1" - es-object-atoms "^1.0.0" - -glob-parent@~5.1.2: - version "5.1.2" - resolved "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz" - integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== - dependencies: - is-glob "^4.0.1" - -gopd@^1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz" - integrity sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg== - -has-flag@^3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz" - integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== - -has-symbols@^1.0.3, has-symbols@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz" - integrity sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ== - -has-tostringtag@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz#2cdc42d40bef2e5b4eeab7c01a73c54ce7ab5abc" - integrity sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw== - dependencies: - has-symbols "^1.0.3" - -hasown@^2.0.2: - version "2.0.2" - resolved "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz" - integrity sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ== - dependencies: - function-bind "^1.1.2" - -html-encoding-sniffer@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-3.0.0.tgz#2cb1a8cf0db52414776e5b2a7a04d5dd98158de9" - integrity sha512-oWv4T4yJ52iKrufjnyZPkrN0CH3QnrUqdB6In1g5Fe1mia8GmF36gnfNySxoZtxD5+NmYw1EElVXiBk93UeskA== - dependencies: - whatwg-encoding "^2.0.0" - -http-errors@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz" - integrity sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ== - dependencies: - depd "2.0.0" - inherits "2.0.4" - setprototypeof "1.2.0" - statuses "2.0.1" - toidentifier "1.0.1" - -http-proxy-agent@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-5.0.0.tgz#5129800203520d434f142bc78ff3c170800f2b43" - integrity sha512-n2hY8YdoRE1i7r6M0w9DIw5GgZN0G25P8zLCRQ8rjXtTU3vsNFBI/vWK/UIeE6g5MUUz6avwAPXmL6Fy9D/90w== - dependencies: - "@tootallnate/once" "2" - agent-base "6" - debug "4" - -https-proxy-agent@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz#c59ef224a04fe8b754f3db0063a25ea30d0005d6" - integrity sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA== - dependencies: - agent-base "6" - debug "4" - -iconv-lite@0.4.24: - version "0.4.24" - resolved "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - -iconv-lite@0.6.3: - version "0.6.3" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" - integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== - dependencies: - safer-buffer ">= 2.1.2 < 3.0.0" - -ignore-by-default@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/ignore-by-default/-/ignore-by-default-1.0.1.tgz" - integrity sha512-Ius2VYcGNk7T90CppJqcIkS5ooHUZyIQK+ClZfMfMNFEF9VSE73Fq+906u/CWu92x4gzZMWOwfFYckPObzdEbA== - -inherits@2.0.4, inherits@~2.0.3: - version "2.0.4" - resolved "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz" - integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== - -ipaddr.js@1.9.1: - version "1.9.1" - resolved "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz" - integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== - -is-binary-path@~2.1.0: - version "2.1.0" - resolved "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz" - integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== - dependencies: - binary-extensions "^2.0.0" - -is-extglob@^2.1.1: - version "2.1.1" - resolved "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz" - integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== - -is-glob@^4.0.1, is-glob@~4.0.1: - version "4.0.3" - resolved "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz" - integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== - dependencies: - is-extglob "^2.1.1" - -is-number@^7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz" - integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== - -is-potential-custom-element-name@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" - integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== - -isarray@~1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz" - integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== - -jsdom@^19.0.0: - version "19.0.0" - resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-19.0.0.tgz#93e67c149fe26816d38a849ea30ac93677e16b6a" - integrity sha512-RYAyjCbxy/vri/CfnjUWJQQtZ3LKlLnDqj+9XLNnJPgEGeirZs3hllKR20re8LUZ6o1b1X4Jat+Qd26zmP41+A== - dependencies: - abab "^2.0.5" - acorn "^8.5.0" - acorn-globals "^6.0.0" - cssom "^0.5.0" - cssstyle "^2.3.0" - data-urls "^3.0.1" - decimal.js "^10.3.1" - domexception "^4.0.0" - escodegen "^2.0.0" - form-data "^4.0.0" - html-encoding-sniffer "^3.0.0" - http-proxy-agent "^5.0.0" - https-proxy-agent "^5.0.0" - is-potential-custom-element-name "^1.0.1" - nwsapi "^2.2.0" - parse5 "6.0.1" - saxes "^5.0.1" - symbol-tree "^3.2.4" - tough-cookie "^4.0.0" - w3c-hr-time "^1.0.2" - w3c-xmlserializer "^3.0.0" - webidl-conversions "^7.0.0" - whatwg-encoding "^2.0.0" - whatwg-mimetype "^3.0.0" - whatwg-url "^10.0.0" - ws "^8.2.3" - xml-name-validator "^4.0.0" - -jsonwebtoken@^8.5.1: - version "8.5.1" - resolved "https://registry.npmjs.org/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz" - integrity sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w== - dependencies: - jws "^3.2.2" - lodash.includes "^4.3.0" - lodash.isboolean "^3.0.3" - lodash.isinteger "^4.0.4" - lodash.isnumber "^3.0.3" - lodash.isplainobject "^4.0.6" - lodash.isstring "^4.0.1" - lodash.once "^4.0.0" - ms "^2.1.1" - semver "^5.6.0" - -jwa@^1.4.1: - version "1.4.1" - resolved "https://registry.npmjs.org/jwa/-/jwa-1.4.1.tgz" - integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== - dependencies: - buffer-equal-constant-time "1.0.1" - ecdsa-sig-formatter "1.0.11" - safe-buffer "^5.0.1" - -jws@^3.2.2: - version "3.2.2" - resolved "https://registry.npmjs.org/jws/-/jws-3.2.2.tgz" - integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== - dependencies: - jwa "^1.4.1" - safe-buffer "^5.0.1" - -kareem@2.3.2: - version "2.3.2" - resolved "https://registry.npmjs.org/kareem/-/kareem-2.3.2.tgz" - integrity sha512-STHz9P7X2L4Kwn72fA4rGyqyXdmrMSdxqHx9IXon/FXluXieaFA6KJ2upcHAHxQPQ0LeM/OjLrhFxifHewOALQ== - -lodash.includes@^4.3.0: - version "4.3.0" - resolved "https://registry.npmjs.org/lodash.includes/-/lodash.includes-4.3.0.tgz" - integrity sha512-W3Bx6mdkRTGtlJISOvVD/lbqjTlPPUDTMnlXZFnVwi9NKJ6tiAk6LVdlhZMm17VZisqhKcgzpO5Wz91PCt5b0w== - -lodash.isboolean@^3.0.3: - version "3.0.3" - resolved "https://registry.npmjs.org/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz" - integrity sha512-Bz5mupy2SVbPHURB98VAcw+aHh4vRV5IPNhILUCsOzRmsTmSQ17jIuqopAentWoehktxGd9e/hbIXq980/1QJg== - -lodash.isinteger@^4.0.4: - version "4.0.4" - resolved "https://registry.npmjs.org/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz" - integrity sha512-DBwtEWN2caHQ9/imiNeEA5ys1JoRtRfY3d7V9wkqtbycnAmTvRRmbHKDV4a0EYc678/dia0jrte4tjYwVBaZUA== - -lodash.isnumber@^3.0.3: - version "3.0.3" - resolved "https://registry.npmjs.org/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz" - integrity sha512-QYqzpfwO3/CWf3XP+Z+tkQsfaLL/EnUlXWVkIk5FUPc4sBdTehEqZONuyRt2P67PXAk+NXmTBcc97zw9t1FQrw== - -lodash.isplainobject@^4.0.6: - version "4.0.6" - resolved "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz" - integrity sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA== - -lodash.isstring@^4.0.1: - version "4.0.1" - resolved "https://registry.npmjs.org/lodash.isstring/-/lodash.isstring-4.0.1.tgz" - integrity sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw== - -lodash.once@^4.0.0: - version "4.1.1" - resolved "https://registry.npmjs.org/lodash.once/-/lodash.once-4.1.1.tgz" - integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== - -math-intrinsics@^1.1.0: - version "1.1.0" - resolved "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz" - integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== - -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz" - integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== - -memory-pager@^1.0.2: - version "1.5.0" - resolved "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz" - integrity sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg== - -merge-descriptors@1.0.3: - version "1.0.3" - resolved "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.3.tgz" - integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ== - -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz" - integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== - -mime-db@1.52.0: - version "1.52.0" - resolved "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz" - integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== - -mime-types@^2.1.12, mime-types@~2.1.24, mime-types@~2.1.34: - version "2.1.35" - resolved "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - -mime@1.6.0: - version "1.6.0" - resolved "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== - -minimatch@^3.1.2: - version "3.1.2" - resolved "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz" - integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== - dependencies: - brace-expansion "^1.1.7" - -mongodb@3.7.4: - version "3.7.4" - resolved "https://registry.npmjs.org/mongodb/-/mongodb-3.7.4.tgz" - integrity sha512-K5q8aBqEXMwWdVNh94UQTwZ6BejVbFhh1uB6c5FKtPE9eUMZPUO3sRZdgIEcHSrAWmxzpG/FeODDKL388sqRmw== - dependencies: - bl "^2.2.1" - bson "^1.1.4" - denque "^1.4.1" - optional-require "^1.1.8" - safe-buffer "^5.1.2" - optionalDependencies: - saslprep "^1.0.0" - -mongoose-legacy-pluralize@1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/mongoose-legacy-pluralize/-/mongoose-legacy-pluralize-1.0.2.tgz" - integrity sha512-Yo/7qQU4/EyIS8YDFSeenIvXxZN+ld7YdV9LqFVQJzTLye8unujAWPZ4NWKfFA+RNjh+wvTWKY9Z3E5XM6ZZiQ== - -mongoose@^5.9.18: - version "5.13.23" - resolved "https://registry.npmjs.org/mongoose/-/mongoose-5.13.23.tgz" - integrity sha512-Q5bo1yYOcH2wbBPP4tGmcY5VKsFkQcjUDh66YjrbneAFB3vNKQwLvteRFLuLiU17rA5SDl3UMcMJLD9VS8ng2Q== - dependencies: - "@types/bson" "1.x || 4.0.x" - "@types/mongodb" "^3.5.27" - bson "^1.1.4" - kareem "2.3.2" - mongodb "3.7.4" - mongoose-legacy-pluralize "1.0.2" - mpath "0.8.4" - mquery "3.2.5" - ms "2.1.2" - optional-require "1.0.x" - regexp-clone "1.0.0" - safe-buffer "5.2.1" - sift "13.5.2" - sliced "1.0.1" - -mpath@0.8.4: - version "0.8.4" - resolved "https://registry.npmjs.org/mpath/-/mpath-0.8.4.tgz" - integrity sha512-DTxNZomBcTWlrMW76jy1wvV37X/cNNxPW1y2Jzd4DZkAaC5ZGsm8bfGfNOthcDuRJujXLqiuS6o3Tpy0JEoh7g== - -mquery@3.2.5: - version "3.2.5" - resolved "https://registry.npmjs.org/mquery/-/mquery-3.2.5.tgz" - integrity sha512-VjOKHHgU84wij7IUoZzFRU07IAxd5kWJaDmyUzQlbjHjyoeK5TNeeo8ZsFDtTYnSgpW6n/nMNIHvE3u8Lbrf4A== - dependencies: - bluebird "3.5.1" - debug "3.1.0" - regexp-clone "^1.0.0" - safe-buffer "5.1.2" - sliced "1.0.1" - -ms@2.0.0: - version "2.0.0" - resolved "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz" - integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== - -ms@2.1.2: - version "2.1.2" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -ms@2.1.3, ms@^2.1.1, ms@^2.1.3: - version "2.1.3" - resolved "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz" - integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== - -negotiator@0.6.3: - version "0.6.3" - resolved "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz" - integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== - -nodemon@^2.0.4: - version "2.0.22" - resolved "https://registry.npmjs.org/nodemon/-/nodemon-2.0.22.tgz" - integrity sha512-B8YqaKMmyuCO7BowF1Z1/mkPqLk6cs/l63Ojtd6otKjMx47Dq1utxfRxcavH1I7VSaL8n5BUaoutadnsX3AAVQ== - dependencies: - chokidar "^3.5.2" - debug "^3.2.7" - ignore-by-default "^1.0.1" - minimatch "^3.1.2" - pstree.remy "^1.1.8" - semver "^5.7.1" - simple-update-notifier "^1.0.7" - supports-color "^5.5.0" - touch "^3.1.0" - undefsafe "^2.0.5" - -normalize-path@^3.0.0, normalize-path@~3.0.0: - version "3.0.0" - resolved "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz" - integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== - -nwsapi@^2.2.0: - version "2.2.20" - resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.20.tgz#22e53253c61e7b0e7e93cef42c891154bcca11ef" - integrity sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA== - -object-inspect@^1.13.3: - version "1.13.4" - resolved "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz" - integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== - -on-finished@2.4.1: - version "2.4.1" - resolved "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz" - integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== - dependencies: - ee-first "1.1.1" - -optional-require@1.0.x: - version "1.0.3" - resolved "https://registry.npmjs.org/optional-require/-/optional-require-1.0.3.tgz" - integrity sha512-RV2Zp2MY2aeYK5G+B/Sps8lW5NHAzE5QClbFP15j+PWmP+T9PxlJXBOOLoSAdgwFvS4t0aMR4vpedMkbHfh0nA== - -optional-require@^1.1.8: - version "1.1.8" - resolved "https://registry.npmjs.org/optional-require/-/optional-require-1.1.8.tgz" - integrity sha512-jq83qaUb0wNg9Krv1c5OQ+58EK+vHde6aBPzLvPPqJm89UQWsvSuFy9X/OSNJnFeSOKo7btE0n8Nl2+nE+z5nA== - dependencies: - require-at "^1.0.6" - -parse5@6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" - integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== - -parseurl@~1.3.3: - version "1.3.3" - resolved "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz" - integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== - -path-to-regexp@0.1.12: - version "0.1.12" - resolved "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.12.tgz" - integrity sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ== - -picomatch@^2.0.4, picomatch@^2.2.1: - version "2.3.1" - resolved "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz" - integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== - -process-nextick-args@~2.0.0: - version "2.0.1" - resolved "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz" - integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== - -proxy-addr@~2.0.7: - version "2.0.7" - resolved "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz" - integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== - dependencies: - forwarded "0.2.0" - ipaddr.js "1.9.1" - -psl@^1.1.33: - version "1.15.0" - resolved "https://registry.yarnpkg.com/psl/-/psl-1.15.0.tgz#bdace31896f1d97cec6a79e8224898ce93d974c6" - integrity sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w== - dependencies: - punycode "^2.3.1" - -pstree.remy@^1.1.8: - version "1.1.8" - resolved "https://registry.npmjs.org/pstree.remy/-/pstree.remy-1.1.8.tgz" - integrity sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w== - -punycode@^2.1.1, punycode@^2.3.1: - version "2.3.1" - resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.1.tgz#027422e2faec0b25e1549c3e1bd8309b9133b6e5" - integrity sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg== - -qs@6.13.0: - version "6.13.0" - resolved "https://registry.npmjs.org/qs/-/qs-6.13.0.tgz" - integrity sha512-+38qI9SOr8tfZ4QmJNplMUxqjbe7LKvvZgWdExBOmd+egZTtjLB67Gu0HRX3u/XOq7UU2Nx6nsjvS16Z9uwfpg== - dependencies: - side-channel "^1.0.6" - -querystringify@^2.1.1: - version "2.2.0" - resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" - integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== - -range-parser@~1.2.1: - version "1.2.1" - resolved "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz" - integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== - -raw-body@2.5.2: - version "2.5.2" - resolved "https://registry.npmjs.org/raw-body/-/raw-body-2.5.2.tgz" - integrity sha512-8zGqypfENjCIqGhgXToC8aB2r7YrBX+AQAfIPs/Mlk+BtPTztOvTS01NRW/3Eh60J+a48lt8qsCzirQ6loCVfA== - dependencies: - bytes "3.1.2" - http-errors "2.0.0" - iconv-lite "0.4.24" - unpipe "1.0.0" - -readable-stream@^2.3.5: - version "2.3.8" - resolved "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz" - integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== - dependencies: - 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" - -readdirp@~3.6.0: - version "3.6.0" - resolved "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz" - integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== - dependencies: - picomatch "^2.2.1" - -regexp-clone@1.0.0, regexp-clone@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/regexp-clone/-/regexp-clone-1.0.0.tgz" - integrity sha512-TuAasHQNamyyJ2hb97IuBEif4qBHGjPHBS64sZwytpLEqtBQ1gPJTnOaQ6qmpET16cK14kkjbazl6+p0RRv0yw== - -require-at@^1.0.6: - version "1.0.6" - resolved "https://registry.npmjs.org/require-at/-/require-at-1.0.6.tgz" - integrity sha512-7i1auJbMUrXEAZCOQ0VNJgmcT2VOKPRl2YGJwgpHpC9CE91Mv4/4UYIUm4chGJaI381ZDq1JUicFii64Hapd8g== - -requires-port@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" - integrity sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ== - -safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: - version "5.1.2" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz" - integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== - -safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@^5.1.1, safe-buffer@^5.1.2: - version "5.2.1" - resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" - integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== - -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0": - version "2.1.2" - resolved "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz" - integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== - -saslprep@^1.0.0: - version "1.0.3" - resolved "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz" - integrity sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag== - dependencies: - sparse-bitfield "^3.0.3" - -saxes@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" - integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== - dependencies: - xmlchars "^2.2.0" - -semver@^5.6.0, semver@^5.7.1: - version "5.7.2" - resolved "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz" - integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== - -semver@~7.0.0: - version "7.0.0" - resolved "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz" - integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== - -send@0.19.0: - version "0.19.0" - resolved "https://registry.npmjs.org/send/-/send-0.19.0.tgz" - integrity sha512-dW41u5VfLXu8SJh5bwRmyYUbAoSB3c9uQh6L8h/KtsFREPWpbX1lrljJo186Jc4nmci/sGUZ9a0a0J2zgfq2hw== - 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" - -serve-static@1.16.2: - version "1.16.2" - resolved "https://registry.npmjs.org/serve-static/-/serve-static-1.16.2.tgz" - integrity sha512-VqpjJZKadQB/PEbEwvFdO43Ax5dFBZ2UECszz8bQ7pi7wt//PWe1P6MN7eCnjsatYtBT6EuiClbjSWP2WrIoTw== - dependencies: - encodeurl "~2.0.0" - escape-html "~1.0.3" - parseurl "~1.3.3" - send "0.19.0" - -setprototypeof@1.2.0: - version "1.2.0" - resolved "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz" - integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== - -side-channel-list@^1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz" - integrity sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA== - dependencies: - es-errors "^1.3.0" - object-inspect "^1.13.3" - -side-channel-map@^1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz" - integrity sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA== - dependencies: - call-bound "^1.0.2" - es-errors "^1.3.0" - get-intrinsic "^1.2.5" - object-inspect "^1.13.3" - -side-channel-weakmap@^1.0.2: - version "1.0.2" - resolved "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz" - integrity sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A== - dependencies: - call-bound "^1.0.2" - es-errors "^1.3.0" - get-intrinsic "^1.2.5" - object-inspect "^1.13.3" - side-channel-map "^1.0.1" - -side-channel@^1.0.6: - version "1.1.0" - resolved "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz" - integrity sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw== - dependencies: - es-errors "^1.3.0" - object-inspect "^1.13.3" - side-channel-list "^1.0.0" - side-channel-map "^1.0.1" - side-channel-weakmap "^1.0.2" - -sift@13.5.2: - version "13.5.2" - resolved "https://registry.npmjs.org/sift/-/sift-13.5.2.tgz" - integrity sha512-+gxdEOMA2J+AI+fVsCqeNn7Tgx3M9ZN9jdi95939l1IJ8cZsqS8sqpJyOkic2SJk+1+98Uwryt/gL6XDaV+UZA== - -simple-update-notifier@^1.0.7: - version "1.1.0" - resolved "https://registry.npmjs.org/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz" - integrity sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg== - dependencies: - semver "~7.0.0" - -sliced@1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/sliced/-/sliced-1.0.1.tgz" - integrity sha512-VZBmZP8WU3sMOZm1bdgTadsQbcscK0UM8oKxKVBs4XAhUo2Xxzm/OFMGBkPusxw9xL3Uy8LrzEqGqJhclsr0yA== - -source-map@~0.6.1: - version "0.6.1" - resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" - integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== - -sparse-bitfield@^3.0.3: - version "3.0.3" - resolved "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz" - integrity sha512-kvzhi7vqKTfkh0PZU+2D2PIllw2ymqJKujUcyPMd9Y75Nv4nPbGJZXNhxsgdQab2BmlDct1YnfQCguEvHr7VsQ== - dependencies: - memory-pager "^1.0.2" - -statuses@2.0.1: - version "2.0.1" - resolved "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz" - integrity sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ== - -string_decoder@~1.1.1: - version "1.1.1" - resolved "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz" - integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== - dependencies: - safe-buffer "~5.1.0" - -supports-color@^5.5.0: - version "5.5.0" - resolved "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz" - integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== - dependencies: - has-flag "^3.0.0" - -symbol-tree@^3.2.4: - version "3.2.4" - resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" - integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== - -to-regex-range@^5.0.1: - version "5.0.1" - resolved "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz" - integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== - dependencies: - is-number "^7.0.0" - -toidentifier@1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz" - integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== - -touch@^3.1.0: - version "3.1.1" - resolved "https://registry.npmjs.org/touch/-/touch-3.1.1.tgz" - integrity sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA== - -tough-cookie@^4.0.0: - version "4.1.4" - resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.4.tgz#945f1461b45b5a8c76821c33ea49c3ac192c1b36" - integrity sha512-Loo5UUvLD9ScZ6jh8beX1T6sO1w2/MpCRpEP7V280GKMVUQ0Jzar2U3UJPsrdbziLEMMhu3Ujnq//rhiFuIeag== - dependencies: - psl "^1.1.33" - punycode "^2.1.1" - universalify "^0.2.0" - url-parse "^1.5.3" - -tr46@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-3.0.0.tgz#555c4e297a950617e8eeddef633c87d4d9d6cbf9" - integrity sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA== - dependencies: - punycode "^2.1.1" - -type-is@~1.6.18: - version "1.6.18" - resolved "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz" - integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.24" - -undefsafe@^2.0.5: - version "2.0.5" - resolved "https://registry.npmjs.org/undefsafe/-/undefsafe-2.0.5.tgz" - integrity sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA== - -undici-types@~6.21.0: - version "6.21.0" - resolved "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz" - integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ== - -universalify@^0.2.0: - version "0.2.0" - resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.2.0.tgz#6451760566fa857534745ab1dde952d1b1761be0" - integrity sha512-CJ1QgKmNg3CwvAv/kOFmtnEN05f0D/cn9QntgNOQlQF9dgvVTHj3t+8JPdjqawCHk7V/KA+fbUqzZ9XWhcqPUg== - -unpipe@1.0.0, unpipe@~1.0.0: - version "1.0.0" - resolved "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz" - integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== - -url-parse@^1.5.3: - version "1.5.10" - resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.10.tgz#9d3c2f736c1d75dd3bd2be507dcc111f1e2ea9c1" - integrity sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ== - dependencies: - querystringify "^2.1.1" - requires-port "^1.0.0" - -util-deprecate@~1.0.1: - version "1.0.2" - resolved "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz" - integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== - -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz" - integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== - -vary@~1.1.2: - version "1.1.2" - resolved "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz" - integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== - -w3c-hr-time@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" - integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== - dependencies: - browser-process-hrtime "^1.0.0" - -w3c-xmlserializer@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-3.0.0.tgz#06cdc3eefb7e4d0b20a560a5a3aeb0d2d9a65923" - integrity sha512-3WFqGEgSXIyGhOmAFtlicJNMjEps8b1MG31NCA0/vOF9+nKMUW1ckhi9cnNHmf88Rzw5V+dwIwsm2C7X8k9aQg== - dependencies: - xml-name-validator "^4.0.0" - -webidl-conversions@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-7.0.0.tgz#256b4e1882be7debbf01d05f0aa2039778ea080a" - integrity sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g== - -whatwg-encoding@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-2.0.0.tgz#e7635f597fd87020858626805a2729fa7698ac53" - integrity sha512-p41ogyeMUrw3jWclHWTQg1k05DSVXPLcVxRTYsXUk+ZooOCZLcoYgPZ/HL/D/N+uQPOtcp1me1WhBEaX02mhWg== - dependencies: - iconv-lite "0.6.3" - -whatwg-mimetype@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-3.0.0.tgz#5fa1a7623867ff1af6ca3dc72ad6b8a4208beba7" - integrity sha512-nt+N2dzIutVRxARx1nghPKGv1xHikU7HKdfafKkLNLindmPU/ch3U31NOCGGA/dmPcmb1VlofO0vnKAcsm0o/Q== - -whatwg-url@^10.0.0: - version "10.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-10.0.0.tgz#37264f720b575b4a311bd4094ed8c760caaa05da" - integrity sha512-CLxxCmdUby142H5FZzn4D8ikO1cmypvXVQktsgosNy4a4BHrDHeciBBGZhb0bNoR5/MltoCatso+vFjjGx8t0w== - dependencies: - tr46 "^3.0.0" - webidl-conversions "^7.0.0" - -whatwg-url@^11.0.0: - version "11.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-11.0.0.tgz#0a849eebb5faf2119b901bb76fd795c2848d4018" - integrity sha512-RKT8HExMpoYx4igMiVMY83lN6UeITKJlBQ+vR/8ZJ8OCdSiN3RwCq+9gH0+Xzj0+5IrM6i4j/6LuvzbZIQgEcQ== - dependencies: - tr46 "^3.0.0" - webidl-conversions "^7.0.0" - -ws@^8.2.3: - version "8.18.1" - resolved "https://registry.yarnpkg.com/ws/-/ws-8.18.1.tgz#ea131d3784e1dfdff91adb0a4a116b127515e3cb" - integrity sha512-RKW2aJZMXeMxVpnZ6bck+RswznaxmzdULiBr6KY7XkTnW8uvt0iT9H5DkHUChXrc+uurzwa0rVI16n/Xzjdz1w== - -xml-name-validator@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-4.0.0.tgz#79a006e2e63149a8600f15430f0a4725d1524835" - integrity sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw== - -xmlchars@^2.2.0: - version "2.2.0" - resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" - integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== diff --git a/test/it/tsconfig.json b/test/it/tsconfig.json deleted file mode 100644 index 99aad9db..00000000 --- a/test/it/tsconfig.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "compilerOptions": { - "allowJs": true, - "allowSyntheticDefaultImports": true, - "baseUrl": "src", - "declaration": true, - "esModuleInterop": true, - "lib": ["esnext"], - "moduleResolution": "Node", - "noUnusedLocals": false, - "noUnusedParameters": false, - "skipLibCheck": true, - "types": ["node"], - "module": "esnext", - "target": "esnext" - } -} From 8dd763fcbc1ea5b5c78ad0d8e72200ab6d8d93dd Mon Sep 17 00:00:00 2001 From: Noah Santschi-Cooney Date: Tue, 25 Nov 2025 16:19:21 +0000 Subject: [PATCH 2/2] chore: remove cli integration tests --- .eslintrc.json | 4 +- .github/workflows/test.yml | 6 - .gitignore | 1 - CONTRIBUTING.md | 38 -- integration/run_its.sh | 153 ----- .../scenarios/maven/component_request_json | 1 - .../scenarios/maven/expected_component | 234 ------- .../scenarios/maven/expected_stack_html | 598 ------------------ .../scenarios/maven/expected_stack_json | 234 ------- .../maven/expected_stack_json_summary | 22 - integration/scenarios/maven/pom.xml | 18 - .../redhat-dependency-analytics-report.json | 219 ------- .../scenarios/maven/stack_request_dot_graph | 3 - integration/server/mock_server.js | 133 ---- integration/server/mock_server_config.json | 30 - integration/testers/cli/package.json | 11 - integration/testers/javascript/index.js | 33 - integration/testers/javascript/package.json | 11 - integration/testers/typescript/index.ts | 24 - integration/testers/typescript/package.json | 18 - integration/testers/typescript/tsconfig.json | 17 - testers/cli/package-lock.json | 6 + 22 files changed, 7 insertions(+), 1807 deletions(-) delete mode 100755 integration/run_its.sh delete mode 100644 integration/scenarios/maven/component_request_json delete mode 100644 integration/scenarios/maven/expected_component delete mode 100644 integration/scenarios/maven/expected_stack_html delete mode 100644 integration/scenarios/maven/expected_stack_json delete mode 100644 integration/scenarios/maven/expected_stack_json_summary delete mode 100644 integration/scenarios/maven/pom.xml delete mode 100644 integration/scenarios/maven/redhat-dependency-analytics-report.json delete mode 100644 integration/scenarios/maven/stack_request_dot_graph delete mode 100644 integration/server/mock_server.js delete mode 100644 integration/server/mock_server_config.json delete mode 100644 integration/testers/cli/package.json delete mode 100644 integration/testers/javascript/index.js delete mode 100644 integration/testers/javascript/package.json delete mode 100644 integration/testers/typescript/index.ts delete mode 100644 integration/testers/typescript/package.json delete mode 100644 integration/testers/typescript/tsconfig.json create mode 100644 testers/cli/package-lock.json diff --git a/.eslintrc.json b/.eslintrc.json index 6b62fc08..465e6716 100644 --- a/.eslintrc.json +++ b/.eslintrc.json @@ -38,7 +38,5 @@ } } }, - "ignorePatterns": [ - "integration" - ] + "ignorePatterns": [] } diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 9bdcb1d7..b8e9782d 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -94,12 +94,6 @@ jobs: - name: Compile project run: npm run compile - - name: Run CLI integration tests - working-directory: integration - run: bash ./run_its.sh - env: - TRUSTIFY_DA_BACKEND_URL: 'https://exhort.stage.devshift.net' - - name: Upload coverage reports if: ${{ matrix.node == env.MAIN_NODE_VER }} uses: actions/upload-artifact@v4 diff --git a/.gitignore b/.gitignore index 8afaeecf..5291ecd7 100644 --- a/.gitignore +++ b/.gitignore @@ -4,7 +4,6 @@ node_modules dist http_requests json_responses -integration/**/package-lock.json unit-tests-result.json .gradle build diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 8f285288..adbb4648 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -71,44 +71,6 @@ excluded from both linting and coverage. * Add Integration Test scenarios for the added provider in the [trustification/integration](https://github.com/trustification/exhort-integration-tests/) repository. * Update the documentation. This document and [README.md](README.md). -### Integration Tests - -Integration tests are performed with a _bash_ script executing _node_ scripts.
-In [integration/run_its.sh](integration/run_its.sh) we start with a function called _match_ taking 2 arguments: -* `$1` is a file name for the holding the expected result (scenarios) -* `$2` is a command execution for evaluation (testers) - -The _match_ function will match the content of the file to the output of the command. -Typically, test cases in [integration/run_its.sh](integration/run_its.sh) will invoke the _match_ function with -a scenario from the [integration/scenarios](integration/scenarios) and a _node_ command invoking one of the _node_ -scripts in [integration/testers](integration/testers).
- -We have 3 _testers_: -* [integration/testers/cli](integration/testers/cli) is a _package.json_ used for installing the _ESM module_. - Invoking the CLI Script is done against the _@trustify-da/trustify-da-javascript-client/dist/src/cli.js_ in the tester's - _node_modules_. -* [integration/testers/javascript](integration/testers/javascript) is a _javascript_ script invoking the _ESM module_. -* [integration/testers/typescript](integration/testers/typescript) is a _typescript_ script invoking the _ESM module_. - -Run integration tests from the project's root: - -> Don't forget to run `npm run compile` before running the integration tests. - -```shell -(cd integration/ && bash ./run_its.sh) -``` - -Integration tests are executed against a mocked _Backend_ server.
-If you need to run against the actual _Backend_ server, use the _TRUSTIFY_DA_ITS_USE_REAL_API_ environment variable: - -```shell -(cd integration/ && TRUSTIFY_DA_ITS_USE_REAL_API=true bash ./run_its.sh) -``` - -The mocked server implementation is [integration/server/mock_server.js](integration/server/mock_server.js). See the -[integration/server/mock_server_config.json](integration/server/mock_server_config.json) for configuring the mock -server. - ## Certificate of Origin By contributing to this project you agree to the Developer Certificate of diff --git a/integration/run_its.sh b/integration/run_its.sh deleted file mode 100755 index 1e1536d8..00000000 --- a/integration/run_its.sh +++ /dev/null @@ -1,153 +0,0 @@ -#!/usr/bin/env bash - -#!!!!! DO NOT FORGET 'npm run compile' on root prior to running this script !!!!# - -# set TRUSTIFY_DA_ITS_USE_REAL_API=true to use the real backend -TRUSTIFY_DA_ITS_USE_REAL_API="${TRUSTIFY_DA_ITS_USE_REAL_API:=false}" - -# utility function for wrapping up and exiting -# takes an exit code -cleanup() { - # PID is set when we start the mock server - if [ -n "${PID}" ]; then - echo "STOPPING Mock HTTP Server" - if ! kill "$PID"; then - echo "- FAILED Killing PID $PID" - else - echo "- SUCCESSFUL" - fi - fi - exit "$1" -} - -matchConstant() { - TEST_MESSAGE="$3" - sleep 1 - echo "$TEST_MESSAGE" - if [[ "$1" != "$2" ]]; then - echo "- FAILED" - echo "expected = $1, actual= $2" - cleanup 1 - fi - echo "- PASSED" - echo -} - -########################################## -###### Verify Required Tools Exists ###### -########################################## -echo "VERIFYING Node and NPM availability" -if ! node --version > /dev/null 2>&1; then - RC="$?" - echo "- FAILED Node not found" - cleanup $RC -fi - -if ! npm --version > /dev/null 2>&1; then - RC="$?" - echo "- FAILED NPM not found" - cleanup $RC -fi -echo "- SUCCESSFUL" - -echo "VERIFYING Java and Maven availability" -if ! java --version > /dev/null 2>&1; then - RC="$?" - echo "- FAILED Java not found" - cleanup $RC -fi - -if ! mvn --version > /dev/null 2>&1; then - RC="$?" - echo "- FAILED Maven not found" - cleanup $RC -fi -echo "- SUCCESSFUL" - - -########################################## -###### Preparing CLI Tests ###### -########################################## -echo "PREPARING JavaScript CLI tests environment" -rm -rf testers/cli/node_modules -rm -f testers/cli/package-lock.json -if ! npm --prefix testers/cli install --silent ; then - RC="$?" - echo "- FAILED Installing trustify-da-javascript-client environment for testing" - cleanup $RC -fi -echo "- SUCCESSFUL" -mkdir -p ./responses -#### JAVA MAVEN -echo "RUNNING JavaScript CLI integration test for Stack Analysis report in Html for Java Maven" - -testers/cli/node_modules/.bin/trustify-da-javascript-client stack scenarios/maven/pom.xml --html > ./responses/stack.html -RC="$?" -if [ "$RC" -ne 0 ]; then - echo "- FAILED, return $RC from invocation" - cleanup $RC -fi -RESPONSE_CONTENT=$(grep -i "DOCTYPE html" ./responses/stack.html) -if [[ -z "${RESPONSE_CONTENT}" ]]; then - echo "- FAILED, response is not valid html: $RESPONSE_CONTENT" - cleanup 1 -fi -echo "- PASSED" -echo - -echo 'RUNNING JavaScript CLI integration test for Stack Analysis report summary of snyk provider for Java Maven' -testers/cli/node_modules/.bin/trustify-da-javascript-client stack scenarios/maven/pom.xml --summary > ./responses/stack-summary.json -RC="$?" -if [ "$RC" -ne 0 ]; then - echo "- FAILED, return $RC from invocation" - cleanup $RC -fi - -if ! RESPONSE_CONTENT=$(jq . ./responses/stack-summary.json); then - RC="$?" - echo "- FAILED, response is not a valid json: $RESPONSE_CONTENT" - cleanup $RC -fi -echo -echo "$RESPONSE_CONTENT" -echo "- PASSED" -echo - -echo "RUNNING JavaScript CLI integration test for Stack Analysis report in Json for Java Maven" -testers/cli/node_modules/.bin/trustify-da-javascript-client stack scenarios/maven/pom.xml > ./responses/stack.json -RC="$?" -if [ "$RC" -ne 0 ]; then - echo "- FAILED, return $RC from invocation" - cleanup $RC -fi - -if ! RESPONSE_CONTENT=$(jq . ./responses/stack.json); then - RC="$?" - echo "- FAILED, response is not a valid json: $RESPONSE_CONTENT" - cleanup $RC -fi - -StatusCodeTC=$(jq '.providers["trusted-content"].status.code' ./responses/stack.json) -matchConstant "200" "$StatusCodeTC" "Check that Response code from Trusted Content is OK ( Http Status = 200)..." - -#StatusCodeSnyk=$(jq '.providers.snyk.status.code' ./responses/stack.json) -#matchConstant "200" "$StatusCodeSnyk" "Check that Response code from Snyk Provider is OK ( Http Status = 200)..." - -echo "RUNNING JavaScript CLI integration test for Component Analysis report for Java Maven" -eval "testers/cli/node_modules/.bin/trustify-da-javascript-client component scenarios/maven/pom.xml" > ./responses/component.json -RC="$?" -if [ "$RC" -ne 0 ]; then - echo "- FAILED, return $RC from invocation" - cleanup $RC -fi - -if ! RESPONSE_CONTENT=$(jq . ./responses/component.json); then - RC="$?" - echo "- FAILED, response is not a valid json, got $RC from parsing the file" - cleanup $RC -fi - -StatusCodeTC=$(jq '.providers["trusted-content"].status.code' ./responses/stack.json) -matchConstant "200" "$StatusCodeTC" "Check that Response code from Trusted Content is OK ( Http Status = 200)..." - -cleanup 0 diff --git a/integration/scenarios/maven/component_request_json b/integration/scenarios/maven/component_request_json deleted file mode 100644 index ab352940..00000000 --- a/integration/scenarios/maven/component_request_json +++ /dev/null @@ -1 +0,0 @@ -[{"name":"log4j:log4j","version":"1.2.17"}] \ No newline at end of file diff --git a/integration/scenarios/maven/expected_component b/integration/scenarios/maven/expected_component deleted file mode 100644 index 77da1fa6..00000000 --- a/integration/scenarios/maven/expected_component +++ /dev/null @@ -1,234 +0,0 @@ -{ - "summary": { - "dependencies": { - "scanned": 1, - "transitive": 0 - }, - "vulnerabilities": { - "direct": 1, - "total": 7, - "critical": 1, - "high": 3, - "medium": 2, - "low": 1 - }, - "providerStatuses": [ - { - "ok": true, - "provider": "snyk", - "status": 200, - "message": "OK" - } - ] - }, - "dependencies": [ - { - "ref": "pkg:maven/log4j/log4j@1.2.17", - "issues": [ - { - "id": "SNYK-JAVA-LOG4J-572732", - "title": "Deserialization of Untrusted Data", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "Low", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "exploitCodeMaturity": "Proof of concept code", - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:P" - }, - "cvssScore": 9.8, - "severity": "CRITICAL", - "cves": [ - "CVE-2019-17571" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-2342645", - "title": "SQL Injection", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 8.1, - "severity": "HIGH", - "cves": [ - "CVE-2022-23305" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-2342646", - "title": "Deserialization of Untrusted Data", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 8.1, - "severity": "HIGH", - "cves": [ - "CVE-2022-23307" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-2342647", - "title": "Deserialization of Untrusted Data", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 8.1, - "severity": "HIGH", - "cves": [ - "CVE-2022-23302" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-2316893", - "title": "Arbitrary Code Execution", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "High", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "exploitCodeMaturity": "Proof of concept code", - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H/E:P" - }, - "cvssScore": 6.6, - "severity": "MEDIUM", - "cves": [ - "CVE-2021-4104" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-3358774", - "title": "Denial of Service (DoS)", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "None", - "integrityImpact": "None", - "availabilityImpact": "High", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H" - }, - "cvssScore": 5.9, - "severity": "MEDIUM", - "cves": [ - "CVE-2023-26464" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-1300176", - "title": "Man-in-the-Middle (MitM)", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "Low", - "integrityImpact": "None", - "availabilityImpact": "None", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N" - }, - "cvssScore": 3.7, - "severity": "LOW", - "cves": [ - "CVE-2020-9488" - ], - "unique": false - } - ], - "transitive": [], - "recommendation": null, - "remediations": {}, - "highestVulnerability": { - "id": "SNYK-JAVA-LOG4J-1300176", - "title": "Man-in-the-Middle (MitM)", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "Low", - "integrityImpact": "None", - "availabilityImpact": "None", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N" - }, - "cvssScore": 3.7, - "severity": "LOW", - "cves": [ - "CVE-2020-9488" - ], - "unique": false - } - } - ] -} diff --git a/integration/scenarios/maven/expected_stack_html b/integration/scenarios/maven/expected_stack_html deleted file mode 100644 index 24592baa..00000000 --- a/integration/scenarios/maven/expected_stack_html +++ /dev/null @@ -1,598 +0,0 @@ - - - Combined Shape - - - - - - - - - - - - - - - - - - - - - - - - - - Dependency Analysis - - - -

- -
-
Commonly Known Vulnerabilities
-
-
-
-
- -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - -
#Dependencies# Direct# TransitiveHighest CVSSHighest SeverityRemediation available
-
-

Details of the dependency: - log4j:log4j -

-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
SeverityExploit MaturityDescriptionCVSSCVERemediation
- - CRITICAL - - - Proof of concept codeDeserialization of Untrusted Data -
-
9.8/10
-
-
-
-
- -
- CVE-2019-17571 - - - SNYK-JAVA-LOG4J-572732 - -
- - HIGH - - - No known exploitSQL Injection -
-
8.1/10
-
-
-
-
- -
- CVE-2022-23305 - - - SNYK-JAVA-LOG4J-2342645 - -
- - HIGH - - - No known exploitDeserialization of Untrusted Data -
-
8.1/10
-
-
-
-
- -
- CVE-2022-23307 - - - SNYK-JAVA-LOG4J-2342646 - -
- - HIGH - - - No known exploitDeserialization of Untrusted Data -
-
8.1/10
-
-
-
-
- -
- CVE-2022-23302 - - - SNYK-JAVA-LOG4J-2342647 - -
- - MEDIUM - - - Proof of concept codeArbitrary Code Execution -
-
6.6/10
-
-
-
-
- -
- CVE-2021-4104 - - - SNYK-JAVA-LOG4J-2316893 - -
- - MEDIUM - - - No known exploitDenial of Service (DoS) -
-
5.9/10
-
-
-
-
- -
- CVE-2023-26464 - - - SNYK-JAVA-LOG4J-3358774 - -
- - LOW - - - No known exploitMan-in-the-Middle (MitM) -
-
3.7/10
-
-
-
-
- -
- CVE-2020-9488 - - - SNYK-JAVA-LOG4J-1300176 - -
-
- -
- - - - - - - - - - - - - - -
DependenciesSeverityExploit MaturityDescriptionCVSSCVERemediation
-
-
-
-
- - -
- - - - - - - diff --git a/integration/scenarios/maven/expected_stack_json b/integration/scenarios/maven/expected_stack_json deleted file mode 100644 index 77da1fa6..00000000 --- a/integration/scenarios/maven/expected_stack_json +++ /dev/null @@ -1,234 +0,0 @@ -{ - "summary": { - "dependencies": { - "scanned": 1, - "transitive": 0 - }, - "vulnerabilities": { - "direct": 1, - "total": 7, - "critical": 1, - "high": 3, - "medium": 2, - "low": 1 - }, - "providerStatuses": [ - { - "ok": true, - "provider": "snyk", - "status": 200, - "message": "OK" - } - ] - }, - "dependencies": [ - { - "ref": "pkg:maven/log4j/log4j@1.2.17", - "issues": [ - { - "id": "SNYK-JAVA-LOG4J-572732", - "title": "Deserialization of Untrusted Data", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "Low", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "exploitCodeMaturity": "Proof of concept code", - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H/E:P" - }, - "cvssScore": 9.8, - "severity": "CRITICAL", - "cves": [ - "CVE-2019-17571" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-2342645", - "title": "SQL Injection", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 8.1, - "severity": "HIGH", - "cves": [ - "CVE-2022-23305" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-2342646", - "title": "Deserialization of Untrusted Data", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 8.1, - "severity": "HIGH", - "cves": [ - "CVE-2022-23307" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-2342647", - "title": "Deserialization of Untrusted Data", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 8.1, - "severity": "HIGH", - "cves": [ - "CVE-2022-23302" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-2316893", - "title": "Arbitrary Code Execution", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "High", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "exploitCodeMaturity": "Proof of concept code", - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:H/UI:N/S:U/C:H/I:H/A:H/E:P" - }, - "cvssScore": 6.6, - "severity": "MEDIUM", - "cves": [ - "CVE-2021-4104" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-3358774", - "title": "Denial of Service (DoS)", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "None", - "integrityImpact": "None", - "availabilityImpact": "High", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H" - }, - "cvssScore": 5.9, - "severity": "MEDIUM", - "cves": [ - "CVE-2023-26464" - ], - "unique": false - }, - { - "id": "SNYK-JAVA-LOG4J-1300176", - "title": "Man-in-the-Middle (MitM)", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "Low", - "integrityImpact": "None", - "availabilityImpact": "None", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N" - }, - "cvssScore": 3.7, - "severity": "LOW", - "cves": [ - "CVE-2020-9488" - ], - "unique": false - } - ], - "transitive": [], - "recommendation": null, - "remediations": {}, - "highestVulnerability": { - "id": "SNYK-JAVA-LOG4J-1300176", - "title": "Man-in-the-Middle (MitM)", - "source": "snyk", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "Low", - "integrityImpact": "None", - "availabilityImpact": "None", - "exploitCodeMaturity": null, - "remediationLevel": null, - "reportConfidence": null, - "cvss": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N" - }, - "cvssScore": 3.7, - "severity": "LOW", - "cves": [ - "CVE-2020-9488" - ], - "unique": false - } - } - ] -} diff --git a/integration/scenarios/maven/expected_stack_json_summary b/integration/scenarios/maven/expected_stack_json_summary deleted file mode 100644 index 62359470..00000000 --- a/integration/scenarios/maven/expected_stack_json_summary +++ /dev/null @@ -1,22 +0,0 @@ -{ - "dependencies": { - "scanned": 1, - "transitive": 0 - }, - "vulnerabilities": { - "direct": 1, - "total": 7, - "critical": 1, - "high": 3, - "medium": 2, - "low": 1 - }, - "providerStatuses": [ - { - "ok": true, - "provider": "snyk", - "status": 200, - "message": "OK" - } - ] -} diff --git a/integration/scenarios/maven/pom.xml b/integration/scenarios/maven/pom.xml deleted file mode 100644 index 20f8bdfc..00000000 --- a/integration/scenarios/maven/pom.xml +++ /dev/null @@ -1,18 +0,0 @@ - - - 4.0.0 - - pom-with-deps-no-ignore - pom-with-dependency-not-ignored-for-tests - 0.0.1 - - - - log4j - log4j - 1.2.17 - - - - diff --git a/integration/scenarios/maven/redhat-dependency-analytics-report.json b/integration/scenarios/maven/redhat-dependency-analytics-report.json deleted file mode 100644 index f467d5bd..00000000 --- a/integration/scenarios/maven/redhat-dependency-analytics-report.json +++ /dev/null @@ -1,219 +0,0 @@ -{ - "report": { - "scanned": { - "total": 1, - "direct": 1, - "transitive": 0 - }, - "providers": { - "trusted-content": { - "status": { - "ok": true, - "name": "trusted-content", - "code": 200, - "message": "OK" - }, - "sources": {} - }, - "osv": { - "status": { - "ok": true, - "name": "osv", - "code": 200, - "message": "OK" - }, - "sources": { - "osv": { - "summary": { - "direct": 6, - "transitive": 0, - "total": 6, - "dependencies": 1, - "critical": 3, - "high": 3, - "medium": 0, - "low": 0, - "remediations": 0, - "recommendations": 0, - "unscanned": 0 - }, - "dependencies": [ - { - "ref": "pkg:maven/log4j/log4j@1.2.17", - "issues": [ - { - "id": "CVE-2022-23307", - "title": "Deserialization of Untrusted Data in Apache Log4j", - "source": "osv", - "cvss": { - "attackVector": "Network", - "attackComplexity": "Low", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "cvss": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 9.8, - "severity": "CRITICAL", - "cves": [ - "CVE-2022-23307" - ], - "unique": false, - "remediation": {} - }, - { - "id": "CVE-2022-23305", - "title": "SQL Injection in Log4j 1.2.x", - "source": "osv", - "cvss": { - "attackVector": "Network", - "attackComplexity": "Low", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "cvss": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 9.8, - "severity": "CRITICAL", - "cves": [ - "CVE-2022-23305" - ], - "unique": false, - "remediation": {} - }, - { - "id": "CVE-2019-17571", - "title": "Deserialization of Untrusted Data in Log4j", - "source": "osv", - "cvss": { - "attackVector": "Network", - "attackComplexity": "Low", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "cvss": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 9.8, - "severity": "CRITICAL", - "cves": [ - "CVE-2019-17571" - ], - "unique": false, - "remediation": {} - }, - { - "id": "CVE-2022-23302", - "title": "Deserialization of Untrusted Data in Log4j 1.x", - "source": "osv", - "cvss": { - "attackVector": "Network", - "attackComplexity": "Low", - "privilegesRequired": "Low", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "cvss": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 8.8, - "severity": "HIGH", - "cves": [ - "CVE-2022-23302" - ], - "unique": false, - "remediation": {} - }, - { - "id": "CVE-2021-4104", - "title": "JMSAppender in Log4j 1.2 is vulnerable to deserialization of untrusted data", - "source": "osv", - "cvss": { - "attackVector": "Network", - "attackComplexity": "High", - "privilegesRequired": "Low", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "cvss": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 7.5, - "severity": "HIGH", - "cves": [ - "CVE-2021-4104" - ], - "unique": false, - "remediation": {} - }, - { - "id": "CVE-2023-26464", - "title": "Apache Log4j 1.x (EOL) allows Denial of Service (DoS)", - "source": "osv", - "cvss": { - "attackVector": "Network", - "attackComplexity": "Low", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "None", - "integrityImpact": "None", - "availabilityImpact": "High", - "cvss": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H" - }, - "cvssScore": 7.5, - "severity": "HIGH", - "cves": [ - "CVE-2023-26464" - ], - "unique": false, - "remediation": { - "fixedIn": [ - "2.0" - ] - } - } - ], - "transitive": [], - "highestVulnerability": { - "id": "CVE-2022-23307", - "title": "Deserialization of Untrusted Data in Apache Log4j", - "source": "osv", - "cvss": { - "attackVector": "Network", - "attackComplexity": "Low", - "privilegesRequired": "None", - "userInteraction": "None", - "scope": "Unchanged", - "confidentialityImpact": "High", - "integrityImpact": "High", - "availabilityImpact": "High", - "cvss": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H" - }, - "cvssScore": 9.8, - "severity": "CRITICAL", - "cves": [ - "CVE-2022-23307" - ], - "unique": false, - "remediation": {} - } - } - ] - } - } - } - } - }, - "exit_code": "0" -} diff --git a/integration/scenarios/maven/stack_request_dot_graph b/integration/scenarios/maven/stack_request_dot_graph deleted file mode 100644 index 660153e8..00000000 --- a/integration/scenarios/maven/stack_request_dot_graph +++ /dev/null @@ -1,3 +0,0 @@ -digraph "pom-with-deps-no-ignore:pom-with-dependency-not-ignored-for-tests:jar:0.0.1" { - "pom-with-deps-no-ignore:pom-with-dependency-not-ignored-for-tests:jar:0.0.1" -> "log4j:log4j:jar:1.2.17:compile" ; - } \ No newline at end of file diff --git a/integration/server/mock_server.js b/integration/server/mock_server.js deleted file mode 100644 index 9052e618..00000000 --- a/integration/server/mock_server.js +++ /dev/null @@ -1,133 +0,0 @@ -import fs from 'fs' -import http from 'http' -import path from 'path' - -let args = process.argv.slice(1) - -let scenarios = path.resolve(args[0], '..', '..', 'scenarios') -let config = JSON.parse(fs.readFileSync(args[1]).toString()) - -function listener (req, res) { - // reject non-POST requests - if ('POST' !== req.method) { - res.writeHead(405) - res.end(`${req.method} not allowed`) - return - } - // reject requests without a body - if (!req.headers['content-length']) { - res.writeHead(411) - res.end('payload required') - return - } - // reject if unknown endpoint - let stripEcosystem = req.url.slice(0, req.url.lastIndexOf('/')) - if (!Object.values(config['endpoints']).includes(stripEcosystem)) { - res.writeHead(404) - res.end(`unknown endpoint ${req.url}`) - return - } - // iterate over all supported ecosystems - let accept = req.headers['accept'] - for (let ecosystem in config['ecosystems']) { - // handle component analysis for current ecosystem - if (`${config['endpoints']['component']}/${ecosystem}` === req.url) { - // reject unsupported media types requests - if (!'application/json' === accept) { - res.writeHead(415) - res.end(`${accept} is not supported`) - return - } - // load expected request from file - let requestBodyFile = config['ecosystems'][ecosystem]['component']['request']['body'] - let expectedRequestBody = fs.readFileSync( - path.resolve(scenarios, ecosystem, requestBodyFile) - ) - // load return response from file - let responseFile = config['ecosystems'][ecosystem]['component']['response']['json'] - let componentResponse = fs.readFileSync( - path.resolve(scenarios, ecosystem, responseFile) - ) - // operate on body - req.on('data', data => { - if (expectedRequestBody.toString().replace(/\s+/g, '') - === data.toString().replace(/\s+/g, '')) { - // if body as expected - res.setHeader('ContentType', 'application/json') - res.end(componentResponse.toString()) - return - } - res.writeHead(400) - res.end('payload not as expected') - }) - } - // handle stack analysis for current ecosystem - if (`${config['endpoints']['stack']}/${ecosystem}` === req.url) { - // reject unsupported media types requests - if (!['application/json', 'text/html'].includes(accept)) { - res.writeHead(415) - res.end(`${accept} is not supported`) - return - } - // if requested stack json report - if ('application/json' === accept) { - // load expected request from file - let requestBodyFile = config['ecosystems'][ecosystem]['stack']['request']['body'] - let expectedRequestBody = fs.readFileSync( - path.resolve(scenarios, ecosystem, requestBodyFile) - ) - // load return response from file - let responseFile = config['ecosystems'][ecosystem]['stack']['response']['json'] - let stackResponse = fs.readFileSync( - path.resolve(scenarios, ecosystem, responseFile) - ) - // operate on body - req.on('data', data => { - if (expectedRequestBody.toString().replace(/\s+/g, '') - === data.toString().replace(/\s+/g, '')) { - // if body as expected - res.setHeader('ContentType', 'application/json') - res.end(stackResponse.toString()) - return - } - res.writeHead(400) - res.end('payload not as expected') - }) - } - // if requested stack html report - if ('text/html' === accept) { - // load expected request from file - let requestBodyFile = config['ecosystems'][ecosystem]['stack']['request']['body'] - let expectedRequestBody = fs.readFileSync( - path.resolve(scenarios, ecosystem, requestBodyFile) - ) - // load return response from file - let responseFile = config['ecosystems'][ecosystem]['stack']['response']['html'] - let stackResponse = fs.readFileSync( - path.resolve(scenarios, ecosystem, responseFile) - ) - // operate on body - req.on('data', data => { - if (expectedRequestBody.toString().replace(/\s+/g, '') - === data.toString().replace(/\s+/g, '')) { - // if body as expected - res.setHeader('ContentType', 'text/html') - res.end(stackResponse.toString()) - return - } - res.writeHead(400) - res.end('payload not as expected') - }) - } - } - } -} - -// create and start the server -let server = http.createServer(listener) -server.listen(config['port'], config['host']) -// close server after configured seconds -server.close(async () => { - await new Promise(resolve => setTimeout(resolve, config['up_for'] * 1000)) - process.exit(0) -}) diff --git a/integration/server/mock_server_config.json b/integration/server/mock_server_config.json deleted file mode 100644 index 6d8c2349..00000000 --- a/integration/server/mock_server_config.json +++ /dev/null @@ -1,30 +0,0 @@ -{ - "host": "localhost", - "port": 9432, - "up_for": 300, - "endpoints": { - "component": "/api/v3/component-analysis", - "stack": "/api/v3/dependency-analysis" - }, - "ecosystems": { - "maven": { - "component": { - "request": { - "body": "component_request_json" - }, - "response": { - "json": "expected_component" - } - }, - "stack": { - "request": { - "body": "stack_request_dot_graph" - }, - "response": { - "html": "expected_stack_html", - "json": "expected_stack_json" - } - } - } - } -} diff --git a/integration/testers/cli/package.json b/integration/testers/cli/package.json deleted file mode 100644 index 702d007a..00000000 --- a/integration/testers/cli/package.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "cli-it", - "version": "0.0.1", - "description": "trustify-da-javascript-client cli integration tests", - "private": true, - "type": "module", - "license": "Apache-2.0", - "dependencies": { - "@trustify-da/trustify-da-javascript-client": "file:../../../" - } -} diff --git a/integration/testers/javascript/index.js b/integration/testers/javascript/index.js deleted file mode 100644 index a10b161e..00000000 --- a/integration/testers/javascript/index.js +++ /dev/null @@ -1,33 +0,0 @@ -#!/usr/bin/env node - -import client from '@trustify-da/trustify-da-javascript-client' -import process from 'node:process' - -const [,, ...args] = process.argv - -if ('stack' === args[0]) { - // arg[1] = manifest path; arg[2] = is html boolean - let html = args[2] === 'true' - let res = await client.stackAnalysis(args[1], html) - console.log(html ? res : JSON.stringify(res, null, 2)) - process.exit(0) -} -if ('component' === args[0]) { - // arg[1] = manifest path - let res = await client.componentAnalysis(args[1]) - console.log(JSON.stringify(res, null, 2)) - process.exit(0) -} - -if ('validateToken' === args[0]) { - // args[1] - the token passed - let tokens = { - "TRUSTIFY_DA_SNYK_TOKEN" : args[1] - } - let res = await client.validateToken(tokens) - console.log(res) - process.exit(0) -} - -console.log(`unknown action ${args}`) -process.exit(1) diff --git a/integration/testers/javascript/package.json b/integration/testers/javascript/package.json deleted file mode 100644 index 2097e25d..00000000 --- a/integration/testers/javascript/package.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "name": "js-it", - "version": "0.0.1", - "description": "trustify-da-javascript-client javascript integration tests", - "private": true, - "type": "module", - "license": "Apache-2.0", - "dependencies": { - "@trustify-da/trustify-da-javascript-client": "file:../../../" - } -} diff --git a/integration/testers/typescript/index.ts b/integration/testers/typescript/index.ts deleted file mode 100644 index 7d6d8493..00000000 --- a/integration/testers/typescript/index.ts +++ /dev/null @@ -1,24 +0,0 @@ -#!/usr/bin/env node - -import client from '@trustify-da/trustify-da-javascript-client'; -import process from 'node:process'; -import type { AnalysisReport } from '@trustify-da/trustify-da-api-model/model/v5/AnalysisReport'; - -const args = process.argv.slice(2); - -if ('stack' === args[0]) { - // arg[1] = manifest path; arg[2] = is html boolean - let html = args[2] === 'true' - let res = await client.stackAnalysis(args[1], html) - console.log(html ? res as string : JSON.stringify(res as AnalysisReport, null, 2)) - process.exit(0) -} -if ('component' === args[0]) { - // arg[1] = manifest path - let res = await client.componentAnalysis(args[1]) - console.log(JSON.stringify(res as AnalysisReport, null, 2)) - process.exit(0) -} - -console.log(`unknown action ${args}`) -process.exit(1) diff --git a/integration/testers/typescript/package.json b/integration/testers/typescript/package.json deleted file mode 100644 index a3b052fd..00000000 --- a/integration/testers/typescript/package.json +++ /dev/null @@ -1,18 +0,0 @@ -{ - "name": "ts-it", - "version": "0.0.1", - "description": "trustify-da-javascript-client typescript integration tests", - "private": true, - "type": "module", - "license": "Apache-2.0", - "scripts": { - "precompile": "rm -rf ./dist", - "compile": "tsc -p tsconfig.json" - }, - "dependencies": { - "@trustify-da/trustify-da-javascript-client": "file:../../../" - }, - "devDependencies": { - "typescript": "^5.1.3" - } -} diff --git a/integration/testers/typescript/tsconfig.json b/integration/testers/typescript/tsconfig.json deleted file mode 100644 index 7b63ca9a..00000000 --- a/integration/testers/typescript/tsconfig.json +++ /dev/null @@ -1,17 +0,0 @@ -{ - "include": [ - "index.ts" - ], - "exclude": ["node_modules", "dist"], - "compilerOptions": { - "baseUrl": "./", - "esModuleInterop": true, - "lib": ["esnext"], - "moduleResolution": "Node", - "rootDir": ".", - "types": ["node"], - "module": "esnext", - "outDir": "dist", - "target": "esnext" - } -} diff --git a/testers/cli/package-lock.json b/testers/cli/package-lock.json new file mode 100644 index 00000000..7e7bf4a9 --- /dev/null +++ b/testers/cli/package-lock.json @@ -0,0 +1,6 @@ +{ + "name": "cli", + "lockfileVersion": 3, + "requires": true, + "packages": {} +}