Commit Graph

153 Commits

Author SHA1 Message Date
Andy
f96dc84a70 Make getCombinedCodeFix API public (#21234) 2018-01-17 12:42:31 -08:00
Andy
d2fd137d88 Add a getFullText() helper method to IScriptSnapshot (#21155)
* Add a `getFullText()` helper method to `IScriptSnapshot`

* Use a function instead of a method
2018-01-12 10:44:39 -08:00
Andy
19ea189b42 Support a "getCombinedCodeFix" service (#20338)
* Support a "getCombinedCodeFix" service

* Rename things

* Code review

* Rename things

* Update API baselines

* CodeActionAll -> CombinedCodeActions

* Take a `scope` parameter instead of `fileName` for flexibility

* Renames and bugfixes

* Make API changes internal

* Code review

* Update comment
2017-12-07 12:14:18 -08:00
Andy
fd4d8ab96e Support a 'recommended' completion entry (#20020)
* Support a 'recommended' completion entry

* Code review

* Restore duplicate comments
2017-12-01 13:00:01 -08:00
Andy
bb7fb7dda9 For getCompletionsAtPosition, require a flag to provide completions with code actions (#19687)
* For getCompletionsAtPosition, require a flag to provide completions with code actions

* Change name

* Increase API version

* Update API baselines

* Add comment

* Update API baseline
2017-11-03 15:55:31 -07:00
Andy
96232570a0 Remember to provide source for completionDetails from client.ts (#19664)
* Remember to provide source for completionDetails from client.ts

* Fix -- add "options" parameter too

* Mark "options" as unused
2017-11-02 13:42:23 -07:00
Armando Aguirre
ae266f6aa1 Merge branch 'master' into AddDefinitionAndBoundSpan 2017-10-24 11:18:07 -07:00
Armando Aguirre
8004fec2ce Addressed PR comments: added simplified/full version, changed design 2017-10-18 14:48:06 -07:00
Andy
d05443bb1d Add quickfix and refactoring to install @types packages (#19130)
* Add quickfix and refactoring to install @types packages

* Move `validatePackageName` to `jsTyping.ts`

* Remove combinePaths overloads

* Respond to code review

* Update api baselines

* Use native PromiseConstructor

* Return false instead of undefined

* Remove getProjectRootPath

* Update api
2017-10-17 15:04:09 -07:00
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
Armando Aguirre
b86153da88 Changed command designed based on review input 2017-10-16 17:50:35 -07:00
Armando Aguirre
1cb2d24c5d Added DefinitionAndBoundSpan command 2017-10-12 17:18:38 -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
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
cf72f2aaf0 Merge branch 'master' into watchImprovements 2017-09-13 17:35:21 -07:00
Andy
c3199c7772 extractMethod: Support renameLocation (#18050)
* extractMethod: Support renameLocation

* Add tslint disable

* Properly analyze list of changes to always get a correct rename location

* Update test

* Ensure name is really unique

* Improvements to test code

* Respond to PR comments
2017-09-13 09:02:10 -07:00
Sheetal Nandi
60e2e68dfb Merge branch 'watchImprovements' into builder 2017-08-18 13:38:24 -07:00
Sheetal Nandi
273569f6fe Make the host cache store the fileName instead of undefined for the missing host files 2017-08-07 11:04:33 -07:00
Arthur Ozga
efdbebaebb Merge branch 'master' into isInMultiLineComment 2017-08-04 14:26:24 -07:00
Andy
d2ec45f354 Remove unnecessary 'ts.' qualifications (#17163) 2017-07-13 13:08:59 -07:00
Andy
dcc3e72636 Use decodeSpan more (#16990) 2017-07-07 10:37:18 -07:00
Andy
d4c11bfa1b Clean up creation of 'args' in client.ts (#17009) 2017-07-07 08:09:59 -07:00
Andy
e7dc2a67ca Enable "object-literal-shorthand" lint rule (#16987) 2017-07-07 07:26:58 -07:00
Arthur Ozga
8fc3fd9a20 request returns span 2017-06-09 18:02:42 -07:00
Arthur Ozga
b02963b238 make indent work with trailing comments 2017-06-09 14:43:28 -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
f395bc1d83 Handle missing body case 2017-06-06 16:01:53 -07:00
Ryan Cavanaugh
1f3ef7df7a Refactor refactor 2017-06-06 14:58:18 -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
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
Andy Hanson
2305c10a65 Fix lint errors 2017-03-17 13:54:18 -07:00
Vladimir Matveev
595342615b abstract code in FindReferences from concrete way of creating result reference entry to seamlessly reuse the same code for gotoImplementation (#14637) 2017-03-16 15:53:05 -07: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
Andy Hanson
b53b5cf4ab Remove the "set" function and use map.set with multiple lines of code if necessary. 2016-12-12 08:42:12 -08:00
Andy Hanson
6b1cc8972d Use native maps when they're available 2016-12-08 06:40:31 -08:00
Andy Hanson
12f6dcefa1 Revert "Merge pull request #11354 from Microsoft/map4"
This reverts commit adfdae0dc4, reversing
changes made to aad663cebf.
2016-10-27 15:50:21 -07:00
Andy Hanson
bcc0807198 Respond to PR comments 2016-10-27 13:14:56 -07:00
Andy Hanson
c958c47ef5 Merge branch 'master' into map4 2016-10-26 11:05:51 -07:00
Andy Hanson
ca970063a3 Just use notImplemented 2016-10-20 07:15:25 -07:00
Andy Hanson
5e7e5421fa Add noop, notImplemented, and notYetImplemented helpers 2016-10-19 14:21:48 -07:00
Andy Hanson
a11838215c Merge branch 'master' into map4 2016-10-19 13:16:55 -07:00
Andy Hanson
6814c1d883 Forbid unused locals/parameters anywhere 2016-10-19 08:27:49 -07:00
Andy Hanson
f828bc3fae Merge branch 'master' into map4 2016-10-18 09:07:00 -07:00
Jason Ramsay
deb3449077 Add getSyntacticDiagnostics unit test 2016-10-17 17:47:10 -07:00
Andy Hanson
7292f9f67e Merge branch 'master' into map4 2016-10-17 06:49:53 -07:00