├── .commitlintrc.yml ├── .editorconfig ├── .env.example ├── .github ├── scripts │ └── rename.sh └── workflows │ └── ci.yml ├── .gitignore ├── .gitmodules ├── .lintstagedrc.yml ├── .prettierignore ├── .prettierrc.yml ├── .solhint.json ├── .solhintignore ├── .yarn ├── plugins │ └── @yarnpkg │ │ └── plugin-interactive-tools.cjs └── releases │ └── yarn-3.2.4.cjs ├── .yarnrc.yml ├── CHANGELOG.md ├── LICENSE.md ├── README.md ├── foundry.toml ├── package.json ├── remappings.txt ├── src ├── FFICast.sol └── FoundryRandom.sol ├── test ├── FFICast.t.sol └── FoundryRandom.t.sol └── yarn.lock /.commitlintrc.yml: -------------------------------------------------------------------------------- 1 | extends: 2 | - "@commitlint/config-conventional" 3 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig http://EditorConfig.org 2 | 3 | # top-most EditorConfig file 4 | root = true 5 | 6 | # All files 7 | [*] 8 | charset = utf-8 9 | end_of_line = lf 10 | indent_size = 2 11 | indent_style = space 12 | insert_final_newline = true 13 | trim_trailing_whitespace = true 14 | 15 | [*.sol] 16 | indent_size = 4 17 | 18 | [*.tree] 19 | indent_size = 1 20 | -------------------------------------------------------------------------------- /.env.example: -------------------------------------------------------------------------------- 1 | export ETH_FROM="YOUR_DEFAULT_SENDER_ACCOUNT" 2 | export ETH_RPC_URL="https://sepolia.infura.io/v3/INFURA_API_KEY" 3 | export PRIVATE_KEY="YOUR_PRIVATE_KEY" 4 | -------------------------------------------------------------------------------- /.github/scripts/rename.sh: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | # https://gist.github.com/vncsna/64825d5609c146e80de8b1fd623011ca 4 | set -euo pipefail 5 | 6 | # Define the input vars 7 | GITHUB_REPOSITORY=${1?Error: Please pass username/repo, e.g. prb/foundry-template} 8 | GITHUB_REPOSITORY_OWNER=${2?Error: Please pass username, e.g. prb} 9 | 10 | echo "GITHUB_REPOSITORY: $GITHUB_REPOSITORY" 11 | echo "GITHUB_REPOSITORY_OWNER: $GITHUB_REPOSITORY_OWNER" 12 | 13 | # jq is like sed for JSON data 14 | JQ_OUTPUT=`jq \ 15 | --arg NAME "@$GITHUB_REPOSITORY" \ 16 | --arg AUTHOR_NAME "$GITHUB_REPOSITORY_OWNER" \ 17 | --arg URL "https://github.com/$GITHUB_REPOSITORY_OWNER" \ 18 | '.name = $NAME | .description = "" | .author |= ( .name = $AUTHOR_NAME | .url = $URL )' \ 19 | package.json 20 | ` 21 | 22 | # Overwrite package.json 23 | echo "$JQ_OUTPUT" > package.json 24 | 25 | # Make sed command compatible in both Mac and Linux environments 26 | # Reference: https://stackoverflow.com/a/38595160/8696958 27 | sedi () { 28 | sed --version >/dev/null 2>&1 && sed -i -- "$@" || sed -i "" "$@" 29 | } 30 | 31 | # Rename instances of "paulrberg/foundry-template" to the new repo name in README.md for badges only 32 | sedi "/gitpod/ s|paulrberg/foundry-template|"${GITHUB_REPOSITORY}"|;" "README.md" 33 | sedi "/gitpod-badge/ s|paulrberg/foundry-template|"${GITHUB_REPOSITORY}"|;" "README.md" 34 | sedi "/gha/ s|paulrberg/foundry-template|"${GITHUB_REPOSITORY}"|;" "README.md" 35 | sedi "/gha-badge/ s|paulrberg/foundry-template|"${GITHUB_REPOSITORY}"|;" "README.md" 36 | -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- 1 | name: "CI" 2 | 3 | env: 4 | FOUNDRY_PROFILE: "ci" 5 | 6 | on: 7 | pull_request: 8 | branches: 9 | - "main" 10 | push: 11 | branches: 12 | - "main" 13 | 14 | jobs: 15 | ci: 16 | runs-on: "ubuntu-latest" 17 | steps: 18 | - name: "Check out the repo" 19 | uses: "actions/checkout@v3" 20 | with: 21 | submodules: "recursive" 22 | 23 | - name: "Install Foundry" 24 | uses: "foundry-rs/foundry-toolchain@v1" 25 | with: 26 | version: "nightly" 27 | 28 | - name: "Install Node.js" 29 | uses: "actions/setup-node@v3" 30 | with: 31 | cache: "yarn" 32 | node-version: "lts/*" 33 | 34 | - name: "Install the Node.js dependencies" 35 | run: "yarn install --immutable" 36 | 37 | - name: "Lint the contracts" 38 | run: "yarn lint:sol" 39 | 40 | - name: "Add lint summary" 41 | run: | 42 | echo "## Lint" >> $GITHUB_STEP_SUMMARY 43 | echo "✅ Passed" >> $GITHUB_STEP_SUMMARY 44 | 45 | - name: "Show the Foundry config" 46 | run: "forge config" 47 | 48 | - name: "Run the tests" 49 | run: "forge test" 50 | 51 | - name: "Check that the contracts are each under 24kB" 52 | run: | 53 | forge --version 54 | forge build --sizes 55 | 56 | - name: "Add test summary" 57 | run: | 58 | echo "## Tests" >> $GITHUB_STEP_SUMMARY 59 | echo "✅ Passed" >> $GITHUB_STEP_SUMMARY 60 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # directories 2 | .yarn/* 3 | !.yarn/patches 4 | !.yarn/releases 5 | !.yarn/plugins 6 | !.yarn/sdks 7 | !.yarn/versions 8 | **/cache 9 | **/node_modules 10 | **/out 11 | 12 | # files 13 | *.env 14 | *.log 15 | .DS_Store 16 | .pnp.* 17 | yarn-debug.log* 18 | yarn-error.log* 19 | 20 | # broadcasts 21 | !/broadcast 22 | /broadcast/* 23 | /broadcast/*/31337/ 24 | -------------------------------------------------------------------------------- /.gitmodules: -------------------------------------------------------------------------------- 1 | [submodule "lib/forge-std"] 2 | branch = "master" 3 | path = "lib/forge-std" 4 | url = "https://github.com/foundry-rs/forge-std" 5 | [submodule "lib/prb-test"] 6 | branch = "0.3.1" 7 | path = "lib/prb-test" 8 | url = "https://github.com/paulrberg/prb-test" 9 | [submodule "lib/CramBit"] 10 | path = lib/CramBit 11 | url = https://github.com/joejordan/CramBit 12 | [submodule "lib\\CramBit"] 13 | branch = v0.1.1 14 | [submodule "lib/solidity-bytes-utils"] 15 | path = lib/solidity-bytes-utils 16 | url = https://github.com/GNSPS/solidity-bytes-utils 17 | [submodule "lib\\solidity-bytes-utils"] 18 | branch = v0.8.0 19 | -------------------------------------------------------------------------------- /.lintstagedrc.yml: -------------------------------------------------------------------------------- 1 | "*.{json,md,sol,yml}": 2 | - prettier --write 3 | -------------------------------------------------------------------------------- /.prettierignore: -------------------------------------------------------------------------------- 1 | # directories 2 | .yarn/ 3 | **/broadcast 4 | **/cache 5 | **/lib 6 | **/out 7 | **/node_modules 8 | 9 | # files 10 | *.env 11 | *.log 12 | .pnp.* 13 | coverage.json 14 | yarn-debug.log* 15 | yarn-error.log* 16 | -------------------------------------------------------------------------------- /.prettierrc.yml: -------------------------------------------------------------------------------- 1 | bracketSpacing: true 2 | printWidth: 120 3 | proseWrap: "always" 4 | singleQuote: false 5 | tabWidth: 2 6 | trailingComma: "all" 7 | useTabs: false 8 | 9 | overrides: 10 | - files: "*.sol" 11 | options: 12 | compiler: "0.8.17" 13 | tabWidth: 4 14 | -------------------------------------------------------------------------------- /.solhint.json: -------------------------------------------------------------------------------- 1 | { 2 | "extends": "solhint:recommended", 3 | "plugins": ["prettier"], 4 | "rules": { 5 | "code-complexity": ["error", 8], 6 | "compiler-version": ["error", ">=0.8.4"], 7 | "func-visibility": ["error", { "ignoreConstructors": true }], 8 | "max-line-length": ["error", 120], 9 | "not-rely-on-time": "off", 10 | "prettier/prettier": [ 11 | "error", 12 | { 13 | "endOfLine": "auto" 14 | } 15 | ], 16 | "reason-string": ["warn", { "maxLength": 64 }] 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /.solhintignore: -------------------------------------------------------------------------------- 1 | # directories 2 | **/lib 3 | **/node_modules 4 | -------------------------------------------------------------------------------- /.yarnrc.yml: -------------------------------------------------------------------------------- 1 | nodeLinker: "node-modules" 2 | 3 | plugins: 4 | - path: ".yarn/plugins/@yarnpkg/plugin-interactive-tools.cjs" 5 | spec: "@yarnpkg/plugin-interactive-tools" 6 | 7 | yarnPath: ".yarn/releases/yarn-3.2.4.cjs" 8 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Changelog 2 | 3 | ## 1.0.2 - 2022-12-23 4 | 5 | ### Fixed 6 | 7 | - Use relative imports for libs to avoid conflicts (Joe Jordan <@joejordan>) 8 | 9 | ## 1.0.1 - 2022-12-23 10 | 11 | ### Fixed 12 | 13 | - Removed an unused and erroring workflow (Joe Jordan <@joejordan>) 14 | 15 | ## 1.0.0 - 2022-12-23 16 | 17 | ### Added 18 | 19 | - Initial release (Joe Jordan <@joejordan>) 20 | -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2022 Joe Jordan 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 6 | 7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 10 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Foundry Random [![Open in Gitpod][gitpod-badge]][gitpod] [![Github Actions][gha-badge]][gha] [![Foundry][foundry-badge]][foundry] [![License: MIT][license-badge]][license] 2 | 3 | [gitpod]: https://gitpod.io/#https://github.com/joejordan/foundry-random 4 | [gitpod-badge]: https://img.shields.io/badge/Gitpod-Open%20in%20Gitpod-FFB45B?logo=gitpod 5 | [gha]: https://github.com/joejordan/foundry-random/actions 6 | [gha-badge]: https://github.com/joejordan/foundry-random/actions/workflows/ci.yml/badge.svg 7 | [foundry]: https://getfoundry.sh/ 8 | [foundry-badge]: https://img.shields.io/badge/Built%20with-Foundry-FFDB1C.svg 9 | [license]: https://opensource.org/licenses/MIT 10 | [license-badge]: https://img.shields.io/badge/License-MIT-blue.svg 11 | 12 | ***Generate reliably random numbers using Foundry's FFI cheat code.*** 13 | 14 | More than once now I have needed a reliably random number generator while using Foundry. Unfortunately, as of this writing, there is no `vm.random()` cheatcode included with this otherwise excellent development tool. 15 | 16 | This project fills that gap by utilizing the FFI cheatcode to launch `cast wallet new`, a tool included with Foundry to quickly generate a new random keypair, and returning the generated private key as a `bytes32` value to the user. We have also included a few additional creature comforts via the inclusion of several plug-and-play random number generator functions to make life easier. 17 | 18 | ### Example Use Case 19 | 20 | The original use case I had for this was seeding a smart contract deploy script with random attribute values that would remain constant for the life of the contract. Similar seeding functionality could also be useful for certain types of tests. 21 | 22 | ## Installation 23 | 24 | ### Foundry 25 | 26 | First, run the install step: 27 | 28 | ```sh 29 | forge install --no-commit joejordan/foundry-random 30 | ``` 31 | 32 | Then, add this to your `remappings.txt` file: 33 | 34 | ```text 35 | foundry-random=lib/foundry-random/src/ 36 | ``` 37 | 38 | ## Usage 39 | 40 | Import the library into your Solidity contract, i.e. 41 | 42 | ```solidity 43 | import { FoundryRandom } from "foundry-random/FoundryRandom.sol"; 44 | ``` 45 | 46 | The cleanest usage is probably to include it as an inherited contract on your Foundry Test or Script contract, as follows: 47 | 48 | 49 | ```solidity 50 | contract FoundryRandomTest is PRBTest, FoundryRandom { 51 | 52 | function setUp() public { 53 | // solhint-disable-previous-line no-empty-blocks 54 | } 55 | 56 | function testRandomNumber() public { 57 | uint256 randomNum; 58 | 59 | // generate a random number between 0 and 255 60 | randomNum = randomNumber(type(uint8).max); 61 | assertLte(randomNum, type(uint8).max); 62 | 63 | // generate a random number between 10 and 100 64 | randomNum = randomNumber(10, 100); 65 | assertGte(randomNum, 10); 66 | assertLte(randomNum, 100); 67 | } 68 | } 69 | 70 | ``` 71 | 72 | Check out the [tests](https://github.com/joejordan/foundry-random/blob/main/test/FoundryRandom.t.sol) for more usage examples. 73 | 74 | ## Contribute 75 | 76 | Contributions are welcome! [Open](https://github.com/joejordan/foundry-random/issues/new) an issue or submit a PR. There is always room for improvement. The instructions below will walk you through setting up for contributions. 77 | 78 | ### Pre-Requisites 79 | 80 | You will need the following software on your machine: 81 | 82 | - [Git](https://git-scm.com/downloads) 83 | - [Foundry](https://github.com/foundry-rs/foundry) 84 | - [Node.js](https://nodejs.org/en/download/) 85 | - [Yarn](https://yarnpkg.com/) 86 | 87 | ### Set Up 88 | 89 | Clone this repository: 90 | 91 | ```bash 92 | $ git clone https://github.com/joejordan/foundry-random.git 93 | ``` 94 | 95 | Then, inside the project's directory, run this to install dependencies: 96 | 97 | ```bash 98 | $ yarn install 99 | ``` 100 | 101 | Your environment should now be ready for your improvements. 102 | 103 | ## Security 104 | 105 | This code has not been professionally audited by any third parties. If you include this codebase or parts of it in a professional audit, please let me know via [Twitter Direct Message](https://twitter.com/JJordan) for inclusion in this documentation. 106 | 107 | If you discover any security issues with this codebase, please report them via [Twitter Direct Message](https://twitter.com/JJordan). 108 | 109 | ### Disclaimer 110 | 111 | This is experimental software and is provided on an "as is" basis. No expressed or implied warranties are granted of any kind. I will not be liable for any loss, direct or indirect, related to the use or misuse of this codebase. 112 | 113 | ## Acknowledgements 114 | 115 | - [Gonçalo Sá](https://twitter.com/GNSPS) for his fantastic [solidity-bytes-utils](https://github.com/GNSPS/solidity-bytes-utils) library. 116 | - All of the contributors to the [Foundry toolkit](https://github.com/foundry-rs/foundry) for bringing Solidity development to the next level. 117 | 118 | ## License 119 | 120 | foundry-random is released under the [MIT License](./LICENSE.md). 121 | -------------------------------------------------------------------------------- /foundry.toml: -------------------------------------------------------------------------------- 1 | # Full reference https://github.com/foundry-rs/foundry/tree/master/config 2 | 3 | [profile.default] 4 | auto_detect_solc = false 5 | bytecode_hash = "none" 6 | ffi = true 7 | fuzz = { runs = 256 } 8 | gas_reports = ["*"] 9 | libs = ["lib"] 10 | optimizer = true 11 | optimizer_runs = 10_000 12 | out = "out" 13 | solc = "0.8.17" 14 | src = "src" 15 | test = "test" 16 | 17 | [profile.ci] 18 | fuzz = { runs = 1_000 } 19 | verbosity = 4 20 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "foundry-random", 3 | "description": "Generate reliably random numbers using Foundry's FFI cheat code", 4 | "version": "1.0.2", 5 | "author": { 6 | "name": "Joe Jordan", 7 | "url": "https://github.com/joejordan" 8 | }, 9 | "bugs": { 10 | "url": "https://github.com/joejordan/foundry-random/issues" 11 | }, 12 | "homepage": "https://github.com/joejordan/foundry-random/#readme", 13 | "devDependencies": { 14 | "@commitlint/cli": "^17.3.0", 15 | "@commitlint/config-conventional": "^17.3.0", 16 | "commitizen": "^4.2.6", 17 | "cz-conventional-changelog": "^3.3.0", 18 | "husky": "^8.0.2", 19 | "lint-staged": "^13.1.0", 20 | "prettier": "^2.8.1", 21 | "prettier-plugin-solidity": "^1.1.0", 22 | "rimraf": "^3.0.2", 23 | "solhint": "^3.3.7", 24 | "solhint-plugin-prettier": "^0.0.5" 25 | }, 26 | "files": [ 27 | "/src", 28 | "CHANGELOG.md" 29 | ], 30 | "keywords": [ 31 | "blockchain", 32 | "ethereum", 33 | "forge", 34 | "foundry", 35 | "smart-contracts", 36 | "solidity", 37 | "random" 38 | ], 39 | "packageManager": "yarn@3.2.4", 40 | "repository": { 41 | "type": "git", 42 | "url": "https://github.com/joejordan/foundry-random" 43 | }, 44 | "resolutions": { 45 | "solhint/@solidity-parser/parser": "^0.14.5" 46 | }, 47 | "scripts": { 48 | "clean": "rimraf cache out", 49 | "lint": "yarn lint:sol && yarn prettier:check", 50 | "lint:sol": "solhint \"{src,test}/**/*.sol\"", 51 | "postinstall": "", 52 | "prettier:check": "prettier --check \"**/*.{json,md,sol,yml}\"", 53 | "prettier:write": "prettier --write \"**/*.{json,md,sol,yml}\"" 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /remappings.txt: -------------------------------------------------------------------------------- 1 | @prb/test/=lib/prb-test/src/ 2 | forge-std/=lib/forge-std/src/ 3 | src/=src/ 4 | crambit/=lib/CramBit/src/ 5 | solidity-bytes-utils=lib/solidity-bytes-utils/contracts 6 | -------------------------------------------------------------------------------- /src/FFICast.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity ^0.8.4; 3 | 4 | import { PRBTest } from "@prb/test/PRBTest.sol"; 5 | 6 | import { BytesLib } from "../lib/solidity-bytes-utils/contracts/BytesLib.sol"; 7 | import { CramBit } from "../lib/CramBit/src/CramBit.sol"; 8 | 9 | /** 10 | * @title FFICast 11 | * @author Joe Jordan 12 | * @notice Executes `cast wallet new` and parses the output to retrieve the randomly generated private key 13 | * @dev make sure that you have enabled `ffi = true` in your foundry.toml config file. 14 | */ 15 | contract FFICast is PRBTest { 16 | /// @notice return a random bytes32 value as provided by `cast wallet new` 17 | function generatePrivateKey() public returns (bytes32) { 18 | bytes memory privKeyData; 19 | 20 | string[] memory inputs = new string[](3); 21 | inputs[0] = "cast"; 22 | inputs[1] = "wallet"; 23 | inputs[2] = "new"; 24 | 25 | // execute `cast wallet new` and return the output to res 26 | bytes memory res = vm.ffi(inputs); 27 | 28 | // cast private key is returned in last 64 bytes at the end of res 29 | privKeyData = BytesLib.slice(res, res.length - 64, 64); 30 | 31 | // convert the weird ASCII-byte values returned by cast call into a valid bytes32 value 32 | return asciiToByte(privKeyData); 33 | } 34 | 35 | /// @dev VM::ffi([cast, wallet, new]) returns an ASCII-value-as-a-byte array that we need to 36 | /// convert from before we can deduce the private key that cast generated. 37 | function asciiToByte(bytes memory byteArray) internal pure returns (bytes32) { 38 | bytes memory converted; 39 | bytes memory convertedCompact; 40 | 41 | // first pass: get all ASCII representations in the byte array converted to their actual byte value 42 | // note: value looks like the following after first pass: 43 | // 0x070a0c020c0f0304000f050b0506070b080d0408090003040409... 44 | for (uint256 i = 0; i < byteArray.length; i++) { 45 | uint8 char = uint8(byteArray[i]); 46 | converted = BytesLib.concat(converted, charToByte(char)); 47 | } 48 | 49 | // second pass: merge back-to-back bytes into a single byte 50 | // note: value is formatted into a proper private key format, i.e. 51 | // 0x7ac2cf340f5b567b8d48903449ef3b3f46236866a215be2891eecd7a9169fcaf 52 | for (uint256 i = 0; i < converted.length - 1; i++) { 53 | bytes1 mergedByte = mergeBytes(converted[i], converted[i + 1]); 54 | convertedCompact = bytes.concat(convertedCompact, mergedByte); 55 | // skip the next entry since we included i+1 in the mergeBytes call above 56 | i++; 57 | } 58 | 59 | // convert dynamic bytes array to bytes32 60 | bytes32 pk = BytesLib.toBytes32(convertedCompact, 0); 61 | 62 | return pk; 63 | } 64 | 65 | /// @notice Using the CramBit library, we can easily merge 66 | /// what are essentially half-bytes into a single full byte. 67 | function mergeBytes(bytes1 byteVal1, bytes1 byteVal2) internal pure returns (bytes1) { 68 | CramBit.PackBytes1[] memory packBytes = new CramBit.PackBytes1[](2); 69 | 70 | packBytes[0] = CramBit.PackBytes1({ maxBits: 4, data: byteVal1 }); 71 | packBytes[1] = CramBit.PackBytes1({ maxBits: 4, data: byteVal2 }); 72 | 73 | return CramBit.pack(packBytes); 74 | } 75 | 76 | /// @dev 0123456789abcdef = 48 49 50 51 52 53 54 55 56 57 97 98 99 100 101 102 77 | function charToByte(uint8 charVal) internal pure returns (bytes memory) { 78 | // return bytes(0->9) value 79 | if (charVal > 47 && charVal < 58) { 80 | return abi.encodePacked(bytes1(charVal - 48)); 81 | } 82 | // return bytes(a->f) value 83 | if (charVal > 96 && charVal < 103) { 84 | return abi.encodePacked(bytes1(charVal - 87)); 85 | } 86 | 87 | /// @notice revert if we've detected a non-hex character 88 | /// @dev if this happens, it's possible that `cast wallet new` has changed its private key text output. 89 | revert("NON_HEX_CHARACTER_FOUND"); 90 | } 91 | } 92 | -------------------------------------------------------------------------------- /src/FoundryRandom.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity ^0.8.4; 3 | 4 | import { BytesLib } from "../lib/solidity-bytes-utils/contracts/BytesLib.sol"; 5 | import { CramBit } from "../lib/CramBit/src/CramBit.sol"; 6 | 7 | import { FFICast } from "./FFICast.sol"; 8 | 9 | /** 10 | * @title FoundryRandom 11 | * @author Joe Jordan 12 | * @notice Generate reliably random numbers using Foundry's FFI cheat code. 13 | * @dev make sure that you have enabled `ffi = true` in your foundry.toml config file. 14 | */ 15 | contract FoundryRandom { 16 | FFICast private ffi = new FFICast(); 17 | 18 | /// @notice generate a random uint between 0 and maxVal 19 | /// @param maxVal the maximum value of the random number you wish to generate. 20 | /// @return a random number that is less than or equal to maxVal 21 | function randomNumber(uint256 maxVal) public returns (uint256) { 22 | bytes32 _pk = ffi.generatePrivateKey(); 23 | uint16 _maxBits = maxBits(maxVal); 24 | 25 | // return pk untouched if maxBits == 256, else get our desired number of bits 26 | bytes32 randomBytes = _maxBits == 256 ? _pk : CramBit.getLastNBits32(_pk, _maxBits); 27 | 28 | // convert random bytes extracted from pk to uint 29 | uint256 randomUint = uint256(randomBytes); 30 | 31 | if (randomUint > maxVal) { 32 | // if our random number is greater than maxVal, 33 | // subtract maxVal and use that number as the random value. 34 | return randomUint - maxVal; 35 | } 36 | 37 | return randomUint; 38 | } 39 | 40 | /// @notice generate a random uint between minVal and maxVal 41 | /// @param minVal the minimum value of the random number you wish to generate. 42 | /// @param maxVal the maximum value of the random number you wish to generate. 43 | /// @return a random number in the range provided. 44 | function randomNumber(uint256 minVal, uint256 maxVal) public returns (uint256) { 45 | require(maxVal >= minVal, "maxVal must be >= minVal"); 46 | bytes32 _pk = ffi.generatePrivateKey(); 47 | uint16 _maxBitsOfRange = maxBits(maxVal) - maxBits(minVal); 48 | 49 | // return pk untouched if maxBits == 256, else get our desired number of bits 50 | bytes32 randomBytes = _maxBitsOfRange == 256 ? _pk : CramBit.getLastNBits32(_pk, _maxBitsOfRange); 51 | 52 | // convert random bytes to uint and add back the minVal so that the random number falls in the desired range 53 | uint256 randomUint = uint256(randomBytes) + minVal; 54 | 55 | if (randomUint > maxVal) { 56 | // if our random number is greater than maxVal, 57 | // subtract maxVal and use that number as the random value. 58 | return randomUint - maxVal; 59 | } 60 | 61 | return randomUint; 62 | } 63 | 64 | /// @notice generate a random bytes32 value 65 | function randomBytes32() public returns (bytes32) { 66 | return ffi.generatePrivateKey(); 67 | } 68 | 69 | /// @notice extract number from a bytes32 value 70 | /// @return value - a maximum random value; remainingBytes - bytes remaining after we shift out the used ones 71 | /// @dev useful in reusing generated private key for several smaller numbers 72 | /// @dev this function has no checks to ensure you have enough populated bits 73 | /// in the _pk argument to consider the maximum range desired. Proceed with care. 74 | function extractNumberFromBytes( 75 | uint256 maxVal, 76 | bytes32 _pk 77 | ) public pure returns (uint256 value, bytes32 remainingBytes) { 78 | uint16 _maxBits = maxBits(maxVal); 79 | 80 | // return pk untouched if maxBits == 256, else get our desired number of bits 81 | bytes32 randomBytes = _maxBits == 256 ? _pk : CramBit.getLastNBits32(_pk, _maxBits); 82 | 83 | // convert random bytes extracted from pk to uint 84 | uint256 randomUint = uint256(randomBytes); 85 | 86 | if (randomUint > maxVal) { 87 | // if our random number is greater than maxVal, 88 | // subtract maxVal and use that number as the random value. 89 | return (randomUint - maxVal, CramBit.bitRightShift32(_pk, _maxBits)); 90 | } 91 | 92 | return (randomUint, CramBit.bitRightShift32(_pk, _maxBits)); 93 | } 94 | 95 | /// @notice determine how many bits are required to fit the passed value 96 | function maxBits(uint256 value) public pure returns (uint16) { 97 | uint16 bitCount; 98 | while (value > 0) { 99 | ++bitCount; 100 | value = value >> 1; 101 | } 102 | return bitCount; 103 | } 104 | } 105 | -------------------------------------------------------------------------------- /test/FFICast.t.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity ^0.8.4; 3 | 4 | import { console2 } from "forge-std/console2.sol"; 5 | import { PRBTest } from "@prb/test/PRBTest.sol"; 6 | 7 | import { BytesLib } from "solidity-bytes-utils/BytesLib.sol"; 8 | import { CramBit } from "../lib/CramBit/src/CramBit.sol"; 9 | 10 | import { FFICast } from "../src/FFICast.sol"; 11 | 12 | /// @notice basic functionality test of our FFICast project 13 | contract FFICastTest is PRBTest { 14 | FFICast public ffi; 15 | 16 | function setUp() public { 17 | ffi = new FFICast(); 18 | } 19 | 20 | /// @notice assert that the FFI private key generator returns a bytes32 > 0 21 | function testGetRandomPrivateKey() public { 22 | bytes32 pk = ffi.generatePrivateKey(); 23 | assertGt(uint256(pk), 0); 24 | } 25 | 26 | /// @notice output 10 randomly generated private keys 27 | function testConsole10PrivateKeys() public { 28 | for (uint256 i = 0; i < 10; i++) { 29 | console2.logBytes32(ffi.generatePrivateKey()); 30 | } 31 | } 32 | } 33 | -------------------------------------------------------------------------------- /test/FoundryRandom.t.sol: -------------------------------------------------------------------------------- 1 | // SPDX-License-Identifier: MIT 2 | pragma solidity >=0.8.4; 3 | 4 | import { console2 } from "forge-std/console2.sol"; 5 | import { PRBTest } from "@prb/test/PRBTest.sol"; 6 | 7 | import { BytesLib } from "../lib/solidity-bytes-utils/contracts/BytesLib.sol"; 8 | import { CramBit } from "../lib/CramBit/src/CramBit.sol"; 9 | 10 | import { FoundryRandom } from "../src/FoundryRandom.sol"; 11 | 12 | /// @notice tests of our Foundry random number generators. 13 | contract FoundryRandomTest is PRBTest, FoundryRandom { 14 | function setUp() public { 15 | // solhint-disable-previous-line no-empty-blocks 16 | } 17 | 18 | /// @notice test the random number generator so that it returns values within the users' desired range 19 | function testFoundryRandomNumber() public { 20 | uint256 randomNum; 21 | 22 | randomNum = randomNumber(type(uint8).max); 23 | assertLte(randomNum, type(uint8).max); 24 | 25 | randomNum = randomNumber(type(uint64).max); 26 | assertLte(randomNum, type(uint64).max); 27 | 28 | randomNum = randomNumber(type(uint248).max); 29 | assertLte(randomNum, type(uint248).max); 30 | 31 | randomNum = randomNumber(type(uint256).max); 32 | assertLte(randomNum, type(uint256).max); 33 | 34 | randomNum = randomNumber(0); 35 | assertEq(randomNum, 0); 36 | 37 | randomNum = randomNumber(1); 38 | assertLte(randomNum, 1); 39 | 40 | randomNum = randomNumber(10); 41 | assertLte(randomNum, 10); 42 | 43 | randomNum = randomNumber(123456789); 44 | assertLte(randomNum, 123456789); 45 | } 46 | 47 | /// @notice fuzz test the random number generator 48 | /// @dev ensure you have a decent number of fuzz rounds enabled in your foundry.toml file 49 | /// ex: fuzz = { runs = 256 } 50 | function testFoundryRandomNumberFuzz(uint256 maxVal) public { 51 | uint256 randomNum; 52 | 53 | randomNum = randomNumber(maxVal); 54 | assertLte(randomNum, maxVal); 55 | } 56 | 57 | /// @notice test the random number generator so that it returns values within the users' desired range 58 | function testFoundryRandomNumberMinMax() public { 59 | uint256 randomNum; 60 | 61 | randomNum = randomNumber(type(uint8).max, type(uint16).max); 62 | assertGte(randomNum, type(uint8).max); 63 | assertLte(randomNum, type(uint16).max); 64 | 65 | randomNum = randomNumber(type(uint64).max, type(uint128).max); 66 | assertGte(randomNum, type(uint64).max); 67 | assertLte(randomNum, type(uint128).max); 68 | 69 | randomNum = randomNumber(type(uint248).max, type(uint256).max); 70 | assertGte(randomNum, type(uint248).max); 71 | assertLte(randomNum, type(uint256).max); 72 | 73 | randomNum = randomNumber(0, type(uint256).max); 74 | assertGte(randomNum, 0); 75 | assertLte(randomNum, type(uint256).max); 76 | 77 | randomNum = randomNumber(0, 0); 78 | assertEq(randomNum, 0); 79 | 80 | randomNum = randomNumber(1, 1); 81 | assertEq(randomNum, 1); 82 | 83 | randomNum = randomNumber(0, 1); 84 | assert(randomNum == 0 || randomNum == 1); 85 | 86 | randomNum = randomNumber(1, 2); 87 | assert(randomNum == 1 || randomNum == 2); 88 | 89 | randomNum = randomNumber(123456789, 987654321); 90 | assertGte(randomNum, 123456789); 91 | assertLte(randomNum, 987654321); 92 | } 93 | 94 | /// @notice fuzz test the random number generator min max 95 | /// @dev ensure you have a decent number of fuzz rounds enabled in your foundry.toml file 96 | /// ex: fuzz = { runs = 256 } 97 | function testFoundryRandomNumberMinMaxFuzz(uint256 minVal, uint256 maxVal) public { 98 | vm.assume(maxVal >= minVal); 99 | uint256 randomNum; 100 | 101 | randomNum = randomNumber(minVal, maxVal); 102 | assertGte(randomNum, minVal); 103 | assertLte(randomNum, maxVal); 104 | } 105 | 106 | /// @notice example on reusing a single random bytes32 multiple times for a series of smaller random uint ranges 107 | function testFoundryRandomReuse() public { 108 | uint256 randomUint; 109 | // generate a single random bytes32 value 110 | bytes32 _randomBytes32 = randomBytes32(); 111 | bytes32 _remainingBytes32 = _randomBytes32; 112 | 113 | // reuse it multiple times 114 | (randomUint, _remainingBytes32) = extractNumberFromBytes(10, _randomBytes32); 115 | console2.log("Random Uint (Max 10) = ", randomUint); 116 | console2.log("Remaining Bytes:"); 117 | console2.logBytes32(_remainingBytes32); 118 | 119 | (randomUint, _remainingBytes32) = extractNumberFromBytes(100, _remainingBytes32); 120 | console2.log("Random Uint (Max 100) = ", randomUint); 121 | console2.log("Remaining Bytes:"); 122 | console2.logBytes32(_remainingBytes32); 123 | 124 | (randomUint, _remainingBytes32) = extractNumberFromBytes(1000, _remainingBytes32); 125 | console2.log("Random Uint (Max 1000) = ", randomUint); 126 | console2.log("Remaining Bytes:"); 127 | console2.logBytes32(_remainingBytes32); 128 | 129 | (randomUint, _remainingBytes32) = extractNumberFromBytes(100_000, _remainingBytes32); 130 | console2.log("Random Uint (Max 100_000) = ", randomUint); 131 | console2.log("Remaining Bytes:"); 132 | console2.logBytes32(_remainingBytes32); 133 | 134 | (randomUint, _remainingBytes32) = extractNumberFromBytes(100_000_000, _remainingBytes32); 135 | console2.log("Random Uint (Max 100_000_000) = ", randomUint); 136 | console2.log("Remaining Bytes:"); 137 | console2.logBytes32(_remainingBytes32); 138 | 139 | (randomUint, _remainingBytes32) = extractNumberFromBytes(100_000_000_000_000, _remainingBytes32); 140 | console2.log("Random Uint (Max 100_000_000_000_000) = ", randomUint); 141 | console2.log("Remaining Bytes:"); 142 | console2.logBytes32(_remainingBytes32); 143 | 144 | (randomUint, _remainingBytes32) = extractNumberFromBytes(100_000_000_000_000_000_000_000, _remainingBytes32); 145 | console2.log("Random Uint (Max 100_000_000_000_000_000_000_000) = ", randomUint); 146 | console2.log("Remaining Bytes:"); 147 | console2.logBytes32(_remainingBytes32); 148 | } 149 | } 150 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # This file is generated by running "yarn install" inside your project. 2 | # Manual changes might be lost - proceed with caution! 3 | 4 | __metadata: 5 | version: 6 6 | cacheKey: 8 7 | 8 | "@babel/code-frame@npm:^7.0.0": 9 | version: 7.18.6 10 | resolution: "@babel/code-frame@npm:7.18.6" 11 | dependencies: 12 | "@babel/highlight": ^7.18.6 13 | checksum: 195e2be3172d7684bf95cff69ae3b7a15a9841ea9d27d3c843662d50cdd7d6470fd9c8e64be84d031117e4a4083486effba39f9aef6bbb2c89f7f21bcfba33ba 14 | languageName: node 15 | linkType: hard 16 | 17 | "@babel/helper-validator-identifier@npm:^7.18.6": 18 | version: 7.18.6 19 | resolution: "@babel/helper-validator-identifier@npm:7.18.6" 20 | checksum: e295254d616bbe26e48c196a198476ab4d42a73b90478c9842536cf910ead887f5af6b5c4df544d3052a25ccb3614866fa808dc1e3a5a4291acd444e243c0648 21 | languageName: node 22 | linkType: hard 23 | 24 | "@babel/highlight@npm:^7.18.6": 25 | version: 7.18.6 26 | resolution: "@babel/highlight@npm:7.18.6" 27 | dependencies: 28 | "@babel/helper-validator-identifier": ^7.18.6 29 | chalk: ^2.0.0 30 | js-tokens: ^4.0.0 31 | checksum: 92d8ee61549de5ff5120e945e774728e5ccd57fd3b2ed6eace020ec744823d4a98e242be1453d21764a30a14769ecd62170fba28539b211799bbaf232bbb2789 32 | languageName: node 33 | linkType: hard 34 | 35 | "@commitlint/cli@npm:^17.3.0": 36 | version: 17.3.0 37 | resolution: "@commitlint/cli@npm:17.3.0" 38 | dependencies: 39 | "@commitlint/format": ^17.0.0 40 | "@commitlint/lint": ^17.3.0 41 | "@commitlint/load": ^17.3.0 42 | "@commitlint/read": ^17.2.0 43 | "@commitlint/types": ^17.0.0 44 | execa: ^5.0.0 45 | lodash.isfunction: ^3.0.9 46 | resolve-from: 5.0.0 47 | resolve-global: 1.0.0 48 | yargs: ^17.0.0 49 | bin: 50 | commitlint: cli.js 51 | checksum: 9f544ea528198bbb8ee00c54dc68a4933c680bd6e995817b7acabe3352835ee77b7c86f522a0bb749684422d469365fdc86c134012c9b1c0af42a2e1ed3b342c 52 | languageName: node 53 | linkType: hard 54 | 55 | "@commitlint/config-conventional@npm:^17.3.0": 56 | version: 17.3.0 57 | resolution: "@commitlint/config-conventional@npm:17.3.0" 58 | dependencies: 59 | conventional-changelog-conventionalcommits: ^5.0.0 60 | checksum: cf11a2b5388167f90e339f8b31f4b869c6cdb2a3830343d688f3f6dde7bc2feb794f45a746765823c5d64b835b03736d54b8f393480ebaabbf635709f9c4c172 61 | languageName: node 62 | linkType: hard 63 | 64 | "@commitlint/config-validator@npm:^17.0.3": 65 | version: 17.0.3 66 | resolution: "@commitlint/config-validator@npm:17.0.3" 67 | dependencies: 68 | "@commitlint/types": ^17.0.0 69 | ajv: ^8.11.0 70 | checksum: bc543193bbe132e1fc351bd912434a7214055e8b865ea661b016c6e05c84714d75d8dc54ac6dcc1d53e872ef3665e4a0cf0e3817cff88a01201bf0b37d23744f 71 | languageName: node 72 | linkType: hard 73 | 74 | "@commitlint/config-validator@npm:^17.1.0": 75 | version: 17.1.0 76 | resolution: "@commitlint/config-validator@npm:17.1.0" 77 | dependencies: 78 | "@commitlint/types": ^17.0.0 79 | ajv: ^8.11.0 80 | checksum: 18b4779837979bf9e240de689c49b9d0dc1e053e677ec13826204594edc052510f37a30bcd8826a054cbcb42a7285fc23e160082b281e0089f18039958ec6a53 81 | languageName: node 82 | linkType: hard 83 | 84 | "@commitlint/ensure@npm:^17.3.0": 85 | version: 17.3.0 86 | resolution: "@commitlint/ensure@npm:17.3.0" 87 | dependencies: 88 | "@commitlint/types": ^17.0.0 89 | lodash.camelcase: ^4.3.0 90 | lodash.kebabcase: ^4.1.1 91 | lodash.snakecase: ^4.1.1 92 | lodash.startcase: ^4.4.0 93 | lodash.upperfirst: ^4.3.1 94 | checksum: 55f880497fd5858d60e1664372c644819c8095f29b8587b7151d6c75d4d22fcfa201b159f6b8c917e13f5960479ec0daaae89b2b72fdd2ba2abc383f609d0798 95 | languageName: node 96 | linkType: hard 97 | 98 | "@commitlint/execute-rule@npm:^17.0.0": 99 | version: 17.0.0 100 | resolution: "@commitlint/execute-rule@npm:17.0.0" 101 | checksum: cb37e5c6e0e16bf04e8f344094146ed2de8155456191da88fb9a1b943a9b5a98e0f6ef49c55b239104eb68634df681fd3be05311bf2da0cb6b171fdd24371669 102 | languageName: node 103 | linkType: hard 104 | 105 | "@commitlint/format@npm:^17.0.0": 106 | version: 17.0.0 107 | resolution: "@commitlint/format@npm:17.0.0" 108 | dependencies: 109 | "@commitlint/types": ^17.0.0 110 | chalk: ^4.1.0 111 | checksum: e54705bdc91741632bac6ae330ba5d08110ec7575900585f4947487e7189a3d586396a3da3f1622fd3b6a49be9af1f71519a1ffeaa562d4cc7349bde3846eb8a 112 | languageName: node 113 | linkType: hard 114 | 115 | "@commitlint/is-ignored@npm:^17.2.0": 116 | version: 17.2.0 117 | resolution: "@commitlint/is-ignored@npm:17.2.0" 118 | dependencies: 119 | "@commitlint/types": ^17.0.0 120 | semver: 7.3.7 121 | checksum: ae88eae5f4661d963a46ed39ae58dd3e3b0a1139cbab59f76f535170eb263c203e25d67286f3a0dedb7cfd77606d65d65a9eaa8e4a1949cd82d342064c4e5cc3 122 | languageName: node 123 | linkType: hard 124 | 125 | "@commitlint/lint@npm:^17.3.0": 126 | version: 17.3.0 127 | resolution: "@commitlint/lint@npm:17.3.0" 128 | dependencies: 129 | "@commitlint/is-ignored": ^17.2.0 130 | "@commitlint/parse": ^17.2.0 131 | "@commitlint/rules": ^17.3.0 132 | "@commitlint/types": ^17.0.0 133 | checksum: 71a7b2cbb0eaeebcf50d66260112abe30c1118a55c7c4c89f72c40bdc52149455023877a9906d272d53f6c9673713dbd3baac14a7bcf6c81e618db3fc8d83e05 134 | languageName: node 135 | linkType: hard 136 | 137 | "@commitlint/load@npm:>6.1.1": 138 | version: 17.0.3 139 | resolution: "@commitlint/load@npm:17.0.3" 140 | dependencies: 141 | "@commitlint/config-validator": ^17.0.3 142 | "@commitlint/execute-rule": ^17.0.0 143 | "@commitlint/resolve-extends": ^17.0.3 144 | "@commitlint/types": ^17.0.0 145 | "@types/node": ">=12" 146 | chalk: ^4.1.0 147 | cosmiconfig: ^7.0.0 148 | cosmiconfig-typescript-loader: ^2.0.0 149 | lodash: ^4.17.19 150 | resolve-from: ^5.0.0 151 | typescript: ^4.6.4 152 | checksum: 786b7064470b4c38577a10910ad725b4371e9f649fbcd4b6018ec4dec2b7f30bc60c6f02807b154ca59f5d5fd347f3d4a46523c9f44e324c05902a2fd29dfb17 153 | languageName: node 154 | linkType: hard 155 | 156 | "@commitlint/load@npm:^17.3.0": 157 | version: 17.3.0 158 | resolution: "@commitlint/load@npm:17.3.0" 159 | dependencies: 160 | "@commitlint/config-validator": ^17.1.0 161 | "@commitlint/execute-rule": ^17.0.0 162 | "@commitlint/resolve-extends": ^17.3.0 163 | "@commitlint/types": ^17.0.0 164 | "@types/node": ^14.0.0 165 | chalk: ^4.1.0 166 | cosmiconfig: ^7.0.0 167 | cosmiconfig-typescript-loader: ^4.0.0 168 | lodash.isplainobject: ^4.0.6 169 | lodash.merge: ^4.6.2 170 | lodash.uniq: ^4.5.0 171 | resolve-from: ^5.0.0 172 | ts-node: ^10.8.1 173 | typescript: ^4.6.4 174 | checksum: 7049eb87f53af960761bcabb04a5b05cde0d41a540d9d7138e766dd4489a067d70bfd1c558892d87bc30ccceb1b8db1ff019ca9966caff94c6fa83c5ea836c18 175 | languageName: node 176 | linkType: hard 177 | 178 | "@commitlint/message@npm:^17.2.0": 179 | version: 17.2.0 180 | resolution: "@commitlint/message@npm:17.2.0" 181 | checksum: 504760cfb1004d571f198d60641d2dc3e59e0ac28a244ba767fe938ee1124399acbe5be3b074da9ec88a9cb6b0378e198833c4b983feaeb0e4f1f886bbe927b6 182 | languageName: node 183 | linkType: hard 184 | 185 | "@commitlint/parse@npm:^17.2.0": 186 | version: 17.2.0 187 | resolution: "@commitlint/parse@npm:17.2.0" 188 | dependencies: 189 | "@commitlint/types": ^17.0.0 190 | conventional-changelog-angular: ^5.0.11 191 | conventional-commits-parser: ^3.2.2 192 | checksum: a6be0e9124debb2e2d97dd442a855c9dafcc86999b970f52e77bddf4a5e5ff569011ea1a2f5ab6075ec1f5634b8354e68033fd01542abf9c72b026ae77306189 193 | languageName: node 194 | linkType: hard 195 | 196 | "@commitlint/read@npm:^17.2.0": 197 | version: 17.2.0 198 | resolution: "@commitlint/read@npm:17.2.0" 199 | dependencies: 200 | "@commitlint/top-level": ^17.0.0 201 | "@commitlint/types": ^17.0.0 202 | fs-extra: ^10.0.0 203 | git-raw-commits: ^2.0.0 204 | minimist: ^1.2.6 205 | checksum: b2adcbe1f1853a0d6b477c245a22ce18eda0e15c47d0211aa141f5101acf84b77e4c9bace076021e8d0a78b3d05c1f7f4e04e550ea0317992b592686e07b81ac 206 | languageName: node 207 | linkType: hard 208 | 209 | "@commitlint/resolve-extends@npm:^17.0.3": 210 | version: 17.0.3 211 | resolution: "@commitlint/resolve-extends@npm:17.0.3" 212 | dependencies: 213 | "@commitlint/config-validator": ^17.0.3 214 | "@commitlint/types": ^17.0.0 215 | import-fresh: ^3.0.0 216 | lodash: ^4.17.19 217 | resolve-from: ^5.0.0 218 | resolve-global: ^1.0.0 219 | checksum: 384fc59a5a8f3da2b4551b92b2734f8d22c39ba389ca31df2f7a8ea1e68e8c15b137faf4ae20529a7b826ca6a7f5e5cd30ab2c903f9d65f74d0b43dcac5f8e0c 220 | languageName: node 221 | linkType: hard 222 | 223 | "@commitlint/resolve-extends@npm:^17.3.0": 224 | version: 17.3.0 225 | resolution: "@commitlint/resolve-extends@npm:17.3.0" 226 | dependencies: 227 | "@commitlint/config-validator": ^17.1.0 228 | "@commitlint/types": ^17.0.0 229 | import-fresh: ^3.0.0 230 | lodash.mergewith: ^4.6.2 231 | resolve-from: ^5.0.0 232 | resolve-global: ^1.0.0 233 | checksum: 9f4a89f412d6505a7154dd27fbfd428cb261e3aa39bd825c1f3d6257b5674a9cb3dcdaf65e6dab7b64f379b2984fea7fb4a37142cec7bb8df8a6df8e0761763c 234 | languageName: node 235 | linkType: hard 236 | 237 | "@commitlint/rules@npm:^17.3.0": 238 | version: 17.3.0 239 | resolution: "@commitlint/rules@npm:17.3.0" 240 | dependencies: 241 | "@commitlint/ensure": ^17.3.0 242 | "@commitlint/message": ^17.2.0 243 | "@commitlint/to-lines": ^17.0.0 244 | "@commitlint/types": ^17.0.0 245 | execa: ^5.0.0 246 | checksum: bc8c16701af4634e7ef260c41602d628dc49bcaaa0cae97674d9ce303db68b703a5fa7f2e8edfc67dfb115e4d0d8616261d11a472833d61c248b54bee9d84748 247 | languageName: node 248 | linkType: hard 249 | 250 | "@commitlint/to-lines@npm:^17.0.0": 251 | version: 17.0.0 252 | resolution: "@commitlint/to-lines@npm:17.0.0" 253 | checksum: ccad787a3baf567c6c589e96e110aa2582103b50eaa9b70493116c08a0e5c6c50669c05e67b0a77cd803d66c031b1dcb9805b752d604178dbc4c744fc7f9bb04 254 | languageName: node 255 | linkType: hard 256 | 257 | "@commitlint/top-level@npm:^17.0.0": 258 | version: 17.0.0 259 | resolution: "@commitlint/top-level@npm:17.0.0" 260 | dependencies: 261 | find-up: ^5.0.0 262 | checksum: 2e43d021a63faee67aa0e63b86a3ab9347ccda1b81f1f0722841223bd6bf127de954933c2ca3172fac0a1ce07a8b3bed62ac8f4afa04d50281dc5f80b43b61fb 263 | languageName: node 264 | linkType: hard 265 | 266 | "@commitlint/types@npm:^17.0.0": 267 | version: 17.0.0 268 | resolution: "@commitlint/types@npm:17.0.0" 269 | dependencies: 270 | chalk: ^4.1.0 271 | checksum: 210636d3923f93f7cfc409eac04376b0fe50356a0e08f25a37b43d5cd9ca4363f7b03ca2e7736cbf95b62d67733fe8e1028269d35b4fddd1b3f2a653c90ca85c 272 | languageName: node 273 | linkType: hard 274 | 275 | "@cspotcode/source-map-support@npm:^0.8.0": 276 | version: 0.8.1 277 | resolution: "@cspotcode/source-map-support@npm:0.8.1" 278 | dependencies: 279 | "@jridgewell/trace-mapping": 0.3.9 280 | checksum: 5718f267085ed8edb3e7ef210137241775e607ee18b77d95aa5bd7514f47f5019aa2d82d96b3bf342ef7aa890a346fa1044532ff7cc3009e7d24fce3ce6200fa 281 | languageName: node 282 | linkType: hard 283 | 284 | "@jridgewell/resolve-uri@npm:^3.0.3": 285 | version: 3.0.8 286 | resolution: "@jridgewell/resolve-uri@npm:3.0.8" 287 | checksum: 28d739f49b4a52a95843b15669dcb2daaab48f0eaef8f457b9aacd0bdebeb60468d0684f73244f613b786e9d871c25abdbe6f55991bba36814cdadc399dbb3a8 288 | languageName: node 289 | linkType: hard 290 | 291 | "@jridgewell/sourcemap-codec@npm:^1.4.10": 292 | version: 1.4.14 293 | resolution: "@jridgewell/sourcemap-codec@npm:1.4.14" 294 | checksum: 61100637b6d173d3ba786a5dff019e1a74b1f394f323c1fee337ff390239f053b87266c7a948777f4b1ee68c01a8ad0ab61e5ff4abb5a012a0b091bec391ab97 295 | languageName: node 296 | linkType: hard 297 | 298 | "@jridgewell/trace-mapping@npm:0.3.9": 299 | version: 0.3.9 300 | resolution: "@jridgewell/trace-mapping@npm:0.3.9" 301 | dependencies: 302 | "@jridgewell/resolve-uri": ^3.0.3 303 | "@jridgewell/sourcemap-codec": ^1.4.10 304 | checksum: d89597752fd88d3f3480845691a05a44bd21faac18e2185b6f436c3b0fd0c5a859fbbd9aaa92050c4052caf325ad3e10e2e1d1b64327517471b7d51babc0ddef 305 | languageName: node 306 | linkType: hard 307 | 308 | "@solidity-parser/parser@npm:^0.14.5": 309 | version: 0.14.5 310 | resolution: "@solidity-parser/parser@npm:0.14.5" 311 | dependencies: 312 | antlr4ts: ^0.5.0-alpha.4 313 | checksum: 9e85a0d4f8a05a11db6022444b70b2f353e2358467b1cce44cdda703ae1e3c7337e1b8cbc2eec8e14a8f34f9c60b42f325e5fe9b3c934cc980e35091e292d7ee 314 | languageName: node 315 | linkType: hard 316 | 317 | "@tsconfig/node10@npm:^1.0.7": 318 | version: 1.0.9 319 | resolution: "@tsconfig/node10@npm:1.0.9" 320 | checksum: a33ae4dc2a621c0678ac8ac4bceb8e512ae75dac65417a2ad9b022d9b5411e863c4c198b6ba9ef659e14b9fb609bbec680841a2e84c1172df7a5ffcf076539df 321 | languageName: node 322 | linkType: hard 323 | 324 | "@tsconfig/node12@npm:^1.0.7": 325 | version: 1.0.11 326 | resolution: "@tsconfig/node12@npm:1.0.11" 327 | checksum: 5ce29a41b13e7897a58b8e2df11269c5395999e588b9a467386f99d1d26f6c77d1af2719e407621412520ea30517d718d5192a32403b8dfcc163bf33e40a338a 328 | languageName: node 329 | linkType: hard 330 | 331 | "@tsconfig/node14@npm:^1.0.0": 332 | version: 1.0.3 333 | resolution: "@tsconfig/node14@npm:1.0.3" 334 | checksum: 19275fe80c4c8d0ad0abed6a96dbf00642e88b220b090418609c4376e1cef81bf16237bf170ad1b341452feddb8115d8dd2e5acdfdea1b27422071163dc9ba9d 335 | languageName: node 336 | linkType: hard 337 | 338 | "@tsconfig/node16@npm:^1.0.2": 339 | version: 1.0.3 340 | resolution: "@tsconfig/node16@npm:1.0.3" 341 | checksum: 3a8b657dd047495b7ad23437d6afd20297ce90380ff0bdee93fc7d39a900dbd8d9e26e53ff6b465e7967ce2adf0b218782590ce9013285121e6a5928fbd6819f 342 | languageName: node 343 | linkType: hard 344 | 345 | "@types/minimist@npm:^1.2.0": 346 | version: 1.2.2 347 | resolution: "@types/minimist@npm:1.2.2" 348 | checksum: b8da83c66eb4aac0440e64674b19564d9d86c80ae273144db9681e5eeff66f238ade9515f5006ffbfa955ceff8b89ad2bd8ec577d7caee74ba101431fb07045d 349 | languageName: node 350 | linkType: hard 351 | 352 | "@types/node@npm:>=12": 353 | version: 18.0.0 354 | resolution: "@types/node@npm:18.0.0" 355 | checksum: aab2b325727a2599f6d25ebe0dedf58c40fb66a51ce4ca9c0226ceb70fcda2d3afccdca29db5942eb48b158ee8585a274a1e3750c718bbd5399d7f41d62dfdcc 356 | languageName: node 357 | linkType: hard 358 | 359 | "@types/node@npm:^14.0.0": 360 | version: 14.18.33 361 | resolution: "@types/node@npm:14.18.33" 362 | checksum: 4e23f95186d8ae1d38c999bc6b46fe94e790da88744b0a3bfeedcbd0d9ffe2cb0ff39e85f43014f6739e5270292c1a1f6f97a1fc606fd573a0c17fda9a1d42de 363 | languageName: node 364 | linkType: hard 365 | 366 | "@types/normalize-package-data@npm:^2.4.0": 367 | version: 2.4.1 368 | resolution: "@types/normalize-package-data@npm:2.4.1" 369 | checksum: e87bccbf11f95035c89a132b52b79ce69a1e3652fe55962363063c9c0dae0fe2477ebc585e03a9652adc6f381d24ba5589cc5e51849df4ced3d3e004a7d40ed5 370 | languageName: node 371 | linkType: hard 372 | 373 | "@types/parse-json@npm:^4.0.0": 374 | version: 4.0.0 375 | resolution: "@types/parse-json@npm:4.0.0" 376 | checksum: fd6bce2b674b6efc3db4c7c3d336bd70c90838e8439de639b909ce22f3720d21344f52427f1d9e57b265fcb7f6c018699b99e5e0c208a1a4823014269a6bf35b 377 | languageName: node 378 | linkType: hard 379 | 380 | "JSONStream@npm:^1.0.4": 381 | version: 1.3.5 382 | resolution: "JSONStream@npm:1.3.5" 383 | dependencies: 384 | jsonparse: ^1.2.0 385 | through: ">=2.2.7 <3" 386 | bin: 387 | JSONStream: ./bin.js 388 | checksum: 2605fa124260c61bad38bb65eba30d2f72216a78e94d0ab19b11b4e0327d572b8d530c0c9cc3b0764f727ad26d39e00bf7ebad57781ca6368394d73169c59e46 389 | languageName: node 390 | linkType: hard 391 | 392 | "acorn-jsx@npm:^5.0.0": 393 | version: 5.3.2 394 | resolution: "acorn-jsx@npm:5.3.2" 395 | peerDependencies: 396 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 397 | checksum: c3d3b2a89c9a056b205b69530a37b972b404ee46ec8e5b341666f9513d3163e2a4f214a71f4dfc7370f5a9c07472d2fd1c11c91c3f03d093e37637d95da98950 398 | languageName: node 399 | linkType: hard 400 | 401 | "acorn-walk@npm:^8.1.1": 402 | version: 8.2.0 403 | resolution: "acorn-walk@npm:8.2.0" 404 | checksum: 1715e76c01dd7b2d4ca472f9c58968516a4899378a63ad5b6c2d668bba8da21a71976c14ec5f5b75f887b6317c4ae0b897ab141c831d741dc76024d8745f1ad1 405 | languageName: node 406 | linkType: hard 407 | 408 | "acorn@npm:^6.0.7": 409 | version: 6.4.2 410 | resolution: "acorn@npm:6.4.2" 411 | bin: 412 | acorn: bin/acorn 413 | checksum: 44b07053729db7f44d28343eed32247ed56dc4a6ec6dff2b743141ecd6b861406bbc1c20bf9d4f143ea7dd08add5dc8c290582756539bc03a8db605050ce2fb4 414 | languageName: node 415 | linkType: hard 416 | 417 | "acorn@npm:^8.4.1": 418 | version: 8.7.1 419 | resolution: "acorn@npm:8.7.1" 420 | bin: 421 | acorn: bin/acorn 422 | checksum: aca0aabf98826717920ac2583fdcad0a6fbe4e583fdb6e843af2594e907455aeafe30b1e14f1757cd83ce1776773cf8296ffc3a4acf13f0bd3dfebcf1db6ae80 423 | languageName: node 424 | linkType: hard 425 | 426 | "aggregate-error@npm:^3.0.0": 427 | version: 3.1.0 428 | resolution: "aggregate-error@npm:3.1.0" 429 | dependencies: 430 | clean-stack: ^2.0.0 431 | indent-string: ^4.0.0 432 | checksum: 1101a33f21baa27a2fa8e04b698271e64616b886795fd43c31068c07533c7b3facfcaf4e9e0cab3624bd88f729a592f1c901a1a229c9e490eafce411a8644b79 433 | languageName: node 434 | linkType: hard 435 | 436 | "ajv@npm:^6.10.2, ajv@npm:^6.6.1, ajv@npm:^6.9.1": 437 | version: 6.12.6 438 | resolution: "ajv@npm:6.12.6" 439 | dependencies: 440 | fast-deep-equal: ^3.1.1 441 | fast-json-stable-stringify: ^2.0.0 442 | json-schema-traverse: ^0.4.1 443 | uri-js: ^4.2.2 444 | checksum: 874972efe5c4202ab0a68379481fbd3d1b5d0a7bd6d3cc21d40d3536ebff3352a2a1fabb632d4fd2cc7fe4cbdcd5ed6782084c9bbf7f32a1536d18f9da5007d4 445 | languageName: node 446 | linkType: hard 447 | 448 | "ajv@npm:^8.11.0": 449 | version: 8.11.0 450 | resolution: "ajv@npm:8.11.0" 451 | dependencies: 452 | fast-deep-equal: ^3.1.1 453 | json-schema-traverse: ^1.0.0 454 | require-from-string: ^2.0.2 455 | uri-js: ^4.2.2 456 | checksum: 5e0ff226806763be73e93dd7805b634f6f5921e3e90ca04acdf8db81eed9d8d3f0d4c5f1213047f45ebbf8047ffe0c840fa1ef2ec42c3a644899f69aa72b5bef 457 | languageName: node 458 | linkType: hard 459 | 460 | "ansi-escapes@npm:^3.2.0": 461 | version: 3.2.0 462 | resolution: "ansi-escapes@npm:3.2.0" 463 | checksum: 0f94695b677ea742f7f1eed961f7fd8d05670f744c6ad1f8f635362f6681dcfbc1575cb05b43abc7bb6d67e25a75fb8c7ea8f2a57330eb2c76b33f18cb2cef0a 464 | languageName: node 465 | linkType: hard 466 | 467 | "ansi-escapes@npm:^4.2.1, ansi-escapes@npm:^4.3.0": 468 | version: 4.3.2 469 | resolution: "ansi-escapes@npm:4.3.2" 470 | dependencies: 471 | type-fest: ^0.21.3 472 | checksum: 93111c42189c0a6bed9cdb4d7f2829548e943827ee8479c74d6e0b22ee127b2a21d3f8b5ca57723b8ef78ce011fbfc2784350eb2bde3ccfccf2f575fa8489815 473 | languageName: node 474 | linkType: hard 475 | 476 | "ansi-regex@npm:^3.0.0": 477 | version: 3.0.1 478 | resolution: "ansi-regex@npm:3.0.1" 479 | checksum: 09daf180c5f59af9850c7ac1bd7fda85ba596cc8cbeb210826e90755f06c818af86d9fa1e6e8322fab2c3b9e9b03f56c537b42241139f824dd75066a1e7257cc 480 | languageName: node 481 | linkType: hard 482 | 483 | "ansi-regex@npm:^4.1.0": 484 | version: 4.1.1 485 | resolution: "ansi-regex@npm:4.1.1" 486 | checksum: b1a6ee44cb6ecdabaa770b2ed500542714d4395d71c7e5c25baa631f680fb2ad322eb9ba697548d498a6fd366949fc8b5bfcf48d49a32803611f648005b01888 487 | languageName: node 488 | linkType: hard 489 | 490 | "ansi-regex@npm:^5.0.1": 491 | version: 5.0.1 492 | resolution: "ansi-regex@npm:5.0.1" 493 | checksum: 2aa4bb54caf2d622f1afdad09441695af2a83aa3fe8b8afa581d205e57ed4261c183c4d3877cee25794443fde5876417d859c108078ab788d6af7e4fe52eb66b 494 | languageName: node 495 | linkType: hard 496 | 497 | "ansi-regex@npm:^6.0.1": 498 | version: 6.0.1 499 | resolution: "ansi-regex@npm:6.0.1" 500 | checksum: 1ff8b7667cded1de4fa2c9ae283e979fc87036864317da86a2e546725f96406746411d0d85e87a2d12fa5abd715d90006de7fa4fa0477c92321ad3b4c7d4e169 501 | languageName: node 502 | linkType: hard 503 | 504 | "ansi-styles@npm:^3.2.0, ansi-styles@npm:^3.2.1": 505 | version: 3.2.1 506 | resolution: "ansi-styles@npm:3.2.1" 507 | dependencies: 508 | color-convert: ^1.9.0 509 | checksum: d85ade01c10e5dd77b6c89f34ed7531da5830d2cb5882c645f330079975b716438cd7ebb81d0d6e6b4f9c577f19ae41ab55f07f19786b02f9dfd9e0377395665 510 | languageName: node 511 | linkType: hard 512 | 513 | "ansi-styles@npm:^4.0.0, ansi-styles@npm:^4.1.0": 514 | version: 4.3.0 515 | resolution: "ansi-styles@npm:4.3.0" 516 | dependencies: 517 | color-convert: ^2.0.1 518 | checksum: 513b44c3b2105dd14cc42a19271e80f386466c4be574bccf60b627432f9198571ebf4ab1e4c3ba17347658f4ee1711c163d574248c0c1cdc2d5917a0ad582ec4 519 | languageName: node 520 | linkType: hard 521 | 522 | "ansi-styles@npm:^6.0.0": 523 | version: 6.1.0 524 | resolution: "ansi-styles@npm:6.1.0" 525 | checksum: 7a7f8528c07a9d20c3a92bccd2b6bc3bb4d26e5cb775c02826921477377bd495d615d61f710d56216344b6238d1d11ef2b0348e146c5b128715578bfb3217229 526 | languageName: node 527 | linkType: hard 528 | 529 | "antlr4@npm:4.7.1": 530 | version: 4.7.1 531 | resolution: "antlr4@npm:4.7.1" 532 | checksum: ac8644a82aa4031bf466b9dbde40c2f8b20cd944d41649332f01d4ecd384531f76fcefb1cfd044bdbad3d1fd3e2457e792aa72241aaffa225f3a1fe1aca7b9d5 533 | languageName: node 534 | linkType: hard 535 | 536 | "antlr4ts@npm:^0.5.0-alpha.4": 537 | version: 0.5.0-dev 538 | resolution: "antlr4ts@npm:0.5.0-dev" 539 | dependencies: 540 | source-map-support: ^0.5.16 541 | checksum: 640dae2229124372b0329315e9614ae983bb80b1af237d8c0b3e90a2d85fb534e851c51d65d1897c92b36d27851d041ad8d95aab44af19cf7355b3ad11a3ddbf 542 | languageName: node 543 | linkType: hard 544 | 545 | "arg@npm:^4.1.0": 546 | version: 4.1.3 547 | resolution: "arg@npm:4.1.3" 548 | checksum: 544af8dd3f60546d3e4aff084d451b96961d2267d668670199692f8d054f0415d86fc5497d0e641e91546f0aa920e7c29e5250e99fc89f5552a34b5d93b77f43 549 | languageName: node 550 | linkType: hard 551 | 552 | "argparse@npm:^1.0.7": 553 | version: 1.0.10 554 | resolution: "argparse@npm:1.0.10" 555 | dependencies: 556 | sprintf-js: ~1.0.2 557 | checksum: 7ca6e45583a28de7258e39e13d81e925cfa25d7d4aacbf806a382d3c02fcb13403a07fb8aeef949f10a7cfe4a62da0e2e807b348a5980554cc28ee573ef95945 558 | languageName: node 559 | linkType: hard 560 | 561 | "array-ify@npm:^1.0.0": 562 | version: 1.0.0 563 | resolution: "array-ify@npm:1.0.0" 564 | checksum: c0502015b319c93dd4484f18036bcc4b654eb76a4aa1f04afbcef11ac918859bb1f5d71ba1f0f1141770db9eef1a4f40f1761753650873068010bbf7bcdae4a4 565 | languageName: node 566 | linkType: hard 567 | 568 | "arrify@npm:^1.0.1": 569 | version: 1.0.1 570 | resolution: "arrify@npm:1.0.1" 571 | checksum: 745075dd4a4624ff0225c331dacb99be501a515d39bcb7c84d24660314a6ec28e68131b137e6f7e16318170842ce97538cd298fc4cd6b2cc798e0b957f2747e7 572 | languageName: node 573 | linkType: hard 574 | 575 | "ast-parents@npm:0.0.1": 576 | version: 0.0.1 577 | resolution: "ast-parents@npm:0.0.1" 578 | checksum: 51360afb9f7b939eb0330fdd0d5d855d0242f273f63478d30d9053069120492173719fb3c03ba372bccf1a7c1a9041c3c6bf2ab700de8c0f8c14792b045c3b23 579 | languageName: node 580 | linkType: hard 581 | 582 | "astral-regex@npm:^1.0.0": 583 | version: 1.0.0 584 | resolution: "astral-regex@npm:1.0.0" 585 | checksum: 93417fc0879531cd95ace2560a54df865c9461a3ac0714c60cbbaa5f1f85d2bee85489e78d82f70b911b71ac25c5f05fc5a36017f44c9bb33c701bee229ff848 586 | languageName: node 587 | linkType: hard 588 | 589 | "astral-regex@npm:^2.0.0": 590 | version: 2.0.0 591 | resolution: "astral-regex@npm:2.0.0" 592 | checksum: 876231688c66400473ba505731df37ea436e574dd524520294cc3bbc54ea40334865e01fa0d074d74d036ee874ee7e62f486ea38bc421ee8e6a871c06f011766 593 | languageName: node 594 | linkType: hard 595 | 596 | "at-least-node@npm:^1.0.0": 597 | version: 1.0.0 598 | resolution: "at-least-node@npm:1.0.0" 599 | checksum: 463e2f8e43384f1afb54bc68485c436d7622acec08b6fad269b421cb1d29cebb5af751426793d0961ed243146fe4dc983402f6d5a51b720b277818dbf6f2e49e 600 | languageName: node 601 | linkType: hard 602 | 603 | "balanced-match@npm:^1.0.0": 604 | version: 1.0.2 605 | resolution: "balanced-match@npm:1.0.2" 606 | checksum: 9706c088a283058a8a99e0bf91b0a2f75497f185980d9ffa8b304de1d9e58ebda7c72c07ebf01dadedaac5b2907b2c6f566f660d62bd336c3468e960403b9d65 607 | languageName: node 608 | linkType: hard 609 | 610 | "base64-js@npm:^1.3.1": 611 | version: 1.5.1 612 | resolution: "base64-js@npm:1.5.1" 613 | checksum: 669632eb3745404c2f822a18fc3a0122d2f9a7a13f7fb8b5823ee19d1d2ff9ee5b52c53367176ea4ad093c332fd5ab4bd0ebae5a8e27917a4105a4cfc86b1005 614 | languageName: node 615 | linkType: hard 616 | 617 | "bl@npm:^4.1.0": 618 | version: 4.1.0 619 | resolution: "bl@npm:4.1.0" 620 | dependencies: 621 | buffer: ^5.5.0 622 | inherits: ^2.0.4 623 | readable-stream: ^3.4.0 624 | checksum: 9e8521fa7e83aa9427c6f8ccdcba6e8167ef30cc9a22df26effcc5ab682ef91d2cbc23a239f945d099289e4bbcfae7a192e9c28c84c6202e710a0dfec3722662 625 | languageName: node 626 | linkType: hard 627 | 628 | "brace-expansion@npm:^1.1.7": 629 | version: 1.1.11 630 | resolution: "brace-expansion@npm:1.1.11" 631 | dependencies: 632 | balanced-match: ^1.0.0 633 | concat-map: 0.0.1 634 | checksum: faf34a7bb0c3fcf4b59c7808bc5d2a96a40988addf2e7e09dfbb67a2251800e0d14cd2bfc1aa79174f2f5095c54ff27f46fb1289fe2d77dac755b5eb3434cc07 635 | languageName: node 636 | linkType: hard 637 | 638 | "braces@npm:^3.0.2": 639 | version: 3.0.2 640 | resolution: "braces@npm:3.0.2" 641 | dependencies: 642 | fill-range: ^7.0.1 643 | checksum: e2a8e769a863f3d4ee887b5fe21f63193a891c68b612ddb4b68d82d1b5f3ff9073af066c343e9867a393fe4c2555dcb33e89b937195feb9c1613d259edfcd459 644 | languageName: node 645 | linkType: hard 646 | 647 | "buffer-from@npm:^1.0.0": 648 | version: 1.1.2 649 | resolution: "buffer-from@npm:1.1.2" 650 | checksum: 0448524a562b37d4d7ed9efd91685a5b77a50672c556ea254ac9a6d30e3403a517d8981f10e565db24e8339413b43c97ca2951f10e399c6125a0d8911f5679bb 651 | languageName: node 652 | linkType: hard 653 | 654 | "buffer@npm:^5.5.0": 655 | version: 5.7.1 656 | resolution: "buffer@npm:5.7.1" 657 | dependencies: 658 | base64-js: ^1.3.1 659 | ieee754: ^1.1.13 660 | checksum: e2cf8429e1c4c7b8cbd30834ac09bd61da46ce35f5c22a78e6c2f04497d6d25541b16881e30a019c6fd3154150650ccee27a308eff3e26229d788bbdeb08ab84 661 | languageName: node 662 | linkType: hard 663 | 664 | "cachedir@npm:2.2.0": 665 | version: 2.2.0 666 | resolution: "cachedir@npm:2.2.0" 667 | checksum: 7b55a54c312885dc497c19780ed5ec527f1ae9df61db4bdb939ba66d00a49a1f28ced3919f1f094b472eac36874c268d6d63f397a093caf8c534f34be78c6438 668 | languageName: node 669 | linkType: hard 670 | 671 | "cachedir@npm:2.3.0": 672 | version: 2.3.0 673 | resolution: "cachedir@npm:2.3.0" 674 | checksum: ec90cb0f2e6336e266aa748dbadf3da9e0b20e843e43f1591acab7a3f1451337dc2f26cb9dd833ae8cfefeffeeb43ef5b5ff62782a685f4e3c2305dd98482fcb 675 | languageName: node 676 | linkType: hard 677 | 678 | "caller-callsite@npm:^2.0.0": 679 | version: 2.0.0 680 | resolution: "caller-callsite@npm:2.0.0" 681 | dependencies: 682 | callsites: ^2.0.0 683 | checksum: b685e9d126d9247b320cfdfeb3bc8da0c4be28d8fb98c471a96bc51aab3130099898a2fe3bf0308f0fe048d64c37d6d09f563958b9afce1a1e5e63d879c128a2 684 | languageName: node 685 | linkType: hard 686 | 687 | "caller-path@npm:^2.0.0": 688 | version: 2.0.0 689 | resolution: "caller-path@npm:2.0.0" 690 | dependencies: 691 | caller-callsite: ^2.0.0 692 | checksum: 3e12ccd0c71ec10a057aac69e3ec175b721ca858c640df021ef0d25999e22f7c1d864934b596b7d47038e9b56b7ec315add042abbd15caac882998b50102fb12 693 | languageName: node 694 | linkType: hard 695 | 696 | "callsites@npm:^2.0.0": 697 | version: 2.0.0 698 | resolution: "callsites@npm:2.0.0" 699 | checksum: be2f67b247df913732b7dec1ec0bbfcdbaea263e5a95968b19ec7965affae9496b970e3024317e6d4baa8e28dc6ba0cec03f46fdddc2fdcc51396600e53c2623 700 | languageName: node 701 | linkType: hard 702 | 703 | "callsites@npm:^3.0.0": 704 | version: 3.1.0 705 | resolution: "callsites@npm:3.1.0" 706 | checksum: 072d17b6abb459c2ba96598918b55868af677154bec7e73d222ef95a8fdb9bbf7dae96a8421085cdad8cd190d86653b5b6dc55a4484f2e5b2e27d5e0c3fc15b3 707 | languageName: node 708 | linkType: hard 709 | 710 | "camelcase-keys@npm:^6.2.2": 711 | version: 6.2.2 712 | resolution: "camelcase-keys@npm:6.2.2" 713 | dependencies: 714 | camelcase: ^5.3.1 715 | map-obj: ^4.0.0 716 | quick-lru: ^4.0.1 717 | checksum: 43c9af1adf840471e54c68ab3e5fe8a62719a6b7dbf4e2e86886b7b0ff96112c945736342b837bd2529ec9d1c7d1934e5653318478d98e0cf22c475c04658e2a 718 | languageName: node 719 | linkType: hard 720 | 721 | "camelcase@npm:^5.3.1": 722 | version: 5.3.1 723 | resolution: "camelcase@npm:5.3.1" 724 | checksum: e6effce26b9404e3c0f301498184f243811c30dfe6d0b9051863bd8e4034d09c8c2923794f280d6827e5aa055f6c434115ff97864a16a963366fb35fd673024b 725 | languageName: node 726 | linkType: hard 727 | 728 | "chalk@npm:^2.0.0, chalk@npm:^2.1.0, chalk@npm:^2.4.1, chalk@npm:^2.4.2": 729 | version: 2.4.2 730 | resolution: "chalk@npm:2.4.2" 731 | dependencies: 732 | ansi-styles: ^3.2.1 733 | escape-string-regexp: ^1.0.5 734 | supports-color: ^5.3.0 735 | checksum: ec3661d38fe77f681200f878edbd9448821924e0f93a9cefc0e26a33b145f1027a2084bf19967160d11e1f03bfe4eaffcabf5493b89098b2782c3fe0b03d80c2 736 | languageName: node 737 | linkType: hard 738 | 739 | "chalk@npm:^4.1.0, chalk@npm:^4.1.1": 740 | version: 4.1.2 741 | resolution: "chalk@npm:4.1.2" 742 | dependencies: 743 | ansi-styles: ^4.1.0 744 | supports-color: ^7.1.0 745 | checksum: fe75c9d5c76a7a98d45495b91b2172fa3b7a09e0cc9370e5c8feb1c567b85c4288e2b3fded7cfdd7359ac28d6b3844feb8b82b8686842e93d23c827c417e83fc 746 | languageName: node 747 | linkType: hard 748 | 749 | "chardet@npm:^0.7.0": 750 | version: 0.7.0 751 | resolution: "chardet@npm:0.7.0" 752 | checksum: 6fd5da1f5d18ff5712c1e0aed41da200d7c51c28f11b36ee3c7b483f3696dabc08927fc6b227735eb8f0e1215c9a8abd8154637f3eff8cada5959df7f58b024d 753 | languageName: node 754 | linkType: hard 755 | 756 | "clean-stack@npm:^2.0.0": 757 | version: 2.2.0 758 | resolution: "clean-stack@npm:2.2.0" 759 | checksum: 2ac8cd2b2f5ec986a3c743935ec85b07bc174d5421a5efc8017e1f146a1cf5f781ae962618f416352103b32c9cd7e203276e8c28241bbe946160cab16149fb68 760 | languageName: node 761 | linkType: hard 762 | 763 | "cli-cursor@npm:^2.1.0": 764 | version: 2.1.0 765 | resolution: "cli-cursor@npm:2.1.0" 766 | dependencies: 767 | restore-cursor: ^2.0.0 768 | checksum: d88e97bfdac01046a3ffe7d49f06757b3126559d7e44aa2122637eb179284dc6cd49fca2fac4f67c19faaf7e6dab716b6fe1dfcd309977407d8c7578ec2d044d 769 | languageName: node 770 | linkType: hard 771 | 772 | "cli-cursor@npm:^3.1.0": 773 | version: 3.1.0 774 | resolution: "cli-cursor@npm:3.1.0" 775 | dependencies: 776 | restore-cursor: ^3.1.0 777 | checksum: 2692784c6cd2fd85cfdbd11f53aea73a463a6d64a77c3e098b2b4697a20443f430c220629e1ca3b195ea5ac4a97a74c2ee411f3807abf6df2b66211fec0c0a29 778 | languageName: node 779 | linkType: hard 780 | 781 | "cli-spinners@npm:^2.5.0": 782 | version: 2.7.0 783 | resolution: "cli-spinners@npm:2.7.0" 784 | checksum: a9afaf73f58d1f951fb23742f503631b3cf513f43f4c7acb1b640100eb76bfa16efbcd1994d149ffc6603a6d75dd3d4a516a76f125f90dce437de9b16fd0ee6f 785 | languageName: node 786 | linkType: hard 787 | 788 | "cli-truncate@npm:^2.1.0": 789 | version: 2.1.0 790 | resolution: "cli-truncate@npm:2.1.0" 791 | dependencies: 792 | slice-ansi: ^3.0.0 793 | string-width: ^4.2.0 794 | checksum: bf1e4e6195392dc718bf9cd71f317b6300dc4a9191d052f31046b8773230ece4fa09458813bf0e3455a5e68c0690d2ea2c197d14a8b85a7b5e01c97f4b5feb5d 795 | languageName: node 796 | linkType: hard 797 | 798 | "cli-truncate@npm:^3.1.0": 799 | version: 3.1.0 800 | resolution: "cli-truncate@npm:3.1.0" 801 | dependencies: 802 | slice-ansi: ^5.0.0 803 | string-width: ^5.0.0 804 | checksum: c3243e41974445691c63f8b405df1d5a24049dc33d324fe448dc572e561a7b772ae982692900b1a5960901cc4fc7def25a629b9c69a4208ee89d12ab3332617a 805 | languageName: node 806 | linkType: hard 807 | 808 | "cli-width@npm:^2.0.0": 809 | version: 2.2.1 810 | resolution: "cli-width@npm:2.2.1" 811 | checksum: 3c21b897a2ff551ae5b3c3ab32c866ed2965dcf7fb442f81adf0e27f4a397925c8f84619af7bcc6354821303f6ee9b2aa31d248306174f32c287986158cf4eed 812 | languageName: node 813 | linkType: hard 814 | 815 | "cli-width@npm:^3.0.0": 816 | version: 3.0.0 817 | resolution: "cli-width@npm:3.0.0" 818 | checksum: 4c94af3769367a70e11ed69aa6095f1c600c0ff510f3921ab4045af961820d57c0233acfa8b6396037391f31b4c397e1f614d234294f979ff61430a6c166c3f6 819 | languageName: node 820 | linkType: hard 821 | 822 | "cliui@npm:^7.0.2": 823 | version: 7.0.4 824 | resolution: "cliui@npm:7.0.4" 825 | dependencies: 826 | string-width: ^4.2.0 827 | strip-ansi: ^6.0.0 828 | wrap-ansi: ^7.0.0 829 | checksum: ce2e8f578a4813806788ac399b9e866297740eecd4ad1823c27fd344d78b22c5f8597d548adbcc46f0573e43e21e751f39446c5a5e804a12aace402b7a315d7f 830 | languageName: node 831 | linkType: hard 832 | 833 | "clone@npm:^1.0.2": 834 | version: 1.0.4 835 | resolution: "clone@npm:1.0.4" 836 | checksum: d06418b7335897209e77bdd430d04f882189582e67bd1f75a04565f3f07f5b3f119a9d670c943b6697d0afb100f03b866b3b8a1f91d4d02d72c4ecf2bb64b5dd 837 | languageName: node 838 | linkType: hard 839 | 840 | "color-convert@npm:^1.9.0": 841 | version: 1.9.3 842 | resolution: "color-convert@npm:1.9.3" 843 | dependencies: 844 | color-name: 1.1.3 845 | checksum: fd7a64a17cde98fb923b1dd05c5f2e6f7aefda1b60d67e8d449f9328b4e53b228a428fd38bfeaeb2db2ff6b6503a776a996150b80cdf224062af08a5c8a3a203 846 | languageName: node 847 | linkType: hard 848 | 849 | "color-convert@npm:^2.0.1": 850 | version: 2.0.1 851 | resolution: "color-convert@npm:2.0.1" 852 | dependencies: 853 | color-name: ~1.1.4 854 | checksum: 79e6bdb9fd479a205c71d89574fccfb22bd9053bd98c6c4d870d65c132e5e904e6034978e55b43d69fcaa7433af2016ee203ce76eeba9cfa554b373e7f7db336 855 | languageName: node 856 | linkType: hard 857 | 858 | "color-name@npm:1.1.3": 859 | version: 1.1.3 860 | resolution: "color-name@npm:1.1.3" 861 | checksum: 09c5d3e33d2105850153b14466501f2bfb30324a2f76568a408763a3b7433b0e50e5b4ab1947868e65cb101bb7cb75029553f2c333b6d4b8138a73fcc133d69d 862 | languageName: node 863 | linkType: hard 864 | 865 | "color-name@npm:~1.1.4": 866 | version: 1.1.4 867 | resolution: "color-name@npm:1.1.4" 868 | checksum: b0445859521eb4021cd0fb0cc1a75cecf67fceecae89b63f62b201cca8d345baf8b952c966862a9d9a2632987d4f6581f0ec8d957dfacece86f0a7919316f610 869 | languageName: node 870 | linkType: hard 871 | 872 | "colorette@npm:^2.0.19": 873 | version: 2.0.19 874 | resolution: "colorette@npm:2.0.19" 875 | checksum: 888cf5493f781e5fcf54ce4d49e9d7d698f96ea2b2ef67906834bb319a392c667f9ec69f4a10e268d2946d13a9503d2d19b3abaaaf174e3451bfe91fb9d82427 876 | languageName: node 877 | linkType: hard 878 | 879 | "commander@npm:2.18.0": 880 | version: 2.18.0 881 | resolution: "commander@npm:2.18.0" 882 | checksum: 3a31585348a5000bbdc457c9839aabbdf0bb0020e5dfaa1c9f9903680073d67c06911b55368e4c8df2ed166e0d4468f9a668585c1667c321804034a2819a819f 883 | languageName: node 884 | linkType: hard 885 | 886 | "commander@npm:^9.4.1": 887 | version: 9.4.1 888 | resolution: "commander@npm:9.4.1" 889 | checksum: bfb18e325a5bdf772763c2213d5c7d9e77144d944124e988bcd8e5e65fb6d45d5d4e86b09155d0f2556c9a59c31e428720e57968bcd050b2306e910a0bf3cf13 890 | languageName: node 891 | linkType: hard 892 | 893 | "commitizen@npm:^4.0.3": 894 | version: 4.2.4 895 | resolution: "commitizen@npm:4.2.4" 896 | dependencies: 897 | cachedir: 2.2.0 898 | cz-conventional-changelog: 3.2.0 899 | dedent: 0.7.0 900 | detect-indent: 6.0.0 901 | find-node-modules: ^2.1.2 902 | find-root: 1.1.0 903 | fs-extra: 8.1.0 904 | glob: 7.1.4 905 | inquirer: 6.5.2 906 | is-utf8: ^0.2.1 907 | lodash: ^4.17.20 908 | minimist: 1.2.5 909 | strip-bom: 4.0.0 910 | strip-json-comments: 3.0.1 911 | bin: 912 | commitizen: bin/commitizen 913 | cz: bin/git-cz 914 | git-cz: bin/git-cz 915 | checksum: 5b0ae7310e91616e5f3c5149e355b0e675b1132bbad4c3292afe04c91192be81859b2c22f8fef00887310b270ab01b9aef60c6fc4e9bc47fbf208c209f1d8ff5 916 | languageName: node 917 | linkType: hard 918 | 919 | "commitizen@npm:^4.2.6": 920 | version: 4.2.6 921 | resolution: "commitizen@npm:4.2.6" 922 | dependencies: 923 | cachedir: 2.3.0 924 | cz-conventional-changelog: 3.3.0 925 | dedent: 0.7.0 926 | detect-indent: 6.1.0 927 | find-node-modules: ^2.1.2 928 | find-root: 1.1.0 929 | fs-extra: 9.1.0 930 | glob: 7.2.3 931 | inquirer: 8.2.4 932 | is-utf8: ^0.2.1 933 | lodash: 4.17.21 934 | minimist: 1.2.6 935 | strip-bom: 4.0.0 936 | strip-json-comments: 3.1.1 937 | bin: 938 | commitizen: bin/commitizen 939 | cz: bin/git-cz 940 | git-cz: bin/git-cz 941 | checksum: 4423b25900a02d10e6a6aa98d58404bad0c0c2a68bbeff1ef2379c1ef04344a1fecdaaac3e773988d460de93c8ed4325d1afc186a01f904f7f27edcffcccfd49 942 | languageName: node 943 | linkType: hard 944 | 945 | "compare-func@npm:^2.0.0": 946 | version: 2.0.0 947 | resolution: "compare-func@npm:2.0.0" 948 | dependencies: 949 | array-ify: ^1.0.0 950 | dot-prop: ^5.1.0 951 | checksum: fb71d70632baa1e93283cf9d80f30ac97f003aabee026e0b4426c9716678079ef5fea7519b84d012cbed938c476493866a38a79760564a9e21ae9433e40e6f0d 952 | languageName: node 953 | linkType: hard 954 | 955 | "concat-map@npm:0.0.1": 956 | version: 0.0.1 957 | resolution: "concat-map@npm:0.0.1" 958 | checksum: 902a9f5d8967a3e2faf138d5cb784b9979bad2e6db5357c5b21c568df4ebe62bcb15108af1b2253744844eb964fc023fbd9afbbbb6ddd0bcc204c6fb5b7bf3af 959 | languageName: node 960 | linkType: hard 961 | 962 | "conventional-changelog-angular@npm:^5.0.11": 963 | version: 5.0.13 964 | resolution: "conventional-changelog-angular@npm:5.0.13" 965 | dependencies: 966 | compare-func: ^2.0.0 967 | q: ^1.5.1 968 | checksum: 6ed4972fce25a50f9f038c749cc9db501363131b0fb2efc1fccecba14e4b1c80651d0d758d4c350a609f32010c66fa343eefd49c02e79e911884be28f53f3f90 969 | languageName: node 970 | linkType: hard 971 | 972 | "conventional-changelog-conventionalcommits@npm:^5.0.0": 973 | version: 5.0.0 974 | resolution: "conventional-changelog-conventionalcommits@npm:5.0.0" 975 | dependencies: 976 | compare-func: ^2.0.0 977 | lodash: ^4.17.15 978 | q: ^1.5.1 979 | checksum: b67d12e4e0fdde5baa32c3d77af472de38646a18657b26f5543eecce041a318103092fbfcef247e2319a16957c9ac78c6ea78acc11a5db6acf74be79a28c561f 980 | languageName: node 981 | linkType: hard 982 | 983 | "conventional-commit-types@npm:^3.0.0": 984 | version: 3.0.0 985 | resolution: "conventional-commit-types@npm:3.0.0" 986 | checksum: b9552de6a310c91a271ee57a890ed70d2d94340e710fc33856aaca5b24928fb2162f04dda5484d155b68c1fbaa042d904014d7fad0b6751a6d68052a0616015d 987 | languageName: node 988 | linkType: hard 989 | 990 | "conventional-commits-parser@npm:^3.2.2": 991 | version: 3.2.4 992 | resolution: "conventional-commits-parser@npm:3.2.4" 993 | dependencies: 994 | JSONStream: ^1.0.4 995 | is-text-path: ^1.0.1 996 | lodash: ^4.17.15 997 | meow: ^8.0.0 998 | split2: ^3.0.0 999 | through2: ^4.0.0 1000 | bin: 1001 | conventional-commits-parser: cli.js 1002 | checksum: 1627ff203bc9586d89e47a7fe63acecf339aba74903b9114e23d28094f79d4e2d6389bf146ae561461dcba8fc42e7bc228165d2b173f15756c43f1d32bc50bfd 1003 | languageName: node 1004 | linkType: hard 1005 | 1006 | "cosmiconfig-typescript-loader@npm:^2.0.0": 1007 | version: 2.0.2 1008 | resolution: "cosmiconfig-typescript-loader@npm:2.0.2" 1009 | dependencies: 1010 | cosmiconfig: ^7 1011 | ts-node: ^10.8.1 1012 | peerDependencies: 1013 | "@types/node": "*" 1014 | cosmiconfig: ">=7" 1015 | typescript: ">=3" 1016 | checksum: 0c9a777e2e3ff7594d753e5781e8c3817ce5ba493a4e69cfde698a8e231b438695248dcc62a16c661f93ada7f762ac6e24457889439c94f58c094a24aecbd982 1017 | languageName: node 1018 | linkType: hard 1019 | 1020 | "cosmiconfig-typescript-loader@npm:^4.0.0": 1021 | version: 4.1.1 1022 | resolution: "cosmiconfig-typescript-loader@npm:4.1.1" 1023 | peerDependencies: 1024 | "@types/node": "*" 1025 | cosmiconfig: ">=7" 1026 | ts-node: ">=10" 1027 | typescript: ">=3" 1028 | checksum: a774961868f0406d0fd75e448c2e1a0ddb95de27d477fa325a37369a2cbd892cf4d639a109082cd886840dea7707ea9bed5c38a468b52de18400c4f1d495d35a 1029 | languageName: node 1030 | linkType: hard 1031 | 1032 | "cosmiconfig@npm:^5.0.7": 1033 | version: 5.2.1 1034 | resolution: "cosmiconfig@npm:5.2.1" 1035 | dependencies: 1036 | import-fresh: ^2.0.0 1037 | is-directory: ^0.3.1 1038 | js-yaml: ^3.13.1 1039 | parse-json: ^4.0.0 1040 | checksum: 8b6f1d3c8a5ffdf663a952f17af0761adf210b7a5933d0fe8988f3ca3a1f0e1e5cbbb74d5b419c15933dd2fdcaec31dbc5cc85cb8259a822342b93b529eff89c 1041 | languageName: node 1042 | linkType: hard 1043 | 1044 | "cosmiconfig@npm:^7, cosmiconfig@npm:^7.0.0": 1045 | version: 7.0.1 1046 | resolution: "cosmiconfig@npm:7.0.1" 1047 | dependencies: 1048 | "@types/parse-json": ^4.0.0 1049 | import-fresh: ^3.2.1 1050 | parse-json: ^5.0.0 1051 | path-type: ^4.0.0 1052 | yaml: ^1.10.0 1053 | checksum: 4be63e7117955fd88333d7460e4c466a90f556df6ef34efd59034d2463484e339666c41f02b523d574a797ec61f4a91918c5b89a316db2ea2f834e0d2d09465b 1054 | languageName: node 1055 | linkType: hard 1056 | 1057 | "create-require@npm:^1.1.0": 1058 | version: 1.1.1 1059 | resolution: "create-require@npm:1.1.1" 1060 | checksum: a9a1503d4390d8b59ad86f4607de7870b39cad43d929813599a23714831e81c520bddf61bcdd1f8e30f05fd3a2b71ae8538e946eb2786dc65c2bbc520f692eff 1061 | languageName: node 1062 | linkType: hard 1063 | 1064 | "cross-spawn@npm:^6.0.5": 1065 | version: 6.0.5 1066 | resolution: "cross-spawn@npm:6.0.5" 1067 | dependencies: 1068 | nice-try: ^1.0.4 1069 | path-key: ^2.0.1 1070 | semver: ^5.5.0 1071 | shebang-command: ^1.2.0 1072 | which: ^1.2.9 1073 | checksum: f893bb0d96cd3d5751d04e67145bdddf25f99449531a72e82dcbbd42796bbc8268c1076c6b3ea51d4d455839902804b94bc45dfb37ecbb32ea8e54a6741c3ab9 1074 | languageName: node 1075 | linkType: hard 1076 | 1077 | "cross-spawn@npm:^7.0.3": 1078 | version: 7.0.3 1079 | resolution: "cross-spawn@npm:7.0.3" 1080 | dependencies: 1081 | path-key: ^3.1.0 1082 | shebang-command: ^2.0.0 1083 | which: ^2.0.1 1084 | checksum: 671cc7c7288c3a8406f3c69a3ae2fc85555c04169e9d611def9a675635472614f1c0ed0ef80955d5b6d4e724f6ced67f0ad1bb006c2ea643488fcfef994d7f52 1085 | languageName: node 1086 | linkType: hard 1087 | 1088 | "cz-conventional-changelog@npm:3.2.0": 1089 | version: 3.2.0 1090 | resolution: "cz-conventional-changelog@npm:3.2.0" 1091 | dependencies: 1092 | "@commitlint/load": ">6.1.1" 1093 | chalk: ^2.4.1 1094 | commitizen: ^4.0.3 1095 | conventional-commit-types: ^3.0.0 1096 | lodash.map: ^4.5.1 1097 | longest: ^2.0.1 1098 | word-wrap: ^1.0.3 1099 | dependenciesMeta: 1100 | "@commitlint/load": 1101 | optional: true 1102 | checksum: 5512b2e28a4582a92a68323027cbb5df4a405647c0ddbdc8408c2bad3c520ae964f19978dca1641122b12dd9db692c445ec5859b1f6bdb74c4661d13c02e2c6e 1103 | languageName: node 1104 | linkType: hard 1105 | 1106 | "cz-conventional-changelog@npm:3.3.0, cz-conventional-changelog@npm:^3.3.0": 1107 | version: 3.3.0 1108 | resolution: "cz-conventional-changelog@npm:3.3.0" 1109 | dependencies: 1110 | "@commitlint/load": ">6.1.1" 1111 | chalk: ^2.4.1 1112 | commitizen: ^4.0.3 1113 | conventional-commit-types: ^3.0.0 1114 | lodash.map: ^4.5.1 1115 | longest: ^2.0.1 1116 | word-wrap: ^1.0.3 1117 | dependenciesMeta: 1118 | "@commitlint/load": 1119 | optional: true 1120 | checksum: 8b766712092142ecec86c5c8a2a7206d0b2da46ae16e137303c6d75b42c048acd831c734fd542b9c3cbeb0fd8e7d1f5391494ed629dfba4459fee2d6f5d2c0ca 1121 | languageName: node 1122 | linkType: hard 1123 | 1124 | "dargs@npm:^7.0.0": 1125 | version: 7.0.0 1126 | resolution: "dargs@npm:7.0.0" 1127 | checksum: b8f1e3cba59c42e1f13a114ad4848c3fc1cf7470f633ee9e9f1043762429bc97d91ae31b826fb135eefde203a3fdb20deb0c0a0222ac29d937b8046085d668d1 1128 | languageName: node 1129 | linkType: hard 1130 | 1131 | "debug@npm:^4.0.1, debug@npm:^4.3.4": 1132 | version: 4.3.4 1133 | resolution: "debug@npm:4.3.4" 1134 | dependencies: 1135 | ms: 2.1.2 1136 | peerDependenciesMeta: 1137 | supports-color: 1138 | optional: true 1139 | checksum: 3dbad3f94ea64f34431a9cbf0bafb61853eda57bff2880036153438f50fb5a84f27683ba0d8e5426bf41a8c6ff03879488120cf5b3a761e77953169c0600a708 1140 | languageName: node 1141 | linkType: hard 1142 | 1143 | "decamelize-keys@npm:^1.1.0": 1144 | version: 1.1.0 1145 | resolution: "decamelize-keys@npm:1.1.0" 1146 | dependencies: 1147 | decamelize: ^1.1.0 1148 | map-obj: ^1.0.0 1149 | checksum: 8bc5d32e035a072f5dffc1f1f3d26ca7ab1fb44a9cade34c97ab6cd1e62c81a87e718101e96de07d78cecda20a3fdb955df958e46671ccad01bb8dcf0de2e298 1150 | languageName: node 1151 | linkType: hard 1152 | 1153 | "decamelize@npm:^1.1.0": 1154 | version: 1.2.0 1155 | resolution: "decamelize@npm:1.2.0" 1156 | checksum: ad8c51a7e7e0720c70ec2eeb1163b66da03e7616d7b98c9ef43cce2416395e84c1e9548dd94f5f6ffecfee9f8b94251fc57121a8b021f2ff2469b2bae247b8aa 1157 | languageName: node 1158 | linkType: hard 1159 | 1160 | "dedent@npm:0.7.0": 1161 | version: 0.7.0 1162 | resolution: "dedent@npm:0.7.0" 1163 | checksum: 87de191050d9a40dd70cad01159a0bcf05ecb59750951242070b6abf9569088684880d00ba92a955b4058804f16eeaf91d604f283929b4f614d181cd7ae633d2 1164 | languageName: node 1165 | linkType: hard 1166 | 1167 | "deep-is@npm:~0.1.3": 1168 | version: 0.1.4 1169 | resolution: "deep-is@npm:0.1.4" 1170 | checksum: edb65dd0d7d1b9c40b2f50219aef30e116cedd6fc79290e740972c132c09106d2e80aa0bc8826673dd5a00222d4179c84b36a790eef63a4c4bca75a37ef90804 1171 | languageName: node 1172 | linkType: hard 1173 | 1174 | "defaults@npm:^1.0.3": 1175 | version: 1.0.4 1176 | resolution: "defaults@npm:1.0.4" 1177 | dependencies: 1178 | clone: ^1.0.2 1179 | checksum: 3a88b7a587fc076b84e60affad8b85245c01f60f38fc1d259e7ac1d89eb9ce6abb19e27215de46b98568dd5bc48471730b327637e6f20b0f1bc85cf00440c80a 1180 | languageName: node 1181 | linkType: hard 1182 | 1183 | "detect-file@npm:^1.0.0": 1184 | version: 1.0.0 1185 | resolution: "detect-file@npm:1.0.0" 1186 | checksum: 1861e4146128622e847abe0e1ed80fef01e78532665858a792267adf89032b7a9c698436137707fcc6f02956c2a6a0052d6a0cef5be3d4b76b1ff0da88e2158a 1187 | languageName: node 1188 | linkType: hard 1189 | 1190 | "detect-indent@npm:6.0.0": 1191 | version: 6.0.0 1192 | resolution: "detect-indent@npm:6.0.0" 1193 | checksum: 0c38f362016e2d07af1c65b1ecd6ad8a91f06bfdd11383887c867a495ad286d04be2ab44027ac42444704d523982013115bd748c1541df7c9396ad76b22aaf5d 1194 | languageName: node 1195 | linkType: hard 1196 | 1197 | "detect-indent@npm:6.1.0": 1198 | version: 6.1.0 1199 | resolution: "detect-indent@npm:6.1.0" 1200 | checksum: ab953a73c72dbd4e8fc68e4ed4bfd92c97eb6c43734af3900add963fd3a9316f3bc0578b018b24198d4c31a358571eff5f0656e81a1f3b9ad5c547d58b2d093d 1201 | languageName: node 1202 | linkType: hard 1203 | 1204 | "diff@npm:^4.0.1": 1205 | version: 4.0.2 1206 | resolution: "diff@npm:4.0.2" 1207 | checksum: f2c09b0ce4e6b301c221addd83bf3f454c0bc00caa3dd837cf6c127d6edf7223aa2bbe3b688feea110b7f262adbfc845b757c44c8a9f8c0c5b15d8fa9ce9d20d 1208 | languageName: node 1209 | linkType: hard 1210 | 1211 | "doctrine@npm:^3.0.0": 1212 | version: 3.0.0 1213 | resolution: "doctrine@npm:3.0.0" 1214 | dependencies: 1215 | esutils: ^2.0.2 1216 | checksum: fd7673ca77fe26cd5cba38d816bc72d641f500f1f9b25b83e8ce28827fe2da7ad583a8da26ab6af85f834138cf8dae9f69b0cd6ab925f52ddab1754db44d99ce 1217 | languageName: node 1218 | linkType: hard 1219 | 1220 | "dot-prop@npm:^5.1.0": 1221 | version: 5.3.0 1222 | resolution: "dot-prop@npm:5.3.0" 1223 | dependencies: 1224 | is-obj: ^2.0.0 1225 | checksum: d5775790093c234ef4bfd5fbe40884ff7e6c87573e5339432870616331189f7f5d86575c5b5af2dcf0f61172990f4f734d07844b1f23482fff09e3c4bead05ea 1226 | languageName: node 1227 | linkType: hard 1228 | 1229 | "eastasianwidth@npm:^0.2.0": 1230 | version: 0.2.0 1231 | resolution: "eastasianwidth@npm:0.2.0" 1232 | checksum: 7d00d7cd8e49b9afa762a813faac332dee781932d6f2c848dc348939c4253f1d4564341b7af1d041853bc3f32c2ef141b58e0a4d9862c17a7f08f68df1e0f1ed 1233 | languageName: node 1234 | linkType: hard 1235 | 1236 | "emoji-regex@npm:^10.2.1": 1237 | version: 10.2.1 1238 | resolution: "emoji-regex@npm:10.2.1" 1239 | checksum: 1aa2d16881c56531fdfc03d0b36f5c2b6221cc4097499a5665b88b711dc3fb4d5b8804f0ca6f00c56e5dcf89bac75f0487eee85da1da77df3a33accc6ecbe426 1240 | languageName: node 1241 | linkType: hard 1242 | 1243 | "emoji-regex@npm:^7.0.1": 1244 | version: 7.0.3 1245 | resolution: "emoji-regex@npm:7.0.3" 1246 | checksum: 9159b2228b1511f2870ac5920f394c7e041715429a68459ebe531601555f11ea782a8e1718f969df2711d38c66268174407cbca57ce36485544f695c2dfdc96e 1247 | languageName: node 1248 | linkType: hard 1249 | 1250 | "emoji-regex@npm:^8.0.0": 1251 | version: 8.0.0 1252 | resolution: "emoji-regex@npm:8.0.0" 1253 | checksum: d4c5c39d5a9868b5fa152f00cada8a936868fd3367f33f71be515ecee4c803132d11b31a6222b2571b1e5f7e13890156a94880345594d0ce7e3c9895f560f192 1254 | languageName: node 1255 | linkType: hard 1256 | 1257 | "emoji-regex@npm:^9.2.2": 1258 | version: 9.2.2 1259 | resolution: "emoji-regex@npm:9.2.2" 1260 | checksum: 8487182da74aabd810ac6d6f1994111dfc0e331b01271ae01ec1eb0ad7b5ecc2bbbbd2f053c05cb55a1ac30449527d819bbfbf0e3de1023db308cbcb47f86601 1261 | languageName: node 1262 | linkType: hard 1263 | 1264 | "error-ex@npm:^1.3.1": 1265 | version: 1.3.2 1266 | resolution: "error-ex@npm:1.3.2" 1267 | dependencies: 1268 | is-arrayish: ^0.2.1 1269 | checksum: c1c2b8b65f9c91b0f9d75f0debaa7ec5b35c266c2cac5de412c1a6de86d4cbae04ae44e510378cb14d032d0645a36925d0186f8bb7367bcc629db256b743a001 1270 | languageName: node 1271 | linkType: hard 1272 | 1273 | "escalade@npm:^3.1.1": 1274 | version: 3.1.1 1275 | resolution: "escalade@npm:3.1.1" 1276 | checksum: a3e2a99f07acb74b3ad4989c48ca0c3140f69f923e56d0cba0526240ee470b91010f9d39001f2a4a313841d237ede70a729e92125191ba5d21e74b106800b133 1277 | languageName: node 1278 | linkType: hard 1279 | 1280 | "escape-string-regexp@npm:^1.0.5": 1281 | version: 1.0.5 1282 | resolution: "escape-string-regexp@npm:1.0.5" 1283 | checksum: 6092fda75c63b110c706b6a9bfde8a612ad595b628f0bd2147eea1d3406723020810e591effc7db1da91d80a71a737a313567c5abb3813e8d9c71f4aa595b410 1284 | languageName: node 1285 | linkType: hard 1286 | 1287 | "escape-string-regexp@npm:^4.0.0": 1288 | version: 4.0.0 1289 | resolution: "escape-string-regexp@npm:4.0.0" 1290 | checksum: 98b48897d93060f2322108bf29db0feba7dd774be96cd069458d1453347b25ce8682ecc39859d4bca2203cc0ab19c237bcc71755eff49a0f8d90beadeeba5cc5 1291 | languageName: node 1292 | linkType: hard 1293 | 1294 | "eslint-scope@npm:^4.0.3": 1295 | version: 4.0.3 1296 | resolution: "eslint-scope@npm:4.0.3" 1297 | dependencies: 1298 | esrecurse: ^4.1.0 1299 | estraverse: ^4.1.1 1300 | checksum: c5f835f681884469991fe58d76a554688d9c9e50811299ccd4a8f79993a039f5bcb0ee6e8de2b0017d97c794b5832ef3b21c9aac66228e3aa0f7a0485bcfb65b 1301 | languageName: node 1302 | linkType: hard 1303 | 1304 | "eslint-utils@npm:^1.3.1": 1305 | version: 1.4.3 1306 | resolution: "eslint-utils@npm:1.4.3" 1307 | dependencies: 1308 | eslint-visitor-keys: ^1.1.0 1309 | checksum: a20630e686034107138272f245c460f6d77705d1f4bb0628c1a1faf59fc800f441188916b3ec3b957394dc405aa200a3017dfa2b0fff0976e307a4e645a18d1e 1310 | languageName: node 1311 | linkType: hard 1312 | 1313 | "eslint-visitor-keys@npm:^1.0.0, eslint-visitor-keys@npm:^1.1.0": 1314 | version: 1.3.0 1315 | resolution: "eslint-visitor-keys@npm:1.3.0" 1316 | checksum: 37a19b712f42f4c9027e8ba98c2b06031c17e0c0a4c696cd429bd9ee04eb43889c446f2cd545e1ff51bef9593fcec94ecd2c2ef89129fcbbf3adadbef520376a 1317 | languageName: node 1318 | linkType: hard 1319 | 1320 | "eslint@npm:^5.6.0": 1321 | version: 5.16.0 1322 | resolution: "eslint@npm:5.16.0" 1323 | dependencies: 1324 | "@babel/code-frame": ^7.0.0 1325 | ajv: ^6.9.1 1326 | chalk: ^2.1.0 1327 | cross-spawn: ^6.0.5 1328 | debug: ^4.0.1 1329 | doctrine: ^3.0.0 1330 | eslint-scope: ^4.0.3 1331 | eslint-utils: ^1.3.1 1332 | eslint-visitor-keys: ^1.0.0 1333 | espree: ^5.0.1 1334 | esquery: ^1.0.1 1335 | esutils: ^2.0.2 1336 | file-entry-cache: ^5.0.1 1337 | functional-red-black-tree: ^1.0.1 1338 | glob: ^7.1.2 1339 | globals: ^11.7.0 1340 | ignore: ^4.0.6 1341 | import-fresh: ^3.0.0 1342 | imurmurhash: ^0.1.4 1343 | inquirer: ^6.2.2 1344 | js-yaml: ^3.13.0 1345 | json-stable-stringify-without-jsonify: ^1.0.1 1346 | levn: ^0.3.0 1347 | lodash: ^4.17.11 1348 | minimatch: ^3.0.4 1349 | mkdirp: ^0.5.1 1350 | natural-compare: ^1.4.0 1351 | optionator: ^0.8.2 1352 | path-is-inside: ^1.0.2 1353 | progress: ^2.0.0 1354 | regexpp: ^2.0.1 1355 | semver: ^5.5.1 1356 | strip-ansi: ^4.0.0 1357 | strip-json-comments: ^2.0.1 1358 | table: ^5.2.3 1359 | text-table: ^0.2.0 1360 | bin: 1361 | eslint: ./bin/eslint.js 1362 | checksum: 53c6b9420992df95f986dc031f76949edbea14bdeed4e40d8cda8970fbf0fc013c6d91b98f469b6477753e50c9af133c1a768e421a1c160ec2cac7a246e05494 1363 | languageName: node 1364 | linkType: hard 1365 | 1366 | "espree@npm:^5.0.1": 1367 | version: 5.0.1 1368 | resolution: "espree@npm:5.0.1" 1369 | dependencies: 1370 | acorn: ^6.0.7 1371 | acorn-jsx: ^5.0.0 1372 | eslint-visitor-keys: ^1.0.0 1373 | checksum: a091aac2bddf872484b0a7e779e3a1ffab32d1c55a6c4f99e483613a0149443531272c191eda1c7c827e32a9e10f6ce7ea6b131c7b3f4e12471fe618ebbc5b7e 1374 | languageName: node 1375 | linkType: hard 1376 | 1377 | "esprima@npm:^4.0.0": 1378 | version: 4.0.1 1379 | resolution: "esprima@npm:4.0.1" 1380 | bin: 1381 | esparse: ./bin/esparse.js 1382 | esvalidate: ./bin/esvalidate.js 1383 | checksum: b45bc805a613dbea2835278c306b91aff6173c8d034223fa81498c77dcbce3b2931bf6006db816f62eacd9fd4ea975dfd85a5b7f3c6402cfd050d4ca3c13a628 1384 | languageName: node 1385 | linkType: hard 1386 | 1387 | "esquery@npm:^1.0.1": 1388 | version: 1.4.0 1389 | resolution: "esquery@npm:1.4.0" 1390 | dependencies: 1391 | estraverse: ^5.1.0 1392 | checksum: a0807e17abd7fbe5fbd4fab673038d6d8a50675cdae6b04fbaa520c34581be0c5fa24582990e8acd8854f671dd291c78bb2efb9e0ed5b62f33bac4f9cf820210 1393 | languageName: node 1394 | linkType: hard 1395 | 1396 | "esrecurse@npm:^4.1.0": 1397 | version: 4.3.0 1398 | resolution: "esrecurse@npm:4.3.0" 1399 | dependencies: 1400 | estraverse: ^5.2.0 1401 | checksum: ebc17b1a33c51cef46fdc28b958994b1dc43cd2e86237515cbc3b4e5d2be6a811b2315d0a1a4d9d340b6d2308b15322f5c8291059521cc5f4802f65e7ec32837 1402 | languageName: node 1403 | linkType: hard 1404 | 1405 | "estraverse@npm:^4.1.1": 1406 | version: 4.3.0 1407 | resolution: "estraverse@npm:4.3.0" 1408 | checksum: a6299491f9940bb246124a8d44b7b7a413a8336f5436f9837aaa9330209bd9ee8af7e91a654a3545aee9c54b3308e78ee360cef1d777d37cfef77d2fa33b5827 1409 | languageName: node 1410 | linkType: hard 1411 | 1412 | "estraverse@npm:^5.1.0, estraverse@npm:^5.2.0": 1413 | version: 5.3.0 1414 | resolution: "estraverse@npm:5.3.0" 1415 | checksum: 072780882dc8416ad144f8fe199628d2b3e7bbc9989d9ed43795d2c90309a2047e6bc5979d7e2322a341163d22cfad9e21f4110597fe487519697389497e4e2b 1416 | languageName: node 1417 | linkType: hard 1418 | 1419 | "esutils@npm:^2.0.2": 1420 | version: 2.0.3 1421 | resolution: "esutils@npm:2.0.3" 1422 | checksum: 22b5b08f74737379a840b8ed2036a5fb35826c709ab000683b092d9054e5c2a82c27818f12604bfc2a9a76b90b6834ef081edbc1c7ae30d1627012e067c6ec87 1423 | languageName: node 1424 | linkType: hard 1425 | 1426 | "execa@npm:^5.0.0": 1427 | version: 5.1.1 1428 | resolution: "execa@npm:5.1.1" 1429 | dependencies: 1430 | cross-spawn: ^7.0.3 1431 | get-stream: ^6.0.0 1432 | human-signals: ^2.1.0 1433 | is-stream: ^2.0.0 1434 | merge-stream: ^2.0.0 1435 | npm-run-path: ^4.0.1 1436 | onetime: ^5.1.2 1437 | signal-exit: ^3.0.3 1438 | strip-final-newline: ^2.0.0 1439 | checksum: fba9022c8c8c15ed862847e94c252b3d946036d7547af310e344a527e59021fd8b6bb0723883ea87044dc4f0201f949046993124a42ccb0855cae5bf8c786343 1440 | languageName: node 1441 | linkType: hard 1442 | 1443 | "execa@npm:^6.1.0": 1444 | version: 6.1.0 1445 | resolution: "execa@npm:6.1.0" 1446 | dependencies: 1447 | cross-spawn: ^7.0.3 1448 | get-stream: ^6.0.1 1449 | human-signals: ^3.0.1 1450 | is-stream: ^3.0.0 1451 | merge-stream: ^2.0.0 1452 | npm-run-path: ^5.1.0 1453 | onetime: ^6.0.0 1454 | signal-exit: ^3.0.7 1455 | strip-final-newline: ^3.0.0 1456 | checksum: 1a4af799839134f5c72eb63d525b87304c1114a63aa71676c91d57ccef2e26f2f53e14c11384ab11c4ec479be1efa83d11c8190e00040355c2c5c3364327fa8e 1457 | languageName: node 1458 | linkType: hard 1459 | 1460 | "expand-tilde@npm:^2.0.0, expand-tilde@npm:^2.0.2": 1461 | version: 2.0.2 1462 | resolution: "expand-tilde@npm:2.0.2" 1463 | dependencies: 1464 | homedir-polyfill: ^1.0.1 1465 | checksum: 2efe6ed407d229981b1b6ceb552438fbc9e5c7d6a6751ad6ced3e0aa5cf12f0b299da695e90d6c2ac79191b5c53c613e508f7149e4573abfbb540698ddb7301a 1466 | languageName: node 1467 | linkType: hard 1468 | 1469 | "external-editor@npm:^3.0.3": 1470 | version: 3.1.0 1471 | resolution: "external-editor@npm:3.1.0" 1472 | dependencies: 1473 | chardet: ^0.7.0 1474 | iconv-lite: ^0.4.24 1475 | tmp: ^0.0.33 1476 | checksum: 1c2a616a73f1b3435ce04030261bed0e22d4737e14b090bb48e58865da92529c9f2b05b893de650738d55e692d071819b45e1669259b2b354bc3154d27a698c7 1477 | languageName: node 1478 | linkType: hard 1479 | 1480 | "fast-deep-equal@npm:^3.1.1": 1481 | version: 3.1.3 1482 | resolution: "fast-deep-equal@npm:3.1.3" 1483 | checksum: e21a9d8d84f53493b6aa15efc9cfd53dd5b714a1f23f67fb5dc8f574af80df889b3bce25dc081887c6d25457cce704e636395333abad896ccdec03abaf1f3f9d 1484 | languageName: node 1485 | linkType: hard 1486 | 1487 | "fast-diff@npm:^1.1.2": 1488 | version: 1.2.0 1489 | resolution: "fast-diff@npm:1.2.0" 1490 | checksum: 1b5306eaa9e826564d9e5ffcd6ebd881eb5f770b3f977fcbf38f05c824e42172b53c79920e8429c54eb742ce15a0caf268b0fdd5b38f6de52234c4a8368131ae 1491 | languageName: node 1492 | linkType: hard 1493 | 1494 | "fast-json-stable-stringify@npm:^2.0.0": 1495 | version: 2.1.0 1496 | resolution: "fast-json-stable-stringify@npm:2.1.0" 1497 | checksum: b191531e36c607977e5b1c47811158733c34ccb3bfde92c44798929e9b4154884378536d26ad90dfecd32e1ffc09c545d23535ad91b3161a27ddbb8ebe0cbecb 1498 | languageName: node 1499 | linkType: hard 1500 | 1501 | "fast-levenshtein@npm:~2.0.6": 1502 | version: 2.0.6 1503 | resolution: "fast-levenshtein@npm:2.0.6" 1504 | checksum: 92cfec0a8dfafd9c7a15fba8f2cc29cd0b62b85f056d99ce448bbcd9f708e18ab2764bda4dd5158364f4145a7c72788538994f0d1787b956ef0d1062b0f7c24c 1505 | languageName: node 1506 | linkType: hard 1507 | 1508 | "figures@npm:^2.0.0": 1509 | version: 2.0.0 1510 | resolution: "figures@npm:2.0.0" 1511 | dependencies: 1512 | escape-string-regexp: ^1.0.5 1513 | checksum: 081beb16ea57d1716f8447c694f637668322398b57017b20929376aaf5def9823b35245b734cdd87e4832dc96e9c6f46274833cada77bfe15e5f980fea1fd21f 1514 | languageName: node 1515 | linkType: hard 1516 | 1517 | "figures@npm:^3.0.0": 1518 | version: 3.2.0 1519 | resolution: "figures@npm:3.2.0" 1520 | dependencies: 1521 | escape-string-regexp: ^1.0.5 1522 | checksum: 85a6ad29e9aca80b49b817e7c89ecc4716ff14e3779d9835af554db91bac41c0f289c418923519392a1e582b4d10482ad282021330cd045bb7b80c84152f2a2b 1523 | languageName: node 1524 | linkType: hard 1525 | 1526 | "file-entry-cache@npm:^5.0.1": 1527 | version: 5.0.1 1528 | resolution: "file-entry-cache@npm:5.0.1" 1529 | dependencies: 1530 | flat-cache: ^2.0.1 1531 | checksum: 9014b17766815d59b8b789633aed005242ef857348c09be558bd85b4a24e16b0ad1e0e5229ccea7a2109f74ef1b3db1a559b58afe12b884f09019308711376fd 1532 | languageName: node 1533 | linkType: hard 1534 | 1535 | "fill-range@npm:^7.0.1": 1536 | version: 7.0.1 1537 | resolution: "fill-range@npm:7.0.1" 1538 | dependencies: 1539 | to-regex-range: ^5.0.1 1540 | checksum: cc283f4e65b504259e64fd969bcf4def4eb08d85565e906b7d36516e87819db52029a76b6363d0f02d0d532f0033c9603b9e2d943d56ee3b0d4f7ad3328ff917 1541 | languageName: node 1542 | linkType: hard 1543 | 1544 | "find-node-modules@npm:^2.1.2": 1545 | version: 2.1.3 1546 | resolution: "find-node-modules@npm:2.1.3" 1547 | dependencies: 1548 | findup-sync: ^4.0.0 1549 | merge: ^2.1.1 1550 | checksum: 4b8a194ffd56ccf1a1033de35e2ee8209869b05cce68ff7c4ab0dbf04e63fd7196283383eee4c84596c7b311755b2836815209d558234cadc330a87881e5a3f4 1551 | languageName: node 1552 | linkType: hard 1553 | 1554 | "find-root@npm:1.1.0": 1555 | version: 1.1.0 1556 | resolution: "find-root@npm:1.1.0" 1557 | checksum: b2a59fe4b6c932eef36c45a048ae8f93c85640212ebe8363164814990ee20f154197505965f3f4f102efc33bfb1cbc26fd17c4a2fc739ebc51b886b137cbefaf 1558 | languageName: node 1559 | linkType: hard 1560 | 1561 | "find-up@npm:^4.1.0": 1562 | version: 4.1.0 1563 | resolution: "find-up@npm:4.1.0" 1564 | dependencies: 1565 | locate-path: ^5.0.0 1566 | path-exists: ^4.0.0 1567 | checksum: 4c172680e8f8c1f78839486e14a43ef82e9decd0e74145f40707cc42e7420506d5ec92d9a11c22bd2c48fb0c384ea05dd30e10dd152fefeec6f2f75282a8b844 1568 | languageName: node 1569 | linkType: hard 1570 | 1571 | "find-up@npm:^5.0.0": 1572 | version: 5.0.0 1573 | resolution: "find-up@npm:5.0.0" 1574 | dependencies: 1575 | locate-path: ^6.0.0 1576 | path-exists: ^4.0.0 1577 | checksum: 07955e357348f34660bde7920783204ff5a26ac2cafcaa28bace494027158a97b9f56faaf2d89a6106211a8174db650dd9f503f9c0d526b1202d5554a00b9095 1578 | languageName: node 1579 | linkType: hard 1580 | 1581 | "findup-sync@npm:^4.0.0": 1582 | version: 4.0.0 1583 | resolution: "findup-sync@npm:4.0.0" 1584 | dependencies: 1585 | detect-file: ^1.0.0 1586 | is-glob: ^4.0.0 1587 | micromatch: ^4.0.2 1588 | resolve-dir: ^1.0.1 1589 | checksum: 94131e1107ad63790ed00c4c39ca131a93ea602607bd97afeffd92b69a9a63cf2c6f57d6db88cb753fe748ac7fde79e1e76768ff784247026b7c5ebf23ede3a0 1590 | languageName: node 1591 | linkType: hard 1592 | 1593 | "flat-cache@npm:^2.0.1": 1594 | version: 2.0.1 1595 | resolution: "flat-cache@npm:2.0.1" 1596 | dependencies: 1597 | flatted: ^2.0.0 1598 | rimraf: 2.6.3 1599 | write: 1.0.3 1600 | checksum: 0f5e66467658039e6fcaaccb363b28f43906ba72fab7ff2a4f6fcd5b4899679e13ca46d9fc6cc48b68ac925ae93137106d4aaeb79874c13f21f87a361705f1b1 1601 | languageName: node 1602 | linkType: hard 1603 | 1604 | "flatted@npm:^2.0.0": 1605 | version: 2.0.2 1606 | resolution: "flatted@npm:2.0.2" 1607 | checksum: 473c754db7a529e125a22057098f1a4c905ba17b8cc269c3acf77352f0ffa6304c851eb75f6a1845f74461f560e635129ca6b0b8a78fb253c65cea4de3d776f2 1608 | languageName: node 1609 | linkType: hard 1610 | 1611 | "foundry-random@workspace:.": 1612 | version: 0.0.0-use.local 1613 | resolution: "foundry-random@workspace:." 1614 | dependencies: 1615 | "@commitlint/cli": ^17.3.0 1616 | "@commitlint/config-conventional": ^17.3.0 1617 | commitizen: ^4.2.6 1618 | cz-conventional-changelog: ^3.3.0 1619 | husky: ^8.0.2 1620 | lint-staged: ^13.1.0 1621 | prettier: ^2.8.1 1622 | prettier-plugin-solidity: ^1.1.0 1623 | rimraf: ^3.0.2 1624 | solhint: ^3.3.7 1625 | solhint-plugin-prettier: ^0.0.5 1626 | languageName: unknown 1627 | linkType: soft 1628 | 1629 | "fs-extra@npm:8.1.0": 1630 | version: 8.1.0 1631 | resolution: "fs-extra@npm:8.1.0" 1632 | dependencies: 1633 | graceful-fs: ^4.2.0 1634 | jsonfile: ^4.0.0 1635 | universalify: ^0.1.0 1636 | checksum: bf44f0e6cea59d5ce071bba4c43ca76d216f89e402dc6285c128abc0902e9b8525135aa808adad72c9d5d218e9f4bcc63962815529ff2f684ad532172a284880 1637 | languageName: node 1638 | linkType: hard 1639 | 1640 | "fs-extra@npm:9.1.0": 1641 | version: 9.1.0 1642 | resolution: "fs-extra@npm:9.1.0" 1643 | dependencies: 1644 | at-least-node: ^1.0.0 1645 | graceful-fs: ^4.2.0 1646 | jsonfile: ^6.0.1 1647 | universalify: ^2.0.0 1648 | checksum: ba71ba32e0faa74ab931b7a0031d1523c66a73e225de7426e275e238e312d07313d2da2d33e34a52aa406c8763ade5712eb3ec9ba4d9edce652bcacdc29e6b20 1649 | languageName: node 1650 | linkType: hard 1651 | 1652 | "fs-extra@npm:^10.0.0": 1653 | version: 10.1.0 1654 | resolution: "fs-extra@npm:10.1.0" 1655 | dependencies: 1656 | graceful-fs: ^4.2.0 1657 | jsonfile: ^6.0.1 1658 | universalify: ^2.0.0 1659 | checksum: dc94ab37096f813cc3ca12f0f1b5ad6744dfed9ed21e953d72530d103cea193c2f81584a39e9dee1bea36de5ee66805678c0dddc048e8af1427ac19c00fffc50 1660 | languageName: node 1661 | linkType: hard 1662 | 1663 | "fs.realpath@npm:^1.0.0": 1664 | version: 1.0.0 1665 | resolution: "fs.realpath@npm:1.0.0" 1666 | checksum: 99ddea01a7e75aa276c250a04eedeffe5662bce66c65c07164ad6264f9de18fb21be9433ead460e54cff20e31721c811f4fb5d70591799df5f85dce6d6746fd0 1667 | languageName: node 1668 | linkType: hard 1669 | 1670 | "function-bind@npm:^1.1.1": 1671 | version: 1.1.1 1672 | resolution: "function-bind@npm:1.1.1" 1673 | checksum: b32fbaebb3f8ec4969f033073b43f5c8befbb58f1a79e12f1d7490358150359ebd92f49e72ff0144f65f2c48ea2a605bff2d07965f548f6474fd8efd95bf361a 1674 | languageName: node 1675 | linkType: hard 1676 | 1677 | "functional-red-black-tree@npm:^1.0.1": 1678 | version: 1.0.1 1679 | resolution: "functional-red-black-tree@npm:1.0.1" 1680 | checksum: ca6c170f37640e2d94297da8bb4bf27a1d12bea3e00e6a3e007fd7aa32e37e000f5772acf941b4e4f3cf1c95c3752033d0c509af157ad8f526e7f00723b9eb9f 1681 | languageName: node 1682 | linkType: hard 1683 | 1684 | "get-caller-file@npm:^2.0.5": 1685 | version: 2.0.5 1686 | resolution: "get-caller-file@npm:2.0.5" 1687 | checksum: b9769a836d2a98c3ee734a88ba712e62703f1df31b94b784762c433c27a386dd6029ff55c2a920c392e33657d80191edbf18c61487e198844844516f843496b9 1688 | languageName: node 1689 | linkType: hard 1690 | 1691 | "get-stream@npm:^6.0.0, get-stream@npm:^6.0.1": 1692 | version: 6.0.1 1693 | resolution: "get-stream@npm:6.0.1" 1694 | checksum: e04ecece32c92eebf5b8c940f51468cd53554dcbb0ea725b2748be583c9523d00128137966afce410b9b051eb2ef16d657cd2b120ca8edafcf5a65e81af63cad 1695 | languageName: node 1696 | linkType: hard 1697 | 1698 | "git-raw-commits@npm:^2.0.0": 1699 | version: 2.0.11 1700 | resolution: "git-raw-commits@npm:2.0.11" 1701 | dependencies: 1702 | dargs: ^7.0.0 1703 | lodash: ^4.17.15 1704 | meow: ^8.0.0 1705 | split2: ^3.0.0 1706 | through2: ^4.0.0 1707 | bin: 1708 | git-raw-commits: cli.js 1709 | checksum: c178af43633684106179793b6e3473e1d2bb50bb41d04e2e285ea4eef342ca4090fee6bc8a737552fde879d22346c90de5c49f18c719a0f38d4c934f258a0f79 1710 | languageName: node 1711 | linkType: hard 1712 | 1713 | "glob@npm:7.1.4": 1714 | version: 7.1.4 1715 | resolution: "glob@npm:7.1.4" 1716 | dependencies: 1717 | fs.realpath: ^1.0.0 1718 | inflight: ^1.0.4 1719 | inherits: 2 1720 | minimatch: ^3.0.4 1721 | once: ^1.3.0 1722 | path-is-absolute: ^1.0.0 1723 | checksum: f52480fc82b1e66e52990f0f2e7306447d12294c83fbbee0395e761ad1178172012a7cc0673dbf4810baac400fc09bf34484c08b5778c216403fd823db281716 1724 | languageName: node 1725 | linkType: hard 1726 | 1727 | "glob@npm:7.2.3, glob@npm:^7.1.2, glob@npm:^7.1.3": 1728 | version: 7.2.3 1729 | resolution: "glob@npm:7.2.3" 1730 | dependencies: 1731 | fs.realpath: ^1.0.0 1732 | inflight: ^1.0.4 1733 | inherits: 2 1734 | minimatch: ^3.1.1 1735 | once: ^1.3.0 1736 | path-is-absolute: ^1.0.0 1737 | checksum: 29452e97b38fa704dabb1d1045350fb2467cf0277e155aa9ff7077e90ad81d1ea9d53d3ee63bd37c05b09a065e90f16aec4a65f5b8de401d1dac40bc5605d133 1738 | languageName: node 1739 | linkType: hard 1740 | 1741 | "global-dirs@npm:^0.1.1": 1742 | version: 0.1.1 1743 | resolution: "global-dirs@npm:0.1.1" 1744 | dependencies: 1745 | ini: ^1.3.4 1746 | checksum: 10624f5a8ddb8634c22804c6b24f93fb591c3639a6bc78e3584e01a238fc6f7b7965824184e57d63f6df36980b6c191484ad7bc6c35a1599b8f1d64be64c2a4a 1747 | languageName: node 1748 | linkType: hard 1749 | 1750 | "global-modules@npm:^1.0.0": 1751 | version: 1.0.0 1752 | resolution: "global-modules@npm:1.0.0" 1753 | dependencies: 1754 | global-prefix: ^1.0.1 1755 | is-windows: ^1.0.1 1756 | resolve-dir: ^1.0.0 1757 | checksum: 10be68796c1e1abc1e2ba87ec4ea507f5629873b119ab0cd29c07284ef2b930f1402d10df01beccb7391dedd9cd479611dd6a24311c71be58937beaf18edf85e 1758 | languageName: node 1759 | linkType: hard 1760 | 1761 | "global-prefix@npm:^1.0.1": 1762 | version: 1.0.2 1763 | resolution: "global-prefix@npm:1.0.2" 1764 | dependencies: 1765 | expand-tilde: ^2.0.2 1766 | homedir-polyfill: ^1.0.1 1767 | ini: ^1.3.4 1768 | is-windows: ^1.0.1 1769 | which: ^1.2.14 1770 | checksum: 061b43470fe498271bcd514e7746e8a8535032b17ab9570517014ae27d700ff0dca749f76bbde13ba384d185be4310d8ba5712cb0e74f7d54d59390db63dd9a0 1771 | languageName: node 1772 | linkType: hard 1773 | 1774 | "globals@npm:^11.7.0": 1775 | version: 11.12.0 1776 | resolution: "globals@npm:11.12.0" 1777 | checksum: 67051a45eca3db904aee189dfc7cd53c20c7d881679c93f6146ddd4c9f4ab2268e68a919df740d39c71f4445d2b38ee360fc234428baea1dbdfe68bbcb46979e 1778 | languageName: node 1779 | linkType: hard 1780 | 1781 | "graceful-fs@npm:^4.1.6, graceful-fs@npm:^4.2.0": 1782 | version: 4.2.10 1783 | resolution: "graceful-fs@npm:4.2.10" 1784 | checksum: 3f109d70ae123951905d85032ebeae3c2a5a7a997430df00ea30df0e3a6c60cf6689b109654d6fdacd28810a053348c4d14642da1d075049e6be1ba5216218da 1785 | languageName: node 1786 | linkType: hard 1787 | 1788 | "hard-rejection@npm:^2.1.0": 1789 | version: 2.1.0 1790 | resolution: "hard-rejection@npm:2.1.0" 1791 | checksum: 7baaf80a0c7fff4ca79687b4060113f1529589852152fa935e6787a2bc96211e784ad4588fb3048136ff8ffc9dfcf3ae385314a5b24db32de20bea0d1597f9dc 1792 | languageName: node 1793 | linkType: hard 1794 | 1795 | "has-flag@npm:^3.0.0": 1796 | version: 3.0.0 1797 | resolution: "has-flag@npm:3.0.0" 1798 | checksum: 4a15638b454bf086c8148979aae044dd6e39d63904cd452d970374fa6a87623423da485dfb814e7be882e05c096a7ccf1ebd48e7e7501d0208d8384ff4dea73b 1799 | languageName: node 1800 | linkType: hard 1801 | 1802 | "has-flag@npm:^4.0.0": 1803 | version: 4.0.0 1804 | resolution: "has-flag@npm:4.0.0" 1805 | checksum: 261a1357037ead75e338156b1f9452c016a37dcd3283a972a30d9e4a87441ba372c8b81f818cd0fbcd9c0354b4ae7e18b9e1afa1971164aef6d18c2b6095a8ad 1806 | languageName: node 1807 | linkType: hard 1808 | 1809 | "has@npm:^1.0.3": 1810 | version: 1.0.3 1811 | resolution: "has@npm:1.0.3" 1812 | dependencies: 1813 | function-bind: ^1.1.1 1814 | checksum: b9ad53d53be4af90ce5d1c38331e712522417d017d5ef1ebd0507e07c2fbad8686fffb8e12ddecd4c39ca9b9b47431afbb975b8abf7f3c3b82c98e9aad052792 1815 | languageName: node 1816 | linkType: hard 1817 | 1818 | "homedir-polyfill@npm:^1.0.1": 1819 | version: 1.0.3 1820 | resolution: "homedir-polyfill@npm:1.0.3" 1821 | dependencies: 1822 | parse-passwd: ^1.0.0 1823 | checksum: 18dd4db87052c6a2179d1813adea0c4bfcfa4f9996f0e226fefb29eb3d548e564350fa28ec46b0bf1fbc0a1d2d6922ceceb80093115ea45ff8842a4990139250 1824 | languageName: node 1825 | linkType: hard 1826 | 1827 | "hosted-git-info@npm:^2.1.4": 1828 | version: 2.8.9 1829 | resolution: "hosted-git-info@npm:2.8.9" 1830 | checksum: c955394bdab888a1e9bb10eb33029e0f7ce5a2ac7b3f158099dc8c486c99e73809dca609f5694b223920ca2174db33d32b12f9a2a47141dc59607c29da5a62dd 1831 | languageName: node 1832 | linkType: hard 1833 | 1834 | "hosted-git-info@npm:^4.0.1": 1835 | version: 4.1.0 1836 | resolution: "hosted-git-info@npm:4.1.0" 1837 | dependencies: 1838 | lru-cache: ^6.0.0 1839 | checksum: c3f87b3c2f7eb8c2748c8f49c0c2517c9a95f35d26f4bf54b2a8cba05d2e668f3753548b6ea366b18ec8dadb4e12066e19fa382a01496b0ffa0497eb23cbe461 1840 | languageName: node 1841 | linkType: hard 1842 | 1843 | "human-signals@npm:^2.1.0": 1844 | version: 2.1.0 1845 | resolution: "human-signals@npm:2.1.0" 1846 | checksum: b87fd89fce72391625271454e70f67fe405277415b48bcc0117ca73d31fa23a4241787afdc8d67f5a116cf37258c052f59ea82daffa72364d61351423848e3b8 1847 | languageName: node 1848 | linkType: hard 1849 | 1850 | "human-signals@npm:^3.0.1": 1851 | version: 3.0.1 1852 | resolution: "human-signals@npm:3.0.1" 1853 | checksum: f252a7769c8094a5c9dc6772816bdb417b188820b04c8b42d0fc468e03a0ba905b1dd07afabe9385cc83504af1ccc2b985cd1e4aeeeb8e0029896c5af2e6f354 1854 | languageName: node 1855 | linkType: hard 1856 | 1857 | "husky@npm:^8.0.2": 1858 | version: 8.0.2 1859 | resolution: "husky@npm:8.0.2" 1860 | bin: 1861 | husky: lib/bin.js 1862 | checksum: e101656fcb56163d610488f186448c78b132626aa427094489d886ce9374955a90274912b0f3a34af3326eaa74977883b032e5f701d7aaf4554daa5a7931be43 1863 | languageName: node 1864 | linkType: hard 1865 | 1866 | "iconv-lite@npm:^0.4.24": 1867 | version: 0.4.24 1868 | resolution: "iconv-lite@npm:0.4.24" 1869 | dependencies: 1870 | safer-buffer: ">= 2.1.2 < 3" 1871 | checksum: bd9f120f5a5b306f0bc0b9ae1edeb1577161503f5f8252a20f1a9e56ef8775c9959fd01c55f2d3a39d9a8abaf3e30c1abeb1895f367dcbbe0a8fd1c9ca01c4f6 1872 | languageName: node 1873 | linkType: hard 1874 | 1875 | "ieee754@npm:^1.1.13": 1876 | version: 1.2.1 1877 | resolution: "ieee754@npm:1.2.1" 1878 | checksum: 5144c0c9815e54ada181d80a0b810221a253562422e7c6c3a60b1901154184f49326ec239d618c416c1c5945a2e197107aee8d986a3dd836b53dffefd99b5e7e 1879 | languageName: node 1880 | linkType: hard 1881 | 1882 | "ignore@npm:^4.0.6": 1883 | version: 4.0.6 1884 | resolution: "ignore@npm:4.0.6" 1885 | checksum: 248f82e50a430906f9ee7f35e1158e3ec4c3971451dd9f99c9bc1548261b4db2b99709f60ac6c6cac9333494384176cc4cc9b07acbe42d52ac6a09cad734d800 1886 | languageName: node 1887 | linkType: hard 1888 | 1889 | "import-fresh@npm:^2.0.0": 1890 | version: 2.0.0 1891 | resolution: "import-fresh@npm:2.0.0" 1892 | dependencies: 1893 | caller-path: ^2.0.0 1894 | resolve-from: ^3.0.0 1895 | checksum: 610255f9753cc6775df00be08e9f43691aa39f7703e3636c45afe22346b8b545e600ccfe100c554607546fc8e861fa149a0d1da078c8adedeea30fff326eef79 1896 | languageName: node 1897 | linkType: hard 1898 | 1899 | "import-fresh@npm:^3.0.0, import-fresh@npm:^3.2.1": 1900 | version: 3.3.0 1901 | resolution: "import-fresh@npm:3.3.0" 1902 | dependencies: 1903 | parent-module: ^1.0.0 1904 | resolve-from: ^4.0.0 1905 | checksum: 2cacfad06e652b1edc50be650f7ec3be08c5e5a6f6d12d035c440a42a8cc028e60a5b99ca08a77ab4d6b1346da7d971915828f33cdab730d3d42f08242d09baa 1906 | languageName: node 1907 | linkType: hard 1908 | 1909 | "imurmurhash@npm:^0.1.4": 1910 | version: 0.1.4 1911 | resolution: "imurmurhash@npm:0.1.4" 1912 | checksum: 7cae75c8cd9a50f57dadd77482359f659eaebac0319dd9368bcd1714f55e65badd6929ca58569da2b6494ef13fdd5598cd700b1eba23f8b79c5f19d195a3ecf7 1913 | languageName: node 1914 | linkType: hard 1915 | 1916 | "indent-string@npm:^4.0.0": 1917 | version: 4.0.0 1918 | resolution: "indent-string@npm:4.0.0" 1919 | checksum: 824cfb9929d031dabf059bebfe08cf3137365e112019086ed3dcff6a0a7b698cb80cf67ccccde0e25b9e2d7527aa6cc1fed1ac490c752162496caba3e6699612 1920 | languageName: node 1921 | linkType: hard 1922 | 1923 | "inflight@npm:^1.0.4": 1924 | version: 1.0.6 1925 | resolution: "inflight@npm:1.0.6" 1926 | dependencies: 1927 | once: ^1.3.0 1928 | wrappy: 1 1929 | checksum: f4f76aa072ce19fae87ce1ef7d221e709afb59d445e05d47fba710e85470923a75de35bfae47da6de1b18afc3ce83d70facf44cfb0aff89f0a3f45c0a0244dfd 1930 | languageName: node 1931 | linkType: hard 1932 | 1933 | "inherits@npm:2, inherits@npm:^2.0.3, inherits@npm:^2.0.4": 1934 | version: 2.0.4 1935 | resolution: "inherits@npm:2.0.4" 1936 | checksum: 4a48a733847879d6cf6691860a6b1e3f0f4754176e4d71494c41f3475553768b10f84b5ce1d40fbd0e34e6bfbb864ee35858ad4dd2cf31e02fc4a154b724d7f1 1937 | languageName: node 1938 | linkType: hard 1939 | 1940 | "ini@npm:^1.3.4": 1941 | version: 1.3.8 1942 | resolution: "ini@npm:1.3.8" 1943 | checksum: dfd98b0ca3a4fc1e323e38a6c8eb8936e31a97a918d3b377649ea15bdb15d481207a0dda1021efbd86b464cae29a0d33c1d7dcaf6c5672bee17fa849bc50a1b3 1944 | languageName: node 1945 | linkType: hard 1946 | 1947 | "inquirer@npm:6.5.2, inquirer@npm:^6.2.2": 1948 | version: 6.5.2 1949 | resolution: "inquirer@npm:6.5.2" 1950 | dependencies: 1951 | ansi-escapes: ^3.2.0 1952 | chalk: ^2.4.2 1953 | cli-cursor: ^2.1.0 1954 | cli-width: ^2.0.0 1955 | external-editor: ^3.0.3 1956 | figures: ^2.0.0 1957 | lodash: ^4.17.12 1958 | mute-stream: 0.0.7 1959 | run-async: ^2.2.0 1960 | rxjs: ^6.4.0 1961 | string-width: ^2.1.0 1962 | strip-ansi: ^5.1.0 1963 | through: ^2.3.6 1964 | checksum: 175ad4cd1ebed493b231b240185f1da5afeace5f4e8811dfa83cf55dcae59c3255eaed990aa71871b0fd31aa9dc212f43c44c50ed04fb529364405e72f484d28 1965 | languageName: node 1966 | linkType: hard 1967 | 1968 | "inquirer@npm:8.2.4": 1969 | version: 8.2.4 1970 | resolution: "inquirer@npm:8.2.4" 1971 | dependencies: 1972 | ansi-escapes: ^4.2.1 1973 | chalk: ^4.1.1 1974 | cli-cursor: ^3.1.0 1975 | cli-width: ^3.0.0 1976 | external-editor: ^3.0.3 1977 | figures: ^3.0.0 1978 | lodash: ^4.17.21 1979 | mute-stream: 0.0.8 1980 | ora: ^5.4.1 1981 | run-async: ^2.4.0 1982 | rxjs: ^7.5.5 1983 | string-width: ^4.1.0 1984 | strip-ansi: ^6.0.0 1985 | through: ^2.3.6 1986 | wrap-ansi: ^7.0.0 1987 | checksum: dfcb6529d3af443dfea2241cb471508091b51f5121a088fdb8728b23ec9b349ef0a5e13a0ef2c8e19457b0bed22f7cbbcd561f7a4529d084c562a58c605e2655 1988 | languageName: node 1989 | linkType: hard 1990 | 1991 | "is-arrayish@npm:^0.2.1": 1992 | version: 0.2.1 1993 | resolution: "is-arrayish@npm:0.2.1" 1994 | checksum: eef4417e3c10e60e2c810b6084942b3ead455af16c4509959a27e490e7aee87cfb3f38e01bbde92220b528a0ee1a18d52b787e1458ee86174d8c7f0e58cd488f 1995 | languageName: node 1996 | linkType: hard 1997 | 1998 | "is-core-module@npm:^2.5.0, is-core-module@npm:^2.9.0": 1999 | version: 2.9.0 2000 | resolution: "is-core-module@npm:2.9.0" 2001 | dependencies: 2002 | has: ^1.0.3 2003 | checksum: b27034318b4b462f1c8f1dfb1b32baecd651d891a4e2d1922135daeff4141dfced2b82b07aef83ef54275c4a3526aa38da859223664d0868ca24182badb784ce 2004 | languageName: node 2005 | linkType: hard 2006 | 2007 | "is-directory@npm:^0.3.1": 2008 | version: 0.3.1 2009 | resolution: "is-directory@npm:0.3.1" 2010 | checksum: dce9a9d3981e38f2ded2a80848734824c50ee8680cd09aa477bef617949715cfc987197a2ca0176c58a9fb192a1a0d69b535c397140d241996a609d5906ae524 2011 | languageName: node 2012 | linkType: hard 2013 | 2014 | "is-extglob@npm:^2.1.1": 2015 | version: 2.1.1 2016 | resolution: "is-extglob@npm:2.1.1" 2017 | checksum: df033653d06d0eb567461e58a7a8c9f940bd8c22274b94bf7671ab36df5719791aae15eef6d83bbb5e23283967f2f984b8914559d4449efda578c775c4be6f85 2018 | languageName: node 2019 | linkType: hard 2020 | 2021 | "is-fullwidth-code-point@npm:^2.0.0": 2022 | version: 2.0.0 2023 | resolution: "is-fullwidth-code-point@npm:2.0.0" 2024 | checksum: eef9c6e15f68085fec19ff6a978a6f1b8f48018fd1265035552078ee945573594933b09bbd6f562553e2a241561439f1ef5339276eba68d272001343084cfab8 2025 | languageName: node 2026 | linkType: hard 2027 | 2028 | "is-fullwidth-code-point@npm:^3.0.0": 2029 | version: 3.0.0 2030 | resolution: "is-fullwidth-code-point@npm:3.0.0" 2031 | checksum: 44a30c29457c7fb8f00297bce733f0a64cd22eca270f83e58c105e0d015e45c019491a4ab2faef91ab51d4738c670daff901c799f6a700e27f7314029e99e348 2032 | languageName: node 2033 | linkType: hard 2034 | 2035 | "is-fullwidth-code-point@npm:^4.0.0": 2036 | version: 4.0.0 2037 | resolution: "is-fullwidth-code-point@npm:4.0.0" 2038 | checksum: 8ae89bf5057bdf4f57b346fb6c55e9c3dd2549983d54191d722d5c739397a903012cc41a04ee3403fd872e811243ef91a7c5196da7b5841dc6b6aae31a264a8d 2039 | languageName: node 2040 | linkType: hard 2041 | 2042 | "is-glob@npm:^4.0.0": 2043 | version: 4.0.3 2044 | resolution: "is-glob@npm:4.0.3" 2045 | dependencies: 2046 | is-extglob: ^2.1.1 2047 | checksum: d381c1319fcb69d341cc6e6c7cd588e17cd94722d9a32dbd60660b993c4fb7d0f19438674e68dfec686d09b7c73139c9166b47597f846af387450224a8101ab4 2048 | languageName: node 2049 | linkType: hard 2050 | 2051 | "is-interactive@npm:^1.0.0": 2052 | version: 1.0.0 2053 | resolution: "is-interactive@npm:1.0.0" 2054 | checksum: 824808776e2d468b2916cdd6c16acacebce060d844c35ca6d82267da692e92c3a16fdba624c50b54a63f38bdc4016055b6f443ce57d7147240de4f8cdabaf6f9 2055 | languageName: node 2056 | linkType: hard 2057 | 2058 | "is-number@npm:^7.0.0": 2059 | version: 7.0.0 2060 | resolution: "is-number@npm:7.0.0" 2061 | checksum: 456ac6f8e0f3111ed34668a624e45315201dff921e5ac181f8ec24923b99e9f32ca1a194912dc79d539c97d33dba17dc635202ff0b2cf98326f608323276d27a 2062 | languageName: node 2063 | linkType: hard 2064 | 2065 | "is-obj@npm:^2.0.0": 2066 | version: 2.0.0 2067 | resolution: "is-obj@npm:2.0.0" 2068 | checksum: c9916ac8f4621962a42f5e80e7ffdb1d79a3fab7456ceaeea394cd9e0858d04f985a9ace45be44433bf605673c8be8810540fe4cc7f4266fc7526ced95af5a08 2069 | languageName: node 2070 | linkType: hard 2071 | 2072 | "is-plain-obj@npm:^1.1.0": 2073 | version: 1.1.0 2074 | resolution: "is-plain-obj@npm:1.1.0" 2075 | checksum: 0ee04807797aad50859652a7467481816cbb57e5cc97d813a7dcd8915da8195dc68c436010bf39d195226cde6a2d352f4b815f16f26b7bf486a5754290629931 2076 | languageName: node 2077 | linkType: hard 2078 | 2079 | "is-stream@npm:^2.0.0": 2080 | version: 2.0.1 2081 | resolution: "is-stream@npm:2.0.1" 2082 | checksum: b8e05ccdf96ac330ea83c12450304d4a591f9958c11fd17bed240af8d5ffe08aedafa4c0f4cfccd4d28dc9d4d129daca1023633d5c11601a6cbc77521f6fae66 2083 | languageName: node 2084 | linkType: hard 2085 | 2086 | "is-stream@npm:^3.0.0": 2087 | version: 3.0.0 2088 | resolution: "is-stream@npm:3.0.0" 2089 | checksum: 172093fe99119ffd07611ab6d1bcccfe8bc4aa80d864b15f43e63e54b7abc71e779acd69afdb854c4e2a67fdc16ae710e370eda40088d1cfc956a50ed82d8f16 2090 | languageName: node 2091 | linkType: hard 2092 | 2093 | "is-text-path@npm:^1.0.1": 2094 | version: 1.0.1 2095 | resolution: "is-text-path@npm:1.0.1" 2096 | dependencies: 2097 | text-extensions: ^1.0.0 2098 | checksum: fb5d78752c22b3f73a7c9540768f765ffcfa38c9e421e2b9af869565307fa1ae5e3d3a2ba016a43549742856846566d327da406e94a5846ec838a288b1704fd2 2099 | languageName: node 2100 | linkType: hard 2101 | 2102 | "is-unicode-supported@npm:^0.1.0": 2103 | version: 0.1.0 2104 | resolution: "is-unicode-supported@npm:0.1.0" 2105 | checksum: a2aab86ee7712f5c2f999180daaba5f361bdad1efadc9610ff5b8ab5495b86e4f627839d085c6530363c6d6d4ecbde340fb8e54bdb83da4ba8e0865ed5513c52 2106 | languageName: node 2107 | linkType: hard 2108 | 2109 | "is-utf8@npm:^0.2.1": 2110 | version: 0.2.1 2111 | resolution: "is-utf8@npm:0.2.1" 2112 | checksum: 167ccd2be869fc228cc62c1a28df4b78c6b5485d15a29027d3b5dceb09b383e86a3522008b56dcac14b592b22f0a224388718c2505027a994fd8471465de54b3 2113 | languageName: node 2114 | linkType: hard 2115 | 2116 | "is-windows@npm:^1.0.1": 2117 | version: 1.0.2 2118 | resolution: "is-windows@npm:1.0.2" 2119 | checksum: 438b7e52656fe3b9b293b180defb4e448088e7023a523ec21a91a80b9ff8cdb3377ddb5b6e60f7c7de4fa8b63ab56e121b6705fe081b3cf1b828b0a380009ad7 2120 | languageName: node 2121 | linkType: hard 2122 | 2123 | "isexe@npm:^2.0.0": 2124 | version: 2.0.0 2125 | resolution: "isexe@npm:2.0.0" 2126 | checksum: 26bf6c5480dda5161c820c5b5c751ae1e766c587b1f951ea3fcfc973bafb7831ae5b54a31a69bd670220e42e99ec154475025a468eae58ea262f813fdc8d1c62 2127 | languageName: node 2128 | linkType: hard 2129 | 2130 | "js-tokens@npm:^4.0.0": 2131 | version: 4.0.0 2132 | resolution: "js-tokens@npm:4.0.0" 2133 | checksum: 8a95213a5a77deb6cbe94d86340e8d9ace2b93bc367790b260101d2f36a2eaf4e4e22d9fa9cf459b38af3a32fb4190e638024cf82ec95ef708680e405ea7cc78 2134 | languageName: node 2135 | linkType: hard 2136 | 2137 | "js-yaml@npm:^3.12.0, js-yaml@npm:^3.13.0, js-yaml@npm:^3.13.1": 2138 | version: 3.14.1 2139 | resolution: "js-yaml@npm:3.14.1" 2140 | dependencies: 2141 | argparse: ^1.0.7 2142 | esprima: ^4.0.0 2143 | bin: 2144 | js-yaml: bin/js-yaml.js 2145 | checksum: bef146085f472d44dee30ec34e5cf36bf89164f5d585435a3d3da89e52622dff0b188a580e4ad091c3341889e14cb88cac6e4deb16dc5b1e9623bb0601fc255c 2146 | languageName: node 2147 | linkType: hard 2148 | 2149 | "json-parse-better-errors@npm:^1.0.1": 2150 | version: 1.0.2 2151 | resolution: "json-parse-better-errors@npm:1.0.2" 2152 | checksum: ff2b5ba2a70e88fd97a3cb28c1840144c5ce8fae9cbeeddba15afa333a5c407cf0e42300cd0a2885dbb055227fe68d405070faad941beeffbfde9cf3b2c78c5d 2153 | languageName: node 2154 | linkType: hard 2155 | 2156 | "json-parse-even-better-errors@npm:^2.3.0": 2157 | version: 2.3.1 2158 | resolution: "json-parse-even-better-errors@npm:2.3.1" 2159 | checksum: 798ed4cf3354a2d9ccd78e86d2169515a0097a5c133337807cdf7f1fc32e1391d207ccfc276518cc1d7d8d4db93288b8a50ba4293d212ad1336e52a8ec0a941f 2160 | languageName: node 2161 | linkType: hard 2162 | 2163 | "json-schema-traverse@npm:^0.4.1": 2164 | version: 0.4.1 2165 | resolution: "json-schema-traverse@npm:0.4.1" 2166 | checksum: 7486074d3ba247769fda17d5181b345c9fb7d12e0da98b22d1d71a5db9698d8b4bd900a3ec1a4ffdd60846fc2556274a5c894d0c48795f14cb03aeae7b55260b 2167 | languageName: node 2168 | linkType: hard 2169 | 2170 | "json-schema-traverse@npm:^1.0.0": 2171 | version: 1.0.0 2172 | resolution: "json-schema-traverse@npm:1.0.0" 2173 | checksum: 02f2f466cdb0362558b2f1fd5e15cce82ef55d60cd7f8fa828cf35ba74330f8d767fcae5c5c2adb7851fa811766c694b9405810879bc4e1ddd78a7c0e03658ad 2174 | languageName: node 2175 | linkType: hard 2176 | 2177 | "json-stable-stringify-without-jsonify@npm:^1.0.1": 2178 | version: 1.0.1 2179 | resolution: "json-stable-stringify-without-jsonify@npm:1.0.1" 2180 | checksum: cff44156ddce9c67c44386ad5cddf91925fe06b1d217f2da9c4910d01f358c6e3989c4d5a02683c7a5667f9727ff05831f7aa8ae66c8ff691c556f0884d49215 2181 | languageName: node 2182 | linkType: hard 2183 | 2184 | "jsonfile@npm:^4.0.0": 2185 | version: 4.0.0 2186 | resolution: "jsonfile@npm:4.0.0" 2187 | dependencies: 2188 | graceful-fs: ^4.1.6 2189 | dependenciesMeta: 2190 | graceful-fs: 2191 | optional: true 2192 | checksum: 6447d6224f0d31623eef9b51185af03ac328a7553efcee30fa423d98a9e276ca08db87d71e17f2310b0263fd3ffa6c2a90a6308367f661dc21580f9469897c9e 2193 | languageName: node 2194 | linkType: hard 2195 | 2196 | "jsonfile@npm:^6.0.1": 2197 | version: 6.1.0 2198 | resolution: "jsonfile@npm:6.1.0" 2199 | dependencies: 2200 | graceful-fs: ^4.1.6 2201 | universalify: ^2.0.0 2202 | dependenciesMeta: 2203 | graceful-fs: 2204 | optional: true 2205 | checksum: 7af3b8e1ac8fe7f1eccc6263c6ca14e1966fcbc74b618d3c78a0a2075579487547b94f72b7a1114e844a1e15bb00d440e5d1720bfc4612d790a6f285d5ea8354 2206 | languageName: node 2207 | linkType: hard 2208 | 2209 | "jsonparse@npm:^1.2.0": 2210 | version: 1.3.1 2211 | resolution: "jsonparse@npm:1.3.1" 2212 | checksum: 6514a7be4674ebf407afca0eda3ba284b69b07f9958a8d3113ef1005f7ec610860c312be067e450c569aab8b89635e332cee3696789c750692bb60daba627f4d 2213 | languageName: node 2214 | linkType: hard 2215 | 2216 | "kind-of@npm:^6.0.3": 2217 | version: 6.0.3 2218 | resolution: "kind-of@npm:6.0.3" 2219 | checksum: 3ab01e7b1d440b22fe4c31f23d8d38b4d9b91d9f291df683476576493d5dfd2e03848a8b05813dd0c3f0e835bc63f433007ddeceb71f05cb25c45ae1b19c6d3b 2220 | languageName: node 2221 | linkType: hard 2222 | 2223 | "levn@npm:^0.3.0, levn@npm:~0.3.0": 2224 | version: 0.3.0 2225 | resolution: "levn@npm:0.3.0" 2226 | dependencies: 2227 | prelude-ls: ~1.1.2 2228 | type-check: ~0.3.2 2229 | checksum: 0d084a524231a8246bb10fec48cdbb35282099f6954838604f3c7fc66f2e16fa66fd9cc2f3f20a541a113c4dafdf181e822c887c8a319c9195444e6c64ac395e 2230 | languageName: node 2231 | linkType: hard 2232 | 2233 | "lilconfig@npm:2.0.6": 2234 | version: 2.0.6 2235 | resolution: "lilconfig@npm:2.0.6" 2236 | checksum: 40a3cd72f103b1be5975f2ac1850810b61d4053e20ab09be8d3aeddfe042187e1ba70b4651a7e70f95efa1642e7dc8b2ae395b317b7d7753b241b43cef7c0f7d 2237 | languageName: node 2238 | linkType: hard 2239 | 2240 | "lines-and-columns@npm:^1.1.6": 2241 | version: 1.2.4 2242 | resolution: "lines-and-columns@npm:1.2.4" 2243 | checksum: 0c37f9f7fa212b38912b7145e1cd16a5f3cd34d782441c3e6ca653485d326f58b3caccda66efce1c5812bde4961bbde3374fae4b0d11bf1226152337f3894aa5 2244 | languageName: node 2245 | linkType: hard 2246 | 2247 | "lint-staged@npm:^13.1.0": 2248 | version: 13.1.0 2249 | resolution: "lint-staged@npm:13.1.0" 2250 | dependencies: 2251 | cli-truncate: ^3.1.0 2252 | colorette: ^2.0.19 2253 | commander: ^9.4.1 2254 | debug: ^4.3.4 2255 | execa: ^6.1.0 2256 | lilconfig: 2.0.6 2257 | listr2: ^5.0.5 2258 | micromatch: ^4.0.5 2259 | normalize-path: ^3.0.0 2260 | object-inspect: ^1.12.2 2261 | pidtree: ^0.6.0 2262 | string-argv: ^0.3.1 2263 | yaml: ^2.1.3 2264 | bin: 2265 | lint-staged: bin/lint-staged.js 2266 | checksum: adf20c4ca9285c4a93b06598b970d71b04cfe58a1a4c9006f753b83e02c1c622d1866c32a4f1e7e29a98091c501eac3345f7678af247b4f97d5be88b3d8727c1 2267 | languageName: node 2268 | linkType: hard 2269 | 2270 | "listr2@npm:^5.0.5": 2271 | version: 5.0.6 2272 | resolution: "listr2@npm:5.0.6" 2273 | dependencies: 2274 | cli-truncate: ^2.1.0 2275 | colorette: ^2.0.19 2276 | log-update: ^4.0.0 2277 | p-map: ^4.0.0 2278 | rfdc: ^1.3.0 2279 | rxjs: ^7.5.7 2280 | through: ^2.3.8 2281 | wrap-ansi: ^7.0.0 2282 | peerDependencies: 2283 | enquirer: ">= 2.3.0 < 3" 2284 | peerDependenciesMeta: 2285 | enquirer: 2286 | optional: true 2287 | checksum: 18975d690988aa2cce18fea9bacfc12c2607948ff9f7b7fd5b3e2b64d059b6e1961f8d06b4e1400d4c6bc18af84c7c145c2d22a1d392464fdb197c53b062e3d5 2288 | languageName: node 2289 | linkType: hard 2290 | 2291 | "locate-path@npm:^5.0.0": 2292 | version: 5.0.0 2293 | resolution: "locate-path@npm:5.0.0" 2294 | dependencies: 2295 | p-locate: ^4.1.0 2296 | checksum: 83e51725e67517287d73e1ded92b28602e3ae5580b301fe54bfb76c0c723e3f285b19252e375712316774cf52006cb236aed5704692c32db0d5d089b69696e30 2297 | languageName: node 2298 | linkType: hard 2299 | 2300 | "locate-path@npm:^6.0.0": 2301 | version: 6.0.0 2302 | resolution: "locate-path@npm:6.0.0" 2303 | dependencies: 2304 | p-locate: ^5.0.0 2305 | checksum: 72eb661788a0368c099a184c59d2fee760b3831c9c1c33955e8a19ae4a21b4116e53fa736dc086cdeb9fce9f7cc508f2f92d2d3aae516f133e16a2bb59a39f5a 2306 | languageName: node 2307 | linkType: hard 2308 | 2309 | "lodash.camelcase@npm:^4.3.0": 2310 | version: 4.3.0 2311 | resolution: "lodash.camelcase@npm:4.3.0" 2312 | checksum: cb9227612f71b83e42de93eccf1232feeb25e705bdb19ba26c04f91e885bfd3dd5c517c4a97137658190581d3493ea3973072ca010aab7e301046d90740393d1 2313 | languageName: node 2314 | linkType: hard 2315 | 2316 | "lodash.isfunction@npm:^3.0.9": 2317 | version: 3.0.9 2318 | resolution: "lodash.isfunction@npm:3.0.9" 2319 | checksum: 99e54c34b1e8a9ba75c034deb39cedbd2aca7af685815e67a2a8ec4f73ec9748cda6ebee5a07d7de4b938e90d421fd280e9c385cc190f903ac217ac8aff30314 2320 | languageName: node 2321 | linkType: hard 2322 | 2323 | "lodash.isplainobject@npm:^4.0.6": 2324 | version: 4.0.6 2325 | resolution: "lodash.isplainobject@npm:4.0.6" 2326 | checksum: 29c6351f281e0d9a1d58f1a4c8f4400924b4c79f18dfc4613624d7d54784df07efaff97c1ff2659f3e085ecf4fff493300adc4837553104cef2634110b0d5337 2327 | languageName: node 2328 | linkType: hard 2329 | 2330 | "lodash.kebabcase@npm:^4.1.1": 2331 | version: 4.1.1 2332 | resolution: "lodash.kebabcase@npm:4.1.1" 2333 | checksum: 5a6c59161914e1bae23438a298c7433e83d935e0f59853fa862e691164696bc07f6dfa4c313d499fbf41ba8d53314e9850416502376705a357d24ee6ca33af78 2334 | languageName: node 2335 | linkType: hard 2336 | 2337 | "lodash.map@npm:^4.5.1": 2338 | version: 4.6.0 2339 | resolution: "lodash.map@npm:4.6.0" 2340 | checksum: 7369a41d7d24d15ce3bbd02a7faa3a90f6266c38184e64932571b9b21b758bd10c04ffd117d1859be1a44156f29b94df5045eff172bf8a97fddf68bf1002d12f 2341 | languageName: node 2342 | linkType: hard 2343 | 2344 | "lodash.merge@npm:^4.6.2": 2345 | version: 4.6.2 2346 | resolution: "lodash.merge@npm:4.6.2" 2347 | checksum: ad580b4bdbb7ca1f7abf7e1bce63a9a0b98e370cf40194b03380a46b4ed799c9573029599caebc1b14e3f24b111aef72b96674a56cfa105e0f5ac70546cdc005 2348 | languageName: node 2349 | linkType: hard 2350 | 2351 | "lodash.mergewith@npm:^4.6.2": 2352 | version: 4.6.2 2353 | resolution: "lodash.mergewith@npm:4.6.2" 2354 | checksum: a6db2a9339752411f21b956908c404ec1e088e783a65c8b29e30ae5b3b6384f82517662d6f425cc97c2070b546cc2c7daaa8d33f78db7b6e9be06cd834abdeb8 2355 | languageName: node 2356 | linkType: hard 2357 | 2358 | "lodash.snakecase@npm:^4.1.1": 2359 | version: 4.1.1 2360 | resolution: "lodash.snakecase@npm:4.1.1" 2361 | checksum: 1685ed3e83dda6eae5a4dcaee161a51cd210aabb3e1c09c57150e7dd8feda19e4ca0d27d0631eabe8d0f4eaa51e376da64e8c018ae5415417c5890d42feb72a8 2362 | languageName: node 2363 | linkType: hard 2364 | 2365 | "lodash.startcase@npm:^4.4.0": 2366 | version: 4.4.0 2367 | resolution: "lodash.startcase@npm:4.4.0" 2368 | checksum: c03a4a784aca653845fe09d0ef67c902b6e49288dc45f542a4ab345a9c406a6dc194c774423fa313ee7b06283950301c1221dd2a1d8ecb2dac8dfbb9ed5606b5 2369 | languageName: node 2370 | linkType: hard 2371 | 2372 | "lodash.uniq@npm:^4.5.0": 2373 | version: 4.5.0 2374 | resolution: "lodash.uniq@npm:4.5.0" 2375 | checksum: a4779b57a8d0f3c441af13d9afe7ecff22dd1b8ce1129849f71d9bbc8e8ee4e46dfb4b7c28f7ad3d67481edd6e51126e4e2a6ee276e25906d10f7140187c392d 2376 | languageName: node 2377 | linkType: hard 2378 | 2379 | "lodash.upperfirst@npm:^4.3.1": 2380 | version: 4.3.1 2381 | resolution: "lodash.upperfirst@npm:4.3.1" 2382 | checksum: cadec6955900afe1928cc60cdc4923a79c2ef991e42665419cc81630ed9b4f952a1093b222e0141ab31cbc4dba549f97ec28ff67929d71e01861c97188a5fa83 2383 | languageName: node 2384 | linkType: hard 2385 | 2386 | "lodash@npm:4.17.21, lodash@npm:^4.17.11, lodash@npm:^4.17.12, lodash@npm:^4.17.14, lodash@npm:^4.17.15, lodash@npm:^4.17.19, lodash@npm:^4.17.20, lodash@npm:^4.17.21": 2387 | version: 4.17.21 2388 | resolution: "lodash@npm:4.17.21" 2389 | checksum: eb835a2e51d381e561e508ce932ea50a8e5a68f4ebdd771ea240d3048244a8d13658acbd502cd4829768c56f2e16bdd4340b9ea141297d472517b83868e677f7 2390 | languageName: node 2391 | linkType: hard 2392 | 2393 | "log-symbols@npm:^4.1.0": 2394 | version: 4.1.0 2395 | resolution: "log-symbols@npm:4.1.0" 2396 | dependencies: 2397 | chalk: ^4.1.0 2398 | is-unicode-supported: ^0.1.0 2399 | checksum: fce1497b3135a0198803f9f07464165e9eb83ed02ceb2273930a6f8a508951178d8cf4f0378e9d28300a2ed2bc49050995d2bd5f53ab716bb15ac84d58c6ef74 2400 | languageName: node 2401 | linkType: hard 2402 | 2403 | "log-update@npm:^4.0.0": 2404 | version: 4.0.0 2405 | resolution: "log-update@npm:4.0.0" 2406 | dependencies: 2407 | ansi-escapes: ^4.3.0 2408 | cli-cursor: ^3.1.0 2409 | slice-ansi: ^4.0.0 2410 | wrap-ansi: ^6.2.0 2411 | checksum: ae2f85bbabc1906034154fb7d4c4477c79b3e703d22d78adee8b3862fa913942772e7fa11713e3d96fb46de4e3cabefbf5d0a544344f03b58d3c4bff52aa9eb2 2412 | languageName: node 2413 | linkType: hard 2414 | 2415 | "longest@npm:^2.0.1": 2416 | version: 2.0.1 2417 | resolution: "longest@npm:2.0.1" 2418 | checksum: 9587c153919a883ecbcc33e9439bc2592aa6fdbbd2d343f8ab17d8d3e0373c4e4350e3b428566fd689d704800a23f2b4d145cbdcca4ef3fd35742e5927f919a9 2419 | languageName: node 2420 | linkType: hard 2421 | 2422 | "lru-cache@npm:^6.0.0": 2423 | version: 6.0.0 2424 | resolution: "lru-cache@npm:6.0.0" 2425 | dependencies: 2426 | yallist: ^4.0.0 2427 | checksum: f97f499f898f23e4585742138a22f22526254fdba6d75d41a1c2526b3b6cc5747ef59c5612ba7375f42aca4f8461950e925ba08c991ead0651b4918b7c978297 2428 | languageName: node 2429 | linkType: hard 2430 | 2431 | "make-error@npm:^1.1.1": 2432 | version: 1.3.6 2433 | resolution: "make-error@npm:1.3.6" 2434 | checksum: b86e5e0e25f7f777b77fabd8e2cbf15737972869d852a22b7e73c17623928fccb826d8e46b9951501d3f20e51ad74ba8c59ed584f610526a48f8ccf88aaec402 2435 | languageName: node 2436 | linkType: hard 2437 | 2438 | "map-obj@npm:^1.0.0": 2439 | version: 1.0.1 2440 | resolution: "map-obj@npm:1.0.1" 2441 | checksum: 9949e7baec2a336e63b8d4dc71018c117c3ce6e39d2451ccbfd3b8350c547c4f6af331a4cbe1c83193d7c6b786082b6256bde843db90cb7da2a21e8fcc28afed 2442 | languageName: node 2443 | linkType: hard 2444 | 2445 | "map-obj@npm:^4.0.0": 2446 | version: 4.3.0 2447 | resolution: "map-obj@npm:4.3.0" 2448 | checksum: fbc554934d1a27a1910e842bc87b177b1a556609dd803747c85ece420692380827c6ae94a95cce4407c054fa0964be3bf8226f7f2cb2e9eeee432c7c1985684e 2449 | languageName: node 2450 | linkType: hard 2451 | 2452 | "meow@npm:^8.0.0": 2453 | version: 8.1.2 2454 | resolution: "meow@npm:8.1.2" 2455 | dependencies: 2456 | "@types/minimist": ^1.2.0 2457 | camelcase-keys: ^6.2.2 2458 | decamelize-keys: ^1.1.0 2459 | hard-rejection: ^2.1.0 2460 | minimist-options: 4.1.0 2461 | normalize-package-data: ^3.0.0 2462 | read-pkg-up: ^7.0.1 2463 | redent: ^3.0.0 2464 | trim-newlines: ^3.0.0 2465 | type-fest: ^0.18.0 2466 | yargs-parser: ^20.2.3 2467 | checksum: bc23bf1b4423ef6a821dff9734406bce4b91ea257e7f10a8b7f896f45b59649f07adc0926e2917eacd8cf1df9e4cd89c77623cf63dfd0f8bf54de07a32ee5a85 2468 | languageName: node 2469 | linkType: hard 2470 | 2471 | "merge-stream@npm:^2.0.0": 2472 | version: 2.0.0 2473 | resolution: "merge-stream@npm:2.0.0" 2474 | checksum: 6fa4dcc8d86629705cea944a4b88ef4cb0e07656ebf223fa287443256414283dd25d91c1cd84c77987f2aec5927af1a9db6085757cb43d90eb170ebf4b47f4f4 2475 | languageName: node 2476 | linkType: hard 2477 | 2478 | "merge@npm:^2.1.1": 2479 | version: 2.1.1 2480 | resolution: "merge@npm:2.1.1" 2481 | checksum: 9c36b0e25aa53b3f7305d7cf0f330397f1142cf311802b681e5619f12e986a790019b8246c1c0df21701c8652449f9046b0129551030097ef563d1958c823249 2482 | languageName: node 2483 | linkType: hard 2484 | 2485 | "micromatch@npm:^4.0.2, micromatch@npm:^4.0.5": 2486 | version: 4.0.5 2487 | resolution: "micromatch@npm:4.0.5" 2488 | dependencies: 2489 | braces: ^3.0.2 2490 | picomatch: ^2.3.1 2491 | checksum: 02a17b671c06e8fefeeb6ef996119c1e597c942e632a21ef589154f23898c9c6a9858526246abb14f8bca6e77734aa9dcf65476fca47cedfb80d9577d52843fc 2492 | languageName: node 2493 | linkType: hard 2494 | 2495 | "mimic-fn@npm:^1.0.0": 2496 | version: 1.2.0 2497 | resolution: "mimic-fn@npm:1.2.0" 2498 | checksum: 69c08205156a1f4906d9c46f9b4dc08d18a50176352e77fdeb645cedfe9f20c0b19865d465bd2dec27a5c432347f24dc07fc3695e11159d193f892834233e939 2499 | languageName: node 2500 | linkType: hard 2501 | 2502 | "mimic-fn@npm:^2.1.0": 2503 | version: 2.1.0 2504 | resolution: "mimic-fn@npm:2.1.0" 2505 | checksum: d2421a3444848ce7f84bd49115ddacff29c15745db73f54041edc906c14b131a38d05298dae3081667627a59b2eb1ca4b436ff2e1b80f69679522410418b478a 2506 | languageName: node 2507 | linkType: hard 2508 | 2509 | "mimic-fn@npm:^4.0.0": 2510 | version: 4.0.0 2511 | resolution: "mimic-fn@npm:4.0.0" 2512 | checksum: 995dcece15ee29aa16e188de6633d43a3db4611bcf93620e7e62109ec41c79c0f34277165b8ce5e361205049766e371851264c21ac64ca35499acb5421c2ba56 2513 | languageName: node 2514 | linkType: hard 2515 | 2516 | "min-indent@npm:^1.0.0": 2517 | version: 1.0.1 2518 | resolution: "min-indent@npm:1.0.1" 2519 | checksum: bfc6dd03c5eaf623a4963ebd94d087f6f4bbbfd8c41329a7f09706b0cb66969c4ddd336abeb587bc44bc6f08e13bf90f0b374f9d71f9f01e04adc2cd6f083ef1 2520 | languageName: node 2521 | linkType: hard 2522 | 2523 | "minimatch@npm:^3.0.4, minimatch@npm:^3.1.1": 2524 | version: 3.1.2 2525 | resolution: "minimatch@npm:3.1.2" 2526 | dependencies: 2527 | brace-expansion: ^1.1.7 2528 | checksum: c154e566406683e7bcb746e000b84d74465b3a832c45d59912b9b55cd50dee66e5c4b1e5566dba26154040e51672f9aa450a9aef0c97cfc7336b78b7afb9540a 2529 | languageName: node 2530 | linkType: hard 2531 | 2532 | "minimist-options@npm:4.1.0": 2533 | version: 4.1.0 2534 | resolution: "minimist-options@npm:4.1.0" 2535 | dependencies: 2536 | arrify: ^1.0.1 2537 | is-plain-obj: ^1.1.0 2538 | kind-of: ^6.0.3 2539 | checksum: 8c040b3068811e79de1140ca2b708d3e203c8003eb9a414c1ab3cd467fc5f17c9ca02a5aef23bedc51a7f8bfbe77f87e9a7e31ec81fba304cda675b019496f4e 2540 | languageName: node 2541 | linkType: hard 2542 | 2543 | "minimist@npm:1.2.5": 2544 | version: 1.2.5 2545 | resolution: "minimist@npm:1.2.5" 2546 | checksum: 86706ce5b36c16bfc35c5fe3dbb01d5acdc9a22f2b6cc810b6680656a1d2c0e44a0159c9a3ba51fb072bb5c203e49e10b51dcd0eec39c481f4c42086719bae52 2547 | languageName: node 2548 | linkType: hard 2549 | 2550 | "minimist@npm:1.2.6, minimist@npm:^1.2.6": 2551 | version: 1.2.6 2552 | resolution: "minimist@npm:1.2.6" 2553 | checksum: d15428cd1e11eb14e1233bcfb88ae07ed7a147de251441d61158619dfb32c4d7e9061d09cab4825fdee18ecd6fce323228c8c47b5ba7cd20af378ca4048fb3fb 2554 | languageName: node 2555 | linkType: hard 2556 | 2557 | "mkdirp@npm:^0.5.1": 2558 | version: 0.5.6 2559 | resolution: "mkdirp@npm:0.5.6" 2560 | dependencies: 2561 | minimist: ^1.2.6 2562 | bin: 2563 | mkdirp: bin/cmd.js 2564 | checksum: 0c91b721bb12c3f9af4b77ebf73604baf350e64d80df91754dc509491ae93bf238581e59c7188360cec7cb62fc4100959245a42cfe01834efedc5e9d068376c2 2565 | languageName: node 2566 | linkType: hard 2567 | 2568 | "ms@npm:2.1.2": 2569 | version: 2.1.2 2570 | resolution: "ms@npm:2.1.2" 2571 | checksum: 673cdb2c3133eb050c745908d8ce632ed2c02d85640e2edb3ace856a2266a813b30c613569bf3354fdf4ea7d1a1494add3bfa95e2713baa27d0c2c71fc44f58f 2572 | languageName: node 2573 | linkType: hard 2574 | 2575 | "mute-stream@npm:0.0.7": 2576 | version: 0.0.7 2577 | resolution: "mute-stream@npm:0.0.7" 2578 | checksum: a9d4772c1c84206aa37c218ed4751cd060239bf1d678893124f51e037f6f22f4a159b2918c030236c93252638a74beb29c9b1fd3267c9f24d4b3253cf1eaa86f 2579 | languageName: node 2580 | linkType: hard 2581 | 2582 | "mute-stream@npm:0.0.8": 2583 | version: 0.0.8 2584 | resolution: "mute-stream@npm:0.0.8" 2585 | checksum: ff48d251fc3f827e5b1206cda0ffdaec885e56057ee86a3155e1951bc940fd5f33531774b1cc8414d7668c10a8907f863f6561875ee6e8768931a62121a531a1 2586 | languageName: node 2587 | linkType: hard 2588 | 2589 | "natural-compare@npm:^1.4.0": 2590 | version: 1.4.0 2591 | resolution: "natural-compare@npm:1.4.0" 2592 | checksum: 23ad088b08f898fc9b53011d7bb78ec48e79de7627e01ab5518e806033861bef68d5b0cd0e2205c2f36690ac9571ff6bcb05eb777ced2eeda8d4ac5b44592c3d 2593 | languageName: node 2594 | linkType: hard 2595 | 2596 | "nice-try@npm:^1.0.4": 2597 | version: 1.0.5 2598 | resolution: "nice-try@npm:1.0.5" 2599 | checksum: 0b4af3b5bb5d86c289f7a026303d192a7eb4417231fe47245c460baeabae7277bcd8fd9c728fb6bd62c30b3e15cd6620373e2cf33353b095d8b403d3e8a15aff 2600 | languageName: node 2601 | linkType: hard 2602 | 2603 | "normalize-package-data@npm:^2.5.0": 2604 | version: 2.5.0 2605 | resolution: "normalize-package-data@npm:2.5.0" 2606 | dependencies: 2607 | hosted-git-info: ^2.1.4 2608 | resolve: ^1.10.0 2609 | semver: 2 || 3 || 4 || 5 2610 | validate-npm-package-license: ^3.0.1 2611 | checksum: 7999112efc35a6259bc22db460540cae06564aa65d0271e3bdfa86876d08b0e578b7b5b0028ee61b23f1cae9fc0e7847e4edc0948d3068a39a2a82853efc8499 2612 | languageName: node 2613 | linkType: hard 2614 | 2615 | "normalize-package-data@npm:^3.0.0": 2616 | version: 3.0.3 2617 | resolution: "normalize-package-data@npm:3.0.3" 2618 | dependencies: 2619 | hosted-git-info: ^4.0.1 2620 | is-core-module: ^2.5.0 2621 | semver: ^7.3.4 2622 | validate-npm-package-license: ^3.0.1 2623 | checksum: bbcee00339e7c26fdbc760f9b66d429258e2ceca41a5df41f5df06cc7652de8d82e8679ff188ca095cad8eff2b6118d7d866af2b68400f74602fbcbce39c160a 2624 | languageName: node 2625 | linkType: hard 2626 | 2627 | "normalize-path@npm:^3.0.0": 2628 | version: 3.0.0 2629 | resolution: "normalize-path@npm:3.0.0" 2630 | checksum: 88eeb4da891e10b1318c4b2476b6e2ecbeb5ff97d946815ffea7794c31a89017c70d7f34b3c2ebf23ef4e9fc9fb99f7dffe36da22011b5b5c6ffa34f4873ec20 2631 | languageName: node 2632 | linkType: hard 2633 | 2634 | "npm-run-path@npm:^4.0.1": 2635 | version: 4.0.1 2636 | resolution: "npm-run-path@npm:4.0.1" 2637 | dependencies: 2638 | path-key: ^3.0.0 2639 | checksum: 5374c0cea4b0bbfdfae62da7bbdf1e1558d338335f4cacf2515c282ff358ff27b2ecb91ffa5330a8b14390ac66a1e146e10700440c1ab868208430f56b5f4d23 2640 | languageName: node 2641 | linkType: hard 2642 | 2643 | "npm-run-path@npm:^5.1.0": 2644 | version: 5.1.0 2645 | resolution: "npm-run-path@npm:5.1.0" 2646 | dependencies: 2647 | path-key: ^4.0.0 2648 | checksum: dc184eb5ec239d6a2b990b43236845332ef12f4e0beaa9701de724aa797fe40b6bbd0157fb7639d24d3ab13f5d5cf22d223a19c6300846b8126f335f788bee66 2649 | languageName: node 2650 | linkType: hard 2651 | 2652 | "object-inspect@npm:^1.12.2": 2653 | version: 1.12.2 2654 | resolution: "object-inspect@npm:1.12.2" 2655 | checksum: a534fc1b8534284ed71f25ce3a496013b7ea030f3d1b77118f6b7b1713829262be9e6243acbcb3ef8c626e2b64186112cb7f6db74e37b2789b9c789ca23048b2 2656 | languageName: node 2657 | linkType: hard 2658 | 2659 | "once@npm:^1.3.0": 2660 | version: 1.4.0 2661 | resolution: "once@npm:1.4.0" 2662 | dependencies: 2663 | wrappy: 1 2664 | checksum: cd0a88501333edd640d95f0d2700fbde6bff20b3d4d9bdc521bdd31af0656b5706570d6c6afe532045a20bb8dc0849f8332d6f2a416e0ba6d3d3b98806c7db68 2665 | languageName: node 2666 | linkType: hard 2667 | 2668 | "onetime@npm:^2.0.0": 2669 | version: 2.0.1 2670 | resolution: "onetime@npm:2.0.1" 2671 | dependencies: 2672 | mimic-fn: ^1.0.0 2673 | checksum: bb44015ac7a525d0fb43b029a583d4ad359834632b4424ca209b438aacf6d669dda81b5edfbdb42c22636e607b276ba5589f46694a729e3bc27948ce26f4cc1a 2674 | languageName: node 2675 | linkType: hard 2676 | 2677 | "onetime@npm:^5.1.0, onetime@npm:^5.1.2": 2678 | version: 5.1.2 2679 | resolution: "onetime@npm:5.1.2" 2680 | dependencies: 2681 | mimic-fn: ^2.1.0 2682 | checksum: 2478859ef817fc5d4e9c2f9e5728512ddd1dbc9fb7829ad263765bb6d3b91ce699d6e2332eef6b7dff183c2f490bd3349f1666427eaba4469fba0ac38dfd0d34 2683 | languageName: node 2684 | linkType: hard 2685 | 2686 | "onetime@npm:^6.0.0": 2687 | version: 6.0.0 2688 | resolution: "onetime@npm:6.0.0" 2689 | dependencies: 2690 | mimic-fn: ^4.0.0 2691 | checksum: 0846ce78e440841335d4e9182ef69d5762e9f38aa7499b19f42ea1c4cd40f0b4446094c455c713f9adac3f4ae86f613bb5e30c99e52652764d06a89f709b3788 2692 | languageName: node 2693 | linkType: hard 2694 | 2695 | "optionator@npm:^0.8.2": 2696 | version: 0.8.3 2697 | resolution: "optionator@npm:0.8.3" 2698 | dependencies: 2699 | deep-is: ~0.1.3 2700 | fast-levenshtein: ~2.0.6 2701 | levn: ~0.3.0 2702 | prelude-ls: ~1.1.2 2703 | type-check: ~0.3.2 2704 | word-wrap: ~1.2.3 2705 | checksum: b8695ddf3d593203e25ab0900e265d860038486c943ff8b774f596a310f8ceebdb30c6832407a8198ba3ec9debe1abe1f51d4aad94843612db3b76d690c61d34 2706 | languageName: node 2707 | linkType: hard 2708 | 2709 | "ora@npm:^5.4.1": 2710 | version: 5.4.1 2711 | resolution: "ora@npm:5.4.1" 2712 | dependencies: 2713 | bl: ^4.1.0 2714 | chalk: ^4.1.0 2715 | cli-cursor: ^3.1.0 2716 | cli-spinners: ^2.5.0 2717 | is-interactive: ^1.0.0 2718 | is-unicode-supported: ^0.1.0 2719 | log-symbols: ^4.1.0 2720 | strip-ansi: ^6.0.0 2721 | wcwidth: ^1.0.1 2722 | checksum: 28d476ee6c1049d68368c0dc922e7225e3b5600c3ede88fade8052837f9ed342625fdaa84a6209302587c8ddd9b664f71f0759833cbdb3a4cf81344057e63c63 2723 | languageName: node 2724 | linkType: hard 2725 | 2726 | "os-tmpdir@npm:~1.0.2": 2727 | version: 1.0.2 2728 | resolution: "os-tmpdir@npm:1.0.2" 2729 | checksum: 5666560f7b9f10182548bf7013883265be33620b1c1b4a4d405c25be2636f970c5488ff3e6c48de75b55d02bde037249fe5dbfbb4c0fb7714953d56aed062e6d 2730 | languageName: node 2731 | linkType: hard 2732 | 2733 | "p-limit@npm:^2.2.0": 2734 | version: 2.3.0 2735 | resolution: "p-limit@npm:2.3.0" 2736 | dependencies: 2737 | p-try: ^2.0.0 2738 | checksum: 84ff17f1a38126c3314e91ecfe56aecbf36430940e2873dadaa773ffe072dc23b7af8e46d4b6485d302a11673fe94c6b67ca2cfbb60c989848b02100d0594ac1 2739 | languageName: node 2740 | linkType: hard 2741 | 2742 | "p-limit@npm:^3.0.2": 2743 | version: 3.1.0 2744 | resolution: "p-limit@npm:3.1.0" 2745 | dependencies: 2746 | yocto-queue: ^0.1.0 2747 | checksum: 7c3690c4dbf62ef625671e20b7bdf1cbc9534e83352a2780f165b0d3ceba21907e77ad63401708145ca4e25bfc51636588d89a8c0aeb715e6c37d1c066430360 2748 | languageName: node 2749 | linkType: hard 2750 | 2751 | "p-locate@npm:^4.1.0": 2752 | version: 4.1.0 2753 | resolution: "p-locate@npm:4.1.0" 2754 | dependencies: 2755 | p-limit: ^2.2.0 2756 | checksum: 513bd14a455f5da4ebfcb819ef706c54adb09097703de6aeaa5d26fe5ea16df92b48d1ac45e01e3944ce1e6aa2a66f7f8894742b8c9d6e276e16cd2049a2b870 2757 | languageName: node 2758 | linkType: hard 2759 | 2760 | "p-locate@npm:^5.0.0": 2761 | version: 5.0.0 2762 | resolution: "p-locate@npm:5.0.0" 2763 | dependencies: 2764 | p-limit: ^3.0.2 2765 | checksum: 1623088f36cf1cbca58e9b61c4e62bf0c60a07af5ae1ca99a720837356b5b6c5ba3eb1b2127e47a06865fee59dd0453cad7cc844cda9d5a62ac1a5a51b7c86d3 2766 | languageName: node 2767 | linkType: hard 2768 | 2769 | "p-map@npm:^4.0.0": 2770 | version: 4.0.0 2771 | resolution: "p-map@npm:4.0.0" 2772 | dependencies: 2773 | aggregate-error: ^3.0.0 2774 | checksum: cb0ab21ec0f32ddffd31dfc250e3afa61e103ef43d957cc45497afe37513634589316de4eb88abdfd969fe6410c22c0b93ab24328833b8eb1ccc087fc0442a1c 2775 | languageName: node 2776 | linkType: hard 2777 | 2778 | "p-try@npm:^2.0.0": 2779 | version: 2.2.0 2780 | resolution: "p-try@npm:2.2.0" 2781 | checksum: f8a8e9a7693659383f06aec604ad5ead237c7a261c18048a6e1b5b85a5f8a067e469aa24f5bc009b991ea3b058a87f5065ef4176793a200d4917349881216cae 2782 | languageName: node 2783 | linkType: hard 2784 | 2785 | "parent-module@npm:^1.0.0": 2786 | version: 1.0.1 2787 | resolution: "parent-module@npm:1.0.1" 2788 | dependencies: 2789 | callsites: ^3.0.0 2790 | checksum: 6ba8b255145cae9470cf5551eb74be2d22281587af787a2626683a6c20fbb464978784661478dd2a3f1dad74d1e802d403e1b03c1a31fab310259eec8ac560ff 2791 | languageName: node 2792 | linkType: hard 2793 | 2794 | "parse-json@npm:^4.0.0": 2795 | version: 4.0.0 2796 | resolution: "parse-json@npm:4.0.0" 2797 | dependencies: 2798 | error-ex: ^1.3.1 2799 | json-parse-better-errors: ^1.0.1 2800 | checksum: 0fe227d410a61090c247e34fa210552b834613c006c2c64d9a05cfe9e89cf8b4246d1246b1a99524b53b313e9ac024438d0680f67e33eaed7e6f38db64cfe7b5 2801 | languageName: node 2802 | linkType: hard 2803 | 2804 | "parse-json@npm:^5.0.0": 2805 | version: 5.2.0 2806 | resolution: "parse-json@npm:5.2.0" 2807 | dependencies: 2808 | "@babel/code-frame": ^7.0.0 2809 | error-ex: ^1.3.1 2810 | json-parse-even-better-errors: ^2.3.0 2811 | lines-and-columns: ^1.1.6 2812 | checksum: 62085b17d64da57f40f6afc2ac1f4d95def18c4323577e1eced571db75d9ab59b297d1d10582920f84b15985cbfc6b6d450ccbf317644cfa176f3ed982ad87e2 2813 | languageName: node 2814 | linkType: hard 2815 | 2816 | "parse-passwd@npm:^1.0.0": 2817 | version: 1.0.0 2818 | resolution: "parse-passwd@npm:1.0.0" 2819 | checksum: 4e55e0231d58f828a41d0f1da2bf2ff7bcef8f4cb6146e69d16ce499190de58b06199e6bd9b17fbf0d4d8aef9052099cdf8c4f13a6294b1a522e8e958073066e 2820 | languageName: node 2821 | linkType: hard 2822 | 2823 | "path-exists@npm:^4.0.0": 2824 | version: 4.0.0 2825 | resolution: "path-exists@npm:4.0.0" 2826 | checksum: 505807199dfb7c50737b057dd8d351b82c033029ab94cb10a657609e00c1bc53b951cfdbccab8de04c5584d5eff31128ce6afd3db79281874a5ef2adbba55ed1 2827 | languageName: node 2828 | linkType: hard 2829 | 2830 | "path-is-absolute@npm:^1.0.0": 2831 | version: 1.0.1 2832 | resolution: "path-is-absolute@npm:1.0.1" 2833 | checksum: 060840f92cf8effa293bcc1bea81281bd7d363731d214cbe5c227df207c34cd727430f70c6037b5159c8a870b9157cba65e775446b0ab06fd5ecc7e54615a3b8 2834 | languageName: node 2835 | linkType: hard 2836 | 2837 | "path-is-inside@npm:^1.0.2": 2838 | version: 1.0.2 2839 | resolution: "path-is-inside@npm:1.0.2" 2840 | checksum: 0b5b6c92d3018b82afb1f74fe6de6338c4c654de4a96123cb343f2b747d5606590ac0c890f956ed38220a4ab59baddfd7b713d78a62d240b20b14ab801fa02cb 2841 | languageName: node 2842 | linkType: hard 2843 | 2844 | "path-key@npm:^2.0.1": 2845 | version: 2.0.1 2846 | resolution: "path-key@npm:2.0.1" 2847 | checksum: f7ab0ad42fe3fb8c7f11d0c4f849871e28fbd8e1add65c370e422512fc5887097b9cf34d09c1747d45c942a8c1e26468d6356e2df3f740bf177ab8ca7301ebfd 2848 | languageName: node 2849 | linkType: hard 2850 | 2851 | "path-key@npm:^3.0.0, path-key@npm:^3.1.0": 2852 | version: 3.1.1 2853 | resolution: "path-key@npm:3.1.1" 2854 | checksum: 55cd7a9dd4b343412a8386a743f9c746ef196e57c823d90ca3ab917f90ab9f13dd0ded27252ba49dbdfcab2b091d998bc446f6220cd3cea65db407502a740020 2855 | languageName: node 2856 | linkType: hard 2857 | 2858 | "path-key@npm:^4.0.0": 2859 | version: 4.0.0 2860 | resolution: "path-key@npm:4.0.0" 2861 | checksum: 8e6c314ae6d16b83e93032c61020129f6f4484590a777eed709c4a01b50e498822b00f76ceaf94bc64dbd90b327df56ceadce27da3d83393790f1219e07721d7 2862 | languageName: node 2863 | linkType: hard 2864 | 2865 | "path-parse@npm:^1.0.7": 2866 | version: 1.0.7 2867 | resolution: "path-parse@npm:1.0.7" 2868 | checksum: 49abf3d81115642938a8700ec580da6e830dde670be21893c62f4e10bd7dd4c3742ddc603fe24f898cba7eb0c6bc1777f8d9ac14185d34540c6d4d80cd9cae8a 2869 | languageName: node 2870 | linkType: hard 2871 | 2872 | "path-type@npm:^4.0.0": 2873 | version: 4.0.0 2874 | resolution: "path-type@npm:4.0.0" 2875 | checksum: 5b1e2daa247062061325b8fdbfd1fb56dde0a448fb1455453276ea18c60685bdad23a445dc148cf87bc216be1573357509b7d4060494a6fd768c7efad833ee45 2876 | languageName: node 2877 | linkType: hard 2878 | 2879 | "picomatch@npm:^2.3.1": 2880 | version: 2.3.1 2881 | resolution: "picomatch@npm:2.3.1" 2882 | checksum: 050c865ce81119c4822c45d3c84f1ced46f93a0126febae20737bd05ca20589c564d6e9226977df859ed5e03dc73f02584a2b0faad36e896936238238b0446cf 2883 | languageName: node 2884 | linkType: hard 2885 | 2886 | "pidtree@npm:^0.6.0": 2887 | version: 0.6.0 2888 | resolution: "pidtree@npm:0.6.0" 2889 | bin: 2890 | pidtree: bin/pidtree.js 2891 | checksum: 8fbc073ede9209dd15e80d616e65eb674986c93be49f42d9ddde8dbbd141bb53d628a7ca4e58ab5c370bb00383f67d75df59a9a226dede8fa801267a7030c27a 2892 | languageName: node 2893 | linkType: hard 2894 | 2895 | "prelude-ls@npm:~1.1.2": 2896 | version: 1.1.2 2897 | resolution: "prelude-ls@npm:1.1.2" 2898 | checksum: c4867c87488e4a0c233e158e4d0d5565b609b105d75e4c05dc760840475f06b731332eb93cc8c9cecb840aa8ec323ca3c9a56ad7820ad2e63f0261dadcb154e4 2899 | languageName: node 2900 | linkType: hard 2901 | 2902 | "prettier-linter-helpers@npm:^1.0.0": 2903 | version: 1.0.0 2904 | resolution: "prettier-linter-helpers@npm:1.0.0" 2905 | dependencies: 2906 | fast-diff: ^1.1.2 2907 | checksum: 00ce8011cf6430158d27f9c92cfea0a7699405633f7f1d4a45f07e21bf78e99895911cbcdc3853db3a824201a7c745bd49bfea8abd5fb9883e765a90f74f8392 2908 | languageName: node 2909 | linkType: hard 2910 | 2911 | "prettier-plugin-solidity@npm:^1.1.0": 2912 | version: 1.1.0 2913 | resolution: "prettier-plugin-solidity@npm:1.1.0" 2914 | dependencies: 2915 | "@solidity-parser/parser": ^0.14.5 2916 | emoji-regex: ^10.2.1 2917 | escape-string-regexp: ^4.0.0 2918 | semver: ^7.3.8 2919 | solidity-comments-extractor: ^0.0.7 2920 | string-width: ^4.2.3 2921 | peerDependencies: 2922 | prettier: ^2.3.0 2923 | checksum: 85ac145e7deffe9749e05270e0271d7028fd36dd04c255d7709182845e2a7dfe54ac5bc90beea18c1879c2c30c1a01a1df0e63040a3a548cef1549a8339c841e 2924 | languageName: node 2925 | linkType: hard 2926 | 2927 | "prettier@npm:^1.14.3": 2928 | version: 1.19.1 2929 | resolution: "prettier@npm:1.19.1" 2930 | bin: 2931 | prettier: ./bin-prettier.js 2932 | checksum: bc78219e0f8173a808f4c6c8e0a137dd8ebd4fbe013e63fe1a37a82b48612f17b8ae8e18a992adf802ee2cf7428f14f084e7c2846ca5759cf4013c6e54810e1f 2933 | languageName: node 2934 | linkType: hard 2935 | 2936 | "prettier@npm:^2.8.1": 2937 | version: 2.8.1 2938 | resolution: "prettier@npm:2.8.1" 2939 | bin: 2940 | prettier: bin-prettier.js 2941 | checksum: 4f21a0f1269f76fb36f54e9a8a1ea4c11e27478958bf860661fb4b6d7ac69aac1581f8724fa98ea3585e56d42a2ea317a17ff6e3324f40cb11ff9e20b73785cc 2942 | languageName: node 2943 | linkType: hard 2944 | 2945 | "progress@npm:^2.0.0": 2946 | version: 2.0.3 2947 | resolution: "progress@npm:2.0.3" 2948 | checksum: f67403fe7b34912148d9252cb7481266a354bd99ce82c835f79070643bb3c6583d10dbcfda4d41e04bbc1d8437e9af0fb1e1f2135727878f5308682a579429b7 2949 | languageName: node 2950 | linkType: hard 2951 | 2952 | "punycode@npm:^2.1.0": 2953 | version: 2.1.1 2954 | resolution: "punycode@npm:2.1.1" 2955 | checksum: 823bf443c6dd14f669984dea25757b37993f67e8d94698996064035edd43bed8a5a17a9f12e439c2b35df1078c6bec05a6c86e336209eb1061e8025c481168e8 2956 | languageName: node 2957 | linkType: hard 2958 | 2959 | "q@npm:^1.5.1": 2960 | version: 1.5.1 2961 | resolution: "q@npm:1.5.1" 2962 | checksum: 147baa93c805bc1200ed698bdf9c72e9e42c05f96d007e33a558b5fdfd63e5ea130e99313f28efc1783e90e6bdb4e48b67a36fcc026b7b09202437ae88a1fb12 2963 | languageName: node 2964 | linkType: hard 2965 | 2966 | "quick-lru@npm:^4.0.1": 2967 | version: 4.0.1 2968 | resolution: "quick-lru@npm:4.0.1" 2969 | checksum: bea46e1abfaa07023e047d3cf1716a06172c4947886c053ede5c50321893711577cb6119360f810cc3ffcd70c4d7db4069c3cee876b358ceff8596e062bd1154 2970 | languageName: node 2971 | linkType: hard 2972 | 2973 | "read-pkg-up@npm:^7.0.1": 2974 | version: 7.0.1 2975 | resolution: "read-pkg-up@npm:7.0.1" 2976 | dependencies: 2977 | find-up: ^4.1.0 2978 | read-pkg: ^5.2.0 2979 | type-fest: ^0.8.1 2980 | checksum: e4e93ce70e5905b490ca8f883eb9e48b5d3cebc6cd4527c25a0d8f3ae2903bd4121c5ab9c5a3e217ada0141098eeb661313c86fa008524b089b8ed0b7f165e44 2981 | languageName: node 2982 | linkType: hard 2983 | 2984 | "read-pkg@npm:^5.2.0": 2985 | version: 5.2.0 2986 | resolution: "read-pkg@npm:5.2.0" 2987 | dependencies: 2988 | "@types/normalize-package-data": ^2.4.0 2989 | normalize-package-data: ^2.5.0 2990 | parse-json: ^5.0.0 2991 | type-fest: ^0.6.0 2992 | checksum: eb696e60528b29aebe10e499ba93f44991908c57d70f2d26f369e46b8b9afc208ef11b4ba64f67630f31df8b6872129e0a8933c8c53b7b4daf0eace536901222 2993 | languageName: node 2994 | linkType: hard 2995 | 2996 | "readable-stream@npm:3, readable-stream@npm:^3.0.0, readable-stream@npm:^3.4.0": 2997 | version: 3.6.0 2998 | resolution: "readable-stream@npm:3.6.0" 2999 | dependencies: 3000 | inherits: ^2.0.3 3001 | string_decoder: ^1.1.1 3002 | util-deprecate: ^1.0.1 3003 | checksum: d4ea81502d3799439bb955a3a5d1d808592cf3133350ed352aeaa499647858b27b1c4013984900238b0873ec8d0d8defce72469fb7a83e61d53f5ad61cb80dc8 3004 | languageName: node 3005 | linkType: hard 3006 | 3007 | "redent@npm:^3.0.0": 3008 | version: 3.0.0 3009 | resolution: "redent@npm:3.0.0" 3010 | dependencies: 3011 | indent-string: ^4.0.0 3012 | strip-indent: ^3.0.0 3013 | checksum: fa1ef20404a2d399235e83cc80bd55a956642e37dd197b4b612ba7327bf87fa32745aeb4a1634b2bab25467164ab4ed9c15be2c307923dd08b0fe7c52431ae6b 3014 | languageName: node 3015 | linkType: hard 3016 | 3017 | "regexpp@npm:^2.0.1": 3018 | version: 2.0.1 3019 | resolution: "regexpp@npm:2.0.1" 3020 | checksum: 1f41cf80ac08514c6665812e3dcc0673569431d3285db27053f8b237a758992fb55d6ddfbc264db399ff4f7a7db432900ca3a029daa28a75e0436231872091b1 3021 | languageName: node 3022 | linkType: hard 3023 | 3024 | "require-directory@npm:^2.1.1": 3025 | version: 2.1.1 3026 | resolution: "require-directory@npm:2.1.1" 3027 | checksum: fb47e70bf0001fdeabdc0429d431863e9475e7e43ea5f94ad86503d918423c1543361cc5166d713eaa7029dd7a3d34775af04764bebff99ef413111a5af18c80 3028 | languageName: node 3029 | linkType: hard 3030 | 3031 | "require-from-string@npm:^2.0.2": 3032 | version: 2.0.2 3033 | resolution: "require-from-string@npm:2.0.2" 3034 | checksum: a03ef6895445f33a4015300c426699bc66b2b044ba7b670aa238610381b56d3f07c686251740d575e22f4c87531ba662d06937508f0f3c0f1ddc04db3130560b 3035 | languageName: node 3036 | linkType: hard 3037 | 3038 | "resolve-dir@npm:^1.0.0, resolve-dir@npm:^1.0.1": 3039 | version: 1.0.1 3040 | resolution: "resolve-dir@npm:1.0.1" 3041 | dependencies: 3042 | expand-tilde: ^2.0.0 3043 | global-modules: ^1.0.0 3044 | checksum: ef736b8ed60d6645c3b573da17d329bfb50ec4e1d6c5ffd6df49e3497acef9226f9810ea6823b8ece1560e01dcb13f77a9f6180d4f242d00cc9a8f4de909c65c 3045 | languageName: node 3046 | linkType: hard 3047 | 3048 | "resolve-from@npm:5.0.0, resolve-from@npm:^5.0.0": 3049 | version: 5.0.0 3050 | resolution: "resolve-from@npm:5.0.0" 3051 | checksum: 4ceeb9113e1b1372d0cd969f3468fa042daa1dd9527b1b6bb88acb6ab55d8b9cd65dbf18819f9f9ddf0db804990901dcdaade80a215e7b2c23daae38e64f5bdf 3052 | languageName: node 3053 | linkType: hard 3054 | 3055 | "resolve-from@npm:^3.0.0": 3056 | version: 3.0.0 3057 | resolution: "resolve-from@npm:3.0.0" 3058 | checksum: fff9819254d2d62b57f74e5c2ca9c0bdd425ca47287c4d801bc15f947533148d858229ded7793b0f59e61e49e782fffd6722048add12996e1bd4333c29669062 3059 | languageName: node 3060 | linkType: hard 3061 | 3062 | "resolve-from@npm:^4.0.0": 3063 | version: 4.0.0 3064 | resolution: "resolve-from@npm:4.0.0" 3065 | checksum: f4ba0b8494846a5066328ad33ef8ac173801a51739eb4d63408c847da9a2e1c1de1e6cbbf72699211f3d13f8fc1325648b169bd15eb7da35688e30a5fb0e4a7f 3066 | languageName: node 3067 | linkType: hard 3068 | 3069 | "resolve-global@npm:1.0.0, resolve-global@npm:^1.0.0": 3070 | version: 1.0.0 3071 | resolution: "resolve-global@npm:1.0.0" 3072 | dependencies: 3073 | global-dirs: ^0.1.1 3074 | checksum: c4e11d33e84bde7516b824503ffbe4b6cce863d5ce485680fd3db997b7c64da1df98321b1fd0703b58be8bc9bc83bc96bd83043f96194386b45eb47229efb6b6 3075 | languageName: node 3076 | linkType: hard 3077 | 3078 | "resolve@npm:^1.10.0": 3079 | version: 1.22.1 3080 | resolution: "resolve@npm:1.22.1" 3081 | dependencies: 3082 | is-core-module: ^2.9.0 3083 | path-parse: ^1.0.7 3084 | supports-preserve-symlinks-flag: ^1.0.0 3085 | bin: 3086 | resolve: bin/resolve 3087 | checksum: 07af5fc1e81aa1d866cbc9e9460fbb67318a10fa3c4deadc35c3ad8a898ee9a71a86a65e4755ac3195e0ea0cfbe201eb323ebe655ce90526fd61917313a34e4e 3088 | languageName: node 3089 | linkType: hard 3090 | 3091 | "resolve@patch:resolve@^1.10.0#~builtin": 3092 | version: 1.22.1 3093 | resolution: "resolve@patch:resolve@npm%3A1.22.1#~builtin::version=1.22.1&hash=07638b" 3094 | dependencies: 3095 | is-core-module: ^2.9.0 3096 | path-parse: ^1.0.7 3097 | supports-preserve-symlinks-flag: ^1.0.0 3098 | bin: 3099 | resolve: bin/resolve 3100 | checksum: 5656f4d0bedcf8eb52685c1abdf8fbe73a1603bb1160a24d716e27a57f6cecbe2432ff9c89c2bd57542c3a7b9d14b1882b73bfe2e9d7849c9a4c0b8b39f02b8b 3101 | languageName: node 3102 | linkType: hard 3103 | 3104 | "restore-cursor@npm:^2.0.0": 3105 | version: 2.0.0 3106 | resolution: "restore-cursor@npm:2.0.0" 3107 | dependencies: 3108 | onetime: ^2.0.0 3109 | signal-exit: ^3.0.2 3110 | checksum: 482e13d02d834b6e5e3aa90304a8b5e840775d6f06916cc92a50038adf9f098dcc72405b567da8a37e137ae40ad3e31896fa3136ae62f7a426c2fbf53d036536 3111 | languageName: node 3112 | linkType: hard 3113 | 3114 | "restore-cursor@npm:^3.1.0": 3115 | version: 3.1.0 3116 | resolution: "restore-cursor@npm:3.1.0" 3117 | dependencies: 3118 | onetime: ^5.1.0 3119 | signal-exit: ^3.0.2 3120 | checksum: f877dd8741796b909f2a82454ec111afb84eb45890eb49ac947d87991379406b3b83ff9673a46012fca0d7844bb989f45cc5b788254cf1a39b6b5a9659de0630 3121 | languageName: node 3122 | linkType: hard 3123 | 3124 | "rfdc@npm:^1.3.0": 3125 | version: 1.3.0 3126 | resolution: "rfdc@npm:1.3.0" 3127 | checksum: fb2ba8512e43519983b4c61bd3fa77c0f410eff6bae68b08614437bc3f35f91362215f7b4a73cbda6f67330b5746ce07db5dd9850ad3edc91271ad6deea0df32 3128 | languageName: node 3129 | linkType: hard 3130 | 3131 | "rimraf@npm:2.6.3": 3132 | version: 2.6.3 3133 | resolution: "rimraf@npm:2.6.3" 3134 | dependencies: 3135 | glob: ^7.1.3 3136 | bin: 3137 | rimraf: ./bin.js 3138 | checksum: 3ea587b981a19016297edb96d1ffe48af7e6af69660e3b371dbfc73722a73a0b0e9be5c88089fbeeb866c389c1098e07f64929c7414290504b855f54f901ab10 3139 | languageName: node 3140 | linkType: hard 3141 | 3142 | "rimraf@npm:^3.0.2": 3143 | version: 3.0.2 3144 | resolution: "rimraf@npm:3.0.2" 3145 | dependencies: 3146 | glob: ^7.1.3 3147 | bin: 3148 | rimraf: bin.js 3149 | checksum: 87f4164e396f0171b0a3386cc1877a817f572148ee13a7e113b238e48e8a9f2f31d009a92ec38a591ff1567d9662c6b67fd8818a2dbbaed74bc26a87a2a4a9a0 3150 | languageName: node 3151 | linkType: hard 3152 | 3153 | "run-async@npm:^2.2.0, run-async@npm:^2.4.0": 3154 | version: 2.4.1 3155 | resolution: "run-async@npm:2.4.1" 3156 | checksum: a2c88aa15df176f091a2878eb840e68d0bdee319d8d97bbb89112223259cebecb94bc0defd735662b83c2f7a30bed8cddb7d1674eb48ae7322dc602b22d03797 3157 | languageName: node 3158 | linkType: hard 3159 | 3160 | "rxjs@npm:^6.4.0": 3161 | version: 6.6.7 3162 | resolution: "rxjs@npm:6.6.7" 3163 | dependencies: 3164 | tslib: ^1.9.0 3165 | checksum: bc334edef1bb8bbf56590b0b25734ba0deaf8825b703256a93714308ea36dff8a11d25533671adf8e104e5e8f256aa6fdfe39b2e248cdbd7a5f90c260acbbd1b 3166 | languageName: node 3167 | linkType: hard 3168 | 3169 | "rxjs@npm:^7.5.5": 3170 | version: 7.5.5 3171 | resolution: "rxjs@npm:7.5.5" 3172 | dependencies: 3173 | tslib: ^2.1.0 3174 | checksum: e034f60805210cce756dd2f49664a8108780b117cf5d0e2281506e9e6387f7b4f1532d974a8c8b09314fa7a16dd2f6cff3462072a5789672b5dcb45c4173f3c6 3175 | languageName: node 3176 | linkType: hard 3177 | 3178 | "rxjs@npm:^7.5.7": 3179 | version: 7.8.0 3180 | resolution: "rxjs@npm:7.8.0" 3181 | dependencies: 3182 | tslib: ^2.1.0 3183 | checksum: 61b4d4fd323c1043d8d6ceb91f24183b28bcf5def4f01ca111511d5c6b66755bc5578587fe714ef5d67cf4c9f2e26f4490d4e1d8cabf9bd5967687835e9866a2 3184 | languageName: node 3185 | linkType: hard 3186 | 3187 | "safe-buffer@npm:~5.2.0": 3188 | version: 5.2.1 3189 | resolution: "safe-buffer@npm:5.2.1" 3190 | checksum: b99c4b41fdd67a6aaf280fcd05e9ffb0813654894223afb78a31f14a19ad220bba8aba1cb14eddce1fcfb037155fe6de4e861784eb434f7d11ed58d1e70dd491 3191 | languageName: node 3192 | linkType: hard 3193 | 3194 | "safer-buffer@npm:>= 2.1.2 < 3": 3195 | version: 2.1.2 3196 | resolution: "safer-buffer@npm:2.1.2" 3197 | checksum: cab8f25ae6f1434abee8d80023d7e72b598cf1327164ddab31003c51215526801e40b66c5e65d658a0af1e9d6478cadcb4c745f4bd6751f97d8644786c0978b0 3198 | languageName: node 3199 | linkType: hard 3200 | 3201 | "semver@npm:2 || 3 || 4 || 5, semver@npm:^5.5.0, semver@npm:^5.5.1": 3202 | version: 5.7.1 3203 | resolution: "semver@npm:5.7.1" 3204 | bin: 3205 | semver: ./bin/semver 3206 | checksum: 57fd0acfd0bac382ee87cd52cd0aaa5af086a7dc8d60379dfe65fea491fb2489b6016400813930ecd61fd0952dae75c115287a1b16c234b1550887117744dfaf 3207 | languageName: node 3208 | linkType: hard 3209 | 3210 | "semver@npm:7.3.7, semver@npm:^7.3.4": 3211 | version: 7.3.7 3212 | resolution: "semver@npm:7.3.7" 3213 | dependencies: 3214 | lru-cache: ^6.0.0 3215 | bin: 3216 | semver: bin/semver.js 3217 | checksum: 2fa3e877568cd6ce769c75c211beaed1f9fce80b28338cadd9d0b6c40f2e2862bafd62c19a6cff42f3d54292b7c623277bcab8816a2b5521cf15210d43e75232 3218 | languageName: node 3219 | linkType: hard 3220 | 3221 | "semver@npm:^6.3.0": 3222 | version: 6.3.0 3223 | resolution: "semver@npm:6.3.0" 3224 | bin: 3225 | semver: ./bin/semver.js 3226 | checksum: 1b26ecf6db9e8292dd90df4e781d91875c0dcc1b1909e70f5d12959a23c7eebb8f01ea581c00783bbee72ceeaad9505797c381756326073850dc36ed284b21b9 3227 | languageName: node 3228 | linkType: hard 3229 | 3230 | "semver@npm:^7.3.8": 3231 | version: 7.3.8 3232 | resolution: "semver@npm:7.3.8" 3233 | dependencies: 3234 | lru-cache: ^6.0.0 3235 | bin: 3236 | semver: bin/semver.js 3237 | checksum: ba9c7cbbf2b7884696523450a61fee1a09930d888b7a8d7579025ad93d459b2d1949ee5bbfeb188b2be5f4ac163544c5e98491ad6152df34154feebc2cc337c1 3238 | languageName: node 3239 | linkType: hard 3240 | 3241 | "shebang-command@npm:^1.2.0": 3242 | version: 1.2.0 3243 | resolution: "shebang-command@npm:1.2.0" 3244 | dependencies: 3245 | shebang-regex: ^1.0.0 3246 | checksum: 9eed1750301e622961ba5d588af2212505e96770ec376a37ab678f965795e995ade7ed44910f5d3d3cb5e10165a1847f52d3348c64e146b8be922f7707958908 3247 | languageName: node 3248 | linkType: hard 3249 | 3250 | "shebang-command@npm:^2.0.0": 3251 | version: 2.0.0 3252 | resolution: "shebang-command@npm:2.0.0" 3253 | dependencies: 3254 | shebang-regex: ^3.0.0 3255 | checksum: 6b52fe87271c12968f6a054e60f6bde5f0f3d2db483a1e5c3e12d657c488a15474121a1d55cd958f6df026a54374ec38a4a963988c213b7570e1d51575cea7fa 3256 | languageName: node 3257 | linkType: hard 3258 | 3259 | "shebang-regex@npm:^1.0.0": 3260 | version: 1.0.0 3261 | resolution: "shebang-regex@npm:1.0.0" 3262 | checksum: 404c5a752cd40f94591dfd9346da40a735a05139dac890ffc229afba610854d8799aaa52f87f7e0c94c5007f2c6af55bdcaeb584b56691926c5eaf41dc8f1372 3263 | languageName: node 3264 | linkType: hard 3265 | 3266 | "shebang-regex@npm:^3.0.0": 3267 | version: 3.0.0 3268 | resolution: "shebang-regex@npm:3.0.0" 3269 | checksum: 1a2bcae50de99034fcd92ad4212d8e01eedf52c7ec7830eedcf886622804fe36884278f2be8be0ea5fde3fd1c23911643a4e0f726c8685b61871c8908af01222 3270 | languageName: node 3271 | linkType: hard 3272 | 3273 | "signal-exit@npm:^3.0.2, signal-exit@npm:^3.0.3, signal-exit@npm:^3.0.7": 3274 | version: 3.0.7 3275 | resolution: "signal-exit@npm:3.0.7" 3276 | checksum: a2f098f247adc367dffc27845853e9959b9e88b01cb301658cfe4194352d8d2bb32e18467c786a7fe15f1d44b233ea35633d076d5e737870b7139949d1ab6318 3277 | languageName: node 3278 | linkType: hard 3279 | 3280 | "slice-ansi@npm:^2.1.0": 3281 | version: 2.1.0 3282 | resolution: "slice-ansi@npm:2.1.0" 3283 | dependencies: 3284 | ansi-styles: ^3.2.0 3285 | astral-regex: ^1.0.0 3286 | is-fullwidth-code-point: ^2.0.0 3287 | checksum: 4e82995aa59cef7eb03ef232d73c2239a15efa0ace87a01f3012ebb942e963fbb05d448ce7391efcd52ab9c32724164aba2086f5143e0445c969221dde3b6b1e 3288 | languageName: node 3289 | linkType: hard 3290 | 3291 | "slice-ansi@npm:^3.0.0": 3292 | version: 3.0.0 3293 | resolution: "slice-ansi@npm:3.0.0" 3294 | dependencies: 3295 | ansi-styles: ^4.0.0 3296 | astral-regex: ^2.0.0 3297 | is-fullwidth-code-point: ^3.0.0 3298 | checksum: 5ec6d022d12e016347e9e3e98a7eb2a592213a43a65f1b61b74d2c78288da0aded781f665807a9f3876b9daa9ad94f64f77d7633a0458876c3a4fdc4eb223f24 3299 | languageName: node 3300 | linkType: hard 3301 | 3302 | "slice-ansi@npm:^4.0.0": 3303 | version: 4.0.0 3304 | resolution: "slice-ansi@npm:4.0.0" 3305 | dependencies: 3306 | ansi-styles: ^4.0.0 3307 | astral-regex: ^2.0.0 3308 | is-fullwidth-code-point: ^3.0.0 3309 | checksum: 4a82d7f085b0e1b070e004941ada3c40d3818563ac44766cca4ceadd2080427d337554f9f99a13aaeb3b4a94d9964d9466c807b3d7b7541d1ec37ee32d308756 3310 | languageName: node 3311 | linkType: hard 3312 | 3313 | "slice-ansi@npm:^5.0.0": 3314 | version: 5.0.0 3315 | resolution: "slice-ansi@npm:5.0.0" 3316 | dependencies: 3317 | ansi-styles: ^6.0.0 3318 | is-fullwidth-code-point: ^4.0.0 3319 | checksum: 7e600a2a55e333a21ef5214b987c8358fe28bfb03c2867ff2cbf919d62143d1812ac27b4297a077fdaf27a03da3678e49551c93e35f9498a3d90221908a1180e 3320 | languageName: node 3321 | linkType: hard 3322 | 3323 | "solhint-plugin-prettier@npm:^0.0.5": 3324 | version: 0.0.5 3325 | resolution: "solhint-plugin-prettier@npm:0.0.5" 3326 | dependencies: 3327 | prettier-linter-helpers: ^1.0.0 3328 | peerDependencies: 3329 | prettier: ^1.15.0 || ^2.0.0 3330 | prettier-plugin-solidity: ^1.0.0-alpha.14 3331 | checksum: ca721e327daf49a4d9ef0ee5c9622482a8c5563d600eedfd3856c69ce67e416dd77da5166a033e2e641c9cdd7a0f2cbc7913b0eb1712081b3c7e8c633eef82a5 3332 | languageName: node 3333 | linkType: hard 3334 | 3335 | "solhint@npm:^3.3.7": 3336 | version: 3.3.7 3337 | resolution: "solhint@npm:3.3.7" 3338 | dependencies: 3339 | "@solidity-parser/parser": ^0.14.1 3340 | ajv: ^6.6.1 3341 | antlr4: 4.7.1 3342 | ast-parents: 0.0.1 3343 | chalk: ^2.4.2 3344 | commander: 2.18.0 3345 | cosmiconfig: ^5.0.7 3346 | eslint: ^5.6.0 3347 | fast-diff: ^1.1.2 3348 | glob: ^7.1.3 3349 | ignore: ^4.0.6 3350 | js-yaml: ^3.12.0 3351 | lodash: ^4.17.11 3352 | prettier: ^1.14.3 3353 | semver: ^6.3.0 3354 | dependenciesMeta: 3355 | prettier: 3356 | optional: true 3357 | bin: 3358 | solhint: solhint.js 3359 | checksum: 140a4660b691ea78aa7de19aca2123991fb4f9bc7be574e1573ae428b356e12919805df56c2892ddbdd031a4a4db477a81425ad85aac6672f3fb73f4887c2abb 3360 | languageName: node 3361 | linkType: hard 3362 | 3363 | "solidity-comments-extractor@npm:^0.0.7": 3364 | version: 0.0.7 3365 | resolution: "solidity-comments-extractor@npm:0.0.7" 3366 | checksum: a5cedf2310709969bc1783a6c336171478536f2f0ea96ad88437e0ef1e8844c0b37dd75591b0a824ec9c30640ea7e31b5f03128e871e6235bef3426617ce96c4 3367 | languageName: node 3368 | linkType: hard 3369 | 3370 | "source-map-support@npm:^0.5.16": 3371 | version: 0.5.21 3372 | resolution: "source-map-support@npm:0.5.21" 3373 | dependencies: 3374 | buffer-from: ^1.0.0 3375 | source-map: ^0.6.0 3376 | checksum: 43e98d700d79af1d36f859bdb7318e601dfc918c7ba2e98456118ebc4c4872b327773e5a1df09b0524e9e5063bb18f0934538eace60cca2710d1fa687645d137 3377 | languageName: node 3378 | linkType: hard 3379 | 3380 | "source-map@npm:^0.6.0": 3381 | version: 0.6.1 3382 | resolution: "source-map@npm:0.6.1" 3383 | checksum: 59ce8640cf3f3124f64ac289012c2b8bd377c238e316fb323ea22fbfe83da07d81e000071d7242cad7a23cd91c7de98e4df8830ec3f133cb6133a5f6e9f67bc2 3384 | languageName: node 3385 | linkType: hard 3386 | 3387 | "spdx-correct@npm:^3.0.0": 3388 | version: 3.1.1 3389 | resolution: "spdx-correct@npm:3.1.1" 3390 | dependencies: 3391 | spdx-expression-parse: ^3.0.0 3392 | spdx-license-ids: ^3.0.0 3393 | checksum: 77ce438344a34f9930feffa61be0eddcda5b55fc592906ef75621d4b52c07400a97084d8701557b13f7d2aae0cb64f808431f469e566ef3fe0a3a131dcb775a6 3394 | languageName: node 3395 | linkType: hard 3396 | 3397 | "spdx-exceptions@npm:^2.1.0": 3398 | version: 2.3.0 3399 | resolution: "spdx-exceptions@npm:2.3.0" 3400 | checksum: cb69a26fa3b46305637123cd37c85f75610e8c477b6476fa7354eb67c08128d159f1d36715f19be6f9daf4b680337deb8c65acdcae7f2608ba51931540687ac0 3401 | languageName: node 3402 | linkType: hard 3403 | 3404 | "spdx-expression-parse@npm:^3.0.0": 3405 | version: 3.0.1 3406 | resolution: "spdx-expression-parse@npm:3.0.1" 3407 | dependencies: 3408 | spdx-exceptions: ^2.1.0 3409 | spdx-license-ids: ^3.0.0 3410 | checksum: a1c6e104a2cbada7a593eaa9f430bd5e148ef5290d4c0409899855ce8b1c39652bcc88a725259491a82601159d6dc790bedefc9016c7472f7de8de7361f8ccde 3411 | languageName: node 3412 | linkType: hard 3413 | 3414 | "spdx-license-ids@npm:^3.0.0": 3415 | version: 3.0.11 3416 | resolution: "spdx-license-ids@npm:3.0.11" 3417 | checksum: 1da1acb090257773e60b022094050e810ae9fec874dc1461f65dc0400cd42dd830ab2df6e64fb49c2db3dce386dd0362110780e1b154db7c0bb413488836aaeb 3418 | languageName: node 3419 | linkType: hard 3420 | 3421 | "split2@npm:^3.0.0": 3422 | version: 3.2.2 3423 | resolution: "split2@npm:3.2.2" 3424 | dependencies: 3425 | readable-stream: ^3.0.0 3426 | checksum: 8127ddbedd0faf31f232c0e9192fede469913aa8982aa380752e0463b2e31c2359ef6962eb2d24c125bac59eeec76873678d723b1c7ff696216a1cd071e3994a 3427 | languageName: node 3428 | linkType: hard 3429 | 3430 | "sprintf-js@npm:~1.0.2": 3431 | version: 1.0.3 3432 | resolution: "sprintf-js@npm:1.0.3" 3433 | checksum: 19d79aec211f09b99ec3099b5b2ae2f6e9cdefe50bc91ac4c69144b6d3928a640bb6ae5b3def70c2e85a2c3d9f5ec2719921e3a59d3ca3ef4b2fd1a4656a0df3 3434 | languageName: node 3435 | linkType: hard 3436 | 3437 | "string-argv@npm:^0.3.1": 3438 | version: 0.3.1 3439 | resolution: "string-argv@npm:0.3.1" 3440 | checksum: efbd0289b599bee808ce80820dfe49c9635610715429c6b7cc50750f0437e3c2f697c81e5c390208c13b5d5d12d904a1546172a88579f6ee5cbaaaa4dc9ec5cf 3441 | languageName: node 3442 | linkType: hard 3443 | 3444 | "string-width@npm:^2.1.0": 3445 | version: 2.1.1 3446 | resolution: "string-width@npm:2.1.1" 3447 | dependencies: 3448 | is-fullwidth-code-point: ^2.0.0 3449 | strip-ansi: ^4.0.0 3450 | checksum: d6173abe088c615c8dffaf3861dc5d5906ed3dc2d6fd67ff2bd2e2b5dce7fd683c5240699cf0b1b8aa679a3b3bd6b28b5053c824cb89b813d7f6541d8f89064a 3451 | languageName: node 3452 | linkType: hard 3453 | 3454 | "string-width@npm:^3.0.0": 3455 | version: 3.1.0 3456 | resolution: "string-width@npm:3.1.0" 3457 | dependencies: 3458 | emoji-regex: ^7.0.1 3459 | is-fullwidth-code-point: ^2.0.0 3460 | strip-ansi: ^5.1.0 3461 | checksum: 57f7ca73d201682816d573dc68bd4bb8e1dff8dc9fcf10470fdfc3474135c97175fec12ea6a159e67339b41e86963112355b64529489af6e7e70f94a7caf08b2 3462 | languageName: node 3463 | linkType: hard 3464 | 3465 | "string-width@npm:^4.1.0, string-width@npm:^4.2.0, string-width@npm:^4.2.3": 3466 | version: 4.2.3 3467 | resolution: "string-width@npm:4.2.3" 3468 | dependencies: 3469 | emoji-regex: ^8.0.0 3470 | is-fullwidth-code-point: ^3.0.0 3471 | strip-ansi: ^6.0.1 3472 | checksum: e52c10dc3fbfcd6c3a15f159f54a90024241d0f149cf8aed2982a2d801d2e64df0bf1dc351cf8e95c3319323f9f220c16e740b06faecd53e2462df1d2b5443fb 3473 | languageName: node 3474 | linkType: hard 3475 | 3476 | "string-width@npm:^5.0.0": 3477 | version: 5.1.2 3478 | resolution: "string-width@npm:5.1.2" 3479 | dependencies: 3480 | eastasianwidth: ^0.2.0 3481 | emoji-regex: ^9.2.2 3482 | strip-ansi: ^7.0.1 3483 | checksum: 7369deaa29f21dda9a438686154b62c2c5f661f8dda60449088f9f980196f7908fc39fdd1803e3e01541970287cf5deae336798337e9319a7055af89dafa7193 3484 | languageName: node 3485 | linkType: hard 3486 | 3487 | "string_decoder@npm:^1.1.1": 3488 | version: 1.3.0 3489 | resolution: "string_decoder@npm:1.3.0" 3490 | dependencies: 3491 | safe-buffer: ~5.2.0 3492 | checksum: 8417646695a66e73aefc4420eb3b84cc9ffd89572861fe004e6aeb13c7bc00e2f616247505d2dbbef24247c372f70268f594af7126f43548565c68c117bdeb56 3493 | languageName: node 3494 | linkType: hard 3495 | 3496 | "strip-ansi@npm:^4.0.0": 3497 | version: 4.0.0 3498 | resolution: "strip-ansi@npm:4.0.0" 3499 | dependencies: 3500 | ansi-regex: ^3.0.0 3501 | checksum: d9186e6c0cf78f25274f6750ee5e4a5725fb91b70fdd79aa5fe648eab092a0ec5b9621b22d69d4534a56319f75d8944efbd84e3afa8d4ad1b9a9491f12c84eca 3502 | languageName: node 3503 | linkType: hard 3504 | 3505 | "strip-ansi@npm:^5.1.0": 3506 | version: 5.2.0 3507 | resolution: "strip-ansi@npm:5.2.0" 3508 | dependencies: 3509 | ansi-regex: ^4.1.0 3510 | checksum: bdb5f76ade97062bd88e7723aa019adbfacdcba42223b19ccb528ffb9fb0b89a5be442c663c4a3fb25268eaa3f6ea19c7c3fbae830bd1562d55adccae1fcec46 3511 | languageName: node 3512 | linkType: hard 3513 | 3514 | "strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1": 3515 | version: 6.0.1 3516 | resolution: "strip-ansi@npm:6.0.1" 3517 | dependencies: 3518 | ansi-regex: ^5.0.1 3519 | checksum: f3cd25890aef3ba6e1a74e20896c21a46f482e93df4a06567cebf2b57edabb15133f1f94e57434e0a958d61186087b1008e89c94875d019910a213181a14fc8c 3520 | languageName: node 3521 | linkType: hard 3522 | 3523 | "strip-ansi@npm:^7.0.1": 3524 | version: 7.0.1 3525 | resolution: "strip-ansi@npm:7.0.1" 3526 | dependencies: 3527 | ansi-regex: ^6.0.1 3528 | checksum: 257f78fa433520e7f9897722731d78599cb3fce29ff26a20a5e12ba4957463b50a01136f37c43707f4951817a75e90820174853d6ccc240997adc5df8f966039 3529 | languageName: node 3530 | linkType: hard 3531 | 3532 | "strip-bom@npm:4.0.0": 3533 | version: 4.0.0 3534 | resolution: "strip-bom@npm:4.0.0" 3535 | checksum: 9dbcfbaf503c57c06af15fe2c8176fb1bf3af5ff65003851a102749f875a6dbe0ab3b30115eccf6e805e9d756830d3e40ec508b62b3f1ddf3761a20ebe29d3f3 3536 | languageName: node 3537 | linkType: hard 3538 | 3539 | "strip-final-newline@npm:^2.0.0": 3540 | version: 2.0.0 3541 | resolution: "strip-final-newline@npm:2.0.0" 3542 | checksum: 69412b5e25731e1938184b5d489c32e340605bb611d6140344abc3421b7f3c6f9984b21dff296dfcf056681b82caa3bb4cc996a965ce37bcfad663e92eae9c64 3543 | languageName: node 3544 | linkType: hard 3545 | 3546 | "strip-final-newline@npm:^3.0.0": 3547 | version: 3.0.0 3548 | resolution: "strip-final-newline@npm:3.0.0" 3549 | checksum: 23ee263adfa2070cd0f23d1ac14e2ed2f000c9b44229aec9c799f1367ec001478469560abefd00c5c99ee6f0b31c137d53ec6029c53e9f32a93804e18c201050 3550 | languageName: node 3551 | linkType: hard 3552 | 3553 | "strip-indent@npm:^3.0.0": 3554 | version: 3.0.0 3555 | resolution: "strip-indent@npm:3.0.0" 3556 | dependencies: 3557 | min-indent: ^1.0.0 3558 | checksum: 18f045d57d9d0d90cd16f72b2313d6364fd2cb4bf85b9f593523ad431c8720011a4d5f08b6591c9d580f446e78855c5334a30fb91aa1560f5d9f95ed1b4a0530 3559 | languageName: node 3560 | linkType: hard 3561 | 3562 | "strip-json-comments@npm:3.0.1": 3563 | version: 3.0.1 3564 | resolution: "strip-json-comments@npm:3.0.1" 3565 | checksum: 2b860124c04b9b4ac09ec63c17fea142c789ea99b30569240f63c91917c3a8fdc250fc799280bc80dbbad1cccbcfc5f662636f960f80ce660e230f770c3f3a95 3566 | languageName: node 3567 | linkType: hard 3568 | 3569 | "strip-json-comments@npm:3.1.1": 3570 | version: 3.1.1 3571 | resolution: "strip-json-comments@npm:3.1.1" 3572 | checksum: 492f73e27268f9b1c122733f28ecb0e7e8d8a531a6662efbd08e22cccb3f9475e90a1b82cab06a392f6afae6d2de636f977e231296400d0ec5304ba70f166443 3573 | languageName: node 3574 | linkType: hard 3575 | 3576 | "strip-json-comments@npm:^2.0.1": 3577 | version: 2.0.1 3578 | resolution: "strip-json-comments@npm:2.0.1" 3579 | checksum: 1074ccb63270d32ca28edfb0a281c96b94dc679077828135141f27d52a5a398ef5e78bcf22809d23cadc2b81dfbe345eb5fd8699b385c8b1128907dec4a7d1e1 3580 | languageName: node 3581 | linkType: hard 3582 | 3583 | "supports-color@npm:^5.3.0": 3584 | version: 5.5.0 3585 | resolution: "supports-color@npm:5.5.0" 3586 | dependencies: 3587 | has-flag: ^3.0.0 3588 | checksum: 95f6f4ba5afdf92f495b5a912d4abee8dcba766ae719b975c56c084f5004845f6f5a5f7769f52d53f40e21952a6d87411bafe34af4a01e65f9926002e38e1dac 3589 | languageName: node 3590 | linkType: hard 3591 | 3592 | "supports-color@npm:^7.1.0": 3593 | version: 7.2.0 3594 | resolution: "supports-color@npm:7.2.0" 3595 | dependencies: 3596 | has-flag: ^4.0.0 3597 | checksum: 3dda818de06ebbe5b9653e07842d9479f3555ebc77e9a0280caf5a14fb877ffee9ed57007c3b78f5a6324b8dbeec648d9e97a24e2ed9fdb81ddc69ea07100f4a 3598 | languageName: node 3599 | linkType: hard 3600 | 3601 | "supports-preserve-symlinks-flag@npm:^1.0.0": 3602 | version: 1.0.0 3603 | resolution: "supports-preserve-symlinks-flag@npm:1.0.0" 3604 | checksum: 53b1e247e68e05db7b3808b99b892bd36fb096e6fba213a06da7fab22045e97597db425c724f2bbd6c99a3c295e1e73f3e4de78592289f38431049e1277ca0ae 3605 | languageName: node 3606 | linkType: hard 3607 | 3608 | "table@npm:^5.2.3": 3609 | version: 5.4.6 3610 | resolution: "table@npm:5.4.6" 3611 | dependencies: 3612 | ajv: ^6.10.2 3613 | lodash: ^4.17.14 3614 | slice-ansi: ^2.1.0 3615 | string-width: ^3.0.0 3616 | checksum: 9e35d3efa788edc17237eef8852f8e4b9178efd65a7d115141777b2ee77df4b7796c05f4ed3712d858f98894ac5935a481ceeb6dcb9895e2f67a61cce0e63b6c 3617 | languageName: node 3618 | linkType: hard 3619 | 3620 | "text-extensions@npm:^1.0.0": 3621 | version: 1.9.0 3622 | resolution: "text-extensions@npm:1.9.0" 3623 | checksum: 56a9962c1b62d39b2bcb369b7558ca85c1b55e554b38dfd725edcc0a1babe5815782a60c17ff6b839093b163dfebb92b804208aaaea616ec7571c8059ae0cf44 3624 | languageName: node 3625 | linkType: hard 3626 | 3627 | "text-table@npm:^0.2.0": 3628 | version: 0.2.0 3629 | resolution: "text-table@npm:0.2.0" 3630 | checksum: b6937a38c80c7f84d9c11dd75e49d5c44f71d95e810a3250bd1f1797fc7117c57698204adf676b71497acc205d769d65c16ae8fa10afad832ae1322630aef10a 3631 | languageName: node 3632 | linkType: hard 3633 | 3634 | "through2@npm:^4.0.0": 3635 | version: 4.0.2 3636 | resolution: "through2@npm:4.0.2" 3637 | dependencies: 3638 | readable-stream: 3 3639 | checksum: ac7430bd54ccb7920fd094b1c7ff3e1ad6edd94202e5528331253e5fde0cc56ceaa690e8df9895de2e073148c52dfbe6c4db74cacae812477a35660090960cc0 3640 | languageName: node 3641 | linkType: hard 3642 | 3643 | "through@npm:>=2.2.7 <3, through@npm:^2.3.6, through@npm:^2.3.8": 3644 | version: 2.3.8 3645 | resolution: "through@npm:2.3.8" 3646 | checksum: a38c3e059853c494af95d50c072b83f8b676a9ba2818dcc5b108ef252230735c54e0185437618596c790bbba8fcdaef5b290405981ffa09dce67b1f1bf190cbd 3647 | languageName: node 3648 | linkType: hard 3649 | 3650 | "tmp@npm:^0.0.33": 3651 | version: 0.0.33 3652 | resolution: "tmp@npm:0.0.33" 3653 | dependencies: 3654 | os-tmpdir: ~1.0.2 3655 | checksum: 902d7aceb74453ea02abbf58c203f4a8fc1cead89b60b31e354f74ed5b3fb09ea817f94fb310f884a5d16987dd9fa5a735412a7c2dd088dd3d415aa819ae3a28 3656 | languageName: node 3657 | linkType: hard 3658 | 3659 | "to-regex-range@npm:^5.0.1": 3660 | version: 5.0.1 3661 | resolution: "to-regex-range@npm:5.0.1" 3662 | dependencies: 3663 | is-number: ^7.0.0 3664 | checksum: f76fa01b3d5be85db6a2a143e24df9f60dd047d151062d0ba3df62953f2f697b16fe5dad9b0ac6191c7efc7b1d9dcaa4b768174b7b29da89d4428e64bc0a20ed 3665 | languageName: node 3666 | linkType: hard 3667 | 3668 | "trim-newlines@npm:^3.0.0": 3669 | version: 3.0.1 3670 | resolution: "trim-newlines@npm:3.0.1" 3671 | checksum: b530f3fadf78e570cf3c761fb74fef655beff6b0f84b29209bac6c9622db75ad1417f4a7b5d54c96605dcd72734ad44526fef9f396807b90839449eb543c6206 3672 | languageName: node 3673 | linkType: hard 3674 | 3675 | "ts-node@npm:^10.8.1": 3676 | version: 10.8.1 3677 | resolution: "ts-node@npm:10.8.1" 3678 | dependencies: 3679 | "@cspotcode/source-map-support": ^0.8.0 3680 | "@tsconfig/node10": ^1.0.7 3681 | "@tsconfig/node12": ^1.0.7 3682 | "@tsconfig/node14": ^1.0.0 3683 | "@tsconfig/node16": ^1.0.2 3684 | acorn: ^8.4.1 3685 | acorn-walk: ^8.1.1 3686 | arg: ^4.1.0 3687 | create-require: ^1.1.0 3688 | diff: ^4.0.1 3689 | make-error: ^1.1.1 3690 | v8-compile-cache-lib: ^3.0.1 3691 | yn: 3.1.1 3692 | peerDependencies: 3693 | "@swc/core": ">=1.2.50" 3694 | "@swc/wasm": ">=1.2.50" 3695 | "@types/node": "*" 3696 | typescript: ">=2.7" 3697 | peerDependenciesMeta: 3698 | "@swc/core": 3699 | optional: true 3700 | "@swc/wasm": 3701 | optional: true 3702 | bin: 3703 | ts-node: dist/bin.js 3704 | ts-node-cwd: dist/bin-cwd.js 3705 | ts-node-esm: dist/bin-esm.js 3706 | ts-node-script: dist/bin-script.js 3707 | ts-node-transpile-only: dist/bin-transpile.js 3708 | ts-script: dist/bin-script-deprecated.js 3709 | checksum: 7d1aa7aa3ae1c0459c4922ed0dbfbade442cfe0c25aebaf620cdf1774f112c8d7a9b14934cb6719274917f35b2c503ba87bcaf5e16a0d39ba0f68ce3e7728363 3710 | languageName: node 3711 | linkType: hard 3712 | 3713 | "tslib@npm:^1.9.0": 3714 | version: 1.14.1 3715 | resolution: "tslib@npm:1.14.1" 3716 | checksum: dbe628ef87f66691d5d2959b3e41b9ca0045c3ee3c7c7b906cc1e328b39f199bb1ad9e671c39025bd56122ac57dfbf7385a94843b1cc07c60a4db74795829acd 3717 | languageName: node 3718 | linkType: hard 3719 | 3720 | "tslib@npm:^2.1.0": 3721 | version: 2.4.0 3722 | resolution: "tslib@npm:2.4.0" 3723 | checksum: 8c4aa6a3c5a754bf76aefc38026134180c053b7bd2f81338cb5e5ebf96fefa0f417bff221592bf801077f5bf990562f6264fecbc42cd3309b33872cb6fc3b113 3724 | languageName: node 3725 | linkType: hard 3726 | 3727 | "type-check@npm:~0.3.2": 3728 | version: 0.3.2 3729 | resolution: "type-check@npm:0.3.2" 3730 | dependencies: 3731 | prelude-ls: ~1.1.2 3732 | checksum: dd3b1495642731bc0e1fc40abe5e977e0263005551ac83342ecb6f4f89551d106b368ec32ad3fb2da19b3bd7b2d1f64330da2ea9176d8ddbfe389fb286eb5124 3733 | languageName: node 3734 | linkType: hard 3735 | 3736 | "type-fest@npm:^0.18.0": 3737 | version: 0.18.1 3738 | resolution: "type-fest@npm:0.18.1" 3739 | checksum: e96dcee18abe50ec82dab6cbc4751b3a82046da54c52e3b2d035b3c519732c0b3dd7a2fa9df24efd1a38d953d8d4813c50985f215f1957ee5e4f26b0fe0da395 3740 | languageName: node 3741 | linkType: hard 3742 | 3743 | "type-fest@npm:^0.21.3": 3744 | version: 0.21.3 3745 | resolution: "type-fest@npm:0.21.3" 3746 | checksum: e6b32a3b3877f04339bae01c193b273c62ba7bfc9e325b8703c4ee1b32dc8fe4ef5dfa54bf78265e069f7667d058e360ae0f37be5af9f153b22382cd55a9afe0 3747 | languageName: node 3748 | linkType: hard 3749 | 3750 | "type-fest@npm:^0.6.0": 3751 | version: 0.6.0 3752 | resolution: "type-fest@npm:0.6.0" 3753 | checksum: b2188e6e4b21557f6e92960ec496d28a51d68658018cba8b597bd3ef757721d1db309f120ae987abeeda874511d14b776157ff809f23c6d1ce8f83b9b2b7d60f 3754 | languageName: node 3755 | linkType: hard 3756 | 3757 | "type-fest@npm:^0.8.1": 3758 | version: 0.8.1 3759 | resolution: "type-fest@npm:0.8.1" 3760 | checksum: d61c4b2eba24009033ae4500d7d818a94fd6d1b481a8111612ee141400d5f1db46f199c014766b9fa9b31a6a7374d96fc748c6d688a78a3ce5a33123839becb7 3761 | languageName: node 3762 | linkType: hard 3763 | 3764 | "typescript@npm:^4.6.4": 3765 | version: 4.7.4 3766 | resolution: "typescript@npm:4.7.4" 3767 | bin: 3768 | tsc: bin/tsc 3769 | tsserver: bin/tsserver 3770 | checksum: 5750181b1cd7e6482c4195825547e70f944114fb47e58e4aa7553e62f11b3f3173766aef9c281783edfd881f7b8299cf35e3ca8caebe73d8464528c907a164df 3771 | languageName: node 3772 | linkType: hard 3773 | 3774 | "typescript@patch:typescript@^4.6.4#~builtin": 3775 | version: 4.7.4 3776 | resolution: "typescript@patch:typescript@npm%3A4.7.4#~builtin::version=4.7.4&hash=701156" 3777 | bin: 3778 | tsc: bin/tsc 3779 | tsserver: bin/tsserver 3780 | checksum: 9096d8f6c16cb80ef3bf96fcbbd055bf1c4a43bd14f3b7be45a9fbe7ada46ec977f604d5feed3263b4f2aa7d4c7477ce5f9cd87de0d6feedec69a983f3a4f93e 3781 | languageName: node 3782 | linkType: hard 3783 | 3784 | "universalify@npm:^0.1.0": 3785 | version: 0.1.2 3786 | resolution: "universalify@npm:0.1.2" 3787 | checksum: 40cdc60f6e61070fe658ca36016a8f4ec216b29bf04a55dce14e3710cc84c7448538ef4dad3728d0bfe29975ccd7bfb5f414c45e7b78883567fb31b246f02dff 3788 | languageName: node 3789 | linkType: hard 3790 | 3791 | "universalify@npm:^2.0.0": 3792 | version: 2.0.0 3793 | resolution: "universalify@npm:2.0.0" 3794 | checksum: 2406a4edf4a8830aa6813278bab1f953a8e40f2f63a37873ffa9a3bc8f9745d06cc8e88f3572cb899b7e509013f7f6fcc3e37e8a6d914167a5381d8440518c44 3795 | languageName: node 3796 | linkType: hard 3797 | 3798 | "uri-js@npm:^4.2.2": 3799 | version: 4.4.1 3800 | resolution: "uri-js@npm:4.4.1" 3801 | dependencies: 3802 | punycode: ^2.1.0 3803 | checksum: 7167432de6817fe8e9e0c9684f1d2de2bb688c94388f7569f7dbdb1587c9f4ca2a77962f134ec90be0cc4d004c939ff0d05acc9f34a0db39a3c797dada262633 3804 | languageName: node 3805 | linkType: hard 3806 | 3807 | "util-deprecate@npm:^1.0.1": 3808 | version: 1.0.2 3809 | resolution: "util-deprecate@npm:1.0.2" 3810 | checksum: 474acf1146cb2701fe3b074892217553dfcf9a031280919ba1b8d651a068c9b15d863b7303cb15bd00a862b498e6cf4ad7b4a08fb134edd5a6f7641681cb54a2 3811 | languageName: node 3812 | linkType: hard 3813 | 3814 | "v8-compile-cache-lib@npm:^3.0.1": 3815 | version: 3.0.1 3816 | resolution: "v8-compile-cache-lib@npm:3.0.1" 3817 | checksum: 78089ad549e21bcdbfca10c08850022b22024cdcc2da9b168bcf5a73a6ed7bf01a9cebb9eac28e03cd23a684d81e0502797e88f3ccd27a32aeab1cfc44c39da0 3818 | languageName: node 3819 | linkType: hard 3820 | 3821 | "validate-npm-package-license@npm:^3.0.1": 3822 | version: 3.0.4 3823 | resolution: "validate-npm-package-license@npm:3.0.4" 3824 | dependencies: 3825 | spdx-correct: ^3.0.0 3826 | spdx-expression-parse: ^3.0.0 3827 | checksum: 35703ac889d419cf2aceef63daeadbe4e77227c39ab6287eeb6c1b36a746b364f50ba22e88591f5d017bc54685d8137bc2d328d0a896e4d3fd22093c0f32a9ad 3828 | languageName: node 3829 | linkType: hard 3830 | 3831 | "wcwidth@npm:^1.0.1": 3832 | version: 1.0.1 3833 | resolution: "wcwidth@npm:1.0.1" 3834 | dependencies: 3835 | defaults: ^1.0.3 3836 | checksum: 814e9d1ddcc9798f7377ffa448a5a3892232b9275ebb30a41b529607691c0491de47cba426e917a4d08ded3ee7e9ba2f3fe32e62ee3cd9c7d3bafb7754bd553c 3837 | languageName: node 3838 | linkType: hard 3839 | 3840 | "which@npm:^1.2.14, which@npm:^1.2.9": 3841 | version: 1.3.1 3842 | resolution: "which@npm:1.3.1" 3843 | dependencies: 3844 | isexe: ^2.0.0 3845 | bin: 3846 | which: ./bin/which 3847 | checksum: f2e185c6242244b8426c9df1510e86629192d93c1a986a7d2a591f2c24869e7ffd03d6dac07ca863b2e4c06f59a4cc9916c585b72ee9fa1aa609d0124df15e04 3848 | languageName: node 3849 | linkType: hard 3850 | 3851 | "which@npm:^2.0.1": 3852 | version: 2.0.2 3853 | resolution: "which@npm:2.0.2" 3854 | dependencies: 3855 | isexe: ^2.0.0 3856 | bin: 3857 | node-which: ./bin/node-which 3858 | checksum: 1a5c563d3c1b52d5f893c8b61afe11abc3bab4afac492e8da5bde69d550de701cf9806235f20a47b5c8fa8a1d6a9135841de2596535e998027a54589000e66d1 3859 | languageName: node 3860 | linkType: hard 3861 | 3862 | "word-wrap@npm:^1.0.3, word-wrap@npm:~1.2.3": 3863 | version: 1.2.3 3864 | resolution: "word-wrap@npm:1.2.3" 3865 | checksum: 30b48f91fcf12106ed3186ae4fa86a6a1842416df425be7b60485de14bec665a54a68e4b5156647dec3a70f25e84d270ca8bc8cd23182ed095f5c7206a938c1f 3866 | languageName: node 3867 | linkType: hard 3868 | 3869 | "wrap-ansi@npm:^6.2.0": 3870 | version: 6.2.0 3871 | resolution: "wrap-ansi@npm:6.2.0" 3872 | dependencies: 3873 | ansi-styles: ^4.0.0 3874 | string-width: ^4.1.0 3875 | strip-ansi: ^6.0.0 3876 | checksum: 6cd96a410161ff617b63581a08376f0cb9162375adeb7956e10c8cd397821f7eb2a6de24eb22a0b28401300bf228c86e50617cd568209b5f6775b93c97d2fe3a 3877 | languageName: node 3878 | linkType: hard 3879 | 3880 | "wrap-ansi@npm:^7.0.0": 3881 | version: 7.0.0 3882 | resolution: "wrap-ansi@npm:7.0.0" 3883 | dependencies: 3884 | ansi-styles: ^4.0.0 3885 | string-width: ^4.1.0 3886 | strip-ansi: ^6.0.0 3887 | checksum: a790b846fd4505de962ba728a21aaeda189b8ee1c7568ca5e817d85930e06ef8d1689d49dbf0e881e8ef84436af3a88bc49115c2e2788d841ff1b8b5b51a608b 3888 | languageName: node 3889 | linkType: hard 3890 | 3891 | "wrappy@npm:1": 3892 | version: 1.0.2 3893 | resolution: "wrappy@npm:1.0.2" 3894 | checksum: 159da4805f7e84a3d003d8841557196034155008f817172d4e986bd591f74aa82aa7db55929a54222309e01079a65a92a9e6414da5a6aa4b01ee44a511ac3ee5 3895 | languageName: node 3896 | linkType: hard 3897 | 3898 | "write@npm:1.0.3": 3899 | version: 1.0.3 3900 | resolution: "write@npm:1.0.3" 3901 | dependencies: 3902 | mkdirp: ^0.5.1 3903 | checksum: 6496197ceb2d6faeeb8b5fe2659ca804e801e4989dff9fb8a66fe76179ce4ccc378c982ef906733caea1220c8dbe05a666d82127959ac4456e70111af8b8df73 3904 | languageName: node 3905 | linkType: hard 3906 | 3907 | "y18n@npm:^5.0.5": 3908 | version: 5.0.8 3909 | resolution: "y18n@npm:5.0.8" 3910 | checksum: 54f0fb95621ee60898a38c572c515659e51cc9d9f787fb109cef6fde4befbe1c4602dc999d30110feee37456ad0f1660fa2edcfde6a9a740f86a290999550d30 3911 | languageName: node 3912 | linkType: hard 3913 | 3914 | "yallist@npm:^4.0.0": 3915 | version: 4.0.0 3916 | resolution: "yallist@npm:4.0.0" 3917 | checksum: 343617202af32df2a15a3be36a5a8c0c8545208f3d3dfbc6bb7c3e3b7e8c6f8e7485432e4f3b88da3031a6e20afa7c711eded32ddfb122896ac5d914e75848d5 3918 | languageName: node 3919 | linkType: hard 3920 | 3921 | "yaml@npm:^1.10.0": 3922 | version: 1.10.2 3923 | resolution: "yaml@npm:1.10.2" 3924 | checksum: ce4ada136e8a78a0b08dc10b4b900936912d15de59905b2bf415b4d33c63df1d555d23acb2a41b23cf9fb5da41c256441afca3d6509de7247daa062fd2c5ea5f 3925 | languageName: node 3926 | linkType: hard 3927 | 3928 | "yaml@npm:^2.1.3": 3929 | version: 2.2.0 3930 | resolution: "yaml@npm:2.2.0" 3931 | checksum: 6c89da40c3c553648595a476f23f7082c17e51b268ecce7ee0464302cbc1ffc20ba86f1b876688eb9c7d8f4b71dc28efbd7b3b86bf414a959ce5150831a9233f 3932 | languageName: node 3933 | linkType: hard 3934 | 3935 | "yargs-parser@npm:^20.2.3": 3936 | version: 20.2.9 3937 | resolution: "yargs-parser@npm:20.2.9" 3938 | checksum: 8bb69015f2b0ff9e17b2c8e6bfe224ab463dd00ca211eece72a4cd8a906224d2703fb8a326d36fdd0e68701e201b2a60ed7cf81ce0fd9b3799f9fe7745977ae3 3939 | languageName: node 3940 | linkType: hard 3941 | 3942 | "yargs-parser@npm:^21.0.0": 3943 | version: 21.0.1 3944 | resolution: "yargs-parser@npm:21.0.1" 3945 | checksum: c3ea2ed12cad0377ce3096b3f138df8267edf7b1aa7d710cd502fe16af417bafe4443dd71b28158c22fcd1be5dfd0e86319597e47badf42ff83815485887323a 3946 | languageName: node 3947 | linkType: hard 3948 | 3949 | "yargs@npm:^17.0.0": 3950 | version: 17.5.1 3951 | resolution: "yargs@npm:17.5.1" 3952 | dependencies: 3953 | cliui: ^7.0.2 3954 | escalade: ^3.1.1 3955 | get-caller-file: ^2.0.5 3956 | require-directory: ^2.1.1 3957 | string-width: ^4.2.3 3958 | y18n: ^5.0.5 3959 | yargs-parser: ^21.0.0 3960 | checksum: 00d58a2c052937fa044834313f07910fd0a115dec5ee35919e857eeee3736b21a4eafa8264535800ba8bac312991ce785ecb8a51f4d2cc8c4676d865af1cfbde 3961 | languageName: node 3962 | linkType: hard 3963 | 3964 | "yn@npm:3.1.1": 3965 | version: 3.1.1 3966 | resolution: "yn@npm:3.1.1" 3967 | checksum: 2c487b0e149e746ef48cda9f8bad10fc83693cd69d7f9dcd8be4214e985de33a29c9e24f3c0d6bcf2288427040a8947406ab27f7af67ee9456e6b84854f02dd6 3968 | languageName: node 3969 | linkType: hard 3970 | 3971 | "yocto-queue@npm:^0.1.0": 3972 | version: 0.1.0 3973 | resolution: "yocto-queue@npm:0.1.0" 3974 | checksum: f77b3d8d00310def622123df93d4ee654fc6a0096182af8bd60679ddcdfb3474c56c6c7190817c84a2785648cdee9d721c0154eb45698c62176c322fb46fc700 3975 | languageName: node 3976 | linkType: hard 3977 | --------------------------------------------------------------------------------