mirror of
https://github.com/kremalicious/metamask-extension.git
synced 2024-11-21 17:37:01 +01:00
Add TypeScript to the linting process (#13495)
This commit allows developers to write TypeScript files and lint them (either via a language server in their editor of choice or through the `yarn lint` command). The new TypeScript configuration as well as the updated ESLint configuration not only includes support for parsing TypeScript files, but also provides some compatibility between JavaScript and TypeScript. That is, it makes it possible for a TypeScript file that imports a JavaScript file or a JavaScript file that imports a TypeScript file to be linted. Note that this commit does not integrate TypeScript into the build system yet, so we cannot start converting files to TypeScript and pushing them to the repo until that final step is complete.
This commit is contained in:
parent
ea4181d227
commit
4447727eb6
@ -19,6 +19,7 @@ ignores:
|
||||
- '@metamask/forwarder'
|
||||
- '@metamask/test-dapp'
|
||||
- '@metamask/design-tokens' # Only imported in index.css
|
||||
- '@tsconfig/node14' # required dynamically by TS, used in tsconfig.json
|
||||
- '@sentry/cli' # invoked as `sentry-cli`
|
||||
- 'chromedriver'
|
||||
- 'depcheck' # ooo meta
|
||||
|
93
.eslintrc.js
93
.eslintrc.js
@ -7,8 +7,9 @@ module.exports = {
|
||||
ignorePatterns: [
|
||||
'app/vendor/**',
|
||||
'builds/**/*',
|
||||
'dist/**/*',
|
||||
'development/chromereload.js',
|
||||
'dist/**/*',
|
||||
'node_modules/**/*',
|
||||
],
|
||||
overrides: [
|
||||
/**
|
||||
@ -41,6 +42,7 @@ module.exports = {
|
||||
path.resolve(__dirname, '.eslintrc.base.js'),
|
||||
path.resolve(__dirname, '.eslintrc.node.js'),
|
||||
path.resolve(__dirname, '.eslintrc.babel.js'),
|
||||
path.resolve(__dirname, '.eslintrc.typescript-compat.js'),
|
||||
],
|
||||
parserOptions: {
|
||||
sourceType: 'module',
|
||||
@ -50,6 +52,23 @@ module.exports = {
|
||||
// trust that all of the files specified above are indeed modules.
|
||||
'import/unambiguous': 'off',
|
||||
},
|
||||
settings: {
|
||||
'import/resolver': {
|
||||
// When determining the location of a `require()` call, use Node's
|
||||
// resolution algorithm, then fall back to TypeScript's. This allows
|
||||
// TypeScript files (which Node's algorithm doesn't recognize) to be
|
||||
// imported from JavaScript files, while also preventing issues when
|
||||
// using packages like `prop-types` (where we would otherwise get "No
|
||||
// default export found in imported module 'prop-types'" from
|
||||
// TypeScript because imports work differently there).
|
||||
node: {},
|
||||
typescript: {
|
||||
// Always try to resolve types under `<root>/@types` directory even
|
||||
// it doesn't contain any source code, like `@types/unist`
|
||||
alwaysTryTypes: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
/**
|
||||
* Modules (ES module syntax)
|
||||
@ -75,10 +94,82 @@ module.exports = {
|
||||
path.resolve(__dirname, '.eslintrc.base.js'),
|
||||
path.resolve(__dirname, '.eslintrc.node.js'),
|
||||
path.resolve(__dirname, '.eslintrc.babel.js'),
|
||||
path.resolve(__dirname, '.eslintrc.typescript-compat.js'),
|
||||
],
|
||||
parserOptions: {
|
||||
sourceType: 'module',
|
||||
},
|
||||
settings: {
|
||||
'import/resolver': {
|
||||
// When determining the location of an `import`, use Node's resolution
|
||||
// algorithm, then fall back to TypeScript's. This allows TypeScript
|
||||
// files (which Node's algorithm doesn't recognize) to be imported
|
||||
// from JavaScript files, while also preventing issues when using
|
||||
// packages like `prop-types` (where we would otherwise get "No
|
||||
// default export found in imported module 'prop-types'" from
|
||||
// TypeScript because imports work differently there).
|
||||
node: {},
|
||||
typescript: {
|
||||
// Always try to resolve types under `<root>/@types` directory even
|
||||
// it doesn't contain any source code, like `@types/unist`
|
||||
alwaysTryTypes: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
/**
|
||||
* TypeScript files
|
||||
*/
|
||||
{
|
||||
files: ['*.{ts,tsx}'],
|
||||
extends: [
|
||||
path.resolve(__dirname, '.eslintrc.base.js'),
|
||||
'@metamask/eslint-config-typescript',
|
||||
path.resolve(__dirname, '.eslintrc.typescript-compat.js'),
|
||||
],
|
||||
rules: {
|
||||
// Turn these off, as it's recommended by typescript-eslint.
|
||||
// See: <https://typescript-eslint.io/docs/linting/troubleshooting#eslint-plugin-import>
|
||||
'import/named': 'off',
|
||||
'import/namespace': 'off',
|
||||
'import/default': 'off',
|
||||
'import/no-named-as-default-member': 'off',
|
||||
|
||||
// Disabled due to incompatibility with Record<string, unknown>.
|
||||
// See: <https://github.com/Microsoft/TypeScript/issues/15300#issuecomment-702872440>
|
||||
'@typescript-eslint/consistent-type-definitions': 'off',
|
||||
|
||||
// Modified to include the 'ignoreRestSiblings' option.
|
||||
// TODO: Migrate this rule change back into `@metamask/eslint-config`
|
||||
'@typescript-eslint/no-unused-vars': [
|
||||
'error',
|
||||
{
|
||||
vars: 'all',
|
||||
args: 'all',
|
||||
argsIgnorePattern: '[_]+',
|
||||
ignoreRestSiblings: true,
|
||||
},
|
||||
],
|
||||
},
|
||||
settings: {
|
||||
'import/resolver': {
|
||||
// When determining the location of an `import`, prefer TypeScript's
|
||||
// resolution algorithm. Note that due to how we've configured
|
||||
// TypeScript in `tsconfig.json`, we are able to import JavaScript
|
||||
// files from TypeScript files.
|
||||
typescript: {
|
||||
// Always try to resolve types under `<root>/@types` directory even
|
||||
// it doesn't contain any source code, like `@types/unist`
|
||||
alwaysTryTypes: true,
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
{
|
||||
files: ['*.d.ts'],
|
||||
parserOptions: {
|
||||
sourceType: 'script',
|
||||
},
|
||||
},
|
||||
|
||||
/**
|
||||
|
8
.eslintrc.typescript-compat.js
Normal file
8
.eslintrc.typescript-compat.js
Normal file
@ -0,0 +1,8 @@
|
||||
module.exports = {
|
||||
settings: {
|
||||
'import/extensions': ['.js', '.ts', '.tsx'],
|
||||
'import/parsers': {
|
||||
'@typescript-eslint/parser': ['.ts', '.tsx'],
|
||||
},
|
||||
},
|
||||
};
|
3
.gitignore
vendored
3
.gitignore
vendored
@ -46,3 +46,6 @@ notes.txt
|
||||
.nyc_output
|
||||
|
||||
.metamaskrc
|
||||
|
||||
# TypeScript
|
||||
tsout/
|
||||
|
@ -39,9 +39,11 @@ require('@babel/eslint-parser');
|
||||
require('@babel/eslint-plugin');
|
||||
require('@metamask/eslint-config');
|
||||
require('@metamask/eslint-config-nodejs');
|
||||
require('@typescript-eslint/parser');
|
||||
require('eslint');
|
||||
require('eslint-config-prettier');
|
||||
require('eslint-import-resolver-node');
|
||||
require('eslint-import-resolver-typescript');
|
||||
require('eslint-plugin-import');
|
||||
require('eslint-plugin-jsdoc');
|
||||
require('eslint-plugin-node');
|
||||
|
@ -1,7 +0,0 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"target": "ES6",
|
||||
"module": "commonjs"
|
||||
},
|
||||
"include": ["ui/**/*.js", "app/**/*.js", "shared/**/*.js"]
|
||||
}
|
@ -19,6 +19,8 @@
|
||||
"@babel/eslint-plugin": true,
|
||||
"@metamask/eslint-config": true,
|
||||
"@metamask/eslint-config-nodejs": true,
|
||||
"@metamask/eslint-config-typescript": true,
|
||||
"@typescript-eslint/eslint-plugin": true,
|
||||
"eslint": true,
|
||||
"eslint-config-prettier": true,
|
||||
"eslint-plugin-import": true,
|
||||
@ -29,20 +31,58 @@
|
||||
"eslint-plugin-react-hooks": true
|
||||
}
|
||||
},
|
||||
"eslint-module-utils": {
|
||||
"@typescript-eslint/eslint-plugin": {
|
||||
"packages": {
|
||||
"eslint-import-resolver-node": true,
|
||||
"@babel/eslint-parser": true
|
||||
"@typescript-eslint/experimental-utils": true,
|
||||
"@typescript-eslint/scope-manager": true,
|
||||
"debug": true,
|
||||
"eslint": true,
|
||||
"ignore": true,
|
||||
"regexpp": true,
|
||||
"semver": true,
|
||||
"tsutils": true,
|
||||
"typescript": true
|
||||
}
|
||||
},
|
||||
"node-sass": {
|
||||
"native": true
|
||||
"@typescript-eslint/experimental-utils": {
|
||||
"builtin": {
|
||||
"path": true
|
||||
},
|
||||
"packages": {
|
||||
"@typescript-eslint/scope-manager": true,
|
||||
"@typescript-eslint/types": true,
|
||||
"eslint": true,
|
||||
"eslint-scope": true,
|
||||
"eslint-utils": true
|
||||
}
|
||||
},
|
||||
"@typescript-eslint/scope-manager": {
|
||||
"packages": {
|
||||
"@typescript-eslint/types": true,
|
||||
"@typescript-eslint/visitor-keys": true
|
||||
}
|
||||
},
|
||||
"@typescript-eslint/visitor-keys": {
|
||||
"packages": {
|
||||
"eslint-visitor-keys": true
|
||||
}
|
||||
},
|
||||
"eslint-module-utils": {
|
||||
"packages": {
|
||||
"@babel/eslint-parser": true,
|
||||
"@typescript-eslint/parser": true,
|
||||
"eslint-import-resolver-node": true,
|
||||
"eslint-import-resolver-typescript": true
|
||||
}
|
||||
},
|
||||
"module-deps": {
|
||||
"packages": {
|
||||
"loose-envify": true
|
||||
}
|
||||
},
|
||||
"node-sass": {
|
||||
"native": true
|
||||
},
|
||||
"sass": {
|
||||
"env": "unfrozen",
|
||||
"builtin": {
|
||||
@ -51,6 +91,17 @@
|
||||
"globals": {
|
||||
"Buffer": true
|
||||
}
|
||||
},
|
||||
"tsutils": {
|
||||
"packages": {
|
||||
"typescript": true,
|
||||
"tslib": true
|
||||
}
|
||||
},
|
||||
"typescript": {
|
||||
"globals": {
|
||||
"globalThis": true
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -964,6 +964,48 @@
|
||||
"unist-util-find-all-after": true
|
||||
}
|
||||
},
|
||||
"@typescript-eslint/parser": {
|
||||
"packages": {
|
||||
"@typescript-eslint/scope-manager": true,
|
||||
"@typescript-eslint/typescript-estree": true,
|
||||
"debug": true,
|
||||
"typescript": true
|
||||
}
|
||||
},
|
||||
"@typescript-eslint/scope-manager": {
|
||||
"packages": {
|
||||
"@typescript-eslint/types": true,
|
||||
"@typescript-eslint/visitor-keys": true
|
||||
}
|
||||
},
|
||||
"@typescript-eslint/typescript-estree": {
|
||||
"builtin": {
|
||||
"fs": true,
|
||||
"path": true
|
||||
},
|
||||
"globals": {
|
||||
"console.log": true,
|
||||
"console.warn": true,
|
||||
"new": true,
|
||||
"process": true,
|
||||
"target": true
|
||||
},
|
||||
"packages": {
|
||||
"@typescript-eslint/types": true,
|
||||
"@typescript-eslint/visitor-keys": true,
|
||||
"debug": true,
|
||||
"globby": true,
|
||||
"is-glob": true,
|
||||
"semver": true,
|
||||
"tsutils": true,
|
||||
"typescript": true
|
||||
}
|
||||
},
|
||||
"@typescript-eslint/visitor-keys": {
|
||||
"packages": {
|
||||
"eslint-visitor-keys": true
|
||||
}
|
||||
},
|
||||
"JSONStream": {
|
||||
"globals": {
|
||||
"Buffer": true
|
||||
@ -1982,6 +2024,22 @@
|
||||
"resolve": true
|
||||
}
|
||||
},
|
||||
"eslint-import-resolver-typescript": {
|
||||
"builtin": {
|
||||
"path": true
|
||||
},
|
||||
"globals": {
|
||||
"console.warn": true,
|
||||
"process.cwd": true
|
||||
},
|
||||
"packages": {
|
||||
"debug": true,
|
||||
"glob": true,
|
||||
"is-glob": true,
|
||||
"resolve": true,
|
||||
"tsconfig-paths": true
|
||||
}
|
||||
},
|
||||
"eslint-module-utils": {
|
||||
"builtin": {
|
||||
"crypto.createHash": true,
|
||||
@ -2518,12 +2576,7 @@
|
||||
"builtin": {
|
||||
"assert": true,
|
||||
"events.EventEmitter": true,
|
||||
"fs.lstat": true,
|
||||
"fs.lstatSync": true,
|
||||
"fs.readdir": true,
|
||||
"fs.readdirSync": true,
|
||||
"fs.stat": true,
|
||||
"fs.statSync": true,
|
||||
"fs": true,
|
||||
"path.join": true,
|
||||
"path.resolve": true,
|
||||
"util": true
|
||||
@ -5056,17 +5109,41 @@
|
||||
"builtin": {
|
||||
"fs.existsSync": true,
|
||||
"fs.lstatSync": true,
|
||||
"fs.readFile": true,
|
||||
"fs.readFileSync": true,
|
||||
"fs.stat": true,
|
||||
"fs.statSync": true,
|
||||
"module._resolveFilename": true,
|
||||
"module.builtinModules": true,
|
||||
"path.dirname": true,
|
||||
"path.isAbsolute": true,
|
||||
"path.join": true,
|
||||
"path.resolve": true
|
||||
"path.resolve": true,
|
||||
"path.sep": true
|
||||
},
|
||||
"globals": {
|
||||
"console.warn": true,
|
||||
"process.argv.slice": true,
|
||||
"process.cwd": true,
|
||||
"process.env": true
|
||||
},
|
||||
"packages": {
|
||||
"json5": true,
|
||||
"minimist": true,
|
||||
"strip-bom": true
|
||||
}
|
||||
},
|
||||
"tslib": {
|
||||
"globals": {
|
||||
"define": true
|
||||
}
|
||||
},
|
||||
"tsutils": {
|
||||
"packages": {
|
||||
"tslib": true,
|
||||
"typescript": true
|
||||
}
|
||||
},
|
||||
"type-check": {
|
||||
"packages": {
|
||||
"prelude-ls": true
|
||||
@ -5084,29 +5161,19 @@
|
||||
"builtin": {
|
||||
"buffer.Buffer": true,
|
||||
"crypto": true,
|
||||
"fs.closeSync": true,
|
||||
"fs.mkdirSync": true,
|
||||
"fs.openSync": true,
|
||||
"fs.readFileSync": true,
|
||||
"fs.readdirSync": true,
|
||||
"fs.realpathSync": true,
|
||||
"fs.statSync": true,
|
||||
"fs.unlinkSync": true,
|
||||
"fs.unwatchFile": true,
|
||||
"fs.utimesSync": true,
|
||||
"fs.watch": true,
|
||||
"fs.watchFile": true,
|
||||
"fs.writeFileSync": true,
|
||||
"fs.writeSync": true,
|
||||
"fs": true,
|
||||
"inspector": true,
|
||||
"os.EOL": true,
|
||||
"os.platform": true,
|
||||
"path.dirname": true,
|
||||
"path.join": true,
|
||||
"path.resolve": true
|
||||
"path.resolve": true,
|
||||
"perf_hooks.PerformanceObserver": true,
|
||||
"perf_hooks.performance": true
|
||||
},
|
||||
"globals": {
|
||||
"Intl": true,
|
||||
"PerformanceObserver": true,
|
||||
"TypeScript": "write",
|
||||
"__dirname": true,
|
||||
"__filename": true,
|
||||
@ -5115,7 +5182,6 @@
|
||||
"console.log": true,
|
||||
"gc": true,
|
||||
"globalThis": "write",
|
||||
"onProfilerEvent": true,
|
||||
"performance": true,
|
||||
"process": true,
|
||||
"setTimeout": true,
|
||||
|
19
package.json
19
package.json
@ -37,16 +37,21 @@
|
||||
"test:coverage:jest": "yarn test:unit:jest --coverage --maxWorkers=2",
|
||||
"ganache:start": "./development/run-ganache.sh",
|
||||
"sentry:publish": "node ./development/sentry-publish.js",
|
||||
"lint:prettier": "prettier '**/*.json'",
|
||||
"lint": "yarn lint:prettier --check '**/*.json' && eslint . --ext js,snap --cache && yarn lint:styles",
|
||||
"lint:fix": "yarn lint:prettier --write '**/*.json' && eslint . --ext js --cache --fix && yarn lint:styles --fix",
|
||||
"lint": "yarn lint:prettier && yarn lint:eslint && yarn lint:tsc && yarn lint:styles",
|
||||
"lint:fix": "yarn lint:prettier:fix && yarn lint:eslint:fix && yarn lint:styles:fix",
|
||||
"lint:prettier": "prettier '**/*.json' --check",
|
||||
"lint:prettier:fix": "prettier '**/*.json' --write",
|
||||
"lint:changed": "{ git ls-files --others --exclude-standard ; git diff-index --name-only --diff-filter=d HEAD ; } | grep --regexp='[.]js$' | tr '\\n' '\\0' | xargs -0 eslint",
|
||||
"lint:changed:fix": "{ git ls-files --others --exclude-standard ; git diff-index --name-only --diff-filter=d HEAD ; } | grep --regexp='[.]js$' | tr '\\n' '\\0' | xargs -0 eslint --fix",
|
||||
"lint:changelog": "auto-changelog validate",
|
||||
"lint:changelog:rc": "auto-changelog validate --rc",
|
||||
"lint:eslint": "eslint . --ext js,ts,tsx,snap --cache",
|
||||
"lint:eslint:fix": "yarn lint:eslint --fix",
|
||||
"lint:lockfile": "lockfile-lint --path yarn.lock --allowed-hosts npm yarn github.com codeload.github.com --empty-hostname false --allowed-schemes \"https:\" \"git+https:\"",
|
||||
"lint:shellcheck": "./development/shellcheck.sh",
|
||||
"lint:styles": "stylelint '*/**/*.scss'",
|
||||
"lint:lockfile": "lockfile-lint --path yarn.lock --allowed-hosts npm yarn github.com codeload.github.com --empty-hostname false --allowed-schemes \"https:\" \"git+https:\"",
|
||||
"lint:styles:fix": "yarn lint:styles --fix",
|
||||
"lint:tsc": "tsc --project tsconfig.json --noEmit",
|
||||
"validate-source-maps": "node ./development/sourcemap-validator.js",
|
||||
"verify-locales": "node ./development/verify-locale-strings.js",
|
||||
"verify-locales:fix": "node ./development/verify-locale-strings.js --fix",
|
||||
@ -244,6 +249,7 @@
|
||||
"@metamask/eslint-config-jest": "^9.0.0",
|
||||
"@metamask/eslint-config-mocha": "^9.0.0",
|
||||
"@metamask/eslint-config-nodejs": "^9.0.0",
|
||||
"@metamask/eslint-config-typescript": "^9.0.1",
|
||||
"@metamask/forwarder": "^1.1.0",
|
||||
"@metamask/test-dapp": "^5.0.0",
|
||||
"@sentry/cli": "^1.58.0",
|
||||
@ -264,7 +270,10 @@
|
||||
"@testing-library/react": "^10.4.8",
|
||||
"@testing-library/react-hooks": "^3.2.1",
|
||||
"@testing-library/user-event": "^14.0.0-beta.12",
|
||||
"@tsconfig/node14": "^1.0.1",
|
||||
"@types/react": "^16.9.53",
|
||||
"@typescript-eslint/eslint-plugin": "^4.20.0",
|
||||
"@typescript-eslint/parser": "^4.20.0",
|
||||
"addons-linter": "1.14.0",
|
||||
"babelify": "^10.0.0",
|
||||
"bify-module-groups": "^1.0.0",
|
||||
@ -287,6 +296,7 @@
|
||||
"eslint": "^7.23.0",
|
||||
"eslint-config-prettier": "^8.1.0",
|
||||
"eslint-import-resolver-node": "^0.3.4",
|
||||
"eslint-import-resolver-typescript": "^2.5.0",
|
||||
"eslint-plugin-import": "^2.22.1",
|
||||
"eslint-plugin-jest": "^24.3.4",
|
||||
"eslint-plugin-jsdoc": "^37.0.3",
|
||||
@ -357,6 +367,7 @@
|
||||
"terser": "^5.7.0",
|
||||
"through2": "^4.0.2",
|
||||
"ttest": "^2.1.1",
|
||||
"typescript": "~4.4.0",
|
||||
"vinyl": "^2.2.1",
|
||||
"vinyl-buffer": "^1.0.1",
|
||||
"vinyl-source-stream": "^2.0.0",
|
||||
|
1830
patches/@keystonehq+bc-ur-registry+0.4.4.patch
Normal file
1830
patches/@keystonehq+bc-ur-registry+0.4.4.patch
Normal file
File diff suppressed because it is too large
Load Diff
68
patches/await-semaphore+0.1.3.patch
Normal file
68
patches/await-semaphore+0.1.3.patch
Normal file
@ -0,0 +1,68 @@
|
||||
diff --git a/node_modules/await-semaphore/index.ts b/node_modules/await-semaphore/index.ts
|
||||
deleted file mode 100644
|
||||
index 69ce92a..0000000
|
||||
--- a/node_modules/await-semaphore/index.ts
|
||||
+++ /dev/null
|
||||
@@ -1,62 +0,0 @@
|
||||
-export class Semaphore {
|
||||
- private tasks: (() => void)[] = [];
|
||||
- count: number;
|
||||
-
|
||||
- constructor(count: number) {
|
||||
- this.count = count;
|
||||
- }
|
||||
-
|
||||
- private sched() {
|
||||
- if (this.count > 0 && this.tasks.length > 0) {
|
||||
- this.count--;
|
||||
- let next = this.tasks.shift();
|
||||
- if (next === undefined) {
|
||||
- throw "Unexpected undefined value in tasks list";
|
||||
- }
|
||||
-
|
||||
- next();
|
||||
- }
|
||||
- }
|
||||
-
|
||||
- public acquire() {
|
||||
- return new Promise<() => void>((res, rej) => {
|
||||
- var task = () => {
|
||||
- var released = false;
|
||||
- res(() => {
|
||||
- if (!released) {
|
||||
- released = true;
|
||||
- this.count++;
|
||||
- this.sched();
|
||||
- }
|
||||
- });
|
||||
- };
|
||||
- this.tasks.push(task);
|
||||
- if (process && process.nextTick) {
|
||||
- process.nextTick(this.sched.bind(this));
|
||||
- } else {
|
||||
- setImmediate(this.sched.bind(this));
|
||||
- }
|
||||
- });
|
||||
- }
|
||||
-
|
||||
- public use<T>(f: () => Promise<T>) {
|
||||
- return this.acquire()
|
||||
- .then(release => {
|
||||
- return f()
|
||||
- .then((res) => {
|
||||
- release();
|
||||
- return res;
|
||||
- })
|
||||
- .catch((err) => {
|
||||
- release();
|
||||
- throw err;
|
||||
- });
|
||||
- });
|
||||
- }
|
||||
-}
|
||||
-
|
||||
-export class Mutex extends Semaphore {
|
||||
- constructor() {
|
||||
- super(1);
|
||||
- }
|
||||
-}
|
29
patches/eslint-import-resolver-typescript+2.5.0.patch
Normal file
29
patches/eslint-import-resolver-typescript+2.5.0.patch
Normal file
@ -0,0 +1,29 @@
|
||||
diff --git a/node_modules/eslint-import-resolver-typescript/lib/cjs.js b/node_modules/eslint-import-resolver-typescript/lib/cjs.js
|
||||
index 5aeddb5..1fe0cbf 100644
|
||||
--- a/node_modules/eslint-import-resolver-typescript/lib/cjs.js
|
||||
+++ b/node_modules/eslint-import-resolver-typescript/lib/cjs.js
|
||||
@@ -49,13 +49,19 @@ function __spreadArray(to, from) {
|
||||
|
||||
var IMPORTER_NAME = 'eslint-import-resolver-typescript';
|
||||
var log = debug__default['default'](IMPORTER_NAME);
|
||||
-var defaultExtensions = __spreadArray(__spreadArray([
|
||||
+/**
|
||||
+ * In the original version of this package, `Object.keys(require.extensions)`
|
||||
+ * gets added to `defaultExtensions`. `require.extensions` resolves to undefined
|
||||
+ * when this file is run through LavaMoat, and ESLint emits a warning that
|
||||
+ * `require.extensions` is deprecated anyway. So we hardcode this list here.
|
||||
+ */
|
||||
+var defaultExtensions = [
|
||||
'.ts',
|
||||
'.tsx',
|
||||
- '.d.ts'
|
||||
-], Object.keys(require.extensions)), [
|
||||
- '.jsx',
|
||||
-]);
|
||||
+ '.d.ts',
|
||||
+ '.js',
|
||||
+ '.jsx'
|
||||
+];
|
||||
var interfaceVersion = 2;
|
||||
/**
|
||||
* @param {string} source the module to resolve; i.e './some-module'
|
250
patches/typescript+4.4.4.patch
Normal file
250
patches/typescript+4.4.4.patch
Normal file
@ -0,0 +1,250 @@
|
||||
diff --git a/node_modules/typescript/lib/typescript.js b/node_modules/typescript/lib/typescript.js
|
||||
index 323de6f..367063a 100644
|
||||
--- a/node_modules/typescript/lib/typescript.js
|
||||
+++ b/node_modules/typescript/lib/typescript.js
|
||||
@@ -24,11 +24,58 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
||||
return to.concat(ar || Array.prototype.slice.call(from));
|
||||
};
|
||||
var __assign = (this && this.__assign) || function () {
|
||||
- __assign = Object.assign || function(t) {
|
||||
+ __assign = function(t) {
|
||||
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
||||
s = arguments[i];
|
||||
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
||||
- t[p] = s[p];
|
||||
+ for (var p in s) {
|
||||
+ if (Object.prototype.hasOwnProperty.call(s, p)) {
|
||||
+ /**
|
||||
+ * In the original version of this package, this was:
|
||||
+ *
|
||||
+ * t[p] = s[p]
|
||||
+ *
|
||||
+ * Unfortunately LavaMoat trips up on this, so we have to change
|
||||
+ * it.
|
||||
+ *
|
||||
+ * Internally LavaMoat uses `lockdown` (part of SES, which is
|
||||
+ * part of Endo) to freeze modifications to "intrinsics" — core
|
||||
+ * things like `Object.prototype`, `Function.prototype`, etc.
|
||||
+ * This will cause code which is responsible for said
|
||||
+ * modifications to fail at runtime, because it makes the
|
||||
+ * properties of these intrinsics non-writable.
|
||||
+ *
|
||||
+ * The reason we have to change *this* code is that later on,
|
||||
+ * this `__assign` function is used to merge two objects, and
|
||||
+ * one of those objects contains a `constructor` property. As we
|
||||
+ * know, `constructor` is a special property, as it's a property
|
||||
+ * on `Object.prototype` that stores the constructor used to
|
||||
+ * create that object. But when used in this context, there is
|
||||
+ * nothing inherently special about it – it's just a property on
|
||||
+ * an object we're setting. Unfortunately, that's not how it's
|
||||
+ * being treated. Because `lockdown` freezes `Object.prototype`,
|
||||
+ * `Object.prototype.constructor` is non-writable, and due to a
|
||||
+ * "mistake" in the ES5 spec [1], that means `constructor` on
|
||||
+ * *any* object is non-writable too. So an error is thrown when
|
||||
+ * this code is executed.
|
||||
+ *
|
||||
+ * There is a way to get around this, which is to configure
|
||||
+ * `lockdown` with the option `overrideTaming: 'severe'`.
|
||||
+ * The mechanics of this option, as well as more information
|
||||
+ * about the "mistake" this option solves, are explained here
|
||||
+ * [2]. Unfortunately, we cannot enable this option because
|
||||
+ * LavaMoat is the one running `lockdown` here [3]. So to work
|
||||
+ * around this, we use `Object.defineProperty` to define the
|
||||
+ * property we want. As this does not use property assignment
|
||||
+ * (`object[key] = value`) but rather defines the property more
|
||||
+ * directly, this bypasses the "override mistake".
|
||||
+ *
|
||||
+ * [1]: https://web.archive.org/web/20141230041441/http://wiki.ecmascript.org/doku.php?id=strawman:fixing_override_mistake
|
||||
+ * [2]: https://github.com/endojs/endo/blob/864f086f87e1e7ef78a401a7550ff0aeb664bba0/packages/ses/src/enable-property-overrides.js#L28
|
||||
+ * [3]: https://github.com/LavaMoat/LavaMoat/blob/7c15bf8ba34ba1a9ceb3ffe591b1b2bfb084bead/packages/core/src/kernelTemplate.js#L32-L43
|
||||
+ */
|
||||
+ Object.defineProperty(t, p, Object.getOwnPropertyDescriptor(s, p))
|
||||
+ }
|
||||
+ }
|
||||
}
|
||||
return t;
|
||||
};
|
||||
@@ -9820,87 +9867,94 @@ var ts;
|
||||
}
|
||||
ts.tokenIsIdentifierOrKeywordOrGreaterThan = tokenIsIdentifierOrKeywordOrGreaterThan;
|
||||
/** @internal */
|
||||
- ts.textToKeywordObj = (_a = {
|
||||
- abstract: 126 /* AbstractKeyword */,
|
||||
- any: 129 /* AnyKeyword */,
|
||||
- as: 127 /* AsKeyword */,
|
||||
- asserts: 128 /* AssertsKeyword */,
|
||||
- bigint: 156 /* BigIntKeyword */,
|
||||
- boolean: 132 /* BooleanKeyword */,
|
||||
- break: 81 /* BreakKeyword */,
|
||||
- case: 82 /* CaseKeyword */,
|
||||
- catch: 83 /* CatchKeyword */,
|
||||
- class: 84 /* ClassKeyword */,
|
||||
- continue: 86 /* ContinueKeyword */,
|
||||
- const: 85 /* ConstKeyword */
|
||||
- },
|
||||
- _a["" + "constructor"] = 133 /* ConstructorKeyword */,
|
||||
- _a.debugger = 87 /* DebuggerKeyword */,
|
||||
- _a.declare = 134 /* DeclareKeyword */,
|
||||
- _a.default = 88 /* DefaultKeyword */,
|
||||
- _a.delete = 89 /* DeleteKeyword */,
|
||||
- _a.do = 90 /* DoKeyword */,
|
||||
- _a.else = 91 /* ElseKeyword */,
|
||||
- _a.enum = 92 /* EnumKeyword */,
|
||||
- _a.export = 93 /* ExportKeyword */,
|
||||
- _a.extends = 94 /* ExtendsKeyword */,
|
||||
- _a.false = 95 /* FalseKeyword */,
|
||||
- _a.finally = 96 /* FinallyKeyword */,
|
||||
- _a.for = 97 /* ForKeyword */,
|
||||
- _a.from = 154 /* FromKeyword */,
|
||||
- _a.function = 98 /* FunctionKeyword */,
|
||||
- _a.get = 135 /* GetKeyword */,
|
||||
- _a.if = 99 /* IfKeyword */,
|
||||
- _a.implements = 117 /* ImplementsKeyword */,
|
||||
- _a.import = 100 /* ImportKeyword */,
|
||||
- _a.in = 101 /* InKeyword */,
|
||||
- _a.infer = 136 /* InferKeyword */,
|
||||
- _a.instanceof = 102 /* InstanceOfKeyword */,
|
||||
- _a.interface = 118 /* InterfaceKeyword */,
|
||||
- _a.intrinsic = 137 /* IntrinsicKeyword */,
|
||||
- _a.is = 138 /* IsKeyword */,
|
||||
- _a.keyof = 139 /* KeyOfKeyword */,
|
||||
- _a.let = 119 /* LetKeyword */,
|
||||
- _a.module = 140 /* ModuleKeyword */,
|
||||
- _a.namespace = 141 /* NamespaceKeyword */,
|
||||
- _a.never = 142 /* NeverKeyword */,
|
||||
- _a.new = 103 /* NewKeyword */,
|
||||
- _a.null = 104 /* NullKeyword */,
|
||||
- _a.number = 145 /* NumberKeyword */,
|
||||
- _a.object = 146 /* ObjectKeyword */,
|
||||
- _a.package = 120 /* PackageKeyword */,
|
||||
- _a.private = 121 /* PrivateKeyword */,
|
||||
- _a.protected = 122 /* ProtectedKeyword */,
|
||||
- _a.public = 123 /* PublicKeyword */,
|
||||
- _a.override = 157 /* OverrideKeyword */,
|
||||
- _a.readonly = 143 /* ReadonlyKeyword */,
|
||||
- _a.require = 144 /* RequireKeyword */,
|
||||
- _a.global = 155 /* GlobalKeyword */,
|
||||
- _a.return = 105 /* ReturnKeyword */,
|
||||
- _a.set = 147 /* SetKeyword */,
|
||||
- _a.static = 124 /* StaticKeyword */,
|
||||
- _a.string = 148 /* StringKeyword */,
|
||||
- _a.super = 106 /* SuperKeyword */,
|
||||
- _a.switch = 107 /* SwitchKeyword */,
|
||||
- _a.symbol = 149 /* SymbolKeyword */,
|
||||
- _a.this = 108 /* ThisKeyword */,
|
||||
- _a.throw = 109 /* ThrowKeyword */,
|
||||
- _a.true = 110 /* TrueKeyword */,
|
||||
- _a.try = 111 /* TryKeyword */,
|
||||
- _a.type = 150 /* TypeKeyword */,
|
||||
- _a.typeof = 112 /* TypeOfKeyword */,
|
||||
- _a.undefined = 151 /* UndefinedKeyword */,
|
||||
- _a.unique = 152 /* UniqueKeyword */,
|
||||
- _a.unknown = 153 /* UnknownKeyword */,
|
||||
- _a.var = 113 /* VarKeyword */,
|
||||
- _a.void = 114 /* VoidKeyword */,
|
||||
- _a.while = 115 /* WhileKeyword */,
|
||||
- _a.with = 116 /* WithKeyword */,
|
||||
- _a.yield = 125 /* YieldKeyword */,
|
||||
- _a.async = 130 /* AsyncKeyword */,
|
||||
- _a.await = 131 /* AwaitKeyword */,
|
||||
- _a.of = 158 /* OfKeyword */,
|
||||
- _a);
|
||||
+ /**
|
||||
+ * In the original version of this package, this object was built by
|
||||
+ * initializing one object and then adding more properties to that object.
|
||||
+ * This ends up throwing an error when this code is executed due to
|
||||
+ * the same issue as explained at the top of this file: essentially,
|
||||
+ * the `constructor` property of any object cannot be set due to the
|
||||
+ * "override mistake". The fix for this is to just build one big object.
|
||||
+ */
|
||||
+ ts.textToKeywordObj = {
|
||||
+ abstract: 126 /* AbstractKeyword */,
|
||||
+ any: 129 /* AnyKeyword */,
|
||||
+ as: 127 /* AsKeyword */,
|
||||
+ asserts: 128 /* AssertsKeyword */,
|
||||
+ bigint: 156 /* BigIntKeyword */,
|
||||
+ boolean: 132 /* BooleanKeyword */,
|
||||
+ break: 81 /* BreakKeyword */,
|
||||
+ case: 82 /* CaseKeyword */,
|
||||
+ catch: 83 /* CatchKeyword */,
|
||||
+ class: 84 /* ClassKeyword */,
|
||||
+ continue: 86 /* ContinueKeyword */,
|
||||
+ const: 85 /* ConstKeyword */,
|
||||
+ ["constructor"]: 133 /* ConstructorKeyword */,
|
||||
+ debugger: 87 /* DebuggerKeyword */,
|
||||
+ declare: 134 /* DeclareKeyword */,
|
||||
+ default: 88 /* DefaultKeyword */,
|
||||
+ delete: 89 /* DeleteKeyword */,
|
||||
+ do: 90 /* DoKeyword */,
|
||||
+ else: 91 /* ElseKeyword */,
|
||||
+ enum: 92 /* EnumKeyword */,
|
||||
+ export: 93 /* ExportKeyword */,
|
||||
+ extends: 94 /* ExtendsKeyword */,
|
||||
+ false: 95 /* FalseKeyword */,
|
||||
+ finally: 96 /* FinallyKeyword */,
|
||||
+ for: 97 /* ForKeyword */,
|
||||
+ from: 154 /* FromKeyword */,
|
||||
+ function: 98 /* FunctionKeyword */,
|
||||
+ get: 135 /* GetKeyword */,
|
||||
+ if: 99 /* IfKeyword */,
|
||||
+ implements: 117 /* ImplementsKeyword */,
|
||||
+ import: 100 /* ImportKeyword */,
|
||||
+ in: 101 /* InKeyword */,
|
||||
+ infer: 136 /* InferKeyword */,
|
||||
+ instanceof: 102 /* InstanceOfKeyword */,
|
||||
+ interface: 118 /* InterfaceKeyword */,
|
||||
+ intrinsic: 137 /* IntrinsicKeyword */,
|
||||
+ is: 138 /* IsKeyword */,
|
||||
+ keyof: 139 /* KeyOfKeyword */,
|
||||
+ let: 119 /* LetKeyword */,
|
||||
+ module: 140 /* ModuleKeyword */,
|
||||
+ namespace: 141 /* NamespaceKeyword */,
|
||||
+ never: 142 /* NeverKeyword */,
|
||||
+ new: 103 /* NewKeyword */,
|
||||
+ null: 104 /* NullKeyword */,
|
||||
+ number: 145 /* NumberKeyword */,
|
||||
+ object: 146 /* ObjectKeyword */,
|
||||
+ package: 120 /* PackageKeyword */,
|
||||
+ private: 121 /* PrivateKeyword */,
|
||||
+ protected: 122 /* ProtectedKeyword */,
|
||||
+ public: 123 /* PublicKeyword */,
|
||||
+ override: 157 /* OverrideKeyword */,
|
||||
+ readonly: 143 /* ReadonlyKeyword */,
|
||||
+ require: 144 /* RequireKeyword */,
|
||||
+ global: 155 /* GlobalKeyword */,
|
||||
+ return: 105 /* ReturnKeyword */,
|
||||
+ set: 147 /* SetKeyword */,
|
||||
+ static: 124 /* StaticKeyword */,
|
||||
+ string: 148 /* StringKeyword */,
|
||||
+ super: 106 /* SuperKeyword */,
|
||||
+ switch: 107 /* SwitchKeyword */,
|
||||
+ symbol: 149 /* SymbolKeyword */,
|
||||
+ this: 108 /* ThisKeyword */,
|
||||
+ throw: 109 /* ThrowKeyword */,
|
||||
+ true: 110 /* TrueKeyword */,
|
||||
+ try: 111 /* TryKeyword */,
|
||||
+ type: 150 /* TypeKeyword */,
|
||||
+ typeof: 112 /* TypeOfKeyword */,
|
||||
+ undefined: 151 /* UndefinedKeyword */,
|
||||
+ unique: 152 /* UniqueKeyword */,
|
||||
+ unknown: 153 /* UnknownKeyword */,
|
||||
+ var: 113 /* VarKeyword */,
|
||||
+ void: 114 /* VoidKeyword */,
|
||||
+ while: 115 /* WhileKeyword */,
|
||||
+ with: 116 /* WithKeyword */,
|
||||
+ yield: 125 /* YieldKeyword */,
|
||||
+ async: 130 /* AsyncKeyword */,
|
||||
+ await: 131 /* AwaitKeyword */,
|
||||
+ of: 158 /* OfKeyword */
|
||||
+ };
|
||||
var textToKeyword = new ts.Map(ts.getEntries(ts.textToKeywordObj));
|
||||
var textToToken = new ts.Map(ts.getEntries(__assign(__assign({}, ts.textToKeywordObj), { "{": 18 /* OpenBraceToken */, "}": 19 /* CloseBraceToken */, "(": 20 /* OpenParenToken */, ")": 21 /* CloseParenToken */, "[": 22 /* OpenBracketToken */, "]": 23 /* CloseBracketToken */, ".": 24 /* DotToken */, "...": 25 /* DotDotDotToken */, ";": 26 /* SemicolonToken */, ",": 27 /* CommaToken */, "<": 29 /* LessThanToken */, ">": 31 /* GreaterThanToken */, "<=": 32 /* LessThanEqualsToken */, ">=": 33 /* GreaterThanEqualsToken */, "==": 34 /* EqualsEqualsToken */, "!=": 35 /* ExclamationEqualsToken */, "===": 36 /* EqualsEqualsEqualsToken */, "!==": 37 /* ExclamationEqualsEqualsToken */, "=>": 38 /* EqualsGreaterThanToken */, "+": 39 /* PlusToken */, "-": 40 /* MinusToken */, "**": 42 /* AsteriskAsteriskToken */, "*": 41 /* AsteriskToken */, "/": 43 /* SlashToken */, "%": 44 /* PercentToken */, "++": 45 /* PlusPlusToken */, "--": 46 /* MinusMinusToken */, "<<": 47 /* LessThanLessThanToken */, "</": 30 /* LessThanSlashToken */, ">>": 48 /* GreaterThanGreaterThanToken */, ">>>": 49 /* GreaterThanGreaterThanGreaterThanToken */, "&": 50 /* AmpersandToken */, "|": 51 /* BarToken */, "^": 52 /* CaretToken */, "!": 53 /* ExclamationToken */, "~": 54 /* TildeToken */, "&&": 55 /* AmpersandAmpersandToken */, "||": 56 /* BarBarToken */, "?": 57 /* QuestionToken */, "??": 60 /* QuestionQuestionToken */, "?.": 28 /* QuestionDotToken */, ":": 58 /* ColonToken */, "=": 63 /* EqualsToken */, "+=": 64 /* PlusEqualsToken */, "-=": 65 /* MinusEqualsToken */, "*=": 66 /* AsteriskEqualsToken */, "**=": 67 /* AsteriskAsteriskEqualsToken */, "/=": 68 /* SlashEqualsToken */, "%=": 69 /* PercentEqualsToken */, "<<=": 70 /* LessThanLessThanEqualsToken */, ">>=": 71 /* GreaterThanGreaterThanEqualsToken */, ">>>=": 72 /* GreaterThanGreaterThanGreaterThanEqualsToken */, "&=": 73 /* AmpersandEqualsToken */, "|=": 74 /* BarEqualsToken */, "^=": 78 /* CaretEqualsToken */, "||=": 75 /* BarBarEqualsToken */, "&&=": 76 /* AmpersandAmpersandEqualsToken */, "??=": 77 /* QuestionQuestionEqualsToken */, "@": 59 /* AtToken */, "#": 62 /* HashToken */, "`": 61 /* BacktickToken */ })));
|
||||
/*
|
||||
@@ -159858,6 +159912,7 @@ var ts;
|
||||
delete Object.prototype.__magic__;
|
||||
}
|
||||
catch (error) {
|
||||
+ throw error;
|
||||
// In IE8, Object.defineProperty only works on DOM objects.
|
||||
// If we hit this code path, assume `window` exists.
|
||||
//@ts-ignore
|
26
tsconfig.json
Normal file
26
tsconfig.json
Normal file
@ -0,0 +1,26 @@
|
||||
{
|
||||
"compilerOptions": {
|
||||
"allowJs": true,
|
||||
"allowSyntheticDefaultImports": true,
|
||||
"inlineSources": true,
|
||||
"isolatedModules": true,
|
||||
"jsx": "react",
|
||||
"lib": ["dom", "es2020"],
|
||||
"moduleResolution": "node",
|
||||
"noEmitOnError": true,
|
||||
"outDir": "tsout",
|
||||
"rootDir": ".",
|
||||
"sourceMap": true,
|
||||
"strict": true
|
||||
},
|
||||
"exclude": [
|
||||
"**/*.test.js",
|
||||
"**/*.test.ts",
|
||||
"**/*.test.tsx",
|
||||
".storybook/**/*",
|
||||
"builds/**/*",
|
||||
"dist/**/*",
|
||||
"node_modules/**"
|
||||
],
|
||||
"extends": "@tsconfig/node14/tsconfig.json"
|
||||
}
|
157
yarn.lock
157
yarn.lock
@ -2807,6 +2807,11 @@
|
||||
resolved "https://registry.yarnpkg.com/@metamask/eslint-config-nodejs/-/eslint-config-nodejs-9.0.0.tgz#ec737a47c04febfb921ce844362d875ca2cae9e7"
|
||||
integrity sha512-kPUrMPdpGeapbdG+LxysnDNzM9SlBNUvqVl1XoKnOGjo1pbZXB8hOI36PT3IlR1qa2FJumKYfgDSu7JLmOLxqQ==
|
||||
|
||||
"@metamask/eslint-config-typescript@^9.0.1":
|
||||
version "9.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@metamask/eslint-config-typescript/-/eslint-config-typescript-9.0.1.tgz#900d53579ce074734ac9bf4e3f66fc20b92bd6af"
|
||||
integrity sha512-+W7MXCoq8Q29wvkAv0ycwKB82xMbl+LfkUoM8oWN4n7vyMDXgcgbNjY7ug+quJPZfDTJJ7fxgPmG8m4LrkEImw==
|
||||
|
||||
"@metamask/eslint-config@^9.0.0":
|
||||
version "9.0.0"
|
||||
resolved "https://registry.yarnpkg.com/@metamask/eslint-config/-/eslint-config-9.0.0.tgz#22d4911b705f7e4e566efbdda0e37912da33e30f"
|
||||
@ -4344,6 +4349,11 @@
|
||||
dependencies:
|
||||
node-gyp-build "4.3.0"
|
||||
|
||||
"@tsconfig/node14@^1.0.1":
|
||||
version "1.0.1"
|
||||
resolved "https://registry.yarnpkg.com/@tsconfig/node14/-/node14-1.0.1.tgz#95f2d167ffb9b8d2068b0b235302fafd4df711f2"
|
||||
integrity sha512-509r2+yARFfHHE7T6Puu2jjkoycftovhXRqW328PDXTVGKihlb1P8Z9mMZH04ebyajfRY7dedfGynlrFHJUQCg==
|
||||
|
||||
"@types/aria-query@^4.2.0":
|
||||
version "4.2.0"
|
||||
resolved "https://registry.yarnpkg.com/@types/aria-query/-/aria-query-4.2.0.tgz#14264692a9d6e2fa4db3df5e56e94b5e25647ac0"
|
||||
@ -4530,7 +4540,7 @@
|
||||
jest-diff "^26.0.0"
|
||||
pretty-format "^26.0.0"
|
||||
|
||||
"@types/json-schema@^7.0.3", "@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.6":
|
||||
"@types/json-schema@^7.0.4", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.6", "@types/json-schema@^7.0.7":
|
||||
version "7.0.9"
|
||||
resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d"
|
||||
integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ==
|
||||
@ -4832,76 +4842,74 @@
|
||||
dependencies:
|
||||
"@types/node" "*"
|
||||
|
||||
"@typescript-eslint/experimental-utils@^4.0.1":
|
||||
version "4.21.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.21.0.tgz#0b0bb7c15d379140a660c003bdbafa71ae9134b6"
|
||||
integrity sha512-cEbgosW/tUFvKmkg3cU7LBoZhvUs+ZPVM9alb25XvR0dal4qHL3SiUqHNrzoWSxaXA9gsifrYrS1xdDV6w/gIA==
|
||||
"@typescript-eslint/eslint-plugin@^4.20.0":
|
||||
version "4.33.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz#c24dc7c8069c7706bc40d99f6fa87edcb2005276"
|
||||
integrity sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg==
|
||||
dependencies:
|
||||
"@types/json-schema" "^7.0.3"
|
||||
"@typescript-eslint/scope-manager" "4.21.0"
|
||||
"@typescript-eslint/types" "4.21.0"
|
||||
"@typescript-eslint/typescript-estree" "4.21.0"
|
||||
eslint-scope "^5.0.0"
|
||||
eslint-utils "^2.0.0"
|
||||
"@typescript-eslint/experimental-utils" "4.33.0"
|
||||
"@typescript-eslint/scope-manager" "4.33.0"
|
||||
debug "^4.3.1"
|
||||
functional-red-black-tree "^1.0.1"
|
||||
ignore "^5.1.8"
|
||||
regexpp "^3.1.0"
|
||||
semver "^7.3.5"
|
||||
tsutils "^3.21.0"
|
||||
|
||||
"@typescript-eslint/scope-manager@4.21.0":
|
||||
version "4.21.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.21.0.tgz#c81b661c4b8af1ec0c010d847a8f9ab76ab95b4d"
|
||||
integrity sha512-kfOjF0w1Ix7+a5T1knOw00f7uAP9Gx44+OEsNQi0PvvTPLYeXJlsCJ4tYnDj5PQEYfpcgOH5yBlw7K+UEI9Agw==
|
||||
"@typescript-eslint/experimental-utils@4.33.0", "@typescript-eslint/experimental-utils@^4.0.1":
|
||||
version "4.33.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz#6f2a786a4209fa2222989e9380b5331b2810f7fd"
|
||||
integrity sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "4.21.0"
|
||||
"@typescript-eslint/visitor-keys" "4.21.0"
|
||||
"@types/json-schema" "^7.0.7"
|
||||
"@typescript-eslint/scope-manager" "4.33.0"
|
||||
"@typescript-eslint/types" "4.33.0"
|
||||
"@typescript-eslint/typescript-estree" "4.33.0"
|
||||
eslint-scope "^5.1.1"
|
||||
eslint-utils "^3.0.0"
|
||||
|
||||
"@typescript-eslint/types@4.21.0":
|
||||
version "4.21.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.21.0.tgz#abdc3463bda5d31156984fa5bc316789c960edef"
|
||||
integrity sha512-+OQaupjGVVc8iXbt6M1oZMwyKQNehAfLYJJ3SdvnofK2qcjfor9pEM62rVjBknhowTkh+2HF+/KdRAc/wGBN2w==
|
||||
|
||||
"@typescript-eslint/types@4.31.1":
|
||||
version "4.31.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.31.1.tgz#5f255b695627a13401d2fdba5f7138bc79450d66"
|
||||
integrity sha512-kixltt51ZJGKENNW88IY5MYqTBA8FR0Md8QdGbJD2pKZ+D5IvxjTYDNtJPDxFBiXmka2aJsITdB1BtO1fsgmsQ==
|
||||
|
||||
"@typescript-eslint/typescript-estree@4.21.0":
|
||||
version "4.21.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.21.0.tgz#3817bd91857beeaeff90f69f1f112ea58d350b0a"
|
||||
integrity sha512-ZD3M7yLaVGVYLw4nkkoGKumb7Rog7QID9YOWobFDMQKNl+vPxqVIW/uDk+MDeGc+OHcoG2nJ2HphwiPNajKw3w==
|
||||
"@typescript-eslint/parser@^4.20.0":
|
||||
version "4.33.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.33.0.tgz#dfe797570d9694e560528d18eecad86c8c744899"
|
||||
integrity sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "4.21.0"
|
||||
"@typescript-eslint/visitor-keys" "4.21.0"
|
||||
debug "^4.1.1"
|
||||
globby "^11.0.1"
|
||||
is-glob "^4.0.1"
|
||||
semver "^7.3.2"
|
||||
tsutils "^3.17.1"
|
||||
"@typescript-eslint/scope-manager" "4.33.0"
|
||||
"@typescript-eslint/types" "4.33.0"
|
||||
"@typescript-eslint/typescript-estree" "4.33.0"
|
||||
debug "^4.3.1"
|
||||
|
||||
"@typescript-eslint/typescript-estree@^4.8.2":
|
||||
version "4.31.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.31.1.tgz#4a04d5232cf1031232b7124a9c0310b577a62d17"
|
||||
integrity sha512-EGHkbsUvjFrvRnusk6yFGqrqMBTue5E5ROnS5puj3laGQPasVUgwhrxfcgkdHNFECHAewpvELE1Gjv0XO3mdWg==
|
||||
"@typescript-eslint/scope-manager@4.33.0":
|
||||
version "4.33.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz#d38e49280d983e8772e29121cf8c6e9221f280a3"
|
||||
integrity sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "4.31.1"
|
||||
"@typescript-eslint/visitor-keys" "4.31.1"
|
||||
"@typescript-eslint/types" "4.33.0"
|
||||
"@typescript-eslint/visitor-keys" "4.33.0"
|
||||
|
||||
"@typescript-eslint/types@4.33.0":
|
||||
version "4.33.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.33.0.tgz#a1e59036a3b53ae8430ceebf2a919dc7f9af6d72"
|
||||
integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ==
|
||||
|
||||
"@typescript-eslint/typescript-estree@4.33.0", "@typescript-eslint/typescript-estree@^4.8.2":
|
||||
version "4.33.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz#0dfb51c2908f68c5c08d82aefeaf166a17c24609"
|
||||
integrity sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "4.33.0"
|
||||
"@typescript-eslint/visitor-keys" "4.33.0"
|
||||
debug "^4.3.1"
|
||||
globby "^11.0.3"
|
||||
is-glob "^4.0.1"
|
||||
semver "^7.3.5"
|
||||
tsutils "^3.21.0"
|
||||
|
||||
"@typescript-eslint/visitor-keys@4.21.0":
|
||||
version "4.21.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.21.0.tgz#990a9acdc124331f5863c2cf21c88ba65233cd8d"
|
||||
integrity sha512-dH22dROWGi5Z6p+Igc8bLVLmwy7vEe8r+8c+raPQU0LxgogPUrRAtRGtvBWmlr9waTu3n+QLt/qrS/hWzk1x5w==
|
||||
"@typescript-eslint/visitor-keys@4.33.0":
|
||||
version "4.33.0"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz#2a22f77a41604289b7a186586e9ec48ca92ef1dd"
|
||||
integrity sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "4.21.0"
|
||||
eslint-visitor-keys "^2.0.0"
|
||||
|
||||
"@typescript-eslint/visitor-keys@4.31.1":
|
||||
version "4.31.1"
|
||||
resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.31.1.tgz#f2e7a14c7f20c4ae07d7fc3c5878c4441a1da9cc"
|
||||
integrity sha512-PCncP8hEqKw6SOJY+3St4LVtoZpPPn+Zlpm7KW5xnviMhdqcsBty4Lsg4J/VECpJjw1CkROaZhH4B8M1OfnXTQ==
|
||||
dependencies:
|
||||
"@typescript-eslint/types" "4.31.1"
|
||||
"@typescript-eslint/types" "4.33.0"
|
||||
eslint-visitor-keys "^2.0.0"
|
||||
|
||||
"@vue/compiler-core@3.1.4":
|
||||
@ -10700,6 +10708,17 @@ eslint-import-resolver-node@^0.3.4:
|
||||
debug "^2.6.9"
|
||||
resolve "^1.13.1"
|
||||
|
||||
eslint-import-resolver-typescript@^2.5.0:
|
||||
version "2.5.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-import-resolver-typescript/-/eslint-import-resolver-typescript-2.5.0.tgz#07661966b272d14ba97f597b51e1a588f9722f0a"
|
||||
integrity sha512-qZ6e5CFr+I7K4VVhQu3M/9xGv9/YmwsEXrsm3nimw8vWaVHRDrQRp26BgCypTxBp3vUp4o5aVEJRiy0F2DFddQ==
|
||||
dependencies:
|
||||
debug "^4.3.1"
|
||||
glob "^7.1.7"
|
||||
is-glob "^4.0.1"
|
||||
resolve "^1.20.0"
|
||||
tsconfig-paths "^3.9.0"
|
||||
|
||||
eslint-module-utils@^2.6.0:
|
||||
version "2.6.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz#579ebd094f56af7797d19c9866c9c9486629bfa6"
|
||||
@ -10827,7 +10846,7 @@ eslint-scope@^4.0.3:
|
||||
esrecurse "^4.1.0"
|
||||
estraverse "^4.1.1"
|
||||
|
||||
eslint-scope@^5.0.0, eslint-scope@^5.1.0, eslint-scope@^5.1.1:
|
||||
eslint-scope@^5.1.0, eslint-scope@^5.1.1:
|
||||
version "5.1.1"
|
||||
resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c"
|
||||
integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==
|
||||
@ -10849,6 +10868,13 @@ eslint-utils@^2.0.0, eslint-utils@^2.1.0:
|
||||
dependencies:
|
||||
eslint-visitor-keys "^1.1.0"
|
||||
|
||||
eslint-utils@^3.0.0:
|
||||
version "3.0.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672"
|
||||
integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA==
|
||||
dependencies:
|
||||
eslint-visitor-keys "^2.0.0"
|
||||
|
||||
eslint-visitor-keys@1.1.0:
|
||||
version "1.1.0"
|
||||
resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.1.0.tgz#e2a82cea84ff246ad6fb57f9bde5b46621459ec2"
|
||||
@ -13292,10 +13318,10 @@ glob@7.1.4:
|
||||
once "^1.3.0"
|
||||
path-is-absolute "^1.0.0"
|
||||
|
||||
glob@^7.0.0, glob@^7.0.3, glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6:
|
||||
version "7.1.6"
|
||||
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6"
|
||||
integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==
|
||||
glob@^7.0.0, glob@^7.0.3, glob@^7.1.0, glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6, glob@^7.1.7:
|
||||
version "7.2.0"
|
||||
resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023"
|
||||
integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==
|
||||
dependencies:
|
||||
fs.realpath "^1.0.0"
|
||||
inflight "^1.0.4"
|
||||
@ -26663,7 +26689,7 @@ tsscmp@1.0.6:
|
||||
resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb"
|
||||
integrity sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==
|
||||
|
||||
tsutils@^3.17.1, tsutils@^3.21.0:
|
||||
tsutils@^3.21.0:
|
||||
version "3.21.0"
|
||||
resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623"
|
||||
integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==
|
||||
@ -26804,6 +26830,11 @@ typescript@^3.9.7:
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.9.10.tgz#70f3910ac7a51ed6bef79da7800690b19bf778b8"
|
||||
integrity sha512-w6fIxVE/H1PkLKcCPsFqKE7Kv7QUwhU8qQY2MueZXWx5cPZdwFupLgKK3vntcK98BtNHZtAF4LA/yl2a7k8R6Q==
|
||||
|
||||
typescript@~4.4.0:
|
||||
version "4.4.4"
|
||||
resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.4.4.tgz#2cd01a1a1f160704d3101fd5a58ff0f9fcb8030c"
|
||||
integrity sha512-DqGhF5IKoBl8WNf8C1gu8q0xZSInh9j1kJJMqT3a94w1JzVaBU4EXOSMrz9yDqMT0xt3selp83fuFMQ0uzv6qA==
|
||||
|
||||
typical@^5.0.0:
|
||||
version "5.1.0"
|
||||
resolved "https://registry.yarnpkg.com/typical/-/typical-5.1.0.tgz#7116ca103caf2574985fc84fbaa8fd0ee5ea1684"
|
||||
|
Loading…
Reference in New Issue
Block a user