{
  "name": "web-sentinel-vscode-extension",
  "displayName": "Web Sentinel Companion",
  "description": "Exécutez des scans Web Sentinel (domaine et code source) directement depuis VS Code.",
  "version": "0.1.0",
  "publisher": "web-sentinel",
  "license": "SEE LICENSE IN ../../LICENSE",
  "engines": {
    "vscode": "^1.74.0"
  },
  "categories": [
    "Linters",
    "Other"
  ],
  "keywords": [
    "security",
    "web-sentinel",
    "vulnerability",
    "scan",
    "sast"
  ],
  "activationEvents": [
    "onCommand:web-sentinel.scanFile",
    "onCommand:web-sentinel.scanWorkspace",
    "onCommand:web-sentinel.scanDomain",
    "onCommand:web-sentinel.configureCredentials",
    "onCommand:web-sentinel.verifyLicense"
  ],
  "main": "./out/extension.js",
  "contributes": {
    "commands": [
      {
        "command": "web-sentinel.scanFile",
        "title": "Web Sentinel: Scan Current File",
        "category": "Web Sentinel"
      },
      {
        "command": "web-sentinel.scanWorkspace",
        "title": "Web Sentinel: Scan Workspace",
        "category": "Web Sentinel"
      },
      {
        "command": "web-sentinel.scanDomain",
        "title": "Web Sentinel: Scan Domain",
        "category": "Web Sentinel"
      },
      {
        "command": "web-sentinel.configureCredentials",
        "title": "Web Sentinel: Configure API Credentials",
        "category": "Web Sentinel"
      },
      {
        "command": "web-sentinel.verifyLicense",
        "title": "Web Sentinel: Verify License",
        "category": "Web Sentinel"
      }
    ],
    "menus": {
      "editor/context": [
        {
          "command": "web-sentinel.scanFile",
          "group": "navigation",
          "when": "editorLangId =~ /(php|javascript|typescript|python|java|csharp|go)/"
        }
      ],
      "explorer/context": [
        {
          "command": "web-sentinel.scanFile",
          "group": "navigation",
          "when": "resourceExtname =~ /(\\.(php|js|ts|py|java|cs|go))/"
        }
      ],
      "commandPalette": [
        {
          "command": "web-sentinel.configureCredentials"
        },
        {
          "command": "web-sentinel.verifyLicense"
        }
      ]
    },
    "configuration": {
      "title": "Web Sentinel",
      "properties": {
        "webSentinel.apiUrl": {
          "type": "string",
          "default": "https://api.web-sentinel.taaazzz-prog.fr/api/v1",
          "description": "URL de base de l'API Web Sentinel (terminaison sans slash)."
        },
        "webSentinel.apiKey": {
          "type": "string",
          "description": "Clé API Web Sentinel. Nécessaire pour lancer des scans."
        },
        "webSentinel.licenseEmail": {
          "type": "string",
          "description": "Adresse email associée à la licence Web Sentinel."
        },
        "webSentinel.licenseTier": {
          "type": "string",
          "enum": [
            "free",
            "pro",
            "enterprise",
            "sysop"
          ],
          "default": "free",
          "description": "Tier de licence attendu lors de la vérification."
        },
        "webSentinel.autoScanOnSave": {
          "type": "boolean",
          "default": false,
          "description": "Lancer un scan du fichier courant automatiquement à la sauvegarde."
        },
        "webSentinel.minimumSeverity": {
          "type": "string",
          "enum": [
            "info",
            "low",
            "medium",
            "high",
            "critical"
          ],
          "default": "medium",
          "description": "Seuil minimal de sévérité à afficher dans l'éditeur."
        }
      }
    }
  },
  "scripts": {
    "vscode:prepublish": "npm run compile",
    "compile": "tsc -p ./",
    "watch": "tsc -watch -p ./",
    "lint": "eslint src --ext ts"
  },
  "devDependencies": {
    "@types/node": "^16.18.0",
    "@types/vscode": "^1.74.0",
    "eslint": "^8.57.0",
    "@typescript-eslint/parser": "^6.14.0",
    "@typescript-eslint/eslint-plugin": "^6.14.0",
    "typescript": "^5.3.3"
  },
  "dependencies": {
    "axios": "^1.6.8"
  }
}
