Commit Graph

73 Commits

Author SHA1 Message Date
Andy 2b566b9a53 Add exported members of all project files in the global completion list (#19069)
* checker.ts: Remove null check on symbols

* tsserverProjectSystem.ts: add two tests

* client.ts, completions.ts, types.ts: Add codeActions member to CompletionEntryDetails

* protocol.ts, session.ts: Add codeActions member to CompletionEntryDetails protocol

* protocol.ts, session.ts, types.ts: add hasAction to CompletionEntry

* session.ts, services.ts, types.ts: Add formattingOptions parameter to getCompletionEntryDetails

* completions.ts: define SymbolOriginInfo type

* completions.ts, services.ts: Add allSourceFiles parameter to getCompletionsAtPosition

* completions.ts, services.ts: Plumb allSourceFiles into new function getSymbolsFromOtherSourceFileExports inside getCompletionData

* completions.ts: add symbolToOriginInfoMap parameter to getCompletionEntriesFromSymbols and to return value of getCompletionData

* utilities.ts: Add getOtherModuleSymbols, getUniqueSymbolIdAsString, getUniqueSymbolId

* completions.ts: Set CompletionEntry.hasAction when symbol is found in symbolToOriginInfoMap (meaning there's an import action)

* completions.ts: Populate list with possible exports (implement getSymbolsFromOtherSourceFileExports)

* completions.ts, services.ts: Plumb host and rulesProvider into getCompletionEntryDetails

* completions.ts: Add TODO comment

* importFixes.ts: Add types ImportDeclarationMap and ImportCodeFixContext

* Move getImportDeclarations into getCodeActionForImport, immediately after the implementation

* importFixes.ts: Move createChangeTracker into getCodeActionForImport, immediately after getImportDeclarations

* importFixes.ts: Add convertToImportCodeFixContext function and reference it from the getCodeActions lambda

* importFixes.ts: Add context: ImportCodeFixContext parameter to getCodeActionForImport, update call sites, destructure it, use compilerOptions in getModuleSpecifierForNewImport

* importFixes.ts: Remove moduleSymbol parameter from getImportDeclarations and use the ambient one

* importFixes.ts: Use cachedImportDeclarations from context in getCodeActionForImport

* importFixes.ts: Move createCodeAction out, immediately above convertToImportCodeFixContext

* Move the declaration for lastImportDeclaration out of the getCodeActions lambda into getCodeActionForImport

* importFixes.ts: Use symbolToken in getCodeActionForImport

* importFixes.ts: Remove useCaseSensitiveFileNames altogether from getCodeActions lambda

* importFixes.ts: Remove local getUniqueSymbolId function and add checker parameter to calls to it

* importFixes.ts: Move getCodeActionForImport out into an export, immediately below convertToImportCodeFixContext

* completions.ts: In getCompletionEntryDetails, if there's symbolOriginInfo, call getCodeActionForImport

* importFixes.ts: Create and use importFixContext within getCodeActions lambda

* importFixes.ts: Use local newLineCharacter instead of context.newLineCharacter in getCodeActionForImport

* importFixes.ts: Use local host instead of context.host in getCodeActionForImport

* importFixes.ts: Remove dummy getCanonicalFileName line

* Filter symbols after gathering exports instead of before

* Lint

* Test, fix bugs, refactor

* Suggestions from code review

* Update api baseline

* Fix bug if previousToken is not an Identifier

* Replace `startsWith` with `stringContainsCharactersInOrder`
2017-10-17 10:20:11 -07:00
Sheetal Nandi 4bb4711eff Merge branch 'master' into watchImprovements 2017-10-02 16:34:43 -07:00
Andy eefe5c9706 Fix acquiring format options for getEditsForRefactor (#18848)
* Fix acquiring format options for getEditsForRefactor

* Add test

* Fix test description

* Use `executeCommandSeq`
2017-10-02 13:26:35 -07:00
Sheetal Nandi 23acff5bc8 Merge branch 'master' into watchImprovements 2017-09-25 16:18:26 -07:00
Andy Hanson 0b76e43977 Make formatOptions optional in GetEditsForRefactorRequestArgs 2017-09-15 07:21:38 -07:00
Andy d96dfeb708 Don't normalize whitespace in fourslash tests (#18447)
* Don't normalize whitespace in fourslash tests

* Only render whitespace when the diff is text-only
2017-09-14 08:23:50 -07:00
Sheetal Nandi 4f7c0e5e1c Simplify event sent on background project update since its anyways just to update the error list 2017-09-12 18:16:31 -07:00
Sheetal Nandi fdb104b242 Merge branch 'master' into watchImprovements 2017-09-11 13:49:36 -07:00
Andy 193f4be355 Enable interface-over-type-literal lint rule (#17733) 2017-09-07 09:14:59 -07:00
Sheetal Nandi e71123857c Add api in builder to get changed files and use it to send project changed event 2017-08-22 11:28:10 -07:00
Mohamed Hegazy 07e1d3b13d Ensure string enums are generated in protocol.d.ts (#17914) 2017-08-21 09:44:03 -07:00
Arthur Ozga 19e2fa6fc5 Merge branch 'master' into isInMultiLineComment 2017-08-16 17:57:04 -07:00
Ron Buckton 360dc914c3 Merge pull request #17602 from Microsoft/multiInferredProjects
Adds support for inferred project isolation by projectRootPath
2017-08-11 16:06:49 -07:00
Ron Buckton c272c3c5cd Comment update 2017-08-11 16:06:24 -07:00
Andy f64b8ad902 Add "preserveSymlinks" option (#16661)
* Add "preserveSymlinks" option

* Respond to PR comments
2017-08-11 10:03:21 -07:00
Andy f124e19971 Session: don't return undefined if a response is required (#17165)
* Session: don't return undefined if a response is required

* Use ReadonlyArray and emptyArray

* Remove inferred return type
2017-08-09 13:46:47 -07:00
Arthur Ozga efdbebaebb Merge branch 'master' into isInMultiLineComment 2017-08-04 14:26:24 -07:00
Ron Buckton fa7f3e85fe Adds support for inferred project isolation by projectRootPath 2017-08-03 16:03:59 -07:00
Andy 91d7b22e6a Remove ILineInfo type (#17017) 2017-07-10 11:35:54 -07:00
Sheetal Nandi 09f0b3471a Merge branch 'master' into ownJsonParsing 2017-06-15 09:59:37 -07:00
Arthur Ozga 8fc3fd9a20 request returns span 2017-06-09 18:02:42 -07:00
Arthur Ozga 8f28a0264f indent block comments according to first line 2017-06-08 17:15:47 -07:00
Arthur Ozga 6b4cd0bd03 Merge branch 'isInMultiLineComment' of https://github.com/aozgaa/TypeScript into isInMultiLineComment 2017-06-07 14:35:45 -07:00
Arthur Ozga 35b16ab7a8 temp 2017-06-07 14:01:42 -07:00
Ryan Cavanaugh f739f68231 Tidy up 2017-06-06 16:08:24 -07:00
Ryan Cavanaugh 1f3ef7df7a Refactor refactor 2017-06-06 14:58:18 -07:00
Sheetal Nandi f1ea38d127 Merge branch 'master' into ownJsonParsing 2017-05-24 12:46:29 -07:00
Sheetal Nandi 7cf93f94d4 Report config file errors as part of syntactic diagnostic on the file 2017-05-23 15:56:20 -07:00
Andy Hanson f6240cb6f9 Make CommandTypes a const enum and use allCommandTypes for unit test 2017-05-22 11:17:12 -07:00
Andy Hanson c6e69dd64b Fix missing initializers 2017-05-22 11:05:30 -07:00
Andy Hanson 3b56ebeabe Convert other namespace + type alias in protocol.ts to const enums 2017-05-22 10:47:28 -07:00
Andy Hanson f94818da36 Also convert ClassificationTypeNames and CommandTypes/CommandNames 2017-05-22 10:40:59 -07:00
andy-ms b162097c3c Make ScriptElementKind and HighlightSpanKind string enums 2017-05-20 07:56:24 -07:00
Ryan Cavanaugh f6fbe61718 Refactoring support (squash) 2017-05-19 10:45:49 -07:00
Sheetal Nandi ec2f9670d9 Merge branch 'master' into ownJsonParsing 2017-05-15 11:36:45 -07:00
Mohamed Hegazy ca748d6c02 Add insertSpaceAfterTypeAssertion to the server protocol 2017-05-12 14:48:13 -07:00
Sheetal Nandi d7e9609ae5 Merge branch 'master' into ownJsonParsing 2017-05-11 09:10:35 -07:00
Mohamed Hegazy 8534b430be Add missing compiler options 2017-04-20 15:11:40 -07:00
Mohamed Hegazy 5d7c75d88d Add a source property on Diagnostic 2017-04-20 13:22:55 -07:00
Mohamed Hegazy 75cdb47cfa Return Diagnostic.category from the server 2017-04-19 17:12:20 -07:00
Zhengbo Li e8fd1cf466 Support project root path for controlling config file searching depth (#15238)
* stops at projectRootPath when searching config file

* Add tests

* Update editorServices.ts

Remove extra `true &&`
2017-04-19 11:42:24 -07:00
Sheetal Nandi 6f568b3f26 Merge branch 'master' into ownJsonParsing 2017-04-17 13:40:49 -07:00
Andy Hanson 73cab09608 Enable jsdoc-format lint rule 2017-04-03 14:39:19 -07:00
Mine Starks af0b2d9768 Merge pull request #12856 from minestarks/includejsdoctags
Expose JSDoc tags through the language service
2017-03-31 17:58:41 -07:00
Zhengbo Li 5040e1d279 Mark occurence item in string with a special property (#14677)
* mark occurence item in string with a special property

* Adding trailing commas
2017-03-16 11:01:48 -07:00
Vladimir Matveev 17cb68cbbf send error if obtaining of types-registry package failed (#14573) 2017-03-10 10:34:01 -08:00
Magnus Hiie 9ac2ea722d Add insert...Braces Option to Server Protocol
Closes #13275
2017-03-01 18:48:08 +02:00
Jason Jarrett e2222b2680 Update protocol.ts 2017-02-19 22:14:39 -08:00
Ryan Cavanaugh aec310996c Language service extensibility 2017-02-14 13:35:16 -08:00
Vladimir Matveev 81f4e38643 Enable per-request cancellation (#12371)
enable -per-request cancellation

* restore request for deferred calls

* add tests

* introduce MultistepOperation

* (test) subsequent request cancels the preceding one
2017-02-14 13:18:42 -08:00