diff --git a/the-patch.diff b/the-patch.diff deleted file mode 100644 index 953db56ed..000000000 --- a/the-patch.diff +++ /dev/null @@ -1,3952 +0,0 @@ -diff --git a/.github/workflows/commitlint.yml b/.github/workflows/commitlint.yml -new file mode 100644 -index 00000000..352413f0 ---- /dev/null -+++ b/.github/workflows/commitlint.yml -@@ -0,0 +1,23 @@ -+name: CI -+ -+on: [push, pull_request] -+ -+jobs: -+ commitlint: -+ runs-on: ubuntu-latest -+ steps: -+ - uses: actions/checkout@v3 -+ with: -+ fetch-depth: 0 -+ - name: Install node dependencies -+ run: | -+ npm install conventional-changelog-conventionalcommits -+ npm install commitlint@latest -+ -+ - name: Validate current commit (last commit) with commitlint -+ if: github.event_name == 'push' -+ run: npx commitlint --from HEAD~1 --to HEAD --verbose -+ -+ - name: Validate PR commits with commitlint -+ if: github.event_name == 'pull_request' -+ run: npx commitlint --from ${{ github.event.pull_request.head.sha }}~${{ github.event.pull_request.commits }} --to ${{ github.event.pull_request.head.sha }} --verbose -diff --git a/.husky/commit-msg b/.husky/commit-msg -new file mode 100755 -index 00000000..c160a771 ---- /dev/null -+++ b/.husky/commit-msg -@@ -0,0 +1,4 @@ -+#!/usr/bin/env sh -+. "$(dirname -- "$0")/_/husky.sh" -+ -+npx --no -- commitlint --edit ${1} -diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md -new file mode 100644 -index 00000000..f3637b9c ---- /dev/null -+++ b/CONTRIBUTING.md -@@ -0,0 +1,38 @@ -+ -+## Requirements -+ -+Foundry -+Git -+Node.js -+ -+## Setup Repo -+ -+```bash -+git clone --recurse-submodules -j8 git@github.com:sablier-labs/v2-core.git -+``` -+ -+### Install Dependencies -+ -+```bash -+npm install -+ -+npx husky install -+ -+npx husky add .husky/commit-msg 'npx --no -- commitlint --edit ${1}' -+ -+forge install -+``` -+ -+### Pull Requests -+ -+All tests must pass -+ -+Commits must be linted -+ -+A descriptive summary of the PR has been provided. -+ -+### Environment Variables -+ -+Some of the tests and features of this repository require environment variables to be set up. -+ -+Copy the .env.example file to create a .env and populate it with the appropriate environment values that you have control control -diff --git a/commitlint.config.js b/commitlint.config.js -new file mode 100644 -index 00000000..422b1944 ---- /dev/null -+++ b/commitlint.config.js -@@ -0,0 +1 @@ -+module.exports = { extends: ['@commitlint/config-conventional'] }; -diff --git a/package-lock.json b/package-lock.json -index c332c0be..b8c159c9 100644 ---- a/package-lock.json -+++ b/package-lock.json -@@ -12,17 +12,523 @@ - "solidity-docgen": "^0.6.0-beta.32" - }, - "devDependencies": { -+ "@commitlint/cli": "^18.2.0", -+ "@commitlint/config-conventional": "^18.1.0", - "@types/yargs": "^17.0.28", - "chalk": "^4.1.0", - "dotenv": "^16.3.1", - "fs": "^0.0.1-security", - "hardhat": "^2.12.4", - "hardhat-preprocessor": "^0.1.5", -+ "husky": "^8.0.3", - "ts-node": "^10.9.1", - "typescript": "^4.9.4", - "yargs": "^17.7.2" - } - }, -+ "node_modules/@babel/code-frame": { -+ "version": "7.22.13", -+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", -+ "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", -+ "dev": true, -+ "dependencies": { -+ "@babel/highlight": "^7.22.13", -+ "chalk": "^2.4.2" -+ }, -+ "engines": { -+ "node": ">=6.9.0" -+ } -+ }, -+ "node_modules/@babel/code-frame/node_modules/chalk": { -+ "version": "2.4.2", -+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", -+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", -+ "dev": true, -+ "dependencies": { -+ "ansi-styles": "^3.2.1", -+ "escape-string-regexp": "^1.0.5", -+ "supports-color": "^5.3.0" -+ }, -+ "engines": { -+ "node": ">=4" -+ } -+ }, -+ "node_modules/@babel/helper-validator-identifier": { -+ "version": "7.22.20", -+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", -+ "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", -+ "dev": true, -+ "engines": { -+ "node": ">=6.9.0" -+ } -+ }, -+ "node_modules/@babel/highlight": { -+ "version": "7.22.20", -+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", -+ "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", -+ "dev": true, -+ "dependencies": { -+ "@babel/helper-validator-identifier": "^7.22.20", -+ "chalk": "^2.4.2", -+ "js-tokens": "^4.0.0" -+ }, -+ "engines": { -+ "node": ">=6.9.0" -+ } -+ }, -+ "node_modules/@babel/highlight/node_modules/chalk": { -+ "version": "2.4.2", -+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", -+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", -+ "dev": true, -+ "dependencies": { -+ "ansi-styles": "^3.2.1", -+ "escape-string-regexp": "^1.0.5", -+ "supports-color": "^5.3.0" -+ }, -+ "engines": { -+ "node": ">=4" -+ } -+ }, -+ "node_modules/@commitlint/cli": { -+ "version": "18.2.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-18.2.0.tgz", -+ "integrity": "sha512-F/DCG791kMFmWg5eIdogakuGeg4OiI2kD430ed1a1Hh3epvrJdeIAgcGADAMIOmF+m0S1+VlIYUKG2dvQQ1Izw==", -+ "dev": true, -+ "dependencies": { -+ "@commitlint/format": "^18.1.0", -+ "@commitlint/lint": "^18.1.0", -+ "@commitlint/load": "^18.2.0", -+ "@commitlint/read": "^18.1.0", -+ "@commitlint/types": "^18.1.0", -+ "execa": "^5.0.0", -+ "lodash.isfunction": "^3.0.9", -+ "resolve-from": "5.0.0", -+ "resolve-global": "1.0.0", -+ "yargs": "^17.0.0" -+ }, -+ "bin": { -+ "commitlint": "cli.js" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/config-conventional": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-18.1.0.tgz", -+ "integrity": "sha512-8vvvtV3GOLEMHeKc8PjRL1lfP1Y4B6BG0WroFd9PJeRiOc3nFX1J0wlJenLURzl9Qus6YXVGWf+a/ZlbCKT3AA==", -+ "dev": true, -+ "dependencies": { -+ "conventional-changelog-conventionalcommits": "^7.0.2" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/config-validator": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-18.1.0.tgz", -+ "integrity": "sha512-kbHkIuItXn93o2NmTdwi5Mk1ujyuSIysRE/XHtrcps/27GuUKEIqBJp6TdJ4Sq+ze59RlzYSHMKuDKZbfg9+uQ==", -+ "dev": true, -+ "dependencies": { -+ "@commitlint/types": "^18.1.0", -+ "ajv": "^8.11.0" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/ensure": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-18.1.0.tgz", -+ "integrity": "sha512-CkPzJ9UBumIo54VDcpmBlaVX81J++wzEhN3DJH9+6PaLeiIG+gkSx8t7C2gfwG7PaiW4HzQtdQlBN5ab+c4vFQ==", -+ "dev": true, -+ "dependencies": { -+ "@commitlint/types": "^18.1.0", -+ "lodash.camelcase": "^4.3.0", -+ "lodash.kebabcase": "^4.1.1", -+ "lodash.snakecase": "^4.1.1", -+ "lodash.startcase": "^4.4.0", -+ "lodash.upperfirst": "^4.3.1" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/execute-rule": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-18.1.0.tgz", -+ "integrity": "sha512-w3Vt4K+O7+nSr9/gFSEfZ1exKUOPSlJaRpnk7Y+XowEhvwT7AIk1HNANH+gETf0zGZ020+hfiMW/Ome+SNCUsg==", -+ "dev": true, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/format": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-18.1.0.tgz", -+ "integrity": "sha512-So/w217tGWMZZb1yXcUFNF2qFLyYtSVqbnGoMbX8a+JKcG4oB11Gc1adS0ssUOMivtiNpaLtkSHFynyiwtJtiQ==", -+ "dev": true, -+ "dependencies": { -+ "@commitlint/types": "^18.1.0", -+ "chalk": "^4.1.0" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/is-ignored": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-18.1.0.tgz", -+ "integrity": "sha512-fa1fY93J/Nx2GH6r6WOLdBOiL7x9Uc1N7wcpmaJ1C5Qs6P+rPSUTkofe2IOhSJIJoboHfAH6W0ru4xtK689t0Q==", -+ "dev": true, -+ "dependencies": { -+ "@commitlint/types": "^18.1.0", -+ "semver": "7.5.4" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/is-ignored/node_modules/lru-cache": { -+ "version": "6.0.0", -+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", -+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", -+ "dev": true, -+ "dependencies": { -+ "yallist": "^4.0.0" -+ }, -+ "engines": { -+ "node": ">=10" -+ } -+ }, -+ "node_modules/@commitlint/is-ignored/node_modules/semver": { -+ "version": "7.5.4", -+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", -+ "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", -+ "dev": true, -+ "dependencies": { -+ "lru-cache": "^6.0.0" -+ }, -+ "bin": { -+ "semver": "bin/semver.js" -+ }, -+ "engines": { -+ "node": ">=10" -+ } -+ }, -+ "node_modules/@commitlint/is-ignored/node_modules/yallist": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", -+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", -+ "dev": true -+ }, -+ "node_modules/@commitlint/lint": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-18.1.0.tgz", -+ "integrity": "sha512-LGB3eI5UYu5LLayibNrRM4bSbowr1z9uyqvp0c7+0KaSJi+xHxy/QEhb6fy4bMAtbXEvygY0sUu9HxSWg41rVQ==", -+ "dev": true, -+ "dependencies": { -+ "@commitlint/is-ignored": "^18.1.0", -+ "@commitlint/parse": "^18.1.0", -+ "@commitlint/rules": "^18.1.0", -+ "@commitlint/types": "^18.1.0" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/load": { -+ "version": "18.2.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-18.2.0.tgz", -+ "integrity": "sha512-xjX3d3CRlOALwImhOsmLYZh14/+gW/KxsY7+bPKrzmGuFailf9K7ckhB071oYZVJdACnpY4hDYiosFyOC+MpAA==", -+ "dev": true, -+ "dependencies": { -+ "@commitlint/config-validator": "^18.1.0", -+ "@commitlint/execute-rule": "^18.1.0", -+ "@commitlint/resolve-extends": "^18.1.0", -+ "@commitlint/types": "^18.1.0", -+ "@types/node": "^18.11.9", -+ "chalk": "^4.1.0", -+ "cosmiconfig": "^8.0.0", -+ "cosmiconfig-typescript-loader": "^5.0.0", -+ "lodash.isplainobject": "^4.0.6", -+ "lodash.merge": "^4.6.2", -+ "lodash.uniq": "^4.5.0", -+ "resolve-from": "^5.0.0" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/load/node_modules/cosmiconfig": { -+ "version": "8.3.6", -+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", -+ "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", -+ "dev": true, -+ "dependencies": { -+ "import-fresh": "^3.3.0", -+ "js-yaml": "^4.1.0", -+ "parse-json": "^5.2.0", -+ "path-type": "^4.0.0" -+ }, -+ "engines": { -+ "node": ">=14" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/d-fischer" -+ }, -+ "peerDependencies": { -+ "typescript": ">=4.9.5" -+ }, -+ "peerDependenciesMeta": { -+ "typescript": { -+ "optional": true -+ } -+ } -+ }, -+ "node_modules/@commitlint/load/node_modules/cosmiconfig-typescript-loader": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-5.0.0.tgz", -+ "integrity": "sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA==", -+ "dev": true, -+ "dependencies": { -+ "jiti": "^1.19.1" -+ }, -+ "engines": { -+ "node": ">=v16" -+ }, -+ "peerDependencies": { -+ "@types/node": "*", -+ "cosmiconfig": ">=8.2", -+ "typescript": ">=4" -+ } -+ }, -+ "node_modules/@commitlint/load/node_modules/typescript": { -+ "version": "5.2.2", -+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", -+ "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", -+ "dev": true, -+ "peer": true, -+ "bin": { -+ "tsc": "bin/tsc", -+ "tsserver": "bin/tsserver" -+ }, -+ "engines": { -+ "node": ">=14.17" -+ } -+ }, -+ "node_modules/@commitlint/message": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-18.1.0.tgz", -+ "integrity": "sha512-8dT/jJg73wf3o2Mut/fqEDTpBYSIEVtX5PWyuY/0uviEYeheZAczFo/VMIkeGzhJJn1IrcvAwWsvJ1lVGY2I/w==", -+ "dev": true, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/parse": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-18.1.0.tgz", -+ "integrity": "sha512-23yv8uBweXWYn8bXk4PjHIsmVA+RkbqPh2h7irupBo2LthVlzMRc4LM6UStasScJ4OlXYYaWOmuP7jcExUF50Q==", -+ "dev": true, -+ "dependencies": { -+ "@commitlint/types": "^18.1.0", -+ "conventional-changelog-angular": "^6.0.0", -+ "conventional-commits-parser": "^5.0.0" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/read": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-18.1.0.tgz", -+ "integrity": "sha512-rzfzoKUwxmvYO81tI5o1371Nwt3vhcQR36oTNfupPdU1jgSL3nzBIS3B93LcZh3IYKbCIMyMPN5WZ10BXdeoUg==", -+ "dev": true, -+ "dependencies": { -+ "@commitlint/top-level": "^18.1.0", -+ "@commitlint/types": "^18.1.0", -+ "fs-extra": "^11.0.0", -+ "git-raw-commits": "^2.0.11", -+ "minimist": "^1.2.6" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/read/node_modules/fs-extra": { -+ "version": "11.1.1", -+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", -+ "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", -+ "dev": true, -+ "dependencies": { -+ "graceful-fs": "^4.2.0", -+ "jsonfile": "^6.0.1", -+ "universalify": "^2.0.0" -+ }, -+ "engines": { -+ "node": ">=14.14" -+ } -+ }, -+ "node_modules/@commitlint/read/node_modules/jsonfile": { -+ "version": "6.1.0", -+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", -+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", -+ "dev": true, -+ "dependencies": { -+ "universalify": "^2.0.0" -+ }, -+ "optionalDependencies": { -+ "graceful-fs": "^4.1.6" -+ } -+ }, -+ "node_modules/@commitlint/read/node_modules/universalify": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", -+ "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", -+ "dev": true, -+ "engines": { -+ "node": ">= 10.0.0" -+ } -+ }, -+ "node_modules/@commitlint/resolve-extends": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-18.1.0.tgz", -+ "integrity": "sha512-3mZpzOEJkELt7BbaZp6+bofJyxViyObebagFn0A7IHaLARhPkWTivXdjvZHS12nAORftv88Yhbh8eCPKfSvB7g==", -+ "dev": true, -+ "dependencies": { -+ "@commitlint/config-validator": "^18.1.0", -+ "@commitlint/types": "^18.1.0", -+ "import-fresh": "^3.0.0", -+ "lodash.mergewith": "^4.6.2", -+ "resolve-from": "^5.0.0", -+ "resolve-global": "^1.0.0" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/rules": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-18.1.0.tgz", -+ "integrity": "sha512-VJNQ674CRv4znI0DbsjZLVnn647J+BTxHGcrDIsYv7c99gW7TUGeIe5kL80G7l8+5+N0se8v9yn+Prr8xEy6Yw==", -+ "dev": true, -+ "dependencies": { -+ "@commitlint/ensure": "^18.1.0", -+ "@commitlint/message": "^18.1.0", -+ "@commitlint/to-lines": "^18.1.0", -+ "@commitlint/types": "^18.1.0", -+ "execa": "^5.0.0" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/to-lines": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-18.1.0.tgz", -+ "integrity": "sha512-aHIoSDjG0ckxPLYDpODUeSLbEKmF6Jrs1B5JIssbbE9eemBtXtjm9yzdiAx9ZXcwoHlhbTp2fbndDb3YjlvJag==", -+ "dev": true, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/top-level": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-18.1.0.tgz", -+ "integrity": "sha512-1/USHlolIxJlsfLKecSXH+6PDojIvnzaJGPYwF7MtnTuuXCNQ4izkeqDsRuNMe9nU2VIKpK9OT8Q412kGNmgGw==", -+ "dev": true, -+ "dependencies": { -+ "find-up": "^5.0.0" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, -+ "node_modules/@commitlint/top-level/node_modules/find-up": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", -+ "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", -+ "dev": true, -+ "dependencies": { -+ "locate-path": "^6.0.0", -+ "path-exists": "^4.0.0" -+ }, -+ "engines": { -+ "node": ">=10" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/@commitlint/top-level/node_modules/locate-path": { -+ "version": "6.0.0", -+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", -+ "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", -+ "dev": true, -+ "dependencies": { -+ "p-locate": "^5.0.0" -+ }, -+ "engines": { -+ "node": ">=10" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/@commitlint/top-level/node_modules/p-limit": { -+ "version": "3.1.0", -+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", -+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", -+ "dev": true, -+ "dependencies": { -+ "yocto-queue": "^0.1.0" -+ }, -+ "engines": { -+ "node": ">=10" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/@commitlint/top-level/node_modules/p-locate": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", -+ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", -+ "dev": true, -+ "dependencies": { -+ "p-limit": "^3.0.2" -+ }, -+ "engines": { -+ "node": ">=10" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/@commitlint/top-level/node_modules/path-exists": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", -+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, -+ "node_modules/@commitlint/types": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-18.1.0.tgz", -+ "integrity": "sha512-65vGxZmbs+2OVwEItxhp3Ul7X2m2LyLfifYI/NdPwRqblmuES2w2aIRhIjb7cwUIBHHSTT8WXj4ixVHQibmvLQ==", -+ "dev": true, -+ "dependencies": { -+ "chalk": "^4.1.0" -+ }, -+ "engines": { -+ "node": ">=v18" -+ } -+ }, - "node_modules/@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", -@@ -1190,11 +1696,23 @@ - "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==" - }, -+ "node_modules/@types/minimist": { -+ "version": "1.2.4", -+ "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.4.tgz", -+ "integrity": "sha512-Kfe/D3hxHTusnPNRbycJE1N77WHDsdS4AjUYIzlDzhDrS47NrwuL3YW4VITxwR7KCVpzwgy4Rbj829KSSQmwXQ==", -+ "dev": true -+ }, - "node_modules/@types/node": { - "version": "18.11.17", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.17.tgz", - "integrity": "sha512-HJSUJmni4BeDHhfzn6nF0sVmd1SMezP7/4F0Lq+aXzmp2xm9O7WXrUtHW/CHlYVtZUbByEvWidHqRtcJXGF2Ng==" - }, -+ "node_modules/@types/normalize-package-data": { -+ "version": "2.4.3", -+ "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.3.tgz", -+ "integrity": "sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg==", -+ "dev": true -+ }, - "node_modules/@types/pbkdf2": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", -@@ -1306,6 +1824,22 @@ - "node": ">=8" - } - }, -+ "node_modules/ajv": { -+ "version": "8.12.0", -+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", -+ "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", -+ "dev": true, -+ "dependencies": { -+ "fast-deep-equal": "^3.1.1", -+ "json-schema-traverse": "^1.0.0", -+ "require-from-string": "^2.0.2", -+ "uri-js": "^4.2.2" -+ }, -+ "funding": { -+ "type": "github", -+ "url": "https://github.com/sponsors/epoberezkin" -+ } -+ }, - "node_modules/ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", -@@ -1370,6 +1904,21 @@ - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, -+ "node_modules/array-ify": { -+ "version": "1.0.0", -+ "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", -+ "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", -+ "dev": true -+ }, -+ "node_modules/arrify": { -+ "version": "1.0.1", -+ "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", -+ "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", -+ "dev": true, -+ "engines": { -+ "node": ">=0.10.0" -+ } -+ }, - "node_modules/async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", -@@ -1591,6 +2140,15 @@ - "url": "https://github.com/sponsors/ljharb" - } - }, -+ "node_modules/callsites": { -+ "version": "3.1.0", -+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", -+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", -+ "dev": true, -+ "engines": { -+ "node": ">=6" -+ } -+ }, - "node_modules/camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", -@@ -1602,6 +2160,32 @@ - "url": "https://github.com/sponsors/sindresorhus" - } - }, -+ "node_modules/camelcase-keys": { -+ "version": "6.2.2", -+ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", -+ "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", -+ "dev": true, -+ "dependencies": { -+ "camelcase": "^5.3.1", -+ "map-obj": "^4.0.0", -+ "quick-lru": "^4.0.1" -+ }, -+ "engines": { -+ "node": ">=8" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/camelcase-keys/node_modules/camelcase": { -+ "version": "5.3.1", -+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", -+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", -+ "dev": true, -+ "engines": { -+ "node": ">=6" -+ } -+ }, - "node_modules/catering": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/catering/-/catering-2.1.1.tgz", -@@ -1775,10 +2359,62 @@ - "resolved": "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz", - "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==" - }, -- "node_modules/concat-map": { -- "version": "0.0.1", -- "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", -- "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" -+ "node_modules/compare-func": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", -+ "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", -+ "dev": true, -+ "dependencies": { -+ "array-ify": "^1.0.0", -+ "dot-prop": "^5.1.0" -+ } -+ }, -+ "node_modules/concat-map": { -+ "version": "0.0.1", -+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", -+ "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" -+ }, -+ "node_modules/conventional-changelog-angular": { -+ "version": "6.0.0", -+ "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-6.0.0.tgz", -+ "integrity": "sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==", -+ "dev": true, -+ "dependencies": { -+ "compare-func": "^2.0.0" -+ }, -+ "engines": { -+ "node": ">=14" -+ } -+ }, -+ "node_modules/conventional-changelog-conventionalcommits": { -+ "version": "7.0.2", -+ "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-7.0.2.tgz", -+ "integrity": "sha512-NKXYmMR/Hr1DevQegFB4MwfM5Vv0m4UIxKZTTYuD98lpTknaZlSRrDOG4X7wIXpGkfsYxZTghUN+Qq+T0YQI7w==", -+ "dev": true, -+ "dependencies": { -+ "compare-func": "^2.0.0" -+ }, -+ "engines": { -+ "node": ">=16" -+ } -+ }, -+ "node_modules/conventional-commits-parser": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", -+ "integrity": "sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==", -+ "dev": true, -+ "dependencies": { -+ "is-text-path": "^2.0.0", -+ "JSONStream": "^1.3.5", -+ "meow": "^12.0.1", -+ "split2": "^4.0.0" -+ }, -+ "bin": { -+ "conventional-commits-parser": "cli.mjs" -+ }, -+ "engines": { -+ "node": ">=16" -+ } - }, - "node_modules/cookie": { - "version": "0.4.2", -@@ -1830,6 +2466,29 @@ - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "devOptional": true - }, -+ "node_modules/cross-spawn": { -+ "version": "7.0.3", -+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", -+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", -+ "dev": true, -+ "dependencies": { -+ "path-key": "^3.1.0", -+ "shebang-command": "^2.0.0", -+ "which": "^2.0.1" -+ }, -+ "engines": { -+ "node": ">= 8" -+ } -+ }, -+ "node_modules/dargs": { -+ "version": "7.0.0", -+ "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", -+ "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", -@@ -1857,6 +2516,40 @@ - "url": "https://github.com/sponsors/sindresorhus" - } - }, -+ "node_modules/decamelize-keys": { -+ "version": "1.1.1", -+ "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", -+ "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", -+ "dev": true, -+ "dependencies": { -+ "decamelize": "^1.1.0", -+ "map-obj": "^1.0.0" -+ }, -+ "engines": { -+ "node": ">=0.10.0" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/decamelize-keys/node_modules/decamelize": { -+ "version": "1.2.0", -+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", -+ "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", -+ "dev": true, -+ "engines": { -+ "node": ">=0.10.0" -+ } -+ }, -+ "node_modules/decamelize-keys/node_modules/map-obj": { -+ "version": "1.0.1", -+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", -+ "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", -+ "dev": true, -+ "engines": { -+ "node": ">=0.10.0" -+ } -+ }, - "node_modules/depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", -@@ -1873,6 +2566,18 @@ - "node": ">=0.3.1" - } - }, -+ "node_modules/dot-prop": { -+ "version": "5.3.0", -+ "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", -+ "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", -+ "dev": true, -+ "dependencies": { -+ "is-obj": "^2.0.0" -+ }, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", -@@ -1934,6 +2639,15 @@ - "node": ">=6" - } - }, -+ "node_modules/error-ex": { -+ "version": "1.3.2", -+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", -+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", -+ "dev": true, -+ "dependencies": { -+ "is-arrayish": "^0.2.1" -+ } -+ }, - "node_modules/escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", -@@ -2054,6 +2768,35 @@ - "safe-buffer": "^5.1.1" - } - }, -+ "node_modules/execa": { -+ "version": "5.1.1", -+ "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", -+ "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", -+ "dev": true, -+ "dependencies": { -+ "cross-spawn": "^7.0.3", -+ "get-stream": "^6.0.0", -+ "human-signals": "^2.1.0", -+ "is-stream": "^2.0.0", -+ "merge-stream": "^2.0.0", -+ "npm-run-path": "^4.0.1", -+ "onetime": "^5.1.2", -+ "signal-exit": "^3.0.3", -+ "strip-final-newline": "^2.0.0" -+ }, -+ "engines": { -+ "node": ">=10" -+ }, -+ "funding": { -+ "url": "https://github.com/sindresorhus/execa?sponsor=1" -+ } -+ }, -+ "node_modules/fast-deep-equal": { -+ "version": "3.1.3", -+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", -+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", -+ "dev": true -+ }, - "node_modules/fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", -@@ -2155,9 +2898,12 @@ - } - }, - "node_modules/function-bind": { -- "version": "1.1.1", -- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", -- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" -+ "version": "1.1.2", -+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", -+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", -+ "funding": { -+ "url": "https://github.com/sponsors/ljharb" -+ } - }, - "node_modules/functional-red-black-tree": { - "version": "1.0.1", -@@ -2185,6 +2931,83 @@ - "url": "https://github.com/sponsors/ljharb" - } - }, -+ "node_modules/get-stream": { -+ "version": "6.0.1", -+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", -+ "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", -+ "dev": true, -+ "engines": { -+ "node": ">=10" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/git-raw-commits": { -+ "version": "2.0.11", -+ "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz", -+ "integrity": "sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==", -+ "dev": true, -+ "dependencies": { -+ "dargs": "^7.0.0", -+ "lodash": "^4.17.15", -+ "meow": "^8.0.0", -+ "split2": "^3.0.0", -+ "through2": "^4.0.0" -+ }, -+ "bin": { -+ "git-raw-commits": "cli.js" -+ }, -+ "engines": { -+ "node": ">=10" -+ } -+ }, -+ "node_modules/git-raw-commits/node_modules/meow": { -+ "version": "8.1.2", -+ "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", -+ "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", -+ "dev": true, -+ "dependencies": { -+ "@types/minimist": "^1.2.0", -+ "camelcase-keys": "^6.2.2", -+ "decamelize-keys": "^1.1.0", -+ "hard-rejection": "^2.1.0", -+ "minimist-options": "4.1.0", -+ "normalize-package-data": "^3.0.0", -+ "read-pkg-up": "^7.0.1", -+ "redent": "^3.0.0", -+ "trim-newlines": "^3.0.0", -+ "type-fest": "^0.18.0", -+ "yargs-parser": "^20.2.3" -+ }, -+ "engines": { -+ "node": ">=10" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/git-raw-commits/node_modules/split2": { -+ "version": "3.2.2", -+ "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", -+ "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", -+ "dev": true, -+ "dependencies": { -+ "readable-stream": "^3.0.0" -+ } -+ }, -+ "node_modules/git-raw-commits/node_modules/type-fest": { -+ "version": "0.18.1", -+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", -+ "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", -+ "dev": true, -+ "engines": { -+ "node": ">=10" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, - "node_modules/glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", -@@ -2215,6 +3038,18 @@ - "node": ">= 6" - } - }, -+ "node_modules/global-dirs": { -+ "version": "0.1.1", -+ "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", -+ "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", -+ "dev": true, -+ "dependencies": { -+ "ini": "^1.3.4" -+ }, -+ "engines": { -+ "node": ">=4" -+ } -+ }, - "node_modules/graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", -@@ -2240,6 +3075,15 @@ - "uglify-js": "^3.1.4" - } - }, -+ "node_modules/hard-rejection": { -+ "version": "2.1.0", -+ "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", -+ "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", -+ "dev": true, -+ "engines": { -+ "node": ">=6" -+ } -+ }, - "node_modules/hardhat": { - "version": "2.12.4", - "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.12.4.tgz", -@@ -2392,6 +3236,18 @@ - "minimalistic-assert": "^1.0.1" - } - }, -+ "node_modules/hasown": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", -+ "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", -+ "dev": true, -+ "dependencies": { -+ "function-bind": "^1.1.2" -+ }, -+ "engines": { -+ "node": ">= 0.4" -+ } -+ }, - "node_modules/he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", -@@ -2410,6 +3266,36 @@ - "minimalistic-crypto-utils": "^1.0.1" - } - }, -+ "node_modules/hosted-git-info": { -+ "version": "4.1.0", -+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", -+ "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", -+ "dev": true, -+ "dependencies": { -+ "lru-cache": "^6.0.0" -+ }, -+ "engines": { -+ "node": ">=10" -+ } -+ }, -+ "node_modules/hosted-git-info/node_modules/lru-cache": { -+ "version": "6.0.0", -+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", -+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", -+ "dev": true, -+ "dependencies": { -+ "yallist": "^4.0.0" -+ }, -+ "engines": { -+ "node": ">=10" -+ } -+ }, -+ "node_modules/hosted-git-info/node_modules/yallist": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", -+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", -+ "dev": true -+ }, - "node_modules/http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", -@@ -2437,6 +3323,30 @@ - "node": ">= 6" - } - }, -+ "node_modules/human-signals": { -+ "version": "2.1.0", -+ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", -+ "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", -+ "dev": true, -+ "engines": { -+ "node": ">=10.17.0" -+ } -+ }, -+ "node_modules/husky": { -+ "version": "8.0.3", -+ "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", -+ "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", -+ "dev": true, -+ "bin": { -+ "husky": "lib/bin.js" -+ }, -+ "engines": { -+ "node": ">=14" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/typicode" -+ } -+ }, - "node_modules/iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", -@@ -2472,6 +3382,31 @@ - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.0.tgz", - "integrity": "sha512-h4ujZ0OZ3kpvdFcwJAHXEdvawH7J8TYTB62e8xI03OSZhuGpuPY9DPXnonMN8s+uQ56gMUqMK71mXU8ob20xfA==" - }, -+ "node_modules/import-fresh": { -+ "version": "3.3.0", -+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", -+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", -+ "dev": true, -+ "dependencies": { -+ "parent-module": "^1.0.0", -+ "resolve-from": "^4.0.0" -+ }, -+ "engines": { -+ "node": ">=6" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/import-fresh/node_modules/resolve-from": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", -+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", -+ "dev": true, -+ "engines": { -+ "node": ">=4" -+ } -+ }, - "node_modules/imul": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/imul/-/imul-1.0.1.tgz", -@@ -2503,6 +3438,12 @@ - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, -+ "node_modules/ini": { -+ "version": "1.3.8", -+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", -+ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", -+ "dev": true -+ }, - "node_modules/io-ts": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-1.10.4.tgz", -@@ -2511,6 +3452,12 @@ - "fp-ts": "^1.0.0" - } - }, -+ "node_modules/is-arrayish": { -+ "version": "0.2.1", -+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", -+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", -+ "dev": true -+ }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", -@@ -2544,6 +3491,18 @@ - "node": ">=4" - } - }, -+ "node_modules/is-core-module": { -+ "version": "2.13.1", -+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", -+ "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", -+ "dev": true, -+ "dependencies": { -+ "hasown": "^2.0.0" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/ljharb" -+ } -+ }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", -@@ -2588,6 +3547,15 @@ - "node": ">=0.12.0" - } - }, -+ "node_modules/is-obj": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", -+ "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", -@@ -2596,6 +3564,30 @@ - "node": ">=8" - } - }, -+ "node_modules/is-stream": { -+ "version": "2.0.1", -+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", -+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/is-text-path": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-2.0.0.tgz", -+ "integrity": "sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==", -+ "dev": true, -+ "dependencies": { -+ "text-extensions": "^2.0.0" -+ }, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", -@@ -2607,11 +3599,32 @@ - "url": "https://github.com/sponsors/sindresorhus" - } - }, -+ "node_modules/isexe": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", -+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", -+ "dev": true -+ }, -+ "node_modules/jiti": { -+ "version": "1.20.0", -+ "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.20.0.tgz", -+ "integrity": "sha512-3TV69ZbrvV6U5DfQimop50jE9Dl6J8O1ja1dvBbMba/sZ3YBEQqJ2VZRoQPVnhlzjNtU1vaXRZVrVjU4qtm8yA==", -+ "dev": true, -+ "bin": { -+ "jiti": "bin/jiti.js" -+ } -+ }, - "node_modules/js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" - }, -+ "node_modules/js-tokens": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", -+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", -+ "dev": true -+ }, - "node_modules/js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", -@@ -2623,6 +3636,18 @@ - "js-yaml": "bin/js-yaml.js" - } - }, -+ "node_modules/json-parse-even-better-errors": { -+ "version": "2.3.1", -+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", -+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", -+ "dev": true -+ }, -+ "node_modules/json-schema-traverse": { -+ "version": "1.0.0", -+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", -+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", -+ "dev": true -+ }, - "node_modules/jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", -@@ -2631,6 +3656,31 @@ - "graceful-fs": "^4.1.6" - } - }, -+ "node_modules/jsonparse": { -+ "version": "1.3.1", -+ "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", -+ "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", -+ "dev": true, -+ "engines": [ -+ "node >= 0.2.0" -+ ] -+ }, -+ "node_modules/JSONStream": { -+ "version": "1.3.5", -+ "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", -+ "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", -+ "dev": true, -+ "dependencies": { -+ "jsonparse": "^1.2.0", -+ "through": ">=2.2.7 <3" -+ }, -+ "bin": { -+ "JSONStream": "bin.js" -+ }, -+ "engines": { -+ "node": "*" -+ } -+ }, - "node_modules/keccak": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", -@@ -2645,6 +3695,15 @@ - "node": ">=10.0.0" - } - }, -+ "node_modules/kind-of": { -+ "version": "6.0.3", -+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", -+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", -+ "dev": true, -+ "engines": { -+ "node": ">=0.10.0" -+ } -+ }, - "node_modules/klaw": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", -@@ -2689,6 +3748,12 @@ - "node": ">=12" - } - }, -+ "node_modules/lines-and-columns": { -+ "version": "1.2.4", -+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", -+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", -+ "dev": true -+ }, - "node_modules/locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", -@@ -2706,6 +3771,66 @@ - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, -+ "node_modules/lodash.camelcase": { -+ "version": "4.3.0", -+ "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", -+ "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", -+ "dev": true -+ }, -+ "node_modules/lodash.isfunction": { -+ "version": "3.0.9", -+ "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz", -+ "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==", -+ "dev": true -+ }, -+ "node_modules/lodash.isplainobject": { -+ "version": "4.0.6", -+ "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", -+ "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", -+ "dev": true -+ }, -+ "node_modules/lodash.kebabcase": { -+ "version": "4.1.1", -+ "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", -+ "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==", -+ "dev": true -+ }, -+ "node_modules/lodash.merge": { -+ "version": "4.6.2", -+ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", -+ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", -+ "dev": true -+ }, -+ "node_modules/lodash.mergewith": { -+ "version": "4.6.2", -+ "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz", -+ "integrity": "sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==", -+ "dev": true -+ }, -+ "node_modules/lodash.snakecase": { -+ "version": "4.1.1", -+ "resolved": "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz", -+ "integrity": "sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==", -+ "dev": true -+ }, -+ "node_modules/lodash.startcase": { -+ "version": "4.4.0", -+ "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", -+ "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==", -+ "dev": true -+ }, -+ "node_modules/lodash.uniq": { -+ "version": "4.5.0", -+ "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", -+ "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", -+ "dev": true -+ }, -+ "node_modules/lodash.upperfirst": { -+ "version": "4.3.1", -+ "resolved": "https://registry.npmjs.org/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz", -+ "integrity": "sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==", -+ "dev": true -+ }, - "node_modules/log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", -@@ -2740,6 +3865,18 @@ - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "devOptional": true - }, -+ "node_modules/map-obj": { -+ "version": "4.3.0", -+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", -+ "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, - "node_modules/mcl-wasm": { - "version": "0.7.9", - "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-0.7.9.tgz", -@@ -2779,6 +3916,42 @@ - "node": ">= 0.10.0" - } - }, -+ "node_modules/meow": { -+ "version": "12.1.1", -+ "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", -+ "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", -+ "dev": true, -+ "engines": { -+ "node": ">=16.10" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/merge-stream": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", -+ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", -+ "dev": true -+ }, -+ "node_modules/mimic-fn": { -+ "version": "2.1.0", -+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", -+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", -+ "dev": true, -+ "engines": { -+ "node": ">=6" -+ } -+ }, -+ "node_modules/min-indent": { -+ "version": "1.0.1", -+ "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", -+ "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", -+ "dev": true, -+ "engines": { -+ "node": ">=4" -+ } -+ }, - "node_modules/minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", -@@ -2808,6 +3981,29 @@ - "url": "https://github.com/sponsors/ljharb" - } - }, -+ "node_modules/minimist-options": { -+ "version": "4.1.0", -+ "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", -+ "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", -+ "dev": true, -+ "dependencies": { -+ "arrify": "^1.0.1", -+ "is-plain-obj": "^1.1.0", -+ "kind-of": "^6.0.3" -+ }, -+ "engines": { -+ "node": ">= 6" -+ } -+ }, -+ "node_modules/minimist-options/node_modules/is-plain-obj": { -+ "version": "1.1.0", -+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", -+ "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", -+ "dev": true, -+ "engines": { -+ "node": ">=0.10.0" -+ } -+ }, - "node_modules/mnemonist": { - "version": "0.38.5", - "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.5.tgz", -@@ -3072,6 +4268,54 @@ - "node-gyp-build-test": "build-test.js" - } - }, -+ "node_modules/normalize-package-data": { -+ "version": "3.0.3", -+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", -+ "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", -+ "dev": true, -+ "dependencies": { -+ "hosted-git-info": "^4.0.1", -+ "is-core-module": "^2.5.0", -+ "semver": "^7.3.4", -+ "validate-npm-package-license": "^3.0.1" -+ }, -+ "engines": { -+ "node": ">=10" -+ } -+ }, -+ "node_modules/normalize-package-data/node_modules/lru-cache": { -+ "version": "6.0.0", -+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", -+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", -+ "dev": true, -+ "dependencies": { -+ "yallist": "^4.0.0" -+ }, -+ "engines": { -+ "node": ">=10" -+ } -+ }, -+ "node_modules/normalize-package-data/node_modules/semver": { -+ "version": "7.5.4", -+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", -+ "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", -+ "dev": true, -+ "dependencies": { -+ "lru-cache": "^6.0.0" -+ }, -+ "bin": { -+ "semver": "bin/semver.js" -+ }, -+ "engines": { -+ "node": ">=10" -+ } -+ }, -+ "node_modules/normalize-package-data/node_modules/yallist": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", -+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", -+ "dev": true -+ }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", -@@ -3080,6 +4324,18 @@ - "node": ">=0.10.0" - } - }, -+ "node_modules/npm-run-path": { -+ "version": "4.0.1", -+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", -+ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", -+ "dev": true, -+ "dependencies": { -+ "path-key": "^3.0.0" -+ }, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", -@@ -3101,6 +4357,21 @@ - "wrappy": "1" - } - }, -+ "node_modules/onetime": { -+ "version": "5.1.2", -+ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", -+ "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", -+ "dev": true, -+ "dependencies": { -+ "mimic-fn": "^2.1.0" -+ }, -+ "engines": { -+ "node": ">=6" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, - "node_modules/os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", -@@ -3153,6 +4424,36 @@ - "node": ">=4" - } - }, -+ "node_modules/parent-module": { -+ "version": "1.0.1", -+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", -+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", -+ "dev": true, -+ "dependencies": { -+ "callsites": "^3.0.0" -+ }, -+ "engines": { -+ "node": ">=6" -+ } -+ }, -+ "node_modules/parse-json": { -+ "version": "5.2.0", -+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", -+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", -+ "dev": true, -+ "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" -+ }, -+ "engines": { -+ "node": ">=8" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, - "node_modules/path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", -@@ -3169,11 +4470,29 @@ - "node": ">=0.10.0" - } - }, -+ "node_modules/path-key": { -+ "version": "3.1.1", -+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", -+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - }, -+ "node_modules/path-type": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", -+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", -@@ -3200,6 +4519,15 @@ - "url": "https://github.com/sponsors/jonschlinkert" - } - }, -+ "node_modules/punycode": { -+ "version": "2.3.0", -+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", -+ "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", -+ "dev": true, -+ "engines": { -+ "node": ">=6" -+ } -+ }, - "node_modules/qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", -@@ -3233,6 +4561,15 @@ - } - ] - }, -+ "node_modules/quick-lru": { -+ "version": "4.0.1", -+ "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", -+ "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", -@@ -3255,6 +4592,153 @@ - "node": ">= 0.8" - } - }, -+ "node_modules/read-pkg": { -+ "version": "5.2.0", -+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", -+ "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", -+ "dev": true, -+ "dependencies": { -+ "@types/normalize-package-data": "^2.4.0", -+ "normalize-package-data": "^2.5.0", -+ "parse-json": "^5.0.0", -+ "type-fest": "^0.6.0" -+ }, -+ "engines": { -+ "node": ">=8" -+ } -+ }, -+ "node_modules/read-pkg-up": { -+ "version": "7.0.1", -+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", -+ "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", -+ "dev": true, -+ "dependencies": { -+ "find-up": "^4.1.0", -+ "read-pkg": "^5.2.0", -+ "type-fest": "^0.8.1" -+ }, -+ "engines": { -+ "node": ">=8" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/read-pkg-up/node_modules/find-up": { -+ "version": "4.1.0", -+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", -+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", -+ "dev": true, -+ "dependencies": { -+ "locate-path": "^5.0.0", -+ "path-exists": "^4.0.0" -+ }, -+ "engines": { -+ "node": ">=8" -+ } -+ }, -+ "node_modules/read-pkg-up/node_modules/locate-path": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", -+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", -+ "dev": true, -+ "dependencies": { -+ "p-locate": "^4.1.0" -+ }, -+ "engines": { -+ "node": ">=8" -+ } -+ }, -+ "node_modules/read-pkg-up/node_modules/p-limit": { -+ "version": "2.3.0", -+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", -+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", -+ "dev": true, -+ "dependencies": { -+ "p-try": "^2.0.0" -+ }, -+ "engines": { -+ "node": ">=6" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/read-pkg-up/node_modules/p-locate": { -+ "version": "4.1.0", -+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", -+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", -+ "dev": true, -+ "dependencies": { -+ "p-limit": "^2.2.0" -+ }, -+ "engines": { -+ "node": ">=8" -+ } -+ }, -+ "node_modules/read-pkg-up/node_modules/p-try": { -+ "version": "2.2.0", -+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", -+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", -+ "dev": true, -+ "engines": { -+ "node": ">=6" -+ } -+ }, -+ "node_modules/read-pkg-up/node_modules/path-exists": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", -+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, -+ "node_modules/read-pkg-up/node_modules/type-fest": { -+ "version": "0.8.1", -+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", -+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, -+ "node_modules/read-pkg/node_modules/hosted-git-info": { -+ "version": "2.8.9", -+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", -+ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", -+ "dev": true -+ }, -+ "node_modules/read-pkg/node_modules/normalize-package-data": { -+ "version": "2.5.0", -+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", -+ "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", -+ "dev": true, -+ "dependencies": { -+ "hosted-git-info": "^2.1.4", -+ "resolve": "^1.10.0", -+ "semver": "2 || 3 || 4 || 5", -+ "validate-npm-package-license": "^3.0.1" -+ } -+ }, -+ "node_modules/read-pkg/node_modules/semver": { -+ "version": "5.7.2", -+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", -+ "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", -+ "dev": true, -+ "bin": { -+ "semver": "bin/semver" -+ } -+ }, -+ "node_modules/read-pkg/node_modules/type-fest": { -+ "version": "0.6.0", -+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", -+ "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", -@@ -3279,6 +4763,19 @@ - "node": ">=8.10.0" - } - }, -+ "node_modules/redent": { -+ "version": "3.0.0", -+ "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", -+ "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", -+ "dev": true, -+ "dependencies": { -+ "indent-string": "^4.0.0", -+ "strip-indent": "^3.0.0" -+ }, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", -@@ -3306,6 +4803,27 @@ - "url": "https://github.com/sponsors/ljharb" - } - }, -+ "node_modules/resolve-from": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", -+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, -+ "node_modules/resolve-global": { -+ "version": "1.0.0", -+ "resolved": "https://registry.npmjs.org/resolve-global/-/resolve-global-1.0.0.tgz", -+ "integrity": "sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==", -+ "dev": true, -+ "dependencies": { -+ "global-dirs": "^0.1.1" -+ }, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", -@@ -3445,6 +4963,27 @@ - "sha.js": "bin.js" - } - }, -+ "node_modules/shebang-command": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", -+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", -+ "dev": true, -+ "dependencies": { -+ "shebang-regex": "^3.0.0" -+ }, -+ "engines": { -+ "node": ">=8" -+ } -+ }, -+ "node_modules/shebang-regex": { -+ "version": "3.0.0", -+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", -+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", -@@ -3458,6 +4997,12 @@ - "url": "https://github.com/sponsors/ljharb" - } - }, -+ "node_modules/signal-exit": { -+ "version": "3.0.7", -+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", -+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", -+ "dev": true -+ }, - "node_modules/solc": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.7.3.tgz", -@@ -3542,6 +5087,47 @@ - "source-map": "^0.6.0" - } - }, -+ "node_modules/spdx-correct": { -+ "version": "3.2.0", -+ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", -+ "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", -+ "dev": true, -+ "dependencies": { -+ "spdx-expression-parse": "^3.0.0", -+ "spdx-license-ids": "^3.0.0" -+ } -+ }, -+ "node_modules/spdx-exceptions": { -+ "version": "2.3.0", -+ "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", -+ "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", -+ "dev": true -+ }, -+ "node_modules/spdx-expression-parse": { -+ "version": "3.0.1", -+ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", -+ "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", -+ "dev": true, -+ "dependencies": { -+ "spdx-exceptions": "^2.1.0", -+ "spdx-license-ids": "^3.0.0" -+ } -+ }, -+ "node_modules/spdx-license-ids": { -+ "version": "3.0.16", -+ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", -+ "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==", -+ "dev": true -+ }, -+ "node_modules/split2": { -+ "version": "4.2.0", -+ "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", -+ "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", -+ "dev": true, -+ "engines": { -+ "node": ">= 10.x" -+ } -+ }, - "node_modules/stacktrace-parser": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", -@@ -3609,6 +5195,15 @@ - "node": ">=8" - } - }, -+ "node_modules/strip-final-newline": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", -+ "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", -+ "dev": true, -+ "engines": { -+ "node": ">=6" -+ } -+ }, - "node_modules/strip-hex-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", -@@ -3621,6 +5216,18 @@ - "npm": ">=3" - } - }, -+ "node_modules/strip-indent": { -+ "version": "3.0.0", -+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", -+ "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", -+ "dev": true, -+ "dependencies": { -+ "min-indent": "^1.0.0" -+ }, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", -@@ -3643,6 +5250,33 @@ - "node": ">=4" - } - }, -+ "node_modules/text-extensions": { -+ "version": "2.4.0", -+ "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.4.0.tgz", -+ "integrity": "sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ }, -+ "node_modules/through": { -+ "version": "2.3.8", -+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", -+ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", -+ "dev": true -+ }, -+ "node_modules/through2": { -+ "version": "4.0.2", -+ "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", -+ "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", -+ "dev": true, -+ "dependencies": { -+ "readable-stream": "3" -+ } -+ }, - "node_modules/tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", -@@ -3673,6 +5307,15 @@ - "node": ">=0.6" - } - }, -+ "node_modules/trim-newlines": { -+ "version": "3.0.1", -+ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", -+ "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", -+ "dev": true, -+ "engines": { -+ "node": ">=8" -+ } -+ }, - "node_modules/ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", -@@ -3808,6 +5451,15 @@ - "node": ">= 0.8" - } - }, -+ "node_modules/uri-js": { -+ "version": "4.4.1", -+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", -+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", -+ "dev": true, -+ "dependencies": { -+ "punycode": "^2.1.0" -+ } -+ }, - "node_modules/util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", -@@ -3827,6 +5479,31 @@ - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "devOptional": true - }, -+ "node_modules/validate-npm-package-license": { -+ "version": "3.0.4", -+ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", -+ "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", -+ "dev": true, -+ "dependencies": { -+ "spdx-correct": "^3.0.0", -+ "spdx-expression-parse": "^3.0.0" -+ } -+ }, -+ "node_modules/which": { -+ "version": "2.0.2", -+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", -+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", -+ "dev": true, -+ "dependencies": { -+ "isexe": "^2.0.0" -+ }, -+ "bin": { -+ "node-which": "bin/node-which" -+ }, -+ "engines": { -+ "node": ">= 8" -+ } -+ }, - "node_modules/wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", -@@ -3939,59 +5616,432 @@ - "node": ">=12" - } - }, -- "node_modules/yargs-parser": { -- "version": "20.2.4", -- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", -- "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", -- "engines": { -- "node": ">=10" -+ "node_modules/yargs-parser": { -+ "version": "20.2.4", -+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-20.2.4.tgz", -+ "integrity": "sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA==", -+ "engines": { -+ "node": ">=10" -+ } -+ }, -+ "node_modules/yargs-unparser": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", -+ "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", -+ "dependencies": { -+ "camelcase": "^6.0.0", -+ "decamelize": "^4.0.0", -+ "flat": "^5.0.2", -+ "is-plain-obj": "^2.1.0" -+ }, -+ "engines": { -+ "node": ">=10" -+ } -+ }, -+ "node_modules/yargs/node_modules/yargs-parser": { -+ "version": "21.1.1", -+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", -+ "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", -+ "dev": true, -+ "engines": { -+ "node": ">=12" -+ } -+ }, -+ "node_modules/yn": { -+ "version": "3.1.1", -+ "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", -+ "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", -+ "devOptional": true, -+ "engines": { -+ "node": ">=6" -+ } -+ }, -+ "node_modules/yocto-queue": { -+ "version": "0.1.0", -+ "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", -+ "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", -+ "engines": { -+ "node": ">=10" -+ }, -+ "funding": { -+ "url": "https://github.com/sponsors/sindresorhus" -+ } -+ } -+ }, -+ "dependencies": { -+ "@babel/code-frame": { -+ "version": "7.22.13", -+ "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.22.13.tgz", -+ "integrity": "sha512-XktuhWlJ5g+3TJXc5upd9Ks1HutSArik6jf2eAjYFyIOf4ej3RN+184cZbzDvbPnuTJIUhPKKJE3cIsYTiAT3w==", -+ "dev": true, -+ "requires": { -+ "@babel/highlight": "^7.22.13", -+ "chalk": "^2.4.2" -+ }, -+ "dependencies": { -+ "chalk": { -+ "version": "2.4.2", -+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", -+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", -+ "dev": true, -+ "requires": { -+ "ansi-styles": "^3.2.1", -+ "escape-string-regexp": "^1.0.5", -+ "supports-color": "^5.3.0" -+ } -+ } -+ } -+ }, -+ "@babel/helper-validator-identifier": { -+ "version": "7.22.20", -+ "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.22.20.tgz", -+ "integrity": "sha512-Y4OZ+ytlatR8AI+8KZfKuL5urKp7qey08ha31L8b3BwewJAoJamTzyvxPR/5D+KkdJCGPq/+8TukHBlY10FX9A==", -+ "dev": true -+ }, -+ "@babel/highlight": { -+ "version": "7.22.20", -+ "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.22.20.tgz", -+ "integrity": "sha512-dkdMCN3py0+ksCgYmGG8jKeGA/8Tk+gJwSYYlFGxG5lmhfKNoAy004YpLxpS1W2J8m/EK2Ew+yOs9pVRwO89mg==", -+ "dev": true, -+ "requires": { -+ "@babel/helper-validator-identifier": "^7.22.20", -+ "chalk": "^2.4.2", -+ "js-tokens": "^4.0.0" -+ }, -+ "dependencies": { -+ "chalk": { -+ "version": "2.4.2", -+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", -+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", -+ "dev": true, -+ "requires": { -+ "ansi-styles": "^3.2.1", -+ "escape-string-regexp": "^1.0.5", -+ "supports-color": "^5.3.0" -+ } -+ } -+ } -+ }, -+ "@commitlint/cli": { -+ "version": "18.2.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/cli/-/cli-18.2.0.tgz", -+ "integrity": "sha512-F/DCG791kMFmWg5eIdogakuGeg4OiI2kD430ed1a1Hh3epvrJdeIAgcGADAMIOmF+m0S1+VlIYUKG2dvQQ1Izw==", -+ "dev": true, -+ "requires": { -+ "@commitlint/format": "^18.1.0", -+ "@commitlint/lint": "^18.1.0", -+ "@commitlint/load": "^18.2.0", -+ "@commitlint/read": "^18.1.0", -+ "@commitlint/types": "^18.1.0", -+ "execa": "^5.0.0", -+ "lodash.isfunction": "^3.0.9", -+ "resolve-from": "5.0.0", -+ "resolve-global": "1.0.0", -+ "yargs": "^17.0.0" -+ } -+ }, -+ "@commitlint/config-conventional": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/config-conventional/-/config-conventional-18.1.0.tgz", -+ "integrity": "sha512-8vvvtV3GOLEMHeKc8PjRL1lfP1Y4B6BG0WroFd9PJeRiOc3nFX1J0wlJenLURzl9Qus6YXVGWf+a/ZlbCKT3AA==", -+ "dev": true, -+ "requires": { -+ "conventional-changelog-conventionalcommits": "^7.0.2" -+ } -+ }, -+ "@commitlint/config-validator": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/config-validator/-/config-validator-18.1.0.tgz", -+ "integrity": "sha512-kbHkIuItXn93o2NmTdwi5Mk1ujyuSIysRE/XHtrcps/27GuUKEIqBJp6TdJ4Sq+ze59RlzYSHMKuDKZbfg9+uQ==", -+ "dev": true, -+ "requires": { -+ "@commitlint/types": "^18.1.0", -+ "ajv": "^8.11.0" -+ } -+ }, -+ "@commitlint/ensure": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/ensure/-/ensure-18.1.0.tgz", -+ "integrity": "sha512-CkPzJ9UBumIo54VDcpmBlaVX81J++wzEhN3DJH9+6PaLeiIG+gkSx8t7C2gfwG7PaiW4HzQtdQlBN5ab+c4vFQ==", -+ "dev": true, -+ "requires": { -+ "@commitlint/types": "^18.1.0", -+ "lodash.camelcase": "^4.3.0", -+ "lodash.kebabcase": "^4.1.1", -+ "lodash.snakecase": "^4.1.1", -+ "lodash.startcase": "^4.4.0", -+ "lodash.upperfirst": "^4.3.1" -+ } -+ }, -+ "@commitlint/execute-rule": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/execute-rule/-/execute-rule-18.1.0.tgz", -+ "integrity": "sha512-w3Vt4K+O7+nSr9/gFSEfZ1exKUOPSlJaRpnk7Y+XowEhvwT7AIk1HNANH+gETf0zGZ020+hfiMW/Ome+SNCUsg==", -+ "dev": true -+ }, -+ "@commitlint/format": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/format/-/format-18.1.0.tgz", -+ "integrity": "sha512-So/w217tGWMZZb1yXcUFNF2qFLyYtSVqbnGoMbX8a+JKcG4oB11Gc1adS0ssUOMivtiNpaLtkSHFynyiwtJtiQ==", -+ "dev": true, -+ "requires": { -+ "@commitlint/types": "^18.1.0", -+ "chalk": "^4.1.0" -+ } -+ }, -+ "@commitlint/is-ignored": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/is-ignored/-/is-ignored-18.1.0.tgz", -+ "integrity": "sha512-fa1fY93J/Nx2GH6r6WOLdBOiL7x9Uc1N7wcpmaJ1C5Qs6P+rPSUTkofe2IOhSJIJoboHfAH6W0ru4xtK689t0Q==", -+ "dev": true, -+ "requires": { -+ "@commitlint/types": "^18.1.0", -+ "semver": "7.5.4" -+ }, -+ "dependencies": { -+ "lru-cache": { -+ "version": "6.0.0", -+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", -+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", -+ "dev": true, -+ "requires": { -+ "yallist": "^4.0.0" -+ } -+ }, -+ "semver": { -+ "version": "7.5.4", -+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", -+ "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", -+ "dev": true, -+ "requires": { -+ "lru-cache": "^6.0.0" -+ } -+ }, -+ "yallist": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", -+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", -+ "dev": true -+ } -+ } -+ }, -+ "@commitlint/lint": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/lint/-/lint-18.1.0.tgz", -+ "integrity": "sha512-LGB3eI5UYu5LLayibNrRM4bSbowr1z9uyqvp0c7+0KaSJi+xHxy/QEhb6fy4bMAtbXEvygY0sUu9HxSWg41rVQ==", -+ "dev": true, -+ "requires": { -+ "@commitlint/is-ignored": "^18.1.0", -+ "@commitlint/parse": "^18.1.0", -+ "@commitlint/rules": "^18.1.0", -+ "@commitlint/types": "^18.1.0" -+ } -+ }, -+ "@commitlint/load": { -+ "version": "18.2.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/load/-/load-18.2.0.tgz", -+ "integrity": "sha512-xjX3d3CRlOALwImhOsmLYZh14/+gW/KxsY7+bPKrzmGuFailf9K7ckhB071oYZVJdACnpY4hDYiosFyOC+MpAA==", -+ "dev": true, -+ "requires": { -+ "@commitlint/config-validator": "^18.1.0", -+ "@commitlint/execute-rule": "^18.1.0", -+ "@commitlint/resolve-extends": "^18.1.0", -+ "@commitlint/types": "^18.1.0", -+ "@types/node": "^18.11.9", -+ "chalk": "^4.1.0", -+ "cosmiconfig": "^8.0.0", -+ "cosmiconfig-typescript-loader": "^5.0.0", -+ "lodash.isplainobject": "^4.0.6", -+ "lodash.merge": "^4.6.2", -+ "lodash.uniq": "^4.5.0", -+ "resolve-from": "^5.0.0" -+ }, -+ "dependencies": { -+ "cosmiconfig": { -+ "version": "8.3.6", -+ "resolved": "https://registry.npmjs.org/cosmiconfig/-/cosmiconfig-8.3.6.tgz", -+ "integrity": "sha512-kcZ6+W5QzcJ3P1Mt+83OUv/oHFqZHIx8DuxG6eZ5RGMERoLqp4BuGjhHLYGK+Kf5XVkQvqBSmAy/nGWN3qDgEA==", -+ "dev": true, -+ "requires": { -+ "import-fresh": "^3.3.0", -+ "js-yaml": "^4.1.0", -+ "parse-json": "^5.2.0", -+ "path-type": "^4.0.0" -+ } -+ }, -+ "cosmiconfig-typescript-loader": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/cosmiconfig-typescript-loader/-/cosmiconfig-typescript-loader-5.0.0.tgz", -+ "integrity": "sha512-+8cK7jRAReYkMwMiG+bxhcNKiHJDM6bR9FD/nGBXOWdMLuYawjF5cGrtLilJ+LGd3ZjCXnJjR5DkfWPoIVlqJA==", -+ "dev": true, -+ "requires": { -+ "jiti": "^1.19.1" -+ } -+ }, -+ "typescript": { -+ "version": "5.2.2", -+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.2.2.tgz", -+ "integrity": "sha512-mI4WrpHsbCIcwT9cF4FZvr80QUeKvsUsUvKDoR+X/7XHQH98xYD8YHZg7ANtz2GtZt/CBq2QJ0thkGJMHfqc1w==", -+ "dev": true, -+ "peer": true -+ } -+ } -+ }, -+ "@commitlint/message": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/message/-/message-18.1.0.tgz", -+ "integrity": "sha512-8dT/jJg73wf3o2Mut/fqEDTpBYSIEVtX5PWyuY/0uviEYeheZAczFo/VMIkeGzhJJn1IrcvAwWsvJ1lVGY2I/w==", -+ "dev": true -+ }, -+ "@commitlint/parse": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/parse/-/parse-18.1.0.tgz", -+ "integrity": "sha512-23yv8uBweXWYn8bXk4PjHIsmVA+RkbqPh2h7irupBo2LthVlzMRc4LM6UStasScJ4OlXYYaWOmuP7jcExUF50Q==", -+ "dev": true, -+ "requires": { -+ "@commitlint/types": "^18.1.0", -+ "conventional-changelog-angular": "^6.0.0", -+ "conventional-commits-parser": "^5.0.0" - } - }, -- "node_modules/yargs-unparser": { -- "version": "2.0.0", -- "resolved": "https://registry.npmjs.org/yargs-unparser/-/yargs-unparser-2.0.0.tgz", -- "integrity": "sha512-7pRTIA9Qc1caZ0bZ6RYRGbHJthJWuakf+WmHK0rVeLkNrrGhfoabBNdue6kdINI6r4if7ocq9aD/n7xwKOdzOA==", -- "dependencies": { -- "camelcase": "^6.0.0", -- "decamelize": "^4.0.0", -- "flat": "^5.0.2", -- "is-plain-obj": "^2.1.0" -+ "@commitlint/read": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/read/-/read-18.1.0.tgz", -+ "integrity": "sha512-rzfzoKUwxmvYO81tI5o1371Nwt3vhcQR36oTNfupPdU1jgSL3nzBIS3B93LcZh3IYKbCIMyMPN5WZ10BXdeoUg==", -+ "dev": true, -+ "requires": { -+ "@commitlint/top-level": "^18.1.0", -+ "@commitlint/types": "^18.1.0", -+ "fs-extra": "^11.0.0", -+ "git-raw-commits": "^2.0.11", -+ "minimist": "^1.2.6" - }, -- "engines": { -- "node": ">=10" -+ "dependencies": { -+ "fs-extra": { -+ "version": "11.1.1", -+ "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.1.1.tgz", -+ "integrity": "sha512-MGIE4HOvQCeUCzmlHs0vXpih4ysz4wg9qiSAu6cd42lVwPbTM1TjV7RusoyQqMmk/95gdQZX72u+YW+c3eEpFQ==", -+ "dev": true, -+ "requires": { -+ "graceful-fs": "^4.2.0", -+ "jsonfile": "^6.0.1", -+ "universalify": "^2.0.0" -+ } -+ }, -+ "jsonfile": { -+ "version": "6.1.0", -+ "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", -+ "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", -+ "dev": true, -+ "requires": { -+ "graceful-fs": "^4.1.6", -+ "universalify": "^2.0.0" -+ } -+ }, -+ "universalify": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", -+ "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==", -+ "dev": true -+ } - } - }, -- "node_modules/yargs/node_modules/yargs-parser": { -- "version": "21.1.1", -- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", -- "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", -+ "@commitlint/resolve-extends": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/resolve-extends/-/resolve-extends-18.1.0.tgz", -+ "integrity": "sha512-3mZpzOEJkELt7BbaZp6+bofJyxViyObebagFn0A7IHaLARhPkWTivXdjvZHS12nAORftv88Yhbh8eCPKfSvB7g==", - "dev": true, -- "engines": { -- "node": ">=12" -+ "requires": { -+ "@commitlint/config-validator": "^18.1.0", -+ "@commitlint/types": "^18.1.0", -+ "import-fresh": "^3.0.0", -+ "lodash.mergewith": "^4.6.2", -+ "resolve-from": "^5.0.0", -+ "resolve-global": "^1.0.0" - } - }, -- "node_modules/yn": { -- "version": "3.1.1", -- "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", -- "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", -- "devOptional": true, -- "engines": { -- "node": ">=6" -+ "@commitlint/rules": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/rules/-/rules-18.1.0.tgz", -+ "integrity": "sha512-VJNQ674CRv4znI0DbsjZLVnn647J+BTxHGcrDIsYv7c99gW7TUGeIe5kL80G7l8+5+N0se8v9yn+Prr8xEy6Yw==", -+ "dev": true, -+ "requires": { -+ "@commitlint/ensure": "^18.1.0", -+ "@commitlint/message": "^18.1.0", -+ "@commitlint/to-lines": "^18.1.0", -+ "@commitlint/types": "^18.1.0", -+ "execa": "^5.0.0" - } - }, -- "node_modules/yocto-queue": { -- "version": "0.1.0", -- "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", -- "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", -- "engines": { -- "node": ">=10" -+ "@commitlint/to-lines": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/to-lines/-/to-lines-18.1.0.tgz", -+ "integrity": "sha512-aHIoSDjG0ckxPLYDpODUeSLbEKmF6Jrs1B5JIssbbE9eemBtXtjm9yzdiAx9ZXcwoHlhbTp2fbndDb3YjlvJag==", -+ "dev": true -+ }, -+ "@commitlint/top-level": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/top-level/-/top-level-18.1.0.tgz", -+ "integrity": "sha512-1/USHlolIxJlsfLKecSXH+6PDojIvnzaJGPYwF7MtnTuuXCNQ4izkeqDsRuNMe9nU2VIKpK9OT8Q412kGNmgGw==", -+ "dev": true, -+ "requires": { -+ "find-up": "^5.0.0" - }, -- "funding": { -- "url": "https://github.com/sponsors/sindresorhus" -+ "dependencies": { -+ "find-up": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-5.0.0.tgz", -+ "integrity": "sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==", -+ "dev": true, -+ "requires": { -+ "locate-path": "^6.0.0", -+ "path-exists": "^4.0.0" -+ } -+ }, -+ "locate-path": { -+ "version": "6.0.0", -+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-6.0.0.tgz", -+ "integrity": "sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==", -+ "dev": true, -+ "requires": { -+ "p-locate": "^5.0.0" -+ } -+ }, -+ "p-limit": { -+ "version": "3.1.0", -+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", -+ "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", -+ "dev": true, -+ "requires": { -+ "yocto-queue": "^0.1.0" -+ } -+ }, -+ "p-locate": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-5.0.0.tgz", -+ "integrity": "sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==", -+ "dev": true, -+ "requires": { -+ "p-limit": "^3.0.2" -+ } -+ }, -+ "path-exists": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", -+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", -+ "dev": true -+ } - } -- } -- }, -- "dependencies": { -+ }, -+ "@commitlint/types": { -+ "version": "18.1.0", -+ "resolved": "https://registry.npmjs.org/@commitlint/types/-/types-18.1.0.tgz", -+ "integrity": "sha512-65vGxZmbs+2OVwEItxhp3Ul7X2m2LyLfifYI/NdPwRqblmuES2w2aIRhIjb7cwUIBHHSTT8WXj4ixVHQibmvLQ==", -+ "dev": true, -+ "requires": { -+ "chalk": "^4.1.0" -+ } -+ }, - "@cspotcode/source-map-support": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", -@@ -4814,11 +6864,23 @@ - "resolved": "https://registry.npmjs.org/@types/lru-cache/-/lru-cache-5.1.1.tgz", - "integrity": "sha512-ssE3Vlrys7sdIzs5LOxCzTVMsU7i9oa/IaW92wF32JFb3CVczqOkru2xspuKczHEbG3nvmPY7IFqVmGGHdNbYw==" - }, -+ "@types/minimist": { -+ "version": "1.2.4", -+ "resolved": "https://registry.npmjs.org/@types/minimist/-/minimist-1.2.4.tgz", -+ "integrity": "sha512-Kfe/D3hxHTusnPNRbycJE1N77WHDsdS4AjUYIzlDzhDrS47NrwuL3YW4VITxwR7KCVpzwgy4Rbj829KSSQmwXQ==", -+ "dev": true -+ }, - "@types/node": { - "version": "18.11.17", - "resolved": "https://registry.npmjs.org/@types/node/-/node-18.11.17.tgz", - "integrity": "sha512-HJSUJmni4BeDHhfzn6nF0sVmd1SMezP7/4F0Lq+aXzmp2xm9O7WXrUtHW/CHlYVtZUbByEvWidHqRtcJXGF2Ng==" - }, -+ "@types/normalize-package-data": { -+ "version": "2.4.3", -+ "resolved": "https://registry.npmjs.org/@types/normalize-package-data/-/normalize-package-data-2.4.3.tgz", -+ "integrity": "sha512-ehPtgRgaULsFG8x0NeYJvmyH1hmlfsNLujHe9dQEia/7MAJYdzMSi19JtchUHjmBA6XC/75dK55mzZH+RyieSg==", -+ "dev": true -+ }, - "@types/pbkdf2": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/@types/pbkdf2/-/pbkdf2-3.1.0.tgz", -@@ -4906,6 +6968,18 @@ - "indent-string": "^4.0.0" - } - }, -+ "ajv": { -+ "version": "8.12.0", -+ "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.12.0.tgz", -+ "integrity": "sha512-sRu1kpcO9yLtYxBKvqfTeh9KzZEwO3STyX1HT+4CaDzC6HpTGYhIhPIzj9XuKU7KYDwnaeh5hcOwjy1QuJzBPA==", -+ "dev": true, -+ "requires": { -+ "fast-deep-equal": "^3.1.1", -+ "json-schema-traverse": "^1.0.0", -+ "require-from-string": "^2.0.2", -+ "uri-js": "^4.2.2" -+ } -+ }, - "ansi-colors": { - "version": "4.1.3", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.3.tgz", -@@ -4952,6 +7026,18 @@ - "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", - "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==" - }, -+ "array-ify": { -+ "version": "1.0.0", -+ "resolved": "https://registry.npmjs.org/array-ify/-/array-ify-1.0.0.tgz", -+ "integrity": "sha512-c5AMf34bKdvPhQ7tBGhqkgKNUzMr4WUs+WDtC2ZUGOUncbxKMTvqxYctiseW3+L4bA8ec+GcZ6/A/FW4m8ukng==", -+ "dev": true -+ }, -+ "arrify": { -+ "version": "1.0.1", -+ "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz", -+ "integrity": "sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA==", -+ "dev": true -+ }, - "async": { - "version": "2.6.4", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.4.tgz", -@@ -5124,11 +7210,36 @@ - "get-intrinsic": "^1.0.2" - } - }, -+ "callsites": { -+ "version": "3.1.0", -+ "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", -+ "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", -+ "dev": true -+ }, - "camelcase": { - "version": "6.3.0", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==" - }, -+ "camelcase-keys": { -+ "version": "6.2.2", -+ "resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-6.2.2.tgz", -+ "integrity": "sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg==", -+ "dev": true, -+ "requires": { -+ "camelcase": "^5.3.1", -+ "map-obj": "^4.0.0", -+ "quick-lru": "^4.0.1" -+ }, -+ "dependencies": { -+ "camelcase": { -+ "version": "5.3.1", -+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", -+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", -+ "dev": true -+ } -+ } -+ }, - "catering": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/catering/-/catering-2.1.1.tgz", -@@ -5259,11 +7370,51 @@ - "resolved": "https://registry.npmjs.org/commander/-/commander-3.0.2.tgz", - "integrity": "sha512-Gar0ASD4BDyKC4hl4DwHqDrmvjoxWKZigVnAbn5H1owvm4CxCPdb0HQDehwNYMJpla5+M2tPmPARzhtYuwpHow==" - }, -+ "compare-func": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/compare-func/-/compare-func-2.0.0.tgz", -+ "integrity": "sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA==", -+ "dev": true, -+ "requires": { -+ "array-ify": "^1.0.0", -+ "dot-prop": "^5.1.0" -+ } -+ }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" - }, -+ "conventional-changelog-angular": { -+ "version": "6.0.0", -+ "resolved": "https://registry.npmjs.org/conventional-changelog-angular/-/conventional-changelog-angular-6.0.0.tgz", -+ "integrity": "sha512-6qLgrBF4gueoC7AFVHu51nHL9pF9FRjXrH+ceVf7WmAfH3gs+gEYOkvxhjMPjZu57I4AGUGoNTY8V7Hrgf1uqg==", -+ "dev": true, -+ "requires": { -+ "compare-func": "^2.0.0" -+ } -+ }, -+ "conventional-changelog-conventionalcommits": { -+ "version": "7.0.2", -+ "resolved": "https://registry.npmjs.org/conventional-changelog-conventionalcommits/-/conventional-changelog-conventionalcommits-7.0.2.tgz", -+ "integrity": "sha512-NKXYmMR/Hr1DevQegFB4MwfM5Vv0m4UIxKZTTYuD98lpTknaZlSRrDOG4X7wIXpGkfsYxZTghUN+Qq+T0YQI7w==", -+ "dev": true, -+ "requires": { -+ "compare-func": "^2.0.0" -+ } -+ }, -+ "conventional-commits-parser": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/conventional-commits-parser/-/conventional-commits-parser-5.0.0.tgz", -+ "integrity": "sha512-ZPMl0ZJbw74iS9LuX9YIAiW8pfM5p3yh2o/NbXHbkFuZzY5jvdi5jFycEOkmBW5H5I7nA+D6f3UcsCLP2vvSEA==", -+ "dev": true, -+ "requires": { -+ "is-text-path": "^2.0.0", -+ "JSONStream": "^1.3.5", -+ "meow": "^12.0.1", -+ "split2": "^4.0.0" -+ } -+ }, - "cookie": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.2.tgz", -@@ -5305,6 +7456,23 @@ - "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - "devOptional": true - }, -+ "cross-spawn": { -+ "version": "7.0.3", -+ "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", -+ "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", -+ "dev": true, -+ "requires": { -+ "path-key": "^3.1.0", -+ "shebang-command": "^2.0.0", -+ "which": "^2.0.1" -+ } -+ }, -+ "dargs": { -+ "version": "7.0.0", -+ "resolved": "https://registry.npmjs.org/dargs/-/dargs-7.0.0.tgz", -+ "integrity": "sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg==", -+ "dev": true -+ }, - "debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", -@@ -5318,6 +7486,30 @@ - "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-4.0.0.tgz", - "integrity": "sha512-9iE1PgSik9HeIIw2JO94IidnE3eBoQrFJ3w7sFuzSX4DpmZ3v5sZpUiV5Swcf6mQEF+Y0ru8Neo+p+nyh2J+hQ==" - }, -+ "decamelize-keys": { -+ "version": "1.1.1", -+ "resolved": "https://registry.npmjs.org/decamelize-keys/-/decamelize-keys-1.1.1.tgz", -+ "integrity": "sha512-WiPxgEirIV0/eIOMcnFBA3/IJZAZqKnwAwWyvvdi4lsr1WCN22nhdf/3db3DoZcUjTV2SqfzIwNyp6y2xs3nmg==", -+ "dev": true, -+ "requires": { -+ "decamelize": "^1.1.0", -+ "map-obj": "^1.0.0" -+ }, -+ "dependencies": { -+ "decamelize": { -+ "version": "1.2.0", -+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", -+ "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==", -+ "dev": true -+ }, -+ "map-obj": { -+ "version": "1.0.1", -+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz", -+ "integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==", -+ "dev": true -+ } -+ } -+ }, - "depd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", -@@ -5328,6 +7520,15 @@ - "resolved": "https://registry.npmjs.org/diff/-/diff-5.0.0.tgz", - "integrity": "sha512-/VTCrvm5Z0JGty/BWHljh+BAiw3IK+2j87NGMu8Nwc/f48WoDAC395uomO9ZD117ZOBaHmkX1oyLvkVM/aIT3w==" - }, -+ "dot-prop": { -+ "version": "5.3.0", -+ "resolved": "https://registry.npmjs.org/dot-prop/-/dot-prop-5.3.0.tgz", -+ "integrity": "sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==", -+ "dev": true, -+ "requires": { -+ "is-obj": "^2.0.0" -+ } -+ }, - "dotenv": { - "version": "16.3.1", - "resolved": "https://registry.npmjs.org/dotenv/-/dotenv-16.3.1.tgz", -@@ -5379,6 +7580,15 @@ - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==" - }, -+ "error-ex": { -+ "version": "1.3.2", -+ "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", -+ "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", -+ "dev": true, -+ "requires": { -+ "is-arrayish": "^0.2.1" -+ } -+ }, - "escalade": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", -@@ -5490,6 +7700,29 @@ - "safe-buffer": "^5.1.1" - } - }, -+ "execa": { -+ "version": "5.1.1", -+ "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", -+ "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", -+ "dev": true, -+ "requires": { -+ "cross-spawn": "^7.0.3", -+ "get-stream": "^6.0.0", -+ "human-signals": "^2.1.0", -+ "is-stream": "^2.0.0", -+ "merge-stream": "^2.0.0", -+ "npm-run-path": "^4.0.1", -+ "onetime": "^5.1.2", -+ "signal-exit": "^3.0.3", -+ "strip-final-newline": "^2.0.0" -+ } -+ }, -+ "fast-deep-equal": { -+ "version": "3.1.3", -+ "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", -+ "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", -+ "dev": true -+ }, - "fill-range": { - "version": "7.0.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.0.1.tgz", -@@ -5558,9 +7791,9 @@ - "optional": true - }, - "function-bind": { -- "version": "1.1.1", -- "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", -- "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" -+ "version": "1.1.2", -+ "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", -+ "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==" - }, - "functional-red-black-tree": { - "version": "1.0.1", -@@ -5582,6 +7815,61 @@ - "has-symbols": "^1.0.3" - } - }, -+ "get-stream": { -+ "version": "6.0.1", -+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", -+ "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", -+ "dev": true -+ }, -+ "git-raw-commits": { -+ "version": "2.0.11", -+ "resolved": "https://registry.npmjs.org/git-raw-commits/-/git-raw-commits-2.0.11.tgz", -+ "integrity": "sha512-VnctFhw+xfj8Va1xtfEqCUD2XDrbAPSJx+hSrE5K7fGdjZruW7XV+QOrN7LF/RJyvspRiD2I0asWsxFp0ya26A==", -+ "dev": true, -+ "requires": { -+ "dargs": "^7.0.0", -+ "lodash": "^4.17.15", -+ "meow": "^8.0.0", -+ "split2": "^3.0.0", -+ "through2": "^4.0.0" -+ }, -+ "dependencies": { -+ "meow": { -+ "version": "8.1.2", -+ "resolved": "https://registry.npmjs.org/meow/-/meow-8.1.2.tgz", -+ "integrity": "sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q==", -+ "dev": true, -+ "requires": { -+ "@types/minimist": "^1.2.0", -+ "camelcase-keys": "^6.2.2", -+ "decamelize-keys": "^1.1.0", -+ "hard-rejection": "^2.1.0", -+ "minimist-options": "4.1.0", -+ "normalize-package-data": "^3.0.0", -+ "read-pkg-up": "^7.0.1", -+ "redent": "^3.0.0", -+ "trim-newlines": "^3.0.0", -+ "type-fest": "^0.18.0", -+ "yargs-parser": "^20.2.3" -+ } -+ }, -+ "split2": { -+ "version": "3.2.2", -+ "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", -+ "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", -+ "dev": true, -+ "requires": { -+ "readable-stream": "^3.0.0" -+ } -+ }, -+ "type-fest": { -+ "version": "0.18.1", -+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.18.1.tgz", -+ "integrity": "sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw==", -+ "dev": true -+ } -+ } -+ }, - "glob": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", -@@ -5603,6 +7891,15 @@ - "is-glob": "^4.0.1" - } - }, -+ "global-dirs": { -+ "version": "0.1.1", -+ "resolved": "https://registry.npmjs.org/global-dirs/-/global-dirs-0.1.1.tgz", -+ "integrity": "sha512-NknMLn7F2J7aflwFOlGdNIuCDpN3VGoSoB+aap3KABFWbHVn1TCgFC+np23J8W2BiZbjfEw3BFBycSMv1AFblg==", -+ "dev": true, -+ "requires": { -+ "ini": "^1.3.4" -+ } -+ }, - "graceful-fs": { - "version": "4.2.10", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", -@@ -5620,6 +7917,12 @@ - "wordwrap": "^1.0.0" - } - }, -+ "hard-rejection": { -+ "version": "2.1.0", -+ "resolved": "https://registry.npmjs.org/hard-rejection/-/hard-rejection-2.1.0.tgz", -+ "integrity": "sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==", -+ "dev": true -+ }, - "hardhat": { - "version": "2.12.4", - "resolved": "https://registry.npmjs.org/hardhat/-/hardhat-2.12.4.tgz", -@@ -5735,6 +8038,15 @@ - "minimalistic-assert": "^1.0.1" - } - }, -+ "hasown": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.0.tgz", -+ "integrity": "sha512-vUptKVTpIJhcczKBbgnS+RtcuYMB8+oNzPK2/Hp3hanz8JmpATdmmgLgSaadVREkDm+e2giHwY3ZRkyjSIDDFA==", -+ "dev": true, -+ "requires": { -+ "function-bind": "^1.1.2" -+ } -+ }, - "he": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", -@@ -5750,6 +8062,32 @@ - "minimalistic-crypto-utils": "^1.0.1" - } - }, -+ "hosted-git-info": { -+ "version": "4.1.0", -+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-4.1.0.tgz", -+ "integrity": "sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA==", -+ "dev": true, -+ "requires": { -+ "lru-cache": "^6.0.0" -+ }, -+ "dependencies": { -+ "lru-cache": { -+ "version": "6.0.0", -+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", -+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", -+ "dev": true, -+ "requires": { -+ "yallist": "^4.0.0" -+ } -+ }, -+ "yallist": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", -+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", -+ "dev": true -+ } -+ } -+ }, - "http-errors": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", -@@ -5771,6 +8109,18 @@ - "debug": "4" - } - }, -+ "human-signals": { -+ "version": "2.1.0", -+ "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", -+ "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", -+ "dev": true -+ }, -+ "husky": { -+ "version": "8.0.3", -+ "resolved": "https://registry.npmjs.org/husky/-/husky-8.0.3.tgz", -+ "integrity": "sha512-+dQSyqPh4x1hlO1swXBiNb2HzTDN1I2IGLQx1GrBuiqFJfoMrnZWwVmatvSiO+Iz8fBUnf+lekwNo4c2LlXItg==", -+ "dev": true -+ }, - "iconv-lite": { - "version": "0.4.24", - "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", -@@ -5789,6 +8139,24 @@ - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.2.0.tgz", - "integrity": "sha512-h4ujZ0OZ3kpvdFcwJAHXEdvawH7J8TYTB62e8xI03OSZhuGpuPY9DPXnonMN8s+uQ56gMUqMK71mXU8ob20xfA==" - }, -+ "import-fresh": { -+ "version": "3.3.0", -+ "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.0.tgz", -+ "integrity": "sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==", -+ "dev": true, -+ "requires": { -+ "parent-module": "^1.0.0", -+ "resolve-from": "^4.0.0" -+ }, -+ "dependencies": { -+ "resolve-from": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", -+ "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", -+ "dev": true -+ } -+ } -+ }, - "imul": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/imul/-/imul-1.0.1.tgz", -@@ -5814,6 +8182,12 @@ - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" - }, -+ "ini": { -+ "version": "1.3.8", -+ "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", -+ "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==", -+ "dev": true -+ }, - "io-ts": { - "version": "1.10.4", - "resolved": "https://registry.npmjs.org/io-ts/-/io-ts-1.10.4.tgz", -@@ -5822,6 +8196,12 @@ - "fp-ts": "^1.0.0" - } - }, -+ "is-arrayish": { -+ "version": "0.2.1", -+ "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", -+ "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", -+ "dev": true -+ }, - "is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", -@@ -5835,6 +8215,15 @@ - "resolved": "https://registry.npmjs.org/is-buffer/-/is-buffer-2.0.5.tgz", - "integrity": "sha512-i2R6zNFDwgEHJyQUtJEk0XFi1i0dPFn/oqjK3/vPCcDeJvW5NQ83V8QbicfF1SupOaB0h8ntgBC2YiE7dfyctQ==" - }, -+ "is-core-module": { -+ "version": "2.13.1", -+ "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.13.1.tgz", -+ "integrity": "sha512-hHrIjvZsftOsvKSn2TRYl63zvxsgE0K+0mYMoH6gD4omR5IWB2KynivBQczo3+wF1cCkjzvptnI9Q0sPU66ilw==", -+ "dev": true, -+ "requires": { -+ "hasown": "^2.0.0" -+ } -+ }, - "is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", -@@ -5863,21 +8252,60 @@ - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==" - }, -+ "is-obj": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/is-obj/-/is-obj-2.0.0.tgz", -+ "integrity": "sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w==", -+ "dev": true -+ }, - "is-plain-obj": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-2.1.0.tgz", - "integrity": "sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA==" - }, -+ "is-stream": { -+ "version": "2.0.1", -+ "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", -+ "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", -+ "dev": true -+ }, -+ "is-text-path": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/is-text-path/-/is-text-path-2.0.0.tgz", -+ "integrity": "sha512-+oDTluR6WEjdXEJMnC2z6A4FRwFoYuvShVVEGsS7ewc0UTi2QtAKMDJuL4BDEVt+5T7MjFo12RP8ghOM75oKJw==", -+ "dev": true, -+ "requires": { -+ "text-extensions": "^2.0.0" -+ } -+ }, - "is-unicode-supported": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz", - "integrity": "sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==" - }, -+ "isexe": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", -+ "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", -+ "dev": true -+ }, -+ "jiti": { -+ "version": "1.20.0", -+ "resolved": "https://registry.npmjs.org/jiti/-/jiti-1.20.0.tgz", -+ "integrity": "sha512-3TV69ZbrvV6U5DfQimop50jE9Dl6J8O1ja1dvBbMba/sZ3YBEQqJ2VZRoQPVnhlzjNtU1vaXRZVrVjU4qtm8yA==", -+ "dev": true -+ }, - "js-sha3": { - "version": "0.8.0", - "resolved": "https://registry.npmjs.org/js-sha3/-/js-sha3-0.8.0.tgz", - "integrity": "sha512-gF1cRrHhIzNfToc802P800N8PpXS+evLLXfsVpowqmAFR9uwbi89WvXg2QspOmXL8QL86J4T1EpFu+yUkwJY3Q==" - }, -+ "js-tokens": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", -+ "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", -+ "dev": true -+ }, - "js-yaml": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-4.1.0.tgz", -@@ -5886,6 +8314,18 @@ - "argparse": "^2.0.1" - } - }, -+ "json-parse-even-better-errors": { -+ "version": "2.3.1", -+ "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", -+ "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==", -+ "dev": true -+ }, -+ "json-schema-traverse": { -+ "version": "1.0.0", -+ "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", -+ "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", -+ "dev": true -+ }, - "jsonfile": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", -@@ -5894,6 +8334,22 @@ - "graceful-fs": "^4.1.6" - } - }, -+ "jsonparse": { -+ "version": "1.3.1", -+ "resolved": "https://registry.npmjs.org/jsonparse/-/jsonparse-1.3.1.tgz", -+ "integrity": "sha512-POQXvpdL69+CluYsillJ7SUhKvytYjW9vG/GKpnf+xP8UWgYEM/RaMzHHofbALDiKbbP1W8UEYmgGl39WkPZsg==", -+ "dev": true -+ }, -+ "JSONStream": { -+ "version": "1.3.5", -+ "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", -+ "integrity": "sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ==", -+ "dev": true, -+ "requires": { -+ "jsonparse": "^1.2.0", -+ "through": ">=2.2.7 <3" -+ } -+ }, - "keccak": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/keccak/-/keccak-3.0.2.tgz", -@@ -5904,6 +8360,12 @@ - "readable-stream": "^3.6.0" - } - }, -+ "kind-of": { -+ "version": "6.0.3", -+ "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", -+ "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", -+ "dev": true -+ }, - "klaw": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/klaw/-/klaw-1.3.1.tgz", -@@ -5935,6 +8397,12 @@ - "module-error": "^1.0.1" - } - }, -+ "lines-and-columns": { -+ "version": "1.2.4", -+ "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", -+ "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", -+ "dev": true -+ }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", -@@ -5949,6 +8417,66 @@ - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", - "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" - }, -+ "lodash.camelcase": { -+ "version": "4.3.0", -+ "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", -+ "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==", -+ "dev": true -+ }, -+ "lodash.isfunction": { -+ "version": "3.0.9", -+ "resolved": "https://registry.npmjs.org/lodash.isfunction/-/lodash.isfunction-3.0.9.tgz", -+ "integrity": "sha512-AirXNj15uRIMMPihnkInB4i3NHeb4iBtNg9WRWuK2o31S+ePwwNmDPaTL3o7dTJ+VXNZim7rFs4rxN4YU1oUJw==", -+ "dev": true -+ }, -+ "lodash.isplainobject": { -+ "version": "4.0.6", -+ "resolved": "https://registry.npmjs.org/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz", -+ "integrity": "sha512-oSXzaWypCMHkPC3NvBEaPHf0KsA5mvPrOPgQWDsbg8n7orZ290M0BmC/jgRZ4vcJ6DTAhjrsSYgdsW/F+MFOBA==", -+ "dev": true -+ }, -+ "lodash.kebabcase": { -+ "version": "4.1.1", -+ "resolved": "https://registry.npmjs.org/lodash.kebabcase/-/lodash.kebabcase-4.1.1.tgz", -+ "integrity": "sha512-N8XRTIMMqqDgSy4VLKPnJ/+hpGZN+PHQiJnSenYqPaVV/NCqEogTnAdZLQiGKhxX+JCs8waWq2t1XHWKOmlY8g==", -+ "dev": true -+ }, -+ "lodash.merge": { -+ "version": "4.6.2", -+ "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", -+ "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", -+ "dev": true -+ }, -+ "lodash.mergewith": { -+ "version": "4.6.2", -+ "resolved": "https://registry.npmjs.org/lodash.mergewith/-/lodash.mergewith-4.6.2.tgz", -+ "integrity": "sha512-GK3g5RPZWTRSeLSpgP8Xhra+pnjBC56q9FZYe1d5RN3TJ35dbkGy3YqBSMbyCrlbi+CM9Z3Jk5yTL7RCsqboyQ==", -+ "dev": true -+ }, -+ "lodash.snakecase": { -+ "version": "4.1.1", -+ "resolved": "https://registry.npmjs.org/lodash.snakecase/-/lodash.snakecase-4.1.1.tgz", -+ "integrity": "sha512-QZ1d4xoBHYUeuouhEq3lk3Uq7ldgyFXGBhg04+oRLnIz8o9T65Eh+8YdroUwn846zchkA9yDsDl5CVVaV2nqYw==", -+ "dev": true -+ }, -+ "lodash.startcase": { -+ "version": "4.4.0", -+ "resolved": "https://registry.npmjs.org/lodash.startcase/-/lodash.startcase-4.4.0.tgz", -+ "integrity": "sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==", -+ "dev": true -+ }, -+ "lodash.uniq": { -+ "version": "4.5.0", -+ "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", -+ "integrity": "sha512-xfBaXQd9ryd9dlSDvnvI0lvxfLJlYAZzXomUYzLKtUeOQvOP5piqAWuGtrhWeqaXK9hhoM/iyJc5AV+XfsX3HQ==", -+ "dev": true -+ }, -+ "lodash.upperfirst": { -+ "version": "4.3.1", -+ "resolved": "https://registry.npmjs.org/lodash.upperfirst/-/lodash.upperfirst-4.3.1.tgz", -+ "integrity": "sha512-sReKOYJIJf74dhJONhU4e0/shzi1trVbSWDOhKYE5XV2O+H7Sb2Dihwuc7xWxVl+DgFPyTqIN3zMfT9cq5iWDg==", -+ "dev": true -+ }, - "log-symbols": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-4.1.0.tgz", -@@ -5977,6 +8505,12 @@ - "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - "devOptional": true - }, -+ "map-obj": { -+ "version": "4.3.0", -+ "resolved": "https://registry.npmjs.org/map-obj/-/map-obj-4.3.0.tgz", -+ "integrity": "sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ==", -+ "dev": true -+ }, - "mcl-wasm": { - "version": "0.7.9", - "resolved": "https://registry.npmjs.org/mcl-wasm/-/mcl-wasm-0.7.9.tgz", -@@ -6007,6 +8541,30 @@ - "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz", - "integrity": "sha512-S3UwM3yj5mtUSEfP41UZmt/0SCoVYUcU1rkXv+BQ5Ig8ndL4sPoJNBUJERafdPb5jjHJGuMgytgKvKIf58XNBw==" - }, -+ "meow": { -+ "version": "12.1.1", -+ "resolved": "https://registry.npmjs.org/meow/-/meow-12.1.1.tgz", -+ "integrity": "sha512-BhXM0Au22RwUneMPwSCnyhTOizdWoIEPU9sp0Aqa1PnDMR5Wv2FGXYDjuzJEIX+Eo2Rb8xuYe5jrnm5QowQFkw==", -+ "dev": true -+ }, -+ "merge-stream": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", -+ "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", -+ "dev": true -+ }, -+ "mimic-fn": { -+ "version": "2.1.0", -+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", -+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", -+ "dev": true -+ }, -+ "min-indent": { -+ "version": "1.0.1", -+ "resolved": "https://registry.npmjs.org/min-indent/-/min-indent-1.0.1.tgz", -+ "integrity": "sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg==", -+ "dev": true -+ }, - "minimalistic-assert": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/minimalistic-assert/-/minimalistic-assert-1.0.1.tgz", -@@ -6030,6 +8588,25 @@ - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.7.tgz", - "integrity": "sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==" - }, -+ "minimist-options": { -+ "version": "4.1.0", -+ "resolved": "https://registry.npmjs.org/minimist-options/-/minimist-options-4.1.0.tgz", -+ "integrity": "sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==", -+ "dev": true, -+ "requires": { -+ "arrify": "^1.0.1", -+ "is-plain-obj": "^1.1.0", -+ "kind-of": "^6.0.3" -+ }, -+ "dependencies": { -+ "is-plain-obj": { -+ "version": "1.1.0", -+ "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-1.1.0.tgz", -+ "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", -+ "dev": true -+ } -+ } -+ }, - "mnemonist": { - "version": "0.38.5", - "resolved": "https://registry.npmjs.org/mnemonist/-/mnemonist-0.38.5.tgz", -@@ -6220,11 +8797,58 @@ - "resolved": "https://registry.npmjs.org/node-gyp-build/-/node-gyp-build-4.5.0.tgz", - "integrity": "sha512-2iGbaQBV+ITgCz76ZEjmhUKAKVf7xfY1sRl4UiKQspfZMH2h06SyhNsnSVy50cwkFQDGLyif6m/6uFXHkOZ6rg==" - }, -+ "normalize-package-data": { -+ "version": "3.0.3", -+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-3.0.3.tgz", -+ "integrity": "sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA==", -+ "dev": true, -+ "requires": { -+ "hosted-git-info": "^4.0.1", -+ "is-core-module": "^2.5.0", -+ "semver": "^7.3.4", -+ "validate-npm-package-license": "^3.0.1" -+ }, -+ "dependencies": { -+ "lru-cache": { -+ "version": "6.0.0", -+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", -+ "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", -+ "dev": true, -+ "requires": { -+ "yallist": "^4.0.0" -+ } -+ }, -+ "semver": { -+ "version": "7.5.4", -+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", -+ "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", -+ "dev": true, -+ "requires": { -+ "lru-cache": "^6.0.0" -+ } -+ }, -+ "yallist": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", -+ "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", -+ "dev": true -+ } -+ } -+ }, - "normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==" - }, -+ "npm-run-path": { -+ "version": "4.0.1", -+ "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", -+ "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", -+ "dev": true, -+ "requires": { -+ "path-key": "^3.0.0" -+ } -+ }, - "object-inspect": { - "version": "1.12.2", - "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", -@@ -6243,6 +8867,15 @@ - "wrappy": "1" - } - }, -+ "onetime": { -+ "version": "5.1.2", -+ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", -+ "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", -+ "dev": true, -+ "requires": { -+ "mimic-fn": "^2.1.0" -+ } -+ }, - "os-tmpdir": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", -@@ -6277,6 +8910,27 @@ - "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", - "integrity": "sha512-U1etNYuMJoIz3ZXSrrySFjsXQTWOx2/jdi86L+2pRvph/qMKL6sbcCYdH23fqsbm8TH2Gn0OybpT4eSFlCVHww==" - }, -+ "parent-module": { -+ "version": "1.0.1", -+ "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", -+ "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", -+ "dev": true, -+ "requires": { -+ "callsites": "^3.0.0" -+ } -+ }, -+ "parse-json": { -+ "version": "5.2.0", -+ "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", -+ "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", -+ "dev": true, -+ "requires": { -+ "@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" -+ } -+ }, - "path-exists": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", -@@ -6287,11 +8941,23 @@ - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==" - }, -+ "path-key": { -+ "version": "3.1.1", -+ "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", -+ "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", -+ "dev": true -+ }, - "path-parse": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", - "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==" - }, -+ "path-type": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", -+ "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", -+ "dev": true -+ }, - "pbkdf2": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.1.2.tgz", -@@ -6309,6 +8975,12 @@ - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==" - }, -+ "punycode": { -+ "version": "2.3.0", -+ "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.0.tgz", -+ "integrity": "sha512-rRV+zQD8tVFys26lAGR9WUuS4iUAngJScM+ZRSKtvl5tKeZ2t5bvdNFdNHBW9FWR4guGHlgmsZ1G7BSm2wTbuA==", -+ "dev": true -+ }, - "qs": { - "version": "6.11.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", -@@ -6322,6 +8994,12 @@ - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==" - }, -+ "quick-lru": { -+ "version": "4.0.1", -+ "resolved": "https://registry.npmjs.org/quick-lru/-/quick-lru-4.0.1.tgz", -+ "integrity": "sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g==", -+ "dev": true -+ }, - "randombytes": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", -@@ -6341,6 +9019,118 @@ - "unpipe": "1.0.0" - } - }, -+ "read-pkg": { -+ "version": "5.2.0", -+ "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-5.2.0.tgz", -+ "integrity": "sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==", -+ "dev": true, -+ "requires": { -+ "@types/normalize-package-data": "^2.4.0", -+ "normalize-package-data": "^2.5.0", -+ "parse-json": "^5.0.0", -+ "type-fest": "^0.6.0" -+ }, -+ "dependencies": { -+ "hosted-git-info": { -+ "version": "2.8.9", -+ "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz", -+ "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==", -+ "dev": true -+ }, -+ "normalize-package-data": { -+ "version": "2.5.0", -+ "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz", -+ "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==", -+ "dev": true, -+ "requires": { -+ "hosted-git-info": "^2.1.4", -+ "resolve": "^1.10.0", -+ "semver": "2 || 3 || 4 || 5", -+ "validate-npm-package-license": "^3.0.1" -+ } -+ }, -+ "semver": { -+ "version": "5.7.2", -+ "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", -+ "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", -+ "dev": true -+ }, -+ "type-fest": { -+ "version": "0.6.0", -+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.6.0.tgz", -+ "integrity": "sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==", -+ "dev": true -+ } -+ } -+ }, -+ "read-pkg-up": { -+ "version": "7.0.1", -+ "resolved": "https://registry.npmjs.org/read-pkg-up/-/read-pkg-up-7.0.1.tgz", -+ "integrity": "sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==", -+ "dev": true, -+ "requires": { -+ "find-up": "^4.1.0", -+ "read-pkg": "^5.2.0", -+ "type-fest": "^0.8.1" -+ }, -+ "dependencies": { -+ "find-up": { -+ "version": "4.1.0", -+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", -+ "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", -+ "dev": true, -+ "requires": { -+ "locate-path": "^5.0.0", -+ "path-exists": "^4.0.0" -+ } -+ }, -+ "locate-path": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", -+ "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", -+ "dev": true, -+ "requires": { -+ "p-locate": "^4.1.0" -+ } -+ }, -+ "p-limit": { -+ "version": "2.3.0", -+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", -+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", -+ "dev": true, -+ "requires": { -+ "p-try": "^2.0.0" -+ } -+ }, -+ "p-locate": { -+ "version": "4.1.0", -+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", -+ "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", -+ "dev": true, -+ "requires": { -+ "p-limit": "^2.2.0" -+ } -+ }, -+ "p-try": { -+ "version": "2.2.0", -+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", -+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", -+ "dev": true -+ }, -+ "path-exists": { -+ "version": "4.0.0", -+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", -+ "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", -+ "dev": true -+ }, -+ "type-fest": { -+ "version": "0.8.1", -+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", -+ "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", -+ "dev": true -+ } -+ } -+ }, - "readable-stream": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", -@@ -6359,6 +9149,16 @@ - "picomatch": "^2.2.1" - } - }, -+ "redent": { -+ "version": "3.0.0", -+ "resolved": "https://registry.npmjs.org/redent/-/redent-3.0.0.tgz", -+ "integrity": "sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==", -+ "dev": true, -+ "requires": { -+ "indent-string": "^4.0.0", -+ "strip-indent": "^3.0.0" -+ } -+ }, - "require-directory": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", -@@ -6377,6 +9177,21 @@ - "path-parse": "^1.0.6" - } - }, -+ "resolve-from": { -+ "version": "5.0.0", -+ "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", -+ "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", -+ "dev": true -+ }, -+ "resolve-global": { -+ "version": "1.0.0", -+ "resolved": "https://registry.npmjs.org/resolve-global/-/resolve-global-1.0.0.tgz", -+ "integrity": "sha512-zFa12V4OLtT5XUX/Q4VLvTfBf+Ok0SPc1FNGM/z9ctUdiU618qwKpWnd0CHs3+RqROfyEg/DhuHbMWYqcgljEw==", -+ "dev": true, -+ "requires": { -+ "global-dirs": "^0.1.1" -+ } -+ }, - "rimraf": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", -@@ -6472,6 +9287,21 @@ - "safe-buffer": "^5.0.1" - } - }, -+ "shebang-command": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", -+ "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", -+ "dev": true, -+ "requires": { -+ "shebang-regex": "^3.0.0" -+ } -+ }, -+ "shebang-regex": { -+ "version": "3.0.0", -+ "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", -+ "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", -+ "dev": true -+ }, - "side-channel": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", -@@ -6482,6 +9312,12 @@ - "object-inspect": "^1.9.0" - } - }, -+ "signal-exit": { -+ "version": "3.0.7", -+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", -+ "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", -+ "dev": true -+ }, - "solc": { - "version": "0.7.3", - "resolved": "https://registry.npmjs.org/solc/-/solc-0.7.3.tgz", -@@ -6553,6 +9389,44 @@ - "source-map": "^0.6.0" - } - }, -+ "spdx-correct": { -+ "version": "3.2.0", -+ "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.2.0.tgz", -+ "integrity": "sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==", -+ "dev": true, -+ "requires": { -+ "spdx-expression-parse": "^3.0.0", -+ "spdx-license-ids": "^3.0.0" -+ } -+ }, -+ "spdx-exceptions": { -+ "version": "2.3.0", -+ "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", -+ "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", -+ "dev": true -+ }, -+ "spdx-expression-parse": { -+ "version": "3.0.1", -+ "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", -+ "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", -+ "dev": true, -+ "requires": { -+ "spdx-exceptions": "^2.1.0", -+ "spdx-license-ids": "^3.0.0" -+ } -+ }, -+ "spdx-license-ids": { -+ "version": "3.0.16", -+ "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.16.tgz", -+ "integrity": "sha512-eWN+LnM3GR6gPu35WxNgbGl8rmY1AEmoMDvL/QD6zYmPWgywxWqJWNdLGT+ke8dKNWrcYgYjPpG5gbTfghP8rw==", -+ "dev": true -+ }, -+ "split2": { -+ "version": "4.2.0", -+ "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", -+ "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", -+ "dev": true -+ }, - "stacktrace-parser": { - "version": "0.1.10", - "resolved": "https://registry.npmjs.org/stacktrace-parser/-/stacktrace-parser-0.1.10.tgz", -@@ -6604,6 +9478,12 @@ - "ansi-regex": "^5.0.1" - } - }, -+ "strip-final-newline": { -+ "version": "2.0.0", -+ "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", -+ "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", -+ "dev": true -+ }, - "strip-hex-prefix": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-hex-prefix/-/strip-hex-prefix-1.0.0.tgz", -@@ -6612,6 +9492,15 @@ - "is-hex-prefixed": "1.0.0" - } - }, -+ "strip-indent": { -+ "version": "3.0.0", -+ "resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-3.0.0.tgz", -+ "integrity": "sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ==", -+ "dev": true, -+ "requires": { -+ "min-indent": "^1.0.0" -+ } -+ }, - "strip-json-comments": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", -@@ -6625,6 +9514,27 @@ - "has-flag": "^3.0.0" - } - }, -+ "text-extensions": { -+ "version": "2.4.0", -+ "resolved": "https://registry.npmjs.org/text-extensions/-/text-extensions-2.4.0.tgz", -+ "integrity": "sha512-te/NtwBwfiNRLf9Ijqx3T0nlqZiQ2XrrtBvu+cLL8ZRrGkO0NHTug8MYFKyoSrv/sHTaSKfilUkizV6XhxMJ3g==", -+ "dev": true -+ }, -+ "through": { -+ "version": "2.3.8", -+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", -+ "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", -+ "dev": true -+ }, -+ "through2": { -+ "version": "4.0.2", -+ "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", -+ "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", -+ "dev": true, -+ "requires": { -+ "readable-stream": "3" -+ } -+ }, - "tmp": { - "version": "0.0.33", - "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", -@@ -6646,6 +9556,12 @@ - "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", - "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==" - }, -+ "trim-newlines": { -+ "version": "3.0.1", -+ "resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-3.0.1.tgz", -+ "integrity": "sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw==", -+ "dev": true -+ }, - "ts-node": { - "version": "10.9.1", - "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.1.tgz", -@@ -6730,6 +9646,15 @@ - "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", - "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==" - }, -+ "uri-js": { -+ "version": "4.4.1", -+ "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", -+ "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", -+ "dev": true, -+ "requires": { -+ "punycode": "^2.1.0" -+ } -+ }, - "util-deprecate": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", -@@ -6746,6 +9671,25 @@ - "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - "devOptional": true - }, -+ "validate-npm-package-license": { -+ "version": "3.0.4", -+ "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz", -+ "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==", -+ "dev": true, -+ "requires": { -+ "spdx-correct": "^3.0.0", -+ "spdx-expression-parse": "^3.0.0" -+ } -+ }, -+ "which": { -+ "version": "2.0.2", -+ "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", -+ "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", -+ "dev": true, -+ "requires": { -+ "isexe": "^2.0.0" -+ } -+ }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", -diff --git a/package.json b/package.json -index dcd25c0c..413cfd75 100644 ---- a/package.json -+++ b/package.json -@@ -21,12 +21,15 @@ - }, - "homepage": "https://github.com/Layr-Labs/eigenlayer-contracts#readme", - "devDependencies": { -+ "@commitlint/cli": "^18.2.0", -+ "@commitlint/config-conventional": "^18.1.0", - "@types/yargs": "^17.0.28", - "chalk": "^4.1.0", - "dotenv": "^16.3.1", - "fs": "^0.0.1-security", - "hardhat": "^2.12.4", - "hardhat-preprocessor": "^0.1.5", -+ "husky": "^8.0.3", - "ts-node": "^10.9.1", - "typescript": "^4.9.4", - "yargs": "^17.7.2"