Compare commits

...

99 Commits

Author SHA1 Message Date
root 2361c555ed fix: release
continuous-integration/drone/tag Build is failing
2026-04-17 03:47:12 +00:00
m.schnitzler 4345e9cf92 renovate (#163)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-04-17 03:46:30 +00:00
root 515fa59dcd fix: release
continuous-integration/drone/tag Build is failing
2026-04-16 01:15:04 +00:00
m.schnitzler c171fefc5e renovate (#162)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-04-16 01:14:16 +00:00
root ca3e610df2 fix: release
continuous-integration/drone/tag Build is failing
2026-04-15 02:16:44 +00:00
m.schnitzler c4a79dc07a renovate (#161)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-04-15 02:16:29 +00:00
root a7d467534c up 2026-04-13 11:37:51 +02:00
root 4c9ef78d4b fix: release
continuous-integration/drone/tag Build is failing
2026-04-12 03:46:02 +00:00
m.schnitzler afadea311c renovate (#160)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-04-12 03:45:19 +00:00
root 49e7ba7597 fix: release
continuous-integration/drone/tag Build is failing
2026-04-10 00:22:56 +00:00
m.schnitzler d9ac7f1fe1 renovate (#159)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-04-10 00:22:30 +00:00
root 8717509909 fix: release
continuous-integration/drone/tag Build is failing
2026-04-09 02:03:46 +00:00
m.schnitzler b1465077a1 renovate (#158)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-04-09 02:03:27 +00:00
root 31fa528fe2 up 2026-04-06 11:09:46 +02:00
root 71a054b964 up 2026-04-04 23:14:17 +02:00
root 15c05b5667 up 2026-04-04 15:13:29 +02:00
root 9d0fb0901e fix: release
continuous-integration/drone/tag Build is failing
2026-03-31 09:31:07 +00:00
m.schnitzler 87cc7b7e38 renovatemajor (#157)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-03-31 09:30:47 +00:00
root 8f802c4574 fix: release
continuous-integration/drone/tag Build is passing
2026-03-21 00:34:29 +00:00
m.schnitzler 942b4a3865 renovate (#156)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-03-21 00:34:13 +00:00
root c8d79ef509 fix: release
continuous-integration/drone/tag Build is passing
2026-03-19 03:37:16 +00:00
m.schnitzler 8bd362922a renovate (#155)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-03-19 03:37:09 +00:00
root cb4d1366bf fix: release
continuous-integration/drone/tag Build is passing
2026-03-17 00:33:06 +00:00
m.schnitzler e5cde7df45 renovate (#154)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-03-17 00:32:47 +00:00
root 50b051e155 fix: release
continuous-integration/drone/tag Build is passing
2026-03-10 00:41:45 +00:00
m.schnitzler efe9250969 renovate (#153)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-03-10 00:41:21 +00:00
root 39e4e03b29 fix: release
continuous-integration/drone/tag Build is passing
2026-03-08 01:18:19 +00:00
m.schnitzler eb97144726 renovate (#152)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-03-08 01:17:55 +00:00
root b695d0ff1f fix: release
continuous-integration/drone/tag Build is passing
2026-02-24 00:56:24 +00:00
m.schnitzler c004b7c70a renovate (#151)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-02-24 00:56:07 +00:00
root b15be4bf7c fix: release
continuous-integration/drone/tag Build is passing
2026-02-21 00:57:43 +00:00
m.schnitzler 5a3fd218bc renovate (#150)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-02-21 00:57:10 +00:00
root 9a33fc258f up 2026-02-18 22:30:56 +01:00
root 1781912d3f fix: release
continuous-integration/drone/tag Build is passing
2026-02-05 01:45:05 +00:00
m.schnitzler 2a494213ff renovate (#148)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-02-05 01:44:45 +00:00
root 9cc4bb48fc fix: eslint 2026-01-30 16:08:17 +01:00
root f67562c8ac fix: release
continuous-integration/drone/tag Build is passing
2026-01-29 21:49:17 +00:00
m.schnitzler e4682d493e renovate (#147)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-01-29 21:49:03 +00:00
root e4afa91517 up 2026-01-23 01:51:45 +01:00
root 9b8134441c up 2026-01-23 01:45:31 +01:00
root d16bc0a1ef fix: release
continuous-integration/drone/tag Build is passing
2026-01-20 14:20:36 +00:00
m.schnitzler 3a54763a53 renovate (#146)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-01-20 14:19:49 +00:00
root 81177f27ce fix: release
continuous-integration/drone/tag Build is passing
2026-01-13 01:52:20 +00:00
m.schnitzler f1e5244ee2 renovate (#145)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-01-13 01:52:06 +00:00
root e30bdcd6cf fix: release
continuous-integration/drone/tag Build is passing
2026-01-11 01:12:21 +00:00
m.schnitzler 0615d39c61 renovate (#144)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-01-11 01:11:47 +00:00
root d3bb430a98 fix: release
continuous-integration/drone/tag Build is passing
2026-01-10 02:53:16 +00:00
m.schnitzler 3eac7da736 renovate (#143)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-01-10 02:53:05 +00:00
root 1f16dcdbf0 fix: release
continuous-integration/drone/tag Build is passing
2026-01-06 03:23:35 +00:00
m.schnitzler fe433ad929 renovate (#142)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2026-01-06 03:23:02 +00:00
root 96c172c1ff up 2026-01-02 00:41:27 +01:00
root 6fd2ba027c fix: release
continuous-integration/drone/tag Build is passing
2025-12-30 01:10:55 +00:00
m.schnitzler 85d50e183f renovate (#141)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-12-30 01:10:17 +00:00
root aa3fd27451 fix: release
continuous-integration/drone/tag Build is passing
2025-12-26 08:13:41 +00:00
m.schnitzler c15d443595 renovate (#140)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-12-26 08:13:24 +00:00
root cdc9e40d0b up 2025-12-26 09:07:46 +01:00
root e3fd433c9b fix: release
continuous-integration/drone/tag Build is passing
2025-12-09 02:13:10 +00:00
m.schnitzler 3969b22310 renovate (#139)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-12-09 02:12:39 +00:00
root 58ff5ccc5a fix: release
continuous-integration/drone/tag Build is passing
2025-12-03 04:42:39 +00:00
m.schnitzler 74533cc9b9 renovate (#138)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-12-03 04:42:14 +00:00
root 0cd8d6c0d1 fix: release
continuous-integration/drone/tag Build is passing
2025-11-25 01:37:02 +00:00
m.schnitzler 7a654ffad8 renovate (#137)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-11-25 01:36:09 +00:00
root 703225acdd up
continuous-integration/drone/tag Build is passing
2025-11-19 15:33:08 +01:00
root 8c3b9f0ca6 fix: release
continuous-integration/drone/tag Build encountered an error
2025-11-18 01:54:28 +00:00
m.schnitzler 0b40b2dee8 renovate (#136)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-11-18 01:54:17 +00:00
root afe65f5e34 fix: release
continuous-integration/drone/tag Build is passing
2025-11-13 19:21:02 +00:00
m.schnitzler fa14e6fbfe renovate (#135)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-11-13 19:20:41 +00:00
root 7968d84047 fix: release
continuous-integration/drone/tag Build is passing
2025-11-11 01:36:22 +00:00
m.schnitzler a2fe9e239a renovate (#134)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-11-11 01:35:39 +00:00
root a6f849d0f5 fix: release
continuous-integration/drone/tag Build is passing
2025-11-04 09:31:45 +00:00
m.schnitzler 4869be90b8 renovate (#133)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-11-04 09:31:18 +00:00
root ddca7cc92e fix: release
continuous-integration/drone/tag Build is passing
2025-11-01 04:08:09 +00:00
m.schnitzler 12fc16e71f renovate (#132)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-11-01 04:07:33 +00:00
root d8014e94b8 fix: release
continuous-integration/drone/tag Build is passing
2025-10-21 08:31:14 +00:00
m.schnitzler 54d05237ed renovate (#131)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-10-21 08:30:46 +00:00
root 60037aec07 fix: release
continuous-integration/drone/tag Build is passing
2025-10-18 05:23:13 +00:00
m.schnitzler 8378fe9eb1 renovate (#130)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-10-18 05:22:36 +00:00
root 8acbc35562 fix: release
continuous-integration/drone/tag Build is passing
2025-10-14 06:25:23 +00:00
m.schnitzler 30deaa961b renovate (#129)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-10-14 06:24:54 +00:00
root 0d120cd51d fix: release
continuous-integration/drone/tag Build is passing
2025-10-10 01:15:45 +00:00
m.schnitzler 86213539f7 renovate (#128)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-10-10 01:15:31 +00:00
root 94b921fbe2 fix: release
continuous-integration/drone/tag Build is passing
2025-10-08 06:36:14 +00:00
m.schnitzler f62b4b7804 renovate (#127)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-10-08 06:35:30 +00:00
root be89eda130 fix: release
continuous-integration/drone/tag Build is passing
2025-10-04 17:11:18 +00:00
m.schnitzler 79d2d781b0 renovate (#126)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-10-04 17:10:57 +00:00
root 3619d3375e fix: release
continuous-integration/drone/tag Build is passing
2025-10-01 00:16:40 +00:00
m.schnitzler 70a942faee renovate (#125)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-10-01 00:16:11 +00:00
root 4c3ff7c1bb fix: release
continuous-integration/drone/tag Build is passing
2025-09-30 07:51:48 +00:00
m.schnitzler 00e78de6f3 renovate (#124)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-09-30 07:51:20 +00:00
root 0eba2547cc fix: release
continuous-integration/drone/tag Build is passing
2025-09-23 03:34:58 +00:00
m.schnitzler febfec0e36 renovate (#123)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-09-23 03:34:21 +00:00
root c191899971 fix: release
continuous-integration/drone/tag Build is passing
2025-09-21 00:19:54 +00:00
m.schnitzler a87e823a9c renovate (#122)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-09-21 00:18:37 +00:00
root 5f1232e8b8 fix: release
continuous-integration/drone/tag Build is passing
2025-09-17 07:15:15 +00:00
m.schnitzler c5bdfe13fa renovate (#121)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-09-17 07:14:30 +00:00
root d8f6796249 fix: release
continuous-integration/drone/tag Build is passing
2025-09-12 00:43:30 +00:00
m.schnitzler 5610154ff9 renovate (#120)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-09-12 00:43:03 +00:00
root 669abfb38a fix: release
continuous-integration/drone/tag Build is passing
2025-09-10 05:09:40 +00:00
m.schnitzler 124154e4e9 renovate (#119)
Co-authored-by: m.schnitzler <martin.wb.2015@gmail.com>
Co-committed-by: m.schnitzler <martin.wb.2015@gmail.com>
2025-09-10 05:09:09 +00:00
14 changed files with 1042 additions and 751 deletions
+7
View File
@@ -1,6 +1,13 @@
kind: pipeline
type: ssh
name: default
server:
host: build.gextra.net
user: root
ssh_key:
from_secret: ssh_key_secret
trigger:
event:
- tag
-30
View File
@@ -1,30 +0,0 @@
{
"root": true,
"parser": "@typescript-eslint/parser",
"parserOptions": {
"ecmaVersion": 6,
"sourceType": "module"
},
"plugins": [
"@typescript-eslint"
],
"rules": {
"@typescript-eslint/naming-convention": [
"warn",
{
"selector": "import",
"format": [ "camelCase", "PascalCase" ]
}
],
"@typescript-eslint/semi": "warn",
"curly": "warn",
"eqeqeq": "warn",
"no-throw-literal": "warn",
"semi": "off"
},
"ignorePatterns": [
"out",
"dist",
"**/*.d.ts"
]
}
+1
View File
@@ -0,0 +1 @@
_
+9
View File
@@ -0,0 +1,9 @@
if [ -z "$(cat "$1" | grep -E '(^fix:)|(^feature:)|(^up$)|^Merge branch .+$')" ] ; then
echo ""
echo respecte le format de commit ❤
echo " fix: xxx"
echo " feature: xxx"
echo ""
exit 1
fi
+7
View File
@@ -0,0 +1,7 @@
if git diff --name-only HEAD@{1} HEAD | grep package-lock.json ; then
echo "📦 package-lock.json changed. Running npm ci to update your dependencies..."
npm ci
else
echo "📦 no need to update dependencies"
fi
+13
View File
@@ -0,0 +1,13 @@
# prevent commits on master
branch="$(git rev-parse --abbrev-ref HEAD)"
if [ "$branch" = "master" ]; then
echo ""
echo "You can't commit directly to master branch"
echo "please create a pull request"
echo ""
exit 1
fi
# run linters
npx lint-staged
+11
View File
@@ -0,0 +1,11 @@
{
"*.js": ["eslint --fix", "prettier --write"],
"*.css": ["prettier --write"],
"*.jsx": ["prettier --write"],
"*.html.twig": ["twig-cs-fixer lint --fix", "myhtmlvalidate -q"],
"*.php": ["php-cs-fixer fix --config .php-cs-fixer.php"],
"Dockerfile": ["hadolint --ignore DL3002 --ignore DL3003 --ignore DL3008 --ignore DL3013 --ignore DL3016 --ignore DL3022"],
"*.md": ["markdownlint --fix"],
"*openapi.json": ["spectral lint"],
"*.tf": ["tflint"]
}
+1
View File
@@ -0,0 +1 @@
min-release-age=1
+6
View File
@@ -0,0 +1,6 @@
web/*
views/*
log/*
node_modules/*
coverage/*
data/*
+7
View File
@@ -0,0 +1,7 @@
export default {
tabWidth: 4,
singleQuote: true,
trailingComma: 'es5',
printWidth: 150,
arrowParens: 'always',
};
+66
View File
@@ -0,0 +1,66 @@
import js from '@eslint/js';
import tsparser from '@typescript-eslint/parser';
import tsplugin from '@typescript-eslint/eslint-plugin';
import globals from 'globals';
export default [
js.configs.recommended,
{
files: ['**/*.ts'],
languageOptions: {
parser: tsparser,
parserOptions: {
ecmaVersion: 6,
sourceType: 'module',
},
globals: {
...globals.browser,
...globals.node,
...globals.mocha,
},
},
plugins: {
'@typescript-eslint': tsplugin,
},
rules: {
'@typescript-eslint/naming-convention': [
'warn',
{
selector: 'import',
format: ['camelCase', 'PascalCase'],
},
],
'curly': 'warn',
'eqeqeq': 'warn',
'no-throw-literal': 'warn',
'semi': 'off',
// Règles générales réutilisées de flatbay
'prefer-const': ['error', { destructuring: 'all' }],
'no-var': 'error',
'object-shorthand': ['error', 'properties'],
'prefer-template': 'error',
'dot-notation': 'error',
'no-unused-expressions': 'error',
'no-nested-ternary': 'error',
'one-var-declaration-per-line': ['error', 'always'],
'one-var': ['error', 'never'],
'vars-on-top': 'error',
'yoda': 'error',
'prefer-arrow-callback': 'error',
'no-implicit-globals': 'error',
'no-labels': 'error',
'no-new-func': 'error',
'no-script-url': 'error',
'no-sequences': 'error',
'no-unused-labels': 'error',
'prefer-spread': 'error',
'no-console': 0, // Garder les console.log pour debug
'no-empty': 0,
'no-redeclare': 0,
'no-useless-escape': 0,
},
},
{
ignores: ['out/', 'dist/', '**/*.d.ts'],
},
];
+895 -708
View File
File diff suppressed because it is too large Load Diff
+15 -9
View File
@@ -1,7 +1,7 @@
{
"name": "vscodestat",
"displayName": "vscodestat",
"version": "1.1.112",
"version": "1.1.157",
"description": "",
"categories": [
"Other"
@@ -12,10 +12,12 @@
},
"license": "ISC",
"author": "Raphael Piccolo",
"type": "module",
"main": "./out/extension.js",
"scripts": {
"compile": "tsc -p ./",
"lint": "eslint src --ext ts",
"prepare": "husky",
"pretest": "npm run compile && npm run lint",
"test": "vscode-test",
"vscode:prepublish": "npm run compile",
@@ -52,17 +54,21 @@
],
"devDependencies": {
"@types/mocha": "^10.0.10",
"@types/node": "24.x",
"@types/vscode": "^1.103.0",
"@typescript-eslint/eslint-plugin": "^8.42.0",
"@typescript-eslint/parser": "^8.42.0",
"@vscode/test-cli": "^0.0.11",
"@types/node": "25.x",
"@types/vscode": "^1.116.0",
"@typescript-eslint/eslint-plugin": "^8.58.2",
"@typescript-eslint/parser": "^8.58.2",
"@vscode/test-cli": "^0.0.12",
"@vscode/test-electron": "^2.5.2",
"eslint": "^9.35.0",
"typescript": "^5.9.2"
"eslint": "^10.1.0",
"husky": "^9.1.7",
"lint-staged": "^16.4.0",
"prettier": "^3.8.3",
"ts-api-utils": "^2.5.0",
"typescript": "^6.0.2"
},
"engines": {
"vscode": "^1.103.0"
"vscode": "^1.116.0"
},
"icon": "icon.png",
"extensionKind": [
+3 -3
View File
@@ -4,13 +4,13 @@ export function activate(context: vscode.ExtensionContext) {
console.log('Congratulations, your extension "vscodestat" is now active!');
// crée une commande de test
let disposable = vscode.commands.registerCommand('vscodestat.helloWorld', () => {
const disposable = vscode.commands.registerCommand('vscodestat.helloWorld', () => {
vscode.window.showInformationMessage('Hello World from vscodestat!');
});
context.subscriptions.push(disposable);
// commande pour definir l'url
let disposable2 = vscode.commands.registerCommand('vscodestat.setUrl', async () => {
const disposable2 = vscode.commands.registerCommand('vscodestat.setUrl', async () => {
const url = await vscode.window.showInputBox({
prompt: 'Enter the URL:',
placeHolder: ''
@@ -24,7 +24,7 @@ export function activate(context: vscode.ExtensionContext) {
context.subscriptions.push(disposable2);
// commande pour tester l'url
let disposable3 = vscode.commands.registerCommand('vscodestat.callUrl', async () => {
const disposable3 = vscode.commands.registerCommand('vscodestat.callUrl', async () => {
const storedUrl = vscode.workspace.getConfiguration().get('vscodestat.url') as string;
if (!storedUrl) {
vscode.window.showWarningMessage('URL is not set. Please set the URL first.');