[extension] Add eslint
This commit is contained in:
parent
45646318c0
commit
697dfb968d
2
extension/bwcontest/.eslintignore
Normal file
2
extension/bwcontest/.eslintignore
Normal file
@ -0,0 +1,2 @@
|
|||||||
|
node_modules
|
||||||
|
out
|
37
extension/bwcontest/.eslintrc.cjs
Normal file
37
extension/bwcontest/.eslintrc.cjs
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
module.exports = {
|
||||||
|
root: true,
|
||||||
|
extends: [
|
||||||
|
'eslint:recommended',
|
||||||
|
'plugin:@typescript-eslint/recommended',
|
||||||
|
'plugin:svelte/recommended',
|
||||||
|
'prettier'
|
||||||
|
],
|
||||||
|
parser: '@typescript-eslint/parser',
|
||||||
|
plugins: ['@typescript-eslint'],
|
||||||
|
parserOptions: {
|
||||||
|
sourceType: 'module',
|
||||||
|
ecmaVersion: 2020,
|
||||||
|
extraFileExtensions: ['.svelte']
|
||||||
|
},
|
||||||
|
env: {
|
||||||
|
es2017: true,
|
||||||
|
node: true
|
||||||
|
},
|
||||||
|
overrides: [
|
||||||
|
{ files: ['*.ts', '*.svelte'], rules: { 'no-undef': 'off' } },
|
||||||
|
{
|
||||||
|
files: ['*.ts'],
|
||||||
|
rules: {
|
||||||
|
'@typescript-eslint/consistent-type-assertions': ['error', { assertionStyle: 'never' }]
|
||||||
|
},
|
||||||
|
parserOptions: { project: ['./tsconfig.json', './webviews/tsconfig.json'] }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
files: ['*.svelte'],
|
||||||
|
parser: 'svelte-eslint-parser',
|
||||||
|
parserOptions: {
|
||||||
|
parser: '@typescript-eslint/parser'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
]
|
||||||
|
};
|
@ -1,2 +1,2 @@
|
|||||||
node_modules
|
node_modules
|
||||||
compiled
|
out
|
164
extension/bwcontest/package-lock.json
generated
164
extension/bwcontest/package-lock.json
generated
@ -13,7 +13,8 @@
|
|||||||
"fs-extra": "^11.1.1",
|
"fs-extra": "^11.1.1",
|
||||||
"isomorphic-git": "^1.24.5",
|
"isomorphic-git": "^1.24.5",
|
||||||
"tree-kill": "^1.2.2",
|
"tree-kill": "^1.2.2",
|
||||||
"url-join": "^5.0.0"
|
"url-join": "^5.0.0",
|
||||||
|
"zod": "^3.22.4"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@rollup/plugin-commonjs": "^25.0.7",
|
"@rollup/plugin-commonjs": "^25.0.7",
|
||||||
@ -32,6 +33,8 @@
|
|||||||
"concurrently": "^8.2.1",
|
"concurrently": "^8.2.1",
|
||||||
"esbuild": "^0.19.4",
|
"esbuild": "^0.19.4",
|
||||||
"eslint": "^8.51.0",
|
"eslint": "^8.51.0",
|
||||||
|
"eslint-config-prettier": "^9.0.0",
|
||||||
|
"eslint-plugin-svelte": "^2.34.0",
|
||||||
"glob": "^10.3.10",
|
"glob": "^10.3.10",
|
||||||
"mocha": "^10.2.0",
|
"mocha": "^10.2.0",
|
||||||
"postcss": "^8.4.31",
|
"postcss": "^8.4.31",
|
||||||
@ -2686,19 +2689,53 @@
|
|||||||
"url": "https://opencollective.com/eslint"
|
"url": "https://opencollective.com/eslint"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/eslint-visitor-keys": {
|
"node_modules/eslint-config-prettier": {
|
||||||
"version": "3.4.3",
|
"version": "9.0.0",
|
||||||
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-config-prettier/-/eslint-config-prettier-9.0.0.tgz",
|
||||||
"integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
|
"integrity": "sha512-IcJsTkJae2S35pRsRAwoCE+925rJJStOdkKnLVgtE+tEpqU0EVVM7OqrwxqgptKdX29NUwC82I5pXsGFIgSevw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"engines": {
|
"bin": {
|
||||||
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
|
"eslint-config-prettier": "bin/cli.js"
|
||||||
},
|
},
|
||||||
"funding": {
|
"peerDependencies": {
|
||||||
"url": "https://opencollective.com/eslint"
|
"eslint": ">=7.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/eslint/node_modules/eslint-scope": {
|
"node_modules/eslint-plugin-svelte": {
|
||||||
|
"version": "2.34.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/eslint-plugin-svelte/-/eslint-plugin-svelte-2.34.0.tgz",
|
||||||
|
"integrity": "sha512-4RYUgNai7wr0v+T/kljMiYSjC/oqwgq5i+cPppawryAayj4C7WK1ixFlWCGmNmBppnoKCl4iA4ZPzPtlHcb4CA==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"@eslint-community/eslint-utils": "^4.2.0",
|
||||||
|
"@jridgewell/sourcemap-codec": "^1.4.14",
|
||||||
|
"debug": "^4.3.1",
|
||||||
|
"esutils": "^2.0.3",
|
||||||
|
"known-css-properties": "^0.28.0",
|
||||||
|
"postcss": "^8.4.5",
|
||||||
|
"postcss-load-config": "^3.1.4",
|
||||||
|
"postcss-safe-parser": "^6.0.0",
|
||||||
|
"postcss-selector-parser": "^6.0.11",
|
||||||
|
"semver": "^7.5.3",
|
||||||
|
"svelte-eslint-parser": ">=0.33.0 <1.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^14.17.0 || >=16.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ota-meshi"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"eslint": "^7.0.0 || ^8.0.0-0",
|
||||||
|
"svelte": "^3.37.0 || ^4.0.0"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"svelte": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/eslint-scope": {
|
||||||
"version": "7.2.2",
|
"version": "7.2.2",
|
||||||
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.2.tgz",
|
||||||
"integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
|
"integrity": "sha512-dOt21O7lTMhDM+X9mB4GX+DZrZtCUJPL/wlcTqxyrx5IvO0IYtILdtrQGQp+8n5S0gwSVmOf9NQrjMOgfQZlIg==",
|
||||||
@ -2714,13 +2751,16 @@
|
|||||||
"url": "https://opencollective.com/eslint"
|
"url": "https://opencollective.com/eslint"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/eslint/node_modules/estraverse": {
|
"node_modules/eslint-visitor-keys": {
|
||||||
"version": "5.3.0",
|
"version": "3.4.3",
|
||||||
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz",
|
||||||
"integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
|
"integrity": "sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=4.0"
|
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://opencollective.com/eslint"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/espree": {
|
"node_modules/espree": {
|
||||||
@ -2752,15 +2792,6 @@
|
|||||||
"node": ">=0.10"
|
"node": ">=0.10"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/esquery/node_modules/estraverse": {
|
|
||||||
"version": "5.3.0",
|
|
||||||
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
|
|
||||||
"integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
|
|
||||||
"dev": true,
|
|
||||||
"engines": {
|
|
||||||
"node": ">=4.0"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"node_modules/esrecurse": {
|
"node_modules/esrecurse": {
|
||||||
"version": "4.3.0",
|
"version": "4.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz",
|
||||||
@ -2773,7 +2804,7 @@
|
|||||||
"node": ">=4.0"
|
"node": ">=4.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/esrecurse/node_modules/estraverse": {
|
"node_modules/estraverse": {
|
||||||
"version": "5.3.0",
|
"version": "5.3.0",
|
||||||
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.3.0.tgz",
|
||||||
"integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
|
"integrity": "sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA==",
|
||||||
@ -3725,6 +3756,12 @@
|
|||||||
"prebuild-install": "^7.0.1"
|
"prebuild-install": "^7.0.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/known-css-properties": {
|
||||||
|
"version": "0.28.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/known-css-properties/-/known-css-properties-0.28.0.tgz",
|
||||||
|
"integrity": "sha512-9pSL5XB4J+ifHP0e0jmmC98OGC1nL8/JjS+fi6mnTlIf//yt/MfVLtKg7S6nCtj/8KTcWX7nRlY0XywoYY1ISQ==",
|
||||||
|
"dev": true
|
||||||
|
},
|
||||||
"node_modules/leven": {
|
"node_modules/leven": {
|
||||||
"version": "3.1.0",
|
"version": "3.1.0",
|
||||||
"resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
|
"resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz",
|
||||||
@ -5065,6 +5102,48 @@
|
|||||||
"postcss": "^8.2.15"
|
"postcss": "^8.2.15"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/postcss-safe-parser": {
|
||||||
|
"version": "6.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/postcss-safe-parser/-/postcss-safe-parser-6.0.0.tgz",
|
||||||
|
"integrity": "sha512-FARHN8pwH+WiS2OPCxJI8FuRJpTVnn6ZNFiqAM2aeW2LwTHWWmWgIyKC6cUo0L8aeKiF/14MNvnpls6R2PBeMQ==",
|
||||||
|
"dev": true,
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/postcss/"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"postcss": "^8.3.3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/postcss-scss": {
|
||||||
|
"version": "4.0.9",
|
||||||
|
"resolved": "https://registry.npmjs.org/postcss-scss/-/postcss-scss-4.0.9.tgz",
|
||||||
|
"integrity": "sha512-AjKOeiwAitL/MXxQW2DliT28EKukvvbEWx3LBmJIRN8KfBGZbRTxNYW0kSqi1COiTZ57nZ9NW06S6ux//N1c9A==",
|
||||||
|
"dev": true,
|
||||||
|
"funding": [
|
||||||
|
{
|
||||||
|
"type": "opencollective",
|
||||||
|
"url": "https://opencollective.com/postcss/"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "tidelift",
|
||||||
|
"url": "https://tidelift.com/funding/github/npm/postcss-scss"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"type": "github",
|
||||||
|
"url": "https://github.com/sponsors/ai"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"engines": {
|
||||||
|
"node": ">=12.0"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"postcss": "^8.4.29"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/postcss-selector-parser": {
|
"node_modules/postcss-selector-parser": {
|
||||||
"version": "6.0.12",
|
"version": "6.0.12",
|
||||||
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.12.tgz",
|
"resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.12.tgz",
|
||||||
@ -6037,6 +6116,33 @@
|
|||||||
"svelte": "^3.55.0 || ^4.0.0-next.0 || ^4.0.0"
|
"svelte": "^3.55.0 || ^4.0.0-next.0 || ^4.0.0"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/svelte-eslint-parser": {
|
||||||
|
"version": "0.33.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/svelte-eslint-parser/-/svelte-eslint-parser-0.33.1.tgz",
|
||||||
|
"integrity": "sha512-vo7xPGTlKBGdLH8T5L64FipvTrqv3OQRx9d2z5X05KKZDlF4rQk8KViZO4flKERY+5BiVdOh7zZ7JGJWo5P0uA==",
|
||||||
|
"dev": true,
|
||||||
|
"dependencies": {
|
||||||
|
"eslint-scope": "^7.0.0",
|
||||||
|
"eslint-visitor-keys": "^3.0.0",
|
||||||
|
"espree": "^9.0.0",
|
||||||
|
"postcss": "^8.4.29",
|
||||||
|
"postcss-scss": "^4.0.8"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ota-meshi"
|
||||||
|
},
|
||||||
|
"peerDependencies": {
|
||||||
|
"svelte": "^3.37.0 || ^4.0.0"
|
||||||
|
},
|
||||||
|
"peerDependenciesMeta": {
|
||||||
|
"svelte": {
|
||||||
|
"optional": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/svelte-preprocess": {
|
"node_modules/svelte-preprocess": {
|
||||||
"version": "5.0.4",
|
"version": "5.0.4",
|
||||||
"resolved": "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-5.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/svelte-preprocess/-/svelte-preprocess-5.0.4.tgz",
|
||||||
@ -6606,6 +6712,14 @@
|
|||||||
"funding": {
|
"funding": {
|
||||||
"url": "https://github.com/sponsors/sindresorhus"
|
"url": "https://github.com/sponsors/sindresorhus"
|
||||||
}
|
}
|
||||||
|
},
|
||||||
|
"node_modules/zod": {
|
||||||
|
"version": "3.22.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/zod/-/zod-3.22.4.tgz",
|
||||||
|
"integrity": "sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==",
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/colinhacks"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -65,7 +65,8 @@
|
|||||||
"esbuild": "npm run esbuild-base -- --sourcemap",
|
"esbuild": "npm run esbuild-base -- --sourcemap",
|
||||||
"compile": "rollup -c && npm run esbuild-base -- --minify",
|
"compile": "rollup -c && npm run esbuild-base -- --minify",
|
||||||
"format": "prettier --plugin prettier-plugin-svelte --write .",
|
"format": "prettier --plugin prettier-plugin-svelte --write .",
|
||||||
"watch": "concurrently \"rollup -c -w\" \"npm run esbuild-base -- --sourcemap --watch\""
|
"watch": "concurrently \"rollup -c -w\" \"npm run esbuild-base -- --sourcemap --watch\"",
|
||||||
|
"lint": "prettier --plugin prettier-plugin-svelte --check . && eslint ."
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@rollup/plugin-commonjs": "^25.0.7",
|
"@rollup/plugin-commonjs": "^25.0.7",
|
||||||
@ -84,6 +85,8 @@
|
|||||||
"concurrently": "^8.2.1",
|
"concurrently": "^8.2.1",
|
||||||
"esbuild": "^0.19.4",
|
"esbuild": "^0.19.4",
|
||||||
"eslint": "^8.51.0",
|
"eslint": "^8.51.0",
|
||||||
|
"eslint-config-prettier": "^9.0.0",
|
||||||
|
"eslint-plugin-svelte": "^2.34.0",
|
||||||
"glob": "^10.3.10",
|
"glob": "^10.3.10",
|
||||||
"mocha": "^10.2.0",
|
"mocha": "^10.2.0",
|
||||||
"postcss": "^8.4.31",
|
"postcss": "^8.4.31",
|
||||||
@ -103,6 +106,7 @@
|
|||||||
"fs-extra": "^11.1.1",
|
"fs-extra": "^11.1.1",
|
||||||
"isomorphic-git": "^1.24.5",
|
"isomorphic-git": "^1.24.5",
|
||||||
"tree-kill": "^1.2.2",
|
"tree-kill": "^1.2.2",
|
||||||
"url-join": "^5.0.0"
|
"url-join": "^5.0.0",
|
||||||
|
"zod": "^3.22.4"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -47,7 +47,7 @@ export class SidebarProvider implements vscode.WebviewViewProvider {
|
|||||||
}
|
}
|
||||||
case 'onStartup': {
|
case 'onStartup': {
|
||||||
const token: string | undefined = this.context.globalState.get('token');
|
const token: string | undefined = this.context.globalState.get('token');
|
||||||
const teamData = this.context.globalState.get('teamData') as TeamData | undefined;
|
const teamData: TeamData | undefined = this.context.globalState.get('teamData');
|
||||||
if (token && teamData !== undefined) {
|
if (token && teamData !== undefined) {
|
||||||
webviewPostMessage({
|
webviewPostMessage({
|
||||||
msg: 'onLogin',
|
msg: 'onLogin',
|
||||||
@ -69,21 +69,21 @@ export class SidebarProvider implements vscode.WebviewViewProvider {
|
|||||||
password: m.data.password
|
password: m.data.password
|
||||||
})
|
})
|
||||||
});
|
});
|
||||||
const thing = await res.json();
|
const resData = await res.json();
|
||||||
if (thing.success !== true) {
|
if (resData.success !== true) {
|
||||||
return;
|
throw new Error(resData.error.message);
|
||||||
}
|
}
|
||||||
const sessionToken = thing.token;
|
const sessionToken = resData.token;
|
||||||
this.context.globalState.update('token', sessionToken);
|
this.context.globalState.update('token', sessionToken);
|
||||||
const res1 = await fetch(urlJoin(this.webUrl, `api/team/${sessionToken}`), {
|
const teamRes = await fetch(urlJoin(this.webUrl, `api/team/${sessionToken}`), {
|
||||||
method: 'GET'
|
method: 'GET'
|
||||||
});
|
});
|
||||||
const data2 = await res1.json();
|
const data2 = await teamRes.json();
|
||||||
if (!data2.success) {
|
if (!data2.success) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
this.context.globalState.update('teamData', data2.data);
|
this.context.globalState.update('teamData', data2.data);
|
||||||
webviewPostMessage({ msg: 'onLogout' });
|
webviewPostMessage({ msg: 'onLogin', data: data2.data });
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
case 'onLogout': {
|
case 'onLogout': {
|
||||||
|
@ -50,7 +50,7 @@ export async function cloneAndOpenRepo(contestId: number, teamId: number) {
|
|||||||
`${teamId.toString()}.git`
|
`${teamId.toString()}.git`
|
||||||
);
|
);
|
||||||
|
|
||||||
const repoName = repoUrl.split('/').pop()?.replace('.git', '')!;
|
const repoName = teamId.toString();
|
||||||
|
|
||||||
if (!fs.existsSync(`${currentSettings.repoClonePath}/BWContest`)) {
|
if (!fs.existsSync(`${currentSettings.repoClonePath}/BWContest`)) {
|
||||||
fs.mkdirSync(`${currentSettings.repoClonePath}/BWContest`);
|
fs.mkdirSync(`${currentSettings.repoClonePath}/BWContest`);
|
||||||
|
@ -1,9 +1,5 @@
|
|||||||
import * as vscode from 'vscode';
|
import * as vscode from 'vscode';
|
||||||
import { getNonce } from './getNonce';
|
import { getNonce } from './getNonce';
|
||||||
import { runJava } from './run/java';
|
|
||||||
import { extensionSettings } from './extension';
|
|
||||||
import { join } from 'path';
|
|
||||||
import { submitProblem } from './submit';
|
|
||||||
import urlJoin from 'url-join';
|
import urlJoin from 'url-join';
|
||||||
|
|
||||||
export type ProblemData = {
|
export type ProblemData = {
|
||||||
@ -24,7 +20,7 @@ export class BWPanel {
|
|||||||
public static currentPanel: BWPanel | undefined;
|
public static currentPanel: BWPanel | undefined;
|
||||||
|
|
||||||
private running: boolean = false;
|
private running: boolean = false;
|
||||||
private kill: Function | null = null;
|
// private kill: () => void | null = null;
|
||||||
|
|
||||||
private constructor(
|
private constructor(
|
||||||
private readonly context: vscode.ExtensionContext,
|
private readonly context: vscode.ExtensionContext,
|
||||||
|
@ -14,7 +14,7 @@ export async function runJava(
|
|||||||
mainFile: string,
|
mainFile: string,
|
||||||
mainClass: string,
|
mainClass: string,
|
||||||
input: string
|
input: string
|
||||||
): Promise<{ output: Promise<string>; kill: Function | null }> {
|
): Promise<{ output: Promise<string>; kill: () => void | null }> {
|
||||||
const javaPath = extensionSettings().javaPath;
|
const javaPath = extensionSettings().javaPath;
|
||||||
if (javaPath == '') {
|
if (javaPath == '') {
|
||||||
throw error('Java path not set');
|
throw error('Java path not set');
|
||||||
|
1
extension/bwcontest/webviews/global.d.ts
vendored
1
extension/bwcontest/webviews/global.d.ts
vendored
@ -1,3 +1,4 @@
|
|||||||
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
||||||
/// <reference types="svelte" />
|
/// <reference types="svelte" />
|
||||||
|
|
||||||
type VSCode = {
|
type VSCode = {
|
||||||
|
Loading…
Reference in New Issue
Block a user