Oleksandr T
09048656d2
feat(40750): add refactoring to infer a return type annotation to a function ( #41052 )
2020-11-03 16:22:13 -08:00
Sheetal Nandi
9c60d5a4d3
Dont look for properties of Object and Function type when looking to resolve named import from module with export= ( #37964 )
...
* Add tests
* Dont look at object or function type when looking for members of `export=` type to be resolved by named imports
Fixes #37165
* Create separate cache when skipping function and object property augmentation
* Lookup in both cache if not skipObjectFunctionPropertyAugment
2020-11-03 12:22:30 -08:00
Oleksandr T
e4c1568c5d
fix(41078): add element access expressions support in convertFunctionToEs6Class ( #41089 )
2020-11-02 15:49:22 -08:00
Thomas Williamson
8ed251d0c7
Support xml namespace prefix for JSX elements and attributes ( #37421 )
...
* Support xml namespace prefix for JSX elements and attributes
Just as with the `-` character, `:` is now also treated specially in JSX
element and attribute names, but is only allowed a single time, and not
at the beginning or end of the name, as is specified in the JSX spec.
All tests in jsxInvalidEsprimaTestSuite still fail, but for slightly
different reasons now. Two lines in jsxEsprimaFbTestSuite were
uncommented as they included elements with namespaces, and they now pass
without error.
* Add case for colons at ends of identifier
* Add case for jsx namepsace intrinsics
* Add cases with upcase idents for jsx namespaces
* Add case for jsx namespaces with react option
* Always consider jsx names with colon to be intrinsics
* Adjust comment about chars valid in jsx names but not js idents
* Fix minor typo in namespace prefix test case variable name
* Remove misleading comments on isUnhyphenatedJsxName
2020-11-02 15:34:36 -08:00
Oleksandr T
3f92a6498f
fix(40257): fix type parameters range ( #40265 )
2020-11-02 15:20:13 -08:00
Wenlu Wang
ce8d702586
Add support for pedantic property access ( #40171 )
...
* Add support for pedantic property access
* accept baseline
* Update diag message
* Avoid pedantic
Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>
2020-11-02 15:19:00 -08:00
Oleksandr T
056d01afda
fix(38283): fix incorrect parsing of static modifier ( #41127 )
2020-11-02 14:45:26 -08:00
okmttdhr
7db5f68144
Add index signature for anonymous object literal type ( #37903 )
...
* Use ts.map for stylistic consistency
* Show error only if noImplicitAny is set
* Accept baseline for noImplicitAnyIndexing
* Fix lint error
* Add test cases for indexedAccessWithFreshObjectLiteral
2020-11-02 14:35:56 -08:00
Oleksandr T
f646ec87fc
fix(40901): skip checking custom arguments name in a constructor ( #40912 )
2020-11-02 14:35:07 -08:00
Oleksandr T
075477f9cf
fix(35779): emit comments after trailing comma ( #37887 )
2020-11-02 14:24:55 -08:00
Nathan Shively-Sanders
ae81add083
Separate delete-all-imports from other delete-all ( #41105 )
...
This fixes the first part of #32196
2020-11-02 14:18:50 -08:00
Wesley Wigham
479105090d
Merge pull request #41330 from weswigham/jsx-import-source-as-auto-import
...
Auto-include types for the jsx import source in the new jsx transforms
2020-10-30 16:51:04 -07:00
Wesley Wigham
e044b56d7f
Merge pull request #40985 from weswigham/static-decl-ref
...
Adjust typeof import name lookup to better match type query lookup
2020-10-30 11:13:23 -07:00
Ron Buckton
f944afd053
Fix double alias of complex export/import/default/namespace combination
2020-10-29 18:42:36 -07:00
Ron Buckton
bcbe1d7638
Merge pull request #41094 from microsoft/destructuringEvaluationOrder
...
Fix destructuring evaluation order for initializers
2020-10-29 17:12:18 -07:00
Oleksandr T
eb6ddf6b29
fix(40671): suggest ConvertStringToTemplateLiteral refactoring for string with property/element acceses elements ( #40942 )
2020-10-29 15:23:11 -07:00
Wesley Wigham
6714998e01
Auto-include types for the jsx import source in the new jsx transforms
2020-10-29 14:17:24 -07:00
Ron Buckton
2b7e790732
Update control flow for nested binary exprs
2020-10-29 13:32:32 -07:00
Wesley Wigham
f0f3862cd9
Merge pull request #41314 from weswigham/fix-global-jsx-ns-alias-crashes
...
Fix crashes when the global JSX namespace is an alias
2020-10-28 18:38:26 -07:00
Ron Buckton
8a15291541
Update control flow for correct destructuring evaluation order
2020-10-28 16:50:15 -07:00
Wesley Wigham
d722392d81
Fix crashes when the global JSX namespace is an alias
2020-10-28 14:31:40 -07:00
Wesley Wigham
4ec02a56b8
Bind comma expression LHS call expressions
2020-10-28 13:48:29 -07:00
Wesley Wigham
ca8a15d37b
Merge pull request #41287 from weswigham/bind-exports-assigned-object-as-alias
...
Bind `module.export = {Thing}` with alias symbols
2020-10-28 13:14:20 -07:00
Anders Hejlsberg
bd27bd8d47
Don't relate unmatched parameter positions in signatures ( #41308 )
...
* Don't relate unmatched parameter positions in signatures
* Add regression test
* Accept new baselines
2020-10-28 11:55:32 -07:00
Sheetal Nandi
e17d95dada
When creating synthetic default symbol set parent as module symbol ( #41282 )
...
Fixes #40684
2020-10-28 11:24:40 -07:00
Wesley Wigham
6acce0ca6f
Merge pull request #41075 from uhyo/fix-36958
...
allow type narrowing with NonNullExpression
2020-10-27 20:10:27 -07:00
Oleksandr T
af38ab90e2
feat(41249): allow import.meta with module: es2020 ( #41274 )
2020-10-27 17:26:15 -07:00
Wesley Wigham
e96ce39b60
Fixup other fourslash test
2020-10-27 16:25:30 -07:00
Anders Hejlsberg
40b81224f9
Remove string literals from unions with matching template literals ( #41276 )
...
* Remove string literals from unions with matching template literals
* Add tests
* Accept new baselines
2020-10-27 16:21:07 -07:00
Wesley Wigham
d1bc6b1ba6
Bind module.export = {Thing} with alias symbols
2020-10-27 15:43:00 -07:00
Michael
71cd5d522d
Fix two issues with ConvertToTypeOnlyExport codefix ( #40490 )
...
* Modify test case to reproduce error
* Fix TypeOnlyExport codefix to work with 3 or more type exports in the same declaration
The check to ensure that a fixed export declaration wasn't fixed again
was reversed. This only surfaced when 3 or more type exports existed in
the same declaration.
* Add failing test cases for comments being duplicated
* Fix convertToTypeOnlyExport codefix from duplicating leading comments
* Simplify convertToTypeOnlyExport when change is just inserting `type` keyword
Co-authored-by: Andrew Branch <andrew@wheream.io>
2020-10-27 15:08:20 -07:00
Oleksandr T
9ed608b439
fix(41244): ignore synthesized imports ( #41267 )
2020-10-27 13:22:02 -07:00
Wesley Wigham
c923023494
Merge pull request #41191 from weswigham/control-flow-comma-exprs
...
Track control flow for comma expressions in call expressions
2020-10-27 12:37:02 -07:00
Anders Hejlsberg
f9dcd9ef98
Don't cache Ternary.Maybe results when recursion is encountered during variance measurement ( #41218 )
...
* Don't record Ternary.Maybe results in cache during recursive variance measurement
* Add regression test
* Accept new baselines
* Use Ternary.Unknown to signal variance recursion
* Add comments
* Fix comment
2020-10-27 10:53:13 -07:00
Oleksandr T
3754bb4455
fix(40994): change type for optional properties ( #41011 )
2020-10-27 10:05:40 -07:00
Daniel Rosenwasser
3517af8f80
Make 'getIndentString' just use a loop. ( #41221 )
...
* Make 'getIndentString' just use a loop.
* Added test.
* Accepted baselines.
2020-10-26 12:19:31 -07:00
Wesley Wigham
94b0e0e389
Merge pull request #41190 from weswigham/handle-binding-element-aliases
...
Handle the new js binding element alias symbols in JS declaration emit
2020-10-23 10:31:08 -07:00
Ron Buckton
0b303ff08a
Fix some rest cases and handling of unused results
2020-10-22 18:58:21 -07:00
Ron Buckton
28c4f32ddf
Merge branch 'master' into destructuringEvaluationOrder
2020-10-22 17:14:23 -07:00
Anders Hejlsberg
d1f87d18b1
Support partial reverse mapped inferences with tuple types ( #41106 )
...
* Support partial reverse mapped inferences with tuple types
* Add tests
* Accept new baselines
2020-10-22 11:27:41 -07:00
Wesley Wigham
6dde1621cb
Track control flow for comma expressions in call expressions
2020-10-21 12:31:29 -07:00
Anders Hejlsberg
5d021b401a
Don't reduce 'keyof M' for mapped types with non-distributive 'as' clauses ( #41186 )
...
* Don't reduce 'keyof M' for mapped types with non-distributive as clauses
* Add regression test
* Accept new baselines
2020-10-21 12:16:46 -07:00
Wesley Wigham
f4255dd237
Handle the new js binding element alias symbols in JS declaration emit
2020-10-21 11:24:19 -07:00
Andrew Branch
1f852ed747
Percent-encode source map URLs ( #41102 )
2020-10-20 13:11:52 -07:00
Wesley Wigham
0ad22de146
Merge branch 'master' into fix/create-element-new-jsx-transform
2020-10-19 15:21:52 -07:00
Wesley Wigham
aa9445bc15
Merge branch 'master' into empty-jsx-child
2020-10-19 14:54:20 -07:00
Wesley Wigham
b8dfa28ca8
Do not consider empty jsx expressions semantically important children
2020-10-19 13:34:16 -07:00
Anders Hejlsberg
4638c685b1
Properly reduce intersections of string literal and template literal types ( #41162 )
...
* Properly reduce single element intersections
* Add regression test
* Accept new baselines
2020-10-19 13:05:29 -07:00
Anders Hejlsberg
3918e6c535
Move anonymous type instantiation cache from AST node to root type ( #41084 )
...
* Move anonymous type instantiation cache from AST node to root type
* Use "root" type reference as cache location for deferred type references
* Add test
Co-authored-by: Andrew Branch <andrew@wheream.io>
2020-10-19 07:26:48 -07:00
Mateusz Burzyński
43433eb2f1
Add tests related to the key prop when using new JSX transform
2020-10-17 15:20:39 +02:00