From 65eaba5d4daedd72688bc136597cc6a06a7c05f1 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Mon, 23 Oct 2023 20:04:02 +0500 Subject: [PATCH 01/19] added tutorial introduction and incomplete project setup (both untested) --- .../tutorials/create-wraps/introduction.md | 46 ++++++++++++++++ .../create-wraps/part-one/project-setup.md | 54 +++++++++++++++++++ 2 files changed, 100 insertions(+) create mode 100644 src/docs/tutorials/create-wraps/introduction.md create mode 100644 src/docs/tutorials/create-wraps/part-one/project-setup.md diff --git a/src/docs/tutorials/create-wraps/introduction.md b/src/docs/tutorials/create-wraps/introduction.md new file mode 100644 index 00000000..9513fc72 --- /dev/null +++ b/src/docs/tutorials/create-wraps/introduction.md @@ -0,0 +1,46 @@ +--- +id: 'introduction' +title: 'Create a Wrap Tutorial' +--- + +// TODO: link to "What is Polywrap" or a wrap Concept section +If you want to learn how to build a Polywrap "wrap", you've come to the right place! In this guide, we will build a new Polywrap wrap. The guide is split into two parts. + +:::tip +👋 This guide is meant for those who want to build and deploy their own wraps. If you're interested in integrating existing wraps into your app, see our [Integrate into a JS App](../../use-wraps/install-client) guide. +::: + +In Part One, we cover everything you need to know to build, test, and deploy a wrap that you can use in your app today. Part one will stick to the "happy path", where we rely on default configurations that serve most use cases well. + +// TODO: Add links to concepts + +We will learn how to: +- Add basic project metadata to the `polywrap.yaml` project manifest +- Define the wrap's interface in the `polywrap.graphql` schema +- Build a wrap +- Import and invoke other wraps +- Import and work with interface wraps +- Test the wrap +- Add a readme to the wrap package +- Deploy the wrap package to IPFS + +In Part Two, we discuss the various ways you can configure and customize Polywrap's build tools to suite the needs of your project. + +We will touch on: +- Overview of default Polywrap Client configuration + - Learn which interfaces and plugins are already available to your users +- Advanced configuration for the `polywrap.yaml` project manifest +- Customize the build process with the `polywrap.build.yaml` build manifest +- Configure deployment with the `polywrap.deploy.yaml` deployment manifest +- Easily manage local test infrastructure with the `polywrap.infra.yaml` infrastructure manifest +- Advanced wrap testing with Polywrap Workflows and the `polywrap.test.yaml` manifest + +If at any time in this process you get stuck or have questions, please reach out to us on [Discord](https://discord.com/invite/Z5m88a5qWu). + +## **Prerequisites** + +If you haven't already, you'll need to [install the Polywrap CLI]. We'll be using it throughout the tutorial. + +To build your wrap without installing additional dependencies, you will need [Docker](https://docs.docker.com/get-docker/) and [Docker Compose](https://docs.docker.com/compose/install/). + +The Polywrap CLI uses Docker by default, and we will use it in this tutorial. You can learn how to build a wrap without Docker in [TODO: LINK TO BUILD MANIFEST TUTORIAL]. \ No newline at end of file diff --git a/src/docs/tutorials/create-wraps/part-one/project-setup.md b/src/docs/tutorials/create-wraps/part-one/project-setup.md new file mode 100644 index 00000000..5684133b --- /dev/null +++ b/src/docs/tutorials/create-wraps/part-one/project-setup.md @@ -0,0 +1,54 @@ +--- +id: 'project-setup' +title: 'Project Setup' +--- + +:::tip +You're reading Part One of the [Create a Wrap](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. +::: + + +## **Create the Project** + +Let's first generate our project scaffolding using the Polywrap CLI. The `create` command of the Polywrap CLI uses the syntax `polywrap create `. This tutorial is about building Wasm wraps, so let's create a `wasm` project and name it `my-wrap` + + + + + ```shell-session + polywrap create wasm rust my-wrap + ``` + + + + + + ```shell-session + polywrap create wasm golang my-wrap + ``` + + + + + + ```shell-session + polywrap create wasm typescript my-wrap + ``` + + + + + + ```shell-session + polywrap create wasm assemblyscript my-wrap + ``` + + + + + +After running this command, you'll see a new folder appear with the project name. + +## Project Contents + +... \ No newline at end of file From 6651568a913adb4524ddbd054c7a392ad136b6b3 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Tue, 24 Oct 2023 19:33:41 +0500 Subject: [PATCH 02/19] added create wraps tutorial - project setup --- package.json | 3 +- .../assemblyscript/.gitignore | 5 + .../assemblyscript/.nvmrc | 1 + .../assemblyscript/README.md | 16 + .../assemblyscript/jest.config.js | 15 + .../assemblyscript/package.json | 28 + .../assemblyscript/polywrap.build.yaml | 8 + .../assemblyscript/polywrap.deploy.yaml | 7 + .../assemblyscript/polywrap.graphql | 7 + .../assemblyscript/polywrap.test.yaml | 10 + .../assemblyscript/polywrap.yaml | 9 + .../src/__tests__/e2e/integration.spec.ts | 31 + .../src/__tests__/types/polywrap.app.yaml | 9 + .../src/__tests__/types/schema.graphql | 1 + .../assemblyscript/src/index.ts | 9 + .../assemblyscript/tsconfig.build.json | 12 + .../assemblyscript/tsconfig.json | 28 + .../assemblyscript/workflows/validator.cue | 11 + .../assemblyscript/yarn.lock | 8 + .../create-wraps-tutorial/golang/.gitignore | 6 + snippets/create-wraps-tutorial/golang/.nvmrc | 1 + .../create-wraps-tutorial/golang/README.md | 15 + .../golang/build-staging/module.wasm | Bin 0 -> 575977 bytes snippets/create-wraps-tutorial/golang/go.mod | 7 + snippets/create-wraps-tutorial/golang/go.sum | 4 + .../golang/jest.config.js | 15 + .../module/__tests__/e2e/integration.spec.ts | 31 + .../module/__tests__/types/polywrap.app.yaml | 9 + .../module/__tests__/types/schema.graphql | 1 + .../golang/module/module.go | 11 + .../create-wraps-tutorial/golang/package.json | 22 + .../golang/polywrap.graphql | 7 + .../golang/polywrap.test.cue | 11 + .../golang/polywrap.test.yaml | 10 + .../golang/polywrap.yaml | 7 + .../golang/tsconfig.json | 28 + .../create-wraps-tutorial/golang/yarn.lock | 8 + .../create-wraps-tutorial/rust/.gitignore | 6 + snippets/create-wraps-tutorial/rust/.nvmrc | 1 + .../create-wraps-tutorial/rust/Cargo.toml | 26 + snippets/create-wraps-tutorial/rust/README.md | 15 + .../create-wraps-tutorial/rust/package.json | 18 + .../rust/polywrap.build.yaml | 4 + .../rust/polywrap.deploy.yaml | 7 + .../rust/polywrap.graphql | 7 + .../rust/polywrap.test.cue | 11 + .../rust/polywrap.test.yaml | 10 + .../create-wraps-tutorial/rust/polywrap.yaml | 9 + .../create-wraps-tutorial/rust/src/lib.rs | 10 + .../rust/tests/it/mod.rs | 1 + .../rust/tests/it/module.rs | 14 + .../create-wraps-tutorial/rust/tests/mod.rs | 2 + .../rust/tests/types/mod.rs | 1 + .../rust/tests/types/polywrap.app.graphql | 1 + .../rust/tests/types/polywrap.app.yaml | 6 + snippets/create-wraps-tutorial/rust/yarn.lock | 8 + .../typescript/.gitignore | 12 + .../typescript/README.md | 1 + .../typescript/jest.config.js | 15 + .../typescript/package.json | 28 + .../typescript/polywrap.build.yaml | 3 + .../typescript/polywrap.graphql | 3 + .../typescript/polywrap.yaml | 7 + .../typescript/rollup.config.mjs | 21 + .../create-wraps-tutorial/typescript/shims.js | 253 +++ .../src/__tests__/integration.spec.ts | 22 + .../typescript/src/index.ts | 7 + .../typescript/tsconfig.json | 29 + .../typescript/yarn.lock | 8 + .../tutorials/create-wraps/introduction.md | 2 +- .../create-wraps/part-one/project-setup.md | 109 +- yarn.lock | 1582 ++++++++++++++++- 72 files changed, 2640 insertions(+), 30 deletions(-) create mode 100644 snippets/create-wraps-tutorial/assemblyscript/.gitignore create mode 100644 snippets/create-wraps-tutorial/assemblyscript/.nvmrc create mode 100644 snippets/create-wraps-tutorial/assemblyscript/README.md create mode 100644 snippets/create-wraps-tutorial/assemblyscript/jest.config.js create mode 100644 snippets/create-wraps-tutorial/assemblyscript/package.json create mode 100644 snippets/create-wraps-tutorial/assemblyscript/polywrap.build.yaml create mode 100644 snippets/create-wraps-tutorial/assemblyscript/polywrap.deploy.yaml create mode 100644 snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql create mode 100644 snippets/create-wraps-tutorial/assemblyscript/polywrap.test.yaml create mode 100644 snippets/create-wraps-tutorial/assemblyscript/polywrap.yaml create mode 100644 snippets/create-wraps-tutorial/assemblyscript/src/__tests__/e2e/integration.spec.ts create mode 100644 snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/polywrap.app.yaml create mode 100644 snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/schema.graphql create mode 100644 snippets/create-wraps-tutorial/assemblyscript/src/index.ts create mode 100644 snippets/create-wraps-tutorial/assemblyscript/tsconfig.build.json create mode 100644 snippets/create-wraps-tutorial/assemblyscript/tsconfig.json create mode 100644 snippets/create-wraps-tutorial/assemblyscript/workflows/validator.cue create mode 100644 snippets/create-wraps-tutorial/assemblyscript/yarn.lock create mode 100644 snippets/create-wraps-tutorial/golang/.gitignore create mode 100644 snippets/create-wraps-tutorial/golang/.nvmrc create mode 100644 snippets/create-wraps-tutorial/golang/README.md create mode 100755 snippets/create-wraps-tutorial/golang/build-staging/module.wasm create mode 100644 snippets/create-wraps-tutorial/golang/go.mod create mode 100644 snippets/create-wraps-tutorial/golang/go.sum create mode 100644 snippets/create-wraps-tutorial/golang/jest.config.js create mode 100644 snippets/create-wraps-tutorial/golang/module/__tests__/e2e/integration.spec.ts create mode 100644 snippets/create-wraps-tutorial/golang/module/__tests__/types/polywrap.app.yaml create mode 100644 snippets/create-wraps-tutorial/golang/module/__tests__/types/schema.graphql create mode 100644 snippets/create-wraps-tutorial/golang/module/module.go create mode 100644 snippets/create-wraps-tutorial/golang/package.json create mode 100644 snippets/create-wraps-tutorial/golang/polywrap.graphql create mode 100644 snippets/create-wraps-tutorial/golang/polywrap.test.cue create mode 100644 snippets/create-wraps-tutorial/golang/polywrap.test.yaml create mode 100644 snippets/create-wraps-tutorial/golang/polywrap.yaml create mode 100644 snippets/create-wraps-tutorial/golang/tsconfig.json create mode 100644 snippets/create-wraps-tutorial/golang/yarn.lock create mode 100644 snippets/create-wraps-tutorial/rust/.gitignore create mode 100644 snippets/create-wraps-tutorial/rust/.nvmrc create mode 100644 snippets/create-wraps-tutorial/rust/Cargo.toml create mode 100644 snippets/create-wraps-tutorial/rust/README.md create mode 100644 snippets/create-wraps-tutorial/rust/package.json create mode 100644 snippets/create-wraps-tutorial/rust/polywrap.build.yaml create mode 100644 snippets/create-wraps-tutorial/rust/polywrap.deploy.yaml create mode 100644 snippets/create-wraps-tutorial/rust/polywrap.graphql create mode 100644 snippets/create-wraps-tutorial/rust/polywrap.test.cue create mode 100644 snippets/create-wraps-tutorial/rust/polywrap.test.yaml create mode 100644 snippets/create-wraps-tutorial/rust/polywrap.yaml create mode 100644 snippets/create-wraps-tutorial/rust/src/lib.rs create mode 100644 snippets/create-wraps-tutorial/rust/tests/it/mod.rs create mode 100644 snippets/create-wraps-tutorial/rust/tests/it/module.rs create mode 100644 snippets/create-wraps-tutorial/rust/tests/mod.rs create mode 100644 snippets/create-wraps-tutorial/rust/tests/types/mod.rs create mode 100644 snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.graphql create mode 100644 snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.yaml create mode 100644 snippets/create-wraps-tutorial/rust/yarn.lock create mode 100644 snippets/create-wraps-tutorial/typescript/.gitignore create mode 100644 snippets/create-wraps-tutorial/typescript/README.md create mode 100644 snippets/create-wraps-tutorial/typescript/jest.config.js create mode 100644 snippets/create-wraps-tutorial/typescript/package.json create mode 100644 snippets/create-wraps-tutorial/typescript/polywrap.build.yaml create mode 100644 snippets/create-wraps-tutorial/typescript/polywrap.graphql create mode 100644 snippets/create-wraps-tutorial/typescript/polywrap.yaml create mode 100644 snippets/create-wraps-tutorial/typescript/rollup.config.mjs create mode 100644 snippets/create-wraps-tutorial/typescript/shims.js create mode 100644 snippets/create-wraps-tutorial/typescript/src/__tests__/integration.spec.ts create mode 100644 snippets/create-wraps-tutorial/typescript/src/index.ts create mode 100644 snippets/create-wraps-tutorial/typescript/tsconfig.json create mode 100644 snippets/create-wraps-tutorial/typescript/yarn.lock diff --git a/package.json b/package.json index 559cf692..b00d4755 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,8 @@ "npm-run-all": "^4.1.5", "onchange": "^7.1.0", "ts-node": "^10.9.1", - "typescript": "^4.7.4" + "typescript": "^4.7.4", + "polywrap": "0.12.1" }, "browserslist": { "production": [ diff --git a/snippets/create-wraps-tutorial/assemblyscript/.gitignore b/snippets/create-wraps-tutorial/assemblyscript/.gitignore new file mode 100644 index 00000000..cfe1001d --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/.gitignore @@ -0,0 +1,5 @@ +build +node_modules +wrap +.polywrap +workflows/output.json \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/assemblyscript/.nvmrc b/snippets/create-wraps-tutorial/assemblyscript/.nvmrc new file mode 100644 index 00000000..2f3b977c --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/.nvmrc @@ -0,0 +1 @@ +v18.15.0 \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/assemblyscript/README.md b/snippets/create-wraps-tutorial/assemblyscript/README.md new file mode 100644 index 00000000..c4aea040 --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/README.md @@ -0,0 +1,16 @@ +# Polywrap Wasm Wrapper Template +A simple starter template for an AssemblyScript Wasm wrapper. For more information on how this project works, and a step by step on how to extend its behavior, see the documentation [here](https://docs.polywrap.io/). + +# How To Run + +## Install Dependencies +`nvm install && nvm use` +`yarn` + +## Codegen & Build +`yarn codegen` +`yarn build` + +## Test +`yarn test:e2e` +`yarn test:workflow` diff --git a/snippets/create-wraps-tutorial/assemblyscript/jest.config.js b/snippets/create-wraps-tutorial/assemblyscript/jest.config.js new file mode 100644 index 00000000..4a4c022f --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/jest.config.js @@ -0,0 +1,15 @@ +module.exports = { + collectCoverage: false, + preset: "ts-jest", + testEnvironment: "node", + testMatch: ["**/__tests__/**/?(*.)+(spec|test).[jt]s?(x)"], + globals: { + "ts-jest": { + tsconfig: "tsconfig.json", + diagnostics: false, + }, + }, + testPathIgnorePatterns: [ + "/.polywrap/" + ], +}; diff --git a/snippets/create-wraps-tutorial/assemblyscript/package.json b/snippets/create-wraps-tutorial/assemblyscript/package.json new file mode 100644 index 00000000..5655b159 --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/package.json @@ -0,0 +1,28 @@ +{ + "name": "template-wasm-as", + "description": "Polywrap AssemblyScript Wrapper Template", + "private": true, + "version": "0.12.1", + "scripts": { + "codegen": "npx polywrap codegen", + "build": "npx polywrap build", + "test:env:up": "npx polywrap infra up --modules=eth-ens-ipfs", + "test:env:down": "npx polywrap infra down --modules=eth-ens-ipfs", + "deploy": "npx polywrap deploy", + "test": "yarn test:e2e && yarn test:workflow", + "test:e2e": "yarn test:e2e:codegen && jest --passWithNoTests --runInBand --verbose", + "test:e2e:codegen": "npx polywrap codegen -m ./src/__tests__/types/polywrap.app.yaml -g ./src/__tests__/types/wrap", + "test:workflow": "npx polywrap test -o ./workflows/output.json" + }, + "devDependencies": { + "@types/jest": "26.0.8", + "jest": "26.6.3", + "polywrap": "0.12.1", + "ts-jest": "26.5.4", + "typescript": "4.9.5" + }, + "dependencies": { + "@polywrap/wasm-as": "0.12.1", + "assemblyscript": "0.19.23" + } +} diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.build.yaml b/snippets/create-wraps-tutorial/assemblyscript/polywrap.build.yaml new file mode 100644 index 00000000..7a6e7fac --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/polywrap.build.yaml @@ -0,0 +1,8 @@ +format: 0.3.0 +strategies: + image: + name: wrap-wasm-as-build-image + node_version: 16.13.0 + include: + - ./package.json + - ./src diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.deploy.yaml b/snippets/create-wraps-tutorial/assemblyscript/polywrap.deploy.yaml new file mode 100644 index 00000000..f0444053 --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/polywrap.deploy.yaml @@ -0,0 +1,7 @@ +format: "0.1" +stages: + ipfs_deploy: + package: ipfs + uri: fs/./build + config: + gatewayUri: "https://ipfs.wrappers.io" \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql b/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql new file mode 100644 index 00000000..5b34469c --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql @@ -0,0 +1,7 @@ +type Module { + sampleMethod(arg: String!): SampleResult! +} + +type SampleResult { + result: String! +} diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.test.yaml b/snippets/create-wraps-tutorial/assemblyscript/polywrap.test.yaml new file mode 100644 index 00000000..1cb06da5 --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/polywrap.test.yaml @@ -0,0 +1,10 @@ +name: template-wasm-rs +format: 0.1.0 +validation: "./workflows/validator.cue" +jobs: + sampleMethod: + steps: + - uri: fs/build + method: sampleMethod + args: + arg: "polywrap" diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.yaml b/snippets/create-wraps-tutorial/assemblyscript/polywrap.yaml new file mode 100644 index 00000000..0474ff70 --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/polywrap.yaml @@ -0,0 +1,9 @@ +format: 0.3.0 +project: + name: template-wasm-as + type: wasm/assemblyscript +source: + module: ./src/index.ts + schema: ./polywrap.graphql +extensions: + build: ./polywrap.build.yaml diff --git a/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/e2e/integration.spec.ts b/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/e2e/integration.spec.ts new file mode 100644 index 00000000..55913c17 --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/e2e/integration.spec.ts @@ -0,0 +1,31 @@ +import { PolywrapClient } from "@polywrap/client-js"; +import * as App from "../types/wrap"; +import path from "path"; + +jest.setTimeout(60000); + +describe("Template Wrapper End to End Tests", () => { + + const client: PolywrapClient = new PolywrapClient(); + let wrapperUri: string; + + beforeAll(() => { + const dirname: string = path.resolve(__dirname); + const wrapperPath: string = path.join(dirname, "..", "..", ".."); + wrapperUri = `fs/${wrapperPath}/build`; + }) + + it("calls sampleMethod", async () => { + const expected: string = "polywrap"; + + const result = await client.invoke({ + uri: wrapperUri, + method: "sampleMethod", + args: { arg: expected } + }); + + expect(result.ok).toBeTruthy(); + if (!result.ok) return; + expect(result.value.result).toEqual(expected); + }); +}); diff --git a/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/polywrap.app.yaml b/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/polywrap.app.yaml new file mode 100644 index 00000000..c084aed0 --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/polywrap.app.yaml @@ -0,0 +1,9 @@ +format: 0.3.0 +project: + name: sample-typescript-type-generation + type: app/typescript +source: + schema: ./schema.graphql + import_abis: + - uri: "wrap://ens/sample.eth" + abi: "../../../build/wrap.info" diff --git a/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/schema.graphql b/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/schema.graphql new file mode 100644 index 00000000..6d75bfc9 --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/schema.graphql @@ -0,0 +1 @@ +#import * into Template from "wrap://ens/sample.eth" diff --git a/snippets/create-wraps-tutorial/assemblyscript/src/index.ts b/snippets/create-wraps-tutorial/assemblyscript/src/index.ts new file mode 100644 index 00000000..135f6e6b --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/src/index.ts @@ -0,0 +1,9 @@ +import { Args_sampleMethod, SampleResult, ModuleBase } from "./wrap"; + +export class Module extends ModuleBase { + sampleMethod(args: Args_sampleMethod): SampleResult { + return { + result: args.arg, + }; + } +} diff --git a/snippets/create-wraps-tutorial/assemblyscript/tsconfig.build.json b/snippets/create-wraps-tutorial/assemblyscript/tsconfig.build.json new file mode 100644 index 00000000..879b5b94 --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/tsconfig.build.json @@ -0,0 +1,12 @@ +{ + "extends": "assemblyscript/std/assembly.json", + "compilerOptions": { + "outDir": "build" + }, + "include": [ + "./src/**/*.ts", + ], + "exclude": [ + "./src/__tests__/e2e/**/*.ts" + ] +} \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/assemblyscript/tsconfig.json b/snippets/create-wraps-tutorial/assemblyscript/tsconfig.json new file mode 100644 index 00000000..3a5ba388 --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/tsconfig.json @@ -0,0 +1,28 @@ +{ + "compilerOptions": { + "lib": [ + "es2020", + "es2015", + "es5", + "dom" + ], + "esModuleInterop": true, + "outDir": "build", + "moduleResolution": "node", + "declaration": true, + "preserveSymlinks": true, + "preserveWatchOutput": true, + "pretty": false, + "forceConsistentCasingInFileNames": true, + "noFallthroughCasesInSwitch": true, + "noImplicitAny": true, + "noImplicitReturns": true, + "noUnusedLocals": true, + "module": "commonjs", + "sourceMap": true, + "target": "es5", + "resolveJsonModule": true, + "strictNullChecks": true + }, + "typeAcquisition": { "include": ["jest"] }, +} \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/assemblyscript/workflows/validator.cue b/snippets/create-wraps-tutorial/assemblyscript/workflows/validator.cue new file mode 100644 index 00000000..a71f50ac --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/workflows/validator.cue @@ -0,0 +1,11 @@ +package e2e + +sampleMethod: { + $0: { + data: { + value: "polywrap" + }, + error?: _|_, + } +} + diff --git a/snippets/create-wraps-tutorial/assemblyscript/yarn.lock b/snippets/create-wraps-tutorial/assemblyscript/yarn.lock new file mode 100644 index 00000000..e864ad01 --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/yarn.lock @@ -0,0 +1,8 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@polywrap/templates@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/templates/-/templates-0.12.1.tgz#df07423b8d6e7f5e37741cf03c24153c9690011a" + integrity sha512-+KSlXssRWUc8G/EUtn8kk7e6mYphFfJsYNahVABdnZ8JtQFE6D1Kaz1xFas50Wg1xvWx6eQrbvxCa/lN+6QRDw== diff --git a/snippets/create-wraps-tutorial/golang/.gitignore b/snippets/create-wraps-tutorial/golang/.gitignore new file mode 100644 index 00000000..ec0cd1fa --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/.gitignore @@ -0,0 +1,6 @@ +build +node_modules +wrap +.polywrap +target +workflows/output.json diff --git a/snippets/create-wraps-tutorial/golang/.nvmrc b/snippets/create-wraps-tutorial/golang/.nvmrc new file mode 100644 index 00000000..2f3b977c --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/.nvmrc @@ -0,0 +1 @@ +v18.15.0 \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/golang/README.md b/snippets/create-wraps-tutorial/golang/README.md new file mode 100644 index 00000000..502931c4 --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/README.md @@ -0,0 +1,15 @@ +# Polywrap Wasm Wrapper Template +A simple starter template for a Golang Wasm wrapper. For more information on how this project works, and a step by step on how to extend its behavior, see the documentation [here](https://docs.polywrap.io/). + +# How To Run + +## Install Dependencies +`nvm install && nvm use` +`yarn` + +## Codegen & Build +`yarn codegen` +`yarn build` + +## Test +`yarn test` diff --git a/snippets/create-wraps-tutorial/golang/build-staging/module.wasm b/snippets/create-wraps-tutorial/golang/build-staging/module.wasm new file mode 100755 index 0000000000000000000000000000000000000000..749b174e7e039ce5d609e1283190f9c77252a3bc GIT binary patch literal 575977 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 kAaZ}~ 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 arw>exjV>QAj+ZODk9n%*PhXCmjsFXtkky3% literal 0 HcmV?d00001 diff --git a/snippets/create-wraps-tutorial/golang/go.mod b/snippets/create-wraps-tutorial/golang/go.mod new file mode 100644 index 00000000..78573cf7 --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/go.mod @@ -0,0 +1,7 @@ +module example.com/template-wasm-go + +go 1.18 + +require github.com/polywrap/go-wrap wrap-0.1 + +require github.com/valyala/fastjson v1.6.3 // indirect diff --git a/snippets/create-wraps-tutorial/golang/go.sum b/snippets/create-wraps-tutorial/golang/go.sum new file mode 100644 index 00000000..8df2badd --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/go.sum @@ -0,0 +1,4 @@ +github.com/polywrap/go-wrap v0.0.0-20230712212127-6895977d63c2 h1:+O3G/996rX4SMlJNFA9AIjPSyrInzOEVb7PFOT96G9A= +github.com/polywrap/go-wrap v0.0.0-20230712212127-6895977d63c2/go.mod h1:rxqhIFKUzn/M46+zjnA1RHlCzLGQn2BiLWalezhLj/k= +github.com/valyala/fastjson v1.6.3 h1:tAKFnnwmeMGPbwJ7IwxcTPCNr3uIzoIj3/Fh90ra4xc= +github.com/valyala/fastjson v1.6.3/go.mod h1:CLCAqky6SMuOcxStkYQvblddUtoRxhYMGLrsQns1aXY= diff --git a/snippets/create-wraps-tutorial/golang/jest.config.js b/snippets/create-wraps-tutorial/golang/jest.config.js new file mode 100644 index 00000000..4a4c022f --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/jest.config.js @@ -0,0 +1,15 @@ +module.exports = { + collectCoverage: false, + preset: "ts-jest", + testEnvironment: "node", + testMatch: ["**/__tests__/**/?(*.)+(spec|test).[jt]s?(x)"], + globals: { + "ts-jest": { + tsconfig: "tsconfig.json", + diagnostics: false, + }, + }, + testPathIgnorePatterns: [ + "/.polywrap/" + ], +}; diff --git a/snippets/create-wraps-tutorial/golang/module/__tests__/e2e/integration.spec.ts b/snippets/create-wraps-tutorial/golang/module/__tests__/e2e/integration.spec.ts new file mode 100644 index 00000000..55913c17 --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/module/__tests__/e2e/integration.spec.ts @@ -0,0 +1,31 @@ +import { PolywrapClient } from "@polywrap/client-js"; +import * as App from "../types/wrap"; +import path from "path"; + +jest.setTimeout(60000); + +describe("Template Wrapper End to End Tests", () => { + + const client: PolywrapClient = new PolywrapClient(); + let wrapperUri: string; + + beforeAll(() => { + const dirname: string = path.resolve(__dirname); + const wrapperPath: string = path.join(dirname, "..", "..", ".."); + wrapperUri = `fs/${wrapperPath}/build`; + }) + + it("calls sampleMethod", async () => { + const expected: string = "polywrap"; + + const result = await client.invoke({ + uri: wrapperUri, + method: "sampleMethod", + args: { arg: expected } + }); + + expect(result.ok).toBeTruthy(); + if (!result.ok) return; + expect(result.value.result).toEqual(expected); + }); +}); diff --git a/snippets/create-wraps-tutorial/golang/module/__tests__/types/polywrap.app.yaml b/snippets/create-wraps-tutorial/golang/module/__tests__/types/polywrap.app.yaml new file mode 100644 index 00000000..4259744c --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/module/__tests__/types/polywrap.app.yaml @@ -0,0 +1,9 @@ +format: 0.4.0 +project: + name: sample-typescript-type-generation + type: app/typescript +source: + schema: ./schema.graphql + import_abis: + - uri: "wrap://ens/sample.eth" + abi: "../../../build/wrap.info" diff --git a/snippets/create-wraps-tutorial/golang/module/__tests__/types/schema.graphql b/snippets/create-wraps-tutorial/golang/module/__tests__/types/schema.graphql new file mode 100644 index 00000000..6d75bfc9 --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/module/__tests__/types/schema.graphql @@ -0,0 +1 @@ +#import * into Template from "wrap://ens/sample.eth" diff --git a/snippets/create-wraps-tutorial/golang/module/module.go b/snippets/create-wraps-tutorial/golang/module/module.go new file mode 100644 index 00000000..a3d140b9 --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/module/module.go @@ -0,0 +1,11 @@ +package module + +import ( + "example.com/template-wasm-go/module/wrap/types" +) + +func SampleMethod(args *types.ArgsSampleMethod) types.SampleResult { + return types.SampleResult{ + Result: args.Arg, + } +} diff --git a/snippets/create-wraps-tutorial/golang/package.json b/snippets/create-wraps-tutorial/golang/package.json new file mode 100644 index 00000000..aa9a0375 --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/package.json @@ -0,0 +1,22 @@ +{ + "name": "template-wasm-go", + "description": "Polywrap Golang Wrapper Template", + "private": true, + "version": "0.12.1", + "scripts": { + "codegen": "npx polywrap codegen", + "build": "npx polywrap build", + "deploy": "npx polywrap deploy", + "test": "yarn test:e2e && yarn test:workflow", + "test:e2e": "yarn test:e2e:codegen && jest --passWithNoTests --runInBand --verbose", + "test:e2e:codegen": "npx polywrap codegen -m ./module/__tests__/types/polywrap.app.yaml -g ./module/__tests__/types/wrap", + "test:workflow": "npx polywrap test" + }, + "devDependencies": { + "@types/jest": "26.0.8", + "jest": "26.6.3", + "polywrap": "0.12.1", + "ts-jest": "26.5.4", + "typescript": "4.9.5" + } +} diff --git a/snippets/create-wraps-tutorial/golang/polywrap.graphql b/snippets/create-wraps-tutorial/golang/polywrap.graphql new file mode 100644 index 00000000..5b34469c --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/polywrap.graphql @@ -0,0 +1,7 @@ +type Module { + sampleMethod(arg: String!): SampleResult! +} + +type SampleResult { + result: String! +} diff --git a/snippets/create-wraps-tutorial/golang/polywrap.test.cue b/snippets/create-wraps-tutorial/golang/polywrap.test.cue new file mode 100644 index 00000000..a71f50ac --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/polywrap.test.cue @@ -0,0 +1,11 @@ +package e2e + +sampleMethod: { + $0: { + data: { + value: "polywrap" + }, + error?: _|_, + } +} + diff --git a/snippets/create-wraps-tutorial/golang/polywrap.test.yaml b/snippets/create-wraps-tutorial/golang/polywrap.test.yaml new file mode 100644 index 00000000..2603e2d0 --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/polywrap.test.yaml @@ -0,0 +1,10 @@ +name: template-wasm-go +format: 0.1.0 +validation: "./polywrap.test.cue" +jobs: + sampleMethod: + steps: + - uri: fs/build + method: sampleMethod + args: + arg: "polywrap" diff --git a/snippets/create-wraps-tutorial/golang/polywrap.yaml b/snippets/create-wraps-tutorial/golang/polywrap.yaml new file mode 100644 index 00000000..0b1f3f35 --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/polywrap.yaml @@ -0,0 +1,7 @@ +format: 0.3.0 +project: + name: template-wasm-go + type: wasm/golang +source: + schema: ./polywrap.graphql + module: ./go.mod diff --git a/snippets/create-wraps-tutorial/golang/tsconfig.json b/snippets/create-wraps-tutorial/golang/tsconfig.json new file mode 100644 index 00000000..75bfa86f --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/tsconfig.json @@ -0,0 +1,28 @@ +{ + "compilerOptions": { + "lib": [ + "es2015", + "es5", + "dom" + ], + "esModuleInterop": true, + "outDir": "build", + "moduleResolution": "node", + "declaration": true, + "preserveSymlinks": true, + "preserveWatchOutput": true, + "pretty": false, + "forceConsistentCasingInFileNames": true, + "noFallthroughCasesInSwitch": true, + "noImplicitAny": true, + "noImplicitReturns": true, + "noUnusedLocals": true, + "module": "commonjs", + "sourceMap": true, + "target": "es5", + "resolveJsonModule": true, + "strictNullChecks": true, + "experimentalDecorators": true + }, + "typeAcquisition": { "include": ["jest"] } +} \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/golang/yarn.lock b/snippets/create-wraps-tutorial/golang/yarn.lock new file mode 100644 index 00000000..e864ad01 --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/yarn.lock @@ -0,0 +1,8 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@polywrap/templates@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/templates/-/templates-0.12.1.tgz#df07423b8d6e7f5e37741cf03c24153c9690011a" + integrity sha512-+KSlXssRWUc8G/EUtn8kk7e6mYphFfJsYNahVABdnZ8JtQFE6D1Kaz1xFas50Wg1xvWx6eQrbvxCa/lN+6QRDw== diff --git a/snippets/create-wraps-tutorial/rust/.gitignore b/snippets/create-wraps-tutorial/rust/.gitignore new file mode 100644 index 00000000..ec0cd1fa --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/.gitignore @@ -0,0 +1,6 @@ +build +node_modules +wrap +.polywrap +target +workflows/output.json diff --git a/snippets/create-wraps-tutorial/rust/.nvmrc b/snippets/create-wraps-tutorial/rust/.nvmrc new file mode 100644 index 00000000..2f3b977c --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/.nvmrc @@ -0,0 +1 @@ +v18.15.0 \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/Cargo.toml b/snippets/create-wraps-tutorial/rust/Cargo.toml new file mode 100644 index 00000000..a3a471c4 --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/Cargo.toml @@ -0,0 +1,26 @@ +[package] +name = "template_wasm_rs" +version = "0.1.0" +description = "A Polywrap Wasm wrapper template written in Rust" +authors = ["Polywrap"] +repository = "https://github.com/polywrap/monorepo" +license = "MIT" +edition = "2021" + +include = ["src"] + +[dependencies] +polywrap-wasm-rs = { version = "0.12.0" } +polywrap_msgpack_serde = "0.0.2-beta.7" +serde = { version = "1.0", features = ["derive"] } + +[dev-dependencies] +polywrap = { version = "0.1.9-beta.2" } + +[lib] +crate-type = ["cdylib"] + +[profile.release] +opt-level = 's' +lto = true +panic = 'abort' diff --git a/snippets/create-wraps-tutorial/rust/README.md b/snippets/create-wraps-tutorial/rust/README.md new file mode 100644 index 00000000..cbce544c --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/README.md @@ -0,0 +1,15 @@ +# Polywrap Wasm Wrapper Template +A simple starter template for a Rust Wasm wrapper. For more information on how this project works, and a step by step on how to extend its behavior, see the documentation [here](https://docs.polywrap.io/). + +# How To Run + +## Install Dependencies +`nvm install && nvm use` +`yarn` + +## Codegen & Build +`yarn codegen` +`yarn build` + +## Test +`yarn test` diff --git a/snippets/create-wraps-tutorial/rust/package.json b/snippets/create-wraps-tutorial/rust/package.json new file mode 100644 index 00000000..8aec722d --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/package.json @@ -0,0 +1,18 @@ +{ + "name": "template-wasm-rs", + "description": "Polywrap Rust Wrapper Template", + "private": true, + "version": "0.12.1", + "scripts": { + "codegen": "npx polywrap codegen", + "build": "npx polywrap build", + "deploy": "npx polywrap deploy", + "test": "yarn test:e2e && yarn test:workflow", + "test:e2e": "yarn test:e2e:codegen && cargo test --release", + "test:e2e:codegen": "npx polywrap codegen -m ./tests/types/polywrap.app.yaml -g ./tests/types/wrap", + "test:workflow": "npx polywrap test" + }, + "devDependencies": { + "polywrap": "0.12.1" + } +} diff --git a/snippets/create-wraps-tutorial/rust/polywrap.build.yaml b/snippets/create-wraps-tutorial/rust/polywrap.build.yaml new file mode 100644 index 00000000..875939c7 --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/polywrap.build.yaml @@ -0,0 +1,4 @@ +format: 0.2.0 +strategies: + image: + name: template-wasm-rs \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/polywrap.deploy.yaml b/snippets/create-wraps-tutorial/rust/polywrap.deploy.yaml new file mode 100644 index 00000000..2b9ab565 --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/polywrap.deploy.yaml @@ -0,0 +1,7 @@ +format: 0.1.0 +stages: + ipfs_deploy: + package: ipfs + uri: fs/./build + config: + gatewayUri: "https://ipfs.wrappers.io" \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/polywrap.graphql b/snippets/create-wraps-tutorial/rust/polywrap.graphql new file mode 100644 index 00000000..5b34469c --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/polywrap.graphql @@ -0,0 +1,7 @@ +type Module { + sampleMethod(arg: String!): SampleResult! +} + +type SampleResult { + result: String! +} diff --git a/snippets/create-wraps-tutorial/rust/polywrap.test.cue b/snippets/create-wraps-tutorial/rust/polywrap.test.cue new file mode 100644 index 00000000..72c37000 --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/polywrap.test.cue @@ -0,0 +1,11 @@ +package e2e + +sampleMethod: { + $0: { + data: { + value: "polywrap from sample_method" + }, + error?: _|_, + } +} + diff --git a/snippets/create-wraps-tutorial/rust/polywrap.test.yaml b/snippets/create-wraps-tutorial/rust/polywrap.test.yaml new file mode 100644 index 00000000..c622bccd --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/polywrap.test.yaml @@ -0,0 +1,10 @@ +name: template-wasm-rs +format: 0.1.0 +validation: "./polywrap.test.cue" +jobs: + sampleMethod: + steps: + - uri: fs/build + method: sampleMethod + args: + arg: "polywrap" diff --git a/snippets/create-wraps-tutorial/rust/polywrap.yaml b/snippets/create-wraps-tutorial/rust/polywrap.yaml new file mode 100644 index 00000000..a87ff9b7 --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/polywrap.yaml @@ -0,0 +1,9 @@ +format: 0.3.0 +project: + name: template-wasm-rs + type: wasm/rust +source: + module: ./Cargo.toml + schema: ./polywrap.graphql +extensions: + build: ./polywrap.build.yaml diff --git a/snippets/create-wraps-tutorial/rust/src/lib.rs b/snippets/create-wraps-tutorial/rust/src/lib.rs new file mode 100644 index 00000000..83c0727d --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/src/lib.rs @@ -0,0 +1,10 @@ +pub mod wrap; +pub use wrap::prelude::*; + +impl ModuleTrait for Module { + fn sample_method(args: ArgsSampleMethod) -> Result { + return Ok(SampleResult { + result: format!("{} from sample_method", args.arg), + }); + } +} diff --git a/snippets/create-wraps-tutorial/rust/tests/it/mod.rs b/snippets/create-wraps-tutorial/rust/tests/it/mod.rs new file mode 100644 index 00000000..a94a2104 --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/tests/it/mod.rs @@ -0,0 +1 @@ +pub mod module; \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/tests/it/module.rs b/snippets/create-wraps-tutorial/rust/tests/it/module.rs new file mode 100644 index 00000000..a738738b --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/tests/it/module.rs @@ -0,0 +1,14 @@ +use crate::types::wrap::types::{ + TemplateModule, + TemplateModuleArgsSampleMethod +}; + +#[test] +fn sample_method() { + let args = TemplateModuleArgsSampleMethod { + arg: "input data".to_string(), + }; + let template: TemplateModule = TemplateModule::new(None, None, None); + let response = template.sample_method(&args, None, None, None).unwrap(); + assert_eq!(response.result, "input data from sample_method"); +} diff --git a/snippets/create-wraps-tutorial/rust/tests/mod.rs b/snippets/create-wraps-tutorial/rust/tests/mod.rs new file mode 100644 index 00000000..e727a250 --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/tests/mod.rs @@ -0,0 +1,2 @@ +mod it; +mod types; \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/tests/types/mod.rs b/snippets/create-wraps-tutorial/rust/tests/types/mod.rs new file mode 100644 index 00000000..9fd51ef7 --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/tests/types/mod.rs @@ -0,0 +1 @@ +pub mod wrap; \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.graphql b/snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.graphql new file mode 100644 index 00000000..f3741e82 --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.graphql @@ -0,0 +1 @@ +#import * into Template from "fs/build" \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.yaml b/snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.yaml new file mode 100644 index 00000000..5f9fbba0 --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.yaml @@ -0,0 +1,6 @@ +format: 0.3.0 +project: + name: template-wasm-rs-app-types + type: app/rust +source: + schema: ./polywrap.app.graphql diff --git a/snippets/create-wraps-tutorial/rust/yarn.lock b/snippets/create-wraps-tutorial/rust/yarn.lock new file mode 100644 index 00000000..e864ad01 --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/yarn.lock @@ -0,0 +1,8 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@polywrap/templates@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/templates/-/templates-0.12.1.tgz#df07423b8d6e7f5e37741cf03c24153c9690011a" + integrity sha512-+KSlXssRWUc8G/EUtn8kk7e6mYphFfJsYNahVABdnZ8JtQFE6D1Kaz1xFas50Wg1xvWx6eQrbvxCa/lN+6QRDw== diff --git a/snippets/create-wraps-tutorial/typescript/.gitignore b/snippets/create-wraps-tutorial/typescript/.gitignore new file mode 100644 index 00000000..94ea4a0d --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/.gitignore @@ -0,0 +1,12 @@ +node_modules +build +yarn-error.log +coverage +.vscode +*.log +.polywrap +.DS_Store +src/wrap +report.* +.env +bundled \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/typescript/README.md b/snippets/create-wraps-tutorial/typescript/README.md new file mode 100644 index 00000000..5936379e --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/README.md @@ -0,0 +1 @@ +# TS Wrap Template diff --git a/snippets/create-wraps-tutorial/typescript/jest.config.js b/snippets/create-wraps-tutorial/typescript/jest.config.js new file mode 100644 index 00000000..4a4c022f --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/jest.config.js @@ -0,0 +1,15 @@ +module.exports = { + collectCoverage: false, + preset: "ts-jest", + testEnvironment: "node", + testMatch: ["**/__tests__/**/?(*.)+(spec|test).[jt]s?(x)"], + globals: { + "ts-jest": { + tsconfig: "tsconfig.json", + diagnostics: false, + }, + }, + testPathIgnorePatterns: [ + "/.polywrap/" + ], +}; diff --git a/snippets/create-wraps-tutorial/typescript/package.json b/snippets/create-wraps-tutorial/typescript/package.json new file mode 100644 index 00000000..41a85158 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/package.json @@ -0,0 +1,28 @@ +{ + "name": "template-wasm-ts", + "description": "", + "private": true, + "version": "0.12.1", + "main": "build/index.js", + "scripts": { + "bundle": "rollup -c", + "codegen": "polywrap codegen --verbose", + "build": "yarn bundle && npx polywrap build --no-codegen", + "test": "jest --passWithNoTests --runInBand --verbose", + "deploy": "polywrap deploy" + }, + "dependencies": { + "tslib": "^2.6.2" + }, + "devDependencies": { + "@rollup/plugin-commonjs": "^25.0.4", + "@rollup/plugin-node-resolve": "^15.2.0", + "@rollup/plugin-terser": "^0.4.3", + "@rollup/plugin-typescript": "^11.1.2", + "@types/jest": "26.0.8", + "jest": "26.6.3", + "polywrap": "0.12.1", + "rollup": "^3.28.0", + "typescript": "^5.1.6" + } +} diff --git a/snippets/create-wraps-tutorial/typescript/polywrap.build.yaml b/snippets/create-wraps-tutorial/typescript/polywrap.build.yaml new file mode 100644 index 00000000..4bdc6dc1 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/polywrap.build.yaml @@ -0,0 +1,3 @@ +format: 0.3.0 +config: + scriptFile: ./bundled/wrap.js \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/typescript/polywrap.graphql b/snippets/create-wraps-tutorial/typescript/polywrap.graphql new file mode 100644 index 00000000..a527c058 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/polywrap.graphql @@ -0,0 +1,3 @@ +type Module { + foo(bar: String!): String! +} diff --git a/snippets/create-wraps-tutorial/typescript/polywrap.yaml b/snippets/create-wraps-tutorial/typescript/polywrap.yaml new file mode 100644 index 00000000..8df1debb --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/polywrap.yaml @@ -0,0 +1,7 @@ +format: 0.5.0 +project: + name: ts-wrap-template + type: wasm/typescript +source: + schema: ./polywrap.graphql + module: ./bundled/wrap.js diff --git a/snippets/create-wraps-tutorial/typescript/rollup.config.mjs b/snippets/create-wraps-tutorial/typescript/rollup.config.mjs new file mode 100644 index 00000000..f89156e9 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/rollup.config.mjs @@ -0,0 +1,21 @@ +import typescript from "@rollup/plugin-typescript"; +import resolve from "@rollup/plugin-node-resolve"; +import commonjs from "@rollup/plugin-commonjs"; +import terser from "@rollup/plugin-terser"; +import shims from "./shims.js"; + +export default { + input: "src/wrap/entry.ts", + output: { + file: "bundled/wrap.js", + format: "cjs", + }, + plugins: [ + typescript(), + resolve(), + commonjs(), + shims(), + terser() + ], + treeshake: false, +}; diff --git a/snippets/create-wraps-tutorial/typescript/shims.js b/snippets/create-wraps-tutorial/typescript/shims.js new file mode 100644 index 00000000..0e8d008b --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/shims.js @@ -0,0 +1,253 @@ +const packagesShim = +` +// HACK: This is a hack because undefined, null, and functions are not supported by the JS Engine +function clean(obj, root = true) { + if (obj === undefined) { + return root ? "undefined" : undefined; + } else if (obj === null) { + return root ? "null" : undefined; + } else if (Array.isArray(obj)) { + return obj.map(x => clean(x, false)).filter(x => x !== undefined); + } else if (obj instanceof Error) { + return { message: obj.message }; + } else if (typeof obj === 'function') { + return root ? "function" : undefined; + } else if (typeof obj !== 'object') { + return obj; + } + + for (let key in obj) { + let value = clean(obj[key], false); + if (value === undefined) { + delete obj[key]; + } else { + obj[key] = value; + } + } + return obj; +} + +const console = { + log: function(...args) { + __wrap_subinvoke("plugin/console", "log", { args: clean(args) }); + }, + error: function(...args) { + __wrap_subinvoke("plugin/console", "error", { args: clean(args) }); + }, +}; + +function require(lib) { + function wrap(objName, obj) { + const origin = {}; + return new Proxy(origin, { + get(_, name) { + if (obj[name]) { + return obj[name]; + } else { + throw new Error(\`No method \${name} in \${objName}\`); + } + }, + }); + } + + const fs = { + readFileSync: (path) => { + return __wrap_subinvoke("plugin/fs", "readFileSync", clean({ path })).value; + }, + readFile: (...args) => { + const callback = args[args.length - 1]; + const result = __wrap_subinvoke("plugin/fs", "readFileSync", clean({ path: args[0] })); + callback && callback(result.error ? new Error(result.error) : undefined, result.value); + }, + writeFileSync: (path, data) => { + return __wrap_subinvoke("plugin/fs", "writeFileSync", clean({ path, data })).value; + }, + writeFile: (...args) => { + const callback = args[args.length - 1]; + const result = __wrap_subinvoke("plugin/fs", "writeFileSync", clean({ path: args[0], data: args[1] })); + callback && callback(result.error ? new Error(result.error) : undefined, result.value); + }, + appendFileSync: (path, data) => { + return __wrap_subinvoke("plugin/fs", "appendFileSync", clean({ path, data })).value; + }, + appendFile: (...args) => { + const callback = args[args.length - 1]; + const result = __wrap_subinvoke("plugin/fs", "appendFileSync", clean({ path: args[0], data: args[1] })); + callback && callback(result.error ? new Error(result.error) : undefined, result.value); + }, + existsSync: (path) => { + return __wrap_subinvoke("plugin/fs", "existsSync", clean({ path })).value; + }, + exists: (...args) => { + const callback = args[args.length - 1]; + const result = __wrap_subinvoke("plugin/fs", "existsSync", clean({ path: args[0] })); + callback && callback(result.error ? new Error(result.error) : undefined, result.value); + }, + renameSync: (oldPath, newPath) => { + return __wrap_subinvoke("plugin/fs", "renameSync", clean({ oldPath, newPath })).value; + }, + rename: (...args) => { + const callback = args[args.length - 1]; + const result = __wrap_subinvoke("plugin/fs", "renameSync", clean({ oldPath: args[0], newPath: args[1] })); + callback && callback(result.error ? new Error(result.error) : undefined, result.value); + }, + mkdirSync: (path) => { + return __wrap_subinvoke("plugin/fs", "mkdirSync", clean({ path })).value; + }, + mkdir: (...args) => { + const callback = args[args.length - 1]; + const result = __wrap_subinvoke("plugin/fs", "mkdirSync", clean({ path: args[0] })); + callback && callback(result.error ? new Error(result.error) : undefined, result.value); + }, + readdirSync: (path) => { + return __wrap_subinvoke("plugin/fs", "readdirSync", clean({ path })).value; + }, + readdir: (...args) => { + const callback = args[args.length - 1]; + const result = __wrap_subinvoke("plugin/fs", "readdirSync", clean({ path: args[0] })); + callback && callback(result.error ? new Error(result.error) : undefined, result.value); + }, + }; + + const fsPromises = { + readFile: (path) => { + return Promise.resolve(fs.readFileSync(path)); + }, + writeFile: (path, data) => { + return Promise.resolve(fs.writeFileSync(path, data)); + }, + appendFile: (path, data) => { + return Promise.resolve(fs.appendFileSync(path, data)); + }, + exists: (path) => { + return Promise.resolve(fs.existsSync(path)); + }, + rename: (oldPath, newPath) => { + return Promise.resolve(fs.renameSync(oldPath, newPath)); + }, + mkdir: (path) => { + return Promise.resolve(fs.mkdirSync(path)); + }, + readdir: (path) => { + return Promise.resolve(fs.readdirSync(path)); + } + }; + + const axios = { + get: (url, config) => { + return Promise.resolve(__wrap_subinvoke("plugin/axios", "get", clean({ url, config })).value); + }, + post: (url, data, config) => { + return Promise.resolve(__wrap_subinvoke("plugin/axios", "post", clean({ url, data, config })).value); + }, + put: (url, data, config) => { + return Promise.resolve(__wrap_subinvoke("plugin/axios", "put", clean({ url, data, config })).value); + }, + delete: (url, config) => { + return Promise.resolve(__wrap_subinvoke("plugin/axios", "delete", clean({ url, config })).value); + }, + head: (url, config) => { + return Promise.resolve(__wrap_subinvoke("plugin/axios", "head", clean({ url, config })).value); + }, + }; + + const util = (function() { + const exports = {}; + + var getOwnPropertyDescriptors = + function getOwnPropertyDescriptors(obj) { + var keys = Object.keys(obj); + var descriptors = {}; + for (var i = 0; i < keys.length; i++) { + descriptors[keys[i]] = Object.getOwnPropertyDescriptor(obj, keys[i]); + } + return descriptors; + }; + + var kCustomPromisifiedSymbol = undefined; + + exports.promisify = function promisify(original) { + if (typeof original !== 'function') + throw new TypeError('The "original" argument must be of type Function'); + + if (kCustomPromisifiedSymbol && original[kCustomPromisifiedSymbol]) { + var fn = original[kCustomPromisifiedSymbol]; + if (typeof fn !== 'function') { + throw new TypeError('The "util.promisify.custom" argument must be of type Function'); + } + Object.defineProperty(fn, kCustomPromisifiedSymbol, { + value: fn, enumerable: false, writable: false, configurable: true + }); + return fn; + } + + function fn() { + var promiseResolve, promiseReject; + var promise = new Promise(function (resolve, reject) { + promiseResolve = resolve; + promiseReject = reject; + }); + + var args = []; + for (var i = 0; i < arguments.length; i++) { + args.push(arguments[i]); + } + args.push(function (err, value) { + if (err) { + promiseReject(err); + } else { + promiseResolve(value); + } + }); + + try { + original.apply(this, args); + } catch (err) { + promiseReject(err); + } + + return promise; + } + + Object.setPrototypeOf(fn, Object.getPrototypeOf(original)); + + if (kCustomPromisifiedSymbol) Object.defineProperty(fn, kCustomPromisifiedSymbol, { + value: fn, enumerable: false, writable: false, configurable: true + }); + return Object.defineProperties( + fn, + getOwnPropertyDescriptors(original) + ); + } + + return exports; + })(); + + switch (lib) { + case "fs": + return wrap("fs", { + ...fs, + promises: fsPromises, + }); + case "util": + return wrap("util", util); + case "axios": + return wrap("axios", axios); + default: + throw new Error(\`Cannot do require('\${lib}'), '\${lib}' is an unknown import.\`); + } +} +`; + +const wrapCode = (code) => { + return `${packagesShim}\nconst __temp = (function () { \n${code}\n return __main(); })();\nclean(__temp)` +} + +module.exports = () => { + return { + name: 'wrap-shims', + renderChunk(code) { + return `${wrapCode(code)}`; + }, + } +} \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/typescript/src/__tests__/integration.spec.ts b/snippets/create-wraps-tutorial/typescript/src/__tests__/integration.spec.ts new file mode 100644 index 00000000..57933102 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/src/__tests__/integration.spec.ts @@ -0,0 +1,22 @@ +import { PolywrapClient } from "@polywrap/client-js"; +import path from "path"; + +jest.setTimeout(60000); + +describe("Template Wrapper End to End Tests", () => { + + const client: PolywrapClient = new PolywrapClient(); + let wrapUri = `file://${path.join(__dirname, "../../build")}`; + + it("invoke foo", async () => { + const result = await client.invoke({ + uri: wrapUri, + method: "foo", + args: { bar: "bar" } + }); + + expect(result.ok).toBeFalsy(); + if (result.ok) return; + expect(result.error?.toString()).toContain("Not implemented"); + }); +}); diff --git a/snippets/create-wraps-tutorial/typescript/src/index.ts b/snippets/create-wraps-tutorial/typescript/src/index.ts new file mode 100644 index 00000000..fb25fe8e --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/src/index.ts @@ -0,0 +1,7 @@ +import { Args_foo, ModuleBase } from "./wrap"; + +export class Module extends ModuleBase { + foo(args: Args_foo): string { + throw new Error("Not implemented"); + } +} diff --git a/snippets/create-wraps-tutorial/typescript/tsconfig.json b/snippets/create-wraps-tutorial/typescript/tsconfig.json new file mode 100644 index 00000000..bcd39950 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/tsconfig.json @@ -0,0 +1,29 @@ +{ + "compilerOptions": { + "esModuleInterop": true, + "lib": ["es2020"], + "importHelpers": true, + "downlevelIteration": true, + "experimentalDecorators": true, + "moduleResolution": "node", + "declaration": false, + "preserveSymlinks": true, + "preserveWatchOutput": true, + "pretty": false, + "forceConsistentCasingInFileNames": true, + "noFallthroughCasesInSwitch": true, + "noImplicitAny": true, + "noImplicitReturns": true, + "noUnusedLocals": true, + "sourceMap": true, + "outDir": "build", + "module": "ESNext", + "target": "ESNext", + "resolveJsonModule": true, + "strictNullChecks": true, + }, + "include": ["./src/**/*.ts"], + "exclude": [ + "./src/__tests__/**/*.ts" + ] +} diff --git a/snippets/create-wraps-tutorial/typescript/yarn.lock b/snippets/create-wraps-tutorial/typescript/yarn.lock new file mode 100644 index 00000000..e864ad01 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/yarn.lock @@ -0,0 +1,8 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@polywrap/templates@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/templates/-/templates-0.12.1.tgz#df07423b8d6e7f5e37741cf03c24153c9690011a" + integrity sha512-+KSlXssRWUc8G/EUtn8kk7e6mYphFfJsYNahVABdnZ8JtQFE6D1Kaz1xFas50Wg1xvWx6eQrbvxCa/lN+6QRDw== diff --git a/src/docs/tutorials/create-wraps/introduction.md b/src/docs/tutorials/create-wraps/introduction.md index 9513fc72..158edead 100644 --- a/src/docs/tutorials/create-wraps/introduction.md +++ b/src/docs/tutorials/create-wraps/introduction.md @@ -4,7 +4,7 @@ title: 'Create a Wrap Tutorial' --- // TODO: link to "What is Polywrap" or a wrap Concept section -If you want to learn how to build a Polywrap "wrap", you've come to the right place! In this guide, we will build a new Polywrap wrap. The guide is split into two parts. +If you want to learn how to build a Polywrap "wrap", you've come to the right place! In this guide, we will build a new Polywrap wrap called "OracleWrap". OracleWrap is capable of both obscuring and enlightening knowledge using hashing and generative AI. The guide is split into two parts. :::tip 👋 This guide is meant for those who want to build and deploy their own wraps. If you're interested in integrating existing wraps into your app, see our [Integrate into a JS App](../../use-wraps/install-client) guide. diff --git a/src/docs/tutorials/create-wraps/part-one/project-setup.md b/src/docs/tutorials/create-wraps/part-one/project-setup.md index 5684133b..7677c98f 100644 --- a/src/docs/tutorials/create-wraps/part-one/project-setup.md +++ b/src/docs/tutorials/create-wraps/part-one/project-setup.md @@ -10,7 +10,7 @@ You're reading Part One of the [Create a Wrap](../introduction) tutorial, where ## **Create the Project** -Let's first generate our project scaffolding using the Polywrap CLI. The `create` command of the Polywrap CLI uses the syntax `polywrap create `. This tutorial is about building Wasm wraps, so let's create a `wasm` project and name it `my-wrap` +Let's first generate our project scaffolding using the Polywrap CLI. The `create` command of the Polywrap CLI uses the syntax `polywrap create `. This tutorial is about building Wasm wraps, so let's create a `wasm` project and name it `oracle` @@ -51,4 +51,109 @@ After running this command, you'll see a new folder appear with the project name ## Project Contents -... \ No newline at end of file +Let's take a look at the contents of the project we just created. Then, in the next section, we'll review the project manifest file and learn how to configure it. + + + + +``` +polywrap.yaml # Project manifest File +polywrap.build.yaml # Build manifest File +polywrap.graphql # Wrap Schema +src/ +│ └── lib.rs # Entry point; exports module defined in schema +tests/ # Integration tests +Cargo.toml # Dependency management +package.json # Build scripts +tsconfig.json # TypeScript configuration (for integration tests) +``` + + + + + +``` +polywrap.yaml # Project manifest File +polywrap.build.yaml # Build manifest File +polywrap.graphql # Wrap Schema +module/ +│ ├── module.go # Entry point; exports module defined in schema +| └── __tests__/ # Integration tests +build-staging/ # Required boilerplate; don't modify +go.mod # Dependency management +package.json # Build scripts +tsconfig.json # TypeScript configuration (for integration tests) +``` + + + + + +``` +polywrap.yaml # Project manifest File +polywrap.build.yaml # Build manifest File +polywrap.graphql # Wrap Schema +src/ +│ ├── index.ts # Entry point; exports module defined in schema +| └── __tests__/ # Integration tests +package.json # Dependency management and build scripts +rollup.config.mjs # Bundler configuration +shims.js # Shims that provide a more native TypeScript experience +tsconfig.json # TypeScript configuration +``` + + + + + +``` +polywrap.yaml # Project manifest File +polywrap.build.yaml # Build manifest File +polywrap.graphql # Wrap Schema +src/ +│ ├── index.ts # Entry point; exports module defined in schema +| └── __tests__/ # Integration tests +package.json # Dependency management and build scripts +tsconfig.json # TypeScript configuration (for integration tests) +tsconfig.build.json # AssemblyScript configuration (for build) +``` + + + + +### **`polywrap.yaml`** +The `polywrap.yaml` project manifest is a high-level configuration file describing a Polywrap project. + +// TODO: link to build manifest customization in part 2 of tutorial +### **`polywrap.build.yaml`** +The `polywrap.build.yaml` build manifest enables build process customization. We won't need to modify this file, but we will learn how to do so anyway in Part Two of the tutorial. The file is not needed in most projects and can in fact be deleted. + +### **`polywrap.graphql`** +Each wrap project has a [Wrap Schema](/concepts/wrap-schema). The schema defines the wrap's interface, including dependencies, methods, and custom types. Polywrap uses the schema to generate the wrap's serialization bindings and validate the wrap's implementation. In this tutorial, we'll learn how to write a Wrap Schema. It's easy! + +### **Entry point** +The entry point file differs by language, but in all cases it exports the wrap module implementation. + +### **Tests folder** +The location of the tests folder differs by language, but in all cases it contains integration tests for the wrap. In addition, the tests folder contains a `types` folder with configuration files used to generate TypeScript bindings for the tests. The TypeScript bindings are based on your wrap's schema and can be used to write tests for your wrap with type safety. The bindings are optional, but we recommend using them. + +// TODO: link to advanced testing section +### **`package.json`** +We include a `package.json` file with pre-written build scripts and developer dependencies for testing, even if your wrap is not written in TypeScript or AssemblyScript. We understand that not every user wants to install NodeJS to build with Polywrap. Don't worry! In Part Two of the tutorial, we will learn how to write language-agnostic tests without any JavaScript dependencies. + +If you're building a Rust wrap, the `package.json` file is used only for build scripts and is not required for testing. Feel free to delete it or use it only as a reference. + +### **`tsconfig.json`** +Used to configure TypeScript for integration tests. + +### **`tsconfig.build.json`** +AssemblyScript only: used to configure AssemblyScript for wrap development. + +### **`rollup.config.mjs`** +TypeScript only: used to configure bundling for the wrap. + +### **`shims.js`** +TypeScript only: used to provide a more native TypeScript experience. + +### **`build-staging`** +Go only: required boilerplate; don't modify. \ No newline at end of file diff --git a/yarn.lock b/yarn.lock index fee2d01e..c38e6356 100644 --- a/yarn.lock +++ b/yarn.lock @@ -138,6 +138,16 @@ "@jridgewell/gen-mapping" "^0.1.0" "@jridgewell/trace-mapping" "^0.3.9" +"@apidevtools/json-schema-ref-parser@9.0.9": + version "9.0.9" + resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-9.0.9.tgz#d720f9256e3609621280584f2b47ae165359268b" + integrity sha512-GBD2Le9w2+lVFoc4vswGI/TjkNIZSVp7+9xPf+X3uidBfWnAeUWmquteSyt0+VCrhNMWj/FTABISQrD3Z/YA+w== + dependencies: + "@jsdevtools/ono" "^7.1.3" + "@types/json-schema" "^7.0.6" + call-me-maybe "^1.0.1" + js-yaml "^4.1.0" + "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.10.4", "@babel/code-frame@^7.16.0", "@babel/code-frame@^7.18.6", "@babel/code-frame@^7.21.4", "@babel/code-frame@^7.8.3": version "7.21.4" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.21.4.tgz#d0fa9e4413aca81f2b23b9442797bda1826edb39" @@ -1641,6 +1651,14 @@ url-loader "^4.1.1" webpack "^5.73.0" +"@dorgjelli/graphql-schema-cycles@1.1.4": + version "1.1.4" + resolved "https://registry.yarnpkg.com/@dorgjelli/graphql-schema-cycles/-/graphql-schema-cycles-1.1.4.tgz#31f230c61f624f7c2ceca7e18fad8b2cb07d392f" + integrity sha512-U5ARitMQWKjOAvwn1+0Z52R9sbNe1wpbgAbj2hOfRFb/vupfPlRwZLbuUZAlotMpkoxbTbk+GRmoiNzGcJfyHw== + dependencies: + graphql "15.5.0" + graphql-json-transform "^1.1.0-alpha.0" + "@emotion/babel-plugin@^11.10.6": version "11.10.6" resolved "https://registry.yarnpkg.com/@emotion/babel-plugin/-/babel-plugin-11.10.6.tgz#a68ee4b019d661d6f37dec4b8903255766925ead" @@ -1748,6 +1766,472 @@ resolved "https://registry.yarnpkg.com/@emotion/weak-memoize/-/weak-memoize-0.3.0.tgz#ea89004119dc42db2e1dba0f97d553f7372f6fcb" integrity sha512-AHPmaAx+RYfZz0eYu6Gviiagpmiyw98ySSlQvCUhVGDRtDFe4DBS0x1bSjdF3gqUDYOczB+yYvBTtEylYSdRhg== +"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" + integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/abstract-provider@5.7.0", "@ethersproject/abstract-provider@^5.6.1", "@ethersproject/abstract-provider@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef" + integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + +"@ethersproject/abstract-signer@5.7.0", "@ethersproject/abstract-signer@^5.6.2", "@ethersproject/abstract-signer@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2" + integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/address@5.7.0", "@ethersproject/address@^5.6.1", "@ethersproject/address@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37" + integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + +"@ethersproject/base64@5.7.0", "@ethersproject/base64@^5.6.1", "@ethersproject/base64@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c" + integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + +"@ethersproject/basex@5.7.0", "@ethersproject/basex@^5.6.1", "@ethersproject/basex@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b" + integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.6.2", "@ethersproject/bignumber@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2" + integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.6.1", "@ethersproject/bytes@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d" + integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.6.1", "@ethersproject/constants@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e" + integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + +"@ethersproject/contracts@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e" + integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + +"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.6.1", "@ethersproject/hash@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7" + integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/hdnode@5.7.0", "@ethersproject/hdnode@^5.6.2", "@ethersproject/hdnode@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf" + integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/json-wallets@5.7.0", "@ethersproject/json-wallets@^5.6.1", "@ethersproject/json-wallets@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360" + integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.6.1", "@ethersproject/keccak256@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a" + integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.6.0", "@ethersproject/logger@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892" + integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== + +"@ethersproject/networks@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.0.tgz#df72a392f1a63a57f87210515695a31a245845ad" + integrity sha512-MG6oHSQHd4ebvJrleEQQ4HhVu8Ichr0RDYEfHzsVAVjHNM+w36x9wp9r+hf1JstMXtseXDtkiVoARAG6M959AA== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/networks@^5.6.3", "@ethersproject/networks@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6" + integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/pbkdf2@5.7.0", "@ethersproject/pbkdf2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102" + integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + +"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.6.0", "@ethersproject/properties@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30" + integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/providers@5.6.8": + version "5.6.8" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.8.tgz#22e6c57be215ba5545d3a46cf759d265bb4e879d" + integrity sha512-Wf+CseT/iOJjrGtAOf3ck9zS7AgPmr2fZ3N97r4+YXN3mBePTG2/bJ8DApl9mVwYL+RpYbNxMEkEp4mPGdwG/w== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/base64" "^5.6.1" + "@ethersproject/basex" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.3" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/web" "^5.6.1" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/providers@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.0.tgz#a885cfc7650a64385e7b03ac86fe9c2d4a9c2c63" + integrity sha512-+TTrrINMzZ0aXtlwO/95uhAggKm4USLm1PbeCBR/3XZ7+Oey+3pMyddzZEyRhizHpy1HXV0FRWRMI1O3EGYibA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/random@5.7.0", "@ethersproject/random@^5.6.1", "@ethersproject/random@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c" + integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.6.1", "@ethersproject/rlp@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" + integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/sha2@5.7.0", "@ethersproject/sha2@^5.6.1", "@ethersproject/sha2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb" + integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.7.0", "@ethersproject/signing-key@^5.6.2", "@ethersproject/signing-key@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3" + integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/solidity@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8" + integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.6.1", "@ethersproject/strings@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2" + integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.6.2", "@ethersproject/transactions@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b" + integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + +"@ethersproject/units@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1" + integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/wallet@5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.6.2.tgz#cd61429d1e934681e413f4bc847a5f2f87e3a03c" + integrity sha512-lrgh0FDQPuOnHcF80Q3gHYsSUODp6aJLAdDmDV0xKCN/T7D99ta1jGVhulg3PY8wiXEngD0DfM0I2XKXlrqJfg== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/hdnode" "^5.6.2" + "@ethersproject/json-wallets" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/wordlists" "^5.6.1" + +"@ethersproject/wallet@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d" + integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/json-wallets" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/web@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.0.tgz#40850c05260edad8b54827923bbad23d96aac0bc" + integrity sha512-ApHcbbj+muRASVDSCl/tgxaH2LBkRMEYfLOLVa0COipx0+nlu0QKet7U2lEg0vdkh8XRSLf2nd1f1Uk9SrVSGA== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/web@^5.6.1", "@ethersproject/web@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae" + integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/wordlists@5.7.0", "@ethersproject/wordlists@^5.6.1", "@ethersproject/wordlists@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5" + integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@fetsorn/opentelemetry-console-exporter@0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@fetsorn/opentelemetry-console-exporter/-/opentelemetry-console-exporter-0.0.3.tgz#c137629fecc610c7667e68b528926e498e152c0b" + integrity sha512-+UDrzHANOPcp0+47xK7dqeKIlYSh5a5WpFaswzM9S2MnjQfP0zOysAunWFRb6CFYSj1hTeFotYYXr8tYbyBpoA== + +"@formatjs/ecma402-abstract@1.6.2": + version "1.6.2" + resolved "https://registry.yarnpkg.com/@formatjs/ecma402-abstract/-/ecma402-abstract-1.6.2.tgz#9d064a2cf790769aa6721e074fb5d5c357084bb9" + integrity sha512-aLBODrSRhHaL/0WdQ0T2UsGqRbdtRRHqqrs4zwNQoRsGBEtEAvlj/rgr6Uea4PSymVJrbZBoAyECM2Z3Pq4i0g== + dependencies: + tslib "^2.1.0" + +"@formatjs/intl-datetimeformat@3.2.12": + version "3.2.12" + resolved "https://registry.yarnpkg.com/@formatjs/intl-datetimeformat/-/intl-datetimeformat-3.2.12.tgz#c9b2e85f0267ee13ea615a8991995da3075e3b13" + integrity sha512-qvY5+dl3vlgH0iWRXwl8CG9UkSVB5uP2+HH//fyZZ01G4Ww5rxMJmia1SbUqatpoe/dX+Z+aLejCqUUyugyL2g== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-displaynames@4.0.10": + version "4.0.10" + resolved "https://registry.yarnpkg.com/@formatjs/intl-displaynames/-/intl-displaynames-4.0.10.tgz#5bbd1bbcd64a036b4be27798b650c864dcf4466a" + integrity sha512-KmYJQHynGnnMeqIWVXhbzCMcEC8lg1TfGVdcO9May6paDT+dksZoOBQc741t7iXi/YVO/wXEZdmXhUNX7ODZug== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-listformat@5.0.10": + version "5.0.10" + resolved "https://registry.yarnpkg.com/@formatjs/intl-listformat/-/intl-listformat-5.0.10.tgz#9f8c4ad5e8a925240e151ba794c41fba01f742cc" + integrity sha512-FLtrtBPfBoeteRlYcHvThYbSW2YdJTllR0xEnk6cr/6FRArbfPRYMzDpFYlESzb5g8bpQMKZy+kFQ6V2Z+5KaA== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-relativetimeformat@8.1.2": + version "8.1.2" + resolved "https://registry.yarnpkg.com/@formatjs/intl-relativetimeformat/-/intl-relativetimeformat-8.1.2.tgz#119f3dce97458991f86bf34a736880e4a7bc1697" + integrity sha512-LZUxbc9GHVGmDc4sqGAXugoxhvZV7EG2lG2c0aKERup2ixvmDMbbEN3iEEr5aKkP7YyGxXxgqDn2dwg7QCPR6Q== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl@1.8.2": + version "1.8.2" + resolved "https://registry.yarnpkg.com/@formatjs/intl/-/intl-1.8.2.tgz#6090e6c1826a92e70668dfe08b4ba30127ea3a85" + integrity sha512-9xHoNKPv4qQIQ5AVfpQbIPZanz50i7oMtZWrd6Fz7Q2GM/5uhBr9mrCrY1tz/+diP7uguKmhj1IweLYaxY3DTQ== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + "@formatjs/intl-datetimeformat" "3.2.12" + "@formatjs/intl-displaynames" "4.0.10" + "@formatjs/intl-listformat" "5.0.10" + "@formatjs/intl-relativetimeformat" "8.1.2" + fast-memoize "^2.5.2" + intl-messageformat "9.5.2" + intl-messageformat-parser "6.4.2" + tslib "^2.1.0" + "@hapi/hoek@^9.0.0": version "9.3.0" resolved "https://registry.yarnpkg.com/@hapi/hoek/-/hoek-9.3.0.tgz#8368869dcb735be2e7f5cb7647de78e167a251fb" @@ -1840,6 +2324,11 @@ "@jridgewell/resolve-uri" "3.1.0" "@jridgewell/sourcemap-codec" "1.4.14" +"@jsdevtools/ono@^7.1.3": + version "7.1.3" + resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" + integrity sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg== + "@leichtgewicht/ip-codec@^2.0.1": version "2.0.4" resolved "https://registry.yarnpkg.com/@leichtgewicht/ip-codec/-/ip-codec-2.0.4.tgz#b2ac626d6cb9c8718ab459166d4bb405b8ffa78b" @@ -1880,6 +2369,11 @@ resolved "https://registry.yarnpkg.com/@mdx-js/util/-/util-1.6.22.tgz#219dfd89ae5b97a8801f015323ffa4b62f45718b" integrity sha512-H1rQc1ZOHANWBvPcW+JpGwr+juXSxM8Q8YCkm3GhZd8REu1fHR3z99CErO1p9pkcfcxZnMdIZdIsXkOHY0NilA== +"@msgpack/msgpack@2.7.2": + version "2.7.2" + resolved "https://registry.yarnpkg.com/@msgpack/msgpack/-/msgpack-2.7.2.tgz#f34b8aa0c49f0dd55eb7eba577081299cbf3f90b" + integrity sha512-rYEi46+gIzufyYUAoHDnRzkWGxajpD9vVXFQ3g1vbjrBm6P7MBmm+s/fqPa46sxa+8FOUdEuRQKaugo5a4JWpw== + "@mui/base@5.0.0-alpha.124": version "5.0.0-alpha.124" resolved "https://registry.yarnpkg.com/@mui/base/-/base-5.0.0-alpha.124.tgz#164068642e41ba655fd2b9eaf881526909a41201" @@ -2017,11 +2511,379 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@opentelemetry/api-metrics@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api-metrics/-/api-metrics-0.32.0.tgz#0f09f78491a4b301ddf54a8b8a38ffa99981f645" + integrity sha512-g1WLhpG8B6iuDyZJFRGsR+JKyZ94m5LEmY2f+duEJ9Xb4XRlLHrZvh6G34OH6GJ8iDHxfHb/sWjJ1ZpkI9yGMQ== + dependencies: + "@opentelemetry/api" "^1.0.0" + +"@opentelemetry/api@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.2.0.tgz#89ef99401cde6208cff98760b67663726ef26686" + integrity sha512-0nBr+VZNKm9tvNDZFstI3Pq1fCTEDK5OZTnVKNvBNAKgd0yIvmwsP4m61rEv7ZP+tOUjWJhROpxK5MsnlF911g== + +"@opentelemetry/api@^1.0.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.6.0.tgz#de2c6823203d6f319511898bb5de7e70f5267e19" + integrity sha512-OWlrQAnWn9577PhVgqjUvMr1pg57Bc4jv0iL4w0PRuOSRvq67rvHW9Ie/dZVMvCzhSCB+UxhcY/PmCmFj33Q+g== + +"@opentelemetry/core@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.6.0.tgz#c55f8ab7496acef7dbd8c4eedef6a4d4a0143c95" + integrity sha512-MsEhsyCTfYme6frK8/AqEWwbS9SB3Ta5bjgz4jPQJjL7ijUM3JiLVvqh/kHo1UlUjbUbLmGG7jA5Nw4d7SMcLQ== + dependencies: + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/exporter-trace-otlp-http@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.32.0.tgz#55773290a221855c4e8c422e8fb5e7ff4aa5f04e" + integrity sha512-8n44NDoEFoYG3mMToZxNyUKkHSGfzSShw6I2V5FApcH7rid20LmKiNuzc7lACneDIZBld+GGpLRuFhWniW8JhA== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/otlp-exporter-base" "0.32.0" + "@opentelemetry/otlp-transformer" "0.32.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + +"@opentelemetry/otlp-exporter-base@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.32.0.tgz#37dde162835a8fd23fa040f07e2938deb335fc4b" + integrity sha512-Dscxu4VNKrkD1SwGKdc7bAtLViGFJC8ah6Dr/vZn22NFHXSa53lSzDdTKeSTNNWH9sCGu/65LS45VMd4PsRvwQ== + dependencies: + "@opentelemetry/core" "1.6.0" + +"@opentelemetry/otlp-transformer@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-transformer/-/otlp-transformer-0.32.0.tgz#652c8f4c56c95f7d7ec39e20573b885d27ca13f1" + integrity sha512-PFAqfKgJpTOZryPe1UMm7R578PLxsK0wCAuKSt6m8v1bN/4DO8DX4HD7k3mYGZVU5jNg8tVZSwyIpY6ryrHDMQ== + dependencies: + "@opentelemetry/api-metrics" "0.32.0" + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-metrics" "0.32.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + +"@opentelemetry/resources@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.6.0.tgz#9756894131b9b0dfbcc0cecb5d4bd040d9c1b09d" + integrity sha512-07GlHuq72r2rnJugYVdGumviQvfrl8kEPidkZSVoseLVfIjV7nzxxt5/vqs9pK7JItWOrvjRdr/jTBVayFBr/w== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/sdk-metrics@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-metrics/-/sdk-metrics-0.32.0.tgz#463cd3a2b267f044db9aaab85887a171710345a0" + integrity sha512-zC9RCOIsXRqOHWmWfcxArtDHbip2/jaIH1yu/OKau/shDZYFluAxY6zAEYIb4YEAzKKEF+fpaoRgpodDWNGVGA== + dependencies: + "@opentelemetry/api-metrics" "0.32.0" + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + lodash.merge "4.6.2" + +"@opentelemetry/sdk-trace-base@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.6.0.tgz#8b1511c0b0f3e6015e345f5ed4a683adf03e3e3c" + integrity sha512-yx/uuzHdT0QNRSEbCgXHc0GONk90uvaFcPGaNowIFSl85rTp4or4uIIMkG7R8ckj8xWjDSjsaztH6yQxoZrl5g== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/sdk-trace-web@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.6.0.tgz#ef243e3e1102b53bc0afa93c29c18fc7e2f66e52" + integrity sha512-iOgmygvooaZm4Vi6mh5FM7ubj/e+MqDn8cDPCNfk6V8Q2yWj0co8HKWPFo0RoxSLYyPaFnEEXOXWWuE4OTwLKw== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/semantic-conventions@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.6.0.tgz#ed410c9eb0070491cff9fe914246ce41f88d6f74" + integrity sha512-aPfcBeLErM/PPiAuAbNFLN5sNbZLc3KZlar27uohllN8Zs6jJbHyJU1y7cMA6W/zuq+thkaG8mujiS+3iD/FWQ== + "@polka/url@^1.0.0-next.20": version "1.0.0-next.21" resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.21.tgz#5de5a2385a35309427f6011992b544514d559aa1" integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g== +"@polywrap/asyncify-js@0.12.2", "@polywrap/asyncify-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/asyncify-js/-/asyncify-js-0.12.2.tgz#e5b264bb38f7108beb1b83c43fa6c0ce3459f7a3" + integrity sha512-1dj/D0O4KosIw6q+4xKSu9w5Vry6zb3T5YgIBgBHuPvp3+146YUsuY1DFNFOKVs5XFfiilp10kkDpNIr4bi6mQ== + +"@polywrap/client-config-builder-js@0.12.2", "@polywrap/client-config-builder-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/client-config-builder-js/-/client-config-builder-js-0.12.2.tgz#b1c1be1e17bdc43b36df96517460c4860b395aad" + integrity sha512-N09BTlspeLIahvDeMKBqRtSiWLAUj5RH4aExLy3CiRW1Hdq+Xpt7evxjImK+ugnAFOM3c2L8LK63qou600sRgw== + dependencies: + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/plugin-js" "0.12.2" + "@polywrap/sys-config-bundle-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + "@polywrap/web3-config-bundle-js" "0.12.2" + +"@polywrap/client-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/client-js/-/client-js-0.12.2.tgz#eb6b80c8ae35483c7dd0e773be79aa78e0a232ca" + integrity sha512-loEkFWEnXOxYwfnC61aZRYo+YGPbsIcFg+UO64lIIRKCTb6bpzueLy97RWGVf1YF0tDtomhwwCY+QNST2gy06Q== + dependencies: + "@polywrap/client-config-builder-js" "0.12.2" + "@polywrap/core-client-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/plugin-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/concurrent-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/concurrent-plugin-js/-/concurrent-plugin-js-0.12.0.tgz#b3aba6a99cb2531b5333918d780f82a506e344d1" + integrity sha512-Y7rq3MnXbi/sshbIs8lFZOUppXiscJLRqUo1qMYYZrHjDFTzs1c0bTHImxEEpygtnHLZnZ3ZaUvynzipLiL+Jw== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/msgpack-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/config-bundle-types-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/config-bundle-types-js/-/config-bundle-types-js-0.12.2.tgz#00e40cf882001be1ae82493052da19dac02708f3" + integrity sha512-ZRa3EOh5i/Gq/7HDS1IG5FJcBXx31XFeHAjrwKPU23x5eSVux3gIoFzgg3zv4CzQtDizUv+ds76LGKn6vFWX/A== + dependencies: + "@polywrap/core-js" "0.12.2" + +"@polywrap/core-client-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/core-client-js/-/core-client-js-0.12.2.tgz#88f2013a50b56979bc6145098b05b6a7725bb1f1" + integrity sha512-7sN3KErSun7V0pWOfI0AhKqsC1zf7njRaYM2EMeGYqXoHm9P2OteNPA2j9qn1FYPQHHZI/MQaVrCDAHaCeXuJg== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/core-js@0.12.2", "@polywrap/core-js@~0.12.0", "@polywrap/core-js@~0.12.0-pre.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/core-js/-/core-js-0.12.2.tgz#b85f0314a30696db7ef265bfb89b4f25c194d900" + integrity sha512-AezoxK1YX+qJl06opUeAyjBfA+LIEHDPMoZZWeI+pyQHhuDUHyLv4xh4uzXELNnzfLo0Ap39qKAQ5u2HAs1DJA== + dependencies: + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/datetime-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/datetime-plugin-js/-/datetime-plugin-js-0.12.0.tgz#d04daf01c060e664ddbeea3d72a530a0b6d709fc" + integrity sha512-iDMa+250UxtJYD/I7eG3aRUrf73g8OgnhO9CrIaSEbsi/X3eKVfXIQPXSowqXSLhwG6LceDc/zn19uEPXZSvUg== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/ethereum-wallet-js@~0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@polywrap/ethereum-wallet-js/-/ethereum-wallet-js-0.1.0.tgz#1af5800aab3c4cedfcd1e4e5e305d5d5ef733bea" + integrity sha512-GTg4X0gyFHXNAHSDxe6QfiWJv8z/pwobnVyKw4rcmBLw7tqcTiYXk4kU0QfWV3JLV/8rvzESl+FtXPC68dUMIA== + dependencies: + "@ethersproject/address" "5.7.0" + "@ethersproject/providers" "5.7.0" + "@polywrap/core-js" "~0.12.0-pre.0" + "@polywrap/plugin-js" "~0.12.0-pre.0" + ethers "5.7.0" + +"@polywrap/file-system-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/file-system-plugin-js/-/file-system-plugin-js-0.12.0.tgz#0d88113e629d51173db0b30c34c296aeb8b23eea" + integrity sha512-hv6BCjnMwE3/CG5lBpucKKpcCE7DyLhshbv+KRSgz1sftI9CalogJbP6irkySgV7dDpMnQf1iZGTntv8HLwFOw== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/http-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/http-plugin-js/-/http-plugin-js-0.12.0.tgz#f297e192bbca16f81bbdf16dbc16a7664c93def5" + integrity sha512-DVXfRdF72ozLBXPQFAWEiz72gCF6wSw/H8q53DxeOXh3gKQ5zBpes5INEMpBpA9vzhqS73Y3KyMHTCrrXecv0w== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + axios "0.21.4" + form-data "4.0.0" + +"@polywrap/logger-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/logger-plugin-js/-/logger-plugin-js-0.12.0.tgz#e724bb5504336e4fbf1f0f9757cfe893f9bd5297" + integrity sha512-M6TXUSBTFRWLsTaT3gfNlqCRvrpgg60klD7g3zzEKeklkwy19TbcrkW2CVxfr0HZwiL1TVUuLBdDJc1sqE0A8g== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/logging-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/logging-js/-/logging-js-0.12.1.tgz#2d52e3f5e9d32cf5463222fcc1b00d4f98aacacd" + integrity sha512-yAGFhXIdgabITlZptyGLOaSjor88R98nV6Kzxqsl6sVxHKZOEf5Xj4MtlXYFaeh8ha6x8BUkZLNv5s3SlW5ttw== + +"@polywrap/msgpack-js@0.12.2", "@polywrap/msgpack-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/msgpack-js/-/msgpack-js-0.12.2.tgz#27562f98a60e82b55f7d9147bc13feb346cf47de" + integrity sha512-FsdHLRFRSfjh+O6zsjX3G2VCBJQDswnKGQKtp8IckPe0PJ0gpu9NPEvCFS4FfbF+Kmw+A7tUDrZ2I4wsuZsb9g== + dependencies: + "@msgpack/msgpack" "2.7.2" + +"@polywrap/os-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/os-js/-/os-js-0.12.1.tgz#0f8f06199e3b21331a4cbee5b7b86e147c26129f" + integrity sha512-vYsGpCHMhxPAUzbxsik0lTupHuUVwkrxojjLZL89N8yP67mhB9gTJeAYgDKXBTOo9E5bVFL07gDdaiDY+icfAQ== + +"@polywrap/plugin-js@0.12.2", "@polywrap/plugin-js@~0.12.0", "@polywrap/plugin-js@~0.12.0-pre.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/plugin-js/-/plugin-js-0.12.2.tgz#aca362a9992ac8ab619f171c08e876524ad35dac" + integrity sha512-8mJy5Dk1Np+cPoXKMWNuazxd2oMv/UKCOPFX0Sam3BqE9BtPbjXRUVG55vOtD6x+Ozhe3QIr83qXsfNOxNvLGw== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/polywrap-manifest-schemas@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/polywrap-manifest-schemas/-/polywrap-manifest-schemas-0.12.1.tgz#ebca3d6f1039fb8bdd6c31164f00ea861f49ce2c" + integrity sha512-5sHO6jL8QPoqXXDj2wb/pqRmKjZ0VxxDYaugRN2qeICHTF3rFU4aqs1y/qyJw3FGNFTLGDkLlPqnYDk8EZB5xQ== + +"@polywrap/polywrap-manifest-types-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/polywrap-manifest-types-js/-/polywrap-manifest-types-js-0.12.1.tgz#6884ce7c72981c2e73750fc4e706162bdcc560f4" + integrity sha512-fUsrZ1D5U9j+E56EB98ZHx1/xHflPXXizY7vNvxDRkzjhkCvlwEY61MfcNNWzakjyq1Fb7kwzxxZIp8XJZFoXw== + dependencies: + "@polywrap/logging-js" "0.12.1" + "@polywrap/polywrap-manifest-schemas" "0.12.1" + jsonschema "1.4.0" + semver "7.5.3" + yaml "2.2.2" + +"@polywrap/result@0.12.2", "@polywrap/result@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/result/-/result-0.12.2.tgz#99ad60da087db4dd2ad760ba1bd27a752d4af45f" + integrity sha512-gcRUsWz3Qyd7CxWqrTTj1NCl2h74yI2lgqMlUfCn4TVdBmRqbyTe5iP+g+R/qs0qO0Ud8Sx0GAfbSuZfzClJ2g== + +"@polywrap/schema-bind@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-bind/-/schema-bind-0.12.1.tgz#a7faa9681f468d9731c08399f4f121b2e76cbc8a" + integrity sha512-5VFpEoHW5Q2qnlXtt5PZs5NFWjYV00GDiQH3n25JaDK7vkTsf4rn4DZ5UlM/iKW6FLw6PpMUPquXapPtj9W3+w== + dependencies: + "@polywrap/client-js" "~0.12.0" + "@polywrap/os-js" "0.12.1" + "@polywrap/schema-parse" "0.12.1" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + mustache "4.0.1" + +"@polywrap/schema-compose@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-compose/-/schema-compose-0.12.1.tgz#7b6955522e47bbc066a30dcdf03d47263a2945e3" + integrity sha512-ie1fPOEW2FtZv/NDydFpolEoGLZfb34TND38LxiVkfe+Wnyp7aOKR0lq1cvP1g+9POZPv5TzL3Gb/jb+54Z2EQ== + dependencies: + "@polywrap/schema-parse" "0.12.1" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + graphql "15.5.0" + mustache "4.0.1" + +"@polywrap/schema-parse@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-parse/-/schema-parse-0.12.1.tgz#2764ad088537775cf9caccf7157b538d77a74f83" + integrity sha512-wCiGM2G5c/9+6mAXD3KTFi+avvReWV2PpfWqfH3bB1u7uun99Ed2yeXXj6034I+YqIZyVIR34nZq9YAm0Fn0Lw== + dependencies: + "@dorgjelli/graphql-schema-cycles" "1.1.4" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + graphql "15.5.0" + +"@polywrap/sys-config-bundle-js@0.12.2", "@polywrap/sys-config-bundle-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/sys-config-bundle-js/-/sys-config-bundle-js-0.12.2.tgz#6ad6f0d2f31c6668e7642801c0adcab22a4f654e" + integrity sha512-w6zewNacyXPO/LjmSyHqlkbtT8kq2BR0ydZTU1oO0SaeL08ua7FLe2H6v01vgqOCwHuwV2xsW0Y/neHHZx/cYw== + dependencies: + "@polywrap/concurrent-plugin-js" "~0.12.0" + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/datetime-plugin-js" "~0.12.0" + "@polywrap/file-system-plugin-js" "~0.12.0" + "@polywrap/http-plugin-js" "~0.12.0" + "@polywrap/logger-plugin-js" "~0.12.0" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + base64-to-uint8array "1.0.0" + +"@polywrap/tracing-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/tracing-js/-/tracing-js-0.12.2.tgz#549e54af500c4ba3384107853db453cd14cc7960" + integrity sha512-nApKdEPvfWijCoyDuq6ib6rgo7iWJH09Nf8lF1dTBafj59C3dR7aqyOO4NH8znZAO1poeiG6rPqsrnLYGM9CMA== + dependencies: + "@fetsorn/opentelemetry-console-exporter" "0.0.3" + "@opentelemetry/api" "1.2.0" + "@opentelemetry/exporter-trace-otlp-http" "0.32.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + "@opentelemetry/sdk-trace-web" "1.6.0" + +"@polywrap/uri-resolver-extensions-js@0.12.2", "@polywrap/uri-resolver-extensions-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.12.2.tgz#b8b2a3714f8bf36da3cd8d560b0f77af1e54b2ea" + integrity sha512-WA1ythVxqviaQWPHmWVegeeXEstq/+WDWF3Xdkm1Hbrlb10rPSzL7iq4IH8Mz2jFfjtA5YTQoK+xtw55koWH5w== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/uri-resolvers-js@0.12.2", "@polywrap/uri-resolvers-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/uri-resolvers-js/-/uri-resolvers-js-0.12.2.tgz#8c2393a56ae12445be171b8d8feeb803b114c32b" + integrity sha512-5J3unEYxEMMSI+2lHVs5SmvpSyAbDie7ZJgt2djL64+nOjisY8hBI/TBd2mCgrHy3fziE7DCZhA+d70ChtLCBg== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/wasm-js@0.12.2", "@polywrap/wasm-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/wasm-js/-/wasm-js-0.12.2.tgz#c807d296b66c1fe12bd80ce482eb7aa4e14f08ec" + integrity sha512-x3Buycm0ZLSPL8nP+QlySwvrZPH30kyuYbl170oNCiwf4Hllv10/Dn8xSR2WAV583ZD4tI/xIYzz04NVdXABKQ== + dependencies: + "@polywrap/asyncify-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/web3-config-bundle-js@0.12.2", "@polywrap/web3-config-bundle-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/web3-config-bundle-js/-/web3-config-bundle-js-0.12.2.tgz#87cd4b523a2df4f0debfa45e0b9c18c3116e9931" + integrity sha512-sY2cFw8TBXrIxXI8U50cSBwTzudsVVMztieA0hMIBw6XkEmFLGncn7RMnNJ5SBU8Cs+RFbwi9KATgNWQi5GKrQ== + dependencies: + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/ethereum-wallet-js" "~0.1.0" + "@polywrap/sys-config-bundle-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + base64-to-uint8array "1.0.0" + +"@polywrap/wrap-manifest-types-js@0.12.2", "@polywrap/wrap-manifest-types-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/wrap-manifest-types-js/-/wrap-manifest-types-js-0.12.2.tgz#c27f5f320b53de6744cfc2344bb90a1e6ff9e8d6" + integrity sha512-YlOCK1V0fFitunWvsRrQFiQMPETARLMd/d/iCeubkUzIh4TUr2gEtHbc8n2C9FYUFa4zLcY84mKfdDSyTf49jw== + dependencies: + "@polywrap/msgpack-js" "0.12.2" + ajv "8.12.0" + semver "~7.5.4" + "@popperjs/core@^2.11.7": version "2.11.7" resolved "https://registry.yarnpkg.com/@popperjs/core/-/core-2.11.7.tgz#ccab5c8f7dc557a52ca3288c10075c9ccd37fff7" @@ -2329,6 +3191,11 @@ resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== +"@types/json-schema@^7.0.6": + version "7.0.14" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.14.tgz#74a97a5573980802f32c8e47b663530ab3b6b7d1" + integrity sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw== + "@types/mdast@^3.0.0": version "3.0.11" resolved "https://registry.yarnpkg.com/@types/mdast/-/mdast-3.0.11.tgz#dc130f7e7d9306124286f6d6cee40cf4d14a3dc0" @@ -2488,6 +3355,13 @@ dependencies: "@types/yargs-parser" "*" +"@types/yauzl@^2.9.1": + version "2.10.2" + resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.10.2.tgz#dab926ef9b41a898bc943f11bca6b0bad6d4b729" + integrity sha512-Km7XAtUIduROw7QPgvcft0lIupeG8a8rdKL8RiSyKvlE7dYY31fEn41HVuQsRFDuROA8tA4K2UVL+WdfFmErBA== + dependencies: + "@types/node" "*" + "@webassemblyjs/ast@1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7" @@ -2652,6 +3526,11 @@ address@^1.0.1, address@^1.1.2: resolved "https://registry.yarnpkg.com/address/-/address-1.2.2.tgz#2b5248dac5485a6390532c6a517fda2e3faac89e" integrity sha512-4B/qKCfeE/ODUaAUpSwfzazo5x29WD4r3vXiWsB7I2mSDAihwEqKO+g8GELZUQSSAo5e1XTYh3ZVfLyxBc12nA== +aes-js@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" + integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== + aggregate-error@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" @@ -2679,6 +3558,16 @@ ajv-keywords@^5.0.0: dependencies: fast-deep-equal "^3.1.3" +ajv@8.12.0, ajv@^8.0.0, ajv@^8.8.0: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" @@ -2689,16 +3578,6 @@ ajv@^6.12.2, ajv@^6.12.4, ajv@^6.12.5: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.0.0, ajv@^8.8.0: - version "8.12.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" - integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== - dependencies: - fast-deep-equal "^3.1.1" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.2.2" - algoliasearch-helper@^3.10.0: version "3.12.0" resolved "https://registry.yarnpkg.com/algoliasearch-helper/-/algoliasearch-helper-3.12.0.tgz#0fe39d49b0290e4aa5e1fe733bd24d857d258e94" @@ -2767,7 +3646,7 @@ ansi-styles@^6.1.0: resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.1.tgz#0e62320cf99c21afff3b3012192546aacbfb05c5" integrity sha512-bN798gFfQX+viw3R7yrGWRqnrN2oRkEkUjjl4JNn4E8GxxbjtG3FbrEIIY3l8/hrwUwIeCZvi4QuOTP4MErVug== -anymatch@~3.1.2: +anymatch@~3.1.1, anymatch@~3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== @@ -2830,6 +3709,11 @@ asap@~2.0.3: resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha512-BSHWgDSAiKs50o2Re8ppvp3seVHXSRM44cdSsT9FfNEUUZLOGWVCsiWaRPWM1Znn+mqZ1OfVZ3z3DWEzSp7hRA== +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== + at-least-node@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" @@ -2859,6 +3743,20 @@ available-typed-arrays@^1.0.5: resolved "https://registry.yarnpkg.com/available-typed-arrays/-/available-typed-arrays-1.0.5.tgz#92f95616501069d07d10edb2fc37d3e1c65123b7" integrity sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw== +axios@0.21.2: + version "0.21.2" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.2.tgz#21297d5084b2aeeb422f5d38e7be4fbb82239017" + integrity sha512-87otirqUw3e8CzHTMO+/9kh/FSgXt/eVDvipijwDtEuwbkySWZ9SBm6VEubmJ/kLKEoLQV/POhxXFb66bfekfg== + dependencies: + follow-redirects "^1.14.0" + +axios@0.21.4: + version "0.21.4" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" + integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== + dependencies: + follow-redirects "^1.14.0" + axios@^0.25.0: version "0.25.0" resolved "https://registry.yarnpkg.com/axios/-/axios-0.25.0.tgz#349cfbb31331a9b4453190791760a8d35b093e0a" @@ -2941,11 +3839,28 @@ balanced-match@^1.0.0: resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== +base-x@^3.0.8: + version "3.0.9" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320" + integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ== + dependencies: + safe-buffer "^5.0.1" + base16@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/base16/-/base16-1.0.0.tgz#e297f60d7ec1014a7a971a39ebc8a98c0b681e70" integrity sha512-pNdYkNPiJUnEhnfXV56+sQy8+AaPcG3POZAUnwr4EeqCUZFz4u2PePbo3e5Gj4ziYPCWGUZT9RHisvJKnwFuBQ== +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +base64-to-uint8array@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/base64-to-uint8array/-/base64-to-uint8array-1.0.0.tgz#725f9e9886331b43785cadd807e76803d5494e05" + integrity sha512-drjWQcees55+XQSVHYxiUF05Fj6ko3XJUoxykZEXbm0BMmNz2ieWiZGJ+6TFWnjN2saucG6pI13LS92O4kaiAg== + batch@0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/batch/-/batch-0.6.1.tgz#dc34314f4e679318093fc760272525f94bf25c16" @@ -2956,6 +3871,11 @@ bcp-47-match@^1.0.0: resolved "https://registry.yarnpkg.com/bcp-47-match/-/bcp-47-match-1.0.3.tgz#cb8d03071389a10aff2062b862d6575ffd7cd7ef" integrity sha512-LggQ4YTdjWQSKELZF5JwchnBa1u0pIQSZf5lSdOHEdbVP55h0qICA/FUp3+W99q0xqxYa1ZQizTUH87gecII5w== +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + big.js@^5.2.2: version "5.2.2" resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" @@ -2966,6 +3886,16 @@ binary-extensions@^2.0.0: resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== +bn.js@^4.11.9: + version "4.12.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" + integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== + +bn.js@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + body-parser@1.20.1: version "1.20.1" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.1.tgz#b1812a8912c195cd371a3ee5e66faa2338a5c668" @@ -3049,6 +3979,11 @@ braces@^3.0.2, braces@~3.0.2: dependencies: fill-range "^7.0.1" +brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.18.1, browserslist@^4.21.3, browserslist@^4.21.4, browserslist@^4.21.5: version "4.21.5" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.21.5.tgz#75c5dae60063ee641f977e00edd3cfb2fb7af6a7" @@ -3059,11 +3994,24 @@ browserslist@^4.0.0, browserslist@^4.14.5, browserslist@^4.18.1, browserslist@^4 node-releases "^2.0.8" update-browserslist-db "^1.0.10" +buffer-crc32@~0.2.3: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== + buffer-from@^1.0.0: version "1.1.2" resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== +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== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + bytes@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" @@ -3095,6 +4043,11 @@ call-bind@^1.0.0, call-bind@^1.0.2: function-bind "^1.1.1" get-intrinsic "^1.0.2" +call-me-maybe@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa" + integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ== + callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" @@ -3138,6 +4091,14 @@ ccount@^1.0.0: resolved "https://registry.yarnpkg.com/ccount/-/ccount-1.1.0.tgz#246687debb6014735131be8abab2d93898f8d043" integrity sha512-vlNK021QdI7PNeiUh/lKkC/mNHHfV0m/Ad5JoI0TYtlBnJAslM/JIkm/tGC88bkLIwO6OQ5uV6ztS6kVAtCDlg== +chalk@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + chalk@^2.0.0, chalk@^2.4.1: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" @@ -3195,6 +4156,21 @@ cheerio@^1.0.0-rc.12: parse5 "^7.0.0" parse5-htmlparser2-tree-adapter "^7.0.0" +chokidar@3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" + integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.5.0" + optionalDependencies: + fsevents "~2.3.1" + chokidar@^3.3.1, chokidar@^3.4.2, chokidar@^3.5.3: version "3.5.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" @@ -3225,6 +4201,22 @@ ci-info@^3.2.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-3.8.0.tgz#81408265a5380c929f0bc665d62256628ce9ef91" integrity sha512-eXTggHWSooYhq49F2opQhuHWgzucfF2YgODK4e1566GQs5BIfP30B0oenwBJHfWxAs2fyPB1s7Mg949zLf61Yw== +cids@^0.7.1: + version "0.7.5" + resolved "https://registry.yarnpkg.com/cids/-/cids-0.7.5.tgz#60a08138a99bfb69b6be4ceb63bfef7a396b28b2" + integrity sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA== + dependencies: + buffer "^5.5.0" + class-is "^1.1.0" + multibase "~0.6.0" + multicodec "^1.0.0" + multihashes "~0.4.15" + +class-is@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/class-is/-/class-is-1.1.0.tgz#9d3c0fba0440d211d843cec3dedfa48055005825" + integrity sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw== + classnames@^2.2.6: version "2.3.2" resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.3.2.tgz#351d813bf0137fcc6a76a16b88208d2560a0d924" @@ -3261,6 +4253,15 @@ cli-table3@^0.6.2: optionalDependencies: "@colors/colors" "1.5.0" +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + clone-deep@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" @@ -3331,11 +4332,23 @@ combine-promises@^1.1.0: resolved "https://registry.yarnpkg.com/combine-promises/-/combine-promises-1.1.0.tgz#72db90743c0ca7aab7d0d8d2052fd7b0f674de71" integrity sha512-ZI9jvcLDxqwaXEixOhArm3r7ReIivsXkpbyEWyeOhzz1QS0iSgBPnWvEqvIQtYyamGCYA88gFhmUrs9hrrQ0pg== +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" + comma-separated-tokens@^1.0.0: version "1.0.8" resolved "https://registry.yarnpkg.com/comma-separated-tokens/-/comma-separated-tokens-1.0.8.tgz#632b80b6117867a158f1080ad498b2fbe7e3f5ea" integrity sha512-GHuDRO12Sypu2cV70d1dkA2EUmXHgntrzbpvOB+Qy+49ypNfGgFQIC2fhhXbnyrJRynDCAARsT7Ou0M6hirpfw== +commander@9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-9.2.0.tgz#6e21014b2ed90d8b7c9647230d8b7a94a4a419a9" + integrity sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w== + commander@^2.20.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" @@ -3430,6 +4443,15 @@ content-disposition@0.5.4: dependencies: safe-buffer "5.2.1" +content-hash@2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/content-hash/-/content-hash-2.5.2.tgz#bbc2655e7c21f14fd3bfc7b7d4bfe6e454c9e211" + integrity sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw== + dependencies: + cids "^0.7.1" + multicodec "^0.5.5" + multihashes "^0.4.15" + content-type@~1.0.4: version "1.0.5" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" @@ -3467,6 +4489,19 @@ copy-webpack-plugin@^11.0.0: schema-utils "^4.0.0" serialize-javascript "^6.0.0" +copyfiles@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/copyfiles/-/copyfiles-2.4.1.tgz#d2dcff60aaad1015f09d0b66e7f0f1c5cd3c5da5" + integrity sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg== + dependencies: + glob "^7.0.5" + minimatch "^3.0.3" + mkdirp "^1.0.4" + noms "0.0.0" + through2 "^2.0.1" + untildify "^4.0.0" + yargs "^16.1.0" + core-js-compat@^3.25.1: version "3.30.0" resolved "https://registry.yarnpkg.com/core-js-compat/-/core-js-compat-3.30.0.tgz#99aa2789f6ed2debfa1df3232784126ee97f4d80" @@ -3549,7 +4584,7 @@ cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.1, cross-spawn@^7.0.3: +cross-spawn@^7.0.0, cross-spawn@^7.0.1, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -3790,6 +4825,11 @@ del@^6.1.1: rimraf "^3.0.2" slash "^3.0.0" +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== + depd@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" @@ -3870,6 +4910,13 @@ doc-snippets@^1.0.0: commander "^9.4.1" glob "^8.0.3" +docker-compose@0.23.17: + version "0.23.17" + resolved "https://registry.yarnpkg.com/docker-compose/-/docker-compose-0.23.17.tgz#8816bef82562d9417dc8c790aa4871350f93a2ba" + integrity sha512-YJV18YoYIcxOdJKeFcCFihE6F4M2NExWM/d4S1ITcS9samHKnNUihz9kjggr0dNtsrbpFNc7/Yzd19DWs+m1xg== + dependencies: + yaml "^1.10.2" + docusaurus-lunr-search@^2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/docusaurus-lunr-search/-/docusaurus-lunr-search-2.3.2.tgz#9991ef51addb0bf09ac80a06cb5729f28939332d" @@ -4000,6 +5047,19 @@ electron-to-chromium@^1.4.284: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.352.tgz#be96bd7c2f4b980deebc9338a49a67430a33ed73" integrity sha512-ikFUEyu5/q+wJpMOxWxTaEVk2M1qKqTGKKyfJmod1CPZxKfYnxVS41/GCBQg21ItBpZybyN8sNpRqCUGm+Zc4Q== +elliptic@6.5.4: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -4190,6 +5250,42 @@ etag@~1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== +ethers@5.7.0: + version "5.7.0" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.0.tgz#0055da174b9e076b242b8282638bc94e04b39835" + integrity sha512-5Xhzp2ZQRi0Em+0OkOcRHxPzCfoBfgtOQA+RUylSkuHbhTEaQklnYi2hsWbRgs3ztJsXVXd9VKBcO1ScWL8YfA== + dependencies: + "@ethersproject/abi" "5.7.0" + "@ethersproject/abstract-provider" "5.7.0" + "@ethersproject/abstract-signer" "5.7.0" + "@ethersproject/address" "5.7.0" + "@ethersproject/base64" "5.7.0" + "@ethersproject/basex" "5.7.0" + "@ethersproject/bignumber" "5.7.0" + "@ethersproject/bytes" "5.7.0" + "@ethersproject/constants" "5.7.0" + "@ethersproject/contracts" "5.7.0" + "@ethersproject/hash" "5.7.0" + "@ethersproject/hdnode" "5.7.0" + "@ethersproject/json-wallets" "5.7.0" + "@ethersproject/keccak256" "5.7.0" + "@ethersproject/logger" "5.7.0" + "@ethersproject/networks" "5.7.0" + "@ethersproject/pbkdf2" "5.7.0" + "@ethersproject/properties" "5.7.0" + "@ethersproject/providers" "5.7.0" + "@ethersproject/random" "5.7.0" + "@ethersproject/rlp" "5.7.0" + "@ethersproject/sha2" "5.7.0" + "@ethersproject/signing-key" "5.7.0" + "@ethersproject/solidity" "5.7.0" + "@ethersproject/strings" "5.7.0" + "@ethersproject/transactions" "5.7.0" + "@ethersproject/units" "5.7.0" + "@ethersproject/wallet" "5.7.0" + "@ethersproject/web" "5.7.0" + "@ethersproject/wordlists" "5.7.0" + eval@^0.1.8: version "0.1.8" resolved "https://registry.yarnpkg.com/eval/-/eval-0.1.8.tgz#2b903473b8cc1d1989b83a1e7923f883eb357f85" @@ -4208,6 +5304,21 @@ events@^3.2.0: resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== +execa@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" + integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== + dependencies: + cross-spawn "^7.0.0" + get-stream "^5.0.0" + human-signals "^1.1.1" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.0" + onetime "^5.1.0" + signal-exit "^3.0.2" + strip-final-newline "^2.0.0" + execa@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" @@ -4272,6 +5383,17 @@ extend@^3.0.0: resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== +extract-zip@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" + integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== + dependencies: + debug "^4.1.1" + get-stream "^5.1.0" + yauzl "^2.10.0" + optionalDependencies: + "@types/yauzl" "^2.9.1" + fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" @@ -4293,6 +5415,11 @@ fast-json-stable-stringify@^2.0.0: resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== +fast-memoize@^2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/fast-memoize/-/fast-memoize-2.5.2.tgz#79e3bb6a4ec867ea40ba0e7146816f6cdce9b57e" + integrity sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw== + fast-url-parser@1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/fast-url-parser/-/fast-url-parser-1.1.3.tgz#f4af3ea9f34d8a271cf58ad2b3759f431f0b318d" @@ -4339,6 +5466,13 @@ fbjs@^3.0.0, fbjs@^3.0.1: setimmediate "^1.0.5" ua-parser-js "^0.7.30" +fd-slicer@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" + integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== + dependencies: + pend "~1.2.0" + feed@^4.2.2: version "4.2.2" resolved "https://registry.yarnpkg.com/feed/-/feed-4.2.2.tgz#865783ef6ed12579e2c44bbef3c9113bc4956a7e" @@ -4429,6 +5563,11 @@ follow-redirects@^1.0.0, follow-redirects@^1.14.7: resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.2.tgz#b460864144ba63f2681096f274c4e57026da2c13" integrity sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA== +follow-redirects@^1.14.0: + version "1.15.3" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a" + integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q== + for-each@^0.3.3: version "0.3.3" resolved "https://registry.yarnpkg.com/for-each/-/for-each-0.3.3.tgz#69b447e88a0a5d32c3e7084f3f1710034b21376e" @@ -4455,6 +5594,15 @@ fork-ts-checker-webpack-plugin@^6.5.0: semver "^7.3.2" tapable "^1.0.0" +form-data@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + forwarded@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" @@ -4470,6 +5618,16 @@ fresh@0.5.2: resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== +fs-extra@9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz#910da0062437ba4c39fedd863f1675ccfefcb9fc" + integrity sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ== + dependencies: + at-least-node "^1.0.0" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^1.0.0" + fs-extra@^10.1.0: version "10.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-10.1.0.tgz#02873cfbc4084dde127eaa5f9905eef2325d1abf" @@ -4499,6 +5657,11 @@ fs.realpath@^1.0.0: resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== +fsevents@~2.3.1: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + fsevents@~2.3.2: version "2.3.2" resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" @@ -4544,6 +5707,11 @@ gensync@^1.0.0-beta.1, gensync@^1.0.0-beta.2: resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== +get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + get-intrinsic@^1.0.2, get-intrinsic@^1.1.1, get-intrinsic@^1.1.3, get-intrinsic@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.2.0.tgz#7ad1dc0535f3a2904bba075772763e5051f6d05f" @@ -4565,7 +5733,7 @@ get-stream@^4.1.0: dependencies: pump "^3.0.0" -get-stream@^5.1.0: +get-stream@^5.0.0, get-stream@^5.1.0: version "5.2.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== @@ -4590,7 +5758,7 @@ github-slugger@^1.4.0: resolved "https://registry.yarnpkg.com/github-slugger/-/github-slugger-1.5.0.tgz#17891bbc73232051474d68bd867a34625c955f7d" integrity sha512-wIh+gKBI9Nshz2o46B0B3f5k/W+WI9ZAv6y5Dn5WJ5SK1t0TnDimB4WE5rmTD05ZAIn8HALCZVmCsvj0w0v0lw== -glob-parent@^5.1.2, glob-parent@~5.1.2: +glob-parent@^5.1.2, glob-parent@~5.1.0, glob-parent@~5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== @@ -4609,7 +5777,7 @@ glob-to-regexp@^0.4.1: resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== -glob@^7.0.0, glob@^7.1.3, glob@^7.1.6: +glob@^7.0.0, glob@^7.0.5, glob@^7.1.3, glob@^7.1.6: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -4719,6 +5887,16 @@ graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4, resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== +graphql-json-transform@^1.1.0-alpha.0: + version "1.1.0-alpha.0" + resolved "https://registry.yarnpkg.com/graphql-json-transform/-/graphql-json-transform-1.1.0-alpha.0.tgz#fb0c88d24840067e6c55ac64bbc8d4e5de245d2d" + integrity sha512-I6lR/lYEezSz4iru0f7a/wR8Rzi3pCafk7S0bX2b/WQOtK0vKabxLShGBXIslsi0arMehIjvOPHJl7MpOUqj0w== + +graphql@15.5.0: + version "15.5.0" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.0.tgz#39d19494dbe69d1ea719915b578bf920344a69d5" + integrity sha512-OmaM7y0kaK31NKG31q4YbD2beNYa6jBBKtMFT6gLYJljHLJr42IqJ8KX08u3Li/0ifzTU5HjmoOOrwa5BRLeDA== + gray-matter@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/gray-matter/-/gray-matter-4.0.3.tgz#e893c064825de73ea1f5f7d88c7a9f7274288798" @@ -4797,6 +5975,14 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + hast-to-hyperscript@^9.0.0: version "9.0.1" resolved "https://registry.yarnpkg.com/hast-to-hyperscript/-/hast-to-hyperscript-9.0.1.tgz#9b67fd188e4c81e8ad66f803855334173920218d" @@ -4931,6 +6117,15 @@ history@^4.9.0: tiny-warning "^1.0.0" value-equal "^1.0.1" +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + hogan.js@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/hogan.js/-/hogan.js-3.0.2.tgz#4cd9e1abd4294146e7679e41d7898732b02c7bfd" @@ -5076,6 +6271,11 @@ http-proxy@^1.18.1: follow-redirects "^1.0.0" requires-port "^1.0.0" +human-signals@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" + integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== + human-signals@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" @@ -5098,6 +6298,11 @@ icss-utils@^5.0.0, icss-utils@^5.1.0: resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== +ieee754@^1.1.13: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + ignore@^5.1.4, ignore@^5.2.0: version "5.2.4" resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.4.tgz#a291c0c6178ff1b960befe47fcdec301674a6324" @@ -5156,7 +6361,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.0, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -5195,6 +6400,23 @@ interpret@^1.0.0: resolved "https://registry.yarnpkg.com/interpret/-/interpret-1.4.0.tgz#665ab8bc4da27a774a40584e812e3e0fa45b1a1e" integrity sha512-agE4QfB2Lkp9uICn7BAqoscw4SZP9kTE2hxiFI3jBPmXJfdqiahTbUuKGsMoN2GtqL9AxhYioAcVvgsb1HvRbA== +intl-messageformat-parser@6.4.2: + version "6.4.2" + resolved "https://registry.yarnpkg.com/intl-messageformat-parser/-/intl-messageformat-parser-6.4.2.tgz#e2d28c3156c27961ead9d613ca55b6a155078d7d" + integrity sha512-IVNGy24lNEYr/KPWId5tF3KXRHFFbMgzIMI4kUonNa/ide2ywUYyBuOUro1IBGZJqjA2ncBVUyXdYKlMfzqpAA== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +intl-messageformat@9.5.2: + version "9.5.2" + resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-9.5.2.tgz#e72d32152c760b7411e413780e462909987c005a" + integrity sha512-sBGXcSQLyBuBA/kzAYhTpzhzkOGfSwGIau2W6FuwLZk0JE+VF3C+y0077FhVDOcRSi60iSfWzT8QC3Z7//dFxw== + dependencies: + fast-memoize "^2.5.2" + intl-messageformat-parser "6.4.2" + tslib "^2.1.0" + invariant@^2.2.4: version "2.2.4" resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" @@ -5202,6 +6424,11 @@ invariant@^2.2.4: dependencies: loose-envify "^1.0.0" +invert-kv@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-3.0.1.tgz#a93c7a3d4386a1dc8325b97da9bb1620c0282523" + integrity sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw== + ipaddr.js@1.9.1: version "1.9.1" resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" @@ -5552,6 +6779,11 @@ joi@^17.6.0: "@sideway/formula" "^3.0.1" "@sideway/pinpoint" "^2.0.0" +js-sha3@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -5607,6 +6839,11 @@ json-schema-traverse@^1.0.0: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== +json-schema@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" + integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== + json5@^2.1.2, json5@^2.2.2: version "2.2.3" resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" @@ -5621,6 +6858,11 @@ jsonfile@^6.0.1: optionalDependencies: graceful-fs "^4.1.6" +jsonschema@1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/jsonschema/-/jsonschema-1.4.0.tgz#1afa34c4bc22190d8e42271ec17ac8b3404f87b2" + integrity sha512-/YgW6pRMr6M7C+4o8kS+B/2myEpHCrxO4PEWnqJNBFMjn7EWXqlQ4tGwL6xTHeRplwuZmcAncdvfOad1nT2yMw== + jss-plugin-camel-case@^10.10.0: version "10.10.0" resolved "https://registry.yarnpkg.com/jss-plugin-camel-case/-/jss-plugin-camel-case-10.10.0.tgz#27ea159bab67eb4837fa0260204eb7925d4daa1c" @@ -5728,6 +6970,13 @@ launch-editor@^2.6.0: picocolors "^1.0.0" shell-quote "^1.7.3" +lcid@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-3.1.1.tgz#9030ec479a058fc36b5e8243ebaac8b6ac582fd0" + integrity sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg== + dependencies: + invert-kv "^3.0.0" + leven@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" @@ -5814,6 +7063,11 @@ lodash.memoize@^4.1.2: resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== +lodash.merge@4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + lodash.uniq@4.5.0, lodash.uniq@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" @@ -5884,6 +7138,13 @@ make-error@^1.1.1: resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== +map-age-cleaner@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== + dependencies: + p-defer "^1.0.0" + markdown-escapes@^1.0.0: version "1.0.4" resolved "https://registry.yarnpkg.com/markdown-escapes/-/markdown-escapes-1.0.4.tgz#c95415ef451499d7602b91095f3c8e8975f78535" @@ -5937,6 +7198,15 @@ media-typer@0.3.0: resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== +mem@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/mem/-/mem-5.1.1.tgz#7059b67bf9ac2c924c9f1cff7155a064394adfb3" + integrity sha512-qvwipnozMohxLXG1pOqoLiZKNkC4r4qqRucSoDwXowsNGDSULiqFTRUF05vcZWnwJSG22qTsynQhxbaMtnX9gw== + dependencies: + map-age-cleaner "^0.1.3" + mimic-fn "^2.1.0" + p-is-promise "^2.1.0" + memfs@^3.1.2, memfs@^3.4.3: version "3.4.13" resolved "https://registry.yarnpkg.com/memfs/-/memfs-3.4.13.tgz#248a8bd239b3c240175cd5ec548de5227fc4f345" @@ -5994,7 +7264,7 @@ mime-types@2.1.18: dependencies: mime-db "~1.33.0" -mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.17, mime-types@~2.1.24, mime-types@~2.1.34: +mime-types@^2.1.12, mime-types@^2.1.27, mime-types@^2.1.31, mime-types@~2.1.17, mime-types@~2.1.24, mime-types@~2.1.34: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== @@ -6023,12 +7293,17 @@ mini-css-extract-plugin@^2.6.1: dependencies: schema-utils "^4.0.0" -minimalistic-assert@^1.0.0: +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== -minimatch@3.1.2, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1: +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +minimatch@3.1.2, minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1: version "3.1.2" resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== @@ -6052,6 +7327,11 @@ mkdirp@0.3.0: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.3.0.tgz#1bbf5ab1ba827af23575143490426455f481fe1e" integrity sha512-OHsdUcVAQ6pOtg5JYWpCBo9W/GySVuwvP9hueRMW7UqshC0tbfzLv8wjySTPm3tfUZ/21CE9E1pJagOA91Pxew== +mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + mrmime@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/mrmime/-/mrmime-1.0.1.tgz#5f90c825fad4bdd41dc914eff5d1a8cfdaf24f27" @@ -6072,6 +7352,22 @@ ms@2.1.3: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== +multibase@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.7.0.tgz#1adfc1c50abe05eefeb5091ac0c2728d6b84581b" + integrity sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg== + dependencies: + base-x "^3.0.8" + buffer "^5.5.0" + +multibase@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.6.1.tgz#b76df6298536cc17b9f6a6db53ec88f85f8cc12b" + integrity sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw== + dependencies: + base-x "^3.0.8" + buffer "^5.5.0" + multicast-dns@^7.2.5: version "7.2.5" resolved "https://registry.yarnpkg.com/multicast-dns/-/multicast-dns-7.2.5.tgz#77eb46057f4d7adbd16d9290fa7299f6fa64cced" @@ -6080,6 +7376,35 @@ multicast-dns@^7.2.5: dns-packet "^5.2.2" thunky "^1.0.2" +multicodec@^0.5.5: + version "0.5.7" + resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.5.7.tgz#1fb3f9dd866a10a55d226e194abba2dcc1ee9ffd" + integrity sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA== + dependencies: + varint "^5.0.0" + +multicodec@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-1.0.4.tgz#46ac064657c40380c28367c90304d8ed175a714f" + integrity sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg== + dependencies: + buffer "^5.6.0" + varint "^5.0.0" + +multihashes@^0.4.15, multihashes@~0.4.15: + version "0.4.21" + resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.4.21.tgz#dc02d525579f334a7909ade8a122dabb58ccfcb5" + integrity sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw== + dependencies: + buffer "^5.5.0" + multibase "^0.7.0" + varint "^5.0.0" + +mustache@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.0.1.tgz#d99beb031701ad433338e7ea65e0489416c854a2" + integrity sha512-yL5VE97+OXn4+Er3THSmTdCFCtx5hHWzrolvH+JObZnUYwuaG7XV+Ch4fR2cIrcYI0tFHxS7iyFYl14bW8y2sA== + nanoid@^3.3.4: version "3.3.6" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.3.6.tgz#443380c856d6e9f9824267d960b4236ad583ea4c" @@ -6132,6 +7457,14 @@ node-releases@^2.0.8: resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.10.tgz#c311ebae3b6a148c89b1813fd7c4d3c024ef537f" integrity sha512-5GFldHPXVG/YZmFzJvKK2zDSzPKhEp0+ZR5SVaoSag9fsL5YgHbUHDfnG5494ISANDcK4KwPXAx2xqVEydmd7w== +noms@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/noms/-/noms-0.0.0.tgz#da8ebd9f3af9d6760919b27d9cdc8092a7332859" + integrity sha512-lNDU9VJaOPxUmXcLb+HQFeUgQQPtMI24Gt6hgfuMHRJgMRHMF/qZ4HJD3GDru4sSw9IQl2jPjAYnQrdIeLbwow== + dependencies: + inherits "^2.0.1" + readable-stream "~1.0.31" + nopt@1.0.10: version "1.0.10" resolved "https://registry.yarnpkg.com/nopt/-/nopt-1.0.10.tgz#6ddd21bd2a31417b92727dd585f8a6f37608ebee" @@ -6189,7 +7522,7 @@ npm-run-all@^4.1.5: shell-quote "^1.6.1" string.prototype.padend "^3.0.0" -npm-run-path@^4.0.1: +npm-run-path@^4.0.0, npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== @@ -6270,7 +7603,7 @@ onchange@^7.1.0: ignore "^5.1.4" tree-kill "^1.2.2" -onetime@^5.1.2: +onetime@^5.1.0, onetime@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== @@ -6291,11 +7624,30 @@ opener@^1.5.2: resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== +os-locale@5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-5.0.0.tgz#6d26c1d95b6597c5d5317bf5fba37eccec3672e0" + integrity sha512-tqZcNEDAIZKBEPnHPlVDvKrp7NzgLi7jRmhKiUoa2NUmhl13FtkAGLUVR+ZsYvApBQdBfYm43A4tXXQ4IrYLBA== + dependencies: + execa "^4.0.0" + lcid "^3.0.0" + mem "^5.0.0" + p-cancelable@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw== + +p-is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" + integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== + p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" @@ -6508,6 +7860,11 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== +pend@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== + picocolors@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" @@ -6542,6 +7899,54 @@ pkg-up@^3.1.0: dependencies: find-up "^3.0.0" +polywrap@0.12.1: + version "0.12.1" + resolved "https://registry.yarnpkg.com/polywrap/-/polywrap-0.12.1.tgz#bb56ed25934e845b685455803edf7a9c41b7e6fb" + integrity sha512-jZ/qd4mW0zXF57wZIJ3Whow8AyyUp/COdHZmDR/yKdw8q8fJQJm8/Nq4yZ8A09amYHMYlDQhJV2hSvsuJwhW8w== + dependencies: + "@apidevtools/json-schema-ref-parser" "9.0.9" + "@ethersproject/providers" "5.6.8" + "@ethersproject/wallet" "5.6.2" + "@formatjs/intl" "1.8.2" + "@polywrap/asyncify-js" "~0.12.0" + "@polywrap/client-config-builder-js" "~0.12.0" + "@polywrap/client-js" "~0.12.0" + "@polywrap/core-js" "~0.12.0" + "@polywrap/ethereum-wallet-js" "~0.1.0" + "@polywrap/logging-js" "0.12.1" + "@polywrap/os-js" "0.12.1" + "@polywrap/polywrap-manifest-types-js" "0.12.1" + "@polywrap/result" "~0.12.0" + "@polywrap/schema-bind" "0.12.1" + "@polywrap/schema-compose" "0.12.1" + "@polywrap/schema-parse" "0.12.1" + "@polywrap/sys-config-bundle-js" "~0.12.0" + "@polywrap/uri-resolver-extensions-js" "~0.12.0" + "@polywrap/uri-resolvers-js" "~0.12.0" + "@polywrap/wasm-js" "~0.12.0" + "@polywrap/web3-config-bundle-js" "~0.12.0" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + axios "0.21.2" + chalk "4.1.0" + chokidar "3.5.1" + commander "9.2.0" + content-hash "2.5.2" + copyfiles "2.4.1" + docker-compose "0.23.17" + extract-zip "2.0.1" + form-data "4.0.0" + fs-extra "9.0.1" + json-schema "0.4.0" + jsonschema "1.4.0" + mustache "4.0.1" + os-locale "5.0.0" + regex-parser "2.2.11" + rimraf "3.0.2" + toml "3.0.0" + typescript "4.9.5" + yaml "2.2.2" + yesno "0.4.0" + postcss-calc@^8.2.3: version "8.2.4" resolved "https://registry.yarnpkg.com/postcss-calc/-/postcss-calc-8.2.4.tgz#77b9c29bfcbe8a07ff6693dc87050828889739a5" @@ -7164,7 +8569,7 @@ read-pkg@^3.0.0: normalize-package-data "^2.3.2" path-type "^3.0.0" -readable-stream@^2.0.1: +readable-stream@^2.0.1, readable-stream@~2.3.6: version "2.3.8" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== @@ -7186,6 +8591,23 @@ readable-stream@^3.0.6: string_decoder "^1.1.1" util-deprecate "^1.0.1" +readable-stream@~1.0.31: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + integrity sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readdirp@~3.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" + integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== + dependencies: + picomatch "^2.2.1" + readdirp@~3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" @@ -7236,6 +8658,11 @@ regenerator-transform@^0.15.1: dependencies: "@babel/runtime" "^7.8.4" +regex-parser@2.2.11: + version "2.2.11" + resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58" + integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q== + regexp.prototype.flags@^1.4.3: version "1.4.3" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.4.3.tgz#87cab30f80f66660181a3bb7bf5981a872b367ac" @@ -7364,6 +8791,11 @@ repeat-string@^1.0.0, repeat-string@^1.5.4: resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + require-from-string@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" @@ -7424,7 +8856,7 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rimraf@^3.0.2: +rimraf@3.0.2, rimraf@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== @@ -7465,7 +8897,7 @@ safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.1.0, safe-buffer@~5.2.0: +safe-buffer@5.2.1, safe-buffer@>=5.1.0, safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== @@ -7534,6 +8966,11 @@ schema-utils@^4.0.0: ajv-formats "^2.1.1" ajv-keywords "^5.0.0" +scrypt-js@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + section-matter@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/section-matter/-/section-matter-1.0.0.tgz#e9041953506780ec01d59f292a19c7b850b84167" @@ -7566,6 +9003,13 @@ semver-diff@^3.1.1: resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== +semver@7.5.3: + version "7.5.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.3.tgz#161ce8c2c6b4b3bdca6caadc9fa3317a4c4fe88e" + integrity sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ== + dependencies: + lru-cache "^6.0.0" + semver@^6.0.0, semver@^6.1.1, semver@^6.1.2, semver@^6.2.0, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" @@ -7578,6 +9022,13 @@ semver@^7.3.2, semver@^7.3.4, semver@^7.3.7, semver@^7.3.8: dependencies: lru-cache "^6.0.0" +semver@~7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + send@0.18.0: version "0.18.0" resolved "https://registry.yarnpkg.com/send/-/send-0.18.0.tgz#670167cc654b05f5aa4a767f9113bb371bc706be" @@ -7941,6 +9392,11 @@ string_decoder@^1.1.1: dependencies: safe-buffer "~5.2.0" +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== + string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" @@ -8096,6 +9552,14 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== +through2@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + thunky@^1.0.2: version "1.1.0" resolved "https://registry.yarnpkg.com/thunky/-/thunky-1.1.0.tgz#5abaf714a9405db0504732bbccd2cedd9ef9537d" @@ -8141,6 +9605,11 @@ toidentifier@1.0.1: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.1.tgz#3be34321a88a820ed1bd80dfaa33e479fbb8dd35" integrity sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA== +toml@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/toml/-/toml-3.0.0.tgz#342160f1af1904ec9d204d03a5d61222d762c5ee" + integrity sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== + totalist@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" @@ -8229,7 +9698,7 @@ typedarray-to-buffer@^3.1.5: dependencies: is-typedarray "^1.0.0" -typescript@^4.7.4: +typescript@4.9.5, typescript@^4.7.4: version "4.9.5" resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== @@ -8376,6 +9845,11 @@ unist-util-visit@2.0.3, unist-util-visit@^2.0.0, unist-util-visit@^2.0.3: unist-util-is "^4.0.0" unist-util-visit-parents "^3.0.0" +universalify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" + integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== + universalify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" @@ -8386,6 +9860,11 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ== +untildify@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" + integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== + update-browserslist-db@^1.0.10: version "1.0.10" resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.10.tgz#0f54b876545726f17d00cd9a2561e6dade943ff3" @@ -8502,6 +9981,11 @@ value-equal@^1.0.1: resolved "https://registry.yarnpkg.com/value-equal/-/value-equal-1.0.1.tgz#1e0b794c734c5c0cade179c437d356d931a34d6c" integrity sha512-NOJ6JZCAWr0zlxZt+xqCHNTEKOsrks2HQd4MqhP1qy4z1SkbEP467eNx6TgDKXMvUOb+OENfJCZwM+16n7fRfw== +varint@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/varint/-/varint-5.0.2.tgz#5b47f8a947eb668b848e034dcfa87d0ff8a7f7a4" + integrity sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow== + vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" @@ -8800,6 +10284,11 @@ write-file-atomic@^3.0.0: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + ws@^7.3.1: version "7.5.9" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" @@ -8822,11 +10311,16 @@ xml-js@^1.6.11: dependencies: sax "^1.2.4" -xtend@^4.0.0, xtend@^4.0.1: +xtend@^4.0.0, xtend@^4.0.1, xtend@~4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + yallist@^3.0.2: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" @@ -8837,11 +10331,47 @@ yallist@^4.0.0: resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== +yaml@2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.2.2.tgz#ec551ef37326e6d42872dad1970300f8eb83a073" + integrity sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA== + yaml@^1.10.0, yaml@^1.10.2, yaml@^1.7.2: version "1.10.2" resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== +yargs-parser@^20.2.2: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs@^16.1.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yauzl@^2.10.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" + integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== + dependencies: + buffer-crc32 "~0.2.3" + fd-slicer "~1.1.0" + +yesno@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/yesno/-/yesno-0.4.0.tgz#5d674f14d339f0bd4b0edc47f899612c74fcd895" + integrity sha512-tdBxmHvbXPBKYIg81bMCB7bVeDmHkRzk5rVJyYYXurwKkHq/MCd8rz4HSJUP7hW0H2NlXiq8IFiWvYKEHhlotA== + yn@3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/yn/-/yn-3.1.1.tgz#1e87401a09d767c1d5eab26a6e4c185182d2eb50" From 84590f164f277273ec4ff2dafb566866710c821a Mon Sep 17 00:00:00 2001 From: krisbitney Date: Wed, 25 Oct 2023 16:41:15 +0500 Subject: [PATCH 03/19] updated project setup to be multi-language --- sidebars.js | 15 ++ .../components/_project-dir-common.mdx | 28 +++ .../introduction.md | 15 +- .../part-one/project-manifest.md | 188 ++++++++++++++++++ .../part-one/project-setup.mdx} | 75 +++---- 5 files changed, 271 insertions(+), 50 deletions(-) create mode 100644 src/docs/tutorials/new-create-wraps/components/_project-dir-common.mdx rename src/docs/tutorials/{create-wraps => new-create-wraps}/introduction.md (83%) create mode 100644 src/docs/tutorials/new-create-wraps/part-one/project-manifest.md rename src/docs/tutorials/{create-wraps/part-one/project-setup.md => new-create-wraps/part-one/project-setup.mdx} (51%) diff --git a/sidebars.js b/sidebars.js index de736faa..7aaf3119 100644 --- a/sidebars.js +++ b/sidebars.js @@ -65,6 +65,21 @@ const sidebars = { 'tutorials/use-wraps/react-integration', ], }, + { + type: 'category', + label: 'NEW Create Wraps', + items: [ + 'tutorials/new-create-wraps/introduction', + { + type: 'category', + label: 'Part One', + items: [ + 'tutorials/new-create-wraps/part-one/project-setup', + 'tutorials/new-create-wraps/part-one/project-manifest', + ] + } + ], + }, { type: 'category', label: 'Create Wraps', diff --git a/src/docs/tutorials/new-create-wraps/components/_project-dir-common.mdx b/src/docs/tutorials/new-create-wraps/components/_project-dir-common.mdx new file mode 100644 index 00000000..8c6e8a02 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/components/_project-dir-common.mdx @@ -0,0 +1,28 @@ +### **`polywrap.yaml`** +The `polywrap.yaml` project manifest is a high-level configuration file describing a Polywrap project. + +// TODO: link to build manifest customization in part 2 of tutorial +### **`polywrap.build.yaml`** +The `polywrap.build.yaml` build manifest enables build process customization. We won't need to modify this file, but we will learn how to do so anyway in Part Two of the tutorial. The file is not needed in most projects and can in fact be deleted. + +### **`polywrap.graphql`** +Each wrap project has a [Wrap Schema](/concepts/wrap-schema). The schema defines the wrap's interface, including dependencies, methods, and custom types. Polywrap uses the schema to generate the wrap's serialization bindings and validate the wrap's implementation. The schema is compiled to a `wrap.info` ABI file at build time and stored in the wrap package. In this tutorial, we'll learn how to write a Wrap Schema. It's easy! + +

{props.entry}

+

The entry point file differs by language, but in all cases it exports the wrap module implementation.

+ +

{props.testDir}

+

The tests directory contains integration tests for the wrap. Integration tests are performed using a Polywrap Client to invoke the wrap, just as a developer would do when using your wrap in their application. Without a client, you wouldn't be able to test the parts of your code that invoke other wraps or plugins.

+ +

The tests directory contains a `types` folder with configuration files used to generate bindings for the tests in the client language. Depending on your project's language, the test types will be generated in TypeScript or Rust. The bindings are based on your wrap's schema and allow you to call methods on your wrap with an experience similar to the native programming language of the tests (i.e. TypeScript or Rust). The bindings are optional, but we recommend using them.

+ +### **`package.json`** +We include a `package.json` file with pre-written build scripts and developer dependencies for testing, even if your wrap is not written in TypeScript or AssemblyScript. + +If you're building a Rust wrap, the `package.json` file is used only for build scripts and is not required for testing. Feel free to delete it or use it only as a reference. + +// TODO: link to advanced testing section +We understand that not every user wants to install NodeJS to build with Polywrap. Don't worry! In Part Two of the tutorial, we will learn how to write language-agnostic tests without any JavaScript dependencies. + +### **`tsconfig.json`** +Used to configure TypeScript for integration tests. diff --git a/src/docs/tutorials/create-wraps/introduction.md b/src/docs/tutorials/new-create-wraps/introduction.md similarity index 83% rename from src/docs/tutorials/create-wraps/introduction.md rename to src/docs/tutorials/new-create-wraps/introduction.md index 158edead..db6c3b04 100644 --- a/src/docs/tutorials/create-wraps/introduction.md +++ b/src/docs/tutorials/new-create-wraps/introduction.md @@ -1,13 +1,18 @@ --- id: 'introduction' -title: 'Create a Wrap Tutorial' +title: 'Introduction' --- +:::note +Last update: October 2023
+Polywrap version `0.12.1` +::: + // TODO: link to "What is Polywrap" or a wrap Concept section -If you want to learn how to build a Polywrap "wrap", you've come to the right place! In this guide, we will build a new Polywrap wrap called "OracleWrap". OracleWrap is capable of both obscuring and enlightening knowledge using hashing and generative AI. The guide is split into two parts. +If you want to learn how to build a Polywrap "wrap", you've come to the right place! In this guide, we will build a new Polywrap wrap called "Oracle Wrap". Oracle Wrap is capable of both obscuring and enlightening knowledge using hashing and generative AI. The guide is split into two parts. :::tip -👋 This guide is meant for those who want to build and deploy their own wraps. If you're interested in integrating existing wraps into your app, see our [Integrate into a JS App](../../use-wraps/install-client) guide. +👋 This guide is meant for those who want to build and deploy their own wraps. If you're interested in integrating existing wraps into your app, see our [Integrate into a JS App](/tutorials/use-wraps/install-client) guide. ::: In Part One, we cover everything you need to know to build, test, and deploy a wrap that you can use in your app today. Part one will stick to the "happy path", where we rely on default configurations that serve most use cases well. @@ -26,7 +31,7 @@ We will learn how to: In Part Two, we discuss the various ways you can configure and customize Polywrap's build tools to suite the needs of your project. -We will touch on: +We will cover: - Overview of default Polywrap Client configuration - Learn which interfaces and plugins are already available to your users - Advanced configuration for the `polywrap.yaml` project manifest @@ -39,7 +44,7 @@ If at any time in this process you get stuck or have questions, please reach out ## **Prerequisites** -If you haven't already, you'll need to [install the Polywrap CLI]. We'll be using it throughout the tutorial. +If you haven't already, you'll need to [install the Polywrap CLI](/cli#installation). We'll be using it throughout the tutorial. To build your wrap without installing additional dependencies, you will need [Docker](https://docs.docker.com/get-docker/) and [Docker Compose](https://docs.docker.com/compose/install/). diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md new file mode 100644 index 00000000..65bb3ba0 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md @@ -0,0 +1,188 @@ +--- +id: 'project-manifest' +title: 'Project Manifest' +--- +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +:::note +You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. +::: + +Each wrap package is described by a Polywrap Manifest `polywrap.yaml` file. The Polywrap Manfiest provides the Polywrap CLI with basic information it needs to [`build`](https://github.com/polywrap/cli/tree/origin-dev/packages/cli#build--b) the wrap, such as where to find the `polywrap.graphql` schema that we'll write in the next section. + +## Manifest Content + +```yaml +format: # The manifest format version +project: + name: # Name of wrap + type: # Type/language of project +source: + schema: # Path to wrap schema + module: # (Optional) Path to entry file; absent for interface wraps + import_abis: # (Optional) Array of URI redirects used to resolve imports in the schema + - uri: # One of the schema's import URI + abi: # Path to a local ABI or schema. Supported file formats: [*.graphql, *.info, *.json, *.yaml] +extensions: + build: # (Optional) Path to Build Manifest file + docs: # (Optional) Path to Docs Manifest file +resources: # (Optional) Path to Resources directory +``` + +Let's open the `polywrap.yaml` manifest, located in the root of our new project folder. The only item you need to change for now is the project name, but we'll briefly discuss each manifest property here since we'll make more changes later on. + +## **Format, Name, and Project Type** + +The manifest `format` version determines the layout of the project manifest and which properties exist in it. The latest version is 0.6.0. + +We'll `name` our project "oracle-wrap". + +The project `type` is used to determine how to generate code and build the project. It follows the syntax: `(wasm|app|plugin)/language`. So a Rust wrap will have the type `wasm/rust`, and a Rust plugin would have the type `plugin/rust`. The languages that can be used for a `wasm` wrap project are different from the languages used in `plugin` and `app` projects. + +// TODO: link to interface docs +There is one additional type of project called an interface wrap (with type `interface`), which is used to define a wrap interface that can be implemented by other wraps or plugins. We'll discuss interface wraps in greater detail later on in the tutorial. + + + + +```yaml +format: 0.6.0 +project: + name: oracle-wrap + type: wasm/rust +``` + + + + + +```yaml +format: 0.6.0 +project: + name: oracle-wrap + type: wasm/golang +``` + + + + + +```yaml +format: 0.6.0 +project: + name: oracle-wrap + type: wasm/typescript +``` + + + + + +```yaml +format: 0.6.0 +project: + name: oracle-wrap + type: wasm/assemblyscript +``` + + + + +The project source tells the Polywrap CLI where to find: +- The project schema--i.e. the module and types the wrap exports +- The entry file that implements the Wrap Schema in code and exports its module +- The location of a locally-stored Wrap Schema or `wrap.info` ABI file, and an arbitrary URI you'd like to point to it + +:::tip +The `import_abis` item is useful during wrap development. Let's say you need to import another Wasm wrap, interface wrap, or plugin. All the relevant information is captured in its schema or `wrap.info` ABI. You need the `wrap.wasm` web assembly module to invoke the wrap's methods at runtime, but not to import its module or types at build time. This means you can start building your new wrap without first deploying its dependency. + +For example, the `import_abis` feature can be used in a monorepo that contains one interface wrap and a set of Wasm wraps or plugins that implement the interface. Each Wasm wrap project might contain an `import_abis` entry with a temporary URI that points to the interface `polywrap.graphql` schema. The wrap projects would use the temporary URI to import the interface in their own `polywrap.graphql` schemas, as though the interface were already published. +::: + + + + +```yaml +source: + module: ./Cargo.toml + schema: ./polywrap.graphql +``` + + + + + +```yaml +source: + schema: ./polywrap.graphql + module: ./go.mod +``` + + + + + +```yaml +source: + schema: ./polywrap.graphql + module: ./bundled/wrap.js +``` + + + + + +```yaml +source: + module: ./src/index.ts + schema: ./polywrap.graphql +``` + + + + +// TODO: link to build manifest and docs manifest documentation +There are two types of manifest extensions you can register in the project manifest: `build` and `docs`. The `polywrap.build.yaml` build manifest enables developers to customize the wrap build process. The `polywrap.docs.yaml` manifest allows you to provide metadata for Wrapscan deployments (coming soon). + +We won't be using either of these extension manifests in Part One of the tutorial, but we will dive into them in Part Two. If you'd like, you can remove the `extensions` property and delete the `polywrap.build.yaml` file. + +The `resources` attribute allows you to provide a path to a directory that you'd like included in the wrap package when deploying the wrap. We'll use it later to include a `README.md` file in our package. Note that the contents of the resources directory cannot be accessed by the wrap through the file system at runtime. + + + + +```yaml +extensions: + build: ./polywrap.build.yaml +``` + + + + + +```yaml +extensions: + build: ./polywrap.build.yaml +``` + + + + + +```yaml +extensions: + build: ./polywrap.build.yaml +``` + + + + + +```yaml +extensions: + build: ./polywrap.build.yaml +``` + + + \ No newline at end of file diff --git a/src/docs/tutorials/create-wraps/part-one/project-setup.md b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx similarity index 51% rename from src/docs/tutorials/create-wraps/part-one/project-setup.md rename to src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx index 7677c98f..d93a9eeb 100644 --- a/src/docs/tutorials/create-wraps/part-one/project-setup.md +++ b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx @@ -2,21 +2,23 @@ id: 'project-setup' title: 'Project Setup' --- +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; +import ProjectDirCommon from '../components/_project-dir-common.mdx'; -:::tip -You're reading Part One of the [Create a Wrap](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. +:::note +You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. ::: - ## **Create the Project** -Let's first generate our project scaffolding using the Polywrap CLI. The `create` command of the Polywrap CLI uses the syntax `polywrap create `. This tutorial is about building Wasm wraps, so let's create a `wasm` project and name it `oracle` +We will generate our project scaffolding using the Polywrap CLI. The `create` command of the Polywrap CLI uses the syntax `polywrap create `. This tutorial is about building Wasm wraps, so let's create a `wasm` project and name it `oracle-wrap` ```shell-session - polywrap create wasm rust my-wrap + polywrap create wasm rust oracle-wrap ``` @@ -24,7 +26,7 @@ Let's first generate our project scaffolding using the Polywrap CLI. The `create ```shell-session - polywrap create wasm golang my-wrap + polywrap create wasm golang oracle-wrap ``` @@ -32,7 +34,7 @@ Let's first generate our project scaffolding using the Polywrap CLI. The `create ```shell-session - polywrap create wasm typescript my-wrap + polywrap create wasm typescript oracle-wrap ``` @@ -40,7 +42,7 @@ Let's first generate our project scaffolding using the Polywrap CLI. The `create ```shell-session - polywrap create wasm assemblyscript my-wrap + polywrap create wasm assemblyscript oracle-wrap ``` @@ -68,6 +70,8 @@ package.json # Build scripts tsconfig.json # TypeScript configuration (for integration tests) ``` + +
@@ -85,6 +89,11 @@ package.json # Build scripts tsconfig.json # TypeScript configuration (for integration tests) ``` + + +

build-staging/

+

Required boilerplate; don't modify.

+
@@ -102,6 +111,14 @@ shims.js # Shims that provide a more native TypeScript exp tsconfig.json # TypeScript configuration ``` + + +

rollup.config.mjs

+

Used to configure bundling for the wrap.

+ +

shims.js

+

Used to provide a more native TypeScript experience.

+
@@ -118,42 +135,10 @@ tsconfig.json # TypeScript configuration (for integration tests tsconfig.build.json # AssemblyScript configuration (for build) ``` - -
- -### **`polywrap.yaml`** -The `polywrap.yaml` project manifest is a high-level configuration file describing a Polywrap project. - -// TODO: link to build manifest customization in part 2 of tutorial -### **`polywrap.build.yaml`** -The `polywrap.build.yaml` build manifest enables build process customization. We won't need to modify this file, but we will learn how to do so anyway in Part Two of the tutorial. The file is not needed in most projects and can in fact be deleted. + -### **`polywrap.graphql`** -Each wrap project has a [Wrap Schema](/concepts/wrap-schema). The schema defines the wrap's interface, including dependencies, methods, and custom types. Polywrap uses the schema to generate the wrap's serialization bindings and validate the wrap's implementation. In this tutorial, we'll learn how to write a Wrap Schema. It's easy! +

tsconfig.build.json

+

Used to configure AssemblyScript for wrap development.

-### **Entry point** -The entry point file differs by language, but in all cases it exports the wrap module implementation. - -### **Tests folder** -The location of the tests folder differs by language, but in all cases it contains integration tests for the wrap. In addition, the tests folder contains a `types` folder with configuration files used to generate TypeScript bindings for the tests. The TypeScript bindings are based on your wrap's schema and can be used to write tests for your wrap with type safety. The bindings are optional, but we recommend using them. - -// TODO: link to advanced testing section -### **`package.json`** -We include a `package.json` file with pre-written build scripts and developer dependencies for testing, even if your wrap is not written in TypeScript or AssemblyScript. We understand that not every user wants to install NodeJS to build with Polywrap. Don't worry! In Part Two of the tutorial, we will learn how to write language-agnostic tests without any JavaScript dependencies. - -If you're building a Rust wrap, the `package.json` file is used only for build scripts and is not required for testing. Feel free to delete it or use it only as a reference. - -### **`tsconfig.json`** -Used to configure TypeScript for integration tests. - -### **`tsconfig.build.json`** -AssemblyScript only: used to configure AssemblyScript for wrap development. - -### **`rollup.config.mjs`** -TypeScript only: used to configure bundling for the wrap. - -### **`shims.js`** -TypeScript only: used to provide a more native TypeScript experience. - -### **`build-staging`** -Go only: required boilerplate; don't modify. \ No newline at end of file + + From 0cf716768b1b5cce58e2115f2576ab5185d6d690 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Wed, 25 Oct 2023 16:51:39 +0500 Subject: [PATCH 04/19] updated project manifest section of new create wraps tutorial --- .../part-one/project-manifest.md | 74 ++++++------------- .../part-one/project-setup.mdx | 2 +- .../_project-dir-common.mdx | 0 3 files changed, 23 insertions(+), 53 deletions(-) rename src/docs/tutorials/new-create-wraps/{components => partials}/_project-dir-common.mdx (100%) diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md index 65bb3ba0..44f916ad 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md +++ b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md @@ -9,12 +9,14 @@ import TabItem from '@theme/TabItem'; You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. ::: -Each wrap package is described by a Polywrap Manifest `polywrap.yaml` file. The Polywrap Manfiest provides the Polywrap CLI with basic information it needs to [`build`](https://github.com/polywrap/cli/tree/origin-dev/packages/cli#build--b) the wrap, such as where to find the `polywrap.graphql` schema that we'll write in the next section. +Each wrap package is described by a `polywrap.yaml` project manifest file. The project manifest provides the Polywrap CLI with basic information it needs to [`build`](https://github.com/polywrap/cli/tree/origin-dev/packages/cli#build--b) the wrap, such as where to find the `polywrap.graphql` schema that we'll write in the next section. ## Manifest Content -```yaml -format: # The manifest format version +Let's open the `polywrap.yaml` manifest, located in the root of our new project folder. The only item you need to change for now is the project name, but we'll briefly discuss each manifest property here since we'll make more changes later on. + +```yaml title="Project Manifest v0.6.0" +format: 0.6.0 # The manifest format version project: name: # Name of wrap type: # Type/language of project @@ -30,18 +32,11 @@ extensions: resources: # (Optional) Path to Resources directory ``` -Let's open the `polywrap.yaml` manifest, located in the root of our new project folder. The only item you need to change for now is the project name, but we'll briefly discuss each manifest property here since we'll make more changes later on. - -## **Format, Name, and Project Type** - -The manifest `format` version determines the layout of the project manifest and which properties exist in it. The latest version is 0.6.0. +### **Project** We'll `name` our project "oracle-wrap". -The project `type` is used to determine how to generate code and build the project. It follows the syntax: `(wasm|app|plugin)/language`. So a Rust wrap will have the type `wasm/rust`, and a Rust plugin would have the type `plugin/rust`. The languages that can be used for a `wasm` wrap project are different from the languages used in `plugin` and `app` projects. - -// TODO: link to interface docs -There is one additional type of project called an interface wrap (with type `interface`), which is used to define a wrap interface that can be implemented by other wraps or plugins. We'll discuss interface wraps in greater detail later on in the tutorial. +The project `type` is used to determine how to generate code and build the project. It follows the syntax: `(wasm|app|plugin)/language`. So a Rust wrap will have the type `wasm/rust`, and a Rust plugin would have the type `plugin/rust`. The languages that can be used for a `wasm` wrap project are different from the languages used in `plugin` and `app` projects. @@ -89,17 +84,16 @@ project: +// TODO: link to interface docs +There is one additional type of project called an interface wrap (with type `interface`), which is used to define a wrap interface that can be implemented by other wraps or plugins. We'll discuss interface wraps in greater detail later on in the tutorial. + +### **Source** + The project source tells the Polywrap CLI where to find: - The project schema--i.e. the module and types the wrap exports - The entry file that implements the Wrap Schema in code and exports its module - The location of a locally-stored Wrap Schema or `wrap.info` ABI file, and an arbitrary URI you'd like to point to it -:::tip -The `import_abis` item is useful during wrap development. Let's say you need to import another Wasm wrap, interface wrap, or plugin. All the relevant information is captured in its schema or `wrap.info` ABI. You need the `wrap.wasm` web assembly module to invoke the wrap's methods at runtime, but not to import its module or types at build time. This means you can start building your new wrap without first deploying its dependency. - -For example, the `import_abis` feature can be used in a monorepo that contains one interface wrap and a set of Wasm wraps or plugins that implement the interface. Each Wasm wrap project might contain an `import_abis` entry with a temporary URI that points to the interface `polywrap.graphql` schema. The wrap projects would use the temporary URI to import the interface in their own `polywrap.graphql` schemas, as though the interface were already published. -::: - @@ -142,47 +136,23 @@ source: -// TODO: link to build manifest and docs manifest documentation -There are two types of manifest extensions you can register in the project manifest: `build` and `docs`. The `polywrap.build.yaml` build manifest enables developers to customize the wrap build process. The `polywrap.docs.yaml` manifest allows you to provide metadata for Wrapscan deployments (coming soon). - -We won't be using either of these extension manifests in Part One of the tutorial, but we will dive into them in Part Two. If you'd like, you can remove the `extensions` property and delete the `polywrap.build.yaml` file. - -The `resources` attribute allows you to provide a path to a directory that you'd like included in the wrap package when deploying the wrap. We'll use it later to include a `README.md` file in our package. Note that the contents of the resources directory cannot be accessed by the wrap through the file system at runtime. - - - - -```yaml -extensions: - build: ./polywrap.build.yaml -``` - - - - +:::tip +The `import_abis` item is useful during wrap development. Let's say you need to import another Wasm wrap, interface wrap, or plugin. All the relevant information is captured in its schema or `wrap.info` ABI. You need the `wrap.wasm` web assembly module to invoke the wrap's methods at runtime, but not to import its module or types at build time. This means you can start building your new wrap without first deploying its dependency. -```yaml -extensions: - build: ./polywrap.build.yaml -``` +For example, the `import_abis` feature can be used in a monorepo that contains one interface wrap and a set of Wasm wraps or plugins that implement the interface. Each Wasm wrap project might contain an `import_abis` entry with a temporary URI that points to the interface `polywrap.graphql` schema. The wrap projects would use the temporary URI to import the interface in their own `polywrap.graphql` schemas, as though the interface were already published. +::: - +### **Extensions** - +// TODO: link to build manifest and docs manifest documentation +There are two types of manifest extensions you can register in the project manifest: `build` and `docs`. The `polywrap.build.yaml` build manifest enables developers to customize the wrap build process. The `polywrap.docs.yaml` manifest allows you to provide metadata for Wrapscan deployments (coming soon). ```yaml extensions: build: ./polywrap.build.yaml ``` - - - +We won't be using any manifest extensions in Part One of the tutorial, but we'll dive into them in Part Two. If you'd like, you can remove the `extensions` property and delete the `polywrap.build.yaml` file. -```yaml -extensions: - build: ./polywrap.build.yaml -``` - - - \ No newline at end of file +### **Resources** +The `resources` attribute allows you to provide a path to a directory that you'd like included in the wrap package when deploying the wrap. We'll use it later to include a `README.md` file in our package. Note that the contents of the resources directory cannot be accessed by the wrap through the file system at runtime. \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx index d93a9eeb..1925f988 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx @@ -4,7 +4,7 @@ title: 'Project Setup' --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; -import ProjectDirCommon from '../components/_project-dir-common.mdx'; +import ProjectDirCommon from '../partials/_project-dir-common.mdx'; :::note You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. diff --git a/src/docs/tutorials/new-create-wraps/components/_project-dir-common.mdx b/src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/components/_project-dir-common.mdx rename to src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx From 7937e02391869c319c3ff20f5d4d1759f1292e07 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Wed, 25 Oct 2023 23:20:53 +0500 Subject: [PATCH 05/19] lots of progress in schema-and-codegen.md --- sidebars.js | 1 + .../assemblyscript/yarn.lock | 5218 +++++++++++++++- .../create-wraps-tutorial/golang/yarn.lock | 5167 +++++++++++++++- snippets/create-wraps-tutorial/rust/yarn.lock | 2061 ++++++- .../typescript/yarn.lock | 5319 ++++++++++++++++- .../part-one/project-manifest.md | 18 +- .../part-one/project-setup.mdx | 72 +- .../part-one/schema-and-codegen.md | 250 + 8 files changed, 18051 insertions(+), 55 deletions(-) create mode 100644 src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.md diff --git a/sidebars.js b/sidebars.js index 7aaf3119..7d0e6d88 100644 --- a/sidebars.js +++ b/sidebars.js @@ -76,6 +76,7 @@ const sidebars = { items: [ 'tutorials/new-create-wraps/part-one/project-setup', 'tutorials/new-create-wraps/part-one/project-manifest', + 'tutorials/new-create-wraps/part-one/schema-and-codegen', ] } ], diff --git a/snippets/create-wraps-tutorial/assemblyscript/yarn.lock b/snippets/create-wraps-tutorial/assemblyscript/yarn.lock index e864ad01..65850d12 100644 --- a/snippets/create-wraps-tutorial/assemblyscript/yarn.lock +++ b/snippets/create-wraps-tutorial/assemblyscript/yarn.lock @@ -2,7 +2,5219 @@ # yarn lockfile v1 -"@polywrap/templates@0.12.1": +"@ampproject/remapping@^2.2.0": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" + integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== + dependencies: + "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/trace-mapping" "^0.3.9" + +"@apidevtools/json-schema-ref-parser@9.0.9": + version "9.0.9" + resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-9.0.9.tgz#d720f9256e3609621280584f2b47ae165359268b" + integrity sha512-GBD2Le9w2+lVFoc4vswGI/TjkNIZSVp7+9xPf+X3uidBfWnAeUWmquteSyt0+VCrhNMWj/FTABISQrD3Z/YA+w== + dependencies: + "@jsdevtools/ono" "^7.1.3" + "@types/json-schema" "^7.0.6" + call-me-maybe "^1.0.1" + js-yaml "^4.1.0" + +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.22.13": + version "7.22.13" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e" + integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w== + dependencies: + "@babel/highlight" "^7.22.13" + chalk "^2.4.2" + +"@babel/compat-data@^7.22.9": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.2.tgz#6a12ced93455827037bfb5ed8492820d60fc32cc" + integrity sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ== + +"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.5": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.2.tgz#ed10df0d580fff67c5f3ee70fd22e2e4c90a9f94" + integrity sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.22.13" + "@babel/generator" "^7.23.0" + "@babel/helper-compilation-targets" "^7.22.15" + "@babel/helper-module-transforms" "^7.23.0" + "@babel/helpers" "^7.23.2" + "@babel/parser" "^7.23.0" + "@babel/template" "^7.22.15" + "@babel/traverse" "^7.23.2" + "@babel/types" "^7.23.0" + convert-source-map "^2.0.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.3" + semver "^6.3.1" + +"@babel/generator@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.0.tgz#df5c386e2218be505b34837acbcb874d7a983420" + integrity sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g== + dependencies: + "@babel/types" "^7.23.0" + "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" + jsesc "^2.5.1" + +"@babel/helper-compilation-targets@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz#0698fc44551a26cf29f18d4662d5bf545a6cfc52" + integrity sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw== + dependencies: + "@babel/compat-data" "^7.22.9" + "@babel/helper-validator-option" "^7.22.15" + browserslist "^4.21.9" + lru-cache "^5.1.1" + semver "^6.3.1" + +"@babel/helper-environment-visitor@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" + integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== + +"@babel/helper-function-name@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" + integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== + dependencies: + "@babel/template" "^7.22.15" + "@babel/types" "^7.23.0" + +"@babel/helper-hoist-variables@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" + integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-module-imports@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" + integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== + dependencies: + "@babel/types" "^7.22.15" + +"@babel/helper-module-transforms@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz#3ec246457f6c842c0aee62a01f60739906f7047e" + integrity sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-module-imports" "^7.22.15" + "@babel/helper-simple-access" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/helper-validator-identifier" "^7.22.20" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.8.0": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" + integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== + +"@babel/helper-simple-access@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" + integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-split-export-declaration@^7.22.6": + version "7.22.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" + integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-string-parser@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" + integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== + +"@babel/helper-validator-identifier@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" + integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== + +"@babel/helper-validator-option@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" + integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== + +"@babel/helpers@^7.23.2": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.2.tgz#2832549a6e37d484286e15ba36a5330483cac767" + integrity sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ== + dependencies: + "@babel/template" "^7.22.15" + "@babel/traverse" "^7.23.2" + "@babel/types" "^7.23.0" + +"@babel/highlight@^7.22.13": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54" + integrity sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg== + dependencies: + "@babel/helper-validator-identifier" "^7.22.20" + chalk "^2.4.2" + js-tokens "^4.0.0" + +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.15", "@babel/parser@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" + integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== + +"@babel/plugin-syntax-async-generators@^7.8.4": + version "7.8.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-bigint@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-class-properties@^7.8.3": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-syntax-import-meta@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-json-strings@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-numeric-separator@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-object-rest-spread@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-catch-binding@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-chaining@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-top-level-await@^7.8.3": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== + dependencies: + "@babel/helper-plugin-utils" "^7.14.5" + +"@babel/template@^7.22.15", "@babel/template@^7.3.3": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" + integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w== + dependencies: + "@babel/code-frame" "^7.22.13" + "@babel/parser" "^7.22.15" + "@babel/types" "^7.22.15" + +"@babel/traverse@^7.1.0", "@babel/traverse@^7.23.2": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.2.tgz#329c7a06735e144a506bdb2cad0268b7f46f4ad8" + integrity sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw== + dependencies: + "@babel/code-frame" "^7.22.13" + "@babel/generator" "^7.23.0" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/parser" "^7.23.0" + "@babel/types" "^7.23.0" + debug "^4.1.0" + globals "^11.1.0" + +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.3.3": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb" + integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg== + dependencies: + "@babel/helper-string-parser" "^7.22.5" + "@babel/helper-validator-identifier" "^7.22.20" + to-fast-properties "^2.0.0" + +"@bcoe/v8-coverage@^0.2.3": + version "0.2.3" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== + +"@cnakazawa/watch@^1.0.3": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" + integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== + dependencies: + exec-sh "^0.3.2" + minimist "^1.2.0" + +"@dorgjelli/graphql-schema-cycles@1.1.4": + version "1.1.4" + resolved "https://registry.yarnpkg.com/@dorgjelli/graphql-schema-cycles/-/graphql-schema-cycles-1.1.4.tgz#31f230c61f624f7c2ceca7e18fad8b2cb07d392f" + integrity sha512-U5ARitMQWKjOAvwn1+0Z52R9sbNe1wpbgAbj2hOfRFb/vupfPlRwZLbuUZAlotMpkoxbTbk+GRmoiNzGcJfyHw== + dependencies: + graphql "15.5.0" + graphql-json-transform "^1.1.0-alpha.0" + +"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" + integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/abstract-provider@5.7.0", "@ethersproject/abstract-provider@^5.6.1", "@ethersproject/abstract-provider@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef" + integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + +"@ethersproject/abstract-signer@5.7.0", "@ethersproject/abstract-signer@^5.6.2", "@ethersproject/abstract-signer@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2" + integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/address@5.7.0", "@ethersproject/address@^5.6.1", "@ethersproject/address@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37" + integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + +"@ethersproject/base64@5.7.0", "@ethersproject/base64@^5.6.1", "@ethersproject/base64@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c" + integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + +"@ethersproject/basex@5.7.0", "@ethersproject/basex@^5.6.1", "@ethersproject/basex@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b" + integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.6.2", "@ethersproject/bignumber@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2" + integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.6.1", "@ethersproject/bytes@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d" + integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.6.1", "@ethersproject/constants@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e" + integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + +"@ethersproject/contracts@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e" + integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + +"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.6.1", "@ethersproject/hash@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7" + integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/hdnode@5.7.0", "@ethersproject/hdnode@^5.6.2", "@ethersproject/hdnode@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf" + integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/json-wallets@5.7.0", "@ethersproject/json-wallets@^5.6.1", "@ethersproject/json-wallets@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360" + integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.6.1", "@ethersproject/keccak256@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a" + integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.6.0", "@ethersproject/logger@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892" + integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== + +"@ethersproject/networks@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.0.tgz#df72a392f1a63a57f87210515695a31a245845ad" + integrity sha512-MG6oHSQHd4ebvJrleEQQ4HhVu8Ichr0RDYEfHzsVAVjHNM+w36x9wp9r+hf1JstMXtseXDtkiVoARAG6M959AA== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/networks@^5.6.3", "@ethersproject/networks@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6" + integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/pbkdf2@5.7.0", "@ethersproject/pbkdf2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102" + integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + +"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.6.0", "@ethersproject/properties@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30" + integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/providers@5.6.8": + version "5.6.8" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.8.tgz#22e6c57be215ba5545d3a46cf759d265bb4e879d" + integrity sha512-Wf+CseT/iOJjrGtAOf3ck9zS7AgPmr2fZ3N97r4+YXN3mBePTG2/bJ8DApl9mVwYL+RpYbNxMEkEp4mPGdwG/w== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/base64" "^5.6.1" + "@ethersproject/basex" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.3" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/web" "^5.6.1" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/providers@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.0.tgz#a885cfc7650a64385e7b03ac86fe9c2d4a9c2c63" + integrity sha512-+TTrrINMzZ0aXtlwO/95uhAggKm4USLm1PbeCBR/3XZ7+Oey+3pMyddzZEyRhizHpy1HXV0FRWRMI1O3EGYibA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/random@5.7.0", "@ethersproject/random@^5.6.1", "@ethersproject/random@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c" + integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.6.1", "@ethersproject/rlp@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" + integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/sha2@5.7.0", "@ethersproject/sha2@^5.6.1", "@ethersproject/sha2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb" + integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.7.0", "@ethersproject/signing-key@^5.6.2", "@ethersproject/signing-key@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3" + integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/solidity@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8" + integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.6.1", "@ethersproject/strings@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2" + integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.6.2", "@ethersproject/transactions@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b" + integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + +"@ethersproject/units@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1" + integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/wallet@5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.6.2.tgz#cd61429d1e934681e413f4bc847a5f2f87e3a03c" + integrity sha512-lrgh0FDQPuOnHcF80Q3gHYsSUODp6aJLAdDmDV0xKCN/T7D99ta1jGVhulg3PY8wiXEngD0DfM0I2XKXlrqJfg== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/hdnode" "^5.6.2" + "@ethersproject/json-wallets" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/wordlists" "^5.6.1" + +"@ethersproject/wallet@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d" + integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/json-wallets" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/web@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.0.tgz#40850c05260edad8b54827923bbad23d96aac0bc" + integrity sha512-ApHcbbj+muRASVDSCl/tgxaH2LBkRMEYfLOLVa0COipx0+nlu0QKet7U2lEg0vdkh8XRSLf2nd1f1Uk9SrVSGA== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/web@^5.6.1", "@ethersproject/web@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae" + integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/wordlists@5.7.0", "@ethersproject/wordlists@^5.6.1", "@ethersproject/wordlists@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5" + integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@fetsorn/opentelemetry-console-exporter@0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@fetsorn/opentelemetry-console-exporter/-/opentelemetry-console-exporter-0.0.3.tgz#c137629fecc610c7667e68b528926e498e152c0b" + integrity sha512-+UDrzHANOPcp0+47xK7dqeKIlYSh5a5WpFaswzM9S2MnjQfP0zOysAunWFRb6CFYSj1hTeFotYYXr8tYbyBpoA== + +"@formatjs/ecma402-abstract@1.6.2": + version "1.6.2" + resolved "https://registry.yarnpkg.com/@formatjs/ecma402-abstract/-/ecma402-abstract-1.6.2.tgz#9d064a2cf790769aa6721e074fb5d5c357084bb9" + integrity sha512-aLBODrSRhHaL/0WdQ0T2UsGqRbdtRRHqqrs4zwNQoRsGBEtEAvlj/rgr6Uea4PSymVJrbZBoAyECM2Z3Pq4i0g== + dependencies: + tslib "^2.1.0" + +"@formatjs/intl-datetimeformat@3.2.12": + version "3.2.12" + resolved "https://registry.yarnpkg.com/@formatjs/intl-datetimeformat/-/intl-datetimeformat-3.2.12.tgz#c9b2e85f0267ee13ea615a8991995da3075e3b13" + integrity sha512-qvY5+dl3vlgH0iWRXwl8CG9UkSVB5uP2+HH//fyZZ01G4Ww5rxMJmia1SbUqatpoe/dX+Z+aLejCqUUyugyL2g== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-displaynames@4.0.10": + version "4.0.10" + resolved "https://registry.yarnpkg.com/@formatjs/intl-displaynames/-/intl-displaynames-4.0.10.tgz#5bbd1bbcd64a036b4be27798b650c864dcf4466a" + integrity sha512-KmYJQHynGnnMeqIWVXhbzCMcEC8lg1TfGVdcO9May6paDT+dksZoOBQc741t7iXi/YVO/wXEZdmXhUNX7ODZug== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-listformat@5.0.10": + version "5.0.10" + resolved "https://registry.yarnpkg.com/@formatjs/intl-listformat/-/intl-listformat-5.0.10.tgz#9f8c4ad5e8a925240e151ba794c41fba01f742cc" + integrity sha512-FLtrtBPfBoeteRlYcHvThYbSW2YdJTllR0xEnk6cr/6FRArbfPRYMzDpFYlESzb5g8bpQMKZy+kFQ6V2Z+5KaA== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-relativetimeformat@8.1.2": + version "8.1.2" + resolved "https://registry.yarnpkg.com/@formatjs/intl-relativetimeformat/-/intl-relativetimeformat-8.1.2.tgz#119f3dce97458991f86bf34a736880e4a7bc1697" + integrity sha512-LZUxbc9GHVGmDc4sqGAXugoxhvZV7EG2lG2c0aKERup2ixvmDMbbEN3iEEr5aKkP7YyGxXxgqDn2dwg7QCPR6Q== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl@1.8.2": + version "1.8.2" + resolved "https://registry.yarnpkg.com/@formatjs/intl/-/intl-1.8.2.tgz#6090e6c1826a92e70668dfe08b4ba30127ea3a85" + integrity sha512-9xHoNKPv4qQIQ5AVfpQbIPZanz50i7oMtZWrd6Fz7Q2GM/5uhBr9mrCrY1tz/+diP7uguKmhj1IweLYaxY3DTQ== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + "@formatjs/intl-datetimeformat" "3.2.12" + "@formatjs/intl-displaynames" "4.0.10" + "@formatjs/intl-listformat" "5.0.10" + "@formatjs/intl-relativetimeformat" "8.1.2" + fast-memoize "^2.5.2" + intl-messageformat "9.5.2" + intl-messageformat-parser "6.4.2" + tslib "^2.1.0" + +"@istanbuljs/load-nyc-config@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== + dependencies: + camelcase "^5.3.1" + find-up "^4.1.0" + get-package-type "^0.1.0" + js-yaml "^3.13.1" + resolve-from "^5.0.0" + +"@istanbuljs/schema@^0.1.2": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + +"@jest/console@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.6.2.tgz#4e04bc464014358b03ab4937805ee36a0aeb98f2" + integrity sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + jest-message-util "^26.6.2" + jest-util "^26.6.2" + slash "^3.0.0" + +"@jest/core@^26.6.3": + version "26.6.3" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.6.3.tgz#7639fcb3833d748a4656ada54bde193051e45fad" + integrity sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/reporters" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-changed-files "^26.6.2" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-resolve-dependencies "^26.6.3" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + jest-watcher "^26.6.2" + micromatch "^4.0.2" + p-each-series "^2.1.0" + rimraf "^3.0.0" + slash "^3.0.0" + strip-ansi "^6.0.0" + +"@jest/environment@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.6.2.tgz#ba364cc72e221e79cc8f0a99555bf5d7577cf92c" + integrity sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA== + dependencies: + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + +"@jest/fake-timers@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.6.2.tgz#459c329bcf70cee4af4d7e3f3e67848123535aad" + integrity sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA== + dependencies: + "@jest/types" "^26.6.2" + "@sinonjs/fake-timers" "^6.0.1" + "@types/node" "*" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-util "^26.6.2" + +"@jest/globals@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.6.2.tgz#5b613b78a1aa2655ae908eba638cc96a20df720a" + integrity sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/types" "^26.6.2" + expect "^26.6.2" + +"@jest/reporters@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.6.2.tgz#1f518b99637a5f18307bd3ecf9275f6882a667f6" + integrity sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw== + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@jest/console" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.2" + graceful-fs "^4.2.4" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-instrument "^4.0.3" + istanbul-lib-report "^3.0.0" + istanbul-lib-source-maps "^4.0.0" + istanbul-reports "^3.0.2" + jest-haste-map "^26.6.2" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + slash "^3.0.0" + source-map "^0.6.0" + string-length "^4.0.1" + terminal-link "^2.0.0" + v8-to-istanbul "^7.0.0" + optionalDependencies: + node-notifier "^8.0.0" + +"@jest/source-map@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.6.2.tgz#29af5e1e2e324cafccc936f218309f54ab69d535" + integrity sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA== + dependencies: + callsites "^3.0.0" + graceful-fs "^4.2.4" + source-map "^0.6.0" + +"@jest/test-result@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.6.2.tgz#55da58b62df134576cc95476efa5f7949e3f5f18" + integrity sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/istanbul-lib-coverage" "^2.0.0" + collect-v8-coverage "^1.0.0" + +"@jest/test-sequencer@^26.6.3": + version "26.6.3" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz#98e8a45100863886d074205e8ffdc5a7eb582b17" + integrity sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw== + dependencies: + "@jest/test-result" "^26.6.2" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + +"@jest/transform@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" + integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^26.6.2" + babel-plugin-istanbul "^6.0.0" + chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-regex-util "^26.0.0" + jest-util "^26.6.2" + micromatch "^4.0.2" + pirates "^4.0.1" + slash "^3.0.0" + source-map "^0.6.1" + write-file-atomic "^3.0.0" + +"@jest/types@^25.5.0": + version "25.5.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-25.5.0.tgz#4d6a4793f7b9599fc3680877b856a97dbccf2a9d" + integrity sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^1.1.1" + "@types/yargs" "^15.0.0" + chalk "^3.0.0" + +"@jest/types@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" + integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + +"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" + integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== + dependencies: + "@jridgewell/set-array" "^1.0.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" + +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" + integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== + +"@jridgewell/set-array@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" + integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== + +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + +"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": + version "0.3.20" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz#72e45707cf240fa6b081d0366f8265b0cd10197f" + integrity sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + +"@jsdevtools/ono@^7.1.3": + version "7.1.3" + resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" + integrity sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg== + +"@msgpack/msgpack@2.7.2": + version "2.7.2" + resolved "https://registry.yarnpkg.com/@msgpack/msgpack/-/msgpack-2.7.2.tgz#f34b8aa0c49f0dd55eb7eba577081299cbf3f90b" + integrity sha512-rYEi46+gIzufyYUAoHDnRzkWGxajpD9vVXFQ3g1vbjrBm6P7MBmm+s/fqPa46sxa+8FOUdEuRQKaugo5a4JWpw== + +"@opentelemetry/api-metrics@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api-metrics/-/api-metrics-0.32.0.tgz#0f09f78491a4b301ddf54a8b8a38ffa99981f645" + integrity sha512-g1WLhpG8B6iuDyZJFRGsR+JKyZ94m5LEmY2f+duEJ9Xb4XRlLHrZvh6G34OH6GJ8iDHxfHb/sWjJ1ZpkI9yGMQ== + dependencies: + "@opentelemetry/api" "^1.0.0" + +"@opentelemetry/api@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.2.0.tgz#89ef99401cde6208cff98760b67663726ef26686" + integrity sha512-0nBr+VZNKm9tvNDZFstI3Pq1fCTEDK5OZTnVKNvBNAKgd0yIvmwsP4m61rEv7ZP+tOUjWJhROpxK5MsnlF911g== + +"@opentelemetry/api@^1.0.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.6.0.tgz#de2c6823203d6f319511898bb5de7e70f5267e19" + integrity sha512-OWlrQAnWn9577PhVgqjUvMr1pg57Bc4jv0iL4w0PRuOSRvq67rvHW9Ie/dZVMvCzhSCB+UxhcY/PmCmFj33Q+g== + +"@opentelemetry/core@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.6.0.tgz#c55f8ab7496acef7dbd8c4eedef6a4d4a0143c95" + integrity sha512-MsEhsyCTfYme6frK8/AqEWwbS9SB3Ta5bjgz4jPQJjL7ijUM3JiLVvqh/kHo1UlUjbUbLmGG7jA5Nw4d7SMcLQ== + dependencies: + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/exporter-trace-otlp-http@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.32.0.tgz#55773290a221855c4e8c422e8fb5e7ff4aa5f04e" + integrity sha512-8n44NDoEFoYG3mMToZxNyUKkHSGfzSShw6I2V5FApcH7rid20LmKiNuzc7lACneDIZBld+GGpLRuFhWniW8JhA== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/otlp-exporter-base" "0.32.0" + "@opentelemetry/otlp-transformer" "0.32.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + +"@opentelemetry/otlp-exporter-base@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.32.0.tgz#37dde162835a8fd23fa040f07e2938deb335fc4b" + integrity sha512-Dscxu4VNKrkD1SwGKdc7bAtLViGFJC8ah6Dr/vZn22NFHXSa53lSzDdTKeSTNNWH9sCGu/65LS45VMd4PsRvwQ== + dependencies: + "@opentelemetry/core" "1.6.0" + +"@opentelemetry/otlp-transformer@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-transformer/-/otlp-transformer-0.32.0.tgz#652c8f4c56c95f7d7ec39e20573b885d27ca13f1" + integrity sha512-PFAqfKgJpTOZryPe1UMm7R578PLxsK0wCAuKSt6m8v1bN/4DO8DX4HD7k3mYGZVU5jNg8tVZSwyIpY6ryrHDMQ== + dependencies: + "@opentelemetry/api-metrics" "0.32.0" + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-metrics" "0.32.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + +"@opentelemetry/resources@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.6.0.tgz#9756894131b9b0dfbcc0cecb5d4bd040d9c1b09d" + integrity sha512-07GlHuq72r2rnJugYVdGumviQvfrl8kEPidkZSVoseLVfIjV7nzxxt5/vqs9pK7JItWOrvjRdr/jTBVayFBr/w== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/sdk-metrics@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-metrics/-/sdk-metrics-0.32.0.tgz#463cd3a2b267f044db9aaab85887a171710345a0" + integrity sha512-zC9RCOIsXRqOHWmWfcxArtDHbip2/jaIH1yu/OKau/shDZYFluAxY6zAEYIb4YEAzKKEF+fpaoRgpodDWNGVGA== + dependencies: + "@opentelemetry/api-metrics" "0.32.0" + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + lodash.merge "4.6.2" + +"@opentelemetry/sdk-trace-base@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.6.0.tgz#8b1511c0b0f3e6015e345f5ed4a683adf03e3e3c" + integrity sha512-yx/uuzHdT0QNRSEbCgXHc0GONk90uvaFcPGaNowIFSl85rTp4or4uIIMkG7R8ckj8xWjDSjsaztH6yQxoZrl5g== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/sdk-trace-web@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.6.0.tgz#ef243e3e1102b53bc0afa93c29c18fc7e2f66e52" + integrity sha512-iOgmygvooaZm4Vi6mh5FM7ubj/e+MqDn8cDPCNfk6V8Q2yWj0co8HKWPFo0RoxSLYyPaFnEEXOXWWuE4OTwLKw== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/semantic-conventions@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.6.0.tgz#ed410c9eb0070491cff9fe914246ce41f88d6f74" + integrity sha512-aPfcBeLErM/PPiAuAbNFLN5sNbZLc3KZlar27uohllN8Zs6jJbHyJU1y7cMA6W/zuq+thkaG8mujiS+3iD/FWQ== + +"@polywrap/asyncify-js@0.12.2", "@polywrap/asyncify-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/asyncify-js/-/asyncify-js-0.12.2.tgz#e5b264bb38f7108beb1b83c43fa6c0ce3459f7a3" + integrity sha512-1dj/D0O4KosIw6q+4xKSu9w5Vry6zb3T5YgIBgBHuPvp3+146YUsuY1DFNFOKVs5XFfiilp10kkDpNIr4bi6mQ== + +"@polywrap/client-config-builder-js@0.12.2", "@polywrap/client-config-builder-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/client-config-builder-js/-/client-config-builder-js-0.12.2.tgz#b1c1be1e17bdc43b36df96517460c4860b395aad" + integrity sha512-N09BTlspeLIahvDeMKBqRtSiWLAUj5RH4aExLy3CiRW1Hdq+Xpt7evxjImK+ugnAFOM3c2L8LK63qou600sRgw== + dependencies: + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/plugin-js" "0.12.2" + "@polywrap/sys-config-bundle-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + "@polywrap/web3-config-bundle-js" "0.12.2" + +"@polywrap/client-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/client-js/-/client-js-0.12.2.tgz#eb6b80c8ae35483c7dd0e773be79aa78e0a232ca" + integrity sha512-loEkFWEnXOxYwfnC61aZRYo+YGPbsIcFg+UO64lIIRKCTb6bpzueLy97RWGVf1YF0tDtomhwwCY+QNST2gy06Q== + dependencies: + "@polywrap/client-config-builder-js" "0.12.2" + "@polywrap/core-client-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/plugin-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/concurrent-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/concurrent-plugin-js/-/concurrent-plugin-js-0.12.0.tgz#b3aba6a99cb2531b5333918d780f82a506e344d1" + integrity sha512-Y7rq3MnXbi/sshbIs8lFZOUppXiscJLRqUo1qMYYZrHjDFTzs1c0bTHImxEEpygtnHLZnZ3ZaUvynzipLiL+Jw== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/msgpack-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/config-bundle-types-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/config-bundle-types-js/-/config-bundle-types-js-0.12.2.tgz#00e40cf882001be1ae82493052da19dac02708f3" + integrity sha512-ZRa3EOh5i/Gq/7HDS1IG5FJcBXx31XFeHAjrwKPU23x5eSVux3gIoFzgg3zv4CzQtDizUv+ds76LGKn6vFWX/A== + dependencies: + "@polywrap/core-js" "0.12.2" + +"@polywrap/core-client-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/core-client-js/-/core-client-js-0.12.2.tgz#88f2013a50b56979bc6145098b05b6a7725bb1f1" + integrity sha512-7sN3KErSun7V0pWOfI0AhKqsC1zf7njRaYM2EMeGYqXoHm9P2OteNPA2j9qn1FYPQHHZI/MQaVrCDAHaCeXuJg== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/core-js@0.12.2", "@polywrap/core-js@~0.12.0", "@polywrap/core-js@~0.12.0-pre.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/core-js/-/core-js-0.12.2.tgz#b85f0314a30696db7ef265bfb89b4f25c194d900" + integrity sha512-AezoxK1YX+qJl06opUeAyjBfA+LIEHDPMoZZWeI+pyQHhuDUHyLv4xh4uzXELNnzfLo0Ap39qKAQ5u2HAs1DJA== + dependencies: + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/datetime-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/datetime-plugin-js/-/datetime-plugin-js-0.12.0.tgz#d04daf01c060e664ddbeea3d72a530a0b6d709fc" + integrity sha512-iDMa+250UxtJYD/I7eG3aRUrf73g8OgnhO9CrIaSEbsi/X3eKVfXIQPXSowqXSLhwG6LceDc/zn19uEPXZSvUg== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/ethereum-wallet-js@~0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@polywrap/ethereum-wallet-js/-/ethereum-wallet-js-0.1.0.tgz#1af5800aab3c4cedfcd1e4e5e305d5d5ef733bea" + integrity sha512-GTg4X0gyFHXNAHSDxe6QfiWJv8z/pwobnVyKw4rcmBLw7tqcTiYXk4kU0QfWV3JLV/8rvzESl+FtXPC68dUMIA== + dependencies: + "@ethersproject/address" "5.7.0" + "@ethersproject/providers" "5.7.0" + "@polywrap/core-js" "~0.12.0-pre.0" + "@polywrap/plugin-js" "~0.12.0-pre.0" + ethers "5.7.0" + +"@polywrap/file-system-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/file-system-plugin-js/-/file-system-plugin-js-0.12.0.tgz#0d88113e629d51173db0b30c34c296aeb8b23eea" + integrity sha512-hv6BCjnMwE3/CG5lBpucKKpcCE7DyLhshbv+KRSgz1sftI9CalogJbP6irkySgV7dDpMnQf1iZGTntv8HLwFOw== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/http-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/http-plugin-js/-/http-plugin-js-0.12.0.tgz#f297e192bbca16f81bbdf16dbc16a7664c93def5" + integrity sha512-DVXfRdF72ozLBXPQFAWEiz72gCF6wSw/H8q53DxeOXh3gKQ5zBpes5INEMpBpA9vzhqS73Y3KyMHTCrrXecv0w== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + axios "0.21.4" + form-data "4.0.0" + +"@polywrap/logger-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/logger-plugin-js/-/logger-plugin-js-0.12.0.tgz#e724bb5504336e4fbf1f0f9757cfe893f9bd5297" + integrity sha512-M6TXUSBTFRWLsTaT3gfNlqCRvrpgg60klD7g3zzEKeklkwy19TbcrkW2CVxfr0HZwiL1TVUuLBdDJc1sqE0A8g== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/logging-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/logging-js/-/logging-js-0.12.1.tgz#2d52e3f5e9d32cf5463222fcc1b00d4f98aacacd" + integrity sha512-yAGFhXIdgabITlZptyGLOaSjor88R98nV6Kzxqsl6sVxHKZOEf5Xj4MtlXYFaeh8ha6x8BUkZLNv5s3SlW5ttw== + +"@polywrap/msgpack-js@0.12.2", "@polywrap/msgpack-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/msgpack-js/-/msgpack-js-0.12.2.tgz#27562f98a60e82b55f7d9147bc13feb346cf47de" + integrity sha512-FsdHLRFRSfjh+O6zsjX3G2VCBJQDswnKGQKtp8IckPe0PJ0gpu9NPEvCFS4FfbF+Kmw+A7tUDrZ2I4wsuZsb9g== + dependencies: + "@msgpack/msgpack" "2.7.2" + +"@polywrap/os-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/os-js/-/os-js-0.12.1.tgz#0f8f06199e3b21331a4cbee5b7b86e147c26129f" + integrity sha512-vYsGpCHMhxPAUzbxsik0lTupHuUVwkrxojjLZL89N8yP67mhB9gTJeAYgDKXBTOo9E5bVFL07gDdaiDY+icfAQ== + +"@polywrap/plugin-js@0.12.2", "@polywrap/plugin-js@~0.12.0", "@polywrap/plugin-js@~0.12.0-pre.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/plugin-js/-/plugin-js-0.12.2.tgz#aca362a9992ac8ab619f171c08e876524ad35dac" + integrity sha512-8mJy5Dk1Np+cPoXKMWNuazxd2oMv/UKCOPFX0Sam3BqE9BtPbjXRUVG55vOtD6x+Ozhe3QIr83qXsfNOxNvLGw== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/polywrap-manifest-schemas@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/polywrap-manifest-schemas/-/polywrap-manifest-schemas-0.12.1.tgz#ebca3d6f1039fb8bdd6c31164f00ea861f49ce2c" + integrity sha512-5sHO6jL8QPoqXXDj2wb/pqRmKjZ0VxxDYaugRN2qeICHTF3rFU4aqs1y/qyJw3FGNFTLGDkLlPqnYDk8EZB5xQ== + +"@polywrap/polywrap-manifest-types-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/polywrap-manifest-types-js/-/polywrap-manifest-types-js-0.12.1.tgz#6884ce7c72981c2e73750fc4e706162bdcc560f4" + integrity sha512-fUsrZ1D5U9j+E56EB98ZHx1/xHflPXXizY7vNvxDRkzjhkCvlwEY61MfcNNWzakjyq1Fb7kwzxxZIp8XJZFoXw== + dependencies: + "@polywrap/logging-js" "0.12.1" + "@polywrap/polywrap-manifest-schemas" "0.12.1" + jsonschema "1.4.0" + semver "7.5.3" + yaml "2.2.2" + +"@polywrap/result@0.12.2", "@polywrap/result@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/result/-/result-0.12.2.tgz#99ad60da087db4dd2ad760ba1bd27a752d4af45f" + integrity sha512-gcRUsWz3Qyd7CxWqrTTj1NCl2h74yI2lgqMlUfCn4TVdBmRqbyTe5iP+g+R/qs0qO0Ud8Sx0GAfbSuZfzClJ2g== + +"@polywrap/schema-bind@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-bind/-/schema-bind-0.12.1.tgz#a7faa9681f468d9731c08399f4f121b2e76cbc8a" + integrity sha512-5VFpEoHW5Q2qnlXtt5PZs5NFWjYV00GDiQH3n25JaDK7vkTsf4rn4DZ5UlM/iKW6FLw6PpMUPquXapPtj9W3+w== + dependencies: + "@polywrap/client-js" "~0.12.0" + "@polywrap/os-js" "0.12.1" + "@polywrap/schema-parse" "0.12.1" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + mustache "4.0.1" + +"@polywrap/schema-compose@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-compose/-/schema-compose-0.12.1.tgz#7b6955522e47bbc066a30dcdf03d47263a2945e3" + integrity sha512-ie1fPOEW2FtZv/NDydFpolEoGLZfb34TND38LxiVkfe+Wnyp7aOKR0lq1cvP1g+9POZPv5TzL3Gb/jb+54Z2EQ== + dependencies: + "@polywrap/schema-parse" "0.12.1" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + graphql "15.5.0" + mustache "4.0.1" + +"@polywrap/schema-parse@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-parse/-/schema-parse-0.12.1.tgz#2764ad088537775cf9caccf7157b538d77a74f83" + integrity sha512-wCiGM2G5c/9+6mAXD3KTFi+avvReWV2PpfWqfH3bB1u7uun99Ed2yeXXj6034I+YqIZyVIR34nZq9YAm0Fn0Lw== + dependencies: + "@dorgjelli/graphql-schema-cycles" "1.1.4" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + graphql "15.5.0" + +"@polywrap/sys-config-bundle-js@0.12.2", "@polywrap/sys-config-bundle-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/sys-config-bundle-js/-/sys-config-bundle-js-0.12.2.tgz#6ad6f0d2f31c6668e7642801c0adcab22a4f654e" + integrity sha512-w6zewNacyXPO/LjmSyHqlkbtT8kq2BR0ydZTU1oO0SaeL08ua7FLe2H6v01vgqOCwHuwV2xsW0Y/neHHZx/cYw== + dependencies: + "@polywrap/concurrent-plugin-js" "~0.12.0" + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/datetime-plugin-js" "~0.12.0" + "@polywrap/file-system-plugin-js" "~0.12.0" + "@polywrap/http-plugin-js" "~0.12.0" + "@polywrap/logger-plugin-js" "~0.12.0" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + base64-to-uint8array "1.0.0" + +"@polywrap/tracing-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/tracing-js/-/tracing-js-0.12.2.tgz#549e54af500c4ba3384107853db453cd14cc7960" + integrity sha512-nApKdEPvfWijCoyDuq6ib6rgo7iWJH09Nf8lF1dTBafj59C3dR7aqyOO4NH8znZAO1poeiG6rPqsrnLYGM9CMA== + dependencies: + "@fetsorn/opentelemetry-console-exporter" "0.0.3" + "@opentelemetry/api" "1.2.0" + "@opentelemetry/exporter-trace-otlp-http" "0.32.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + "@opentelemetry/sdk-trace-web" "1.6.0" + +"@polywrap/uri-resolver-extensions-js@0.12.2", "@polywrap/uri-resolver-extensions-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.12.2.tgz#b8b2a3714f8bf36da3cd8d560b0f77af1e54b2ea" + integrity sha512-WA1ythVxqviaQWPHmWVegeeXEstq/+WDWF3Xdkm1Hbrlb10rPSzL7iq4IH8Mz2jFfjtA5YTQoK+xtw55koWH5w== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/uri-resolvers-js@0.12.2", "@polywrap/uri-resolvers-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/uri-resolvers-js/-/uri-resolvers-js-0.12.2.tgz#8c2393a56ae12445be171b8d8feeb803b114c32b" + integrity sha512-5J3unEYxEMMSI+2lHVs5SmvpSyAbDie7ZJgt2djL64+nOjisY8hBI/TBd2mCgrHy3fziE7DCZhA+d70ChtLCBg== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/wasm-as@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/wasm-as/-/wasm-as-0.12.1.tgz#b28a3a3771121f4b0e6698aa3aca9d6b754b0d65" + integrity sha512-4WjbhoX/0mxw4F02LnPXZT90BWL8dRKP0gjU5Rd6Cyo+hUA3jKoHKVkLGG1VfovUb+b82G4ttFNdFbc1CMLS1w== + dependencies: + "@web3api/assemblyscript-json" "1.2.0" + as-bigint "0.5.3" + as-bignumber "0.2.1" + as-container "0.6.1" + +"@polywrap/wasm-js@0.12.2", "@polywrap/wasm-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/wasm-js/-/wasm-js-0.12.2.tgz#c807d296b66c1fe12bd80ce482eb7aa4e14f08ec" + integrity sha512-x3Buycm0ZLSPL8nP+QlySwvrZPH30kyuYbl170oNCiwf4Hllv10/Dn8xSR2WAV583ZD4tI/xIYzz04NVdXABKQ== + dependencies: + "@polywrap/asyncify-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/web3-config-bundle-js@0.12.2", "@polywrap/web3-config-bundle-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/web3-config-bundle-js/-/web3-config-bundle-js-0.12.2.tgz#87cd4b523a2df4f0debfa45e0b9c18c3116e9931" + integrity sha512-sY2cFw8TBXrIxXI8U50cSBwTzudsVVMztieA0hMIBw6XkEmFLGncn7RMnNJ5SBU8Cs+RFbwi9KATgNWQi5GKrQ== + dependencies: + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/ethereum-wallet-js" "~0.1.0" + "@polywrap/sys-config-bundle-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + base64-to-uint8array "1.0.0" + +"@polywrap/wrap-manifest-types-js@0.12.2", "@polywrap/wrap-manifest-types-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/wrap-manifest-types-js/-/wrap-manifest-types-js-0.12.2.tgz#c27f5f320b53de6744cfc2344bb90a1e6ff9e8d6" + integrity sha512-YlOCK1V0fFitunWvsRrQFiQMPETARLMd/d/iCeubkUzIh4TUr2gEtHbc8n2C9FYUFa4zLcY84mKfdDSyTf49jw== + dependencies: + "@polywrap/msgpack-js" "0.12.2" + ajv "8.12.0" + semver "~7.5.4" + +"@sinonjs/commons@^1.7.0": + version "1.8.6" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" + integrity sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ== + dependencies: + type-detect "4.0.8" + +"@sinonjs/fake-timers@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" + integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== + dependencies: + "@sinonjs/commons" "^1.7.0" + +"@tootallnate/once@1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== + +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7": + version "7.20.3" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.3.tgz#d5625a50b6f18244425a1359a858c73d70340778" + integrity sha512-54fjTSeSHwfan8AyHWrKbfBWiEUrNTZsUwPTDSNaaP1QDQIZbeNUg3a59E9D+375MzUw/x1vx2/0F5LBz+AeYA== + dependencies: + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + +"@types/babel__generator@*": + version "7.6.6" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.6.tgz#676f89f67dc8ddaae923f70ebc5f1fa800c031a8" + integrity sha512-66BXMKb/sUWbMdBNdMvajU7i/44RkrA3z/Yt1c7R5xejt8qh84iU54yUWCtm0QwGJlDcf/gg4zd/x4mpLAlb/w== + dependencies: + "@babel/types" "^7.0.0" + +"@types/babel__template@*": + version "7.4.3" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.3.tgz#db9ac539a2fe05cfe9e168b24f360701bde41f5f" + integrity sha512-ciwyCLeuRfxboZ4isgdNZi/tkt06m8Tw6uGbBSBgWrnnZGNXiEyM27xc/PjXGQLqlZ6ylbgHMnm7ccF9tCkOeQ== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": + version "7.20.3" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.3.tgz#a971aa47441b28ef17884ff945d0551265a2d058" + integrity sha512-Lsh766rGEFbaxMIDH7Qa+Yha8cMVI3qAK6CHt3OR0YfxOIn5Z54iHiyDRycHrBqeIiqGa20Kpsv1cavfBKkRSw== + dependencies: + "@babel/types" "^7.20.7" + +"@types/graceful-fs@^4.1.2": + version "4.1.8" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.8.tgz#417e461e4dc79d957dc3107f45fe4973b09c2915" + integrity sha512-NhRH7YzWq8WiNKVavKPBmtLYZHxNY19Hh+az28O/phfp68CF45pMFud+ZzJ8ewnxnC5smIdF3dqFeiSUQ5I+pw== + dependencies: + "@types/node" "*" + +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#fdfdd69fa16d530047d9963635bd77c71a08c068" + integrity sha512-zONci81DZYCZjiLe0r6equvZut0b+dBRPBN5kBDjsONnutYNtJMoWQ9uR2RkL1gLG9NMTzvf+29e5RFfPbeKhQ== + +"@types/istanbul-lib-report@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.2.tgz#394798d5f727402eb5ec99eb9618ffcd2b7645a1" + integrity sha512-8toY6FgdltSdONav1XtUHl4LN1yTmLza+EuDazb/fEmRNCwjyqNVIQWs2IfC74IqjHkREs/nQ2FWq5kZU9IC0w== + dependencies: + "@types/istanbul-lib-coverage" "*" + +"@types/istanbul-reports@^1.1.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz#e875cc689e47bce549ec81f3df5e6f6f11cfaeb2" + integrity sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw== + dependencies: + "@types/istanbul-lib-coverage" "*" + "@types/istanbul-lib-report" "*" + +"@types/istanbul-reports@^3.0.0": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.3.tgz#0313e2608e6d6955d195f55361ddeebd4b74c6e7" + integrity sha512-1nESsePMBlf0RPRffLZi5ujYh7IH1BWL4y9pr+Bn3cJBdxz+RTP8bUFljLz9HvzhhOSWKdyBZ4DIivdL6rvgZg== + dependencies: + "@types/istanbul-lib-report" "*" + +"@types/jest@26.0.8": + version "26.0.8" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.8.tgz#f5c5559cf25911ce227f7ce30f1f160f24966369" + integrity sha512-eo3VX9jGASSuv680D4VQ89UmuLZneNxv2MCZjfwlInav05zXVJTzfc//lavdV0GPwSxsXJTy2jALscB7Acqg0g== + dependencies: + jest-diff "^25.2.1" + pretty-format "^25.2.1" + +"@types/json-schema@^7.0.6": + version "7.0.14" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.14.tgz#74a97a5573980802f32c8e47b663530ab3b6b7d1" + integrity sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw== + +"@types/node@*": + version "20.8.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.8.8.tgz#adee050b422061ad5255fc38ff71b2bb96ea2a0e" + integrity sha512-YRsdVxq6OaLfmR9Hy816IMp33xOBjfyOgUd77ehqg96CFywxAPbDbXvAsuN2KVg2HOT8Eh6uAfU+l4WffwPVrQ== + dependencies: + undici-types "~5.25.1" + +"@types/normalize-package-data@^2.4.0": + version "2.4.3" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.3.tgz#291c243e4b94dbfbc0c0ee26b7666f1d5c030e2c" + integrity sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg== + +"@types/prettier@^2.0.0": + version "2.7.3" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.3.tgz#3e51a17e291d01d17d3fc61422015a933af7a08f" + integrity sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA== + +"@types/stack-utils@^2.0.0": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.2.tgz#01284dde9ef4e6d8cef6422798d9a3ad18a66f8b" + integrity sha512-g7CK9nHdwjK2n0ymT2CW698FuWJRIx+RP6embAzZ2Qi8/ilIrA1Imt2LVSeHUzKvpoi7BhmmQcXz95eS0f2JXw== + +"@types/yargs-parser@*": + version "21.0.2" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.2.tgz#7bd04c5da378496ef1695a1008bf8f71847a8b8b" + integrity sha512-5qcvofLPbfjmBfKaLfj/+f+Sbd6pN4zl7w7VSVI5uz7m9QZTuB2aZAa2uo1wHFBNN2x6g/SoTkXmd8mQnQF2Cw== + +"@types/yargs@^15.0.0": + version "15.0.17" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.17.tgz#bea870ba551b43831bfaa75de2e4a3849c39322b" + integrity sha512-cj53I8GUcWJIgWVTSVe2L7NJAB5XWGdsoMosVvUgv1jEnMbAcsbaCzt1coUcyi8Sda5PgTWAooG8jNyDTD+CWA== + dependencies: + "@types/yargs-parser" "*" + +"@types/yauzl@^2.9.1": + version "2.10.2" + resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.10.2.tgz#dab926ef9b41a898bc943f11bca6b0bad6d4b729" + integrity sha512-Km7XAtUIduROw7QPgvcft0lIupeG8a8rdKL8RiSyKvlE7dYY31fEn41HVuQsRFDuROA8tA4K2UVL+WdfFmErBA== + dependencies: + "@types/node" "*" + +"@web3api/assemblyscript-json@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@web3api/assemblyscript-json/-/assemblyscript-json-1.2.0.tgz#f01f11f12a66cd1a319d43f12e476307d1ad3da8" + integrity sha512-x+wchJpH1giJzXj3dYs8vh2SKMXepeqVXiaFV/YCtXg4X/KaUnxi0kp5JugbEAyEJurEScH1YuV6IvGhGui/fw== + +abab@^2.0.3, abab@^2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" + integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== + +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.2.4: + version "8.10.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" + integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== + +aes-js@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" + integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== + +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" + +ajv@8.12.0: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +ansi-escapes@^4.2.1: + version "4.3.2" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== + dependencies: + type-fest "^0.21.3" + +ansi-regex@^5.0.0, ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + +anymatch@^3.0.3, anymatch@~3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== + +arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== + +as-bigint@0.5.3, as-bigint@^0.5.1: + version "0.5.3" + resolved "https://registry.yarnpkg.com/as-bigint/-/as-bigint-0.5.3.tgz#a0647d0b7ce835077aca33115e71eb26a83df8be" + integrity sha512-tg9iTO/vPeovOM5CSk1WxYcsfBd/cd3twhBW5PrpcGUfiSEXlPB69eOxFKvSbZnpuDxBAyQ4YBgEkfnYL89Czw== + +as-bignumber@0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/as-bignumber/-/as-bignumber-0.2.1.tgz#6479caca7f24f784b10b3d2633cde457ef9cbc22" + integrity sha512-udKOlFYKSZyuHK7upTczRR8lcXkyPS0DR6NOtP+c3bhM4B2B0VqMBTzqa0hdYG4Zss94zA6UmqpjreEbzNUo4g== + dependencies: + as-bigint "^0.5.1" + +as-container@0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/as-container/-/as-container-0.6.1.tgz#94806a91e96b68622c55f301fc04e6339a1228c2" + integrity sha512-cgQ7P/dQAGeU2lLhPpinThYfFcUw3HzV8b00CoqV+l5Tsgpl7xhXdoc/2srCyK0um1BVAQwlrEpNTtthzkMF+g== + +assemblyscript@0.19.23: + version "0.19.23" + resolved "https://registry.yarnpkg.com/assemblyscript/-/assemblyscript-0.19.23.tgz#16ece69f7f302161e2e736a0f6a474e6db72134c" + integrity sha512-fwOQNZVTMga5KRsfY80g7cpOl4PsFQczMwHzdtgoqLXaYhkhavufKb0sB0l3T1DUxpAufA0KNhlbpuuhZUwxMA== + dependencies: + binaryen "102.0.0-nightly.20211028" + long "^5.2.0" + source-map-support "^0.5.20" + +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== + +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== + +at-least-node@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" + integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== + +atob@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== + +axios@0.21.2: + version "0.21.2" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.2.tgz#21297d5084b2aeeb422f5d38e7be4fbb82239017" + integrity sha512-87otirqUw3e8CzHTMO+/9kh/FSgXt/eVDvipijwDtEuwbkySWZ9SBm6VEubmJ/kLKEoLQV/POhxXFb66bfekfg== + dependencies: + follow-redirects "^1.14.0" + +axios@0.21.4: + version "0.21.4" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" + integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== + dependencies: + follow-redirects "^1.14.0" + +babel-jest@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" + integrity sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA== + dependencies: + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/babel__core" "^7.1.7" + babel-plugin-istanbul "^6.0.0" + babel-preset-jest "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + slash "^3.0.0" + +babel-plugin-istanbul@^6.0.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@istanbuljs/load-nyc-config" "^1.0.0" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-instrument "^5.0.4" + test-exclude "^6.0.0" + +babel-plugin-jest-hoist@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz#8185bd030348d254c6d7dd974355e6a28b21e62d" + integrity sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw== + dependencies: + "@babel/template" "^7.3.3" + "@babel/types" "^7.3.3" + "@types/babel__core" "^7.0.0" + "@types/babel__traverse" "^7.0.6" + +babel-preset-current-node-syntax@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== + dependencies: + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-bigint" "^7.8.3" + "@babel/plugin-syntax-class-properties" "^7.8.3" + "@babel/plugin-syntax-import-meta" "^7.8.3" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.8.3" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-top-level-await" "^7.8.3" + +babel-preset-jest@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz#747872b1171df032252426586881d62d31798fee" + integrity sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ== + dependencies: + babel-plugin-jest-hoist "^26.6.2" + babel-preset-current-node-syntax "^1.0.0" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +base-x@^3.0.8: + version "3.0.9" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320" + integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ== + dependencies: + safe-buffer "^5.0.1" + +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +base64-to-uint8array@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/base64-to-uint8array/-/base64-to-uint8array-1.0.0.tgz#725f9e9886331b43785cadd807e76803d5494e05" + integrity sha512-drjWQcees55+XQSVHYxiUF05Fj6ko3XJUoxykZEXbm0BMmNz2ieWiZGJ+6TFWnjN2saucG6pI13LS92O4kaiAg== + +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +binaryen@102.0.0-nightly.20211028: + version "102.0.0-nightly.20211028" + resolved "https://registry.yarnpkg.com/binaryen/-/binaryen-102.0.0-nightly.20211028.tgz#8f1efb0920afd34509e342e37f84313ec936afb2" + integrity sha512-GCJBVB5exbxzzvyt8MGDv/MeUjs6gkXDvf4xOIItRBptYl0Tz5sm1o/uG95YK0L0VeG5ajDu3hRtkBP2kzqC5w== + +bn.js@^4.11.9: + version "4.12.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" + integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== + +bn.js@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + +braces@^3.0.2, braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + +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== + +browserslist@^4.21.9: + version "4.22.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619" + integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ== + dependencies: + caniuse-lite "^1.0.30001541" + electron-to-chromium "^1.4.535" + node-releases "^2.0.13" + update-browserslist-db "^1.0.13" + +bs-logger@0.x: + version "0.2.6" + resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== + dependencies: + fast-json-stable-stringify "2.x" + +bser@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== + dependencies: + node-int64 "^0.4.0" + +buffer-crc32@~0.2.3: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== + +buffer-from@1.x, buffer-from@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== + +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== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + +call-me-maybe@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa" + integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ== + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase@^5.0.0, camelcase@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +camelcase@^6.0.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== + +caniuse-lite@^1.0.30001541: + version "1.0.30001554" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001554.tgz#ba80d88dff9acbc0cd4b7535fc30e0191c5e2e2a" + integrity sha512-A2E3U//MBwbJVzebddm1YfNp7Nud5Ip+IPn4BozBmn4KqVX7AvluoIDFWjsv5OkGnKUXQVmMSoMKLa3ScCblcQ== + +capture-exit@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" + integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== + dependencies: + rsvp "^4.8.4" + +chalk@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" + integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chalk@^4.0.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +char-regex@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== + +chokidar@3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" + integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.5.0" + optionalDependencies: + fsevents "~2.3.1" + +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + +cids@^0.7.1: + version "0.7.5" + resolved "https://registry.yarnpkg.com/cids/-/cids-0.7.5.tgz#60a08138a99bfb69b6be4ceb63bfef7a396b28b2" + integrity sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA== + dependencies: + buffer "^5.5.0" + class-is "^1.1.0" + multibase "~0.6.0" + multicodec "^1.0.0" + multihashes "~0.4.15" + +cjs-module-lexer@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz#4186fcca0eae175970aee870b9fe2d6cf8d5655f" + integrity sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw== + +class-is@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/class-is/-/class-is-1.1.0.tgz#9d3c0fba0440d211d843cec3dedfa48055005825" + integrity sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw== + +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + +cliui@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" + integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^6.2.0" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== + +collect-v8-coverage@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz#c0b29bcd33bcd0779a1344c2136051e6afd3d9e9" + integrity sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q== + +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +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" + +commander@9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-9.2.0.tgz#6e21014b2ed90d8b7c9647230d8b7a94a4a419a9" + integrity sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w== + +component-emitter@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +content-hash@2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/content-hash/-/content-hash-2.5.2.tgz#bbc2655e7c21f14fd3bfc7b7d4bfe6e454c9e211" + integrity sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw== + dependencies: + cids "^0.7.1" + multicodec "^0.5.5" + multihashes "^0.4.15" + +convert-source-map@^1.4.0, convert-source-map@^1.6.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== + +convert-source-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== + +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== + +copyfiles@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/copyfiles/-/copyfiles-2.4.1.tgz#d2dcff60aaad1015f09d0b66e7f0f1c5cd3c5da5" + integrity sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg== + dependencies: + glob "^7.0.5" + minimatch "^3.0.3" + mkdirp "^1.0.4" + noms "0.0.0" + through2 "^2.0.1" + untildify "^4.0.0" + yargs "^16.1.0" + +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + +cross-spawn@^6.0.0: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +cross-spawn@^7.0.0: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +cssom@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" + integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== + +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@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" + integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== + dependencies: + abab "^2.0.3" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.0.0" + +debug@4, debug@^4.1.0, debug@^4.1.1: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + +debug@^2.2.0, debug@^2.3.3: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== + +decimal.js@^10.2.1: + version "10.4.3" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" + integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== + +decode-uri-component@^0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" + integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== + +deepmerge@^4.2.2: + version "4.3.1" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" + integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== + +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + +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== + +detect-newline@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== + +diff-sequences@^25.2.6: + version "25.2.6" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-25.2.6.tgz#5f467c00edd35352b7bca46d7927d60e687a76dd" + integrity sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg== + +diff-sequences@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" + integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== + +docker-compose@0.23.17: + version "0.23.17" + resolved "https://registry.yarnpkg.com/docker-compose/-/docker-compose-0.23.17.tgz#8816bef82562d9417dc8c790aa4871350f93a2ba" + integrity sha512-YJV18YoYIcxOdJKeFcCFihE6F4M2NExWM/d4S1ITcS9samHKnNUihz9kjggr0dNtsrbpFNc7/Yzd19DWs+m1xg== + dependencies: + yaml "^1.10.2" + +domexception@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" + integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== + dependencies: + webidl-conversions "^5.0.0" + +electron-to-chromium@^1.4.535: + version "1.4.566" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.566.tgz#5c5ba1d2dc895f4887043f0cc7e61798c7e5919a" + integrity sha512-mv+fAy27uOmTVlUULy15U3DVJ+jg+8iyKH1bpwboCRhtDC69GKf1PPTZvEIhCyDr81RFqfxZJYrbgp933a1vtg== + +elliptic@6.5.4: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +emittery@^0.7.1: + version "0.7.2" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.2.tgz#25595908e13af0f5674ab419396e2fb394cdfa82" + integrity sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +end-of-stream@^1.1.0: + version "1.4.4" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + dependencies: + once "^1.4.0" + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +escape-string-regexp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== + +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.0, 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== + +ethers@5.7.0: + version "5.7.0" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.0.tgz#0055da174b9e076b242b8282638bc94e04b39835" + integrity sha512-5Xhzp2ZQRi0Em+0OkOcRHxPzCfoBfgtOQA+RUylSkuHbhTEaQklnYi2hsWbRgs3ztJsXVXd9VKBcO1ScWL8YfA== + dependencies: + "@ethersproject/abi" "5.7.0" + "@ethersproject/abstract-provider" "5.7.0" + "@ethersproject/abstract-signer" "5.7.0" + "@ethersproject/address" "5.7.0" + "@ethersproject/base64" "5.7.0" + "@ethersproject/basex" "5.7.0" + "@ethersproject/bignumber" "5.7.0" + "@ethersproject/bytes" "5.7.0" + "@ethersproject/constants" "5.7.0" + "@ethersproject/contracts" "5.7.0" + "@ethersproject/hash" "5.7.0" + "@ethersproject/hdnode" "5.7.0" + "@ethersproject/json-wallets" "5.7.0" + "@ethersproject/keccak256" "5.7.0" + "@ethersproject/logger" "5.7.0" + "@ethersproject/networks" "5.7.0" + "@ethersproject/pbkdf2" "5.7.0" + "@ethersproject/properties" "5.7.0" + "@ethersproject/providers" "5.7.0" + "@ethersproject/random" "5.7.0" + "@ethersproject/rlp" "5.7.0" + "@ethersproject/sha2" "5.7.0" + "@ethersproject/signing-key" "5.7.0" + "@ethersproject/solidity" "5.7.0" + "@ethersproject/strings" "5.7.0" + "@ethersproject/transactions" "5.7.0" + "@ethersproject/units" "5.7.0" + "@ethersproject/wallet" "5.7.0" + "@ethersproject/web" "5.7.0" + "@ethersproject/wordlists" "5.7.0" + +exec-sh@^0.3.2: + version "0.3.6" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" + integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== + +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +execa@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" + integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== + dependencies: + cross-spawn "^7.0.0" + get-stream "^5.0.0" + human-signals "^1.1.1" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.0" + onetime "^5.1.0" + signal-exit "^3.0.2" + strip-final-newline "^2.0.0" + +exit@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +expect@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/expect/-/expect-26.6.2.tgz#c6b996bf26bf3fe18b67b2d0f51fc981ba934417" + integrity sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA== + dependencies: + "@jest/types" "^26.6.2" + ansi-styles "^4.0.0" + jest-get-type "^26.3.0" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +extract-zip@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" + integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== + dependencies: + debug "^4.1.1" + get-stream "^5.1.0" + yauzl "^2.10.0" + optionalDependencies: + "@types/yauzl" "^2.9.1" + +fast-deep-equal@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-memoize@^2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/fast-memoize/-/fast-memoize-2.5.2.tgz#79e3bb6a4ec867ea40ba0e7146816f6cdce9b57e" + integrity sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw== + +fb-watchman@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" + integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== + dependencies: + bser "2.1.1" + +fd-slicer@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" + integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== + dependencies: + pend "~1.2.0" + +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +find-up@^4.0.0, find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + +follow-redirects@^1.14.0: + version "1.15.3" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a" + integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q== + +for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== + +form-data@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +form-data@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== + dependencies: + map-cache "^0.2.2" + +fs-extra@9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz#910da0062437ba4c39fedd863f1675ccfefcb9fc" + integrity sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ== + dependencies: + at-least-node "^1.0.0" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^1.0.0" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== + +fsevents@^2.1.2, fsevents@~2.3.1: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +gensync@^1.0.0-beta.2: + version "1.0.0-beta.2" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== + +get-caller-file@^2.0.1, get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-package-type@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== + +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + +get-stream@^5.0.0, get-stream@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== + dependencies: + pump "^3.0.0" + +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== + +glob-parent@~5.1.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.1.1" + once "^1.3.0" + path-is-absolute "^1.0.0" + +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== + +graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +graphql-json-transform@^1.1.0-alpha.0: + version "1.1.0-alpha.0" + resolved "https://registry.yarnpkg.com/graphql-json-transform/-/graphql-json-transform-1.1.0-alpha.0.tgz#fb0c88d24840067e6c55ac64bbc8d4e5de245d2d" + integrity sha512-I6lR/lYEezSz4iru0f7a/wR8Rzi3pCafk7S0bX2b/WQOtK0vKabxLShGBXIslsi0arMehIjvOPHJl7MpOUqj0w== + +graphql@15.5.0: + version "15.5.0" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.0.tgz#39d19494dbe69d1ea719915b578bf920344a69d5" + integrity sha512-OmaM7y0kaK31NKG31q4YbD2beNYa6jBBKtMFT6gLYJljHLJr42IqJ8KX08u3Li/0ifzTU5HjmoOOrwa5BRLeDA== + +growly@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" + integrity sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hasown@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.0.tgz#f4c513d454a57b7c7e1650778de226b11700546c" + integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA== + dependencies: + function-bind "^1.1.2" + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hosted-git-info@^2.1.4: + version "2.8.9" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== + +html-encoding-sniffer@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" + integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== + dependencies: + whatwg-encoding "^1.0.5" + +html-escaper@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== + +http-proxy-agent@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== + dependencies: + "@tootallnate/once" "1" + 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" + +human-signals@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" + integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== + +iconv-lite@0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ieee754@^1.1.13: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + +import-local@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== + dependencies: + pkg-dir "^4.2.0" + resolve-cwd "^3.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +intl-messageformat-parser@6.4.2: + version "6.4.2" + resolved "https://registry.yarnpkg.com/intl-messageformat-parser/-/intl-messageformat-parser-6.4.2.tgz#e2d28c3156c27961ead9d613ca55b6a155078d7d" + integrity sha512-IVNGy24lNEYr/KPWId5tF3KXRHFFbMgzIMI4kUonNa/ide2ywUYyBuOUro1IBGZJqjA2ncBVUyXdYKlMfzqpAA== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +intl-messageformat@9.5.2: + version "9.5.2" + resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-9.5.2.tgz#e72d32152c760b7411e413780e462909987c005a" + integrity sha512-sBGXcSQLyBuBA/kzAYhTpzhzkOGfSwGIau2W6FuwLZk0JE+VF3C+y0077FhVDOcRSi60iSfWzT8QC3Z7//dFxw== + dependencies: + fast-memoize "^2.5.2" + intl-messageformat-parser "6.4.2" + tslib "^2.1.0" + +invert-kv@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-3.0.1.tgz#a93c7a3d4386a1dc8325b97da9bb1620c0282523" + integrity sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw== + +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== + dependencies: + kind-of "^6.0.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== + dependencies: + ci-info "^2.0.0" + +is-core-module@^2.13.0: + version "2.13.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" + integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== + dependencies: + hasown "^2.0.0" + +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== + dependencies: + kind-of "^6.0.0" + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + +is-docker@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-generator-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== + +is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== + dependencies: + kind-of "^3.0.2" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-plain-object@^2.0.3, is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== + dependencies: + isobject "^3.0.1" + +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== + +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== + +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== + +is-typedarray@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== + +is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== + +is-wsl@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== + dependencies: + is-docker "^2.0.0" + +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== + +isarray@1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== + +istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" + integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== + +istanbul-lib-instrument@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" + integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== + dependencies: + "@babel/core" "^7.7.5" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.0.0" + semver "^6.3.0" + +istanbul-lib-instrument@^5.0.4: + version "5.2.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" + integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== + dependencies: + "@babel/core" "^7.12.3" + "@babel/parser" "^7.14.7" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.2.0" + semver "^6.3.0" + +istanbul-lib-report@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d" + integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw== + dependencies: + istanbul-lib-coverage "^3.0.0" + make-dir "^4.0.0" + supports-color "^7.1.0" + +istanbul-lib-source-maps@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== + dependencies: + debug "^4.1.1" + istanbul-lib-coverage "^3.0.0" + source-map "^0.6.1" + +istanbul-reports@^3.0.2: + version "3.1.6" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.6.tgz#2544bcab4768154281a2f0870471902704ccaa1a" + integrity sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg== + dependencies: + html-escaper "^2.0.0" + istanbul-lib-report "^3.0.0" + +jest-changed-files@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.6.2.tgz#f6198479e1cc66f22f9ae1e22acaa0b429c042d0" + integrity sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ== + dependencies: + "@jest/types" "^26.6.2" + execa "^4.0.0" + throat "^5.0.0" + +jest-cli@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.6.3.tgz#43117cfef24bc4cd691a174a8796a532e135e92a" + integrity sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg== + dependencies: + "@jest/core" "^26.6.3" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + import-local "^3.0.2" + is-ci "^2.0.0" + jest-config "^26.6.3" + jest-util "^26.6.2" + jest-validate "^26.6.2" + prompts "^2.0.1" + yargs "^15.4.1" + +jest-config@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.6.3.tgz#64f41444eef9eb03dc51d5c53b75c8c71f645349" + integrity sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg== + dependencies: + "@babel/core" "^7.1.0" + "@jest/test-sequencer" "^26.6.3" + "@jest/types" "^26.6.2" + babel-jest "^26.6.3" + chalk "^4.0.0" + deepmerge "^4.2.2" + glob "^7.1.1" + graceful-fs "^4.2.4" + jest-environment-jsdom "^26.6.2" + jest-environment-node "^26.6.2" + jest-get-type "^26.3.0" + jest-jasmine2 "^26.6.3" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + micromatch "^4.0.2" + pretty-format "^26.6.2" + +jest-diff@^25.2.1: + version "25.5.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-25.5.0.tgz#1dd26ed64f96667c068cef026b677dfa01afcfa9" + integrity sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A== + dependencies: + chalk "^3.0.0" + diff-sequences "^25.2.6" + jest-get-type "^25.2.6" + pretty-format "^25.5.0" + +jest-diff@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" + integrity sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA== + dependencies: + chalk "^4.0.0" + diff-sequences "^26.6.2" + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-docblock@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" + integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== + dependencies: + detect-newline "^3.0.0" + +jest-each@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.6.2.tgz#02526438a77a67401c8a6382dfe5999952c167cb" + integrity sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + jest-get-type "^26.3.0" + jest-util "^26.6.2" + pretty-format "^26.6.2" + +jest-environment-jsdom@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz#78d09fe9cf019a357009b9b7e1f101d23bd1da3e" + integrity sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + jsdom "^16.4.0" + +jest-environment-node@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.6.2.tgz#824e4c7fb4944646356f11ac75b229b0035f2b0c" + integrity sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + +jest-get-type@^25.2.6: + version "25.2.6" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-25.2.6.tgz#0b0a32fab8908b44d508be81681487dbabb8d877" + integrity sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig== + +jest-get-type@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" + integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== + +jest-haste-map@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" + integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== + dependencies: + "@jest/types" "^26.6.2" + "@types/graceful-fs" "^4.1.2" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.4" + jest-regex-util "^26.0.0" + jest-serializer "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + micromatch "^4.0.2" + sane "^4.0.3" + walker "^1.0.7" + optionalDependencies: + fsevents "^2.1.2" + +jest-jasmine2@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz#adc3cf915deacb5212c93b9f3547cd12958f2edd" + integrity sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg== + dependencies: + "@babel/traverse" "^7.1.0" + "@jest/environment" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + expect "^26.6.2" + is-generator-fn "^2.0.0" + jest-each "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + pretty-format "^26.6.2" + throat "^5.0.0" + +jest-leak-detector@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz#7717cf118b92238f2eba65054c8a0c9c653a91af" + integrity sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg== + dependencies: + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-matcher-utils@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz#8e6fd6e863c8b2d31ac6472eeb237bc595e53e7a" + integrity sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw== + dependencies: + chalk "^4.0.0" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-message-util@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.6.2.tgz#58173744ad6fc0506b5d21150b9be56ef001ca07" + integrity sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA== + dependencies: + "@babel/code-frame" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.4" + micromatch "^4.0.2" + pretty-format "^26.6.2" + slash "^3.0.0" + stack-utils "^2.0.2" + +jest-mock@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.6.2.tgz#d6cb712b041ed47fe0d9b6fc3474bc6543feb302" + integrity sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + +jest-pnp-resolver@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" + integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== + +jest-regex-util@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" + integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== + +jest-resolve-dependencies@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz#6680859ee5d22ee5dcd961fe4871f59f4c784fb6" + integrity sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg== + dependencies: + "@jest/types" "^26.6.2" + jest-regex-util "^26.0.0" + jest-snapshot "^26.6.2" + +jest-resolve@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.6.2.tgz#a3ab1517217f469b504f1b56603c5bb541fbb507" + integrity sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + jest-pnp-resolver "^1.2.2" + jest-util "^26.6.2" + read-pkg-up "^7.0.1" + resolve "^1.18.1" + slash "^3.0.0" + +jest-runner@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.6.3.tgz#2d1fed3d46e10f233fd1dbd3bfaa3fe8924be159" + integrity sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + emittery "^0.7.1" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-docblock "^26.0.0" + jest-haste-map "^26.6.2" + jest-leak-detector "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + jest-runtime "^26.6.3" + jest-util "^26.6.2" + jest-worker "^26.6.2" + source-map-support "^0.5.6" + throat "^5.0.0" + +jest-runtime@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.6.3.tgz#4f64efbcfac398331b74b4b3c82d27d401b8fa2b" + integrity sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/globals" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + cjs-module-lexer "^0.6.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.3" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + slash "^3.0.0" + strip-bom "^4.0.0" + yargs "^15.4.1" + +jest-serializer@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" + integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.4" + +jest-snapshot@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.6.2.tgz#f3b0af1acb223316850bd14e1beea9837fb39c84" + integrity sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og== + dependencies: + "@babel/types" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/babel__traverse" "^7.0.4" + "@types/prettier" "^2.0.0" + chalk "^4.0.0" + expect "^26.6.2" + graceful-fs "^4.2.4" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + jest-haste-map "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + natural-compare "^1.4.0" + pretty-format "^26.6.2" + semver "^7.3.2" + +jest-util@^26.1.0, jest-util@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" + integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + graceful-fs "^4.2.4" + is-ci "^2.0.0" + micromatch "^4.0.2" + +jest-validate@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" + integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== + dependencies: + "@jest/types" "^26.6.2" + camelcase "^6.0.0" + chalk "^4.0.0" + jest-get-type "^26.3.0" + leven "^3.1.0" + pretty-format "^26.6.2" + +jest-watcher@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.6.2.tgz#a5b683b8f9d68dbcb1d7dae32172d2cca0592975" + integrity sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ== + dependencies: + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + jest-util "^26.6.2" + string-length "^4.0.1" + +jest-worker@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" + integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^7.0.0" + +jest@26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest/-/jest-26.6.3.tgz#40e8fdbe48f00dfa1f0ce8121ca74b88ac9148ef" + integrity sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q== + dependencies: + "@jest/core" "^26.6.3" + import-local "^3.0.2" + jest-cli "^26.6.3" + +js-sha3@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@^3.13.1: + version "3.14.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + +jsdom@^16.4.0: + version "16.7.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" + integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== + dependencies: + abab "^2.0.5" + acorn "^8.2.4" + acorn-globals "^6.0.0" + cssom "^0.4.4" + cssstyle "^2.3.0" + data-urls "^2.0.0" + decimal.js "^10.2.1" + domexception "^2.0.1" + escodegen "^2.0.0" + form-data "^3.0.0" + html-encoding-sniffer "^2.0.1" + http-proxy-agent "^4.0.1" + 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 "^2.0.0" + webidl-conversions "^6.1.0" + whatwg-encoding "^1.0.5" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.5.0" + ws "^7.4.6" + xml-name-validator "^3.0.0" + +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== + +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" + integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== + +json5@2.x, json5@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== + +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonschema@1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/jsonschema/-/jsonschema-1.4.0.tgz#1afa34c4bc22190d8e42271ec17ac8b3404f87b2" + integrity sha512-/YgW6pRMr6M7C+4o8kS+B/2myEpHCrxO4PEWnqJNBFMjn7EWXqlQ4tGwL6xTHeRplwuZmcAncdvfOad1nT2yMw== + +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== + +kind-of@^6.0.0, kind-of@^6.0.2: + version "6.0.3" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== + +kleur@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== + +lcid@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-3.1.1.tgz#9030ec479a058fc36b5e8243ebaac8b6ac582fd0" + integrity sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg== + dependencies: + invert-kv "^3.0.0" + +leven@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== + +lines-and-columns@^1.1.6: + version "1.2.4" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== + +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + +lodash.merge@4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash@4.x, lodash@^4.7.0: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +long@^5.2.0: + version "5.2.3" + resolved "https://registry.yarnpkg.com/long/-/long-5.2.3.tgz#a3ba97f3877cf1d778eccbcb048525ebb77499e1" + integrity sha512-lcHwpNoggQTObv5apGNCTdJrO69eHOZMi4BNC+rTLER8iHAqGrUVeLh/irVIM7zTw2bOXA8T6uNPeujwOLg/2Q== + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +make-dir@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e" + integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw== + dependencies: + semver "^7.5.3" + +make-error@1.x: + version "1.3.6" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== + dependencies: + tmpl "1.0.5" + +map-age-cleaner@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== + dependencies: + p-defer "^1.0.0" + +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== + dependencies: + object-visit "^1.0.0" + +mem@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/mem/-/mem-5.1.1.tgz#7059b67bf9ac2c924c9f1cff7155a064394adfb3" + integrity sha512-qvwipnozMohxLXG1pOqoLiZKNkC4r4qqRucSoDwXowsNGDSULiqFTRUF05vcZWnwJSG22qTsynQhxbaMtnX9gw== + dependencies: + map-age-cleaner "^0.1.3" + mimic-fn "^2.1.0" + p-is-promise "^2.1.0" + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +micromatch@^3.1.4: + version "3.1.10" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.2" + +micromatch@^4.0.2: + version "4.0.5" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== + dependencies: + braces "^3.0.2" + picomatch "^2.3.1" + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@^2.1.12: + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimist@^1.1.1, minimist@^1.2.0: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +mixin-deep@^1.2.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + +mkdirp@1.x, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +multibase@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.7.0.tgz#1adfc1c50abe05eefeb5091ac0c2728d6b84581b" + integrity sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg== + dependencies: + base-x "^3.0.8" + buffer "^5.5.0" + +multibase@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.6.1.tgz#b76df6298536cc17b9f6a6db53ec88f85f8cc12b" + integrity sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw== + dependencies: + base-x "^3.0.8" + buffer "^5.5.0" + +multicodec@^0.5.5: + version "0.5.7" + resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.5.7.tgz#1fb3f9dd866a10a55d226e194abba2dcc1ee9ffd" + integrity sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA== + dependencies: + varint "^5.0.0" + +multicodec@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-1.0.4.tgz#46ac064657c40380c28367c90304d8ed175a714f" + integrity sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg== + dependencies: + buffer "^5.6.0" + varint "^5.0.0" + +multihashes@^0.4.15, multihashes@~0.4.15: + version "0.4.21" + resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.4.21.tgz#dc02d525579f334a7909ade8a122dabb58ccfcb5" + integrity sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw== + dependencies: + buffer "^5.5.0" + multibase "^0.7.0" + varint "^5.0.0" + +mustache@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.0.1.tgz#d99beb031701ad433338e7ea65e0489416c854a2" + integrity sha512-yL5VE97+OXn4+Er3THSmTdCFCtx5hHWzrolvH+JObZnUYwuaG7XV+Ch4fR2cIrcYI0tFHxS7iyFYl14bW8y2sA== + +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + +node-int64@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== + +node-notifier@^8.0.0: + version "8.0.2" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-8.0.2.tgz#f3167a38ef0d2c8a866a83e318c1ba0efeb702c5" + integrity sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg== + dependencies: + growly "^1.3.0" + is-wsl "^2.2.0" + semver "^7.3.2" + shellwords "^0.1.1" + uuid "^8.3.0" + which "^2.0.2" + +node-releases@^2.0.13: + version "2.0.13" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" + integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== + +noms@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/noms/-/noms-0.0.0.tgz#da8ebd9f3af9d6760919b27d9cdc8092a7332859" + integrity sha512-lNDU9VJaOPxUmXcLb+HQFeUgQQPtMI24Gt6hgfuMHRJgMRHMF/qZ4HJD3GDru4sSw9IQl2jPjAYnQrdIeLbwow== + dependencies: + inherits "^2.0.1" + readable-stream "~1.0.31" + +normalize-package-data@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== + dependencies: + path-key "^2.0.0" + +npm-run-path@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" + +nwsapi@^2.2.0: + version "2.2.7" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.7.tgz#738e0707d3128cb750dddcfe90e4610482df0f30" + integrity sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ== + +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== + dependencies: + isobject "^3.0.0" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== + dependencies: + isobject "^3.0.1" + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +onetime@^5.1.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +os-locale@5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-5.0.0.tgz#6d26c1d95b6597c5d5317bf5fba37eccec3672e0" + integrity sha512-tqZcNEDAIZKBEPnHPlVDvKrp7NzgLi7jRmhKiUoa2NUmhl13FtkAGLUVR+ZsYvApBQdBfYm43A4tXXQ4IrYLBA== + dependencies: + execa "^4.0.0" + lcid "^3.0.0" + mem "^5.0.0" + +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw== + +p-each-series@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a" + integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA== + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== + +p-is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" + integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== + +p-limit@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +parse-json@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.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== + +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== + +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== + +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +pend@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +pirates@^4.0.1: + version "4.0.6" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" + integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== + +pkg-dir@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + +polywrap@0.12.1: version "0.12.1" - resolved "https://registry.yarnpkg.com/@polywrap/templates/-/templates-0.12.1.tgz#df07423b8d6e7f5e37741cf03c24153c9690011a" - integrity sha512-+KSlXssRWUc8G/EUtn8kk7e6mYphFfJsYNahVABdnZ8JtQFE6D1Kaz1xFas50Wg1xvWx6eQrbvxCa/lN+6QRDw== + resolved "https://registry.yarnpkg.com/polywrap/-/polywrap-0.12.1.tgz#bb56ed25934e845b685455803edf7a9c41b7e6fb" + integrity sha512-jZ/qd4mW0zXF57wZIJ3Whow8AyyUp/COdHZmDR/yKdw8q8fJQJm8/Nq4yZ8A09amYHMYlDQhJV2hSvsuJwhW8w== + dependencies: + "@apidevtools/json-schema-ref-parser" "9.0.9" + "@ethersproject/providers" "5.6.8" + "@ethersproject/wallet" "5.6.2" + "@formatjs/intl" "1.8.2" + "@polywrap/asyncify-js" "~0.12.0" + "@polywrap/client-config-builder-js" "~0.12.0" + "@polywrap/client-js" "~0.12.0" + "@polywrap/core-js" "~0.12.0" + "@polywrap/ethereum-wallet-js" "~0.1.0" + "@polywrap/logging-js" "0.12.1" + "@polywrap/os-js" "0.12.1" + "@polywrap/polywrap-manifest-types-js" "0.12.1" + "@polywrap/result" "~0.12.0" + "@polywrap/schema-bind" "0.12.1" + "@polywrap/schema-compose" "0.12.1" + "@polywrap/schema-parse" "0.12.1" + "@polywrap/sys-config-bundle-js" "~0.12.0" + "@polywrap/uri-resolver-extensions-js" "~0.12.0" + "@polywrap/uri-resolvers-js" "~0.12.0" + "@polywrap/wasm-js" "~0.12.0" + "@polywrap/web3-config-bundle-js" "~0.12.0" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + axios "0.21.2" + chalk "4.1.0" + chokidar "3.5.1" + commander "9.2.0" + content-hash "2.5.2" + copyfiles "2.4.1" + docker-compose "0.23.17" + extract-zip "2.0.1" + form-data "4.0.0" + fs-extra "9.0.1" + json-schema "0.4.0" + jsonschema "1.4.0" + mustache "4.0.1" + os-locale "5.0.0" + regex-parser "2.2.11" + rimraf "3.0.2" + toml "3.0.0" + typescript "4.9.5" + yaml "2.2.2" + yesno "0.4.0" + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== + +pretty-format@^25.2.1, pretty-format@^25.5.0: + version "25.5.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.5.0.tgz#7873c1d774f682c34b8d48b6743a2bf2ac55791a" + integrity sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ== + dependencies: + "@jest/types" "^25.5.0" + ansi-regex "^5.0.0" + ansi-styles "^4.0.0" + react-is "^16.12.0" + +pretty-format@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" + integrity sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg== + dependencies: + "@jest/types" "^26.6.2" + ansi-regex "^5.0.0" + ansi-styles "^4.0.0" + react-is "^17.0.1" + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +prompts@^2.0.1: + version "2.4.2" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== + dependencies: + kleur "^3.0.3" + sisteransi "^1.0.5" + +psl@^1.1.33: + version "1.9.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" + integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +punycode@^2.1.0, punycode@^2.1.1: + version "2.3.0" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" + integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== + +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== + +react-is@^16.12.0: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react-is@^17.0.1: + version "17.0.2" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" + integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== + +read-pkg-up@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" + integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== + dependencies: + find-up "^4.1.0" + read-pkg "^5.2.0" + type-fest "^0.8.1" + +read-pkg@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== + dependencies: + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" + +readable-stream@~1.0.31: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + integrity sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@~2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + 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.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" + integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== + dependencies: + picomatch "^2.2.1" + +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + +regex-parser@2.2.11: + version "2.2.11" + resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58" + integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q== + +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== + +repeat-element@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" + integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== + +repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + +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== + +resolve-cwd@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== + dependencies: + resolve-from "^5.0.0" + +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== + +resolve@^1.10.0, resolve@^1.18.1: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== + +rimraf@3.0.2, rimraf@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +rsvp@^4.8.4: + version "4.8.5" + resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" + integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== + +safe-buffer@^5.0.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== + dependencies: + ret "~0.1.10" + +"safer-buffer@>= 2.1.2 < 3": + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sane@^4.0.3: + version "4.1.0" + resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" + integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== + dependencies: + "@cnakazawa/watch" "^1.0.3" + anymatch "^2.0.0" + capture-exit "^2.0.0" + exec-sh "^0.3.2" + execa "^1.0.0" + fb-watchman "^2.0.0" + micromatch "^3.1.4" + minimist "^1.1.1" + walker "~1.0.5" + +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" + +scrypt-js@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + +"semver@2 || 3 || 4 || 5", semver@^5.5.0: + version "5.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== + +semver@7.5.3: + version "7.5.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.3.tgz#161ce8c2c6b4b3bdca6caadc9fa3317a4c4fe88e" + integrity sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ== + dependencies: + lru-cache "^6.0.0" + +semver@7.x, semver@^7.3.2, semver@^7.5.3, semver@~7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + +semver@^6.3.0, semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + +set-blocking@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== + +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== + dependencies: + shebang-regex "^1.0.0" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +shellwords@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" + integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== + +signal-exit@^3.0.0, signal-exit@^3.0.2: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== + +sisteransi@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^3.1.0" + +source-map-resolve@^0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + +source-map-support@^0.5.20, source-map-support@^0.5.6: + version "0.5.21" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-url@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + +source-map@^0.5.6: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== + +source-map@^0.6.0, source-map@^0.6.1, 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== + +source-map@^0.7.3: + version "0.7.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" + integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== + +spdx-correct@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" + integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.16" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz#a14f64e0954f6e25cc6587bd4f392522db0d998f" + integrity sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw== + +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== + dependencies: + extend-shallow "^3.0.0" + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== + +stack-utils@^2.0.2: + version "2.0.6" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" + integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== + dependencies: + escape-string-regexp "^2.0.0" + +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + +string-length@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== + dependencies: + char-regex "^1.0.2" + strip-ansi "^6.0.0" + +string-width@^4.1.0, string-width@^4.2.0: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-bom@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.0.0, supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-hyperlinks@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz#3943544347c1ff90b15effb03fc14ae45ec10624" + integrity sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA== + dependencies: + has-flag "^4.0.0" + supports-color "^7.0.0" + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +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== + +terminal-link@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" + integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== + dependencies: + ansi-escapes "^4.2.1" + supports-hyperlinks "^2.0.0" + +test-exclude@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== + dependencies: + "@istanbuljs/schema" "^0.1.2" + glob "^7.1.4" + minimatch "^3.0.4" + +throat@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" + integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== + +through2@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +tmpl@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" + integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== + +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== + +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + +toml@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/toml/-/toml-3.0.0.tgz#342160f1af1904ec9d204d03a5d61222d762c5ee" + integrity sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== + +tough-cookie@^4.0.0: + version "4.1.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" + integrity sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.2.0" + url-parse "^1.5.3" + +tr46@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" + integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== + dependencies: + punycode "^2.1.1" + +ts-jest@26.5.4: + version "26.5.4" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.5.4.tgz#207f4c114812a9c6d5746dd4d1cdf899eafc9686" + integrity sha512-I5Qsddo+VTm94SukBJ4cPimOoFZsYTeElR2xy6H2TOVs+NsvgYglW8KuQgKoApOKuaU/Ix/vrF9ebFZlb5D2Pg== + dependencies: + bs-logger "0.x" + buffer-from "1.x" + fast-json-stable-stringify "2.x" + jest-util "^26.1.0" + json5 "2.x" + lodash "4.x" + make-error "1.x" + mkdirp "1.x" + semver "7.x" + yargs-parser "20.x" + +tslib@^2.1.0: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + +type-detect@4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + +type-fest@^0.21.3: + version "0.21.3" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== + +type-fest@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== + dependencies: + is-typedarray "^1.0.0" + +typescript@4.9.5: + version "4.9.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== + +undici-types@~5.25.1: + version "5.25.3" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.25.3.tgz#e044115914c85f0bcbb229f346ab739f064998c3" + integrity sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA== + +union-value@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + +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== + +universalify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" + integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== + +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== + +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +untildify@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" + integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== + +update-browserslist-db@^1.0.13: + version "1.0.13" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" + integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== + dependencies: + escalade "^3.1.1" + picocolors "^1.0.0" + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== + +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" + +use@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== + +util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +uuid@^8.3.0: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +v8-to-istanbul@^7.0.0: + version "7.1.2" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz#30898d1a7fa0c84d225a2c1434fb958f290883c1" + integrity sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^1.6.0" + source-map "^0.7.3" + +validate-npm-package-license@^3.0.1: + version "3.0.4" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +varint@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/varint/-/varint-5.0.2.tgz#5b47f8a947eb668b848e034dcfa87d0ff8a7f7a4" + integrity sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow== + +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@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" + integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== + dependencies: + xml-name-validator "^3.0.0" + +walker@^1.0.7, walker@~1.0.5: + version "1.0.8" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== + dependencies: + makeerror "1.0.12" + +webidl-conversions@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" + integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== + +webidl-conversions@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" + integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== + +whatwg-encoding@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" + integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== + dependencies: + iconv-lite "0.4.24" + +whatwg-mimetype@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" + integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== + +whatwg-url@^8.0.0, whatwg-url@^8.5.0: + version "8.7.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" + integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== + dependencies: + lodash "^4.7.0" + tr46 "^2.1.0" + webidl-conversions "^6.1.0" + +which-module@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" + integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== + +which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" + +which@^2.0.1, which@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +write-file-atomic@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + dependencies: + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + typedarray-to-buffer "^3.1.5" + +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + +ws@^7.4.6: + version "7.5.9" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" + integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== + +xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== + +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== + +xtend@~4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +y18n@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" + integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== + +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yaml@2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.2.2.tgz#ec551ef37326e6d42872dad1970300f8eb83a073" + integrity sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA== + +yaml@^1.10.2: + version "1.10.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + +yargs-parser@20.x, yargs-parser@^20.2.2: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs-parser@^18.1.2: + version "18.1.3" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs@^15.4.1: + version "15.4.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" + integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== + dependencies: + cliui "^6.0.0" + decamelize "^1.2.0" + find-up "^4.1.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^4.2.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^18.1.2" + +yargs@^16.1.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yauzl@^2.10.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" + integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== + dependencies: + buffer-crc32 "~0.2.3" + fd-slicer "~1.1.0" + +yesno@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/yesno/-/yesno-0.4.0.tgz#5d674f14d339f0bd4b0edc47f899612c74fcd895" + integrity sha512-tdBxmHvbXPBKYIg81bMCB7bVeDmHkRzk5rVJyYYXurwKkHq/MCd8rz4HSJUP7hW0H2NlXiq8IFiWvYKEHhlotA== diff --git a/snippets/create-wraps-tutorial/golang/yarn.lock b/snippets/create-wraps-tutorial/golang/yarn.lock index e864ad01..cb50736a 100644 --- a/snippets/create-wraps-tutorial/golang/yarn.lock +++ b/snippets/create-wraps-tutorial/golang/yarn.lock @@ -2,7 +2,5168 @@ # yarn lockfile v1 -"@polywrap/templates@0.12.1": +"@ampproject/remapping@^2.2.0": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" + integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== + dependencies: + "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/trace-mapping" "^0.3.9" + +"@apidevtools/json-schema-ref-parser@9.0.9": + version "9.0.9" + resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-9.0.9.tgz#d720f9256e3609621280584f2b47ae165359268b" + integrity sha512-GBD2Le9w2+lVFoc4vswGI/TjkNIZSVp7+9xPf+X3uidBfWnAeUWmquteSyt0+VCrhNMWj/FTABISQrD3Z/YA+w== + dependencies: + "@jsdevtools/ono" "^7.1.3" + "@types/json-schema" "^7.0.6" + call-me-maybe "^1.0.1" + js-yaml "^4.1.0" + +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.22.13": + version "7.22.13" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e" + integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w== + dependencies: + "@babel/highlight" "^7.22.13" + chalk "^2.4.2" + +"@babel/compat-data@^7.22.9": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.2.tgz#6a12ced93455827037bfb5ed8492820d60fc32cc" + integrity sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ== + +"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.5": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.2.tgz#ed10df0d580fff67c5f3ee70fd22e2e4c90a9f94" + integrity sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.22.13" + "@babel/generator" "^7.23.0" + "@babel/helper-compilation-targets" "^7.22.15" + "@babel/helper-module-transforms" "^7.23.0" + "@babel/helpers" "^7.23.2" + "@babel/parser" "^7.23.0" + "@babel/template" "^7.22.15" + "@babel/traverse" "^7.23.2" + "@babel/types" "^7.23.0" + convert-source-map "^2.0.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.3" + semver "^6.3.1" + +"@babel/generator@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.0.tgz#df5c386e2218be505b34837acbcb874d7a983420" + integrity sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g== + dependencies: + "@babel/types" "^7.23.0" + "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" + jsesc "^2.5.1" + +"@babel/helper-compilation-targets@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz#0698fc44551a26cf29f18d4662d5bf545a6cfc52" + integrity sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw== + dependencies: + "@babel/compat-data" "^7.22.9" + "@babel/helper-validator-option" "^7.22.15" + browserslist "^4.21.9" + lru-cache "^5.1.1" + semver "^6.3.1" + +"@babel/helper-environment-visitor@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" + integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== + +"@babel/helper-function-name@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" + integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== + dependencies: + "@babel/template" "^7.22.15" + "@babel/types" "^7.23.0" + +"@babel/helper-hoist-variables@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" + integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-module-imports@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" + integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== + dependencies: + "@babel/types" "^7.22.15" + +"@babel/helper-module-transforms@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz#3ec246457f6c842c0aee62a01f60739906f7047e" + integrity sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-module-imports" "^7.22.15" + "@babel/helper-simple-access" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/helper-validator-identifier" "^7.22.20" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.8.0": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" + integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== + +"@babel/helper-simple-access@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" + integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-split-export-declaration@^7.22.6": + version "7.22.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" + integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-string-parser@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" + integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== + +"@babel/helper-validator-identifier@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" + integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== + +"@babel/helper-validator-option@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" + integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== + +"@babel/helpers@^7.23.2": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.2.tgz#2832549a6e37d484286e15ba36a5330483cac767" + integrity sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ== + dependencies: + "@babel/template" "^7.22.15" + "@babel/traverse" "^7.23.2" + "@babel/types" "^7.23.0" + +"@babel/highlight@^7.22.13": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54" + integrity sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg== + dependencies: + "@babel/helper-validator-identifier" "^7.22.20" + chalk "^2.4.2" + js-tokens "^4.0.0" + +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.15", "@babel/parser@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" + integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== + +"@babel/plugin-syntax-async-generators@^7.8.4": + version "7.8.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-bigint@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-class-properties@^7.8.3": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-syntax-import-meta@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-json-strings@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-numeric-separator@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-object-rest-spread@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-catch-binding@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-chaining@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-top-level-await@^7.8.3": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== + dependencies: + "@babel/helper-plugin-utils" "^7.14.5" + +"@babel/template@^7.22.15", "@babel/template@^7.3.3": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" + integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w== + dependencies: + "@babel/code-frame" "^7.22.13" + "@babel/parser" "^7.22.15" + "@babel/types" "^7.22.15" + +"@babel/traverse@^7.1.0", "@babel/traverse@^7.23.2": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.2.tgz#329c7a06735e144a506bdb2cad0268b7f46f4ad8" + integrity sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw== + dependencies: + "@babel/code-frame" "^7.22.13" + "@babel/generator" "^7.23.0" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/parser" "^7.23.0" + "@babel/types" "^7.23.0" + debug "^4.1.0" + globals "^11.1.0" + +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.3.3": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb" + integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg== + dependencies: + "@babel/helper-string-parser" "^7.22.5" + "@babel/helper-validator-identifier" "^7.22.20" + to-fast-properties "^2.0.0" + +"@bcoe/v8-coverage@^0.2.3": + version "0.2.3" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== + +"@cnakazawa/watch@^1.0.3": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" + integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== + dependencies: + exec-sh "^0.3.2" + minimist "^1.2.0" + +"@dorgjelli/graphql-schema-cycles@1.1.4": + version "1.1.4" + resolved "https://registry.yarnpkg.com/@dorgjelli/graphql-schema-cycles/-/graphql-schema-cycles-1.1.4.tgz#31f230c61f624f7c2ceca7e18fad8b2cb07d392f" + integrity sha512-U5ARitMQWKjOAvwn1+0Z52R9sbNe1wpbgAbj2hOfRFb/vupfPlRwZLbuUZAlotMpkoxbTbk+GRmoiNzGcJfyHw== + dependencies: + graphql "15.5.0" + graphql-json-transform "^1.1.0-alpha.0" + +"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" + integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/abstract-provider@5.7.0", "@ethersproject/abstract-provider@^5.6.1", "@ethersproject/abstract-provider@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef" + integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + +"@ethersproject/abstract-signer@5.7.0", "@ethersproject/abstract-signer@^5.6.2", "@ethersproject/abstract-signer@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2" + integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/address@5.7.0", "@ethersproject/address@^5.6.1", "@ethersproject/address@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37" + integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + +"@ethersproject/base64@5.7.0", "@ethersproject/base64@^5.6.1", "@ethersproject/base64@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c" + integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + +"@ethersproject/basex@5.7.0", "@ethersproject/basex@^5.6.1", "@ethersproject/basex@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b" + integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.6.2", "@ethersproject/bignumber@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2" + integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.6.1", "@ethersproject/bytes@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d" + integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.6.1", "@ethersproject/constants@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e" + integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + +"@ethersproject/contracts@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e" + integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + +"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.6.1", "@ethersproject/hash@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7" + integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/hdnode@5.7.0", "@ethersproject/hdnode@^5.6.2", "@ethersproject/hdnode@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf" + integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/json-wallets@5.7.0", "@ethersproject/json-wallets@^5.6.1", "@ethersproject/json-wallets@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360" + integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.6.1", "@ethersproject/keccak256@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a" + integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.6.0", "@ethersproject/logger@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892" + integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== + +"@ethersproject/networks@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.0.tgz#df72a392f1a63a57f87210515695a31a245845ad" + integrity sha512-MG6oHSQHd4ebvJrleEQQ4HhVu8Ichr0RDYEfHzsVAVjHNM+w36x9wp9r+hf1JstMXtseXDtkiVoARAG6M959AA== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/networks@^5.6.3", "@ethersproject/networks@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6" + integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/pbkdf2@5.7.0", "@ethersproject/pbkdf2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102" + integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + +"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.6.0", "@ethersproject/properties@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30" + integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/providers@5.6.8": + version "5.6.8" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.8.tgz#22e6c57be215ba5545d3a46cf759d265bb4e879d" + integrity sha512-Wf+CseT/iOJjrGtAOf3ck9zS7AgPmr2fZ3N97r4+YXN3mBePTG2/bJ8DApl9mVwYL+RpYbNxMEkEp4mPGdwG/w== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/base64" "^5.6.1" + "@ethersproject/basex" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.3" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/web" "^5.6.1" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/providers@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.0.tgz#a885cfc7650a64385e7b03ac86fe9c2d4a9c2c63" + integrity sha512-+TTrrINMzZ0aXtlwO/95uhAggKm4USLm1PbeCBR/3XZ7+Oey+3pMyddzZEyRhizHpy1HXV0FRWRMI1O3EGYibA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/random@5.7.0", "@ethersproject/random@^5.6.1", "@ethersproject/random@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c" + integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.6.1", "@ethersproject/rlp@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" + integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/sha2@5.7.0", "@ethersproject/sha2@^5.6.1", "@ethersproject/sha2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb" + integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.7.0", "@ethersproject/signing-key@^5.6.2", "@ethersproject/signing-key@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3" + integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/solidity@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8" + integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.6.1", "@ethersproject/strings@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2" + integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.6.2", "@ethersproject/transactions@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b" + integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + +"@ethersproject/units@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1" + integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/wallet@5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.6.2.tgz#cd61429d1e934681e413f4bc847a5f2f87e3a03c" + integrity sha512-lrgh0FDQPuOnHcF80Q3gHYsSUODp6aJLAdDmDV0xKCN/T7D99ta1jGVhulg3PY8wiXEngD0DfM0I2XKXlrqJfg== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/hdnode" "^5.6.2" + "@ethersproject/json-wallets" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/wordlists" "^5.6.1" + +"@ethersproject/wallet@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d" + integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/json-wallets" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/web@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.0.tgz#40850c05260edad8b54827923bbad23d96aac0bc" + integrity sha512-ApHcbbj+muRASVDSCl/tgxaH2LBkRMEYfLOLVa0COipx0+nlu0QKet7U2lEg0vdkh8XRSLf2nd1f1Uk9SrVSGA== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/web@^5.6.1", "@ethersproject/web@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae" + integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/wordlists@5.7.0", "@ethersproject/wordlists@^5.6.1", "@ethersproject/wordlists@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5" + integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@fetsorn/opentelemetry-console-exporter@0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@fetsorn/opentelemetry-console-exporter/-/opentelemetry-console-exporter-0.0.3.tgz#c137629fecc610c7667e68b528926e498e152c0b" + integrity sha512-+UDrzHANOPcp0+47xK7dqeKIlYSh5a5WpFaswzM9S2MnjQfP0zOysAunWFRb6CFYSj1hTeFotYYXr8tYbyBpoA== + +"@formatjs/ecma402-abstract@1.6.2": + version "1.6.2" + resolved "https://registry.yarnpkg.com/@formatjs/ecma402-abstract/-/ecma402-abstract-1.6.2.tgz#9d064a2cf790769aa6721e074fb5d5c357084bb9" + integrity sha512-aLBODrSRhHaL/0WdQ0T2UsGqRbdtRRHqqrs4zwNQoRsGBEtEAvlj/rgr6Uea4PSymVJrbZBoAyECM2Z3Pq4i0g== + dependencies: + tslib "^2.1.0" + +"@formatjs/intl-datetimeformat@3.2.12": + version "3.2.12" + resolved "https://registry.yarnpkg.com/@formatjs/intl-datetimeformat/-/intl-datetimeformat-3.2.12.tgz#c9b2e85f0267ee13ea615a8991995da3075e3b13" + integrity sha512-qvY5+dl3vlgH0iWRXwl8CG9UkSVB5uP2+HH//fyZZ01G4Ww5rxMJmia1SbUqatpoe/dX+Z+aLejCqUUyugyL2g== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-displaynames@4.0.10": + version "4.0.10" + resolved "https://registry.yarnpkg.com/@formatjs/intl-displaynames/-/intl-displaynames-4.0.10.tgz#5bbd1bbcd64a036b4be27798b650c864dcf4466a" + integrity sha512-KmYJQHynGnnMeqIWVXhbzCMcEC8lg1TfGVdcO9May6paDT+dksZoOBQc741t7iXi/YVO/wXEZdmXhUNX7ODZug== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-listformat@5.0.10": + version "5.0.10" + resolved "https://registry.yarnpkg.com/@formatjs/intl-listformat/-/intl-listformat-5.0.10.tgz#9f8c4ad5e8a925240e151ba794c41fba01f742cc" + integrity sha512-FLtrtBPfBoeteRlYcHvThYbSW2YdJTllR0xEnk6cr/6FRArbfPRYMzDpFYlESzb5g8bpQMKZy+kFQ6V2Z+5KaA== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-relativetimeformat@8.1.2": + version "8.1.2" + resolved "https://registry.yarnpkg.com/@formatjs/intl-relativetimeformat/-/intl-relativetimeformat-8.1.2.tgz#119f3dce97458991f86bf34a736880e4a7bc1697" + integrity sha512-LZUxbc9GHVGmDc4sqGAXugoxhvZV7EG2lG2c0aKERup2ixvmDMbbEN3iEEr5aKkP7YyGxXxgqDn2dwg7QCPR6Q== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl@1.8.2": + version "1.8.2" + resolved "https://registry.yarnpkg.com/@formatjs/intl/-/intl-1.8.2.tgz#6090e6c1826a92e70668dfe08b4ba30127ea3a85" + integrity sha512-9xHoNKPv4qQIQ5AVfpQbIPZanz50i7oMtZWrd6Fz7Q2GM/5uhBr9mrCrY1tz/+diP7uguKmhj1IweLYaxY3DTQ== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + "@formatjs/intl-datetimeformat" "3.2.12" + "@formatjs/intl-displaynames" "4.0.10" + "@formatjs/intl-listformat" "5.0.10" + "@formatjs/intl-relativetimeformat" "8.1.2" + fast-memoize "^2.5.2" + intl-messageformat "9.5.2" + intl-messageformat-parser "6.4.2" + tslib "^2.1.0" + +"@istanbuljs/load-nyc-config@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== + dependencies: + camelcase "^5.3.1" + find-up "^4.1.0" + get-package-type "^0.1.0" + js-yaml "^3.13.1" + resolve-from "^5.0.0" + +"@istanbuljs/schema@^0.1.2": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + +"@jest/console@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.6.2.tgz#4e04bc464014358b03ab4937805ee36a0aeb98f2" + integrity sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + jest-message-util "^26.6.2" + jest-util "^26.6.2" + slash "^3.0.0" + +"@jest/core@^26.6.3": + version "26.6.3" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.6.3.tgz#7639fcb3833d748a4656ada54bde193051e45fad" + integrity sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/reporters" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-changed-files "^26.6.2" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-resolve-dependencies "^26.6.3" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + jest-watcher "^26.6.2" + micromatch "^4.0.2" + p-each-series "^2.1.0" + rimraf "^3.0.0" + slash "^3.0.0" + strip-ansi "^6.0.0" + +"@jest/environment@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.6.2.tgz#ba364cc72e221e79cc8f0a99555bf5d7577cf92c" + integrity sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA== + dependencies: + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + +"@jest/fake-timers@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.6.2.tgz#459c329bcf70cee4af4d7e3f3e67848123535aad" + integrity sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA== + dependencies: + "@jest/types" "^26.6.2" + "@sinonjs/fake-timers" "^6.0.1" + "@types/node" "*" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-util "^26.6.2" + +"@jest/globals@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.6.2.tgz#5b613b78a1aa2655ae908eba638cc96a20df720a" + integrity sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/types" "^26.6.2" + expect "^26.6.2" + +"@jest/reporters@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.6.2.tgz#1f518b99637a5f18307bd3ecf9275f6882a667f6" + integrity sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw== + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@jest/console" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.2" + graceful-fs "^4.2.4" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-instrument "^4.0.3" + istanbul-lib-report "^3.0.0" + istanbul-lib-source-maps "^4.0.0" + istanbul-reports "^3.0.2" + jest-haste-map "^26.6.2" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + slash "^3.0.0" + source-map "^0.6.0" + string-length "^4.0.1" + terminal-link "^2.0.0" + v8-to-istanbul "^7.0.0" + optionalDependencies: + node-notifier "^8.0.0" + +"@jest/source-map@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.6.2.tgz#29af5e1e2e324cafccc936f218309f54ab69d535" + integrity sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA== + dependencies: + callsites "^3.0.0" + graceful-fs "^4.2.4" + source-map "^0.6.0" + +"@jest/test-result@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.6.2.tgz#55da58b62df134576cc95476efa5f7949e3f5f18" + integrity sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/istanbul-lib-coverage" "^2.0.0" + collect-v8-coverage "^1.0.0" + +"@jest/test-sequencer@^26.6.3": + version "26.6.3" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz#98e8a45100863886d074205e8ffdc5a7eb582b17" + integrity sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw== + dependencies: + "@jest/test-result" "^26.6.2" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + +"@jest/transform@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" + integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^26.6.2" + babel-plugin-istanbul "^6.0.0" + chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-regex-util "^26.0.0" + jest-util "^26.6.2" + micromatch "^4.0.2" + pirates "^4.0.1" + slash "^3.0.0" + source-map "^0.6.1" + write-file-atomic "^3.0.0" + +"@jest/types@^25.5.0": + version "25.5.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-25.5.0.tgz#4d6a4793f7b9599fc3680877b856a97dbccf2a9d" + integrity sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^1.1.1" + "@types/yargs" "^15.0.0" + chalk "^3.0.0" + +"@jest/types@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" + integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + +"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" + integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== + dependencies: + "@jridgewell/set-array" "^1.0.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" + +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" + integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== + +"@jridgewell/set-array@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" + integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== + +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + +"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": + version "0.3.20" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz#72e45707cf240fa6b081d0366f8265b0cd10197f" + integrity sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + +"@jsdevtools/ono@^7.1.3": + version "7.1.3" + resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" + integrity sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg== + +"@msgpack/msgpack@2.7.2": + version "2.7.2" + resolved "https://registry.yarnpkg.com/@msgpack/msgpack/-/msgpack-2.7.2.tgz#f34b8aa0c49f0dd55eb7eba577081299cbf3f90b" + integrity sha512-rYEi46+gIzufyYUAoHDnRzkWGxajpD9vVXFQ3g1vbjrBm6P7MBmm+s/fqPa46sxa+8FOUdEuRQKaugo5a4JWpw== + +"@opentelemetry/api-metrics@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api-metrics/-/api-metrics-0.32.0.tgz#0f09f78491a4b301ddf54a8b8a38ffa99981f645" + integrity sha512-g1WLhpG8B6iuDyZJFRGsR+JKyZ94m5LEmY2f+duEJ9Xb4XRlLHrZvh6G34OH6GJ8iDHxfHb/sWjJ1ZpkI9yGMQ== + dependencies: + "@opentelemetry/api" "^1.0.0" + +"@opentelemetry/api@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.2.0.tgz#89ef99401cde6208cff98760b67663726ef26686" + integrity sha512-0nBr+VZNKm9tvNDZFstI3Pq1fCTEDK5OZTnVKNvBNAKgd0yIvmwsP4m61rEv7ZP+tOUjWJhROpxK5MsnlF911g== + +"@opentelemetry/api@^1.0.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.6.0.tgz#de2c6823203d6f319511898bb5de7e70f5267e19" + integrity sha512-OWlrQAnWn9577PhVgqjUvMr1pg57Bc4jv0iL4w0PRuOSRvq67rvHW9Ie/dZVMvCzhSCB+UxhcY/PmCmFj33Q+g== + +"@opentelemetry/core@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.6.0.tgz#c55f8ab7496acef7dbd8c4eedef6a4d4a0143c95" + integrity sha512-MsEhsyCTfYme6frK8/AqEWwbS9SB3Ta5bjgz4jPQJjL7ijUM3JiLVvqh/kHo1UlUjbUbLmGG7jA5Nw4d7SMcLQ== + dependencies: + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/exporter-trace-otlp-http@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.32.0.tgz#55773290a221855c4e8c422e8fb5e7ff4aa5f04e" + integrity sha512-8n44NDoEFoYG3mMToZxNyUKkHSGfzSShw6I2V5FApcH7rid20LmKiNuzc7lACneDIZBld+GGpLRuFhWniW8JhA== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/otlp-exporter-base" "0.32.0" + "@opentelemetry/otlp-transformer" "0.32.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + +"@opentelemetry/otlp-exporter-base@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.32.0.tgz#37dde162835a8fd23fa040f07e2938deb335fc4b" + integrity sha512-Dscxu4VNKrkD1SwGKdc7bAtLViGFJC8ah6Dr/vZn22NFHXSa53lSzDdTKeSTNNWH9sCGu/65LS45VMd4PsRvwQ== + dependencies: + "@opentelemetry/core" "1.6.0" + +"@opentelemetry/otlp-transformer@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-transformer/-/otlp-transformer-0.32.0.tgz#652c8f4c56c95f7d7ec39e20573b885d27ca13f1" + integrity sha512-PFAqfKgJpTOZryPe1UMm7R578PLxsK0wCAuKSt6m8v1bN/4DO8DX4HD7k3mYGZVU5jNg8tVZSwyIpY6ryrHDMQ== + dependencies: + "@opentelemetry/api-metrics" "0.32.0" + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-metrics" "0.32.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + +"@opentelemetry/resources@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.6.0.tgz#9756894131b9b0dfbcc0cecb5d4bd040d9c1b09d" + integrity sha512-07GlHuq72r2rnJugYVdGumviQvfrl8kEPidkZSVoseLVfIjV7nzxxt5/vqs9pK7JItWOrvjRdr/jTBVayFBr/w== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/sdk-metrics@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-metrics/-/sdk-metrics-0.32.0.tgz#463cd3a2b267f044db9aaab85887a171710345a0" + integrity sha512-zC9RCOIsXRqOHWmWfcxArtDHbip2/jaIH1yu/OKau/shDZYFluAxY6zAEYIb4YEAzKKEF+fpaoRgpodDWNGVGA== + dependencies: + "@opentelemetry/api-metrics" "0.32.0" + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + lodash.merge "4.6.2" + +"@opentelemetry/sdk-trace-base@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.6.0.tgz#8b1511c0b0f3e6015e345f5ed4a683adf03e3e3c" + integrity sha512-yx/uuzHdT0QNRSEbCgXHc0GONk90uvaFcPGaNowIFSl85rTp4or4uIIMkG7R8ckj8xWjDSjsaztH6yQxoZrl5g== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/sdk-trace-web@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.6.0.tgz#ef243e3e1102b53bc0afa93c29c18fc7e2f66e52" + integrity sha512-iOgmygvooaZm4Vi6mh5FM7ubj/e+MqDn8cDPCNfk6V8Q2yWj0co8HKWPFo0RoxSLYyPaFnEEXOXWWuE4OTwLKw== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/semantic-conventions@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.6.0.tgz#ed410c9eb0070491cff9fe914246ce41f88d6f74" + integrity sha512-aPfcBeLErM/PPiAuAbNFLN5sNbZLc3KZlar27uohllN8Zs6jJbHyJU1y7cMA6W/zuq+thkaG8mujiS+3iD/FWQ== + +"@polywrap/asyncify-js@0.12.2", "@polywrap/asyncify-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/asyncify-js/-/asyncify-js-0.12.2.tgz#e5b264bb38f7108beb1b83c43fa6c0ce3459f7a3" + integrity sha512-1dj/D0O4KosIw6q+4xKSu9w5Vry6zb3T5YgIBgBHuPvp3+146YUsuY1DFNFOKVs5XFfiilp10kkDpNIr4bi6mQ== + +"@polywrap/client-config-builder-js@0.12.2", "@polywrap/client-config-builder-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/client-config-builder-js/-/client-config-builder-js-0.12.2.tgz#b1c1be1e17bdc43b36df96517460c4860b395aad" + integrity sha512-N09BTlspeLIahvDeMKBqRtSiWLAUj5RH4aExLy3CiRW1Hdq+Xpt7evxjImK+ugnAFOM3c2L8LK63qou600sRgw== + dependencies: + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/plugin-js" "0.12.2" + "@polywrap/sys-config-bundle-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + "@polywrap/web3-config-bundle-js" "0.12.2" + +"@polywrap/client-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/client-js/-/client-js-0.12.2.tgz#eb6b80c8ae35483c7dd0e773be79aa78e0a232ca" + integrity sha512-loEkFWEnXOxYwfnC61aZRYo+YGPbsIcFg+UO64lIIRKCTb6bpzueLy97RWGVf1YF0tDtomhwwCY+QNST2gy06Q== + dependencies: + "@polywrap/client-config-builder-js" "0.12.2" + "@polywrap/core-client-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/plugin-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/concurrent-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/concurrent-plugin-js/-/concurrent-plugin-js-0.12.0.tgz#b3aba6a99cb2531b5333918d780f82a506e344d1" + integrity sha512-Y7rq3MnXbi/sshbIs8lFZOUppXiscJLRqUo1qMYYZrHjDFTzs1c0bTHImxEEpygtnHLZnZ3ZaUvynzipLiL+Jw== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/msgpack-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/config-bundle-types-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/config-bundle-types-js/-/config-bundle-types-js-0.12.2.tgz#00e40cf882001be1ae82493052da19dac02708f3" + integrity sha512-ZRa3EOh5i/Gq/7HDS1IG5FJcBXx31XFeHAjrwKPU23x5eSVux3gIoFzgg3zv4CzQtDizUv+ds76LGKn6vFWX/A== + dependencies: + "@polywrap/core-js" "0.12.2" + +"@polywrap/core-client-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/core-client-js/-/core-client-js-0.12.2.tgz#88f2013a50b56979bc6145098b05b6a7725bb1f1" + integrity sha512-7sN3KErSun7V0pWOfI0AhKqsC1zf7njRaYM2EMeGYqXoHm9P2OteNPA2j9qn1FYPQHHZI/MQaVrCDAHaCeXuJg== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/core-js@0.12.2", "@polywrap/core-js@~0.12.0", "@polywrap/core-js@~0.12.0-pre.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/core-js/-/core-js-0.12.2.tgz#b85f0314a30696db7ef265bfb89b4f25c194d900" + integrity sha512-AezoxK1YX+qJl06opUeAyjBfA+LIEHDPMoZZWeI+pyQHhuDUHyLv4xh4uzXELNnzfLo0Ap39qKAQ5u2HAs1DJA== + dependencies: + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/datetime-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/datetime-plugin-js/-/datetime-plugin-js-0.12.0.tgz#d04daf01c060e664ddbeea3d72a530a0b6d709fc" + integrity sha512-iDMa+250UxtJYD/I7eG3aRUrf73g8OgnhO9CrIaSEbsi/X3eKVfXIQPXSowqXSLhwG6LceDc/zn19uEPXZSvUg== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/ethereum-wallet-js@~0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@polywrap/ethereum-wallet-js/-/ethereum-wallet-js-0.1.0.tgz#1af5800aab3c4cedfcd1e4e5e305d5d5ef733bea" + integrity sha512-GTg4X0gyFHXNAHSDxe6QfiWJv8z/pwobnVyKw4rcmBLw7tqcTiYXk4kU0QfWV3JLV/8rvzESl+FtXPC68dUMIA== + dependencies: + "@ethersproject/address" "5.7.0" + "@ethersproject/providers" "5.7.0" + "@polywrap/core-js" "~0.12.0-pre.0" + "@polywrap/plugin-js" "~0.12.0-pre.0" + ethers "5.7.0" + +"@polywrap/file-system-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/file-system-plugin-js/-/file-system-plugin-js-0.12.0.tgz#0d88113e629d51173db0b30c34c296aeb8b23eea" + integrity sha512-hv6BCjnMwE3/CG5lBpucKKpcCE7DyLhshbv+KRSgz1sftI9CalogJbP6irkySgV7dDpMnQf1iZGTntv8HLwFOw== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/http-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/http-plugin-js/-/http-plugin-js-0.12.0.tgz#f297e192bbca16f81bbdf16dbc16a7664c93def5" + integrity sha512-DVXfRdF72ozLBXPQFAWEiz72gCF6wSw/H8q53DxeOXh3gKQ5zBpes5INEMpBpA9vzhqS73Y3KyMHTCrrXecv0w== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + axios "0.21.4" + form-data "4.0.0" + +"@polywrap/logger-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/logger-plugin-js/-/logger-plugin-js-0.12.0.tgz#e724bb5504336e4fbf1f0f9757cfe893f9bd5297" + integrity sha512-M6TXUSBTFRWLsTaT3gfNlqCRvrpgg60klD7g3zzEKeklkwy19TbcrkW2CVxfr0HZwiL1TVUuLBdDJc1sqE0A8g== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/logging-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/logging-js/-/logging-js-0.12.1.tgz#2d52e3f5e9d32cf5463222fcc1b00d4f98aacacd" + integrity sha512-yAGFhXIdgabITlZptyGLOaSjor88R98nV6Kzxqsl6sVxHKZOEf5Xj4MtlXYFaeh8ha6x8BUkZLNv5s3SlW5ttw== + +"@polywrap/msgpack-js@0.12.2", "@polywrap/msgpack-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/msgpack-js/-/msgpack-js-0.12.2.tgz#27562f98a60e82b55f7d9147bc13feb346cf47de" + integrity sha512-FsdHLRFRSfjh+O6zsjX3G2VCBJQDswnKGQKtp8IckPe0PJ0gpu9NPEvCFS4FfbF+Kmw+A7tUDrZ2I4wsuZsb9g== + dependencies: + "@msgpack/msgpack" "2.7.2" + +"@polywrap/os-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/os-js/-/os-js-0.12.1.tgz#0f8f06199e3b21331a4cbee5b7b86e147c26129f" + integrity sha512-vYsGpCHMhxPAUzbxsik0lTupHuUVwkrxojjLZL89N8yP67mhB9gTJeAYgDKXBTOo9E5bVFL07gDdaiDY+icfAQ== + +"@polywrap/plugin-js@0.12.2", "@polywrap/plugin-js@~0.12.0", "@polywrap/plugin-js@~0.12.0-pre.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/plugin-js/-/plugin-js-0.12.2.tgz#aca362a9992ac8ab619f171c08e876524ad35dac" + integrity sha512-8mJy5Dk1Np+cPoXKMWNuazxd2oMv/UKCOPFX0Sam3BqE9BtPbjXRUVG55vOtD6x+Ozhe3QIr83qXsfNOxNvLGw== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/polywrap-manifest-schemas@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/polywrap-manifest-schemas/-/polywrap-manifest-schemas-0.12.1.tgz#ebca3d6f1039fb8bdd6c31164f00ea861f49ce2c" + integrity sha512-5sHO6jL8QPoqXXDj2wb/pqRmKjZ0VxxDYaugRN2qeICHTF3rFU4aqs1y/qyJw3FGNFTLGDkLlPqnYDk8EZB5xQ== + +"@polywrap/polywrap-manifest-types-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/polywrap-manifest-types-js/-/polywrap-manifest-types-js-0.12.1.tgz#6884ce7c72981c2e73750fc4e706162bdcc560f4" + integrity sha512-fUsrZ1D5U9j+E56EB98ZHx1/xHflPXXizY7vNvxDRkzjhkCvlwEY61MfcNNWzakjyq1Fb7kwzxxZIp8XJZFoXw== + dependencies: + "@polywrap/logging-js" "0.12.1" + "@polywrap/polywrap-manifest-schemas" "0.12.1" + jsonschema "1.4.0" + semver "7.5.3" + yaml "2.2.2" + +"@polywrap/result@0.12.2", "@polywrap/result@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/result/-/result-0.12.2.tgz#99ad60da087db4dd2ad760ba1bd27a752d4af45f" + integrity sha512-gcRUsWz3Qyd7CxWqrTTj1NCl2h74yI2lgqMlUfCn4TVdBmRqbyTe5iP+g+R/qs0qO0Ud8Sx0GAfbSuZfzClJ2g== + +"@polywrap/schema-bind@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-bind/-/schema-bind-0.12.1.tgz#a7faa9681f468d9731c08399f4f121b2e76cbc8a" + integrity sha512-5VFpEoHW5Q2qnlXtt5PZs5NFWjYV00GDiQH3n25JaDK7vkTsf4rn4DZ5UlM/iKW6FLw6PpMUPquXapPtj9W3+w== + dependencies: + "@polywrap/client-js" "~0.12.0" + "@polywrap/os-js" "0.12.1" + "@polywrap/schema-parse" "0.12.1" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + mustache "4.0.1" + +"@polywrap/schema-compose@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-compose/-/schema-compose-0.12.1.tgz#7b6955522e47bbc066a30dcdf03d47263a2945e3" + integrity sha512-ie1fPOEW2FtZv/NDydFpolEoGLZfb34TND38LxiVkfe+Wnyp7aOKR0lq1cvP1g+9POZPv5TzL3Gb/jb+54Z2EQ== + dependencies: + "@polywrap/schema-parse" "0.12.1" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + graphql "15.5.0" + mustache "4.0.1" + +"@polywrap/schema-parse@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-parse/-/schema-parse-0.12.1.tgz#2764ad088537775cf9caccf7157b538d77a74f83" + integrity sha512-wCiGM2G5c/9+6mAXD3KTFi+avvReWV2PpfWqfH3bB1u7uun99Ed2yeXXj6034I+YqIZyVIR34nZq9YAm0Fn0Lw== + dependencies: + "@dorgjelli/graphql-schema-cycles" "1.1.4" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + graphql "15.5.0" + +"@polywrap/sys-config-bundle-js@0.12.2", "@polywrap/sys-config-bundle-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/sys-config-bundle-js/-/sys-config-bundle-js-0.12.2.tgz#6ad6f0d2f31c6668e7642801c0adcab22a4f654e" + integrity sha512-w6zewNacyXPO/LjmSyHqlkbtT8kq2BR0ydZTU1oO0SaeL08ua7FLe2H6v01vgqOCwHuwV2xsW0Y/neHHZx/cYw== + dependencies: + "@polywrap/concurrent-plugin-js" "~0.12.0" + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/datetime-plugin-js" "~0.12.0" + "@polywrap/file-system-plugin-js" "~0.12.0" + "@polywrap/http-plugin-js" "~0.12.0" + "@polywrap/logger-plugin-js" "~0.12.0" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + base64-to-uint8array "1.0.0" + +"@polywrap/tracing-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/tracing-js/-/tracing-js-0.12.2.tgz#549e54af500c4ba3384107853db453cd14cc7960" + integrity sha512-nApKdEPvfWijCoyDuq6ib6rgo7iWJH09Nf8lF1dTBafj59C3dR7aqyOO4NH8znZAO1poeiG6rPqsrnLYGM9CMA== + dependencies: + "@fetsorn/opentelemetry-console-exporter" "0.0.3" + "@opentelemetry/api" "1.2.0" + "@opentelemetry/exporter-trace-otlp-http" "0.32.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + "@opentelemetry/sdk-trace-web" "1.6.0" + +"@polywrap/uri-resolver-extensions-js@0.12.2", "@polywrap/uri-resolver-extensions-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.12.2.tgz#b8b2a3714f8bf36da3cd8d560b0f77af1e54b2ea" + integrity sha512-WA1ythVxqviaQWPHmWVegeeXEstq/+WDWF3Xdkm1Hbrlb10rPSzL7iq4IH8Mz2jFfjtA5YTQoK+xtw55koWH5w== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/uri-resolvers-js@0.12.2", "@polywrap/uri-resolvers-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/uri-resolvers-js/-/uri-resolvers-js-0.12.2.tgz#8c2393a56ae12445be171b8d8feeb803b114c32b" + integrity sha512-5J3unEYxEMMSI+2lHVs5SmvpSyAbDie7ZJgt2djL64+nOjisY8hBI/TBd2mCgrHy3fziE7DCZhA+d70ChtLCBg== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/wasm-js@0.12.2", "@polywrap/wasm-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/wasm-js/-/wasm-js-0.12.2.tgz#c807d296b66c1fe12bd80ce482eb7aa4e14f08ec" + integrity sha512-x3Buycm0ZLSPL8nP+QlySwvrZPH30kyuYbl170oNCiwf4Hllv10/Dn8xSR2WAV583ZD4tI/xIYzz04NVdXABKQ== + dependencies: + "@polywrap/asyncify-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/web3-config-bundle-js@0.12.2", "@polywrap/web3-config-bundle-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/web3-config-bundle-js/-/web3-config-bundle-js-0.12.2.tgz#87cd4b523a2df4f0debfa45e0b9c18c3116e9931" + integrity sha512-sY2cFw8TBXrIxXI8U50cSBwTzudsVVMztieA0hMIBw6XkEmFLGncn7RMnNJ5SBU8Cs+RFbwi9KATgNWQi5GKrQ== + dependencies: + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/ethereum-wallet-js" "~0.1.0" + "@polywrap/sys-config-bundle-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + base64-to-uint8array "1.0.0" + +"@polywrap/wrap-manifest-types-js@0.12.2", "@polywrap/wrap-manifest-types-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/wrap-manifest-types-js/-/wrap-manifest-types-js-0.12.2.tgz#c27f5f320b53de6744cfc2344bb90a1e6ff9e8d6" + integrity sha512-YlOCK1V0fFitunWvsRrQFiQMPETARLMd/d/iCeubkUzIh4TUr2gEtHbc8n2C9FYUFa4zLcY84mKfdDSyTf49jw== + dependencies: + "@polywrap/msgpack-js" "0.12.2" + ajv "8.12.0" + semver "~7.5.4" + +"@sinonjs/commons@^1.7.0": + version "1.8.6" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" + integrity sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ== + dependencies: + type-detect "4.0.8" + +"@sinonjs/fake-timers@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" + integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== + dependencies: + "@sinonjs/commons" "^1.7.0" + +"@tootallnate/once@1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== + +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7": + version "7.20.3" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.3.tgz#d5625a50b6f18244425a1359a858c73d70340778" + integrity sha512-54fjTSeSHwfan8AyHWrKbfBWiEUrNTZsUwPTDSNaaP1QDQIZbeNUg3a59E9D+375MzUw/x1vx2/0F5LBz+AeYA== + dependencies: + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + +"@types/babel__generator@*": + version "7.6.6" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.6.tgz#676f89f67dc8ddaae923f70ebc5f1fa800c031a8" + integrity sha512-66BXMKb/sUWbMdBNdMvajU7i/44RkrA3z/Yt1c7R5xejt8qh84iU54yUWCtm0QwGJlDcf/gg4zd/x4mpLAlb/w== + dependencies: + "@babel/types" "^7.0.0" + +"@types/babel__template@*": + version "7.4.3" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.3.tgz#db9ac539a2fe05cfe9e168b24f360701bde41f5f" + integrity sha512-ciwyCLeuRfxboZ4isgdNZi/tkt06m8Tw6uGbBSBgWrnnZGNXiEyM27xc/PjXGQLqlZ6ylbgHMnm7ccF9tCkOeQ== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": + version "7.20.3" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.3.tgz#a971aa47441b28ef17884ff945d0551265a2d058" + integrity sha512-Lsh766rGEFbaxMIDH7Qa+Yha8cMVI3qAK6CHt3OR0YfxOIn5Z54iHiyDRycHrBqeIiqGa20Kpsv1cavfBKkRSw== + dependencies: + "@babel/types" "^7.20.7" + +"@types/graceful-fs@^4.1.2": + version "4.1.8" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.8.tgz#417e461e4dc79d957dc3107f45fe4973b09c2915" + integrity sha512-NhRH7YzWq8WiNKVavKPBmtLYZHxNY19Hh+az28O/phfp68CF45pMFud+ZzJ8ewnxnC5smIdF3dqFeiSUQ5I+pw== + dependencies: + "@types/node" "*" + +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#fdfdd69fa16d530047d9963635bd77c71a08c068" + integrity sha512-zONci81DZYCZjiLe0r6equvZut0b+dBRPBN5kBDjsONnutYNtJMoWQ9uR2RkL1gLG9NMTzvf+29e5RFfPbeKhQ== + +"@types/istanbul-lib-report@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.2.tgz#394798d5f727402eb5ec99eb9618ffcd2b7645a1" + integrity sha512-8toY6FgdltSdONav1XtUHl4LN1yTmLza+EuDazb/fEmRNCwjyqNVIQWs2IfC74IqjHkREs/nQ2FWq5kZU9IC0w== + dependencies: + "@types/istanbul-lib-coverage" "*" + +"@types/istanbul-reports@^1.1.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz#e875cc689e47bce549ec81f3df5e6f6f11cfaeb2" + integrity sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw== + dependencies: + "@types/istanbul-lib-coverage" "*" + "@types/istanbul-lib-report" "*" + +"@types/istanbul-reports@^3.0.0": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.3.tgz#0313e2608e6d6955d195f55361ddeebd4b74c6e7" + integrity sha512-1nESsePMBlf0RPRffLZi5ujYh7IH1BWL4y9pr+Bn3cJBdxz+RTP8bUFljLz9HvzhhOSWKdyBZ4DIivdL6rvgZg== + dependencies: + "@types/istanbul-lib-report" "*" + +"@types/jest@26.0.8": + version "26.0.8" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.8.tgz#f5c5559cf25911ce227f7ce30f1f160f24966369" + integrity sha512-eo3VX9jGASSuv680D4VQ89UmuLZneNxv2MCZjfwlInav05zXVJTzfc//lavdV0GPwSxsXJTy2jALscB7Acqg0g== + dependencies: + jest-diff "^25.2.1" + pretty-format "^25.2.1" + +"@types/json-schema@^7.0.6": + version "7.0.14" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.14.tgz#74a97a5573980802f32c8e47b663530ab3b6b7d1" + integrity sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw== + +"@types/node@*": + version "20.8.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.8.8.tgz#adee050b422061ad5255fc38ff71b2bb96ea2a0e" + integrity sha512-YRsdVxq6OaLfmR9Hy816IMp33xOBjfyOgUd77ehqg96CFywxAPbDbXvAsuN2KVg2HOT8Eh6uAfU+l4WffwPVrQ== + dependencies: + undici-types "~5.25.1" + +"@types/normalize-package-data@^2.4.0": + version "2.4.3" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.3.tgz#291c243e4b94dbfbc0c0ee26b7666f1d5c030e2c" + integrity sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg== + +"@types/prettier@^2.0.0": + version "2.7.3" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.3.tgz#3e51a17e291d01d17d3fc61422015a933af7a08f" + integrity sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA== + +"@types/stack-utils@^2.0.0": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.2.tgz#01284dde9ef4e6d8cef6422798d9a3ad18a66f8b" + integrity sha512-g7CK9nHdwjK2n0ymT2CW698FuWJRIx+RP6embAzZ2Qi8/ilIrA1Imt2LVSeHUzKvpoi7BhmmQcXz95eS0f2JXw== + +"@types/yargs-parser@*": + version "21.0.2" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.2.tgz#7bd04c5da378496ef1695a1008bf8f71847a8b8b" + integrity sha512-5qcvofLPbfjmBfKaLfj/+f+Sbd6pN4zl7w7VSVI5uz7m9QZTuB2aZAa2uo1wHFBNN2x6g/SoTkXmd8mQnQF2Cw== + +"@types/yargs@^15.0.0": + version "15.0.17" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.17.tgz#bea870ba551b43831bfaa75de2e4a3849c39322b" + integrity sha512-cj53I8GUcWJIgWVTSVe2L7NJAB5XWGdsoMosVvUgv1jEnMbAcsbaCzt1coUcyi8Sda5PgTWAooG8jNyDTD+CWA== + dependencies: + "@types/yargs-parser" "*" + +"@types/yauzl@^2.9.1": + version "2.10.2" + resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.10.2.tgz#dab926ef9b41a898bc943f11bca6b0bad6d4b729" + integrity sha512-Km7XAtUIduROw7QPgvcft0lIupeG8a8rdKL8RiSyKvlE7dYY31fEn41HVuQsRFDuROA8tA4K2UVL+WdfFmErBA== + dependencies: + "@types/node" "*" + +abab@^2.0.3, abab@^2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" + integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== + +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.2.4: + version "8.10.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" + integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== + +aes-js@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" + integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== + +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" + +ajv@8.12.0: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +ansi-escapes@^4.2.1: + version "4.3.2" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== + dependencies: + type-fest "^0.21.3" + +ansi-regex@^5.0.0, ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + +anymatch@^3.0.3, anymatch@~3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== + +arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== + +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== + +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== + +at-least-node@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" + integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== + +atob@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== + +axios@0.21.2: + version "0.21.2" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.2.tgz#21297d5084b2aeeb422f5d38e7be4fbb82239017" + integrity sha512-87otirqUw3e8CzHTMO+/9kh/FSgXt/eVDvipijwDtEuwbkySWZ9SBm6VEubmJ/kLKEoLQV/POhxXFb66bfekfg== + dependencies: + follow-redirects "^1.14.0" + +axios@0.21.4: + version "0.21.4" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" + integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== + dependencies: + follow-redirects "^1.14.0" + +babel-jest@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" + integrity sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA== + dependencies: + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/babel__core" "^7.1.7" + babel-plugin-istanbul "^6.0.0" + babel-preset-jest "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + slash "^3.0.0" + +babel-plugin-istanbul@^6.0.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@istanbuljs/load-nyc-config" "^1.0.0" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-instrument "^5.0.4" + test-exclude "^6.0.0" + +babel-plugin-jest-hoist@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz#8185bd030348d254c6d7dd974355e6a28b21e62d" + integrity sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw== + dependencies: + "@babel/template" "^7.3.3" + "@babel/types" "^7.3.3" + "@types/babel__core" "^7.0.0" + "@types/babel__traverse" "^7.0.6" + +babel-preset-current-node-syntax@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== + dependencies: + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-bigint" "^7.8.3" + "@babel/plugin-syntax-class-properties" "^7.8.3" + "@babel/plugin-syntax-import-meta" "^7.8.3" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.8.3" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-top-level-await" "^7.8.3" + +babel-preset-jest@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz#747872b1171df032252426586881d62d31798fee" + integrity sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ== + dependencies: + babel-plugin-jest-hoist "^26.6.2" + babel-preset-current-node-syntax "^1.0.0" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +base-x@^3.0.8: + version "3.0.9" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320" + integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ== + dependencies: + safe-buffer "^5.0.1" + +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +base64-to-uint8array@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/base64-to-uint8array/-/base64-to-uint8array-1.0.0.tgz#725f9e9886331b43785cadd807e76803d5494e05" + integrity sha512-drjWQcees55+XQSVHYxiUF05Fj6ko3XJUoxykZEXbm0BMmNz2ieWiZGJ+6TFWnjN2saucG6pI13LS92O4kaiAg== + +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +bn.js@^4.11.9: + version "4.12.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" + integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== + +bn.js@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + +braces@^3.0.2, braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + +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== + +browserslist@^4.21.9: + version "4.22.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619" + integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ== + dependencies: + caniuse-lite "^1.0.30001541" + electron-to-chromium "^1.4.535" + node-releases "^2.0.13" + update-browserslist-db "^1.0.13" + +bs-logger@0.x: + version "0.2.6" + resolved "https://registry.yarnpkg.com/bs-logger/-/bs-logger-0.2.6.tgz#eb7d365307a72cf974cc6cda76b68354ad336bd8" + integrity sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog== + dependencies: + fast-json-stable-stringify "2.x" + +bser@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== + dependencies: + node-int64 "^0.4.0" + +buffer-crc32@~0.2.3: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== + +buffer-from@1.x, buffer-from@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== + +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== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + +call-me-maybe@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa" + integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ== + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase@^5.0.0, camelcase@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +camelcase@^6.0.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== + +caniuse-lite@^1.0.30001541: + version "1.0.30001554" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001554.tgz#ba80d88dff9acbc0cd4b7535fc30e0191c5e2e2a" + integrity sha512-A2E3U//MBwbJVzebddm1YfNp7Nud5Ip+IPn4BozBmn4KqVX7AvluoIDFWjsv5OkGnKUXQVmMSoMKLa3ScCblcQ== + +capture-exit@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" + integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== + dependencies: + rsvp "^4.8.4" + +chalk@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" + integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chalk@^4.0.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +char-regex@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== + +chokidar@3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" + integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.5.0" + optionalDependencies: + fsevents "~2.3.1" + +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + +cids@^0.7.1: + version "0.7.5" + resolved "https://registry.yarnpkg.com/cids/-/cids-0.7.5.tgz#60a08138a99bfb69b6be4ceb63bfef7a396b28b2" + integrity sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA== + dependencies: + buffer "^5.5.0" + class-is "^1.1.0" + multibase "~0.6.0" + multicodec "^1.0.0" + multihashes "~0.4.15" + +cjs-module-lexer@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz#4186fcca0eae175970aee870b9fe2d6cf8d5655f" + integrity sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw== + +class-is@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/class-is/-/class-is-1.1.0.tgz#9d3c0fba0440d211d843cec3dedfa48055005825" + integrity sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw== + +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + +cliui@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" + integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^6.2.0" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== + +collect-v8-coverage@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz#c0b29bcd33bcd0779a1344c2136051e6afd3d9e9" + integrity sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q== + +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +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" + +commander@9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-9.2.0.tgz#6e21014b2ed90d8b7c9647230d8b7a94a4a419a9" + integrity sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w== + +component-emitter@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +content-hash@2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/content-hash/-/content-hash-2.5.2.tgz#bbc2655e7c21f14fd3bfc7b7d4bfe6e454c9e211" + integrity sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw== + dependencies: + cids "^0.7.1" + multicodec "^0.5.5" + multihashes "^0.4.15" + +convert-source-map@^1.4.0, convert-source-map@^1.6.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== + +convert-source-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== + +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== + +copyfiles@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/copyfiles/-/copyfiles-2.4.1.tgz#d2dcff60aaad1015f09d0b66e7f0f1c5cd3c5da5" + integrity sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg== + dependencies: + glob "^7.0.5" + minimatch "^3.0.3" + mkdirp "^1.0.4" + noms "0.0.0" + through2 "^2.0.1" + untildify "^4.0.0" + yargs "^16.1.0" + +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + +cross-spawn@^6.0.0: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +cross-spawn@^7.0.0: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +cssom@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" + integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== + +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@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" + integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== + dependencies: + abab "^2.0.3" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.0.0" + +debug@4, debug@^4.1.0, debug@^4.1.1: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + +debug@^2.2.0, debug@^2.3.3: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== + +decimal.js@^10.2.1: + version "10.4.3" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" + integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== + +decode-uri-component@^0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" + integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== + +deepmerge@^4.2.2: + version "4.3.1" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" + integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== + +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + +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== + +detect-newline@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== + +diff-sequences@^25.2.6: + version "25.2.6" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-25.2.6.tgz#5f467c00edd35352b7bca46d7927d60e687a76dd" + integrity sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg== + +diff-sequences@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" + integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== + +docker-compose@0.23.17: + version "0.23.17" + resolved "https://registry.yarnpkg.com/docker-compose/-/docker-compose-0.23.17.tgz#8816bef82562d9417dc8c790aa4871350f93a2ba" + integrity sha512-YJV18YoYIcxOdJKeFcCFihE6F4M2NExWM/d4S1ITcS9samHKnNUihz9kjggr0dNtsrbpFNc7/Yzd19DWs+m1xg== + dependencies: + yaml "^1.10.2" + +domexception@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" + integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== + dependencies: + webidl-conversions "^5.0.0" + +electron-to-chromium@^1.4.535: + version "1.4.566" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.566.tgz#5c5ba1d2dc895f4887043f0cc7e61798c7e5919a" + integrity sha512-mv+fAy27uOmTVlUULy15U3DVJ+jg+8iyKH1bpwboCRhtDC69GKf1PPTZvEIhCyDr81RFqfxZJYrbgp933a1vtg== + +elliptic@6.5.4: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +emittery@^0.7.1: + version "0.7.2" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.2.tgz#25595908e13af0f5674ab419396e2fb394cdfa82" + integrity sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +end-of-stream@^1.1.0: + version "1.4.4" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + dependencies: + once "^1.4.0" + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +escape-string-regexp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== + +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.0, 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== + +ethers@5.7.0: + version "5.7.0" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.0.tgz#0055da174b9e076b242b8282638bc94e04b39835" + integrity sha512-5Xhzp2ZQRi0Em+0OkOcRHxPzCfoBfgtOQA+RUylSkuHbhTEaQklnYi2hsWbRgs3ztJsXVXd9VKBcO1ScWL8YfA== + dependencies: + "@ethersproject/abi" "5.7.0" + "@ethersproject/abstract-provider" "5.7.0" + "@ethersproject/abstract-signer" "5.7.0" + "@ethersproject/address" "5.7.0" + "@ethersproject/base64" "5.7.0" + "@ethersproject/basex" "5.7.0" + "@ethersproject/bignumber" "5.7.0" + "@ethersproject/bytes" "5.7.0" + "@ethersproject/constants" "5.7.0" + "@ethersproject/contracts" "5.7.0" + "@ethersproject/hash" "5.7.0" + "@ethersproject/hdnode" "5.7.0" + "@ethersproject/json-wallets" "5.7.0" + "@ethersproject/keccak256" "5.7.0" + "@ethersproject/logger" "5.7.0" + "@ethersproject/networks" "5.7.0" + "@ethersproject/pbkdf2" "5.7.0" + "@ethersproject/properties" "5.7.0" + "@ethersproject/providers" "5.7.0" + "@ethersproject/random" "5.7.0" + "@ethersproject/rlp" "5.7.0" + "@ethersproject/sha2" "5.7.0" + "@ethersproject/signing-key" "5.7.0" + "@ethersproject/solidity" "5.7.0" + "@ethersproject/strings" "5.7.0" + "@ethersproject/transactions" "5.7.0" + "@ethersproject/units" "5.7.0" + "@ethersproject/wallet" "5.7.0" + "@ethersproject/web" "5.7.0" + "@ethersproject/wordlists" "5.7.0" + +exec-sh@^0.3.2: + version "0.3.6" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" + integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== + +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +execa@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" + integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== + dependencies: + cross-spawn "^7.0.0" + get-stream "^5.0.0" + human-signals "^1.1.1" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.0" + onetime "^5.1.0" + signal-exit "^3.0.2" + strip-final-newline "^2.0.0" + +exit@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +expect@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/expect/-/expect-26.6.2.tgz#c6b996bf26bf3fe18b67b2d0f51fc981ba934417" + integrity sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA== + dependencies: + "@jest/types" "^26.6.2" + ansi-styles "^4.0.0" + jest-get-type "^26.3.0" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +extract-zip@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" + integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== + dependencies: + debug "^4.1.1" + get-stream "^5.1.0" + yauzl "^2.10.0" + optionalDependencies: + "@types/yauzl" "^2.9.1" + +fast-deep-equal@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-json-stable-stringify@2.x, fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-memoize@^2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/fast-memoize/-/fast-memoize-2.5.2.tgz#79e3bb6a4ec867ea40ba0e7146816f6cdce9b57e" + integrity sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw== + +fb-watchman@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" + integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== + dependencies: + bser "2.1.1" + +fd-slicer@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" + integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== + dependencies: + pend "~1.2.0" + +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +find-up@^4.0.0, find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + +follow-redirects@^1.14.0: + version "1.15.3" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a" + integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q== + +for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== + +form-data@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +form-data@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== + dependencies: + map-cache "^0.2.2" + +fs-extra@9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz#910da0062437ba4c39fedd863f1675ccfefcb9fc" + integrity sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ== + dependencies: + at-least-node "^1.0.0" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^1.0.0" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== + +fsevents@^2.1.2, fsevents@~2.3.1: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +gensync@^1.0.0-beta.2: + version "1.0.0-beta.2" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== + +get-caller-file@^2.0.1, get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-package-type@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== + +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + +get-stream@^5.0.0, get-stream@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== + dependencies: + pump "^3.0.0" + +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== + +glob-parent@~5.1.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.1.1" + once "^1.3.0" + path-is-absolute "^1.0.0" + +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== + +graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +graphql-json-transform@^1.1.0-alpha.0: + version "1.1.0-alpha.0" + resolved "https://registry.yarnpkg.com/graphql-json-transform/-/graphql-json-transform-1.1.0-alpha.0.tgz#fb0c88d24840067e6c55ac64bbc8d4e5de245d2d" + integrity sha512-I6lR/lYEezSz4iru0f7a/wR8Rzi3pCafk7S0bX2b/WQOtK0vKabxLShGBXIslsi0arMehIjvOPHJl7MpOUqj0w== + +graphql@15.5.0: + version "15.5.0" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.0.tgz#39d19494dbe69d1ea719915b578bf920344a69d5" + integrity sha512-OmaM7y0kaK31NKG31q4YbD2beNYa6jBBKtMFT6gLYJljHLJr42IqJ8KX08u3Li/0ifzTU5HjmoOOrwa5BRLeDA== + +growly@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" + integrity sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hasown@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.0.tgz#f4c513d454a57b7c7e1650778de226b11700546c" + integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA== + dependencies: + function-bind "^1.1.2" + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hosted-git-info@^2.1.4: + version "2.8.9" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== + +html-encoding-sniffer@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" + integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== + dependencies: + whatwg-encoding "^1.0.5" + +html-escaper@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== + +http-proxy-agent@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== + dependencies: + "@tootallnate/once" "1" + 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" + +human-signals@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" + integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== + +iconv-lite@0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ieee754@^1.1.13: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + +import-local@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== + dependencies: + pkg-dir "^4.2.0" + resolve-cwd "^3.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +intl-messageformat-parser@6.4.2: + version "6.4.2" + resolved "https://registry.yarnpkg.com/intl-messageformat-parser/-/intl-messageformat-parser-6.4.2.tgz#e2d28c3156c27961ead9d613ca55b6a155078d7d" + integrity sha512-IVNGy24lNEYr/KPWId5tF3KXRHFFbMgzIMI4kUonNa/ide2ywUYyBuOUro1IBGZJqjA2ncBVUyXdYKlMfzqpAA== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +intl-messageformat@9.5.2: + version "9.5.2" + resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-9.5.2.tgz#e72d32152c760b7411e413780e462909987c005a" + integrity sha512-sBGXcSQLyBuBA/kzAYhTpzhzkOGfSwGIau2W6FuwLZk0JE+VF3C+y0077FhVDOcRSi60iSfWzT8QC3Z7//dFxw== + dependencies: + fast-memoize "^2.5.2" + intl-messageformat-parser "6.4.2" + tslib "^2.1.0" + +invert-kv@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-3.0.1.tgz#a93c7a3d4386a1dc8325b97da9bb1620c0282523" + integrity sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw== + +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== + dependencies: + kind-of "^6.0.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== + dependencies: + ci-info "^2.0.0" + +is-core-module@^2.13.0: + version "2.13.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" + integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== + dependencies: + hasown "^2.0.0" + +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== + dependencies: + kind-of "^6.0.0" + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + +is-docker@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-generator-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== + +is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== + dependencies: + kind-of "^3.0.2" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-plain-object@^2.0.3, is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== + dependencies: + isobject "^3.0.1" + +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== + +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== + +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== + +is-typedarray@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== + +is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== + +is-wsl@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== + dependencies: + is-docker "^2.0.0" + +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== + +isarray@1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== + +istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" + integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== + +istanbul-lib-instrument@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" + integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== + dependencies: + "@babel/core" "^7.7.5" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.0.0" + semver "^6.3.0" + +istanbul-lib-instrument@^5.0.4: + version "5.2.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" + integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== + dependencies: + "@babel/core" "^7.12.3" + "@babel/parser" "^7.14.7" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.2.0" + semver "^6.3.0" + +istanbul-lib-report@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d" + integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw== + dependencies: + istanbul-lib-coverage "^3.0.0" + make-dir "^4.0.0" + supports-color "^7.1.0" + +istanbul-lib-source-maps@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== + dependencies: + debug "^4.1.1" + istanbul-lib-coverage "^3.0.0" + source-map "^0.6.1" + +istanbul-reports@^3.0.2: + version "3.1.6" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.6.tgz#2544bcab4768154281a2f0870471902704ccaa1a" + integrity sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg== + dependencies: + html-escaper "^2.0.0" + istanbul-lib-report "^3.0.0" + +jest-changed-files@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.6.2.tgz#f6198479e1cc66f22f9ae1e22acaa0b429c042d0" + integrity sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ== + dependencies: + "@jest/types" "^26.6.2" + execa "^4.0.0" + throat "^5.0.0" + +jest-cli@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.6.3.tgz#43117cfef24bc4cd691a174a8796a532e135e92a" + integrity sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg== + dependencies: + "@jest/core" "^26.6.3" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + import-local "^3.0.2" + is-ci "^2.0.0" + jest-config "^26.6.3" + jest-util "^26.6.2" + jest-validate "^26.6.2" + prompts "^2.0.1" + yargs "^15.4.1" + +jest-config@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.6.3.tgz#64f41444eef9eb03dc51d5c53b75c8c71f645349" + integrity sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg== + dependencies: + "@babel/core" "^7.1.0" + "@jest/test-sequencer" "^26.6.3" + "@jest/types" "^26.6.2" + babel-jest "^26.6.3" + chalk "^4.0.0" + deepmerge "^4.2.2" + glob "^7.1.1" + graceful-fs "^4.2.4" + jest-environment-jsdom "^26.6.2" + jest-environment-node "^26.6.2" + jest-get-type "^26.3.0" + jest-jasmine2 "^26.6.3" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + micromatch "^4.0.2" + pretty-format "^26.6.2" + +jest-diff@^25.2.1: + version "25.5.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-25.5.0.tgz#1dd26ed64f96667c068cef026b677dfa01afcfa9" + integrity sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A== + dependencies: + chalk "^3.0.0" + diff-sequences "^25.2.6" + jest-get-type "^25.2.6" + pretty-format "^25.5.0" + +jest-diff@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" + integrity sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA== + dependencies: + chalk "^4.0.0" + diff-sequences "^26.6.2" + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-docblock@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" + integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== + dependencies: + detect-newline "^3.0.0" + +jest-each@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.6.2.tgz#02526438a77a67401c8a6382dfe5999952c167cb" + integrity sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + jest-get-type "^26.3.0" + jest-util "^26.6.2" + pretty-format "^26.6.2" + +jest-environment-jsdom@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz#78d09fe9cf019a357009b9b7e1f101d23bd1da3e" + integrity sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + jsdom "^16.4.0" + +jest-environment-node@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.6.2.tgz#824e4c7fb4944646356f11ac75b229b0035f2b0c" + integrity sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + +jest-get-type@^25.2.6: + version "25.2.6" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-25.2.6.tgz#0b0a32fab8908b44d508be81681487dbabb8d877" + integrity sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig== + +jest-get-type@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" + integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== + +jest-haste-map@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" + integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== + dependencies: + "@jest/types" "^26.6.2" + "@types/graceful-fs" "^4.1.2" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.4" + jest-regex-util "^26.0.0" + jest-serializer "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + micromatch "^4.0.2" + sane "^4.0.3" + walker "^1.0.7" + optionalDependencies: + fsevents "^2.1.2" + +jest-jasmine2@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz#adc3cf915deacb5212c93b9f3547cd12958f2edd" + integrity sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg== + dependencies: + "@babel/traverse" "^7.1.0" + "@jest/environment" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + expect "^26.6.2" + is-generator-fn "^2.0.0" + jest-each "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + pretty-format "^26.6.2" + throat "^5.0.0" + +jest-leak-detector@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz#7717cf118b92238f2eba65054c8a0c9c653a91af" + integrity sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg== + dependencies: + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-matcher-utils@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz#8e6fd6e863c8b2d31ac6472eeb237bc595e53e7a" + integrity sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw== + dependencies: + chalk "^4.0.0" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-message-util@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.6.2.tgz#58173744ad6fc0506b5d21150b9be56ef001ca07" + integrity sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA== + dependencies: + "@babel/code-frame" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.4" + micromatch "^4.0.2" + pretty-format "^26.6.2" + slash "^3.0.0" + stack-utils "^2.0.2" + +jest-mock@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.6.2.tgz#d6cb712b041ed47fe0d9b6fc3474bc6543feb302" + integrity sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + +jest-pnp-resolver@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" + integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== + +jest-regex-util@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" + integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== + +jest-resolve-dependencies@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz#6680859ee5d22ee5dcd961fe4871f59f4c784fb6" + integrity sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg== + dependencies: + "@jest/types" "^26.6.2" + jest-regex-util "^26.0.0" + jest-snapshot "^26.6.2" + +jest-resolve@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.6.2.tgz#a3ab1517217f469b504f1b56603c5bb541fbb507" + integrity sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + jest-pnp-resolver "^1.2.2" + jest-util "^26.6.2" + read-pkg-up "^7.0.1" + resolve "^1.18.1" + slash "^3.0.0" + +jest-runner@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.6.3.tgz#2d1fed3d46e10f233fd1dbd3bfaa3fe8924be159" + integrity sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + emittery "^0.7.1" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-docblock "^26.0.0" + jest-haste-map "^26.6.2" + jest-leak-detector "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + jest-runtime "^26.6.3" + jest-util "^26.6.2" + jest-worker "^26.6.2" + source-map-support "^0.5.6" + throat "^5.0.0" + +jest-runtime@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.6.3.tgz#4f64efbcfac398331b74b4b3c82d27d401b8fa2b" + integrity sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/globals" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + cjs-module-lexer "^0.6.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.3" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + slash "^3.0.0" + strip-bom "^4.0.0" + yargs "^15.4.1" + +jest-serializer@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" + integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.4" + +jest-snapshot@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.6.2.tgz#f3b0af1acb223316850bd14e1beea9837fb39c84" + integrity sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og== + dependencies: + "@babel/types" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/babel__traverse" "^7.0.4" + "@types/prettier" "^2.0.0" + chalk "^4.0.0" + expect "^26.6.2" + graceful-fs "^4.2.4" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + jest-haste-map "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + natural-compare "^1.4.0" + pretty-format "^26.6.2" + semver "^7.3.2" + +jest-util@^26.1.0, jest-util@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" + integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + graceful-fs "^4.2.4" + is-ci "^2.0.0" + micromatch "^4.0.2" + +jest-validate@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" + integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== + dependencies: + "@jest/types" "^26.6.2" + camelcase "^6.0.0" + chalk "^4.0.0" + jest-get-type "^26.3.0" + leven "^3.1.0" + pretty-format "^26.6.2" + +jest-watcher@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.6.2.tgz#a5b683b8f9d68dbcb1d7dae32172d2cca0592975" + integrity sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ== + dependencies: + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + jest-util "^26.6.2" + string-length "^4.0.1" + +jest-worker@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" + integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^7.0.0" + +jest@26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest/-/jest-26.6.3.tgz#40e8fdbe48f00dfa1f0ce8121ca74b88ac9148ef" + integrity sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q== + dependencies: + "@jest/core" "^26.6.3" + import-local "^3.0.2" + jest-cli "^26.6.3" + +js-sha3@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@^3.13.1: + version "3.14.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + +jsdom@^16.4.0: + version "16.7.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" + integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== + dependencies: + abab "^2.0.5" + acorn "^8.2.4" + acorn-globals "^6.0.0" + cssom "^0.4.4" + cssstyle "^2.3.0" + data-urls "^2.0.0" + decimal.js "^10.2.1" + domexception "^2.0.1" + escodegen "^2.0.0" + form-data "^3.0.0" + html-encoding-sniffer "^2.0.1" + http-proxy-agent "^4.0.1" + 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 "^2.0.0" + webidl-conversions "^6.1.0" + whatwg-encoding "^1.0.5" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.5.0" + ws "^7.4.6" + xml-name-validator "^3.0.0" + +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== + +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" + integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== + +json5@2.x, json5@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== + +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonschema@1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/jsonschema/-/jsonschema-1.4.0.tgz#1afa34c4bc22190d8e42271ec17ac8b3404f87b2" + integrity sha512-/YgW6pRMr6M7C+4o8kS+B/2myEpHCrxO4PEWnqJNBFMjn7EWXqlQ4tGwL6xTHeRplwuZmcAncdvfOad1nT2yMw== + +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== + +kind-of@^6.0.0, kind-of@^6.0.2: + version "6.0.3" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== + +kleur@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== + +lcid@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-3.1.1.tgz#9030ec479a058fc36b5e8243ebaac8b6ac582fd0" + integrity sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg== + dependencies: + invert-kv "^3.0.0" + +leven@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== + +lines-and-columns@^1.1.6: + version "1.2.4" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== + +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + +lodash.merge@4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash@4.x, lodash@^4.7.0: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +make-dir@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e" + integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw== + dependencies: + semver "^7.5.3" + +make-error@1.x: + version "1.3.6" + resolved "https://registry.yarnpkg.com/make-error/-/make-error-1.3.6.tgz#2eb2e37ea9b67c4891f684a1394799af484cf7a2" + integrity sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw== + +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== + dependencies: + tmpl "1.0.5" + +map-age-cleaner@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== + dependencies: + p-defer "^1.0.0" + +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== + dependencies: + object-visit "^1.0.0" + +mem@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/mem/-/mem-5.1.1.tgz#7059b67bf9ac2c924c9f1cff7155a064394adfb3" + integrity sha512-qvwipnozMohxLXG1pOqoLiZKNkC4r4qqRucSoDwXowsNGDSULiqFTRUF05vcZWnwJSG22qTsynQhxbaMtnX9gw== + dependencies: + map-age-cleaner "^0.1.3" + mimic-fn "^2.1.0" + p-is-promise "^2.1.0" + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +micromatch@^3.1.4: + version "3.1.10" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.2" + +micromatch@^4.0.2: + version "4.0.5" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== + dependencies: + braces "^3.0.2" + picomatch "^2.3.1" + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@^2.1.12: + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimist@^1.1.1, minimist@^1.2.0: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +mixin-deep@^1.2.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + +mkdirp@1.x, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +multibase@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.7.0.tgz#1adfc1c50abe05eefeb5091ac0c2728d6b84581b" + integrity sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg== + dependencies: + base-x "^3.0.8" + buffer "^5.5.0" + +multibase@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.6.1.tgz#b76df6298536cc17b9f6a6db53ec88f85f8cc12b" + integrity sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw== + dependencies: + base-x "^3.0.8" + buffer "^5.5.0" + +multicodec@^0.5.5: + version "0.5.7" + resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.5.7.tgz#1fb3f9dd866a10a55d226e194abba2dcc1ee9ffd" + integrity sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA== + dependencies: + varint "^5.0.0" + +multicodec@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-1.0.4.tgz#46ac064657c40380c28367c90304d8ed175a714f" + integrity sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg== + dependencies: + buffer "^5.6.0" + varint "^5.0.0" + +multihashes@^0.4.15, multihashes@~0.4.15: + version "0.4.21" + resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.4.21.tgz#dc02d525579f334a7909ade8a122dabb58ccfcb5" + integrity sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw== + dependencies: + buffer "^5.5.0" + multibase "^0.7.0" + varint "^5.0.0" + +mustache@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.0.1.tgz#d99beb031701ad433338e7ea65e0489416c854a2" + integrity sha512-yL5VE97+OXn4+Er3THSmTdCFCtx5hHWzrolvH+JObZnUYwuaG7XV+Ch4fR2cIrcYI0tFHxS7iyFYl14bW8y2sA== + +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + +node-int64@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== + +node-notifier@^8.0.0: + version "8.0.2" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-8.0.2.tgz#f3167a38ef0d2c8a866a83e318c1ba0efeb702c5" + integrity sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg== + dependencies: + growly "^1.3.0" + is-wsl "^2.2.0" + semver "^7.3.2" + shellwords "^0.1.1" + uuid "^8.3.0" + which "^2.0.2" + +node-releases@^2.0.13: + version "2.0.13" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" + integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== + +noms@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/noms/-/noms-0.0.0.tgz#da8ebd9f3af9d6760919b27d9cdc8092a7332859" + integrity sha512-lNDU9VJaOPxUmXcLb+HQFeUgQQPtMI24Gt6hgfuMHRJgMRHMF/qZ4HJD3GDru4sSw9IQl2jPjAYnQrdIeLbwow== + dependencies: + inherits "^2.0.1" + readable-stream "~1.0.31" + +normalize-package-data@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== + dependencies: + path-key "^2.0.0" + +npm-run-path@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" + +nwsapi@^2.2.0: + version "2.2.7" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.7.tgz#738e0707d3128cb750dddcfe90e4610482df0f30" + integrity sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ== + +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== + dependencies: + isobject "^3.0.0" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== + dependencies: + isobject "^3.0.1" + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +onetime@^5.1.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +os-locale@5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-5.0.0.tgz#6d26c1d95b6597c5d5317bf5fba37eccec3672e0" + integrity sha512-tqZcNEDAIZKBEPnHPlVDvKrp7NzgLi7jRmhKiUoa2NUmhl13FtkAGLUVR+ZsYvApBQdBfYm43A4tXXQ4IrYLBA== + dependencies: + execa "^4.0.0" + lcid "^3.0.0" + mem "^5.0.0" + +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw== + +p-each-series@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a" + integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA== + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== + +p-is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" + integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== + +p-limit@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +parse-json@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.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== + +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== + +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== + +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +pend@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +pirates@^4.0.1: + version "4.0.6" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" + integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== + +pkg-dir@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + +polywrap@0.12.1: version "0.12.1" - resolved "https://registry.yarnpkg.com/@polywrap/templates/-/templates-0.12.1.tgz#df07423b8d6e7f5e37741cf03c24153c9690011a" - integrity sha512-+KSlXssRWUc8G/EUtn8kk7e6mYphFfJsYNahVABdnZ8JtQFE6D1Kaz1xFas50Wg1xvWx6eQrbvxCa/lN+6QRDw== + resolved "https://registry.yarnpkg.com/polywrap/-/polywrap-0.12.1.tgz#bb56ed25934e845b685455803edf7a9c41b7e6fb" + integrity sha512-jZ/qd4mW0zXF57wZIJ3Whow8AyyUp/COdHZmDR/yKdw8q8fJQJm8/Nq4yZ8A09amYHMYlDQhJV2hSvsuJwhW8w== + dependencies: + "@apidevtools/json-schema-ref-parser" "9.0.9" + "@ethersproject/providers" "5.6.8" + "@ethersproject/wallet" "5.6.2" + "@formatjs/intl" "1.8.2" + "@polywrap/asyncify-js" "~0.12.0" + "@polywrap/client-config-builder-js" "~0.12.0" + "@polywrap/client-js" "~0.12.0" + "@polywrap/core-js" "~0.12.0" + "@polywrap/ethereum-wallet-js" "~0.1.0" + "@polywrap/logging-js" "0.12.1" + "@polywrap/os-js" "0.12.1" + "@polywrap/polywrap-manifest-types-js" "0.12.1" + "@polywrap/result" "~0.12.0" + "@polywrap/schema-bind" "0.12.1" + "@polywrap/schema-compose" "0.12.1" + "@polywrap/schema-parse" "0.12.1" + "@polywrap/sys-config-bundle-js" "~0.12.0" + "@polywrap/uri-resolver-extensions-js" "~0.12.0" + "@polywrap/uri-resolvers-js" "~0.12.0" + "@polywrap/wasm-js" "~0.12.0" + "@polywrap/web3-config-bundle-js" "~0.12.0" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + axios "0.21.2" + chalk "4.1.0" + chokidar "3.5.1" + commander "9.2.0" + content-hash "2.5.2" + copyfiles "2.4.1" + docker-compose "0.23.17" + extract-zip "2.0.1" + form-data "4.0.0" + fs-extra "9.0.1" + json-schema "0.4.0" + jsonschema "1.4.0" + mustache "4.0.1" + os-locale "5.0.0" + regex-parser "2.2.11" + rimraf "3.0.2" + toml "3.0.0" + typescript "4.9.5" + yaml "2.2.2" + yesno "0.4.0" + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== + +pretty-format@^25.2.1, pretty-format@^25.5.0: + version "25.5.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.5.0.tgz#7873c1d774f682c34b8d48b6743a2bf2ac55791a" + integrity sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ== + dependencies: + "@jest/types" "^25.5.0" + ansi-regex "^5.0.0" + ansi-styles "^4.0.0" + react-is "^16.12.0" + +pretty-format@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" + integrity sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg== + dependencies: + "@jest/types" "^26.6.2" + ansi-regex "^5.0.0" + ansi-styles "^4.0.0" + react-is "^17.0.1" + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +prompts@^2.0.1: + version "2.4.2" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== + dependencies: + kleur "^3.0.3" + sisteransi "^1.0.5" + +psl@^1.1.33: + version "1.9.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" + integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +punycode@^2.1.0, punycode@^2.1.1: + version "2.3.0" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" + integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== + +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== + +react-is@^16.12.0: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react-is@^17.0.1: + version "17.0.2" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" + integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== + +read-pkg-up@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" + integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== + dependencies: + find-up "^4.1.0" + read-pkg "^5.2.0" + type-fest "^0.8.1" + +read-pkg@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== + dependencies: + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" + +readable-stream@~1.0.31: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + integrity sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@~2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + 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.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" + integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== + dependencies: + picomatch "^2.2.1" + +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + +regex-parser@2.2.11: + version "2.2.11" + resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58" + integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q== + +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== + +repeat-element@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" + integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== + +repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + +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== + +resolve-cwd@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== + dependencies: + resolve-from "^5.0.0" + +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== + +resolve@^1.10.0, resolve@^1.18.1: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== + +rimraf@3.0.2, rimraf@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +rsvp@^4.8.4: + version "4.8.5" + resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" + integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== + +safe-buffer@^5.0.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== + dependencies: + ret "~0.1.10" + +"safer-buffer@>= 2.1.2 < 3": + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sane@^4.0.3: + version "4.1.0" + resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" + integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== + dependencies: + "@cnakazawa/watch" "^1.0.3" + anymatch "^2.0.0" + capture-exit "^2.0.0" + exec-sh "^0.3.2" + execa "^1.0.0" + fb-watchman "^2.0.0" + micromatch "^3.1.4" + minimist "^1.1.1" + walker "~1.0.5" + +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" + +scrypt-js@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + +"semver@2 || 3 || 4 || 5", semver@^5.5.0: + version "5.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== + +semver@7.5.3: + version "7.5.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.3.tgz#161ce8c2c6b4b3bdca6caadc9fa3317a4c4fe88e" + integrity sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ== + dependencies: + lru-cache "^6.0.0" + +semver@7.x, semver@^7.3.2, semver@^7.5.3, semver@~7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + +semver@^6.3.0, semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + +set-blocking@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== + +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== + dependencies: + shebang-regex "^1.0.0" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +shellwords@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" + integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== + +signal-exit@^3.0.0, signal-exit@^3.0.2: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== + +sisteransi@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^3.1.0" + +source-map-resolve@^0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + +source-map-support@^0.5.6: + version "0.5.21" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-url@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + +source-map@^0.5.6: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== + +source-map@^0.6.0, source-map@^0.6.1, 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== + +source-map@^0.7.3: + version "0.7.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" + integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== + +spdx-correct@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" + integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.16" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz#a14f64e0954f6e25cc6587bd4f392522db0d998f" + integrity sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw== + +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== + dependencies: + extend-shallow "^3.0.0" + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== + +stack-utils@^2.0.2: + version "2.0.6" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" + integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== + dependencies: + escape-string-regexp "^2.0.0" + +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + +string-length@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== + dependencies: + char-regex "^1.0.2" + strip-ansi "^6.0.0" + +string-width@^4.1.0, string-width@^4.2.0: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-bom@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.0.0, supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-hyperlinks@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz#3943544347c1ff90b15effb03fc14ae45ec10624" + integrity sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA== + dependencies: + has-flag "^4.0.0" + supports-color "^7.0.0" + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +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== + +terminal-link@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" + integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== + dependencies: + ansi-escapes "^4.2.1" + supports-hyperlinks "^2.0.0" + +test-exclude@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== + dependencies: + "@istanbuljs/schema" "^0.1.2" + glob "^7.1.4" + minimatch "^3.0.4" + +throat@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" + integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== + +through2@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +tmpl@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" + integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== + +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== + +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + +toml@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/toml/-/toml-3.0.0.tgz#342160f1af1904ec9d204d03a5d61222d762c5ee" + integrity sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== + +tough-cookie@^4.0.0: + version "4.1.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" + integrity sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.2.0" + url-parse "^1.5.3" + +tr46@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" + integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== + dependencies: + punycode "^2.1.1" + +ts-jest@26.5.4: + version "26.5.4" + resolved "https://registry.yarnpkg.com/ts-jest/-/ts-jest-26.5.4.tgz#207f4c114812a9c6d5746dd4d1cdf899eafc9686" + integrity sha512-I5Qsddo+VTm94SukBJ4cPimOoFZsYTeElR2xy6H2TOVs+NsvgYglW8KuQgKoApOKuaU/Ix/vrF9ebFZlb5D2Pg== + dependencies: + bs-logger "0.x" + buffer-from "1.x" + fast-json-stable-stringify "2.x" + jest-util "^26.1.0" + json5 "2.x" + lodash "4.x" + make-error "1.x" + mkdirp "1.x" + semver "7.x" + yargs-parser "20.x" + +tslib@^2.1.0: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + +type-detect@4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + +type-fest@^0.21.3: + version "0.21.3" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== + +type-fest@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== + dependencies: + is-typedarray "^1.0.0" + +typescript@4.9.5: + version "4.9.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== + +undici-types@~5.25.1: + version "5.25.3" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.25.3.tgz#e044115914c85f0bcbb229f346ab739f064998c3" + integrity sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA== + +union-value@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + +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== + +universalify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" + integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== + +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== + +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +untildify@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" + integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== + +update-browserslist-db@^1.0.13: + version "1.0.13" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" + integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== + dependencies: + escalade "^3.1.1" + picocolors "^1.0.0" + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== + +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" + +use@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== + +util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +uuid@^8.3.0: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +v8-to-istanbul@^7.0.0: + version "7.1.2" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz#30898d1a7fa0c84d225a2c1434fb958f290883c1" + integrity sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^1.6.0" + source-map "^0.7.3" + +validate-npm-package-license@^3.0.1: + version "3.0.4" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +varint@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/varint/-/varint-5.0.2.tgz#5b47f8a947eb668b848e034dcfa87d0ff8a7f7a4" + integrity sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow== + +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@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" + integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== + dependencies: + xml-name-validator "^3.0.0" + +walker@^1.0.7, walker@~1.0.5: + version "1.0.8" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== + dependencies: + makeerror "1.0.12" + +webidl-conversions@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" + integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== + +webidl-conversions@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" + integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== + +whatwg-encoding@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" + integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== + dependencies: + iconv-lite "0.4.24" + +whatwg-mimetype@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" + integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== + +whatwg-url@^8.0.0, whatwg-url@^8.5.0: + version "8.7.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" + integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== + dependencies: + lodash "^4.7.0" + tr46 "^2.1.0" + webidl-conversions "^6.1.0" + +which-module@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" + integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== + +which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" + +which@^2.0.1, which@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +write-file-atomic@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + dependencies: + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + typedarray-to-buffer "^3.1.5" + +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + +ws@^7.4.6: + version "7.5.9" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" + integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== + +xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== + +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== + +xtend@~4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +y18n@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" + integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== + +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yaml@2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.2.2.tgz#ec551ef37326e6d42872dad1970300f8eb83a073" + integrity sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA== + +yaml@^1.10.2: + version "1.10.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + +yargs-parser@20.x, yargs-parser@^20.2.2: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs-parser@^18.1.2: + version "18.1.3" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs@^15.4.1: + version "15.4.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" + integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== + dependencies: + cliui "^6.0.0" + decamelize "^1.2.0" + find-up "^4.1.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^4.2.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^18.1.2" + +yargs@^16.1.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yauzl@^2.10.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" + integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== + dependencies: + buffer-crc32 "~0.2.3" + fd-slicer "~1.1.0" + +yesno@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/yesno/-/yesno-0.4.0.tgz#5d674f14d339f0bd4b0edc47f899612c74fcd895" + integrity sha512-tdBxmHvbXPBKYIg81bMCB7bVeDmHkRzk5rVJyYYXurwKkHq/MCd8rz4HSJUP7hW0H2NlXiq8IFiWvYKEHhlotA== diff --git a/snippets/create-wraps-tutorial/rust/yarn.lock b/snippets/create-wraps-tutorial/rust/yarn.lock index e864ad01..1d8cf266 100644 --- a/snippets/create-wraps-tutorial/rust/yarn.lock +++ b/snippets/create-wraps-tutorial/rust/yarn.lock @@ -2,7 +2,2062 @@ # yarn lockfile v1 -"@polywrap/templates@0.12.1": +"@apidevtools/json-schema-ref-parser@9.0.9": + version "9.0.9" + resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-9.0.9.tgz#d720f9256e3609621280584f2b47ae165359268b" + integrity sha512-GBD2Le9w2+lVFoc4vswGI/TjkNIZSVp7+9xPf+X3uidBfWnAeUWmquteSyt0+VCrhNMWj/FTABISQrD3Z/YA+w== + dependencies: + "@jsdevtools/ono" "^7.1.3" + "@types/json-schema" "^7.0.6" + call-me-maybe "^1.0.1" + js-yaml "^4.1.0" + +"@dorgjelli/graphql-schema-cycles@1.1.4": + version "1.1.4" + resolved "https://registry.yarnpkg.com/@dorgjelli/graphql-schema-cycles/-/graphql-schema-cycles-1.1.4.tgz#31f230c61f624f7c2ceca7e18fad8b2cb07d392f" + integrity sha512-U5ARitMQWKjOAvwn1+0Z52R9sbNe1wpbgAbj2hOfRFb/vupfPlRwZLbuUZAlotMpkoxbTbk+GRmoiNzGcJfyHw== + dependencies: + graphql "15.5.0" + graphql-json-transform "^1.1.0-alpha.0" + +"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" + integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/abstract-provider@5.7.0", "@ethersproject/abstract-provider@^5.6.1", "@ethersproject/abstract-provider@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef" + integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + +"@ethersproject/abstract-signer@5.7.0", "@ethersproject/abstract-signer@^5.6.2", "@ethersproject/abstract-signer@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2" + integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/address@5.7.0", "@ethersproject/address@^5.6.1", "@ethersproject/address@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37" + integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + +"@ethersproject/base64@5.7.0", "@ethersproject/base64@^5.6.1", "@ethersproject/base64@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c" + integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + +"@ethersproject/basex@5.7.0", "@ethersproject/basex@^5.6.1", "@ethersproject/basex@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b" + integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.6.2", "@ethersproject/bignumber@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2" + integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.6.1", "@ethersproject/bytes@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d" + integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.6.1", "@ethersproject/constants@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e" + integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + +"@ethersproject/contracts@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e" + integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + +"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.6.1", "@ethersproject/hash@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7" + integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/hdnode@5.7.0", "@ethersproject/hdnode@^5.6.2", "@ethersproject/hdnode@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf" + integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/json-wallets@5.7.0", "@ethersproject/json-wallets@^5.6.1", "@ethersproject/json-wallets@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360" + integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.6.1", "@ethersproject/keccak256@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a" + integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.6.0", "@ethersproject/logger@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892" + integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== + +"@ethersproject/networks@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.0.tgz#df72a392f1a63a57f87210515695a31a245845ad" + integrity sha512-MG6oHSQHd4ebvJrleEQQ4HhVu8Ichr0RDYEfHzsVAVjHNM+w36x9wp9r+hf1JstMXtseXDtkiVoARAG6M959AA== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/networks@^5.6.3", "@ethersproject/networks@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6" + integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/pbkdf2@5.7.0", "@ethersproject/pbkdf2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102" + integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + +"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.6.0", "@ethersproject/properties@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30" + integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/providers@5.6.8": + version "5.6.8" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.8.tgz#22e6c57be215ba5545d3a46cf759d265bb4e879d" + integrity sha512-Wf+CseT/iOJjrGtAOf3ck9zS7AgPmr2fZ3N97r4+YXN3mBePTG2/bJ8DApl9mVwYL+RpYbNxMEkEp4mPGdwG/w== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/base64" "^5.6.1" + "@ethersproject/basex" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.3" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/web" "^5.6.1" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/providers@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.0.tgz#a885cfc7650a64385e7b03ac86fe9c2d4a9c2c63" + integrity sha512-+TTrrINMzZ0aXtlwO/95uhAggKm4USLm1PbeCBR/3XZ7+Oey+3pMyddzZEyRhizHpy1HXV0FRWRMI1O3EGYibA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/random@5.7.0", "@ethersproject/random@^5.6.1", "@ethersproject/random@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c" + integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.6.1", "@ethersproject/rlp@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" + integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/sha2@5.7.0", "@ethersproject/sha2@^5.6.1", "@ethersproject/sha2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb" + integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.7.0", "@ethersproject/signing-key@^5.6.2", "@ethersproject/signing-key@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3" + integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/solidity@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8" + integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.6.1", "@ethersproject/strings@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2" + integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.6.2", "@ethersproject/transactions@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b" + integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + +"@ethersproject/units@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1" + integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/wallet@5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.6.2.tgz#cd61429d1e934681e413f4bc847a5f2f87e3a03c" + integrity sha512-lrgh0FDQPuOnHcF80Q3gHYsSUODp6aJLAdDmDV0xKCN/T7D99ta1jGVhulg3PY8wiXEngD0DfM0I2XKXlrqJfg== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/hdnode" "^5.6.2" + "@ethersproject/json-wallets" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/wordlists" "^5.6.1" + +"@ethersproject/wallet@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d" + integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/json-wallets" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/web@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.0.tgz#40850c05260edad8b54827923bbad23d96aac0bc" + integrity sha512-ApHcbbj+muRASVDSCl/tgxaH2LBkRMEYfLOLVa0COipx0+nlu0QKet7U2lEg0vdkh8XRSLf2nd1f1Uk9SrVSGA== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/web@^5.6.1", "@ethersproject/web@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae" + integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/wordlists@5.7.0", "@ethersproject/wordlists@^5.6.1", "@ethersproject/wordlists@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5" + integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@fetsorn/opentelemetry-console-exporter@0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@fetsorn/opentelemetry-console-exporter/-/opentelemetry-console-exporter-0.0.3.tgz#c137629fecc610c7667e68b528926e498e152c0b" + integrity sha512-+UDrzHANOPcp0+47xK7dqeKIlYSh5a5WpFaswzM9S2MnjQfP0zOysAunWFRb6CFYSj1hTeFotYYXr8tYbyBpoA== + +"@formatjs/ecma402-abstract@1.6.2": + version "1.6.2" + resolved "https://registry.yarnpkg.com/@formatjs/ecma402-abstract/-/ecma402-abstract-1.6.2.tgz#9d064a2cf790769aa6721e074fb5d5c357084bb9" + integrity sha512-aLBODrSRhHaL/0WdQ0T2UsGqRbdtRRHqqrs4zwNQoRsGBEtEAvlj/rgr6Uea4PSymVJrbZBoAyECM2Z3Pq4i0g== + dependencies: + tslib "^2.1.0" + +"@formatjs/intl-datetimeformat@3.2.12": + version "3.2.12" + resolved "https://registry.yarnpkg.com/@formatjs/intl-datetimeformat/-/intl-datetimeformat-3.2.12.tgz#c9b2e85f0267ee13ea615a8991995da3075e3b13" + integrity sha512-qvY5+dl3vlgH0iWRXwl8CG9UkSVB5uP2+HH//fyZZ01G4Ww5rxMJmia1SbUqatpoe/dX+Z+aLejCqUUyugyL2g== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-displaynames@4.0.10": + version "4.0.10" + resolved "https://registry.yarnpkg.com/@formatjs/intl-displaynames/-/intl-displaynames-4.0.10.tgz#5bbd1bbcd64a036b4be27798b650c864dcf4466a" + integrity sha512-KmYJQHynGnnMeqIWVXhbzCMcEC8lg1TfGVdcO9May6paDT+dksZoOBQc741t7iXi/YVO/wXEZdmXhUNX7ODZug== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-listformat@5.0.10": + version "5.0.10" + resolved "https://registry.yarnpkg.com/@formatjs/intl-listformat/-/intl-listformat-5.0.10.tgz#9f8c4ad5e8a925240e151ba794c41fba01f742cc" + integrity sha512-FLtrtBPfBoeteRlYcHvThYbSW2YdJTllR0xEnk6cr/6FRArbfPRYMzDpFYlESzb5g8bpQMKZy+kFQ6V2Z+5KaA== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-relativetimeformat@8.1.2": + version "8.1.2" + resolved "https://registry.yarnpkg.com/@formatjs/intl-relativetimeformat/-/intl-relativetimeformat-8.1.2.tgz#119f3dce97458991f86bf34a736880e4a7bc1697" + integrity sha512-LZUxbc9GHVGmDc4sqGAXugoxhvZV7EG2lG2c0aKERup2ixvmDMbbEN3iEEr5aKkP7YyGxXxgqDn2dwg7QCPR6Q== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl@1.8.2": + version "1.8.2" + resolved "https://registry.yarnpkg.com/@formatjs/intl/-/intl-1.8.2.tgz#6090e6c1826a92e70668dfe08b4ba30127ea3a85" + integrity sha512-9xHoNKPv4qQIQ5AVfpQbIPZanz50i7oMtZWrd6Fz7Q2GM/5uhBr9mrCrY1tz/+diP7uguKmhj1IweLYaxY3DTQ== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + "@formatjs/intl-datetimeformat" "3.2.12" + "@formatjs/intl-displaynames" "4.0.10" + "@formatjs/intl-listformat" "5.0.10" + "@formatjs/intl-relativetimeformat" "8.1.2" + fast-memoize "^2.5.2" + intl-messageformat "9.5.2" + intl-messageformat-parser "6.4.2" + tslib "^2.1.0" + +"@jsdevtools/ono@^7.1.3": + version "7.1.3" + resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" + integrity sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg== + +"@msgpack/msgpack@2.7.2": + version "2.7.2" + resolved "https://registry.yarnpkg.com/@msgpack/msgpack/-/msgpack-2.7.2.tgz#f34b8aa0c49f0dd55eb7eba577081299cbf3f90b" + integrity sha512-rYEi46+gIzufyYUAoHDnRzkWGxajpD9vVXFQ3g1vbjrBm6P7MBmm+s/fqPa46sxa+8FOUdEuRQKaugo5a4JWpw== + +"@opentelemetry/api-metrics@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api-metrics/-/api-metrics-0.32.0.tgz#0f09f78491a4b301ddf54a8b8a38ffa99981f645" + integrity sha512-g1WLhpG8B6iuDyZJFRGsR+JKyZ94m5LEmY2f+duEJ9Xb4XRlLHrZvh6G34OH6GJ8iDHxfHb/sWjJ1ZpkI9yGMQ== + dependencies: + "@opentelemetry/api" "^1.0.0" + +"@opentelemetry/api@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.2.0.tgz#89ef99401cde6208cff98760b67663726ef26686" + integrity sha512-0nBr+VZNKm9tvNDZFstI3Pq1fCTEDK5OZTnVKNvBNAKgd0yIvmwsP4m61rEv7ZP+tOUjWJhROpxK5MsnlF911g== + +"@opentelemetry/api@^1.0.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.6.0.tgz#de2c6823203d6f319511898bb5de7e70f5267e19" + integrity sha512-OWlrQAnWn9577PhVgqjUvMr1pg57Bc4jv0iL4w0PRuOSRvq67rvHW9Ie/dZVMvCzhSCB+UxhcY/PmCmFj33Q+g== + +"@opentelemetry/core@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.6.0.tgz#c55f8ab7496acef7dbd8c4eedef6a4d4a0143c95" + integrity sha512-MsEhsyCTfYme6frK8/AqEWwbS9SB3Ta5bjgz4jPQJjL7ijUM3JiLVvqh/kHo1UlUjbUbLmGG7jA5Nw4d7SMcLQ== + dependencies: + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/exporter-trace-otlp-http@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.32.0.tgz#55773290a221855c4e8c422e8fb5e7ff4aa5f04e" + integrity sha512-8n44NDoEFoYG3mMToZxNyUKkHSGfzSShw6I2V5FApcH7rid20LmKiNuzc7lACneDIZBld+GGpLRuFhWniW8JhA== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/otlp-exporter-base" "0.32.0" + "@opentelemetry/otlp-transformer" "0.32.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + +"@opentelemetry/otlp-exporter-base@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.32.0.tgz#37dde162835a8fd23fa040f07e2938deb335fc4b" + integrity sha512-Dscxu4VNKrkD1SwGKdc7bAtLViGFJC8ah6Dr/vZn22NFHXSa53lSzDdTKeSTNNWH9sCGu/65LS45VMd4PsRvwQ== + dependencies: + "@opentelemetry/core" "1.6.0" + +"@opentelemetry/otlp-transformer@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-transformer/-/otlp-transformer-0.32.0.tgz#652c8f4c56c95f7d7ec39e20573b885d27ca13f1" + integrity sha512-PFAqfKgJpTOZryPe1UMm7R578PLxsK0wCAuKSt6m8v1bN/4DO8DX4HD7k3mYGZVU5jNg8tVZSwyIpY6ryrHDMQ== + dependencies: + "@opentelemetry/api-metrics" "0.32.0" + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-metrics" "0.32.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + +"@opentelemetry/resources@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.6.0.tgz#9756894131b9b0dfbcc0cecb5d4bd040d9c1b09d" + integrity sha512-07GlHuq72r2rnJugYVdGumviQvfrl8kEPidkZSVoseLVfIjV7nzxxt5/vqs9pK7JItWOrvjRdr/jTBVayFBr/w== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/sdk-metrics@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-metrics/-/sdk-metrics-0.32.0.tgz#463cd3a2b267f044db9aaab85887a171710345a0" + integrity sha512-zC9RCOIsXRqOHWmWfcxArtDHbip2/jaIH1yu/OKau/shDZYFluAxY6zAEYIb4YEAzKKEF+fpaoRgpodDWNGVGA== + dependencies: + "@opentelemetry/api-metrics" "0.32.0" + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + lodash.merge "4.6.2" + +"@opentelemetry/sdk-trace-base@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.6.0.tgz#8b1511c0b0f3e6015e345f5ed4a683adf03e3e3c" + integrity sha512-yx/uuzHdT0QNRSEbCgXHc0GONk90uvaFcPGaNowIFSl85rTp4or4uIIMkG7R8ckj8xWjDSjsaztH6yQxoZrl5g== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/sdk-trace-web@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.6.0.tgz#ef243e3e1102b53bc0afa93c29c18fc7e2f66e52" + integrity sha512-iOgmygvooaZm4Vi6mh5FM7ubj/e+MqDn8cDPCNfk6V8Q2yWj0co8HKWPFo0RoxSLYyPaFnEEXOXWWuE4OTwLKw== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/semantic-conventions@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.6.0.tgz#ed410c9eb0070491cff9fe914246ce41f88d6f74" + integrity sha512-aPfcBeLErM/PPiAuAbNFLN5sNbZLc3KZlar27uohllN8Zs6jJbHyJU1y7cMA6W/zuq+thkaG8mujiS+3iD/FWQ== + +"@polywrap/asyncify-js@0.12.2", "@polywrap/asyncify-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/asyncify-js/-/asyncify-js-0.12.2.tgz#e5b264bb38f7108beb1b83c43fa6c0ce3459f7a3" + integrity sha512-1dj/D0O4KosIw6q+4xKSu9w5Vry6zb3T5YgIBgBHuPvp3+146YUsuY1DFNFOKVs5XFfiilp10kkDpNIr4bi6mQ== + +"@polywrap/client-config-builder-js@0.12.2", "@polywrap/client-config-builder-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/client-config-builder-js/-/client-config-builder-js-0.12.2.tgz#b1c1be1e17bdc43b36df96517460c4860b395aad" + integrity sha512-N09BTlspeLIahvDeMKBqRtSiWLAUj5RH4aExLy3CiRW1Hdq+Xpt7evxjImK+ugnAFOM3c2L8LK63qou600sRgw== + dependencies: + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/plugin-js" "0.12.2" + "@polywrap/sys-config-bundle-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + "@polywrap/web3-config-bundle-js" "0.12.2" + +"@polywrap/client-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/client-js/-/client-js-0.12.2.tgz#eb6b80c8ae35483c7dd0e773be79aa78e0a232ca" + integrity sha512-loEkFWEnXOxYwfnC61aZRYo+YGPbsIcFg+UO64lIIRKCTb6bpzueLy97RWGVf1YF0tDtomhwwCY+QNST2gy06Q== + dependencies: + "@polywrap/client-config-builder-js" "0.12.2" + "@polywrap/core-client-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/plugin-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/concurrent-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/concurrent-plugin-js/-/concurrent-plugin-js-0.12.0.tgz#b3aba6a99cb2531b5333918d780f82a506e344d1" + integrity sha512-Y7rq3MnXbi/sshbIs8lFZOUppXiscJLRqUo1qMYYZrHjDFTzs1c0bTHImxEEpygtnHLZnZ3ZaUvynzipLiL+Jw== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/msgpack-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/config-bundle-types-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/config-bundle-types-js/-/config-bundle-types-js-0.12.2.tgz#00e40cf882001be1ae82493052da19dac02708f3" + integrity sha512-ZRa3EOh5i/Gq/7HDS1IG5FJcBXx31XFeHAjrwKPU23x5eSVux3gIoFzgg3zv4CzQtDizUv+ds76LGKn6vFWX/A== + dependencies: + "@polywrap/core-js" "0.12.2" + +"@polywrap/core-client-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/core-client-js/-/core-client-js-0.12.2.tgz#88f2013a50b56979bc6145098b05b6a7725bb1f1" + integrity sha512-7sN3KErSun7V0pWOfI0AhKqsC1zf7njRaYM2EMeGYqXoHm9P2OteNPA2j9qn1FYPQHHZI/MQaVrCDAHaCeXuJg== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/core-js@0.12.2", "@polywrap/core-js@~0.12.0", "@polywrap/core-js@~0.12.0-pre.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/core-js/-/core-js-0.12.2.tgz#b85f0314a30696db7ef265bfb89b4f25c194d900" + integrity sha512-AezoxK1YX+qJl06opUeAyjBfA+LIEHDPMoZZWeI+pyQHhuDUHyLv4xh4uzXELNnzfLo0Ap39qKAQ5u2HAs1DJA== + dependencies: + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/datetime-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/datetime-plugin-js/-/datetime-plugin-js-0.12.0.tgz#d04daf01c060e664ddbeea3d72a530a0b6d709fc" + integrity sha512-iDMa+250UxtJYD/I7eG3aRUrf73g8OgnhO9CrIaSEbsi/X3eKVfXIQPXSowqXSLhwG6LceDc/zn19uEPXZSvUg== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/ethereum-wallet-js@~0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@polywrap/ethereum-wallet-js/-/ethereum-wallet-js-0.1.0.tgz#1af5800aab3c4cedfcd1e4e5e305d5d5ef733bea" + integrity sha512-GTg4X0gyFHXNAHSDxe6QfiWJv8z/pwobnVyKw4rcmBLw7tqcTiYXk4kU0QfWV3JLV/8rvzESl+FtXPC68dUMIA== + dependencies: + "@ethersproject/address" "5.7.0" + "@ethersproject/providers" "5.7.0" + "@polywrap/core-js" "~0.12.0-pre.0" + "@polywrap/plugin-js" "~0.12.0-pre.0" + ethers "5.7.0" + +"@polywrap/file-system-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/file-system-plugin-js/-/file-system-plugin-js-0.12.0.tgz#0d88113e629d51173db0b30c34c296aeb8b23eea" + integrity sha512-hv6BCjnMwE3/CG5lBpucKKpcCE7DyLhshbv+KRSgz1sftI9CalogJbP6irkySgV7dDpMnQf1iZGTntv8HLwFOw== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/http-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/http-plugin-js/-/http-plugin-js-0.12.0.tgz#f297e192bbca16f81bbdf16dbc16a7664c93def5" + integrity sha512-DVXfRdF72ozLBXPQFAWEiz72gCF6wSw/H8q53DxeOXh3gKQ5zBpes5INEMpBpA9vzhqS73Y3KyMHTCrrXecv0w== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + axios "0.21.4" + form-data "4.0.0" + +"@polywrap/logger-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/logger-plugin-js/-/logger-plugin-js-0.12.0.tgz#e724bb5504336e4fbf1f0f9757cfe893f9bd5297" + integrity sha512-M6TXUSBTFRWLsTaT3gfNlqCRvrpgg60klD7g3zzEKeklkwy19TbcrkW2CVxfr0HZwiL1TVUuLBdDJc1sqE0A8g== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/logging-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/logging-js/-/logging-js-0.12.1.tgz#2d52e3f5e9d32cf5463222fcc1b00d4f98aacacd" + integrity sha512-yAGFhXIdgabITlZptyGLOaSjor88R98nV6Kzxqsl6sVxHKZOEf5Xj4MtlXYFaeh8ha6x8BUkZLNv5s3SlW5ttw== + +"@polywrap/msgpack-js@0.12.2", "@polywrap/msgpack-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/msgpack-js/-/msgpack-js-0.12.2.tgz#27562f98a60e82b55f7d9147bc13feb346cf47de" + integrity sha512-FsdHLRFRSfjh+O6zsjX3G2VCBJQDswnKGQKtp8IckPe0PJ0gpu9NPEvCFS4FfbF+Kmw+A7tUDrZ2I4wsuZsb9g== + dependencies: + "@msgpack/msgpack" "2.7.2" + +"@polywrap/os-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/os-js/-/os-js-0.12.1.tgz#0f8f06199e3b21331a4cbee5b7b86e147c26129f" + integrity sha512-vYsGpCHMhxPAUzbxsik0lTupHuUVwkrxojjLZL89N8yP67mhB9gTJeAYgDKXBTOo9E5bVFL07gDdaiDY+icfAQ== + +"@polywrap/plugin-js@0.12.2", "@polywrap/plugin-js@~0.12.0", "@polywrap/plugin-js@~0.12.0-pre.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/plugin-js/-/plugin-js-0.12.2.tgz#aca362a9992ac8ab619f171c08e876524ad35dac" + integrity sha512-8mJy5Dk1Np+cPoXKMWNuazxd2oMv/UKCOPFX0Sam3BqE9BtPbjXRUVG55vOtD6x+Ozhe3QIr83qXsfNOxNvLGw== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/polywrap-manifest-schemas@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/polywrap-manifest-schemas/-/polywrap-manifest-schemas-0.12.1.tgz#ebca3d6f1039fb8bdd6c31164f00ea861f49ce2c" + integrity sha512-5sHO6jL8QPoqXXDj2wb/pqRmKjZ0VxxDYaugRN2qeICHTF3rFU4aqs1y/qyJw3FGNFTLGDkLlPqnYDk8EZB5xQ== + +"@polywrap/polywrap-manifest-types-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/polywrap-manifest-types-js/-/polywrap-manifest-types-js-0.12.1.tgz#6884ce7c72981c2e73750fc4e706162bdcc560f4" + integrity sha512-fUsrZ1D5U9j+E56EB98ZHx1/xHflPXXizY7vNvxDRkzjhkCvlwEY61MfcNNWzakjyq1Fb7kwzxxZIp8XJZFoXw== + dependencies: + "@polywrap/logging-js" "0.12.1" + "@polywrap/polywrap-manifest-schemas" "0.12.1" + jsonschema "1.4.0" + semver "7.5.3" + yaml "2.2.2" + +"@polywrap/result@0.12.2", "@polywrap/result@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/result/-/result-0.12.2.tgz#99ad60da087db4dd2ad760ba1bd27a752d4af45f" + integrity sha512-gcRUsWz3Qyd7CxWqrTTj1NCl2h74yI2lgqMlUfCn4TVdBmRqbyTe5iP+g+R/qs0qO0Ud8Sx0GAfbSuZfzClJ2g== + +"@polywrap/schema-bind@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-bind/-/schema-bind-0.12.1.tgz#a7faa9681f468d9731c08399f4f121b2e76cbc8a" + integrity sha512-5VFpEoHW5Q2qnlXtt5PZs5NFWjYV00GDiQH3n25JaDK7vkTsf4rn4DZ5UlM/iKW6FLw6PpMUPquXapPtj9W3+w== + dependencies: + "@polywrap/client-js" "~0.12.0" + "@polywrap/os-js" "0.12.1" + "@polywrap/schema-parse" "0.12.1" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + mustache "4.0.1" + +"@polywrap/schema-compose@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-compose/-/schema-compose-0.12.1.tgz#7b6955522e47bbc066a30dcdf03d47263a2945e3" + integrity sha512-ie1fPOEW2FtZv/NDydFpolEoGLZfb34TND38LxiVkfe+Wnyp7aOKR0lq1cvP1g+9POZPv5TzL3Gb/jb+54Z2EQ== + dependencies: + "@polywrap/schema-parse" "0.12.1" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + graphql "15.5.0" + mustache "4.0.1" + +"@polywrap/schema-parse@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-parse/-/schema-parse-0.12.1.tgz#2764ad088537775cf9caccf7157b538d77a74f83" + integrity sha512-wCiGM2G5c/9+6mAXD3KTFi+avvReWV2PpfWqfH3bB1u7uun99Ed2yeXXj6034I+YqIZyVIR34nZq9YAm0Fn0Lw== + dependencies: + "@dorgjelli/graphql-schema-cycles" "1.1.4" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + graphql "15.5.0" + +"@polywrap/sys-config-bundle-js@0.12.2", "@polywrap/sys-config-bundle-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/sys-config-bundle-js/-/sys-config-bundle-js-0.12.2.tgz#6ad6f0d2f31c6668e7642801c0adcab22a4f654e" + integrity sha512-w6zewNacyXPO/LjmSyHqlkbtT8kq2BR0ydZTU1oO0SaeL08ua7FLe2H6v01vgqOCwHuwV2xsW0Y/neHHZx/cYw== + dependencies: + "@polywrap/concurrent-plugin-js" "~0.12.0" + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/datetime-plugin-js" "~0.12.0" + "@polywrap/file-system-plugin-js" "~0.12.0" + "@polywrap/http-plugin-js" "~0.12.0" + "@polywrap/logger-plugin-js" "~0.12.0" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + base64-to-uint8array "1.0.0" + +"@polywrap/tracing-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/tracing-js/-/tracing-js-0.12.2.tgz#549e54af500c4ba3384107853db453cd14cc7960" + integrity sha512-nApKdEPvfWijCoyDuq6ib6rgo7iWJH09Nf8lF1dTBafj59C3dR7aqyOO4NH8znZAO1poeiG6rPqsrnLYGM9CMA== + dependencies: + "@fetsorn/opentelemetry-console-exporter" "0.0.3" + "@opentelemetry/api" "1.2.0" + "@opentelemetry/exporter-trace-otlp-http" "0.32.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + "@opentelemetry/sdk-trace-web" "1.6.0" + +"@polywrap/uri-resolver-extensions-js@0.12.2", "@polywrap/uri-resolver-extensions-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.12.2.tgz#b8b2a3714f8bf36da3cd8d560b0f77af1e54b2ea" + integrity sha512-WA1ythVxqviaQWPHmWVegeeXEstq/+WDWF3Xdkm1Hbrlb10rPSzL7iq4IH8Mz2jFfjtA5YTQoK+xtw55koWH5w== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/uri-resolvers-js@0.12.2", "@polywrap/uri-resolvers-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/uri-resolvers-js/-/uri-resolvers-js-0.12.2.tgz#8c2393a56ae12445be171b8d8feeb803b114c32b" + integrity sha512-5J3unEYxEMMSI+2lHVs5SmvpSyAbDie7ZJgt2djL64+nOjisY8hBI/TBd2mCgrHy3fziE7DCZhA+d70ChtLCBg== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/wasm-js@0.12.2", "@polywrap/wasm-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/wasm-js/-/wasm-js-0.12.2.tgz#c807d296b66c1fe12bd80ce482eb7aa4e14f08ec" + integrity sha512-x3Buycm0ZLSPL8nP+QlySwvrZPH30kyuYbl170oNCiwf4Hllv10/Dn8xSR2WAV583ZD4tI/xIYzz04NVdXABKQ== + dependencies: + "@polywrap/asyncify-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/web3-config-bundle-js@0.12.2", "@polywrap/web3-config-bundle-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/web3-config-bundle-js/-/web3-config-bundle-js-0.12.2.tgz#87cd4b523a2df4f0debfa45e0b9c18c3116e9931" + integrity sha512-sY2cFw8TBXrIxXI8U50cSBwTzudsVVMztieA0hMIBw6XkEmFLGncn7RMnNJ5SBU8Cs+RFbwi9KATgNWQi5GKrQ== + dependencies: + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/ethereum-wallet-js" "~0.1.0" + "@polywrap/sys-config-bundle-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + base64-to-uint8array "1.0.0" + +"@polywrap/wrap-manifest-types-js@0.12.2", "@polywrap/wrap-manifest-types-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/wrap-manifest-types-js/-/wrap-manifest-types-js-0.12.2.tgz#c27f5f320b53de6744cfc2344bb90a1e6ff9e8d6" + integrity sha512-YlOCK1V0fFitunWvsRrQFiQMPETARLMd/d/iCeubkUzIh4TUr2gEtHbc8n2C9FYUFa4zLcY84mKfdDSyTf49jw== + dependencies: + "@polywrap/msgpack-js" "0.12.2" + ajv "8.12.0" + semver "~7.5.4" + +"@types/json-schema@^7.0.6": + version "7.0.14" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.14.tgz#74a97a5573980802f32c8e47b663530ab3b6b7d1" + integrity sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw== + +"@types/node@*": + version "20.8.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.8.8.tgz#adee050b422061ad5255fc38ff71b2bb96ea2a0e" + integrity sha512-YRsdVxq6OaLfmR9Hy816IMp33xOBjfyOgUd77ehqg96CFywxAPbDbXvAsuN2KVg2HOT8Eh6uAfU+l4WffwPVrQ== + dependencies: + undici-types "~5.25.1" + +"@types/yauzl@^2.9.1": + version "2.10.2" + resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.10.2.tgz#dab926ef9b41a898bc943f11bca6b0bad6d4b729" + integrity sha512-Km7XAtUIduROw7QPgvcft0lIupeG8a8rdKL8RiSyKvlE7dYY31fEn41HVuQsRFDuROA8tA4K2UVL+WdfFmErBA== + dependencies: + "@types/node" "*" + +aes-js@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" + integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== + +ajv@8.12.0: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +anymatch@~3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +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== + +at-least-node@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" + integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== + +axios@0.21.2: + version "0.21.2" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.2.tgz#21297d5084b2aeeb422f5d38e7be4fbb82239017" + integrity sha512-87otirqUw3e8CzHTMO+/9kh/FSgXt/eVDvipijwDtEuwbkySWZ9SBm6VEubmJ/kLKEoLQV/POhxXFb66bfekfg== + dependencies: + follow-redirects "^1.14.0" + +axios@0.21.4: + version "0.21.4" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" + integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== + dependencies: + follow-redirects "^1.14.0" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +base-x@^3.0.8: + version "3.0.9" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320" + integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ== + dependencies: + safe-buffer "^5.0.1" + +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +base64-to-uint8array@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/base64-to-uint8array/-/base64-to-uint8array-1.0.0.tgz#725f9e9886331b43785cadd807e76803d5494e05" + integrity sha512-drjWQcees55+XQSVHYxiUF05Fj6ko3XJUoxykZEXbm0BMmNz2ieWiZGJ+6TFWnjN2saucG6pI13LS92O4kaiAg== + +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +bn.js@^4.11.9: + version "4.12.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" + integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== + +bn.js@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + +buffer-crc32@~0.2.3: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== + +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== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + +call-me-maybe@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa" + integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ== + +chalk@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chokidar@3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" + integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.5.0" + optionalDependencies: + fsevents "~2.3.1" + +cids@^0.7.1: + version "0.7.5" + resolved "https://registry.yarnpkg.com/cids/-/cids-0.7.5.tgz#60a08138a99bfb69b6be4ceb63bfef7a396b28b2" + integrity sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA== + dependencies: + buffer "^5.5.0" + class-is "^1.1.0" + multibase "~0.6.0" + multicodec "^1.0.0" + multihashes "~0.4.15" + +class-is@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/class-is/-/class-is-1.1.0.tgz#9d3c0fba0440d211d843cec3dedfa48055005825" + integrity sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw== + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +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" + +commander@9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-9.2.0.tgz#6e21014b2ed90d8b7c9647230d8b7a94a4a419a9" + integrity sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +content-hash@2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/content-hash/-/content-hash-2.5.2.tgz#bbc2655e7c21f14fd3bfc7b7d4bfe6e454c9e211" + integrity sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw== + dependencies: + cids "^0.7.1" + multicodec "^0.5.5" + multihashes "^0.4.15" + +copyfiles@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/copyfiles/-/copyfiles-2.4.1.tgz#d2dcff60aaad1015f09d0b66e7f0f1c5cd3c5da5" + integrity sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg== + dependencies: + glob "^7.0.5" + minimatch "^3.0.3" + mkdirp "^1.0.4" + noms "0.0.0" + through2 "^2.0.1" + untildify "^4.0.0" + yargs "^16.1.0" + +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + +cross-spawn@^7.0.0: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +debug@^4.1.1: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + +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== + +docker-compose@0.23.17: + version "0.23.17" + resolved "https://registry.yarnpkg.com/docker-compose/-/docker-compose-0.23.17.tgz#8816bef82562d9417dc8c790aa4871350f93a2ba" + integrity sha512-YJV18YoYIcxOdJKeFcCFihE6F4M2NExWM/d4S1ITcS9samHKnNUihz9kjggr0dNtsrbpFNc7/Yzd19DWs+m1xg== + dependencies: + yaml "^1.10.2" + +elliptic@6.5.4: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +end-of-stream@^1.1.0: + version "1.4.4" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + dependencies: + once "^1.4.0" + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +ethers@5.7.0: + version "5.7.0" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.0.tgz#0055da174b9e076b242b8282638bc94e04b39835" + integrity sha512-5Xhzp2ZQRi0Em+0OkOcRHxPzCfoBfgtOQA+RUylSkuHbhTEaQklnYi2hsWbRgs3ztJsXVXd9VKBcO1ScWL8YfA== + dependencies: + "@ethersproject/abi" "5.7.0" + "@ethersproject/abstract-provider" "5.7.0" + "@ethersproject/abstract-signer" "5.7.0" + "@ethersproject/address" "5.7.0" + "@ethersproject/base64" "5.7.0" + "@ethersproject/basex" "5.7.0" + "@ethersproject/bignumber" "5.7.0" + "@ethersproject/bytes" "5.7.0" + "@ethersproject/constants" "5.7.0" + "@ethersproject/contracts" "5.7.0" + "@ethersproject/hash" "5.7.0" + "@ethersproject/hdnode" "5.7.0" + "@ethersproject/json-wallets" "5.7.0" + "@ethersproject/keccak256" "5.7.0" + "@ethersproject/logger" "5.7.0" + "@ethersproject/networks" "5.7.0" + "@ethersproject/pbkdf2" "5.7.0" + "@ethersproject/properties" "5.7.0" + "@ethersproject/providers" "5.7.0" + "@ethersproject/random" "5.7.0" + "@ethersproject/rlp" "5.7.0" + "@ethersproject/sha2" "5.7.0" + "@ethersproject/signing-key" "5.7.0" + "@ethersproject/solidity" "5.7.0" + "@ethersproject/strings" "5.7.0" + "@ethersproject/transactions" "5.7.0" + "@ethersproject/units" "5.7.0" + "@ethersproject/wallet" "5.7.0" + "@ethersproject/web" "5.7.0" + "@ethersproject/wordlists" "5.7.0" + +execa@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" + integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== + dependencies: + cross-spawn "^7.0.0" + get-stream "^5.0.0" + human-signals "^1.1.1" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.0" + onetime "^5.1.0" + signal-exit "^3.0.2" + strip-final-newline "^2.0.0" + +extract-zip@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" + integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== + dependencies: + debug "^4.1.1" + get-stream "^5.1.0" + yauzl "^2.10.0" + optionalDependencies: + "@types/yauzl" "^2.9.1" + +fast-deep-equal@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-memoize@^2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/fast-memoize/-/fast-memoize-2.5.2.tgz#79e3bb6a4ec867ea40ba0e7146816f6cdce9b57e" + integrity sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw== + +fd-slicer@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" + integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== + dependencies: + pend "~1.2.0" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +follow-redirects@^1.14.0: + version "1.15.3" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a" + integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q== + +form-data@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +fs-extra@9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz#910da0062437ba4c39fedd863f1675ccfefcb9fc" + integrity sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ== + dependencies: + at-least-node "^1.0.0" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^1.0.0" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== + +fsevents@~2.3.1: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-stream@^5.0.0, get-stream@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== + dependencies: + pump "^3.0.0" + +glob-parent@~5.1.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@^7.0.5, glob@^7.1.3: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.1.1" + once "^1.3.0" + path-is-absolute "^1.0.0" + +graceful-fs@^4.1.6, graceful-fs@^4.2.0: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +graphql-json-transform@^1.1.0-alpha.0: + version "1.1.0-alpha.0" + resolved "https://registry.yarnpkg.com/graphql-json-transform/-/graphql-json-transform-1.1.0-alpha.0.tgz#fb0c88d24840067e6c55ac64bbc8d4e5de245d2d" + integrity sha512-I6lR/lYEezSz4iru0f7a/wR8Rzi3pCafk7S0bX2b/WQOtK0vKabxLShGBXIslsi0arMehIjvOPHJl7MpOUqj0w== + +graphql@15.5.0: + version "15.5.0" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.0.tgz#39d19494dbe69d1ea719915b578bf920344a69d5" + integrity sha512-OmaM7y0kaK31NKG31q4YbD2beNYa6jBBKtMFT6gLYJljHLJr42IqJ8KX08u3Li/0ifzTU5HjmoOOrwa5BRLeDA== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +human-signals@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" + integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== + +ieee754@^1.1.13: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +intl-messageformat-parser@6.4.2: + version "6.4.2" + resolved "https://registry.yarnpkg.com/intl-messageformat-parser/-/intl-messageformat-parser-6.4.2.tgz#e2d28c3156c27961ead9d613ca55b6a155078d7d" + integrity sha512-IVNGy24lNEYr/KPWId5tF3KXRHFFbMgzIMI4kUonNa/ide2ywUYyBuOUro1IBGZJqjA2ncBVUyXdYKlMfzqpAA== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +intl-messageformat@9.5.2: + version "9.5.2" + resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-9.5.2.tgz#e72d32152c760b7411e413780e462909987c005a" + integrity sha512-sBGXcSQLyBuBA/kzAYhTpzhzkOGfSwGIau2W6FuwLZk0JE+VF3C+y0077FhVDOcRSi60iSfWzT8QC3Z7//dFxw== + dependencies: + fast-memoize "^2.5.2" + intl-messageformat-parser "6.4.2" + tslib "^2.1.0" + +invert-kv@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-3.0.1.tgz#a93c7a3d4386a1dc8325b97da9bb1620c0282523" + integrity sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw== + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== + +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== + +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +js-sha3@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + +js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" + integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== + +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonschema@1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/jsonschema/-/jsonschema-1.4.0.tgz#1afa34c4bc22190d8e42271ec17ac8b3404f87b2" + integrity sha512-/YgW6pRMr6M7C+4o8kS+B/2myEpHCrxO4PEWnqJNBFMjn7EWXqlQ4tGwL6xTHeRplwuZmcAncdvfOad1nT2yMw== + +lcid@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-3.1.1.tgz#9030ec479a058fc36b5e8243ebaac8b6ac582fd0" + integrity sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg== + dependencies: + invert-kv "^3.0.0" + +lodash.merge@4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +map-age-cleaner@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== + dependencies: + p-defer "^1.0.0" + +mem@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/mem/-/mem-5.1.1.tgz#7059b67bf9ac2c924c9f1cff7155a064394adfb3" + integrity sha512-qvwipnozMohxLXG1pOqoLiZKNkC4r4qqRucSoDwXowsNGDSULiqFTRUF05vcZWnwJSG22qTsynQhxbaMtnX9gw== + dependencies: + map-age-cleaner "^0.1.3" + mimic-fn "^2.1.0" + p-is-promise "^2.1.0" + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@^2.1.12: + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +minimatch@^3.0.3, minimatch@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +multibase@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.7.0.tgz#1adfc1c50abe05eefeb5091ac0c2728d6b84581b" + integrity sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg== + dependencies: + base-x "^3.0.8" + buffer "^5.5.0" + +multibase@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.6.1.tgz#b76df6298536cc17b9f6a6db53ec88f85f8cc12b" + integrity sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw== + dependencies: + base-x "^3.0.8" + buffer "^5.5.0" + +multicodec@^0.5.5: + version "0.5.7" + resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.5.7.tgz#1fb3f9dd866a10a55d226e194abba2dcc1ee9ffd" + integrity sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA== + dependencies: + varint "^5.0.0" + +multicodec@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-1.0.4.tgz#46ac064657c40380c28367c90304d8ed175a714f" + integrity sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg== + dependencies: + buffer "^5.6.0" + varint "^5.0.0" + +multihashes@^0.4.15, multihashes@~0.4.15: + version "0.4.21" + resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.4.21.tgz#dc02d525579f334a7909ade8a122dabb58ccfcb5" + integrity sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw== + dependencies: + buffer "^5.5.0" + multibase "^0.7.0" + varint "^5.0.0" + +mustache@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.0.1.tgz#d99beb031701ad433338e7ea65e0489416c854a2" + integrity sha512-yL5VE97+OXn4+Er3THSmTdCFCtx5hHWzrolvH+JObZnUYwuaG7XV+Ch4fR2cIrcYI0tFHxS7iyFYl14bW8y2sA== + +noms@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/noms/-/noms-0.0.0.tgz#da8ebd9f3af9d6760919b27d9cdc8092a7332859" + integrity sha512-lNDU9VJaOPxUmXcLb+HQFeUgQQPtMI24Gt6hgfuMHRJgMRHMF/qZ4HJD3GDru4sSw9IQl2jPjAYnQrdIeLbwow== + dependencies: + inherits "^2.0.1" + readable-stream "~1.0.31" + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +npm-run-path@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +onetime@^5.1.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +os-locale@5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-5.0.0.tgz#6d26c1d95b6597c5d5317bf5fba37eccec3672e0" + integrity sha512-tqZcNEDAIZKBEPnHPlVDvKrp7NzgLi7jRmhKiUoa2NUmhl13FtkAGLUVR+ZsYvApBQdBfYm43A4tXXQ4IrYLBA== + dependencies: + execa "^4.0.0" + lcid "^3.0.0" + mem "^5.0.0" + +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw== + +p-is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" + integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== + +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +pend@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== + +picomatch@^2.0.4, picomatch@^2.2.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +polywrap@0.12.1: version "0.12.1" - resolved "https://registry.yarnpkg.com/@polywrap/templates/-/templates-0.12.1.tgz#df07423b8d6e7f5e37741cf03c24153c9690011a" - integrity sha512-+KSlXssRWUc8G/EUtn8kk7e6mYphFfJsYNahVABdnZ8JtQFE6D1Kaz1xFas50Wg1xvWx6eQrbvxCa/lN+6QRDw== + resolved "https://registry.yarnpkg.com/polywrap/-/polywrap-0.12.1.tgz#bb56ed25934e845b685455803edf7a9c41b7e6fb" + integrity sha512-jZ/qd4mW0zXF57wZIJ3Whow8AyyUp/COdHZmDR/yKdw8q8fJQJm8/Nq4yZ8A09amYHMYlDQhJV2hSvsuJwhW8w== + dependencies: + "@apidevtools/json-schema-ref-parser" "9.0.9" + "@ethersproject/providers" "5.6.8" + "@ethersproject/wallet" "5.6.2" + "@formatjs/intl" "1.8.2" + "@polywrap/asyncify-js" "~0.12.0" + "@polywrap/client-config-builder-js" "~0.12.0" + "@polywrap/client-js" "~0.12.0" + "@polywrap/core-js" "~0.12.0" + "@polywrap/ethereum-wallet-js" "~0.1.0" + "@polywrap/logging-js" "0.12.1" + "@polywrap/os-js" "0.12.1" + "@polywrap/polywrap-manifest-types-js" "0.12.1" + "@polywrap/result" "~0.12.0" + "@polywrap/schema-bind" "0.12.1" + "@polywrap/schema-compose" "0.12.1" + "@polywrap/schema-parse" "0.12.1" + "@polywrap/sys-config-bundle-js" "~0.12.0" + "@polywrap/uri-resolver-extensions-js" "~0.12.0" + "@polywrap/uri-resolvers-js" "~0.12.0" + "@polywrap/wasm-js" "~0.12.0" + "@polywrap/web3-config-bundle-js" "~0.12.0" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + axios "0.21.2" + chalk "4.1.0" + chokidar "3.5.1" + commander "9.2.0" + content-hash "2.5.2" + copyfiles "2.4.1" + docker-compose "0.23.17" + extract-zip "2.0.1" + form-data "4.0.0" + fs-extra "9.0.1" + json-schema "0.4.0" + jsonschema "1.4.0" + mustache "4.0.1" + os-locale "5.0.0" + regex-parser "2.2.11" + rimraf "3.0.2" + toml "3.0.0" + typescript "4.9.5" + yaml "2.2.2" + yesno "0.4.0" + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +punycode@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" + integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== + +readable-stream@~1.0.31: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + integrity sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@~2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + 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.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" + integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== + dependencies: + picomatch "^2.2.1" + +regex-parser@2.2.11: + version "2.2.11" + resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58" + integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q== + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +rimraf@3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +safe-buffer@^5.0.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +scrypt-js@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + +semver@7.5.3: + version "7.5.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.3.tgz#161ce8c2c6b4b3bdca6caadc9fa3317a4c4fe88e" + integrity sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ== + dependencies: + lru-cache "^6.0.0" + +semver@~7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +signal-exit@^3.0.2: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== + +string-width@^4.1.0, string-width@^4.2.0: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +through2@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +toml@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/toml/-/toml-3.0.0.tgz#342160f1af1904ec9d204d03a5d61222d762c5ee" + integrity sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== + +tslib@^2.1.0: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + +typescript@4.9.5: + version "4.9.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== + +undici-types@~5.25.1: + version "5.25.3" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.25.3.tgz#e044115914c85f0bcbb229f346ab739f064998c3" + integrity sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA== + +universalify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" + integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== + +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== + +untildify@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" + integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +varint@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/varint/-/varint-5.0.2.tgz#5b47f8a947eb668b848e034dcfa87d0ff8a7f7a4" + integrity sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow== + +which@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + +xtend@~4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yaml@2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.2.2.tgz#ec551ef37326e6d42872dad1970300f8eb83a073" + integrity sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA== + +yaml@^1.10.2: + version "1.10.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + +yargs-parser@^20.2.2: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs@^16.1.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yauzl@^2.10.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" + integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== + dependencies: + buffer-crc32 "~0.2.3" + fd-slicer "~1.1.0" + +yesno@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/yesno/-/yesno-0.4.0.tgz#5d674f14d339f0bd4b0edc47f899612c74fcd895" + integrity sha512-tdBxmHvbXPBKYIg81bMCB7bVeDmHkRzk5rVJyYYXurwKkHq/MCd8rz4HSJUP7hW0H2NlXiq8IFiWvYKEHhlotA== diff --git a/snippets/create-wraps-tutorial/typescript/yarn.lock b/snippets/create-wraps-tutorial/typescript/yarn.lock index e864ad01..566681d5 100644 --- a/snippets/create-wraps-tutorial/typescript/yarn.lock +++ b/snippets/create-wraps-tutorial/typescript/yarn.lock @@ -2,7 +2,5320 @@ # yarn lockfile v1 -"@polywrap/templates@0.12.1": +"@ampproject/remapping@^2.2.0": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@ampproject/remapping/-/remapping-2.2.1.tgz#99e8e11851128b8702cd57c33684f1d0f260b630" + integrity sha512-lFMjJTrFL3j7L9yBxwYfCq2k6qqwHyzuUl/XBnif78PWTJYyL/dfowQHWE3sp6U6ZzqWiiIZnpTMO96zhkjwtg== + dependencies: + "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/trace-mapping" "^0.3.9" + +"@apidevtools/json-schema-ref-parser@9.0.9": + version "9.0.9" + resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-9.0.9.tgz#d720f9256e3609621280584f2b47ae165359268b" + integrity sha512-GBD2Le9w2+lVFoc4vswGI/TjkNIZSVp7+9xPf+X3uidBfWnAeUWmquteSyt0+VCrhNMWj/FTABISQrD3Z/YA+w== + dependencies: + "@jsdevtools/ono" "^7.1.3" + "@types/json-schema" "^7.0.6" + call-me-maybe "^1.0.1" + js-yaml "^4.1.0" + +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.22.13": + version "7.22.13" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.22.13.tgz#e3c1c099402598483b7a8c46a721d1038803755e" + integrity sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w== + dependencies: + "@babel/highlight" "^7.22.13" + chalk "^2.4.2" + +"@babel/compat-data@^7.22.9": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.23.2.tgz#6a12ced93455827037bfb5ed8492820d60fc32cc" + integrity sha512-0S9TQMmDHlqAZ2ITT95irXKfxN9bncq8ZCoJhun3nHL/lLUxd2NKBJYoNGWH7S0hz6fRQwWlAWn/ILM0C70KZQ== + +"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.5": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.23.2.tgz#ed10df0d580fff67c5f3ee70fd22e2e4c90a9f94" + integrity sha512-n7s51eWdaWZ3vGT2tD4T7J6eJs3QoBXydv7vkUM06Bf1cbVD2Kc2UrkzhiQwobfV7NwOnQXYL7UBJ5VPU+RGoQ== + dependencies: + "@ampproject/remapping" "^2.2.0" + "@babel/code-frame" "^7.22.13" + "@babel/generator" "^7.23.0" + "@babel/helper-compilation-targets" "^7.22.15" + "@babel/helper-module-transforms" "^7.23.0" + "@babel/helpers" "^7.23.2" + "@babel/parser" "^7.23.0" + "@babel/template" "^7.22.15" + "@babel/traverse" "^7.23.2" + "@babel/types" "^7.23.0" + convert-source-map "^2.0.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.2.3" + semver "^6.3.1" + +"@babel/generator@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.23.0.tgz#df5c386e2218be505b34837acbcb874d7a983420" + integrity sha512-lN85QRR+5IbYrMWM6Y4pE/noaQtg4pNiqeNGX60eqOfo6gtEj6uw/JagelB8vVztSd7R6M5n1+PQkDbHbBRU4g== + dependencies: + "@babel/types" "^7.23.0" + "@jridgewell/gen-mapping" "^0.3.2" + "@jridgewell/trace-mapping" "^0.3.17" + jsesc "^2.5.1" + +"@babel/helper-compilation-targets@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.22.15.tgz#0698fc44551a26cf29f18d4662d5bf545a6cfc52" + integrity sha512-y6EEzULok0Qvz8yyLkCvVX+02ic+By2UdOhylwUOvOn9dvYc9mKICJuuU1n1XBI02YWsNsnrY1kc6DVbjcXbtw== + dependencies: + "@babel/compat-data" "^7.22.9" + "@babel/helper-validator-option" "^7.22.15" + browserslist "^4.21.9" + lru-cache "^5.1.1" + semver "^6.3.1" + +"@babel/helper-environment-visitor@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.22.20.tgz#96159db61d34a29dba454c959f5ae4a649ba9167" + integrity sha512-zfedSIzFhat/gFhWfHtgWvlec0nqB9YEIVrpuwjruLlXfUSnA8cJB0miHKwqDnQ7d32aKo2xt88/xZptwxbfhA== + +"@babel/helper-function-name@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.23.0.tgz#1f9a3cdbd5b2698a670c30d2735f9af95ed52759" + integrity sha512-OErEqsrxjZTJciZ4Oo+eoZqeW9UIiOcuYKRJA4ZAgV9myA+pOXhhmpfNCKjEH/auVfEYVFJ6y1Tc4r0eIApqiw== + dependencies: + "@babel/template" "^7.22.15" + "@babel/types" "^7.23.0" + +"@babel/helper-hoist-variables@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.22.5.tgz#c01a007dac05c085914e8fb652b339db50d823bb" + integrity sha512-wGjk9QZVzvknA6yKIUURb8zY3grXCcOZt+/7Wcy8O2uctxhplmUPkOdlgoNhmdVee2c92JXbf1xpMtVNbfoxRw== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-module-imports@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.22.15.tgz#16146307acdc40cc00c3b2c647713076464bdbf0" + integrity sha512-0pYVBnDKZO2fnSPCrgM/6WMc7eS20Fbok+0r88fp+YtWVLZrp4CkafFGIp+W0VKw4a22sgebPT99y+FDNMdP4w== + dependencies: + "@babel/types" "^7.22.15" + +"@babel/helper-module-transforms@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.23.0.tgz#3ec246457f6c842c0aee62a01f60739906f7047e" + integrity sha512-WhDWw1tdrlT0gMgUJSlX0IQvoO1eN279zrAUbVB+KpV2c3Tylz8+GnKOLllCS6Z/iZQEyVYxhZVUdPTqs2YYPw== + dependencies: + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-module-imports" "^7.22.15" + "@babel/helper-simple-access" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/helper-validator-identifier" "^7.22.20" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.8.0": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.22.5.tgz#dd7ee3735e8a313b9f7b05a773d892e88e6d7295" + integrity sha512-uLls06UVKgFG9QD4OeFYLEGteMIAa5kpTPcFL28yuCIIzsf6ZyKZMllKVOCZFhiZ5ptnwX4mtKdWCBE/uT4amg== + +"@babel/helper-simple-access@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.22.5.tgz#4938357dc7d782b80ed6dbb03a0fba3d22b1d5de" + integrity sha512-n0H99E/K+Bika3++WNL17POvo4rKWZ7lZEp1Q+fStVbUi8nxPQEBOlTmCOxW/0JsS56SKKQ+ojAe2pHKJHN35w== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-split-export-declaration@^7.22.6": + version "7.22.6" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.22.6.tgz#322c61b7310c0997fe4c323955667f18fcefb91c" + integrity sha512-AsUnxuLhRYsisFiaJwvp1QF+I3KjD5FOxut14q/GzovUe6orHLesW2C7d754kRm53h5gqrz6sFl6sxc4BVtE/g== + dependencies: + "@babel/types" "^7.22.5" + +"@babel/helper-string-parser@^7.22.5": + version "7.22.5" + resolved "https://registry.yarnpkg.com/@babel/helper-string-parser/-/helper-string-parser-7.22.5.tgz#533f36457a25814cf1df6488523ad547d784a99f" + integrity sha512-mM4COjgZox8U+JcXQwPijIZLElkgEpO5rsERVDJTc2qfCDfERyob6k5WegS14SX18IIjv+XD+GrqNumY5JRCDw== + +"@babel/helper-validator-identifier@^7.22.20": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz#c4ae002c61d2879e724581d96665583dbc1dc0e0" + integrity sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A== + +"@babel/helper-validator-option@^7.22.15": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.22.15.tgz#694c30dfa1d09a6534cdfcafbe56789d36aba040" + integrity sha512-bMn7RmyFjY/mdECUbgn9eoSY4vqvacUnS9i9vGAGttgFWesO6B4CYWA7XlpbWgBt71iv/hfbPlynohStqnu5hA== + +"@babel/helpers@^7.23.2": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.23.2.tgz#2832549a6e37d484286e15ba36a5330483cac767" + integrity sha512-lzchcp8SjTSVe/fPmLwtWVBFC7+Tbn8LGHDVfDp9JGxpAY5opSaEFgt8UQvrnECWOTdji2mOWMz1rOhkHscmGQ== + dependencies: + "@babel/template" "^7.22.15" + "@babel/traverse" "^7.23.2" + "@babel/types" "^7.23.0" + +"@babel/highlight@^7.22.13": + version "7.22.20" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.22.20.tgz#4ca92b71d80554b01427815e06f2df965b9c1f54" + integrity sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg== + dependencies: + "@babel/helper-validator-identifier" "^7.22.20" + chalk "^2.4.2" + js-tokens "^4.0.0" + +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.20.7", "@babel/parser@^7.22.15", "@babel/parser@^7.23.0": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.23.0.tgz#da950e622420bf96ca0d0f2909cdddac3acd8719" + integrity sha512-vvPKKdMemU85V9WE/l5wZEmImpCtLqbnTvqDS2U1fJ96KrxoW7KrXhNsNCblQlg8Ck4b85yxdTyelsMUgFUXiw== + +"@babel/plugin-syntax-async-generators@^7.8.4": + version "7.8.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-bigint@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-class-properties@^7.8.3": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-syntax-import-meta@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-json-strings@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-numeric-separator@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-object-rest-spread@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-catch-binding@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-chaining@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-top-level-await@^7.8.3": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== + dependencies: + "@babel/helper-plugin-utils" "^7.14.5" + +"@babel/template@^7.22.15", "@babel/template@^7.3.3": + version "7.22.15" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.22.15.tgz#09576efc3830f0430f4548ef971dde1350ef2f38" + integrity sha512-QPErUVm4uyJa60rkI73qneDacvdvzxshT3kksGqlGWYdOTIUOwJ7RDUL8sGqslY1uXWSL6xMFKEXDS3ox2uF0w== + dependencies: + "@babel/code-frame" "^7.22.13" + "@babel/parser" "^7.22.15" + "@babel/types" "^7.22.15" + +"@babel/traverse@^7.1.0", "@babel/traverse@^7.23.2": + version "7.23.2" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.23.2.tgz#329c7a06735e144a506bdb2cad0268b7f46f4ad8" + integrity sha512-azpe59SQ48qG6nu2CzcMLbxUudtN+dOM9kDbUqGq3HXUJRlo7i8fvPoxQUzYgLZ4cMVmuZgm8vvBpNeRhd6XSw== + dependencies: + "@babel/code-frame" "^7.22.13" + "@babel/generator" "^7.23.0" + "@babel/helper-environment-visitor" "^7.22.20" + "@babel/helper-function-name" "^7.23.0" + "@babel/helper-hoist-variables" "^7.22.5" + "@babel/helper-split-export-declaration" "^7.22.6" + "@babel/parser" "^7.23.0" + "@babel/types" "^7.23.0" + debug "^4.1.0" + globals "^11.1.0" + +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.22.15", "@babel/types@^7.22.5", "@babel/types@^7.23.0", "@babel/types@^7.3.3": + version "7.23.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.23.0.tgz#8c1f020c9df0e737e4e247c0619f58c68458aaeb" + integrity sha512-0oIyUfKoI3mSqMvsxBdclDwxXKXAUA8v/apZbc+iSyARYou1o8ZGDxbUYyLFoW2arqS2jDGqJuZvv1d/io1axg== + dependencies: + "@babel/helper-string-parser" "^7.22.5" + "@babel/helper-validator-identifier" "^7.22.20" + to-fast-properties "^2.0.0" + +"@bcoe/v8-coverage@^0.2.3": + version "0.2.3" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== + +"@cnakazawa/watch@^1.0.3": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" + integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== + dependencies: + exec-sh "^0.3.2" + minimist "^1.2.0" + +"@dorgjelli/graphql-schema-cycles@1.1.4": + version "1.1.4" + resolved "https://registry.yarnpkg.com/@dorgjelli/graphql-schema-cycles/-/graphql-schema-cycles-1.1.4.tgz#31f230c61f624f7c2ceca7e18fad8b2cb07d392f" + integrity sha512-U5ARitMQWKjOAvwn1+0Z52R9sbNe1wpbgAbj2hOfRFb/vupfPlRwZLbuUZAlotMpkoxbTbk+GRmoiNzGcJfyHw== + dependencies: + graphql "15.5.0" + graphql-json-transform "^1.1.0-alpha.0" + +"@ethersproject/abi@5.7.0", "@ethersproject/abi@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abi/-/abi-5.7.0.tgz#b3f3e045bbbeed1af3947335c247ad625a44e449" + integrity sha512-351ktp42TiRcYB3H1OP8yajPeAQstMW/yCFokj/AthP9bLHzQFPlOrxOcwYEDkUAICmOHljvN4K39OMTMUa9RA== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/abstract-provider@5.7.0", "@ethersproject/abstract-provider@^5.6.1", "@ethersproject/abstract-provider@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-provider/-/abstract-provider-5.7.0.tgz#b0a8550f88b6bf9d51f90e4795d48294630cb9ef" + integrity sha512-R41c9UkchKCpAqStMYUpdunjo3pkEvZC3FAwZn5S5MGbXoMQOHIdHItezTETxAO5bevtMApSyEhn9+CHcDsWBw== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + +"@ethersproject/abstract-signer@5.7.0", "@ethersproject/abstract-signer@^5.6.2", "@ethersproject/abstract-signer@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/abstract-signer/-/abstract-signer-5.7.0.tgz#13f4f32117868452191a4649723cb086d2b596b2" + integrity sha512-a16V8bq1/Cz+TGCkE2OPMTOUDLS3grCpdjoJCYNnVBbdYEMSgKrU0+B90s8b6H+ByYTBZN7a3g76jdIJi7UfKQ== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/address@5.7.0", "@ethersproject/address@^5.6.1", "@ethersproject/address@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/address/-/address-5.7.0.tgz#19b56c4d74a3b0a46bfdbb6cfcc0a153fc697f37" + integrity sha512-9wYhYt7aghVGo758POM5nqcOMaE168Q6aRLJZwUmiqSrAungkG74gSSeKEIR7ukixesdRZGPgVqme6vmxs1fkA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + +"@ethersproject/base64@5.7.0", "@ethersproject/base64@^5.6.1", "@ethersproject/base64@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/base64/-/base64-5.7.0.tgz#ac4ee92aa36c1628173e221d0d01f53692059e1c" + integrity sha512-Dr8tcHt2mEbsZr/mwTPIQAf3Ai0Bks/7gTw9dSqk1mQvhW3XvRlmDJr/4n+wg1JmCl16NZue17CDh8xb/vZ0sQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + +"@ethersproject/basex@5.7.0", "@ethersproject/basex@^5.6.1", "@ethersproject/basex@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/basex/-/basex-5.7.0.tgz#97034dc7e8938a8ca943ab20f8a5e492ece4020b" + integrity sha512-ywlh43GwZLv2Voc2gQVTKBoVQ1mti3d8HK5aMxsfu/nRDnMmNqaSJ3r3n85HBByT8OpoY96SXM1FogC533T4zw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + +"@ethersproject/bignumber@5.7.0", "@ethersproject/bignumber@^5.6.2", "@ethersproject/bignumber@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bignumber/-/bignumber-5.7.0.tgz#e2f03837f268ba655ffba03a57853e18a18dc9c2" + integrity sha512-n1CAdIHRWjSucQO3MC1zPSVgV/6dy/fjL9pMrPP9peL+QxEg9wOsVqwD4+818B6LUEtaXzVHQiuivzRoxPxUGw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + bn.js "^5.2.1" + +"@ethersproject/bytes@5.7.0", "@ethersproject/bytes@^5.6.1", "@ethersproject/bytes@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/bytes/-/bytes-5.7.0.tgz#a00f6ea8d7e7534d6d87f47188af1148d71f155d" + integrity sha512-nsbxwgFXWh9NyYWo+U8atvmMsSdKJprTcICAkvbBffT75qDocbuggBU0SJiVK2MuTrp0q+xvLkTnGMPK1+uA9A== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/constants@5.7.0", "@ethersproject/constants@^5.6.1", "@ethersproject/constants@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/constants/-/constants-5.7.0.tgz#df80a9705a7e08984161f09014ea012d1c75295e" + integrity sha512-DHI+y5dBNvkpYUMiRQyxRBYBefZkJfo70VUkUAsRjcPs47muV9evftfZ0PJVCXYbAiCgght0DtcF9srFQmIgWA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + +"@ethersproject/contracts@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/contracts/-/contracts-5.7.0.tgz#c305e775abd07e48aa590e1a877ed5c316f8bd1e" + integrity sha512-5GJbzEU3X+d33CdfPhcyS+z8MzsTrBGk/sc+G+59+tPa9yFkl6HQ9D6L0QMgNTA9q8dT0XKxxkyp883XsQvbbg== + dependencies: + "@ethersproject/abi" "^5.7.0" + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + +"@ethersproject/hash@5.7.0", "@ethersproject/hash@^5.6.1", "@ethersproject/hash@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hash/-/hash-5.7.0.tgz#eb7aca84a588508369562e16e514b539ba5240a7" + integrity sha512-qX5WrQfnah1EFnO5zJv1v46a8HW0+E5xuBBDTwMFZLuVTx0tbU2kkx15NqdjxecrLGatQN9FGQKpb1FKdHCt+g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/hdnode@5.7.0", "@ethersproject/hdnode@^5.6.2", "@ethersproject/hdnode@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/hdnode/-/hdnode-5.7.0.tgz#e627ddc6b466bc77aebf1a6b9e47405ca5aef9cf" + integrity sha512-OmyYo9EENBPPf4ERhR7oj6uAtUAhYGqOnIS+jE5pTXvdKBS99ikzq1E7Iv0ZQZ5V36Lqx1qZLeak0Ra16qpeOg== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/json-wallets@5.7.0", "@ethersproject/json-wallets@^5.6.1", "@ethersproject/json-wallets@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/json-wallets/-/json-wallets-5.7.0.tgz#5e3355287b548c32b368d91014919ebebddd5360" + integrity sha512-8oee5Xgu6+RKgJTkvEMl2wDgSPSAQ9MB/3JYjFV9jlKvcYHUXZC+cQp0njgmxdHkYWn8s6/IqIZYm0YWCjO/0g== + dependencies: + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/pbkdf2" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + aes-js "3.0.0" + scrypt-js "3.0.1" + +"@ethersproject/keccak256@5.7.0", "@ethersproject/keccak256@^5.6.1", "@ethersproject/keccak256@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/keccak256/-/keccak256-5.7.0.tgz#3186350c6e1cd6aba7940384ec7d6d9db01f335a" + integrity sha512-2UcPboeL/iW+pSg6vZ6ydF8tCnv3Iu/8tUmLLzWWGzxWKFFqOBQFLo6uLUv6BDrLgCDfN28RJ/wtByx+jZ4KBg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + js-sha3 "0.8.0" + +"@ethersproject/logger@5.7.0", "@ethersproject/logger@^5.6.0", "@ethersproject/logger@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/logger/-/logger-5.7.0.tgz#6ce9ae168e74fecf287be17062b590852c311892" + integrity sha512-0odtFdXu/XHtjQXJYA3u9G0G8btm0ND5Cu8M7i5vhEcE8/HmF4Lbdqanwyv4uQTr2tx6b7fQRmgLrsnpQlmnig== + +"@ethersproject/networks@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.0.tgz#df72a392f1a63a57f87210515695a31a245845ad" + integrity sha512-MG6oHSQHd4ebvJrleEQQ4HhVu8Ichr0RDYEfHzsVAVjHNM+w36x9wp9r+hf1JstMXtseXDtkiVoARAG6M959AA== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/networks@^5.6.3", "@ethersproject/networks@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/networks/-/networks-5.7.1.tgz#118e1a981d757d45ccea6bb58d9fd3d9db14ead6" + integrity sha512-n/MufjFYv3yFcUyfhnXotyDlNdFb7onmkSy8aQERi2PjNcnWQ66xXxa3XlS8nCcA8aJKJjIIMNJTC7tu80GwpQ== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/pbkdf2@5.7.0", "@ethersproject/pbkdf2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/pbkdf2/-/pbkdf2-5.7.0.tgz#d2267d0a1f6e123f3771007338c47cccd83d3102" + integrity sha512-oR/dBRZR6GTyaofd86DehG72hY6NpAjhabkhxgr3X2FpJtJuodEl2auADWBZfhDHgVCbu3/H/Ocq2uC6dpNjjw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + +"@ethersproject/properties@5.7.0", "@ethersproject/properties@^5.6.0", "@ethersproject/properties@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/properties/-/properties-5.7.0.tgz#a6e12cb0439b878aaf470f1902a176033067ed30" + integrity sha512-J87jy8suntrAkIZtecpxEPxY//szqr1mlBaYlQ0r4RCaiD2hjheqF9s1LVE8vVuJCXisjIP+JgtK/Do54ej4Sw== + dependencies: + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/providers@5.6.8": + version "5.6.8" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.6.8.tgz#22e6c57be215ba5545d3a46cf759d265bb4e879d" + integrity sha512-Wf+CseT/iOJjrGtAOf3ck9zS7AgPmr2fZ3N97r4+YXN3mBePTG2/bJ8DApl9mVwYL+RpYbNxMEkEp4mPGdwG/w== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/base64" "^5.6.1" + "@ethersproject/basex" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/constants" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/networks" "^5.6.3" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/rlp" "^5.6.1" + "@ethersproject/sha2" "^5.6.1" + "@ethersproject/strings" "^5.6.1" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/web" "^5.6.1" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/providers@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/providers/-/providers-5.7.0.tgz#a885cfc7650a64385e7b03ac86fe9c2d4a9c2c63" + integrity sha512-+TTrrINMzZ0aXtlwO/95uhAggKm4USLm1PbeCBR/3XZ7+Oey+3pMyddzZEyRhizHpy1HXV0FRWRMI1O3EGYibA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/base64" "^5.7.0" + "@ethersproject/basex" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/networks" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/web" "^5.7.0" + bech32 "1.1.4" + ws "7.4.6" + +"@ethersproject/random@5.7.0", "@ethersproject/random@^5.6.1", "@ethersproject/random@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/random/-/random-5.7.0.tgz#af19dcbc2484aae078bb03656ec05df66253280c" + integrity sha512-19WjScqRA8IIeWclFme75VMXSBvi4e6InrUNuaR4s5pTF2qNhcGdCUwdxUVGtDDqC00sDLCO93jPQoDUH4HVmQ== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/rlp@5.7.0", "@ethersproject/rlp@^5.6.1", "@ethersproject/rlp@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/rlp/-/rlp-5.7.0.tgz#de39e4d5918b9d74d46de93af80b7685a9c21304" + integrity sha512-rBxzX2vK8mVF7b0Tol44t5Tb8gomOHkj5guL+HhzQ1yBh/ydjGnpw6at+X6Iw0Kp3OzzzkcKp8N9r0W4kYSs9w== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/sha2@5.7.0", "@ethersproject/sha2@^5.6.1", "@ethersproject/sha2@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/sha2/-/sha2-5.7.0.tgz#9a5f7a7824ef784f7f7680984e593a800480c9fb" + integrity sha512-gKlH42riwb3KYp0reLsFTokByAKoJdgFCwI+CCiX/k+Jm2mbNs6oOaCjYQSlI1+XBVejwH2KrmCbMAT/GnRDQw== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + hash.js "1.1.7" + +"@ethersproject/signing-key@5.7.0", "@ethersproject/signing-key@^5.6.2", "@ethersproject/signing-key@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/signing-key/-/signing-key-5.7.0.tgz#06b2df39411b00bc57c7c09b01d1e41cf1b16ab3" + integrity sha512-MZdy2nL3wO0u7gkB4nA/pEf8lu1TlFswPNmy8AiYkfKTdO6eXBJyUdmHO/ehm/htHw9K/qF8ujnTyUAD+Ry54Q== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + bn.js "^5.2.1" + elliptic "6.5.4" + hash.js "1.1.7" + +"@ethersproject/solidity@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/solidity/-/solidity-5.7.0.tgz#5e9c911d8a2acce2a5ebb48a5e2e0af20b631cb8" + integrity sha512-HmabMd2Dt/raavyaGukF4XxizWKhKQ24DoLtdNbBmNKUOPqwjsKQSdV9GQtj9CBEea9DlzETlVER1gYeXXBGaA== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/sha2" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/strings@5.7.0", "@ethersproject/strings@^5.6.1", "@ethersproject/strings@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/strings/-/strings-5.7.0.tgz#54c9d2a7c57ae8f1205c88a9d3a56471e14d5ed2" + integrity sha512-/9nu+lj0YswRNSH0NXYqrh8775XNyEdUQAuf3f+SmOrnVewcJ5SBNAjF7lpgehKi4abvNNXyf+HX86czCdJ8Mg== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/transactions@5.7.0", "@ethersproject/transactions@^5.6.2", "@ethersproject/transactions@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/transactions/-/transactions-5.7.0.tgz#91318fc24063e057885a6af13fdb703e1f993d3b" + integrity sha512-kmcNicCp1lp8qanMTC3RIikGgoJ80ztTyvtsFvCYpSCfkjhD0jZ2LOrnbcuxuToLIUYYf+4XwD1rP+B/erDIhQ== + dependencies: + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/rlp" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + +"@ethersproject/units@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/units/-/units-5.7.0.tgz#637b563d7e14f42deeee39245275d477aae1d8b1" + integrity sha512-pD3xLMy3SJu9kG5xDGI7+xhTEmGXlEqXU4OfNapmfnxLVY4EMSSRp7j1k7eezutBPH7RBN/7QPnwR7hzNlEFeg== + dependencies: + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/constants" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + +"@ethersproject/wallet@5.6.2": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.6.2.tgz#cd61429d1e934681e413f4bc847a5f2f87e3a03c" + integrity sha512-lrgh0FDQPuOnHcF80Q3gHYsSUODp6aJLAdDmDV0xKCN/T7D99ta1jGVhulg3PY8wiXEngD0DfM0I2XKXlrqJfg== + dependencies: + "@ethersproject/abstract-provider" "^5.6.1" + "@ethersproject/abstract-signer" "^5.6.2" + "@ethersproject/address" "^5.6.1" + "@ethersproject/bignumber" "^5.6.2" + "@ethersproject/bytes" "^5.6.1" + "@ethersproject/hash" "^5.6.1" + "@ethersproject/hdnode" "^5.6.2" + "@ethersproject/json-wallets" "^5.6.1" + "@ethersproject/keccak256" "^5.6.1" + "@ethersproject/logger" "^5.6.0" + "@ethersproject/properties" "^5.6.0" + "@ethersproject/random" "^5.6.1" + "@ethersproject/signing-key" "^5.6.2" + "@ethersproject/transactions" "^5.6.2" + "@ethersproject/wordlists" "^5.6.1" + +"@ethersproject/wallet@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wallet/-/wallet-5.7.0.tgz#4e5d0790d96fe21d61d38fb40324e6c7ef350b2d" + integrity sha512-MhmXlJXEJFBFVKrDLB4ZdDzxcBxQ3rLyCkhNqVu3CDYvR97E+8r01UgrI+TI99Le+aYm/in/0vp86guJuM7FCA== + dependencies: + "@ethersproject/abstract-provider" "^5.7.0" + "@ethersproject/abstract-signer" "^5.7.0" + "@ethersproject/address" "^5.7.0" + "@ethersproject/bignumber" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/hdnode" "^5.7.0" + "@ethersproject/json-wallets" "^5.7.0" + "@ethersproject/keccak256" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/random" "^5.7.0" + "@ethersproject/signing-key" "^5.7.0" + "@ethersproject/transactions" "^5.7.0" + "@ethersproject/wordlists" "^5.7.0" + +"@ethersproject/web@5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.0.tgz#40850c05260edad8b54827923bbad23d96aac0bc" + integrity sha512-ApHcbbj+muRASVDSCl/tgxaH2LBkRMEYfLOLVa0COipx0+nlu0QKet7U2lEg0vdkh8XRSLf2nd1f1Uk9SrVSGA== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/web@^5.6.1", "@ethersproject/web@^5.7.0": + version "5.7.1" + resolved "https://registry.yarnpkg.com/@ethersproject/web/-/web-5.7.1.tgz#de1f285b373149bee5928f4eb7bcb87ee5fbb4ae" + integrity sha512-Gueu8lSvyjBWL4cYsWsjh6MtMwM0+H4HvqFPZfB6dV8ctbP9zFAO73VG1cMWae0FLPCtz0peKPpZY8/ugJJX2w== + dependencies: + "@ethersproject/base64" "^5.7.0" + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@ethersproject/wordlists@5.7.0", "@ethersproject/wordlists@^5.6.1", "@ethersproject/wordlists@^5.7.0": + version "5.7.0" + resolved "https://registry.yarnpkg.com/@ethersproject/wordlists/-/wordlists-5.7.0.tgz#8fb2c07185d68c3e09eb3bfd6e779ba2774627f5" + integrity sha512-S2TFNJNfHWVHNE6cNDjbVlZ6MgE17MIxMbMg2zv3wn+3XSJGosL1m9ZVv3GXCf/2ymSsQ+hRI5IzoMJTG6aoVA== + dependencies: + "@ethersproject/bytes" "^5.7.0" + "@ethersproject/hash" "^5.7.0" + "@ethersproject/logger" "^5.7.0" + "@ethersproject/properties" "^5.7.0" + "@ethersproject/strings" "^5.7.0" + +"@fetsorn/opentelemetry-console-exporter@0.0.3": + version "0.0.3" + resolved "https://registry.yarnpkg.com/@fetsorn/opentelemetry-console-exporter/-/opentelemetry-console-exporter-0.0.3.tgz#c137629fecc610c7667e68b528926e498e152c0b" + integrity sha512-+UDrzHANOPcp0+47xK7dqeKIlYSh5a5WpFaswzM9S2MnjQfP0zOysAunWFRb6CFYSj1hTeFotYYXr8tYbyBpoA== + +"@formatjs/ecma402-abstract@1.6.2": + version "1.6.2" + resolved "https://registry.yarnpkg.com/@formatjs/ecma402-abstract/-/ecma402-abstract-1.6.2.tgz#9d064a2cf790769aa6721e074fb5d5c357084bb9" + integrity sha512-aLBODrSRhHaL/0WdQ0T2UsGqRbdtRRHqqrs4zwNQoRsGBEtEAvlj/rgr6Uea4PSymVJrbZBoAyECM2Z3Pq4i0g== + dependencies: + tslib "^2.1.0" + +"@formatjs/intl-datetimeformat@3.2.12": + version "3.2.12" + resolved "https://registry.yarnpkg.com/@formatjs/intl-datetimeformat/-/intl-datetimeformat-3.2.12.tgz#c9b2e85f0267ee13ea615a8991995da3075e3b13" + integrity sha512-qvY5+dl3vlgH0iWRXwl8CG9UkSVB5uP2+HH//fyZZ01G4Ww5rxMJmia1SbUqatpoe/dX+Z+aLejCqUUyugyL2g== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-displaynames@4.0.10": + version "4.0.10" + resolved "https://registry.yarnpkg.com/@formatjs/intl-displaynames/-/intl-displaynames-4.0.10.tgz#5bbd1bbcd64a036b4be27798b650c864dcf4466a" + integrity sha512-KmYJQHynGnnMeqIWVXhbzCMcEC8lg1TfGVdcO9May6paDT+dksZoOBQc741t7iXi/YVO/wXEZdmXhUNX7ODZug== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-listformat@5.0.10": + version "5.0.10" + resolved "https://registry.yarnpkg.com/@formatjs/intl-listformat/-/intl-listformat-5.0.10.tgz#9f8c4ad5e8a925240e151ba794c41fba01f742cc" + integrity sha512-FLtrtBPfBoeteRlYcHvThYbSW2YdJTllR0xEnk6cr/6FRArbfPRYMzDpFYlESzb5g8bpQMKZy+kFQ6V2Z+5KaA== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl-relativetimeformat@8.1.2": + version "8.1.2" + resolved "https://registry.yarnpkg.com/@formatjs/intl-relativetimeformat/-/intl-relativetimeformat-8.1.2.tgz#119f3dce97458991f86bf34a736880e4a7bc1697" + integrity sha512-LZUxbc9GHVGmDc4sqGAXugoxhvZV7EG2lG2c0aKERup2ixvmDMbbEN3iEEr5aKkP7YyGxXxgqDn2dwg7QCPR6Q== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +"@formatjs/intl@1.8.2": + version "1.8.2" + resolved "https://registry.yarnpkg.com/@formatjs/intl/-/intl-1.8.2.tgz#6090e6c1826a92e70668dfe08b4ba30127ea3a85" + integrity sha512-9xHoNKPv4qQIQ5AVfpQbIPZanz50i7oMtZWrd6Fz7Q2GM/5uhBr9mrCrY1tz/+diP7uguKmhj1IweLYaxY3DTQ== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + "@formatjs/intl-datetimeformat" "3.2.12" + "@formatjs/intl-displaynames" "4.0.10" + "@formatjs/intl-listformat" "5.0.10" + "@formatjs/intl-relativetimeformat" "8.1.2" + fast-memoize "^2.5.2" + intl-messageformat "9.5.2" + intl-messageformat-parser "6.4.2" + tslib "^2.1.0" + +"@istanbuljs/load-nyc-config@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== + dependencies: + camelcase "^5.3.1" + find-up "^4.1.0" + get-package-type "^0.1.0" + js-yaml "^3.13.1" + resolve-from "^5.0.0" + +"@istanbuljs/schema@^0.1.2": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + +"@jest/console@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.6.2.tgz#4e04bc464014358b03ab4937805ee36a0aeb98f2" + integrity sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + jest-message-util "^26.6.2" + jest-util "^26.6.2" + slash "^3.0.0" + +"@jest/core@^26.6.3": + version "26.6.3" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.6.3.tgz#7639fcb3833d748a4656ada54bde193051e45fad" + integrity sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/reporters" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-changed-files "^26.6.2" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-resolve-dependencies "^26.6.3" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + jest-watcher "^26.6.2" + micromatch "^4.0.2" + p-each-series "^2.1.0" + rimraf "^3.0.0" + slash "^3.0.0" + strip-ansi "^6.0.0" + +"@jest/environment@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.6.2.tgz#ba364cc72e221e79cc8f0a99555bf5d7577cf92c" + integrity sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA== + dependencies: + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + +"@jest/fake-timers@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.6.2.tgz#459c329bcf70cee4af4d7e3f3e67848123535aad" + integrity sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA== + dependencies: + "@jest/types" "^26.6.2" + "@sinonjs/fake-timers" "^6.0.1" + "@types/node" "*" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-util "^26.6.2" + +"@jest/globals@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.6.2.tgz#5b613b78a1aa2655ae908eba638cc96a20df720a" + integrity sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/types" "^26.6.2" + expect "^26.6.2" + +"@jest/reporters@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.6.2.tgz#1f518b99637a5f18307bd3ecf9275f6882a667f6" + integrity sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw== + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@jest/console" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.2" + graceful-fs "^4.2.4" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-instrument "^4.0.3" + istanbul-lib-report "^3.0.0" + istanbul-lib-source-maps "^4.0.0" + istanbul-reports "^3.0.2" + jest-haste-map "^26.6.2" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + slash "^3.0.0" + source-map "^0.6.0" + string-length "^4.0.1" + terminal-link "^2.0.0" + v8-to-istanbul "^7.0.0" + optionalDependencies: + node-notifier "^8.0.0" + +"@jest/source-map@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.6.2.tgz#29af5e1e2e324cafccc936f218309f54ab69d535" + integrity sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA== + dependencies: + callsites "^3.0.0" + graceful-fs "^4.2.4" + source-map "^0.6.0" + +"@jest/test-result@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.6.2.tgz#55da58b62df134576cc95476efa5f7949e3f5f18" + integrity sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/istanbul-lib-coverage" "^2.0.0" + collect-v8-coverage "^1.0.0" + +"@jest/test-sequencer@^26.6.3": + version "26.6.3" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz#98e8a45100863886d074205e8ffdc5a7eb582b17" + integrity sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw== + dependencies: + "@jest/test-result" "^26.6.2" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + +"@jest/transform@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" + integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^26.6.2" + babel-plugin-istanbul "^6.0.0" + chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-regex-util "^26.0.0" + jest-util "^26.6.2" + micromatch "^4.0.2" + pirates "^4.0.1" + slash "^3.0.0" + source-map "^0.6.1" + write-file-atomic "^3.0.0" + +"@jest/types@^25.5.0": + version "25.5.0" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-25.5.0.tgz#4d6a4793f7b9599fc3680877b856a97dbccf2a9d" + integrity sha512-OXD0RgQ86Tu3MazKo8bnrkDRaDXXMGUqd+kTtLtK1Zb7CRzQcaSRPPPV37SvYTdevXEBVxe0HXylEjs8ibkmCw== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^1.1.1" + "@types/yargs" "^15.0.0" + chalk "^3.0.0" + +"@jest/types@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" + integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + +"@jridgewell/gen-mapping@^0.3.0", "@jridgewell/gen-mapping@^0.3.2": + version "0.3.3" + resolved "https://registry.yarnpkg.com/@jridgewell/gen-mapping/-/gen-mapping-0.3.3.tgz#7e02e6eb5df901aaedb08514203b096614024098" + integrity sha512-HLhSWOLRi875zjjMG/r+Nv0oCW8umGb0BgEhyX3dDX3egwZtB8PqLnjz3yedt8R5StBrzcg4aBpnh8UA9D1BoQ== + dependencies: + "@jridgewell/set-array" "^1.0.1" + "@jridgewell/sourcemap-codec" "^1.4.10" + "@jridgewell/trace-mapping" "^0.3.9" + +"@jridgewell/resolve-uri@^3.1.0": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@jridgewell/resolve-uri/-/resolve-uri-3.1.1.tgz#c08679063f279615a3326583ba3a90d1d82cc721" + integrity sha512-dSYZh7HhCDtCKm4QakX0xFpsRDqjjtZf/kjI/v3T3Nwt5r8/qz/M19F9ySyOqU94SXBmeG9ttTul+YnR4LOxFA== + +"@jridgewell/set-array@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@jridgewell/set-array/-/set-array-1.1.2.tgz#7c6cf998d6d20b914c0a55a91ae928ff25965e72" + integrity sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw== + +"@jridgewell/source-map@^0.3.3": + version "0.3.5" + resolved "https://registry.yarnpkg.com/@jridgewell/source-map/-/source-map-0.3.5.tgz#a3bb4d5c6825aab0d281268f47f6ad5853431e91" + integrity sha512-UTYAUj/wviwdsMfzoSJspJxbkH5o1snzwX0//0ENX1u/55kkZZkcTZP6u9bwKGkv+dkk9at4m1Cpt0uY80kcpQ== + dependencies: + "@jridgewell/gen-mapping" "^0.3.0" + "@jridgewell/trace-mapping" "^0.3.9" + +"@jridgewell/sourcemap-codec@^1.4.10", "@jridgewell/sourcemap-codec@^1.4.14", "@jridgewell/sourcemap-codec@^1.4.15": + version "1.4.15" + resolved "https://registry.yarnpkg.com/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.4.15.tgz#d7c6e6755c78567a951e04ab52ef0fd26de59f32" + integrity sha512-eF2rxCRulEKXHTRiDrDy6erMYWqNw4LPdQ8UQA4huuxaQsVeRPFl2oM8oDGxMFhJUWZf9McpLtJasDDZb/Bpeg== + +"@jridgewell/trace-mapping@^0.3.17", "@jridgewell/trace-mapping@^0.3.9": + version "0.3.20" + resolved "https://registry.yarnpkg.com/@jridgewell/trace-mapping/-/trace-mapping-0.3.20.tgz#72e45707cf240fa6b081d0366f8265b0cd10197f" + integrity sha512-R8LcPeWZol2zR8mmH3JeKQ6QRCFb7XgUhV9ZlGhHLGyg4wpPiPZNQOOWhFZhxKw8u//yTbNGI42Bx/3paXEQ+Q== + dependencies: + "@jridgewell/resolve-uri" "^3.1.0" + "@jridgewell/sourcemap-codec" "^1.4.14" + +"@jsdevtools/ono@^7.1.3": + version "7.1.3" + resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" + integrity sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg== + +"@msgpack/msgpack@2.7.2": + version "2.7.2" + resolved "https://registry.yarnpkg.com/@msgpack/msgpack/-/msgpack-2.7.2.tgz#f34b8aa0c49f0dd55eb7eba577081299cbf3f90b" + integrity sha512-rYEi46+gIzufyYUAoHDnRzkWGxajpD9vVXFQ3g1vbjrBm6P7MBmm+s/fqPa46sxa+8FOUdEuRQKaugo5a4JWpw== + +"@opentelemetry/api-metrics@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api-metrics/-/api-metrics-0.32.0.tgz#0f09f78491a4b301ddf54a8b8a38ffa99981f645" + integrity sha512-g1WLhpG8B6iuDyZJFRGsR+JKyZ94m5LEmY2f+duEJ9Xb4XRlLHrZvh6G34OH6GJ8iDHxfHb/sWjJ1ZpkI9yGMQ== + dependencies: + "@opentelemetry/api" "^1.0.0" + +"@opentelemetry/api@1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.2.0.tgz#89ef99401cde6208cff98760b67663726ef26686" + integrity sha512-0nBr+VZNKm9tvNDZFstI3Pq1fCTEDK5OZTnVKNvBNAKgd0yIvmwsP4m61rEv7ZP+tOUjWJhROpxK5MsnlF911g== + +"@opentelemetry/api@^1.0.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.6.0.tgz#de2c6823203d6f319511898bb5de7e70f5267e19" + integrity sha512-OWlrQAnWn9577PhVgqjUvMr1pg57Bc4jv0iL4w0PRuOSRvq67rvHW9Ie/dZVMvCzhSCB+UxhcY/PmCmFj33Q+g== + +"@opentelemetry/core@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.6.0.tgz#c55f8ab7496acef7dbd8c4eedef6a4d4a0143c95" + integrity sha512-MsEhsyCTfYme6frK8/AqEWwbS9SB3Ta5bjgz4jPQJjL7ijUM3JiLVvqh/kHo1UlUjbUbLmGG7jA5Nw4d7SMcLQ== + dependencies: + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/exporter-trace-otlp-http@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.32.0.tgz#55773290a221855c4e8c422e8fb5e7ff4aa5f04e" + integrity sha512-8n44NDoEFoYG3mMToZxNyUKkHSGfzSShw6I2V5FApcH7rid20LmKiNuzc7lACneDIZBld+GGpLRuFhWniW8JhA== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/otlp-exporter-base" "0.32.0" + "@opentelemetry/otlp-transformer" "0.32.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + +"@opentelemetry/otlp-exporter-base@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.32.0.tgz#37dde162835a8fd23fa040f07e2938deb335fc4b" + integrity sha512-Dscxu4VNKrkD1SwGKdc7bAtLViGFJC8ah6Dr/vZn22NFHXSa53lSzDdTKeSTNNWH9sCGu/65LS45VMd4PsRvwQ== + dependencies: + "@opentelemetry/core" "1.6.0" + +"@opentelemetry/otlp-transformer@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-transformer/-/otlp-transformer-0.32.0.tgz#652c8f4c56c95f7d7ec39e20573b885d27ca13f1" + integrity sha512-PFAqfKgJpTOZryPe1UMm7R578PLxsK0wCAuKSt6m8v1bN/4DO8DX4HD7k3mYGZVU5jNg8tVZSwyIpY6ryrHDMQ== + dependencies: + "@opentelemetry/api-metrics" "0.32.0" + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-metrics" "0.32.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + +"@opentelemetry/resources@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.6.0.tgz#9756894131b9b0dfbcc0cecb5d4bd040d9c1b09d" + integrity sha512-07GlHuq72r2rnJugYVdGumviQvfrl8kEPidkZSVoseLVfIjV7nzxxt5/vqs9pK7JItWOrvjRdr/jTBVayFBr/w== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/sdk-metrics@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-metrics/-/sdk-metrics-0.32.0.tgz#463cd3a2b267f044db9aaab85887a171710345a0" + integrity sha512-zC9RCOIsXRqOHWmWfcxArtDHbip2/jaIH1yu/OKau/shDZYFluAxY6zAEYIb4YEAzKKEF+fpaoRgpodDWNGVGA== + dependencies: + "@opentelemetry/api-metrics" "0.32.0" + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + lodash.merge "4.6.2" + +"@opentelemetry/sdk-trace-base@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.6.0.tgz#8b1511c0b0f3e6015e345f5ed4a683adf03e3e3c" + integrity sha512-yx/uuzHdT0QNRSEbCgXHc0GONk90uvaFcPGaNowIFSl85rTp4or4uIIMkG7R8ckj8xWjDSjsaztH6yQxoZrl5g== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/sdk-trace-web@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.6.0.tgz#ef243e3e1102b53bc0afa93c29c18fc7e2f66e52" + integrity sha512-iOgmygvooaZm4Vi6mh5FM7ubj/e+MqDn8cDPCNfk6V8Q2yWj0co8HKWPFo0RoxSLYyPaFnEEXOXWWuE4OTwLKw== + dependencies: + "@opentelemetry/core" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + "@opentelemetry/semantic-conventions" "1.6.0" + +"@opentelemetry/semantic-conventions@1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.6.0.tgz#ed410c9eb0070491cff9fe914246ce41f88d6f74" + integrity sha512-aPfcBeLErM/PPiAuAbNFLN5sNbZLc3KZlar27uohllN8Zs6jJbHyJU1y7cMA6W/zuq+thkaG8mujiS+3iD/FWQ== + +"@polywrap/asyncify-js@0.12.2", "@polywrap/asyncify-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/asyncify-js/-/asyncify-js-0.12.2.tgz#e5b264bb38f7108beb1b83c43fa6c0ce3459f7a3" + integrity sha512-1dj/D0O4KosIw6q+4xKSu9w5Vry6zb3T5YgIBgBHuPvp3+146YUsuY1DFNFOKVs5XFfiilp10kkDpNIr4bi6mQ== + +"@polywrap/client-config-builder-js@0.12.2", "@polywrap/client-config-builder-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/client-config-builder-js/-/client-config-builder-js-0.12.2.tgz#b1c1be1e17bdc43b36df96517460c4860b395aad" + integrity sha512-N09BTlspeLIahvDeMKBqRtSiWLAUj5RH4aExLy3CiRW1Hdq+Xpt7evxjImK+ugnAFOM3c2L8LK63qou600sRgw== + dependencies: + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/plugin-js" "0.12.2" + "@polywrap/sys-config-bundle-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + "@polywrap/web3-config-bundle-js" "0.12.2" + +"@polywrap/client-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/client-js/-/client-js-0.12.2.tgz#eb6b80c8ae35483c7dd0e773be79aa78e0a232ca" + integrity sha512-loEkFWEnXOxYwfnC61aZRYo+YGPbsIcFg+UO64lIIRKCTb6bpzueLy97RWGVf1YF0tDtomhwwCY+QNST2gy06Q== + dependencies: + "@polywrap/client-config-builder-js" "0.12.2" + "@polywrap/core-client-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/plugin-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/concurrent-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/concurrent-plugin-js/-/concurrent-plugin-js-0.12.0.tgz#b3aba6a99cb2531b5333918d780f82a506e344d1" + integrity sha512-Y7rq3MnXbi/sshbIs8lFZOUppXiscJLRqUo1qMYYZrHjDFTzs1c0bTHImxEEpygtnHLZnZ3ZaUvynzipLiL+Jw== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/msgpack-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/config-bundle-types-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/config-bundle-types-js/-/config-bundle-types-js-0.12.2.tgz#00e40cf882001be1ae82493052da19dac02708f3" + integrity sha512-ZRa3EOh5i/Gq/7HDS1IG5FJcBXx31XFeHAjrwKPU23x5eSVux3gIoFzgg3zv4CzQtDizUv+ds76LGKn6vFWX/A== + dependencies: + "@polywrap/core-js" "0.12.2" + +"@polywrap/core-client-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/core-client-js/-/core-client-js-0.12.2.tgz#88f2013a50b56979bc6145098b05b6a7725bb1f1" + integrity sha512-7sN3KErSun7V0pWOfI0AhKqsC1zf7njRaYM2EMeGYqXoHm9P2OteNPA2j9qn1FYPQHHZI/MQaVrCDAHaCeXuJg== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/core-js@0.12.2", "@polywrap/core-js@~0.12.0", "@polywrap/core-js@~0.12.0-pre.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/core-js/-/core-js-0.12.2.tgz#b85f0314a30696db7ef265bfb89b4f25c194d900" + integrity sha512-AezoxK1YX+qJl06opUeAyjBfA+LIEHDPMoZZWeI+pyQHhuDUHyLv4xh4uzXELNnzfLo0Ap39qKAQ5u2HAs1DJA== + dependencies: + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/datetime-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/datetime-plugin-js/-/datetime-plugin-js-0.12.0.tgz#d04daf01c060e664ddbeea3d72a530a0b6d709fc" + integrity sha512-iDMa+250UxtJYD/I7eG3aRUrf73g8OgnhO9CrIaSEbsi/X3eKVfXIQPXSowqXSLhwG6LceDc/zn19uEPXZSvUg== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/ethereum-wallet-js@~0.1.0": + version "0.1.0" + resolved "https://registry.yarnpkg.com/@polywrap/ethereum-wallet-js/-/ethereum-wallet-js-0.1.0.tgz#1af5800aab3c4cedfcd1e4e5e305d5d5ef733bea" + integrity sha512-GTg4X0gyFHXNAHSDxe6QfiWJv8z/pwobnVyKw4rcmBLw7tqcTiYXk4kU0QfWV3JLV/8rvzESl+FtXPC68dUMIA== + dependencies: + "@ethersproject/address" "5.7.0" + "@ethersproject/providers" "5.7.0" + "@polywrap/core-js" "~0.12.0-pre.0" + "@polywrap/plugin-js" "~0.12.0-pre.0" + ethers "5.7.0" + +"@polywrap/file-system-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/file-system-plugin-js/-/file-system-plugin-js-0.12.0.tgz#0d88113e629d51173db0b30c34c296aeb8b23eea" + integrity sha512-hv6BCjnMwE3/CG5lBpucKKpcCE7DyLhshbv+KRSgz1sftI9CalogJbP6irkySgV7dDpMnQf1iZGTntv8HLwFOw== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/http-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/http-plugin-js/-/http-plugin-js-0.12.0.tgz#f297e192bbca16f81bbdf16dbc16a7664c93def5" + integrity sha512-DVXfRdF72ozLBXPQFAWEiz72gCF6wSw/H8q53DxeOXh3gKQ5zBpes5INEMpBpA9vzhqS73Y3KyMHTCrrXecv0w== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + axios "0.21.4" + form-data "4.0.0" + +"@polywrap/logger-plugin-js@~0.12.0": + version "0.12.0" + resolved "https://registry.yarnpkg.com/@polywrap/logger-plugin-js/-/logger-plugin-js-0.12.0.tgz#e724bb5504336e4fbf1f0f9757cfe893f9bd5297" + integrity sha512-M6TXUSBTFRWLsTaT3gfNlqCRvrpgg60klD7g3zzEKeklkwy19TbcrkW2CVxfr0HZwiL1TVUuLBdDJc1sqE0A8g== + dependencies: + "@polywrap/core-js" "~0.12.0" + "@polywrap/plugin-js" "~0.12.0" + +"@polywrap/logging-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/logging-js/-/logging-js-0.12.1.tgz#2d52e3f5e9d32cf5463222fcc1b00d4f98aacacd" + integrity sha512-yAGFhXIdgabITlZptyGLOaSjor88R98nV6Kzxqsl6sVxHKZOEf5Xj4MtlXYFaeh8ha6x8BUkZLNv5s3SlW5ttw== + +"@polywrap/msgpack-js@0.12.2", "@polywrap/msgpack-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/msgpack-js/-/msgpack-js-0.12.2.tgz#27562f98a60e82b55f7d9147bc13feb346cf47de" + integrity sha512-FsdHLRFRSfjh+O6zsjX3G2VCBJQDswnKGQKtp8IckPe0PJ0gpu9NPEvCFS4FfbF+Kmw+A7tUDrZ2I4wsuZsb9g== + dependencies: + "@msgpack/msgpack" "2.7.2" + +"@polywrap/os-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/os-js/-/os-js-0.12.1.tgz#0f8f06199e3b21331a4cbee5b7b86e147c26129f" + integrity sha512-vYsGpCHMhxPAUzbxsik0lTupHuUVwkrxojjLZL89N8yP67mhB9gTJeAYgDKXBTOo9E5bVFL07gDdaiDY+icfAQ== + +"@polywrap/plugin-js@0.12.2", "@polywrap/plugin-js@~0.12.0", "@polywrap/plugin-js@~0.12.0-pre.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/plugin-js/-/plugin-js-0.12.2.tgz#aca362a9992ac8ab619f171c08e876524ad35dac" + integrity sha512-8mJy5Dk1Np+cPoXKMWNuazxd2oMv/UKCOPFX0Sam3BqE9BtPbjXRUVG55vOtD6x+Ozhe3QIr83qXsfNOxNvLGw== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/polywrap-manifest-schemas@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/polywrap-manifest-schemas/-/polywrap-manifest-schemas-0.12.1.tgz#ebca3d6f1039fb8bdd6c31164f00ea861f49ce2c" + integrity sha512-5sHO6jL8QPoqXXDj2wb/pqRmKjZ0VxxDYaugRN2qeICHTF3rFU4aqs1y/qyJw3FGNFTLGDkLlPqnYDk8EZB5xQ== + +"@polywrap/polywrap-manifest-types-js@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/polywrap-manifest-types-js/-/polywrap-manifest-types-js-0.12.1.tgz#6884ce7c72981c2e73750fc4e706162bdcc560f4" + integrity sha512-fUsrZ1D5U9j+E56EB98ZHx1/xHflPXXizY7vNvxDRkzjhkCvlwEY61MfcNNWzakjyq1Fb7kwzxxZIp8XJZFoXw== + dependencies: + "@polywrap/logging-js" "0.12.1" + "@polywrap/polywrap-manifest-schemas" "0.12.1" + jsonschema "1.4.0" + semver "7.5.3" + yaml "2.2.2" + +"@polywrap/result@0.12.2", "@polywrap/result@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/result/-/result-0.12.2.tgz#99ad60da087db4dd2ad760ba1bd27a752d4af45f" + integrity sha512-gcRUsWz3Qyd7CxWqrTTj1NCl2h74yI2lgqMlUfCn4TVdBmRqbyTe5iP+g+R/qs0qO0Ud8Sx0GAfbSuZfzClJ2g== + +"@polywrap/schema-bind@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-bind/-/schema-bind-0.12.1.tgz#a7faa9681f468d9731c08399f4f121b2e76cbc8a" + integrity sha512-5VFpEoHW5Q2qnlXtt5PZs5NFWjYV00GDiQH3n25JaDK7vkTsf4rn4DZ5UlM/iKW6FLw6PpMUPquXapPtj9W3+w== + dependencies: + "@polywrap/client-js" "~0.12.0" + "@polywrap/os-js" "0.12.1" + "@polywrap/schema-parse" "0.12.1" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + mustache "4.0.1" + +"@polywrap/schema-compose@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-compose/-/schema-compose-0.12.1.tgz#7b6955522e47bbc066a30dcdf03d47263a2945e3" + integrity sha512-ie1fPOEW2FtZv/NDydFpolEoGLZfb34TND38LxiVkfe+Wnyp7aOKR0lq1cvP1g+9POZPv5TzL3Gb/jb+54Z2EQ== + dependencies: + "@polywrap/schema-parse" "0.12.1" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + graphql "15.5.0" + mustache "4.0.1" + +"@polywrap/schema-parse@0.12.1": + version "0.12.1" + resolved "https://registry.yarnpkg.com/@polywrap/schema-parse/-/schema-parse-0.12.1.tgz#2764ad088537775cf9caccf7157b538d77a74f83" + integrity sha512-wCiGM2G5c/9+6mAXD3KTFi+avvReWV2PpfWqfH3bB1u7uun99Ed2yeXXj6034I+YqIZyVIR34nZq9YAm0Fn0Lw== + dependencies: + "@dorgjelli/graphql-schema-cycles" "1.1.4" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + graphql "15.5.0" + +"@polywrap/sys-config-bundle-js@0.12.2", "@polywrap/sys-config-bundle-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/sys-config-bundle-js/-/sys-config-bundle-js-0.12.2.tgz#6ad6f0d2f31c6668e7642801c0adcab22a4f654e" + integrity sha512-w6zewNacyXPO/LjmSyHqlkbtT8kq2BR0ydZTU1oO0SaeL08ua7FLe2H6v01vgqOCwHuwV2xsW0Y/neHHZx/cYw== + dependencies: + "@polywrap/concurrent-plugin-js" "~0.12.0" + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/datetime-plugin-js" "~0.12.0" + "@polywrap/file-system-plugin-js" "~0.12.0" + "@polywrap/http-plugin-js" "~0.12.0" + "@polywrap/logger-plugin-js" "~0.12.0" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + base64-to-uint8array "1.0.0" + +"@polywrap/tracing-js@0.12.2": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/tracing-js/-/tracing-js-0.12.2.tgz#549e54af500c4ba3384107853db453cd14cc7960" + integrity sha512-nApKdEPvfWijCoyDuq6ib6rgo7iWJH09Nf8lF1dTBafj59C3dR7aqyOO4NH8znZAO1poeiG6rPqsrnLYGM9CMA== + dependencies: + "@fetsorn/opentelemetry-console-exporter" "0.0.3" + "@opentelemetry/api" "1.2.0" + "@opentelemetry/exporter-trace-otlp-http" "0.32.0" + "@opentelemetry/resources" "1.6.0" + "@opentelemetry/sdk-trace-base" "1.6.0" + "@opentelemetry/sdk-trace-web" "1.6.0" + +"@polywrap/uri-resolver-extensions-js@0.12.2", "@polywrap/uri-resolver-extensions-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/uri-resolver-extensions-js/-/uri-resolver-extensions-js-0.12.2.tgz#b8b2a3714f8bf36da3cd8d560b0f77af1e54b2ea" + integrity sha512-WA1ythVxqviaQWPHmWVegeeXEstq/+WDWF3Xdkm1Hbrlb10rPSzL7iq4IH8Mz2jFfjtA5YTQoK+xtw55koWH5w== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/uri-resolvers-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/uri-resolvers-js@0.12.2", "@polywrap/uri-resolvers-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/uri-resolvers-js/-/uri-resolvers-js-0.12.2.tgz#8c2393a56ae12445be171b8d8feeb803b114c32b" + integrity sha512-5J3unEYxEMMSI+2lHVs5SmvpSyAbDie7ZJgt2djL64+nOjisY8hBI/TBd2mCgrHy3fziE7DCZhA+d70ChtLCBg== + dependencies: + "@polywrap/core-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/wasm-js@0.12.2", "@polywrap/wasm-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/wasm-js/-/wasm-js-0.12.2.tgz#c807d296b66c1fe12bd80ce482eb7aa4e14f08ec" + integrity sha512-x3Buycm0ZLSPL8nP+QlySwvrZPH30kyuYbl170oNCiwf4Hllv10/Dn8xSR2WAV583ZD4tI/xIYzz04NVdXABKQ== + dependencies: + "@polywrap/asyncify-js" "0.12.2" + "@polywrap/core-js" "0.12.2" + "@polywrap/msgpack-js" "0.12.2" + "@polywrap/result" "0.12.2" + "@polywrap/tracing-js" "0.12.2" + "@polywrap/wrap-manifest-types-js" "0.12.2" + +"@polywrap/web3-config-bundle-js@0.12.2", "@polywrap/web3-config-bundle-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/web3-config-bundle-js/-/web3-config-bundle-js-0.12.2.tgz#87cd4b523a2df4f0debfa45e0b9c18c3116e9931" + integrity sha512-sY2cFw8TBXrIxXI8U50cSBwTzudsVVMztieA0hMIBw6XkEmFLGncn7RMnNJ5SBU8Cs+RFbwi9KATgNWQi5GKrQ== + dependencies: + "@polywrap/config-bundle-types-js" "0.12.2" + "@polywrap/ethereum-wallet-js" "~0.1.0" + "@polywrap/sys-config-bundle-js" "0.12.2" + "@polywrap/uri-resolver-extensions-js" "0.12.2" + "@polywrap/wasm-js" "0.12.2" + base64-to-uint8array "1.0.0" + +"@polywrap/wrap-manifest-types-js@0.12.2", "@polywrap/wrap-manifest-types-js@~0.12.0": + version "0.12.2" + resolved "https://registry.yarnpkg.com/@polywrap/wrap-manifest-types-js/-/wrap-manifest-types-js-0.12.2.tgz#c27f5f320b53de6744cfc2344bb90a1e6ff9e8d6" + integrity sha512-YlOCK1V0fFitunWvsRrQFiQMPETARLMd/d/iCeubkUzIh4TUr2gEtHbc8n2C9FYUFa4zLcY84mKfdDSyTf49jw== + dependencies: + "@polywrap/msgpack-js" "0.12.2" + ajv "8.12.0" + semver "~7.5.4" + +"@rollup/plugin-commonjs@^25.0.4": + version "25.0.7" + resolved "https://registry.yarnpkg.com/@rollup/plugin-commonjs/-/plugin-commonjs-25.0.7.tgz#145cec7589ad952171aeb6a585bbeabd0fd3b4cf" + integrity sha512-nEvcR+LRjEjsaSsc4x3XZfCCvZIaSMenZu/OiwOKGN2UhQpAYI7ru7czFvyWbErlpoGjnSX3D5Ch5FcMA3kRWQ== + dependencies: + "@rollup/pluginutils" "^5.0.1" + commondir "^1.0.1" + estree-walker "^2.0.2" + glob "^8.0.3" + is-reference "1.2.1" + magic-string "^0.30.3" + +"@rollup/plugin-node-resolve@^15.2.0": + version "15.2.3" + resolved "https://registry.yarnpkg.com/@rollup/plugin-node-resolve/-/plugin-node-resolve-15.2.3.tgz#e5e0b059bd85ca57489492f295ce88c2d4b0daf9" + integrity sha512-j/lym8nf5E21LwBT4Df1VD6hRO2L2iwUeUmP7litikRsVp1H6NWx20NEp0Y7su+7XGc476GnXXc4kFeZNGmaSQ== + dependencies: + "@rollup/pluginutils" "^5.0.1" + "@types/resolve" "1.20.2" + deepmerge "^4.2.2" + is-builtin-module "^3.2.1" + is-module "^1.0.0" + resolve "^1.22.1" + +"@rollup/plugin-terser@^0.4.3": + version "0.4.4" + resolved "https://registry.yarnpkg.com/@rollup/plugin-terser/-/plugin-terser-0.4.4.tgz#15dffdb3f73f121aa4fbb37e7ca6be9aeea91962" + integrity sha512-XHeJC5Bgvs8LfukDwWZp7yeqin6ns8RTl2B9avbejt6tZqsqvVoWI7ZTQrcNsfKEDWBTnTxM8nMDkO2IFFbd0A== + dependencies: + serialize-javascript "^6.0.1" + smob "^1.0.0" + terser "^5.17.4" + +"@rollup/plugin-typescript@^11.1.2": + version "11.1.5" + resolved "https://registry.yarnpkg.com/@rollup/plugin-typescript/-/plugin-typescript-11.1.5.tgz#039c763bf943a5921f3f42be255895e75764cb91" + integrity sha512-rnMHrGBB0IUEv69Q8/JGRD/n4/n6b3nfpufUu26axhUcboUzv/twfZU8fIBbTOphRAe0v8EyxzeDpKXqGHfyDA== + dependencies: + "@rollup/pluginutils" "^5.0.1" + resolve "^1.22.1" + +"@rollup/pluginutils@^5.0.1": + version "5.0.5" + resolved "https://registry.yarnpkg.com/@rollup/pluginutils/-/pluginutils-5.0.5.tgz#bbb4c175e19ebfeeb8c132c2eea0ecb89941a66c" + integrity sha512-6aEYR910NyP73oHiJglti74iRyOwgFU4x3meH/H8OJx6Ry0j6cOVZ5X/wTvub7G7Ao6qaHBEaNsV3GLJkSsF+Q== + dependencies: + "@types/estree" "^1.0.0" + estree-walker "^2.0.2" + picomatch "^2.3.1" + +"@sinonjs/commons@^1.7.0": + version "1.8.6" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.6.tgz#80c516a4dc264c2a69115e7578d62581ff455ed9" + integrity sha512-Ky+XkAkqPZSm3NLBeUng77EBQl3cmeJhITaGHdYH8kjVB+aun3S4XBRti2zt17mtt0mIUDiNxYeoJm6drVvBJQ== + dependencies: + type-detect "4.0.8" + +"@sinonjs/fake-timers@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" + integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== + dependencies: + "@sinonjs/commons" "^1.7.0" + +"@tootallnate/once@1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== + +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7": + version "7.20.3" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.20.3.tgz#d5625a50b6f18244425a1359a858c73d70340778" + integrity sha512-54fjTSeSHwfan8AyHWrKbfBWiEUrNTZsUwPTDSNaaP1QDQIZbeNUg3a59E9D+375MzUw/x1vx2/0F5LBz+AeYA== + dependencies: + "@babel/parser" "^7.20.7" + "@babel/types" "^7.20.7" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + +"@types/babel__generator@*": + version "7.6.6" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.6.tgz#676f89f67dc8ddaae923f70ebc5f1fa800c031a8" + integrity sha512-66BXMKb/sUWbMdBNdMvajU7i/44RkrA3z/Yt1c7R5xejt8qh84iU54yUWCtm0QwGJlDcf/gg4zd/x4mpLAlb/w== + dependencies: + "@babel/types" "^7.0.0" + +"@types/babel__template@*": + version "7.4.3" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.3.tgz#db9ac539a2fe05cfe9e168b24f360701bde41f5f" + integrity sha512-ciwyCLeuRfxboZ4isgdNZi/tkt06m8Tw6uGbBSBgWrnnZGNXiEyM27xc/PjXGQLqlZ6ylbgHMnm7ccF9tCkOeQ== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": + version "7.20.3" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.20.3.tgz#a971aa47441b28ef17884ff945d0551265a2d058" + integrity sha512-Lsh766rGEFbaxMIDH7Qa+Yha8cMVI3qAK6CHt3OR0YfxOIn5Z54iHiyDRycHrBqeIiqGa20Kpsv1cavfBKkRSw== + dependencies: + "@babel/types" "^7.20.7" + +"@types/estree@*", "@types/estree@^1.0.0": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-1.0.3.tgz#2be19e759a3dd18c79f9f436bd7363556c1a73dd" + integrity sha512-CS2rOaoQ/eAgAfcTfq6amKG7bsN+EMcgGY4FAFQdvSj2y1ixvOZTUA9mOtCai7E1SYu283XNw7urKK30nP3wkQ== + +"@types/graceful-fs@^4.1.2": + version "4.1.8" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.8.tgz#417e461e4dc79d957dc3107f45fe4973b09c2915" + integrity sha512-NhRH7YzWq8WiNKVavKPBmtLYZHxNY19Hh+az28O/phfp68CF45pMFud+ZzJ8ewnxnC5smIdF3dqFeiSUQ5I+pw== + dependencies: + "@types/node" "*" + +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.5.tgz#fdfdd69fa16d530047d9963635bd77c71a08c068" + integrity sha512-zONci81DZYCZjiLe0r6equvZut0b+dBRPBN5kBDjsONnutYNtJMoWQ9uR2RkL1gLG9NMTzvf+29e5RFfPbeKhQ== + +"@types/istanbul-lib-report@*": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.2.tgz#394798d5f727402eb5ec99eb9618ffcd2b7645a1" + integrity sha512-8toY6FgdltSdONav1XtUHl4LN1yTmLza+EuDazb/fEmRNCwjyqNVIQWs2IfC74IqjHkREs/nQ2FWq5kZU9IC0w== + dependencies: + "@types/istanbul-lib-coverage" "*" + +"@types/istanbul-reports@^1.1.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-1.1.2.tgz#e875cc689e47bce549ec81f3df5e6f6f11cfaeb2" + integrity sha512-P/W9yOX/3oPZSpaYOCQzGqgCQRXn0FFO/V8bWrCQs+wLmvVVxk6CRBXALEvNs9OHIatlnlFokfhuDo2ug01ciw== + dependencies: + "@types/istanbul-lib-coverage" "*" + "@types/istanbul-lib-report" "*" + +"@types/istanbul-reports@^3.0.0": + version "3.0.3" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.3.tgz#0313e2608e6d6955d195f55361ddeebd4b74c6e7" + integrity sha512-1nESsePMBlf0RPRffLZi5ujYh7IH1BWL4y9pr+Bn3cJBdxz+RTP8bUFljLz9HvzhhOSWKdyBZ4DIivdL6rvgZg== + dependencies: + "@types/istanbul-lib-report" "*" + +"@types/jest@26.0.8": + version "26.0.8" + resolved "https://registry.yarnpkg.com/@types/jest/-/jest-26.0.8.tgz#f5c5559cf25911ce227f7ce30f1f160f24966369" + integrity sha512-eo3VX9jGASSuv680D4VQ89UmuLZneNxv2MCZjfwlInav05zXVJTzfc//lavdV0GPwSxsXJTy2jALscB7Acqg0g== + dependencies: + jest-diff "^25.2.1" + pretty-format "^25.2.1" + +"@types/json-schema@^7.0.6": + version "7.0.14" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.14.tgz#74a97a5573980802f32c8e47b663530ab3b6b7d1" + integrity sha512-U3PUjAudAdJBeC2pgN8uTIKgxrb4nlDF3SF0++EldXQvQBGkpFZMSnwQiIoDU77tv45VgNkl/L4ouD+rEomujw== + +"@types/node@*": + version "20.8.8" + resolved "https://registry.yarnpkg.com/@types/node/-/node-20.8.8.tgz#adee050b422061ad5255fc38ff71b2bb96ea2a0e" + integrity sha512-YRsdVxq6OaLfmR9Hy816IMp33xOBjfyOgUd77ehqg96CFywxAPbDbXvAsuN2KVg2HOT8Eh6uAfU+l4WffwPVrQ== + dependencies: + undici-types "~5.25.1" + +"@types/normalize-package-data@^2.4.0": + version "2.4.3" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.3.tgz#291c243e4b94dbfbc0c0ee26b7666f1d5c030e2c" + integrity sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg== + +"@types/prettier@^2.0.0": + version "2.7.3" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.7.3.tgz#3e51a17e291d01d17d3fc61422015a933af7a08f" + integrity sha512-+68kP9yzs4LMp7VNh8gdzMSPZFL44MLGqiHWvttYJe+6qnuVr4Ek9wSBQoveqY/r+LwjCcU29kNVkidwim+kYA== + +"@types/resolve@1.20.2": + version "1.20.2" + resolved "https://registry.yarnpkg.com/@types/resolve/-/resolve-1.20.2.tgz#97d26e00cd4a0423b4af620abecf3e6f442b7975" + integrity sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q== + +"@types/stack-utils@^2.0.0": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.2.tgz#01284dde9ef4e6d8cef6422798d9a3ad18a66f8b" + integrity sha512-g7CK9nHdwjK2n0ymT2CW698FuWJRIx+RP6embAzZ2Qi8/ilIrA1Imt2LVSeHUzKvpoi7BhmmQcXz95eS0f2JXw== + +"@types/yargs-parser@*": + version "21.0.2" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-21.0.2.tgz#7bd04c5da378496ef1695a1008bf8f71847a8b8b" + integrity sha512-5qcvofLPbfjmBfKaLfj/+f+Sbd6pN4zl7w7VSVI5uz7m9QZTuB2aZAa2uo1wHFBNN2x6g/SoTkXmd8mQnQF2Cw== + +"@types/yargs@^15.0.0": + version "15.0.17" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.17.tgz#bea870ba551b43831bfaa75de2e4a3849c39322b" + integrity sha512-cj53I8GUcWJIgWVTSVe2L7NJAB5XWGdsoMosVvUgv1jEnMbAcsbaCzt1coUcyi8Sda5PgTWAooG8jNyDTD+CWA== + dependencies: + "@types/yargs-parser" "*" + +"@types/yauzl@^2.9.1": + version "2.10.2" + resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.10.2.tgz#dab926ef9b41a898bc943f11bca6b0bad6d4b729" + integrity sha512-Km7XAtUIduROw7QPgvcft0lIupeG8a8rdKL8RiSyKvlE7dYY31fEn41HVuQsRFDuROA8tA4K2UVL+WdfFmErBA== + dependencies: + "@types/node" "*" + +abab@^2.0.3, abab@^2.0.5: + version "2.0.6" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.6.tgz#41b80f2c871d19686216b82309231cfd3cb3d291" + integrity sha512-j2afSsaIENvHZN2B8GOpF566vZ5WVk5opAiMTvWgaQT8DkbOqsTfvNAvHoRGU2zzP8cPoqys+xHTRDWW8L+/BA== + +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.2.4, acorn@^8.8.2: + version "8.10.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.10.0.tgz#8be5b3907a67221a81ab23c7889c4c5526b62ec5" + integrity sha512-F0SAmZ8iUtS//m8DmCTA0jlh6TDKkHQyK6xc6V4KDTyZKA9dnvX9/3sRTVQrWm79glUAZbnmmNcdYwUIHWVybw== + +aes-js@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/aes-js/-/aes-js-3.0.0.tgz#e21df10ad6c2053295bcbb8dab40b09dbea87e4d" + integrity sha512-H7wUZRn8WpTq9jocdxQ2c8x2sKo9ZVmzfRE13GiNJXfp7NcKYEdvl3vspKjXox6RIG2VtaRe4JFvxG4rqp2Zuw== + +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" + +ajv@8.12.0: + version "8.12.0" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.12.0.tgz#d1a0527323e22f53562c567c00991577dfbe19d1" + integrity sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +ansi-escapes@^4.2.1: + version "4.3.2" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== + dependencies: + type-fest "^0.21.3" + +ansi-regex@^5.0.0, ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + +anymatch@^3.0.3, anymatch@~3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" + integrity sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + integrity sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA== + +arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q== + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + integrity sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ== + +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + integrity sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw== + +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== + +at-least-node@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" + integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== + +atob@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== + +axios@0.21.2: + version "0.21.2" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.2.tgz#21297d5084b2aeeb422f5d38e7be4fbb82239017" + integrity sha512-87otirqUw3e8CzHTMO+/9kh/FSgXt/eVDvipijwDtEuwbkySWZ9SBm6VEubmJ/kLKEoLQV/POhxXFb66bfekfg== + dependencies: + follow-redirects "^1.14.0" + +axios@0.21.4: + version "0.21.4" + resolved "https://registry.yarnpkg.com/axios/-/axios-0.21.4.tgz#c67b90dc0568e5c1cf2b0b858c43ba28e2eda575" + integrity sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg== + dependencies: + follow-redirects "^1.14.0" + +babel-jest@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" + integrity sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA== + dependencies: + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/babel__core" "^7.1.7" + babel-plugin-istanbul "^6.0.0" + babel-preset-jest "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + slash "^3.0.0" + +babel-plugin-istanbul@^6.0.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@istanbuljs/load-nyc-config" "^1.0.0" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-instrument "^5.0.4" + test-exclude "^6.0.0" + +babel-plugin-jest-hoist@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz#8185bd030348d254c6d7dd974355e6a28b21e62d" + integrity sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw== + dependencies: + "@babel/template" "^7.3.3" + "@babel/types" "^7.3.3" + "@types/babel__core" "^7.0.0" + "@types/babel__traverse" "^7.0.6" + +babel-preset-current-node-syntax@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== + dependencies: + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-bigint" "^7.8.3" + "@babel/plugin-syntax-class-properties" "^7.8.3" + "@babel/plugin-syntax-import-meta" "^7.8.3" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.8.3" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-top-level-await" "^7.8.3" + +babel-preset-jest@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz#747872b1171df032252426586881d62d31798fee" + integrity sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ== + dependencies: + babel-plugin-jest-hoist "^26.6.2" + babel-preset-current-node-syntax "^1.0.0" + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +base-x@^3.0.8: + version "3.0.9" + resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320" + integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ== + dependencies: + safe-buffer "^5.0.1" + +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +base64-to-uint8array@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/base64-to-uint8array/-/base64-to-uint8array-1.0.0.tgz#725f9e9886331b43785cadd807e76803d5494e05" + integrity sha512-drjWQcees55+XQSVHYxiUF05Fj6ko3XJUoxykZEXbm0BMmNz2ieWiZGJ+6TFWnjN2saucG6pI13LS92O4kaiAg== + +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== + dependencies: + cache-base "^1.0.1" + class-utils "^0.3.5" + component-emitter "^1.2.1" + define-property "^1.0.0" + isobject "^3.0.1" + mixin-deep "^1.2.0" + pascalcase "^0.1.1" + +bech32@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/bech32/-/bech32-1.1.4.tgz#e38c9f37bf179b8eb16ae3a772b40c356d4832e9" + integrity sha512-s0IrSOzLlbvX7yp4WBfPITzpAU8sqQcpsmwXDiKwrG4r491vwCO/XpejasRNl0piBMe/DvP4Tz0mIS/X1DPJBQ== + +binary-extensions@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" + integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== + +bn.js@^4.11.9: + version "4.12.0" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-4.12.0.tgz#775b3f278efbb9718eec7361f483fb36fbbfea88" + integrity sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA== + +bn.js@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/bn.js/-/bn.js-5.2.1.tgz#0bc527a6a0d18d0aa8d5b0538ce4a77dccfa7b70" + integrity sha512-eXRvHzWyYPBuB4NBy0cmYQjGitUrtqwbvlzP3G6VFnNRbsZQIxQ10PbKKHt8gZ/HW/D/747aDl+QkDqg3KQLMQ== + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +brace-expansion@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" + integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== + dependencies: + balanced-match "^1.0.0" + +braces@^2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== + dependencies: + arr-flatten "^1.1.0" + array-unique "^0.3.2" + extend-shallow "^2.0.1" + fill-range "^4.0.0" + isobject "^3.0.1" + repeat-element "^1.1.2" + snapdragon "^0.8.1" + snapdragon-node "^2.0.1" + split-string "^3.0.2" + to-regex "^3.0.1" + +braces@^3.0.2, braces@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +brorand@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/brorand/-/brorand-1.1.0.tgz#12c25efe40a45e3c323eb8675a0a0ce57b22371f" + integrity sha512-cKV8tMCEpQs4hK/ik71d6LrPOnpkpGBR0wzxqr68g2m/LB2GxVYQroAjMJZRVM1Y4BCjCKc3vAamxSzOY2RP+w== + +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== + +browserslist@^4.21.9: + version "4.22.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.22.1.tgz#ba91958d1a59b87dab6fed8dfbcb3da5e2e9c619" + integrity sha512-FEVc202+2iuClEhZhrWy6ZiAcRLvNMyYcxZ8raemul1DYVOVdFsbqckWLdsixQZCpJlwe77Z3UTalE7jsjnKfQ== + dependencies: + caniuse-lite "^1.0.30001541" + electron-to-chromium "^1.4.535" + node-releases "^2.0.13" + update-browserslist-db "^1.0.13" + +bser@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== + dependencies: + node-int64 "^0.4.0" + +buffer-crc32@~0.2.3: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== + +buffer-from@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== + +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== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + +builtin-modules@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-3.3.0.tgz#cae62812b89801e9656336e46223e030386be7b6" + integrity sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw== + +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + +call-me-maybe@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.2.tgz#03f964f19522ba643b1b0693acb9152fe2074baa" + integrity sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ== + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase@^5.0.0, camelcase@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +camelcase@^6.0.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.3.0.tgz#5685b95eb209ac9c0c177467778c9c84df58ba9a" + integrity sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA== + +caniuse-lite@^1.0.30001541: + version "1.0.30001554" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001554.tgz#ba80d88dff9acbc0cd4b7535fc30e0191c5e2e2a" + integrity sha512-A2E3U//MBwbJVzebddm1YfNp7Nud5Ip+IPn4BozBmn4KqVX7AvluoIDFWjsv5OkGnKUXQVmMSoMKLa3ScCblcQ== + +capture-exit@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" + integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== + dependencies: + rsvp "^4.8.4" + +chalk@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.0.tgz#4e14870a618d9e2edd97dd8345fd9d9dc315646a" + integrity sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chalk@^2.4.2: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-3.0.0.tgz#3f73c2bf526591f574cc492c51e2456349f844e4" + integrity sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chalk@^4.0.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +char-regex@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== + +chokidar@3.5.1: + version "3.5.1" + resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.1.tgz#ee9ce7bbebd2b79f49f304799d5468e31e14e68a" + integrity sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw== + dependencies: + anymatch "~3.1.1" + braces "~3.0.2" + glob-parent "~5.1.0" + is-binary-path "~2.1.0" + is-glob "~4.0.1" + normalize-path "~3.0.0" + readdirp "~3.5.0" + optionalDependencies: + fsevents "~2.3.1" + +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + +cids@^0.7.1: + version "0.7.5" + resolved "https://registry.yarnpkg.com/cids/-/cids-0.7.5.tgz#60a08138a99bfb69b6be4ceb63bfef7a396b28b2" + integrity sha512-zT7mPeghoWAu+ppn8+BS1tQ5qGmbMfB4AregnQjA/qHY3GC1m1ptI9GkWNlgeu38r7CuRdXB47uY2XgAYt6QVA== + dependencies: + buffer "^5.5.0" + class-is "^1.1.0" + multibase "~0.6.0" + multicodec "^1.0.0" + multihashes "~0.4.15" + +cjs-module-lexer@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz#4186fcca0eae175970aee870b9fe2d6cf8d5655f" + integrity sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw== + +class-is@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/class-is/-/class-is-1.1.0.tgz#9d3c0fba0440d211d843cec3dedfa48055005825" + integrity sha512-rhjH9AG1fvabIDoGRVH587413LPjTZgmDF9fOFCbFJQV4yuocX1mHxxvXI4g3cGwbVY9wAYIoKlg1N79frJKQw== + +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + +cliui@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" + integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^6.2.0" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ== + +collect-v8-coverage@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.2.tgz#c0b29bcd33bcd0779a1344c2136051e6afd3d9e9" + integrity sha512-lHl4d5/ONEbLlJvaJNtsF/Lz+WvB07u2ycqTYbdrq7UypDXailES4valYb2eWiJFxZlVmpGekfqoxQhzyFdT4Q== + +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + integrity sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw== + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +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" + +commander@9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-9.2.0.tgz#6e21014b2ed90d8b7c9647230d8b7a94a4a419a9" + integrity sha512-e2i4wANQiSXgnrBlIatyHtP1odfUp0BbV5Y5nEGbxtIrStkEOAAzCUirvLBNXHLr7kwLvJl6V+4V3XV9x7Wd9w== + +commander@^2.20.0: + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + integrity sha512-W9pAhw0ja1Edb5GVdIF1mjZw/ASI0AlShXM83UUGe2DVr5TdAPEA1OA8m/g8zWp9x6On7gqufY+FatDbC3MDQg== + +component-emitter@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== + +content-hash@2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/content-hash/-/content-hash-2.5.2.tgz#bbc2655e7c21f14fd3bfc7b7d4bfe6e454c9e211" + integrity sha512-FvIQKy0S1JaWV10sMsA7TRx8bpU+pqPkhbsfvOJAdjRXvYxEckAwQWGwtRjiaJfh+E0DvcWUGqcdjwMGFjsSdw== + dependencies: + cids "^0.7.1" + multicodec "^0.5.5" + multihashes "^0.4.15" + +convert-source-map@^1.4.0, convert-source-map@^1.6.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.9.0.tgz#7faae62353fb4213366d0ca98358d22e8368b05f" + integrity sha512-ASFBup0Mz1uyiIjANan1jzLQami9z1PoYSZCiiYW2FczPbenXc45FZdBZLzOT+r6+iciuEModtmCti+hjaAk0A== + +convert-source-map@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-2.0.0.tgz#4b560f649fc4e918dd0ab75cf4961e8bc882d82a" + integrity sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg== + +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + integrity sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw== + +copyfiles@2.4.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/copyfiles/-/copyfiles-2.4.1.tgz#d2dcff60aaad1015f09d0b66e7f0f1c5cd3c5da5" + integrity sha512-fereAvAvxDrQDOXybk3Qu3dPbOoKoysFMWtkY3mv5BsL8//OSZVL5DCLYqgRfY5cWirgRzlC+WSrxp6Bo3eNZg== + dependencies: + glob "^7.0.5" + minimatch "^3.0.3" + mkdirp "^1.0.4" + noms "0.0.0" + through2 "^2.0.1" + untildify "^4.0.0" + yargs "^16.1.0" + +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + +cross-spawn@^6.0.0: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +cross-spawn@^7.0.0: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +cssom@^0.4.4: + version "0.4.4" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" + integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== + +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@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" + integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== + dependencies: + abab "^2.0.3" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.0.0" + +debug@4, debug@^4.1.0, debug@^4.1.1: + version "4.3.4" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" + integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== + dependencies: + ms "2.1.2" + +debug@^2.2.0, debug@^2.3.3: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +decamelize@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== + +decimal.js@^10.2.1: + version "10.4.3" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.4.3.tgz#1044092884d245d1b7f65725fa4ad4c6f781cc23" + integrity sha512-VBBaLc1MgL5XpzgIP7ny5Z6Nx3UrRkIViUkPUdtl9aya5amy3De1gsUUSB1g3+3sExYNjCAsAznmukyxCb1GRA== + +decode-uri-component@^0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz#e69dbe25d37941171dd540e024c444cd5188e1e9" + integrity sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ== + +deepmerge@^4.2.2: + version "4.3.1" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.3.1.tgz#44b5f2147cd3b00d4b56137685966f26fd25dd4a" + integrity sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A== + +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + integrity sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA== + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + integrity sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA== + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + +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== + +detect-newline@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== + +diff-sequences@^25.2.6: + version "25.2.6" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-25.2.6.tgz#5f467c00edd35352b7bca46d7927d60e687a76dd" + integrity sha512-Hq8o7+6GaZeoFjtpgvRBUknSXNeJiCx7V9Fr94ZMljNiCr9n9L8H8aJqgWOQiDDGdyn29fRNcDdRVJ5fdyihfg== + +diff-sequences@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" + integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== + +docker-compose@0.23.17: + version "0.23.17" + resolved "https://registry.yarnpkg.com/docker-compose/-/docker-compose-0.23.17.tgz#8816bef82562d9417dc8c790aa4871350f93a2ba" + integrity sha512-YJV18YoYIcxOdJKeFcCFihE6F4M2NExWM/d4S1ITcS9samHKnNUihz9kjggr0dNtsrbpFNc7/Yzd19DWs+m1xg== + dependencies: + yaml "^1.10.2" + +domexception@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" + integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== + dependencies: + webidl-conversions "^5.0.0" + +electron-to-chromium@^1.4.535: + version "1.4.566" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.566.tgz#5c5ba1d2dc895f4887043f0cc7e61798c7e5919a" + integrity sha512-mv+fAy27uOmTVlUULy15U3DVJ+jg+8iyKH1bpwboCRhtDC69GKf1PPTZvEIhCyDr81RFqfxZJYrbgp933a1vtg== + +elliptic@6.5.4: + version "6.5.4" + resolved "https://registry.yarnpkg.com/elliptic/-/elliptic-6.5.4.tgz#da37cebd31e79a1367e941b592ed1fbebd58abbb" + integrity sha512-iLhC6ULemrljPZb+QutR5TQGB+pdW6KGD5RSegS+8sorOZT+rdQFbsQFJgvN3eRqNALqJer4oQ16YvJHlU8hzQ== + dependencies: + bn.js "^4.11.9" + brorand "^1.1.0" + hash.js "^1.0.0" + hmac-drbg "^1.0.1" + inherits "^2.0.4" + minimalistic-assert "^1.0.1" + minimalistic-crypto-utils "^1.0.1" + +emittery@^0.7.1: + version "0.7.2" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.2.tgz#25595908e13af0f5674ab419396e2fb394cdfa82" + integrity sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +end-of-stream@^1.1.0: + version "1.4.4" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + dependencies: + once "^1.4.0" + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== + +escape-string-regexp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== + +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.0, 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== + +estree-walker@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/estree-walker/-/estree-walker-2.0.2.tgz#52f010178c2a4c117a7757cfe942adb7d2da4cac" + integrity sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w== + +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== + +ethers@5.7.0: + version "5.7.0" + resolved "https://registry.yarnpkg.com/ethers/-/ethers-5.7.0.tgz#0055da174b9e076b242b8282638bc94e04b39835" + integrity sha512-5Xhzp2ZQRi0Em+0OkOcRHxPzCfoBfgtOQA+RUylSkuHbhTEaQklnYi2hsWbRgs3ztJsXVXd9VKBcO1ScWL8YfA== + dependencies: + "@ethersproject/abi" "5.7.0" + "@ethersproject/abstract-provider" "5.7.0" + "@ethersproject/abstract-signer" "5.7.0" + "@ethersproject/address" "5.7.0" + "@ethersproject/base64" "5.7.0" + "@ethersproject/basex" "5.7.0" + "@ethersproject/bignumber" "5.7.0" + "@ethersproject/bytes" "5.7.0" + "@ethersproject/constants" "5.7.0" + "@ethersproject/contracts" "5.7.0" + "@ethersproject/hash" "5.7.0" + "@ethersproject/hdnode" "5.7.0" + "@ethersproject/json-wallets" "5.7.0" + "@ethersproject/keccak256" "5.7.0" + "@ethersproject/logger" "5.7.0" + "@ethersproject/networks" "5.7.0" + "@ethersproject/pbkdf2" "5.7.0" + "@ethersproject/properties" "5.7.0" + "@ethersproject/providers" "5.7.0" + "@ethersproject/random" "5.7.0" + "@ethersproject/rlp" "5.7.0" + "@ethersproject/sha2" "5.7.0" + "@ethersproject/signing-key" "5.7.0" + "@ethersproject/solidity" "5.7.0" + "@ethersproject/strings" "5.7.0" + "@ethersproject/transactions" "5.7.0" + "@ethersproject/units" "5.7.0" + "@ethersproject/wallet" "5.7.0" + "@ethersproject/web" "5.7.0" + "@ethersproject/wordlists" "5.7.0" + +exec-sh@^0.3.2: + version "0.3.6" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" + integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== + +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + cross-spawn "^6.0.0" + get-stream "^4.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + +execa@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" + integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== + dependencies: + cross-spawn "^7.0.0" + get-stream "^5.0.0" + human-signals "^1.1.1" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.0" + onetime "^5.1.0" + signal-exit "^3.0.2" + strip-final-newline "^2.0.0" + +exit@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + integrity sha512-Zk/eNKV2zbjpKzrsQ+n1G6poVbErQxJ0LBOJXaKZ1EViLzH+hrLu9cdXI4zw9dBQJslwBEpbQ2P1oS7nDxs6jQ== + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + integrity sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA== + dependencies: + debug "^2.3.3" + define-property "^0.2.5" + extend-shallow "^2.0.1" + posix-character-classes "^0.1.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +expect@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/expect/-/expect-26.6.2.tgz#c6b996bf26bf3fe18b67b2d0f51fc981ba934417" + integrity sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA== + dependencies: + "@jest/types" "^26.6.2" + ansi-styles "^4.0.0" + jest-get-type "^26.3.0" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug== + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + integrity sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q== + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== + dependencies: + array-unique "^0.3.2" + define-property "^1.0.0" + expand-brackets "^2.1.4" + extend-shallow "^2.0.1" + fragment-cache "^0.2.1" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +extract-zip@2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" + integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== + dependencies: + debug "^4.1.1" + get-stream "^5.1.0" + yauzl "^2.10.0" + optionalDependencies: + "@types/yauzl" "^2.9.1" + +fast-deep-equal@^3.1.1: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-memoize@^2.5.2: + version "2.5.2" + resolved "https://registry.yarnpkg.com/fast-memoize/-/fast-memoize-2.5.2.tgz#79e3bb6a4ec867ea40ba0e7146816f6cdce9b57e" + integrity sha512-Ue0LwpDYErFbmNnZSF0UH6eImUwDmogUO1jyE+JbN2gsQz/jICm1Ve7t9QT0rNSsfJt+Hs4/S3GnsDVjL4HVrw== + +fb-watchman@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.2.tgz#e9524ee6b5c77e9e5001af0f85f3adbb8623255c" + integrity sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA== + dependencies: + bser "2.1.1" + +fd-slicer@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" + integrity sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g== + dependencies: + pend "~1.2.0" + +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + integrity sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ== + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +find-up@^4.0.0, find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + +follow-redirects@^1.14.0: + version "1.15.3" + resolved "https://registry.yarnpkg.com/follow-redirects/-/follow-redirects-1.15.3.tgz#fe2f3ef2690afce7e82ed0b44db08165b207123a" + integrity sha512-1VzOtuEM8pC9SFU1E+8KfTjZyMztRsgEfwQl44z8A25uy13jSzTj6dyK2Df52iV0vgHCfBwLhDWevLn95w5v6Q== + +for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + integrity sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ== + +form-data@4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.0.tgz#93919daeaf361ee529584b9b31664dc12c9fa452" + integrity sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +form-data@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + integrity sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA== + dependencies: + map-cache "^0.2.2" + +fs-extra@9.0.1: + version "9.0.1" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.0.1.tgz#910da0062437ba4c39fedd863f1675ccfefcb9fc" + integrity sha512-h2iAoN838FqAFJY2/qVpzFXy+EBxfVE220PalAqQLDVsFOHLJrZvut5puAbCdNv6WJk+B8ihI+k0c7JK5erwqQ== + dependencies: + at-least-node "^1.0.0" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^1.0.0" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== + +fsevents@^2.1.2, fsevents@~2.3.1, fsevents@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.3.tgz#cac6407785d03675a2a5e1a5305c697b347d90d6" + integrity sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw== + +function-bind@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" + integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== + +gensync@^1.0.0-beta.2: + version "1.0.0-beta.2" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== + +get-caller-file@^2.0.1, get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-package-type@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== + +get-stream@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + +get-stream@^5.0.0, get-stream@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== + dependencies: + pump "^3.0.0" + +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA== + +glob-parent@~5.1.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob@^7.0.5, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: + version "7.2.3" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" + integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^3.1.1" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^8.0.3: + version "8.1.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-8.1.0.tgz#d388f656593ef708ee3e34640fdfb99a9fd1c33e" + integrity sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ== + dependencies: + fs.realpath "^1.0.0" + inflight "^1.0.4" + inherits "2" + minimatch "^5.0.1" + once "^1.3.0" + +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== + +graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.4: + version "4.2.11" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.11.tgz#4183e4e8bf08bb6e05bbb2f7d2e0c8f712ca40e3" + integrity sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ== + +graphql-json-transform@^1.1.0-alpha.0: + version "1.1.0-alpha.0" + resolved "https://registry.yarnpkg.com/graphql-json-transform/-/graphql-json-transform-1.1.0-alpha.0.tgz#fb0c88d24840067e6c55ac64bbc8d4e5de245d2d" + integrity sha512-I6lR/lYEezSz4iru0f7a/wR8Rzi3pCafk7S0bX2b/WQOtK0vKabxLShGBXIslsi0arMehIjvOPHJl7MpOUqj0w== + +graphql@15.5.0: + version "15.5.0" + resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.5.0.tgz#39d19494dbe69d1ea719915b578bf920344a69d5" + integrity sha512-OmaM7y0kaK31NKG31q4YbD2beNYa6jBBKtMFT6gLYJljHLJr42IqJ8KX08u3Li/0ifzTU5HjmoOOrwa5BRLeDA== + +growly@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" + integrity sha512-+xGQY0YyAWCnqy7Cd++hc2JqMYzlm0dG30Jd0beaA64sROr8C4nt8Yc9V5Ro3avlSUDTN0ulqP/VBKi1/lLygw== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q== + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + integrity sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw== + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ== + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + integrity sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ== + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + +hash.js@1.1.7, hash.js@^1.0.0, hash.js@^1.0.3: + version "1.1.7" + resolved "https://registry.yarnpkg.com/hash.js/-/hash.js-1.1.7.tgz#0babca538e8d4ee4a0f8988d68866537a003cf42" + integrity sha512-taOaskGt4z4SOANNseOviYDvjEJinIkRgmp7LbKP2YTTmVxWBl87s/uzK9r+44BclBSp2X7K1hqeNfz9JbBeXA== + dependencies: + inherits "^2.0.3" + minimalistic-assert "^1.0.1" + +hasown@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/hasown/-/hasown-2.0.0.tgz#f4c513d454a57b7c7e1650778de226b11700546c" + integrity sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA== + dependencies: + function-bind "^1.1.2" + +hmac-drbg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/hmac-drbg/-/hmac-drbg-1.0.1.tgz#d2745701025a6c775a6c545793ed502fc0c649a1" + integrity sha512-Tti3gMqLdZfhOQY1Mzf/AanLiqh1WTiJgEj26ZuYQ9fbkLomzGchCws4FyrSd4VkpBfiNhaE1On+lOz894jvXg== + dependencies: + hash.js "^1.0.3" + minimalistic-assert "^1.0.0" + minimalistic-crypto-utils "^1.0.1" + +hosted-git-info@^2.1.4: + version "2.8.9" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== + +html-encoding-sniffer@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" + integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== + dependencies: + whatwg-encoding "^1.0.5" + +html-escaper@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== + +http-proxy-agent@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== + dependencies: + "@tootallnate/once" "1" + 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" + +human-signals@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" + integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== + +iconv-lite@0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +ieee754@^1.1.13: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + +import-local@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.1.0.tgz#b4479df8a5fd44f6cdce24070675676063c95cb4" + integrity sha512-ASB07uLtnDs1o6EHjKpX34BKYDSqnFerfTOJL2HvMqF70LnxpjkzDB8J44oT9pu4AMPkQwf8jl6szgvNd2tRIg== + dependencies: + pkg-dir "^4.2.0" + resolve-cwd "^3.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +intl-messageformat-parser@6.4.2: + version "6.4.2" + resolved "https://registry.yarnpkg.com/intl-messageformat-parser/-/intl-messageformat-parser-6.4.2.tgz#e2d28c3156c27961ead9d613ca55b6a155078d7d" + integrity sha512-IVNGy24lNEYr/KPWId5tF3KXRHFFbMgzIMI4kUonNa/ide2ywUYyBuOUro1IBGZJqjA2ncBVUyXdYKlMfzqpAA== + dependencies: + "@formatjs/ecma402-abstract" "1.6.2" + tslib "^2.1.0" + +intl-messageformat@9.5.2: + version "9.5.2" + resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-9.5.2.tgz#e72d32152c760b7411e413780e462909987c005a" + integrity sha512-sBGXcSQLyBuBA/kzAYhTpzhzkOGfSwGIau2W6FuwLZk0JE+VF3C+y0077FhVDOcRSi60iSfWzT8QC3Z7//dFxw== + dependencies: + fast-memoize "^2.5.2" + intl-messageformat-parser "6.4.2" + tslib "^2.1.0" + +invert-kv@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-3.0.1.tgz#a93c7a3d4386a1dc8325b97da9bb1620c0282523" + integrity sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw== + +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + integrity sha512-e1BM1qnDbMRG3ll2U9dSK0UMHuWOs3pY3AtcFsmvwPtKL3MML/Q86i+GilLfvqEs4GW+ExB91tQ3Ig9noDIZ+A== + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== + dependencies: + kind-of "^6.0.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== + +is-binary-path@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" + integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== + dependencies: + binary-extensions "^2.0.0" + +is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + +is-builtin-module@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/is-builtin-module/-/is-builtin-module-3.2.1.tgz#f03271717d8654cfcaf07ab0463faa3571581169" + integrity sha512-BSLE3HnV2syZ0FK0iMA/yUGplUeMmNz4AW5fnTunbCIqZi4vG3WjJT9FHMy5D69xmAYBHXQhJdALdpwVxV501A== + dependencies: + builtin-modules "^3.3.0" + +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== + dependencies: + ci-info "^2.0.0" + +is-core-module@^2.13.0: + version "2.13.1" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.13.1.tgz#ad0d7532c6fea9da1ebdc82742d74525c6273384" + integrity sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw== + dependencies: + hasown "^2.0.0" + +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + integrity sha512-+w9D5ulSoBNlmw9OHn3U2v51SyoCd0he+bB3xMl62oijhrspxowjU+AIcDY0N3iEJbUEkB15IlMASQsxYigvXg== + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== + dependencies: + kind-of "^6.0.0" + +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + +is-docker@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw== + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-generator-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== + +is-glob@^4.0.1, is-glob@~4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-module@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-module/-/is-module-1.0.0.tgz#3258fb69f78c14d5b815d664336b4cffb6441591" + integrity sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g== + +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + integrity sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg== + dependencies: + kind-of "^3.0.2" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-plain-object@^2.0.3, is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== + dependencies: + isobject "^3.0.1" + +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== + +is-reference@1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/is-reference/-/is-reference-1.2.1.tgz#8b2dac0b371f4bc994fdeaba9eb542d03002d0b7" + integrity sha512-U82MsXXiFIrjCK4otLT+o2NA2Cd2g5MLoOVXUZjIOhLurrRxpEXzI8O0KZHr3IjLvlAH1kTPYSuqer5T9ZVBKQ== + dependencies: + "@types/estree" "*" + +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha512-uQPm8kcs47jx38atAcWTVxyltQYoPT68y9aWYdV6yWXSyW8mzSat0TL6CiWdZeCdF3KrAvpVtnHbTv4RN+rqdQ== + +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== + +is-typedarray@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha512-cyA56iCMHAh5CdzjJIa4aohJyeO1YbwLi3Jc35MmRU6poroFjIGZzUzupGiRPOjgHg9TLu43xbpwXk523fMxKA== + +is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== + +is-wsl@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== + dependencies: + is-docker "^2.0.0" + +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + integrity sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ== + +isarray@1.0.0, isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ== + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== + +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA== + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg== + +istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" + integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== + +istanbul-lib-instrument@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" + integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== + dependencies: + "@babel/core" "^7.7.5" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.0.0" + semver "^6.3.0" + +istanbul-lib-instrument@^5.0.4: + version "5.2.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.2.1.tgz#d10c8885c2125574e1c231cacadf955675e1ce3d" + integrity sha512-pzqtp31nLv/XFOzXGuvhCb8qhjmTVo5vjVk19XE4CRlSWz0KoeJ3bw9XsA7nOp9YBf4qHjwBxkDzKcME/J29Yg== + dependencies: + "@babel/core" "^7.12.3" + "@babel/parser" "^7.14.7" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.2.0" + semver "^6.3.0" + +istanbul-lib-report@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz#908305bac9a5bd175ac6a74489eafd0fc2445a7d" + integrity sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw== + dependencies: + istanbul-lib-coverage "^3.0.0" + make-dir "^4.0.0" + supports-color "^7.1.0" + +istanbul-lib-source-maps@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== + dependencies: + debug "^4.1.1" + istanbul-lib-coverage "^3.0.0" + source-map "^0.6.1" + +istanbul-reports@^3.0.2: + version "3.1.6" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.1.6.tgz#2544bcab4768154281a2f0870471902704ccaa1a" + integrity sha512-TLgnMkKg3iTDsQ9PbPTdpfAK2DzjF9mqUG7RMgcQl8oFjad8ob4laGxv5XV5U9MAfx8D6tSJiUyuAwzLicaxlg== + dependencies: + html-escaper "^2.0.0" + istanbul-lib-report "^3.0.0" + +jest-changed-files@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.6.2.tgz#f6198479e1cc66f22f9ae1e22acaa0b429c042d0" + integrity sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ== + dependencies: + "@jest/types" "^26.6.2" + execa "^4.0.0" + throat "^5.0.0" + +jest-cli@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.6.3.tgz#43117cfef24bc4cd691a174a8796a532e135e92a" + integrity sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg== + dependencies: + "@jest/core" "^26.6.3" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + import-local "^3.0.2" + is-ci "^2.0.0" + jest-config "^26.6.3" + jest-util "^26.6.2" + jest-validate "^26.6.2" + prompts "^2.0.1" + yargs "^15.4.1" + +jest-config@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.6.3.tgz#64f41444eef9eb03dc51d5c53b75c8c71f645349" + integrity sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg== + dependencies: + "@babel/core" "^7.1.0" + "@jest/test-sequencer" "^26.6.3" + "@jest/types" "^26.6.2" + babel-jest "^26.6.3" + chalk "^4.0.0" + deepmerge "^4.2.2" + glob "^7.1.1" + graceful-fs "^4.2.4" + jest-environment-jsdom "^26.6.2" + jest-environment-node "^26.6.2" + jest-get-type "^26.3.0" + jest-jasmine2 "^26.6.3" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + micromatch "^4.0.2" + pretty-format "^26.6.2" + +jest-diff@^25.2.1: + version "25.5.0" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-25.5.0.tgz#1dd26ed64f96667c068cef026b677dfa01afcfa9" + integrity sha512-z1kygetuPiREYdNIumRpAHY6RXiGmp70YHptjdaxTWGmA085W3iCnXNx0DhflK3vwrKmrRWyY1wUpkPMVxMK7A== + dependencies: + chalk "^3.0.0" + diff-sequences "^25.2.6" + jest-get-type "^25.2.6" + pretty-format "^25.5.0" + +jest-diff@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" + integrity sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA== + dependencies: + chalk "^4.0.0" + diff-sequences "^26.6.2" + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-docblock@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" + integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== + dependencies: + detect-newline "^3.0.0" + +jest-each@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.6.2.tgz#02526438a77a67401c8a6382dfe5999952c167cb" + integrity sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + jest-get-type "^26.3.0" + jest-util "^26.6.2" + pretty-format "^26.6.2" + +jest-environment-jsdom@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz#78d09fe9cf019a357009b9b7e1f101d23bd1da3e" + integrity sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + jsdom "^16.4.0" + +jest-environment-node@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.6.2.tgz#824e4c7fb4944646356f11ac75b229b0035f2b0c" + integrity sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + +jest-get-type@^25.2.6: + version "25.2.6" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-25.2.6.tgz#0b0a32fab8908b44d508be81681487dbabb8d877" + integrity sha512-DxjtyzOHjObRM+sM1knti6or+eOgcGU4xVSb2HNP1TqO4ahsT+rqZg+nyqHWJSvWgKC5cG3QjGFBqxLghiF/Ig== + +jest-get-type@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" + integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== + +jest-haste-map@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" + integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== + dependencies: + "@jest/types" "^26.6.2" + "@types/graceful-fs" "^4.1.2" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.4" + jest-regex-util "^26.0.0" + jest-serializer "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + micromatch "^4.0.2" + sane "^4.0.3" + walker "^1.0.7" + optionalDependencies: + fsevents "^2.1.2" + +jest-jasmine2@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz#adc3cf915deacb5212c93b9f3547cd12958f2edd" + integrity sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg== + dependencies: + "@babel/traverse" "^7.1.0" + "@jest/environment" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + expect "^26.6.2" + is-generator-fn "^2.0.0" + jest-each "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + pretty-format "^26.6.2" + throat "^5.0.0" + +jest-leak-detector@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz#7717cf118b92238f2eba65054c8a0c9c653a91af" + integrity sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg== + dependencies: + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-matcher-utils@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz#8e6fd6e863c8b2d31ac6472eeb237bc595e53e7a" + integrity sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw== + dependencies: + chalk "^4.0.0" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-message-util@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.6.2.tgz#58173744ad6fc0506b5d21150b9be56ef001ca07" + integrity sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA== + dependencies: + "@babel/code-frame" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.4" + micromatch "^4.0.2" + pretty-format "^26.6.2" + slash "^3.0.0" + stack-utils "^2.0.2" + +jest-mock@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.6.2.tgz#d6cb712b041ed47fe0d9b6fc3474bc6543feb302" + integrity sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + +jest-pnp-resolver@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz#930b1546164d4ad5937d5540e711d4d38d4cad2e" + integrity sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w== + +jest-regex-util@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" + integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== + +jest-resolve-dependencies@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz#6680859ee5d22ee5dcd961fe4871f59f4c784fb6" + integrity sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg== + dependencies: + "@jest/types" "^26.6.2" + jest-regex-util "^26.0.0" + jest-snapshot "^26.6.2" + +jest-resolve@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.6.2.tgz#a3ab1517217f469b504f1b56603c5bb541fbb507" + integrity sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + jest-pnp-resolver "^1.2.2" + jest-util "^26.6.2" + read-pkg-up "^7.0.1" + resolve "^1.18.1" + slash "^3.0.0" + +jest-runner@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.6.3.tgz#2d1fed3d46e10f233fd1dbd3bfaa3fe8924be159" + integrity sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + emittery "^0.7.1" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-docblock "^26.0.0" + jest-haste-map "^26.6.2" + jest-leak-detector "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + jest-runtime "^26.6.3" + jest-util "^26.6.2" + jest-worker "^26.6.2" + source-map-support "^0.5.6" + throat "^5.0.0" + +jest-runtime@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.6.3.tgz#4f64efbcfac398331b74b4b3c82d27d401b8fa2b" + integrity sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/globals" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + cjs-module-lexer "^0.6.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.3" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + slash "^3.0.0" + strip-bom "^4.0.0" + yargs "^15.4.1" + +jest-serializer@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" + integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.4" + +jest-snapshot@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.6.2.tgz#f3b0af1acb223316850bd14e1beea9837fb39c84" + integrity sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og== + dependencies: + "@babel/types" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/babel__traverse" "^7.0.4" + "@types/prettier" "^2.0.0" + chalk "^4.0.0" + expect "^26.6.2" + graceful-fs "^4.2.4" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + jest-haste-map "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + natural-compare "^1.4.0" + pretty-format "^26.6.2" + semver "^7.3.2" + +jest-util@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" + integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + graceful-fs "^4.2.4" + is-ci "^2.0.0" + micromatch "^4.0.2" + +jest-validate@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" + integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== + dependencies: + "@jest/types" "^26.6.2" + camelcase "^6.0.0" + chalk "^4.0.0" + jest-get-type "^26.3.0" + leven "^3.1.0" + pretty-format "^26.6.2" + +jest-watcher@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.6.2.tgz#a5b683b8f9d68dbcb1d7dae32172d2cca0592975" + integrity sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ== + dependencies: + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + jest-util "^26.6.2" + string-length "^4.0.1" + +jest-worker@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" + integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^7.0.0" + +jest@26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest/-/jest-26.6.3.tgz#40e8fdbe48f00dfa1f0ce8121ca74b88ac9148ef" + integrity sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q== + dependencies: + "@jest/core" "^26.6.3" + import-local "^3.0.2" + jest-cli "^26.6.3" + +js-sha3@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/js-sha3/-/js-sha3-0.8.0.tgz#b9b7a5da73afad7dedd0f8c463954cbde6818840" + integrity sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q== + +js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@^3.13.1: + version "3.14.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +js-yaml@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + +jsdom@^16.4.0: + version "16.7.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" + integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== + dependencies: + abab "^2.0.5" + acorn "^8.2.4" + acorn-globals "^6.0.0" + cssom "^0.4.4" + cssstyle "^2.3.0" + data-urls "^2.0.0" + decimal.js "^10.2.1" + domexception "^2.0.1" + escodegen "^2.0.0" + form-data "^3.0.0" + html-encoding-sniffer "^2.0.1" + http-proxy-agent "^4.0.1" + 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 "^2.0.0" + webidl-conversions "^6.1.0" + whatwg-encoding "^1.0.5" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.5.0" + ws "^7.4.6" + xml-name-validator "^3.0.0" + +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== + +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.4.0.tgz#f7de4cf6efab838ebaeb3236474cbba5a1930ab5" + integrity sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA== + +json5@^2.2.3: + version "2.2.3" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.3.tgz#78cd6f1a19bdc12b73db5ad0c61efd66c1e29283" + integrity sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg== + +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonschema@1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/jsonschema/-/jsonschema-1.4.0.tgz#1afa34c4bc22190d8e42271ec17ac8b3404f87b2" + integrity sha512-/YgW6pRMr6M7C+4o8kS+B/2myEpHCrxO4PEWnqJNBFMjn7EWXqlQ4tGwL6xTHeRplwuZmcAncdvfOad1nT2yMw== + +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + integrity sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ== + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + integrity sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw== + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== + +kind-of@^6.0.0, kind-of@^6.0.2: + version "6.0.3" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== + +kleur@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== + +lcid@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-3.1.1.tgz#9030ec479a058fc36b5e8243ebaac8b6ac582fd0" + integrity sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg== + dependencies: + invert-kv "^3.0.0" + +leven@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== + +lines-and-columns@^1.1.6: + version "1.2.4" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" + integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== + +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + +lodash.merge@4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash@^4.7.0: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + +lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +magic-string@^0.30.3: + version "0.30.5" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.5.tgz#1994d980bd1c8835dc6e78db7cbd4ae4f24746f9" + integrity sha512-7xlpfBaQaP/T6Vh8MO/EqXSW5En6INHEvEXQiuff7Gku0PWjU3uf6w/j9o7O+SpB5fOAkrI5HeoNgwjEO0pFsA== + dependencies: + "@jridgewell/sourcemap-codec" "^1.4.15" + +make-dir@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-4.0.0.tgz#c3c2307a771277cd9638305f915c29ae741b614e" + integrity sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw== + dependencies: + semver "^7.5.3" + +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== + dependencies: + tmpl "1.0.5" + +map-age-cleaner@^0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" + integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== + dependencies: + p-defer "^1.0.0" + +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + integrity sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg== + +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + integrity sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w== + dependencies: + object-visit "^1.0.0" + +mem@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/mem/-/mem-5.1.1.tgz#7059b67bf9ac2c924c9f1cff7155a064394adfb3" + integrity sha512-qvwipnozMohxLXG1pOqoLiZKNkC4r4qqRucSoDwXowsNGDSULiqFTRUF05vcZWnwJSG22qTsynQhxbaMtnX9gw== + dependencies: + map-age-cleaner "^0.1.3" + mimic-fn "^2.1.0" + p-is-promise "^2.1.0" + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +micromatch@^3.1.4: + version "3.1.10" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + braces "^2.3.1" + define-property "^2.0.2" + extend-shallow "^3.0.2" + extglob "^2.0.4" + fragment-cache "^0.2.1" + kind-of "^6.0.2" + nanomatch "^1.2.9" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.2" + +micromatch@^4.0.2: + version "4.0.5" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" + integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== + dependencies: + braces "^3.0.2" + picomatch "^2.3.1" + +mime-db@1.52.0: + version "1.52.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" + integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== + +mime-types@^2.1.12: + version "2.1.35" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" + integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== + dependencies: + mime-db "1.52.0" + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +minimalistic-assert@^1.0.0, minimalistic-assert@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz#2e194de044626d4a10e7f7fbc00ce73e83e4d5c7" + integrity sha512-UtJcAD4yEaGtjPezWuO9wC4nwUnVH/8/Im3yEHQP4b67cXlD/Qr9hdITCU1xDbSEXg2XKNaP8jsReV7vQd00/A== + +minimalistic-crypto-utils@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minimalistic-crypto-utils/-/minimalistic-crypto-utils-1.0.1.tgz#f6c00c1c0b082246e5c4d99dfb8c7c083b2b582a" + integrity sha512-JIYlbt6g8i5jKfJ3xz7rF0LXmv2TkDxBLUkiBeZ7bAx4GnnNMr8xFpGnOxn6GhTEHx3SjRrZEoU+j04prX1ktg== + +minimatch@^3.0.3, minimatch@^3.0.4, minimatch@^3.1.1: + version "3.1.2" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" + integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== + dependencies: + brace-expansion "^1.1.7" + +minimatch@^5.0.1: + version "5.1.6" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.6.tgz#1cfcb8cf5522ea69952cd2af95ae09477f122a96" + integrity sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g== + dependencies: + brace-expansion "^2.0.1" + +minimist@^1.1.1, minimist@^1.2.0: + version "1.2.8" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" + integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== + +mixin-deep@^1.2.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" + +mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A== + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +multibase@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.7.0.tgz#1adfc1c50abe05eefeb5091ac0c2728d6b84581b" + integrity sha512-TW8q03O0f6PNFTQDvh3xxH03c8CjGaaYrjkl9UQPG6rz53TQzzxJVCIWVjzcbN/Q5Y53Zd0IBQBMVktVgNx4Fg== + dependencies: + base-x "^3.0.8" + buffer "^5.5.0" + +multibase@~0.6.0: + version "0.6.1" + resolved "https://registry.yarnpkg.com/multibase/-/multibase-0.6.1.tgz#b76df6298536cc17b9f6a6db53ec88f85f8cc12b" + integrity sha512-pFfAwyTjbbQgNc3G7D48JkJxWtoJoBMaR4xQUOuB8RnCgRqaYmWNFeJTTvrJ2w51bjLq2zTby6Rqj9TQ9elSUw== + dependencies: + base-x "^3.0.8" + buffer "^5.5.0" + +multicodec@^0.5.5: + version "0.5.7" + resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-0.5.7.tgz#1fb3f9dd866a10a55d226e194abba2dcc1ee9ffd" + integrity sha512-PscoRxm3f+88fAtELwUnZxGDkduE2HD9Q6GHUOywQLjOGT/HAdhjLDYNZ1e7VR0s0TP0EwZ16LNUTFpoBGivOA== + dependencies: + varint "^5.0.0" + +multicodec@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/multicodec/-/multicodec-1.0.4.tgz#46ac064657c40380c28367c90304d8ed175a714f" + integrity sha512-NDd7FeS3QamVtbgfvu5h7fd1IlbaC4EQ0/pgU4zqE2vdHCmBGsUa0TiM8/TdSeG6BMPC92OOCf8F1ocE/Wkrrg== + dependencies: + buffer "^5.6.0" + varint "^5.0.0" + +multihashes@^0.4.15, multihashes@~0.4.15: + version "0.4.21" + resolved "https://registry.yarnpkg.com/multihashes/-/multihashes-0.4.21.tgz#dc02d525579f334a7909ade8a122dabb58ccfcb5" + integrity sha512-uVSvmeCWf36pU2nB4/1kzYZjsXD9vofZKpgudqkceYY5g2aZZXJ5r9lxuzoRLl1OAp28XljXsEJ/X/85ZsKmKw== + dependencies: + buffer "^5.5.0" + multibase "^0.7.0" + varint "^5.0.0" + +mustache@4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.0.1.tgz#d99beb031701ad433338e7ea65e0489416c854a2" + integrity sha512-yL5VE97+OXn4+Er3THSmTdCFCtx5hHWzrolvH+JObZnUYwuaG7XV+Ch4fR2cIrcYI0tFHxS7iyFYl14bW8y2sA== + +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== + dependencies: + arr-diff "^4.0.0" + array-unique "^0.3.2" + define-property "^2.0.2" + extend-shallow "^3.0.2" + fragment-cache "^0.2.1" + is-windows "^1.0.2" + kind-of "^6.0.2" + object.pick "^1.3.0" + regex-not "^1.0.0" + snapdragon "^0.8.1" + to-regex "^3.0.1" + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + +node-int64@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + integrity sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw== + +node-notifier@^8.0.0: + version "8.0.2" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-8.0.2.tgz#f3167a38ef0d2c8a866a83e318c1ba0efeb702c5" + integrity sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg== + dependencies: + growly "^1.3.0" + is-wsl "^2.2.0" + semver "^7.3.2" + shellwords "^0.1.1" + uuid "^8.3.0" + which "^2.0.2" + +node-releases@^2.0.13: + version "2.0.13" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.13.tgz#d5ed1627c23e3461e819b02e57b75e4899b1c81d" + integrity sha512-uYr7J37ae/ORWdZeQ1xxMJe3NtdmqMC/JZK+geofDrkLUApKRHPd18/TxtBOJ4A0/+uUIliorNrfYV6s1b02eQ== + +noms@0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/noms/-/noms-0.0.0.tgz#da8ebd9f3af9d6760919b27d9cdc8092a7332859" + integrity sha512-lNDU9VJaOPxUmXcLb+HQFeUgQQPtMI24Gt6hgfuMHRJgMRHMF/qZ4HJD3GDru4sSw9IQl2jPjAYnQrdIeLbwow== + dependencies: + inherits "^2.0.1" + readable-stream "~1.0.31" + +normalize-package-data@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + integrity sha512-3pKJwH184Xo/lnH6oyP1q2pMd7HcypqqmRs91/6/i2CGtWwIKGCkOOMTm/zXbgTEWHw1uNpNi/igc3ePOYHb6w== + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-path@^3.0.0, normalize-path@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha512-lJxZYlT4DW/bRUtFh1MQIWqmLwQfAxnqWG4HhEdjMlkrJYnJn0Jrr2u3mgxqaWsdiBc76TYkTG/mhrnYTuzfHw== + dependencies: + path-key "^2.0.0" + +npm-run-path@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" + +nwsapi@^2.2.0: + version "2.2.7" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.7.tgz#738e0707d3128cb750dddcfe90e4610482df0f30" + integrity sha512-ub5E4+FBPKwAZx0UwIQOjYWGHTEq5sPqHQNRN8Z9e4A7u3Tj1weLJsL59yH9vmvqEtBHaOmT6cYQKIZOxp35FQ== + +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + integrity sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ== + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + integrity sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA== + dependencies: + isobject "^3.0.0" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + integrity sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ== + dependencies: + isobject "^3.0.1" + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== + dependencies: + wrappy "1" + +onetime@^5.1.0: + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +os-locale@5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-5.0.0.tgz#6d26c1d95b6597c5d5317bf5fba37eccec3672e0" + integrity sha512-tqZcNEDAIZKBEPnHPlVDvKrp7NzgLi7jRmhKiUoa2NUmhl13FtkAGLUVR+ZsYvApBQdBfYm43A4tXXQ4IrYLBA== + dependencies: + execa "^4.0.0" + lcid "^3.0.0" + mem "^5.0.0" + +p-defer@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" + integrity sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw== + +p-each-series@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a" + integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA== + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow== + +p-is-promise@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" + integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== + +p-limit@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +parse-json@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.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== + +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + integrity sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw== + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== + +path-key@^2.0.0, path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw== + +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +pend@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + integrity sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg== + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" + integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== + +pirates@^4.0.1: + version "4.0.6" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.6.tgz#3018ae32ecfcff6c29ba2267cbf21166ac1f36b9" + integrity sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg== + +pkg-dir@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + +polywrap@0.12.1: version "0.12.1" - resolved "https://registry.yarnpkg.com/@polywrap/templates/-/templates-0.12.1.tgz#df07423b8d6e7f5e37741cf03c24153c9690011a" - integrity sha512-+KSlXssRWUc8G/EUtn8kk7e6mYphFfJsYNahVABdnZ8JtQFE6D1Kaz1xFas50Wg1xvWx6eQrbvxCa/lN+6QRDw== + resolved "https://registry.yarnpkg.com/polywrap/-/polywrap-0.12.1.tgz#bb56ed25934e845b685455803edf7a9c41b7e6fb" + integrity sha512-jZ/qd4mW0zXF57wZIJ3Whow8AyyUp/COdHZmDR/yKdw8q8fJQJm8/Nq4yZ8A09amYHMYlDQhJV2hSvsuJwhW8w== + dependencies: + "@apidevtools/json-schema-ref-parser" "9.0.9" + "@ethersproject/providers" "5.6.8" + "@ethersproject/wallet" "5.6.2" + "@formatjs/intl" "1.8.2" + "@polywrap/asyncify-js" "~0.12.0" + "@polywrap/client-config-builder-js" "~0.12.0" + "@polywrap/client-js" "~0.12.0" + "@polywrap/core-js" "~0.12.0" + "@polywrap/ethereum-wallet-js" "~0.1.0" + "@polywrap/logging-js" "0.12.1" + "@polywrap/os-js" "0.12.1" + "@polywrap/polywrap-manifest-types-js" "0.12.1" + "@polywrap/result" "~0.12.0" + "@polywrap/schema-bind" "0.12.1" + "@polywrap/schema-compose" "0.12.1" + "@polywrap/schema-parse" "0.12.1" + "@polywrap/sys-config-bundle-js" "~0.12.0" + "@polywrap/uri-resolver-extensions-js" "~0.12.0" + "@polywrap/uri-resolvers-js" "~0.12.0" + "@polywrap/wasm-js" "~0.12.0" + "@polywrap/web3-config-bundle-js" "~0.12.0" + "@polywrap/wrap-manifest-types-js" "~0.12.0" + axios "0.21.2" + chalk "4.1.0" + chokidar "3.5.1" + commander "9.2.0" + content-hash "2.5.2" + copyfiles "2.4.1" + docker-compose "0.23.17" + extract-zip "2.0.1" + form-data "4.0.0" + fs-extra "9.0.1" + json-schema "0.4.0" + jsonschema "1.4.0" + mustache "4.0.1" + os-locale "5.0.0" + regex-parser "2.2.11" + rimraf "3.0.2" + toml "3.0.0" + typescript "4.9.5" + yaml "2.2.2" + yesno "0.4.0" + +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg== + +pretty-format@^25.2.1, pretty-format@^25.5.0: + version "25.5.0" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-25.5.0.tgz#7873c1d774f682c34b8d48b6743a2bf2ac55791a" + integrity sha512-kbo/kq2LQ/A/is0PQwsEHM7Ca6//bGPPvU6UnsdDRSKTWxT/ru/xb88v4BJf6a69H+uTytOEsTusT9ksd/1iWQ== + dependencies: + "@jest/types" "^25.5.0" + ansi-regex "^5.0.0" + ansi-styles "^4.0.0" + react-is "^16.12.0" + +pretty-format@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" + integrity sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg== + dependencies: + "@jest/types" "^26.6.2" + ansi-regex "^5.0.0" + ansi-styles "^4.0.0" + react-is "^17.0.1" + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +prompts@^2.0.1: + version "2.4.2" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== + dependencies: + kleur "^3.0.3" + sisteransi "^1.0.5" + +psl@^1.1.33: + version "1.9.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.9.0.tgz#d0df2a137f00794565fcaf3b2c00cd09f8d5a5a7" + integrity sha512-E/ZsdU4HLs/68gYzgGTkMicWTLPdAftJLfJFlLUAAKZGkStNU72sZjT66SnMDVOfOWY/YAoiD7Jxa9iHvngcag== + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +punycode@^2.1.0, punycode@^2.1.1: + version "2.3.0" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.3.0.tgz#f67fa67c94da8f4d0cfff981aee4118064199b8f" + integrity sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA== + +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== + +randombytes@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== + dependencies: + safe-buffer "^5.1.0" + +react-is@^16.12.0: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react-is@^17.0.1: + version "17.0.2" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" + integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== + +read-pkg-up@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" + integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== + dependencies: + find-up "^4.1.0" + read-pkg "^5.2.0" + type-fest "^0.8.1" + +read-pkg@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== + dependencies: + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" + +readable-stream@~1.0.31: + version "1.0.34" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.0.34.tgz#125820e34bc842d2f2aaafafe4c2916ee32c157c" + integrity sha512-ok1qVCJuRkNmvebYikljxJA/UEsKwLl2nI1OmaqAu4/UE+h0wKCHok4XkL/gvi39OacXvw59RJUOFUkDib2rHg== + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readable-stream@~2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" + 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.5.0: + version "3.5.0" + resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.5.0.tgz#9ba74c019b15d365278d2e91bb8c48d7b4d42c9e" + integrity sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ== + dependencies: + picomatch "^2.2.1" + +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + +regex-parser@2.2.11: + version "2.2.11" + resolved "https://registry.yarnpkg.com/regex-parser/-/regex-parser-2.2.11.tgz#3b37ec9049e19479806e878cabe7c1ca83ccfe58" + integrity sha512-jbD/FT0+9MBU2XAZluI7w2OBs1RBi6p9M83nkoZayQXXU9e8Robt69FcZc7wU4eJD/YFTjn1JdCk3rbMJajz8Q== + +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + integrity sha512-/hS+Y0u3aOfIETiaiirUFwDBDzmXPvO+jAfKTitUngIPzdKc6Z0LoFjM/CK5PL4C+eKwHohlHAb6H0VFfmmUsw== + +repeat-element@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" + integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== + +repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + integrity sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w== + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q== + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + +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== + +resolve-cwd@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== + dependencies: + resolve-from "^5.0.0" + +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg== + +resolve@^1.10.0, resolve@^1.18.1, resolve@^1.22.1: + version "1.22.8" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.8.tgz#b6c87a9f2aa06dfab52e3d70ac8cde321fa5a48d" + integrity sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw== + dependencies: + is-core-module "^2.13.0" + path-parse "^1.0.7" + supports-preserve-symlinks-flag "^1.0.0" + +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== + +rimraf@3.0.2, rimraf@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +rollup@^3.28.0: + version "3.29.4" + resolved "https://registry.yarnpkg.com/rollup/-/rollup-3.29.4.tgz#4d70c0f9834146df8705bfb69a9a19c9e1109981" + integrity sha512-oWzmBZwvYrU0iJHtDmhsm662rC15FRXmcjCk1xD771dFDx5jJ02ufAQQTn0etB2emNk4J9EZg/yWKpsn9BWGRw== + optionalDependencies: + fsevents "~2.3.2" + +rsvp@^4.8.4: + version "4.8.5" + resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" + integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== + +safe-buffer@^5.0.1, safe-buffer@^5.1.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg== + dependencies: + ret "~0.1.10" + +"safer-buffer@>= 2.1.2 < 3": + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sane@^4.0.3: + version "4.1.0" + resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" + integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== + dependencies: + "@cnakazawa/watch" "^1.0.3" + anymatch "^2.0.0" + capture-exit "^2.0.0" + exec-sh "^0.3.2" + execa "^1.0.0" + fb-watchman "^2.0.0" + micromatch "^3.1.4" + minimist "^1.1.1" + walker "~1.0.5" + +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" + +scrypt-js@3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/scrypt-js/-/scrypt-js-3.0.1.tgz#d314a57c2aef69d1ad98a138a21fe9eafa9ee312" + integrity sha512-cdwTTnqPu0Hyvf5in5asVdZocVDTNRmR7XEcJuIzMjJeSHybHl7vpB66AzwTaIg6CLSbtjcxc8fqcySfnTkccA== + +"semver@2 || 3 || 4 || 5", semver@^5.5.0: + version "5.7.2" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" + integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== + +semver@7.5.3: + version "7.5.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.3.tgz#161ce8c2c6b4b3bdca6caadc9fa3317a4c4fe88e" + integrity sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ== + dependencies: + lru-cache "^6.0.0" + +semver@^6.3.0, semver@^6.3.1: + version "6.3.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" + integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== + +semver@^7.3.2, semver@^7.5.3, semver@~7.5.4: + version "7.5.4" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.5.4.tgz#483986ec4ed38e1c6c48c34894a9182dbff68a6e" + integrity sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA== + dependencies: + lru-cache "^6.0.0" + +serialize-javascript@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.1.tgz#b206efb27c3da0b0ab6b52f48d170b7996458e5c" + integrity sha512-owoXEFjWRllis8/M1Q+Cw5k8ZH40e3zhp/ovX+Xr/vi1qj6QesbyXXViFbpNvWvPNAD62SutwEXavefrLJWj7w== + dependencies: + randombytes "^2.1.0" + +set-blocking@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== + +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg== + dependencies: + shebang-regex "^1.0.0" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ== + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +shellwords@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" + integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== + +signal-exit@^3.0.0, signal-exit@^3.0.2: + version "3.0.7" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" + integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== + +sisteransi@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +smob@^1.0.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/smob/-/smob-1.4.1.tgz#66270e7df6a7527664816c5b577a23f17ba6f5b5" + integrity sha512-9LK+E7Hv5R9u4g4C3p+jjLstaLe11MDsL21UpYaCNmapvMkYhqCV4A/f/3gyH8QjMyh6l68q9xC85vihY9ahMQ== + +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== + dependencies: + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== + dependencies: + base "^0.11.1" + debug "^2.2.0" + define-property "^0.2.5" + extend-shallow "^2.0.1" + map-cache "^0.2.2" + source-map "^0.5.6" + source-map-resolve "^0.5.0" + use "^3.1.0" + +source-map-resolve@^0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + +source-map-support@^0.5.6, source-map-support@~0.5.20: + version "0.5.21" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map-url@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + +source-map@^0.5.6: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ== + +source-map@^0.6.0, source-map@^0.6.1, 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== + +source-map@^0.7.3: + version "0.7.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.4.tgz#a9bbe705c9d8846f4e08ff6765acf0f1b0898656" + integrity sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA== + +spdx-correct@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.2.0.tgz#4f5ab0668f0059e34f9c00dce331784a12de4e9c" + integrity sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.16" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz#a14f64e0954f6e25cc6587bd4f392522db0d998f" + integrity sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw== + +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== + dependencies: + extend-shallow "^3.0.0" + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g== + +stack-utils@^2.0.2: + version "2.0.6" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.6.tgz#aaf0748169c02fc33c8232abccf933f54a1cc34f" + integrity sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ== + dependencies: + escape-string-regexp "^2.0.0" + +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + integrity sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g== + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + +string-length@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== + dependencies: + char-regex "^1.0.2" + strip-ansi "^6.0.0" + +string-width@^4.1.0, string-width@^4.2.0: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ== + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-bom@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== + +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha512-7FCwGGmx8mD5xQd3RPUvnSpUXHM3BWuzjtpD4TXsfcZ9EL4azvVVUscFYwD9nx8Kh+uCBC00XBtAykoMHwTh8Q== + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.0.0, supports-color@^7.1.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-hyperlinks@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.3.0.tgz#3943544347c1ff90b15effb03fc14ae45ec10624" + integrity sha512-RpsAZlpWcDwOPQA22aCH4J0t7L8JmAvsCxfOSEwm7cQs3LshN36QaTkwd70DnBOXDWGssw2eUoc8CaRWT0XunA== + dependencies: + has-flag "^4.0.0" + supports-color "^7.0.0" + +supports-preserve-symlinks-flag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" + integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== + +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== + +terminal-link@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" + integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== + dependencies: + ansi-escapes "^4.2.1" + supports-hyperlinks "^2.0.0" + +terser@^5.17.4: + version "5.22.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.22.0.tgz#4f18103f84c5c9437aafb7a14918273310a8a49d" + integrity sha512-hHZVLgRA2z4NWcN6aS5rQDc+7Dcy58HOf2zbYwmFcQ+ua3h6eEFf5lIDKTzbWwlazPyOZsFQO8V80/IjVNExEw== + dependencies: + "@jridgewell/source-map" "^0.3.3" + acorn "^8.8.2" + commander "^2.20.0" + source-map-support "~0.5.20" + +test-exclude@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== + dependencies: + "@istanbuljs/schema" "^0.1.2" + glob "^7.1.4" + minimatch "^3.0.4" + +throat@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" + integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== + +through2@^2.0.1: + version "2.0.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +tmpl@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" + integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== + +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog== + +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + integrity sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg== + dependencies: + kind-of "^3.0.2" + +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + integrity sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg== + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + +toml@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/toml/-/toml-3.0.0.tgz#342160f1af1904ec9d204d03a5d61222d762c5ee" + integrity sha512-y/mWCZinnvxjTKYhJ+pYxwD0mRLVvOtdS2Awbgxln6iEnt4rk0yBxeSBHkGJcPucRiG0e55mwWp+g/05rsrd6w== + +tough-cookie@^4.0.0: + version "4.1.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.1.3.tgz#97b9adb0728b42280aa3d814b6b999b2ff0318bf" + integrity sha512-aX/y5pVRkfRnfmuX+OdbSdXvPe6ieKX/G2s7e98f4poJHnqH3281gDPm/metm6E/WRamfx7WC4HUqkWHfQHprw== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.2.0" + url-parse "^1.5.3" + +tr46@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" + integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== + dependencies: + punycode "^2.1.1" + +tslib@^2.1.0, tslib@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.6.2.tgz#703ac29425e7b37cd6fd456e92404d46d1f3e4ae" + integrity sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q== + +type-detect@4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + +type-fest@^0.21.3: + version "0.21.3" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== + +type-fest@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== + dependencies: + is-typedarray "^1.0.0" + +typescript@4.9.5: + version "4.9.5" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.5.tgz#095979f9bcc0d09da324d58d03ce8f8374cbe65a" + integrity sha512-1FXk9E2Hm+QzZQ7z+McJiHL4NW1F2EzMu9Nq9i3zAaGqibafqYwCVU6WyWAuyQRRzOlxou8xZSyXLEN8oKj24g== + +typescript@^5.1.6: + version "5.2.2" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-5.2.2.tgz#5ebb5e5a5b75f085f22bc3f8460fba308310fa78" + integrity sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w== + +undici-types@~5.25.1: + version "5.25.3" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-5.25.3.tgz#e044115914c85f0bcbb229f346ab739f064998c3" + integrity sha512-Ga1jfYwRn7+cP9v8auvEXN1rX3sWqlayd4HP7OKk4mZWylEmu3KzXDUGrQUN6Ol7qo1gPvB2e5gX6udnyEPgdA== + +union-value@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + +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== + +universalify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-1.0.0.tgz#b61a1da173e8435b2fe3c67d29b9adf8594bd16d" + integrity sha512-rb6X1W158d7pRQBg5gkR8uPaSfiids68LTJQYOtEUhoJUWBdaQHsuT/EUduxXYxcrt4r5PJ4fuHW1MHT6p0qug== + +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== + +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + integrity sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ== + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +untildify@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/untildify/-/untildify-4.0.0.tgz#2bc947b953652487e4600949fb091e3ae8cd919b" + integrity sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw== + +update-browserslist-db@^1.0.13: + version "1.0.13" + resolved "https://registry.yarnpkg.com/update-browserslist-db/-/update-browserslist-db-1.0.13.tgz#3c5e4f5c083661bd38ef64b6328c26ed6c8248c4" + integrity sha512-xebP81SNcPuNpPP3uzeW1NYXxI3rxyJzF3pD6sH4jE7o/IX+WtSpwnVU+qIsDPyk0d3hmFQ7mjqc6AtV604hbg== + dependencies: + escalade "^3.1.1" + picocolors "^1.0.0" + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg== + +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" + +use@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== + +util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== + +uuid@^8.3.0: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + +v8-to-istanbul@^7.0.0: + version "7.1.2" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz#30898d1a7fa0c84d225a2c1434fb958f290883c1" + integrity sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^1.6.0" + source-map "^0.7.3" + +validate-npm-package-license@^3.0.1: + version "3.0.4" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +varint@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/varint/-/varint-5.0.2.tgz#5b47f8a947eb668b848e034dcfa87d0ff8a7f7a4" + integrity sha512-lKxKYG6H03yCZUpAGOPOsMcGxd1RHCu1iKvEHYDPmTyq2HueGhD73ssNBqqQWfvYs04G9iUFRvmAVLW20Jw6ow== + +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@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" + integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== + dependencies: + xml-name-validator "^3.0.0" + +walker@^1.0.7, walker@~1.0.5: + version "1.0.8" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== + dependencies: + makeerror "1.0.12" + +webidl-conversions@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" + integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== + +webidl-conversions@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" + integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== + +whatwg-encoding@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" + integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== + dependencies: + iconv-lite "0.4.24" + +whatwg-mimetype@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" + integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== + +whatwg-url@^8.0.0, whatwg-url@^8.5.0: + version "8.7.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" + integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== + dependencies: + lodash "^4.7.0" + tr46 "^2.1.0" + webidl-conversions "^6.1.0" + +which-module@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" + integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== + +which@^1.2.9: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" + +which@^2.0.1, which@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== + +write-file-atomic@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + dependencies: + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + typedarray-to-buffer "^3.1.5" + +ws@7.4.6: + version "7.4.6" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.4.6.tgz#5654ca8ecdeee47c33a9a4bf6d28e2be2980377c" + integrity sha512-YmhHDO4MzaDLB+M9ym/mDA5z0naX8j7SIlT8f8z+I0VtzsRbekxEutHSme7NPS2qE8StCYQNUnfWdXta/Yu85A== + +ws@^7.4.6: + version "7.5.9" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.9.tgz#54fa7db29f4c7cec68b1ddd3a89de099942bb591" + integrity sha512-F+P9Jil7UiSKSkppIiD94dN07AwvFixvLIj1Og1Rl9GGMuNipJnV9JzjD6XuqmAeiswGvUmNLjr5cFuXwNS77Q== + +xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== + +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== + +xtend@~4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +y18n@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" + integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== + +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yallist@^3.0.2: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yaml@2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-2.2.2.tgz#ec551ef37326e6d42872dad1970300f8eb83a073" + integrity sha512-CBKFWExMn46Foo4cldiChEzn7S7SRV+wqiluAb6xmueD/fGyRHIhX8m14vVGgeFWjN540nKCNVj6P21eQjgTuA== + +yaml@^1.10.2: + version "1.10.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + +yargs-parser@^18.1.2: + version "18.1.3" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-parser@^20.2.2: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs@^15.4.1: + version "15.4.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" + integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== + dependencies: + cliui "^6.0.0" + decamelize "^1.2.0" + find-up "^4.1.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^4.2.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^18.1.2" + +yargs@^16.1.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yauzl@^2.10.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" + integrity sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g== + dependencies: + buffer-crc32 "~0.2.3" + fd-slicer "~1.1.0" + +yesno@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/yesno/-/yesno-0.4.0.tgz#5d674f14d339f0bd4b0edc47f899612c74fcd895" + integrity sha512-tdBxmHvbXPBKYIg81bMCB7bVeDmHkRzk5rVJyYYXurwKkHq/MCd8rz4HSJUP7hW0H2NlXiq8IFiWvYKEHhlotA== diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md index 44f916ad..b3948164 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md +++ b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md @@ -34,11 +34,11 @@ resources: # (Optional) Path to Resources directory ### **Project** -We'll `name` our project "oracle-wrap". +As previously suggested, let's `name` our project "oracle-wrap". The project `type` is used to determine how to generate code and build the project. It follows the syntax: `(wasm|app|plugin)/language`. So a Rust wrap will have the type `wasm/rust`, and a Rust plugin would have the type `plugin/rust`. The languages that can be used for a `wasm` wrap project are different from the languages used in `plugin` and `app` projects. - + ```yaml @@ -85,7 +85,7 @@ project: // TODO: link to interface docs -There is one additional type of project called an interface wrap (with type `interface`), which is used to define a wrap interface that can be implemented by other wraps or plugins. We'll discuss interface wraps in greater detail later on in the tutorial. +There is one additional type of project called an "interface wrap" (with type `interface`), which is used to define a wrap interface that can be implemented by other wraps or plugins. We'll discuss interface wraps in greater detail later on in the tutorial. ### **Source** @@ -94,7 +94,7 @@ The project source tells the Polywrap CLI where to find: - The entry file that implements the Wrap Schema in code and exports its module - The location of a locally-stored Wrap Schema or `wrap.info` ABI file, and an arbitrary URI you'd like to point to it - + ```yaml @@ -137,22 +137,22 @@ source: :::tip -The `import_abis` item is useful during wrap development. Let's say you need to import another Wasm wrap, interface wrap, or plugin. All the relevant information is captured in its schema or `wrap.info` ABI. You need the `wrap.wasm` web assembly module to invoke the wrap's methods at runtime, but not to import its module or types at build time. This means you can start building your new wrap without first deploying its dependency. +The `import_abis` item is useful during wrap development. Let's say you need to import another wrap, "interface wrap", or plugin. All the relevant information is captured in its schema or `wrap.info` ABI. You need the `wrap.wasm` web assembly module to invoke the wrap's methods at runtime, but not to import its module or types at build time. This means you can start building your new wrap without first deploying its dependency. -For example, the `import_abis` feature can be used in a monorepo that contains one interface wrap and a set of Wasm wraps or plugins that implement the interface. Each Wasm wrap project might contain an `import_abis` entry with a temporary URI that points to the interface `polywrap.graphql` schema. The wrap projects would use the temporary URI to import the interface in their own `polywrap.graphql` schemas, as though the interface were already published. +For example, the `import_abis` feature can be used in a monorepo that contains one "interface wrap" and a set of Wasm wraps or plugins that implement the interface. Each Wasm wrap project might contain an `import_abis` entry with a temporary URI that points to the interface `polywrap.graphql` schema. The wrap projects would use the temporary URI to import the interface in their own `polywrap.graphql` schemas, as though the interface were already published. ::: ### **Extensions** // TODO: link to build manifest and docs manifest documentation -There are two types of manifest extensions you can register in the project manifest: `build` and `docs`. The `polywrap.build.yaml` build manifest enables developers to customize the wrap build process. The `polywrap.docs.yaml` manifest allows you to provide metadata for Wrapscan deployments (coming soon). +There are two types of manifest extensions you can register in the project manifest: `build` and `docs`. The `polywrap.build.yaml` build manifest enables developers to customize the wrap build process. The `polywrap.docs.yaml` manifest allows you to provide metadata for package registries and include common documentation files such as a `README.md`. ```yaml extensions: build: ./polywrap.build.yaml ``` -We won't be using any manifest extensions in Part One of the tutorial, but we'll dive into them in Part Two. If you'd like, you can remove the `extensions` property and delete the `polywrap.build.yaml` file. +We will use the `docs` manifest extensions later on to include a `README.md` file in our package. We won't be using the `build` extension in Part One of this tutorial, but we'll dive into it in Part Two . If you'd like, you can remove the `build` extension property and delete the `polywrap.build.yaml` file. ### **Resources** -The `resources` attribute allows you to provide a path to a directory that you'd like included in the wrap package when deploying the wrap. We'll use it later to include a `README.md` file in our package. Note that the contents of the resources directory cannot be accessed by the wrap through the file system at runtime. \ No newline at end of file +The `resources` attribute allows you to provide a path to a directory that contains arbitrary files you'd like included in the wrap package when deploying the wrap. \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx index 1925f988..0eaecdc1 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx @@ -59,15 +59,16 @@ Let's take a look at the contents of the project we just created. Then, in the n ``` -polywrap.yaml # Project manifest File -polywrap.build.yaml # Build manifest File -polywrap.graphql # Wrap Schema -src/ +project/ +├── polywrap.yaml # Project manifest File +├── polywrap.build.yaml # Build manifest File +├── polywrap.graphql # Wrap Schema +├── src/ │ └── lib.rs # Entry point; exports module defined in schema -tests/ # Integration tests -Cargo.toml # Dependency management -package.json # Build scripts -tsconfig.json # TypeScript configuration (for integration tests) +├── tests/ # Integration tests +├── Cargo.toml # Dependency management +├── package.json # Build scripts +└── tsconfig.json # TypeScript configuration (for integration tests) ``` @@ -77,16 +78,17 @@ tsconfig.json # TypeScript configuration (for integration tests ``` -polywrap.yaml # Project manifest File -polywrap.build.yaml # Build manifest File -polywrap.graphql # Wrap Schema -module/ +project/ +├── polywrap.yaml # Project manifest File +├── polywrap.build.yaml # Build manifest File +├── polywrap.graphql # Wrap Schema +├── module/ │ ├── module.go # Entry point; exports module defined in schema -| └── __tests__/ # Integration tests -build-staging/ # Required boilerplate; don't modify -go.mod # Dependency management -package.json # Build scripts -tsconfig.json # TypeScript configuration (for integration tests) +│ └── __tests__/ # Integration tests +├── build-staging/ # Required boilerplate; don't modify +├── go.mod # Dependency management +├── package.json # Build scripts +└── tsconfig.json # TypeScript configuration (for integration tests) ``` @@ -99,16 +101,17 @@ tsconfig.json # TypeScript configuration (for integration tests ``` -polywrap.yaml # Project manifest File -polywrap.build.yaml # Build manifest File -polywrap.graphql # Wrap Schema -src/ +project/ +├── polywrap.yaml # Project manifest File +├── polywrap.build.yaml # Build manifest File +├── polywrap.graphql # Wrap Schema +├── src/ │ ├── index.ts # Entry point; exports module defined in schema -| └── __tests__/ # Integration tests -package.json # Dependency management and build scripts -rollup.config.mjs # Bundler configuration -shims.js # Shims that provide a more native TypeScript experience -tsconfig.json # TypeScript configuration +│ └── __tests__/ # Integration tests +├── package.json # Dependency management and build scripts +├── rollup.config.mjs # Bundler configuration +├── shims.js # Shims for a native TypeScript experience +└── tsconfig.json # TypeScript configuration ``` @@ -124,15 +127,16 @@ tsconfig.json # TypeScript configuration ``` -polywrap.yaml # Project manifest File -polywrap.build.yaml # Build manifest File -polywrap.graphql # Wrap Schema -src/ +project/ +├── polywrap.yaml # Project manifest File +├── polywrap.build.yaml # Build manifest File +├── polywrap.graphql # Wrap Schema +├── src/ │ ├── index.ts # Entry point; exports module defined in schema -| └── __tests__/ # Integration tests -package.json # Dependency management and build scripts -tsconfig.json # TypeScript configuration (for integration tests) -tsconfig.build.json # AssemblyScript configuration (for build) +│ └── __tests__/ # Integration tests +├── package.json # Dependency management and build scripts +├── tsconfig.json # TypeScript configuration (for integration tests) +└── tsconfig.build.json # AssemblyScript configuration (for build) ``` diff --git a/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.md b/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.md new file mode 100644 index 00000000..0df7e9dd --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.md @@ -0,0 +1,250 @@ +--- +id: 'schema-and-codegen' +title: 'Schema and Codegen' +--- +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + +:::note +You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. +::: + +Every wrap, plugin, and "interface wrap" has a `polywrap.graphql` schema that defines its public interface. The schema is parsed and composed into a `wrap.info` ABI file that is included in the wrap package along with the `wrap.wasm` bytecode module (the code). + +Polywrap uses the schema to generate bindings for your wrap. The bindings handle serialization logic--so that data can pass between the Wasm module and the Polywrap Client--and provide a lightweight structure to validate the wrap's content. + +Wrap schemas use a simplified version of GraphQL schema syntax. We provide detailed reference documentation in [Wrap Schema](/concepts/wrap-schema), but you'll learn most of it just by following along in this guide. + +Since the schema's primary purpose is to communicate which code bindings should be generated, we'll learn a bit about the generated bindings as well. + +## **Initial Schema** + +Okay, first we should take a look at the `polywrap.graphql` schema we generated when we initialized our project with the Polywrap CLI. It's located in the project root. + +```graphql +type Module { + sampleMethod(arg: String!): SampleResult! +} + +type SampleResult { + result: String! +} +``` + +We have a `Module` and a custom type named `SampleResult`. + +Every wrap has exactly one declaration of `type Module` that defines the wrap's methods. Without a module, there would be nothing to invoke. If we want two or more modules, we can simply create more wraps and our wrap can invoke them. When one wrap invokes another, we call it a "subinvocation". + +The sample module has one method, `sampleMethod(arg: String!): SampleResult!`, that accepts a single argument named `arg` of type `String!` and returns a `SampleResult!`. + +Following GraphQL syntax, a `!` means a type cannot be `null`. The absence of a `!` would mean a property or argument is optional, and it's okay for users to pass in `null`. + +Also, primitive types start with capital letters. + +## **Codegen** + +To generate the code bindings, change your current working directory to the project root and run `polywrap codegen` using the Polywrap CLI. A new directory called `wrap` will be generated next to your entry file. + + + + +``` +src/ +├── lib.rs # Entry point; exports module defined in schema +└── wrap # Generated types +``` + + + + + +``` +module/ +├── module.go # Entry point; exports module defined in schema +├── __tests__/ # Integration tests +└── wrap # Generated types +``` + + + + + +``` +src/ +├── index.ts # Entry point; exports module defined in schema +├── __tests__/ # Integration tests +└── wrap # Generated types +``` + + + + + +``` +src/ +├── index.ts # Entry point; exports module defined in schema +├── __tests__/ # Integration tests +└── wrap # Generated types +``` + + + + +By default, codegen is automatically run before you build your project with `polywrap build`. + +## **Wrap Directory** + +The bindings contain generated types that we must use to implement the wrap module, as well as additional logic related to serialization and interaction with the Polywrap Client. + + + + +``` +wrap/ +├── module/ +│ ├── mod.rs +│ ├── module.rs # Module Trait +│ └── wrapped.rs # Args types and method wrappers +├── sample_result/ +│ └── mod.rs # Custom type implementation +├── mod.rs +├── entry.rs # Entry file +└── prelude.rs +``` + + + + + +``` +wrap/ +├── main/ +│ └── main.go # Entry file +├── module_wrapped/ +│ ├── module_serialization.go # Module serialization logic +│ └── module_wrapped.go # Method wrappers +├── types/ +│ ├── module_args.go # Module interface and Args types +│ ├── object_sample_result.go # Custom type impelmentation +│ └── object_sample_result_serialization.go # Custom type serialization logic +└── wrap.go +``` + + + + + +``` +wrap/ +├── common.ts # Core types available in every wrap +├── entry.ts # Entry file +├── globals.d.ts # Wrap binding method declarations +├── index.ts +├── module.ts # Module base class and Arg types +└── types.ts # Implementations for custom types defined in the wrap schema +``` + + + + + +``` +wrap/ +├── Module/ +│ ├── index.ts +│ ├── module.ts # Module base class +│ ├── serialization.ts # Arg types and Module serialization logic +│ └── wrapped.ts # Method wrappers +├── SampleResult/ +│ ├── index.ts # Custom type implementation +│ └── serialization.ts # Custom type serialization logic +├── entry.ts # Entry file +└── index.ts +``` + + + + +We're only going to focus on the parts that you need to be aware of: +- The Module base class +- Argument containers generated for each module method +- The `SampleResult` custom type + +### **Module Base Class** + +### **Args** + +### **Custom Type** + +## **Initial Module** + +The entry point file of the project contains an implementation of the `type Module` that was defined in the schema. From the schema, an abstract class or interface ("Trait" in Rust) has been generated. The module implementation extends the abstract class, implementing the abstract members. The implementation is expected and the wrap won't compile without it. + + + + +```rust +pub mod wrap; +pub use wrap::prelude::*; + +impl ModuleTrait for Module { + fn sample_method(args: ArgsSampleMethod) -> Result { + return Ok(SampleResult { + result: format!("{} from sample_method", args.arg), + }); + } +} +``` + + + + + +```golang +package module + +import ( + "example.com/template-wasm-go/module/wrap/types" +) + +func SampleMethod(args *types.ArgsSampleMethod) types.SampleResult { + return types.SampleResult{ + Result: args.Arg, + } +} +``` + + + + + +```typescript +import { Args_sampleMethod, SampleResult, ModuleBase } from "./wrap"; + +export class Module extends ModuleBase { + sampleMethod(args: Args_sampleMethod): SampleResult { + return { + result: args.arg, + }; + } +} +``` + + + + + +```assemblyscript +import { Args_sampleMethod, SampleResult, ModuleBase } from "./wrap"; + +export class Module extends ModuleBase { + sampleMethod(args: Args_sampleMethod): SampleResult { + return { + result: args.arg, + }; + } +} +``` + + + \ No newline at end of file From 3d7dfb2d3e65e18f8a9832a4eeb937616b07b881 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Thu, 26 Oct 2023 16:43:41 +0500 Subject: [PATCH 06/19] finished draft of schema-and-codegen.md --- .../part-one/project-manifest.md | 4 +- .../part-one/schema-and-codegen.md | 250 ------------------ .../part-one/schema-and-codegen.mdx | 105 ++++++++ .../partials/_codegen-dir.mdx | 47 ++++ .../partials/_template-module.mdx | 71 +++++ .../new-create-wraps/partials/_wrap-args.mdx | 45 ++++ .../partials/_wrap-custom-types.mdx | 56 ++++ .../new-create-wraps/partials/_wrap-dir.mdx | 71 +++++ .../partials/_wrap-module-base.mdx | 50 ++++ 9 files changed, 447 insertions(+), 252 deletions(-) delete mode 100644 src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.md create mode 100644 src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx create mode 100644 src/docs/tutorials/new-create-wraps/partials/_codegen-dir.mdx create mode 100644 src/docs/tutorials/new-create-wraps/partials/_template-module.mdx create mode 100644 src/docs/tutorials/new-create-wraps/partials/_wrap-args.mdx create mode 100644 src/docs/tutorials/new-create-wraps/partials/_wrap-custom-types.mdx create mode 100644 src/docs/tutorials/new-create-wraps/partials/_wrap-dir.mdx create mode 100644 src/docs/tutorials/new-create-wraps/partials/_wrap-module-base.mdx diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md index b3948164..523ad11d 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md +++ b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md @@ -22,7 +22,7 @@ project: type: # Type/language of project source: schema: # Path to wrap schema - module: # (Optional) Path to entry file; absent for interface wraps + module: # (Optional) Path to module entry file; absent for interface wraps import_abis: # (Optional) Array of URI redirects used to resolve imports in the schema - uri: # One of the schema's import URI abi: # Path to a local ABI or schema. Supported file formats: [*.graphql, *.info, *.json, *.yaml] @@ -91,7 +91,7 @@ There is one additional type of project called an "interface wrap" (with type `i The project source tells the Polywrap CLI where to find: - The project schema--i.e. the module and types the wrap exports -- The entry file that implements the Wrap Schema in code and exports its module +- The module entry file that implements the Wrap Schema in code and exports its module - The location of a locally-stored Wrap Schema or `wrap.info` ABI file, and an arbitrary URI you'd like to point to it diff --git a/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.md b/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.md deleted file mode 100644 index 0df7e9dd..00000000 --- a/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.md +++ /dev/null @@ -1,250 +0,0 @@ ---- -id: 'schema-and-codegen' -title: 'Schema and Codegen' ---- -import Tabs from '@theme/Tabs'; -import TabItem from '@theme/TabItem'; - -:::note -You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. -::: - -Every wrap, plugin, and "interface wrap" has a `polywrap.graphql` schema that defines its public interface. The schema is parsed and composed into a `wrap.info` ABI file that is included in the wrap package along with the `wrap.wasm` bytecode module (the code). - -Polywrap uses the schema to generate bindings for your wrap. The bindings handle serialization logic--so that data can pass between the Wasm module and the Polywrap Client--and provide a lightweight structure to validate the wrap's content. - -Wrap schemas use a simplified version of GraphQL schema syntax. We provide detailed reference documentation in [Wrap Schema](/concepts/wrap-schema), but you'll learn most of it just by following along in this guide. - -Since the schema's primary purpose is to communicate which code bindings should be generated, we'll learn a bit about the generated bindings as well. - -## **Initial Schema** - -Okay, first we should take a look at the `polywrap.graphql` schema we generated when we initialized our project with the Polywrap CLI. It's located in the project root. - -```graphql -type Module { - sampleMethod(arg: String!): SampleResult! -} - -type SampleResult { - result: String! -} -``` - -We have a `Module` and a custom type named `SampleResult`. - -Every wrap has exactly one declaration of `type Module` that defines the wrap's methods. Without a module, there would be nothing to invoke. If we want two or more modules, we can simply create more wraps and our wrap can invoke them. When one wrap invokes another, we call it a "subinvocation". - -The sample module has one method, `sampleMethod(arg: String!): SampleResult!`, that accepts a single argument named `arg` of type `String!` and returns a `SampleResult!`. - -Following GraphQL syntax, a `!` means a type cannot be `null`. The absence of a `!` would mean a property or argument is optional, and it's okay for users to pass in `null`. - -Also, primitive types start with capital letters. - -## **Codegen** - -To generate the code bindings, change your current working directory to the project root and run `polywrap codegen` using the Polywrap CLI. A new directory called `wrap` will be generated next to your entry file. - - - - -``` -src/ -├── lib.rs # Entry point; exports module defined in schema -└── wrap # Generated types -``` - - - - - -``` -module/ -├── module.go # Entry point; exports module defined in schema -├── __tests__/ # Integration tests -└── wrap # Generated types -``` - - - - - -``` -src/ -├── index.ts # Entry point; exports module defined in schema -├── __tests__/ # Integration tests -└── wrap # Generated types -``` - - - - - -``` -src/ -├── index.ts # Entry point; exports module defined in schema -├── __tests__/ # Integration tests -└── wrap # Generated types -``` - - - - -By default, codegen is automatically run before you build your project with `polywrap build`. - -## **Wrap Directory** - -The bindings contain generated types that we must use to implement the wrap module, as well as additional logic related to serialization and interaction with the Polywrap Client. - - - - -``` -wrap/ -├── module/ -│ ├── mod.rs -│ ├── module.rs # Module Trait -│ └── wrapped.rs # Args types and method wrappers -├── sample_result/ -│ └── mod.rs # Custom type implementation -├── mod.rs -├── entry.rs # Entry file -└── prelude.rs -``` - - - - - -``` -wrap/ -├── main/ -│ └── main.go # Entry file -├── module_wrapped/ -│ ├── module_serialization.go # Module serialization logic -│ └── module_wrapped.go # Method wrappers -├── types/ -│ ├── module_args.go # Module interface and Args types -│ ├── object_sample_result.go # Custom type impelmentation -│ └── object_sample_result_serialization.go # Custom type serialization logic -└── wrap.go -``` - - - - - -``` -wrap/ -├── common.ts # Core types available in every wrap -├── entry.ts # Entry file -├── globals.d.ts # Wrap binding method declarations -├── index.ts -├── module.ts # Module base class and Arg types -└── types.ts # Implementations for custom types defined in the wrap schema -``` - - - - - -``` -wrap/ -├── Module/ -│ ├── index.ts -│ ├── module.ts # Module base class -│ ├── serialization.ts # Arg types and Module serialization logic -│ └── wrapped.ts # Method wrappers -├── SampleResult/ -│ ├── index.ts # Custom type implementation -│ └── serialization.ts # Custom type serialization logic -├── entry.ts # Entry file -└── index.ts -``` - - - - -We're only going to focus on the parts that you need to be aware of: -- The Module base class -- Argument containers generated for each module method -- The `SampleResult` custom type - -### **Module Base Class** - -### **Args** - -### **Custom Type** - -## **Initial Module** - -The entry point file of the project contains an implementation of the `type Module` that was defined in the schema. From the schema, an abstract class or interface ("Trait" in Rust) has been generated. The module implementation extends the abstract class, implementing the abstract members. The implementation is expected and the wrap won't compile without it. - - - - -```rust -pub mod wrap; -pub use wrap::prelude::*; - -impl ModuleTrait for Module { - fn sample_method(args: ArgsSampleMethod) -> Result { - return Ok(SampleResult { - result: format!("{} from sample_method", args.arg), - }); - } -} -``` - - - - - -```golang -package module - -import ( - "example.com/template-wasm-go/module/wrap/types" -) - -func SampleMethod(args *types.ArgsSampleMethod) types.SampleResult { - return types.SampleResult{ - Result: args.Arg, - } -} -``` - - - - - -```typescript -import { Args_sampleMethod, SampleResult, ModuleBase } from "./wrap"; - -export class Module extends ModuleBase { - sampleMethod(args: Args_sampleMethod): SampleResult { - return { - result: args.arg, - }; - } -} -``` - - - - - -```assemblyscript -import { Args_sampleMethod, SampleResult, ModuleBase } from "./wrap"; - -export class Module extends ModuleBase { - sampleMethod(args: Args_sampleMethod): SampleResult { - return { - result: args.arg, - }; - } -} -``` - - - \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx b/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx new file mode 100644 index 00000000..3be9e32c --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx @@ -0,0 +1,105 @@ +--- +id: 'schema-and-codegen' +title: 'Schema and Codegen' +--- +import CodegenDir from '../partials/_codegen-dir.mdx'; +import WrapDir from '../partials/_wrap-dir.mdx'; +import WrapModuleBase from '../partials/_wrap-module-base.mdx'; +import WrapArgs from '../partials/_wrap-args.mdx'; +import WrapCustomTypes from '../partials/_wrap-custom-types.mdx'; +import TemplateModule from '../partials/_template-module.mdx'; + +:::note +You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. +::: + +Every wrap, plugin, and "interface wrap" has a `polywrap.graphql` schema that defines its public interface. The schema is parsed and composed into a `wrap.info` ABI file that is included in the wrap package along with the `wrap.wasm` bytecode module (the code). + +Polywrap uses the schema to generate bindings for your wrap. The bindings handle serialization logic--so that data can pass between the Wasm module and the Polywrap Client--and provide a lightweight structure to validate the wrap's content. + +Wrap schemas use a simplified version of GraphQL schema syntax. We provide detailed reference documentation in [Wrap Schema](/concepts/wrap-schema), but you'll learn most of it just by following along in this guide. + +Since the schema's primary purpose is to communicate which code bindings should be generated, we'll learn a bit about the generated bindings as well. + +## **Initial Schema** + +First, let's take a look at the `polywrap.graphql` schema we generated when we initialized our project with the Polywrap CLI. It's located in the project root. + +```graphql title="polywrap.graphql" +type Module { + sampleMethod(arg: String!): SampleResult! +} + +type SampleResult { + result: String! +} +``` + +We have a `Module` and a custom type named `SampleResult`. + +Every wrap has exactly one declaration of `type Module` that defines the wrap's methods. Without a module, there would be nothing to invoke. If we want two or more modules, we can simply create more wraps and our wrap can invoke them. When one wrap invokes another, we call it a "subinvocation". + +The sample module has one method, `sampleMethod(arg: String!): SampleResult!`, that accepts a single argument named `arg` of type `String!` and returns a `SampleResult!`. + +Following GraphQL syntax, a `!` means a type cannot be `null`. The absence of a `!` would mean a property or argument is optional, and it's okay for users to pass in `null`. Also, primitive types start with capital letters. + +We'll use this schema to generate code bindings and see how they are used. + +## **Codegen** + +To generate the code bindings, change your current working directory to the project root and run `polywrap codegen` using the Polywrap CLI. A new directory called `wrap` will be generated next to your module entry file. + + + +By default, codegen is automatically run before you build your project with `polywrap build`. + +## **Wrap Directory** + +The bindings contain generated types that we must use to implement the wrap module, as well as additional logic related to serialization and interaction with the Polywrap Client. + + + +We're going to keep it simple and discuss only the code snippets you need to be aware of: +- Custom type implementations +- Argument types generated for each module method +- The Module Base (an abstract class, interface, or trait) + +Once we've seen the generated wrap bindings, we won't need to look at them again. The wrap schema tells you everything you need to know about the wrap directory's contents. + +### **Custom Type** + + + +A class (or struct) has been generated for the `SampleResult` type, mirroring its schema definition. + +Codegen generates custom types that mirror the custom types defined in the schema. Although we won't review it, the Polywrap CLI also generates serialization logic for each custom type. + +### **Args** + + + +Likewise, a class (or struct) named `ArgsSampleMethod` (or `Args_sampleMethod`) has been generated to hold the arguments of the `sampleMethod` method defined in the schema. + +Codegen generates argument types for each method defined in the schema. A method's "Args" type must be used to invoke the method. As with custom types, serialization logic is generated for each Args type. + +:::info +*Why do we use an Args type instead of passing method arguments directly?* + +*Recall that when a Polywrap Client user invokes your wrap, the user passes arguments from the Client's host language (e.g. JavaScript) to the Wasm module. The arguments are serialized before being passed into the Wasm module. The Args type simplifies deserialization within the Wasm module. And if the invoked method performs a subinvocation--i.e. invokes a different wrap--the Args type passed into the subinvocation is serialized and passed to the subinvoked wrap.* +::: + +### **Module Base** + + + +The Module Base is an abstract class or interface that must be implemented in your module entry file. For each method defined in the schema, the module base contains an abstract method with a matching signature. + +The Module Base helps wrap developers ensure their module implementation is correct by validating the module implementation at compile time. It is used by the wrap bindings to call the module's methods when a Polywrap Client invokes the wrap. + +## **Initial Module** + +From this point forward, we won't need to look at the generated code bindings again. We can instead focus on the schema and the module entry file, which is where we'll write our code. + +The module entry file already contains an implementation of the Module Base, which mirrors the `Module` defined in the schema. It imports the generated `ArgsSampleMethod` (or `Args_sampleMethod`) and `SampleResult` types, and uses them in to implement the `sampleMethod` method. + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/partials/_codegen-dir.mdx b/src/docs/tutorials/new-create-wraps/partials/_codegen-dir.mdx new file mode 100644 index 00000000..21f4c523 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/partials/_codegen-dir.mdx @@ -0,0 +1,47 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + +``` +src/ +├── lib.rs # Entry point; exports module defined in schema +└── wrap # Generated types +``` + + + + + +``` +module/ +├── module.go # Entry point; exports module defined in schema +├── __tests__/ # Integration tests +└── wrap # Generated types +``` + + + + + +``` +src/ +├── index.ts # Entry point; exports module defined in schema +├── __tests__/ # Integration tests +└── wrap # Generated types +``` + + + + + +``` +src/ +├── index.ts # Entry point; exports module defined in schema +├── __tests__/ # Integration tests +└── wrap # Generated types +``` + + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/partials/_template-module.mdx b/src/docs/tutorials/new-create-wraps/partials/_template-module.mdx new file mode 100644 index 00000000..9fa84c39 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/partials/_template-module.mdx @@ -0,0 +1,71 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + +```rust title=src/lib.rs +pub mod wrap; +pub use wrap::prelude::*; + +impl ModuleTrait for Module { + fn sample_method(args: ArgsSampleMethod) -> Result { + return Ok(SampleResult { + result: format!("{} from sample_method", args.arg), + }); + } +} +``` + + + + + +```go title=module/module.go +package module + +import ( + "example.com/template-wasm-go/module/wrap/types" +) + +func SampleMethod(args *types.ArgsSampleMethod) types.SampleResult { + return types.SampleResult{ + Result: args.Arg, + } +} +``` + + + + + +```typescript title=src/index.ts +import { Args_sampleMethod, SampleResult, ModuleBase } from "./wrap"; + +export class Module extends ModuleBase { + sampleMethod(args: Args_sampleMethod): SampleResult { + return { + result: args.arg, + }; + } +} +``` + + + + + +```ts title=src/index.ts +import { Args_sampleMethod, SampleResult, ModuleBase } from "./wrap"; + +export class Module extends ModuleBase { + sampleMethod(args: Args_sampleMethod): SampleResult { + return { + result: args.arg, + }; + } +} +``` + + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/partials/_wrap-args.mdx b/src/docs/tutorials/new-create-wraps/partials/_wrap-args.mdx new file mode 100644 index 00000000..b062eeca --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/partials/_wrap-args.mdx @@ -0,0 +1,45 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + +```rust title=wrap/module/wrapped.rs +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct ArgsSampleMethod { + pub arg: String, +} +``` + + + + + +```go title=wrap/types/module_args.go +type ArgsSampleMethod struct { + Arg string `json:"arg"` +} +``` + + + + + +```ts title=wrap/module.ts +export class Args_sampleMethod { + arg: string; +} +``` + + + + + +```ts title=wrap/Module/serialization.ts +export class Args_sampleMethod { + arg: string; +} +``` + + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/partials/_wrap-custom-types.mdx b/src/docs/tutorials/new-create-wraps/partials/_wrap-custom-types.mdx new file mode 100644 index 00000000..d6170109 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/partials/_wrap-custom-types.mdx @@ -0,0 +1,56 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + +```rust title=wrap/sample_result/mod.rs +#[derive(Clone, Debug, Deserialize, Serialize)] +pub struct SampleResult { + pub result: String, +} + +impl SampleResult { + pub fn new() -> SampleResult { + SampleResult { + result: String::new(), + } + } +} +``` + + + + + +```go title=wrap/types/object_sample_result.go +type SampleResult struct { + Result string `json:"result"` +} +``` + + + + + +```ts title=wrap/types.ts +export class SampleResult { + result: string; +} +``` + + + + + +```ts title=wrap/SampleResult/index.ts +export class SampleResult { + result: string; + + // static methods for serialization + ... +} +``` + + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/partials/_wrap-dir.mdx b/src/docs/tutorials/new-create-wraps/partials/_wrap-dir.mdx new file mode 100644 index 00000000..f666cb8b --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/partials/_wrap-dir.mdx @@ -0,0 +1,71 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + +``` +wrap/ +├── module/ +│ ├── mod.rs +│ ├── module.rs # Module Trait +│ └── wrapped.rs # Args types and method wrappers +├── sample_result/ +│ └── mod.rs # Custom type implementations +├── mod.rs +├── entry.rs # Wrap entry file +└── prelude.rs +``` + + + + + +``` +wrap/ +├── main/ +│ └── main.go # Wrap entry file +├── module_wrapped/ +│ ├── module_serialization.go # Module serialization logic +│ └── module_wrapped.go # Method wrappers +├── types/ +│ ├── module_args.go # Module interface and Args types +│ ├── object_sample_result.go # Custom type implementations +│ └── object_sample_result_serialization.go # Custom type serialization logic +└── wrap.go +``` + + + + + +``` +wrap/ +├── common.ts # Core types available in every wrap +├── entry.ts # Wrap entry file +├── globals.d.ts # Wrap binding method declarations +├── index.ts +├── module.ts # Module base class and Args types +└── types.ts # Custom type implementations +``` + + + + + +``` +wrap/ +├── Module/ +│ ├── index.ts +│ ├── module.ts # Module base class +│ ├── serialization.ts # Args types and Module serialization logic +│ └── wrapped.ts # Method wrappers +├── SampleResult/ +│ ├── index.ts # Custom type implementations +│ └── serialization.ts # Custom type serialization logic +├── entry.ts # Wrap entry file +└── index.ts +``` + + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/partials/_wrap-module-base.mdx b/src/docs/tutorials/new-create-wraps/partials/_wrap-module-base.mdx new file mode 100644 index 00000000..883fc316 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/partials/_wrap-module-base.mdx @@ -0,0 +1,50 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + +```rust title=wrap/module/module.rs +pub struct Module; + +pub trait ModuleTrait { + fn sample_method(args: ArgsSampleMethod) -> Result; +} +``` + + + + + +```go title=wrap/types/module_args.go +type Module interface { + SampleMethod(args *ArgsSampleMethod) SampleResult +} +``` + + + + + +```ts title=wrap/module.ts +export abstract class ModuleBase { + abstract sampleMethod( + args: Args_sampleMethod + ): Types.SampleResult; +} +``` + + + + + +```ts title=wrap/Module/module.ts +export abstract class ModuleBase { + abstract sampleMethod( + args: Types.Args_sampleMethod + ): Types.SampleResult; +} +``` + + + \ No newline at end of file From 2e578a54fd6abfa7d1e8a91309ef6578a646d278 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Thu, 26 Oct 2023 16:56:54 +0500 Subject: [PATCH 07/19] improved page transitions in new create wraps tutorial --- .../tutorials/new-create-wraps/part-one/project-manifest.md | 2 +- .../tutorials/new-create-wraps/part-one/project-setup.mdx | 6 +++++- .../new-create-wraps/part-one/schema-and-codegen.mdx | 2 ++ 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md index 523ad11d..6ec7adf4 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md +++ b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md @@ -9,7 +9,7 @@ import TabItem from '@theme/TabItem'; You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. ::: -Each wrap package is described by a `polywrap.yaml` project manifest file. The project manifest provides the Polywrap CLI with basic information it needs to [`build`](https://github.com/polywrap/cli/tree/origin-dev/packages/cli#build--b) the wrap, such as where to find the `polywrap.graphql` schema that we'll write in the next section. +Each wrap package is described by a `polywrap.yaml` project manifest file. The project manifest provides the Polywrap CLI with basic information it needs to [`build`](https://github.com/polywrap/cli/tree/origin-dev/packages/cli#build--b) the wrap, such as where to find the `polywrap.graphql` schema that we'll review in the next section. ## Manifest Content diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx index 0eaecdc1..b45b98b5 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx @@ -10,9 +10,13 @@ import ProjectDirCommon from '../partials/_project-dir-common.mdx'; You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. ::: +Welcome to Part One of the Create Wraps tutorial. We will build a new Polywrap wrap called "Oracle Wrap". Oracle Wrap is capable of both obscuring and enlightening knowledge using hashing and generative AI. + +Please read the [Introduction](../introduction) if you haven't done so already. Otherwise, let's dive right in! + ## **Create the Project** -We will generate our project scaffolding using the Polywrap CLI. The `create` command of the Polywrap CLI uses the syntax `polywrap create `. This tutorial is about building Wasm wraps, so let's create a `wasm` project and name it `oracle-wrap` +We will generate our project scaffolding using the Polywrap CLI. The `create` command of the Polywrap CLI uses the syntax `polywrap create ` to download a project template. This tutorial is about building Wasm wraps, so let's create a `wasm` project and name it `oracle-wrap` diff --git a/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx b/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx index 3be9e32c..c8824d4e 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx @@ -21,6 +21,8 @@ Wrap schemas use a simplified version of GraphQL schema syntax. We provide detai Since the schema's primary purpose is to communicate which code bindings should be generated, we'll learn a bit about the generated bindings as well. +In the next section, we'll use what we've learned to write the first method of "Oracle Wrap". + ## **Initial Schema** First, let's take a look at the `polywrap.graphql` schema we generated when we initialized our project with the Polywrap CLI. It's located in the project root. From f235988efdd1113c403401ed7fcf684b7417e65f Mon Sep 17 00:00:00 2001 From: krisbitney Date: Thu, 26 Oct 2023 18:02:31 +0500 Subject: [PATCH 08/19] improved page transitions by adding "next steps" sections to new create wraps tutorial --- sidebars.js | 1 + src/components/NavButton.tsx | 11 +++++++++++ src/css/custom.css | 17 +++++++++++++++++ .../{introduction.md => introduction.mdx} | 12 ++++++++---- .../part-one/first-method.mdx | 19 +++++++++++++++++++ ...oject-manifest.md => project-manifest.mdx} | 14 ++++++++++---- .../part-one/project-setup.mdx | 7 +++++++ .../part-one/schema-and-codegen.mdx | 13 ++++++++++--- .../partials/_project-dir-common.mdx | 2 -- 9 files changed, 83 insertions(+), 13 deletions(-) create mode 100644 src/components/NavButton.tsx rename src/docs/tutorials/new-create-wraps/{introduction.md => introduction.mdx} (89%) create mode 100644 src/docs/tutorials/new-create-wraps/part-one/first-method.mdx rename src/docs/tutorials/new-create-wraps/part-one/{project-manifest.md => project-manifest.mdx} (89%) diff --git a/sidebars.js b/sidebars.js index 7d0e6d88..2d0121e3 100644 --- a/sidebars.js +++ b/sidebars.js @@ -77,6 +77,7 @@ const sidebars = { 'tutorials/new-create-wraps/part-one/project-setup', 'tutorials/new-create-wraps/part-one/project-manifest', 'tutorials/new-create-wraps/part-one/schema-and-codegen', + 'tutorials/new-create-wraps/part-one/first-method', ] } ], diff --git a/src/components/NavButton.tsx b/src/components/NavButton.tsx new file mode 100644 index 00000000..d33bdf14 --- /dev/null +++ b/src/components/NavButton.tsx @@ -0,0 +1,11 @@ +import Link from '@docusaurus/Link'; +import React from 'react'; +import "../css/custom.css"; + +export const NavButton = (props: { to: string, text: string }) => { + return ( + + + + ) +} \ No newline at end of file diff --git a/src/css/custom.css b/src/css/custom.css index c34f754a..530923bd 100644 --- a/src/css/custom.css +++ b/src/css/custom.css @@ -395,3 +395,20 @@ html[data-theme="dark"] .handbook-logo:after { background-size: contain; filter: grayscale(1) invert(1); } + +.tutorial-nav-button { + font-size: 16px; + padding: 12px 24px; + cursor: pointer; + transition: background-color 0.3s, box-shadow 0.3s, transform 0.3s; + font-weight: 700; + background: #27c69f; + border: none; + border-radius: 4px; + box-shadow: 0px 3px 6px rgba(0,0,0,0.16); +} + +.tutorial-nav-button:hover { + filter: brightness(90%); + box-shadow: 0px 5px 10px rgba(0,0,0,0.2); +} diff --git a/src/docs/tutorials/new-create-wraps/introduction.md b/src/docs/tutorials/new-create-wraps/introduction.mdx similarity index 89% rename from src/docs/tutorials/new-create-wraps/introduction.md rename to src/docs/tutorials/new-create-wraps/introduction.mdx index db6c3b04..1a973335 100644 --- a/src/docs/tutorials/new-create-wraps/introduction.md +++ b/src/docs/tutorials/new-create-wraps/introduction.mdx @@ -2,13 +2,13 @@ id: 'introduction' title: 'Introduction' --- +import { NavButton } from '/src/components/NavButton' :::note Last update: October 2023
Polywrap version `0.12.1` ::: -// TODO: link to "What is Polywrap" or a wrap Concept section If you want to learn how to build a Polywrap "wrap", you've come to the right place! In this guide, we will build a new Polywrap wrap called "Oracle Wrap". Oracle Wrap is capable of both obscuring and enlightening knowledge using hashing and generative AI. The guide is split into two parts. :::tip @@ -17,8 +17,6 @@ If you want to learn how to build a Polywrap "wrap", you've come to the right pl In Part One, we cover everything you need to know to build, test, and deploy a wrap that you can use in your app today. Part one will stick to the "happy path", where we rely on default configurations that serve most use cases well. -// TODO: Add links to concepts - We will learn how to: - Add basic project metadata to the `polywrap.yaml` project manifest - Define the wrap's interface in the `polywrap.graphql` schema @@ -48,4 +46,10 @@ If you haven't already, you'll need to [install the Polywrap CLI](/cli#installat To build your wrap without installing additional dependencies, you will need [Docker](https://docs.docker.com/get-docker/) and [Docker Compose](https://docs.docker.com/compose/install/). -The Polywrap CLI uses Docker by default, and we will use it in this tutorial. You can learn how to build a wrap without Docker in [TODO: LINK TO BUILD MANIFEST TUTORIAL]. \ No newline at end of file +The Polywrap CLI uses Docker by default, and we will use it in this tutorial. You can learn how to build a wrap without Docker in [Configure Polywrap build pipeline](../build-and-deploy-wraps/build-pipeline). + +## **Next Steps** + +The next section will show you how to start a new wrap project. + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx b/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx new file mode 100644 index 00000000..53836eb2 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx @@ -0,0 +1,19 @@ +--- +id: 'first-method' +title: 'First Method' +--- + +:::note +You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. +::: + + + +## **Update the Schema** + +## **Write the Method** + +## **Build the Project** + +## **Next Steps** + diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.mdx similarity index 89% rename from src/docs/tutorials/new-create-wraps/part-one/project-manifest.md rename to src/docs/tutorials/new-create-wraps/part-one/project-manifest.mdx index 6ec7adf4..e39bc8d7 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.md +++ b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.mdx @@ -4,6 +4,7 @@ title: 'Project Manifest' --- import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; +import { NavButton } from '/src/components/NavButton' :::note You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. @@ -84,7 +85,6 @@ project:
-// TODO: link to interface docs There is one additional type of project called an "interface wrap" (with type `interface`), which is used to define a wrap interface that can be implemented by other wraps or plugins. We'll discuss interface wraps in greater detail later on in the tutorial. ### **Source** @@ -144,7 +144,6 @@ For example, the `import_abis` feature can be used in a monorepo that contains o ### **Extensions** -// TODO: link to build manifest and docs manifest documentation There are two types of manifest extensions you can register in the project manifest: `build` and `docs`. The `polywrap.build.yaml` build manifest enables developers to customize the wrap build process. The `polywrap.docs.yaml` manifest allows you to provide metadata for package registries and include common documentation files such as a `README.md`. ```yaml @@ -152,7 +151,14 @@ extensions: build: ./polywrap.build.yaml ``` -We will use the `docs` manifest extensions later on to include a `README.md` file in our package. We won't be using the `build` extension in Part One of this tutorial, but we'll dive into it in Part Two . If you'd like, you can remove the `build` extension property and delete the `polywrap.build.yaml` file. +We will use the `docs` manifest extensions later on to include a `README.md` file in our package. We won't be using the `build` extension in Part One of this tutorial, but we'll dive into it in Part Two. If you'd like, you can remove the `build` extension property and delete the `polywrap.build.yaml` file. ### **Resources** -The `resources` attribute allows you to provide a path to a directory that contains arbitrary files you'd like included in the wrap package when deploying the wrap. \ No newline at end of file + +The `resources` attribute allows you to provide a path to a directory that contains arbitrary files you'd like included in the wrap package when deploying the wrap. + +## **Next Steps** + +Next we'll review the Wrap Schema, generate code bindings, and review what is generated. The generated code bindings are the key to what makes wraps different from ordinary WebAssembly modules, and you'll need to know how to use them. We'll also take a look at the sample module entry file, which imports the generated bindings and uses them to implement the Wrap Schema in code. + + diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx index b45b98b5..5c54bd38 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx @@ -5,6 +5,7 @@ title: 'Project Setup' import Tabs from '@theme/Tabs'; import TabItem from '@theme/TabItem'; import ProjectDirCommon from '../partials/_project-dir-common.mdx'; +import { NavButton } from '/src/components/NavButton' :::note You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. @@ -150,3 +151,9 @@ project/
+ +## **Next Steps** + +In the next section we will set up the Project Manifest file, which contains metadata the Polywrap CLI needs to build your wrap. + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx b/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx index c8824d4e..8b34ebe7 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx @@ -8,18 +8,19 @@ import WrapModuleBase from '../partials/_wrap-module-base.mdx'; import WrapArgs from '../partials/_wrap-args.mdx'; import WrapCustomTypes from '../partials/_wrap-custom-types.mdx'; import TemplateModule from '../partials/_template-module.mdx'; +import { NavButton } from '/src/components/NavButton' :::note You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. ::: -Every wrap, plugin, and "interface wrap" has a `polywrap.graphql` schema that defines its public interface. The schema is parsed and composed into a `wrap.info` ABI file that is included in the wrap package along with the `wrap.wasm` bytecode module (the code). +Every wrap, plugin, and "interface wrap" has a `polywrap.graphql` schema that defines its public interface. The schema is parsed and composed into a `wrap.info` ABI file that is included in the wrap package along with the `wrap.wasm` bytecode module. Polywrap uses the schema to generate bindings for your wrap. The bindings handle serialization logic--so that data can pass between the Wasm module and the Polywrap Client--and provide a lightweight structure to validate the wrap's content. Wrap schemas use a simplified version of GraphQL schema syntax. We provide detailed reference documentation in [Wrap Schema](/concepts/wrap-schema), but you'll learn most of it just by following along in this guide. -Since the schema's primary purpose is to communicate which code bindings should be generated, we'll learn a bit about the generated bindings as well. +Since the schema's primary purpose is to communicate which code bindings should be generated, we'll learn a bit about the generated bindings as well. The generated bindings are what makes wraps special, so it's important to understand how they work. In the next section, we'll use what we've learned to write the first method of "Oracle Wrap". @@ -104,4 +105,10 @@ From this point forward, we won't need to look at the generated code bindings ag The module entry file already contains an implementation of the Module Base, which mirrors the `Module` defined in the schema. It imports the generated `ArgsSampleMethod` (or `Args_sampleMethod`) and `SampleResult` types, and uses them in to implement the `sampleMethod` method. - \ No newline at end of file + + +## **Next Steps** + +In the next section, we'll finally get to write some code. We'll implement the first method of "Oracle Wrap" and build our project with the Polywrap CLI. + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx b/src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx index 8c6e8a02..de526e6a 100644 --- a/src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx +++ b/src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx @@ -1,7 +1,6 @@ ### **`polywrap.yaml`** The `polywrap.yaml` project manifest is a high-level configuration file describing a Polywrap project. -// TODO: link to build manifest customization in part 2 of tutorial ### **`polywrap.build.yaml`** The `polywrap.build.yaml` build manifest enables build process customization. We won't need to modify this file, but we will learn how to do so anyway in Part Two of the tutorial. The file is not needed in most projects and can in fact be deleted. @@ -21,7 +20,6 @@ We include a `package.json` file with pre-written build scripts and developer de If you're building a Rust wrap, the `package.json` file is used only for build scripts and is not required for testing. Feel free to delete it or use it only as a reference. -// TODO: link to advanced testing section We understand that not every user wants to install NodeJS to build with Polywrap. Don't worry! In Part Two of the tutorial, we will learn how to write language-agnostic tests without any JavaScript dependencies. ### **`tsconfig.json`** From 8440c33c1b5fe274e5649fc5c28475ecfe902e73 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Fri, 27 Oct 2023 18:44:34 +0500 Subject: [PATCH 09/19] added "first method" section --- sidebars.js | 1 + .../assemblyscript/polywrap.graphql | 6 +- .../assemblyscript/src/index.ts | 22 +++- .../golang/module/module.go | 20 ++- .../golang/polywrap.graphql | 6 +- .../rust/polywrap.graphql | 6 +- .../create-wraps-tutorial/rust/src/lib.rs | 19 ++- .../typescript/polywrap.graphql | 2 +- .../typescript/src/index.ts | 22 +++- .../new-create-wraps/introduction.mdx | 2 +- .../part-one/first-method.mdx | 50 ++++++++ .../part-one/import-and-subinvoke.mdx | 39 ++++++ .../part-one/project-setup.mdx | 2 +- .../partials/_first_method_empty.mdx | 63 ++++++++++ .../partials/_first_method_simple.mdx | 118 ++++++++++++++++++ 15 files changed, 343 insertions(+), 35 deletions(-) create mode 100644 src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx create mode 100644 src/docs/tutorials/new-create-wraps/partials/_first_method_empty.mdx create mode 100644 src/docs/tutorials/new-create-wraps/partials/_first_method_simple.mdx diff --git a/sidebars.js b/sidebars.js index 2d0121e3..ce92f893 100644 --- a/sidebars.js +++ b/sidebars.js @@ -78,6 +78,7 @@ const sidebars = { 'tutorials/new-create-wraps/part-one/project-manifest', 'tutorials/new-create-wraps/part-one/schema-and-codegen', 'tutorials/new-create-wraps/part-one/first-method', + 'tutorials/new-create-wraps/part-one/import-and-subinvoke' ] } ], diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql b/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql index 5b34469c..05f139b3 100644 --- a/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql +++ b/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql @@ -1,7 +1,3 @@ type Module { - sampleMethod(arg: String!): SampleResult! -} - -type SampleResult { - result: String! + obscure(data: [String!]!, chaosLevel: Int): String! } diff --git a/snippets/create-wraps-tutorial/assemblyscript/src/index.ts b/snippets/create-wraps-tutorial/assemblyscript/src/index.ts index 135f6e6b..a31147a3 100644 --- a/snippets/create-wraps-tutorial/assemblyscript/src/index.ts +++ b/snippets/create-wraps-tutorial/assemblyscript/src/index.ts @@ -1,9 +1,21 @@ -import { Args_sampleMethod, SampleResult, ModuleBase } from "./wrap"; +import { ModuleBase, Args_obscure } from './wrap'; export class Module extends ModuleBase { - sampleMethod(args: Args_sampleMethod): SampleResult { - return { - result: args.arg, - }; + obscure(args: Args_obscure): string { + // handle default values + const chaosLevel: i32 = (args.chaosLevel == null || args.chaosLevel!!.unwrap() < 1) + ? 1 + : args.chaosLevel!!.unwrap(); + + let obscured: string = ""; + for (let i = 0; i < args.data.length; ++i) { + const data = args.data[i]; + // shift each character by the chaos level + for (let j = 0; j < data.length; ++j) { + const charCode = data.charCodeAt(j) + chaosLevel; + obscured += String.fromCharCode(charCode); + } + } + return obscured; } } diff --git a/snippets/create-wraps-tutorial/golang/module/module.go b/snippets/create-wraps-tutorial/golang/module/module.go index a3d140b9..b6eaf881 100644 --- a/snippets/create-wraps-tutorial/golang/module/module.go +++ b/snippets/create-wraps-tutorial/golang/module/module.go @@ -4,8 +4,20 @@ import ( "example.com/template-wasm-go/module/wrap/types" ) -func SampleMethod(args *types.ArgsSampleMethod) types.SampleResult { - return types.SampleResult{ - Result: args.Arg, - } +func Obscure(args *types.ArgsObscure) string { + // Handle default values + chaosLevel := int32(1) + if args.ChaosLevel != nil && *args.ChaosLevel >= 1 { + chaosLevel = *args.ChaosLevel + } + + var obscured string + for _, data := range args.Data { + // Shift each character by the chaos level + for _, char := range data { + charCode := char + rune(chaosLevel) + obscured += string(charCode) + } + } + return obscured } diff --git a/snippets/create-wraps-tutorial/golang/polywrap.graphql b/snippets/create-wraps-tutorial/golang/polywrap.graphql index 5b34469c..05f139b3 100644 --- a/snippets/create-wraps-tutorial/golang/polywrap.graphql +++ b/snippets/create-wraps-tutorial/golang/polywrap.graphql @@ -1,7 +1,3 @@ type Module { - sampleMethod(arg: String!): SampleResult! -} - -type SampleResult { - result: String! + obscure(data: [String!]!, chaosLevel: Int): String! } diff --git a/snippets/create-wraps-tutorial/rust/polywrap.graphql b/snippets/create-wraps-tutorial/rust/polywrap.graphql index 5b34469c..05f139b3 100644 --- a/snippets/create-wraps-tutorial/rust/polywrap.graphql +++ b/snippets/create-wraps-tutorial/rust/polywrap.graphql @@ -1,7 +1,3 @@ type Module { - sampleMethod(arg: String!): SampleResult! -} - -type SampleResult { - result: String! + obscure(data: [String!]!, chaosLevel: Int): String! } diff --git a/snippets/create-wraps-tutorial/rust/src/lib.rs b/snippets/create-wraps-tutorial/rust/src/lib.rs index 83c0727d..ef96f2cd 100644 --- a/snippets/create-wraps-tutorial/rust/src/lib.rs +++ b/snippets/create-wraps-tutorial/rust/src/lib.rs @@ -2,9 +2,20 @@ pub mod wrap; pub use wrap::prelude::*; impl ModuleTrait for Module { - fn sample_method(args: ArgsSampleMethod) -> Result { - return Ok(SampleResult { - result: format!("{} from sample_method", args.arg), - }); + fn obscure(args: ArgsObscure) -> Result { + // handle default values + let chaos_level = args.chaos_level.unwrap_or(1).max(1); + + let mut obscured = String::new(); + for data in &args.data { + // shift each character by the chaos level + for c in data.chars() { + let char_code = c as u32 + chaos_level as u32; + if let Some(new_char) = std::char::from_u32(char_code) { + obscured.push(new_char); + } + } + } + Ok(obscured) } } diff --git a/snippets/create-wraps-tutorial/typescript/polywrap.graphql b/snippets/create-wraps-tutorial/typescript/polywrap.graphql index a527c058..05f139b3 100644 --- a/snippets/create-wraps-tutorial/typescript/polywrap.graphql +++ b/snippets/create-wraps-tutorial/typescript/polywrap.graphql @@ -1,3 +1,3 @@ type Module { - foo(bar: String!): String! + obscure(data: [String!]!, chaosLevel: Int): String! } diff --git a/snippets/create-wraps-tutorial/typescript/src/index.ts b/snippets/create-wraps-tutorial/typescript/src/index.ts index fb25fe8e..e2fd7ef6 100644 --- a/snippets/create-wraps-tutorial/typescript/src/index.ts +++ b/snippets/create-wraps-tutorial/typescript/src/index.ts @@ -1,7 +1,21 @@ -import { Args_foo, ModuleBase } from "./wrap"; +import { ModuleBase, Args_obscure } from './wrap'; export class Module extends ModuleBase { - foo(args: Args_foo): string { - throw new Error("Not implemented"); + obscure(args: Args_obscure): string { + // handle default values + const chaosLevel = args.chaosLevel || 1; + + // obscure the data with chaos + let obscured: string = ""; + for (let i = 0; i < args.data.length; ++i) { + const data = args.data[i]; + // shift each character by the chaos level + obscured += data + .split("") + .map((char: string) => char.charCodeAt(0) + chaosLevel) + .map((charCode: number) => String.fromCharCode(charCode)) + .join("") + } + return obscured; } -} +} \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/introduction.mdx b/src/docs/tutorials/new-create-wraps/introduction.mdx index 1a973335..b4fb09df 100644 --- a/src/docs/tutorials/new-create-wraps/introduction.mdx +++ b/src/docs/tutorials/new-create-wraps/introduction.mdx @@ -9,7 +9,7 @@ Last update: October 2023
Polywrap version `0.12.1` ::: -If you want to learn how to build a Polywrap "wrap", you've come to the right place! In this guide, we will build a new Polywrap wrap called "Oracle Wrap". Oracle Wrap is capable of both obscuring and enlightening knowledge using hashing and generative AI. The guide is split into two parts. +If you want to learn how to build a Polywrap "wrap", you've come to the right place! In this guide, we will build a new Polywrap wrap called "Oracle Wrap". Oracle Wrap is capable of both obscuring and illuminating knowledge using hashing and generative AI. The guide is split into two parts. :::tip 👋 This guide is meant for those who want to build and deploy their own wraps. If you're interested in integrating existing wraps into your app, see our [Integrate into a JS App](/tutorials/use-wraps/install-client) guide. diff --git a/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx b/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx index 53836eb2..3e2de107 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx @@ -2,18 +2,68 @@ id: 'first-method' title: 'First Method' --- +import FirstMethodEmpty from '../partials/_first_method_empty.mdx'; +import FirstMethodSimple from '../partials/_first_method_simple.mdx'; :::note You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. ::: +Let's use what we've learned to implement a method in our wrap. Recall that we are building "Oracle Wrap", the wrap that can obscure and illuminate information. We're going to implement the first of Oracle Wrap's two methods, which we'll call `obscure`. +The `obscure` method will be a bit contrived, but it will give us a chance to familiarize ourselves with some basics. + +The goal of `obscure` is to ensure that data is harder to understand. In this section, we'll implement a simple version. In the next section, we'll improve it with a hashing function that we'll import from another wrap. ## **Update the Schema** +We'll let the `obscure` method take an array of strings so that we can obscure a lot of data at once, and an optional `chaosLevel` to indicate how strongly we want to obscure the data. We'll return the obscured data as a string. + +If we wanted to add more options, we could pass a custom type with more fields, but we'll keep it simple for now. + +Go ahead and update the schema with the new method: + +```graphql title="polywrap.graphql" +type Module { + obscure(data: [String!]!, chaosLevel: Int): String! +} +``` + +Before we start writing code, we'll want to run `polywrap codegen` in the terminal to update our bindings. If you installed the Polywrap CLI locally using the provided `package.json`, you can run `yarn codegen` to do this. + +If you'd like, feel free to take a look at the `wrap` directory and see how the bindings have changed. + ## **Write the Method** +When you open the module entry file, you'll see that it still has the same `Module` implementation with `sampleMethod`, which no longer exists. Let's replace it with `obscure` and fix the imports: + + + +Now let's add a simple implementation of `obscure` that doesn't use any dependencies. For each string in the data array, we are going to shift each character by `chaosLevel`. Then we'll concatenate the strings and return the result. + +Don't worry too much about the implementation details. We're going to rewrite the method in the next section. + + + ## **Build the Project** +To make sure our code compiles, let's build the project with the `polywrap build` command. + +The Polywrap CLI typically uses Docker to build wraps. At first this may sound unnecessary, but it's actually very useful. Building Polywrap wraps involves several steps that require additional dependencies. Depending on the source language, the steps may include tasks such as configuring WebAssembly memory and ensuring the wrap will work outside a JavaScript environment. Native build tools, such as Rust's `cargo build`, don't perform all the pre- and post-processing steps that Polywrap wraps require. + +:::tip +If you're writing your wrap in Rust, you can use `cargo check` to check your code for errors without building the entire project. +::: + +The `polywrap build` command has three build "strategies" that you can use to build your wrap: +- "vm": Downloads and runs a pre-built Docker image. This is the default. +- "image": Builds and runs a Docker image. +- "local": Runs the build script locally, without Docker. The script will attempt to install and use global dependencies. Assumes the host machine is unix-like (i.e. not Windows). + +We'll discuss build customization in the [Build Manifest](tutorials/build-and-deploy-wraps/build-pipeline) section in Part Two of this guide. + ## **Next Steps** +In the next section, we'll improve the `obscure` method by importing a hashing function from another wrap. + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx b/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx new file mode 100644 index 00000000..a7dd9e37 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx @@ -0,0 +1,39 @@ +--- +id: 'import-and-subinvoke' +title: 'Import and Subinvoke' +--- + +:::note +You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. +::: + +It's time to make the `obscure` method a little more interesting. In the previous section, we made the data hard to decipher by shifting each character in each string by a fixed amount. We can make our method far more insidious by hashing the data instead. + +To do this, we can import the `Sha3` wrap and subinvoke one of its hashing functions. First we'll learn how to import a wrap using a Wrap URI, and then we'll learn how to subinvoke the method using its generated Module bindings. + +:::tip +Your dependencies don't have to be other wraps. You can also use language-specific libraries, such as the Rust `sha3` package that was used to build the `Sha3` wrap. +::: + +## **Wrap URIs** + +## **Import a Wrap** + + + +```graphql title="polywrap.graphql" +#import { Module } into Sha3 from "wrap://http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" + +type Module { + obscure(data: [String!]!, chaosLevel: Int): String! +} +``` + +// sha3 schema (github): https://github.com/polywrap/sha3/blob/main/polywrap.graphql +// sha3 schema (wrapscan): https://www.wrapscan.io/wrap/wrapscan.io%2Fpolywrap%2Fsha3%401.0.0/schema + +## **Subinvocations** + + +## **Next Steps** + diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx index 5c54bd38..71e35336 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx @@ -11,7 +11,7 @@ import { NavButton } from '/src/components/NavButton' You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. ::: -Welcome to Part One of the Create Wraps tutorial. We will build a new Polywrap wrap called "Oracle Wrap". Oracle Wrap is capable of both obscuring and enlightening knowledge using hashing and generative AI. +Welcome to Part One of the Create Wraps tutorial. We will build a new Polywrap wrap called "Oracle Wrap". Oracle Wrap is capable of both obscuring and illuminating knowledge using hashing and generative AI. Please read the [Introduction](../introduction) if you haven't done so already. Otherwise, let's dive right in! diff --git a/src/docs/tutorials/new-create-wraps/partials/_first_method_empty.mdx b/src/docs/tutorials/new-create-wraps/partials/_first_method_empty.mdx new file mode 100644 index 00000000..3e06645f --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/partials/_first_method_empty.mdx @@ -0,0 +1,63 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + +```rust title=src/lib.rs +pub mod wrap; +pub use wrap::prelude::*; + +impl ModuleTrait for Module { + fn obscure(args: ArgsObscure) -> Result { + Ok(String::from("")) + } +} +``` + + + + + +```go title=module/module.go +package module + +import ( + "example.com/template-wasm-go/module/wrap/types" +) + +func Obscure(args *types.ArgsObscure) string { + return "" +} +``` + + + + + +```ts title=src/index.ts +import { ModuleBase, Args_obscure } from './wrap'; + +export class Module extends ModuleBase { + obscure(args: Args_obscure): string { + return ""; + } +} +``` + + + + + +```ts title=src/index.ts +import { ModuleBase, Args_obscure } from './wrap'; + +export class Module extends ModuleBase { + obscure(args: Args_obscure): string { + return ""; + } +} +``` + + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/partials/_first_method_simple.mdx b/src/docs/tutorials/new-create-wraps/partials/_first_method_simple.mdx new file mode 100644 index 00000000..6ef06a92 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/partials/_first_method_simple.mdx @@ -0,0 +1,118 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + +```rust title=src/lib.rs +pub mod wrap; +pub use wrap::prelude::*; + +impl ModuleTrait for Module { + fn obscure(args: ArgsObscure) -> Result { + // handle default values + let chaos_level = args.chaos_level.unwrap_or(1).max(1); + + let mut obscured = String::new(); + for data in &args.data { + // shift each character by the chaos level + for c in data.chars() { + let char_code = c as u32 + chaos_level as u32; + if let Some(new_char) = std::char::from_u32(char_code) { + obscured.push(new_char); + } + } + } + Ok(obscured) + } +} +``` + + + + + +```go title=module/module.go +package module + +import ( + "example.com/template-wasm-go/module/wrap/types" +) + +func Obscure(args *types.ArgsObscure) string { + // Handle default values + chaosLevel := int32(1) + if args.ChaosLevel != nil && *args.ChaosLevel >= 1 { + chaosLevel = *args.ChaosLevel + } + + var obscured string + for _, data := range args.Data { + // Shift each character by the chaos level + for _, char := range data { + charCode := char + rune(chaosLevel) + obscured += string(charCode) + } + } + return obscured +} +``` + + + + + +```ts title=src/index.ts +import { ModuleBase, Args_obscure } from './wrap'; + +export class Module extends ModuleBase { + obscure(args: Args_obscure): string { + // handle default values + const chaosLevel = args.chaosLevel || 1; + + // obscure the data with chaos + let obscured: string = ""; + for (let i = 0; i < args.data.length; ++i) { + const data = args.data[i]; + // shift each character by the chaos level + obscured += data + .split("") + .map((char: string) => char.charCodeAt(0) + chaosLevel) + .map((charCode: number) => String.fromCharCode(charCode)) + .join("") + } + return obscured; + } +} +``` + + + + + +```ts title=src/index.ts +import { ModuleBase, Args_obscure } from './wrap'; + +export class Module extends ModuleBase { + obscure(args: Args_obscure): string { + // handle default values + const chaosLevel: i32 = (args.chaosLevel == null || args.chaosLevel!!.unwrap() < 1) + ? 1 + : args.chaosLevel!!.unwrap(); + + let obscured: string = ""; + for (let i = 0; i < args.data.length; ++i) { + const data = args.data[i]; + // shift each character by the chaos level + for (let j = 0; j < data.length; ++j) { + const charCode = data.charCodeAt(j) + chaosLevel; + obscured += String.fromCharCode(charCode); + } + } + return obscured; + } +} +``` + + + \ No newline at end of file From 6ab448a3b5b2cf94ac3fcf5099410bcf810210b8 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Mon, 30 Oct 2023 15:36:19 +0500 Subject: [PATCH 10/19] completed import-and-subinvoke section of new create wraps tutorial --- sidebars.js | 3 +- .../assemblyscript/polywrap.graphql | 4 +- .../assemblyscript/src/index.ts | 11 +- .../golang/module/module.go | 16 ++- .../golang/polywrap.graphql | 4 +- .../rust/polywrap.graphql | 4 +- .../create-wraps-tutorial/rust/src/lib.rs | 11 +- .../typescript/polywrap.graphql | 4 +- .../typescript/src/index.ts | 16 +-- .../part-one/first-method.mdx | 11 +- .../part-one/import-and-subinvoke.mdx | 47 ++++++- .../part-one/interfaces-and-plugins.mdx | 16 +++ .../partials/_first_method_sha3.mdx | 122 ++++++++++++++++++ 13 files changed, 235 insertions(+), 34 deletions(-) create mode 100644 src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx create mode 100644 src/docs/tutorials/new-create-wraps/partials/_first_method_sha3.mdx diff --git a/sidebars.js b/sidebars.js index ce92f893..d4605994 100644 --- a/sidebars.js +++ b/sidebars.js @@ -78,7 +78,8 @@ const sidebars = { 'tutorials/new-create-wraps/part-one/project-manifest', 'tutorials/new-create-wraps/part-one/schema-and-codegen', 'tutorials/new-create-wraps/part-one/first-method', - 'tutorials/new-create-wraps/part-one/import-and-subinvoke' + 'tutorials/new-create-wraps/part-one/import-and-subinvoke', + 'tutorials/new-create-wraps/part-one/interfaces-and-plugins' ] } ], diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql b/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql index 05f139b3..1086df1b 100644 --- a/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql +++ b/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql @@ -1,3 +1,5 @@ +#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" + type Module { obscure(data: [String!]!, chaosLevel: Int): String! -} +} \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/assemblyscript/src/index.ts b/snippets/create-wraps-tutorial/assemblyscript/src/index.ts index a31147a3..64ad4624 100644 --- a/snippets/create-wraps-tutorial/assemblyscript/src/index.ts +++ b/snippets/create-wraps-tutorial/assemblyscript/src/index.ts @@ -1,4 +1,4 @@ -import { ModuleBase, Args_obscure } from './wrap'; +import { ModuleBase, Args_obscure, Sha3_Module } from './wrap'; export class Module extends ModuleBase { obscure(args: Args_obscure): string { @@ -9,12 +9,11 @@ export class Module extends ModuleBase { let obscured: string = ""; for (let i = 0; i < args.data.length; ++i) { - const data = args.data[i]; - // shift each character by the chaos level - for (let j = 0; j < data.length; ++j) { - const charCode = data.charCodeAt(j) + chaosLevel; - obscured += String.fromCharCode(charCode); + let data = args.data[i]; + for (let j = 0; j < chaosLevel; ++j) { + data = Sha3_Module.keccak_256({ message: data }).expect("hash failed"); } + obscured += data; } return obscured; } diff --git a/snippets/create-wraps-tutorial/golang/module/module.go b/snippets/create-wraps-tutorial/golang/module/module.go index b6eaf881..0a66aa87 100644 --- a/snippets/create-wraps-tutorial/golang/module/module.go +++ b/snippets/create-wraps-tutorial/golang/module/module.go @@ -2,6 +2,7 @@ package module import ( "example.com/template-wasm-go/module/wrap/types" + "example.com/template-wasm-go/module/wrap/imported/sha3" ) func Obscure(args *types.ArgsObscure) string { @@ -13,11 +14,16 @@ func Obscure(args *types.ArgsObscure) string { var obscured string for _, data := range args.Data { - // Shift each character by the chaos level - for _, char := range data { - charCode := char + rune(chaosLevel) - obscured += string(charCode) - } + tempData := data + for i := int32(0); i < chaosLevel; i++ { + hashArgs := &sha3.Sha3_ArgsKeccak_256 { Message: tempData } + hashed, err := sha3.Sha3_Keccak_256(hashArgs) + if err != nil { + return "" + } + tempData = hashed + } + obscured += tempData } return obscured } diff --git a/snippets/create-wraps-tutorial/golang/polywrap.graphql b/snippets/create-wraps-tutorial/golang/polywrap.graphql index 05f139b3..1086df1b 100644 --- a/snippets/create-wraps-tutorial/golang/polywrap.graphql +++ b/snippets/create-wraps-tutorial/golang/polywrap.graphql @@ -1,3 +1,5 @@ +#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" + type Module { obscure(data: [String!]!, chaosLevel: Int): String! -} +} \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/polywrap.graphql b/snippets/create-wraps-tutorial/rust/polywrap.graphql index 05f139b3..1086df1b 100644 --- a/snippets/create-wraps-tutorial/rust/polywrap.graphql +++ b/snippets/create-wraps-tutorial/rust/polywrap.graphql @@ -1,3 +1,5 @@ +#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" + type Module { obscure(data: [String!]!, chaosLevel: Int): String! -} +} \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/src/lib.rs b/snippets/create-wraps-tutorial/rust/src/lib.rs index ef96f2cd..77734121 100644 --- a/snippets/create-wraps-tutorial/rust/src/lib.rs +++ b/snippets/create-wraps-tutorial/rust/src/lib.rs @@ -1,5 +1,6 @@ pub mod wrap; pub use wrap::prelude::*; +use crate::wrap::imported::ArgsKeccak256; impl ModuleTrait for Module { fn obscure(args: ArgsObscure) -> Result { @@ -8,13 +9,11 @@ impl ModuleTrait for Module { let mut obscured = String::new(); for data in &args.data { - // shift each character by the chaos level - for c in data.chars() { - let char_code = c as u32 + chaos_level as u32; - if let Some(new_char) = std::char::from_u32(char_code) { - obscured.push(new_char); - } + let mut message = data.clone(); + for _ in 0..chaos_level { + message = Sha3Module::keccak_256(&ArgsKeccak256 { message })?; } + obscured += &message; } Ok(obscured) } diff --git a/snippets/create-wraps-tutorial/typescript/polywrap.graphql b/snippets/create-wraps-tutorial/typescript/polywrap.graphql index 05f139b3..1086df1b 100644 --- a/snippets/create-wraps-tutorial/typescript/polywrap.graphql +++ b/snippets/create-wraps-tutorial/typescript/polywrap.graphql @@ -1,3 +1,5 @@ +#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" + type Module { obscure(data: [String!]!, chaosLevel: Int): String! -} +} \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/typescript/src/index.ts b/snippets/create-wraps-tutorial/typescript/src/index.ts index e2fd7ef6..807fd5d5 100644 --- a/snippets/create-wraps-tutorial/typescript/src/index.ts +++ b/snippets/create-wraps-tutorial/typescript/src/index.ts @@ -1,4 +1,4 @@ -import { ModuleBase, Args_obscure } from './wrap'; +import { ModuleBase, Args_obscure, Sha3_Module } from './wrap'; export class Module extends ModuleBase { obscure(args: Args_obscure): string { @@ -8,13 +8,13 @@ export class Module extends ModuleBase { // obscure the data with chaos let obscured: string = ""; for (let i = 0; i < args.data.length; ++i) { - const data = args.data[i]; - // shift each character by the chaos level - obscured += data - .split("") - .map((char: string) => char.charCodeAt(0) + chaosLevel) - .map((charCode: number) => String.fromCharCode(charCode)) - .join("") + let data = args.data[i]; + for (let j = 0; j < chaosLevel; ++j) { + const result = Sha3_Module.keccak_256({ message: data }) + if (!result.ok) throw Error("hash failed"); + data = result.value!!; + } + obscured += data; } return obscured; } diff --git a/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx b/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx index 3e2de107..57c79537 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx @@ -19,6 +19,15 @@ The goal of `obscure` is to ensure that data is harder to understand. In this se We'll let the `obscure` method take an array of strings so that we can obscure a lot of data at once, and an optional `chaosLevel` to indicate how strongly we want to obscure the data. We'll return the obscured data as a string. +:::tip +``` +UInt8 Int8 String BigInt Map +UInt16 Int16 Boolean BigNumber +UInt32 Int32 Bytes JSON +``` +The built-in schema types are detailed in the [Wrap Schema](../../../concepts/wrap-schema) reference. +::: + If we wanted to add more options, we could pass a custom type with more fields, but we'll keep it simple for now. Go ahead and update the schema with the new method: @@ -39,7 +48,7 @@ When you open the module entry file, you'll see that it still has the same `Modu -Now let's add a simple implementation of `obscure` that doesn't use any dependencies. For each string in the data array, we are going to shift each character by `chaosLevel`. Then we'll concatenate the strings and return the result. +Now let's add a simple implementation of `obscure` that doesn't use any dependencies. For each string in the data array, we are going to shift each character by `chaosLevel`. Then we'll concatenate the strings (for extra chaos) and return the result. Don't worry too much about the implementation details. We're going to rewrite the method in the next section. diff --git a/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx b/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx index a7dd9e37..309fbe58 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx @@ -2,6 +2,7 @@ id: 'import-and-subinvoke' title: 'Import and Subinvoke' --- +import FirstMethodSha3 from '../partials/_first_method_sha3.mdx'; :::note You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. @@ -17,23 +18,63 @@ Your dependencies don't have to be other wraps. You can also use language-specif ## **Wrap URIs** +Wrap URIs are a simple, flexible URI format used by Polywrap to identify and import wraps. They allow wraps to be stored and retrieved from a variety of sources, including IPFS, HTTP, and the local filesystem. + +Wrap URIs have the benefit of decentralization: developers are not required to use a centralized registry to publish their wraps. Instead, they can publish their wraps to any storage network and resolve them using a Polywrap Client. + +A Wrap URI has three parts: +- Scheme (optional): `wrap://` +- Authority: e.g. `http`, `ipfs`, `fs` +- Path: e.g. `ipfs/Qm...`, `http/https://...`, `fs/path/to/wrap` + +You can learn more about the Wrap URI format in the [Wrap URI specification](/concepts/uris). + +A wrap URI is valid so long as it follows the Wrap URI format and can be resolved by a Polywrap Client. The Polywrap Client resolves URIs using implementations of the `UriResolver` interface. The Polywrap Client's default configuration includes several resolvers for common URI authorities, including IPFS, HTTP, ENS, and the local filesystem. Users can also configure the Polywrap Client with custom resolvers to resolve URIs from other sources. + ## **Import a Wrap** +We'll import our first dependency using a Wrap URI with the `http` authority. The URI points to Polywrap's own Wrapscan registry, which is still in construction as of the time of this writing. + +The syntax of an import statement is: +```graphql +#import { } into from +``` +Import statements are placed in the Wrap Schema. Let's add an import statement for the Sha3 wrap. ```graphql title="polywrap.graphql" -#import { Module } into Sha3 from "wrap://http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" type Module { obscure(data: [String!]!, chaosLevel: Int): String! } ``` -// sha3 schema (github): https://github.com/polywrap/sha3/blob/main/polywrap.graphql -// sha3 schema (wrapscan): https://www.wrapscan.io/wrap/wrapscan.io%2Fpolywrap%2Fsha3%401.0.0/schema +This import statement ensures a `Module` type will be available in the `Sha3` namespace. Make sure to run codegen once more to update the bindings. ## **Subinvocations** +Once we've successfully updated our generated bindings for the Sha3 dependency, we can use them to invoke a hash function. + +But how do we know which hash functions are available in the Sha3 wrap? Once again, the Wrap Schema comes in clutch. Even without package documentation, we can always know a wrap's interface by looking at its schema. You can view the schema for the `Sha3` wrap on [Github](https://github.com/polywrap/sha3/blob/main/polywrap.graphql) or [Wrapscan](https://www.wrapscan.io/wrap/wrapscan.io%2Fpolywrap%2Fsha3%401.0.0/schema). The schemas of wraps pinned on IPFS to the `https://ipfs.wrappers.io` gateway can also be viewed on [Wrappers.io](https://wrappers.io/all). + +:::tip +Great places to find wraps + - [Awesome Polywrap](https://github.com/polywrap/awesome-polywrap) Github Repo + - [Wrapscan Registry](https://www.wrapscan.io/) (under construction) + - [Wrappers.io](https://wrappers.io/all) list of all wrappers pinned to `https://ipfs.wrappers.io` +::: + +We'll use the `keccak256` hash function for the tutorial. Import the Sha3 module and the Args type for the keccak256 method. The imported Sha3 module exposes its functions as static methods, so you can call them without creating an instance. + + + +When one wrap invokes another, we call it a subinvocation. Subinvocations are a special feature of Polywrap that aren't available in ordinary WebAssembly modules. The wrap standard makes it possible to invoke the Sha3 wrap from any wrap or Polywrap Client without knowing its source language. + +Subinvocations never throw errors. The return type of a subinvocation is always the `Result` type, or a language-specific equivalent. The `Result` type wraps the return value and contains either the expected value or an error. ## **Next Steps** +Next we'll talk about interfaces and plugins. Interfaces are a powerful feature that allows wraps to implement a standard API. Plugins are extensions of a Polywrap Client, written in the client's host language, that give wraps access to host capabilities like networking and the filesystem. + + \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx new file mode 100644 index 00000000..1374aae0 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx @@ -0,0 +1,16 @@ +--- +id: 'interfaces-and-plugins' +title: 'Interfaces and Plugins' +--- + + +:::note +You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. +::: + + + +## **Wrap URIs** + + +## **Next Steps** diff --git a/src/docs/tutorials/new-create-wraps/partials/_first_method_sha3.mdx b/src/docs/tutorials/new-create-wraps/partials/_first_method_sha3.mdx new file mode 100644 index 00000000..66a9be08 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/partials/_first_method_sha3.mdx @@ -0,0 +1,122 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + +```rust title=src/lib.rs +pub mod wrap; +pub use wrap::prelude::*; +use crate::wrap::imported::ArgsKeccak256; + +impl ModuleTrait for Module { + fn obscure(args: ArgsObscure) -> Result { + // handle default values + let chaos_level = args.chaos_level.unwrap_or(1).max(1); + + let mut obscured = String::new(); + for data in &args.data { + let mut message = data.clone(); + for _ in 0..chaos_level { + message = Sha3Module::keccak_256(&ArgsKeccak256 { message })?; + } + obscured += &message; + } + Ok(obscured) + } +} +``` + + + + + +```go title=module/module.go +package module + +import ( + "example.com/template-wasm-go/module/wrap/types" + "example.com/template-wasm-go/module/wrap/imported/sha3" +) + +func Obscure(args *types.ArgsObscure) string { + // Handle default values + chaosLevel := int32(1) + if args.ChaosLevel != nil && *args.ChaosLevel >= 1 { + chaosLevel = *args.ChaosLevel + } + + var obscured string + for _, data := range args.Data { + tempData := data + for i := int32(0); i < chaosLevel; i++ { + hashArgs := &sha3.Sha3_ArgsKeccak_256 { Message: tempData } + hashed, err := sha3.Sha3_Keccak_256(hashArgs) + if err != nil { + return "" + } + tempData = hashed + } + obscured += tempData + } + return obscured +} +``` + + + + + +```ts title=src/index.ts +import { ModuleBase, Args_obscure, Sha3_Module } from './wrap'; + +export class Module extends ModuleBase { + obscure(args: Args_obscure): string { + // handle default values + const chaosLevel = args.chaosLevel || 1; + + // obscure the data with chaos + let obscured: string = ""; + for (let i = 0; i < args.data.length; ++i) { + let data = args.data[i]; + for (let j = 0; j < chaosLevel; ++j) { + const result = Sha3_Module.keccak_256({ message: data }) + if (!result.ok) throw Error("hash failed"); + data = result.value!!; + } + obscured += data; + } + return obscured; + } +} +``` + + + + + +```ts title=src/index.ts +import { ModuleBase, Args_obscure, Sha3_Module } from './wrap'; + +export class Module extends ModuleBase { + obscure(args: Args_obscure): string { + // handle default values + const chaosLevel: i32 = (args.chaosLevel == null || args.chaosLevel!!.unwrap() < 1) + ? 1 + : args.chaosLevel!!.unwrap(); + + let obscured: string = ""; + for (let i = 0; i < args.data.length; ++i) { + let data = args.data[i]; + for (let j = 0; j < chaosLevel; ++j) { + data = Sha3_Module.keccak_256({ message: data }).expect("hash failed"); + } + obscured += data; + } + return obscured; + } +} +``` + + + \ No newline at end of file From 18b43614861e22200ec9bbed0cdef2d2afdf1f3b Mon Sep 17 00:00:00 2001 From: krisbitney Date: Mon, 30 Oct 2023 15:39:57 +0500 Subject: [PATCH 11/19] fixed navigation in import-and-subinvoke section of new create wraps tutorial --- src/docs/tutorials/new-create-wraps/part-one/first-method.mdx | 1 + .../new-create-wraps/part-one/import-and-subinvoke.mdx | 3 ++- .../new-create-wraps/part-one/interfaces-and-plugins.mdx | 2 +- 3 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx b/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx index 57c79537..66494c43 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx @@ -4,6 +4,7 @@ title: 'First Method' --- import FirstMethodEmpty from '../partials/_first_method_empty.mdx'; import FirstMethodSimple from '../partials/_first_method_simple.mdx'; +import { NavButton } from '/src/components/NavButton' :::note You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. diff --git a/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx b/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx index 309fbe58..b3efa6e1 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx @@ -3,6 +3,7 @@ id: 'import-and-subinvoke' title: 'Import and Subinvoke' --- import FirstMethodSha3 from '../partials/_first_method_sha3.mdx'; +import { NavButton } from '/src/components/NavButton' :::note You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. @@ -77,4 +78,4 @@ Subinvocations never throw errors. The return type of a subinvocation is always Next we'll talk about interfaces and plugins. Interfaces are a powerful feature that allows wraps to implement a standard API. Plugins are extensions of a Polywrap Client, written in the client's host language, that give wraps access to host capabilities like networking and the filesystem. - \ No newline at end of file + diff --git a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx index 1374aae0..2cd87bc0 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx @@ -2,7 +2,7 @@ id: 'interfaces-and-plugins' title: 'Interfaces and Plugins' --- - +import { NavButton } from '/src/components/NavButton' :::note You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. From b19c48b89395379f1616f313e2b099f6f81aa544 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Mon, 30 Oct 2023 18:27:33 +0500 Subject: [PATCH 12/19] partially completed interfaces-and-plugins.mdx --- .../part-one/interfaces-and-plugins.mdx | 41 ++++++++++++++++++- 1 file changed, 40 insertions(+), 1 deletion(-) diff --git a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx index 2cd87bc0..7639d386 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx @@ -8,9 +8,48 @@ import { NavButton } from '/src/components/NavButton' You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. ::: +Now that our Oracle Wrap can hide data with the `obscure` method, we're ready to add the `enlighten` method and illuminate new knowledge with generative AI. We're going to import the HTTP interface and use it to send HTTP requests to the [Perplexity API](https://blog.perplexity.ai/blog/introducing-pplx-api) for open-source large language models, a service that generates new text based on a prompt. +Let's learn a bit about interface wraps and plugins to see how they can help us. -## **Wrap URIs** +## **Interfaces** +An interface wrap defines a schema without implementing a module. Other wraps and plugins can implement the interface instead. An interface doesn't have knowledge of its implementations. Instead, users of the Polywrap Client can choose which wraps or plugins to register as known implementations. + +It is considered a best practice for users to register a URI Redirect for each interface in their Polywrap Client configuration that redirects from the interface URI to the URI of their primary implementation. This allows wrap users to directly invoke the interface URI--as if it were a Wasm wrap--without needing to know the URI of the primary implementation. In Polywrap's default Polywrap Client configuration, each interface URI is redirected to the URI of its default implementation. + +What if it doesn't make sense to redirect to any one default implementation? What if the Polywrap Client user did not do so? Wraps can get a list of registered implementations at runtime and invoke one or more of them. You can learn how to do this in [Interface Instances](tutorials/advanced/interfaces/interface-instances). + +:::info +Polywrap's URI Resolution system uses the [URI Resolver Extension](https://github.com/polywrap/uri-resolver-extensions) wrap interface to resolve URIs. +::: + +Let's talk about two cases where interfaces are useful. + +First, interfaces are useful when you want to allow for multiple, fungible implementations of an interface. For example, you might want to allow users to register multiple implementations of an interface that resolves URIs. This is the case with Polywrap's URI Resolution system. Users can register multiple implementations of the URI Resolver Extension interface, and the Polywrap Client will invoke all of them when trying to resolve a URI. + +Another case is when you want your wrap to play nicely with plugins. Plugins are ordinary, language-specific packages that cannot necessarily be resolved by immutable Wrap URIs. Users can install a plugin using a package manager (e.g. JavaScript's NPM or Python's PyPi) and register it in the Polywrap Client with an arbitrary URI. If a plugin implements an interface, users are expected to either redirect the interface URI to point to the registered plugin URI, or to register the plugin as an interface implementation that can be obtained at runtime. + +## **Plugins** + +Plugins extend the Polywrap Client to give wraps access to host capabilities while keeping users in control. Plugins are a more powerful and secure alternative to the Wasi standard used in many WebAssembly modules. + +Standard WebAssembly modules are securely sandboxed and cannot access host capabilities like a user's filesystem. This is a feature, not a bug, because it prevents malicious behaviors. However, many useful modules need to access host capabilities. For example, a database module needs to read and write to the filesystem. A module that implements a web server needs to listen on a port. These capabilities can be implemented in plugins. + +Users register plugins in the Polywrap Client, choosing which plugins they want to allow their wraps to use. Plugins are implemented as language-specific packages. For example, a plugin for the JavaScript Polywrap Client is just a JavaScript package. + +**From the perspective of a wrap developer, a plugin behaves like a wrap.** Plugins are imported into schemas from URIs--typically by importing an interface--and are subinvoked just like a Wasm wrap module. + +## **Implementation** + +Enough talk! Let's implement the `enlighten` method. + +### **Update the schema** + +// "wrapscan.io/polywrap/http@1.0" +// "plugin/http@1.1.0" + + +### **Implement the method** ## **Next Steps** From a79d4d40e347e11555d315310682332376cf1576 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Mon, 30 Oct 2023 18:58:27 +0500 Subject: [PATCH 13/19] added to interfaces-and-plugins.mdx --- .../assemblyscript/polywrap.graphql | 2 ++ .../golang/polywrap.graphql | 2 ++ .../rust/polywrap.graphql | 2 ++ .../typescript/polywrap.graphql | 2 ++ .../part-one/interfaces-and-plugins.mdx | 26 ++++++++++++++++--- 5 files changed, 30 insertions(+), 4 deletions(-) diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql b/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql index 1086df1b..17ca1f53 100644 --- a/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql +++ b/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql @@ -1,5 +1,7 @@ #import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Http from "wrapscan.io/polywrap/http@1.0" type Module { obscure(data: [String!]!, chaosLevel: Int): String! + enlighten(data: String!): String! } \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/golang/polywrap.graphql b/snippets/create-wraps-tutorial/golang/polywrap.graphql index 1086df1b..17ca1f53 100644 --- a/snippets/create-wraps-tutorial/golang/polywrap.graphql +++ b/snippets/create-wraps-tutorial/golang/polywrap.graphql @@ -1,5 +1,7 @@ #import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Http from "wrapscan.io/polywrap/http@1.0" type Module { obscure(data: [String!]!, chaosLevel: Int): String! + enlighten(data: String!): String! } \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/polywrap.graphql b/snippets/create-wraps-tutorial/rust/polywrap.graphql index 1086df1b..17ca1f53 100644 --- a/snippets/create-wraps-tutorial/rust/polywrap.graphql +++ b/snippets/create-wraps-tutorial/rust/polywrap.graphql @@ -1,5 +1,7 @@ #import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Http from "wrapscan.io/polywrap/http@1.0" type Module { obscure(data: [String!]!, chaosLevel: Int): String! + enlighten(data: String!): String! } \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/typescript/polywrap.graphql b/snippets/create-wraps-tutorial/typescript/polywrap.graphql index 1086df1b..17ca1f53 100644 --- a/snippets/create-wraps-tutorial/typescript/polywrap.graphql +++ b/snippets/create-wraps-tutorial/typescript/polywrap.graphql @@ -1,5 +1,7 @@ #import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Http from "wrapscan.io/polywrap/http@1.0" type Module { obscure(data: [String!]!, chaosLevel: Int): String! + enlighten(data: String!): String! } \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx index 7639d386..54f915e1 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx @@ -8,7 +8,7 @@ import { NavButton } from '/src/components/NavButton' You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. ::: -Now that our Oracle Wrap can hide data with the `obscure` method, we're ready to add the `enlighten` method and illuminate new knowledge with generative AI. We're going to import the HTTP interface and use it to send HTTP requests to the [Perplexity API](https://blog.perplexity.ai/blog/introducing-pplx-api) for open-source large language models, a service that generates new text based on a prompt. +Now that our Oracle Wrap can hide data with the `obscure` method, we're ready to add the `enlighten` method and illuminate new knowledge with generative AI. The `enlighten` method will allow users to ask a question, and it will return an answer generated by an AI model. We're going to import the HTTP interface and use it to send HTTP requests to the [Perplexity API](https://blog.perplexity.ai/blog/introducing-pplx-api) for open-source large language models. Let's learn a bit about interface wraps and plugins to see how they can help us. @@ -16,6 +16,8 @@ Let's learn a bit about interface wraps and plugins to see how they can help us. An interface wrap defines a schema without implementing a module. Other wraps and plugins can implement the interface instead. An interface doesn't have knowledge of its implementations. Instead, users of the Polywrap Client can choose which wraps or plugins to register as known implementations. +We're going to use the HTTP interface, imported using the Wrap URI `"wrapscan.io/polywrap/http@1.0"`. + It is considered a best practice for users to register a URI Redirect for each interface in their Polywrap Client configuration that redirects from the interface URI to the URI of their primary implementation. This allows wrap users to directly invoke the interface URI--as if it were a Wasm wrap--without needing to know the URI of the primary implementation. In Polywrap's default Polywrap Client configuration, each interface URI is redirected to the URI of its default implementation. What if it doesn't make sense to redirect to any one default implementation? What if the Polywrap Client user did not do so? Wraps can get a list of registered implementations at runtime and invoke one or more of them. You can learn how to do this in [Interface Instances](tutorials/advanced/interfaces/interface-instances). @@ -28,7 +30,9 @@ Let's talk about two cases where interfaces are useful. First, interfaces are useful when you want to allow for multiple, fungible implementations of an interface. For example, you might want to allow users to register multiple implementations of an interface that resolves URIs. This is the case with Polywrap's URI Resolution system. Users can register multiple implementations of the URI Resolver Extension interface, and the Polywrap Client will invoke all of them when trying to resolve a URI. -Another case is when you want your wrap to play nicely with plugins. Plugins are ordinary, language-specific packages that cannot necessarily be resolved by immutable Wrap URIs. Users can install a plugin using a package manager (e.g. JavaScript's NPM or Python's PyPi) and register it in the Polywrap Client with an arbitrary URI. If a plugin implements an interface, users are expected to either redirect the interface URI to point to the registered plugin URI, or to register the plugin as an interface implementation that can be obtained at runtime. +Another case is when you want your wrap to play nicely with plugins. Plugins are ordinary, language-specific packages that cannot necessarily be resolved by immutable Wrap URIs. Users can install a plugin using a package manager (e.g. JavaScript's NPM or Python's PyPi) and register it in the Polywrap Client with an arbitrary URI. + +If a plugin implements an interface, users are expected to either redirect the interface URI to point to the registered plugin URI, or to register the plugin as an interface implementation that can be obtained at runtime. For example, the default Polywrap Client configuration uses the URI `"plugin/http@1.1.0"` to register the HTTP plugin and registers a redirect from the HTTP interface URI to the plugin URI. ## **Plugins** @@ -46,10 +50,24 @@ Enough talk! Let's implement the `enlighten` method. ### **Update the schema** -// "wrapscan.io/polywrap/http@1.0" -// "plugin/http@1.1.0" +Let's add the `enlighten` method and an import statement for the HTTP interface to the schema. We'll keep the enlighten method's signature simple. +```graphql +#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Http from "wrapscan.io/polywrap/http@1.0" + +type Module { + obscure(data: [String!]!, chaosLevel: Int): String! + enlighten(question: String!): String! +} +``` ### **Implement the method** + + ## **Next Steps** + +Our Oracle Wrap is now complete! But we're not quite done yet. We still need to test our wrap and publish it so others can use it. We'll test our wrap in the next section. + + \ No newline at end of file From ad033e51f03d3b7c469ba718c672cbaa496e1860 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Tue, 31 Oct 2023 13:47:08 +0500 Subject: [PATCH 14/19] finished interfaces-and-plugins.mdx page of new create wraps tutorial --- sidebars.js | 3 +- .../assemblyscript/polywrap.graphql | 4 +- .../assemblyscript/src/index.ts | 53 +++- .../golang/module/module.go | 43 +++ .../golang/polywrap.graphql | 4 +- .../rust/polywrap.graphql | 4 +- .../create-wraps-tutorial/rust/src/lib.rs | 35 +- .../typescript/polywrap.graphql | 4 +- .../typescript/src/index.ts | 53 +++- .../part-one/import-and-subinvoke.mdx | 4 +- .../part-one/integration-testing.mdx | 24 ++ .../part-one/interfaces-and-plugins.mdx | 13 +- .../partials/_complete_code.mdx | 299 ++++++++++++++++++ 13 files changed, 526 insertions(+), 17 deletions(-) create mode 100644 src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx create mode 100644 src/docs/tutorials/new-create-wraps/partials/_complete_code.mdx diff --git a/sidebars.js b/sidebars.js index d4605994..1235d54a 100644 --- a/sidebars.js +++ b/sidebars.js @@ -79,7 +79,8 @@ const sidebars = { 'tutorials/new-create-wraps/part-one/schema-and-codegen', 'tutorials/new-create-wraps/part-one/first-method', 'tutorials/new-create-wraps/part-one/import-and-subinvoke', - 'tutorials/new-create-wraps/part-one/interfaces-and-plugins' + 'tutorials/new-create-wraps/part-one/interfaces-and-plugins', + 'tutorials/new-create-wraps/part-one/integration-testing' ] } ], diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql b/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql index 17ca1f53..7433b280 100644 --- a/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql +++ b/snippets/create-wraps-tutorial/assemblyscript/polywrap.graphql @@ -1,7 +1,7 @@ -#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Sha3 from "wrapscan.io/polywrap/sha3@1.0.0" #import { Module } into Http from "wrapscan.io/polywrap/http@1.0" type Module { obscure(data: [String!]!, chaosLevel: Int): String! - enlighten(data: String!): String! + enlighten(question: String!, apiKey: String!): String! } \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/assemblyscript/src/index.ts b/snippets/create-wraps-tutorial/assemblyscript/src/index.ts index 64ad4624..f1a980e6 100644 --- a/snippets/create-wraps-tutorial/assemblyscript/src/index.ts +++ b/snippets/create-wraps-tutorial/assemblyscript/src/index.ts @@ -1,4 +1,13 @@ -import { ModuleBase, Args_obscure, Sha3_Module } from './wrap'; +import { + Args_enlighten, + Args_obscure, + Http_Module, + Http_Request, + Http_Response, + Http_ResponseType, + ModuleBase, + Sha3_Module +} from './wrap'; export class Module extends ModuleBase { obscure(args: Args_obscure): string { @@ -17,4 +26,46 @@ export class Module extends ModuleBase { } return obscured; } + + enlighten(args: Args_enlighten): string { + const request: Http_Request = { + headers: new Map() + .set('accept', 'application/json') + .set('content-type', 'application/json') + .set("Authorization", `Bearer ${args.apiKey}`), + responseType: Http_ResponseType.TEXT, + body: `{ + "model": "mistral-7b-instruct", + "messages": [ + { + "role": "system", + "content": "Be precise and concise." + }, + { + "role": "user", + "content": "${args.question}" + } + ] +}` + }; + + const response: Http_Response | null = Http_Module.post({ + url: "https://api.perplexity.ai/chat/completions", + request, + }).unwrap(); + + if (response == null) { + throw new Error("request failed with null response"); + } + + if (response.status != 200) { + throw new Error(`request failed with status ${response.status}`); + } + + if (response.body == null) { + throw new Error("request failed with null body"); + } + + return response.body!!; + } } diff --git a/snippets/create-wraps-tutorial/golang/module/module.go b/snippets/create-wraps-tutorial/golang/module/module.go index 0a66aa87..67d2126d 100644 --- a/snippets/create-wraps-tutorial/golang/module/module.go +++ b/snippets/create-wraps-tutorial/golang/module/module.go @@ -3,6 +3,8 @@ package module import ( "example.com/template-wasm-go/module/wrap/types" "example.com/template-wasm-go/module/wrap/imported/sha3" + "example.com/template-wasm-go/module/wrap/imported/http" + "fmt" ) func Obscure(args *types.ArgsObscure) string { @@ -27,3 +29,44 @@ func Obscure(args *types.ArgsObscure) string { } return obscured } + +func Enlighten(args *types.ArgsEnlighten) string { + headers := map[string]string{ + "accept": "application/json", + "content-type": "application/json", + "Authorization": fmt.Sprintf("Bearer %s", args.ApiKey), + } + + body := fmt.Sprintf(`{ + "model": "mistral-7b-instruct", + "messages": [ + {"role": "system", "content": "Be precise and concise."}, + {"role": "user", "content": "%s"} + ] + }`, args.Question) + + httpArgs := &http.Http_ArgsPost{ + Url: "https://api.perplexity.ai/chat/completions", + Request: &http.Http_Request{ + Headers: headers, + ResponseType: http.Http_ResponseTypeTEXT, + Body: &body, + }, + } + + response, err := http.Http_Post(httpArgs) + if err != nil { + return "" + } + + if response.Status != 200 { + return fmt.Sprintf("request failed with status %d", response.Status) + } + + if response.Body == nil { + return "request failed with null body" + } + + return *response.Body +} + diff --git a/snippets/create-wraps-tutorial/golang/polywrap.graphql b/snippets/create-wraps-tutorial/golang/polywrap.graphql index 17ca1f53..7433b280 100644 --- a/snippets/create-wraps-tutorial/golang/polywrap.graphql +++ b/snippets/create-wraps-tutorial/golang/polywrap.graphql @@ -1,7 +1,7 @@ -#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Sha3 from "wrapscan.io/polywrap/sha3@1.0.0" #import { Module } into Http from "wrapscan.io/polywrap/http@1.0" type Module { obscure(data: [String!]!, chaosLevel: Int): String! - enlighten(data: String!): String! + enlighten(question: String!, apiKey: String!): String! } \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/polywrap.graphql b/snippets/create-wraps-tutorial/rust/polywrap.graphql index 17ca1f53..7433b280 100644 --- a/snippets/create-wraps-tutorial/rust/polywrap.graphql +++ b/snippets/create-wraps-tutorial/rust/polywrap.graphql @@ -1,7 +1,7 @@ -#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Sha3 from "wrapscan.io/polywrap/sha3@1.0.0" #import { Module } into Http from "wrapscan.io/polywrap/http@1.0" type Module { obscure(data: [String!]!, chaosLevel: Int): String! - enlighten(data: String!): String! + enlighten(question: String!, apiKey: String!): String! } \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/src/lib.rs b/snippets/create-wraps-tutorial/rust/src/lib.rs index 77734121..28262a8d 100644 --- a/snippets/create-wraps-tutorial/rust/src/lib.rs +++ b/snippets/create-wraps-tutorial/rust/src/lib.rs @@ -1,6 +1,7 @@ pub mod wrap; pub use wrap::prelude::*; -use crate::wrap::imported::ArgsKeccak256; +use crate::wrap::imported::{ArgsKeccak256, ArgsPost}; +use polywrap_wasm_rs::Map; impl ModuleTrait for Module { fn obscure(args: ArgsObscure) -> Result { @@ -17,4 +18,36 @@ impl ModuleTrait for Module { } Ok(obscured) } + + fn enlighten(args: ArgsEnlighten) -> Result { + let mut headers = Map::new(); + headers.insert("accept".to_string(), "application/json".to_string()); + headers.insert("content-type".to_string(), "application/json".to_string()); + headers.insert("Authorization".to_string(), format!("Bearer {}", args.api_key)); + + let body = format!(r#"{{ + "model": "mistral-7b-instruct", + "messages": [ + {{"role": "system", "content": "Be precise and concise."}}, + {{"role": "user", "content": "{}"}} + ] +}}"#, args.question); + + let response = HttpModule::post(&ArgsPost { + url: "https://api.perplexity.ai/chat/completions".to_string(), + request: Some(HttpRequest { + headers: Some(headers), + response_type: HttpResponseType::TEXT, + body: Some(body), + url_params: None, + form_data: None, + timeout: None, + }), + })?.ok_or("request failed with null body".to_string())?; + + if response.status != 200 { + return Err(format!("request failed with status {}", response.status)); + } + response.body.ok_or("request failed with null body".to_string()) + } } diff --git a/snippets/create-wraps-tutorial/typescript/polywrap.graphql b/snippets/create-wraps-tutorial/typescript/polywrap.graphql index 17ca1f53..7433b280 100644 --- a/snippets/create-wraps-tutorial/typescript/polywrap.graphql +++ b/snippets/create-wraps-tutorial/typescript/polywrap.graphql @@ -1,7 +1,7 @@ -#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Sha3 from "wrapscan.io/polywrap/sha3@1.0.0" #import { Module } into Http from "wrapscan.io/polywrap/http@1.0" type Module { obscure(data: [String!]!, chaosLevel: Int): String! - enlighten(data: String!): String! + enlighten(question: String!, apiKey: String!): String! } \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/typescript/src/index.ts b/snippets/create-wraps-tutorial/typescript/src/index.ts index 807fd5d5..156773ac 100644 --- a/snippets/create-wraps-tutorial/typescript/src/index.ts +++ b/snippets/create-wraps-tutorial/typescript/src/index.ts @@ -1,4 +1,13 @@ -import { ModuleBase, Args_obscure, Sha3_Module } from './wrap'; +import { + Args_enlighten, + Args_obscure, + Http_Module, + Http_Request, + Http_Response, + Http_ResponseType, + ModuleBase, + Sha3_Module +} from './wrap'; export class Module extends ModuleBase { obscure(args: Args_obscure): string { @@ -18,4 +27,46 @@ export class Module extends ModuleBase { } return obscured; } + + enlighten(args: Args_enlighten): string { + const request: Http_Request = { + headers: new Map() + .set('accept', 'application/json') + .set('content-type', 'application/json') + .set("Authorization", `Bearer ${args.apiKey}`), + responseType: Http_ResponseType.TEXT, + body: JSON.stringify({ + model: 'mistral-7b-instruct', + messages: [ + {role: 'system', content: 'Be precise and concise.'}, + {role: 'user', content: args.question} + ] + }), + urlParams: null, + formData: null, + timeout: null, + }; + + const result: Result = Http_Module.post({ + url: "https://api.perplexity.ai/chat/completions", + request, + }); + + if (!result.ok) throw result.error; + const response = result.value; + + if (response == null) { + throw new Error("request failed with null response"); + } + + if (response.status != 200) { + throw new Error(`request failed with status ${response.status}`); + } + + if (response.body == null) { + throw new Error("request failed with null body"); + } + + return response.body; + } } \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx b/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx index b3efa6e1..31bd5179 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx @@ -34,7 +34,7 @@ A wrap URI is valid so long as it follows the Wrap URI format and can be resolve ## **Import a Wrap** -We'll import our first dependency using a Wrap URI with the `http` authority. The URI points to Polywrap's own Wrapscan registry, which is still in construction as of the time of this writing. +We'll import our first dependency using a Wrap URI with the `wrapscan.io` authority. The URI points to Polywrap's own Wrapscan registry, which is still in construction as of the time of this writing. The syntax of an import statement is: @@ -44,7 +44,7 @@ The syntax of an import statement is: Import statements are placed in the Wrap Schema. Let's add an import statement for the Sha3 wrap. ```graphql title="polywrap.graphql" -#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Sha3 from "wrapscan.io/polywrap/sha3@1.0.0" type Module { obscure(data: [String!]!, chaosLevel: Int): String! diff --git a/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx b/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx new file mode 100644 index 00000000..2b277b7a --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx @@ -0,0 +1,24 @@ +--- +id: 'integration-testing' +title: 'Integration Testing' +--- +import { NavButton } from '/src/components/NavButton' + +:::note +You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. +::: + +hi + +## **Interfaces** + +:::info +You can use my personal API key to complete this tutorial. + +`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` + +Please do not use it outside the context of this tutorial. If it's abused, I'll have to revoke it! +::: + +## **Next Steps** + diff --git a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx index 54f915e1..4b31a2c5 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx @@ -3,6 +3,7 @@ id: 'interfaces-and-plugins' title: 'Interfaces and Plugins' --- import { NavButton } from '/src/components/NavButton' +import CompleteCode from '../partials/_complete_code.mdx'; :::note You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. @@ -50,21 +51,27 @@ Enough talk! Let's implement the `enlighten` method. ### **Update the schema** -Let's add the `enlighten` method and an import statement for the HTTP interface to the schema. We'll keep the enlighten method's signature simple. +Let's add the `enlighten` method and an import statement for the HTTP interface to the schema. The method will take a question and a [Perplexity](https://docs.perplexity.ai/) API key as arguments, and will return a response. Remember to run codegen after updating the schema. + +You can view the HTTP interface wrap's schema on [GitHub](https://github.com/polywrap/http/blob/main/interface/polywrap.graphql).; ```graphql -#import { Module } into Sha3 from "http/https://wraps.wrapscan.io/r/polywrap/sha3@1.0.0" +#import { Module } into Sha3 from "wrapscan.io/polywrap/sha3@1.0.0" #import { Module } into Http from "wrapscan.io/polywrap/http@1.0" type Module { obscure(data: [String!]!, chaosLevel: Int): String! - enlighten(question: String!): String! + enlighten(question: String!, apiKey: String!): String! } ``` ### **Implement the method** +Now we can import the generated Http Module class to send HTTP requests. + +To call the HTTP `post` method, we need to use some custom types defined in the HTTP interface schema. Polywrap's codegen is smart enough to generate these types for us, even though we didn't list them in an import statement, because the Http Module class depends on them. + ## **Next Steps** diff --git a/src/docs/tutorials/new-create-wraps/partials/_complete_code.mdx b/src/docs/tutorials/new-create-wraps/partials/_complete_code.mdx new file mode 100644 index 00000000..dfab41b3 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/partials/_complete_code.mdx @@ -0,0 +1,299 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + +```rust title=src/lib.rs +pub mod wrap; +pub use wrap::prelude::*; +use crate::wrap::imported::{ArgsKeccak256, ArgsPost}; +use polywrap_wasm_rs::Map; + +impl ModuleTrait for Module { + fn obscure(args: ArgsObscure) -> Result { + // handle default values + let chaos_level = args.chaos_level.unwrap_or(1).max(1); + + let mut obscured = String::new(); + for data in &args.data { + let mut message = data.clone(); + for _ in 0..chaos_level { + message = Sha3Module::keccak_256(&ArgsKeccak256 { message })?; + } + obscured += &message; + } + Ok(obscured) + } + + fn enlighten(args: ArgsEnlighten) -> Result { + let mut headers = Map::new(); + headers.insert("accept".to_string(), "application/json".to_string()); + headers.insert("content-type".to_string(), "application/json".to_string()); + headers.insert("Authorization".to_string(), format!("Bearer {}", args.api_key)); + + let body = format!(r#"{{ + "model": "mistral-7b-instruct", + "messages": [ + {{"role": "system", "content": "Be precise and concise."}}, + {{"role": "user", "content": "{}"}} + ] +}}"#, args.question); + + let response = HttpModule::post(&ArgsPost { + url: "https://api.perplexity.ai/chat/completions".to_string(), + request: Some(HttpRequest { + headers: Some(headers), + response_type: HttpResponseType::TEXT, + body: Some(body), + url_params: None, + form_data: None, + timeout: None, + }), + })?.ok_or("request failed with null body".to_string())?; + + if response.status != 200 { + return Err(format!("request failed with status {}", response.status)); + } + response.body.ok_or("request failed with null body".to_string()) + } +} +``` + + + + + +```go title=module/module.go +package module + +import ( + "example.com/template-wasm-go/module/wrap/types" + "example.com/template-wasm-go/module/wrap/imported/sha3" + "example.com/template-wasm-go/module/wrap/imported/http" + "fmt" +) + +func Obscure(args *types.ArgsObscure) string { + // Handle default values + chaosLevel := int32(1) + if args.ChaosLevel != nil && *args.ChaosLevel >= 1 { + chaosLevel = *args.ChaosLevel + } + + var obscured string + for _, data := range args.Data { + tempData := data + for i := int32(0); i < chaosLevel; i++ { + hashArgs := &sha3.Sha3_ArgsKeccak_256 { Message: tempData } + hashed, err := sha3.Sha3_Keccak_256(hashArgs) + if err != nil { + return "" + } + tempData = hashed + } + obscured += tempData + } + return obscured +} + +func Enlighten(args *types.ArgsEnlighten) string { + headers := map[string]string{ + "accept": "application/json", + "content-type": "application/json", + "Authorization": fmt.Sprintf("Bearer %s", args.ApiKey), + } + + body := fmt.Sprintf(`{ + "model": "mistral-7b-instruct", + "messages": [ + {"role": "system", "content": "Be precise and concise."}, + {"role": "user", "content": "%s"} + ] + }`, args.Question) + + httpArgs := &http.Http_ArgsPost{ + Url: "https://api.perplexity.ai/chat/completions", + Request: &http.Http_Request{ + Headers: headers, + ResponseType: http.Http_ResponseTypeTEXT, + Body: &body, + }, + } + + response, err := http.Http_Post(httpArgs) + if err != nil { + return "" + } + + if response.Status != 200 { + return fmt.Sprintf("request failed with status %d", response.Status) + } + + if response.Body == nil { + return "request failed with null body" + } + + return *response.Body +} +``` + + + + + +```ts title=src/index.ts +import { + Args_enlighten, + Args_obscure, + Http_Module, + Http_Request, + Http_Response, + Http_ResponseType, + ModuleBase, + Sha3_Module +} from './wrap'; + +export class Module extends ModuleBase { + obscure(args: Args_obscure): string { + // handle default values + const chaosLevel = args.chaosLevel || 1; + + // obscure the data with chaos + let obscured: string = ""; + for (let i = 0; i < args.data.length; ++i) { + let data = args.data[i]; + for (let j = 0; j < chaosLevel; ++j) { + const result = Sha3_Module.keccak_256({ message: data }) + if (!result.ok) throw Error("hash failed"); + data = result.value!!; + } + obscured += data; + } + return obscured; + } + + enlighten(args: Args_enlighten): string { + const request: Http_Request = { + headers: new Map() + .set('accept', 'application/json') + .set('content-type', 'application/json') + .set("Authorization", `Bearer ${args.apiKey}`), + responseType: Http_ResponseType.TEXT, + body: JSON.stringify({ + model: 'mistral-7b-instruct', + messages: [ + {role: 'system', content: 'Be precise and concise.'}, + {role: 'user', content: args.question} + ] + }), + urlParams: null, + formData: null, + timeout: null, + }; + + const result: Result = Http_Module.post({ + url: "https://api.perplexity.ai/chat/completions", + request, + }); + + if (!result.ok) throw result.error; + const response = result.value; + + if (response == null) { + throw new Error("request failed with null response"); + } + + if (response.status != 200) { + throw new Error(`request failed with status ${response.status}`); + } + + if (response.body == null) { + throw new Error("request failed with null body"); + } + + return response.body; + } +} +``` + + + + + +```ts title=src/index.ts +import { + Args_enlighten, + Args_obscure, + Http_Module, + Http_Request, + Http_Response, + Http_ResponseType, + ModuleBase, + Sha3_Module +} from './wrap'; + +export class Module extends ModuleBase { + obscure(args: Args_obscure): string { + // handle default values + const chaosLevel: i32 = (args.chaosLevel == null || args.chaosLevel!!.unwrap() < 1) + ? 1 + : args.chaosLevel!!.unwrap(); + + let obscured: string = ""; + for (let i = 0; i < args.data.length; ++i) { + let data = args.data[i]; + for (let j = 0; j < chaosLevel; ++j) { + data = Sha3_Module.keccak_256({ message: data }).expect("hash failed"); + } + obscured += data; + } + return obscured; + } + + enlighten(args: Args_enlighten): string { + const request: Http_Request = { + headers: new Map() + .set('accept', 'application/json') + .set('content-type', 'application/json') + .set("Authorization", `Bearer ${args.apiKey}`), + responseType: Http_ResponseType.TEXT, + body: `{ + "model": "mistral-7b-instruct", + "messages": [ + { + "role": "system", + "content": "Be precise and concise." + }, + { + "role": "user", + "content": "${args.question}" + } + ] +}` + }; + + const response: Http_Response | null = Http_Module.post({ + url: "https://api.perplexity.ai/chat/completions", + request, + }).unwrap(); + + if (response == null) { + throw new Error("request failed with null response"); + } + + if (response.status != 200) { + throw new Error(`request failed with status ${response.status}`); + } + + if (response.body == null) { + throw new Error("request failed with null body"); + } + + return response.body!!; + } +} +``` + + + \ No newline at end of file From 81e8e24c21cf0db3963b27d7fd01f0f26092c1d1 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Tue, 31 Oct 2023 16:27:53 +0500 Subject: [PATCH 15/19] finished integration-testing.mdx page of new create wraps tutorial --- .../src/__tests__/e2e/integration.spec.ts | 36 +++-- .../src/__tests__/types/schema.graphql | 2 +- .../module/__tests__/e2e/integration.spec.ts | 36 +++-- .../module/__tests__/types/polywrap.app.yaml | 2 +- .../module/__tests__/types/schema.graphql | 2 +- .../rust/tests/it/module.rs | 30 ++-- .../rust/tests/types/polywrap.app.graphql | 2 +- .../typescript/package.json | 9 +- .../src/__tests__/e2e/integration.spec.ts | 37 +++++ .../src/__tests__/integration.spec.ts | 22 --- .../src/__tests__/types/polywrap.app.yaml | 9 ++ .../src/__tests__/types/schema.graphql | 1 + .../src/__tests__/types/wrap/index.ts | 1 + .../src/__tests__/types/wrap/types.ts | 128 ++++++++++++++++++ .../part-one/integration-testing.mdx | 70 +++++++++- .../part-one/interfaces-and-plugins.mdx | 4 +- .../partials/_integration_tests.mdx | 82 +++++++++++ 17 files changed, 401 insertions(+), 72 deletions(-) create mode 100644 snippets/create-wraps-tutorial/typescript/src/__tests__/e2e/integration.spec.ts delete mode 100644 snippets/create-wraps-tutorial/typescript/src/__tests__/integration.spec.ts create mode 100644 snippets/create-wraps-tutorial/typescript/src/__tests__/types/polywrap.app.yaml create mode 100644 snippets/create-wraps-tutorial/typescript/src/__tests__/types/schema.graphql create mode 100644 snippets/create-wraps-tutorial/typescript/src/__tests__/types/wrap/index.ts create mode 100644 snippets/create-wraps-tutorial/typescript/src/__tests__/types/wrap/types.ts create mode 100644 src/docs/tutorials/new-create-wraps/partials/_integration_tests.mdx diff --git a/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/e2e/integration.spec.ts b/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/e2e/integration.spec.ts index 55913c17..5e6a0152 100644 --- a/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/e2e/integration.spec.ts +++ b/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/e2e/integration.spec.ts @@ -1,31 +1,37 @@ -import { PolywrapClient } from "@polywrap/client-js"; import * as App from "../types/wrap"; import path from "path"; jest.setTimeout(60000); -describe("Template Wrapper End to End Tests", () => { +describe("Oracle Wrap End to End Tests", () => { - const client: PolywrapClient = new PolywrapClient(); + let oracle: App.Oracle; let wrapperUri: string; + let apiKey: string = process.env.PPLX_API_KEY || ""; beforeAll(() => { - const dirname: string = path.resolve(__dirname); - const wrapperPath: string = path.join(dirname, "..", "..", ".."); + const wrapperPath: string = path.join(__dirname, "..", "..", ".."); wrapperUri = `fs/${wrapperPath}/build`; + oracle = new App.Oracle(undefined, undefined, wrapperUri) }) - it("calls sampleMethod", async () => { - const expected: string = "polywrap"; - - const result = await client.invoke({ - uri: wrapperUri, - method: "sampleMethod", - args: { arg: expected } + it("calls obscure", async () => { + const result = await oracle.obscure({ + data: ["Hello", "World"], + chaosLevel: 3 }); - expect(result.ok).toBeTruthy(); - if (!result.ok) return; - expect(result.value.result).toEqual(expected); + if (!result.ok) throw result.error; + expect(typeof result.value === "string").toBeTruthy(); + expect(result.value.length).toEqual(128); + }); + + it("calls enlighten", async () => { + const question = "What is the meaning of life?"; + const result = await oracle.enlighten({ question, apiKey }); + + if (!result.ok) throw result.error; + expect(typeof result.value === "string").toBeTruthy(); }); }); + diff --git a/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/schema.graphql b/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/schema.graphql index 6d75bfc9..2338a992 100644 --- a/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/schema.graphql +++ b/snippets/create-wraps-tutorial/assemblyscript/src/__tests__/types/schema.graphql @@ -1 +1 @@ -#import * into Template from "wrap://ens/sample.eth" +#import * into Oracle from "wrap://ens/sample.eth" diff --git a/snippets/create-wraps-tutorial/golang/module/__tests__/e2e/integration.spec.ts b/snippets/create-wraps-tutorial/golang/module/__tests__/e2e/integration.spec.ts index 55913c17..5e6a0152 100644 --- a/snippets/create-wraps-tutorial/golang/module/__tests__/e2e/integration.spec.ts +++ b/snippets/create-wraps-tutorial/golang/module/__tests__/e2e/integration.spec.ts @@ -1,31 +1,37 @@ -import { PolywrapClient } from "@polywrap/client-js"; import * as App from "../types/wrap"; import path from "path"; jest.setTimeout(60000); -describe("Template Wrapper End to End Tests", () => { +describe("Oracle Wrap End to End Tests", () => { - const client: PolywrapClient = new PolywrapClient(); + let oracle: App.Oracle; let wrapperUri: string; + let apiKey: string = process.env.PPLX_API_KEY || ""; beforeAll(() => { - const dirname: string = path.resolve(__dirname); - const wrapperPath: string = path.join(dirname, "..", "..", ".."); + const wrapperPath: string = path.join(__dirname, "..", "..", ".."); wrapperUri = `fs/${wrapperPath}/build`; + oracle = new App.Oracle(undefined, undefined, wrapperUri) }) - it("calls sampleMethod", async () => { - const expected: string = "polywrap"; - - const result = await client.invoke({ - uri: wrapperUri, - method: "sampleMethod", - args: { arg: expected } + it("calls obscure", async () => { + const result = await oracle.obscure({ + data: ["Hello", "World"], + chaosLevel: 3 }); - expect(result.ok).toBeTruthy(); - if (!result.ok) return; - expect(result.value.result).toEqual(expected); + if (!result.ok) throw result.error; + expect(typeof result.value === "string").toBeTruthy(); + expect(result.value.length).toEqual(128); + }); + + it("calls enlighten", async () => { + const question = "What is the meaning of life?"; + const result = await oracle.enlighten({ question, apiKey }); + + if (!result.ok) throw result.error; + expect(typeof result.value === "string").toBeTruthy(); }); }); + diff --git a/snippets/create-wraps-tutorial/golang/module/__tests__/types/polywrap.app.yaml b/snippets/create-wraps-tutorial/golang/module/__tests__/types/polywrap.app.yaml index 4259744c..c084aed0 100644 --- a/snippets/create-wraps-tutorial/golang/module/__tests__/types/polywrap.app.yaml +++ b/snippets/create-wraps-tutorial/golang/module/__tests__/types/polywrap.app.yaml @@ -1,4 +1,4 @@ -format: 0.4.0 +format: 0.3.0 project: name: sample-typescript-type-generation type: app/typescript diff --git a/snippets/create-wraps-tutorial/golang/module/__tests__/types/schema.graphql b/snippets/create-wraps-tutorial/golang/module/__tests__/types/schema.graphql index 6d75bfc9..2338a992 100644 --- a/snippets/create-wraps-tutorial/golang/module/__tests__/types/schema.graphql +++ b/snippets/create-wraps-tutorial/golang/module/__tests__/types/schema.graphql @@ -1 +1 @@ -#import * into Template from "wrap://ens/sample.eth" +#import * into Oracle from "wrap://ens/sample.eth" diff --git a/snippets/create-wraps-tutorial/rust/tests/it/module.rs b/snippets/create-wraps-tutorial/rust/tests/it/module.rs index a738738b..abfed30a 100644 --- a/snippets/create-wraps-tutorial/rust/tests/it/module.rs +++ b/snippets/create-wraps-tutorial/rust/tests/it/module.rs @@ -1,14 +1,28 @@ use crate::types::wrap::types::{ - TemplateModule, - TemplateModuleArgsSampleMethod + Oracle, + OracleArgsObscure, + OracleArgsEnlighten }; +use std::env; #[test] -fn sample_method() { - let args = TemplateModuleArgsSampleMethod { - arg: "input data".to_string(), +fn obscure() { + let args = OracleArgsObscure { + data: vec![String::from("Hello"), String::from("World")], + chaos_level: Some(3) }; - let template: TemplateModule = TemplateModule::new(None, None, None); - let response = template.sample_method(&args, None, None, None).unwrap(); - assert_eq!(response.result, "input data from sample_method"); + let oracle: Oracle = Oracle::new(None); + let result = oracle.obscure(&args, None).unwrap(); + assert_eq!(result.len(), 128); } + +#[test] +fn enlighten() { + let args = OracleArgsEnlighten { + question: String::from("What is the meaning of life?"), + api_key: env::var("PPLX_API_KEY").expect("API_KEY must be set") + }; + let oracle: Oracle = Oracle::new(None); + let result = oracle.enlighten(&args, None).unwrap(); + assert_ne!(result.len(), 0); +} \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.graphql b/snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.graphql index f3741e82..8f099c49 100644 --- a/snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.graphql +++ b/snippets/create-wraps-tutorial/rust/tests/types/polywrap.app.graphql @@ -1 +1 @@ -#import * into Template from "fs/build" \ No newline at end of file +#import * into Oracle from "fs/build" \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/typescript/package.json b/snippets/create-wraps-tutorial/typescript/package.json index 41a85158..983f8597 100644 --- a/snippets/create-wraps-tutorial/typescript/package.json +++ b/snippets/create-wraps-tutorial/typescript/package.json @@ -6,10 +6,11 @@ "main": "build/index.js", "scripts": { "bundle": "rollup -c", - "codegen": "polywrap codegen --verbose", - "build": "yarn bundle && npx polywrap build --no-codegen", - "test": "jest --passWithNoTests --runInBand --verbose", - "deploy": "polywrap deploy" + "codegen": "npx polywrap codegen", + "build": "yarn codegen && yarn bundle && npx polywrap build --no-codegen", + "deploy": "npx polywrap deploy", + "test": "yarn test:codegen && jest --passWithNoTests --runInBand --verbose", + "test:codegen": "npx polywrap codegen -m ./src/__tests__/types/polywrap.app.yaml -g ./src/__tests__/types/wrap" }, "dependencies": { "tslib": "^2.6.2" diff --git a/snippets/create-wraps-tutorial/typescript/src/__tests__/e2e/integration.spec.ts b/snippets/create-wraps-tutorial/typescript/src/__tests__/e2e/integration.spec.ts new file mode 100644 index 00000000..33573635 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/src/__tests__/e2e/integration.spec.ts @@ -0,0 +1,37 @@ +import * as App from "../types/wrap"; +import path from "path"; + +jest.setTimeout(60000); + +describe("Template Wrapper End to End Tests", () => { + + let oracle: App.Oracle; + let wrapperUri: string; + let apiKey: string = process.env.PPLX_API_KEY || ""; + + beforeAll(() => { + const wrapperPath: string = path.join(__dirname, "..", "..", ".."); + wrapperUri = `fs/${wrapperPath}/build`; + oracle = new App.Oracle(undefined, undefined, wrapperUri) + }) + + it("calls obscure", async () => { + const result = await oracle.obscure({ + data: ["Hello", "World"], + chaosLevel: 3 + }); + + if (!result.ok) throw result.error; + expect(typeof result.value === "string").toBeTruthy(); + expect(result.value.length).toEqual(128); + }); + + it("calls enlighten", async () => { + const question = "What is the meaning of life?"; + const result = await oracle.enlighten({ question, apiKey }); + + if (!result.ok) throw result.error; + expect(typeof result.value === "string").toBeTruthy(); + }); +}); + diff --git a/snippets/create-wraps-tutorial/typescript/src/__tests__/integration.spec.ts b/snippets/create-wraps-tutorial/typescript/src/__tests__/integration.spec.ts deleted file mode 100644 index 57933102..00000000 --- a/snippets/create-wraps-tutorial/typescript/src/__tests__/integration.spec.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { PolywrapClient } from "@polywrap/client-js"; -import path from "path"; - -jest.setTimeout(60000); - -describe("Template Wrapper End to End Tests", () => { - - const client: PolywrapClient = new PolywrapClient(); - let wrapUri = `file://${path.join(__dirname, "../../build")}`; - - it("invoke foo", async () => { - const result = await client.invoke({ - uri: wrapUri, - method: "foo", - args: { bar: "bar" } - }); - - expect(result.ok).toBeFalsy(); - if (result.ok) return; - expect(result.error?.toString()).toContain("Not implemented"); - }); -}); diff --git a/snippets/create-wraps-tutorial/typescript/src/__tests__/types/polywrap.app.yaml b/snippets/create-wraps-tutorial/typescript/src/__tests__/types/polywrap.app.yaml new file mode 100644 index 00000000..c084aed0 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/src/__tests__/types/polywrap.app.yaml @@ -0,0 +1,9 @@ +format: 0.3.0 +project: + name: sample-typescript-type-generation + type: app/typescript +source: + schema: ./schema.graphql + import_abis: + - uri: "wrap://ens/sample.eth" + abi: "../../../build/wrap.info" diff --git a/snippets/create-wraps-tutorial/typescript/src/__tests__/types/schema.graphql b/snippets/create-wraps-tutorial/typescript/src/__tests__/types/schema.graphql new file mode 100644 index 00000000..2338a992 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/src/__tests__/types/schema.graphql @@ -0,0 +1 @@ +#import * into Oracle from "wrap://ens/sample.eth" diff --git a/snippets/create-wraps-tutorial/typescript/src/__tests__/types/wrap/index.ts b/snippets/create-wraps-tutorial/typescript/src/__tests__/types/wrap/index.ts new file mode 100644 index 00000000..eea524d6 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/src/__tests__/types/wrap/index.ts @@ -0,0 +1 @@ +export * from "./types"; diff --git a/snippets/create-wraps-tutorial/typescript/src/__tests__/types/wrap/types.ts b/snippets/create-wraps-tutorial/typescript/src/__tests__/types/wrap/types.ts new file mode 100644 index 00000000..6ad30804 --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/src/__tests__/types/wrap/types.ts @@ -0,0 +1,128 @@ +// @ts-ignore +import * as Types from "./"; + +// @ts-ignore +import { + CoreClient, + InvokeResult, + Uri, +} from "@polywrap/core-js"; +import { PolywrapClient } from "@polywrap/client-js"; + +export type UInt = number; +export type UInt8 = number; +export type UInt16 = number; +export type UInt32 = number; +export type Int = number; +export type Int8 = number; +export type Int16 = number; +export type Int32 = number; +export type Bytes = Uint8Array; +export type BigInt = string; +export type BigNumber = string; +export type Json = string; +export type String = string; +export type Boolean = boolean; + +/// Imported Modules START /// + +/* URI: "wrap://ens/sample.eth" */ +export interface Oracle_Module_Args_obscure { + data: Array; + chaosLevel?: Types.Int | null; +} + +/* URI: "wrap://ens/sample.eth" */ +export interface Oracle_Module_Args_enlighten { + question: Types.String; + apiKey: Types.String; +} + +/* URI: "wrap://ens/sample.eth" */ +export class Oracle { + protected _defaultClient: CoreClient; + protected _defaultUri: string; + protected _defaultEnv?: Record; + + constructor( + client?: CoreClient, + env?: Record, + uri?: string, + ) { + this._defaultClient = this._getClient(client); + this._defaultEnv = this._getEnv(env); + this._defaultUri = this._getUri(uri); + } + + public get client(): CoreClient { + return this._defaultClient; + } + + public get uri(): string { + return this._defaultUri; + } + + public get env(): Record | undefined { + return this._defaultEnv; + } + + private _getClient(client?: CoreClient): CoreClient { + return client || this._defaultClient || this._getDefaultClient(); + } + + private _getUri(uri?: string): string { + return uri || this._defaultUri || this._getDefaultUri(); + } + + private _getEnv(env?: Record): Record | undefined { + return env || this._defaultEnv || this._getDefaultEnv(); + } + + protected _getDefaultClient(): CoreClient { + return new PolywrapClient(); + } + protected _getDefaultUri(): string { + return "wrap://ens/sample.eth"; + } + protected _getDefaultEnv(): Record | undefined { + return undefined; + } + + async obscure( + args: Oracle_Module_Args_obscure, + client?: CoreClient, + env?: Record, + uri?: string, + ): Promise> { + const _client = this._getClient(client); + const _env = this._getEnv(env); + const _uri = this._getUri(uri); + + return _client.invoke({ + uri: Uri.from(_uri), + method: "obscure", + args: (args as unknown) as Record, + env: _env, + }); + }; + + async enlighten( + args: Oracle_Module_Args_enlighten, + client?: CoreClient, + env?: Record, + uri?: string, + ): Promise> { + const _client = this._getClient(client); + const _env = this._getEnv(env); + const _uri = this._getUri(uri); + + return _client.invoke({ + uri: Uri.from(_uri), + method: "enlighten", + args: (args as unknown) as Record, + env: _env, + }); + }; +}; + +/// Imported Modules END /// diff --git a/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx b/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx index 2b277b7a..0728b490 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx @@ -3,22 +3,86 @@ id: 'integration-testing' title: 'Integration Testing' --- import { NavButton } from '/src/components/NavButton' +import IntegrationTests from '../partials/_integration_tests.mdx'; :::note You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. ::: -hi +We're going to write some integration tests for our wrap to make sure our wrap works as expected in an environment that resembles the one in which it will be used. -## **Interfaces** +## **Why integration tests?** + +Here we will define an "integration test" as an end-to-end tests that validates the functionality of your wrap by invoking it from a Polywrap Client. This is in contrast to a "unit test", which you might use to test the functionality of specific wrap methods in isolation. + +We write integration tests because certain wrap functionalities depend on the Polywrap Client. The most obvious example is subinvocation. When a wrap invokes a method in another wrap, the method arguments are serialized, sent back to the Polywrap Client, and routed to the other wrap. The Polywrap Client is required to coordinate the interaction. + +A downside of integration testing is that we don't have Polywrap Client for every programming language for which we can write wraps. If you're writing your wrap in Go or AssemblyScript, we assume you'll be okay with testing using the TypeScript Polywrap client. + +We also support a language-agnostic approach to integration testing that we call [Workflows](tutorials/advanced/workflows/running-workflows). Workflows are a way to define a sequence of steps that can be executed by any Polywrap Client. The output of workflow jobs can be validated to ensure that the wrap is functioning as expected. We won't be using workflows in this tutorial. + +## **App Codegen** + +Codegen will generate different bindings for different types of projects. For integration tests, we use the codegen targeting application developers because they make testing easier and more closely replicate the wrap's end user experience. App codegen is not required--a Polywrap Client can invoke any wrap without codegen--but it's recommended. + +To execute app codegen without changing our `polywrap.yaml` project manifest or wrap schema, we can simply create another manifest and schema for the purpose of testing and pass them into the codegen command. I changed the namespace of my wrap import in the test schema to "Oracle" so I can refer to it as `Oracle` in my tests. + + + + + ```shell-session + polywrap codegen -m ./tests/types/polywrap.app.yaml -g ./tests/types/wrap + ``` + + + + + + ```shell-session + polywrap codegen -m ./module/__tests__/types/polywrap.app.yaml -g ./module/__tests__/types/wrap + ``` + + + + + + ```shell-session + polywrap codegen -m ./src/__tests__/types/polywrap.app.yaml -g ./src/__tests__/types/wrap + ``` + + + + + + ```shell-session + polywrap codegen -m ./src/__tests__/types/polywrap.app.yaml -g ./src/__tests__/types/wrap + ``` + + + + +## **Write Tests** + +With app codegen, integration tests are easy to write. + +For Rust wraps, we'll write our integration tests in Rust using the Rust Polywrap Client. For wraps written in other languages, we'll write our tests in TypeScript. + +We'll invoke our wrap using a file-system Wrap URI. + +In your test file, you can import the module class generated with app codegen. We'll use the default Polywrap Client configuration, so we won't need to pass one in as an argument to the module constructor. The module instance can be used to invoke the methods defined in your wrap schema with type safety. :::info -You can use my personal API key to complete this tutorial. +You can use my personal API key to test your wrap. `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` Please do not use it outside the context of this tutorial. If it's abused, I'll have to revoke it! ::: + + ## **Next Steps** +In the final part of the tutorial, we'll learn how to publish a wrap. + + diff --git a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx index 4b31a2c5..607aa5c5 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx @@ -71,10 +71,12 @@ Now we can import the generated Http Module class to send HTTP requests. To call the HTTP `post` method, we need to use some custom types defined in the HTTP interface schema. Polywrap's codegen is smart enough to generate these types for us, even though we didn't list them in an import statement, because the Http Module class depends on them. +In order to focus on learning Polywrap, we aren't going to parse the HTTP response. We'll just return the raw response body as a string. + ## **Next Steps** -Our Oracle Wrap is now complete! But we're not quite done yet. We still need to test our wrap and publish it so others can use it. We'll test our wrap in the next section. +Our Oracle Wrap is now complete! But we're not quite done yet. We still need to test our wrap and publish it so others can use it. We'll test our wrap in the next section. Make sure to build your wrap and fix any compilation errors before moving on. \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/partials/_integration_tests.mdx b/src/docs/tutorials/new-create-wraps/partials/_integration_tests.mdx new file mode 100644 index 00000000..0d4c567b --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/partials/_integration_tests.mdx @@ -0,0 +1,82 @@ +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; + + + + +```rust title=src/lib.rs +use crate::types::wrap::types::{ + Oracle, + OracleArgsObscure, + OracleArgsEnlighten +}; +use std::env; + +#[test] +fn obscure() { + let args = OracleArgsObscure { + data: vec![String::from("Hello"), String::from("World")], + chaos_level: Some(3) + }; + let oracle: Oracle = Oracle::new(None); + let result = oracle.obscure(&args, None).unwrap(); + assert_eq!(result.len(), 128); +} + +#[test] +fn enlighten() { + let args = OracleArgsEnlighten { + question: String::from("What is the meaning of life?"), + api_key: env::var("PPLX_API_KEY").expect("API_KEY must be set") + }; + let oracle: Oracle = Oracle::new(None); + let result = oracle.enlighten(&args, None).unwrap(); + assert_ne!(result.len(), 0); +} +``` + + + + + +```ts title=src/__tests__/e2e/integration.spec.ts +import * as App from "../types/wrap"; +import path from "path"; + +jest.setTimeout(60000); + +describe("Oracle Wrap End to End Tests", () => { + + let oracle: App.Oracle; + let wrapperUri: string; + let apiKey: string = process.env.PPLX_API_KEY || ""; + + beforeAll(() => { + const wrapperPath: string = path.join(__dirname, "..", "..", ".."); + wrapperUri = `fs/${wrapperPath}/build`; + oracle = new App.Oracle(undefined, undefined, wrapperUri) + }) + + it("calls obscure", async () => { + const result = await oracle.obscure({ + data: ["Hello", "World"], + chaosLevel: 3 + }); + + if (!result.ok) throw result.error; + expect(typeof result.value === "string").toBeTruthy(); + expect(result.value.length).toEqual(128); + }); + + it("calls enlighten", async () => { + const question = "What is the meaning of life?"; + const result = await oracle.enlighten({ question, apiKey }); + + if (!result.ok) throw result.error; + expect(typeof result.value === "string").toBeTruthy(); + }); +}); +``` + + + \ No newline at end of file From ac9b6b9c5d35b9b798218adc4a33b9c350de7b7c Mon Sep 17 00:00:00 2001 From: krisbitney Date: Tue, 31 Oct 2023 16:45:22 +0500 Subject: [PATCH 16/19] added deployment page of new create wraps tutorial --- sidebars.js | 3 +- .../assemblyscript/polywrap.docs.yaml | 2 + .../assemblyscript/polywrap.yaml | 2 +- .../golang/polywrap.docs.yaml | 2 + .../golang/polywrap.yaml | 2 + .../rust/polywrap.docs.yaml | 2 + .../create-wraps-tutorial/rust/polywrap.yaml | 2 +- .../typescript/polywrap.docs.yaml | 2 + .../typescript/polywrap.yaml | 2 + .../new-create-wraps/part-one/deployment.mdx | 52 +++++++++++++++++++ 10 files changed, 68 insertions(+), 3 deletions(-) create mode 100644 snippets/create-wraps-tutorial/assemblyscript/polywrap.docs.yaml create mode 100644 snippets/create-wraps-tutorial/golang/polywrap.docs.yaml create mode 100644 snippets/create-wraps-tutorial/rust/polywrap.docs.yaml create mode 100644 snippets/create-wraps-tutorial/typescript/polywrap.docs.yaml create mode 100644 src/docs/tutorials/new-create-wraps/part-one/deployment.mdx diff --git a/sidebars.js b/sidebars.js index 1235d54a..e34d58da 100644 --- a/sidebars.js +++ b/sidebars.js @@ -80,7 +80,8 @@ const sidebars = { 'tutorials/new-create-wraps/part-one/first-method', 'tutorials/new-create-wraps/part-one/import-and-subinvoke', 'tutorials/new-create-wraps/part-one/interfaces-and-plugins', - 'tutorials/new-create-wraps/part-one/integration-testing' + 'tutorials/new-create-wraps/part-one/integration-testing', + 'tutorials/new-create-wraps/part-one/deployment' ] } ], diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.docs.yaml b/snippets/create-wraps-tutorial/assemblyscript/polywrap.docs.yaml new file mode 100644 index 00000000..c5329b0e --- /dev/null +++ b/snippets/create-wraps-tutorial/assemblyscript/polywrap.docs.yaml @@ -0,0 +1,2 @@ +format: 0.1.0 +readme: ./README.md \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.yaml b/snippets/create-wraps-tutorial/assemblyscript/polywrap.yaml index 0474ff70..6d97f0e3 100644 --- a/snippets/create-wraps-tutorial/assemblyscript/polywrap.yaml +++ b/snippets/create-wraps-tutorial/assemblyscript/polywrap.yaml @@ -6,4 +6,4 @@ source: module: ./src/index.ts schema: ./polywrap.graphql extensions: - build: ./polywrap.build.yaml + docs: ./polywrap.docs.yaml diff --git a/snippets/create-wraps-tutorial/golang/polywrap.docs.yaml b/snippets/create-wraps-tutorial/golang/polywrap.docs.yaml new file mode 100644 index 00000000..c5329b0e --- /dev/null +++ b/snippets/create-wraps-tutorial/golang/polywrap.docs.yaml @@ -0,0 +1,2 @@ +format: 0.1.0 +readme: ./README.md \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/golang/polywrap.yaml b/snippets/create-wraps-tutorial/golang/polywrap.yaml index 0b1f3f35..b63d961b 100644 --- a/snippets/create-wraps-tutorial/golang/polywrap.yaml +++ b/snippets/create-wraps-tutorial/golang/polywrap.yaml @@ -5,3 +5,5 @@ project: source: schema: ./polywrap.graphql module: ./go.mod +extensions: + docs: ./polywrap.docs.yaml diff --git a/snippets/create-wraps-tutorial/rust/polywrap.docs.yaml b/snippets/create-wraps-tutorial/rust/polywrap.docs.yaml new file mode 100644 index 00000000..c5329b0e --- /dev/null +++ b/snippets/create-wraps-tutorial/rust/polywrap.docs.yaml @@ -0,0 +1,2 @@ +format: 0.1.0 +readme: ./README.md \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/rust/polywrap.yaml b/snippets/create-wraps-tutorial/rust/polywrap.yaml index a87ff9b7..0ee95db8 100644 --- a/snippets/create-wraps-tutorial/rust/polywrap.yaml +++ b/snippets/create-wraps-tutorial/rust/polywrap.yaml @@ -6,4 +6,4 @@ source: module: ./Cargo.toml schema: ./polywrap.graphql extensions: - build: ./polywrap.build.yaml + docs: ./polywrap.docs.yaml diff --git a/snippets/create-wraps-tutorial/typescript/polywrap.docs.yaml b/snippets/create-wraps-tutorial/typescript/polywrap.docs.yaml new file mode 100644 index 00000000..c5329b0e --- /dev/null +++ b/snippets/create-wraps-tutorial/typescript/polywrap.docs.yaml @@ -0,0 +1,2 @@ +format: 0.1.0 +readme: ./README.md \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/typescript/polywrap.yaml b/snippets/create-wraps-tutorial/typescript/polywrap.yaml index 8df1debb..11f93901 100644 --- a/snippets/create-wraps-tutorial/typescript/polywrap.yaml +++ b/snippets/create-wraps-tutorial/typescript/polywrap.yaml @@ -5,3 +5,5 @@ project: source: schema: ./polywrap.graphql module: ./bundled/wrap.js +extensions: + docs: ./polywrap.docs.yaml diff --git a/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx b/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx new file mode 100644 index 00000000..39156b97 --- /dev/null +++ b/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx @@ -0,0 +1,52 @@ +--- +id: 'deployment' +title: 'Deployment' +--- + +:::note +You're reading Part One of the [Create Wraps](../introduction) tutorial, where we learn everything you need to know to productively develop Polywrap wraps. +::: + +We've written our wrap and tested it. Let's add a readme and deploy to IPFS. + +## **Add a Readme** + +Users can add descriptive metadata to their wraps by adding a `polywrap.docs.yaml` documentation manifest. We won't discuss the full breadth of the documentation manifest here, but we'll use it to add a readme file that will be published with our wrap package. + +```yaml title="polywrap.docs.yaml" +format: 0.1.0 +readme: ./README.md +``` + +```markdown title="README.md" +// Write a readme for your wrap here. +``` + +For the Polywrap CLI to recognize our documentation manifest, we need to add the extension to our `polywrap.yaml` file. + +```yaml title="polywrap.yaml" +format: 0.3.0 +project: + name: template-wasm-as + type: wasm/assemblyscript +source: + module: ./src/index.ts + schema: ./polywrap.graphql +extensions: + build: ./polywrap.build.yaml + docs: ./polywrap.docs.yaml +``` + +## **Deploy to IPFS** + +Deploying a wrap to IPFS couldn't be easier. With the `polywrap deploy` command in the Polywrap CLI, the CLI will by default automatically upload and pin your wrap to `https://ipfs.wrappers.io`. This is a free service provided by Polywrap to make it easy to deploy and use wraps. + +```shell-session +polywrap deploy +``` + +## **Final Thoughts** + +You've come so far and learned so much. You've built a wrap, tested it, and deployed it to IPFS. You're ready to share your wrap with the world! + +Join us on discord to share your thoughts and ask questions. We're excited to see what you build next! \ No newline at end of file From 44d50d289be815858e27fd973e859560679308d2 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Tue, 31 Oct 2023 16:51:39 +0500 Subject: [PATCH 17/19] fixed typos --- .../new-create-wraps/part-one/deployment.mdx | 6 +++-- .../part-one/integration-testing.mdx | 26 ++++++++++--------- .../partials/_integration_tests.mdx | 2 +- 3 files changed, 19 insertions(+), 15 deletions(-) diff --git a/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx b/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx index 39156b97..ed437010 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx @@ -47,6 +47,8 @@ polywrap deploy ## **Final Thoughts** -You've come so far and learned so much. You've built a wrap, tested it, and deployed it to IPFS. You're ready to share your wrap with the world! +You've come so far and learned so much. You've built a wrap, tested it, and deployed it to IPFS. We're excited to see what you build next! -Join us on discord to share your thoughts and ask questions. We're excited to see what you build next! \ No newline at end of file +When you're ready, hop on over to Part 2 of the tutorial to learn how to customize various aspects of the wrap development process. + +Join us on discord to share your thoughts and ask questions. We'd love to hear from you! \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx b/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx index 0728b490..7e770bbe 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx @@ -2,6 +2,8 @@ id: 'integration-testing' title: 'Integration Testing' --- +import Tabs from '@theme/Tabs'; +import TabItem from '@theme/TabItem'; import { NavButton } from '/src/components/NavButton' import IntegrationTests from '../partials/_integration_tests.mdx'; @@ -30,33 +32,33 @@ To execute app codegen without changing our `polywrap.yaml` project manifest or - ```shell-session - polywrap codegen -m ./tests/types/polywrap.app.yaml -g ./tests/types/wrap - ``` +```shell-session +polywrap codegen -m ./tests/types/polywrap.app.yaml -g ./tests/types/wrap +``` - ```shell-session - polywrap codegen -m ./module/__tests__/types/polywrap.app.yaml -g ./module/__tests__/types/wrap - ``` +```shell-session +polywrap codegen -m ./module/__tests__/types/polywrap.app.yaml -g ./module/__tests__/types/wrap +``` - ```shell-session - polywrap codegen -m ./src/__tests__/types/polywrap.app.yaml -g ./src/__tests__/types/wrap - ``` +```shell-session +polywrap codegen -m ./src/__tests__/types/polywrap.app.yaml -g ./src/__tests__/types/wrap +``` - ```shell-session - polywrap codegen -m ./src/__tests__/types/polywrap.app.yaml -g ./src/__tests__/types/wrap - ``` +```shell-session +polywrap codegen -m ./src/__tests__/types/polywrap.app.yaml -g ./src/__tests__/types/wrap +``` diff --git a/src/docs/tutorials/new-create-wraps/partials/_integration_tests.mdx b/src/docs/tutorials/new-create-wraps/partials/_integration_tests.mdx index 0d4c567b..bbff24ee 100644 --- a/src/docs/tutorials/new-create-wraps/partials/_integration_tests.mdx +++ b/src/docs/tutorials/new-create-wraps/partials/_integration_tests.mdx @@ -4,7 +4,7 @@ import TabItem from '@theme/TabItem'; -```rust title=src/lib.rs +```rust title=tests/it/module.rs use crate::types::wrap::types::{ Oracle, OracleArgsObscure, From d685badb606c62344dc9fbebcf70bd12281fe046 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Tue, 31 Oct 2023 17:00:58 +0500 Subject: [PATCH 18/19] removed build manifest from tutorial wraps --- .../assemblyscript/polywrap.build.yaml | 8 -------- snippets/create-wraps-tutorial/rust/polywrap.build.yaml | 4 ---- .../create-wraps-tutorial/typescript/polywrap.build.yaml | 3 --- .../tutorials/new-create-wraps/part-one/deployment.mdx | 1 - .../new-create-wraps/part-one/project-manifest.mdx | 7 +------ .../tutorials/new-create-wraps/part-one/project-setup.mdx | 4 ---- .../new-create-wraps/partials/_project-dir-common.mdx | 3 --- 7 files changed, 1 insertion(+), 29 deletions(-) delete mode 100644 snippets/create-wraps-tutorial/assemblyscript/polywrap.build.yaml delete mode 100644 snippets/create-wraps-tutorial/rust/polywrap.build.yaml delete mode 100644 snippets/create-wraps-tutorial/typescript/polywrap.build.yaml diff --git a/snippets/create-wraps-tutorial/assemblyscript/polywrap.build.yaml b/snippets/create-wraps-tutorial/assemblyscript/polywrap.build.yaml deleted file mode 100644 index 7a6e7fac..00000000 --- a/snippets/create-wraps-tutorial/assemblyscript/polywrap.build.yaml +++ /dev/null @@ -1,8 +0,0 @@ -format: 0.3.0 -strategies: - image: - name: wrap-wasm-as-build-image - node_version: 16.13.0 - include: - - ./package.json - - ./src diff --git a/snippets/create-wraps-tutorial/rust/polywrap.build.yaml b/snippets/create-wraps-tutorial/rust/polywrap.build.yaml deleted file mode 100644 index 875939c7..00000000 --- a/snippets/create-wraps-tutorial/rust/polywrap.build.yaml +++ /dev/null @@ -1,4 +0,0 @@ -format: 0.2.0 -strategies: - image: - name: template-wasm-rs \ No newline at end of file diff --git a/snippets/create-wraps-tutorial/typescript/polywrap.build.yaml b/snippets/create-wraps-tutorial/typescript/polywrap.build.yaml deleted file mode 100644 index 4bdc6dc1..00000000 --- a/snippets/create-wraps-tutorial/typescript/polywrap.build.yaml +++ /dev/null @@ -1,3 +0,0 @@ -format: 0.3.0 -config: - scriptFile: ./bundled/wrap.js \ No newline at end of file diff --git a/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx b/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx index ed437010..84ddc688 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx @@ -33,7 +33,6 @@ source: module: ./src/index.ts schema: ./polywrap.graphql extensions: - build: ./polywrap.build.yaml docs: ./polywrap.docs.yaml ``` diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.mdx b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.mdx index e39bc8d7..eab0b73a 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/project-manifest.mdx @@ -146,12 +146,7 @@ For example, the `import_abis` feature can be used in a monorepo that contains o There are two types of manifest extensions you can register in the project manifest: `build` and `docs`. The `polywrap.build.yaml` build manifest enables developers to customize the wrap build process. The `polywrap.docs.yaml` manifest allows you to provide metadata for package registries and include common documentation files such as a `README.md`. -```yaml -extensions: - build: ./polywrap.build.yaml -``` - -We will use the `docs` manifest extensions later on to include a `README.md` file in our package. We won't be using the `build` extension in Part One of this tutorial, but we'll dive into it in Part Two. If you'd like, you can remove the `build` extension property and delete the `polywrap.build.yaml` file. +We will use the `docs` manifest extensions later on to include a `README.md` file in our package. We won't be using the `build` extension in Part One of this tutorial, but we'll dive into it in Part Two. ### **Resources** diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx index 71e35336..73a45db4 100644 --- a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx +++ b/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx @@ -66,7 +66,6 @@ Let's take a look at the contents of the project we just created. Then, in the n ``` project/ ├── polywrap.yaml # Project manifest File -├── polywrap.build.yaml # Build manifest File ├── polywrap.graphql # Wrap Schema ├── src/ │ └── lib.rs # Entry point; exports module defined in schema @@ -85,7 +84,6 @@ project/ ``` project/ ├── polywrap.yaml # Project manifest File -├── polywrap.build.yaml # Build manifest File ├── polywrap.graphql # Wrap Schema ├── module/ │ ├── module.go # Entry point; exports module defined in schema @@ -108,7 +106,6 @@ project/ ``` project/ ├── polywrap.yaml # Project manifest File -├── polywrap.build.yaml # Build manifest File ├── polywrap.graphql # Wrap Schema ├── src/ │ ├── index.ts # Entry point; exports module defined in schema @@ -134,7 +131,6 @@ project/ ``` project/ ├── polywrap.yaml # Project manifest File -├── polywrap.build.yaml # Build manifest File ├── polywrap.graphql # Wrap Schema ├── src/ │ ├── index.ts # Entry point; exports module defined in schema diff --git a/src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx b/src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx index de526e6a..bad7e87c 100644 --- a/src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx +++ b/src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx @@ -1,9 +1,6 @@ ### **`polywrap.yaml`** The `polywrap.yaml` project manifest is a high-level configuration file describing a Polywrap project. -### **`polywrap.build.yaml`** -The `polywrap.build.yaml` build manifest enables build process customization. We won't need to modify this file, but we will learn how to do so anyway in Part Two of the tutorial. The file is not needed in most projects and can in fact be deleted. - ### **`polywrap.graphql`** Each wrap project has a [Wrap Schema](/concepts/wrap-schema). The schema defines the wrap's interface, including dependencies, methods, and custom types. Polywrap uses the schema to generate the wrap's serialization bindings and validate the wrap's implementation. The schema is compiled to a `wrap.info` ABI file at build time and stored in the wrap package. In this tutorial, we'll learn how to write a Wrap Schema. It's easy! From 9eae6edeed40aa673c0ccd8ba8566f3282aa6632 Mon Sep 17 00:00:00 2001 From: krisbitney Date: Tue, 31 Oct 2023 20:16:10 +0500 Subject: [PATCH 19/19] removed old create wraps tutorial --- sidebars.js | 43 +++++------ .../interfaces/define-implement-interfaces.md | 2 +- .../build-and-deploy-wraps/build-pipeline.md | 4 +- .../introduction.mdx | 0 .../part-one/deployment.mdx | 0 .../part-one/first-method.mdx | 0 .../part-one/import-and-subinvoke.mdx | 0 .../part-one/integration-testing.mdx | 0 .../part-one/interfaces-and-plugins.mdx | 0 .../part-one/project-manifest.mdx | 0 .../part-one/project-setup.mdx | 0 .../part-one/schema-and-codegen.mdx | 0 .../{ => part-two}/add-metadata.md | 0 .../{ => part-two}/default-plugins.md | 0 .../{ => part-two}/polylwrap-manifest.md | 0 .../writing-tests-with-workflows.md | 0 .../partials/_codegen-dir.mdx | 0 .../partials/_complete_code.mdx | 0 .../partials/_first_method_empty.mdx | 0 .../partials/_first_method_sha3.mdx | 0 .../partials/_first_method_simple.mdx | 0 .../partials/_integration_tests.mdx | 0 .../partials/_project-dir-common.mdx | 0 .../partials/_template-module.mdx | 0 .../partials/_wrap-args.mdx | 0 .../partials/_wrap-custom-types.mdx | 0 .../partials/_wrap-dir.mdx | 0 .../partials/_wrap-module-base.mdx | 0 .../tutorial/adding-new-methods.md | 64 ----------------- .../tutorial/build-deploy-test.md | 56 --------------- .../tutorial/deploy-locally-and-test.md | 70 ------------------ .../create-wraps/tutorial/project-folder.md | 42 ----------- .../create-wraps/tutorial/project-setup.md | 72 ------------------- 33 files changed, 19 insertions(+), 334 deletions(-) rename src/docs/tutorials/{new-create-wraps => create-wraps}/introduction.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/part-one/deployment.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/part-one/first-method.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/part-one/import-and-subinvoke.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/part-one/integration-testing.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/part-one/interfaces-and-plugins.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/part-one/project-manifest.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/part-one/project-setup.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/part-one/schema-and-codegen.mdx (100%) rename src/docs/tutorials/create-wraps/{ => part-two}/add-metadata.md (100%) rename src/docs/tutorials/create-wraps/{ => part-two}/default-plugins.md (100%) rename src/docs/tutorials/create-wraps/{ => part-two}/polylwrap-manifest.md (100%) rename src/docs/tutorials/create-wraps/{tutorial => part-two}/writing-tests-with-workflows.md (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_codegen-dir.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_complete_code.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_first_method_empty.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_first_method_sha3.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_first_method_simple.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_integration_tests.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_project-dir-common.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_template-module.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_wrap-args.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_wrap-custom-types.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_wrap-dir.mdx (100%) rename src/docs/tutorials/{new-create-wraps => create-wraps}/partials/_wrap-module-base.mdx (100%) delete mode 100644 src/docs/tutorials/create-wraps/tutorial/adding-new-methods.md delete mode 100644 src/docs/tutorials/create-wraps/tutorial/build-deploy-test.md delete mode 100644 src/docs/tutorials/create-wraps/tutorial/deploy-locally-and-test.md delete mode 100644 src/docs/tutorials/create-wraps/tutorial/project-folder.md delete mode 100644 src/docs/tutorials/create-wraps/tutorial/project-setup.md diff --git a/sidebars.js b/sidebars.js index e34d58da..79408549 100644 --- a/sidebars.js +++ b/sidebars.js @@ -67,43 +67,32 @@ const sidebars = { }, { type: 'category', - label: 'NEW Create Wraps', + label: 'Create Wraps', items: [ - 'tutorials/new-create-wraps/introduction', + 'tutorials/create-wraps/introduction', { type: 'category', label: 'Part One', items: [ - 'tutorials/new-create-wraps/part-one/project-setup', - 'tutorials/new-create-wraps/part-one/project-manifest', - 'tutorials/new-create-wraps/part-one/schema-and-codegen', - 'tutorials/new-create-wraps/part-one/first-method', - 'tutorials/new-create-wraps/part-one/import-and-subinvoke', - 'tutorials/new-create-wraps/part-one/interfaces-and-plugins', - 'tutorials/new-create-wraps/part-one/integration-testing', - 'tutorials/new-create-wraps/part-one/deployment' + 'tutorials/create-wraps/part-one/project-setup', + 'tutorials/create-wraps/part-one/project-manifest', + 'tutorials/create-wraps/part-one/schema-and-codegen', + 'tutorials/create-wraps/part-one/first-method', + 'tutorials/create-wraps/part-one/import-and-subinvoke', + 'tutorials/create-wraps/part-one/interfaces-and-plugins', + 'tutorials/create-wraps/part-one/integration-testing', + 'tutorials/create-wraps/part-one/deployment' ] - } - ], - }, - { - type: 'category', - label: 'Create Wraps', - items: [ + }, { type: 'category', - label: 'Tutorial', + label: 'Part Two', items: [ - 'tutorials/create-wraps/tutorial/project-setup', - 'tutorials/create-wraps/tutorial/project-folder', - 'tutorials/create-wraps/tutorial/build-deploy-test', - 'tutorials/create-wraps/tutorial/adding-new-methods', - 'tutorials/create-wraps/tutorial/writing-tests-with-workflows', - 'tutorials/create-wraps/tutorial/deploy-locally-and-test', + 'tutorials/create-wraps/part-two/polywrap-manifest', + 'tutorials/create-wraps/part-two/default-plugins', + 'tutorials/create-wraps/part-two/writing-tests-with-workflows' ] - }, - 'tutorials/create-wraps/polywrap-manifest', - 'tutorials/create-wraps/default-plugins' + } ], }, { diff --git a/src/docs/tutorials/advanced/interfaces/define-implement-interfaces.md b/src/docs/tutorials/advanced/interfaces/define-implement-interfaces.md index d192d7ef..afcbae88 100644 --- a/src/docs/tutorials/advanced/interfaces/define-implement-interfaces.md +++ b/src/docs/tutorials/advanced/interfaces/define-implement-interfaces.md @@ -16,7 +16,7 @@ It is implemented by multiple plugin wraps to help the Polywrap client query dif ## Declaring an interface project -Interface projects are declared using a [Polywrap Manifest](/tutorials/create-wraps/polywrap-manifest). +Interface projects are declared using a [Polywrap Manifest](/tutorials/create-wraps/part-two/polywrap-manifest). To indicate that a project is an abstract interface, set the project type to `interface`. Interface projects do not have a module. Only a [schema](/concepts/wrap-schema) path is declared. diff --git a/src/docs/tutorials/build-and-deploy-wraps/build-pipeline.md b/src/docs/tutorials/build-and-deploy-wraps/build-pipeline.md index 4e378194..df7c68c7 100644 --- a/src/docs/tutorials/build-and-deploy-wraps/build-pipeline.md +++ b/src/docs/tutorials/build-and-deploy-wraps/build-pipeline.md @@ -16,7 +16,7 @@ This article will help you understand the follow concepts: ## Build pipeline The build process begins by running the [`build`](https://github.com/polywrap/cli/tree/origin-dev/packages/cli#build--b) command from the [`polywrap`](https://github.com/polywrap/cli/tree/origin-dev/packages/cli) CLI. -The command will first search for the [Polywrap Manifest](../create-wraps/polywrap-manifest), find the wrap schema and implementation, and move these files into a Docker image. +The command will first search for the [Polywrap Manifest](../create-wraps/part-two/polywrap-manifest), find the wrap schema and implementation, and move these files into a Docker image. Within the docker image, the wrap schema is parsed and its contents are extracted into an ABI. The ABI is used to generate binding code for the wrap. @@ -31,7 +31,7 @@ The Build Manifest `polywrap.build.yaml` file is the entry point to build pipeli ### Declaration -The location of the Build Manifest must be declared in your [Polywrap Manifest](../create-wraps/polywrap-manifest) with a field labeled *build*. +The location of the Build Manifest must be declared in your [Polywrap Manifest](../create-wraps/part-two/polywrap-manifest) with a field labeled *build*. If a custom build manifest is not declared, the default build configuration will be used. ```yml diff --git a/src/docs/tutorials/new-create-wraps/introduction.mdx b/src/docs/tutorials/create-wraps/introduction.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/introduction.mdx rename to src/docs/tutorials/create-wraps/introduction.mdx diff --git a/src/docs/tutorials/new-create-wraps/part-one/deployment.mdx b/src/docs/tutorials/create-wraps/part-one/deployment.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/part-one/deployment.mdx rename to src/docs/tutorials/create-wraps/part-one/deployment.mdx diff --git a/src/docs/tutorials/new-create-wraps/part-one/first-method.mdx b/src/docs/tutorials/create-wraps/part-one/first-method.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/part-one/first-method.mdx rename to src/docs/tutorials/create-wraps/part-one/first-method.mdx diff --git a/src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx b/src/docs/tutorials/create-wraps/part-one/import-and-subinvoke.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/part-one/import-and-subinvoke.mdx rename to src/docs/tutorials/create-wraps/part-one/import-and-subinvoke.mdx diff --git a/src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx b/src/docs/tutorials/create-wraps/part-one/integration-testing.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/part-one/integration-testing.mdx rename to src/docs/tutorials/create-wraps/part-one/integration-testing.mdx diff --git a/src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx b/src/docs/tutorials/create-wraps/part-one/interfaces-and-plugins.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/part-one/interfaces-and-plugins.mdx rename to src/docs/tutorials/create-wraps/part-one/interfaces-and-plugins.mdx diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-manifest.mdx b/src/docs/tutorials/create-wraps/part-one/project-manifest.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/part-one/project-manifest.mdx rename to src/docs/tutorials/create-wraps/part-one/project-manifest.mdx diff --git a/src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx b/src/docs/tutorials/create-wraps/part-one/project-setup.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/part-one/project-setup.mdx rename to src/docs/tutorials/create-wraps/part-one/project-setup.mdx diff --git a/src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx b/src/docs/tutorials/create-wraps/part-one/schema-and-codegen.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/part-one/schema-and-codegen.mdx rename to src/docs/tutorials/create-wraps/part-one/schema-and-codegen.mdx diff --git a/src/docs/tutorials/create-wraps/add-metadata.md b/src/docs/tutorials/create-wraps/part-two/add-metadata.md similarity index 100% rename from src/docs/tutorials/create-wraps/add-metadata.md rename to src/docs/tutorials/create-wraps/part-two/add-metadata.md diff --git a/src/docs/tutorials/create-wraps/default-plugins.md b/src/docs/tutorials/create-wraps/part-two/default-plugins.md similarity index 100% rename from src/docs/tutorials/create-wraps/default-plugins.md rename to src/docs/tutorials/create-wraps/part-two/default-plugins.md diff --git a/src/docs/tutorials/create-wraps/polylwrap-manifest.md b/src/docs/tutorials/create-wraps/part-two/polylwrap-manifest.md similarity index 100% rename from src/docs/tutorials/create-wraps/polylwrap-manifest.md rename to src/docs/tutorials/create-wraps/part-two/polylwrap-manifest.md diff --git a/src/docs/tutorials/create-wraps/tutorial/writing-tests-with-workflows.md b/src/docs/tutorials/create-wraps/part-two/writing-tests-with-workflows.md similarity index 100% rename from src/docs/tutorials/create-wraps/tutorial/writing-tests-with-workflows.md rename to src/docs/tutorials/create-wraps/part-two/writing-tests-with-workflows.md diff --git a/src/docs/tutorials/new-create-wraps/partials/_codegen-dir.mdx b/src/docs/tutorials/create-wraps/partials/_codegen-dir.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_codegen-dir.mdx rename to src/docs/tutorials/create-wraps/partials/_codegen-dir.mdx diff --git a/src/docs/tutorials/new-create-wraps/partials/_complete_code.mdx b/src/docs/tutorials/create-wraps/partials/_complete_code.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_complete_code.mdx rename to src/docs/tutorials/create-wraps/partials/_complete_code.mdx diff --git a/src/docs/tutorials/new-create-wraps/partials/_first_method_empty.mdx b/src/docs/tutorials/create-wraps/partials/_first_method_empty.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_first_method_empty.mdx rename to src/docs/tutorials/create-wraps/partials/_first_method_empty.mdx diff --git a/src/docs/tutorials/new-create-wraps/partials/_first_method_sha3.mdx b/src/docs/tutorials/create-wraps/partials/_first_method_sha3.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_first_method_sha3.mdx rename to src/docs/tutorials/create-wraps/partials/_first_method_sha3.mdx diff --git a/src/docs/tutorials/new-create-wraps/partials/_first_method_simple.mdx b/src/docs/tutorials/create-wraps/partials/_first_method_simple.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_first_method_simple.mdx rename to src/docs/tutorials/create-wraps/partials/_first_method_simple.mdx diff --git a/src/docs/tutorials/new-create-wraps/partials/_integration_tests.mdx b/src/docs/tutorials/create-wraps/partials/_integration_tests.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_integration_tests.mdx rename to src/docs/tutorials/create-wraps/partials/_integration_tests.mdx diff --git a/src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx b/src/docs/tutorials/create-wraps/partials/_project-dir-common.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_project-dir-common.mdx rename to src/docs/tutorials/create-wraps/partials/_project-dir-common.mdx diff --git a/src/docs/tutorials/new-create-wraps/partials/_template-module.mdx b/src/docs/tutorials/create-wraps/partials/_template-module.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_template-module.mdx rename to src/docs/tutorials/create-wraps/partials/_template-module.mdx diff --git a/src/docs/tutorials/new-create-wraps/partials/_wrap-args.mdx b/src/docs/tutorials/create-wraps/partials/_wrap-args.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_wrap-args.mdx rename to src/docs/tutorials/create-wraps/partials/_wrap-args.mdx diff --git a/src/docs/tutorials/new-create-wraps/partials/_wrap-custom-types.mdx b/src/docs/tutorials/create-wraps/partials/_wrap-custom-types.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_wrap-custom-types.mdx rename to src/docs/tutorials/create-wraps/partials/_wrap-custom-types.mdx diff --git a/src/docs/tutorials/new-create-wraps/partials/_wrap-dir.mdx b/src/docs/tutorials/create-wraps/partials/_wrap-dir.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_wrap-dir.mdx rename to src/docs/tutorials/create-wraps/partials/_wrap-dir.mdx diff --git a/src/docs/tutorials/new-create-wraps/partials/_wrap-module-base.mdx b/src/docs/tutorials/create-wraps/partials/_wrap-module-base.mdx similarity index 100% rename from src/docs/tutorials/new-create-wraps/partials/_wrap-module-base.mdx rename to src/docs/tutorials/create-wraps/partials/_wrap-module-base.mdx diff --git a/src/docs/tutorials/create-wraps/tutorial/adding-new-methods.md b/src/docs/tutorials/create-wraps/tutorial/adding-new-methods.md deleted file mode 100644 index 9602b61b..00000000 --- a/src/docs/tutorials/create-wraps/tutorial/adding-new-methods.md +++ /dev/null @@ -1,64 +0,0 @@ ---- -id: 'adding-new-methods' -title: 'Adding new Methods' ---- - -## **Custom functionality: IPFS SimpleStorage** - -It's time to build and customize your own Polywrap wrap! We'll be adding IPFS support to the SimpleStorage API. - -### **Update the schema** - -The first step to adding new wrap functionality is defining the method we want our users to invoke. Add the following method & custom data types to your `./src/schema.graphql` schema file: - -```graphql title="./src/schema.graphql" -type Module { -... -$snippet: gql-simple-storage-setIpfs-schema -``` - -### **Implement the `setIpfsData` method** - -In the `./src/index.ts` file, import the new types we've defined: - -```typescript title="./src/index.ts" -$snippet: as-simple-storage-index-imports -``` - -These new types will not exist yet, but don't worry, they'll be generated in the `./src/wrap/*` folder once the `yarn build` command is run. - -Next, we'll implement the `setIpfsData` method. Add this function to the bottom of your `./src/index.ts` file: - -```typescript title="./src/index.ts" -$snippet: as-simple-storage-setIpfs-method -``` - -As you can see, the `SimpleStorage.sol` smart contract already exposes a `setHash()` method. - -In steps `1` and `2`, our SimpleStorage wrap is sending a "sub-invocation" to the IPFS and Ethereum plugin wraps we imported in our schema. Wraps can be implemented as a WebAssembly-based wrap, or a plugin wrap in the client's language (ex: JavaScript). For more information on plugins, see the ["Plugin an Existing JS SDK"](/tutorials/advanced/create-plugins/create-js-plugin) documentation. - -The `Ethereum_Module.callContractMethodAndWait` function also accepts an optional argument, `connection`. This option allows you to select the network which you're transacting with, by specifying a node's endpoint, or a network (name or chain ID) (e.g. `"rinkeby"`). - -To verify everything is implemented correctly, try running `yarn build` and see if the Polywrap build succeeds. - -### **Adding more methods** - -With our first method implementation complete, it's now time to add more. The steps are the same as above. - -Update the `./src/schema.graphql` file like so: - -```graphql title="./src/schema.graphql" -type Module { -... -$snippet: gql-simple-storage-getIpfs-schema -... -} -``` - -Implement the `getIpfsData(...)` method like so in `./src/index.ts`: - -```typescript title="./src/index.ts" -$snippet: as-simple-storage-getIpfs-method -``` - -To verify everything is implemented correctly, try running `yarn build` and see if the Polywrap build succeeds. diff --git a/src/docs/tutorials/create-wraps/tutorial/build-deploy-test.md b/src/docs/tutorials/create-wraps/tutorial/build-deploy-test.md deleted file mode 100644 index cc6bf9f6..00000000 --- a/src/docs/tutorials/create-wraps/tutorial/build-deploy-test.md +++ /dev/null @@ -1,56 +0,0 @@ ---- -id: 'build-deploy-test' -title: 'Build, deploy and test' ---- - -### **Build** - -Let's start building our project! Simply run: - -```bash -yarn build -``` - -In the output window, you'll see that our smart contract was compiled, and our Polywrap wrap was built and output to the `./build/*` folder. It contains the following files: - -``` -build/ - |── wrap.wasm # Wrap Logic - └── wrap.info # Wrap Manifest -``` - -This directory's contents will be uploaded to decentralized storage, and enable any Polywrap Client to download, and execute your wrap's functionality within the application. - -The `wrap.wasm` file is the WebAssembly file that was compiled from AssemblyScript. - -Lastly, the `wrap.info` file describes the layout of the package, as well as its methods and custom types. - -### **Deploy** - -To deploy our Polywrap wrap and associated smart contracts for testing, let's first setup a test environment. Simply run: - -```bash -yarn test:env:up -``` - -This will stand-up an Ethereum node, as well as an IPFS node. - -:::tip -In the future, test environments will be easily configurable to include any nodes your Polywrap wrap requires. -::: - -Next, let's deploy the `SimpleStorage.sol` smart contract, and the `simplestorage.eth` wrap URI by running: - -```bash -yarn deploy -``` - -### **Test** - -With our Polywrap wrap live at `simplestorage.eth` on our test network, it's now time to test it out! - -This is where our workflows come in handy. Run `yarn test` to see this in action. - -In the output window, you'll see a combination of jobs and returned results from the Polywrap wrap. In this workflow, we send a combination of `setData` and `getData` queries which modify the `SimpleStorage.sol` contract's stored value. - -Now that we've built the SimpleStorage wrap, let's add custom functionality to it in the next section! diff --git a/src/docs/tutorials/create-wraps/tutorial/deploy-locally-and-test.md b/src/docs/tutorials/create-wraps/tutorial/deploy-locally-and-test.md deleted file mode 100644 index d8b18fa2..00000000 --- a/src/docs/tutorials/create-wraps/tutorial/deploy-locally-and-test.md +++ /dev/null @@ -1,70 +0,0 @@ ---- -id: 'deploy-locally-and-test' -title: 'Deploy locally & run tests' ---- - -### **Deploy** - -With our workflow complete, let's test the wrap on our local environment! First, let's set up our test environment with the following command in your terminal: - -```bash -yarn test:env:up -``` - -:::tip -This command starts up a test environment with a local Ethereum network using [Ganache](https://www.trufflesuite.com/ganache), an ENS smart contract, and a local IPFS node. - -To close the test environment, simply run: - -```bash -yarn test:env:down -``` -::: - -Next, we will deploy our both our `SimpleStorage.sol` smart contract as well as our wrap with the following command: - -```bash -yarn deploy -``` - -:::tip -Behind the scenes, `yarn deploy` will run the following commands: - -```bash -yarn deploy:api && yarn deploy:contract -``` - -Let's break down each of these commands, starting with `yarn deploy:api`, which itself runs this command: - -```bash -npx polywrap deploy -``` - -The polywrap CLI's deploy command executes a deployment pipeline defined in a `polywrap.deploy.yaml` manifest. -Our deployment pipeline builds and deploys our wrap to our local test environment. -The wrap is assigned to an Ethereum Name Service (ENS) domain registered in the test environment that is set to resolve to our local IPFS node. - -We next deploy the SimpleStorage smart contract to the Ethereum test network using a script we've written for you: - -```bash -node ./scripts/deploy-contract.js -``` - -We'll be interacting with this deployed smart contract using our wrap. -::: - -### **Test** - -Now, we'll use the following command to check whether our wrap and smart contract are working properly: - -```bash -yarn test:workflow -``` - -This command uses the Polywrap CLI's `run` command, which will execute a series of Polywrap invocations and return the result to you. - -### **Conclusion** - -🎉 **Congratulations! You've create a custom wrap!** - -Hopefully this article has given you a clear understanding of the Polywrap toolchain's primary features. If at any time in this process you get stuck or have questions, please don't hesitate to reach out on [Discord](https://discord.com/invite/Z5m88a5qWu). diff --git a/src/docs/tutorials/create-wraps/tutorial/project-folder.md b/src/docs/tutorials/create-wraps/tutorial/project-folder.md deleted file mode 100644 index 59dc00cf..00000000 --- a/src/docs/tutorials/create-wraps/tutorial/project-folder.md +++ /dev/null @@ -1,42 +0,0 @@ ---- -id: 'project-folder' -title: 'The Polywrap project folder' ---- - -Once you have your project set up, the folder tree should look something like this: - -``` -polywrap.yaml # Manifest File -src/ -│ ├── index.ts # Entry point, exports methods defined in schema -│ |── schema.graphql/ # Schema -| └── contracts/ # Smart Contracts -| -workflows/ # Job definitions (described below) -| -scripts/ # Smart Contract Build/Deploy -``` - -### **`polywrap.yaml`** -The `polywrap.yaml` is a manifest file describing the layout of a Polywrap wrap. - -### **`schema.graphql`** -Each wrap project has a [Wrap Schema](/concepts/wrap-schema). -The schema defines the wrap's dependencies, methods, and custom types. -In short, it's an interface describing how to use the wrap. - -### **`src/index.ts`** -The `index.ts` file exports the wrap's method's implementations, which contain the wrap's logic. - -### **`src/contracts/*`** -The `src/contracts` directory contains our protocol's Ethereum-based smart contracts. - -### **`workflows/*`** -[Workflows](/tutorials/advanced/workflows/running-workflows) provide a simple way to test your Polywrap without having to write custom testing logic (with JavaScript and Jest, for example). - -We'll be using this functionality further down in this guide with the `polywrap run` command, allowing us to easily send test queries against our API. - -### **`scripts/*`** -We've defined some simple build & deployment scripts for our Solidity smart contracts. These are basic utilities, and can be replaced entirely by a [Truffle](https://www.trufflesuite.com/) or [Hardhat](https://hardhat.org/) project. - -In the next section, we'll build this example wrap and see what gets outputted in the build folder! diff --git a/src/docs/tutorials/create-wraps/tutorial/project-setup.md b/src/docs/tutorials/create-wraps/tutorial/project-setup.md deleted file mode 100644 index 326acb34..00000000 --- a/src/docs/tutorials/create-wraps/tutorial/project-setup.md +++ /dev/null @@ -1,72 +0,0 @@ ---- -id: 'project-setup' -title: 'Project setup' ---- - -If you're looking to find out what it takes to build a Polywrap wrap, you've come to the right place! This guide will help you understand Polywrap's core concepts. If you haven't checked out our [Quick Start](/quick-start/javascript) section yet, we recommend visiting that section first. - -In this guide, we'll download a simple but complete project to help us get started. We'll look at the different folders and files that make up a Polywrap wrap, such as the GraphQL schema and WebAssembly implementations. Then, we'll dive in and add more code to these existing files to expand the functionality of our wrap. Finally, we'll learn about the different ways you can build and deploy your wrap so that other devs can integrate your wrap into their own apps! - -:::tip -This guide will make use of a simple smart contract written in Solidity. We'll be adding a few functions to it and then use a script to deploy the contract to a test environment where we'll interact with it using our Polywrap wrap. - -NB: No Solidity or smart contract knowledge is required to use the guide! - -If you want to skip ahead to see the resulting code of this guide, visit our [Demos repository](https://github.com/polywrap/demos/tree/main/simple-storage/wrap/assemblyscript). -::: - -If at any time in this process you get stuck or have questions, please reach out to us on [Discord](https://discord.com/invite/Z5m88a5qWu). - -## **Prerequisites** - -You'll need the following installed before building your wrap: - -- `nvm` -- `yarn` -- `docker` -- `docker-compose` - -You'll be using [AssemblyScript](https://www.assemblyscript.org/) to implement your wrap's logic. AssemblyScript compiles to [WebAssembly](https://webassembly.org/). - -:::tip -For now, AssemblyScript and Rust are the only languages with which you can implement your wrap. In the future, we will support additional languages that compile to WebAssembly, such as Go. - -If you have experience programming in TypeScript, you'll feel at home with AssemblyScript since the language's syntax is very similar. - -👋 This guide is meant for those who want to build and deploy their own wraps. If you're interested in integrating deployed wraps into your own app, see our [Integrate into a JS App](../../use-wraps/install-client) guide. -::: - -## **Create your project** - -Let's begin by downloading the Polywrap demos repository, which contains the SimpleStorage wrap we will be using in this guide: - -```bash -git clone https://github.com/polywrap/demos.git -``` -From the root of this new directory, navigate to `simple-storage/wrap/assemblyscript`. - -:::tip -The best way to start a new wrap project is with a project template generated using our CLI. - -```bash -npx polywrap create wasm assemblyscript -``` - -Where `` is replaced with a custom name of your choice. For example `my-wrap`. - -After running this command, you'll see a new folder appear with the custom name you've chosen. The folder will contain everything you need to get started! -::: - - -## **Installation** - -Let's ensure all of your project's dependencies are installed. From inside the project's directory, simply run: - -- `nvm install && nvm use` -- `yarn` - -The Polywrap CLI is now installed locally to your project's directory. Going forward we'll use this local installation by running `npx polywrap`. - -We recommend not installing the `polywrap` package globally to avoid future version conflicts, and maximize reproducibility for the other developers you're working with. - -Let's head over to the next section to see what's in this new directory!