├── .eslintrc.json ├── .github └── workflows │ ├── main.yml │ └── release.yml ├── .gitignore ├── LICENSE ├── README.md ├── action.yml ├── hello.c ├── index.js ├── lib.js ├── package-lock.json └── package.json /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "commonjs": true, 4 | "es6": true, 5 | "node": true 6 | }, 7 | "extends": "eslint:recommended", 8 | "globals": { 9 | "Atomics": "readonly", 10 | "SharedArrayBuffer": "readonly" 11 | }, 12 | "parserOptions": { 13 | "ecmaVersion": 2018 14 | }, 15 | "rules": { 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- 1 | name: msvc-dev-cmd 2 | 3 | on: 4 | pull_request: 5 | push: 6 | branches: 7 | - master 8 | - release/* 9 | schedule: 10 | - cron: '0 6 * * *' 11 | 12 | jobs: 13 | test: 14 | name: default 15 | runs-on: windows-latest 16 | steps: 17 | - name: Check out source code 18 | uses: actions/checkout@v4 19 | - name: Download Internet 20 | run: npm install 21 | - name: Run eslint 22 | run: npm run lint 23 | - name: Enable Developer Command Prompt (amd64) 24 | uses: ./ 25 | with: 26 | arch: amd64 27 | - name: Compile and run some C code (amd64) 28 | shell: cmd 29 | run: | 30 | cl.exe hello.c 31 | hello.exe 32 | - name: Enable Developer Command Prompt (amd64_x86) 33 | uses: ./ 34 | with: 35 | arch: amd64_x86 36 | - name: Compile and run some C code (x86) 37 | shell: cmd 38 | run: | 39 | cl.exe hello.c 40 | hello.exe 41 | - name: Enable Developer Command Prompt (amd64_arm) 42 | uses: ./ 43 | with: 44 | arch: amd64_arm 45 | - name: Compile some C code (arm) 46 | shell: cmd 47 | run: | 48 | cl.exe hello.c 49 | dumpbin /headers hello.exe 50 | - name: Enable Developer Command Prompt (amd64_arm64) 51 | uses: ./ 52 | with: 53 | arch: amd64_arm64 54 | - name: Compile some C code (arm64) 55 | shell: cmd 56 | run: | 57 | cl.exe hello.c 58 | dumpbin /headers hello.exe 59 | audit: 60 | name: npm audit 61 | runs-on: ubuntu-latest 62 | steps: 63 | - name: Check out source code 64 | uses: actions/checkout@v4 65 | - run: npm install 66 | - run: npm audit --audit-level=moderate --production 67 | - run: npm audit --audit-level=critical 68 | alias-arch: 69 | name: arch aliases 70 | runs-on: windows-latest 71 | steps: 72 | - name: Check out source code 73 | uses: actions/checkout@v4 74 | - name: Download Internet 75 | run: npm install 76 | - name: Enable Developer Command Prompt 77 | uses: ./ 78 | with: 79 | arch: Win32 80 | - name: Compile and run some C code 81 | shell: cmd 82 | run: | 83 | cl.exe hello.c 84 | hello.exe 85 | -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | name: msvc-dev-cmd (release) 2 | 3 | on: 4 | push: 5 | branches: 6 | - release/* 7 | schedule: 8 | - cron: '0 6 * * *' 9 | 10 | jobs: 11 | test: 12 | name: release 13 | runs-on: windows-latest 14 | steps: 15 | - name: Setup Developer Command Prompt 16 | uses: ilammy/msvc-dev-cmd@release/v1 17 | - name: Check out source code 18 | uses: actions/checkout@v4 19 | - name: Compile and run some C code 20 | shell: cmd 21 | run: | 22 | cl.exe hello.c 23 | hello.exe 24 | audit: 25 | name: npm audit 26 | runs-on: ubuntu-latest 27 | steps: 28 | - name: Check out source code 29 | uses: actions/checkout@v4 30 | - run: npm audit --audit-level=moderate --production 31 | - run: npm audit --audit-level=critical 32 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright 2019 ilammy 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy of 4 | this software and associated documentation files (the "Software"), to deal in 5 | the Software without restriction, including without limitation the rights to 6 | use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of 7 | the Software, and to permit persons to whom the Software is furnished to do so, 8 | subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in all 11 | copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS 15 | FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR 16 | COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER 17 | IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN 18 | CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 19 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | GitHub Actions status 2 | 3 | # msvc-dev-cmd 4 | 5 | [GitHub Action](https://github.com/features/actions) for configuring Developer Command Prompt for Microsoft Visual C++. 6 | 7 | This sets up the environment for compiling C/C++ code from command line. 8 | 9 | Supports Windows. Does nothing on Linux and macOS. 10 | 11 | ## Example usage 12 | 13 | Basic usage for default compilation settings is like this: 14 | 15 | ```yaml 16 | jobs: 17 | test: 18 | steps: 19 | - uses: actions/checkout@v4 20 | - uses: ilammy/msvc-dev-cmd@v1 21 | - name: Build something requiring CL.EXE 22 | run: | 23 | cmake -G "NMake Makefiles" . 24 | nmake 25 | # ... 26 | ``` 27 | 28 | If you want something non-default, 29 | like using a specific version of Visual Studio, 30 | or cross-compling for a different target, 31 | you will need to configure those settings via inputs: 32 | 33 | ```yaml 34 | jobs: 35 | test: 36 | # Run a job for each of the specified target architectures: 37 | strategy: 38 | matrix: 39 | arch: 40 | - amd64 41 | - amd64_x86 42 | - amd64_arm64 43 | steps: 44 | - uses: actions/checkout@v4 45 | - uses: ilammy/msvc-dev-cmd@v1 46 | with: 47 | arch: ${{ matrix.arch }} 48 | - name: Build something requiring CL.EXE 49 | run: | 50 | cmake -G "NMake Makefiles" . 51 | nmake 52 | # ... 53 | ``` 54 | 55 | ## Inputs 56 | 57 | - `arch` – target architecture 58 | - native compilation: 59 | - `x64` (default) or its synonyms: `amd64`, `win64`, `x86_64`, `x86-64` 60 | - `x86` or its synonyms: `win32` 61 | - cross-compilation: `x86_amd64`, `x86_arm`, `x86_arm64`, `amd64_x86`, `amd64_arm`, `amd64_arm64` 62 | - `sdk` – Windows SDK to use 63 | - do not specify to use the default SDK 64 | - or specify full Windows 10 SDK number (e.g, `10.0.10240.0`) 65 | - or write `8.1` to use Windows 8.1 SDK 66 | - `toolset` – select VC++ compiler toolset version 67 | - do not specify to use the default toolset 68 | - `14.0` for VC++ 2015 Compiler Toolset 69 | - `14.XX` for the latest 14.XX toolset installed (e.g, `14.11`) 70 | - `14.XX.YYYYY` for a specific full version number (e.g, `14.11.25503`) 71 | - `uwp` – set `true` to build for Universal Windows Platform (i.e., for Windows Store) 72 | - `spectre` – set `true` to use Visual Studio libraries with [Spectre](https://meltdownattack.com) mitigations 73 | - `vsversion` – the Visual Studio version to use. This can be the version number (e.g. 16.0 for 2019) or the year (e.g. "2019"); omit this input to select the latest version of Visual Studio. On [GitHub-hosted runners](https://docs.github.com/actions/using-github-hosted-runners/about-github-hosted-runners/about-github-hosted-runners), this input is not required because there is only one Visual Studio in the environment. 74 | 75 | ## Caveats 76 | 77 | ### Name conflicts with `shell: bash` 78 | 79 | Using `shell: bash` in Actions may shadow some of the paths added by MSVC. 80 | In particular, `link.exe` (Microsoft C linker) is prone to be shadowed by `/usr/bin/link` (GNU filesystem link tool). 81 | 82 | Unfortunately, this happens because GitHub Actions unconditionally *prepend* GNU paths when `shell: bash` is used, 83 | on top of any paths set by `msvc-dev-cmd`, every time at the start of each new step. 84 | Hence, there aren't many non-destructive options here. 85 | 86 | If you experience compilation errors where `link` complains about unreasonable command-line arguments, 87 | “extra operand *something-something*” – that's probably it. 88 | Recommended workaround is to remove `/usr/bin/link` if that interferes with your builds. 89 | If this is not acceptable, please file an issue, then we'll figure out something better. 90 | 91 | ### Reconfiguration 92 | 93 | You can invoke `ilammy/msvc-dev-cmd` multiple times during your jobs with different inputs 94 | to reconfigure the environment for building with different settings 95 | (e.g., to target multiple architectures). 96 | 97 | ```yaml 98 | jobs: 99 | release: 100 | steps: 101 | # ... 102 | - name: Configure build for amd64 103 | uses: ilammy/msvc-dev-cmd@v1 104 | with: 105 | arch: amd64 106 | 107 | - run: build # (for amd64) 108 | 109 | - name: Configure build for x86 110 | uses: ilammy/msvc-dev-cmd@v1 111 | with: 112 | arch: amd64_x86 113 | 114 | - run: build # (for x86) 115 | 116 | - name: Configure build for ARM64 117 | uses: ilammy/msvc-dev-cmd@v1 118 | with: 119 | arch: amd64_arm64 120 | 121 | - run: build # (for ARM64) 122 | 123 | # ... 124 | ``` 125 | 126 | This mostly works but it's not really recommended 127 | since Developer Command Prompt was not meant for recursive reconfiguration. 128 | That said, if it does not work for you, please file an issue. 129 | 130 | Consider using [`strategy.matrix`](https://docs.github.com/en/actions/reference/workflow-syntax-for-github-actions#jobsjob_idstrategymatrix) 131 | to execute different build configuration in parallel, independent environments. 132 | 133 | ## License 134 | 135 | MIT, see [LICENSE](LICENSE). 136 | -------------------------------------------------------------------------------- /action.yml: -------------------------------------------------------------------------------- 1 | name: Enable Developer Command Prompt 2 | description: Configure Microsoft Visual C++ command line 3 | inputs: 4 | arch: 5 | description: Target architecture 6 | default: x64 7 | sdk: 8 | description: Windows SDK number to build for 9 | spectre: 10 | description: Enable Specre mitigations 11 | toolset: 12 | description: VC++ compiler toolset version 13 | uwp: 14 | description: Build for Universal Windows Platform 15 | vsversion: 16 | description: The Visual Studio version to use. This can be the version number (e.g. 16.0 for 2019) or the year (e.g. "2019"). 17 | runs: 18 | using: node20 19 | main: index.js 20 | branding: 21 | icon: terminal 22 | color: purple 23 | -------------------------------------------------------------------------------- /hello.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int main(int argc, char **argv) 4 | { 5 | printf("Hello, world!\n"); 6 | return 0; 7 | } 8 | -------------------------------------------------------------------------------- /index.js: -------------------------------------------------------------------------------- 1 | const { setupMSVCDevCmd } = require('./lib') 2 | const core = require('@actions/core') 3 | 4 | function main() { 5 | var arch = core.getInput('arch') 6 | const sdk = core.getInput('sdk') 7 | const toolset = core.getInput('toolset') 8 | const uwp = core.getInput('uwp') 9 | const spectre = core.getInput('spectre') 10 | const vsversion = core.getInput('vsversion') 11 | 12 | setupMSVCDevCmd(arch, sdk, toolset, uwp, spectre, vsversion) 13 | } 14 | 15 | try { 16 | main() 17 | } 18 | catch (e) { 19 | core.setFailed('Could not setup Developer Command Prompt: ' + e.message) 20 | } 21 | -------------------------------------------------------------------------------- /lib.js: -------------------------------------------------------------------------------- 1 | const core = require('@actions/core') 2 | const child_process = require('child_process') 3 | const fs = require('fs') 4 | const path = require('path') 5 | const process = require('process') 6 | 7 | const PROGRAM_FILES_X86 = process.env['ProgramFiles(x86)'] 8 | const PROGRAM_FILES = [process.env['ProgramFiles(x86)'], process.env['ProgramFiles']] 9 | 10 | 11 | const EDITIONS = ['Enterprise', 'Professional', 'Community', 'BuildTools'] 12 | const YEARS = ['2022', '2019', '2017'] 13 | 14 | const VsYearVersion = { 15 | '2022': '17.0', 16 | '2019': '16.0', 17 | '2017': '15.0', 18 | '2015': '14.0', 19 | '2013': '12.0', 20 | } 21 | 22 | function vsversion_to_versionnumber(vsversion) { 23 | if (Object.values(VsYearVersion).includes(vsversion)) { 24 | return vsversion 25 | } else { 26 | if (vsversion in VsYearVersion) { 27 | return VsYearVersion[vsversion] 28 | } 29 | } 30 | return vsversion 31 | } 32 | exports.vsversion_to_versionnumber = vsversion_to_versionnumber 33 | 34 | function vsversion_to_year(vsversion) { 35 | if (Object.keys(VsYearVersion).includes(vsversion)) { 36 | return vsversion 37 | } else { 38 | for (const [year, ver] of Object.entries(VsYearVersion)) { 39 | if (ver === vsversion) { 40 | return year 41 | } 42 | } 43 | } 44 | return vsversion 45 | } 46 | exports.vsversion_to_year = vsversion_to_year 47 | 48 | const VSWHERE_PATH = `${PROGRAM_FILES_X86}\\Microsoft Visual Studio\\Installer` 49 | 50 | function findWithVswhere(pattern, version_pattern) { 51 | try { 52 | let installationPath = child_process.execSync(`vswhere -products * ${version_pattern} -prerelease -property installationPath`).toString().trim() 53 | return installationPath + '\\' + pattern 54 | } catch (e) { 55 | core.warning(`vswhere failed: ${e}`) 56 | } 57 | return null 58 | } 59 | exports.findWithVswhere = findWithVswhere 60 | 61 | function findVcvarsall(vsversion) { 62 | const vsversion_number = vsversion_to_versionnumber(vsversion) 63 | let version_pattern 64 | if (vsversion_number) { 65 | const upper_bound = vsversion_number.split('.')[0] + '.9' 66 | version_pattern = `-version "${vsversion_number},${upper_bound}"` 67 | } else { 68 | version_pattern = "-latest" 69 | } 70 | 71 | // If vswhere is available, ask it about the location of the latest Visual Studio. 72 | let path = findWithVswhere('VC\\Auxiliary\\Build\\vcvarsall.bat', version_pattern) 73 | if (path && fs.existsSync(path)) { 74 | core.info(`Found with vswhere: ${path}`) 75 | return path 76 | } 77 | core.info("Not found with vswhere") 78 | 79 | // If that does not work, try the standard installation locations, 80 | // starting with the latest and moving to the oldest. 81 | const years = vsversion ? [vsversion_to_year(vsversion)] : YEARS 82 | for (const prog_files of PROGRAM_FILES) { 83 | for (const ver of years) { 84 | for (const ed of EDITIONS) { 85 | path = `${prog_files}\\Microsoft Visual Studio\\${ver}\\${ed}\\VC\\Auxiliary\\Build\\vcvarsall.bat` 86 | core.info(`Trying standard location: ${path}`) 87 | if (fs.existsSync(path)) { 88 | core.info(`Found standard location: ${path}`) 89 | return path 90 | } 91 | } 92 | } 93 | } 94 | core.info("Not found in standard locations") 95 | 96 | // Special case for Visual Studio 2015 (and maybe earlier), try it out too. 97 | path = `${PROGRAM_FILES_X86}\\Microsoft Visual C++ Build Tools\\vcbuildtools.bat` 98 | if (fs.existsSync(path)) { 99 | core.info(`Found VS 2015: ${path}`) 100 | return path 101 | } 102 | core.info(`Not found in VS 2015 location: ${path}`) 103 | 104 | throw new Error('Microsoft Visual Studio not found') 105 | } 106 | exports.findVcvarsall = findVcvarsall 107 | 108 | function isPathVariable(name) { 109 | const pathLikeVariables = ['PATH', 'INCLUDE', 'LIB', 'LIBPATH'] 110 | return pathLikeVariables.indexOf(name.toUpperCase()) != -1 111 | } 112 | 113 | function filterPathValue(path) { 114 | let paths = path.split(';') 115 | // Remove duplicates by keeping the first occurance and preserving order. 116 | // This keeps path shadowing working as intended. 117 | function unique(value, index, self) { 118 | return self.indexOf(value) === index 119 | } 120 | return paths.filter(unique).join(';') 121 | } 122 | 123 | /** See https://github.com/ilammy/msvc-dev-cmd#inputs */ 124 | function setupMSVCDevCmd(arch, sdk, toolset, uwp, spectre, vsversion) { 125 | if (process.platform != 'win32') { 126 | core.info('This is not a Windows virtual environment, bye!') 127 | return 128 | } 129 | 130 | // Add standard location of "vswhere" to PATH, in case it's not there. 131 | process.env.PATH += path.delimiter + VSWHERE_PATH 132 | 133 | // There are all sorts of way the architectures are called. In addition to 134 | // values supported by Microsoft Visual C++, recognize some common aliases. 135 | let arch_aliases = { 136 | "win32": "x86", 137 | "win64": "x64", 138 | "x86_64": "x64", 139 | "x86-64": "x64", 140 | } 141 | // Ignore case when matching as that's what humans expect. 142 | if (arch.toLowerCase() in arch_aliases) { 143 | arch = arch_aliases[arch.toLowerCase()] 144 | } 145 | 146 | // Due to the way Microsoft Visual C++ is configured, we have to resort to the following hack: 147 | // Call the configuration batch file and then output *all* the environment variables. 148 | 149 | var args = [arch] 150 | if (uwp == 'true') { 151 | args.push('uwp') 152 | } 153 | if (sdk) { 154 | args.push(sdk) 155 | } 156 | if (toolset) { 157 | args.push(`-vcvars_ver=${toolset}`) 158 | } 159 | if (spectre == 'true') { 160 | args.push('-vcvars_spectre_libs=spectre') 161 | } 162 | 163 | const vcvars = `"${findVcvarsall(vsversion)}" ${args.join(' ')}` 164 | core.debug(`vcvars command-line: ${vcvars}`) 165 | 166 | const cmd_output_string = child_process.execSync(`set && cls && ${vcvars} && cls && set`, {shell: "cmd"}).toString() 167 | const cmd_output_parts = cmd_output_string.split('\f') 168 | 169 | const old_environment = cmd_output_parts[0].split('\r\n') 170 | const vcvars_output = cmd_output_parts[1].split('\r\n') 171 | const new_environment = cmd_output_parts[2].split('\r\n') 172 | 173 | // If vsvars.bat is given an incorrect command line, it will print out 174 | // an error and *still* exit successfully. Parse out errors from output 175 | // which don't look like environment variables, and fail if appropriate. 176 | const error_messages = vcvars_output.filter((line) => { 177 | if (line.match(/^\[ERROR.*\]/)) { 178 | // Don't print this particular line which will be confusing in output. 179 | if (!line.match(/Error in script usage. The correct usage is:$/)) { 180 | return true 181 | } 182 | } 183 | return false 184 | }) 185 | if (error_messages.length > 0) { 186 | throw new Error('invalid parameters' + '\r\n' + error_messages.join('\r\n')) 187 | } 188 | 189 | // Convert old environment lines into a dictionary for easier lookup. 190 | let old_env_vars = {} 191 | for (let string of old_environment) { 192 | const [name, value] = string.split('=') 193 | old_env_vars[name] = value 194 | } 195 | 196 | // Now look at the new environment and export everything that changed. 197 | // These are the variables set by vsvars.bat. Also export everything 198 | // that was not there during the first sweep: those are new variables. 199 | core.startGroup('Environment variables') 200 | for (let string of new_environment) { 201 | // vsvars.bat likes to print some fluff at the beginning. 202 | // Skip lines that don't look like environment variables. 203 | if (!string.includes('=')) { 204 | continue; 205 | } 206 | let [name, new_value] = string.split('=') 207 | let old_value = old_env_vars[name] 208 | // For new variables "old_value === undefined". 209 | if (new_value !== old_value) { 210 | core.info(`Setting ${name}`) 211 | // Special case for a bunch of PATH-like variables: vcvarsall.bat 212 | // just prepends its stuff without checking if its already there. 213 | // This makes repeated invocations of this action fail after some 214 | // point, when the environment variable overflows. Avoid that. 215 | if (isPathVariable(name)) { 216 | new_value = filterPathValue(new_value) 217 | } 218 | core.exportVariable(name, new_value) 219 | } 220 | } 221 | core.endGroup() 222 | 223 | core.info(`Configured Developer Command Prompt`) 224 | } 225 | exports.setupMSVCDevCmd = setupMSVCDevCmd 226 | -------------------------------------------------------------------------------- /package-lock.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "msvc-dev-cmd", 3 | "version": "1.13.0-dev", 4 | "lockfileVersion": 2, 5 | "requires": true, 6 | "packages": { 7 | "": { 8 | "name": "msvc-dev-cmd", 9 | "version": "1.13.0-dev", 10 | "license": "MIT", 11 | "dependencies": { 12 | "@actions/core": "^1.10.0" 13 | }, 14 | "devDependencies": { 15 | "eslint": "^7" 16 | } 17 | }, 18 | "node_modules/@actions/core": { 19 | "version": "1.10.0", 20 | "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.10.0.tgz", 21 | "integrity": "sha512-2aZDDa3zrrZbP5ZYg159sNoLRb61nQ7awl5pSvIq5Qpj81vwDzdMRKzkWJGJuwVvWpvZKx7vspJALyvaaIQyug==", 22 | "dependencies": { 23 | "@actions/http-client": "^2.0.1", 24 | "uuid": "^8.3.2" 25 | } 26 | }, 27 | "node_modules/@actions/http-client": { 28 | "version": "2.0.1", 29 | "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.0.1.tgz", 30 | "integrity": "sha512-PIXiMVtz6VvyaRsGY268qvj57hXQEpsYogYOu2nrQhlf+XCGmZstmuZBbAybUl1nQGnvS1k1eEsQ69ZoD7xlSw==", 31 | "dependencies": { 32 | "tunnel": "^0.0.6" 33 | } 34 | }, 35 | "node_modules/@babel/code-frame": { 36 | "version": "7.12.11", 37 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", 38 | "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", 39 | "dev": true, 40 | "dependencies": { 41 | "@babel/highlight": "^7.10.4" 42 | } 43 | }, 44 | "node_modules/@babel/helper-validator-identifier": { 45 | "version": "7.15.7", 46 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", 47 | "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", 48 | "dev": true, 49 | "engines": { 50 | "node": ">=6.9.0" 51 | } 52 | }, 53 | "node_modules/@babel/highlight": { 54 | "version": "7.14.5", 55 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", 56 | "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", 57 | "dev": true, 58 | "dependencies": { 59 | "@babel/helper-validator-identifier": "^7.14.5", 60 | "chalk": "^2.0.0", 61 | "js-tokens": "^4.0.0" 62 | }, 63 | "engines": { 64 | "node": ">=6.9.0" 65 | } 66 | }, 67 | "node_modules/@babel/highlight/node_modules/ansi-styles": { 68 | "version": "3.2.1", 69 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 70 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 71 | "dev": true, 72 | "dependencies": { 73 | "color-convert": "^1.9.0" 74 | }, 75 | "engines": { 76 | "node": ">=4" 77 | } 78 | }, 79 | "node_modules/@babel/highlight/node_modules/chalk": { 80 | "version": "2.4.2", 81 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 82 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 83 | "dev": true, 84 | "dependencies": { 85 | "ansi-styles": "^3.2.1", 86 | "escape-string-regexp": "^1.0.5", 87 | "supports-color": "^5.3.0" 88 | }, 89 | "engines": { 90 | "node": ">=4" 91 | } 92 | }, 93 | "node_modules/@babel/highlight/node_modules/color-convert": { 94 | "version": "1.9.3", 95 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", 96 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", 97 | "dev": true, 98 | "dependencies": { 99 | "color-name": "1.1.3" 100 | } 101 | }, 102 | "node_modules/@babel/highlight/node_modules/color-name": { 103 | "version": "1.1.3", 104 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 105 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", 106 | "dev": true 107 | }, 108 | "node_modules/@babel/highlight/node_modules/escape-string-regexp": { 109 | "version": "1.0.5", 110 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 111 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 112 | "dev": true, 113 | "engines": { 114 | "node": ">=0.8.0" 115 | } 116 | }, 117 | "node_modules/@babel/highlight/node_modules/has-flag": { 118 | "version": "3.0.0", 119 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 120 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", 121 | "dev": true, 122 | "engines": { 123 | "node": ">=4" 124 | } 125 | }, 126 | "node_modules/@babel/highlight/node_modules/supports-color": { 127 | "version": "5.5.0", 128 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 129 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 130 | "dev": true, 131 | "dependencies": { 132 | "has-flag": "^3.0.0" 133 | }, 134 | "engines": { 135 | "node": ">=4" 136 | } 137 | }, 138 | "node_modules/@eslint/eslintrc": { 139 | "version": "0.4.3", 140 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", 141 | "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", 142 | "dev": true, 143 | "dependencies": { 144 | "ajv": "^6.12.4", 145 | "debug": "^4.1.1", 146 | "espree": "^7.3.0", 147 | "globals": "^13.9.0", 148 | "ignore": "^4.0.6", 149 | "import-fresh": "^3.2.1", 150 | "js-yaml": "^3.13.1", 151 | "minimatch": "^3.0.4", 152 | "strip-json-comments": "^3.1.1" 153 | }, 154 | "engines": { 155 | "node": "^10.12.0 || >=12.0.0" 156 | } 157 | }, 158 | "node_modules/@humanwhocodes/config-array": { 159 | "version": "0.5.0", 160 | "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", 161 | "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", 162 | "dev": true, 163 | "dependencies": { 164 | "@humanwhocodes/object-schema": "^1.2.0", 165 | "debug": "^4.1.1", 166 | "minimatch": "^3.0.4" 167 | }, 168 | "engines": { 169 | "node": ">=10.10.0" 170 | } 171 | }, 172 | "node_modules/@humanwhocodes/object-schema": { 173 | "version": "1.2.0", 174 | "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", 175 | "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", 176 | "dev": true 177 | }, 178 | "node_modules/acorn": { 179 | "version": "7.4.1", 180 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", 181 | "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", 182 | "dev": true, 183 | "bin": { 184 | "acorn": "bin/acorn" 185 | }, 186 | "engines": { 187 | "node": ">=0.4.0" 188 | } 189 | }, 190 | "node_modules/acorn-jsx": { 191 | "version": "5.3.2", 192 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", 193 | "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", 194 | "dev": true, 195 | "peerDependencies": { 196 | "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" 197 | } 198 | }, 199 | "node_modules/ajv": { 200 | "version": "6.12.6", 201 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", 202 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", 203 | "dev": true, 204 | "dependencies": { 205 | "fast-deep-equal": "^3.1.1", 206 | "fast-json-stable-stringify": "^2.0.0", 207 | "json-schema-traverse": "^0.4.1", 208 | "uri-js": "^4.2.2" 209 | }, 210 | "funding": { 211 | "type": "github", 212 | "url": "https://github.com/sponsors/epoberezkin" 213 | } 214 | }, 215 | "node_modules/ansi-colors": { 216 | "version": "4.1.1", 217 | "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", 218 | "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", 219 | "dev": true, 220 | "engines": { 221 | "node": ">=6" 222 | } 223 | }, 224 | "node_modules/ansi-regex": { 225 | "version": "5.0.1", 226 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 227 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 228 | "dev": true, 229 | "engines": { 230 | "node": ">=8" 231 | } 232 | }, 233 | "node_modules/ansi-styles": { 234 | "version": "4.3.0", 235 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", 236 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 237 | "dev": true, 238 | "dependencies": { 239 | "color-convert": "^2.0.1" 240 | }, 241 | "engines": { 242 | "node": ">=8" 243 | }, 244 | "funding": { 245 | "url": "https://github.com/chalk/ansi-styles?sponsor=1" 246 | } 247 | }, 248 | "node_modules/argparse": { 249 | "version": "1.0.10", 250 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 251 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 252 | "dev": true, 253 | "dependencies": { 254 | "sprintf-js": "~1.0.2" 255 | } 256 | }, 257 | "node_modules/astral-regex": { 258 | "version": "2.0.0", 259 | "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", 260 | "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", 261 | "dev": true, 262 | "engines": { 263 | "node": ">=8" 264 | } 265 | }, 266 | "node_modules/balanced-match": { 267 | "version": "1.0.2", 268 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 269 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 270 | "dev": true 271 | }, 272 | "node_modules/brace-expansion": { 273 | "version": "1.1.11", 274 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 275 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 276 | "dev": true, 277 | "dependencies": { 278 | "balanced-match": "^1.0.0", 279 | "concat-map": "0.0.1" 280 | } 281 | }, 282 | "node_modules/callsites": { 283 | "version": "3.1.0", 284 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", 285 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", 286 | "dev": true, 287 | "engines": { 288 | "node": ">=6" 289 | } 290 | }, 291 | "node_modules/chalk": { 292 | "version": "4.1.2", 293 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", 294 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", 295 | "dev": true, 296 | "dependencies": { 297 | "ansi-styles": "^4.1.0", 298 | "supports-color": "^7.1.0" 299 | }, 300 | "engines": { 301 | "node": ">=10" 302 | }, 303 | "funding": { 304 | "url": "https://github.com/chalk/chalk?sponsor=1" 305 | } 306 | }, 307 | "node_modules/color-convert": { 308 | "version": "2.0.1", 309 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 310 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 311 | "dev": true, 312 | "dependencies": { 313 | "color-name": "~1.1.4" 314 | }, 315 | "engines": { 316 | "node": ">=7.0.0" 317 | } 318 | }, 319 | "node_modules/color-name": { 320 | "version": "1.1.4", 321 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 322 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 323 | "dev": true 324 | }, 325 | "node_modules/concat-map": { 326 | "version": "0.0.1", 327 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 328 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 329 | "dev": true 330 | }, 331 | "node_modules/cross-spawn": { 332 | "version": "7.0.3", 333 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", 334 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", 335 | "dev": true, 336 | "dependencies": { 337 | "path-key": "^3.1.0", 338 | "shebang-command": "^2.0.0", 339 | "which": "^2.0.1" 340 | }, 341 | "engines": { 342 | "node": ">= 8" 343 | } 344 | }, 345 | "node_modules/debug": { 346 | "version": "4.3.4", 347 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", 348 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", 349 | "dev": true, 350 | "dependencies": { 351 | "ms": "2.1.2" 352 | }, 353 | "engines": { 354 | "node": ">=6.0" 355 | }, 356 | "peerDependenciesMeta": { 357 | "supports-color": { 358 | "optional": true 359 | } 360 | } 361 | }, 362 | "node_modules/deep-is": { 363 | "version": "0.1.4", 364 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", 365 | "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", 366 | "dev": true 367 | }, 368 | "node_modules/doctrine": { 369 | "version": "3.0.0", 370 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", 371 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", 372 | "dev": true, 373 | "dependencies": { 374 | "esutils": "^2.0.2" 375 | }, 376 | "engines": { 377 | "node": ">=6.0.0" 378 | } 379 | }, 380 | "node_modules/emoji-regex": { 381 | "version": "8.0.0", 382 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 383 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 384 | "dev": true 385 | }, 386 | "node_modules/enquirer": { 387 | "version": "2.3.6", 388 | "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", 389 | "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", 390 | "dev": true, 391 | "dependencies": { 392 | "ansi-colors": "^4.1.1" 393 | }, 394 | "engines": { 395 | "node": ">=8.6" 396 | } 397 | }, 398 | "node_modules/escape-string-regexp": { 399 | "version": "4.0.0", 400 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", 401 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", 402 | "dev": true, 403 | "engines": { 404 | "node": ">=10" 405 | }, 406 | "funding": { 407 | "url": "https://github.com/sponsors/sindresorhus" 408 | } 409 | }, 410 | "node_modules/eslint": { 411 | "version": "7.32.0", 412 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", 413 | "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", 414 | "dev": true, 415 | "dependencies": { 416 | "@babel/code-frame": "7.12.11", 417 | "@eslint/eslintrc": "^0.4.3", 418 | "@humanwhocodes/config-array": "^0.5.0", 419 | "ajv": "^6.10.0", 420 | "chalk": "^4.0.0", 421 | "cross-spawn": "^7.0.2", 422 | "debug": "^4.0.1", 423 | "doctrine": "^3.0.0", 424 | "enquirer": "^2.3.5", 425 | "escape-string-regexp": "^4.0.0", 426 | "eslint-scope": "^5.1.1", 427 | "eslint-utils": "^2.1.0", 428 | "eslint-visitor-keys": "^2.0.0", 429 | "espree": "^7.3.1", 430 | "esquery": "^1.4.0", 431 | "esutils": "^2.0.2", 432 | "fast-deep-equal": "^3.1.3", 433 | "file-entry-cache": "^6.0.1", 434 | "functional-red-black-tree": "^1.0.1", 435 | "glob-parent": "^5.1.2", 436 | "globals": "^13.6.0", 437 | "ignore": "^4.0.6", 438 | "import-fresh": "^3.0.0", 439 | "imurmurhash": "^0.1.4", 440 | "is-glob": "^4.0.0", 441 | "js-yaml": "^3.13.1", 442 | "json-stable-stringify-without-jsonify": "^1.0.1", 443 | "levn": "^0.4.1", 444 | "lodash.merge": "^4.6.2", 445 | "minimatch": "^3.0.4", 446 | "natural-compare": "^1.4.0", 447 | "optionator": "^0.9.1", 448 | "progress": "^2.0.0", 449 | "regexpp": "^3.1.0", 450 | "semver": "^7.2.1", 451 | "strip-ansi": "^6.0.0", 452 | "strip-json-comments": "^3.1.0", 453 | "table": "^6.0.9", 454 | "text-table": "^0.2.0", 455 | "v8-compile-cache": "^2.0.3" 456 | }, 457 | "bin": { 458 | "eslint": "bin/eslint.js" 459 | }, 460 | "engines": { 461 | "node": "^10.12.0 || >=12.0.0" 462 | }, 463 | "funding": { 464 | "url": "https://opencollective.com/eslint" 465 | } 466 | }, 467 | "node_modules/eslint-scope": { 468 | "version": "5.1.1", 469 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", 470 | "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", 471 | "dev": true, 472 | "dependencies": { 473 | "esrecurse": "^4.3.0", 474 | "estraverse": "^4.1.1" 475 | }, 476 | "engines": { 477 | "node": ">=8.0.0" 478 | } 479 | }, 480 | "node_modules/eslint-utils": { 481 | "version": "2.1.0", 482 | "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", 483 | "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", 484 | "dev": true, 485 | "dependencies": { 486 | "eslint-visitor-keys": "^1.1.0" 487 | }, 488 | "engines": { 489 | "node": ">=6" 490 | }, 491 | "funding": { 492 | "url": "https://github.com/sponsors/mysticatea" 493 | } 494 | }, 495 | "node_modules/eslint-utils/node_modules/eslint-visitor-keys": { 496 | "version": "1.3.0", 497 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", 498 | "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", 499 | "dev": true, 500 | "engines": { 501 | "node": ">=4" 502 | } 503 | }, 504 | "node_modules/eslint-visitor-keys": { 505 | "version": "2.1.0", 506 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", 507 | "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", 508 | "dev": true, 509 | "engines": { 510 | "node": ">=10" 511 | } 512 | }, 513 | "node_modules/espree": { 514 | "version": "7.3.1", 515 | "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", 516 | "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", 517 | "dev": true, 518 | "dependencies": { 519 | "acorn": "^7.4.0", 520 | "acorn-jsx": "^5.3.1", 521 | "eslint-visitor-keys": "^1.3.0" 522 | }, 523 | "engines": { 524 | "node": "^10.12.0 || >=12.0.0" 525 | } 526 | }, 527 | "node_modules/espree/node_modules/eslint-visitor-keys": { 528 | "version": "1.3.0", 529 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", 530 | "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", 531 | "dev": true, 532 | "engines": { 533 | "node": ">=4" 534 | } 535 | }, 536 | "node_modules/esprima": { 537 | "version": "4.0.1", 538 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", 539 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", 540 | "dev": true, 541 | "bin": { 542 | "esparse": "bin/esparse.js", 543 | "esvalidate": "bin/esvalidate.js" 544 | }, 545 | "engines": { 546 | "node": ">=4" 547 | } 548 | }, 549 | "node_modules/esquery": { 550 | "version": "1.4.0", 551 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", 552 | "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", 553 | "dev": true, 554 | "dependencies": { 555 | "estraverse": "^5.1.0" 556 | }, 557 | "engines": { 558 | "node": ">=0.10" 559 | } 560 | }, 561 | "node_modules/esquery/node_modules/estraverse": { 562 | "version": "5.2.0", 563 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", 564 | "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", 565 | "dev": true, 566 | "engines": { 567 | "node": ">=4.0" 568 | } 569 | }, 570 | "node_modules/esrecurse": { 571 | "version": "4.3.0", 572 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", 573 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", 574 | "dev": true, 575 | "dependencies": { 576 | "estraverse": "^5.2.0" 577 | }, 578 | "engines": { 579 | "node": ">=4.0" 580 | } 581 | }, 582 | "node_modules/esrecurse/node_modules/estraverse": { 583 | "version": "5.2.0", 584 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", 585 | "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", 586 | "dev": true, 587 | "engines": { 588 | "node": ">=4.0" 589 | } 590 | }, 591 | "node_modules/estraverse": { 592 | "version": "4.3.0", 593 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", 594 | "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", 595 | "dev": true, 596 | "engines": { 597 | "node": ">=4.0" 598 | } 599 | }, 600 | "node_modules/esutils": { 601 | "version": "2.0.3", 602 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", 603 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 604 | "dev": true, 605 | "engines": { 606 | "node": ">=0.10.0" 607 | } 608 | }, 609 | "node_modules/fast-deep-equal": { 610 | "version": "3.1.3", 611 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 612 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", 613 | "dev": true 614 | }, 615 | "node_modules/fast-json-stable-stringify": { 616 | "version": "2.1.0", 617 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", 618 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", 619 | "dev": true 620 | }, 621 | "node_modules/fast-levenshtein": { 622 | "version": "2.0.6", 623 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 624 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 625 | "dev": true 626 | }, 627 | "node_modules/file-entry-cache": { 628 | "version": "6.0.1", 629 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", 630 | "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", 631 | "dev": true, 632 | "dependencies": { 633 | "flat-cache": "^3.0.4" 634 | }, 635 | "engines": { 636 | "node": "^10.12.0 || >=12.0.0" 637 | } 638 | }, 639 | "node_modules/flat-cache": { 640 | "version": "3.0.4", 641 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", 642 | "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", 643 | "dev": true, 644 | "dependencies": { 645 | "flatted": "^3.1.0", 646 | "rimraf": "^3.0.2" 647 | }, 648 | "engines": { 649 | "node": "^10.12.0 || >=12.0.0" 650 | } 651 | }, 652 | "node_modules/flatted": { 653 | "version": "3.2.2", 654 | "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", 655 | "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", 656 | "dev": true 657 | }, 658 | "node_modules/fs.realpath": { 659 | "version": "1.0.0", 660 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 661 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 662 | "dev": true 663 | }, 664 | "node_modules/functional-red-black-tree": { 665 | "version": "1.0.1", 666 | "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", 667 | "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", 668 | "dev": true 669 | }, 670 | "node_modules/glob": { 671 | "version": "7.2.0", 672 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", 673 | "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", 674 | "dev": true, 675 | "dependencies": { 676 | "fs.realpath": "^1.0.0", 677 | "inflight": "^1.0.4", 678 | "inherits": "2", 679 | "minimatch": "^3.0.4", 680 | "once": "^1.3.0", 681 | "path-is-absolute": "^1.0.0" 682 | }, 683 | "engines": { 684 | "node": "*" 685 | }, 686 | "funding": { 687 | "url": "https://github.com/sponsors/isaacs" 688 | } 689 | }, 690 | "node_modules/glob-parent": { 691 | "version": "5.1.2", 692 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 693 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 694 | "dev": true, 695 | "dependencies": { 696 | "is-glob": "^4.0.1" 697 | }, 698 | "engines": { 699 | "node": ">= 6" 700 | } 701 | }, 702 | "node_modules/globals": { 703 | "version": "13.11.0", 704 | "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", 705 | "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", 706 | "dev": true, 707 | "dependencies": { 708 | "type-fest": "^0.20.2" 709 | }, 710 | "engines": { 711 | "node": ">=8" 712 | }, 713 | "funding": { 714 | "url": "https://github.com/sponsors/sindresorhus" 715 | } 716 | }, 717 | "node_modules/has-flag": { 718 | "version": "4.0.0", 719 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 720 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 721 | "dev": true, 722 | "engines": { 723 | "node": ">=8" 724 | } 725 | }, 726 | "node_modules/ignore": { 727 | "version": "4.0.6", 728 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", 729 | "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", 730 | "dev": true, 731 | "engines": { 732 | "node": ">= 4" 733 | } 734 | }, 735 | "node_modules/import-fresh": { 736 | "version": "3.2.1", 737 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", 738 | "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", 739 | "dev": true, 740 | "dependencies": { 741 | "parent-module": "^1.0.0", 742 | "resolve-from": "^4.0.0" 743 | }, 744 | "engines": { 745 | "node": ">=6" 746 | } 747 | }, 748 | "node_modules/imurmurhash": { 749 | "version": "0.1.4", 750 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 751 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 752 | "dev": true, 753 | "engines": { 754 | "node": ">=0.8.19" 755 | } 756 | }, 757 | "node_modules/inflight": { 758 | "version": "1.0.6", 759 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 760 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 761 | "dev": true, 762 | "dependencies": { 763 | "once": "^1.3.0", 764 | "wrappy": "1" 765 | } 766 | }, 767 | "node_modules/inherits": { 768 | "version": "2.0.4", 769 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 770 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 771 | "dev": true 772 | }, 773 | "node_modules/is-extglob": { 774 | "version": "2.1.1", 775 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 776 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", 777 | "dev": true, 778 | "engines": { 779 | "node": ">=0.10.0" 780 | } 781 | }, 782 | "node_modules/is-fullwidth-code-point": { 783 | "version": "3.0.0", 784 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 785 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 786 | "dev": true, 787 | "engines": { 788 | "node": ">=8" 789 | } 790 | }, 791 | "node_modules/is-glob": { 792 | "version": "4.0.1", 793 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", 794 | "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", 795 | "dev": true, 796 | "dependencies": { 797 | "is-extglob": "^2.1.1" 798 | }, 799 | "engines": { 800 | "node": ">=0.10.0" 801 | } 802 | }, 803 | "node_modules/isexe": { 804 | "version": "2.0.0", 805 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 806 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 807 | "dev": true 808 | }, 809 | "node_modules/js-tokens": { 810 | "version": "4.0.0", 811 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 812 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", 813 | "dev": true 814 | }, 815 | "node_modules/js-yaml": { 816 | "version": "3.13.1", 817 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", 818 | "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", 819 | "dev": true, 820 | "dependencies": { 821 | "argparse": "^1.0.7", 822 | "esprima": "^4.0.0" 823 | }, 824 | "bin": { 825 | "js-yaml": "bin/js-yaml.js" 826 | } 827 | }, 828 | "node_modules/json-schema-traverse": { 829 | "version": "0.4.1", 830 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 831 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", 832 | "dev": true 833 | }, 834 | "node_modules/json-stable-stringify-without-jsonify": { 835 | "version": "1.0.1", 836 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 837 | "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", 838 | "dev": true 839 | }, 840 | "node_modules/levn": { 841 | "version": "0.4.1", 842 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", 843 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", 844 | "dev": true, 845 | "dependencies": { 846 | "prelude-ls": "^1.2.1", 847 | "type-check": "~0.4.0" 848 | }, 849 | "engines": { 850 | "node": ">= 0.8.0" 851 | } 852 | }, 853 | "node_modules/lodash.clonedeep": { 854 | "version": "4.5.0", 855 | "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", 856 | "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", 857 | "dev": true 858 | }, 859 | "node_modules/lodash.merge": { 860 | "version": "4.6.2", 861 | "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", 862 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", 863 | "dev": true 864 | }, 865 | "node_modules/lodash.truncate": { 866 | "version": "4.4.2", 867 | "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", 868 | "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", 869 | "dev": true 870 | }, 871 | "node_modules/lru-cache": { 872 | "version": "6.0.0", 873 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", 874 | "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 875 | "dev": true, 876 | "dependencies": { 877 | "yallist": "^4.0.0" 878 | }, 879 | "engines": { 880 | "node": ">=10" 881 | } 882 | }, 883 | "node_modules/minimatch": { 884 | "version": "3.1.2", 885 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 886 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 887 | "dev": true, 888 | "dependencies": { 889 | "brace-expansion": "^1.1.7" 890 | }, 891 | "engines": { 892 | "node": "*" 893 | } 894 | }, 895 | "node_modules/ms": { 896 | "version": "2.1.2", 897 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 898 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 899 | "dev": true 900 | }, 901 | "node_modules/natural-compare": { 902 | "version": "1.4.0", 903 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 904 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 905 | "dev": true 906 | }, 907 | "node_modules/once": { 908 | "version": "1.4.0", 909 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 910 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 911 | "dev": true, 912 | "dependencies": { 913 | "wrappy": "1" 914 | } 915 | }, 916 | "node_modules/optionator": { 917 | "version": "0.9.1", 918 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", 919 | "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", 920 | "dev": true, 921 | "dependencies": { 922 | "deep-is": "^0.1.3", 923 | "fast-levenshtein": "^2.0.6", 924 | "levn": "^0.4.1", 925 | "prelude-ls": "^1.2.1", 926 | "type-check": "^0.4.0", 927 | "word-wrap": "^1.2.3" 928 | }, 929 | "engines": { 930 | "node": ">= 0.8.0" 931 | } 932 | }, 933 | "node_modules/parent-module": { 934 | "version": "1.0.1", 935 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", 936 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", 937 | "dev": true, 938 | "dependencies": { 939 | "callsites": "^3.0.0" 940 | }, 941 | "engines": { 942 | "node": ">=6" 943 | } 944 | }, 945 | "node_modules/path-is-absolute": { 946 | "version": "1.0.1", 947 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 948 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 949 | "dev": true, 950 | "engines": { 951 | "node": ">=0.10.0" 952 | } 953 | }, 954 | "node_modules/path-key": { 955 | "version": "3.1.1", 956 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", 957 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", 958 | "dev": true, 959 | "engines": { 960 | "node": ">=8" 961 | } 962 | }, 963 | "node_modules/prelude-ls": { 964 | "version": "1.2.1", 965 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", 966 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", 967 | "dev": true, 968 | "engines": { 969 | "node": ">= 0.8.0" 970 | } 971 | }, 972 | "node_modules/progress": { 973 | "version": "2.0.3", 974 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", 975 | "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", 976 | "dev": true, 977 | "engines": { 978 | "node": ">=0.4.0" 979 | } 980 | }, 981 | "node_modules/punycode": { 982 | "version": "2.1.1", 983 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", 984 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", 985 | "dev": true, 986 | "engines": { 987 | "node": ">=6" 988 | } 989 | }, 990 | "node_modules/regexpp": { 991 | "version": "3.2.0", 992 | "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", 993 | "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", 994 | "dev": true, 995 | "engines": { 996 | "node": ">=8" 997 | }, 998 | "funding": { 999 | "url": "https://github.com/sponsors/mysticatea" 1000 | } 1001 | }, 1002 | "node_modules/require-from-string": { 1003 | "version": "2.0.2", 1004 | "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", 1005 | "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", 1006 | "dev": true, 1007 | "engines": { 1008 | "node": ">=0.10.0" 1009 | } 1010 | }, 1011 | "node_modules/resolve-from": { 1012 | "version": "4.0.0", 1013 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", 1014 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", 1015 | "dev": true, 1016 | "engines": { 1017 | "node": ">=4" 1018 | } 1019 | }, 1020 | "node_modules/rimraf": { 1021 | "version": "3.0.2", 1022 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", 1023 | "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", 1024 | "dev": true, 1025 | "dependencies": { 1026 | "glob": "^7.1.3" 1027 | }, 1028 | "bin": { 1029 | "rimraf": "bin.js" 1030 | }, 1031 | "funding": { 1032 | "url": "https://github.com/sponsors/isaacs" 1033 | } 1034 | }, 1035 | "node_modules/semver": { 1036 | "version": "7.5.4", 1037 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", 1038 | "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", 1039 | "dev": true, 1040 | "dependencies": { 1041 | "lru-cache": "^6.0.0" 1042 | }, 1043 | "bin": { 1044 | "semver": "bin/semver.js" 1045 | }, 1046 | "engines": { 1047 | "node": ">=10" 1048 | } 1049 | }, 1050 | "node_modules/shebang-command": { 1051 | "version": "2.0.0", 1052 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", 1053 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", 1054 | "dev": true, 1055 | "dependencies": { 1056 | "shebang-regex": "^3.0.0" 1057 | }, 1058 | "engines": { 1059 | "node": ">=8" 1060 | } 1061 | }, 1062 | "node_modules/shebang-regex": { 1063 | "version": "3.0.0", 1064 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", 1065 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", 1066 | "dev": true, 1067 | "engines": { 1068 | "node": ">=8" 1069 | } 1070 | }, 1071 | "node_modules/slice-ansi": { 1072 | "version": "4.0.0", 1073 | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", 1074 | "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", 1075 | "dev": true, 1076 | "dependencies": { 1077 | "ansi-styles": "^4.0.0", 1078 | "astral-regex": "^2.0.0", 1079 | "is-fullwidth-code-point": "^3.0.0" 1080 | }, 1081 | "engines": { 1082 | "node": ">=10" 1083 | }, 1084 | "funding": { 1085 | "url": "https://github.com/chalk/slice-ansi?sponsor=1" 1086 | } 1087 | }, 1088 | "node_modules/sprintf-js": { 1089 | "version": "1.0.3", 1090 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 1091 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 1092 | "dev": true 1093 | }, 1094 | "node_modules/string-width": { 1095 | "version": "4.2.3", 1096 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 1097 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 1098 | "dev": true, 1099 | "dependencies": { 1100 | "emoji-regex": "^8.0.0", 1101 | "is-fullwidth-code-point": "^3.0.0", 1102 | "strip-ansi": "^6.0.1" 1103 | }, 1104 | "engines": { 1105 | "node": ">=8" 1106 | } 1107 | }, 1108 | "node_modules/strip-ansi": { 1109 | "version": "6.0.1", 1110 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 1111 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 1112 | "dev": true, 1113 | "dependencies": { 1114 | "ansi-regex": "^5.0.1" 1115 | }, 1116 | "engines": { 1117 | "node": ">=8" 1118 | } 1119 | }, 1120 | "node_modules/strip-json-comments": { 1121 | "version": "3.1.1", 1122 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", 1123 | "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", 1124 | "dev": true, 1125 | "engines": { 1126 | "node": ">=8" 1127 | }, 1128 | "funding": { 1129 | "url": "https://github.com/sponsors/sindresorhus" 1130 | } 1131 | }, 1132 | "node_modules/supports-color": { 1133 | "version": "7.2.0", 1134 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 1135 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 1136 | "dev": true, 1137 | "dependencies": { 1138 | "has-flag": "^4.0.0" 1139 | }, 1140 | "engines": { 1141 | "node": ">=8" 1142 | } 1143 | }, 1144 | "node_modules/table": { 1145 | "version": "6.7.2", 1146 | "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", 1147 | "integrity": "sha512-UFZK67uvyNivLeQbVtkiUs8Uuuxv24aSL4/Vil2PJVtMgU8Lx0CYkP12uCGa3kjyQzOSgV1+z9Wkb82fCGsO0g==", 1148 | "dev": true, 1149 | "dependencies": { 1150 | "ajv": "^8.0.1", 1151 | "lodash.clonedeep": "^4.5.0", 1152 | "lodash.truncate": "^4.4.2", 1153 | "slice-ansi": "^4.0.0", 1154 | "string-width": "^4.2.3", 1155 | "strip-ansi": "^6.0.1" 1156 | }, 1157 | "engines": { 1158 | "node": ">=10.0.0" 1159 | } 1160 | }, 1161 | "node_modules/table/node_modules/ajv": { 1162 | "version": "8.6.3", 1163 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", 1164 | "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", 1165 | "dev": true, 1166 | "dependencies": { 1167 | "fast-deep-equal": "^3.1.1", 1168 | "json-schema-traverse": "^1.0.0", 1169 | "require-from-string": "^2.0.2", 1170 | "uri-js": "^4.2.2" 1171 | }, 1172 | "funding": { 1173 | "type": "github", 1174 | "url": "https://github.com/sponsors/epoberezkin" 1175 | } 1176 | }, 1177 | "node_modules/table/node_modules/json-schema-traverse": { 1178 | "version": "1.0.0", 1179 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", 1180 | "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", 1181 | "dev": true 1182 | }, 1183 | "node_modules/text-table": { 1184 | "version": "0.2.0", 1185 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", 1186 | "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", 1187 | "dev": true 1188 | }, 1189 | "node_modules/tunnel": { 1190 | "version": "0.0.6", 1191 | "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", 1192 | "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==", 1193 | "engines": { 1194 | "node": ">=0.6.11 <=0.7.0 || >=0.7.3" 1195 | } 1196 | }, 1197 | "node_modules/type-check": { 1198 | "version": "0.4.0", 1199 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", 1200 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", 1201 | "dev": true, 1202 | "dependencies": { 1203 | "prelude-ls": "^1.2.1" 1204 | }, 1205 | "engines": { 1206 | "node": ">= 0.8.0" 1207 | } 1208 | }, 1209 | "node_modules/type-fest": { 1210 | "version": "0.20.2", 1211 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", 1212 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", 1213 | "dev": true, 1214 | "engines": { 1215 | "node": ">=10" 1216 | }, 1217 | "funding": { 1218 | "url": "https://github.com/sponsors/sindresorhus" 1219 | } 1220 | }, 1221 | "node_modules/uri-js": { 1222 | "version": "4.4.1", 1223 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", 1224 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", 1225 | "dev": true, 1226 | "dependencies": { 1227 | "punycode": "^2.1.0" 1228 | } 1229 | }, 1230 | "node_modules/uuid": { 1231 | "version": "8.3.2", 1232 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", 1233 | "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", 1234 | "bin": { 1235 | "uuid": "dist/bin/uuid" 1236 | } 1237 | }, 1238 | "node_modules/v8-compile-cache": { 1239 | "version": "2.1.0", 1240 | "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", 1241 | "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==", 1242 | "dev": true 1243 | }, 1244 | "node_modules/which": { 1245 | "version": "2.0.2", 1246 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 1247 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 1248 | "dev": true, 1249 | "dependencies": { 1250 | "isexe": "^2.0.0" 1251 | }, 1252 | "bin": { 1253 | "node-which": "bin/node-which" 1254 | }, 1255 | "engines": { 1256 | "node": ">= 8" 1257 | } 1258 | }, 1259 | "node_modules/word-wrap": { 1260 | "version": "1.2.5", 1261 | "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", 1262 | "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", 1263 | "dev": true, 1264 | "engines": { 1265 | "node": ">=0.10.0" 1266 | } 1267 | }, 1268 | "node_modules/wrappy": { 1269 | "version": "1.0.2", 1270 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 1271 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 1272 | "dev": true 1273 | }, 1274 | "node_modules/yallist": { 1275 | "version": "4.0.0", 1276 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", 1277 | "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", 1278 | "dev": true 1279 | } 1280 | }, 1281 | "dependencies": { 1282 | "@actions/core": { 1283 | "version": "1.10.0", 1284 | "resolved": "https://registry.npmjs.org/@actions/core/-/core-1.10.0.tgz", 1285 | "integrity": "sha512-2aZDDa3zrrZbP5ZYg159sNoLRb61nQ7awl5pSvIq5Qpj81vwDzdMRKzkWJGJuwVvWpvZKx7vspJALyvaaIQyug==", 1286 | "requires": { 1287 | "@actions/http-client": "^2.0.1", 1288 | "uuid": "^8.3.2" 1289 | } 1290 | }, 1291 | "@actions/http-client": { 1292 | "version": "2.0.1", 1293 | "resolved": "https://registry.npmjs.org/@actions/http-client/-/http-client-2.0.1.tgz", 1294 | "integrity": "sha512-PIXiMVtz6VvyaRsGY268qvj57hXQEpsYogYOu2nrQhlf+XCGmZstmuZBbAybUl1nQGnvS1k1eEsQ69ZoD7xlSw==", 1295 | "requires": { 1296 | "tunnel": "^0.0.6" 1297 | } 1298 | }, 1299 | "@babel/code-frame": { 1300 | "version": "7.12.11", 1301 | "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.11.tgz", 1302 | "integrity": "sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==", 1303 | "dev": true, 1304 | "requires": { 1305 | "@babel/highlight": "^7.10.4" 1306 | } 1307 | }, 1308 | "@babel/helper-validator-identifier": { 1309 | "version": "7.15.7", 1310 | "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz", 1311 | "integrity": "sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w==", 1312 | "dev": true 1313 | }, 1314 | "@babel/highlight": { 1315 | "version": "7.14.5", 1316 | "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.14.5.tgz", 1317 | "integrity": "sha512-qf9u2WFWVV0MppaL877j2dBtQIDgmidgjGk5VIMw3OadXvYaXn66U1BFlH2t4+t3i+8PhedppRv+i40ABzd+gg==", 1318 | "dev": true, 1319 | "requires": { 1320 | "@babel/helper-validator-identifier": "^7.14.5", 1321 | "chalk": "^2.0.0", 1322 | "js-tokens": "^4.0.0" 1323 | }, 1324 | "dependencies": { 1325 | "ansi-styles": { 1326 | "version": "3.2.1", 1327 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", 1328 | "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", 1329 | "dev": true, 1330 | "requires": { 1331 | "color-convert": "^1.9.0" 1332 | } 1333 | }, 1334 | "chalk": { 1335 | "version": "2.4.2", 1336 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", 1337 | "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", 1338 | "dev": true, 1339 | "requires": { 1340 | "ansi-styles": "^3.2.1", 1341 | "escape-string-regexp": "^1.0.5", 1342 | "supports-color": "^5.3.0" 1343 | } 1344 | }, 1345 | "color-convert": { 1346 | "version": "1.9.3", 1347 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", 1348 | "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", 1349 | "dev": true, 1350 | "requires": { 1351 | "color-name": "1.1.3" 1352 | } 1353 | }, 1354 | "color-name": { 1355 | "version": "1.1.3", 1356 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", 1357 | "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=", 1358 | "dev": true 1359 | }, 1360 | "escape-string-regexp": { 1361 | "version": "1.0.5", 1362 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", 1363 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", 1364 | "dev": true 1365 | }, 1366 | "has-flag": { 1367 | "version": "3.0.0", 1368 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", 1369 | "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", 1370 | "dev": true 1371 | }, 1372 | "supports-color": { 1373 | "version": "5.5.0", 1374 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", 1375 | "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", 1376 | "dev": true, 1377 | "requires": { 1378 | "has-flag": "^3.0.0" 1379 | } 1380 | } 1381 | } 1382 | }, 1383 | "@eslint/eslintrc": { 1384 | "version": "0.4.3", 1385 | "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-0.4.3.tgz", 1386 | "integrity": "sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw==", 1387 | "dev": true, 1388 | "requires": { 1389 | "ajv": "^6.12.4", 1390 | "debug": "^4.1.1", 1391 | "espree": "^7.3.0", 1392 | "globals": "^13.9.0", 1393 | "ignore": "^4.0.6", 1394 | "import-fresh": "^3.2.1", 1395 | "js-yaml": "^3.13.1", 1396 | "minimatch": "^3.0.4", 1397 | "strip-json-comments": "^3.1.1" 1398 | } 1399 | }, 1400 | "@humanwhocodes/config-array": { 1401 | "version": "0.5.0", 1402 | "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.5.0.tgz", 1403 | "integrity": "sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg==", 1404 | "dev": true, 1405 | "requires": { 1406 | "@humanwhocodes/object-schema": "^1.2.0", 1407 | "debug": "^4.1.1", 1408 | "minimatch": "^3.0.4" 1409 | } 1410 | }, 1411 | "@humanwhocodes/object-schema": { 1412 | "version": "1.2.0", 1413 | "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-1.2.0.tgz", 1414 | "integrity": "sha512-wdppn25U8z/2yiaT6YGquE6X8sSv7hNMWSXYSSU1jGv/yd6XqjXgTDJ8KP4NgjTXfJ3GbRjeeb8RTV7a/VpM+w==", 1415 | "dev": true 1416 | }, 1417 | "acorn": { 1418 | "version": "7.4.1", 1419 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", 1420 | "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", 1421 | "dev": true 1422 | }, 1423 | "acorn-jsx": { 1424 | "version": "5.3.2", 1425 | "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", 1426 | "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", 1427 | "dev": true, 1428 | "requires": {} 1429 | }, 1430 | "ajv": { 1431 | "version": "6.12.6", 1432 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", 1433 | "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", 1434 | "dev": true, 1435 | "requires": { 1436 | "fast-deep-equal": "^3.1.1", 1437 | "fast-json-stable-stringify": "^2.0.0", 1438 | "json-schema-traverse": "^0.4.1", 1439 | "uri-js": "^4.2.2" 1440 | } 1441 | }, 1442 | "ansi-colors": { 1443 | "version": "4.1.1", 1444 | "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-4.1.1.tgz", 1445 | "integrity": "sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==", 1446 | "dev": true 1447 | }, 1448 | "ansi-regex": { 1449 | "version": "5.0.1", 1450 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", 1451 | "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", 1452 | "dev": true 1453 | }, 1454 | "ansi-styles": { 1455 | "version": "4.3.0", 1456 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", 1457 | "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", 1458 | "dev": true, 1459 | "requires": { 1460 | "color-convert": "^2.0.1" 1461 | } 1462 | }, 1463 | "argparse": { 1464 | "version": "1.0.10", 1465 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", 1466 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", 1467 | "dev": true, 1468 | "requires": { 1469 | "sprintf-js": "~1.0.2" 1470 | } 1471 | }, 1472 | "astral-regex": { 1473 | "version": "2.0.0", 1474 | "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", 1475 | "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", 1476 | "dev": true 1477 | }, 1478 | "balanced-match": { 1479 | "version": "1.0.2", 1480 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", 1481 | "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", 1482 | "dev": true 1483 | }, 1484 | "brace-expansion": { 1485 | "version": "1.1.11", 1486 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", 1487 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", 1488 | "dev": true, 1489 | "requires": { 1490 | "balanced-match": "^1.0.0", 1491 | "concat-map": "0.0.1" 1492 | } 1493 | }, 1494 | "callsites": { 1495 | "version": "3.1.0", 1496 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", 1497 | "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", 1498 | "dev": true 1499 | }, 1500 | "chalk": { 1501 | "version": "4.1.2", 1502 | "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", 1503 | "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", 1504 | "dev": true, 1505 | "requires": { 1506 | "ansi-styles": "^4.1.0", 1507 | "supports-color": "^7.1.0" 1508 | } 1509 | }, 1510 | "color-convert": { 1511 | "version": "2.0.1", 1512 | "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", 1513 | "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", 1514 | "dev": true, 1515 | "requires": { 1516 | "color-name": "~1.1.4" 1517 | } 1518 | }, 1519 | "color-name": { 1520 | "version": "1.1.4", 1521 | "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", 1522 | "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", 1523 | "dev": true 1524 | }, 1525 | "concat-map": { 1526 | "version": "0.0.1", 1527 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", 1528 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", 1529 | "dev": true 1530 | }, 1531 | "cross-spawn": { 1532 | "version": "7.0.3", 1533 | "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", 1534 | "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", 1535 | "dev": true, 1536 | "requires": { 1537 | "path-key": "^3.1.0", 1538 | "shebang-command": "^2.0.0", 1539 | "which": "^2.0.1" 1540 | } 1541 | }, 1542 | "debug": { 1543 | "version": "4.3.4", 1544 | "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", 1545 | "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", 1546 | "dev": true, 1547 | "requires": { 1548 | "ms": "2.1.2" 1549 | } 1550 | }, 1551 | "deep-is": { 1552 | "version": "0.1.4", 1553 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.4.tgz", 1554 | "integrity": "sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ==", 1555 | "dev": true 1556 | }, 1557 | "doctrine": { 1558 | "version": "3.0.0", 1559 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", 1560 | "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", 1561 | "dev": true, 1562 | "requires": { 1563 | "esutils": "^2.0.2" 1564 | } 1565 | }, 1566 | "emoji-regex": { 1567 | "version": "8.0.0", 1568 | "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", 1569 | "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", 1570 | "dev": true 1571 | }, 1572 | "enquirer": { 1573 | "version": "2.3.6", 1574 | "resolved": "https://registry.npmjs.org/enquirer/-/enquirer-2.3.6.tgz", 1575 | "integrity": "sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==", 1576 | "dev": true, 1577 | "requires": { 1578 | "ansi-colors": "^4.1.1" 1579 | } 1580 | }, 1581 | "escape-string-regexp": { 1582 | "version": "4.0.0", 1583 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", 1584 | "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", 1585 | "dev": true 1586 | }, 1587 | "eslint": { 1588 | "version": "7.32.0", 1589 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-7.32.0.tgz", 1590 | "integrity": "sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA==", 1591 | "dev": true, 1592 | "requires": { 1593 | "@babel/code-frame": "7.12.11", 1594 | "@eslint/eslintrc": "^0.4.3", 1595 | "@humanwhocodes/config-array": "^0.5.0", 1596 | "ajv": "^6.10.0", 1597 | "chalk": "^4.0.0", 1598 | "cross-spawn": "^7.0.2", 1599 | "debug": "^4.0.1", 1600 | "doctrine": "^3.0.0", 1601 | "enquirer": "^2.3.5", 1602 | "escape-string-regexp": "^4.0.0", 1603 | "eslint-scope": "^5.1.1", 1604 | "eslint-utils": "^2.1.0", 1605 | "eslint-visitor-keys": "^2.0.0", 1606 | "espree": "^7.3.1", 1607 | "esquery": "^1.4.0", 1608 | "esutils": "^2.0.2", 1609 | "fast-deep-equal": "^3.1.3", 1610 | "file-entry-cache": "^6.0.1", 1611 | "functional-red-black-tree": "^1.0.1", 1612 | "glob-parent": "^5.1.2", 1613 | "globals": "^13.6.0", 1614 | "ignore": "^4.0.6", 1615 | "import-fresh": "^3.0.0", 1616 | "imurmurhash": "^0.1.4", 1617 | "is-glob": "^4.0.0", 1618 | "js-yaml": "^3.13.1", 1619 | "json-stable-stringify-without-jsonify": "^1.0.1", 1620 | "levn": "^0.4.1", 1621 | "lodash.merge": "^4.6.2", 1622 | "minimatch": "^3.0.4", 1623 | "natural-compare": "^1.4.0", 1624 | "optionator": "^0.9.1", 1625 | "progress": "^2.0.0", 1626 | "regexpp": "^3.1.0", 1627 | "semver": "^7.2.1", 1628 | "strip-ansi": "^6.0.0", 1629 | "strip-json-comments": "^3.1.0", 1630 | "table": "^6.0.9", 1631 | "text-table": "^0.2.0", 1632 | "v8-compile-cache": "^2.0.3" 1633 | } 1634 | }, 1635 | "eslint-scope": { 1636 | "version": "5.1.1", 1637 | "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", 1638 | "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", 1639 | "dev": true, 1640 | "requires": { 1641 | "esrecurse": "^4.3.0", 1642 | "estraverse": "^4.1.1" 1643 | } 1644 | }, 1645 | "eslint-utils": { 1646 | "version": "2.1.0", 1647 | "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-2.1.0.tgz", 1648 | "integrity": "sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==", 1649 | "dev": true, 1650 | "requires": { 1651 | "eslint-visitor-keys": "^1.1.0" 1652 | }, 1653 | "dependencies": { 1654 | "eslint-visitor-keys": { 1655 | "version": "1.3.0", 1656 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", 1657 | "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", 1658 | "dev": true 1659 | } 1660 | } 1661 | }, 1662 | "eslint-visitor-keys": { 1663 | "version": "2.1.0", 1664 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz", 1665 | "integrity": "sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw==", 1666 | "dev": true 1667 | }, 1668 | "espree": { 1669 | "version": "7.3.1", 1670 | "resolved": "https://registry.npmjs.org/espree/-/espree-7.3.1.tgz", 1671 | "integrity": "sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==", 1672 | "dev": true, 1673 | "requires": { 1674 | "acorn": "^7.4.0", 1675 | "acorn-jsx": "^5.3.1", 1676 | "eslint-visitor-keys": "^1.3.0" 1677 | }, 1678 | "dependencies": { 1679 | "eslint-visitor-keys": { 1680 | "version": "1.3.0", 1681 | "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", 1682 | "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", 1683 | "dev": true 1684 | } 1685 | } 1686 | }, 1687 | "esprima": { 1688 | "version": "4.0.1", 1689 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", 1690 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", 1691 | "dev": true 1692 | }, 1693 | "esquery": { 1694 | "version": "1.4.0", 1695 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", 1696 | "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", 1697 | "dev": true, 1698 | "requires": { 1699 | "estraverse": "^5.1.0" 1700 | }, 1701 | "dependencies": { 1702 | "estraverse": { 1703 | "version": "5.2.0", 1704 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", 1705 | "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", 1706 | "dev": true 1707 | } 1708 | } 1709 | }, 1710 | "esrecurse": { 1711 | "version": "4.3.0", 1712 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", 1713 | "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", 1714 | "dev": true, 1715 | "requires": { 1716 | "estraverse": "^5.2.0" 1717 | }, 1718 | "dependencies": { 1719 | "estraverse": { 1720 | "version": "5.2.0", 1721 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", 1722 | "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", 1723 | "dev": true 1724 | } 1725 | } 1726 | }, 1727 | "estraverse": { 1728 | "version": "4.3.0", 1729 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.3.0.tgz", 1730 | "integrity": "sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==", 1731 | "dev": true 1732 | }, 1733 | "esutils": { 1734 | "version": "2.0.3", 1735 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.3.tgz", 1736 | "integrity": "sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==", 1737 | "dev": true 1738 | }, 1739 | "fast-deep-equal": { 1740 | "version": "3.1.3", 1741 | "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", 1742 | "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", 1743 | "dev": true 1744 | }, 1745 | "fast-json-stable-stringify": { 1746 | "version": "2.1.0", 1747 | "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", 1748 | "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", 1749 | "dev": true 1750 | }, 1751 | "fast-levenshtein": { 1752 | "version": "2.0.6", 1753 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz", 1754 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=", 1755 | "dev": true 1756 | }, 1757 | "file-entry-cache": { 1758 | "version": "6.0.1", 1759 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-6.0.1.tgz", 1760 | "integrity": "sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==", 1761 | "dev": true, 1762 | "requires": { 1763 | "flat-cache": "^3.0.4" 1764 | } 1765 | }, 1766 | "flat-cache": { 1767 | "version": "3.0.4", 1768 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-3.0.4.tgz", 1769 | "integrity": "sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==", 1770 | "dev": true, 1771 | "requires": { 1772 | "flatted": "^3.1.0", 1773 | "rimraf": "^3.0.2" 1774 | } 1775 | }, 1776 | "flatted": { 1777 | "version": "3.2.2", 1778 | "resolved": "https://registry.npmjs.org/flatted/-/flatted-3.2.2.tgz", 1779 | "integrity": "sha512-JaTY/wtrcSyvXJl4IMFHPKyFur1sE9AUqc0QnhOaJ0CxHtAoIV8pYDzeEfAaNEtGkOfq4gr3LBFmdXW5mOQFnA==", 1780 | "dev": true 1781 | }, 1782 | "fs.realpath": { 1783 | "version": "1.0.0", 1784 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", 1785 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", 1786 | "dev": true 1787 | }, 1788 | "functional-red-black-tree": { 1789 | "version": "1.0.1", 1790 | "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", 1791 | "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", 1792 | "dev": true 1793 | }, 1794 | "glob": { 1795 | "version": "7.2.0", 1796 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", 1797 | "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", 1798 | "dev": true, 1799 | "requires": { 1800 | "fs.realpath": "^1.0.0", 1801 | "inflight": "^1.0.4", 1802 | "inherits": "2", 1803 | "minimatch": "^3.0.4", 1804 | "once": "^1.3.0", 1805 | "path-is-absolute": "^1.0.0" 1806 | } 1807 | }, 1808 | "glob-parent": { 1809 | "version": "5.1.2", 1810 | "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", 1811 | "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", 1812 | "dev": true, 1813 | "requires": { 1814 | "is-glob": "^4.0.1" 1815 | } 1816 | }, 1817 | "globals": { 1818 | "version": "13.11.0", 1819 | "resolved": "https://registry.npmjs.org/globals/-/globals-13.11.0.tgz", 1820 | "integrity": "sha512-08/xrJ7wQjK9kkkRoI3OFUBbLx4f+6x3SGwcPvQ0QH6goFDrOU2oyAWrmh3dJezu65buo+HBMzAMQy6rovVC3g==", 1821 | "dev": true, 1822 | "requires": { 1823 | "type-fest": "^0.20.2" 1824 | } 1825 | }, 1826 | "has-flag": { 1827 | "version": "4.0.0", 1828 | "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", 1829 | "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", 1830 | "dev": true 1831 | }, 1832 | "ignore": { 1833 | "version": "4.0.6", 1834 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", 1835 | "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", 1836 | "dev": true 1837 | }, 1838 | "import-fresh": { 1839 | "version": "3.2.1", 1840 | "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.2.1.tgz", 1841 | "integrity": "sha512-6e1q1cnWP2RXD9/keSkxHScg508CdXqXWgWBaETNhyuBFz+kUZlKboh+ISK+bU++DmbHimVBrOz/zzPe0sZ3sQ==", 1842 | "dev": true, 1843 | "requires": { 1844 | "parent-module": "^1.0.0", 1845 | "resolve-from": "^4.0.0" 1846 | } 1847 | }, 1848 | "imurmurhash": { 1849 | "version": "0.1.4", 1850 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", 1851 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", 1852 | "dev": true 1853 | }, 1854 | "inflight": { 1855 | "version": "1.0.6", 1856 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", 1857 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", 1858 | "dev": true, 1859 | "requires": { 1860 | "once": "^1.3.0", 1861 | "wrappy": "1" 1862 | } 1863 | }, 1864 | "inherits": { 1865 | "version": "2.0.4", 1866 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", 1867 | "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", 1868 | "dev": true 1869 | }, 1870 | "is-extglob": { 1871 | "version": "2.1.1", 1872 | "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", 1873 | "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", 1874 | "dev": true 1875 | }, 1876 | "is-fullwidth-code-point": { 1877 | "version": "3.0.0", 1878 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", 1879 | "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", 1880 | "dev": true 1881 | }, 1882 | "is-glob": { 1883 | "version": "4.0.1", 1884 | "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", 1885 | "integrity": "sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==", 1886 | "dev": true, 1887 | "requires": { 1888 | "is-extglob": "^2.1.1" 1889 | } 1890 | }, 1891 | "isexe": { 1892 | "version": "2.0.0", 1893 | "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", 1894 | "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", 1895 | "dev": true 1896 | }, 1897 | "js-tokens": { 1898 | "version": "4.0.0", 1899 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", 1900 | "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", 1901 | "dev": true 1902 | }, 1903 | "js-yaml": { 1904 | "version": "3.13.1", 1905 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", 1906 | "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", 1907 | "dev": true, 1908 | "requires": { 1909 | "argparse": "^1.0.7", 1910 | "esprima": "^4.0.0" 1911 | } 1912 | }, 1913 | "json-schema-traverse": { 1914 | "version": "0.4.1", 1915 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", 1916 | "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", 1917 | "dev": true 1918 | }, 1919 | "json-stable-stringify-without-jsonify": { 1920 | "version": "1.0.1", 1921 | "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", 1922 | "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", 1923 | "dev": true 1924 | }, 1925 | "levn": { 1926 | "version": "0.4.1", 1927 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.4.1.tgz", 1928 | "integrity": "sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==", 1929 | "dev": true, 1930 | "requires": { 1931 | "prelude-ls": "^1.2.1", 1932 | "type-check": "~0.4.0" 1933 | } 1934 | }, 1935 | "lodash.clonedeep": { 1936 | "version": "4.5.0", 1937 | "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", 1938 | "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=", 1939 | "dev": true 1940 | }, 1941 | "lodash.merge": { 1942 | "version": "4.6.2", 1943 | "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", 1944 | "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==", 1945 | "dev": true 1946 | }, 1947 | "lodash.truncate": { 1948 | "version": "4.4.2", 1949 | "resolved": "https://registry.npmjs.org/lodash.truncate/-/lodash.truncate-4.4.2.tgz", 1950 | "integrity": "sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=", 1951 | "dev": true 1952 | }, 1953 | "lru-cache": { 1954 | "version": "6.0.0", 1955 | "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", 1956 | "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", 1957 | "dev": true, 1958 | "requires": { 1959 | "yallist": "^4.0.0" 1960 | } 1961 | }, 1962 | "minimatch": { 1963 | "version": "3.1.2", 1964 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", 1965 | "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", 1966 | "dev": true, 1967 | "requires": { 1968 | "brace-expansion": "^1.1.7" 1969 | } 1970 | }, 1971 | "ms": { 1972 | "version": "2.1.2", 1973 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", 1974 | "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", 1975 | "dev": true 1976 | }, 1977 | "natural-compare": { 1978 | "version": "1.4.0", 1979 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", 1980 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", 1981 | "dev": true 1982 | }, 1983 | "once": { 1984 | "version": "1.4.0", 1985 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", 1986 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", 1987 | "dev": true, 1988 | "requires": { 1989 | "wrappy": "1" 1990 | } 1991 | }, 1992 | "optionator": { 1993 | "version": "0.9.1", 1994 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.9.1.tgz", 1995 | "integrity": "sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==", 1996 | "dev": true, 1997 | "requires": { 1998 | "deep-is": "^0.1.3", 1999 | "fast-levenshtein": "^2.0.6", 2000 | "levn": "^0.4.1", 2001 | "prelude-ls": "^1.2.1", 2002 | "type-check": "^0.4.0", 2003 | "word-wrap": "^1.2.3" 2004 | } 2005 | }, 2006 | "parent-module": { 2007 | "version": "1.0.1", 2008 | "resolved": "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz", 2009 | "integrity": "sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==", 2010 | "dev": true, 2011 | "requires": { 2012 | "callsites": "^3.0.0" 2013 | } 2014 | }, 2015 | "path-is-absolute": { 2016 | "version": "1.0.1", 2017 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", 2018 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", 2019 | "dev": true 2020 | }, 2021 | "path-key": { 2022 | "version": "3.1.1", 2023 | "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", 2024 | "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", 2025 | "dev": true 2026 | }, 2027 | "prelude-ls": { 2028 | "version": "1.2.1", 2029 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.2.1.tgz", 2030 | "integrity": "sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==", 2031 | "dev": true 2032 | }, 2033 | "progress": { 2034 | "version": "2.0.3", 2035 | "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", 2036 | "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", 2037 | "dev": true 2038 | }, 2039 | "punycode": { 2040 | "version": "2.1.1", 2041 | "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", 2042 | "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", 2043 | "dev": true 2044 | }, 2045 | "regexpp": { 2046 | "version": "3.2.0", 2047 | "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-3.2.0.tgz", 2048 | "integrity": "sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==", 2049 | "dev": true 2050 | }, 2051 | "require-from-string": { 2052 | "version": "2.0.2", 2053 | "resolved": "https://registry.npmjs.org/require-from-string/-/require-from-string-2.0.2.tgz", 2054 | "integrity": "sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==", 2055 | "dev": true 2056 | }, 2057 | "resolve-from": { 2058 | "version": "4.0.0", 2059 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-4.0.0.tgz", 2060 | "integrity": "sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==", 2061 | "dev": true 2062 | }, 2063 | "rimraf": { 2064 | "version": "3.0.2", 2065 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", 2066 | "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", 2067 | "dev": true, 2068 | "requires": { 2069 | "glob": "^7.1.3" 2070 | } 2071 | }, 2072 | "semver": { 2073 | "version": "7.5.4", 2074 | "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", 2075 | "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", 2076 | "dev": true, 2077 | "requires": { 2078 | "lru-cache": "^6.0.0" 2079 | } 2080 | }, 2081 | "shebang-command": { 2082 | "version": "2.0.0", 2083 | "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", 2084 | "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", 2085 | "dev": true, 2086 | "requires": { 2087 | "shebang-regex": "^3.0.0" 2088 | } 2089 | }, 2090 | "shebang-regex": { 2091 | "version": "3.0.0", 2092 | "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", 2093 | "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", 2094 | "dev": true 2095 | }, 2096 | "slice-ansi": { 2097 | "version": "4.0.0", 2098 | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", 2099 | "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", 2100 | "dev": true, 2101 | "requires": { 2102 | "ansi-styles": "^4.0.0", 2103 | "astral-regex": "^2.0.0", 2104 | "is-fullwidth-code-point": "^3.0.0" 2105 | } 2106 | }, 2107 | "sprintf-js": { 2108 | "version": "1.0.3", 2109 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", 2110 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", 2111 | "dev": true 2112 | }, 2113 | "string-width": { 2114 | "version": "4.2.3", 2115 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", 2116 | "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", 2117 | "dev": true, 2118 | "requires": { 2119 | "emoji-regex": "^8.0.0", 2120 | "is-fullwidth-code-point": "^3.0.0", 2121 | "strip-ansi": "^6.0.1" 2122 | } 2123 | }, 2124 | "strip-ansi": { 2125 | "version": "6.0.1", 2126 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", 2127 | "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", 2128 | "dev": true, 2129 | "requires": { 2130 | "ansi-regex": "^5.0.1" 2131 | } 2132 | }, 2133 | "strip-json-comments": { 2134 | "version": "3.1.1", 2135 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", 2136 | "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", 2137 | "dev": true 2138 | }, 2139 | "supports-color": { 2140 | "version": "7.2.0", 2141 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", 2142 | "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", 2143 | "dev": true, 2144 | "requires": { 2145 | "has-flag": "^4.0.0" 2146 | } 2147 | }, 2148 | "table": { 2149 | "version": "6.7.2", 2150 | "resolved": "https://registry.npmjs.org/table/-/table-6.7.2.tgz", 2151 | "integrity": "sha512-UFZK67uvyNivLeQbVtkiUs8Uuuxv24aSL4/Vil2PJVtMgU8Lx0CYkP12uCGa3kjyQzOSgV1+z9Wkb82fCGsO0g==", 2152 | "dev": true, 2153 | "requires": { 2154 | "ajv": "^8.0.1", 2155 | "lodash.clonedeep": "^4.5.0", 2156 | "lodash.truncate": "^4.4.2", 2157 | "slice-ansi": "^4.0.0", 2158 | "string-width": "^4.2.3", 2159 | "strip-ansi": "^6.0.1" 2160 | }, 2161 | "dependencies": { 2162 | "ajv": { 2163 | "version": "8.6.3", 2164 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-8.6.3.tgz", 2165 | "integrity": "sha512-SMJOdDP6LqTkD0Uq8qLi+gMwSt0imXLSV080qFVwJCpH9U6Mb+SUGHAXM0KNbcBPguytWyvFxcHgMLe2D2XSpw==", 2166 | "dev": true, 2167 | "requires": { 2168 | "fast-deep-equal": "^3.1.1", 2169 | "json-schema-traverse": "^1.0.0", 2170 | "require-from-string": "^2.0.2", 2171 | "uri-js": "^4.2.2" 2172 | } 2173 | }, 2174 | "json-schema-traverse": { 2175 | "version": "1.0.0", 2176 | "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz", 2177 | "integrity": "sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==", 2178 | "dev": true 2179 | } 2180 | } 2181 | }, 2182 | "text-table": { 2183 | "version": "0.2.0", 2184 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz", 2185 | "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", 2186 | "dev": true 2187 | }, 2188 | "tunnel": { 2189 | "version": "0.0.6", 2190 | "resolved": "https://registry.npmjs.org/tunnel/-/tunnel-0.0.6.tgz", 2191 | "integrity": "sha512-1h/Lnq9yajKY2PEbBadPXj3VxsDDu844OnaAo52UVmIzIvwwtBPIuNvkjuzBlTWpfJyUbG3ez0KSBibQkj4ojg==" 2192 | }, 2193 | "type-check": { 2194 | "version": "0.4.0", 2195 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz", 2196 | "integrity": "sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==", 2197 | "dev": true, 2198 | "requires": { 2199 | "prelude-ls": "^1.2.1" 2200 | } 2201 | }, 2202 | "type-fest": { 2203 | "version": "0.20.2", 2204 | "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz", 2205 | "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==", 2206 | "dev": true 2207 | }, 2208 | "uri-js": { 2209 | "version": "4.4.1", 2210 | "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", 2211 | "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", 2212 | "dev": true, 2213 | "requires": { 2214 | "punycode": "^2.1.0" 2215 | } 2216 | }, 2217 | "uuid": { 2218 | "version": "8.3.2", 2219 | "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", 2220 | "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==" 2221 | }, 2222 | "v8-compile-cache": { 2223 | "version": "2.1.0", 2224 | "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.1.0.tgz", 2225 | "integrity": "sha512-usZBT3PW+LOjM25wbqIlZwPeJV+3OSz3M1k1Ws8snlW39dZyYL9lOGC5FgPVHfk0jKmjiDV8Z0mIbVQPiwFs7g==", 2226 | "dev": true 2227 | }, 2228 | "which": { 2229 | "version": "2.0.2", 2230 | "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", 2231 | "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", 2232 | "dev": true, 2233 | "requires": { 2234 | "isexe": "^2.0.0" 2235 | } 2236 | }, 2237 | "word-wrap": { 2238 | "version": "1.2.5", 2239 | "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.5.tgz", 2240 | "integrity": "sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==", 2241 | "dev": true 2242 | }, 2243 | "wrappy": { 2244 | "version": "1.0.2", 2245 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", 2246 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", 2247 | "dev": true 2248 | }, 2249 | "yallist": { 2250 | "version": "4.0.0", 2251 | "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", 2252 | "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", 2253 | "dev": true 2254 | } 2255 | } 2256 | } 2257 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "msvc-dev-cmd", 3 | "version": "1.13.0-dev", 4 | "description": "GitHub Action to setup Developer Command Prompt for Microsoft Visual C++", 5 | "main": "index.js", 6 | "scripts": { 7 | "lint": "eslint index.js" 8 | }, 9 | "repository": { 10 | "type": "git", 11 | "url": "git+https://github.com/ilammy/msvc-dev-cmd.git" 12 | }, 13 | "keywords": [ 14 | "GitHub", 15 | "Actions", 16 | "Developer Command Prompt", 17 | "Microsoft Visual Studio", 18 | "Microsoft Visual C++", 19 | "Visual Studio", 20 | "Visual C++", 21 | "vcvarsall.bat" 22 | ], 23 | "author": "ilammy ", 24 | "license": "MIT", 25 | "bugs": { 26 | "url": "https://github.com/ilammy/msvc-dev-cmd/issues" 27 | }, 28 | "homepage": "https://github.com/ilammy/msvc-dev-cmd#readme", 29 | "dependencies": { 30 | "@actions/core": "^1.10.0" 31 | }, 32 | "devDependencies": { 33 | "eslint": "^7" 34 | } 35 | } 36 | --------------------------------------------------------------------------------