Commit Graph
2766 Commits
Author SHA1 Message Date
Mohamed Hegazy 21acf4f783 Merge pull request #24136 from Microsoft/inferFromUsageFixes
Remove assert in `symbolToParameterDeclaration`
2018-05-16 14:15:37 -07:00
Wesley Wigham d70da6478a Use newer signature help check (#24179) 2018-05-16 13:53:40 -07:00
Wesley Wigham e01c7d23e1 Correctly show instantiated signatures for JSX element signature help and quick info (#23492)
* Correctly show instantiated signatures for JSX element signature help

* Also bundle fix for quickinfo

* Use more complete cache to avoid duplicate errors
2018-05-16 13:09:54 -07:00
Wesley Wigham 5bf6e30f8e Use jsdoc aliases if visible when printing types (#24153)
* Use jsdoc aliases if visible when printing types

* Modify implementation a bit, add test that aughta change in the new future

* Accept baselines- hold off on typedef template lookup change
2018-05-16 12:58:36 -07:00
Andy 424dba1d69 codeFixInferFromUsage: Avoid duplicate fix for variable declaration (#24169)
* codeFixInferFromUsage: Avoid duplicate fix for variable declaration

* Include VariableDeclaration initializer as a candidate type
2018-05-16 12:28:27 -07:00
Mohamed Hegazy 13ac88647f Merge pull request #24162 from Kingwl/fix-generate-accessor-starting-underscore
fix generate accessor if starting with underscore
2018-05-16 12:06:15 -07:00
王文璐 b7f725d1b8 fix generate accessor if starting with underscore 2018-05-16 15:34:11 +08:00
王文璐 0fde07f1c5 fix trailing comma in accessor generator 2018-05-16 14:47:44 +08:00
Mohamed Hegazy 6f4ed3afa6 Handel synthetic rest parameter declarations 2018-05-15 22:08:01 -07:00
Andy b4ca23d8f9 Fix bug: Converting 'module.exports = {...}' to ES6 doesn't introduce a default export (#24141) 2018-05-15 16:22:58 -07:00
Andy d4a3c9c61a Fix placement of indent for @ts-ignore comment (#24143) 2018-05-15 16:21:15 -07:00
Nathan Shively-Sanders 339a56fbf0 Avoid duplicates when finding jsdoc (#24086)
* Avoid duplicates when finding jsdoc

1. Add a cheap assert for detecting duplicates. getJSDocTags must find
either [1] 0 or 1 comments or [2] the first two comments must not be
identical. This does not always find duplicates for nodes with 3 or more
comments, but these nodes are exceptionally rare.

This assert fired for over 20 of the around 250 tests we have that
retrieve JSDoc at all. So I fixed the asserts in [2] and [3].

2. There were overlapping cases from calls to getSourceOfAssignment and
getSpecialPropertyAssignment. getSpecialPropertyAssignment is too
restrictive, but was in the correct location (parent vs parent.parent),
so I removed the getSourceOfAssignment call and replaced the
getSpecialPropertyAssignment calls with a less restrictive check.

3. When a node's parent is a PropertyDeclaration,
getJSDocCOmmentsAndTags would check the parent for jsdoc. But when the
*node* is a PropertyDeclaration, getJSDocCommentsAndTags would use the
jsdoc from the initializer. This second case is useful to make sure that
property declarations get all their jsdoc, but results in duplicates for
their initializers. I couldn't think of a better fix than tracking the
previous node in the recursive lookup of getJSDocCommentsAndTags, which
is a little clunky.

* Fix lint; remove new context parameter

* Update importJsNodeModule3 with fix
2018-05-15 15:12:29 -07:00
Andy e1f22ac568 Combine signatureHelp testing methods (#24132) 2018-05-15 12:34:53 -07:00
Mohamed Hegazy 0bda862cca Remove assert 2018-05-14 22:49:50 -07:00
Andy 7e3af08a09 Don't add a suggestion to convert to an es6 module if no commonjs import/export appears at top-level. (#24101) 2018-05-14 12:00:40 -07:00
Nathan Shively-Sanders dfef2fa9a2 Add another test of js special assignment merging (#24070) 2018-05-11 16:24:42 -07:00
Mohamed Hegazy cc36cfc834 Merge pull request #24050 from Microsoft/fix-js-initializer-merging
Fix js initializer merging
2018-05-11 10:45:20 -07:00
Nathan Shively-Sanders 2792ff97dd Add fourslash test case 2018-05-11 09:51:12 -07:00
Andy 2be6aaf813 Support '/' as a trigger character in path completions (#24042) 2018-05-10 16:50:26 -07:00
Andy 6ae4d3a516 Add code fix to remove unreachable code (#24028)
* Add code fix to remove unreachable code

* Code review

* Preserve more kinds of statements
2018-05-10 16:44:48 -07:00
Andy fd17f77cc9 Improvements to find-all-references for import types (#23998)
* Improvements to find-all-references for import types

* Add JS test
2018-05-10 15:31:06 -07:00
Andy 61a2949051 Don't count '/' in division as a completions trigger (#24038) 2018-05-10 14:59:33 -07:00
Andy 7271ec1240 Add 'move to new file' refactor (#23726)
* Add 'move to new file' refactor

* Code review, and support commonjs

* Compute movedSymbols completely before using, and support `export import`

* Fix assertion error: sort empty change before non-empty change

* Remove extra newline

* Add allowTextChangesInNewFiles preference

* Add the new file to 'files' in tsconfig

* Avoid parameter initializer

* Update API baselines

* Use path relative to tsconfig.json

* Code review

* Fix error where node in tsconfig file was missing a source file
2018-05-10 11:17:04 -07:00
Mohamed Hegazy 1b796ed04d Merge pull request #23954 from Kingwl/readonly-getter-support
add support for readonly modifier
2018-05-10 11:10:03 -07:00
Wesley Wigham 20f9493f04 Allow all private declarations to be emitted in declaration output (#23351)
* Mostly functional WIP

* Fix accessors, symbol stringification

* Accept/update changed baselines

* Move type definition so file build order doesnt matter

* Accept post-merge test update

* Rename function, add doc
2018-05-09 19:53:44 -07:00
Andy da413d6fef Remove unnecessary filtering of tsx completions (#24004) 2018-05-09 15:18:45 -07:00
Mohamed Hegazy 6f9dc2f976 Merge pull request #23923 from Zzzen/master
Document highlights on async/await keywords should highlight other oc…
2018-05-09 09:51:04 -07:00
Zen 91a15dc609 improve performance 2018-05-09 22:42:44 +08:00
王文璐 8414a962ba update all reference in constructor 2018-05-09 18:41:46 +08:00
Andy 01ae7f1798 Rename test (#23978) 2018-05-08 15:07:55 -07:00
Andy 5725428f2d fixUnusedIdentifier: Handle destructure with all bindings unused (#23805)
* fixUnusedIdentifier: Handle destructure with all bindings unused

* Add parameters test

* Add test for 'for' loop
2018-05-08 13:33:55 -07:00
Andy ccfd3bf603 Handle BindingElement in fixUnusedIdentifier (#23819)
* Handle BindingElement in fixUnusedIdentifier

* Add array destructure tests
2018-05-08 11:23:01 -07:00
王文璐 88bf9277ff add support for readonly modifier 2018-05-08 12:26:34 +08:00
Andy 123ae530a7 convertToEs6Module: Replace 'module.exports =' with 'export default' without replacing nodes (#23948) 2018-05-07 15:45:43 -07:00
Andy a50001c9da Treat 'import("")' as a module reference (#23949) 2018-05-07 15:42:36 -07:00
Sheetal Nandi 8fc4242097 Merge pull request #23915 from Microsoft/jsonCompletions
Suggest json files in completion when resolveJsonModule is set and module resolution is node
2018-05-07 12:53:09 -07:00
Andy 004a558125 Avoid unnecessary newline when inserting node at start of class (#23935) 2018-05-07 12:40:33 -07:00
Andy 2604bb4dd3 Add 'string' ScriptElementKind (#23821) 2018-05-07 12:39:00 -07:00
Mohamed Hegazy e39e6fc780 Merge pull request #23894 from Microsoft/importOutlining
Add outlining spans for Import declarations
2018-05-07 12:08:11 -07:00
Andy a05feed839 generateGetAccessorAndSetAccessor: Preserve a parameter property declaration (#23318) 2018-05-07 11:33:00 -07:00
Andy d6701d3987 Replace verify.rangesReferenceEachOther with verify.singleReferenceGroup (#23933) 2018-05-07 11:06:21 -07:00
Andy 7fa5f70b9a Remove verify.referencesAre, verify.referencesOf, verify.rangesReferenceEachOther (#23900) 2018-05-07 10:08:38 -07:00
Zzzen 34323b69fb Document highlights on async/await keywords should highlight other occurrences in the same body fix #22944 2018-05-06 12:27:10 +08:00
Mohamed Hegazy 64d6b24c87 Code review comments 2018-05-05 13:22:48 -07:00
Mohamed Hegazy 12ed49bada Revert adding named import binding list outlining spans 2018-05-05 12:04:12 -07:00
Sheetal Nandi e8cd6b1111 Suggest json files in completion when resolveJsonModule is set and module resolution is node
Fixes #23899
2018-05-04 17:10:48 -07:00
Andy cecad27662 findAllReferences: Treat a nested property in a jsdoc type literal as a definition (#23901)
* findAllReferences: Treat a nested property in a jsdoc type literal as a definition

* Fix lint
2018-05-04 16:58:07 -07:00
Mohamed Hegazy 82381280cf Merge branch 'master' into importOutlining 2018-05-04 15:58:56 -07:00
Andy df9e2621d2 Fix find-all-refs for import("mod").Foo where Foo is a typedef (#23881)
* Fix find-all-refs for import("mod").Foo where Foo is a typedef

* Add Debug.assertNever message

* Ensure SemanticMeaning is matched
2018-05-04 13:32:40 -07:00
Mohamed Hegazy a59ac8fd33 Update test 2018-05-04 11:29:54 -07:00