├── .editorconfig ├── .eslintignore ├── .eslintrc ├── .gitignore ├── .prettierrc ├── .vscode ├── launch.json ├── settings.json └── tasks.json ├── .vscodeignore ├── CHANGELOG.md ├── LICENSE ├── README.md ├── media └── icon.png ├── package.json ├── src ├── extension.ts ├── server │ ├── convert-diagnostics.ts │ ├── get-module.ts │ ├── index.ts │ ├── server.ts │ ├── v1.ts │ ├── v2.ts │ └── v3.ts ├── types.ts └── utils │ ├── deferred.ts │ └── get-file-path.ts ├── test └── 001.html ├── tsconfig.json └── yarn.lock /.editorconfig: -------------------------------------------------------------------------------- 1 | # http://editorconfig.org 2 | root = true 3 | indent_style = tab 4 | indent_size = 4 5 | 6 | [*.md] 7 | trim_trailing_whitespace = false 8 | -------------------------------------------------------------------------------- /.eslintignore: -------------------------------------------------------------------------------- 1 | **/node_modules/**/* 2 | **/*.d.ts 3 | -------------------------------------------------------------------------------- /.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "extends": ["eslint:recommended", "prettier", "prettier/@typescript-eslint"], 3 | "env": { 4 | "browser": false, 5 | "es6": true, 6 | "node": true, 7 | "jest": true 8 | }, 9 | "plugins": ["@typescript-eslint", "jsdoc", "eslint-comments", "prettier"], 10 | "parser": "@typescript-eslint/parser", 11 | "parserOptions": { 12 | "sourceType": "module", 13 | "project": "./tsconfig.json" 14 | }, 15 | "rules": { 16 | "indent": 0, 17 | "quotes": [2, "single", "avoid-escape"], 18 | 19 | "no-var": 2, 20 | "prefer-const": 2, 21 | 22 | "no-dupe-class-members": 0, 23 | "no-unused-vars": 0, 24 | "no-array-constructor": 0, 25 | 26 | "sort-imports": [2], 27 | 28 | "node/no-unsupported-features/es-syntax": 0, 29 | 30 | "no-console": [1], 31 | 32 | "@typescript-eslint/no-unused-vars": [2, { "args": "none" }], 33 | "@typescript-eslint/no-array-constructor": 2, 34 | "@typescript-eslint/adjacent-overload-signatures": 2, 35 | "@typescript-eslint/no-namespace": [2, { "allowDeclarations": true }], 36 | "@typescript-eslint/prefer-namespace-keyword": 2, 37 | "@typescript-eslint/no-var-requires": 2, 38 | "@typescript-eslint/no-unnecessary-type-assertion": 2, 39 | "@typescript-eslint/restrict-plus-operands": 0, 40 | 41 | "eslint-comments/disable-enable-pair": "error", 42 | "eslint-comments/no-duplicate-disable": "error", 43 | "eslint-comments/no-unlimited-disable": "error", 44 | "eslint-comments/no-unused-disable": "error", 45 | "eslint-comments/no-unused-enable": "error", 46 | "eslint-comments/no-use": "off" 47 | }, 48 | "settings": { 49 | "jsdoc": { 50 | "tagNamePreference": { 51 | "param": "arg", 52 | "returns": "return" 53 | } 54 | } 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | out 3 | node_modules 4 | .vscode-test/ 5 | .vsix -------------------------------------------------------------------------------- /.prettierrc: -------------------------------------------------------------------------------- 1 | { 2 | "printWidth": 120, 3 | "tabWidth": 4, 4 | "useTabs": true, 5 | "singleQuote": true, 6 | "trailingComma": "all", 7 | "bracketSpacing": true, 8 | "arrowParens": "avoid" 9 | } 10 | -------------------------------------------------------------------------------- /.vscode/launch.json: -------------------------------------------------------------------------------- 1 | // A launch configuration that compiles the extension and then opens it inside a new window 2 | { 3 | "version": "0.1.0", 4 | "configurations": [ 5 | { 6 | "name": "Extension", 7 | "type": "extensionHost", 8 | "request": "launch", 9 | "runtimeExecutable": "${execPath}", 10 | "args": ["--extensionDevelopmentPath=${workspaceRoot}" ], 11 | "stopOnEntry": false, 12 | "sourceMaps": true, 13 | "outFiles": [ "${workspaceRoot}/out/**/*.js" ], 14 | "preLaunchTask": "npm: watch" 15 | }, 16 | { 17 | "name": "Extension Tests", 18 | "type": "extensionHost", 19 | "request": "launch", 20 | "runtimeExecutable": "${execPath}", 21 | "args": ["--extensionDevelopmentPath=${workspaceRoot}", "--extensionTestsPath=${workspaceRoot}/out/test" ], 22 | "stopOnEntry": false, 23 | "sourceMaps": true, 24 | "outFiles": [ "${workspaceRoot}/out/test/**/*.js" ], 25 | "preLaunchTask": "npm: watch" 26 | } 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /.vscode/settings.json: -------------------------------------------------------------------------------- 1 | // Place your settings in this file to overwrite default and user settings. 2 | { 3 | "files.exclude": { 4 | "out": false // set this to true to hide the "out" folder with the compiled JS files 5 | }, 6 | "search.exclude": { 7 | "out": true // set this to false to include "out" folder in search results 8 | }, 9 | "typescript.tsdk": "node_modules/typescript/lib" 10 | } -------------------------------------------------------------------------------- /.vscode/tasks.json: -------------------------------------------------------------------------------- 1 | // See https://go.microsoft.com/fwlink/?LinkId=733558 2 | // for the documentation about the tasks.json format 3 | { 4 | "version": "2.0.0", 5 | "tasks": [ 6 | { 7 | "type": "npm", 8 | "script": "watch", 9 | "problemMatcher": "$tsc-watch", 10 | "isBackground": true, 11 | "presentation": { 12 | "reveal": "never" 13 | }, 14 | "group": { 15 | "kind": "build", 16 | "isDefault": true 17 | } 18 | } 19 | ] 20 | } -------------------------------------------------------------------------------- /.vscodeignore: -------------------------------------------------------------------------------- 1 | .vscode/** 2 | .vscode-test/** 3 | out/test/** 4 | out/**/*.map 5 | src/** 6 | .editorconfig 7 | .eslintignore 8 | .eslintrc 9 | .gitignore 10 | .prettierrc 11 | tsconfig.json 12 | vsc-extension-quickstart.md 13 | yarn.lock -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # Change Log 2 | 3 | ## [Unreleased] 4 | 5 | ## 3.0.0 6 | 7 | - Change: Support for **Markuplint** `v3.x` 8 | - Change: Add the feature that **popup Accessibility Object** 9 | 10 | ## 2.2.1 11 | 12 | - Fix: Resolving a target path for Windows. 13 | 14 | ## 2.2.0 15 | 16 | - Change: Supports `Smarty` format. (Needs `@markuplint/smarty-parser`) 17 | - Fix: The evaluation stops if thrown an error 18 | 19 | ## 2.1.1 20 | 21 | - Fix: Did not run when changing a document 22 | 23 | ## 2.1.0 24 | 25 | - Fix: Crash when no-installed markuplint 26 | - Change: Default loading version `2.x` 27 | - Change: Add the setting `markuplint.defaultConfig` 28 | - Change: Add the setting `markuplint.debug` 29 | - Change: Make it possible to edit the setting per langages 30 | 31 | ## 2.0.3 32 | 33 | - Change: Output the `reason`. 34 | - Change: Supports the `info` severity. 35 | - Change: Improve debug logs. 36 | 37 | ## 2.0.2 38 | 39 | - Change: Improve to debounce the execution. 40 | 41 | ## 2.0.0 42 | 43 | - Change: Support for markuplint v2.x. 44 | 45 | ## 1.10.1 46 | 47 | - Fix: The schema path. 48 | 49 | ## 1.10.0 50 | 51 | - change: Support for `.astro` file and `@markuplint/astro-parser` 52 | - update: dependencies 53 | 54 | ## 1.9.2 55 | 56 | - Fix: The schema path. 57 | 58 | ## 1.9.1 59 | 60 | - Fix: The repository path. 61 | 62 | ## 1.9.0 63 | 64 | - update: Supported JSX Parser and JavaScript/TypeScript file. 65 | 66 | ## 1.8.0 67 | 68 | - update: Supported some new languages/templates. 69 | 70 | ## 1.7.0 71 | 72 | - update: Default [markuplint](https://github.com/markuplint/markuplint) version v1.0.0 73 | 74 | ## 1.6.0 75 | 76 | - update: Default [markuplint](https://github.com/markuplint/markuplint) version v1.0.0-alpha.57 77 | - change: Added default configuration 78 | 79 | ## [1.3.0] - 2020-07-26 80 | 81 | - update: Default [markuplint](https://github.com/markuplint/markuplint) version v1.0.0-alpha.53 82 | - change: Added languages to support 83 | 84 | ## [1.2.0] - 2020-06-30 85 | 86 | - update: Default [markuplint](https://github.com/markuplint/markuplint) version v1.0.0-alpha.45 87 | - change: Support for `.pug` file and `@markuplint/pug-parser` 88 | 89 | ## [1.1.0] - 2019-10-15 90 | 91 | - update: Default [markuplint](https://github.com/markuplint/markuplint) version v1.0.0-alpha.19 92 | - change: Support for `.vue` file and `@markuplint/vue-parser` 93 | 94 | ## [1.0.0] - 2019-09-13 95 | 96 | - update: Default [markuplint](https://github.com/markuplint/markuplint) version v1.0.0-alpha 97 | 98 | ## [0.8.0] - 2018-02-21 99 | 100 | - change: Notify message when markuplint could not be found in the node_modules of the workspace. 101 | - change: Show version of markuplint to status bar. 102 | 103 | ## [0.7.0] - 2018-02-20 104 | 105 | - change: Support for `.vue` file on Vue.js 106 | - update: Default [markuplint](https://github.com/YusukeHirao/markuplint) version [v0.21.0](https://github.com/YusukeHirao/markuplint/releases/tag/v0.21.0) 107 | 108 | ## [0.6.0] - 2018-01-20 109 | 110 | - update: Default [markuplint](https://github.com/YusukeHirao/markuplint) version [v0.16.2](https://github.com/YusukeHirao/markuplint/releases/tag/v0.16.2) 111 | 112 | ## [0.5.1] - 2018-01-15 113 | 114 | - bugfix: Fix importing module error. 115 | 116 | ## [0.5.0] - 2018-01-11 117 | 118 | - change: Importing module [markuplint](https://github.com/YusukeHirao/markuplint) from node_modules on current working directory automatically 119 | - update: Default [markuplint](https://github.com/YusukeHirao/markuplint) version [v0.14.0](https://github.com/YusukeHirao/markuplint/releases/tag/v0.14.0) 120 | 121 | ## [0.4.0] - 2018-01-08 122 | 123 | - update module [markuplint](https://github.com/YusukeHirao/markuplint) [v0.12.0](https://github.com/YusukeHirao/markuplint/releases/tag/v0.12.0) 124 | 125 | ## [0.3.0] - 2017-12-27 126 | 127 | - update module [markuplint](https://github.com/YusukeHirao/markuplint) [v0.11.0-beta.2](https://github.com/YusukeHirao/markuplint/releases/tag/v0.11.0-beta.2) 128 | 129 | ## [0.2.0] - 2017-12-20 130 | 131 | - update module [markuplint](https://github.com/YusukeHirao/markuplint) [v0.9.0](https://github.com/YusukeHirao/markuplint/releases/tag/v0.9.0) 132 | 133 | ## [0.1.1] - 2017-12-14 134 | 135 | - update module [markuplint](https://github.com/YusukeHirao/markuplint) [v0.7.0](https://github.com/YusukeHirao/markuplint/releases/tag/v0.7.0) 136 | 137 | ## [0.1.0] - 2017-12-13 138 | 139 | - Initial release 140 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2017-2020 Yusuke Hirao 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 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # vscode-markuplint 2 | 3 | The repository has moved to [Markuplint](https://github.com/markuplint/markuplint/tree/dev/vscode). 4 | -------------------------------------------------------------------------------- /media/icon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/markuplint/vscode-markuplint/e743ebf6a51a87eae2ba259d9e9ccf7982e52264/media/icon.png -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "vscode-markuplint", 3 | "displayName": "markuplint", 4 | "description": "markuplint for VS Code", 5 | "version": "3.0.0", 6 | "publisher": "yusukehirao", 7 | "license": "MIT", 8 | "repository": "https://github.com/markuplint/vscode-markuplint.git", 9 | "icon": "media/icon.png", 10 | "galleryBanner": { 11 | "color": "#1572eb", 12 | "theme": "dark" 13 | }, 14 | "engines": { 15 | "vscode": "^1.74.0" 16 | }, 17 | "categories": [ 18 | "Programming Languages", 19 | "Linters" 20 | ], 21 | "activationEvents": [ 22 | "onLanguage:html", 23 | "onLanguage:vue", 24 | "onLanguage:jade", 25 | "onLanguage:svelte", 26 | "onLanguage:astro", 27 | "onLanguage:nunjucks", 28 | "onLanguage:liquid", 29 | "onLanguage:handlebars", 30 | "onLanguage:mustache", 31 | "onLanguage:ejs", 32 | "onLanguage:haml", 33 | "onLanguage:jstl", 34 | "onLanguage:php", 35 | "onLanguage:smarty", 36 | "onLanguage:ruby", 37 | "onLanguage:javascript", 38 | "onLanguage:javascriptreact", 39 | "onLanguage:typescript", 40 | "onLanguage:typescriptreact" 41 | ], 42 | "main": "./out/extension", 43 | "contributes": { 44 | "configuration": { 45 | "type": "object", 46 | "title": "markuplint configuration", 47 | "properties": { 48 | "markuplint.enable": { 49 | "type": "boolean", 50 | "description": "Control whether markuplint is enabled for HTML files or not.", 51 | "scope": "language-overridable", 52 | "default": true 53 | }, 54 | "markuplint.debug": { 55 | "type": "boolean", 56 | "description": "Enable debug mode.", 57 | "default": false 58 | }, 59 | "markuplint.defaultConfig": { 60 | "$ref": "https://raw.githubusercontent.com/markuplint/markuplint/main/config.schema.json", 61 | "description": "It's the configuration specified if configuration files do not exist.", 62 | "default": { 63 | "extends": [ 64 | "markuplint:recommended" 65 | ] 66 | } 67 | } 68 | } 69 | }, 70 | "jsonValidation": [ 71 | { 72 | "fileMatch": "**/{.markuplintrc,markuplintrc.json,markuplint.config.json,markuplint.json}", 73 | "url": "https://raw.githubusercontent.com/markuplint/markuplint/main/config.schema.json" 74 | } 75 | ] 76 | }, 77 | "scripts": { 78 | "vscode:prepublish": "npm run build", 79 | "build": "tsc -p ./", 80 | "watch": "tsc -watch -p ./" 81 | }, 82 | "prettier": { 83 | "printWidth": 120, 84 | "tabWidth": 4, 85 | "useTabs": true, 86 | "singleQuote": true, 87 | "trailingComma": "all", 88 | "bracketSpacing": true 89 | }, 90 | "devDependencies": { 91 | "@types/node": "16", 92 | "@types/semver": "^7.3.13", 93 | "@types/vscode": "^1.74.0", 94 | "@typescript-eslint/eslint-plugin": "^5.47.0", 95 | "@typescript-eslint/parser": "^5.47.0", 96 | "eslint": "^8.30.0", 97 | "prettier": "^2.8.1", 98 | "typescript": "4.9.4" 99 | }, 100 | "dependencies": { 101 | "@markuplint/ml-spec": "3", 102 | "markuplint": "3", 103 | "semver": "^7.3.8", 104 | "vscode-languageclient": "^8.0.2", 105 | "vscode-languageserver": "^8.0.2", 106 | "vscode-languageserver-textdocument": "^1.0.8" 107 | } 108 | } 109 | -------------------------------------------------------------------------------- /src/extension.ts: -------------------------------------------------------------------------------- 1 | import path from 'node:path'; 2 | import { window, workspace, ExtensionContext, StatusBarAlignment, commands, languages } from 'vscode'; 3 | import { LanguageClientOptions, LanguageClient, ServerOptions, TransportKind } from 'vscode-languageclient/node'; 4 | import { configs, error, info, LangConfigs, ready, warning } from './types'; 5 | 6 | let client: LanguageClient; 7 | 8 | export function activate(context: ExtensionContext) { 9 | const serverModule = context.asAbsolutePath(path.join('out', 'server', 'index.js')); 10 | 11 | const debugOptions = { 12 | execArgv: ['--nolazy', '--inspect=6009'], 13 | }; 14 | 15 | const serverOptions: ServerOptions = { 16 | run: { 17 | module: serverModule, 18 | transport: TransportKind.ipc, 19 | }, 20 | debug: { 21 | module: serverModule, 22 | transport: TransportKind.ipc, 23 | options: debugOptions, 24 | }, 25 | }; 26 | 27 | const languageList = [ 28 | 'html', 29 | 'vue', 30 | 'jade', 31 | 'svelte', 32 | 'astro', 33 | 'nunjucks', 34 | 'liquid', 35 | 'handlebars', 36 | 'mustache', 37 | 'ejs', 38 | 'haml', 39 | 'jstl', 40 | 'php', 41 | 'smarty', 42 | 'ruby', 43 | 'javascript', 44 | 'javascriptreact', 45 | 'typescript', 46 | 'typescriptreact', 47 | ] as const; 48 | 49 | const langConfigs: LangConfigs = {}; 50 | languageList.forEach((languageId) => { 51 | langConfigs[languageId] = JSON.parse( 52 | JSON.stringify(workspace.getConfiguration('', { languageId }).get('markuplint')), 53 | ); 54 | }); 55 | 56 | const clientOptions: LanguageClientOptions = { 57 | documentSelector: [ 58 | ...languageList.map((language) => ({ language, scheme: 'file' })), 59 | ...languageList.map((language) => ({ language, scheme: 'untitled' })), 60 | ], 61 | synchronize: { 62 | configurationSection: 'markuplint', 63 | fileEvents: workspace.createFileSystemWatcher( 64 | '**/{.markuplintrc,markuplintrc.json,markuplint.config.json,markuplint.json,markuplint.config.js}', 65 | ), 66 | }, 67 | }; 68 | 69 | client = new LanguageClient('markuplint', 'markuplint', serverOptions, clientOptions); 70 | client.start().then(() => { 71 | client.sendRequest(configs, langConfigs); 72 | 73 | const statusBar = window.createStatusBarItem(StatusBarAlignment.Right, 0); 74 | 75 | client.onRequest(ready, (data) => { 76 | statusBar.show(); 77 | statusBar.text = `$(check)markuplint[v${data.version}]`; 78 | statusBar.command = 'markuplint.openLog'; 79 | }); 80 | 81 | client.onNotification(error, (message) => { 82 | window.showErrorMessage(message); 83 | }); 84 | 85 | client.onNotification(warning, (message) => { 86 | window.showWarningMessage(message); 87 | }); 88 | 89 | client.onNotification(info, (message) => { 90 | window.showInformationMessage(message); 91 | }); 92 | }); 93 | 94 | const openLogCommand = commands.registerCommand('markuplint.openLog', () => { 95 | client.outputChannel.show(); 96 | }); 97 | context.subscriptions.push(openLogCommand); 98 | } 99 | 100 | export function deactivate() { 101 | if (!client) { 102 | return; 103 | } 104 | return client.stop(); 105 | } 106 | -------------------------------------------------------------------------------- /src/server/convert-diagnostics.ts: -------------------------------------------------------------------------------- 1 | import { Diagnostic, DiagnosticSeverity } from 'vscode-languageserver/node'; 2 | import type { MLResultInfo } from 'markuplint'; 3 | 4 | export function convertDiagnostics(result: MLResultInfo | null) { 5 | const diagnostics: Diagnostic[] = []; 6 | 7 | if (!result) { 8 | return diagnostics; 9 | } 10 | 11 | for (const violation of result.violations) { 12 | diagnostics.push({ 13 | severity: 14 | violation.severity === 'error' 15 | ? DiagnosticSeverity.Error 16 | : violation.severity === 'warning' 17 | ? DiagnosticSeverity.Warning 18 | : DiagnosticSeverity.Information, 19 | range: { 20 | start: { 21 | line: Math.max(violation.line - 1, 0), 22 | character: Math.max(violation.col - 1, 0), 23 | }, 24 | end: { 25 | line: Math.max(violation.line - 1, 0), 26 | character: Math.max(violation.col + violation.raw.length - 1, 0), 27 | }, 28 | }, 29 | message: violation.message + (violation.reason ? ' - ' + violation.reason : ''), 30 | source: 'markuplint', 31 | code: violation.ruleId, 32 | codeDescription: { 33 | href: `https://markuplint.dev/rules/${violation.ruleId}`, 34 | }, 35 | }); 36 | } 37 | 38 | return diagnostics; 39 | } 40 | -------------------------------------------------------------------------------- /src/server/get-module.ts: -------------------------------------------------------------------------------- 1 | import path from 'path'; 2 | 3 | export function getModule() { 4 | let markuplint: any; 5 | let version: string; 6 | let isLocalModule = true; 7 | try { 8 | const modPath = path.resolve(process.cwd(), 'node_modules', 'markuplint'); 9 | console.log(`Search markuplint on: ${modPath}`); 10 | markuplint = require(modPath); 11 | version = require(`${modPath}/package.json`).version; 12 | } catch (_e) { 13 | markuplint = require('markuplint'); 14 | version = require('markuplint/package.json').version; 15 | isLocalModule = false; 16 | } 17 | return { 18 | markuplint, 19 | version, 20 | isLocalModule, 21 | }; 22 | } 23 | -------------------------------------------------------------------------------- /src/server/index.ts: -------------------------------------------------------------------------------- 1 | import { bootServer } from './server'; 2 | 3 | bootServer(); 4 | -------------------------------------------------------------------------------- /src/server/server.ts: -------------------------------------------------------------------------------- 1 | import { satisfies } from 'semver'; 2 | import { 3 | createConnection, 4 | InitializeResult, 5 | IPCMessageReader, 6 | IPCMessageWriter, 7 | TextDocuments, 8 | TextDocumentSyncKind, 9 | PublishDiagnosticsParams, 10 | MarkupKind, 11 | } from 'vscode-languageserver/node'; 12 | import { TextDocument } from 'vscode-languageserver-textdocument'; 13 | import { configs, error, info, LangConfigs, ready } from '../types'; 14 | import Deferred from '../utils/deferred'; 15 | import { getModule } from './get-module'; 16 | import * as v1 from './v1'; 17 | import * as v2 from './v2'; 18 | import * as v3 from './v3'; 19 | 20 | export async function bootServer() { 21 | const { markuplint, version, isLocalModule } = getModule(); 22 | console.log(`Found version: ${version} (isLocalModule: ${isLocalModule})`); 23 | 24 | const connection = createConnection(new IPCMessageReader(process), new IPCMessageWriter(process)); 25 | const documents = new TextDocuments(TextDocument); 26 | documents.listen(connection); 27 | 28 | connection.onInitialize((): InitializeResult => { 29 | return { 30 | capabilities: { 31 | textDocumentSync: TextDocumentSyncKind.Incremental, 32 | hoverProvider: true, 33 | }, 34 | }; 35 | }); 36 | 37 | const initialized = new Deferred<{ 38 | langConfigs: LangConfigs; 39 | initUI: () => void; 40 | }>(); 41 | 42 | connection.onInitialized(async () => { 43 | const langConfigs = await new Promise((resolve) => { 44 | connection.onRequest(configs, (langConfigs) => { 45 | resolve(langConfigs); 46 | }); 47 | }); 48 | 49 | initialized.resolve({ 50 | langConfigs, 51 | initUI() { 52 | connection.sendRequest(ready, { version }); 53 | 54 | if (!isLocalModule) { 55 | const locale = process.env.VSCODE_NLS_CONFIG 56 | ? JSON.parse(process.env.VSCODE_NLS_CONFIG).locale 57 | : ''; 58 | let msg: string; 59 | switch (locale) { 60 | case 'ja': { 61 | msg = `ワークスペースのnode_modulesにmarkuplintが発見できなかったためVS Code拡張にインストールされているバージョン(v${version})を利用します。`; 62 | break; 63 | } 64 | default: { 65 | msg = `Since markuplint could not be found in the node_modules of the workspace, this use the version (v${version}) installed in VS Code Extension.`; 66 | } 67 | } 68 | connection.sendNotification(info, ` ${msg}`); 69 | } 70 | }, 71 | }); 72 | }); 73 | 74 | function sendDiagnostics(params: PublishDiagnosticsParams) { 75 | connection.sendDiagnostics(params); 76 | } 77 | 78 | function notFoundParserError(languageId: string) { 79 | return (e: unknown) => { 80 | if (e instanceof Error) { 81 | const { groups } = /Cannot find module.+(?@markuplint\/[a-z]+-parser)/.exec(e.message) || {}; 82 | const parser = groups?.parser; 83 | connection.sendNotification( 84 | error, 85 | `Parser not found. You probably need to install ${parser} because it detected languageId: ${languageId}.`, 86 | ); 87 | return; 88 | } 89 | throw e; 90 | }; 91 | } 92 | 93 | documents.onDidOpen(async (e) => { 94 | const { langConfigs, initUI } = await initialized; 95 | const languageId = e.document.languageId; 96 | const config = langConfigs[languageId] || null; 97 | 98 | if (!config?.enable) { 99 | console.log(`markuplint is disabled (languageId: ${languageId})`); 100 | return; 101 | } 102 | 103 | console.log(`markuplint is enabled (languageId: ${languageId})`); 104 | initUI(); 105 | 106 | if (satisfies(version, '1.x')) { 107 | return; 108 | } 109 | 110 | if (satisfies(version, '2.x')) { 111 | v2.onDidOpen(e, markuplint.MLEngine, config, sendDiagnostics, notFoundParserError(languageId)); 112 | return; 113 | } 114 | 115 | v3.onDidOpen(e, markuplint.MLEngine, config, sendDiagnostics, notFoundParserError(languageId)); 116 | }); 117 | 118 | documents.onDidChangeContent(async (e) => { 119 | const { langConfigs } = await initialized; 120 | const languageId = e.document.languageId; 121 | const config = langConfigs[languageId] || null; 122 | 123 | if (!config?.enable) { 124 | return; 125 | } 126 | 127 | if (satisfies(version, '1.x')) { 128 | v1.onDidChangeContent(e, markuplint, config, sendDiagnostics); 129 | return; 130 | } 131 | 132 | if (satisfies(version, '2.x')) { 133 | v2.onDidChangeContent(e, notFoundParserError(languageId)); 134 | return; 135 | } 136 | 137 | v3.onDidChangeContent(e, notFoundParserError(languageId)); 138 | }); 139 | 140 | connection.onHover(async (params) => { 141 | const { langConfigs } = await initialized; 142 | const showAccessibility = langConfigs['html']?.showAccessibility ?? true; 143 | 144 | if (!showAccessibility) { 145 | return; 146 | } 147 | 148 | const ariaVersion = typeof showAccessibility === 'boolean' ? '1.2' : showAccessibility.ariaVersion; 149 | 150 | const node = v3.getNodeWithAccessibilityProps(params.textDocument, params.position, ariaVersion); 151 | 152 | if (!node) { 153 | return; 154 | } 155 | 156 | const heading = `\`<${node.nodeName}>\` **Computed Accessibility Properties**:\n`; 157 | 158 | const props = node.exposed 159 | ? `${Object.entries(node.aria) 160 | .map(([key, value]) => `- ${key}: ${value}`) 161 | .join('\n')}` 162 | : '\n**No exposed to accessibility tree** (hidden element)'; 163 | 164 | return { 165 | contents: { 166 | kind: MarkupKind.Markdown, 167 | value: heading + props, 168 | }, 169 | }; 170 | }); 171 | 172 | connection.listen(); 173 | } 174 | -------------------------------------------------------------------------------- /src/server/v1.ts: -------------------------------------------------------------------------------- 1 | import { 2 | Diagnostic, 3 | DiagnosticSeverity, 4 | TextDocumentChangeEvent, 5 | PublishDiagnosticsParams, 6 | } from 'vscode-languageserver/node'; 7 | import { TextDocument } from 'vscode-languageserver-textdocument'; 8 | import { getFilePath } from '../utils/get-file-path'; 9 | import { Config } from '../types'; 10 | 11 | export async function onDidChangeContent( 12 | change: TextDocumentChangeEvent, 13 | markuplint: any, 14 | config: Config, 15 | sendDiagnostics: (params: PublishDiagnosticsParams) => void, 16 | ) { 17 | const diagnostics: Diagnostic[] = []; 18 | 19 | const file = getFilePath(change.document.uri, change.document.languageId); 20 | 21 | const html = change.document.getText(); 22 | 23 | const totalResults = await markuplint.exec({ 24 | sourceCodes: html, 25 | names: file.basename, 26 | workspace: file.dirname, 27 | // Add option since markuplint v1.7.0 @see https://github.com/markuplint/markuplint/pull/167 28 | extMatch: true, 29 | defaultConfig: config.defaultConfig, 30 | }); 31 | 32 | const result = totalResults[0]; 33 | if (!result) { 34 | return; 35 | } 36 | 37 | /** 38 | * The process for until version 1.6.x. 39 | * @see https://github.com/markuplint/markuplint/pull/167 40 | * 41 | * @deprecated 42 | */ 43 | if (result.parser === '@markuplint/html-parser' && !/\.html?/i.test(file.basename)) { 44 | console.log(`Skipped: "${change.document.uri}"`); 45 | return; 46 | } 47 | 48 | console.log( 49 | [ 50 | `Linting: "${change.document.uri}"`, 51 | `\tLangId: ${change.document.languageId}`, 52 | `\tConfig: [${result.configSet.files.map((file: string) => `\n\t\t${file}`)}\n\t]`, 53 | `\tParser: ${result.parser}`, 54 | `\tResult: ${result.results.length} reports.`, 55 | ].join('\n'), 56 | ); 57 | 58 | for (const report of result.results) { 59 | diagnostics.push({ 60 | severity: report.severity === 'error' ? DiagnosticSeverity.Error : DiagnosticSeverity.Warning, 61 | range: { 62 | start: { 63 | line: Math.max(report.line - 1, 0), 64 | character: Math.max(report.col - 1, 0), 65 | }, 66 | end: { 67 | line: Math.max(report.line - 1, 0), 68 | character: Math.max(report.col + report.raw.length - 1, 0), 69 | }, 70 | }, 71 | message: `${report.message} (${report.ruleId})`, 72 | source: 'markuplint', 73 | }); 74 | } 75 | 76 | sendDiagnostics({ 77 | uri: change.document.uri, 78 | diagnostics, 79 | }); 80 | } 81 | -------------------------------------------------------------------------------- /src/server/v2.ts: -------------------------------------------------------------------------------- 1 | import type { MLEngine as _MLEngine } from 'markuplint'; 2 | import type { TextDocumentChangeEvent, PublishDiagnosticsParams } from 'vscode-languageserver'; 3 | import type { TextDocument } from 'vscode-languageserver-textdocument'; 4 | 5 | import { Config } from '../types'; 6 | import { getFilePath } from '../utils/get-file-path'; 7 | import { convertDiagnostics } from './convert-diagnostics'; 8 | 9 | const engines = new Map(); 10 | 11 | export async function onDidOpen( 12 | opened: TextDocumentChangeEvent, 13 | MLEngine: typeof _MLEngine, 14 | config: Config, 15 | sendDiagnostics: (params: PublishDiagnosticsParams) => void, 16 | notFoundParserError: (e: unknown) => void, 17 | ) { 18 | const key = opened.document.uri; 19 | console.log(`Opend: ${key}`); 20 | const currentEngine = engines.get(key); 21 | if (currentEngine) { 22 | return; 23 | } 24 | 25 | const filePath = getFilePath(opened.document.uri, opened.document.languageId); 26 | if (config.debug) { 27 | console.log(filePath); 28 | } 29 | 30 | const sourceCode = opened.document.getText(); 31 | const file = await MLEngine.toMLFile({ sourceCode, name: filePath.basename, workspace: filePath.dirname }); 32 | 33 | const engine = new MLEngine(file, { 34 | debug: config.debug, 35 | defaultConfig: config.defaultConfig, 36 | watch: true, 37 | }); 38 | 39 | engines.set(key, engine); 40 | 41 | engine.on('config', (filePath, configSet) => { 42 | if (config.debug) { 43 | console.log(`get config: ${filePath}`, configSet); 44 | } 45 | }); 46 | 47 | engine.on('log', (phase, message) => { 48 | if (config.debug) { 49 | console.log(phase, message); 50 | } 51 | }); 52 | 53 | engine.on('lint-error', (_filePath, _sourceCode, error) => { 54 | if (config.debug) { 55 | console.log('❌', { error }); 56 | } 57 | }); 58 | 59 | engine.on('lint', (filePath, sourceCode, violations, fixedCode, debug) => { 60 | if (config.debug && debug) { 61 | console.log(debug.join('\n')); 62 | } 63 | 64 | const date = new Date().toLocaleDateString(); 65 | const time = new Date().toLocaleTimeString(); 66 | 67 | console.log(`Linted(${date} ${time}): ${opened.document.uri}`); 68 | 69 | const diagnostics = convertDiagnostics({ filePath, sourceCode, violations, fixedCode }); 70 | sendDiagnostics({ 71 | uri: opened.document.uri, 72 | diagnostics, 73 | }); 74 | 75 | console.log(`diagnostics: ${diagnostics.length}`); 76 | }); 77 | 78 | console.log('exec (onDidOpen)'); 79 | 80 | engine.exec().catch((e: unknown) => notFoundParserError(e)); 81 | } 82 | 83 | let debounceTimer: NodeJS.Timer; 84 | 85 | export async function onDidChangeContent( 86 | change: TextDocumentChangeEvent, 87 | notFoundParserError: (e: unknown) => void, 88 | ) { 89 | clearTimeout(debounceTimer); 90 | 91 | const key = change.document.uri; 92 | const engine = engines.get(key); 93 | 94 | debounceTimer = setTimeout(async () => { 95 | if (!engine) { 96 | return; 97 | } 98 | 99 | const code = change.document.getText(); 100 | try { 101 | await engine.setCode(code); 102 | console.log('exec (onDidChangeContent)'); 103 | engine.exec().catch((e: unknown) => notFoundParserError(e)); 104 | } catch (e) { 105 | console.log(e); 106 | // continue; 107 | } 108 | }, 300); 109 | } 110 | -------------------------------------------------------------------------------- /src/server/v3.ts: -------------------------------------------------------------------------------- 1 | import type { MLEngine as _MLEngine } from 'markuplint'; 2 | import type { 3 | TextDocumentChangeEvent, 4 | PublishDiagnosticsParams, 5 | Position, 6 | TextDocumentIdentifier, 7 | } from 'vscode-languageserver'; 8 | import type { TextDocument } from 'vscode-languageserver-textdocument'; 9 | 10 | import { 11 | ARIAVersion, 12 | getAccname, 13 | getComputedRole, 14 | mayBeFocusable, 15 | getComputedAriaProps, 16 | isExposed, 17 | } from '@markuplint/ml-spec'; 18 | import { Config } from '../types'; 19 | import { getFilePath } from '../utils/get-file-path'; 20 | import { convertDiagnostics } from './convert-diagnostics'; 21 | 22 | const engines = new Map(); 23 | 24 | export async function onDidOpen( 25 | opened: TextDocumentChangeEvent, 26 | MLEngine: typeof _MLEngine, 27 | config: Config, 28 | sendDiagnostics: (params: PublishDiagnosticsParams) => void, 29 | notFoundParserError: (e: unknown) => void, 30 | ) { 31 | const key = opened.document.uri; 32 | console.log(`Opend: ${key}`); 33 | const currentEngine = engines.get(key); 34 | if (currentEngine) { 35 | return; 36 | } 37 | 38 | const filePath = getFilePath(opened.document.uri, opened.document.languageId); 39 | if (config.debug) { 40 | console.log(filePath); 41 | } 42 | 43 | const sourceCode = opened.document.getText(); 44 | const file = await MLEngine.toMLFile({ sourceCode, name: filePath.basename, workspace: filePath.dirname }); 45 | 46 | const engine = new MLEngine(file, { 47 | // debug: config.debug, 48 | debug: true, 49 | // defaultConfig: config.defaultConfig, 50 | watch: true, 51 | }); 52 | 53 | engines.set(key, engine); 54 | 55 | engine.on('config', (filePath, configSet) => { 56 | if (config.debug) { 57 | console.log(`get config: ${filePath}`, configSet); 58 | } 59 | }); 60 | 61 | engine.on('log', (phase, message) => { 62 | if (config.debug) { 63 | console.log(phase, message); 64 | } 65 | }); 66 | 67 | engine.on('lint-error', (_filePath, _sourceCode, error) => { 68 | if (config.debug) { 69 | console.log('❌', { error }); 70 | } 71 | }); 72 | 73 | engine.on('lint', (filePath, sourceCode, violations, fixedCode, debug) => { 74 | if (config.debug && debug) { 75 | console.log(debug.join('\n')); 76 | } 77 | 78 | const date = new Date().toLocaleDateString(); 79 | const time = new Date().toLocaleTimeString(); 80 | 81 | console.log(`Linted(${date} ${time}): ${opened.document.uri}`); 82 | 83 | const diagnostics = convertDiagnostics({ filePath, sourceCode, violations, fixedCode }); 84 | sendDiagnostics({ 85 | uri: opened.document.uri, 86 | diagnostics, 87 | }); 88 | 89 | console.log(`diagnostics: ${diagnostics.length}`); 90 | }); 91 | 92 | console.log('exec (onDidOpen)'); 93 | 94 | engine.exec().catch((e: unknown) => notFoundParserError(e)); 95 | } 96 | 97 | let debounceTimer: NodeJS.Timer; 98 | 99 | export async function onDidChangeContent( 100 | change: TextDocumentChangeEvent, 101 | notFoundParserError: (e: unknown) => void, 102 | ) { 103 | clearTimeout(debounceTimer); 104 | 105 | const key = change.document.uri; 106 | const engine = engines.get(key); 107 | 108 | debounceTimer = setTimeout(async () => { 109 | if (!engine) { 110 | return; 111 | } 112 | 113 | const code = change.document.getText(); 114 | try { 115 | await engine.setCode(code); 116 | console.log('exec (onDidChangeContent)'); 117 | engine.exec().catch((e: unknown) => notFoundParserError(e)); 118 | } catch (e) { 119 | console.log(e); 120 | // continue; 121 | } 122 | }, 300); 123 | } 124 | 125 | export function getNodeWithAccessibilityProps( 126 | textDocument: TextDocumentIdentifier, 127 | position: Position, 128 | ariaVersion: ARIAVersion, 129 | ): { 130 | nodeName: string; 131 | exposed: boolean; 132 | aria: Record; 133 | } | null { 134 | const key = textDocument.uri; 135 | const engine = engines.get(key); 136 | 137 | if (!engine || !engine.document) { 138 | return null; 139 | } 140 | 141 | const node = engine.document.searchNodeByLocation(position.line + 1, position.character); 142 | 143 | if (!node || !node.is(node.ELEMENT_NODE)) { 144 | return null; 145 | } 146 | 147 | const aria: Record = {}; 148 | 149 | const exposed = isExposed(node, node.ownerMLDocument.specs, ariaVersion); 150 | 151 | if (!exposed) { 152 | return { 153 | nodeName: node.localName, 154 | exposed: false, 155 | aria: {}, 156 | }; 157 | } 158 | 159 | const role = getComputedRole(node.ownerMLDocument.specs, node, ariaVersion); 160 | const name = getAccname(node).trim(); 161 | const focusable = mayBeFocusable(node, node.ownerMLDocument.specs); 162 | 163 | const nameRequired = role.role?.accessibleNameRequired ?? false; 164 | const nameProhibited = role.role?.accessibleNameProhibited ?? false; 165 | 166 | const requiredLabel = '\u26A0\uFE0F**Required**'; 167 | 168 | aria.role = role.role?.name ? `\`${role.role.name}\`` : 'No corresponding role'; 169 | aria.name = nameProhibited 170 | ? '**Prohibited**' 171 | : name 172 | ? `\`${name}\`` 173 | : `None${nameRequired ? ` ${requiredLabel}` : ''}`; 174 | aria.focusable = `\`${focusable}\``; 175 | 176 | Object.values(getComputedAriaProps(node.ownerMLDocument.specs, node, ariaVersion)).forEach((prop) => { 177 | if (!prop.required) { 178 | if (prop.from === 'default') { 179 | return; 180 | } 181 | } 182 | aria[prop.name.replace('aria-', '')] = 183 | prop.value === undefined ? 'Undefined' + (prop.required ? ` ${requiredLabel}` : '') : `\`${prop.value}\``; 184 | }); 185 | 186 | return { 187 | nodeName: node.localName, 188 | exposed: true, 189 | aria, 190 | }; 191 | } 192 | -------------------------------------------------------------------------------- /src/types.ts: -------------------------------------------------------------------------------- 1 | import { NotificationType, RequestType } from 'vscode-languageserver'; 2 | import { Config as MLConfig } from '@markuplint/ml-config'; 3 | import type { ARIAVersion } from '@markuplint/ml-spec'; 4 | 5 | export const ready = new RequestType<{ version: string }, void, void>('markuplint/ready'); 6 | export const configs = new RequestType('markuplint/configs'); 7 | export const error = new NotificationType('markuplint/error'); 8 | export const warning = new NotificationType('markuplint/warning'); 9 | export const info = new NotificationType('markuplint/info'); 10 | 11 | export type Config = { 12 | enable: boolean; 13 | debug: boolean; 14 | defaultConfig: MLConfig; 15 | showAccessibility: 16 | | boolean 17 | | { 18 | ariaVersion: ARIAVersion; 19 | }; 20 | }; 21 | 22 | export type LangConfigs = Record; 23 | -------------------------------------------------------------------------------- /src/utils/deferred.ts: -------------------------------------------------------------------------------- 1 | export default class Deferred implements PromiseLike { 2 | #promise: Promise; 3 | #resolve!: (value: T | PromiseLike) => void; 4 | #reject!: (reason?: any) => void; 5 | 6 | constructor() { 7 | this.#promise = new Promise((resolve, reject) => { 8 | this.#resolve = resolve; 9 | this.#reject = reject; 10 | }); 11 | } 12 | 13 | resolve(value: T | PromiseLike) { 14 | this.#resolve(value); 15 | } 16 | 17 | reject(reason?: any) { 18 | this.#reject(reason); 19 | } 20 | 21 | then( 22 | onfulfilled?: ((value: T) => TResult1 | PromiseLike) | undefined | null, 23 | onrejected?: ((reason: any) => TResult2 | PromiseLike) | undefined | null, 24 | ): PromiseLike { 25 | return this.#promise.then(onfulfilled, onrejected); 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /src/utils/get-file-path.ts: -------------------------------------------------------------------------------- 1 | import path from 'path'; 2 | import { fileURLToPath } from 'url'; 3 | 4 | export function getFilePath(uri: string, langId: string) { 5 | if (/^untitled:/i.test(uri)) { 6 | const name = uri.replace(/^untitled:/i, ''); 7 | const basename = `${name}.${langId}`; 8 | return { 9 | dirname: path.resolve(), 10 | basename, 11 | }; 12 | } 13 | const decodePath = fileURLToPath(decodeURIComponent(uri)); 14 | let filePath: string; 15 | let untitled = false; 16 | if (/^file:/.test(decodePath)) { 17 | filePath = decodePath.replace(/^file:\/+/i, '/'); 18 | } else if (/^untitled:/.test(decodePath)) { 19 | filePath = decodePath.replace(/^untitled:/i, ''); 20 | untitled = true; 21 | } else { 22 | filePath = decodePath; 23 | } 24 | const dirname = path.resolve(path.dirname(filePath)); 25 | let basename = path.basename(filePath); 26 | if (untitled) { 27 | basename += `.${langId}`; 28 | } 29 | return { 30 | dirname, 31 | basename, 32 | }; 33 | } 34 | -------------------------------------------------------------------------------- /test/001.html: -------------------------------------------------------------------------------- 1 | 2 | 4 | 5 | 6 | 10 | 11 | Document 12 | 13 | 14 | 15 | 16 |
18 |

