Родитель
ed9ff7ab84
Коммит
bd939c3dad
|
@ -936,14 +936,13 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/micromatch": {
|
"node_modules/micromatch": {
|
||||||
"version": "4.0.4",
|
"version": "4.0.8",
|
||||||
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.4.tgz",
|
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
|
||||||
"integrity": "sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg==",
|
"integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"braces": "^3.0.1",
|
"braces": "^3.0.3",
|
||||||
"picomatch": "^2.2.3"
|
"picomatch": "^2.3.1"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=8.6"
|
"node": ">=8.6"
|
||||||
|
@ -1080,11 +1079,10 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/picomatch": {
|
"node_modules/picomatch": {
|
||||||
"version": "2.3.0",
|
"version": "2.3.1",
|
||||||
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
|
||||||
"integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw==",
|
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=8.6"
|
"node": ">=8.6"
|
||||||
},
|
},
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
{
|
||||||
|
}
|
|
@ -1,10 +1,10 @@
|
||||||
{
|
{
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"module": "commonjs",
|
"module": "commonjs",
|
||||||
"target": "ES2020",
|
"target": "ES2022",
|
||||||
"outDir": "dist",
|
"outDir": "dist",
|
||||||
"lib": [
|
"lib": [
|
||||||
"ES2020", "WebWorker"
|
"ES2022", "WebWorker"
|
||||||
],
|
],
|
||||||
"sourceMap": true,
|
"sourceMap": true,
|
||||||
"rootDir": "src",
|
"rootDir": "src",
|
||||||
|
|
|
@ -1,12 +1,12 @@
|
||||||
{
|
{
|
||||||
"name": "@vscode/test-web",
|
"name": "@vscode/test-web",
|
||||||
"version": "0.0.57",
|
"version": "0.0.58",
|
||||||
"lockfileVersion": 3,
|
"lockfileVersion": 3,
|
||||||
"requires": true,
|
"requires": true,
|
||||||
"packages": {
|
"packages": {
|
||||||
"": {
|
"": {
|
||||||
"name": "@vscode/test-web",
|
"name": "@vscode/test-web",
|
||||||
"version": "0.0.57",
|
"version": "0.0.58",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@koa/cors": "^5.0.0",
|
"@koa/cors": "^5.0.0",
|
||||||
|
@ -26,7 +26,7 @@
|
||||||
"vscode-uri": "^3.0.8"
|
"vscode-uri": "^3.0.8"
|
||||||
},
|
},
|
||||||
"bin": {
|
"bin": {
|
||||||
"vscode-test-web": "out/index.js"
|
"vscode-test-web": "out/server/index.js"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@eslint/eslintrc": "^3.1.0",
|
"@eslint/eslintrc": "^3.1.0",
|
||||||
|
@ -41,8 +41,8 @@
|
||||||
"@types/minimist": "^1.2.5",
|
"@types/minimist": "^1.2.5",
|
||||||
"@types/node": "^20.14.9",
|
"@types/node": "^20.14.9",
|
||||||
"@types/tar-fs": "^2.0.4",
|
"@types/tar-fs": "^2.0.4",
|
||||||
"@typescript-eslint/eslint-plugin": "^8.3.0",
|
"@typescript-eslint/eslint-plugin": "^8.4.0",
|
||||||
"@typescript-eslint/parser": "^8.3.0",
|
"@typescript-eslint/parser": "^8.4.0",
|
||||||
"eslint": "^9.9.1",
|
"eslint": "^9.9.1",
|
||||||
"typescript": "^5.5.4"
|
"typescript": "^5.5.4"
|
||||||
},
|
},
|
||||||
|
@ -583,16 +583,16 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/eslint-plugin": {
|
"node_modules/@typescript-eslint/eslint-plugin": {
|
||||||
"version": "8.3.0",
|
"version": "8.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-8.4.0.tgz",
|
||||||
"integrity": "sha512-FLAIn63G5KH+adZosDYiutqkOkYEx0nvcwNNfJAf+c7Ae/H35qWwTYvPZUKFj5AS+WfHG/WJJfWnDnyNUlp8UA==",
|
"integrity": "sha512-rg8LGdv7ri3oAlenMACk9e+AR4wUV0yrrG+XKsGKOK0EVgeEDqurkXMPILG2836fW4ibokTB5v4b6Z9+GYQDEw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@eslint-community/regexpp": "^4.10.0",
|
"@eslint-community/regexpp": "^4.10.0",
|
||||||
"@typescript-eslint/scope-manager": "8.3.0",
|
"@typescript-eslint/scope-manager": "8.4.0",
|
||||||
"@typescript-eslint/type-utils": "8.3.0",
|
"@typescript-eslint/type-utils": "8.4.0",
|
||||||
"@typescript-eslint/utils": "8.3.0",
|
"@typescript-eslint/utils": "8.4.0",
|
||||||
"@typescript-eslint/visitor-keys": "8.3.0",
|
"@typescript-eslint/visitor-keys": "8.4.0",
|
||||||
"graphemer": "^1.4.0",
|
"graphemer": "^1.4.0",
|
||||||
"ignore": "^5.3.1",
|
"ignore": "^5.3.1",
|
||||||
"natural-compare": "^1.4.0",
|
"natural-compare": "^1.4.0",
|
||||||
|
@ -616,15 +616,15 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/parser": {
|
"node_modules/@typescript-eslint/parser": {
|
||||||
"version": "8.3.0",
|
"version": "8.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-8.4.0.tgz",
|
||||||
"integrity": "sha512-h53RhVyLu6AtpUzVCYLPhZGL5jzTD9fZL+SYf/+hYOx2bDkyQXztXSc4tbvKYHzfMXExMLiL9CWqJmVz6+78IQ==",
|
"integrity": "sha512-NHgWmKSgJk5K9N16GIhQ4jSobBoJwrmURaLErad0qlLjrpP5bECYg+wxVTGlGZmJbU03jj/dfnb6V9bw+5icsA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@typescript-eslint/scope-manager": "8.3.0",
|
"@typescript-eslint/scope-manager": "8.4.0",
|
||||||
"@typescript-eslint/types": "8.3.0",
|
"@typescript-eslint/types": "8.4.0",
|
||||||
"@typescript-eslint/typescript-estree": "8.3.0",
|
"@typescript-eslint/typescript-estree": "8.4.0",
|
||||||
"@typescript-eslint/visitor-keys": "8.3.0",
|
"@typescript-eslint/visitor-keys": "8.4.0",
|
||||||
"debug": "^4.3.4"
|
"debug": "^4.3.4"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
|
@ -644,13 +644,13 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/scope-manager": {
|
"node_modules/@typescript-eslint/scope-manager": {
|
||||||
"version": "8.3.0",
|
"version": "8.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-8.4.0.tgz",
|
||||||
"integrity": "sha512-mz2X8WcN2nVu5Hodku+IR8GgCOl4C0G/Z1ruaWN4dgec64kDBabuXyPAr+/RgJtumv8EEkqIzf3X2U5DUKB2eg==",
|
"integrity": "sha512-n2jFxLeY0JmKfUqy3P70rs6vdoPjHK8P/w+zJcV3fk0b0BwRXC/zxRTEnAsgYT7MwdQDt/ZEbtdzdVC+hcpF0A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@typescript-eslint/types": "8.3.0",
|
"@typescript-eslint/types": "8.4.0",
|
||||||
"@typescript-eslint/visitor-keys": "8.3.0"
|
"@typescript-eslint/visitor-keys": "8.4.0"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
||||||
|
@ -661,13 +661,13 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/type-utils": {
|
"node_modules/@typescript-eslint/type-utils": {
|
||||||
"version": "8.3.0",
|
"version": "8.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-8.4.0.tgz",
|
||||||
"integrity": "sha512-wrV6qh//nLbfXZQoj32EXKmwHf4b7L+xXLrP3FZ0GOUU72gSvLjeWUl5J5Ue5IwRxIV1TfF73j/eaBapxx99Lg==",
|
"integrity": "sha512-pu2PAmNrl9KX6TtirVOrbLPLwDmASpZhK/XU7WvoKoCUkdtq9zF7qQ7gna0GBZFN0hci0vHaSusiL2WpsQk37A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@typescript-eslint/typescript-estree": "8.3.0",
|
"@typescript-eslint/typescript-estree": "8.4.0",
|
||||||
"@typescript-eslint/utils": "8.3.0",
|
"@typescript-eslint/utils": "8.4.0",
|
||||||
"debug": "^4.3.4",
|
"debug": "^4.3.4",
|
||||||
"ts-api-utils": "^1.3.0"
|
"ts-api-utils": "^1.3.0"
|
||||||
},
|
},
|
||||||
|
@ -685,9 +685,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/types": {
|
"node_modules/@typescript-eslint/types": {
|
||||||
"version": "8.3.0",
|
"version": "8.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-8.4.0.tgz",
|
||||||
"integrity": "sha512-y6sSEeK+facMaAyixM36dQ5NVXTnKWunfD1Ft4xraYqxP0lC0POJmIaL/mw72CUMqjY9qfyVfXafMeaUj0noWw==",
|
"integrity": "sha512-T1RB3KQdskh9t3v/qv7niK6P8yvn7ja1mS7QK7XfRVL6wtZ8/mFs/FHf4fKvTA0rKnqnYxl/uHFNbnEt0phgbw==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
||||||
|
@ -698,13 +698,13 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/typescript-estree": {
|
"node_modules/@typescript-eslint/typescript-estree": {
|
||||||
"version": "8.3.0",
|
"version": "8.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-8.4.0.tgz",
|
||||||
"integrity": "sha512-Mq7FTHl0R36EmWlCJWojIC1qn/ZWo2YiWYc1XVtasJ7FIgjo0MVv9rZWXEE7IK2CGrtwe1dVOxWwqXUdNgfRCA==",
|
"integrity": "sha512-kJ2OIP4dQw5gdI4uXsaxUZHRwWAGpREJ9Zq6D5L0BweyOrWsL6Sz0YcAZGWhvKnH7fm1J5YFE1JrQL0c9dd53A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@typescript-eslint/types": "8.3.0",
|
"@typescript-eslint/types": "8.4.0",
|
||||||
"@typescript-eslint/visitor-keys": "8.3.0",
|
"@typescript-eslint/visitor-keys": "8.4.0",
|
||||||
"debug": "^4.3.4",
|
"debug": "^4.3.4",
|
||||||
"fast-glob": "^3.3.2",
|
"fast-glob": "^3.3.2",
|
||||||
"is-glob": "^4.0.3",
|
"is-glob": "^4.0.3",
|
||||||
|
@ -726,15 +726,15 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/utils": {
|
"node_modules/@typescript-eslint/utils": {
|
||||||
"version": "8.3.0",
|
"version": "8.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-8.4.0.tgz",
|
||||||
"integrity": "sha512-F77WwqxIi/qGkIGOGXNBLV7nykwfjLsdauRB/DOFPdv6LTF3BHHkBpq81/b5iMPSF055oO2BiivDJV4ChvNtXA==",
|
"integrity": "sha512-swULW8n1IKLjRAgciCkTCafyTHHfwVQFt8DovmaF69sKbOxTSFMmIZaSHjqO9i/RV0wIblaawhzvtva8Nmm7lQ==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@eslint-community/eslint-utils": "^4.4.0",
|
"@eslint-community/eslint-utils": "^4.4.0",
|
||||||
"@typescript-eslint/scope-manager": "8.3.0",
|
"@typescript-eslint/scope-manager": "8.4.0",
|
||||||
"@typescript-eslint/types": "8.3.0",
|
"@typescript-eslint/types": "8.4.0",
|
||||||
"@typescript-eslint/typescript-estree": "8.3.0"
|
"@typescript-eslint/typescript-estree": "8.4.0"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
"node": "^18.18.0 || ^20.9.0 || >=21.1.0"
|
||||||
|
@ -748,12 +748,12 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@typescript-eslint/visitor-keys": {
|
"node_modules/@typescript-eslint/visitor-keys": {
|
||||||
"version": "8.3.0",
|
"version": "8.4.0",
|
||||||
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.3.0.tgz",
|
"resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-8.4.0.tgz",
|
||||||
"integrity": "sha512-RmZwrTbQ9QveF15m/Cl28n0LXD6ea2CjkhH5rQ55ewz3H24w+AMCJHPVYaZ8/0HoG8Z3cLLFFycRXxeO2tz9FA==",
|
"integrity": "sha512-zTQD6WLNTre1hj5wp09nBIDiOc2U5r/qmzo7wxPn4ZgAjHql09EofqhF9WF+fZHzL5aCyaIpPcT2hyxl73kr9A==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@typescript-eslint/types": "8.3.0",
|
"@typescript-eslint/types": "8.4.0",
|
||||||
"eslint-visitor-keys": "^3.4.3"
|
"eslint-visitor-keys": "^3.4.3"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@vscode/test-web",
|
"name": "@vscode/test-web",
|
||||||
"version": "0.0.57",
|
"version": "0.0.58",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"install-extensions": "npm i --prefix=fs-provider && npm i --prefix=sample",
|
"install-extensions": "npm i --prefix=fs-provider && npm i --prefix=sample",
|
||||||
"compile": "tsc -b ./ && npm run compile-fs-provider",
|
"compile": "tsc -b ./ && npm run compile-fs-provider",
|
||||||
|
@ -51,8 +51,8 @@
|
||||||
"@types/minimist": "^1.2.5",
|
"@types/minimist": "^1.2.5",
|
||||||
"@types/node": "^20.14.9",
|
"@types/node": "^20.14.9",
|
||||||
"@types/tar-fs": "^2.0.4",
|
"@types/tar-fs": "^2.0.4",
|
||||||
"@typescript-eslint/eslint-plugin": "^8.3.0",
|
"@typescript-eslint/eslint-plugin": "^8.4.0",
|
||||||
"@typescript-eslint/parser": "^8.3.0",
|
"@typescript-eslint/parser": "^8.4.0",
|
||||||
"eslint": "^9.9.1",
|
"eslint": "^9.9.1",
|
||||||
"@tony.ganchev/eslint-plugin-header": "^3.1.2",
|
"@tony.ganchev/eslint-plugin-header": "^3.1.2",
|
||||||
"typescript": "^5.5.4"
|
"typescript": "^5.5.4"
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/mocha": "10.0.7",
|
"@types/mocha": "10.0.7",
|
||||||
"@types/vscode": "^1.90.0",
|
"@types/vscode": "^1.92.0",
|
||||||
"@types/webpack-env": "^1.18.5",
|
"@types/webpack-env": "^1.18.5",
|
||||||
"assert": "^2.1.0",
|
"assert": "^2.1.0",
|
||||||
"mocha": "^10.7.3",
|
"mocha": "^10.7.3",
|
||||||
|
@ -117,9 +117,9 @@
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"node_modules/@types/vscode": {
|
"node_modules/@types/vscode": {
|
||||||
"version": "1.90.0",
|
"version": "1.92.0",
|
||||||
"resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.90.0.tgz",
|
"resolved": "https://registry.npmjs.org/@types/vscode/-/vscode-1.92.0.tgz",
|
||||||
"integrity": "sha512-oT+ZJL7qHS9Z8bs0+WKf/kQ27qWYR3trsXpq46YDjFqBsMLG4ygGGjPaJ2tyrH0wJzjOEmDyg9PDJBBhWg9pkQ==",
|
"integrity": "sha512-DcZoCj17RXlzB4XJ7IfKdPTcTGDLYvTOcTNkvtjXWF+K2TlKzHHkBEXNWQRpBIXixNEUgx39cQeTFunY0E2msw==",
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/@types/webpack-env": {
|
"node_modules/@types/webpack-env": {
|
||||||
|
@ -1602,12 +1602,13 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/micromatch": {
|
"node_modules/micromatch": {
|
||||||
"version": "4.0.4",
|
"version": "4.0.8",
|
||||||
|
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz",
|
||||||
|
"integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"braces": "^3.0.1",
|
"braces": "^3.0.3",
|
||||||
"picomatch": "^2.2.3"
|
"picomatch": "^2.3.1"
|
||||||
},
|
},
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=8.6"
|
"node": ">=8.6"
|
||||||
|
@ -1851,9 +1852,10 @@
|
||||||
"dev": true
|
"dev": true
|
||||||
},
|
},
|
||||||
"node_modules/picomatch": {
|
"node_modules/picomatch": {
|
||||||
"version": "2.2.3",
|
"version": "2.3.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz",
|
||||||
|
"integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==",
|
||||||
"dev": true,
|
"dev": true,
|
||||||
"license": "MIT",
|
|
||||||
"engines": {
|
"engines": {
|
||||||
"node": ">=8.6"
|
"node": ">=8.6"
|
||||||
},
|
},
|
||||||
|
|
|
@ -35,7 +35,7 @@
|
||||||
"package-web": "webpack --mode production --devtool hidden-source-map"
|
"package-web": "webpack --mode production --devtool hidden-source-map"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/vscode": "^1.90.0",
|
"@types/vscode": "^1.92.0",
|
||||||
"@types/mocha": "10.0.7",
|
"@types/mocha": "10.0.7",
|
||||||
"mocha": "^10.7.3",
|
"mocha": "^10.7.3",
|
||||||
"typescript": "^5.5.4",
|
"typescript": "^5.5.4",
|
||||||
|
|
|
@ -0,0 +1,2 @@
|
||||||
|
{
|
||||||
|
}
|
|
@ -1,9 +1,9 @@
|
||||||
{
|
{
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"module": "commonjs",
|
"module": "commonjs",
|
||||||
"target": "ES2020",
|
"target": "ES2022",
|
||||||
"lib": [
|
"lib": [
|
||||||
"ES2020", "WebWorker"
|
"ES2022", "WebWorker"
|
||||||
],
|
],
|
||||||
"rootDir": "src",
|
"rootDir": "src",
|
||||||
"strict": true /* enable all strict type-checking options */
|
"strict": true /* enable all strict type-checking options */
|
||||||
|
|
|
@ -1,10 +1,10 @@
|
||||||
{
|
{
|
||||||
"compilerOptions": {
|
"compilerOptions": {
|
||||||
"module": "commonjs",
|
"module": "commonjs",
|
||||||
"target": "ES2019",
|
"target": "ES2022",
|
||||||
"outDir": "dist",
|
"outDir": "dist",
|
||||||
"lib": [
|
"lib": [
|
||||||
"ES2019"
|
"ES2022"
|
||||||
],
|
],
|
||||||
"rootDir": "src",
|
"rootDir": "src",
|
||||||
"strict": true
|
"strict": true
|
||||||
|
|
|
@ -124,16 +124,20 @@ class WorkspaceProvider implements IWorkspaceProvider {
|
||||||
}
|
}
|
||||||
|
|
||||||
if ('folderUri' in workspaceA && 'folderUri' in workspaceB) {
|
if ('folderUri' in workspaceA && 'folderUri' in workspaceB) {
|
||||||
return isEqual(workspaceA.folderUri, workspaceB.folderUri); // same workspace
|
return this.isEqualURI(workspaceA.folderUri, workspaceB.folderUri); // same workspace
|
||||||
}
|
}
|
||||||
|
|
||||||
if ('workspaceUri' in workspaceA && 'workspaceUri' in workspaceB) {
|
if ('workspaceUri' in workspaceA && 'workspaceUri' in workspaceB) {
|
||||||
return isEqual(workspaceA.workspaceUri, workspaceB.workspaceUri); // same workspace
|
return this.isEqualURI(workspaceA.workspaceUri, workspaceB.workspaceUri); // same workspace
|
||||||
}
|
}
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private isEqualURI(a: UriComponents, b: UriComponents): boolean {
|
||||||
|
return a.scheme === b.scheme && a.authority === b.authority && a.path === b.path;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
class LocalStorageURLCallbackProvider implements IURLCallbackProvider, IDisposable {
|
class LocalStorageURLCallbackProvider implements IURLCallbackProvider, IDisposable {
|
||||||
|
@ -251,10 +255,6 @@ class LocalStorageURLCallbackProvider implements IURLCallbackProvider, IDisposab
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
function isEqual(a: UriComponents, b: UriComponents): boolean {
|
|
||||||
return a.scheme === b.scheme && a.authority === b.authority && a.path === b.path;
|
|
||||||
}
|
|
||||||
|
|
||||||
(function () {
|
(function () {
|
||||||
const configElement = window.document.getElementById('vscode-workbench-web-configuration');
|
const configElement = window.document.getElementById('vscode-workbench-web-configuration');
|
||||||
const configElementAttribute = configElement ? configElement.getAttribute('data-settings') : undefined;
|
const configElementAttribute = configElement ? configElement.getAttribute('data-settings') : undefined;
|
||||||
|
|
|
@ -19,17 +19,25 @@ interface DownloadInfo {
|
||||||
version: string;
|
version: string;
|
||||||
}
|
}
|
||||||
|
|
||||||
async function getDownloadInfo(quality: 'stable' | 'insider', commit: string | undefined): Promise<DownloadInfo> {
|
async function getLatestBuild(quality: 'stable' | 'insider'): Promise<DownloadInfo> {
|
||||||
if (commit) {
|
|
||||||
const url = await getRedirect(`https://update.code.visualstudio.com/commit:${commit}/web-standalone/${quality}`);
|
|
||||||
if (!url) {
|
|
||||||
throw new Error('Failed to download URL for commit ' + commit + '. Is it valid?');
|
|
||||||
}
|
|
||||||
return { url, version: commit };
|
|
||||||
}
|
|
||||||
return await fetchJSON(`https://update.code.visualstudio.com/api/update/web-standalone/${quality}/latest`);
|
return await fetchJSON(`https://update.code.visualstudio.com/api/update/web-standalone/${quality}/latest`);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export async function getDownloadURL(quality: 'stable' | 'insider', commit: string): Promise<string | undefined> {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
const url = `https://update.code.visualstudio.com/commit:${commit}/web-standalone/${quality}`;
|
||||||
|
const httpLibrary = url.startsWith('https') ? https : http;
|
||||||
|
httpLibrary.get(url, { method: 'HEAD', ...getAgent(url) }, res => {
|
||||||
|
console.log(res.statusCode, res.headers.location);
|
||||||
|
if ((res.statusCode === 301 || res.statusCode === 302 || res.statusCode === 307) && res.headers.location) {
|
||||||
|
resolve(res.headers.location);
|
||||||
|
} else {
|
||||||
|
resolve(undefined);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
const reset = '\x1b[G\x1b[0K';
|
const reset = '\x1b[G\x1b[0K';
|
||||||
|
|
||||||
async function downloadAndUntar(downloadUrl: string, destination: string, message: string): Promise<void> {
|
async function downloadAndUntar(downloadUrl: string, destination: string, message: string): Promise<void> {
|
||||||
|
@ -80,13 +88,24 @@ async function downloadAndUntar(downloadUrl: string, destination: string, messag
|
||||||
|
|
||||||
|
|
||||||
export async function downloadAndUnzipVSCode(vscodeTestDir: string, quality: 'stable' | 'insider', commit: string | undefined): Promise<Static> {
|
export async function downloadAndUnzipVSCode(vscodeTestDir: string, quality: 'stable' | 'insider', commit: string | undefined): Promise<Static> {
|
||||||
const info = await getDownloadInfo(quality, commit);
|
let downloadURL: string | undefined;
|
||||||
|
if (!commit) {
|
||||||
const folderName = `vscode-web-${quality}-${info.version}`;
|
const info = await getLatestBuild(quality);
|
||||||
|
commit = info.version;
|
||||||
|
downloadURL = info.url;
|
||||||
|
}
|
||||||
|
|
||||||
|
const folderName = `vscode-web-${quality}-${commit}`;
|
||||||
const downloadedPath = path.resolve(vscodeTestDir, folderName);
|
const downloadedPath = path.resolve(vscodeTestDir, folderName);
|
||||||
if (existsSync(downloadedPath) && existsSync(path.join(downloadedPath, 'version'))) {
|
if (existsSync(downloadedPath) && existsSync(path.join(downloadedPath, 'version'))) {
|
||||||
return { type: 'static', location: downloadedPath, quality, version: info.version };
|
return { type: 'static', location: downloadedPath, quality, version: commit };
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!downloadURL) {
|
||||||
|
downloadURL = await getDownloadURL(quality, commit);
|
||||||
|
if (!downloadURL) {
|
||||||
|
throw Error(`Failed to find a download for ${quality} and ${commit}`);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (existsSync(vscodeTestDir)) {
|
if (existsSync(vscodeTestDir)) {
|
||||||
|
@ -98,13 +117,13 @@ export async function downloadAndUnzipVSCode(vscodeTestDir: string, quality: 'st
|
||||||
const productName = `VS Code ${quality === 'stable' ? 'Stable' : 'Insiders'}`;
|
const productName = `VS Code ${quality === 'stable' ? 'Stable' : 'Insiders'}`;
|
||||||
|
|
||||||
try {
|
try {
|
||||||
await downloadAndUntar(info.url, downloadedPath, `Downloading ${productName}`);
|
await downloadAndUntar(downloadURL, downloadedPath, `Downloading ${productName}`);
|
||||||
await fs.writeFile(path.join(downloadedPath, 'version'), folderName);
|
await fs.writeFile(path.join(downloadedPath, 'version'), folderName);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.error(err);
|
console.error(err);
|
||||||
throw Error(`Failed to download and unpack ${productName}.${commit ? ' Did you specify a valid commit?' : ''}`);
|
throw Error(`Failed to download and unpack ${productName}.${commit ? ' Did you specify a valid commit?' : ''}`);
|
||||||
}
|
}
|
||||||
return { type: 'static', location: downloadedPath, quality, version: info.version };
|
return { type: 'static', location: downloadedPath, quality, version: commit };
|
||||||
}
|
}
|
||||||
|
|
||||||
export async function fetch(api: string): Promise<string> {
|
export async function fetch(api: string): Promise<string> {
|
||||||
|
@ -131,19 +150,7 @@ export async function fetch(api: string): Promise<string> {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
export async function getRedirect(api: string): Promise<string | undefined> {
|
|
||||||
return new Promise((resolve, reject) => {
|
|
||||||
const httpLibrary = api.startsWith('https') ? https : http;
|
|
||||||
httpLibrary.get(api, { method: 'HEAD', ...getAgent(api) }, res => {
|
|
||||||
console.log(res.statusCode, res.headers.location);
|
|
||||||
if (res.statusCode === 301 || res.statusCode === 302 || res.statusCode === 307) {
|
|
||||||
resolve(res.headers.location);
|
|
||||||
} else {
|
|
||||||
resolve(undefined);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
});
|
|
||||||
}
|
|
||||||
|
|
||||||
export async function fetchJSON<T>(api: string): Promise<T> {
|
export async function fetchJSON<T>(api: string): Promise<T> {
|
||||||
const data = await fetch(api);
|
const data = await fetch(api);
|
||||||
|
|
|
@ -41,7 +41,6 @@ class Workbench {
|
||||||
}
|
}
|
||||||
const values: { [key: string]: string } = {
|
const values: { [key: string]: string } = {
|
||||||
WORKBENCH_WEB_CONFIGURATION: asJSON(workbenchWebConfiguration),
|
WORKBENCH_WEB_CONFIGURATION: asJSON(workbenchWebConfiguration),
|
||||||
WORKBENCH_AUTH_SESSION: '',
|
|
||||||
WORKBENCH_WEB_BASE_URL: this.baseUrl,
|
WORKBENCH_WEB_BASE_URL: this.baseUrl,
|
||||||
WORKBENCH_BUILTIN_EXTENSIONS: asJSON(this.builtInExtensions),
|
WORKBENCH_BUILTIN_EXTENSIONS: asJSON(this.builtInExtensions),
|
||||||
WORKBENCH_MAIN: await this.getMain()
|
WORKBENCH_MAIN: await this.getMain()
|
||||||
|
|
|
@ -19,9 +19,6 @@
|
||||||
<!-- Workbench Configuration -->
|
<!-- Workbench Configuration -->
|
||||||
<meta id="vscode-workbench-web-configuration" data-settings="{{WORKBENCH_WEB_CONFIGURATION}}">
|
<meta id="vscode-workbench-web-configuration" data-settings="{{WORKBENCH_WEB_CONFIGURATION}}">
|
||||||
|
|
||||||
<!-- Workbench Auth Session -->
|
|
||||||
<meta id="vscode-workbench-auth-session" data-settings="{{WORKBENCH_AUTH_SESSION}}">
|
|
||||||
|
|
||||||
<!-- Builtin Extensions (running out of sources) -->
|
<!-- Builtin Extensions (running out of sources) -->
|
||||||
<meta id="vscode-workbench-builtin-extensions" data-settings="{{WORKBENCH_BUILTIN_EXTENSIONS}}">
|
<meta id="vscode-workbench-builtin-extensions" data-settings="{{WORKBENCH_BUILTIN_EXTENSIONS}}">
|
||||||
|
|
||||||
|
|
|
@ -19,9 +19,6 @@
|
||||||
<!-- Workbench Configuration -->
|
<!-- Workbench Configuration -->
|
||||||
<meta id="vscode-workbench-web-configuration" data-settings="{{WORKBENCH_WEB_CONFIGURATION}}">
|
<meta id="vscode-workbench-web-configuration" data-settings="{{WORKBENCH_WEB_CONFIGURATION}}">
|
||||||
|
|
||||||
<!-- Workbench Auth Session -->
|
|
||||||
<meta id="vscode-workbench-auth-session" data-settings="{{WORKBENCH_AUTH_SESSION}}">
|
|
||||||
|
|
||||||
<!-- Builtin Extensions (running out of sources) -->
|
<!-- Builtin Extensions (running out of sources) -->
|
||||||
<meta id="vscode-workbench-builtin-extensions" data-settings="{{WORKBENCH_BUILTIN_EXTENSIONS}}">
|
<meta id="vscode-workbench-builtin-extensions" data-settings="{{WORKBENCH_BUILTIN_EXTENSIONS}}">
|
||||||
|
|
||||||
|
|
Загрузка…
Ссылка в новой задаче