Commit Graph
7601 Commits
Author SHA1 Message Date
Anders Hejlsberg 83bc70dd63 Merge pull request #23782 from Microsoft/controlFlowNullTypeAndLiteral
Control flow for null type vs. literal
2018-04-30 11:38:00 -07:00
Anders Hejlsberg 0dc42fea74 Add regression tests 2018-04-30 10:43:55 -07:00
Mohamed Hegazy 8793b8c56b Merge pull request #23697 from Ken703/bug/23047
Formatting: fix unwanted space between closing parenthesis and string template
2018-04-30 10:19:17 -07:00
Anders Hejlsberg 936444ad7b Add tests 2018-04-29 07:55:23 -07:00
Ken703 4e401ca361 update string template rule and test 2018-04-28 19:59:41 -04:00
Anders Hejlsberg 25d5952096 Merge pull request #23751 from Microsoft/reduceIntersectionTypes
Remove redundant primitive types from intersections
2018-04-28 11:42:56 -07:00
Daniel Rosenwasser 443c1c7965 Merge pull request #23327 from Microsoft/importDotMeta
Support 'import.meta'
2018-04-27 20:52:28 -07:00
Daniel Rosenwasser 12a3e39dca Specify ESNext module in test. 2018-04-27 18:17:49 -07:00
Anders Hejlsberg 38d1f7f0d2 Add tests 2018-04-27 16:50:09 -07:00
Wesley Wigham 8c5ad2429a Relax switch-case narrowing restrictions (#23522)
* Allow switch case narrowing even when individual clauses are nonunit

* And remove unit type restriction

* Rename
2018-04-27 16:30:43 -07:00
Wesley Wigham 47385b29e0 Actually visit expression node on empty destructuring assignment (#23744) 2018-04-27 15:55:53 -07:00
Wesley Wigham 6d3b6e21da Add implicit any errors for destructuring computed names which aren't late bound and have no corresponding index (#23489)
* Add implicit any errors for destructuring computed names which arent late bound and have no corresponding index

* Add string fallback for number

* Expand test case, make functionality mimic other (buggy) areas

* Add symbol name errors to bring in line with new indexing rules
2018-04-27 15:55:32 -07:00
Anders Hejlsberg 6c28da328e Merge pull request #23672 from Microsoft/intersectionWithUnionConstraint
Type relationships for intersections with union constraints
2018-04-27 15:53:00 -07:00
Anders Hejlsberg 5ecd03e8c0 Merge pull request #23660 from Microsoft/fixIndexTypeTargetConstraint
Fix constraint of 'keyof T[K]' in target position
2018-04-27 15:52:21 -07:00
Nathan Shively-Sanders 3631af6486 Remove readonly from object rest properties (#23746)
* Remove readonly from object rest properties

Works the same as removing it from object spread properties

* Fix bug number in test
2018-04-27 14:54:59 -07:00
Wesley Wigham d5ef1174bd Copy consistient valueDeclarations on union/intersection symbols (#23190) 2018-04-27 13:12:35 -07:00
Nathan Shively-Sanders 1595f7fe83 Add prettier user test and fix associated crash (#23715)
* Add prettier and fix crash bug

Name resolution would crash when resolving a type name inside a
typedef's property tag.

* Update tsconfig and thefore prettier baseline
2018-04-26 14:03:18 -07:00
Nathan Shively-Sanders 1541599ea0 Check base type for special property declarations (#23671)
If the base type has a property by that name, add it to the list
constructor types to make it as authoritative as special assignments
found in the constructor.
2018-04-26 08:14:22 -07:00
Andy aa102435b3 Fix insertNodeAtClassStart for empty class with comment (#23342) 2018-04-26 08:00:38 -07:00
Daniel Rosenwasser 9672116d8c Merge remote-tracking branch 'origin/master' into importDotMeta 2018-04-25 22:21:56 -07:00
Ken703 d9bc436788 Auto format: no space between closing parenthesis and string template 2018-04-25 21:10:35 -04:00
Andy cdfd92b90d Don't add import completion from a re-export in "./index" (#23623)
* Don't add import completion from a re-export in "./index"

* Simpler heuristic
2018-04-25 16:15:49 -07:00
Wesley Wigham 4a6888a850 There exist type parameters with symbols but without TypeParameterDeclaration nodes (#23690)
* There exist type parameters with symbols but without TypeParameterDeclaration nodes

* Add test
2018-04-25 15:53:06 -07:00
Nathan Shively-Sanders b2bfccfce4 Prototype-property assignment:fix name resolution crash (#23680) 2018-04-25 13:59:40 -07:00
Anders Hejlsberg 8442a45bb6 Add additional tests 2018-04-25 11:03:25 -07:00
Andy 5280d23b63 importNameCodeFix: consistently put fixes to use existing imports before fixes for existing imports (#23663) 2018-04-25 08:04:20 -07:00
Anders Hejlsberg 50c7ff79d0 Add tests 2018-04-24 15:57:17 -07:00
Anders Hejlsberg ad4f83a281 Merge branch 'master' into fixIndexTypeTargetConstraint
# Conflicts:
#	tests/baselines/reference/keyofAndIndexedAccess.js
#	tests/baselines/reference/keyofAndIndexedAccess.symbols
#	tests/baselines/reference/keyofAndIndexedAccess.types
#	tests/cases/conformance/types/keyof/keyofAndIndexedAccess.ts
2018-04-24 11:08:08 -07:00
Anders Hejlsberg 5d67f8ef68 Merge pull request #23645 from Microsoft/distributeKeyofUnion2
Distribute 'keyof' union types (take 2)
2018-04-24 10:09:45 -07:00
Anders Hejlsberg 57ef618120 Add regression test 2018-04-24 10:02:47 -07:00
Andy 59765e2d86 goToDefinition: Also add definitions for symbol if it does not match the signature symbol (#23657) 2018-04-24 09:41:47 -07:00
Andy eca17ac243 Support import fix even when the error is that a type is used as a value (#23655) 2018-04-24 08:54:14 -07:00
Anders Hejlsberg 7befd35009 Add tests 2018-04-23 21:09:49 -07:00
Andy fc30bd10e3 Suggestion to convert to ES6 module should only trigger in projects which express some intent to use ES6 (#23576) 2018-04-23 16:05:37 -07:00
Nathan Shively-Sanders 905f9a02ad module.exports = Entity is an alias, just like export = Entity (#23570)
* Make `module.export =` an alias like `export=` is

This breaks a couple of tests for previous workarounds. Fix in upcoming
commits.

* Basically fixes all the breaks, but needs cleanup

* More notes to myself

* Clean up TODOs

* Call mergeSymbolTable and delete export= afterward

instead of basically copying the code myself.

* More cleanup

* Remove unnecessary check in import type checking

* Revert to DIY code.

It is more correct and will go away in a few days.

* Exported class expressions can be used as type

In both JS and TS

* Do not require named class expressions
2018-04-23 15:24:31 -07:00
Andy 222f35d927 Make symbol display at ExportSpecifier use 'export', not 'import' (#23629) 2018-04-23 13:29:14 -07:00
Anders Hejlsberg 0179d97403 Merge pull request #23592 from Microsoft/improveIndexTypes
Support number and symbol named properties with keyof and mapped types
2018-04-23 13:22:56 -07:00
Andy 645258cc7d Allow getting import completion details with misspelled name (#23624) 2018-04-23 11:24:51 -07:00
Andy 2e78d1ef21 getEditsForFileRename: Update tsconfig "files" (#23625) 2018-04-23 11:11:06 -07:00
Wesley Wigham eb112ab492 Deduplicate declarations in combined type/value symbols (#23593) 2018-04-21 12:50:05 -07:00
Mohamed Hegazy 7f34340dcf Merge pull request #21476 from Kingwl/concat-string-in-enum-member
allow string concat in enum member declaration
2018-04-21 12:42:10 -07:00
kingwl 1e1b72892c accept baseline 2018-04-21 12:06:29 +08:00
Andy 5c94bef0e1 Add 'renameFile' command to services (#23573)
* Add 'renameFile' command to services

* renameFile -> getEditsForFileRename

* Support `<reference path>` directives
2018-04-20 13:43:09 -07:00
Nathan Shively-Sanders e65681a2b7 Fix assert in getjsdochost (#23575)
* Fix assert in getJSDocHost

* Update public API to add wider type

* Remove now-unnecessary type assertion
2018-04-20 10:41:58 -07:00
Andy 22f2b118b7 Add 'triggerCharacter' option for completions requests (#23491)
* Add 'triggerCharacter' option for completions requests

* mhegazy code review

* More code review

* Handle '<' in comment
2018-04-20 10:25:58 -07:00
Andy 94cc59ca60 Support getting JSDoc comment starting at a FunctionType node (#23546)
* Support getting JSDoc comment starting at a FunctionType node

* Move || to end of line
2018-04-20 09:43:20 -07:00
Klaus Meinhardt 8e565fb4a6 avoid generated helpers in baseline 2018-04-20 16:39:37 +02:00
Klaus Meinhardt 4827728b16 binder: don't inline generator function's control flow
Fixes: #23565
2018-04-20 16:26:53 +02:00
Nathan Shively-Sanders 8d969a23cb In JS, class supports @template tag for declaring type parameters (#23511)
* Support @template as a class type parameter

Still need to do the following:
1. Correctly get jsdoc host in predicate.
2. Make this work for constructor functions too.
3. Scan rest of codebase for other usages of the type parameters
property that should be calls to getEffectiveTypeParameterDeclarations.
4. Rename tp to something more readable, like typar or ts'.

* Use jsdoc host declaration to find container

* Longer names for type parameters

* Fix renaming operation

* Update fourslash test

* Support @template for JS constructors

* Look for both outer and tag type parameters

* Improve naming to improve code clarity
2018-04-19 15:58:43 -07:00
Daniel Rosenwasser 84b12910e8 Merge pull request #23430 from Microsoft/taggedTemplateTypeArguments
Allow type arguments in generic tagged templates
2018-04-19 15:50:19 -07:00