{
  "name": "npm",
  "publisher": "vscode",
  "displayName": "%displayName%",
  "description": "%description%",
  "version": "1.0.1",
  "engines": {
    "vscode": "0.10.x"
  },
  "enableProposedApi": true,
  "icon": "images/npm_icon.png",
  "categories": ["Other"],
  "scripts": {
    "compile": "gulp compile-extension:npm",
    "watch": "gulp watch-extension:npm"
  },
  "dependencies": {
    "jsonc-parser": "^2.0.2",
    "minimatch": "^3.0.4",
    "request-light": "^0.2.4",
    "vscode-nls": "^4.0.0"
  },
  "devDependencies": {
    "@types/minimatch": "^3.0.3",
    "@types/node": "^10.12.21"
  },
  "main": "./dist/main",
  "activationEvents": ["onCommand:workbench.action.tasks.runTask", "onLanguage:json", "onView:npm"],
  "contributes": {
    "languages": [{
      "id": "ignore",
      "filenames": [".npmignore"]
    }],
    "views": {
      "explorer": [{
        "id": "npm",
        "name": "%view.name%",
        "when": "config.npm.enableScriptExplorer"
      }]
    },
    "commands": [{
      "command": "npm.runScript",
      "title": "%command.run%",
      "icon": {
        "light": "resources/light/continue.svg",
        "dark": "resources/dark/continue.svg"
      }
    }, {
      "command": "npm.debugScript",
      "title": "%command.debug%",
      "icon": {
        "light": "resources/light/debug.svg",
        "dark": "resources/dark/debug.svg"
      }
    }, {
      "command": "npm.openScript",
      "title": "%command.openScript%"
    }, {
      "command": "npm.runInstall",
      "title": "%command.runInstall%"
    }, {
      "command": "npm.refresh",
      "title": "%command.refresh%",
      "icon": {
        "light": "resources/light/refresh.svg",
        "dark": "resources/dark/refresh.svg"
      }
    }, {
      "command": "npm.runSelectedScript",
      "title": "%command.runSelectedScript%"
    }],
    "menus": {
      "commandPalette": [{
        "command": "npm.refresh",
        "when": "false"
      }, {
        "command": "npm.runScript",
        "when": "false"
      }, {
        "command": "npm.debugScript",
        "when": "false"
      }, {
        "command": "npm.openScript",
        "when": "false"
      }, {
        "command": "npm.runInstall",
        "when": "false"
      }, {
        "command": "npm.runSelectedScript",
        "when": "false"
      }],
      "editor/context": [{
        "command": "npm.runSelectedScript",
        "when": "resourceFilename == 'package.json'",
        "group": "navigation@+1"
      }],
      "view/title": [{
        "command": "npm.refresh",
        "when": "view == npm",
        "group": "navigation"
      }],
      "view/item/context": [{
        "command": "npm.openScript",
        "when": "view == npm && viewItem == packageJSON",
        "group": "navigation@1"
      }, {
        "command": "npm.runInstall",
        "when": "view == npm && viewItem == packageJSON",
        "group": "navigation@2"
      }, {
        "command": "npm.openScript",
        "when": "view == npm && viewItem == script",
        "group": "navigation@1"
      }, {
        "command": "npm.runScript",
        "when": "view == npm && viewItem == script",
        "group": "navigation@2"
      }, {
        "command": "npm.runScript",
        "when": "view == npm && viewItem == script",
        "group": "inline"
      }, {
        "command": "npm.runScript",
        "when": "view == npm && viewItem == debugScript",
        "group": "inline"
      }, {
        "command": "npm.debugScript",
        "when": "view == npm && viewItem == debugScript",
        "group": "inline"
      }, {
        "command": "npm.debugScript",
        "when": "view == npm && viewItem == script",
        "group": "navigation@3"
      }]
    },
    "configuration": {
      "id": "npm",
      "type": "object",
      "title": "Npm",
      "properties": {
        "npm.autoDetect": {
          "type": "string",
          "enum": ["off", "on"],
          "default": "on",
          "scope": "resource",
          "description": "%config.npm.autoDetect%"
        },
        "npm.runSilent": {
          "type": "boolean",
          "default": false,
          "scope": "resource",
          "markdownDescription": "%config.npm.runSilent%"
        },
        "npm.packageManager": {
          "scope": "resource",
          "type": "string",
          "enum": ["npm", "yarn"],
          "default": "npm",
          "description": "%config.npm.packageManager%"
        },
        "npm.exclude": {
          "type": ["string", "array"],
          "items": {
            "type": "string"
          },
          "description": "%config.npm.exclude%",
          "scope": "resource"
        },
        "npm.enableScriptExplorer": {
          "type": "boolean",
          "default": false,
          "scope": "resource",
          "description": "%config.npm.enableScriptExplorer%"
        },
        "npm.scriptExplorerAction": {
          "type": "string",
          "enum": ["open", "run"],
          "markdownDescription": "%config.npm.scriptExplorerAction%",
          "scope": "window",
          "default": "open"
        },
        "npm.fetchOnlinePackageInfo": {
          "type": "boolean",
          "description": "%config.npm.fetchOnlinePackageInfo%",
          "default": true,
          "scope": "window",
          "tags": ["usesOnlineServices"]
        }
      }
    },
    "jsonValidation": [{
      "fileMatch": "package.json",
      "url": "https://schemastore.azurewebsites.net/schemas/json/package.json"
    }, {
      "fileMatch": "bower.json",
      "url": "https://schemastore.azurewebsites.net/schemas/json/bower.json"
    }],
    "taskDefinitions": [{
      "type": "npm",
      "required": ["script"],
      "properties": {
        "script": {
          "type": "string",
          "description": "%taskdef.script%"
        },
        "path": {
          "type": "string",
          "description": "%taskdef.path%"
        }
      }
    }]
  }
}