{ "name": "typescript-language-features", "description": "%description%", "displayName": "%displayName%", "version": "1.0.0", "icon": "icon.png", "author": "vscode", "publisher": "vscode", "license": "MIT", "aiKey": "AIF-d9b70cd4-b9f9-4d70-929b-a071c400b217", "enableProposedApi": true, "engines": { "vscode": "*" }, "categories": [ "Programming Languages" ], "dependencies": { "jsonc-parser": "^2.0.1", "semver": "4.3.6", "vscode-extension-telemetry": "0.0.17", "vscode-nls": "^3.2.4" }, "devDependencies": { "@types/node": "8.0.33", "@types/semver": "5.4.0", "vscode": "^1.1.10" }, "scripts": { "vscode:prepublish": "node ../../node_modules/gulp/bin/gulp.js --gulpfile ../../build/gulpfile.extensions.js compile-extension:typescript ./tsconfig.json" }, "activationEvents": [ "onLanguage:javascript", "onLanguage:javascriptreact", "onLanguage:typescript", "onLanguage:typescriptreact", "onLanguage:jsx-tags", "onCommand:typescript.reloadProjects", "onCommand:javascript.reloadProjects", "onCommand:typescript.selectTypeScriptVersion", "onCommand:javascript.goToProjectConfig", "onCommand:typescript.goToProjectConfig", "onCommand:typescript.openTsServerLog", "onCommand:workbench.action.tasks.runTask", "workspaceContains:**/tsconfig.json", "workspaceContains:**/jsconfig.json", "workspaceContains:**/tsconfig.*.json", "workspaceContains:**/jsconfig.*.json" ], "main": "./out/extension", "contributes": { "jsonValidation": [ { "fileMatch": "package.json", "url": "./schemas/package.schema.json" } ], "configuration": { "type": "object", "title": "%configuration.typescript%", "order": 20, "properties": { "typescript.tsdk": { "type": [ "string", "null" ], "default": null, "description": "%typescript.tsdk.desc%", "scope": "window" }, "typescript.disableAutomaticTypeAcquisition": { "type": "boolean", "default": false, "description": "%typescript.disableAutomaticTypeAcquisition%", "scope": "window", "tags": ["usesOnlineServices"] }, "typescript.npm": { "type": [ "string", "null" ], "default": null, "description": "%typescript.npm%", "scope": "application" }, "typescript.check.npmIsInstalled": { "type": "boolean", "default": true, "description": "%typescript.check.npmIsInstalled%", "scope": "window" }, "javascript.referencesCodeLens.enabled": { "type": "boolean", "default": false, "description": "%javascript.referencesCodeLens.enabled%", "scope": "window" }, "typescript.referencesCodeLens.enabled": { "type": "boolean", "default": false, "description": "%typescript.referencesCodeLens.enabled%", "scope": "window" }, "typescript.implementationsCodeLens.enabled": { "type": "boolean", "default": false, "description": "%typescript.implementationsCodeLens.enabled%", "scope": "window" }, "typescript.tsserver.log": { "type": "string", "enum": [ "off", "terse", "normal", "verbose" ], "default": "off", "description": "%typescript.tsserver.log%", "scope": "window" }, "typescript.tsserver.pluginPaths": { "type": "array", "items": { "type": "string", "description": "%typescript.tsserver.pluginPaths.item%" }, "default": [], "description": "%typescript.tsserver.pluginPaths%", "scope": "application" }, "typescript.tsserver.trace": { "type": "string", "enum": [ "off", "messages", "verbose" ], "default": "off", "description": "%typescript.tsserver.trace%", "scope": "window" }, "typescript.useCodeSnippetsOnMethodSuggest": { "type": "boolean", "default": false, "description": "%typescript.useCodeSnippetsOnMethodSuggest.dec%", "scope": "resource" }, "typescript.reportStyleChecksAsWarnings": { "type": "boolean", "default": true, "description": "%typescript.reportStyleChecksAsWarnings%", "scope": "window" }, "typescript.validate.enable": { "type": "boolean", "default": true, "description": "%typescript.validate.enable%", "scope": "window" }, "typescript.format.enable": { "type": "boolean", "default": true, "description": "%typescript.format.enable%", "scope": "window" }, "typescript.format.insertSpaceAfterCommaDelimiter": { "type": "boolean", "default": true, "description": "%format.insertSpaceAfterCommaDelimiter%", "scope": "resource" }, "typescript.format.insertSpaceAfterConstructor": { "type": "boolean", "default": false, "description": "%format.insertSpaceAfterConstructor%", "scope": "resource" }, "typescript.format.insertSpaceAfterSemicolonInForStatements": { "type": "boolean", "default": true, "description": "%format.insertSpaceAfterSemicolonInForStatements%", "scope": "resource" }, "typescript.format.insertSpaceBeforeAndAfterBinaryOperators": { "type": "boolean", "default": true, "description": "%format.insertSpaceBeforeAndAfterBinaryOperators%", "scope": "resource" }, "typescript.format.insertSpaceAfterKeywordsInControlFlowStatements": { "type": "boolean", "default": true, "description": "%format.insertSpaceAfterKeywordsInControlFlowStatements%", "scope": "resource" }, "typescript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": { "type": "boolean", "default": true, "description": "%format.insertSpaceAfterFunctionKeywordForAnonymousFunctions%", "scope": "resource" }, "typescript.format.insertSpaceBeforeFunctionParenthesis": { "type": "boolean", "default": false, "description": "%format.insertSpaceBeforeFunctionParenthesis%", "scope": "resource" }, "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": { "type": "boolean", "default": false, "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis%", "scope": "resource" }, "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": { "type": "boolean", "default": false, "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets%", "scope": "resource" }, "typescript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces": { "type": "boolean", "default": true, "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces%", "scope": "resource" }, "typescript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": { "type": "boolean", "default": false, "description": "%format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces%", "scope": "resource" }, "typescript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces": { "type": "boolean", "default": false, "description": "%format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces%", "scope": "resource" }, "typescript.format.insertSpaceAfterTypeAssertion": { "type": "boolean", "default": false, "description": "%format.insertSpaceAfterTypeAssertion%", "scope": "resource" }, "typescript.format.placeOpenBraceOnNewLineForFunctions": { "type": "boolean", "default": false, "description": "%format.placeOpenBraceOnNewLineForFunctions%", "scope": "resource" }, "typescript.format.placeOpenBraceOnNewLineForControlBlocks": { "type": "boolean", "default": false, "description": "%format.placeOpenBraceOnNewLineForControlBlocks%", "scope": "resource" }, "javascript.validate.enable": { "type": "boolean", "default": true, "description": "%javascript.validate.enable%", "scope": "window" }, "javascript.format.enable": { "type": "boolean", "default": true, "description": "%javascript.format.enable%", "scope": "window" }, "javascript.format.insertSpaceAfterCommaDelimiter": { "type": "boolean", "default": true, "description": "%format.insertSpaceAfterCommaDelimiter%", "scope": "resource" }, "javascript.format.insertSpaceAfterConstructor": { "type": "boolean", "default": false, "description": "%format.insertSpaceAfterConstructor%", "scope": "resource" }, "javascript.format.insertSpaceAfterSemicolonInForStatements": { "type": "boolean", "default": true, "description": "%format.insertSpaceAfterSemicolonInForStatements%", "scope": "resource" }, "javascript.format.insertSpaceBeforeAndAfterBinaryOperators": { "type": "boolean", "default": true, "description": "%format.insertSpaceBeforeAndAfterBinaryOperators%", "scope": "resource" }, "javascript.format.insertSpaceAfterKeywordsInControlFlowStatements": { "type": "boolean", "default": true, "description": "%format.insertSpaceAfterKeywordsInControlFlowStatements%", "scope": "resource" }, "javascript.format.insertSpaceAfterFunctionKeywordForAnonymousFunctions": { "type": "boolean", "default": true, "description": "%format.insertSpaceAfterFunctionKeywordForAnonymousFunctions%", "scope": "resource" }, "javascript.format.insertSpaceBeforeFunctionParenthesis": { "type": "boolean", "default": false, "description": "%format.insertSpaceBeforeFunctionParenthesis%", "scope": "resource" }, "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis": { "type": "boolean", "default": false, "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis%", "scope": "resource" }, "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets": { "type": "boolean", "default": false, "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets%", "scope": "resource" }, "javascript.format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces": { "type": "boolean", "default": true, "description": "%format.insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces%", "scope": "resource" }, "javascript.format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces": { "type": "boolean", "default": false, "description": "%format.insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces%", "scope": "resource" }, "javascript.format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces": { "type": "boolean", "default": false, "description": "%format.insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces%", "scope": "resource" }, "javascript.format.placeOpenBraceOnNewLineForFunctions": { "type": "boolean", "default": false, "description": "%format.placeOpenBraceOnNewLineForFunctions%", "scope": "resource" }, "javascript.format.placeOpenBraceOnNewLineForControlBlocks": { "type": "boolean", "default": false, "description": "%format.placeOpenBraceOnNewLineForControlBlocks%", "scope": "resource" }, "jsDocCompletion.enabled": { "type": "boolean", "default": true, "description": "%jsDocCompletion.enabled%", "scope": "resource" }, "javascript.implicitProjectConfig.checkJs": { "type": "boolean", "default": false, "description": "%javascript.implicitProjectConfig.checkJs%", "scope": "window" }, "javascript.implicitProjectConfig.experimentalDecorators": { "type": "boolean", "default": false, "description": "%javascript.implicitProjectConfig.experimentalDecorators%", "scope": "window" }, "javascript.nameSuggestions": { "type": "boolean", "default": true, "description": "%javascript.nameSuggestions%", "scope": "resource" }, "typescript.tsc.autoDetect": { "type": "string", "default": "on", "enum": [ "on", "off", "build", "watch" ], "enumDescriptions": [ "%typescript.tsc.autoDetect.on%", "%typescript.tsc.autoDetect.off%", "%typescript.tsc.autoDetect.build%", "%typescript.tsc.autoDetect.watch%" ], "description": "%typescript.tsc.autoDetect%", "scope": "window" }, "typescript.quickSuggestionsForPaths": { "type": "boolean", "default": true, "description": "%typescript.quickSuggestionsForPaths%", "scope": "resource" }, "typescript.autoImportSuggestions.enabled": { "type": "boolean", "default": true, "description": "%typescript.autoImportSuggestions.enabled%", "scope": "resource" }, "typescript.locale": { "type": [ "string", "null" ], "enum": [ "de", "es", "en", "fr", "it", "ja", "ko", "ru", "zh-CN", "zh-TW", null ], "default": null, "description": "%typescript.locale%", "scope": "window" }, "javascript.suggestionActions.enabled": { "type": "boolean", "default": true, "description": "%javascript.suggestionActions.enabled%", "scope": "resource" }, "typescript.suggestionActions.enabled": { "type": "boolean", "default": true, "description": "%typescript.suggestionActions.enabled%", "scope": "resource" }, "javascript.preferences.quoteStyle": { "type": "string", "enum": [ "auto", "single", "double" ], "default": "auto", "description": "%typescript.preferences.quoteStyle%", "scope": "resource" }, "typescript.preferences.quoteStyle": { "type": "string", "enum": [ "auto", "single", "double" ], "default": "auto", "description": "%typescript.preferences.quoteStyle%", "scope": "resource" }, "javascript.preferences.importModuleSpecifier": { "type": "string", "enum": [ "auto", "relative", "non-relative" ], "enumDescriptions": [ "%typescript.preferences.importModuleSpecifier.auto%", "%typescript.preferences.importModuleSpecifier.relative%", "%typescript.preferences.importModuleSpecifier.nonRelative%" ], "default": "auto", "description": "%typescript.preferences.importModuleSpecifier%", "scope": "resource" }, "typescript.preferences.importModuleSpecifier": { "type": "string", "enum": [ "auto", "relative", "non-relative" ], "default": "auto", "description": "%typescript.preferences.importModuleSpecifier%", "scope": "resource" }, "typescript.updateImportsOnFileMove.enabled": { "type": "string", "enum": [ "prompt", "always", "never" ], "default": "prompt", "description": "%typescript.updateImportsOnFileMove.enabled%", "scope": "resource" }, "javascript.updateImportsOnFileMove.enabled": { "type": "string", "enum": [ "prompt", "always", "never" ], "default": "prompt", "description": "%typescript.updateImportsOnFileMove.enabled%", "scope": "resource" }, "typescript.autoClosingTags": { "type": "boolean", "default": true, "description": "%typescript.autoClosingTags%" }, "javascript.autoClosingTags": { "type": "boolean", "default": true, "description": "%typescript.autoClosingTags%" } } }, "commands": [ { "command": "typescript.reloadProjects", "title": "%reloadProjects.title%", "category": "TypeScript" }, { "command": "javascript.reloadProjects", "title": "%reloadProjects.title%", "category": "JavaScript" }, { "command": "typescript.selectTypeScriptVersion", "title": "%typescript.selectTypeScriptVersion.title%", "category": "TypeScript" }, { "command": "typescript.goToProjectConfig", "title": "%goToProjectConfig.title%", "category": "TypeScript" }, { "command": "javascript.goToProjectConfig", "title": "%goToProjectConfig.title%", "category": "JavaScript" }, { "command": "typescript.openTsServerLog", "title": "%typescript.openTsServerLog.title%", "category": "TypeScript" }, { "command": "typescript.restartTsServer", "title": "%typescript.restartTsServer%", "category": "TypeScript" } ], "menus": { "commandPalette": [ { "command": "typescript.reloadProjects", "when": "editorLangId == typescript && typescript.isManagedFile" }, { "command": "typescript.reloadProjects", "when": "editorLangId == typescriptreact && typescript.isManagedFile" }, { "command": "javascript.reloadProjects", "when": "editorLangId == javascript && typescript.isManagedFile" }, { "command": "javascript.reloadProjects", "when": "editorLangId == javascriptreact && typescript.isManagedFile" }, { "command": "typescript.goToProjectConfig", "when": "editorLangId == typescript && typescript.isManagedFile" }, { "command": "typescript.goToProjectConfig", "when": "editorLangId == typescriptreact" }, { "command": "javascript.goToProjectConfig", "when": "editorLangId == javascript && typescript.isManagedFile" }, { "command": "javascript.goToProjectConfig", "when": "editorLangId == javascriptreact && typescript.isManagedFile" }, { "command": "typescript.selectTypeScriptVersion", "when": "typescript.isManagedFile" }, { "command": "typescript.openTsServerLog", "when": "typescript.isManagedFile" }, { "command": "typescript.restartTsServer", "when": "typescript.isManagedFile" } ] }, "breakpoints": [ { "language": "typescript" }, { "language": "typescriptreact" } ], "taskDefinitions": [ { "type": "typescript", "required": [ "tsconfig" ], "properties": { "tsconfig": { "type": "string", "description": "%taskDefinition.tsconfig.description%" }, "option": { "type": "string" } } } ], "problemPatterns": [ { "name": "tsc", "regexp": "^([^\\s].*)[\\(:](\\d+)[,:](\\d+)(?:\\):\\s+|\\s+-\\s+)(error|warning|info)\\s+(TS\\d+)\\s*:\\s*(.*)$", "file": 1, "line": 2, "column": 3, "severity": 4, "code": 5, "message": 6 } ], "problemMatchers": [ { "name": "tsc", "label": "%typescript.problemMatchers.tsc.label%", "owner": "typescript", "source": "ts", "applyTo": "closedDocuments", "fileLocation": [ "relative", "${cwd}" ], "pattern": "$tsc" }, { "name": "tsc-watch", "label": "%typescript.problemMatchers.tscWatch.label%", "owner": "typescript", "source": "ts", "applyTo": "closedDocuments", "fileLocation": [ "relative", "${cwd}" ], "pattern": "$tsc", "background": { "activeOnStart": true, "beginsPattern": { "regexp": "^\\s*(?:message TS6032:|\\[?\\d{1,2}:\\d{1,2}:\\d{1,2}(?: AM| PM| a\\.m\\.| p\\.m\\.)?(?:\\]| -)) File change detected\\. Starting incremental compilation\\.\\.\\." }, "endsPattern": { "regexp": "^\\s*(?:message TS6042:|\\[?\\d{1,2}:\\d{1,2}:\\d{1,2}(?: AM| PM| a\\.m\\.| p\\.m\\.)?(?:\\]| -)) (?:Compilation complete\\.|Found \\d+ errors?\\.) Watching for file changes\\." } } } ] } }