Fixes#26418
Allows enabling or disabling the references code lenses in either javascript or typescript. Previously, the setting enabled it in both language automatically. Enable the code lenses in ts files by default
Part of #25740
To support TS Server plugins for languages like angular, we will allow extensions to register new langauges for TypeScript to watch. The angular language for example would want ng-html files to also be uploaded to TypeScript for checking
The current language definitions all define both a set of language modes they support and a set of file extensions. The file extension part is unnessiary and may be incorrect depending on how a user sets up their `file.associations` in the workspace. This change removes the extensions part so that we always make use of the language mode
* Add Suggestion Provider For TS Directives
Adds a new completion provider to suggest typescript comment directives, such as `@ts-check` or `@ts-ignore`
Fixes#25413
* Add descriptions to snippets
* Fix JSDoc Completion Provider
**Bug**
89da6ab81ffixed#11944 by changing how enter works in completion providers. Now if the completion exactly matches the current text, pressing `enter` is not captured by the the suggestion widget. Instead it inserts a new line into the editor. This broke the jsdoc completion provider which uses `''` as a placeholder insertion before calculating the actual insertion upon being accepted. This weird behavior is because of a of the current tsserver api
**Fix**
Change the insert text to a single space instead. This seems to fix this issue in my testing.
* Slightly more elegant fix
**Bug**
If the TSServer restarts with ongoing requests queued, the new server instance may not properly startup. in the logs, this looks like a series of cancelled request followed by a restart message, and then more cancelled requests of the same series
**fix**
I believe the root cause of this is that the request queue is not properly flushed and the request sequence numbers are not properly reset when starting the new server instance.
Fixes#25807
**Bug**
All TS/JS diagnostics are currently reported as errors. We also cannot pass a custom source to identify them as coming from a tsserver plugin such as tslint
**Fix**
Add support for the new fields added in TS2.3.1 that provide this information
* Add Setting to Enable JavaScript TypeChecking Checking in Implicit Projects
Fixes#25113
Adds new setting to enable js typechecking in implicit projects
// cc @mhegazy
* Make sure we update config after changing settings
* Update wording
Fixes#24209
**Bug**
Currently, for the js/ts references code lens, even if there are zero references you can click on the lens. This display an empty peek view
**Fix**
Allow code lenses to only register a title for the lens with no actual backing command
* Add restart TypeScript Server logic
**bug**
Currently, we often have to reload VSCode when we need to restart the TSserver to enable logging or change typescript versions
**Fix**
Add a way to restart the TSServer
* Remove old command
* Formatting
* Handle typesInstallerInitializationFailed
Display a warning message when the ts typings installer fails to initilize. One possible cause is that npm is not installed
* Fix a spell
* Add new option to disable/enable jsdoc autocompletion
* Refactor JsDocCompletionItem
- remove internal command
- move TS service call and template generation to CompletionItem
- only call TS service if JSDoc completion is enabled in settings
- add local config and config update method to CompletionProvider
* Change how and when JsDocCompletionHelper is registered
Register JsDocCompletionHelper and update configuration in registerProviders instead of activate. Also react to configuration change.
* Rename JsDocCompletionHelper to JsDocCompletionProvider
* Add missing newline at the eof
* Restore completion prompt for JSDoc autocomplete
Restores internal command but but as a separate class. Registers command on extension activation.