lorem

19 |
20 | 21 |

22 | duplicated 23 |

24 | 25 |

26 | Illegal &("> <'')& 27 |
28 | characters &("> <'')& 29 | &("<")& &("> <")& 30 |

31 | 32 |

ホ゜ケットモンスター

33 | 非推奨要素 34 | 35 | link1 36 | link2 37 | 38 | 39 | 40 | invalid-indent 41 | 42 | text' 44 | ?> 45 | 46 | <%template engine; 47 | $var = 'text' 48 | %> 49 | 50 | 51 | 52 |
53 | 54 | EOD 55 | 56 | 57 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "module": "commonjs", 4 | "target": "es2017", 5 | "strict": true, 6 | "strictNullChecks": true, 7 | "strictPropertyInitialization": true, 8 | "allowSyntheticDefaultImports": true, 9 | "experimentalDecorators": true, 10 | "esModuleInterop": true, 11 | "noImplicitAny": true, 12 | "declaration": true, 13 | "lib": ["dom", "es2015", "es2016", "es2017", "esnext"], 14 | "skipLibCheck": true, 15 | "outDir": "out" 16 | }, 17 | "include": ["src"], 18 | "exclude": ["node_modules", ".vscode-test", "out"] 19 | } 20 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/code-frame@^7.0.0": 6 | version "7.18.6" 7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.18.6.tgz#3b25d38c89600baa2dcc219edfa88a74eb2c427a" 8 | integrity sha512-TDCmlK5eOvH+eH7cdAFlNXeVJqWIQ7gW9tY1GJIpUtFb6CmjVyq2VM3u71bOyR8CRihcCgMUYoDNyLXao3+70Q== 9 | dependencies: 10 | "@babel/highlight" "^7.18.6" 11 | 12 | "@babel/helper-validator-identifier@^7.18.6": 13 | version "7.19.1" 14 | resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.19.1.tgz#7eea834cf32901ffdc1a7ee555e2f9c27e249ca2" 15 | integrity sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w== 16 | 17 | "@babel/highlight@^7.18.6": 18 | version "7.18.6" 19 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.18.6.tgz#81158601e93e2563795adcbfbdf5d64be3f2ecdf" 20 | integrity sha512-u7stbOuYjaPezCuLj29hNW1v64M2Md2qupEKP1fHc7WdOA3DgLh37suiSrZYY7haUB7iBeQZ9P1uiRF359do3g== 21 | dependencies: 22 | "@babel/helper-validator-identifier" "^7.18.6" 23 | chalk "^2.0.0" 24 | js-tokens "^4.0.0" 25 | 26 | "@eslint/eslintrc@^1.4.0": 27 | version "1.4.0" 28 | resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-1.4.0.tgz#8ec64e0df3e7a1971ee1ff5158da87389f167a63" 29 | integrity sha512-7yfvXy6MWLgWSFsLhz5yH3iQ52St8cdUY6FoGieKkRDVxuxmrNuUetIuu6cmjNWwniUHiWXjxCr5tTXDrbYS5A== 30 | dependencies: 31 | ajv "^6.12.4" 32 | debug "^4.3.2" 33 | espree "^9.4.0" 34 | globals "^13.19.0" 35 | ignore "^5.2.0" 36 | import-fresh "^3.2.1" 37 | js-yaml "^4.1.0" 38 | minimatch "^3.1.2" 39 | strip-json-comments "^3.1.1" 40 | 41 | "@humanwhocodes/config-array@^0.11.8": 42 | version "0.11.8" 43 | resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.11.8.tgz#03595ac2075a4dc0f191cc2131de14fbd7d410b9" 44 | integrity sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g== 45 | dependencies: 46 | "@humanwhocodes/object-schema" "^1.2.1" 47 | debug "^4.1.1" 48 | minimatch "^3.0.5" 49 | 50 | "@humanwhocodes/module-importer@^1.0.1": 51 | version "1.0.1" 52 | resolved "https://registry.yarnpkg.com/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz#af5b2691a22b44be847b0ca81641c5fb6ad0172c" 53 | integrity sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA== 54 | 55 | "@humanwhocodes/object-schema@^1.2.1": 56 | version "1.2.1" 57 | resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" 58 | integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== 59 | 60 | "@markuplint/config-presets@3.0.0-rc.5": 61 | version "3.0.0-rc.5" 62 | resolved "https://registry.yarnpkg.com/@markuplint/config-presets/-/config-presets-3.0.0-rc.5.tgz#c029c33a9c5d243a532ebacabb1fd4131daba3b0" 63 | integrity sha512-PohaS54zPfuCckjDNBH0Q4X6Hr9iyQjj6nj4PF4kuQ/Dl7pYm7ufV+w03714sos5YJFPnVCKF67XtZLzMnHjBQ== 64 | 65 | "@markuplint/create-rule-helper@3.0.0": 66 | version "3.0.0" 67 | resolved "https://registry.yarnpkg.com/@markuplint/create-rule-helper/-/create-rule-helper-3.0.0.tgz#adba2f15f466b7121694261bbd9753b90d2c8c87" 68 | integrity sha512-a5gpG8fiGIqPeowEAqBGgI+VAPt79bxtxFI1jJIqtrX0xND9GVAMahGAAQfs2IcVTIngqA9/3AgkxRiQzIgROw== 69 | dependencies: 70 | "@markuplint/ml-core" "3.0.0" 71 | glob "^8.0.3" 72 | prettier "^2.8.1" 73 | tslib "^2.4.1" 74 | typescript "^4.9.4" 75 | 76 | "@markuplint/file-resolver@3.0.0": 77 | version "3.0.0" 78 | resolved "https://registry.yarnpkg.com/@markuplint/file-resolver/-/file-resolver-3.0.0.tgz#db5915aff3d52472deb0ab568724435d67f153c7" 79 | integrity sha512-fib0rjqAr4knXJbgaauGH7skKrH5JsN0Cx9nQ7rULCrDJ8RyxtQj5UydFehZ63cGxOLo+Sfu4NfjNeagUkugjw== 80 | dependencies: 81 | "@markuplint/html-parser" "3.0.0" 82 | "@markuplint/ml-ast" "3.0.0-rc.5" 83 | "@markuplint/ml-config" "3.0.0" 84 | "@markuplint/ml-core" "3.0.0" 85 | "@markuplint/ml-spec" "3.0.0" 86 | cosmiconfig "^8.0.0" 87 | glob "^8.0.3" 88 | jsonc "^2.0.0" 89 | minimatch "^5.1.1" 90 | tslib "^2.4.1" 91 | 92 | "@markuplint/html-parser@3.0.0": 93 | version "3.0.0" 94 | resolved "https://registry.yarnpkg.com/@markuplint/html-parser/-/html-parser-3.0.0.tgz#f1765fbcacc8f2a2a3004a5c8ebb028ae643d24e" 95 | integrity sha512-TjjZM1Ed1YCqAlZSlxjTUMNzv1ukY6RPr+fn6h4eeREszBwENzy+jTqbvVMTS/ElxggMz9vAfn9ldkNZLF2qMg== 96 | dependencies: 97 | "@markuplint/ml-ast" "3.0.0-rc.5" 98 | "@markuplint/parser-utils" "3.0.0" 99 | parse5 "7.1.2" 100 | tslib "^2.4.1" 101 | 102 | "@markuplint/html-spec@3.0.0": 103 | version "3.0.0" 104 | resolved "https://registry.yarnpkg.com/@markuplint/html-spec/-/html-spec-3.0.0.tgz#646f3fa1f181cacf12ebba5db39a20fac727bd68" 105 | integrity sha512-yuOOuq3FmjBDpnzlpgpeXprjCDcjeR2QjH3atFr4UT2s2ccTVy4GWZw/lBWXhkjG2YfbiKobBxT0Z2R2kZTT0Q== 106 | dependencies: 107 | "@markuplint/ml-spec" "3.0.0" 108 | 109 | "@markuplint/i18n@3.0.0-rc.5": 110 | version "3.0.0-rc.5" 111 | resolved "https://registry.yarnpkg.com/@markuplint/i18n/-/i18n-3.0.0-rc.5.tgz#eaf3f2d9dd9ada00d4e23e02e4fdcc59e7c3e089" 112 | integrity sha512-fqsLJdH+b/E5OxjHP4GjKUZUOk+zJ74rGe8ciTPbtSw2gwpHDpfTPUA4MvKHBoEN8OYmrZvOSixrzLKPmjSr8g== 113 | 114 | "@markuplint/ml-ast@3.0.0-rc.5": 115 | version "3.0.0-rc.5" 116 | resolved "https://registry.yarnpkg.com/@markuplint/ml-ast/-/ml-ast-3.0.0-rc.5.tgz#2870a7717d3762087b64df52db13f5c002f0adff" 117 | integrity sha512-h9Dbu2eXmQraewMtrKVr6tMVLXYx56HP3FMqe3d2vW3U41SNcy9VpartnBLUbP2tWH7swavs6ONsuVCl3/S5sA== 118 | 119 | "@markuplint/ml-config@3.0.0": 120 | version "3.0.0" 121 | resolved "https://registry.yarnpkg.com/@markuplint/ml-config/-/ml-config-3.0.0.tgz#927a9078888f892ca8debeaa96a984a922582143" 122 | integrity sha512-WFmL/8bawURGUO5tdS9qGVPbZv+9JPha/HW7Tfb6Z7cA9qV8oLpUkUNNBqt9n0tfJGAujOH04JSkmIPn4EKssA== 123 | dependencies: 124 | "@markuplint/selector" "3.0.0" 125 | deepmerge "^4.2.2" 126 | is-plain-object "^5.0.0" 127 | mustache "^4.2.0" 128 | 129 | "@markuplint/ml-core@3.0.0": 130 | version "3.0.0" 131 | resolved "https://registry.yarnpkg.com/@markuplint/ml-core/-/ml-core-3.0.0.tgz#68b7e8d35301612589a0e30a0f38354e3c5c56a6" 132 | integrity sha512-mqg2Lxm39gmmtjW0wNj+Re2PBqNZsoiXGSaxm0ZMX5DC/WHKd9P4qIKdRT5P9ftQNjxD3cRSqVlP0yXkABgW0g== 133 | dependencies: 134 | "@markuplint/config-presets" "3.0.0-rc.5" 135 | "@markuplint/i18n" "3.0.0-rc.5" 136 | "@markuplint/ml-ast" "3.0.0-rc.5" 137 | "@markuplint/ml-config" "3.0.0" 138 | "@markuplint/ml-spec" "3.0.0" 139 | "@markuplint/parser-utils" "3.0.0" 140 | "@markuplint/selector" "3.0.0" 141 | debug "^4.3.4" 142 | tslib "^2.4.1" 143 | 144 | "@markuplint/ml-spec@3", "@markuplint/ml-spec@3.0.0": 145 | version "3.0.0" 146 | resolved "https://registry.yarnpkg.com/@markuplint/ml-spec/-/ml-spec-3.0.0.tgz#bc4ecd97075a18eb3395ba07c7bdd381e255b9d5" 147 | integrity sha512-M8jxjJhJ3M7FjLIj+Ldf11Z9AEKRWzYjTuX6jALHPCTRCk1/Di6R2sp/2RbnESzLYlkwREjdj68DSBvhCRSVuQ== 148 | dependencies: 149 | "@markuplint/ml-ast" "3.0.0-rc.5" 150 | dom-accessibility-api "^0.5.14" 151 | tslib "^2.4.1" 152 | 153 | "@markuplint/parser-utils@3.0.0": 154 | version "3.0.0" 155 | resolved "https://registry.yarnpkg.com/@markuplint/parser-utils/-/parser-utils-3.0.0.tgz#0ebee5ba7bae9f4f9a550f79f00baeabf2800e2a" 156 | integrity sha512-9yHEwFnonsFHmPon4wBD2+o/QfK5onKI9/IpBm3DPGFHKHEVZavihblkEHGmSYHVUHW5ZTX0JRX0VcJcPIEQxw== 157 | dependencies: 158 | "@markuplint/ml-ast" "3.0.0-rc.5" 159 | "@markuplint/types" "3.0.0" 160 | tslib "^2.4.1" 161 | uuid "^9.0.0" 162 | 163 | "@markuplint/rules@3.0.0": 164 | version "3.0.0" 165 | resolved "https://registry.yarnpkg.com/@markuplint/rules/-/rules-3.0.0.tgz#1b4b257449c1b2c267a46261bc97ab3dfa413331" 166 | integrity sha512-KJsgQq5FXTdxoEsp1fdsZMOUEiSGWvX37UtunSkuZOcLkZZ99UTaKljK76uMT30K0v30B/NRxyIwRYtNRJ+8Og== 167 | dependencies: 168 | "@markuplint/html-spec" "3.0.0" 169 | "@markuplint/ml-core" "3.0.0" 170 | "@markuplint/ml-spec" "3.0.0" 171 | "@markuplint/types" "3.0.0" 172 | "@ungap/structured-clone" "^1.0.1" 173 | debug "^4.3.4" 174 | html-entities "^2.3.3" 175 | tslib "^2.4.1" 176 | 177 | "@markuplint/selector@3.0.0": 178 | version "3.0.0" 179 | resolved "https://registry.yarnpkg.com/@markuplint/selector/-/selector-3.0.0.tgz#c643cc9ff8714441e57def1dfd85100c522133b3" 180 | integrity sha512-73fQGy5nacRIuhB190jel2ejWI/nOURLcrQj3gyaYchmQo6jGI8PuisUTCYnlGqBYJoIFi31j46HxcvH89H5Mg== 181 | dependencies: 182 | debug "^4.3.4" 183 | postcss-selector-parser "^6.0.11" 184 | tslib "^2.4.1" 185 | 186 | "@markuplint/types@3.0.0": 187 | version "3.0.0" 188 | resolved "https://registry.yarnpkg.com/@markuplint/types/-/types-3.0.0.tgz#208bb2efe0578d7708eb4e8723945bb681af5f24" 189 | integrity sha512-2uYR4YvLBMxoqKfpjVmN6c/qkNVszKZleft+ufoJiCY3to5A+2C3Ghpo6nko6aFPTGfG1W1o7TIbWQQX6XTR+w== 190 | dependencies: 191 | bcp-47 "1" 192 | css-tree "1" 193 | debug "^4.3.4" 194 | leven "3" 195 | whatwg-mimetype "2" 196 | 197 | "@nodelib/fs.scandir@2.1.5": 198 | version "2.1.5" 199 | resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" 200 | integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== 201 | dependencies: 202 | "@nodelib/fs.stat" "2.0.5" 203 | run-parallel "^1.1.9" 204 | 205 | "@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": 206 | version "2.0.5" 207 | resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" 208 | integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== 209 | 210 | "@nodelib/fs.walk@^1.2.3", "@nodelib/fs.walk@^1.2.8": 211 | version "1.2.8" 212 | resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" 213 | integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== 214 | dependencies: 215 | "@nodelib/fs.scandir" "2.1.5" 216 | fastq "^1.6.0" 217 | 218 | "@types/json-schema@^7.0.9": 219 | version "7.0.11" 220 | resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.11.tgz#d421b6c527a3037f7c84433fd2c4229e016863d3" 221 | integrity sha512-wOuvG1SN4Us4rez+tylwwwCV1psiNVOkJeM3AUWUNWg/jDQY2+HE/444y5gc+jBmRqASOm2Oeh5c1axHobwRKQ== 222 | 223 | "@types/minimist@^1.2.0": 224 | version "1.2.2" 225 | resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" 226 | integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== 227 | 228 | "@types/node@16": 229 | version "16.11.64" 230 | resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.64.tgz#9171f327298b619e2c52238b120c19056415d820" 231 | integrity sha512-z5hPTlVFzNwtJ2LNozTpJcD1Cu44c4LNuzaq1mwxmiHWQh2ULdR6Vjwo1UGldzRpzL0yUEdZddnfqGW2G70z6Q== 232 | 233 | "@types/normalize-package-data@^2.4.0": 234 | version "2.4.1" 235 | resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" 236 | integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== 237 | 238 | "@types/semver@^7.3.12": 239 | version "7.3.12" 240 | resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.12.tgz#920447fdd78d76b19de0438b7f60df3c4a80bf1c" 241 | integrity sha512-WwA1MW0++RfXmCr12xeYOOC5baSC9mSb0ZqCquFzKhcoF4TvHu5MKOuXsncgZcpVFhB1pXd5hZmM0ryAoCp12A== 242 | 243 | "@types/semver@^7.3.13": 244 | version "7.3.13" 245 | resolved "https://registry.yarnpkg.com/@types/semver/-/semver-7.3.13.tgz#da4bfd73f49bd541d28920ab0e2bf0ee80f71c91" 246 | integrity sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw== 247 | 248 | "@types/vscode@^1.74.0": 249 | version "1.74.0" 250 | resolved "https://registry.yarnpkg.com/@types/vscode/-/vscode-1.74.0.tgz#4adc21b4e7f527b893de3418c21a91f1e503bdcd" 251 | integrity sha512-LyeCIU3jb9d38w0MXFwta9r0Jx23ugujkAxdwLTNCyspdZTKUc43t7ppPbCiPoQ/Ivd/pnDFZrb4hWd45wrsgA== 252 | 253 | "@typescript-eslint/eslint-plugin@^5.47.0": 254 | version "5.47.0" 255 | resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.47.0.tgz#dadb79df3b0499699b155839fd6792f16897d910" 256 | integrity sha512-AHZtlXAMGkDmyLuLZsRpH3p4G/1iARIwc/T0vIem2YB+xW6pZaXYXzCBnZSF/5fdM97R9QqZWZ+h3iW10XgevQ== 257 | dependencies: 258 | "@typescript-eslint/scope-manager" "5.47.0" 259 | "@typescript-eslint/type-utils" "5.47.0" 260 | "@typescript-eslint/utils" "5.47.0" 261 | debug "^4.3.4" 262 | ignore "^5.2.0" 263 | natural-compare-lite "^1.4.0" 264 | regexpp "^3.2.0" 265 | semver "^7.3.7" 266 | tsutils "^3.21.0" 267 | 268 | "@typescript-eslint/parser@^5.47.0": 269 | version "5.47.0" 270 | resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-5.47.0.tgz#62e83de93499bf4b500528f74bf2e0554e3a6c8d" 271 | integrity sha512-udPU4ckK+R1JWCGdQC4Qa27NtBg7w020ffHqGyAK8pAgOVuNw7YaKXGChk+udh+iiGIJf6/E/0xhVXyPAbsczw== 272 | dependencies: 273 | "@typescript-eslint/scope-manager" "5.47.0" 274 | "@typescript-eslint/types" "5.47.0" 275 | "@typescript-eslint/typescript-estree" "5.47.0" 276 | debug "^4.3.4" 277 | 278 | "@typescript-eslint/scope-manager@5.47.0": 279 | version "5.47.0" 280 | resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-5.47.0.tgz#f58144a6b0ff58b996f92172c488813aee9b09df" 281 | integrity sha512-dvJab4bFf7JVvjPuh3sfBUWsiD73aiftKBpWSfi3sUkysDQ4W8x+ZcFpNp7Kgv0weldhpmMOZBjx1wKN8uWvAw== 282 | dependencies: 283 | "@typescript-eslint/types" "5.47.0" 284 | "@typescript-eslint/visitor-keys" "5.47.0" 285 | 286 | "@typescript-eslint/type-utils@5.47.0": 287 | version "5.47.0" 288 | resolved "https://registry.yarnpkg.com/@typescript-eslint/type-utils/-/type-utils-5.47.0.tgz#2b440979c574e317d3473225ae781f292c99e55d" 289 | integrity sha512-1J+DFFrYoDUXQE1b7QjrNGARZE6uVhBqIvdaXTe5IN+NmEyD68qXR1qX1g2u4voA+nCaelQyG8w30SAOihhEYg== 290 | dependencies: 291 | "@typescript-eslint/typescript-estree" "5.47.0" 292 | "@typescript-eslint/utils" "5.47.0" 293 | debug "^4.3.4" 294 | tsutils "^3.21.0" 295 | 296 | "@typescript-eslint/types@5.47.0": 297 | version "5.47.0" 298 | resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-5.47.0.tgz#67490def406eaa023dbbd8da42ee0d0c9b5229d3" 299 | integrity sha512-eslFG0Qy8wpGzDdYKu58CEr3WLkjwC5Usa6XbuV89ce/yN5RITLe1O8e+WFEuxnfftHiJImkkOBADj58ahRxSg== 300 | 301 | "@typescript-eslint/typescript-estree@5.47.0": 302 | version "5.47.0" 303 | resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-5.47.0.tgz#ed971a11c5c928646d6ba7fc9dfdd6e997649aca" 304 | integrity sha512-LxfKCG4bsRGq60Sqqu+34QT5qT2TEAHvSCCJ321uBWywgE2dS0LKcu5u+3sMGo+Vy9UmLOhdTw5JHzePV/1y4Q== 305 | dependencies: 306 | "@typescript-eslint/types" "5.47.0" 307 | "@typescript-eslint/visitor-keys" "5.47.0" 308 | debug "^4.3.4" 309 | globby "^11.1.0" 310 | is-glob "^4.0.3" 311 | semver "^7.3.7" 312 | tsutils "^3.21.0" 313 | 314 | "@typescript-eslint/utils@5.47.0": 315 | version "5.47.0" 316 | resolved "https://registry.yarnpkg.com/@typescript-eslint/utils/-/utils-5.47.0.tgz#b5005f7d2696769a1fdc1e00897005a25b3a0ec7" 317 | integrity sha512-U9xcc0N7xINrCdGVPwABjbAKqx4GK67xuMV87toI+HUqgXj26m6RBp9UshEXcTrgCkdGYFzgKLt8kxu49RilDw== 318 | dependencies: 319 | "@types/json-schema" "^7.0.9" 320 | "@types/semver" "^7.3.12" 321 | "@typescript-eslint/scope-manager" "5.47.0" 322 | "@typescript-eslint/types" "5.47.0" 323 | "@typescript-eslint/typescript-estree" "5.47.0" 324 | eslint-scope "^5.1.1" 325 | eslint-utils "^3.0.0" 326 | semver "^7.3.7" 327 | 328 | "@typescript-eslint/visitor-keys@5.47.0": 329 | version "5.47.0" 330 | resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-5.47.0.tgz#4aca4efbdf6209c154df1f7599852d571b80bb45" 331 | integrity sha512-ByPi5iMa6QqDXe/GmT/hR6MZtVPi0SqMQPDx15FczCBXJo/7M8T88xReOALAfpBLm+zxpPfmhuEvPb577JRAEg== 332 | dependencies: 333 | "@typescript-eslint/types" "5.47.0" 334 | eslint-visitor-keys "^3.3.0" 335 | 336 | "@ungap/structured-clone@^1.0.1": 337 | version "1.0.1" 338 | resolved "https://registry.yarnpkg.com/@ungap/structured-clone/-/structured-clone-1.0.1.tgz#549ce746c163d0869a61cfdabafe625a13ab5d0f" 339 | integrity sha512-zKVyTt6rELvPXYwcVPTJcPFtY0AckN5A7xWuc7owBqR0FdtuDYhE9MZZUi6IY1kZUQFSXV1B3UOOIyLkVHYd2w== 340 | 341 | acorn-jsx@^5.3.2: 342 | version "5.3.2" 343 | resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" 344 | integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== 345 | 346 | acorn@^8.8.0: 347 | version "8.8.0" 348 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.8.0.tgz#88c0187620435c7f6015803f5539dae05a9dbea8" 349 | integrity sha512-QOxyigPVrpZ2GXT+PFyZTl6TtOFc5egxHIP9IlQ+RbupQuX4RkT/Bee4/kQuC02Xkzg84JcT7oLYtDIQxp+v7w== 350 | 351 | ajv@^6.10.0, ajv@^6.12.4: 352 | version "6.12.6" 353 | resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" 354 | integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== 355 | dependencies: 356 | fast-deep-equal "^3.1.1" 357 | fast-json-stable-stringify "^2.0.0" 358 | json-schema-traverse "^0.4.1" 359 | uri-js "^4.2.2" 360 | 361 | ansi-colors@^4.1.1: 362 | version "4.1.3" 363 | resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.3.tgz#37611340eb2243e70cc604cad35d63270d48781b" 364 | integrity sha512-/6w/C21Pm1A7aZitlI5Ni/2J6FFQN8i1Cvz3kHABAAbw93v/NlvKdVOqz7CCWz/3iv/JplRSEEZ83XION15ovw== 365 | 366 | ansi-regex@^5.0.1: 367 | version "5.0.1" 368 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" 369 | integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== 370 | 371 | ansi-styles@^3.2.1: 372 | version "3.2.1" 373 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 374 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 375 | dependencies: 376 | color-convert "^1.9.0" 377 | 378 | ansi-styles@^4.1.0: 379 | version "4.3.0" 380 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" 381 | integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== 382 | dependencies: 383 | color-convert "^2.0.1" 384 | 385 | anymatch@~3.1.2: 386 | version "3.1.2" 387 | resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" 388 | integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== 389 | dependencies: 390 | normalize-path "^3.0.0" 391 | picomatch "^2.0.4" 392 | 393 | argparse@^2.0.1: 394 | version "2.0.1" 395 | resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" 396 | integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== 397 | 398 | array-union@^2.1.0: 399 | version "2.1.0" 400 | resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" 401 | integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== 402 | 403 | arrify@^1.0.1: 404 | version "1.0.1" 405 | resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" 406 | integrity sha512-3CYzex9M9FGQjCGMGyi6/31c8GJbgb0qGyrx5HWxPd0aCwh4cB2YjMb2Xf9UuoogrMrlO9cTqnB5rI5GHZTcUA== 407 | 408 | balanced-match@^1.0.0: 409 | version "1.0.2" 410 | resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" 411 | integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== 412 | 413 | bcp-47@1: 414 | version "1.0.8" 415 | resolved "https://registry.yarnpkg.com/bcp-47/-/bcp-47-1.0.8.tgz#bf63ae4269faabe7c100deac0811121a48b6a561" 416 | integrity sha512-Y9y1QNBBtYtv7hcmoX0tR+tUNSFZGZ6OL6vKPObq8BbOhkCoyayF6ogfLTgAli/KuAEbsYHYUNq2AQuY6IuLag== 417 | dependencies: 418 | is-alphabetical "^1.0.0" 419 | is-alphanumerical "^1.0.0" 420 | is-decimal "^1.0.0" 421 | 422 | binary-extensions@^2.0.0: 423 | version "2.2.0" 424 | resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.2.0.tgz#75f502eeaf9ffde42fc98829645be4ea76bd9e2d" 425 | integrity sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA== 426 | 427 | brace-expansion@^1.1.7: 428 | version "1.1.11" 429 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" 430 | integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== 431 | dependencies: 432 | balanced-match "^1.0.0" 433 | concat-map "0.0.1" 434 | 435 | brace-expansion@^2.0.1: 436 | version "2.0.1" 437 | resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-2.0.1.tgz#1edc459e0f0c548486ecf9fc99f2221364b9a0ae" 438 | integrity sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA== 439 | dependencies: 440 | balanced-match "^1.0.0" 441 | 442 | braces@^3.0.2, braces@~3.0.2: 443 | version "3.0.2" 444 | resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" 445 | integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== 446 | dependencies: 447 | fill-range "^7.0.1" 448 | 449 | callsites@^3.0.0: 450 | version "3.1.0" 451 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" 452 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 453 | 454 | camelcase-keys@^6.2.2: 455 | version "6.2.2" 456 | resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" 457 | integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg== 458 | dependencies: 459 | camelcase "^5.3.1" 460 | map-obj "^4.0.0" 461 | quick-lru "^4.0.1" 462 | 463 | camelcase@^5.3.1: 464 | version "5.3.1" 465 | resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" 466 | integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== 467 | 468 | chalk@^2.0.0: 469 | version "2.4.2" 470 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 471 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 472 | dependencies: 473 | ansi-styles "^3.2.1" 474 | escape-string-regexp "^1.0.5" 475 | supports-color "^5.3.0" 476 | 477 | chalk@^4.0.0: 478 | version "4.1.2" 479 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" 480 | integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== 481 | dependencies: 482 | ansi-styles "^4.1.0" 483 | supports-color "^7.1.0" 484 | 485 | chokidar@^3.5.3: 486 | version "3.5.3" 487 | resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-3.5.3.tgz#1cf37c8707b932bd1af1ae22c0432e2acd1903bd" 488 | integrity sha512-Dr3sfKRP6oTcjf2JmUmFJfeVMvXBdegxB0iVQ5eb2V10uFJUCAS8OByZdVAyVb8xXNz3GjjTgj9kLWsZTqE6kw== 489 | dependencies: 490 | anymatch "~3.1.2" 491 | braces "~3.0.2" 492 | glob-parent "~5.1.2" 493 | is-binary-path "~2.1.0" 494 | is-glob "~4.0.1" 495 | normalize-path "~3.0.0" 496 | readdirp "~3.6.0" 497 | optionalDependencies: 498 | fsevents "~2.3.2" 499 | 500 | cli-color@^2.0.3: 501 | version "2.0.3" 502 | resolved "https://registry.yarnpkg.com/cli-color/-/cli-color-2.0.3.tgz#73769ba969080629670f3f2ef69a4bf4e7cc1879" 503 | integrity sha512-OkoZnxyC4ERN3zLzZaY9Emb7f/MhBOIpePv0Ycok0fJYT+Ouo00UBEIwsVsr0yoow++n5YWlSUgST9GKhNHiRQ== 504 | dependencies: 505 | d "^1.0.1" 506 | es5-ext "^0.10.61" 507 | es6-iterator "^2.0.3" 508 | memoizee "^0.4.15" 509 | timers-ext "^0.1.7" 510 | 511 | color-convert@^1.9.0: 512 | version "1.9.3" 513 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 514 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 515 | dependencies: 516 | color-name "1.1.3" 517 | 518 | color-convert@^2.0.1: 519 | version "2.0.1" 520 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" 521 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== 522 | dependencies: 523 | color-name "~1.1.4" 524 | 525 | color-name@1.1.3: 526 | version "1.1.3" 527 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 528 | integrity sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw== 529 | 530 | color-name@~1.1.4: 531 | version "1.1.4" 532 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" 533 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 534 | 535 | concat-map@0.0.1: 536 | version "0.0.1" 537 | resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" 538 | integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== 539 | 540 | cosmiconfig@^8.0.0: 541 | version "8.0.0" 542 | resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-8.0.0.tgz#e9feae014eab580f858f8a0288f38997a7bebe97" 543 | integrity sha512-da1EafcpH6b/TD8vDRaWV7xFINlHlF6zKsGwS1TsuVJTZRkquaS5HTMq7uq6h31619QjbsYl21gVDOm32KM1vQ== 544 | dependencies: 545 | import-fresh "^3.2.1" 546 | js-yaml "^4.1.0" 547 | parse-json "^5.0.0" 548 | path-type "^4.0.0" 549 | 550 | cross-spawn@^7.0.0, cross-spawn@^7.0.2: 551 | version "7.0.3" 552 | resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" 553 | integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== 554 | dependencies: 555 | path-key "^3.1.0" 556 | shebang-command "^2.0.0" 557 | which "^2.0.1" 558 | 559 | css-tree@1: 560 | version "1.1.3" 561 | resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" 562 | integrity sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q== 563 | dependencies: 564 | mdn-data "2.0.14" 565 | source-map "^0.6.1" 566 | 567 | cssesc@^3.0.0: 568 | version "3.0.0" 569 | resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" 570 | integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== 571 | 572 | d@1, d@^1.0.1: 573 | version "1.0.1" 574 | resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" 575 | integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== 576 | dependencies: 577 | es5-ext "^0.10.50" 578 | type "^1.0.1" 579 | 580 | debug@^4.1.1, debug@^4.3.2, debug@^4.3.4: 581 | version "4.3.4" 582 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" 583 | integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== 584 | dependencies: 585 | ms "2.1.2" 586 | 587 | decamelize-keys@^1.1.0: 588 | version "1.1.0" 589 | resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" 590 | integrity sha512-ocLWuYzRPoS9bfiSdDd3cxvrzovVMZnRDVEzAs+hWIVXGDbHxWMECij2OBuyB/An0FFW/nLuq6Kv1i/YC5Qfzg== 591 | dependencies: 592 | decamelize "^1.1.0" 593 | map-obj "^1.0.0" 594 | 595 | decamelize@^1.1.0, decamelize@^1.2.0: 596 | version "1.2.0" 597 | resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" 598 | integrity sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA== 599 | 600 | deep-is@^0.1.3: 601 | version "0.1.4" 602 | resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" 603 | integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== 604 | 605 | deepmerge@^4.2.2: 606 | version "4.2.2" 607 | resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" 608 | integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== 609 | 610 | detect-installed@^2.0.4: 611 | version "2.0.4" 612 | resolved "https://registry.yarnpkg.com/detect-installed/-/detect-installed-2.0.4.tgz#a0850465e7c3ebcff979d6b6535ad344b80dd7c5" 613 | integrity sha512-IpGo06Ff/rMGTKjFvVPbY9aE4mRT2XP3eYHC/ZS25LKDr2h8Gbv74Ez2q/qd7IYDqD9ZjI/VGedHNXsbKZ/Eig== 614 | dependencies: 615 | get-installed-path "^2.0.3" 616 | 617 | dir-glob@^3.0.1: 618 | version "3.0.1" 619 | resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" 620 | integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== 621 | dependencies: 622 | path-type "^4.0.0" 623 | 624 | doctrine@^3.0.0: 625 | version "3.0.0" 626 | resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" 627 | integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== 628 | dependencies: 629 | esutils "^2.0.2" 630 | 631 | dom-accessibility-api@^0.5.14: 632 | version "0.5.14" 633 | resolved "https://registry.yarnpkg.com/dom-accessibility-api/-/dom-accessibility-api-0.5.14.tgz#56082f71b1dc7aac69d83c4285eef39c15d93f56" 634 | integrity sha512-NMt+m9zFMPZe0JcY9gN224Qvk6qLIdqex29clBvc/y75ZBX9YA9wNK3frsYvu2DI1xcCIwxwnX+TlsJ2DSOADg== 635 | 636 | eastasianwidth@^0.2.0: 637 | version "0.2.0" 638 | resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" 639 | integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== 640 | 641 | end-of-stream@^1.1.0: 642 | version "1.4.4" 643 | resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" 644 | integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== 645 | dependencies: 646 | once "^1.4.0" 647 | 648 | enquirer@^2.3.6: 649 | version "2.3.6" 650 | resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" 651 | integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== 652 | dependencies: 653 | ansi-colors "^4.1.1" 654 | 655 | entities@^4.4.0: 656 | version "4.4.0" 657 | resolved "https://registry.yarnpkg.com/entities/-/entities-4.4.0.tgz#97bdaba170339446495e653cfd2db78962900174" 658 | integrity sha512-oYp7156SP8LkeGD0GF85ad1X9Ai79WtRsZ2gxJqtBuzH+98YUV6jkHEKlZkMbcrjJjIVJNIDP/3WL9wQkoPbWA== 659 | 660 | error-ex@^1.3.1: 661 | version "1.3.2" 662 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" 663 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== 664 | dependencies: 665 | is-arrayish "^0.2.1" 666 | 667 | es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@^0.10.53, es5-ext@^0.10.61, es5-ext@~0.10.14, es5-ext@~0.10.2, es5-ext@~0.10.46: 668 | version "0.10.62" 669 | resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.62.tgz#5e6adc19a6da524bf3d1e02bbc8960e5eb49a9a5" 670 | integrity sha512-BHLqn0klhEpnOKSrzn/Xsz2UIW8j+cGmo9JLzr8BiUapV8hPL9+FliFqjwr9ngW7jWdnxv6eO+/LqyhJVqgrjA== 671 | dependencies: 672 | es6-iterator "^2.0.3" 673 | es6-symbol "^3.1.3" 674 | next-tick "^1.1.0" 675 | 676 | es6-iterator@^2.0.3: 677 | version "2.0.3" 678 | resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" 679 | integrity sha512-zw4SRzoUkd+cl+ZoE15A9o1oQd920Bb0iOJMQkQhl3jNc03YqVjAhG7scf9C5KWRU/R13Orf588uCC6525o02g== 680 | dependencies: 681 | d "1" 682 | es5-ext "^0.10.35" 683 | es6-symbol "^3.1.1" 684 | 685 | es6-symbol@^3.1.1, es6-symbol@^3.1.3: 686 | version "3.1.3" 687 | resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" 688 | integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== 689 | dependencies: 690 | d "^1.0.1" 691 | ext "^1.1.2" 692 | 693 | es6-weak-map@^2.0.3: 694 | version "2.0.3" 695 | resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53" 696 | integrity sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA== 697 | dependencies: 698 | d "1" 699 | es5-ext "^0.10.46" 700 | es6-iterator "^2.0.3" 701 | es6-symbol "^3.1.1" 702 | 703 | escape-string-regexp@^1.0.5: 704 | version "1.0.5" 705 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 706 | integrity sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg== 707 | 708 | escape-string-regexp@^4.0.0: 709 | version "4.0.0" 710 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" 711 | integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== 712 | 713 | eslint-scope@^5.1.1: 714 | version "5.1.1" 715 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" 716 | integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== 717 | dependencies: 718 | esrecurse "^4.3.0" 719 | estraverse "^4.1.1" 720 | 721 | eslint-scope@^7.1.1: 722 | version "7.1.1" 723 | resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642" 724 | integrity sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw== 725 | dependencies: 726 | esrecurse "^4.3.0" 727 | estraverse "^5.2.0" 728 | 729 | eslint-utils@^3.0.0: 730 | version "3.0.0" 731 | resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" 732 | integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== 733 | dependencies: 734 | eslint-visitor-keys "^2.0.0" 735 | 736 | eslint-visitor-keys@^2.0.0: 737 | version "2.1.0" 738 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" 739 | integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== 740 | 741 | eslint-visitor-keys@^3.3.0: 742 | version "3.3.0" 743 | resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.3.0.tgz#f6480fa6b1f30efe2d1968aa8ac745b862469826" 744 | integrity sha512-mQ+suqKJVyeuwGYHAdjMFqjCyfl8+Ldnxuyp3ldiMBFKkvytrXUZWaiPCEav8qDHKty44bD+qV1IP4T+w+xXRA== 745 | 746 | eslint@^8.30.0: 747 | version "8.30.0" 748 | resolved "https://registry.yarnpkg.com/eslint/-/eslint-8.30.0.tgz#83a506125d089eef7c5b5910eeea824273a33f50" 749 | integrity sha512-MGADB39QqYuzEGov+F/qb18r4i7DohCDOfatHaxI2iGlPuC65bwG2gxgO+7DkyL38dRFaRH7RaRAgU6JKL9rMQ== 750 | dependencies: 751 | "@eslint/eslintrc" "^1.4.0" 752 | "@humanwhocodes/config-array" "^0.11.8" 753 | "@humanwhocodes/module-importer" "^1.0.1" 754 | "@nodelib/fs.walk" "^1.2.8" 755 | ajv "^6.10.0" 756 | chalk "^4.0.0" 757 | cross-spawn "^7.0.2" 758 | debug "^4.3.2" 759 | doctrine "^3.0.0" 760 | escape-string-regexp "^4.0.0" 761 | eslint-scope "^7.1.1" 762 | eslint-utils "^3.0.0" 763 | eslint-visitor-keys "^3.3.0" 764 | espree "^9.4.0" 765 | esquery "^1.4.0" 766 | esutils "^2.0.2" 767 | fast-deep-equal "^3.1.3" 768 | file-entry-cache "^6.0.1" 769 | find-up "^5.0.0" 770 | glob-parent "^6.0.2" 771 | globals "^13.19.0" 772 | grapheme-splitter "^1.0.4" 773 | ignore "^5.2.0" 774 | import-fresh "^3.0.0" 775 | imurmurhash "^0.1.4" 776 | is-glob "^4.0.0" 777 | is-path-inside "^3.0.3" 778 | js-sdsl "^4.1.4" 779 | js-yaml "^4.1.0" 780 | json-stable-stringify-without-jsonify "^1.0.1" 781 | levn "^0.4.1" 782 | lodash.merge "^4.6.2" 783 | minimatch "^3.1.2" 784 | natural-compare "^1.4.0" 785 | optionator "^0.9.1" 786 | regexpp "^3.2.0" 787 | strip-ansi "^6.0.1" 788 | strip-json-comments "^3.1.0" 789 | text-table "^0.2.0" 790 | 791 | espree@^9.4.0: 792 | version "9.4.0" 793 | resolved "https://registry.yarnpkg.com/espree/-/espree-9.4.0.tgz#cd4bc3d6e9336c433265fc0aa016fc1aaf182f8a" 794 | integrity sha512-DQmnRpLj7f6TgN/NYb0MTzJXL+vJF9h3pHy4JhCIs3zwcgez8xmGg3sXHcEO97BrmO2OSvCwMdfdlyl+E9KjOw== 795 | dependencies: 796 | acorn "^8.8.0" 797 | acorn-jsx "^5.3.2" 798 | eslint-visitor-keys "^3.3.0" 799 | 800 | esquery@^1.4.0: 801 | version "1.4.0" 802 | resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" 803 | integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== 804 | dependencies: 805 | estraverse "^5.1.0" 806 | 807 | esrecurse@^4.3.0: 808 | version "4.3.0" 809 | resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" 810 | integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== 811 | dependencies: 812 | estraverse "^5.2.0" 813 | 814 | estraverse@^4.1.1: 815 | version "4.3.0" 816 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" 817 | integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== 818 | 819 | estraverse@^5.1.0, estraverse@^5.2.0: 820 | version "5.3.0" 821 | resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" 822 | integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== 823 | 824 | esutils@^2.0.2: 825 | version "2.0.3" 826 | resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" 827 | integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== 828 | 829 | event-emitter@^0.3.5: 830 | version "0.3.5" 831 | resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" 832 | integrity sha512-D9rRn9y7kLPnJ+hMq7S/nhvoKwwvVJahBi2BPmx3bvbsEdK3W9ii8cBSGjP+72/LnM4n6fo3+dkCX5FeTQruXA== 833 | dependencies: 834 | d "1" 835 | es5-ext "~0.10.14" 836 | 837 | events@^3.3.0: 838 | version "3.3.0" 839 | resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" 840 | integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== 841 | 842 | execa@^4.0.0: 843 | version "4.1.0" 844 | resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" 845 | integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== 846 | dependencies: 847 | cross-spawn "^7.0.0" 848 | get-stream "^5.0.0" 849 | human-signals "^1.1.1" 850 | is-stream "^2.0.0" 851 | merge-stream "^2.0.0" 852 | npm-run-path "^4.0.0" 853 | onetime "^5.1.0" 854 | signal-exit "^3.0.2" 855 | strip-final-newline "^2.0.0" 856 | 857 | expand-tilde@^2.0.0, expand-tilde@^2.0.2: 858 | version "2.0.2" 859 | resolved "https://registry.yarnpkg.com/expand-tilde/-/expand-tilde-2.0.2.tgz#97e801aa052df02454de46b02bf621642cdc8502" 860 | integrity sha512-A5EmesHW6rfnZ9ysHQjPdJRni0SRar0tjtG5MNtm9n5TUvsYU8oozprtRD4AqHxcZWWlVuAmQo2nWKfN9oyjTw== 861 | dependencies: 862 | homedir-polyfill "^1.0.1" 863 | 864 | ext@^1.1.2: 865 | version "1.7.0" 866 | resolved "https://registry.yarnpkg.com/ext/-/ext-1.7.0.tgz#0ea4383c0103d60e70be99e9a7f11027a33c4f5f" 867 | integrity sha512-6hxeJYaL110a9b5TEJSj0gojyHQAmA2ch5Os+ySCiA1QGdS697XWY1pzsrSjqA9LDEEgdB/KypIlR59RcLuHYw== 868 | dependencies: 869 | type "^2.7.2" 870 | 871 | fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: 872 | version "3.1.3" 873 | resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" 874 | integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== 875 | 876 | fast-glob@^3.2.9: 877 | version "3.2.12" 878 | resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.12.tgz#7f39ec99c2e6ab030337142da9e0c18f37afae80" 879 | integrity sha512-DVj4CQIYYow0BlaelwK1pHl5n5cRSJfM60UA0zK891sVInoPri2Ekj7+e1CT3/3qxXenpI+nBBmQAcJPJgaj4w== 880 | dependencies: 881 | "@nodelib/fs.stat" "^2.0.2" 882 | "@nodelib/fs.walk" "^1.2.3" 883 | glob-parent "^5.1.2" 884 | merge2 "^1.3.0" 885 | micromatch "^4.0.4" 886 | 887 | fast-json-stable-stringify@^2.0.0: 888 | version "2.1.0" 889 | resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" 890 | integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== 891 | 892 | fast-levenshtein@^2.0.6: 893 | version "2.0.6" 894 | resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" 895 | integrity sha512-DCXu6Ifhqcks7TZKY3Hxp3y6qphY5SJZmrWMDrKcERSOXWQdMhU9Ig/PYrzyw/ul9jOIyh0N4M0tbC5hodg8dw== 896 | 897 | fast-safe-stringify@^2.0.6: 898 | version "2.1.1" 899 | resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" 900 | integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== 901 | 902 | fastq@^1.6.0: 903 | version "1.13.0" 904 | resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c" 905 | integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw== 906 | dependencies: 907 | reusify "^1.0.4" 908 | 909 | file-entry-cache@^6.0.1: 910 | version "6.0.1" 911 | resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" 912 | integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== 913 | dependencies: 914 | flat-cache "^3.0.4" 915 | 916 | fill-range@^7.0.1: 917 | version "7.0.1" 918 | resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" 919 | integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== 920 | dependencies: 921 | to-regex-range "^5.0.1" 922 | 923 | find-up@^4.1.0: 924 | version "4.1.0" 925 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" 926 | integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== 927 | dependencies: 928 | locate-path "^5.0.0" 929 | path-exists "^4.0.0" 930 | 931 | find-up@^5.0.0: 932 | version "5.0.0" 933 | resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" 934 | integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== 935 | dependencies: 936 | locate-path "^6.0.0" 937 | path-exists "^4.0.0" 938 | 939 | flat-cache@^3.0.4: 940 | version "3.0.4" 941 | resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" 942 | integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== 943 | dependencies: 944 | flatted "^3.1.0" 945 | rimraf "^3.0.2" 946 | 947 | flatted@^3.1.0: 948 | version "3.2.7" 949 | resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.7.tgz#609f39207cb614b89d0765b477cb2d437fbf9787" 950 | integrity sha512-5nqDSxl8nn5BSNxyR3n4I6eDmbolI6WT+QqR547RwxQapgjQBmtktdP+HTBb/a/zLsbzERTONyUB5pefh5TtjQ== 951 | 952 | fs.realpath@^1.0.0: 953 | version "1.0.0" 954 | resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" 955 | integrity sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw== 956 | 957 | fsevents@~2.3.2: 958 | version "2.3.2" 959 | resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" 960 | integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== 961 | 962 | function-bind@^1.1.1: 963 | version "1.1.1" 964 | resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" 965 | integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== 966 | 967 | get-installed-path@^2.0.3: 968 | version "2.1.1" 969 | resolved "https://registry.yarnpkg.com/get-installed-path/-/get-installed-path-2.1.1.tgz#a1f33dc6b8af542c9331084e8edbe37fe2634152" 970 | integrity sha512-Qkn9eq6tW5/q9BDVdMpB8tOHljX9OSP0jRC5TRNVA4qRc839t4g8KQaR8t0Uv0EFVL0MlyG7m/ofjEgAROtYsA== 971 | dependencies: 972 | global-modules "1.0.0" 973 | 974 | get-stdin@8: 975 | version "8.0.0" 976 | resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-8.0.0.tgz#cbad6a73feb75f6eeb22ba9e01f89aa28aa97a53" 977 | integrity sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg== 978 | 979 | get-stream@^5.0.0: 980 | version "5.2.0" 981 | resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" 982 | integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== 983 | dependencies: 984 | pump "^3.0.0" 985 | 986 | glob-parent@^5.1.2, glob-parent@~5.1.2: 987 | version "5.1.2" 988 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" 989 | integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== 990 | dependencies: 991 | is-glob "^4.0.1" 992 | 993 | glob-parent@^6.0.2: 994 | version "6.0.2" 995 | resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-6.0.2.tgz#6d237d99083950c79290f24c7642a3de9a28f9e3" 996 | integrity sha512-XxwI8EOhVQgWp6iDL+3b0r86f4d6AX6zSU55HfB4ydCEuXLXc5FcYeOu+nnGftS4TEju/11rt4KJPTMgbfmv4A== 997 | dependencies: 998 | is-glob "^4.0.3" 999 | 1000 | glob@^7.1.3: 1001 | version "7.2.3" 1002 | resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" 1003 | integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== 1004 | dependencies: 1005 | fs.realpath "^1.0.0" 1006 | inflight "^1.0.4" 1007 | inherits "2" 1008 | minimatch "^3.1.1" 1009 | once "^1.3.0" 1010 | path-is-absolute "^1.0.0" 1011 | 1012 | glob@^8.0.3: 1013 | version "8.0.3" 1014 | resolved "https://registry.yarnpkg.com/glob/-/glob-8.0.3.tgz#415c6eb2deed9e502c68fa44a272e6da6eeca42e" 1015 | integrity sha512-ull455NHSHI/Y1FqGaaYFaLGkNMMJbavMrEGFXG/PGrg6y7sutWHUHrz6gy6WEBH6akM1M414dWKCNs+IhKdiQ== 1016 | dependencies: 1017 | fs.realpath "^1.0.0" 1018 | inflight "^1.0.4" 1019 | inherits "2" 1020 | minimatch "^5.0.1" 1021 | once "^1.3.0" 1022 | 1023 | global-modules@1.0.0, global-modules@^1.0.0: 1024 | version "1.0.0" 1025 | resolved "https://registry.yarnpkg.com/global-modules/-/global-modules-1.0.0.tgz#6d770f0eb523ac78164d72b5e71a8877265cc3ea" 1026 | integrity sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg== 1027 | dependencies: 1028 | global-prefix "^1.0.1" 1029 | is-windows "^1.0.1" 1030 | resolve-dir "^1.0.0" 1031 | 1032 | global-prefix@^1.0.1: 1033 | version "1.0.2" 1034 | resolved "https://registry.yarnpkg.com/global-prefix/-/global-prefix-1.0.2.tgz#dbf743c6c14992593c655568cb66ed32c0122ebe" 1035 | integrity sha512-5lsx1NUDHtSjfg0eHlmYvZKv8/nVqX4ckFbM+FrGcQ+04KWcWFo9P5MxPZYSzUvyzmdTbI7Eix8Q4IbELDqzKg== 1036 | dependencies: 1037 | expand-tilde "^2.0.2" 1038 | homedir-polyfill "^1.0.1" 1039 | ini "^1.3.4" 1040 | is-windows "^1.0.1" 1041 | which "^1.2.14" 1042 | 1043 | globals@^13.19.0: 1044 | version "13.19.0" 1045 | resolved "https://registry.yarnpkg.com/globals/-/globals-13.19.0.tgz#7a42de8e6ad4f7242fbcca27ea5b23aca367b5c8" 1046 | integrity sha512-dkQ957uSRWHw7CFXLUtUHQI3g3aWApYhfNR2O6jn/907riyTYKVBmxYVROkBcY614FSSeSJh7Xm7SrUWCxvJMQ== 1047 | dependencies: 1048 | type-fest "^0.20.2" 1049 | 1050 | globby@^11.1.0: 1051 | version "11.1.0" 1052 | resolved "https://registry.yarnpkg.com/globby/-/globby-11.1.0.tgz#bd4be98bb042f83d796f7e3811991fbe82a0d34b" 1053 | integrity sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g== 1054 | dependencies: 1055 | array-union "^2.1.0" 1056 | dir-glob "^3.0.1" 1057 | fast-glob "^3.2.9" 1058 | ignore "^5.2.0" 1059 | merge2 "^1.4.1" 1060 | slash "^3.0.0" 1061 | 1062 | graceful-fs@^4.1.15: 1063 | version "4.2.10" 1064 | resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.10.tgz#147d3a006da4ca3ce14728c7aefc287c367d7a6c" 1065 | integrity sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA== 1066 | 1067 | grapheme-splitter@^1.0.4: 1068 | version "1.0.4" 1069 | resolved "https://registry.yarnpkg.com/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz#9cf3a665c6247479896834af35cf1dbb4400767e" 1070 | integrity sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ== 1071 | 1072 | hard-rejection@^2.1.0: 1073 | version "2.1.0" 1074 | resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" 1075 | integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== 1076 | 1077 | has-flag@^3.0.0: 1078 | version "3.0.0" 1079 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 1080 | integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== 1081 | 1082 | has-flag@^4.0.0: 1083 | version "4.0.0" 1084 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" 1085 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 1086 | 1087 | has-yarn@2: 1088 | version "2.1.0" 1089 | resolved "https://registry.yarnpkg.com/has-yarn/-/has-yarn-2.1.0.tgz#137e11354a7b5bf11aa5cb649cf0c6f3ff2b2e77" 1090 | integrity sha512-UqBRqi4ju7T+TqGNdqAO0PaSVGsDGJUBQvk9eUWNGRY1CFGDzYhLWoM7JQEemnlvVcv/YEmc2wNW8BC24EnUsw== 1091 | 1092 | has@^1.0.3: 1093 | version "1.0.3" 1094 | resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" 1095 | integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== 1096 | dependencies: 1097 | function-bind "^1.1.1" 1098 | 1099 | homedir-polyfill@^1.0.1: 1100 | version "1.0.3" 1101 | resolved "https://registry.yarnpkg.com/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz#743298cef4e5af3e194161fbadcc2151d3a058e8" 1102 | integrity sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA== 1103 | dependencies: 1104 | parse-passwd "^1.0.0" 1105 | 1106 | hosted-git-info@^2.1.4: 1107 | version "2.8.9" 1108 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" 1109 | integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== 1110 | 1111 | hosted-git-info@^4.0.1: 1112 | version "4.1.0" 1113 | resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.1.0.tgz#827b82867e9ff1c8d0c4d9d53880397d2c86d224" 1114 | integrity sha512-kyCuEOWjJqZuDbRHzL8V93NzQhwIB71oFWSyzVo+KPZI+pnQPPxucdkrOZvkLRnrf5URsQM+IJ09Dw29cRALIA== 1115 | dependencies: 1116 | lru-cache "^6.0.0" 1117 | 1118 | html-entities@^2.3.3: 1119 | version "2.3.3" 1120 | resolved "https://registry.yarnpkg.com/html-entities/-/html-entities-2.3.3.tgz#117d7626bece327fc8baace8868fa6f5ef856e46" 1121 | integrity sha512-DV5Ln36z34NNTDgnz0EWGBLZENelNAtkiFA4kyNOG2tDI6Mz1uSWiq1wAKdyjnJwyDiDO7Fa2SO1CTxPXL8VxA== 1122 | 1123 | human-signals@^1.1.1: 1124 | version "1.1.1" 1125 | resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" 1126 | integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== 1127 | 1128 | ignore@^5.2.0: 1129 | version "5.2.0" 1130 | resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.2.0.tgz#6d3bac8fa7fe0d45d9f9be7bac2fc279577e345a" 1131 | integrity sha512-CmxgYGiEPCLhfLnpPp1MoRmifwEIOgjcHXxOBjv7mY96c+eWScsOP9c112ZyLdWHi0FxHjI+4uVhKYp/gcdRmQ== 1132 | 1133 | import-fresh@^3.0.0, import-fresh@^3.2.1: 1134 | version "3.3.0" 1135 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" 1136 | integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== 1137 | dependencies: 1138 | parent-module "^1.0.0" 1139 | resolve-from "^4.0.0" 1140 | 1141 | imurmurhash@^0.1.4: 1142 | version "0.1.4" 1143 | resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" 1144 | integrity sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA== 1145 | 1146 | indent-string@^4.0.0: 1147 | version "4.0.0" 1148 | resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" 1149 | integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== 1150 | 1151 | inflight@^1.0.4: 1152 | version "1.0.6" 1153 | resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" 1154 | integrity sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA== 1155 | dependencies: 1156 | once "^1.3.0" 1157 | wrappy "1" 1158 | 1159 | inherits@2: 1160 | version "2.0.4" 1161 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" 1162 | integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== 1163 | 1164 | ini@^1.3.4: 1165 | version "1.3.8" 1166 | resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" 1167 | integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== 1168 | 1169 | invert-kv@^3.0.0: 1170 | version "3.0.1" 1171 | resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-3.0.1.tgz#a93c7a3d4386a1dc8325b97da9bb1620c0282523" 1172 | integrity sha512-CYdFeFexxhv/Bcny+Q0BfOV+ltRlJcd4BBZBYFX/O0u4npJrgZtIcjokegtiSMAvlMTJ+Koq0GBCc//3bueQxw== 1173 | 1174 | is-alphabetical@^1.0.0: 1175 | version "1.0.4" 1176 | resolved "https://registry.yarnpkg.com/is-alphabetical/-/is-alphabetical-1.0.4.tgz#9e7d6b94916be22153745d184c298cbf986a686d" 1177 | integrity sha512-DwzsA04LQ10FHTZuL0/grVDk4rFoVH1pjAToYwBrHSxcrBIGQuXrQMtD5U1b0U2XVgKZCTLLP8u2Qxqhy3l2Vg== 1178 | 1179 | is-alphanumerical@^1.0.0: 1180 | version "1.0.4" 1181 | resolved "https://registry.yarnpkg.com/is-alphanumerical/-/is-alphanumerical-1.0.4.tgz#7eb9a2431f855f6b1ef1a78e326df515696c4dbf" 1182 | integrity sha512-UzoZUr+XfVz3t3v4KyGEniVL9BDRoQtY7tOyrRybkVNjDFWyo1yhXNGrrBTQxp3ib9BLAWs7k2YKBQsFRkZG9A== 1183 | dependencies: 1184 | is-alphabetical "^1.0.0" 1185 | is-decimal "^1.0.0" 1186 | 1187 | is-arrayish@^0.2.1: 1188 | version "0.2.1" 1189 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 1190 | integrity sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg== 1191 | 1192 | is-binary-path@~2.1.0: 1193 | version "2.1.0" 1194 | resolved "https://registry.yarnpkg.com/is-binary-path/-/is-binary-path-2.1.0.tgz#ea1f7f3b80f064236e83470f86c09c254fb45b09" 1195 | integrity sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw== 1196 | dependencies: 1197 | binary-extensions "^2.0.0" 1198 | 1199 | is-core-module@^2.5.0, is-core-module@^2.9.0: 1200 | version "2.10.0" 1201 | resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.10.0.tgz#9012ede0a91c69587e647514e1d5277019e728ed" 1202 | integrity sha512-Erxj2n/LDAZ7H8WNJXd9tw38GYM3dv8rk8Zcs+jJuxYTW7sozH+SS8NtrSjVL1/vpLvWi1hxy96IzjJ3EHTJJg== 1203 | dependencies: 1204 | has "^1.0.3" 1205 | 1206 | is-decimal@^1.0.0: 1207 | version "1.0.4" 1208 | resolved "https://registry.yarnpkg.com/is-decimal/-/is-decimal-1.0.4.tgz#65a3a5958a1c5b63a706e1b333d7cd9f630d3fa5" 1209 | integrity sha512-RGdriMmQQvZ2aqaQq3awNA6dCGtKpiDFcOzrTWrDAT2MiWrKQVPmxLGHl7Y2nNu6led0kEyoX0enY0qXYsv9zw== 1210 | 1211 | is-extglob@^2.1.1: 1212 | version "2.1.1" 1213 | resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" 1214 | integrity sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ== 1215 | 1216 | is-glob@^4.0.0, is-glob@^4.0.1, is-glob@^4.0.3, is-glob@~4.0.1: 1217 | version "4.0.3" 1218 | resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" 1219 | integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== 1220 | dependencies: 1221 | is-extglob "^2.1.1" 1222 | 1223 | is-number@^7.0.0: 1224 | version "7.0.0" 1225 | resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" 1226 | integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== 1227 | 1228 | is-path-inside@^3.0.3: 1229 | version "3.0.3" 1230 | resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-3.0.3.tgz#d231362e53a07ff2b0e0ea7fed049161ffd16283" 1231 | integrity sha512-Fd4gABb+ycGAmKou8eMftCupSir5lRxqf4aD/vd0cD2qc4HL07OjCeuHMr8Ro4CoMaeCKDB0/ECBOVWjTwUvPQ== 1232 | 1233 | is-plain-obj@^1.1.0: 1234 | version "1.1.0" 1235 | resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" 1236 | integrity sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg== 1237 | 1238 | is-plain-object@^5.0.0: 1239 | version "5.0.0" 1240 | resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" 1241 | integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== 1242 | 1243 | is-promise@^2.2.2: 1244 | version "2.2.2" 1245 | resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" 1246 | integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== 1247 | 1248 | is-stream@^2.0.0: 1249 | version "2.0.1" 1250 | resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" 1251 | integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== 1252 | 1253 | is-windows@^1.0.1: 1254 | version "1.0.2" 1255 | resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" 1256 | integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== 1257 | 1258 | isexe@^2.0.0: 1259 | version "2.0.0" 1260 | resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" 1261 | integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== 1262 | 1263 | js-sdsl@^4.1.4: 1264 | version "4.1.5" 1265 | resolved "https://registry.yarnpkg.com/js-sdsl/-/js-sdsl-4.1.5.tgz#1ff1645e6b4d1b028cd3f862db88c9d887f26e2a" 1266 | integrity sha512-08bOAKweV2NUC1wqTtf3qZlnpOX/R2DU9ikpjOHs0H+ibQv3zpncVQg6um4uYtRtrwIX8M4Nh3ytK4HGlYAq7Q== 1267 | 1268 | js-tokens@^4.0.0: 1269 | version "4.0.0" 1270 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 1271 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 1272 | 1273 | js-yaml@^4.1.0: 1274 | version "4.1.0" 1275 | resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" 1276 | integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== 1277 | dependencies: 1278 | argparse "^2.0.1" 1279 | 1280 | json-parse-better-errors@^1.0.1: 1281 | version "1.0.2" 1282 | resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" 1283 | integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== 1284 | 1285 | json-parse-even-better-errors@^2.3.0: 1286 | version "2.3.1" 1287 | resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" 1288 | integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== 1289 | 1290 | json-schema-traverse@^0.4.1: 1291 | version "0.4.1" 1292 | resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" 1293 | integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== 1294 | 1295 | json-stable-stringify-without-jsonify@^1.0.1: 1296 | version "1.0.1" 1297 | resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" 1298 | integrity sha512-Bdboy+l7tA3OGW6FjyFHWkP5LuByj1Tk33Ljyq0axyzdk9//JSi2u3fP1QSmd1KNwq6VOKYGlAu87CisVir6Pw== 1299 | 1300 | jsonc@^2.0.0: 1301 | version "2.0.0" 1302 | resolved "https://registry.yarnpkg.com/jsonc/-/jsonc-2.0.0.tgz#9e2a25100d164a9bb864c57517563717fa882551" 1303 | integrity sha512-B281bLCT2TRMQa+AQUQY5AGcqSOXBOKaYGP4wDzoA/+QswUfN8sODektbPEs9Baq7LGKun5jQbNFpzwGuVYKhw== 1304 | dependencies: 1305 | fast-safe-stringify "^2.0.6" 1306 | graceful-fs "^4.1.15" 1307 | mkdirp "^0.5.1" 1308 | parse-json "^4.0.0" 1309 | strip-bom "^4.0.0" 1310 | strip-json-comments "^3.0.1" 1311 | 1312 | kind-of@^6.0.3: 1313 | version "6.0.3" 1314 | resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" 1315 | integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== 1316 | 1317 | lcid@^3.0.0: 1318 | version "3.1.1" 1319 | resolved "https://registry.yarnpkg.com/lcid/-/lcid-3.1.1.tgz#9030ec479a058fc36b5e8243ebaac8b6ac582fd0" 1320 | integrity sha512-M6T051+5QCGLBQb8id3hdvIW8+zeFV2FyBGFS9IEK5H9Wt4MueD4bW1eWikpHgZp+5xR3l5c8pZUkQsIA0BFZg== 1321 | dependencies: 1322 | invert-kv "^3.0.0" 1323 | 1324 | leven@3: 1325 | version "3.1.0" 1326 | resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" 1327 | integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== 1328 | 1329 | levn@^0.4.1: 1330 | version "0.4.1" 1331 | resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" 1332 | integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== 1333 | dependencies: 1334 | prelude-ls "^1.2.1" 1335 | type-check "~0.4.0" 1336 | 1337 | lines-and-columns@^1.1.6: 1338 | version "1.2.4" 1339 | resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" 1340 | integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== 1341 | 1342 | locate-path@^5.0.0: 1343 | version "5.0.0" 1344 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" 1345 | integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== 1346 | dependencies: 1347 | p-locate "^4.1.0" 1348 | 1349 | locate-path@^6.0.0: 1350 | version "6.0.0" 1351 | resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" 1352 | integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== 1353 | dependencies: 1354 | p-locate "^5.0.0" 1355 | 1356 | lodash.merge@^4.6.2: 1357 | version "4.6.2" 1358 | resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" 1359 | integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== 1360 | 1361 | lru-cache@^6.0.0: 1362 | version "6.0.0" 1363 | resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" 1364 | integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== 1365 | dependencies: 1366 | yallist "^4.0.0" 1367 | 1368 | lru-queue@^0.1.0: 1369 | version "0.1.0" 1370 | resolved "https://registry.yarnpkg.com/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3" 1371 | integrity sha512-BpdYkt9EvGl8OfWHDQPISVpcl5xZthb+XPsbELj5AQXxIC8IriDZIQYjBJPEm5rS420sjZ0TLEzRcq5KdBhYrQ== 1372 | dependencies: 1373 | es5-ext "~0.10.2" 1374 | 1375 | map-age-cleaner@^0.1.3: 1376 | version "0.1.3" 1377 | resolved "https://registry.yarnpkg.com/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz#7d583a7306434c055fe474b0f45078e6e1b4b92a" 1378 | integrity sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w== 1379 | dependencies: 1380 | p-defer "^1.0.0" 1381 | 1382 | map-obj@^1.0.0: 1383 | version "1.0.1" 1384 | resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" 1385 | integrity sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg== 1386 | 1387 | map-obj@^4.0.0: 1388 | version "4.3.0" 1389 | resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" 1390 | integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== 1391 | 1392 | markuplint@3: 1393 | version "3.0.0" 1394 | resolved "https://registry.yarnpkg.com/markuplint/-/markuplint-3.0.0.tgz#02b854240c16558b89243987aa0d0b0fb7f75000" 1395 | integrity sha512-skFbPBs7maH72VJnnYG/bWva2+b2bJ6dxwdTUO/ePtbCcKa6wF8P+ZTcZD4S/ZRjsLIahn7G80AxZRRZjkG6vw== 1396 | dependencies: 1397 | "@markuplint/create-rule-helper" "3.0.0" 1398 | "@markuplint/file-resolver" "3.0.0" 1399 | "@markuplint/html-parser" "3.0.0" 1400 | "@markuplint/html-spec" "3.0.0" 1401 | "@markuplint/i18n" "3.0.0-rc.5" 1402 | "@markuplint/ml-ast" "3.0.0-rc.5" 1403 | "@markuplint/ml-config" "3.0.0" 1404 | "@markuplint/ml-core" "3.0.0" 1405 | "@markuplint/ml-spec" "3.0.0" 1406 | "@markuplint/rules" "3.0.0" 1407 | chokidar "^3.5.3" 1408 | cli-color "^2.0.3" 1409 | debug "^4.3.4" 1410 | detect-installed "^2.0.4" 1411 | eastasianwidth "^0.2.0" 1412 | enquirer "^2.3.6" 1413 | get-stdin "8" 1414 | has-yarn "2" 1415 | meow "9" 1416 | os-locale "5" 1417 | strict-event-emitter "^0.2.8" 1418 | strip-ansi "6" 1419 | tslib "^2.4.1" 1420 | uuid "^9.0.0" 1421 | 1422 | mdn-data@2.0.14: 1423 | version "2.0.14" 1424 | resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" 1425 | integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== 1426 | 1427 | mem@^5.0.0: 1428 | version "5.1.1" 1429 | resolved "https://registry.yarnpkg.com/mem/-/mem-5.1.1.tgz#7059b67bf9ac2c924c9f1cff7155a064394adfb3" 1430 | integrity sha512-qvwipnozMohxLXG1pOqoLiZKNkC4r4qqRucSoDwXowsNGDSULiqFTRUF05vcZWnwJSG22qTsynQhxbaMtnX9gw== 1431 | dependencies: 1432 | map-age-cleaner "^0.1.3" 1433 | mimic-fn "^2.1.0" 1434 | p-is-promise "^2.1.0" 1435 | 1436 | memoizee@^0.4.15: 1437 | version "0.4.15" 1438 | resolved "https://registry.yarnpkg.com/memoizee/-/memoizee-0.4.15.tgz#e6f3d2da863f318d02225391829a6c5956555b72" 1439 | integrity sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ== 1440 | dependencies: 1441 | d "^1.0.1" 1442 | es5-ext "^0.10.53" 1443 | es6-weak-map "^2.0.3" 1444 | event-emitter "^0.3.5" 1445 | is-promise "^2.2.2" 1446 | lru-queue "^0.1.0" 1447 | next-tick "^1.1.0" 1448 | timers-ext "^0.1.7" 1449 | 1450 | meow@9: 1451 | version "9.0.0" 1452 | resolved "https://registry.yarnpkg.com/meow/-/meow-9.0.0.tgz#cd9510bc5cac9dee7d03c73ee1f9ad959f4ea364" 1453 | integrity sha512-+obSblOQmRhcyBt62furQqRAQpNyWXo8BuQ5bN7dG8wmwQ+vwHKp/rCFD4CrTP8CsDQD1sjoZ94K417XEUk8IQ== 1454 | dependencies: 1455 | "@types/minimist" "^1.2.0" 1456 | camelcase-keys "^6.2.2" 1457 | decamelize "^1.2.0" 1458 | decamelize-keys "^1.1.0" 1459 | hard-rejection "^2.1.0" 1460 | minimist-options "4.1.0" 1461 | normalize-package-data "^3.0.0" 1462 | read-pkg-up "^7.0.1" 1463 | redent "^3.0.0" 1464 | trim-newlines "^3.0.0" 1465 | type-fest "^0.18.0" 1466 | yargs-parser "^20.2.3" 1467 | 1468 | merge-stream@^2.0.0: 1469 | version "2.0.0" 1470 | resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" 1471 | integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== 1472 | 1473 | merge2@^1.3.0, merge2@^1.4.1: 1474 | version "1.4.1" 1475 | resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" 1476 | integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== 1477 | 1478 | micromatch@^4.0.4: 1479 | version "4.0.5" 1480 | resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.5.tgz#bc8999a7cbbf77cdc89f132f6e467051b49090c6" 1481 | integrity sha512-DMy+ERcEW2q8Z2Po+WNXuw3c5YaUSFjAO5GsJqfEl7UjvtIuFKO6ZrKvcItdy98dwFI2N1tg3zNIdKaQT+aNdA== 1482 | dependencies: 1483 | braces "^3.0.2" 1484 | picomatch "^2.3.1" 1485 | 1486 | mimic-fn@^2.1.0: 1487 | version "2.1.0" 1488 | resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" 1489 | integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== 1490 | 1491 | min-indent@^1.0.0: 1492 | version "1.0.1" 1493 | resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" 1494 | integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== 1495 | 1496 | minimatch@^3.0.4, minimatch@^3.0.5, minimatch@^3.1.1, minimatch@^3.1.2: 1497 | version "3.1.2" 1498 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.1.2.tgz#19cd194bfd3e428f049a70817c038d89ab4be35b" 1499 | integrity sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw== 1500 | dependencies: 1501 | brace-expansion "^1.1.7" 1502 | 1503 | minimatch@^5.0.1: 1504 | version "5.1.0" 1505 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.0.tgz#1717b464f4971b144f6aabe8f2d0b8e4511e09c7" 1506 | integrity sha512-9TPBGGak4nHfGZsPBohm9AWg6NoT7QTCehS3BIJABslyZbzxfV78QM2Y6+i741OPZIafFAaiiEMh5OyIrJPgtg== 1507 | dependencies: 1508 | brace-expansion "^2.0.1" 1509 | 1510 | minimatch@^5.1.1: 1511 | version "5.1.2" 1512 | resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-5.1.2.tgz#0939d7d6f0898acbd1508abe534d1929368a8fff" 1513 | integrity sha512-bNH9mmM9qsJ2X4r2Nat1B//1dJVcn3+iBLa3IgqJ7EbGaDNepL9QSHOxN4ng33s52VMMhhIfgCYDk3C4ZmlDAg== 1514 | dependencies: 1515 | brace-expansion "^2.0.1" 1516 | 1517 | minimist-options@4.1.0: 1518 | version "4.1.0" 1519 | resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" 1520 | integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== 1521 | dependencies: 1522 | arrify "^1.0.1" 1523 | is-plain-obj "^1.1.0" 1524 | kind-of "^6.0.3" 1525 | 1526 | minimist@^1.2.6: 1527 | version "1.2.6" 1528 | resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.6.tgz#8637a5b759ea0d6e98702cfb3a9283323c93af44" 1529 | integrity sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q== 1530 | 1531 | mkdirp@^0.5.1: 1532 | version "0.5.6" 1533 | resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.6.tgz#7def03d2432dcae4ba1d611445c48396062255f6" 1534 | integrity sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw== 1535 | dependencies: 1536 | minimist "^1.2.6" 1537 | 1538 | ms@2.1.2: 1539 | version "2.1.2" 1540 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 1541 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 1542 | 1543 | mustache@^4.2.0: 1544 | version "4.2.0" 1545 | resolved "https://registry.yarnpkg.com/mustache/-/mustache-4.2.0.tgz#e5892324d60a12ec9c2a73359edca52972bf6f64" 1546 | integrity sha512-71ippSywq5Yb7/tVYyGbkBggbU8H3u5Rz56fH60jGFgr8uHwxs+aSKeqmluIVzM0m0kB7xQjKS6qPfd0b2ZoqQ== 1547 | 1548 | natural-compare-lite@^1.4.0: 1549 | version "1.4.0" 1550 | resolved "https://registry.yarnpkg.com/natural-compare-lite/-/natural-compare-lite-1.4.0.tgz#17b09581988979fddafe0201e931ba933c96cbb4" 1551 | integrity sha512-Tj+HTDSJJKaZnfiuw+iaF9skdPpTo2GtEly5JHnWV/hfv2Qj/9RKsGISQtLh2ox3l5EAGw487hnBee0sIJ6v2g== 1552 | 1553 | natural-compare@^1.4.0: 1554 | version "1.4.0" 1555 | resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" 1556 | integrity sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw== 1557 | 1558 | next-tick@1, next-tick@^1.1.0: 1559 | version "1.1.0" 1560 | resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" 1561 | integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== 1562 | 1563 | normalize-package-data@^2.5.0: 1564 | version "2.5.0" 1565 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" 1566 | integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== 1567 | dependencies: 1568 | hosted-git-info "^2.1.4" 1569 | resolve "^1.10.0" 1570 | semver "2 || 3 || 4 || 5" 1571 | validate-npm-package-license "^3.0.1" 1572 | 1573 | normalize-package-data@^3.0.0: 1574 | version "3.0.3" 1575 | resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" 1576 | integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== 1577 | dependencies: 1578 | hosted-git-info "^4.0.1" 1579 | is-core-module "^2.5.0" 1580 | semver "^7.3.4" 1581 | validate-npm-package-license "^3.0.1" 1582 | 1583 | normalize-path@^3.0.0, normalize-path@~3.0.0: 1584 | version "3.0.0" 1585 | resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" 1586 | integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== 1587 | 1588 | npm-run-path@^4.0.0: 1589 | version "4.0.1" 1590 | resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" 1591 | integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== 1592 | dependencies: 1593 | path-key "^3.0.0" 1594 | 1595 | once@^1.3.0, once@^1.3.1, once@^1.4.0: 1596 | version "1.4.0" 1597 | resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" 1598 | integrity sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w== 1599 | dependencies: 1600 | wrappy "1" 1601 | 1602 | onetime@^5.1.0: 1603 | version "5.1.2" 1604 | resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" 1605 | integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== 1606 | dependencies: 1607 | mimic-fn "^2.1.0" 1608 | 1609 | optionator@^0.9.1: 1610 | version "0.9.1" 1611 | resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" 1612 | integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== 1613 | dependencies: 1614 | deep-is "^0.1.3" 1615 | fast-levenshtein "^2.0.6" 1616 | levn "^0.4.1" 1617 | prelude-ls "^1.2.1" 1618 | type-check "^0.4.0" 1619 | word-wrap "^1.2.3" 1620 | 1621 | os-locale@5: 1622 | version "5.0.0" 1623 | resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-5.0.0.tgz#6d26c1d95b6597c5d5317bf5fba37eccec3672e0" 1624 | integrity sha512-tqZcNEDAIZKBEPnHPlVDvKrp7NzgLi7jRmhKiUoa2NUmhl13FtkAGLUVR+ZsYvApBQdBfYm43A4tXXQ4IrYLBA== 1625 | dependencies: 1626 | execa "^4.0.0" 1627 | lcid "^3.0.0" 1628 | mem "^5.0.0" 1629 | 1630 | p-defer@^1.0.0: 1631 | version "1.0.0" 1632 | resolved "https://registry.yarnpkg.com/p-defer/-/p-defer-1.0.0.tgz#9f6eb182f6c9aa8cd743004a7d4f96b196b0fb0c" 1633 | integrity sha512-wB3wfAxZpk2AzOfUMJNL+d36xothRSyj8EXOa4f6GMqYDN9BJaaSISbsk+wS9abmnebVw95C2Kb5t85UmpCxuw== 1634 | 1635 | p-is-promise@^2.1.0: 1636 | version "2.1.0" 1637 | resolved "https://registry.yarnpkg.com/p-is-promise/-/p-is-promise-2.1.0.tgz#918cebaea248a62cf7ffab8e3bca8c5f882fc42e" 1638 | integrity sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg== 1639 | 1640 | p-limit@^2.2.0: 1641 | version "2.3.0" 1642 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" 1643 | integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== 1644 | dependencies: 1645 | p-try "^2.0.0" 1646 | 1647 | p-limit@^3.0.2: 1648 | version "3.1.0" 1649 | resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" 1650 | integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== 1651 | dependencies: 1652 | yocto-queue "^0.1.0" 1653 | 1654 | p-locate@^4.1.0: 1655 | version "4.1.0" 1656 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" 1657 | integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== 1658 | dependencies: 1659 | p-limit "^2.2.0" 1660 | 1661 | p-locate@^5.0.0: 1662 | version "5.0.0" 1663 | resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" 1664 | integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== 1665 | dependencies: 1666 | p-limit "^3.0.2" 1667 | 1668 | p-try@^2.0.0: 1669 | version "2.2.0" 1670 | resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" 1671 | integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== 1672 | 1673 | parent-module@^1.0.0: 1674 | version "1.0.1" 1675 | resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" 1676 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 1677 | dependencies: 1678 | callsites "^3.0.0" 1679 | 1680 | parse-json@^4.0.0: 1681 | version "4.0.0" 1682 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" 1683 | integrity sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw== 1684 | dependencies: 1685 | error-ex "^1.3.1" 1686 | json-parse-better-errors "^1.0.1" 1687 | 1688 | parse-json@^5.0.0: 1689 | version "5.2.0" 1690 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" 1691 | integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== 1692 | dependencies: 1693 | "@babel/code-frame" "^7.0.0" 1694 | error-ex "^1.3.1" 1695 | json-parse-even-better-errors "^2.3.0" 1696 | lines-and-columns "^1.1.6" 1697 | 1698 | parse-passwd@^1.0.0: 1699 | version "1.0.0" 1700 | resolved "https://registry.yarnpkg.com/parse-passwd/-/parse-passwd-1.0.0.tgz#6d5b934a456993b23d37f40a382d6f1666a8e5c6" 1701 | integrity sha512-1Y1A//QUXEZK7YKz+rD9WydcE1+EuPr6ZBgKecAB8tmoW6UFv0NREVJe1p+jRxtThkcbbKkfwIbWJe/IeE6m2Q== 1702 | 1703 | parse5@7.1.2: 1704 | version "7.1.2" 1705 | resolved "https://registry.yarnpkg.com/parse5/-/parse5-7.1.2.tgz#0736bebbfd77793823240a23b7fc5e010b7f8e32" 1706 | integrity sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw== 1707 | dependencies: 1708 | entities "^4.4.0" 1709 | 1710 | path-exists@^4.0.0: 1711 | version "4.0.0" 1712 | resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" 1713 | integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== 1714 | 1715 | path-is-absolute@^1.0.0: 1716 | version "1.0.1" 1717 | resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" 1718 | integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== 1719 | 1720 | path-key@^3.0.0, path-key@^3.1.0: 1721 | version "3.1.1" 1722 | resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" 1723 | integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== 1724 | 1725 | path-parse@^1.0.7: 1726 | version "1.0.7" 1727 | resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" 1728 | integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== 1729 | 1730 | path-type@^4.0.0: 1731 | version "4.0.0" 1732 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" 1733 | integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== 1734 | 1735 | picomatch@^2.0.4, picomatch@^2.2.1, picomatch@^2.3.1: 1736 | version "2.3.1" 1737 | resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" 1738 | integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== 1739 | 1740 | postcss-selector-parser@^6.0.11: 1741 | version "6.0.11" 1742 | resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz#2e41dc39b7ad74046e1615185185cd0b17d0c8dc" 1743 | integrity sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g== 1744 | dependencies: 1745 | cssesc "^3.0.0" 1746 | util-deprecate "^1.0.2" 1747 | 1748 | prelude-ls@^1.2.1: 1749 | version "1.2.1" 1750 | resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" 1751 | integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== 1752 | 1753 | prettier@^2.8.1: 1754 | version "2.8.1" 1755 | resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.8.1.tgz#4e1fd11c34e2421bc1da9aea9bd8127cd0a35efc" 1756 | integrity sha512-lqGoSJBQNJidqCHE80vqZJHWHRFoNYsSpP9AjFhlhi9ODCJA541svILes/+/1GM3VaL/abZi7cpFzOpdR9UPKg== 1757 | 1758 | pump@^3.0.0: 1759 | version "3.0.0" 1760 | resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" 1761 | integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== 1762 | dependencies: 1763 | end-of-stream "^1.1.0" 1764 | once "^1.3.1" 1765 | 1766 | punycode@^2.1.0: 1767 | version "2.1.1" 1768 | resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" 1769 | integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== 1770 | 1771 | queue-microtask@^1.2.2: 1772 | version "1.2.3" 1773 | resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" 1774 | integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== 1775 | 1776 | quick-lru@^4.0.1: 1777 | version "4.0.1" 1778 | resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" 1779 | integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== 1780 | 1781 | read-pkg-up@^7.0.1: 1782 | version "7.0.1" 1783 | resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" 1784 | integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== 1785 | dependencies: 1786 | find-up "^4.1.0" 1787 | read-pkg "^5.2.0" 1788 | type-fest "^0.8.1" 1789 | 1790 | read-pkg@^5.2.0: 1791 | version "5.2.0" 1792 | resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" 1793 | integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== 1794 | dependencies: 1795 | "@types/normalize-package-data" "^2.4.0" 1796 | normalize-package-data "^2.5.0" 1797 | parse-json "^5.0.0" 1798 | type-fest "^0.6.0" 1799 | 1800 | readdirp@~3.6.0: 1801 | version "3.6.0" 1802 | resolved "https://registry.yarnpkg.com/readdirp/-/readdirp-3.6.0.tgz#74a370bd857116e245b29cc97340cd431a02a6c7" 1803 | integrity sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA== 1804 | dependencies: 1805 | picomatch "^2.2.1" 1806 | 1807 | redent@^3.0.0: 1808 | version "3.0.0" 1809 | resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" 1810 | integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg== 1811 | dependencies: 1812 | indent-string "^4.0.0" 1813 | strip-indent "^3.0.0" 1814 | 1815 | regexpp@^3.2.0: 1816 | version "3.2.0" 1817 | resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" 1818 | integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== 1819 | 1820 | resolve-dir@^1.0.0: 1821 | version "1.0.1" 1822 | resolved "https://registry.yarnpkg.com/resolve-dir/-/resolve-dir-1.0.1.tgz#79a40644c362be82f26effe739c9bb5382046f43" 1823 | integrity sha512-R7uiTjECzvOsWSfdM0QKFNBVFcK27aHOUwdvK53BcW8zqnGdYp0Fbj82cy54+2A4P2tFM22J5kRfe1R+lM/1yg== 1824 | dependencies: 1825 | expand-tilde "^2.0.0" 1826 | global-modules "^1.0.0" 1827 | 1828 | resolve-from@^4.0.0: 1829 | version "4.0.0" 1830 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" 1831 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 1832 | 1833 | resolve@^1.10.0: 1834 | version "1.22.1" 1835 | resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.22.1.tgz#27cb2ebb53f91abb49470a928bba7558066ac177" 1836 | integrity sha512-nBpuuYuY5jFsli/JIs1oldw6fOQCBioohqWZg/2hiaOybXOft4lonv85uDOKXdf8rhyK159cxU5cDcK/NKk8zw== 1837 | dependencies: 1838 | is-core-module "^2.9.0" 1839 | path-parse "^1.0.7" 1840 | supports-preserve-symlinks-flag "^1.0.0" 1841 | 1842 | reusify@^1.0.4: 1843 | version "1.0.4" 1844 | resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" 1845 | integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== 1846 | 1847 | rimraf@^3.0.2: 1848 | version "3.0.2" 1849 | resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" 1850 | integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== 1851 | dependencies: 1852 | glob "^7.1.3" 1853 | 1854 | run-parallel@^1.1.9: 1855 | version "1.2.0" 1856 | resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" 1857 | integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== 1858 | dependencies: 1859 | queue-microtask "^1.2.2" 1860 | 1861 | "semver@2 || 3 || 4 || 5": 1862 | version "5.7.1" 1863 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" 1864 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 1865 | 1866 | semver@^7.3.4, semver@^7.3.5, semver@^7.3.7, semver@^7.3.8: 1867 | version "7.3.8" 1868 | resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.8.tgz#07a78feafb3f7b32347d725e33de7e2a2df67798" 1869 | integrity sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A== 1870 | dependencies: 1871 | lru-cache "^6.0.0" 1872 | 1873 | shebang-command@^2.0.0: 1874 | version "2.0.0" 1875 | resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" 1876 | integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== 1877 | dependencies: 1878 | shebang-regex "^3.0.0" 1879 | 1880 | shebang-regex@^3.0.0: 1881 | version "3.0.0" 1882 | resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" 1883 | integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== 1884 | 1885 | signal-exit@^3.0.2: 1886 | version "3.0.7" 1887 | resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" 1888 | integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== 1889 | 1890 | slash@^3.0.0: 1891 | version "3.0.0" 1892 | resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" 1893 | integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== 1894 | 1895 | source-map@^0.6.1: 1896 | version "0.6.1" 1897 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" 1898 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== 1899 | 1900 | spdx-correct@^3.0.0: 1901 | version "3.1.1" 1902 | resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" 1903 | integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== 1904 | dependencies: 1905 | spdx-expression-parse "^3.0.0" 1906 | spdx-license-ids "^3.0.0" 1907 | 1908 | spdx-exceptions@^2.1.0: 1909 | version "2.3.0" 1910 | resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" 1911 | integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== 1912 | 1913 | spdx-expression-parse@^3.0.0: 1914 | version "3.0.1" 1915 | resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" 1916 | integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== 1917 | dependencies: 1918 | spdx-exceptions "^2.1.0" 1919 | spdx-license-ids "^3.0.0" 1920 | 1921 | spdx-license-ids@^3.0.0: 1922 | version "3.0.12" 1923 | resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.12.tgz#69077835abe2710b65f03969898b6637b505a779" 1924 | integrity sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA== 1925 | 1926 | strict-event-emitter@^0.2.8: 1927 | version "0.2.8" 1928 | resolved "https://registry.yarnpkg.com/strict-event-emitter/-/strict-event-emitter-0.2.8.tgz#b4e768927c67273c14c13d20e19d5e6c934b47ca" 1929 | integrity sha512-KDf/ujU8Zud3YaLtMCcTI4xkZlZVIYxTLr+XIULexP+77EEVWixeXroLUXQXiVtH4XH2W7jr/3PT1v3zBuvc3A== 1930 | dependencies: 1931 | events "^3.3.0" 1932 | 1933 | strip-ansi@6, strip-ansi@^6.0.1: 1934 | version "6.0.1" 1935 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" 1936 | integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== 1937 | dependencies: 1938 | ansi-regex "^5.0.1" 1939 | 1940 | strip-bom@^4.0.0: 1941 | version "4.0.0" 1942 | resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" 1943 | integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== 1944 | 1945 | strip-final-newline@^2.0.0: 1946 | version "2.0.0" 1947 | resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" 1948 | integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== 1949 | 1950 | strip-indent@^3.0.0: 1951 | version "3.0.0" 1952 | resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" 1953 | integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== 1954 | dependencies: 1955 | min-indent "^1.0.0" 1956 | 1957 | strip-json-comments@^3.0.1, strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: 1958 | version "3.1.1" 1959 | resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" 1960 | integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== 1961 | 1962 | supports-color@^5.3.0: 1963 | version "5.5.0" 1964 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 1965 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 1966 | dependencies: 1967 | has-flag "^3.0.0" 1968 | 1969 | supports-color@^7.1.0: 1970 | version "7.2.0" 1971 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" 1972 | integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== 1973 | dependencies: 1974 | has-flag "^4.0.0" 1975 | 1976 | supports-preserve-symlinks-flag@^1.0.0: 1977 | version "1.0.0" 1978 | resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" 1979 | integrity sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w== 1980 | 1981 | text-table@^0.2.0: 1982 | version "0.2.0" 1983 | resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" 1984 | integrity sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw== 1985 | 1986 | timers-ext@^0.1.7: 1987 | version "0.1.7" 1988 | resolved "https://registry.yarnpkg.com/timers-ext/-/timers-ext-0.1.7.tgz#6f57ad8578e07a3fb9f91d9387d65647555e25c6" 1989 | integrity sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ== 1990 | dependencies: 1991 | es5-ext "~0.10.46" 1992 | next-tick "1" 1993 | 1994 | to-regex-range@^5.0.1: 1995 | version "5.0.1" 1996 | resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" 1997 | integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== 1998 | dependencies: 1999 | is-number "^7.0.0" 2000 | 2001 | trim-newlines@^3.0.0: 2002 | version "3.0.1" 2003 | resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" 2004 | integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== 2005 | 2006 | tslib@^1.8.1: 2007 | version "1.14.1" 2008 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" 2009 | integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== 2010 | 2011 | tslib@^2.4.1: 2012 | version "2.4.1" 2013 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.1.tgz#0d0bfbaac2880b91e22df0768e55be9753a5b17e" 2014 | integrity sha512-tGyy4dAjRIEwI7BzsB0lynWgOpfqjUdq91XXAlIWD2OwKBH7oCl/GZG/HT4BOHrTlPMOASlMQ7veyTqpmRcrNA== 2015 | 2016 | tsutils@^3.21.0: 2017 | version "3.21.0" 2018 | resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" 2019 | integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== 2020 | dependencies: 2021 | tslib "^1.8.1" 2022 | 2023 | type-check@^0.4.0, type-check@~0.4.0: 2024 | version "0.4.0" 2025 | resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" 2026 | integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== 2027 | dependencies: 2028 | prelude-ls "^1.2.1" 2029 | 2030 | type-fest@^0.18.0: 2031 | version "0.18.1" 2032 | resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" 2033 | integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw== 2034 | 2035 | type-fest@^0.20.2: 2036 | version "0.20.2" 2037 | resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" 2038 | integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== 2039 | 2040 | type-fest@^0.6.0: 2041 | version "0.6.0" 2042 | resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" 2043 | integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== 2044 | 2045 | type-fest@^0.8.1: 2046 | version "0.8.1" 2047 | resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" 2048 | integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== 2049 | 2050 | type@^1.0.1: 2051 | version "1.2.0" 2052 | resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" 2053 | integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== 2054 | 2055 | type@^2.7.2: 2056 | version "2.7.2" 2057 | resolved "https://registry.yarnpkg.com/type/-/type-2.7.2.tgz#2376a15a3a28b1efa0f5350dcf72d24df6ef98d0" 2058 | integrity sha512-dzlvlNlt6AXU7EBSfpAscydQ7gXB+pPGsPnfJnZpiNJBDj7IaJzQlBZYGdEi4R9HmPdBv2XmWJ6YUtoTa7lmCw== 2059 | 2060 | typescript@4.9.4, typescript@^4.9.4: 2061 | version "4.9.4" 2062 | resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.9.4.tgz#a2a3d2756c079abda241d75f149df9d561091e78" 2063 | integrity sha512-Uz+dTXYzxXXbsFpM86Wh3dKCxrQqUcVMxwU54orwlJjOpO3ao8L7j5lH+dWfTwgCwIuM9GQ2kvVotzYJMXTBZg== 2064 | 2065 | uri-js@^4.2.2: 2066 | version "4.4.1" 2067 | resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" 2068 | integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== 2069 | dependencies: 2070 | punycode "^2.1.0" 2071 | 2072 | util-deprecate@^1.0.2: 2073 | version "1.0.2" 2074 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" 2075 | integrity sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw== 2076 | 2077 | uuid@^9.0.0: 2078 | version "9.0.0" 2079 | resolved "https://registry.yarnpkg.com/uuid/-/uuid-9.0.0.tgz#592f550650024a38ceb0c562f2f6aa435761efb5" 2080 | integrity sha512-MXcSTerfPa4uqyzStbRoTgt5XIe3x5+42+q1sDuy3R5MDk66URdLMOZe5aPX/SQd+kuYAh0FdP/pO28IkQyTeg== 2081 | 2082 | validate-npm-package-license@^3.0.1: 2083 | version "3.0.4" 2084 | resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" 2085 | integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== 2086 | dependencies: 2087 | spdx-correct "^3.0.0" 2088 | spdx-expression-parse "^3.0.0" 2089 | 2090 | vscode-jsonrpc@8.0.2: 2091 | version "8.0.2" 2092 | resolved "https://registry.yarnpkg.com/vscode-jsonrpc/-/vscode-jsonrpc-8.0.2.tgz#f239ed2cd6004021b6550af9fd9d3e47eee3cac9" 2093 | integrity sha512-RY7HwI/ydoC1Wwg4gJ3y6LpU9FJRZAUnTYMXthqhFXXu77ErDd/xkREpGuk4MyYkk4a+XDWAMqe0S3KkelYQEQ== 2094 | 2095 | vscode-languageclient@^8.0.2: 2096 | version "8.0.2" 2097 | resolved "https://registry.yarnpkg.com/vscode-languageclient/-/vscode-languageclient-8.0.2.tgz#f1f23ce8c8484aa11e4b7dfb24437d3e59bb61c6" 2098 | integrity sha512-lHlthJtphG9gibGb/y72CKqQUxwPsMXijJVpHEC2bvbFqxmkj9LwQ3aGU9dwjBLqsX1S4KjShYppLvg1UJDF/Q== 2099 | dependencies: 2100 | minimatch "^3.0.4" 2101 | semver "^7.3.5" 2102 | vscode-languageserver-protocol "3.17.2" 2103 | 2104 | vscode-languageserver-protocol@3.17.2: 2105 | version "3.17.2" 2106 | resolved "https://registry.yarnpkg.com/vscode-languageserver-protocol/-/vscode-languageserver-protocol-3.17.2.tgz#beaa46aea06ed061576586c5e11368a9afc1d378" 2107 | integrity sha512-8kYisQ3z/SQ2kyjlNeQxbkkTNmVFoQCqkmGrzLH6A9ecPlgTbp3wDTnUNqaUxYr4vlAcloxx8zwy7G5WdguYNg== 2108 | dependencies: 2109 | vscode-jsonrpc "8.0.2" 2110 | vscode-languageserver-types "3.17.2" 2111 | 2112 | vscode-languageserver-textdocument@^1.0.8: 2113 | version "1.0.8" 2114 | resolved "https://registry.yarnpkg.com/vscode-languageserver-textdocument/-/vscode-languageserver-textdocument-1.0.8.tgz#9eae94509cbd945ea44bca8dcfe4bb0c15bb3ac0" 2115 | integrity sha512-1bonkGqQs5/fxGT5UchTgjGVnfysL0O8v1AYMBjqTbWQTFn721zaPGDYFkOKtfDgFiSgXM3KwaG3FMGfW4Ed9Q== 2116 | 2117 | vscode-languageserver-types@3.17.2: 2118 | version "3.17.2" 2119 | resolved "https://registry.yarnpkg.com/vscode-languageserver-types/-/vscode-languageserver-types-3.17.2.tgz#b2c2e7de405ad3d73a883e91989b850170ffc4f2" 2120 | integrity sha512-zHhCWatviizPIq9B7Vh9uvrH6x3sK8itC84HkamnBWoDFJtzBf7SWlpLCZUit72b3os45h6RWQNC9xHRDF8dRA== 2121 | 2122 | vscode-languageserver@^8.0.2: 2123 | version "8.0.2" 2124 | resolved "https://registry.yarnpkg.com/vscode-languageserver/-/vscode-languageserver-8.0.2.tgz#cfe2f0996d9dfd40d3854e786b2821604dfec06d" 2125 | integrity sha512-bpEt2ggPxKzsAOZlXmCJ50bV7VrxwCS5BI4+egUmure/oI/t4OlFzi/YNtVvY24A2UDOZAgwFGgnZPwqSJubkA== 2126 | dependencies: 2127 | vscode-languageserver-protocol "3.17.2" 2128 | 2129 | whatwg-mimetype@2: 2130 | version "2.3.0" 2131 | resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" 2132 | integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== 2133 | 2134 | which@^1.2.14: 2135 | version "1.3.1" 2136 | resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" 2137 | integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== 2138 | dependencies: 2139 | isexe "^2.0.0" 2140 | 2141 | which@^2.0.1: 2142 | version "2.0.2" 2143 | resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" 2144 | integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== 2145 | dependencies: 2146 | isexe "^2.0.0" 2147 | 2148 | word-wrap@^1.2.3: 2149 | version "1.2.3" 2150 | resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" 2151 | integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== 2152 | 2153 | wrappy@1: 2154 | version "1.0.2" 2155 | resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" 2156 | integrity sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ== 2157 | 2158 | yallist@^4.0.0: 2159 | version "4.0.0" 2160 | resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" 2161 | integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== 2162 | 2163 | yargs-parser@^20.2.3: 2164 | version "20.2.9" 2165 | resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" 2166 | integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== 2167 | 2168 | yocto-queue@^0.1.0: 2169 | version "0.1.0" 2170 | resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" 2171 | integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== 2172 | --------------------------------------------------------------------------------