├── .nvmrc ├── .editorconfig ├── .gitignore ├── tsconfig.json ├── .github └── workflows │ ├── test.yml │ └── release.yml ├── LICENSE ├── package.json ├── README.md ├── src └── index.ts └── pnpm-lock.yaml /.nvmrc: -------------------------------------------------------------------------------- 1 | v12.18.2 2 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = tab 5 | end_of_line = lf 6 | charset = utf-8 7 | trim_trailing_whitespace = true 8 | insert_final_newline = true 9 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # macOS 2 | .DS_Store 3 | 4 | # Logs 5 | logs 6 | *.log 7 | npm-debug.log* 8 | yarn-debug.log* 9 | yarn-error.log* 10 | lerna-debug.log* 11 | 12 | # Dependency directories 13 | node_modules/ 14 | 15 | # Output of 'npm pack' 16 | *.tgz 17 | 18 | # dotenv environment variables file 19 | .env 20 | .env.test 21 | 22 | # Distribution 23 | dist 24 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "moduleResolution": "node", 4 | "isolatedModules": true, 5 | "esModuleInterop": true, 6 | "outDir": "dist", 7 | "declaration": true, 8 | 9 | // Target Node.js v12 10 | "lib": ["es2019"], 11 | "module": "commonjs", 12 | "target": "es2019" 13 | }, 14 | "include": [ 15 | "src/index.ts" 16 | ] 17 | } -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- 1 | name: Test 2 | 3 | on: 4 | push: 5 | branches: [develop] 6 | pull_request: 7 | branches: [master, develop] 8 | 9 | jobs: 10 | test: 11 | name: Test 12 | runs-on: ubuntu-latest 13 | 14 | strategy: 15 | matrix: 16 | node-version: [12.x, 14.x] 17 | 18 | steps: 19 | - name: Checkout 20 | uses: actions/checkout@v2 21 | - name: Use Node.js ${{ matrix.node-version }} 22 | uses: actions/setup-node@v1 23 | with: 24 | node-version: ${{ matrix.node-version }} 25 | - name: Install dependencies 26 | run: npx ci 27 | - name: Build 28 | run: npm run build 29 | - name: Lint 30 | run: npm run lint 31 | - name: Test 32 | run: npm run test --if-present 33 | -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- 1 | name: Release 2 | 3 | on: 4 | push: 5 | branches: master 6 | 7 | jobs: 8 | release: 9 | name: Release 10 | runs-on: ubuntu-latest 11 | 12 | steps: 13 | - name: Checkout 14 | uses: actions/checkout@v2 15 | - name: Use Node.js ${{ matrix.node-version }} 16 | uses: actions/setup-node@v1 17 | with: 18 | node-version: 14.x 19 | - name: Install dependencies 20 | run: npx ci 21 | - name: Build 22 | run: npm run build 23 | - name: Lint 24 | run: npm run lint 25 | - name: Test 26 | run: npm run test --if-present 27 | - name: Release 28 | env: 29 | GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} 30 | NPM_TOKEN: ${{ secrets.NPM_TOKEN }} 31 | run: npx semantic-release 32 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) Hiroki Osame 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dbgr", 3 | "version": "0.0.0-semantic-release", 4 | "description": "Lightweight debugger for Node.js", 5 | "keywords": [ 6 | "debugger", 7 | "node.js", 8 | "lightweight" 9 | ], 10 | "license": "MIT", 11 | "repository": "privatenumber/dbgr", 12 | "funding": "https://github.com/privatenumber/dbgr?sponsor=1", 13 | "author": { 14 | "name": "Hiroki Osame", 15 | "email": "hiroki.osame@gmail.com" 16 | }, 17 | "files": [ 18 | "dist" 19 | ], 20 | "main": "dist/index.js", 21 | "types": "dist/index.d.ts", 22 | "scripts": { 23 | "build": "tsc", 24 | "start": "node dist", 25 | "lint": "eslint ." 26 | }, 27 | "husky": { 28 | "hooks": { 29 | "pre-commit": "lint-staged" 30 | } 31 | }, 32 | "lint-staged": { 33 | "*.ts": "eslint" 34 | }, 35 | "dependencies": { 36 | "acorn-loose": "^8.0.2", 37 | "caller-path": "^3.0.0", 38 | "callsites": "^3.1.0", 39 | "esbuild": "^0.11.12", 40 | "estree-walker": "^2.0.2" 41 | }, 42 | "devDependencies": { 43 | "@pvtnbr/eslint-config-typescript": "^0.1.14", 44 | "@types/estree": "^0.0.47", 45 | "@types/node": "^14.14.41", 46 | "eslint": "^7.24.0", 47 | "esno": "^0.5.0", 48 | "husky": "^4.0.0", 49 | "lint-staged": "^10.5.4", 50 | "typescript": "^4.2.4" 51 | }, 52 | "eslintConfig": { 53 | "extends": "@pvtnbr/eslint-config-typescript" 54 | } 55 | } 56 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # dbgr 2 | 3 | **dbgr** is a lightweight debugger function that pauses your script, watches the current file for any changes and only re-runs the specific code that's passed in to it. It's just like `debugger` but requires no IDE or browser dev-tools integrations. 4 | 5 | 6 | If you like this project, please star it & [follow me](https://github.com/privatenumber) to see what other cool projects I'm working on! ❤️ 7 | 8 | ## 🙋‍♂️ Why? 9 | You can set breakpoints in Node.js with breakpoints or `debugger` statements, but it could be a hassle to set up and can slow down your script. 10 | 11 | When you're debugging something heavy with slow startup (eg. server, headless Chrome, etc), you want to use something simple & light to debug. 12 | 13 | ## 🚀 Install 14 | ```sh 15 | npm i -D dbgr 16 | ``` 17 | 18 | ## 🚦 Quick Setup 19 | 20 | ```js 21 | import dbgr from 'dbgr' 22 | 23 | // Some async process 24 | (async () => { 25 | 26 | // ... 27 | 28 | await dbgr((resume) => { 29 | console.log('The debugger has started'); 30 | 31 | // Write code here and hit save to 32 | // automatically re-run this function 33 | 34 | // Call resume() and save to resume the debugger 35 | 36 | // ↓ The eval below is necessary for this to work 37 | }, _ => eval(_)) 38 | })(); 39 | ``` 40 | 41 | ## 🙋‍♀️ FAQ 42 | ### How does it work? 43 | Upon invoking dbgr, it detects the file path of the caller by using [V8 stack trace API](https://v8.dev/docs/stack-trace-api) via [callsites](https://github.com/sindresorhus/callsites). It then watches the file for changes using [`fs.watch`](https://nodejs.org/docs/latest/api/fs.html#fs_fs_watch_filename_options_listener). When a change is detected, it parses the source code using [acorn](https://github.com/acornjs/acorn) to extract the specific function passed into dbgr. It then passes it into the `_ => eval(_)` to run in the original context. 44 | 45 | ### Does it work in TypeScript files? 46 | Yes. While the AST parser acorn is designed for ES parsing, TS files can be loosely parsed via [acorn-loose](https://github.com/acornjs/acorn/tree/master/acorn-loose), and the content inside the dbgr hook has the types stripped via [esbuild](https://esbuild.github.io/) for it to be "safely" `eval()`'d by the JavaScript runtime. 47 | -------------------------------------------------------------------------------- /src/index.ts: -------------------------------------------------------------------------------- 1 | import fs from 'fs'; 2 | import assert from 'assert'; 3 | import callsites from 'callsites'; 4 | import { parse, Node } from 'acorn-loose'; 5 | import { walk } from 'estree-walker'; 6 | import { transform } from 'esbuild'; 7 | // Only installed @types/estree 8 | // eslint-disable-next-line import/no-unresolved 9 | import { BaseNode, CallExpression, Identifier } from 'estree'; 10 | 11 | /** 12 | * Why use estree-walker over acorn-walk? 13 | * 14 | * acorn-walk's traverser is recursive and designed in a way where the callbacks 15 | * on the way back up rather than on the way down. This makes it unoptimal for when 16 | * you're implementing a "search" and you don't need to traverse the rest of the tree 17 | * once you've found the target. 18 | * 19 | * Furthermore, estree-walker has an enter/leave API, which is optimal for scope analysis 20 | * https://github.com/eslint/eslint-scope 21 | * 22 | * Might use this in the future to detect the exact instance of dbgr 23 | * 24 | */ 25 | 26 | const getFileCode = async (filePath: string) => (await fs.promises.readFile(filePath)).toString(); 27 | 28 | const isCallExpression = (node: BaseNode): node is CallExpression => node.type === 'CallExpression'; 29 | const isIdentifier = (node: BaseNode): node is Identifier => node.type === 'Identifier'; 30 | 31 | function getCallerFilePath() { 32 | const stack = callsites(); 33 | const currentFilePath = stack.shift().getFileName(); 34 | let callerFilePath: string; 35 | while (stack.length > 0) { 36 | callerFilePath = stack.shift().getFileName(); 37 | 38 | if (currentFilePath !== callerFilePath) { 39 | break; 40 | } 41 | } 42 | 43 | return callerFilePath; 44 | } 45 | 46 | function findNode( 47 | fileCode: string, 48 | conditionCallback: (node: BaseNode) => BaseNode | void, 49 | ) { 50 | const ast = parse(fileCode, { 51 | ecmaVersion: 'latest', 52 | sourceType: 'module', 53 | }); 54 | 55 | let nodeString: string; 56 | walk(ast, { 57 | enter(node) { 58 | if (nodeString) { 59 | this.skip(); 60 | return; 61 | } 62 | 63 | const nodeMatch = conditionCallback(node); 64 | if (nodeMatch) { 65 | nodeString = fileCode.slice( 66 | (nodeMatch as Node).start, 67 | (nodeMatch as Node).end, 68 | ); 69 | } 70 | }, 71 | }); 72 | 73 | return nodeString; 74 | } 75 | 76 | async function getDbgrHookCode(fileCode: string, isTs: boolean) { 77 | let dbgrHookCode = findNode(fileCode, (node) => { 78 | if ( 79 | isCallExpression(node) 80 | && isIdentifier(node.callee) 81 | && node.callee.name === 'dbgr' 82 | ) { 83 | const [dbgrHook, evalCallback] = node.arguments; 84 | assert( 85 | dbgrHook?.type.endsWith('FunctionExpression'), 86 | 'Dbgr hook function is missing', 87 | ); 88 | assert( 89 | evalCallback?.type.endsWith('FunctionExpression'), 90 | 'Eval callback function is missing', 91 | ); 92 | return dbgrHook; 93 | } 94 | }); 95 | 96 | assert(dbgrHookCode, 'Dbgr call not found'); 97 | 98 | // Convert function declaration to expression 99 | dbgrHookCode = `(${dbgrHookCode})`; 100 | 101 | if (isTs) { 102 | const { code } = await transform(dbgrHookCode, { 103 | loader: 'ts', 104 | }); 105 | dbgrHookCode = code; 106 | } 107 | 108 | return dbgrHookCode; 109 | } 110 | 111 | class Deferred { 112 | $: Promise; 113 | 114 | isResolved = false; 115 | 116 | #resolve: (value) => void; 117 | 118 | #reject: (value) => void; 119 | 120 | constructor() { 121 | this.$ = new Promise((resolve, reject) => { 122 | this.#resolve = resolve; 123 | this.#reject = reject; 124 | }); 125 | 126 | this.resolve = this.resolve.bind(this); 127 | } 128 | 129 | resolve(value): void { 130 | this.isResolved = true; 131 | this.#resolve(value); 132 | } 133 | } 134 | 135 | type DbgrHook = (resume?) => void | Promise; 136 | 137 | async function dbgr( 138 | dbgrHook: DbgrHook, 139 | evalCallback: (_: string) => DbgrHook, 140 | ): Promise { 141 | assert( 142 | typeof dbgrHook === 'function', 143 | 'Dbgr hook must be a function', 144 | ); 145 | assert( 146 | ( 147 | typeof evalCallback === 'function' 148 | && evalCallback.length === 1 149 | && /\(?_\)?\s?=>\s?eval\(_\)/.test(evalCallback.toString()) 150 | ), 151 | 'Invalid eval callback', 152 | ); 153 | 154 | const callerFilePath = getCallerFilePath(); 155 | const isTs = callerFilePath.endsWith('.ts'); 156 | let lastCode = await getFileCode(callerFilePath); 157 | let lastDbgrHookCode = await getDbgrHookCode(lastCode, isTs); 158 | 159 | const deferred = new Deferred(); 160 | 161 | await dbgrHook(deferred.resolve); 162 | 163 | let watcher: fs.FSWatcher; 164 | if (!deferred.isResolved) { 165 | watcher = fs.watch(callerFilePath, async (eventName) => { 166 | if (eventName !== 'change') { 167 | return; 168 | } 169 | 170 | const newCode = await getFileCode(callerFilePath); 171 | if (newCode === lastCode) { 172 | return; 173 | } 174 | 175 | lastCode = newCode; 176 | 177 | const dbgrHookCode = await getDbgrHookCode(newCode, isTs); 178 | 179 | if (dbgrHookCode === lastDbgrHookCode) { 180 | return; 181 | } 182 | 183 | lastDbgrHookCode = dbgrHookCode; 184 | 185 | evalCallback(dbgrHookCode)(deferred.resolve); 186 | }); 187 | } 188 | 189 | await deferred.$; 190 | 191 | if (watcher) { 192 | watcher.close(); 193 | } 194 | } 195 | 196 | export = dbgr; 197 | -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- 1 | lockfileVersion: 5.3 2 | 3 | specifiers: 4 | '@pvtnbr/eslint-config-typescript': ^0.1.14 5 | '@types/estree': ^0.0.47 6 | '@types/node': ^14.14.41 7 | acorn-loose: ^8.0.2 8 | caller-path: ^3.0.0 9 | callsites: ^3.1.0 10 | esbuild: ^0.11.12 11 | eslint: ^7.24.0 12 | esno: ^0.5.0 13 | estree-walker: ^2.0.2 14 | husky: ^4.0.0 15 | lint-staged: ^10.5.4 16 | typescript: ^4.2.4 17 | 18 | dependencies: 19 | acorn-loose: 8.0.2 20 | caller-path: 3.0.0 21 | callsites: 3.1.0 22 | esbuild: 0.11.12 23 | estree-walker: 2.0.2 24 | 25 | devDependencies: 26 | '@pvtnbr/eslint-config-typescript': 0.1.14_eslint@7.24.0+typescript@4.2.4 27 | '@types/estree': 0.0.47 28 | '@types/node': 14.14.41 29 | eslint: 7.24.0 30 | esno: 0.5.0 31 | husky: 4.3.8 32 | lint-staged: 10.5.4 33 | typescript: 4.2.4 34 | 35 | packages: 36 | 37 | /@babel/code-frame/7.12.11: 38 | resolution: {integrity: sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw==} 39 | dependencies: 40 | '@babel/highlight': 7.13.10 41 | dev: true 42 | 43 | /@babel/code-frame/7.12.13: 44 | resolution: {integrity: sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==} 45 | dependencies: 46 | '@babel/highlight': 7.13.10 47 | dev: true 48 | 49 | /@babel/compat-data/7.13.15: 50 | resolution: {integrity: sha512-ltnibHKR1VnrU4ymHyQ/CXtNXI6yZC0oJThyW78Hft8XndANwi+9H+UIklBDraIjFEJzw8wmcM427oDd9KS5wA==} 51 | dev: true 52 | 53 | /@babel/core/7.13.15: 54 | resolution: {integrity: sha512-6GXmNYeNjS2Uz+uls5jalOemgIhnTMeaXo+yBUA72kC2uX/8VW6XyhVIo2L8/q0goKQA3EVKx0KOQpVKSeWadQ==} 55 | engines: {node: '>=6.9.0'} 56 | dependencies: 57 | '@babel/code-frame': 7.12.13 58 | '@babel/generator': 7.13.9 59 | '@babel/helper-compilation-targets': 7.13.13_@babel+core@7.13.15 60 | '@babel/helper-module-transforms': 7.13.14 61 | '@babel/helpers': 7.13.10 62 | '@babel/parser': 7.13.15 63 | '@babel/template': 7.12.13 64 | '@babel/traverse': 7.13.15 65 | '@babel/types': 7.13.14 66 | convert-source-map: 1.7.0 67 | debug: 4.3.1 68 | gensync: 1.0.0-beta.2 69 | json5: 2.2.0 70 | semver: 6.3.0 71 | source-map: 0.5.7 72 | transitivePeerDependencies: 73 | - supports-color 74 | dev: true 75 | 76 | /@babel/eslint-parser/7.13.14_8c298b33b3270b62faf532d9218eff22: 77 | resolution: {integrity: sha512-I0HweR36D73Ibn/FfrRDMKlMqJHFwidIUgYdMpH+aXYuQC+waq59YaJ6t9e9N36axJ82v1jR041wwqDrDXEwRA==} 78 | engines: {node: ^10.13.0 || ^12.13.0 || >=14.0.0} 79 | peerDependencies: 80 | '@babel/core': '>=7.11.0' 81 | eslint: '>=7.5.0' 82 | dependencies: 83 | '@babel/core': 7.13.15 84 | eslint: 7.24.0 85 | eslint-scope: 5.1.1 86 | eslint-visitor-keys: 1.3.0 87 | semver: 6.3.0 88 | dev: true 89 | 90 | /@babel/generator/7.13.9: 91 | resolution: {integrity: sha512-mHOOmY0Axl/JCTkxTU6Lf5sWOg/v8nUa+Xkt4zMTftX0wqmb6Sh7J8gvcehBw7q0AhrhAR+FDacKjCZ2X8K+Sw==} 92 | dependencies: 93 | '@babel/types': 7.13.14 94 | jsesc: 2.5.2 95 | source-map: 0.5.7 96 | dev: true 97 | 98 | /@babel/helper-compilation-targets/7.13.13_@babel+core@7.13.15: 99 | resolution: {integrity: sha512-q1kcdHNZehBwD9jYPh3WyXcsFERi39X4I59I3NadciWtNDyZ6x+GboOxncFK0kXlKIv6BJm5acncehXWUjWQMQ==} 100 | peerDependencies: 101 | '@babel/core': ^7.0.0 102 | dependencies: 103 | '@babel/compat-data': 7.13.15 104 | '@babel/core': 7.13.15 105 | '@babel/helper-validator-option': 7.12.17 106 | browserslist: 4.16.4 107 | semver: 6.3.0 108 | dev: true 109 | 110 | /@babel/helper-function-name/7.12.13: 111 | resolution: {integrity: sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==} 112 | dependencies: 113 | '@babel/helper-get-function-arity': 7.12.13 114 | '@babel/template': 7.12.13 115 | '@babel/types': 7.13.14 116 | dev: true 117 | 118 | /@babel/helper-get-function-arity/7.12.13: 119 | resolution: {integrity: sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==} 120 | dependencies: 121 | '@babel/types': 7.13.14 122 | dev: true 123 | 124 | /@babel/helper-member-expression-to-functions/7.13.12: 125 | resolution: {integrity: sha512-48ql1CLL59aKbU94Y88Xgb2VFy7a95ykGRbJJaaVv+LX5U8wFpLfiGXJJGUozsmA1oEh/o5Bp60Voq7ACyA/Sw==} 126 | dependencies: 127 | '@babel/types': 7.13.14 128 | dev: true 129 | 130 | /@babel/helper-module-imports/7.13.12: 131 | resolution: {integrity: sha512-4cVvR2/1B693IuOvSI20xqqa/+bl7lqAMR59R4iu39R9aOX8/JoYY1sFaNvUMyMBGnHdwvJgUrzNLoUZxXypxA==} 132 | dependencies: 133 | '@babel/types': 7.13.14 134 | dev: true 135 | 136 | /@babel/helper-module-transforms/7.13.14: 137 | resolution: {integrity: sha512-QuU/OJ0iAOSIatyVZmfqB0lbkVP0kDRiKj34xy+QNsnVZi/PA6BoSoreeqnxxa9EHFAIL0R9XOaAR/G9WlIy5g==} 138 | dependencies: 139 | '@babel/helper-module-imports': 7.13.12 140 | '@babel/helper-replace-supers': 7.13.12 141 | '@babel/helper-simple-access': 7.13.12 142 | '@babel/helper-split-export-declaration': 7.12.13 143 | '@babel/helper-validator-identifier': 7.12.11 144 | '@babel/template': 7.12.13 145 | '@babel/traverse': 7.13.15 146 | '@babel/types': 7.13.14 147 | transitivePeerDependencies: 148 | - supports-color 149 | dev: true 150 | 151 | /@babel/helper-optimise-call-expression/7.12.13: 152 | resolution: {integrity: sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==} 153 | dependencies: 154 | '@babel/types': 7.13.14 155 | dev: true 156 | 157 | /@babel/helper-replace-supers/7.13.12: 158 | resolution: {integrity: sha512-Gz1eiX+4yDO8mT+heB94aLVNCL+rbuT2xy4YfyNqu8F+OI6vMvJK891qGBTqL9Uc8wxEvRW92Id6G7sDen3fFw==} 159 | dependencies: 160 | '@babel/helper-member-expression-to-functions': 7.13.12 161 | '@babel/helper-optimise-call-expression': 7.12.13 162 | '@babel/traverse': 7.13.15 163 | '@babel/types': 7.13.14 164 | transitivePeerDependencies: 165 | - supports-color 166 | dev: true 167 | 168 | /@babel/helper-simple-access/7.13.12: 169 | resolution: {integrity: sha512-7FEjbrx5SL9cWvXioDbnlYTppcZGuCY6ow3/D5vMggb2Ywgu4dMrpTJX0JdQAIcRRUElOIxF3yEooa9gUb9ZbA==} 170 | dependencies: 171 | '@babel/types': 7.13.14 172 | dev: true 173 | 174 | /@babel/helper-split-export-declaration/7.12.13: 175 | resolution: {integrity: sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==} 176 | dependencies: 177 | '@babel/types': 7.13.14 178 | dev: true 179 | 180 | /@babel/helper-validator-identifier/7.12.11: 181 | resolution: {integrity: sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==} 182 | dev: true 183 | 184 | /@babel/helper-validator-option/7.12.17: 185 | resolution: {integrity: sha512-TopkMDmLzq8ngChwRlyjR6raKD6gMSae4JdYDB8bByKreQgG0RBTuKe9LRxW3wFtUnjxOPRKBDwEH6Mg5KeDfw==} 186 | dev: true 187 | 188 | /@babel/helpers/7.13.10: 189 | resolution: {integrity: sha512-4VO883+MWPDUVRF3PhiLBUFHoX/bsLTGFpFK/HqvvfBZz2D57u9XzPVNFVBTc0PW/CWR9BXTOKt8NF4DInUHcQ==} 190 | dependencies: 191 | '@babel/template': 7.12.13 192 | '@babel/traverse': 7.13.15 193 | '@babel/types': 7.13.14 194 | transitivePeerDependencies: 195 | - supports-color 196 | dev: true 197 | 198 | /@babel/highlight/7.13.10: 199 | resolution: {integrity: sha512-5aPpe5XQPzflQrFwL1/QoeHkP2MsA4JCntcXHRhEsdsfPVkvPi2w7Qix4iV7t5S/oC9OodGrggd8aco1g3SZFg==} 200 | dependencies: 201 | '@babel/helper-validator-identifier': 7.12.11 202 | chalk: 2.4.2 203 | js-tokens: 4.0.0 204 | dev: true 205 | 206 | /@babel/parser/7.13.15: 207 | resolution: {integrity: sha512-b9COtcAlVEQljy/9fbcMHpG+UIW9ReF+gpaxDHTlZd0c6/UU9ng8zdySAW9sRTzpvcdCHn6bUcbuYUgGzLAWVQ==} 208 | engines: {node: '>=6.0.0'} 209 | hasBin: true 210 | dev: true 211 | 212 | /@babel/template/7.12.13: 213 | resolution: {integrity: sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==} 214 | dependencies: 215 | '@babel/code-frame': 7.12.13 216 | '@babel/parser': 7.13.15 217 | '@babel/types': 7.13.14 218 | dev: true 219 | 220 | /@babel/traverse/7.13.15: 221 | resolution: {integrity: sha512-/mpZMNvj6bce59Qzl09fHEs8Bt8NnpEDQYleHUPZQ3wXUMvXi+HJPLars68oAbmp839fGoOkv2pSL2z9ajCIaQ==} 222 | dependencies: 223 | '@babel/code-frame': 7.12.13 224 | '@babel/generator': 7.13.9 225 | '@babel/helper-function-name': 7.12.13 226 | '@babel/helper-split-export-declaration': 7.12.13 227 | '@babel/parser': 7.13.15 228 | '@babel/types': 7.13.14 229 | debug: 4.3.1 230 | globals: 11.12.0 231 | transitivePeerDependencies: 232 | - supports-color 233 | dev: true 234 | 235 | /@babel/types/7.13.14: 236 | resolution: {integrity: sha512-A2aa3QTkWoyqsZZFl56MLUsfmh7O0gN41IPvXAE/++8ojpbz12SszD7JEGYVdn4f9Kt4amIei07swF1h4AqmmQ==} 237 | dependencies: 238 | '@babel/helper-validator-identifier': 7.12.11 239 | lodash: 4.17.21 240 | to-fast-properties: 2.0.0 241 | dev: true 242 | 243 | /@eslint/eslintrc/0.4.0: 244 | resolution: {integrity: sha512-2ZPCc+uNbjV5ERJr+aKSPRwZgKd2z11x0EgLvb1PURmUrn9QNRXFqje0Ldq454PfAVyaJYyrDvvIKSFP4NnBog==} 245 | engines: {node: ^10.12.0 || >=12.0.0} 246 | dependencies: 247 | ajv: 6.12.6 248 | debug: 4.3.1 249 | espree: 7.3.1 250 | globals: 12.4.0 251 | ignore: 4.0.6 252 | import-fresh: 3.3.0 253 | js-yaml: 3.14.1 254 | minimatch: 3.0.4 255 | strip-json-comments: 3.1.1 256 | transitivePeerDependencies: 257 | - supports-color 258 | dev: true 259 | 260 | /@nodelib/fs.scandir/2.1.4: 261 | resolution: {integrity: sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==} 262 | engines: {node: '>= 8'} 263 | dependencies: 264 | '@nodelib/fs.stat': 2.0.4 265 | run-parallel: 1.2.0 266 | dev: true 267 | 268 | /@nodelib/fs.stat/2.0.4: 269 | resolution: {integrity: sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==} 270 | engines: {node: '>= 8'} 271 | dev: true 272 | 273 | /@nodelib/fs.walk/1.2.6: 274 | resolution: {integrity: sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==} 275 | engines: {node: '>= 8'} 276 | dependencies: 277 | '@nodelib/fs.scandir': 2.1.4 278 | fastq: 1.11.0 279 | dev: true 280 | 281 | /@pvtnbr/eslint-config-base/0.1.14_eslint@7.24.0: 282 | resolution: {integrity: sha512-gp5DyNw1L5EbgVsMvzLY4S0OjAJuw3xhVEjlyWGKaVcCOJWVYrMLKGwEwTzOmKYeqNK/BZiUD87fa1NOXLQDvw==} 283 | peerDependencies: 284 | eslint: ^7.15.0 285 | dependencies: 286 | confusing-browser-globals: 1.0.10 287 | eslint: 7.24.0 288 | eslint-plugin-eslint-comments: 3.2.0_eslint@7.24.0 289 | eslint-plugin-import: 2.22.1_eslint@7.24.0 290 | eslint-plugin-jsonc: 1.2.1_eslint@7.24.0 291 | eslint-plugin-no-use-extend-native: 0.5.0 292 | eslint-plugin-node: 11.1.0_eslint@7.24.0 293 | eslint-plugin-promise: 4.3.1 294 | eslint-plugin-regexp: 0.4.3_eslint@7.24.0 295 | eslint-plugin-unicorn: 28.0.2_eslint@7.24.0 296 | transitivePeerDependencies: 297 | - supports-color 298 | dev: true 299 | 300 | /@pvtnbr/eslint-config-typescript/0.1.14_eslint@7.24.0+typescript@4.2.4: 301 | resolution: {integrity: sha512-Mp/vciPWOfBksT8M/OmQ9R8kqLReqlCv4rqFPa3Db/mpfDtNabKUmVnj1LfK55dCKkMumg6cEbMehAj1Bm8zNw==} 302 | peerDependencies: 303 | eslint: ^7.15.0 304 | dependencies: 305 | '@pvtnbr/eslint-config-base': 0.1.14_eslint@7.24.0 306 | '@typescript-eslint/eslint-plugin': 4.22.0_9acede93a3623dd7abe65c65a7010e73 307 | '@typescript-eslint/parser': 4.22.0_eslint@7.24.0+typescript@4.2.4 308 | eslint: 7.24.0 309 | transitivePeerDependencies: 310 | - supports-color 311 | - typescript 312 | dev: true 313 | 314 | /@types/estree/0.0.47: 315 | resolution: {integrity: sha512-c5ciR06jK8u9BstrmJyO97m+klJrrhCf9u3rLu3DEAJBirxRqSCvDQoYKmxuYwQI5SZChAWu+tq9oVlGRuzPAg==} 316 | dev: true 317 | 318 | /@types/json-schema/7.0.7: 319 | resolution: {integrity: sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==} 320 | dev: true 321 | 322 | /@types/json5/0.0.29: 323 | resolution: {integrity: sha1-7ihweulOEdK4J7y+UnC86n8+ce4=} 324 | dev: true 325 | 326 | /@types/node/14.14.41: 327 | resolution: {integrity: sha512-dueRKfaJL4RTtSa7bWeTK1M+VH+Gns73oCgzvYfHZywRCoPSd8EkXBL0mZ9unPTveBn+D9phZBaxuzpwjWkW0g==} 328 | dev: true 329 | 330 | /@types/normalize-package-data/2.4.0: 331 | resolution: {integrity: sha512-f5j5b/Gf71L+dbqxIpQ4Z2WlmI/mPJ0fOkGGmFgtb6sAu97EPczzbS3/tJKxmcYDj55OX6ssqwDAWOHIYDRDGA==} 332 | dev: true 333 | 334 | /@types/parse-json/4.0.0: 335 | resolution: {integrity: sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA==} 336 | dev: true 337 | 338 | /@typescript-eslint/eslint-plugin/4.22.0_9acede93a3623dd7abe65c65a7010e73: 339 | resolution: {integrity: sha512-U8SP9VOs275iDXaL08Ln1Fa/wLXfj5aTr/1c0t0j6CdbOnxh+TruXu1p4I0NAvdPBQgoPjHsgKn28mOi0FzfoA==} 340 | engines: {node: ^10.12.0 || >=12.0.0} 341 | peerDependencies: 342 | '@typescript-eslint/parser': ^4.0.0 343 | eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 344 | typescript: '*' 345 | peerDependenciesMeta: 346 | typescript: 347 | optional: true 348 | dependencies: 349 | '@typescript-eslint/experimental-utils': 4.22.0_eslint@7.24.0+typescript@4.2.4 350 | '@typescript-eslint/parser': 4.22.0_eslint@7.24.0+typescript@4.2.4 351 | '@typescript-eslint/scope-manager': 4.22.0 352 | debug: 4.3.1 353 | eslint: 7.24.0 354 | functional-red-black-tree: 1.0.1 355 | lodash: 4.17.21 356 | regexpp: 3.1.0 357 | semver: 7.3.5 358 | tsutils: 3.21.0_typescript@4.2.4 359 | typescript: 4.2.4 360 | transitivePeerDependencies: 361 | - supports-color 362 | dev: true 363 | 364 | /@typescript-eslint/experimental-utils/4.22.0_eslint@7.24.0+typescript@4.2.4: 365 | resolution: {integrity: sha512-xJXHHl6TuAxB5AWiVrGhvbGL8/hbiCQ8FiWwObO3r0fnvBdrbWEDy1hlvGQOAWc6qsCWuWMKdVWlLAEMpxnddg==} 366 | engines: {node: ^10.12.0 || >=12.0.0} 367 | peerDependencies: 368 | eslint: '*' 369 | dependencies: 370 | '@types/json-schema': 7.0.7 371 | '@typescript-eslint/scope-manager': 4.22.0 372 | '@typescript-eslint/types': 4.22.0 373 | '@typescript-eslint/typescript-estree': 4.22.0_typescript@4.2.4 374 | eslint: 7.24.0 375 | eslint-scope: 5.1.1 376 | eslint-utils: 2.1.0 377 | transitivePeerDependencies: 378 | - supports-color 379 | - typescript 380 | dev: true 381 | 382 | /@typescript-eslint/parser/4.22.0_eslint@7.24.0+typescript@4.2.4: 383 | resolution: {integrity: sha512-z/bGdBJJZJN76nvAY9DkJANYgK3nlRstRRi74WHm3jjgf2I8AglrSY+6l7ogxOmn55YJ6oKZCLLy+6PW70z15Q==} 384 | engines: {node: ^10.12.0 || >=12.0.0} 385 | peerDependencies: 386 | eslint: ^5.0.0 || ^6.0.0 || ^7.0.0 387 | typescript: '*' 388 | peerDependenciesMeta: 389 | typescript: 390 | optional: true 391 | dependencies: 392 | '@typescript-eslint/scope-manager': 4.22.0 393 | '@typescript-eslint/types': 4.22.0 394 | '@typescript-eslint/typescript-estree': 4.22.0_typescript@4.2.4 395 | debug: 4.3.1 396 | eslint: 7.24.0 397 | typescript: 4.2.4 398 | transitivePeerDependencies: 399 | - supports-color 400 | dev: true 401 | 402 | /@typescript-eslint/scope-manager/4.22.0: 403 | resolution: {integrity: sha512-OcCO7LTdk6ukawUM40wo61WdeoA7NM/zaoq1/2cs13M7GyiF+T4rxuA4xM+6LeHWjWbss7hkGXjFDRcKD4O04Q==} 404 | engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} 405 | dependencies: 406 | '@typescript-eslint/types': 4.22.0 407 | '@typescript-eslint/visitor-keys': 4.22.0 408 | dev: true 409 | 410 | /@typescript-eslint/types/4.22.0: 411 | resolution: {integrity: sha512-sW/BiXmmyMqDPO2kpOhSy2Py5w6KvRRsKZnV0c4+0nr4GIcedJwXAq+RHNK4lLVEZAJYFltnnk1tJSlbeS9lYA==} 412 | engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} 413 | dev: true 414 | 415 | /@typescript-eslint/typescript-estree/4.22.0_typescript@4.2.4: 416 | resolution: {integrity: sha512-TkIFeu5JEeSs5ze/4NID+PIcVjgoU3cUQUIZnH3Sb1cEn1lBo7StSV5bwPuJQuoxKXlzAObjYTilOEKRuhR5yg==} 417 | engines: {node: ^10.12.0 || >=12.0.0} 418 | peerDependencies: 419 | typescript: '*' 420 | peerDependenciesMeta: 421 | typescript: 422 | optional: true 423 | dependencies: 424 | '@typescript-eslint/types': 4.22.0 425 | '@typescript-eslint/visitor-keys': 4.22.0 426 | debug: 4.3.1 427 | globby: 11.0.3 428 | is-glob: 4.0.1 429 | semver: 7.3.5 430 | tsutils: 3.21.0_typescript@4.2.4 431 | typescript: 4.2.4 432 | transitivePeerDependencies: 433 | - supports-color 434 | dev: true 435 | 436 | /@typescript-eslint/visitor-keys/4.22.0: 437 | resolution: {integrity: sha512-nnMu4F+s4o0sll6cBSsTeVsT4cwxB7zECK3dFxzEjPBii9xLpq4yqqsy/FU5zMfan6G60DKZSCXAa3sHJZrcYw==} 438 | engines: {node: ^8.10.0 || ^10.13.0 || >=11.10.1} 439 | dependencies: 440 | '@typescript-eslint/types': 4.22.0 441 | eslint-visitor-keys: 2.0.0 442 | dev: true 443 | 444 | /acorn-jsx/5.3.1_acorn@7.4.1: 445 | resolution: {integrity: sha512-K0Ptm/47OKfQRpNQ2J/oIN/3QYiK6FwW+eJbILhsdxh2WTLdl+30o8aGdTbm5JbffpFFAg/g+zi1E+jvJha5ng==} 446 | peerDependencies: 447 | acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 448 | dependencies: 449 | acorn: 7.4.1 450 | dev: true 451 | 452 | /acorn-loose/8.0.2: 453 | resolution: {integrity: sha512-h25FYjJONkLfEq0PWMax9p2Xjhj6Ex9aiOhwayUxT8R5alTt1+00xypWLxUBu7kASwiNTzjmq6ohOY6EdsVbVw==} 454 | engines: {node: '>=0.4.0'} 455 | dependencies: 456 | acorn: 8.1.1 457 | dev: false 458 | 459 | /acorn/7.4.1: 460 | resolution: {integrity: sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==} 461 | engines: {node: '>=0.4.0'} 462 | hasBin: true 463 | dev: true 464 | 465 | /acorn/8.1.1: 466 | resolution: {integrity: sha512-xYiIVjNuqtKXMxlRMDc6mZUhXehod4a3gbZ1qRlM7icK4EbxUFNLhWoPblCvFtB2Y9CIqHP3CF/rdxLItaQv8g==} 467 | engines: {node: '>=0.4.0'} 468 | hasBin: true 469 | dev: false 470 | 471 | /aggregate-error/3.1.0: 472 | resolution: {integrity: sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==} 473 | engines: {node: '>=8'} 474 | dependencies: 475 | clean-stack: 2.2.0 476 | indent-string: 4.0.0 477 | dev: true 478 | 479 | /ajv/6.12.6: 480 | resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} 481 | dependencies: 482 | fast-deep-equal: 3.1.3 483 | fast-json-stable-stringify: 2.1.0 484 | json-schema-traverse: 0.4.1 485 | uri-js: 4.4.1 486 | dev: true 487 | 488 | /ajv/8.1.0: 489 | resolution: {integrity: sha512-B/Sk2Ix7A36fs/ZkuGLIR86EdjbgR6fsAcbx9lOP/QBSXujDNbVmIS/U4Itz5k8fPFDeVZl/zQ/gJW4Jrq6XjQ==} 490 | dependencies: 491 | fast-deep-equal: 3.1.3 492 | json-schema-traverse: 1.0.0 493 | require-from-string: 2.0.2 494 | uri-js: 4.4.1 495 | dev: true 496 | 497 | /ansi-colors/4.1.1: 498 | resolution: {integrity: sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA==} 499 | engines: {node: '>=6'} 500 | dev: true 501 | 502 | /ansi-escapes/4.3.2: 503 | resolution: {integrity: sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==} 504 | engines: {node: '>=8'} 505 | dependencies: 506 | type-fest: 0.21.3 507 | dev: true 508 | 509 | /ansi-regex/5.0.0: 510 | resolution: {integrity: sha512-bY6fj56OUQ0hU1KjFNDQuJFezqKdrAyFdIevADiqrWHwSlbmBNMHp5ak2f40Pm8JTFyM2mqxkG6ngkHO11f/lg==} 511 | engines: {node: '>=8'} 512 | dev: true 513 | 514 | /ansi-styles/3.2.1: 515 | resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==} 516 | engines: {node: '>=4'} 517 | dependencies: 518 | color-convert: 1.9.3 519 | dev: true 520 | 521 | /ansi-styles/4.3.0: 522 | resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==} 523 | engines: {node: '>=8'} 524 | dependencies: 525 | color-convert: 2.0.1 526 | dev: true 527 | 528 | /argparse/1.0.10: 529 | resolution: {integrity: sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==} 530 | dependencies: 531 | sprintf-js: 1.0.3 532 | dev: true 533 | 534 | /array-includes/3.1.3: 535 | resolution: {integrity: sha512-gcem1KlBU7c9rB+Rq8/3PPKsK2kjqeEBa3bD5kkQo4nYlOHQCJqIJFqBXDEfwaRuYTT4E+FxA9xez7Gf/e3Q7A==} 536 | engines: {node: '>= 0.4'} 537 | dependencies: 538 | call-bind: 1.0.2 539 | define-properties: 1.1.3 540 | es-abstract: 1.18.0 541 | get-intrinsic: 1.1.1 542 | is-string: 1.0.5 543 | dev: true 544 | 545 | /array-union/2.1.0: 546 | resolution: {integrity: sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw==} 547 | engines: {node: '>=8'} 548 | dev: true 549 | 550 | /array.prototype.flat/1.2.4: 551 | resolution: {integrity: sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==} 552 | engines: {node: '>= 0.4'} 553 | dependencies: 554 | call-bind: 1.0.2 555 | define-properties: 1.1.3 556 | es-abstract: 1.18.0 557 | dev: true 558 | 559 | /astral-regex/2.0.0: 560 | resolution: {integrity: sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==} 561 | engines: {node: '>=8'} 562 | dev: true 563 | 564 | /balanced-match/1.0.2: 565 | resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} 566 | dev: true 567 | 568 | /brace-expansion/1.1.11: 569 | resolution: {integrity: sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==} 570 | dependencies: 571 | balanced-match: 1.0.2 572 | concat-map: 0.0.1 573 | dev: true 574 | 575 | /braces/3.0.2: 576 | resolution: {integrity: sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==} 577 | engines: {node: '>=8'} 578 | dependencies: 579 | fill-range: 7.0.1 580 | dev: true 581 | 582 | /browserslist/4.16.4: 583 | resolution: {integrity: sha512-d7rCxYV8I9kj41RH8UKYnvDYCRENUlHRgyXy/Rhr/1BaeLGfiCptEdFE8MIrvGfWbBFNjVYx76SQWvNX1j+/cQ==} 584 | engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} 585 | hasBin: true 586 | dependencies: 587 | caniuse-lite: 1.0.30001209 588 | colorette: 1.2.2 589 | electron-to-chromium: 1.3.717 590 | escalade: 3.1.1 591 | node-releases: 1.1.71 592 | dev: true 593 | 594 | /call-bind/1.0.2: 595 | resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==} 596 | dependencies: 597 | function-bind: 1.1.1 598 | get-intrinsic: 1.1.1 599 | dev: true 600 | 601 | /caller-callsite/4.1.0: 602 | resolution: {integrity: sha512-99nnnGlJexTc41xwQTr+mWl15OI5PPczUJzM4YRE7QjkefMKCXGa5gfQjCOuVrD+1TjI/fevIDHg2nz3iYN5Ig==} 603 | engines: {node: '>=8'} 604 | dependencies: 605 | callsites: 3.1.0 606 | dev: false 607 | 608 | /caller-path/3.0.0: 609 | resolution: {integrity: sha512-8nvMBmBgTmEfAXywJf27jbPZlURi5xUWLwkTXa3hZFcEZa5iRnMP4sF0p00CstWNHKBENVyYWDRSByNRdshdgQ==} 610 | engines: {node: '>=8'} 611 | dependencies: 612 | caller-callsite: 4.1.0 613 | dev: false 614 | 615 | /callsites/3.1.0: 616 | resolution: {integrity: sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==} 617 | engines: {node: '>=6'} 618 | 619 | /caniuse-lite/1.0.30001209: 620 | resolution: {integrity: sha512-2Ktt4OeRM7EM/JaOZjuLzPYAIqmbwQMNnYbgooT+icoRGrKOyAxA1xhlnotBD1KArRSPsuJp3TdYcZYrL7qNxA==} 621 | dev: true 622 | 623 | /chalk/2.4.2: 624 | resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} 625 | engines: {node: '>=4'} 626 | dependencies: 627 | ansi-styles: 3.2.1 628 | escape-string-regexp: 1.0.5 629 | supports-color: 5.5.0 630 | dev: true 631 | 632 | /chalk/4.1.0: 633 | resolution: {integrity: sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==} 634 | engines: {node: '>=10'} 635 | dependencies: 636 | ansi-styles: 4.3.0 637 | supports-color: 7.2.0 638 | dev: true 639 | 640 | /ci-info/2.0.0: 641 | resolution: {integrity: sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ==} 642 | dev: true 643 | 644 | /clean-regexp/1.0.0: 645 | resolution: {integrity: sha1-jffHquUf02h06PjQW5GAvBGj/tc=} 646 | engines: {node: '>=4'} 647 | dependencies: 648 | escape-string-regexp: 1.0.5 649 | dev: true 650 | 651 | /clean-stack/2.2.0: 652 | resolution: {integrity: sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==} 653 | engines: {node: '>=6'} 654 | dev: true 655 | 656 | /cli-cursor/3.1.0: 657 | resolution: {integrity: sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==} 658 | engines: {node: '>=8'} 659 | dependencies: 660 | restore-cursor: 3.1.0 661 | dev: true 662 | 663 | /cli-truncate/2.1.0: 664 | resolution: {integrity: sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg==} 665 | engines: {node: '>=8'} 666 | dependencies: 667 | slice-ansi: 3.0.0 668 | string-width: 4.2.2 669 | dev: true 670 | 671 | /color-convert/1.9.3: 672 | resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==} 673 | dependencies: 674 | color-name: 1.1.3 675 | dev: true 676 | 677 | /color-convert/2.0.1: 678 | resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==} 679 | engines: {node: '>=7.0.0'} 680 | dependencies: 681 | color-name: 1.1.4 682 | dev: true 683 | 684 | /color-name/1.1.3: 685 | resolution: {integrity: sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=} 686 | dev: true 687 | 688 | /color-name/1.1.4: 689 | resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==} 690 | dev: true 691 | 692 | /colorette/1.2.2: 693 | resolution: {integrity: sha512-MKGMzyfeuutC/ZJ1cba9NqcNpfeqMUcYmyF1ZFY6/Cn7CNSAKx6a+s48sqLqyAiZuaP2TcqMhoo+dlwFnVxT9w==} 694 | dev: true 695 | 696 | /commander/6.2.1: 697 | resolution: {integrity: sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==} 698 | engines: {node: '>= 6'} 699 | dev: true 700 | 701 | /comment-parser/1.1.4: 702 | resolution: {integrity: sha512-MrWw1IrmmeCMLJKA8SvMw0tImTd4BHBFQ4WCNxzZoNeWaDL7OAXugF3BIKY042wNsNzGqD5liCgpQS99cuY1qA==} 703 | engines: {node: '>= 10.0.0'} 704 | dev: true 705 | 706 | /compare-versions/3.6.0: 707 | resolution: {integrity: sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA==} 708 | dev: true 709 | 710 | /concat-map/0.0.1: 711 | resolution: {integrity: sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=} 712 | dev: true 713 | 714 | /confusing-browser-globals/1.0.10: 715 | resolution: {integrity: sha512-gNld/3lySHwuhaVluJUKLePYirM3QNCKzVxqAdhJII9/WXKVX5PURzMVJspS1jTslSqjeuG4KMVTSouit5YPHA==} 716 | dev: true 717 | 718 | /contains-path/0.1.0: 719 | resolution: {integrity: sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=} 720 | engines: {node: '>=0.10.0'} 721 | dev: true 722 | 723 | /convert-source-map/1.7.0: 724 | resolution: {integrity: sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==} 725 | dependencies: 726 | safe-buffer: 5.1.2 727 | dev: true 728 | 729 | /cosmiconfig/7.0.0: 730 | resolution: {integrity: sha512-pondGvTuVYDk++upghXJabWzL6Kxu6f26ljFw64Swq9v6sQPUL3EUlVDV56diOjpCayKihL6hVe8exIACU4XcA==} 731 | engines: {node: '>=10'} 732 | dependencies: 733 | '@types/parse-json': 4.0.0 734 | import-fresh: 3.3.0 735 | parse-json: 5.2.0 736 | path-type: 4.0.0 737 | yaml: 1.10.2 738 | dev: true 739 | 740 | /cross-spawn/7.0.3: 741 | resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==} 742 | engines: {node: '>= 8'} 743 | dependencies: 744 | path-key: 3.1.1 745 | shebang-command: 2.0.0 746 | which: 2.0.2 747 | dev: true 748 | 749 | /debug/2.6.9: 750 | resolution: {integrity: sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==} 751 | dependencies: 752 | ms: 2.0.0 753 | dev: true 754 | 755 | /debug/4.3.1: 756 | resolution: {integrity: sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==} 757 | engines: {node: '>=6.0'} 758 | peerDependencies: 759 | supports-color: '*' 760 | peerDependenciesMeta: 761 | supports-color: 762 | optional: true 763 | dependencies: 764 | ms: 2.1.2 765 | dev: true 766 | 767 | /dedent/0.7.0: 768 | resolution: {integrity: sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw=} 769 | dev: true 770 | 771 | /deep-is/0.1.3: 772 | resolution: {integrity: sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=} 773 | dev: true 774 | 775 | /define-properties/1.1.3: 776 | resolution: {integrity: sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==} 777 | engines: {node: '>= 0.4'} 778 | dependencies: 779 | object-keys: 1.1.1 780 | dev: true 781 | 782 | /dir-glob/3.0.1: 783 | resolution: {integrity: sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==} 784 | engines: {node: '>=8'} 785 | dependencies: 786 | path-type: 4.0.0 787 | dev: true 788 | 789 | /doctrine/1.5.0: 790 | resolution: {integrity: sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=} 791 | engines: {node: '>=0.10.0'} 792 | dependencies: 793 | esutils: 2.0.3 794 | isarray: 1.0.0 795 | dev: true 796 | 797 | /doctrine/3.0.0: 798 | resolution: {integrity: sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==} 799 | engines: {node: '>=6.0.0'} 800 | dependencies: 801 | esutils: 2.0.3 802 | dev: true 803 | 804 | /electron-to-chromium/1.3.717: 805 | resolution: {integrity: sha512-OfzVPIqD1MkJ7fX+yTl2nKyOE4FReeVfMCzzxQS+Kp43hZYwHwThlGP+EGIZRXJsxCM7dqo8Y65NOX/HP12iXQ==} 806 | dev: true 807 | 808 | /emoji-regex/8.0.0: 809 | resolution: {integrity: sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==} 810 | dev: true 811 | 812 | /end-of-stream/1.4.4: 813 | resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==} 814 | dependencies: 815 | once: 1.4.0 816 | dev: true 817 | 818 | /enquirer/2.3.6: 819 | resolution: {integrity: sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg==} 820 | engines: {node: '>=8.6'} 821 | dependencies: 822 | ansi-colors: 4.1.1 823 | dev: true 824 | 825 | /error-ex/1.3.2: 826 | resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==} 827 | dependencies: 828 | is-arrayish: 0.2.1 829 | dev: true 830 | 831 | /es-abstract/1.18.0: 832 | resolution: {integrity: sha512-LJzK7MrQa8TS0ja2w3YNLzUgJCGPdPOV1yVvezjNnS89D+VR08+Szt2mz3YB2Dck/+w5tfIq/RoUAFqJJGM2yw==} 833 | engines: {node: '>= 0.4'} 834 | dependencies: 835 | call-bind: 1.0.2 836 | es-to-primitive: 1.2.1 837 | function-bind: 1.1.1 838 | get-intrinsic: 1.1.1 839 | has: 1.0.3 840 | has-symbols: 1.0.2 841 | is-callable: 1.2.3 842 | is-negative-zero: 2.0.1 843 | is-regex: 1.1.2 844 | is-string: 1.0.5 845 | object-inspect: 1.10.1 846 | object-keys: 1.1.1 847 | object.assign: 4.1.2 848 | string.prototype.trimend: 1.0.4 849 | string.prototype.trimstart: 1.0.4 850 | unbox-primitive: 1.0.1 851 | dev: true 852 | 853 | /es-to-primitive/1.2.1: 854 | resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} 855 | engines: {node: '>= 0.4'} 856 | dependencies: 857 | is-callable: 1.2.3 858 | is-date-object: 1.0.2 859 | is-symbol: 1.0.3 860 | dev: true 861 | 862 | /esbuild-register/2.4.0: 863 | resolution: {integrity: sha512-1mWroad5Mz8fqMxd0GfmEWoAuRBSsBObLVp5rpFOQSavUNgyhR5NoVlECrDcE2iineekoTsBeNS9QxKvqKvNjw==} 864 | dependencies: 865 | esbuild: 0.11.12 866 | jsonc-parser: 3.0.0 867 | dev: true 868 | 869 | /esbuild/0.11.12: 870 | resolution: {integrity: sha512-c8cso/1RwVj+fbDvLtUgSG4ZJQ0y9Zdrl6Ot/GAjyy4pdMCHaFnDMts5gqFnWRPLajWtEnI+3hlET4R9fVoZng==} 871 | hasBin: true 872 | requiresBuild: true 873 | 874 | /esbuild/0.9.7: 875 | resolution: {integrity: sha512-VtUf6aQ89VTmMLKrWHYG50uByMF4JQlVysb8dmg6cOgW8JnFCipmz7p+HNBl+RR3LLCuBxFGVauAe2wfnF9bLg==} 876 | hasBin: true 877 | requiresBuild: true 878 | dev: true 879 | 880 | /escalade/3.1.1: 881 | resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==} 882 | engines: {node: '>=6'} 883 | dev: true 884 | 885 | /escape-string-regexp/1.0.5: 886 | resolution: {integrity: sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=} 887 | engines: {node: '>=0.8.0'} 888 | dev: true 889 | 890 | /eslint-import-resolver-node/0.3.4: 891 | resolution: {integrity: sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==} 892 | dependencies: 893 | debug: 2.6.9 894 | resolve: 1.20.0 895 | dev: true 896 | 897 | /eslint-module-utils/2.6.0: 898 | resolution: {integrity: sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==} 899 | engines: {node: '>=4'} 900 | dependencies: 901 | debug: 2.6.9 902 | pkg-dir: 2.0.0 903 | dev: true 904 | 905 | /eslint-plugin-es/3.0.1_eslint@7.24.0: 906 | resolution: {integrity: sha512-GUmAsJaN4Fc7Gbtl8uOBlayo2DqhwWvEzykMHSCZHU3XdJ+NSzzZcVhXh3VxX5icqQ+oQdIEawXX8xkR3mIFmQ==} 907 | engines: {node: '>=8.10.0'} 908 | peerDependencies: 909 | eslint: '>=4.19.1' 910 | dependencies: 911 | eslint: 7.24.0 912 | eslint-utils: 2.1.0 913 | regexpp: 3.1.0 914 | dev: true 915 | 916 | /eslint-plugin-eslint-comments/3.2.0_eslint@7.24.0: 917 | resolution: {integrity: sha512-0jkOl0hfojIHHmEHgmNdqv4fmh7300NdpA9FFpF7zaoLvB/QeXOGNLIo86oAveJFrfB1p05kC8hpEMHM8DwWVQ==} 918 | engines: {node: '>=6.5.0'} 919 | peerDependencies: 920 | eslint: '>=4.19.1' 921 | dependencies: 922 | escape-string-regexp: 1.0.5 923 | eslint: 7.24.0 924 | ignore: 5.1.8 925 | dev: true 926 | 927 | /eslint-plugin-import/2.22.1_eslint@7.24.0: 928 | resolution: {integrity: sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==} 929 | engines: {node: '>=4'} 930 | peerDependencies: 931 | eslint: ^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0 932 | dependencies: 933 | array-includes: 3.1.3 934 | array.prototype.flat: 1.2.4 935 | contains-path: 0.1.0 936 | debug: 2.6.9 937 | doctrine: 1.5.0 938 | eslint: 7.24.0 939 | eslint-import-resolver-node: 0.3.4 940 | eslint-module-utils: 2.6.0 941 | has: 1.0.3 942 | minimatch: 3.0.4 943 | object.values: 1.1.3 944 | read-pkg-up: 2.0.0 945 | resolve: 1.20.0 946 | tsconfig-paths: 3.9.0 947 | dev: true 948 | 949 | /eslint-plugin-jsonc/1.2.1_eslint@7.24.0: 950 | resolution: {integrity: sha512-m7o4gaNKojSwRJDNP0/7HK1vGfGgynX6DeTHTXhYGxWn2DB8E2RU5jeK95CYw1/mwej4ku2Xd9Tevn6WOlI6Dg==} 951 | peerDependencies: 952 | eslint: ^5.0.0 || >=6.0.0 953 | dependencies: 954 | eslint: 7.24.0 955 | eslint-utils: 2.1.0 956 | jsonc-eslint-parser: 1.0.1 957 | natural-compare: 1.4.0 958 | dev: true 959 | 960 | /eslint-plugin-no-use-extend-native/0.5.0: 961 | resolution: {integrity: sha512-dBNjs8hor8rJgeXLH4HTut5eD3RGWf9JUsadIfuL7UosVQ/dnvOKwxEcRrXrFxrMZ8llUVWT+hOimxJABsAUzQ==} 962 | engines: {node: '>=6.0.0'} 963 | dependencies: 964 | is-get-set-prop: 1.0.0 965 | is-js-type: 2.0.0 966 | is-obj-prop: 1.0.0 967 | is-proto-prop: 2.0.0 968 | dev: true 969 | 970 | /eslint-plugin-node/11.1.0_eslint@7.24.0: 971 | resolution: {integrity: sha512-oUwtPJ1W0SKD0Tr+wqu92c5xuCeQqB3hSCHasn/ZgjFdA9iDGNkNf2Zi9ztY7X+hNuMib23LNGRm6+uN+KLE3g==} 972 | engines: {node: '>=8.10.0'} 973 | peerDependencies: 974 | eslint: '>=5.16.0' 975 | dependencies: 976 | eslint: 7.24.0 977 | eslint-plugin-es: 3.0.1_eslint@7.24.0 978 | eslint-utils: 2.1.0 979 | ignore: 5.1.8 980 | minimatch: 3.0.4 981 | resolve: 1.20.0 982 | semver: 6.3.0 983 | dev: true 984 | 985 | /eslint-plugin-promise/4.3.1: 986 | resolution: {integrity: sha512-bY2sGqyptzFBDLh/GMbAxfdJC+b0f23ME63FOE4+Jao0oZ3E1LEwFtWJX/1pGMJLiTtrSSern2CRM/g+dfc0eQ==} 987 | engines: {node: '>=6'} 988 | dev: true 989 | 990 | /eslint-plugin-regexp/0.4.3_eslint@7.24.0: 991 | resolution: {integrity: sha512-GeY+EG3tMug3RiIwTWmgRACisccMMY8zc6enrphRSC8hzostYVWc/k25dFxaWhqz1OhZFWbhAXD7xDJUjRp/yA==} 992 | peerDependencies: 993 | eslint: '>=6.0.0' 994 | dependencies: 995 | comment-parser: 1.1.4 996 | eslint: 7.24.0 997 | eslint-utils: 2.1.0 998 | jsdoctypeparser: 9.0.0 999 | regexpp: 3.1.0 1000 | dev: true 1001 | 1002 | /eslint-plugin-unicorn/28.0.2_eslint@7.24.0: 1003 | resolution: {integrity: sha512-k4AoFP7n8/oq6lBXkdc9Flid6vw2B8j7aXFCxgzJCyKvmaKrCUFb1TFPhG9eSJQFZowqmymMPRtl8oo9NKLUbw==} 1004 | engines: {node: '>=10'} 1005 | peerDependencies: 1006 | eslint: '>=7.17.0' 1007 | dependencies: 1008 | ci-info: 2.0.0 1009 | clean-regexp: 1.0.0 1010 | eslint: 7.24.0 1011 | eslint-template-visitor: 2.3.2_eslint@7.24.0 1012 | eslint-utils: 2.1.0 1013 | eslint-visitor-keys: 2.0.0 1014 | import-modules: 2.1.0 1015 | lodash: 4.17.21 1016 | pluralize: 8.0.0 1017 | read-pkg-up: 7.0.1 1018 | regexp-tree: 0.1.23 1019 | reserved-words: 0.1.2 1020 | safe-regex: 2.1.1 1021 | semver: 7.3.5 1022 | transitivePeerDependencies: 1023 | - supports-color 1024 | dev: true 1025 | 1026 | /eslint-scope/5.1.1: 1027 | resolution: {integrity: sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==} 1028 | engines: {node: '>=8.0.0'} 1029 | dependencies: 1030 | esrecurse: 4.3.0 1031 | estraverse: 4.3.0 1032 | dev: true 1033 | 1034 | /eslint-template-visitor/2.3.2_eslint@7.24.0: 1035 | resolution: {integrity: sha512-3ydhqFpuV7x1M9EK52BPNj6V0Kwu0KKkcIAfpUhwHbR8ocRln/oUHgfxQupY8O1h4Qv/POHDumb/BwwNfxbtnA==} 1036 | peerDependencies: 1037 | eslint: '>=7.0.0' 1038 | dependencies: 1039 | '@babel/core': 7.13.15 1040 | '@babel/eslint-parser': 7.13.14_8c298b33b3270b62faf532d9218eff22 1041 | eslint: 7.24.0 1042 | eslint-visitor-keys: 2.0.0 1043 | esquery: 1.4.0 1044 | multimap: 1.1.0 1045 | transitivePeerDependencies: 1046 | - supports-color 1047 | dev: true 1048 | 1049 | /eslint-utils/2.1.0: 1050 | resolution: {integrity: sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg==} 1051 | engines: {node: '>=6'} 1052 | dependencies: 1053 | eslint-visitor-keys: 1.3.0 1054 | dev: true 1055 | 1056 | /eslint-visitor-keys/1.3.0: 1057 | resolution: {integrity: sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==} 1058 | engines: {node: '>=4'} 1059 | dev: true 1060 | 1061 | /eslint-visitor-keys/2.0.0: 1062 | resolution: {integrity: sha512-QudtT6av5WXels9WjIM7qz1XD1cWGvX4gGXvp/zBn9nXG02D0utdU3Em2m/QjTnrsk6bBjmCygl3rmj118msQQ==} 1063 | engines: {node: '>=10'} 1064 | dev: true 1065 | 1066 | /eslint/7.24.0: 1067 | resolution: {integrity: sha512-k9gaHeHiFmGCDQ2rEfvULlSLruz6tgfA8DEn+rY9/oYPFFTlz55mM/Q/Rij1b2Y42jwZiK3lXvNTw6w6TXzcKQ==} 1068 | engines: {node: ^10.12.0 || >=12.0.0} 1069 | hasBin: true 1070 | dependencies: 1071 | '@babel/code-frame': 7.12.11 1072 | '@eslint/eslintrc': 0.4.0 1073 | ajv: 6.12.6 1074 | chalk: 4.1.0 1075 | cross-spawn: 7.0.3 1076 | debug: 4.3.1 1077 | doctrine: 3.0.0 1078 | enquirer: 2.3.6 1079 | eslint-scope: 5.1.1 1080 | eslint-utils: 2.1.0 1081 | eslint-visitor-keys: 2.0.0 1082 | espree: 7.3.1 1083 | esquery: 1.4.0 1084 | esutils: 2.0.3 1085 | file-entry-cache: 6.0.1 1086 | functional-red-black-tree: 1.0.1 1087 | glob-parent: 5.1.2 1088 | globals: 13.8.0 1089 | ignore: 4.0.6 1090 | import-fresh: 3.3.0 1091 | imurmurhash: 0.1.4 1092 | is-glob: 4.0.1 1093 | js-yaml: 3.14.1 1094 | json-stable-stringify-without-jsonify: 1.0.1 1095 | levn: 0.4.1 1096 | lodash: 4.17.21 1097 | minimatch: 3.0.4 1098 | natural-compare: 1.4.0 1099 | optionator: 0.9.1 1100 | progress: 2.0.3 1101 | regexpp: 3.1.0 1102 | semver: 7.3.5 1103 | strip-ansi: 6.0.0 1104 | strip-json-comments: 3.1.1 1105 | table: 6.1.0 1106 | text-table: 0.2.0 1107 | v8-compile-cache: 2.3.0 1108 | transitivePeerDependencies: 1109 | - supports-color 1110 | dev: true 1111 | 1112 | /esno/0.5.0: 1113 | resolution: {integrity: sha512-r0tsflar7RB918JCjTNyU2QWfgyH2jgfAzHK1tABr3A5y84ruS86JanVHc6wove/V5I98soLZbg8Foso1dqCMA==} 1114 | hasBin: true 1115 | dependencies: 1116 | esbuild: 0.9.7 1117 | esbuild-register: 2.4.0 1118 | dev: true 1119 | 1120 | /espree/7.3.1: 1121 | resolution: {integrity: sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g==} 1122 | engines: {node: ^10.12.0 || >=12.0.0} 1123 | dependencies: 1124 | acorn: 7.4.1 1125 | acorn-jsx: 5.3.1_acorn@7.4.1 1126 | eslint-visitor-keys: 1.3.0 1127 | dev: true 1128 | 1129 | /esprima/4.0.1: 1130 | resolution: {integrity: sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==} 1131 | engines: {node: '>=4'} 1132 | hasBin: true 1133 | dev: true 1134 | 1135 | /esquery/1.4.0: 1136 | resolution: {integrity: sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==} 1137 | engines: {node: '>=0.10'} 1138 | dependencies: 1139 | estraverse: 5.2.0 1140 | dev: true 1141 | 1142 | /esrecurse/4.3.0: 1143 | resolution: {integrity: sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==} 1144 | engines: {node: '>=4.0'} 1145 | dependencies: 1146 | estraverse: 5.2.0 1147 | dev: true 1148 | 1149 | /estraverse/4.3.0: 1150 | resolution: {integrity: sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw==} 1151 | engines: {node: '>=4.0'} 1152 | dev: true 1153 | 1154 | /estraverse/5.2.0: 1155 | resolution: {integrity: sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==} 1156 | engines: {node: '>=4.0'} 1157 | dev: true 1158 | 1159 | /estree-walker/2.0.2: 1160 | resolution: {integrity: sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==} 1161 | dev: false 1162 | 1163 | /esutils/2.0.3: 1164 | resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} 1165 | engines: {node: '>=0.10.0'} 1166 | dev: true 1167 | 1168 | /execa/4.1.0: 1169 | resolution: {integrity: sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA==} 1170 | engines: {node: '>=10'} 1171 | dependencies: 1172 | cross-spawn: 7.0.3 1173 | get-stream: 5.2.0 1174 | human-signals: 1.1.1 1175 | is-stream: 2.0.0 1176 | merge-stream: 2.0.0 1177 | npm-run-path: 4.0.1 1178 | onetime: 5.1.2 1179 | signal-exit: 3.0.3 1180 | strip-final-newline: 2.0.0 1181 | dev: true 1182 | 1183 | /fast-deep-equal/3.1.3: 1184 | resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==} 1185 | dev: true 1186 | 1187 | /fast-glob/3.2.5: 1188 | resolution: {integrity: sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==} 1189 | engines: {node: '>=8'} 1190 | dependencies: 1191 | '@nodelib/fs.stat': 2.0.4 1192 | '@nodelib/fs.walk': 1.2.6 1193 | glob-parent: 5.1.2 1194 | merge2: 1.4.1 1195 | micromatch: 4.0.4 1196 | picomatch: 2.2.3 1197 | dev: true 1198 | 1199 | /fast-json-stable-stringify/2.1.0: 1200 | resolution: {integrity: sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==} 1201 | dev: true 1202 | 1203 | /fast-levenshtein/2.0.6: 1204 | resolution: {integrity: sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=} 1205 | dev: true 1206 | 1207 | /fastq/1.11.0: 1208 | resolution: {integrity: sha512-7Eczs8gIPDrVzT+EksYBcupqMyxSHXXrHOLRRxU2/DicV8789MRBRR8+Hc2uWzUupOs4YS4JzBmBxjjCVBxD/g==} 1209 | dependencies: 1210 | reusify: 1.0.4 1211 | dev: true 1212 | 1213 | /figures/3.2.0: 1214 | resolution: {integrity: sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==} 1215 | engines: {node: '>=8'} 1216 | dependencies: 1217 | escape-string-regexp: 1.0.5 1218 | dev: true 1219 | 1220 | /file-entry-cache/6.0.1: 1221 | resolution: {integrity: sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg==} 1222 | engines: {node: ^10.12.0 || >=12.0.0} 1223 | dependencies: 1224 | flat-cache: 3.0.4 1225 | dev: true 1226 | 1227 | /fill-range/7.0.1: 1228 | resolution: {integrity: sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ==} 1229 | engines: {node: '>=8'} 1230 | dependencies: 1231 | to-regex-range: 5.0.1 1232 | dev: true 1233 | 1234 | /find-up/2.1.0: 1235 | resolution: {integrity: sha1-RdG35QbHF93UgndaK3eSCjwMV6c=} 1236 | engines: {node: '>=4'} 1237 | dependencies: 1238 | locate-path: 2.0.0 1239 | dev: true 1240 | 1241 | /find-up/4.1.0: 1242 | resolution: {integrity: sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==} 1243 | engines: {node: '>=8'} 1244 | dependencies: 1245 | locate-path: 5.0.0 1246 | path-exists: 4.0.0 1247 | dev: true 1248 | 1249 | /find-up/5.0.0: 1250 | resolution: {integrity: sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng==} 1251 | engines: {node: '>=10'} 1252 | dependencies: 1253 | locate-path: 6.0.0 1254 | path-exists: 4.0.0 1255 | dev: true 1256 | 1257 | /find-versions/4.0.0: 1258 | resolution: {integrity: sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ==} 1259 | engines: {node: '>=10'} 1260 | dependencies: 1261 | semver-regex: 3.1.2 1262 | dev: true 1263 | 1264 | /flat-cache/3.0.4: 1265 | resolution: {integrity: sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg==} 1266 | engines: {node: ^10.12.0 || >=12.0.0} 1267 | dependencies: 1268 | flatted: 3.1.1 1269 | rimraf: 3.0.2 1270 | dev: true 1271 | 1272 | /flatted/3.1.1: 1273 | resolution: {integrity: sha512-zAoAQiudy+r5SvnSw3KJy5os/oRJYHzrzja/tBDqrZtNhUw8bt6y8OBzMWcjWr+8liV8Eb6yOhw8WZ7VFZ5ZzA==} 1274 | dev: true 1275 | 1276 | /fs.realpath/1.0.0: 1277 | resolution: {integrity: sha1-FQStJSMVjKpA20onh8sBQRmU6k8=} 1278 | dev: true 1279 | 1280 | /function-bind/1.1.1: 1281 | resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} 1282 | dev: true 1283 | 1284 | /functional-red-black-tree/1.0.1: 1285 | resolution: {integrity: sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=} 1286 | dev: true 1287 | 1288 | /gensync/1.0.0-beta.2: 1289 | resolution: {integrity: sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==} 1290 | engines: {node: '>=6.9.0'} 1291 | dev: true 1292 | 1293 | /get-intrinsic/1.1.1: 1294 | resolution: {integrity: sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==} 1295 | dependencies: 1296 | function-bind: 1.1.1 1297 | has: 1.0.3 1298 | has-symbols: 1.0.2 1299 | dev: true 1300 | 1301 | /get-own-enumerable-property-symbols/3.0.2: 1302 | resolution: {integrity: sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g==} 1303 | dev: true 1304 | 1305 | /get-set-props/0.1.0: 1306 | resolution: {integrity: sha1-mYR1wXhEVobQsyJG2l3428++jqM=} 1307 | engines: {node: '>=0.10.0'} 1308 | dev: true 1309 | 1310 | /get-stream/5.2.0: 1311 | resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} 1312 | engines: {node: '>=8'} 1313 | dependencies: 1314 | pump: 3.0.0 1315 | dev: true 1316 | 1317 | /glob-parent/5.1.2: 1318 | resolution: {integrity: sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==} 1319 | engines: {node: '>= 6'} 1320 | dependencies: 1321 | is-glob: 4.0.1 1322 | dev: true 1323 | 1324 | /glob/7.1.6: 1325 | resolution: {integrity: sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==} 1326 | dependencies: 1327 | fs.realpath: 1.0.0 1328 | inflight: 1.0.6 1329 | inherits: 2.0.4 1330 | minimatch: 3.0.4 1331 | once: 1.4.0 1332 | path-is-absolute: 1.0.1 1333 | dev: true 1334 | 1335 | /globals/11.12.0: 1336 | resolution: {integrity: sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA==} 1337 | engines: {node: '>=4'} 1338 | dev: true 1339 | 1340 | /globals/12.4.0: 1341 | resolution: {integrity: sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==} 1342 | engines: {node: '>=8'} 1343 | dependencies: 1344 | type-fest: 0.8.1 1345 | dev: true 1346 | 1347 | /globals/13.8.0: 1348 | resolution: {integrity: sha512-rHtdA6+PDBIjeEvA91rpqzEvk/k3/i7EeNQiryiWuJH0Hw9cpyJMAt2jtbAwUaRdhD+573X4vWw6IcjKPasi9Q==} 1349 | engines: {node: '>=8'} 1350 | dependencies: 1351 | type-fest: 0.20.2 1352 | dev: true 1353 | 1354 | /globby/11.0.3: 1355 | resolution: {integrity: sha512-ffdmosjA807y7+lA1NM0jELARVmYul/715xiILEjo3hBLPTcirgQNnXECn5g3mtR8TOLCVbkfua1Hpen25/Xcg==} 1356 | engines: {node: '>=10'} 1357 | dependencies: 1358 | array-union: 2.1.0 1359 | dir-glob: 3.0.1 1360 | fast-glob: 3.2.5 1361 | ignore: 5.1.8 1362 | merge2: 1.4.1 1363 | slash: 3.0.0 1364 | dev: true 1365 | 1366 | /graceful-fs/4.2.6: 1367 | resolution: {integrity: sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==} 1368 | dev: true 1369 | 1370 | /has-bigints/1.0.1: 1371 | resolution: {integrity: sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA==} 1372 | dev: true 1373 | 1374 | /has-flag/3.0.0: 1375 | resolution: {integrity: sha1-tdRU3CGZriJWmfNGfloH87lVuv0=} 1376 | engines: {node: '>=4'} 1377 | dev: true 1378 | 1379 | /has-flag/4.0.0: 1380 | resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==} 1381 | engines: {node: '>=8'} 1382 | dev: true 1383 | 1384 | /has-symbols/1.0.2: 1385 | resolution: {integrity: sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw==} 1386 | engines: {node: '>= 0.4'} 1387 | dev: true 1388 | 1389 | /has/1.0.3: 1390 | resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==} 1391 | engines: {node: '>= 0.4.0'} 1392 | dependencies: 1393 | function-bind: 1.1.1 1394 | dev: true 1395 | 1396 | /hosted-git-info/2.8.9: 1397 | resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==} 1398 | dev: true 1399 | 1400 | /human-signals/1.1.1: 1401 | resolution: {integrity: sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw==} 1402 | engines: {node: '>=8.12.0'} 1403 | dev: true 1404 | 1405 | /husky/4.3.8: 1406 | resolution: {integrity: sha512-LCqqsB0PzJQ/AlCgfrfzRe3e3+NvmefAdKQhRYpxS4u6clblBoDdzzvHi8fmxKRzvMxPY/1WZWzomPZww0Anow==} 1407 | engines: {node: '>=10'} 1408 | hasBin: true 1409 | requiresBuild: true 1410 | dependencies: 1411 | chalk: 4.1.0 1412 | ci-info: 2.0.0 1413 | compare-versions: 3.6.0 1414 | cosmiconfig: 7.0.0 1415 | find-versions: 4.0.0 1416 | opencollective-postinstall: 2.0.3 1417 | pkg-dir: 5.0.0 1418 | please-upgrade-node: 3.2.0 1419 | slash: 3.0.0 1420 | which-pm-runs: 1.0.0 1421 | dev: true 1422 | 1423 | /ignore/4.0.6: 1424 | resolution: {integrity: sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==} 1425 | engines: {node: '>= 4'} 1426 | dev: true 1427 | 1428 | /ignore/5.1.8: 1429 | resolution: {integrity: sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==} 1430 | engines: {node: '>= 4'} 1431 | dev: true 1432 | 1433 | /import-fresh/3.3.0: 1434 | resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} 1435 | engines: {node: '>=6'} 1436 | dependencies: 1437 | parent-module: 1.0.1 1438 | resolve-from: 4.0.0 1439 | dev: true 1440 | 1441 | /import-modules/2.1.0: 1442 | resolution: {integrity: sha512-8HEWcnkbGpovH9yInoisxaSoIg9Brbul+Ju3Kqe2UsYDUBJD/iQjSgEj0zPcTDPKfPp2fs5xlv1i+JSye/m1/A==} 1443 | engines: {node: '>=8'} 1444 | dev: true 1445 | 1446 | /imurmurhash/0.1.4: 1447 | resolution: {integrity: sha1-khi5srkoojixPcT7a21XbyMUU+o=} 1448 | engines: {node: '>=0.8.19'} 1449 | dev: true 1450 | 1451 | /indent-string/4.0.0: 1452 | resolution: {integrity: sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==} 1453 | engines: {node: '>=8'} 1454 | dev: true 1455 | 1456 | /inflight/1.0.6: 1457 | resolution: {integrity: sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=} 1458 | dependencies: 1459 | once: 1.4.0 1460 | wrappy: 1.0.2 1461 | dev: true 1462 | 1463 | /inherits/2.0.4: 1464 | resolution: {integrity: sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==} 1465 | dev: true 1466 | 1467 | /is-arrayish/0.2.1: 1468 | resolution: {integrity: sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0=} 1469 | dev: true 1470 | 1471 | /is-bigint/1.0.1: 1472 | resolution: {integrity: sha512-J0ELF4yHFxHy0cmSxZuheDOz2luOdVvqjwmEcj8H/L1JHeuEDSDbeRP+Dk9kFVk5RTFzbucJ2Kb9F7ixY2QaCg==} 1473 | dev: true 1474 | 1475 | /is-boolean-object/1.1.0: 1476 | resolution: {integrity: sha512-a7Uprx8UtD+HWdyYwnD1+ExtTgqQtD2k/1yJgtXP6wnMm8byhkoTZRl+95LLThpzNZJ5aEvi46cdH+ayMFRwmA==} 1477 | engines: {node: '>= 0.4'} 1478 | dependencies: 1479 | call-bind: 1.0.2 1480 | dev: true 1481 | 1482 | /is-callable/1.2.3: 1483 | resolution: {integrity: sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==} 1484 | engines: {node: '>= 0.4'} 1485 | dev: true 1486 | 1487 | /is-core-module/2.2.0: 1488 | resolution: {integrity: sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==} 1489 | dependencies: 1490 | has: 1.0.3 1491 | dev: true 1492 | 1493 | /is-date-object/1.0.2: 1494 | resolution: {integrity: sha512-USlDT524woQ08aoZFzh3/Z6ch9Y/EWXEHQ/AaRN0SkKq4t2Jw2R2339tSXmwuVoY7LLlBCbOIlx2myP/L5zk0g==} 1495 | engines: {node: '>= 0.4'} 1496 | dev: true 1497 | 1498 | /is-extglob/2.1.1: 1499 | resolution: {integrity: sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=} 1500 | engines: {node: '>=0.10.0'} 1501 | dev: true 1502 | 1503 | /is-fullwidth-code-point/3.0.0: 1504 | resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==} 1505 | engines: {node: '>=8'} 1506 | dev: true 1507 | 1508 | /is-get-set-prop/1.0.0: 1509 | resolution: {integrity: sha1-JzGHfk14pqae3M5rudaLB3nnYxI=} 1510 | dependencies: 1511 | get-set-props: 0.1.0 1512 | lowercase-keys: 1.0.1 1513 | dev: true 1514 | 1515 | /is-glob/4.0.1: 1516 | resolution: {integrity: sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg==} 1517 | engines: {node: '>=0.10.0'} 1518 | dependencies: 1519 | is-extglob: 2.1.1 1520 | dev: true 1521 | 1522 | /is-js-type/2.0.0: 1523 | resolution: {integrity: sha1-c2FwBtZZtOtHKbunR9KHgt8PfiI=} 1524 | dependencies: 1525 | js-types: 1.0.0 1526 | dev: true 1527 | 1528 | /is-negative-zero/2.0.1: 1529 | resolution: {integrity: sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==} 1530 | engines: {node: '>= 0.4'} 1531 | dev: true 1532 | 1533 | /is-number-object/1.0.4: 1534 | resolution: {integrity: sha512-zohwelOAur+5uXtk8O3GPQ1eAcu4ZX3UwxQhUlfFFMNpUd83gXgjbhJh6HmB6LUNV/ieOLQuDwJO3dWJosUeMw==} 1535 | engines: {node: '>= 0.4'} 1536 | dev: true 1537 | 1538 | /is-number/7.0.0: 1539 | resolution: {integrity: sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==} 1540 | engines: {node: '>=0.12.0'} 1541 | dev: true 1542 | 1543 | /is-obj-prop/1.0.0: 1544 | resolution: {integrity: sha1-s03nnEULjXxzqyzfZ9yHWtuF+A4=} 1545 | dependencies: 1546 | lowercase-keys: 1.0.1 1547 | obj-props: 1.3.0 1548 | dev: true 1549 | 1550 | /is-obj/1.0.1: 1551 | resolution: {integrity: sha1-PkcprB9f3gJc19g6iW2rn09n2w8=} 1552 | engines: {node: '>=0.10.0'} 1553 | dev: true 1554 | 1555 | /is-proto-prop/2.0.0: 1556 | resolution: {integrity: sha512-jl3NbQ/fGLv5Jhan4uX+Ge9ohnemqyblWVVCpAvtTQzNFvV2xhJq+esnkIbYQ9F1nITXoLfDDQLp7LBw/zzncg==} 1557 | dependencies: 1558 | lowercase-keys: 1.0.1 1559 | proto-props: 2.0.0 1560 | dev: true 1561 | 1562 | /is-regex/1.1.2: 1563 | resolution: {integrity: sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==} 1564 | engines: {node: '>= 0.4'} 1565 | dependencies: 1566 | call-bind: 1.0.2 1567 | has-symbols: 1.0.2 1568 | dev: true 1569 | 1570 | /is-regexp/1.0.0: 1571 | resolution: {integrity: sha1-/S2INUXEa6xaYz57mgnof6LLUGk=} 1572 | engines: {node: '>=0.10.0'} 1573 | dev: true 1574 | 1575 | /is-stream/2.0.0: 1576 | resolution: {integrity: sha512-XCoy+WlUr7d1+Z8GgSuXmpuUFC9fOhRXglJMx+dwLKTkL44Cjd4W1Z5P+BQZpr+cR93aGP4S/s7Ftw6Nd/kiEw==} 1577 | engines: {node: '>=8'} 1578 | dev: true 1579 | 1580 | /is-string/1.0.5: 1581 | resolution: {integrity: sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==} 1582 | engines: {node: '>= 0.4'} 1583 | dev: true 1584 | 1585 | /is-symbol/1.0.3: 1586 | resolution: {integrity: sha512-OwijhaRSgqvhm/0ZdAcXNZt9lYdKFpcRDT5ULUuYXPoT794UNOdU+gpT6Rzo7b4V2HUl/op6GqY894AZwv9faQ==} 1587 | engines: {node: '>= 0.4'} 1588 | dependencies: 1589 | has-symbols: 1.0.2 1590 | dev: true 1591 | 1592 | /is-unicode-supported/0.1.0: 1593 | resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} 1594 | engines: {node: '>=10'} 1595 | dev: true 1596 | 1597 | /isarray/1.0.0: 1598 | resolution: {integrity: sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=} 1599 | dev: true 1600 | 1601 | /isexe/2.0.0: 1602 | resolution: {integrity: sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=} 1603 | dev: true 1604 | 1605 | /js-tokens/4.0.0: 1606 | resolution: {integrity: sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==} 1607 | dev: true 1608 | 1609 | /js-types/1.0.0: 1610 | resolution: {integrity: sha1-0kLmSU7Vcq08koCfyL7X92h8vwM=} 1611 | engines: {node: '>=0.10.0'} 1612 | dev: true 1613 | 1614 | /js-yaml/3.14.1: 1615 | resolution: {integrity: sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==} 1616 | hasBin: true 1617 | dependencies: 1618 | argparse: 1.0.10 1619 | esprima: 4.0.1 1620 | dev: true 1621 | 1622 | /jsdoctypeparser/9.0.0: 1623 | resolution: {integrity: sha512-jrTA2jJIL6/DAEILBEh2/w9QxCuwmvNXIry39Ay/HVfhE3o2yVV0U44blYkqdHA/OKloJEqvJy0xU+GSdE2SIw==} 1624 | engines: {node: '>=10'} 1625 | hasBin: true 1626 | dev: true 1627 | 1628 | /jsesc/2.5.2: 1629 | resolution: {integrity: sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==} 1630 | engines: {node: '>=4'} 1631 | hasBin: true 1632 | dev: true 1633 | 1634 | /json-parse-even-better-errors/2.3.1: 1635 | resolution: {integrity: sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w==} 1636 | dev: true 1637 | 1638 | /json-schema-traverse/0.4.1: 1639 | resolution: {integrity: sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==} 1640 | dev: true 1641 | 1642 | /json-schema-traverse/1.0.0: 1643 | resolution: {integrity: sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug==} 1644 | dev: true 1645 | 1646 | /json-stable-stringify-without-jsonify/1.0.1: 1647 | resolution: {integrity: sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=} 1648 | dev: true 1649 | 1650 | /json5/1.0.1: 1651 | resolution: {integrity: sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==} 1652 | hasBin: true 1653 | dependencies: 1654 | minimist: 1.2.5 1655 | dev: true 1656 | 1657 | /json5/2.2.0: 1658 | resolution: {integrity: sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==} 1659 | engines: {node: '>=6'} 1660 | hasBin: true 1661 | dependencies: 1662 | minimist: 1.2.5 1663 | dev: true 1664 | 1665 | /jsonc-eslint-parser/1.0.1: 1666 | resolution: {integrity: sha512-mh5LY5byThmc692EqJS3Ss9sViNoNeCLNG5VQUgJLoAFFM3FzdIetd99qEiiQ+NXBVAIUgX5sWeK9leniS8RbQ==} 1667 | dependencies: 1668 | eslint-utils: 2.1.0 1669 | eslint-visitor-keys: 2.0.0 1670 | espree: 7.3.1 1671 | dev: true 1672 | 1673 | /jsonc-parser/3.0.0: 1674 | resolution: {integrity: sha512-fQzRfAbIBnR0IQvftw9FJveWiHp72Fg20giDrHz6TdfB12UH/uue0D3hm57UB5KgAVuniLMCaS8P1IMj9NR7cA==} 1675 | dev: true 1676 | 1677 | /levn/0.4.1: 1678 | resolution: {integrity: sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ==} 1679 | engines: {node: '>= 0.8.0'} 1680 | dependencies: 1681 | prelude-ls: 1.2.1 1682 | type-check: 0.4.0 1683 | dev: true 1684 | 1685 | /lines-and-columns/1.1.6: 1686 | resolution: {integrity: sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=} 1687 | dev: true 1688 | 1689 | /lint-staged/10.5.4: 1690 | resolution: {integrity: sha512-EechC3DdFic/TdOPgj/RB3FicqE6932LTHCUm0Y2fsD9KGlLB+RwJl2q1IYBIvEsKzDOgn0D4gll+YxG5RsrKg==} 1691 | hasBin: true 1692 | dependencies: 1693 | chalk: 4.1.0 1694 | cli-truncate: 2.1.0 1695 | commander: 6.2.1 1696 | cosmiconfig: 7.0.0 1697 | debug: 4.3.1 1698 | dedent: 0.7.0 1699 | enquirer: 2.3.6 1700 | execa: 4.1.0 1701 | listr2: 3.6.3_enquirer@2.3.6 1702 | log-symbols: 4.1.0 1703 | micromatch: 4.0.4 1704 | normalize-path: 3.0.0 1705 | please-upgrade-node: 3.2.0 1706 | string-argv: 0.3.1 1707 | stringify-object: 3.3.0 1708 | transitivePeerDependencies: 1709 | - supports-color 1710 | dev: true 1711 | 1712 | /listr2/3.6.3_enquirer@2.3.6: 1713 | resolution: {integrity: sha512-YJMIY4z/Tosa/8N5YcCfcLBR5RlcJNt9vB+2ip5o1cbyxcLqKEN87lCEN7TMuq+UNMPqO93HP5wv1PrTZjs7nQ==} 1714 | engines: {node: '>=10.0.0'} 1715 | peerDependencies: 1716 | enquirer: '>= 2.3.0 < 3' 1717 | dependencies: 1718 | chalk: 4.1.0 1719 | cli-truncate: 2.1.0 1720 | enquirer: 2.3.6 1721 | figures: 3.2.0 1722 | indent-string: 4.0.0 1723 | log-update: 4.0.0 1724 | p-map: 4.0.0 1725 | rxjs: 6.6.7 1726 | through: 2.3.8 1727 | wrap-ansi: 7.0.0 1728 | dev: true 1729 | 1730 | /load-json-file/2.0.0: 1731 | resolution: {integrity: sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=} 1732 | engines: {node: '>=4'} 1733 | dependencies: 1734 | graceful-fs: 4.2.6 1735 | parse-json: 2.2.0 1736 | pify: 2.3.0 1737 | strip-bom: 3.0.0 1738 | dev: true 1739 | 1740 | /locate-path/2.0.0: 1741 | resolution: {integrity: sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=} 1742 | engines: {node: '>=4'} 1743 | dependencies: 1744 | p-locate: 2.0.0 1745 | path-exists: 3.0.0 1746 | dev: true 1747 | 1748 | /locate-path/5.0.0: 1749 | resolution: {integrity: sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==} 1750 | engines: {node: '>=8'} 1751 | dependencies: 1752 | p-locate: 4.1.0 1753 | dev: true 1754 | 1755 | /locate-path/6.0.0: 1756 | resolution: {integrity: sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw==} 1757 | engines: {node: '>=10'} 1758 | dependencies: 1759 | p-locate: 5.0.0 1760 | dev: true 1761 | 1762 | /lodash.clonedeep/4.5.0: 1763 | resolution: {integrity: sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=} 1764 | dev: true 1765 | 1766 | /lodash.flatten/4.4.0: 1767 | resolution: {integrity: sha1-8xwiIlqWMtK7+OSt2+8kCqdlph8=} 1768 | dev: true 1769 | 1770 | /lodash.truncate/4.4.2: 1771 | resolution: {integrity: sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM=} 1772 | dev: true 1773 | 1774 | /lodash/4.17.21: 1775 | resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} 1776 | dev: true 1777 | 1778 | /log-symbols/4.1.0: 1779 | resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} 1780 | engines: {node: '>=10'} 1781 | dependencies: 1782 | chalk: 4.1.0 1783 | is-unicode-supported: 0.1.0 1784 | dev: true 1785 | 1786 | /log-update/4.0.0: 1787 | resolution: {integrity: sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg==} 1788 | engines: {node: '>=10'} 1789 | dependencies: 1790 | ansi-escapes: 4.3.2 1791 | cli-cursor: 3.1.0 1792 | slice-ansi: 4.0.0 1793 | wrap-ansi: 6.2.0 1794 | dev: true 1795 | 1796 | /lowercase-keys/1.0.1: 1797 | resolution: {integrity: sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA==} 1798 | engines: {node: '>=0.10.0'} 1799 | dev: true 1800 | 1801 | /lru-cache/6.0.0: 1802 | resolution: {integrity: sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==} 1803 | engines: {node: '>=10'} 1804 | dependencies: 1805 | yallist: 4.0.0 1806 | dev: true 1807 | 1808 | /merge-stream/2.0.0: 1809 | resolution: {integrity: sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==} 1810 | dev: true 1811 | 1812 | /merge2/1.4.1: 1813 | resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==} 1814 | engines: {node: '>= 8'} 1815 | dev: true 1816 | 1817 | /micromatch/4.0.4: 1818 | resolution: {integrity: sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==} 1819 | engines: {node: '>=8.6'} 1820 | dependencies: 1821 | braces: 3.0.2 1822 | picomatch: 2.2.3 1823 | dev: true 1824 | 1825 | /mimic-fn/2.1.0: 1826 | resolution: {integrity: sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==} 1827 | engines: {node: '>=6'} 1828 | dev: true 1829 | 1830 | /minimatch/3.0.4: 1831 | resolution: {integrity: sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==} 1832 | dependencies: 1833 | brace-expansion: 1.1.11 1834 | dev: true 1835 | 1836 | /minimist/1.2.5: 1837 | resolution: {integrity: sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==} 1838 | dev: true 1839 | 1840 | /ms/2.0.0: 1841 | resolution: {integrity: sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=} 1842 | dev: true 1843 | 1844 | /ms/2.1.2: 1845 | resolution: {integrity: sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==} 1846 | dev: true 1847 | 1848 | /multimap/1.1.0: 1849 | resolution: {integrity: sha512-0ZIR9PasPxGXmRsEF8jsDzndzHDj7tIav+JUmvIFB/WHswliFnquxECT/De7GR4yg99ky/NlRKJT82G1y271bw==} 1850 | dev: true 1851 | 1852 | /natural-compare/1.4.0: 1853 | resolution: {integrity: sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=} 1854 | dev: true 1855 | 1856 | /node-releases/1.1.71: 1857 | resolution: {integrity: sha512-zR6HoT6LrLCRBwukmrVbHv0EpEQjksO6GmFcZQQuCAy139BEsoVKPYnf3jongYW83fAa1torLGYwxxky/p28sg==} 1858 | dev: true 1859 | 1860 | /normalize-package-data/2.5.0: 1861 | resolution: {integrity: sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==} 1862 | dependencies: 1863 | hosted-git-info: 2.8.9 1864 | resolve: 1.20.0 1865 | semver: 5.7.1 1866 | validate-npm-package-license: 3.0.4 1867 | dev: true 1868 | 1869 | /normalize-path/3.0.0: 1870 | resolution: {integrity: sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==} 1871 | engines: {node: '>=0.10.0'} 1872 | dev: true 1873 | 1874 | /npm-run-path/4.0.1: 1875 | resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==} 1876 | engines: {node: '>=8'} 1877 | dependencies: 1878 | path-key: 3.1.1 1879 | dev: true 1880 | 1881 | /obj-props/1.3.0: 1882 | resolution: {integrity: sha512-k2Xkjx5wn6eC3537SWAXHzB6lkI81kS+icMKMkh4nG3w7shWG6MaWOBrNvhWVOszrtL5uxdfymQQfPUxwY+2eg==} 1883 | engines: {node: '>=0.10.0'} 1884 | dev: true 1885 | 1886 | /object-inspect/1.10.1: 1887 | resolution: {integrity: sha512-WQUIkCSDPWm5ing/PTUkLr2KaOXX2uV/vz1hLGW2XbZ/RDUmtgcsOyEqA1ox0rkyNx9mJX4kxX+YWceje3pmag==} 1888 | dev: true 1889 | 1890 | /object-keys/1.1.1: 1891 | resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==} 1892 | engines: {node: '>= 0.4'} 1893 | dev: true 1894 | 1895 | /object.assign/4.1.2: 1896 | resolution: {integrity: sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==} 1897 | engines: {node: '>= 0.4'} 1898 | dependencies: 1899 | call-bind: 1.0.2 1900 | define-properties: 1.1.3 1901 | has-symbols: 1.0.2 1902 | object-keys: 1.1.1 1903 | dev: true 1904 | 1905 | /object.values/1.1.3: 1906 | resolution: {integrity: sha512-nkF6PfDB9alkOUxpf1HNm/QlkeW3SReqL5WXeBLpEJJnlPSvRaDQpW3gQTksTN3fgJX4hL42RzKyOin6ff3tyw==} 1907 | engines: {node: '>= 0.4'} 1908 | dependencies: 1909 | call-bind: 1.0.2 1910 | define-properties: 1.1.3 1911 | es-abstract: 1.18.0 1912 | has: 1.0.3 1913 | dev: true 1914 | 1915 | /once/1.4.0: 1916 | resolution: {integrity: sha1-WDsap3WWHUsROsF9nFC6753Xa9E=} 1917 | dependencies: 1918 | wrappy: 1.0.2 1919 | dev: true 1920 | 1921 | /onetime/5.1.2: 1922 | resolution: {integrity: sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==} 1923 | engines: {node: '>=6'} 1924 | dependencies: 1925 | mimic-fn: 2.1.0 1926 | dev: true 1927 | 1928 | /opencollective-postinstall/2.0.3: 1929 | resolution: {integrity: sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q==} 1930 | hasBin: true 1931 | dev: true 1932 | 1933 | /optionator/0.9.1: 1934 | resolution: {integrity: sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw==} 1935 | engines: {node: '>= 0.8.0'} 1936 | dependencies: 1937 | deep-is: 0.1.3 1938 | fast-levenshtein: 2.0.6 1939 | levn: 0.4.1 1940 | prelude-ls: 1.2.1 1941 | type-check: 0.4.0 1942 | word-wrap: 1.2.3 1943 | dev: true 1944 | 1945 | /p-limit/1.3.0: 1946 | resolution: {integrity: sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==} 1947 | engines: {node: '>=4'} 1948 | dependencies: 1949 | p-try: 1.0.0 1950 | dev: true 1951 | 1952 | /p-limit/2.3.0: 1953 | resolution: {integrity: sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==} 1954 | engines: {node: '>=6'} 1955 | dependencies: 1956 | p-try: 2.2.0 1957 | dev: true 1958 | 1959 | /p-limit/3.1.0: 1960 | resolution: {integrity: sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==} 1961 | engines: {node: '>=10'} 1962 | dependencies: 1963 | yocto-queue: 0.1.0 1964 | dev: true 1965 | 1966 | /p-locate/2.0.0: 1967 | resolution: {integrity: sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=} 1968 | engines: {node: '>=4'} 1969 | dependencies: 1970 | p-limit: 1.3.0 1971 | dev: true 1972 | 1973 | /p-locate/4.1.0: 1974 | resolution: {integrity: sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==} 1975 | engines: {node: '>=8'} 1976 | dependencies: 1977 | p-limit: 2.3.0 1978 | dev: true 1979 | 1980 | /p-locate/5.0.0: 1981 | resolution: {integrity: sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw==} 1982 | engines: {node: '>=10'} 1983 | dependencies: 1984 | p-limit: 3.1.0 1985 | dev: true 1986 | 1987 | /p-map/4.0.0: 1988 | resolution: {integrity: sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==} 1989 | engines: {node: '>=10'} 1990 | dependencies: 1991 | aggregate-error: 3.1.0 1992 | dev: true 1993 | 1994 | /p-try/1.0.0: 1995 | resolution: {integrity: sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=} 1996 | engines: {node: '>=4'} 1997 | dev: true 1998 | 1999 | /p-try/2.2.0: 2000 | resolution: {integrity: sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==} 2001 | engines: {node: '>=6'} 2002 | dev: true 2003 | 2004 | /parent-module/1.0.1: 2005 | resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} 2006 | engines: {node: '>=6'} 2007 | dependencies: 2008 | callsites: 3.1.0 2009 | dev: true 2010 | 2011 | /parse-json/2.2.0: 2012 | resolution: {integrity: sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=} 2013 | engines: {node: '>=0.10.0'} 2014 | dependencies: 2015 | error-ex: 1.3.2 2016 | dev: true 2017 | 2018 | /parse-json/5.2.0: 2019 | resolution: {integrity: sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==} 2020 | engines: {node: '>=8'} 2021 | dependencies: 2022 | '@babel/code-frame': 7.12.13 2023 | error-ex: 1.3.2 2024 | json-parse-even-better-errors: 2.3.1 2025 | lines-and-columns: 1.1.6 2026 | dev: true 2027 | 2028 | /path-exists/3.0.0: 2029 | resolution: {integrity: sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=} 2030 | engines: {node: '>=4'} 2031 | dev: true 2032 | 2033 | /path-exists/4.0.0: 2034 | resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} 2035 | engines: {node: '>=8'} 2036 | dev: true 2037 | 2038 | /path-is-absolute/1.0.1: 2039 | resolution: {integrity: sha1-F0uSaHNVNP+8es5r9TpanhtcX18=} 2040 | engines: {node: '>=0.10.0'} 2041 | dev: true 2042 | 2043 | /path-key/3.1.1: 2044 | resolution: {integrity: sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==} 2045 | engines: {node: '>=8'} 2046 | dev: true 2047 | 2048 | /path-parse/1.0.6: 2049 | resolution: {integrity: sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==} 2050 | dev: true 2051 | 2052 | /path-type/2.0.0: 2053 | resolution: {integrity: sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=} 2054 | engines: {node: '>=4'} 2055 | dependencies: 2056 | pify: 2.3.0 2057 | dev: true 2058 | 2059 | /path-type/4.0.0: 2060 | resolution: {integrity: sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==} 2061 | engines: {node: '>=8'} 2062 | dev: true 2063 | 2064 | /picomatch/2.2.3: 2065 | resolution: {integrity: sha512-KpELjfwcCDUb9PeigTs2mBJzXUPzAuP2oPcA989He8Rte0+YUAjw1JVedDhuTKPkHjSYzMN3npC9luThGYEKdg==} 2066 | engines: {node: '>=8.6'} 2067 | dev: true 2068 | 2069 | /pify/2.3.0: 2070 | resolution: {integrity: sha1-7RQaasBDqEnqWISY59yosVMw6Qw=} 2071 | engines: {node: '>=0.10.0'} 2072 | dev: true 2073 | 2074 | /pkg-dir/2.0.0: 2075 | resolution: {integrity: sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=} 2076 | engines: {node: '>=4'} 2077 | dependencies: 2078 | find-up: 2.1.0 2079 | dev: true 2080 | 2081 | /pkg-dir/5.0.0: 2082 | resolution: {integrity: sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA==} 2083 | engines: {node: '>=10'} 2084 | dependencies: 2085 | find-up: 5.0.0 2086 | dev: true 2087 | 2088 | /please-upgrade-node/3.2.0: 2089 | resolution: {integrity: sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg==} 2090 | dependencies: 2091 | semver-compare: 1.0.0 2092 | dev: true 2093 | 2094 | /pluralize/8.0.0: 2095 | resolution: {integrity: sha512-Nc3IT5yHzflTfbjgqWcCPpo7DaKy4FnpB0l/zCAW0Tc7jxAiuqSxHasntB3D7887LSrA93kDJ9IXovxJYxyLCA==} 2096 | engines: {node: '>=4'} 2097 | dev: true 2098 | 2099 | /prelude-ls/1.2.1: 2100 | resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} 2101 | engines: {node: '>= 0.8.0'} 2102 | dev: true 2103 | 2104 | /progress/2.0.3: 2105 | resolution: {integrity: sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==} 2106 | engines: {node: '>=0.4.0'} 2107 | dev: true 2108 | 2109 | /proto-props/2.0.0: 2110 | resolution: {integrity: sha512-2yma2tog9VaRZY2mn3Wq51uiSW4NcPYT1cQdBagwyrznrilKSZwIZ0UG3ZPL/mx+axEns0hE35T5ufOYZXEnBQ==} 2111 | engines: {node: '>=4'} 2112 | dev: true 2113 | 2114 | /pump/3.0.0: 2115 | resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==} 2116 | dependencies: 2117 | end-of-stream: 1.4.4 2118 | once: 1.4.0 2119 | dev: true 2120 | 2121 | /punycode/2.1.1: 2122 | resolution: {integrity: sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==} 2123 | engines: {node: '>=6'} 2124 | dev: true 2125 | 2126 | /queue-microtask/1.2.3: 2127 | resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} 2128 | dev: true 2129 | 2130 | /read-pkg-up/2.0.0: 2131 | resolution: {integrity: sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=} 2132 | engines: {node: '>=4'} 2133 | dependencies: 2134 | find-up: 2.1.0 2135 | read-pkg: 2.0.0 2136 | dev: true 2137 | 2138 | /read-pkg-up/7.0.1: 2139 | resolution: {integrity: sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg==} 2140 | engines: {node: '>=8'} 2141 | dependencies: 2142 | find-up: 4.1.0 2143 | read-pkg: 5.2.0 2144 | type-fest: 0.8.1 2145 | dev: true 2146 | 2147 | /read-pkg/2.0.0: 2148 | resolution: {integrity: sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=} 2149 | engines: {node: '>=4'} 2150 | dependencies: 2151 | load-json-file: 2.0.0 2152 | normalize-package-data: 2.5.0 2153 | path-type: 2.0.0 2154 | dev: true 2155 | 2156 | /read-pkg/5.2.0: 2157 | resolution: {integrity: sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg==} 2158 | engines: {node: '>=8'} 2159 | dependencies: 2160 | '@types/normalize-package-data': 2.4.0 2161 | normalize-package-data: 2.5.0 2162 | parse-json: 5.2.0 2163 | type-fest: 0.6.0 2164 | dev: true 2165 | 2166 | /regexp-tree/0.1.23: 2167 | resolution: {integrity: sha512-+7HWfb4Bvu8Rs2eQTUIpX9I/PlQkYOuTNbRpKLJlQpSgwSkzFYh+pUj0gtvglnOZLKB6YgnIgRuJ2/IlpL48qw==} 2168 | hasBin: true 2169 | dev: true 2170 | 2171 | /regexpp/3.1.0: 2172 | resolution: {integrity: sha512-ZOIzd8yVsQQA7j8GCSlPGXwg5PfmA1mrq0JP4nGhh54LaKN3xdai/vHUDu74pKwV8OxseMS65u2NImosQcSD0Q==} 2173 | engines: {node: '>=8'} 2174 | dev: true 2175 | 2176 | /require-from-string/2.0.2: 2177 | resolution: {integrity: sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw==} 2178 | engines: {node: '>=0.10.0'} 2179 | dev: true 2180 | 2181 | /reserved-words/0.1.2: 2182 | resolution: {integrity: sha1-AKCUD5jNUBrqqsMWQR2a3FKzGrE=} 2183 | dev: true 2184 | 2185 | /resolve-from/4.0.0: 2186 | resolution: {integrity: sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g==} 2187 | engines: {node: '>=4'} 2188 | dev: true 2189 | 2190 | /resolve/1.20.0: 2191 | resolution: {integrity: sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==} 2192 | dependencies: 2193 | is-core-module: 2.2.0 2194 | path-parse: 1.0.6 2195 | dev: true 2196 | 2197 | /restore-cursor/3.1.0: 2198 | resolution: {integrity: sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==} 2199 | engines: {node: '>=8'} 2200 | dependencies: 2201 | onetime: 5.1.2 2202 | signal-exit: 3.0.3 2203 | dev: true 2204 | 2205 | /reusify/1.0.4: 2206 | resolution: {integrity: sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==} 2207 | engines: {iojs: '>=1.0.0', node: '>=0.10.0'} 2208 | dev: true 2209 | 2210 | /rimraf/3.0.2: 2211 | resolution: {integrity: sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==} 2212 | hasBin: true 2213 | dependencies: 2214 | glob: 7.1.6 2215 | dev: true 2216 | 2217 | /run-parallel/1.2.0: 2218 | resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==} 2219 | dependencies: 2220 | queue-microtask: 1.2.3 2221 | dev: true 2222 | 2223 | /rxjs/6.6.7: 2224 | resolution: {integrity: sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==} 2225 | engines: {npm: '>=2.0.0'} 2226 | dependencies: 2227 | tslib: 1.14.1 2228 | dev: true 2229 | 2230 | /safe-buffer/5.1.2: 2231 | resolution: {integrity: sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==} 2232 | dev: true 2233 | 2234 | /safe-regex/2.1.1: 2235 | resolution: {integrity: sha512-rx+x8AMzKb5Q5lQ95Zoi6ZbJqwCLkqi3XuJXp5P3rT8OEc6sZCJG5AE5dU3lsgRr/F4Bs31jSlVN+j5KrsGu9A==} 2236 | dependencies: 2237 | regexp-tree: 0.1.23 2238 | dev: true 2239 | 2240 | /semver-compare/1.0.0: 2241 | resolution: {integrity: sha1-De4hahyUGrN+nvsXiPavxf9VN/w=} 2242 | dev: true 2243 | 2244 | /semver-regex/3.1.2: 2245 | resolution: {integrity: sha512-bXWyL6EAKOJa81XG1OZ/Yyuq+oT0b2YLlxx7c+mrdYPaPbnj6WgVULXhinMIeZGufuUBu/eVRqXEhiv4imfwxA==} 2246 | engines: {node: '>=8'} 2247 | dev: true 2248 | 2249 | /semver/5.7.1: 2250 | resolution: {integrity: sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==} 2251 | hasBin: true 2252 | dev: true 2253 | 2254 | /semver/6.3.0: 2255 | resolution: {integrity: sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==} 2256 | hasBin: true 2257 | dev: true 2258 | 2259 | /semver/7.3.5: 2260 | resolution: {integrity: sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==} 2261 | engines: {node: '>=10'} 2262 | hasBin: true 2263 | dependencies: 2264 | lru-cache: 6.0.0 2265 | dev: true 2266 | 2267 | /shebang-command/2.0.0: 2268 | resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} 2269 | engines: {node: '>=8'} 2270 | dependencies: 2271 | shebang-regex: 3.0.0 2272 | dev: true 2273 | 2274 | /shebang-regex/3.0.0: 2275 | resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} 2276 | engines: {node: '>=8'} 2277 | dev: true 2278 | 2279 | /signal-exit/3.0.3: 2280 | resolution: {integrity: sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==} 2281 | dev: true 2282 | 2283 | /slash/3.0.0: 2284 | resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} 2285 | engines: {node: '>=8'} 2286 | dev: true 2287 | 2288 | /slice-ansi/3.0.0: 2289 | resolution: {integrity: sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ==} 2290 | engines: {node: '>=8'} 2291 | dependencies: 2292 | ansi-styles: 4.3.0 2293 | astral-regex: 2.0.0 2294 | is-fullwidth-code-point: 3.0.0 2295 | dev: true 2296 | 2297 | /slice-ansi/4.0.0: 2298 | resolution: {integrity: sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==} 2299 | engines: {node: '>=10'} 2300 | dependencies: 2301 | ansi-styles: 4.3.0 2302 | astral-regex: 2.0.0 2303 | is-fullwidth-code-point: 3.0.0 2304 | dev: true 2305 | 2306 | /source-map/0.5.7: 2307 | resolution: {integrity: sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=} 2308 | engines: {node: '>=0.10.0'} 2309 | dev: true 2310 | 2311 | /spdx-correct/3.1.1: 2312 | resolution: {integrity: sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==} 2313 | dependencies: 2314 | spdx-expression-parse: 3.0.1 2315 | spdx-license-ids: 3.0.7 2316 | dev: true 2317 | 2318 | /spdx-exceptions/2.3.0: 2319 | resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==} 2320 | dev: true 2321 | 2322 | /spdx-expression-parse/3.0.1: 2323 | resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==} 2324 | dependencies: 2325 | spdx-exceptions: 2.3.0 2326 | spdx-license-ids: 3.0.7 2327 | dev: true 2328 | 2329 | /spdx-license-ids/3.0.7: 2330 | resolution: {integrity: sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==} 2331 | dev: true 2332 | 2333 | /sprintf-js/1.0.3: 2334 | resolution: {integrity: sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=} 2335 | dev: true 2336 | 2337 | /string-argv/0.3.1: 2338 | resolution: {integrity: sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg==} 2339 | engines: {node: '>=0.6.19'} 2340 | dev: true 2341 | 2342 | /string-width/4.2.2: 2343 | resolution: {integrity: sha512-XBJbT3N4JhVumXE0eoLU9DCjcaF92KLNqTmFCnG1pf8duUxFGwtP6AD6nkjw9a3IdiRtL3E2w3JDiE/xi3vOeA==} 2344 | engines: {node: '>=8'} 2345 | dependencies: 2346 | emoji-regex: 8.0.0 2347 | is-fullwidth-code-point: 3.0.0 2348 | strip-ansi: 6.0.0 2349 | dev: true 2350 | 2351 | /string.prototype.trimend/1.0.4: 2352 | resolution: {integrity: sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A==} 2353 | dependencies: 2354 | call-bind: 1.0.2 2355 | define-properties: 1.1.3 2356 | dev: true 2357 | 2358 | /string.prototype.trimstart/1.0.4: 2359 | resolution: {integrity: sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw==} 2360 | dependencies: 2361 | call-bind: 1.0.2 2362 | define-properties: 1.1.3 2363 | dev: true 2364 | 2365 | /stringify-object/3.3.0: 2366 | resolution: {integrity: sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw==} 2367 | engines: {node: '>=4'} 2368 | dependencies: 2369 | get-own-enumerable-property-symbols: 3.0.2 2370 | is-obj: 1.0.1 2371 | is-regexp: 1.0.0 2372 | dev: true 2373 | 2374 | /strip-ansi/6.0.0: 2375 | resolution: {integrity: sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==} 2376 | engines: {node: '>=8'} 2377 | dependencies: 2378 | ansi-regex: 5.0.0 2379 | dev: true 2380 | 2381 | /strip-bom/3.0.0: 2382 | resolution: {integrity: sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=} 2383 | engines: {node: '>=4'} 2384 | dev: true 2385 | 2386 | /strip-final-newline/2.0.0: 2387 | resolution: {integrity: sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==} 2388 | engines: {node: '>=6'} 2389 | dev: true 2390 | 2391 | /strip-json-comments/3.1.1: 2392 | resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} 2393 | engines: {node: '>=8'} 2394 | dev: true 2395 | 2396 | /supports-color/5.5.0: 2397 | resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==} 2398 | engines: {node: '>=4'} 2399 | dependencies: 2400 | has-flag: 3.0.0 2401 | dev: true 2402 | 2403 | /supports-color/7.2.0: 2404 | resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==} 2405 | engines: {node: '>=8'} 2406 | dependencies: 2407 | has-flag: 4.0.0 2408 | dev: true 2409 | 2410 | /table/6.1.0: 2411 | resolution: {integrity: sha512-T4G5KMmqIk6X87gLKWyU5exPpTjLjY5KyrFWaIjv3SvgaIUGXV7UEzGEnZJdTA38/yUS6f9PlKezQ0bYXG3iIQ==} 2412 | engines: {node: '>=10.0.0'} 2413 | dependencies: 2414 | ajv: 8.1.0 2415 | is-boolean-object: 1.1.0 2416 | is-number-object: 1.0.4 2417 | is-string: 1.0.5 2418 | lodash.clonedeep: 4.5.0 2419 | lodash.flatten: 4.4.0 2420 | lodash.truncate: 4.4.2 2421 | slice-ansi: 4.0.0 2422 | string-width: 4.2.2 2423 | dev: true 2424 | 2425 | /text-table/0.2.0: 2426 | resolution: {integrity: sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=} 2427 | dev: true 2428 | 2429 | /through/2.3.8: 2430 | resolution: {integrity: sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=} 2431 | dev: true 2432 | 2433 | /to-fast-properties/2.0.0: 2434 | resolution: {integrity: sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4=} 2435 | engines: {node: '>=4'} 2436 | dev: true 2437 | 2438 | /to-regex-range/5.0.1: 2439 | resolution: {integrity: sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==} 2440 | engines: {node: '>=8.0'} 2441 | dependencies: 2442 | is-number: 7.0.0 2443 | dev: true 2444 | 2445 | /tsconfig-paths/3.9.0: 2446 | resolution: {integrity: sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==} 2447 | dependencies: 2448 | '@types/json5': 0.0.29 2449 | json5: 1.0.1 2450 | minimist: 1.2.5 2451 | strip-bom: 3.0.0 2452 | dev: true 2453 | 2454 | /tslib/1.14.1: 2455 | resolution: {integrity: sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==} 2456 | dev: true 2457 | 2458 | /tsutils/3.21.0_typescript@4.2.4: 2459 | resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} 2460 | engines: {node: '>= 6'} 2461 | peerDependencies: 2462 | typescript: '>=2.8.0 || >= 3.2.0-dev || >= 3.3.0-dev || >= 3.4.0-dev || >= 3.5.0-dev || >= 3.6.0-dev || >= 3.6.0-beta || >= 3.7.0-dev || >= 3.7.0-beta' 2463 | dependencies: 2464 | tslib: 1.14.1 2465 | typescript: 4.2.4 2466 | dev: true 2467 | 2468 | /type-check/0.4.0: 2469 | resolution: {integrity: sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew==} 2470 | engines: {node: '>= 0.8.0'} 2471 | dependencies: 2472 | prelude-ls: 1.2.1 2473 | dev: true 2474 | 2475 | /type-fest/0.20.2: 2476 | resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} 2477 | engines: {node: '>=10'} 2478 | dev: true 2479 | 2480 | /type-fest/0.21.3: 2481 | resolution: {integrity: sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==} 2482 | engines: {node: '>=10'} 2483 | dev: true 2484 | 2485 | /type-fest/0.6.0: 2486 | resolution: {integrity: sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg==} 2487 | engines: {node: '>=8'} 2488 | dev: true 2489 | 2490 | /type-fest/0.8.1: 2491 | resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==} 2492 | engines: {node: '>=8'} 2493 | dev: true 2494 | 2495 | /typescript/4.2.4: 2496 | resolution: {integrity: sha512-V+evlYHZnQkaz8TRBuxTA92yZBPotr5H+WhQ7bD3hZUndx5tGOa1fuCgeSjxAzM1RiN5IzvadIXTVefuuwZCRg==} 2497 | engines: {node: '>=4.2.0'} 2498 | hasBin: true 2499 | dev: true 2500 | 2501 | /unbox-primitive/1.0.1: 2502 | resolution: {integrity: sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw==} 2503 | dependencies: 2504 | function-bind: 1.1.1 2505 | has-bigints: 1.0.1 2506 | has-symbols: 1.0.2 2507 | which-boxed-primitive: 1.0.2 2508 | dev: true 2509 | 2510 | /uri-js/4.4.1: 2511 | resolution: {integrity: sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==} 2512 | dependencies: 2513 | punycode: 2.1.1 2514 | dev: true 2515 | 2516 | /v8-compile-cache/2.3.0: 2517 | resolution: {integrity: sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA==} 2518 | dev: true 2519 | 2520 | /validate-npm-package-license/3.0.4: 2521 | resolution: {integrity: sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==} 2522 | dependencies: 2523 | spdx-correct: 3.1.1 2524 | spdx-expression-parse: 3.0.1 2525 | dev: true 2526 | 2527 | /which-boxed-primitive/1.0.2: 2528 | resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} 2529 | dependencies: 2530 | is-bigint: 1.0.1 2531 | is-boolean-object: 1.1.0 2532 | is-number-object: 1.0.4 2533 | is-string: 1.0.5 2534 | is-symbol: 1.0.3 2535 | dev: true 2536 | 2537 | /which-pm-runs/1.0.0: 2538 | resolution: {integrity: sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs=} 2539 | dev: true 2540 | 2541 | /which/2.0.2: 2542 | resolution: {integrity: sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==} 2543 | engines: {node: '>= 8'} 2544 | hasBin: true 2545 | dependencies: 2546 | isexe: 2.0.0 2547 | dev: true 2548 | 2549 | /word-wrap/1.2.3: 2550 | resolution: {integrity: sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==} 2551 | engines: {node: '>=0.10.0'} 2552 | dev: true 2553 | 2554 | /wrap-ansi/6.2.0: 2555 | resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} 2556 | engines: {node: '>=8'} 2557 | dependencies: 2558 | ansi-styles: 4.3.0 2559 | string-width: 4.2.2 2560 | strip-ansi: 6.0.0 2561 | dev: true 2562 | 2563 | /wrap-ansi/7.0.0: 2564 | resolution: {integrity: sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==} 2565 | engines: {node: '>=10'} 2566 | dependencies: 2567 | ansi-styles: 4.3.0 2568 | string-width: 4.2.2 2569 | strip-ansi: 6.0.0 2570 | dev: true 2571 | 2572 | /wrappy/1.0.2: 2573 | resolution: {integrity: sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=} 2574 | dev: true 2575 | 2576 | /yallist/4.0.0: 2577 | resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} 2578 | dev: true 2579 | 2580 | /yaml/1.10.2: 2581 | resolution: {integrity: sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg==} 2582 | engines: {node: '>= 6'} 2583 | dev: true 2584 | 2585 | /yocto-queue/0.1.0: 2586 | resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} 2587 | engines: {node: '>=10'} 2588 | dev: true 2589 | --------------------------------------------------------------------------------