* Allow using workspace typescript.tsdk setting
Allows users to opt into using their workspace typescript.tsdk setting to specify the path to their typescript install.
Also, fixes a bug when the global tsdk setting points to the workspace version of typescript, our ts selector interface can get confused on which version is currently active. The fix adds a check using the local storage value to show the correct active version.
* Flip vscode and workspace pick order
* Use shared logic when workspace tsdk setting is not used
**Bug**
When the global tsdk setting points to the workspace version of typescript, our ts selector interface can get confused on which version is currently active
**Fix**
Adds a check using the local storage value to show the correct active version
* Show warning on first load of workspace with typescript.tsdk setting
Shows a prompt when a user first loads a workspace with a `typescript.tsdk` setting in the workspace.
* Also show message on first load in case where workspace has local version of TS
* Use quick pick. Added restart message
* Rename intellisense
* Proto
* Remove unused method
* Use local storage for selecting typescript version
* Update settings warning message for typescript tsdk setting
* Small logic cleanup
* Rename TypeDefinitionProvider to TypeImeplementationProvider
**bug**
In #18346, I originally called the new go to implementation provider api `ImplementationProvider` which we then decided to rename to `TypeDefinitionProvider`. At the time, I didn't realize that a type definition was actually its own, unrelated concept.
**Fix**
Rename `TypeDefinitionProvider` to `TypeImplementationProvider` to make it clear what the purpose and use of this api is.
* Fix a few names in comments
* Prototype Using Commit Characters for JS and TS Completions
Part of #7326
Adds a prototype for using specific characters to complete TS/JS completion items automatically.
* Tune path completion items
* Disable dot commit in js files
* Don't complete on / in module names
* Add Go To Implementation Api
For #10806
Adds a new API for supporting `go to implementation` command for languages. Implements an example for TS
* Rename
* Cleanup
* Only apply TS Dot Accept Suggestion if previous character is a valid identifier char
Fixes#17825Fixes#17770Fixes#17584
**Bug**
When typing two or more `.` in a row, we end up unexpectedly accepting suggestions in TS files. This is caused by the custom keybinding that ts registers for `.`.
**Fix**
Only accept the suggestion on `.` if the previous character is a valid identifier character.
* Move title to nls