diff --git a/.vscode/template.launch.json b/.vscode/template.launch.json index 287f9cfc286..906a863f7d3 100644 --- a/.vscode/template.launch.json +++ b/.vscode/template.launch.json @@ -48,6 +48,28 @@ "console": "integratedTerminal", "sourceMaps": true, "cwd": "${workspaceRoot}" + }, + { + "name": "Example: Supply Chain App", + "type": "node", + "request": "launch", + "protocol": "inspector", + "env": { + "TS_NODE_PROJECT": "${workspaceFolder}/tsconfig.json" + }, + "args": [ + "../cactus-example-supply-chain-backend/src/main/typescript/supply-chain-app-cli.ts", + "dotenv_config_path=process.env" + ], + "runtimeArgs": [ + "-r", + "ts-node/register", + "-r", + "dotenv/config" + ], + "console": "integratedTerminal", + "sourceMaps": true, + "cwd": "${workspaceFolder}/examples/supply-chain-app/" } ] } \ No newline at end of file diff --git a/examples/cactus-example-supply-chain-backend/src/main/typescript/infrastructure/supply-chain-app-dummy-infrastructure.ts b/examples/cactus-example-supply-chain-backend/src/main/typescript/infrastructure/supply-chain-app-dummy-infrastructure.ts index e3484e950e4..d23938b0ef2 100644 --- a/examples/cactus-example-supply-chain-backend/src/main/typescript/infrastructure/supply-chain-app-dummy-infrastructure.ts +++ b/examples/cactus-example-supply-chain-backend/src/main/typescript/infrastructure/supply-chain-app-dummy-infrastructure.ts @@ -150,11 +150,9 @@ export class SupplyChainAppDummyInfrastructure { public async start(): Promise { try { this.log.info(`Starting dummy infrastructure...`); - await Promise.all([ - this.besu.start(), - this.quorum.start(), - this.fabric.start(), - ]); + await this.fabric.start(); + await this.besu.start(); + await this.quorum.start(); this.log.info(`Started dummy infrastructure OK`); } catch (ex) { this.log.error(`Starting of dummy infrastructure crashed: `, ex); @@ -172,11 +170,11 @@ export class SupplyChainAppDummyInfrastructure { await this.keychain.set( BookshelfRepositoryJSON.contractName, - BookshelfRepositoryJSON.contractName, + JSON.stringify(BookshelfRepositoryJSON), ); await this.keychain.set( BambooHarvestRepositoryJSON.contractName, - BambooHarvestRepositoryJSON.contractName, + JSON.stringify(BambooHarvestRepositoryJSON), ); { this._quorumAccount = await this.quorum.createEthTestAccount(2000000); diff --git a/examples/supply-chain-app/Dockerfile b/examples/supply-chain-app/Dockerfile index c7b641a6d81..1fec18d0c33 100644 --- a/examples/supply-chain-app/Dockerfile +++ b/examples/supply-chain-app/Dockerfile @@ -1,55 +1,3 @@ -FROM node:16.3.0-buster-slim as builder - -RUN apt-get update -RUN apt-get -y upgrade - -# Generic dependencies that are usually needed by other software -RUN apt-get install -y build-essential libssl-dev libffi-dev python3-dev - -# Need git because some of our npm depedencies might be coming -# straight from github instead of being an npm package on npmjs.com. -RUN apt-get install -y git - -# Need OpenJDK for the OpenAPI generator tool -ENV DEBIAN_FRONTEND=noninteractive - -WORKDIR /opt -RUN apt-get update \ - && apt-get install -y --no-install-recommends \ - ca-certificates \ - curl \ - && curl \ - -L \ - -o openjdk.tar.gz \ - https://download.java.net/java/GA/jdk11/13/GPL/openjdk-11.0.1_linux-x64_bin.tar.gz \ - && mkdir jdk \ - && tar zxf openjdk.tar.gz -C jdk --strip-components=1 \ - && rm -rf openjdk.tar.gz \ - && ln -sf /opt/jdk/bin/* /usr/local/bin/ \ - && java --version \ - && javac --version \ - && jlink --version - -# Some install scripts of the npm package fabric-network need python/pip -RUN apt-get install -y python3-pip - -WORKDIR / -RUN mkdir /app/ -WORKDIR /app/ -COPY ./ ./ -RUN npm ci -RUN ./node_modules/.bin/lerna clean --yes -RUN ./node_modules/.bin/lerna bootstrap -RUN npm rebuild -RUN npm run build:dev:backend -RUN npm run webpack:dev:web -RUN npm run build:dev:frontend -- --scope='@hyperledger/cactus-example-supply-chain-frontend' - -RUN rm -rf ./packages/cactus-test-plugin* -RUN rm -rf ./packages/cactus-test-cmd* -RUN rm -rf ./packages/cactus-test-api* -RUN rm -rf ./node_modules/ - FROM cruizba/ubuntu-dind:19.03.11 as runner USER root @@ -76,22 +24,23 @@ RUN useradd -m ${APP_USER} RUN usermod -a -G ${APP_USER} ${APP_USER} RUN mkdir -p ${APP} -COPY --chown=$APP_USER:$APP_USER --from=builder /app/ ${APP} - RUN mkdir -p "${APP}/log/" -RUN chown -R $APP_USER:$APP_USER "${APP}/log/" +RUN chown -R $APP_USER:$APP_USER "${APP}/" # TODO: Can we hack it together so that the whole thing works rootless? USER ${APP_USER} +WORKDIR ${APP} SHELL ["/bin/bash", "--login", "-i", "-c"] - # Installing Node Version Manager (nvm) RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.38.0/install.sh | bash -RUN source ~/.bashrc && nvm install 16.3.0 +RUN source ~/.bashrc && \ + nvm install 16.8.0 && \ + npm install -g yarn && \ + yarn add @hyperledger/cactus-example-supply-chain-backend@0.9.1-docs-1312.94850924.6+94850924 --ignore-engines --production + SHELL ["/bin/bash", "--login", "-c"] -WORKDIR ${APP} COPY --chown=${APP_USER}:${APP_USER} ./examples/supply-chain-app/healthcheck.sh / diff --git a/examples/supply-chain-app/package.json b/examples/supply-chain-app/package.json index 0e30587003b..ecf61fe0260 100644 --- a/examples/supply-chain-app/package.json +++ b/examples/supply-chain-app/package.json @@ -3,7 +3,7 @@ "version": "0.2.0", "description": "An example project demonstrating how Cactus can be used for cross-chain dapp development.", "scripts": { - "start": "node -r dotenv/config ./node_modules/.bin/cactus-example-supply-chain-backend dotenv_config_path=process.env", + "start": "node -r dotenv/config node_modules/@hyperledger/cactus-example-supply-chain-backend/dist/lib/main/typescript/supply-chain-app-cli.js dotenv_config_path=process.env", "start-direct": "node ./node_modules/@hyperledger/cactus-example-supply-chain-backend/dist/lib/main/typescript/supply-chain-app-cli.js" }, "private": true, diff --git a/examples/supply-chain-app/process.env b/examples/supply-chain-app/process.env index fdbf9ea8b54..23c2f0c1ee8 100644 --- a/examples/supply-chain-app/process.env +++ b/examples/supply-chain-app/process.env @@ -18,5 +18,7 @@ API_TLS_CLIENT_CA_PEM=- API_TLS_KEY_PEM=- API_HOST=0.0.0.0 API_PORT=4000 -LOG_LEVEL=DEBUG +GRPC_TLS_ENABLED=false +LOG_LEVEL=TRACE AUTHORIZATION_PROTOCOL=NONE +AUTHORIZATION_CONFIG_JSON="{}" \ No newline at end of file diff --git a/examples/supply-chain-app/supervisord.conf b/examples/supply-chain-app/supervisord.conf index 15664a2d2bd..f8cb6c029fb 100644 --- a/examples/supply-chain-app/supervisord.conf +++ b/examples/supply-chain-app/supervisord.conf @@ -8,13 +8,15 @@ loglevel = info command=/usr/local/bin/dockerd autostart=true autorestart=true +startretries=20 stderr_logfile=/usr/src/app/log/dockerd.err.log stdout_logfile=/usr/src/app/log/dockerd.out.log [program:supply-chain-app] -command=/home/appuser/.nvm/versions/node/v16.3.0/bin/node /usr/src/app/examples/cactus-example-supply-chain-backend/dist/lib/main/typescript/supply-chain-app-cli.js +command=/home/appuser/.nvm/versions/node/v16.8.0/bin/node /usr/src/app/node_modules/@hyperledger/cactus-example-supply-chain-backend/dist/lib/main/typescript/supply-chain-app-cli.js autostart=true autorestart=unexpected +startretries=20 exitcodes=0 stderr_logfile=/dev/stderr stderr_logfile_maxbytes=0 diff --git a/package.json b/package.json index ed0d43ad530..eb7c1d51c30 100644 --- a/package.json +++ b/package.json @@ -15,7 +15,7 @@ "custom-checks": "TS_NODE_PROJECT=./tools/tsconfig.json node --trace-deprecation --experimental-modules --abort-on-uncaught-exception --loader ts-node/esm --experimental-specifier-resolution=node ./tools/custom-checks/run-custom-checks.ts", "generate-api-server-config": "node ./tools/generate-api-server-config.js", "start:api-server": "node ./packages/cactus-cmd-api-server/dist/lib/main/typescript/cmd/cactus-api.js --config-file=.config.json", - "start:example-supply-chain": "cd ./examples/supply-chain-app/ && npm i --no-package-lock && npm run start", + "start:example-supply-chain": "yarn build:dev && cd ./examples/supply-chain-app/ && yarn --no-lockfile && yarn start", "start:example-carbon-accounting": "CONFIG_FILE=examples/cactus-example-carbon-accounting-backend/example-config.json node examples/cactus-example-carbon-accounting-backend/dist/lib/main/typescript/carbon-accounting-app-cli.js", "purge-build-cache": "del-cli .build-cache/*", "clean": "npm run purge-build-cache && del-cli \"./{packages,examples,extensions}/cactus-*/{dist,.nyc_output,src/main/proto/generated/*,src/main/typescript/generated/proto/protoc-gen-ts/*,src/main/typescript/generated/openapi/typescript-axios/*}\"", diff --git a/packages/cactus-cmd-api-server/package.json b/packages/cactus-cmd-api-server/package.json index b64159f53a6..a9d4ec6f2ce 100644 --- a/packages/cactus-cmd-api-server/package.json +++ b/packages/cactus-cmd-api-server/package.json @@ -92,6 +92,7 @@ "express-jwt": "6.0.0", "express-openapi-validator": "3.10.0", "fs-extra": "10.0.0", + "google-protobuf": "3.18.0-rc.2", "jose": "1.28.1", "lmify": "0.3.0", "node-forge": "0.10.0", diff --git a/packages/cactus-test-tooling/package.json b/packages/cactus-test-tooling/package.json index 397ad44d00c..4a491d8e567 100644 --- a/packages/cactus-test-tooling/package.json +++ b/packages/cactus-test-tooling/package.json @@ -75,6 +75,7 @@ "is-port-reachable": "3.0.0", "joi": "17.4.2", "keycloak-admin": "1.14.21", + "lodash": "4.17.21", "node-ssh": "12.0.0", "p-retry": "4.6.1", "run-time-error": "1.4.0", @@ -88,6 +89,7 @@ "@types/dockerode": "3.2.7", "@types/esm": "3.2.0", "@types/fs-extra": "9.0.12", + "@types/lodash": "4.14.172", "@types/node-ssh": "7.0.1", "@types/ssh2": "0.5.47", "@types/ssh2-streams": "0.1.9", diff --git a/packages/cactus-test-tooling/src/main/typescript/besu/besu-mp-test-ledger.ts b/packages/cactus-test-tooling/src/main/typescript/besu/besu-mp-test-ledger.ts index 67422af2151..98ad2b3e8ff 100644 --- a/packages/cactus-test-tooling/src/main/typescript/besu/besu-mp-test-ledger.ts +++ b/packages/cactus-test-tooling/src/main/typescript/besu/besu-mp-test-ledger.ts @@ -108,7 +108,7 @@ export class BesuMpTestLedger { return container; } if (!omitPull) { - await Containers.pullImage(this.imageFqn); + await Containers.pullImage(this.imageFqn, {}, this.options.logLevel); } const dockerEnvVars: string[] = new Array(...this.envVars).map( diff --git a/packages/cactus-test-tooling/src/main/typescript/cactus-keychain-vault-server/cactus-keychain-vault-server.ts b/packages/cactus-test-tooling/src/main/typescript/cactus-keychain-vault-server/cactus-keychain-vault-server.ts index a95d43350d4..5f6a5a61a86 100644 --- a/packages/cactus-test-tooling/src/main/typescript/cactus-keychain-vault-server/cactus-keychain-vault-server.ts +++ b/packages/cactus-test-tooling/src/main/typescript/cactus-keychain-vault-server/cactus-keychain-vault-server.ts @@ -70,7 +70,7 @@ export class CactusKeychainVaultServer { } const docker = new Docker(); - await Containers.pullImage(this.imageFqn); + await Containers.pullImage(this.imageFqn, {}, this.options.logLevel); return new Promise((resolve, reject) => { const eventEmitter: EventEmitter = docker.run( diff --git a/packages/cactus-test-tooling/src/main/typescript/common/containers.ts b/packages/cactus-test-tooling/src/main/typescript/common/containers.ts index 140a2f9e5c6..2bda34099b6 100644 --- a/packages/cactus-test-tooling/src/main/typescript/common/containers.ts +++ b/packages/cactus-test-tooling/src/main/typescript/common/containers.ts @@ -1,6 +1,7 @@ import path from "path"; -import { Duplex } from "stream"; +import { Duplex, Stream } from "stream"; import { IncomingMessage } from "http"; +import throttle from "lodash/throttle"; import { Container, ContainerInfo } from "dockerode"; import Dockerode from "dockerode"; import execa from "execa"; @@ -16,6 +17,7 @@ import { Strings, ILoggerOptions, } from "@hyperledger/cactus-common"; +import { IDockerPullProgress } from "./i-docker-pull-progress"; export interface IPruneDockerResourcesRequest { logLevel?: LogLevelDesc; @@ -156,7 +158,7 @@ export class Containers { const pack = tar.pack({ autoDestroy: true }); - pack.entry({ name: opts.dstFileName }, fileAsString, (err: any) => { + pack.entry({ name: opts.dstFileName }, fileAsString, (err: unknown) => { if (err) { reject(err); } else { @@ -167,11 +169,11 @@ export class Containers { }); return new Promise((resolve, reject) => { - const handler = (err: any, data: any) => { + const handler = (err: unknown, data: unknown) => { if (err) { reject(err); } else { - resolve(data); + resolve(data as IncomingMessage); } }; @@ -210,12 +212,12 @@ export class Containers { Checks.truthy(container, "Containers#pullFile() container"); Checks.truthy(filePath, "Containers#pullFile() filePath"); - const response: any = await container.getArchive({ path: filePath }); + const response = await container.getArchive({ path: filePath }); const extract: tar.Extract = tar.extract({ autoDestroy: true }); return new Promise((resolve, reject) => { let fileContents = ""; - extract.on("entry", async (header: any, stream, next) => { + extract.on("entry", async (header: unknown, stream, next) => { stream.on("error", (err: Error) => { reject(err); }); @@ -247,12 +249,12 @@ export class Containers { Checks.truthy(container, `${fnTag} container`); Checks.truthy(filePath, `${fnTag} filePath`); - const response: any = await container.getArchive({ path: filePath }); + const response = await container.getArchive({ path: filePath }); const extract: tar.Extract = tar.extract({ autoDestroy: true }); return new Promise((resolve, reject) => { let buffer: Buffer; - extract.on("entry", async (header: any, stream, next) => { + extract.on("entry", async (header: unknown, stream, next) => { stream.on("error", (err: Error) => { reject(err); }); @@ -404,9 +406,9 @@ export class Containers { } public static pullImage( imageFqn: string, - options: any = {}, + options: Record = {}, logLevel?: LogLevelDesc, - ): Promise { + ): Promise { const defaultLoggerOptions: ILoggerOptions = { label: "containers#pullImage()", level: logLevel || "INFO", @@ -424,9 +426,9 @@ export class Containers { public static tryPullImage( imageFqn: string, - options: any = {}, + options: Record = {}, logLevel?: LogLevelDesc, - ): Promise { + ): Promise { return new Promise((resolve, reject) => { const loggerOptions: ILoggerOptions = { label: "containers#tryPullImage()", @@ -436,7 +438,11 @@ export class Containers { const docker = new Dockerode(); - const pullStreamStartedHandler = (pullError: any, stream: any) => { + const progressPrinter = throttle((msg: IDockerPullProgress): void => { + log.debug(JSON.stringify(msg.progress || msg.status)); + }, 1000); + + const pullStreamStartedHandler = (pullError: unknown, stream: Stream) => { if (pullError) { log.error(`Could not even start ${imageFqn} pull:`, pullError); reject(pullError); @@ -444,7 +450,7 @@ export class Containers { log.debug(`Started ${imageFqn} pull progress stream OK`); docker.modem.followProgress( stream, - (progressError: any, output: any[]) => { + (progressError: unknown, output: unknown[]) => { if (progressError) { log.error(`Failed to finish ${imageFqn} pull:`, progressError); reject(progressError); @@ -453,6 +459,7 @@ export class Containers { resolve(output); } }, + (msg: IDockerPullProgress): void => progressPrinter(msg), ); } }; @@ -461,11 +468,11 @@ export class Containers { }); } - public static stop(container: Container): Promise { + public static stop(container: Container): Promise { const fnTag = "Containers#stop()"; return new Promise((resolve, reject) => { if (container) { - container.stop({}, (err: any, result: any) => { + container.stop({}, (err: unknown, result: unknown) => { if (err) { reject(err); } else { diff --git a/packages/cactus-test-tooling/src/main/typescript/common/i-docker-pull-progress.ts b/packages/cactus-test-tooling/src/main/typescript/common/i-docker-pull-progress.ts new file mode 100644 index 00000000000..4c8f25d6a71 --- /dev/null +++ b/packages/cactus-test-tooling/src/main/typescript/common/i-docker-pull-progress.ts @@ -0,0 +1,11 @@ +export interface IDockerPullProgressDetail { + readonly current: number; + readonly total: number; +} + +export interface IDockerPullProgress { + readonly status: "Downloading"; + readonly progressDetail: IDockerPullProgressDetail; + readonly progress: string; + readonly id: string; +} diff --git a/packages/cactus-test-tooling/src/main/typescript/corda-connector/corda-connector-container.ts b/packages/cactus-test-tooling/src/main/typescript/corda-connector/corda-connector-container.ts index c8ed6cbd81d..5ee30876de7 100644 --- a/packages/cactus-test-tooling/src/main/typescript/corda-connector/corda-connector-container.ts +++ b/packages/cactus-test-tooling/src/main/typescript/corda-connector/corda-connector-container.ts @@ -98,7 +98,7 @@ export class CordaConnectorContainer { } public async start(skipPull = false): Promise { - const containerNameAndTag = this.getContainerImageName(); + const imageFqn = this.getContainerImageName(); if (this.container) { await this.container.stop(); @@ -107,12 +107,12 @@ export class CordaConnectorContainer { const docker = new Docker(); if (!skipPull) { - await Containers.pullImage(containerNameAndTag); + await Containers.pullImage(imageFqn, {}, this.opts.logLevel); } return new Promise((resolve, reject) => { const eventEmitter: EventEmitter = docker.run( - containerNameAndTag, + imageFqn, [], [], { diff --git a/packages/cactus-test-tooling/src/main/typescript/corda/corda-test-ledger.ts b/packages/cactus-test-tooling/src/main/typescript/corda/corda-test-ledger.ts index 8b6396360f9..9a1a1479eda 100644 --- a/packages/cactus-test-tooling/src/main/typescript/corda/corda-test-ledger.ts +++ b/packages/cactus-test-tooling/src/main/typescript/corda/corda-test-ledger.ts @@ -120,7 +120,7 @@ export class CordaTestLedger implements ITestLedger { } public async start(skipPull = false): Promise { - const containerNameAndTag = this.getContainerImageName(); + const imageFqn = this.getContainerImageName(); if (this.container) { await this.container.stop(); @@ -129,12 +129,12 @@ export class CordaTestLedger implements ITestLedger { const docker = new Docker(); if (!skipPull) { - await Containers.pullImage(containerNameAndTag); + await Containers.pullImage(imageFqn, {}, this.opts.logLevel); } return new Promise((resolve, reject) => { const eventEmitter: EventEmitter = docker.run( - containerNameAndTag, + imageFqn, [], [], { diff --git a/packages/cactus-test-tooling/src/main/typescript/fabric/fabric-test-ledger-v1.ts b/packages/cactus-test-tooling/src/main/typescript/fabric/fabric-test-ledger-v1.ts index 36a8bc9f11c..6dcd732a084 100644 --- a/packages/cactus-test-tooling/src/main/typescript/fabric/fabric-test-ledger-v1.ts +++ b/packages/cactus-test-tooling/src/main/typescript/fabric/fabric-test-ledger-v1.ts @@ -356,7 +356,8 @@ export class FabricTestLedgerV1 implements ITestLedger { } public async start(omitPull = false): Promise { - const containerNameAndTag = this.getContainerImageName(); + const imageFqn = this.getContainerImageName(); + this.log.debug(`Launching: ${imageFqn} ...`); const dockerEnvVars: string[] = new Array(...this.envVars).map( (pairs) => `${pairs[0]}=${pairs[1]}`, ); @@ -368,7 +369,7 @@ export class FabricTestLedgerV1 implements ITestLedger { const docker = new Docker(); if (!omitPull) { - await Containers.pullImage(containerNameAndTag); + await Containers.pullImage(imageFqn, {}, this.options.logLevel); } const createOptions: ContainerCreateOptions = { @@ -425,7 +426,7 @@ export class FabricTestLedgerV1 implements ITestLedger { return new Promise((resolve, reject) => { const eventEmitter: EventEmitter = docker.run( - containerNameAndTag, + imageFqn, [], [], createOptions, diff --git a/packages/cactus-test-tooling/src/main/typescript/go-ipfs/go-ipfs-test-container.ts b/packages/cactus-test-tooling/src/main/typescript/go-ipfs/go-ipfs-test-container.ts index 51b14300f8f..0c416c1bfb8 100644 --- a/packages/cactus-test-tooling/src/main/typescript/go-ipfs/go-ipfs-test-container.ts +++ b/packages/cactus-test-tooling/src/main/typescript/go-ipfs/go-ipfs-test-container.ts @@ -87,7 +87,7 @@ export class GoIpfsTestContainer { // otherwise we carry on with launching the container if (!omitPull) { - await Containers.pullImage(this.imageFqn); + await Containers.pullImage(this.imageFqn), {}, this.options.logLevel; } const dockerEnvVars: string[] = new Array(...this.envVars).map( diff --git a/packages/cactus-test-tooling/src/main/typescript/iroha/iroha-test-ledger.ts b/packages/cactus-test-tooling/src/main/typescript/iroha/iroha-test-ledger.ts index 8a3d74bd215..cddac71105f 100644 --- a/packages/cactus-test-tooling/src/main/typescript/iroha/iroha-test-ledger.ts +++ b/packages/cactus-test-tooling/src/main/typescript/iroha/iroha-test-ledger.ts @@ -264,7 +264,7 @@ export class IrohaTestLedger implements ITestLedger { const docker = new Docker(); if (!omitPull) { this.log.debug(`Pulling container image ${this.imageFqn} ...`); - await Containers.pullImage(this.imageFqn); + await Containers.pullImage(this.imageFqn, {}, this.options.logLevel); this.log.debug(`Pulled ${this.imageFqn} OK. Starting container...`); } diff --git a/packages/cactus-test-tooling/src/main/typescript/keycloak/keycloak-container.ts b/packages/cactus-test-tooling/src/main/typescript/keycloak/keycloak-container.ts index 42d15725b1a..1cec545ed29 100644 --- a/packages/cactus-test-tooling/src/main/typescript/keycloak/keycloak-container.ts +++ b/packages/cactus-test-tooling/src/main/typescript/keycloak/keycloak-container.ts @@ -86,7 +86,7 @@ export class KeycloakContainer { } const docker = new Docker(); - await Containers.pullImage(this.imageFqn); + await Containers.pullImage(this.imageFqn, {}, this.options.logLevel); const Env = [ ...[ diff --git a/packages/cactus-test-tooling/src/main/typescript/localstack/localstack-container.ts b/packages/cactus-test-tooling/src/main/typescript/localstack/localstack-container.ts index 0ec0f54b05a..ac8dfc56362 100644 --- a/packages/cactus-test-tooling/src/main/typescript/localstack/localstack-container.ts +++ b/packages/cactus-test-tooling/src/main/typescript/localstack/localstack-container.ts @@ -77,7 +77,7 @@ export class LocalStackContainer { } const docker = new Docker(); - await Containers.pullImage(this.imageFqn); + await Containers.pullImage(this.imageFqn, {}, this.options.logLevel); return new Promise((resolve, reject) => { const eventEmitter: EventEmitter = docker.run( diff --git a/packages/cactus-test-tooling/src/main/typescript/openethereum/openethereum-test-ledger.ts b/packages/cactus-test-tooling/src/main/typescript/openethereum/openethereum-test-ledger.ts index 86d356866a7..dd54080082e 100644 --- a/packages/cactus-test-tooling/src/main/typescript/openethereum/openethereum-test-ledger.ts +++ b/packages/cactus-test-tooling/src/main/typescript/openethereum/openethereum-test-ledger.ts @@ -102,7 +102,7 @@ export class OpenEthereumTestLedger { } const docker = new Docker(); - await Containers.pullImage(this.imageFqn); + await Containers.pullImage(this.imageFqn, {}, this.options.logLevel); const Env = [...[], ...this.envVars]; this.log.debug(`Effective Env of container: %o`, Env); diff --git a/packages/cactus-test-tooling/src/main/typescript/public-api.ts b/packages/cactus-test-tooling/src/main/typescript/public-api.ts index 4370cd2181e..871a57ca242 100755 --- a/packages/cactus-test-tooling/src/main/typescript/public-api.ts +++ b/packages/cactus-test-tooling/src/main/typescript/public-api.ts @@ -137,3 +137,5 @@ export { Streams } from "./common/streams"; export { isRunningInGithubAction } from "./github-actions/is-running-in-github-action"; export { pruneDockerAllIfGithubAction } from "./github-actions/prune-docker-all-if-github-action"; +export { IDockerPullProgress } from "./common/i-docker-pull-progress"; +export { IDockerPullProgressDetail } from "./common/i-docker-pull-progress"; diff --git a/packages/cactus-test-tooling/src/main/typescript/rustc-container/rustc-container.ts b/packages/cactus-test-tooling/src/main/typescript/rustc-container/rustc-container.ts index 63604bfca42..93cebcd4bee 100644 --- a/packages/cactus-test-tooling/src/main/typescript/rustc-container/rustc-container.ts +++ b/packages/cactus-test-tooling/src/main/typescript/rustc-container/rustc-container.ts @@ -124,7 +124,7 @@ export class RustcContainer { } if (!omitPull) { this.log.debug(`Pulling image ${this.imageFqn}...`); - await Containers.pullImage(this.imageFqn); + await Containers.pullImage(this.imageFqn, {}, this.opts.logLevel); this.log.debug(`Pulled image ${this.imageFqn} OK`); } diff --git a/packages/cactus-test-tooling/src/main/typescript/vault-test-server/vault-test-server.ts b/packages/cactus-test-tooling/src/main/typescript/vault-test-server/vault-test-server.ts index 48a9eb408cc..545bba4c9a4 100644 --- a/packages/cactus-test-tooling/src/main/typescript/vault-test-server/vault-test-server.ts +++ b/packages/cactus-test-tooling/src/main/typescript/vault-test-server/vault-test-server.ts @@ -81,7 +81,7 @@ export class VaultTestServer { } const docker = new Docker(); - await Containers.pullImage(this.imageFqn); + await Containers.pullImage(this.imageFqn, {}, this.options.logLevel); return new Promise((resolve, reject) => { const eventEmitter: EventEmitter = docker.run( diff --git a/yarn.lock b/yarn.lock index 859850da1f4..3ba60b2c432 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2246,6 +2246,18 @@ resolved "https://registry.yarnpkg.com/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" integrity sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q== +"@improbable-eng/grpc-web-node-http-transport@^0.13.0": + version "0.13.0" + resolved "https://registry.yarnpkg.com/@improbable-eng/grpc-web-node-http-transport/-/grpc-web-node-http-transport-0.13.0.tgz#a8680c7a8bce4c2b44fe48ba4b7c55b320cf5f54" + integrity sha512-Ev8pfMs7FbsBWc4FAY8N4dd8xQRowHFyu2AzEHl++8orrB4KSx6NonMqlsLDPBHLKwlYs7EEI6uxGwpjnYiS2Q== + +"@improbable-eng/grpc-web@^0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@improbable-eng/grpc-web/-/grpc-web-0.12.0.tgz#9b10a7edf2a1d7672f8997e34a60e7b70e49738f" + integrity sha512-uJjgMPngreRTYPBuo6gswMj1gK39Wbqre/RgE0XnSDXJRg6ST7ZhuS53dFE6Vc2CX4jxgl+cO+0B3op8LA4Q0Q== + dependencies: + browser-headers "^0.4.0" + "@ionic-native/core@5.35.0": version "5.35.0" resolved "https://registry.yarnpkg.com/@ionic-native/core/-/core-5.35.0.tgz#b84cfcc2cf8993c09c2b8fe1fe2e3d8646d44f09" @@ -3020,7 +3032,7 @@ npmlog "^4.1.2" write-file-atomic "^3.0.3" -"@mapbox/node-pre-gyp@^1.0.5": +"@mapbox/node-pre-gyp@^1.0.4", "@mapbox/node-pre-gyp@^1.0.5": version "1.0.5" resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.5.tgz#2a0b32fcb416fb3f2250fd24cb2a81421a4f5950" integrity sha512-4srsKPXWlIxp5Vbqz5uLfBN+du2fJChBoYn/f2h991WLdk7jUvcSk/McVLSv/X+xQIPI8eGD5GjrnygdyHnhPA== @@ -3569,6 +3581,14 @@ "@types/connect" "*" "@types/node" "*" +"@types/bytebuffer@^5.0.40": + version "5.0.42" + resolved "https://registry.yarnpkg.com/@types/bytebuffer/-/bytebuffer-5.0.42.tgz#1c602a77942d34c5c0879ad75c58d5d8c07dfb3b" + integrity sha512-lEgKojWUAc/MG2t649oZS5AfYFP2xRNPoDuwDBlBMjHXd8MaGPgFgtCXUK7inZdBOygmVf10qxc1Us8GXC96aw== + dependencies: + "@types/long" "*" + "@types/node" "*" + "@types/cacheable-request@^6.0.1": version "6.0.2" resolved "https://registry.yarnpkg.com/@types/cacheable-request/-/cacheable-request-6.0.2.tgz#c324da0197de0a98a2312156536ae262429ff6b9" @@ -3691,7 +3711,7 @@ "@types/express" "*" "@types/express-unless" "*" -"@types/express-serve-static-core@^4.17.18": +"@types/express-serve-static-core@*", "@types/express-serve-static-core@^4.17.18": version "4.17.24" resolved "https://registry.yarnpkg.com/@types/express-serve-static-core/-/express-serve-static-core-4.17.24.tgz#ea41f93bf7e0d59cd5a76665068ed6aab6815c07" integrity sha512-3UJuW+Qxhzwjq3xhwXm2onQcFHn76frIYVbTu+kn24LFxI+dEhdfISDFovPB8VpEgW8oQCTpRuCe+0zJxB7NEA== @@ -3717,6 +3737,16 @@ "@types/qs" "*" "@types/serve-static" "*" +"@types/express@4.17.8": + version "4.17.8" + resolved "https://registry.yarnpkg.com/@types/express/-/express-4.17.8.tgz#3df4293293317e61c60137d273a2e96cd8d5f27a" + integrity sha512-wLhcKh3PMlyA2cNAB9sjM1BntnhPMiM0JOBwPBqttjHev2428MLEB4AYVN+d8s2iyCVZac+o41Pflm/ZH5vLXQ== + dependencies: + "@types/body-parser" "*" + "@types/express-serve-static-core" "*" + "@types/qs" "*" + "@types/serve-static" "*" + "@types/fs-extra@9.0.12": version "9.0.12" resolved "https://registry.yarnpkg.com/@types/fs-extra/-/fs-extra-9.0.12.tgz#9b8f27973df8a7a3920e8461517ebf8a7d4fdfaf" @@ -3802,7 +3832,12 @@ "@types/level-errors" "*" "@types/node" "*" -"@types/long@^4.0.0", "@types/long@^4.0.1": +"@types/lodash@4.14.172": + version "4.14.172" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.172.tgz#aad774c28e7bfd7a67de25408e03ee5a8c3d028a" + integrity sha512-/BHF5HAx3em7/KkzVKm3LrsD6HZAXuXO1AJZQ3cRRBZj4oHZDviWPYu0aEplAqDFNHZPW6d3G7KN+ONcCCC7pw== + +"@types/long@*", "@types/long@^4.0.0", "@types/long@^4.0.1": version "4.0.1" resolved "https://registry.yarnpkg.com/@types/long/-/long-4.0.1.tgz#459c65fa1867dafe6a8f322c4c51695663cc55e9" integrity sha512-5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w== @@ -4864,6 +4899,14 @@ asap@^2.0.0: resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= +ascli@~1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ascli/-/ascli-1.0.1.tgz#bcfa5974a62f18e81cabaeb49732ab4a88f906bc" + integrity sha1-vPpZdKYvGOgcq660lzKrSoj5Brw= + dependencies: + colour "~0.7.1" + optjs "~3.2.2" + asn1.js@^5.0.1, asn1.js@^5.2.0: version "5.4.1" resolved "https://registry.yarnpkg.com/asn1.js/-/asn1.js-5.4.1.tgz#11a980b84ebb91781ce35b0fdc2ee294e3783f07" @@ -5057,6 +5100,41 @@ axobject-query@2.0.2: dependencies: ast-types-flow "0.0.7" +babel-helper-evaluate-path@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-helper-evaluate-path/-/babel-helper-evaluate-path-0.5.0.tgz#a62fa9c4e64ff7ea5cea9353174ef023a900a67c" + integrity sha512-mUh0UhS607bGh5wUMAQfOpt2JX2ThXMtppHRdRU1kL7ZLRWIXxoV2UIV1r2cAeeNeU1M5SB5/RSUgUxrK8yOkA== + +babel-helper-flip-expressions@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-helper-flip-expressions/-/babel-helper-flip-expressions-0.4.3.tgz#3696736a128ac18bc25254b5f40a22ceb3c1d3fd" + integrity sha1-NpZzahKKwYvCUlS19AoizrPB0/0= + +babel-helper-is-nodes-equiv@^0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/babel-helper-is-nodes-equiv/-/babel-helper-is-nodes-equiv-0.0.1.tgz#34e9b300b1479ddd98ec77ea0bbe9342dfe39684" + integrity sha1-NOmzALFHnd2Y7HfqC76TQt/jloQ= + +babel-helper-is-void-0@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-helper-is-void-0/-/babel-helper-is-void-0-0.4.3.tgz#7d9c01b4561e7b95dbda0f6eee48f5b60e67313e" + integrity sha1-fZwBtFYee5Xb2g9u7kj1tg5nMT4= + +babel-helper-mark-eval-scopes@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-helper-mark-eval-scopes/-/babel-helper-mark-eval-scopes-0.4.3.tgz#d244a3bef9844872603ffb46e22ce8acdf551562" + integrity sha1-0kSjvvmESHJgP/tG4izorN9VFWI= + +babel-helper-remove-or-void@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-helper-remove-or-void/-/babel-helper-remove-or-void-0.4.3.tgz#a4f03b40077a0ffe88e45d07010dee241ff5ae60" + integrity sha1-pPA7QAd6D/6I5F0HAQ3uJB/1rmA= + +babel-helper-to-multiple-sequence-expressions@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-helper-to-multiple-sequence-expressions/-/babel-helper-to-multiple-sequence-expressions-0.5.0.tgz#a3f924e3561882d42fcf48907aa98f7979a4588d" + integrity sha512-m2CvfDW4+1qfDdsrtf4dwOslQC3yhbgyBFptncp4wvtdrDHqueW7slsYv4gArie056phvQFhT2nRcGS4bnm6mA== + babel-loader@8.2.2: version "8.2.2" resolved "https://registry.yarnpkg.com/babel-loader/-/babel-loader-8.2.2.tgz#9363ce84c10c9a40e6c753748e1441b60c8a0b81" @@ -5074,6 +5152,82 @@ babel-plugin-dynamic-import-node@^2.3.3: dependencies: object.assign "^4.1.0" +babel-plugin-minify-builtins@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-builtins/-/babel-plugin-minify-builtins-0.5.0.tgz#31eb82ed1a0d0efdc31312f93b6e4741ce82c36b" + integrity sha512-wpqbN7Ov5hsNwGdzuzvFcjgRlzbIeVv1gMIlICbPj0xkexnfoIDe7q+AZHMkQmAE/F9R5jkrB6TLfTegImlXag== + +babel-plugin-minify-constant-folding@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-constant-folding/-/babel-plugin-minify-constant-folding-0.5.0.tgz#f84bc8dbf6a561e5e350ff95ae216b0ad5515b6e" + integrity sha512-Vj97CTn/lE9hR1D+jKUeHfNy+m1baNiJ1wJvoGyOBUx7F7kJqDZxr9nCHjO/Ad+irbR3HzR6jABpSSA29QsrXQ== + dependencies: + babel-helper-evaluate-path "^0.5.0" + +babel-plugin-minify-dead-code-elimination@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-dead-code-elimination/-/babel-plugin-minify-dead-code-elimination-0.5.1.tgz#1a0c68e44be30de4976ca69ffc535e08be13683f" + integrity sha512-x8OJOZIrRmQBcSqxBcLbMIK8uPmTvNWPXH2bh5MDCW1latEqYiRMuUkPImKcfpo59pTUB2FT7HfcgtG8ZlR5Qg== + dependencies: + babel-helper-evaluate-path "^0.5.0" + babel-helper-mark-eval-scopes "^0.4.3" + babel-helper-remove-or-void "^0.4.3" + lodash "^4.17.11" + +babel-plugin-minify-flip-comparisons@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-flip-comparisons/-/babel-plugin-minify-flip-comparisons-0.4.3.tgz#00ca870cb8f13b45c038b3c1ebc0f227293c965a" + integrity sha1-AMqHDLjxO0XAOLPB68DyJyk8llo= + dependencies: + babel-helper-is-void-0 "^0.4.3" + +babel-plugin-minify-guarded-expressions@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-guarded-expressions/-/babel-plugin-minify-guarded-expressions-0.4.4.tgz#818960f64cc08aee9d6c75bec6da974c4d621135" + integrity sha512-RMv0tM72YuPPfLT9QLr3ix9nwUIq+sHT6z8Iu3sLbqldzC1Dls8DPCywzUIzkTx9Zh1hWX4q/m9BPoPed9GOfA== + dependencies: + babel-helper-evaluate-path "^0.5.0" + babel-helper-flip-expressions "^0.4.3" + +babel-plugin-minify-infinity@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-infinity/-/babel-plugin-minify-infinity-0.4.3.tgz#dfb876a1b08a06576384ef3f92e653ba607b39ca" + integrity sha1-37h2obCKBldjhO8/kuZTumB7Oco= + +babel-plugin-minify-mangle-names@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-mangle-names/-/babel-plugin-minify-mangle-names-0.5.0.tgz#bcddb507c91d2c99e138bd6b17a19c3c271e3fd3" + integrity sha512-3jdNv6hCAw6fsX1p2wBGPfWuK69sfOjfd3zjUXkbq8McbohWy23tpXfy5RnToYWggvqzuMOwlId1PhyHOfgnGw== + dependencies: + babel-helper-mark-eval-scopes "^0.4.3" + +babel-plugin-minify-numeric-literals@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-numeric-literals/-/babel-plugin-minify-numeric-literals-0.4.3.tgz#8e4fd561c79f7801286ff60e8c5fd9deee93c0bc" + integrity sha1-jk/VYcefeAEob/YOjF/Z3u6TwLw= + +babel-plugin-minify-replace@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-replace/-/babel-plugin-minify-replace-0.5.0.tgz#d3e2c9946c9096c070efc96761ce288ec5c3f71c" + integrity sha512-aXZiaqWDNUbyNNNpWs/8NyST+oU7QTpK7J9zFEFSA0eOmtUNMU3fczlTTTlnCxHmq/jYNFEmkkSG3DDBtW3Y4Q== + +babel-plugin-minify-simplify@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-simplify/-/babel-plugin-minify-simplify-0.5.1.tgz#f21613c8b95af3450a2ca71502fdbd91793c8d6a" + integrity sha512-OSYDSnoCxP2cYDMk9gxNAed6uJDiDz65zgL6h8d3tm8qXIagWGMLWhqysT6DY3Vs7Fgq7YUDcjOomhVUb+xX6A== + dependencies: + babel-helper-evaluate-path "^0.5.0" + babel-helper-flip-expressions "^0.4.3" + babel-helper-is-nodes-equiv "^0.0.1" + babel-helper-to-multiple-sequence-expressions "^0.5.0" + +babel-plugin-minify-type-constructors@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-minify-type-constructors/-/babel-plugin-minify-type-constructors-0.4.3.tgz#1bc6f15b87f7ab1085d42b330b717657a2156500" + integrity sha1-G8bxW4f3qxCF1CszC3F2V6IVZQA= + dependencies: + babel-helper-is-void-0 "^0.4.3" + babel-plugin-polyfill-corejs2@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/babel-plugin-polyfill-corejs2/-/babel-plugin-polyfill-corejs2-0.2.2.tgz#e9124785e6fd94f94b618a7954e5693053bf5327" @@ -5098,6 +5252,65 @@ babel-plugin-polyfill-regenerator@^0.2.2: dependencies: "@babel/helper-define-polyfill-provider" "^0.2.2" +babel-plugin-transform-inline-consecutive-adds@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-inline-consecutive-adds/-/babel-plugin-transform-inline-consecutive-adds-0.4.3.tgz#323d47a3ea63a83a7ac3c811ae8e6941faf2b0d1" + integrity sha1-Mj1Ho+pjqDp6w8gRro5pQfrysNE= + +babel-plugin-transform-member-expression-literals@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-member-expression-literals/-/babel-plugin-transform-member-expression-literals-6.9.4.tgz#37039c9a0c3313a39495faac2ff3a6b5b9d038bf" + integrity sha1-NwOcmgwzE6OUlfqsL/OmtbnQOL8= + +babel-plugin-transform-merge-sibling-variables@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-merge-sibling-variables/-/babel-plugin-transform-merge-sibling-variables-6.9.4.tgz#85b422fc3377b449c9d1cde44087203532401dae" + integrity sha1-hbQi/DN3tEnJ0c3kQIcgNTJAHa4= + +babel-plugin-transform-minify-booleans@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-minify-booleans/-/babel-plugin-transform-minify-booleans-6.9.4.tgz#acbb3e56a3555dd23928e4b582d285162dd2b198" + integrity sha1-rLs+VqNVXdI5KOS1gtKFFi3SsZg= + +babel-plugin-transform-property-literals@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-property-literals/-/babel-plugin-transform-property-literals-6.9.4.tgz#98c1d21e255736573f93ece54459f6ce24985d39" + integrity sha1-mMHSHiVXNlc/k+zlRFn2ziSYXTk= + dependencies: + esutils "^2.0.2" + +babel-plugin-transform-regexp-constructors@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-regexp-constructors/-/babel-plugin-transform-regexp-constructors-0.4.3.tgz#58b7775b63afcf33328fae9a5f88fbd4fb0b4965" + integrity sha1-WLd3W2OvzzMyj66aX4j71PsLSWU= + +babel-plugin-transform-remove-console@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-console/-/babel-plugin-transform-remove-console-6.9.4.tgz#b980360c067384e24b357a588d807d3c83527780" + integrity sha1-uYA2DAZzhOJLNXpYjYB9PINSd4A= + +babel-plugin-transform-remove-debugger@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-debugger/-/babel-plugin-transform-remove-debugger-6.9.4.tgz#42b727631c97978e1eb2d199a7aec84a18339ef2" + integrity sha1-QrcnYxyXl44estGZp67IShgznvI= + +babel-plugin-transform-remove-undefined@^0.5.0: + version "0.5.0" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-remove-undefined/-/babel-plugin-transform-remove-undefined-0.5.0.tgz#80208b31225766c630c97fa2d288952056ea22dd" + integrity sha512-+M7fJYFaEE/M9CXa0/IRkDbiV3wRELzA1kKQFCJ4ifhrzLKn/9VCCgj9OFmYWwBd8IB48YdgPkHYtbYq+4vtHQ== + dependencies: + babel-helper-evaluate-path "^0.5.0" + +babel-plugin-transform-simplify-comparison-operators@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-simplify-comparison-operators/-/babel-plugin-transform-simplify-comparison-operators-6.9.4.tgz#f62afe096cab0e1f68a2d753fdf283888471ceb9" + integrity sha1-9ir+CWyrDh9ootdT/fKDiIRxzrk= + +babel-plugin-transform-undefined-to-void@^6.9.4: + version "6.9.4" + resolved "https://registry.yarnpkg.com/babel-plugin-transform-undefined-to-void/-/babel-plugin-transform-undefined-to-void-6.9.4.tgz#be241ca81404030678b748717322b89d0c8fe280" + integrity sha1-viQcqBQEAwZ4t0hxcyK4nQyP4oA= + babel-polyfill@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-polyfill/-/babel-polyfill-6.26.0.tgz#379937abc67d7895970adc621f284cd966cf2153" @@ -5107,6 +5320,35 @@ babel-polyfill@^6.26.0: core-js "^2.5.0" regenerator-runtime "^0.10.5" +babel-preset-minify@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/babel-preset-minify/-/babel-preset-minify-0.5.1.tgz#25f5d0bce36ec818be80338d0e594106e21eaa9f" + integrity sha512-1IajDumYOAPYImkHbrKeiN5AKKP9iOmRoO2IPbIuVp0j2iuCcj0n7P260z38siKMZZ+85d3mJZdtW8IgOv+Tzg== + dependencies: + babel-plugin-minify-builtins "^0.5.0" + babel-plugin-minify-constant-folding "^0.5.0" + babel-plugin-minify-dead-code-elimination "^0.5.1" + babel-plugin-minify-flip-comparisons "^0.4.3" + babel-plugin-minify-guarded-expressions "^0.4.4" + babel-plugin-minify-infinity "^0.4.3" + babel-plugin-minify-mangle-names "^0.5.0" + babel-plugin-minify-numeric-literals "^0.4.3" + babel-plugin-minify-replace "^0.5.0" + babel-plugin-minify-simplify "^0.5.1" + babel-plugin-minify-type-constructors "^0.4.3" + babel-plugin-transform-inline-consecutive-adds "^0.4.3" + babel-plugin-transform-member-expression-literals "^6.9.4" + babel-plugin-transform-merge-sibling-variables "^6.9.4" + babel-plugin-transform-minify-booleans "^6.9.4" + babel-plugin-transform-property-literals "^6.9.4" + babel-plugin-transform-regexp-constructors "^0.4.3" + babel-plugin-transform-remove-console "^6.9.4" + babel-plugin-transform-remove-debugger "^6.9.4" + babel-plugin-transform-remove-undefined "^0.5.0" + babel-plugin-transform-simplify-comparison-operators "^6.9.4" + babel-plugin-transform-undefined-to-void "^6.9.4" + lodash "^4.17.11" + babel-runtime@^6.26.0: version "6.26.0" resolved "https://registry.yarnpkg.com/babel-runtime/-/babel-runtime-6.26.0.tgz#965c7058668e82b55d7bfe04ff2337bc8b5647fe" @@ -5397,6 +5639,11 @@ brorand@^1.0.1, brorand@^1.1.0: resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" integrity sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8= +browser-headers@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/browser-headers/-/browser-headers-0.4.1.tgz#4308a7ad3b240f4203dbb45acedb38dc2d65dd02" + integrity sha512-CA9hsySZVo9371qEHjHZtYxV2cFtVj5Wj/ZHi8ooEsrtm4vOnl9Y9HmyYWk9q+05d7K3rdoAE0j3MVEFVvtQtg== + browser-readablestream-to-it@^1.0.1, browser-readablestream-to-it@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/browser-readablestream-to-it/-/browser-readablestream-to-it-1.0.2.tgz#f6b8d18e7a35b0321359261a32aa2c70f46921c4" @@ -5566,6 +5813,14 @@ buffer@4.9.2: ieee754 "^1.1.4" isarray "^1.0.0" +buffer@5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.0.2.tgz#41d0407ff76782e9ec19f52f88e237ce6bb0de6d" + integrity sha1-QdBAf/dngunsGfUviOI3zmuw3m0= + dependencies: + base64-js "^1.0.2" + ieee754 "^1.1.4" + buffer@6.0.3, buffer@^6.0.1, buffer@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" @@ -5574,7 +5829,7 @@ buffer@6.0.3, buffer@^6.0.1, buffer@^6.0.3: base64-js "^1.3.1" ieee754 "^1.2.1" -buffer@^5.0.5, buffer@^5.2.1, buffer@^5.5.0, buffer@^5.6.0: +buffer@^5.0.5, buffer@^5.2.1, buffer@^5.4.0, buffer@^5.5.0, buffer@^5.6.0: version "5.7.1" resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== @@ -5622,6 +5877,13 @@ byte-size@^7.0.0: resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-7.0.1.tgz#b1daf3386de7ab9d706b941a748dbfc71130dee3" integrity sha512-crQdqyCwhokxwV1UyDzLZanhkugAgft7vt0qbbdt60C6Zf3CAiGmtUCylbtYwrU6loOUw3euGrNtW1J651ot1A== +bytebuffer@~5: + version "5.0.1" + resolved "https://registry.yarnpkg.com/bytebuffer/-/bytebuffer-5.0.1.tgz#582eea4b1a873b6d020a48d58df85f0bba6cfddd" + integrity sha1-WC7qSxqHO20CCkjVjfhfC7ps/d0= + dependencies: + long "~3" + bytes@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" @@ -5796,6 +6058,11 @@ camelcase-keys@^7.0.0: quick-lru "^5.1.1" type-fest "^1.2.1" +camelcase@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= + camelcase@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" @@ -6114,6 +6381,15 @@ cli-width@^3.0.0: resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== +cliui@^3.0.3: + version "3.2.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" + integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + wrap-ansi "^2.0.0" + cliui@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-4.1.0.tgz#348422dbe82d800b3022eef4f6ac10bf2e4d1b49" @@ -6276,6 +6552,11 @@ colors@1.4.0, colors@^1.4.0: resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== +colour@~0.7.1: + version "0.7.1" + resolved "https://registry.yarnpkg.com/colour/-/colour-0.7.1.tgz#9cb169917ec5d12c0736d3e8685746df1cadf778" + integrity sha1-nLFpkX7F0SwHNtPoaFdG3xyt93g= + columnify@^1.5.4: version "1.5.4" resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb" @@ -7316,7 +7597,7 @@ decamelize-keys@^1.1.0: decamelize "^1.1.0" map-obj "^1.0.0" -decamelize@^1.1.0, decamelize@^1.2.0: +decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= @@ -7945,6 +8226,13 @@ ecdsa-sig-formatter@1.0.11, ecdsa-sig-formatter@^1.0.11: dependencies: safe-buffer "^5.0.1" +ed25519.js@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/ed25519.js/-/ed25519.js-1.3.0.tgz#11ff48508c4964302179aee33d2f870371df4ad8" + integrity sha512-KeS+1N/aTaHQdOIaVxKqfscrb7HRgVfRyOP3QkEGlpcMnuDN/3dVvm5t1/DpsH4NeFrv1g6wtut5vdVMRw4DqQ== + dependencies: + buffer "5.0.2" + ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" @@ -10016,6 +10304,16 @@ google-protobuf@3.15.8: resolved "https://registry.yarnpkg.com/google-protobuf/-/google-protobuf-3.15.8.tgz#5f3948905e4951c867d6bc143f385a80e2a39efe" integrity sha512-2jtfdqTaSxk0cuBJBtTTWsot4WtR9RVr2rXg7x7OoqiuOKopPrwXpM1G4dXIkLcUNRh3RKzz76C8IOkksZSeOw== +google-protobuf@3.18.0-rc.2: + version "3.18.0-rc.2" + resolved "https://registry.yarnpkg.com/google-protobuf/-/google-protobuf-3.18.0-rc.2.tgz#b35934083724ed0e78a789309739c75a8136ea32" + integrity sha512-mKZG5WYrwR/y1mA8xB+qI1O/6Pmvu4V6zldf+dpHdx6zoyVWT5lJTyXU8rAlpL7jtbe47e6M9L4PyWnKsYMOXQ== + +google-protobuf@^3.6.1, google-protobuf@^3.9.1: + version "3.17.3" + resolved "https://registry.yarnpkg.com/google-protobuf/-/google-protobuf-3.17.3.tgz#f87595073545a77946c8f0b67c302c5f7646d700" + integrity sha512-OVPzcSWIAJ+d5yiHyeaLrdufQtrvaBrF4JQg+z8ynTkbO3uFcujqXszTumqg1cGsAsjkWnI+M5B1xZ19yR4Wyg== + got@9.6.0, got@^9.6.0: version "9.6.0" resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" @@ -10109,6 +10407,18 @@ grpc-tools@1.11.2: dependencies: "@mapbox/node-pre-gyp" "^1.0.5" +grpc@1.24.11: + version "1.24.11" + resolved "https://registry.yarnpkg.com/grpc/-/grpc-1.24.11.tgz#7039da9f6f22ce35168535a6d5dda618398a5966" + integrity sha512-8/AQdFCzCeCDWW3SoaMNp6ccbRvTQEH1O1u1uFtt29eWsg5gSZCJ3m6fbkduEIh3smY7WAPP+LgVJ5n3nZRxcA== + dependencies: + "@mapbox/node-pre-gyp" "^1.0.4" + "@types/bytebuffer" "^5.0.40" + lodash.camelcase "^4.3.0" + lodash.clone "^4.5.0" + nan "^2.13.2" + protobufjs "^5.0.3" + grpc_tools_node_protoc_ts@5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/grpc_tools_node_protoc_ts/-/grpc_tools_node_protoc_ts-5.3.1.tgz#6f81ab7c8289c801cba3373aa334c13ca8f29618" @@ -10922,6 +11232,11 @@ interpret@^2.2.0: resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== +invert-kv@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" + integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= + io-ts@1.10.4: version "1.10.4" resolved "https://registry.yarnpkg.com/io-ts/-/io-ts-1.10.4.tgz#cd5401b138de88e4f920adbcb7026e2d1967e6e2" @@ -11046,6 +11361,26 @@ ipfs-utils@^8.1.2, ipfs-utils@^8.1.4: react-native-fetch-api "^2.0.0" stream-to-it "^0.2.2" +iroha-helpers-ts@0.9.25-ss: + version "0.9.25-ss" + resolved "https://registry.yarnpkg.com/iroha-helpers-ts/-/iroha-helpers-ts-0.9.25-ss.tgz#3091e4ee3009ef3ddd13ae9134e55f1b9edd308c" + integrity sha512-bbmhgrlf1B/TlWyBNd9EQVJLYfL/mXWohxsVu9jDVV1L21B4uM0CtSdllGsEncKbNBheLjYQ4Z7zgxKDxn6+zA== + dependencies: + "@improbable-eng/grpc-web" "^0.12.0" + "@improbable-eng/grpc-web-node-http-transport" "^0.13.0" + babel-preset-minify "^0.5.1" + buffer "^5.4.0" + ed25519.js "^1.3.0" + google-protobuf "^3.9.1" + js-sha3 "^0.8.0" + lodash.clonedeep "^4.5.0" + lodash.flow "^3.5.0" + lodash.isequal "^4.5.0" + lodash.isplainobject "^4.0.6" + ts-protoc-gen "^0.12.0" + tslib "^1.10.0" + tweetnacl "^1.0.3" + is-absolute-url@^3.0.3: version "3.0.3" resolved "https://registry.yarnpkg.com/is-absolute-url/-/is-absolute-url-3.0.3.tgz#96c6a22b6a23929b11ea0afb1836c36ad4a5d698" @@ -12384,6 +12719,13 @@ latest-version@^5.0.0: dependencies: package-json "^6.3.0" +lcid@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" + integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= + dependencies: + invert-kv "^1.0.0" + lcov-parse@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lcov-parse/-/lcov-parse-1.0.0.tgz#eb0d46b54111ebc561acb4c408ef9363bdc8f7e0" @@ -12715,6 +13057,11 @@ lodash.camelcase@^4.3.0: resolved "https://registry.yarnpkg.com/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz#b28aa6288a2b9fc651035c7711f65ab6190331a6" integrity sha1-soqmKIorn8ZRA1x3EfZathkDMaY= +lodash.clone@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clone/-/lodash.clone-4.5.0.tgz#195870450f5a13192478df4bc3d23d2dea1907b6" + integrity sha1-GVhwRQ9aExkkeN9Lw9I9LeoZB7Y= + lodash.clonedeep@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" @@ -12730,6 +13077,11 @@ lodash.flattendeep@^4.4.0: resolved "https://registry.yarnpkg.com/lodash.flattendeep/-/lodash.flattendeep-4.4.0.tgz#fb030917f86a3134e5bc9bec0d69e0013ddfedb2" integrity sha1-+wMJF/hqMTTlvJvsDWngAT3f7bI= +lodash.flow@^3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/lodash.flow/-/lodash.flow-3.5.0.tgz#87bf40292b8cf83e4e8ce1a3ae4209e20071675a" + integrity sha1-h79AKSuM+D5OjOGjrkIJ4gBxZ1o= + lodash.includes@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" @@ -12740,6 +13092,11 @@ lodash.isboolean@^3.0.3: resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" integrity sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY= +lodash.isequal@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.isequal/-/lodash.isequal-4.5.0.tgz#415c4478f2bcc30120c22ce10ed3226f7d3e18e0" + integrity sha1-QVxEePK8wwEgwizhDtMib30+GOA= + lodash.isinteger@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" @@ -12907,6 +13264,11 @@ long@^4.0.0: resolved "https://registry.yarnpkg.com/long/-/long-4.0.0.tgz#9a7b71cfb7d361a194ea555241c92f7468d5bf28" integrity sha512-XsP+KhQif4bjX1kbuSiySJFNAehNxgLb6hPRGJ9QsUr8ajHkuXGdrHmFUTUUXhDwVX2R5bY4JNZEwbUiMhV+MA== +long@~3: + version "3.2.0" + resolved "https://registry.yarnpkg.com/long/-/long-3.2.0.tgz#d821b7138ca1cb581c172990ef14db200b5c474b" + integrity sha1-2CG3E4yhy1gcFymQ7xTbIAtcR0s= + loose-envify@^1.1.0, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" @@ -13705,7 +14067,7 @@ mute-stream@0.0.8, mute-stream@~0.0.4: resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== -nan@^2.12.1, nan@^2.14.0, nan@^2.14.1, nan@^2.14.2, nan@^2.15.0, nan@^2.2.1: +nan@^2.12.1, nan@^2.13.2, nan@^2.14.0, nan@^2.14.1, nan@^2.14.2, nan@^2.15.0, nan@^2.2.1: version "2.15.0" resolved "https://registry.yarnpkg.com/nan/-/nan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee" integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ== @@ -14449,6 +14811,11 @@ open@^7.0.0: is-docker "^2.0.0" is-wsl "^2.1.1" +openapi-types@7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/openapi-types/-/openapi-types-7.0.1.tgz#966bcacfd14119fa12000dbc9d588bfd8df2e4d1" + integrity sha512-6pi4/Fw+JIW1HHda2Ij7LRJ5QJ8f6YzaXnsRA6m44BJz8nLq/j5gVFzPBKJo+uOFhAeHqZC/3uzhTpYPga3Q/A== + openapi-types@9.1.0: version "9.1.0" resolved "https://registry.yarnpkg.com/openapi-types/-/openapi-types-9.1.0.tgz#a2ab0acc5198c1725f83d7cbe063efd1bcd0479e" @@ -14490,6 +14857,11 @@ optionator@^0.9.1: type-check "^0.4.0" word-wrap "^1.2.3" +optjs@~3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/optjs/-/optjs-3.2.2.tgz#69a6ce89c442a44403141ad2f9b370bd5bb6f4ee" + integrity sha1-aabOicRCpEQDFBrS+bNwvVu29O4= + ora@5.4.1, ora@^5.3.0: version "5.4.1" resolved "https://registry.yarnpkg.com/ora/-/ora-5.4.1.tgz#1b2678426af4ac4a509008e5e4ac9e9959db9e18" @@ -14532,6 +14904,13 @@ os-homedir@^1.0.0: resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= +os-locale@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-1.4.0.tgz#20f9f17ae29ed345e8bde583b13d2009803c14d9" + integrity sha1-IPnxeuKe00XoveWDsT0gCYA8FNk= + dependencies: + lcid "^1.0.0" + os-tmpdir@^1.0.0, os-tmpdir@~1.0.1, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -15795,6 +16174,13 @@ progress@^2.0.0, progress@^2.0.3: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== +prom-client@13.1.0: + version "13.1.0" + resolved "https://registry.yarnpkg.com/prom-client/-/prom-client-13.1.0.tgz#1185caffd8691e28d32e373972e662964e3dba45" + integrity sha512-jT9VccZCWrJWXdyEtQddCDszYsiuWj5T0ekrPszi/WEegj3IZy6Mm09iOOVM86A4IKMWq8hZkT2dD9MaSe+sng== + dependencies: + tdigest "^0.1.1" + prom-client@13.2.0: version "13.2.0" resolved "https://registry.yarnpkg.com/prom-client/-/prom-client-13.2.0.tgz#99d13357912dd400f8911b77df19f7b328a93e92" @@ -15865,6 +16251,16 @@ protobufjs@6.11.2, protobufjs@^6.10.0, protobufjs@^6.10.2, protobufjs@^6.11.2: "@types/node" ">=13.7.0" long "^4.0.0" +protobufjs@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/protobufjs/-/protobufjs-5.0.3.tgz#e4dfe9fb67c90b2630d15868249bcc4961467a17" + integrity sha512-55Kcx1MhPZX0zTbVosMQEO5R6/rikNXd9b6RQK4KSPcrSIIwoXTtebIczUrXlwaSrbz4x8XUVThGPob1n8I4QA== + dependencies: + ascli "~1" + bytebuffer "~5" + glob "^7.0.5" + yargs "^3.10.0" + protoc-gen-ts@0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/protoc-gen-ts/-/protoc-gen-ts-0.4.0.tgz#4be7e2086dc32db15f01733a7a200793f1e1081a" @@ -18781,6 +19177,13 @@ ts-node@^10.0.0: make-error "^1.1.1" yn "3.1.1" +ts-protoc-gen@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/ts-protoc-gen/-/ts-protoc-gen-0.12.0.tgz#932e5738f14b67e7202825b06f8c548cb7d8ef34" + integrity sha512-V7jnICJxKqalBrnJSMTW5tB9sGi48gOC325bfcM7TDNUItVOlaMM//rQmuo49ybipk/SyJTnWXgtJnhHCevNJw== + dependencies: + google-protobuf "^3.6.1" + tsconfig-paths@^3.9.0: version "3.11.0" resolved "https://registry.yarnpkg.com/tsconfig-paths/-/tsconfig-paths-3.11.0.tgz#954c1fe973da6339c78e06b03ce2e48810b65f36" @@ -20071,6 +20474,11 @@ wildcard@^2.0.0: resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== +window-size@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/window-size/-/window-size-0.1.4.tgz#f8e1aa1ee5a53ec5bf151ffa09742a6ad7697876" + integrity sha1-+OGqHuWlPsW/FR/6CXQqatdpeHY= + winston@^2.4.5: version "2.4.5" resolved "https://registry.yarnpkg.com/winston/-/winston-2.4.5.tgz#f2e431d56154c4ea765545fc1003bd340c95b59a" @@ -20301,6 +20709,11 @@ xtend@^4.0.0, xtend@^4.0.1, xtend@^4.0.2, xtend@~4.0.0, xtend@~4.0.1: resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== +y18n@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696" + integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== + y18n@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" @@ -20435,6 +20848,19 @@ yargs@^17.0.0: y18n "^5.0.5" yargs-parser "^20.2.2" +yargs@^3.10.0: + version "3.32.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-3.32.0.tgz#03088e9ebf9e756b69751611d2a5ef591482c995" + integrity sha1-AwiOnr+edWtpdRYR0qXvWRSCyZU= + dependencies: + camelcase "^2.0.1" + cliui "^3.0.3" + decamelize "^1.1.1" + os-locale "^1.4.0" + string-width "^1.0.1" + window-size "^0.1.4" + y18n "^3.2.0" + yauzl@^2.10.0, yauzl@^2.4.2: version "2.10.0" resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9"