Andy
42c7aa85ce
Clean up isNameOfExternalModuleImportOrDeclaration ( #22659 )
2018-03-16 14:54:41 -07:00
Andy
28ff6b6ef3
Store import nodes in SourceFile.imports instead of StringLiteral nodes ( #22495 )
...
* Store import nodes in SourceFile.imports instead of StringLiteral nodes
* Change SourceFile#imports storage back
* Code review
* StringLiteral -> StringLiteralLike
2018-03-16 14:01:00 -07:00
Andy
adf3635a1f
For import fix, for "foo/index" module, use "foo" as default export name, not "index" ( #22651 )
2018-03-16 14:00:33 -07:00
Matt Bierner
9774cd5eb5
Fix await code action crashes when await is not in a function ( #22623 )
...
Fixes #22614
2018-03-16 11:53:17 -07:00
Matt Bierner
984aaa3ee9
Fix completions and brace in empty file ( #22620 )
...
Fixes #22618
2018-03-16 11:05:33 -07:00
Wesley Wigham
19ec83fcdf
Refactor declaration emitter into declaration transformer ( #21930 )
...
* Refactor declaration emitter into declaration transformer
* Slight cleanup from code review feedback
* Incorporate fix for new test
* Swaths of PR feedback
* Merge public methods
* Per-file output
* Preserve input import ordering more often
* Unify jsdoc comment start detection under more lenient rule
* Move to per-file transformations to reduce the memory that msut be retained
* Fix typo
2018-03-15 22:23:10 -07:00
Andy
85e9cce3c7
Don't add external module completions in a pure commonjs file ( #22583 )
2018-03-15 08:13:16 -07:00
Andy
e7ce3f9457
useNonAdjustedEndPosition when replacing import node ( #22517 )
...
* useNonAdjustedEndPosition when replacing import node
* Never adjust positions, and add trivia test
2018-03-14 11:46:45 -07:00
Andy
6ef2db5c48
inferFromUsage: Handle being at an unexpected location ( #22569 )
...
* inferFromUsage: Handle being at an unexpected location
* add comment
2018-03-14 10:57:38 -07:00
Andy
23a64fe804
Remove redundant call to checkNodeDeferred ( #22516 )
...
* Remove redundant call to `checkNodeDeferred`
* Use a set to speed up `contains` checks
2018-03-13 15:46:25 -07:00
Andy
83b438ffa6
fixUnusedIdentifier: Don't remove setter parameter ( #22488 )
2018-03-12 16:07:20 -07:00
Sheetal Nandi
fa2b7ff6b3
Merge pull request #22421 from Microsoft/typesInTypeArguments
...
Allow types as well as values in possibly type argument location
2018-03-09 14:36:45 -08:00
Sheetal Nandi
ef64cde621
Merge pull request #22409 from Microsoft/symbolKind
...
Symbol kind needs to use location before falling back to flags
2018-03-09 13:59:38 -08:00
Sheetal Nandi
73947f8990
Add comments and make some nit changes based on PR feedback
2018-03-09 13:57:57 -08:00
Andy
0f47c8a205
annotateWithTypeFromJSDoc: Do less special-casing for arrow functions ( #22407 )
...
* annotateWithTypeFromJSDoc: Do less special-casing for arrow functions
* Code review
2018-03-08 16:32:32 -08:00
Sheetal Nandi
e1a89e7011
Allow types as well as values in possibly type argument location
...
Fixes #22369
2018-03-08 16:06:26 -08:00
Sheetal Nandi
ea37c37e88
Symbol kind needs to use location before falling back to flags
...
Fixes #22366
2018-03-08 11:50:52 -08:00
Andy
a49e83ffa7
annotateWithTypeFromJSDoc: Use changes.insertTypeAnnotation instead of replaceNode ( #22404 )
2018-03-08 11:47:30 -08:00
Nathan Shively-Sanders
f8134d0b45
Merge branch 'master' into js-object-literal-assignments-as-declarations
2018-03-08 10:40:55 -08:00
Andy
0605424852
fixJSDocTypes: Use ChangeTracker ( #22391 )
2018-03-08 07:52:03 -08:00
Nathan Shively-Sanders
d86440f94f
Merge branch 'master' into js-object-literal-assignments-as-declarations
2018-03-07 14:51:55 -08:00
Andy
1f7a5097fa
When every import is unused, error on the entire import declaration ( #22386 )
...
* When every import is unused, error on the entire import declaration
* Code review
* Store key in map value
2018-03-07 14:42:09 -08:00
Andy
e5804aefde
inferFromUsage: use ChangeTracker and typeToTypeNode ( #22379 )
...
* inferFromUsage: use ChangeTracker and typeToTypeNode
* Use typeToTypeNode with SymbolTracker
* Add comment
2018-03-07 14:40:50 -08:00
Andy
0be9ee2871
Increase size of span for unused declaration ( #22388 )
2018-03-07 14:14:11 -08:00
Sheetal Nandi
36b45e3f13
Merge pull request #22343 from Microsoft/codeFixActionNotUndefined
...
Create the action only if the text change creation is successful.
2018-03-06 12:31:04 -08:00
Mohamed Hegazy
b2dd610e92
Fix ignore message indentation ( #22340 )
...
* Update baselines for user tests
* Add explicit indentation
* Fix https://github.com/Microsoft/TypeScript/issues/21355 : Format `// @ts-ignore` added by quick fix
* Extract check to a separate function
* Consolidate checking for valid insert location
* Code review comments
* Do not return makeChange
2018-03-06 12:19:19 -08:00
Andy
2fb7e643f4
Simplify suppressLeadingAndTrailingTrivia ( #22356 )
2018-03-06 11:34:33 -08:00
Sheetal Nandi
70944428a1
Create the action only if the text change creation is successful. …
...
Make change for the infer type from usage could return undefined even if type is present if the type cannot be named
Fixes #22184
2018-03-06 11:03:20 -08:00
Andy
e5f91f5948
Convert annotateWithTypeFromJSDoc refactor to a codefix ( #22336 )
...
* Convert annotateWithTypeFromJSDoc refactor to a codefix
* Compute isJsFile once at top
2018-03-06 07:49:21 -08:00
Josh Goldberg
7826b38426
Apply 'no-unnecessary-initializer' lint rule ( #22014 )
...
* Apply 'no-unnecessary-initializer' lint rule
Forbids `let`/`const` statements to be initialized to `undefined`, since that's the initial value by default anyway.
The auto-fixer also happened to remove two unnecessary `as number` casts in `src/harness/parallel/worker.ts`.
For historical data: to run with `--fix`, I modified the line in `Jakefile.js` that declared the `cmd` for running TSLint.
* Moved worker.ts type assertions to parameters
2018-03-06 07:30:40 -08:00
Andy
5e593acad9
Avoid cast by providing type predicate to isExternalModuleAugmentation ( #22119 )
...
* Avoid cast by providing type predicate to isExternalModuleAugmentation
* Break into isExternalModuleAugmentation and isModuleAugmentationExternal
2018-03-06 07:27:36 -08:00
Andy
2ac2291b84
Convert use-default-import refactor to a codefix ( #22334 )
2018-03-05 12:43:01 -08:00
Andy
87c3cca3f0
Make convertFunctionToEs6Class a codefix ( #22241 )
...
* Make convertFunctionToEs6Class a codefix
* Change diagnostic message
2018-03-02 12:57:29 -08:00
Andy
ba8879d005
Prefer 'return Debug.fail()' over 'throw Debug.fail()' ( #22092 )
2018-03-02 10:44:06 -08:00
Andy
dd27288e5a
Don't rename static 'this' when renaming class ( #22235 )
2018-03-02 10:23:08 -08:00
Andy
16fc256823
Convert 'installTypesForPackge' refactor to a suggestion ( #22267 )
...
* Convert 'installTypesForPackge' refactor to a suggestion
* Have checker collect a list of suggestion diagnostics instead of redoing work in calculateSuggestionDiagnostics
* Add comment
* Add diagnostic even with `--allowJs`
2018-03-01 14:41:55 -08:00
Andy
a564912d9a
Apply 'no-unnecessary-qualifier' lint rule ( #22009 )
2018-03-01 14:20:18 -08:00
Andy
c12369b354
Fix bug where findAllReferences included a node outside of sourceFilesToSearch ( #22062 )
2018-03-01 13:44:53 -08:00
Andy
6c63dd25e6
breakpoints: Fix invalid cast ( #22153 )
2018-03-01 13:13:27 -08:00
Andy
0701ed5d4b
isControlFlowEndingStatement: don't try to enumerate all possible parent kinds ( #22131 )
2018-03-01 13:12:53 -08:00
Andy
7b929e090d
Remove unnecessary length check in getSyntacticDocumentHighlights ( #22064 )
2018-03-01 13:11:45 -08:00
Andy
0a72568e59
findAllReferences: Make definition info independent of search location ( #21748 )
2018-03-01 12:46:00 -08:00
Wesley Wigham
1a43ad01a7
Lookup JSX namespace within factory function ( #22207 )
...
* Lookup JSX namespace within factory function
* Rename functions
2018-02-28 15:48:33 -08:00
Andy
fa4619c5c1
Add 'info' diagnostics ( #22204 )
...
* Add 'info' diagnostics
* Code review
2018-02-28 11:16:32 -08:00
Andy
f4af74aae1
Simplify TextChanges#getChanges ( #22157 )
...
* Simplify TextChanges#getChanges
* Rename function and improve assert
2018-02-27 12:26:05 -08:00
Wesley Wigham
32c63a2628
Add support for transpiling per-file jsx pragmas ( #21218 )
...
* Add support for per-file jsx pragmas
* Add error for using jsx factory pragma with fragments
* More tests, use different regex class for pragma capture
* Unify all pragma parsing machinery
2018-02-26 16:10:00 -08:00
Andy
0b1e21794d
fourslash diagnostics tests: use objects instead of strings ( #22193 )
2018-02-26 14:55:26 -08:00
Andrew Casey
b31aa4e012
Merge pull request #22087 from amcasey/AmbientModuleImports
...
Organize imports in ambient modules
2018-02-23 17:43:28 -08:00
Nathan Shively-Sanders
aa6b76fb6f
Merge branch 'master' into js-object-literal-assignments-as-declarations
2018-02-23 09:24:32 -08:00
Nathan Shively-Sanders
dd2523650e
Fix nested js-containers+proto assignment in types space
...
1. The actual symbols needed to be marked as containers.
2. Type node resolution needed to understand prototype assignments.
2018-02-23 09:16:01 -08:00