Commit Graph
23173 Commits
Author SHA1 Message Date
Anders Hejlsberg e388a2642a Fix issue with unions not being marked primitive-only 2021-01-05 06:58:13 -10:00
Anders Hejlsberg 99355c53f3 Merge branch 'master' into preserveTypeAliases
# Conflicts:
#	tests/baselines/reference/keyofAndIndexedAccessErrors.errors.txt
#	tests/baselines/reference/reactDefaultPropsInferenceSuccess.errors.txt
#	tests/baselines/reference/variadicTuples1.errors.txt
2021-01-04 15:28:35 -10:00
Anders Hejlsberg e1fda834f3 Cache complex union and intersection relations (#37910)
* Cache complex union/intersection relations

* Accept new baselines

* Accept new baselines
2021-01-04 15:15:01 -10:00
Anders Hejlsberg 9b1718677a Leading and middle rest elements in tuple types (#41544)
* Support starting and middle rest elements in tuples

* Accept new baselines

* Include all rest arguments in error span

* Accept new baselines

* Fix tests

* Add new tests

* Fix lint errors
2021-01-04 15:12:51 -10:00
Wesley Wigham 72dfc589a1 Retain CheckFlags.Late on symbols manufactured based on Late-bound symbols (#42205) 2021-01-04 15:49:52 -08:00
Oleksandr T b405fdd2ab fix(41420): forbid optional chain in extends/implements (#41481) 2021-01-04 15:38:54 -08:00
Ron Buckton 6fac3ddfd4 Fix module resolution for import call emit (#41390) 2021-01-04 15:08:57 -08:00
Song Gao b9ac2f50b8 remove duplicated type -- remove TriviaKind, keep TriviaSyntaxKind. (#42108) 2021-01-04 14:34:53 -08:00
Oleksandr T 841b1a5bc7 fix(37791): fix incorrect private field access in a computed property name (#38135) 2021-01-04 14:01:54 -08:00
Orta Therox 222f29f2a5 Update lib dom for 4.2 (#42067) 2021-01-04 21:26:56 +00:00
Anders Hejlsberg 3fce1b9276 Don't include denormal origin types in regular type statistics 2021-01-04 11:10:39 -10:00
ExE Boss 9a2ae118f1 fix(lib/es2015): Fix definition of ProxyHandler (#35594) 2021-01-04 12:34:51 -08:00
Oleksandr T 0876feb7cb fix(42160): omit unnecessary parentheses around assertions (#42169) 2021-01-04 11:24:37 -08:00
Anders Hejlsberg 4c9675cc44 Merge branch 'master' into preserveTypeAliases
# Conflicts:
#	tests/baselines/reference/modularizeLibrary_UsingES5LibAndES6FeatureLibs.types
2021-01-04 07:33:33 -10:00
Oleksandr T f1dca6a61f fix(42019): include the jsdoc tags from the base declaration (#42098) 2021-01-04 15:33:26 +00:00
Brandon PickeringandOrta 822962e7b3 Improve documentation for basic array methods (#41961)
* Improve documentation for basic array methods

* Accept baseline changes for new lines from JSDoc changes

Co-authored-by: Orta <git@orta.io>
2021-01-04 10:06:01 +00:00
ExE Boss 562237dfda fix(lib/es2015): Fix types of Reflect methods (#41987) 2021-01-04 09:50:34 +00:00
Anders Hejlsberg 5f7e1265c9 Revert back to declared type when branches produce equivalent union 2021-01-03 18:01:05 -10:00
Anders Hejlsberg 260a665264 Remove redundant call 2021-01-03 15:44:51 -10:00
Anders Hejlsberg d98caabaca Map on union origin in mapType to better preserve aliases and origins 2021-01-03 06:41:13 -10:00
Anders Hejlsberg 21f61c0002 Recursively extract named union types 2021-01-02 11:37:13 -10:00
Anders Hejlsberg 39f82a8029 Use denormalized type objects for origin / support 'keyof' origins 2021-01-01 12:38:04 -10:00
Anders Hejlsberg d4dc215c56 Compute intersection-of-unions cross product without recursion 2020-12-30 11:33:17 -10:00
chenjigeng ea93ee6db9 fix: host.isKnownTypesPackageName maybe undefined (#42050)
* fix: host.isKnownTypesPackageName maybe undefined

* feat: remove GH#18217 comment
2020-12-30 12:13:56 -08:00
Oleksandr T e108257fb6 fix(41965): fix error in definite assignment assertion context (#41989) 2020-12-30 11:45:18 -08:00
Oleksandr T dfe23421ba fix(41867): completions - omit the deprecated flag if some declarations are not deprecated (#41941) 2020-12-30 10:42:38 -08:00
3b222fe80c Shrink error span on @type errors for signatures (#42024)
Previously, the error span was too large on @type errors on functions
when the type was not a function. The span covered the entire tag. This
PR changes the error node just to be the type of the type tag. In other words,
the error span was previously this:

```
@type {IncorrectType}
```

But is now just this:

```
IncorrectType
```

Fixes the first error from #41974, but not the other two.

Co-authored-by: Ashya Manning <ashyamanning@pursuit.org>
Co-authored-by: Nilber Remon <nilberremon@gmail.com>

Co-authored-by: Ashya Manning <ashyamanning@pursuit.org>
Co-authored-by: Nilber Remon <nilberremon@gmail.com>
2020-12-30 09:48:07 -08:00
Anders Hejlsberg 6c1248e128 Preserve aliases for intersection and indexed access types 2020-12-29 10:59:08 -10:00
Anders Hejlsberg cc5d0f2de8 Preserve aliases during relationship checks 2020-12-29 08:51:55 -10:00
Anders Hejlsberg 44231c80c3 Preserve intersection origin for union types 2020-12-28 17:05:44 -10:00
Oleksandr T 303ed3a357 fix(42099): fix JSDoc optional properties declaration emit (#42116) 2020-12-28 13:34:55 -08:00
chenjigeng ea03c2966b Fix/jsx syntax quickinfo (#42124)
* feat: add jsx type invalid check

* feat: update jsxGenericQuickInfo test cases
2020-12-28 09:43:43 -08:00
Oleksandr T fe297df9df fix(42034): allow convert async function with empty catch (#42123) 2020-12-28 09:34:28 -08:00
Baptiste Darthenay e4c4292807 fix(42128): Stricter type for ES5 Intl, redefine ES2020 intl (#42134) 2020-12-28 13:46:47 +00:00
Anders Hejlsberg c9bea0cc35 Preserve original types for union types 2020-12-27 15:27:04 -10:00
Anders Hejlsberg 8f2e00f6ff Create separate types for equivalent aliased unions 2020-12-25 11:48:12 -10:00
Jesse Trinity 8bbef818ed Hierarchical refactorings (#41975)
* add hierarchical refactoring strings

* fourslash tests

* extractSymbol filters returned actions

* move refactorKind check to utilities

* rename parameters

* messaging for addOrRemoveBracesToArrowFunction

* fix up inferFunctionReturnType

* fix up convertArrowFunctionOrFunctionExpression

* add preferences to fourslash method

* fix up convert string

* fix up moveToNewFile

* fix lint errors

* remove extra arrow braces diagnostics

* break out tests

* add refactor helpers

* refactor refactors

* keep list of actions

* address PR comments

* response protocol

* address more comments
2020-12-23 12:50:03 -08:00
Andrew Branch c84838bd23 Avoid rewriting bare module specifiers on rename when fix is not verifiably correct (#41959) 2020-12-22 11:02:38 -08:00
orange4glace 1e4a5c9b37 fix(41259) : JS autocomplete doesn't work for object literal shorthands (#41539)
* fix: #41259

* fix: #41259

* fix: fourslash

* fix: remove nested if

* fix: change tc result for #41259

* fix: less restrictive shorthand completion rules

* fix: use typeMembers to find out whether properties are empty

* fix: typo

* fix: lint

* fix: exclude Object in completion

* fix: test

* fix: testcase tidy up

* fix: apply completions for unclosed literal and missing comma

* fix: ignore auto-imports

* fix: use exact to ensure the order of completions

* fix: use exact to ensure the order of completions

* fix: add new lines so it can easy to be distinguished
2020-12-22 10:36:52 -08:00
Song Gao 3442151f9d completion for return const assertion. (#41475) 2020-12-22 09:16:30 +00:00
Baptiste Darthenay bce412cb15 fix(40806): Add missing options and possible values of DateTimeFormat (#41880) 2020-12-22 09:13:01 +00:00
Martijn Pieters a2ddfcfe0e Add missing NumberFormatPartTypes types (#42066)
Adds 7 additional types found in ECMA-402, 7th ed. June 2020, https://www.ecma-international.org/ecma-402/#numberformat-objects (17 in total)
2020-12-21 16:34:16 -08:00
Anders Hejlsberg 22bee779d7 Properly make inferences from partial source type (#42038)
* Slightly less picky check in typesDefinitelyUnrelated

* Accept new baselines

* Add regression test
2020-12-19 07:18:44 -10:00
Andrew Branch 487be36919 Fix auto import completion inserting wrong module specifier (#41955)
* Don’t look for reëxports when import source was an ambient module

* Add additional assertion for clarity
2020-12-18 15:13:02 -08:00
Andrew Branch e84a95f707 Fix find-all-refs crashing in some project references scenarios (#42025)
* Add failing test

* Fix test

* Accept baseline
2020-12-18 14:24:34 -08:00
49136f7879 Use getPropertiesForObjectExpression in string literal object completions (#42020)
Co-authored-by: Johanne Enama <jenama@users.noreply.github.com>
Co-authored-by: Kevin Wong <kwong0419@users.noreply.github.com>

Co-authored-by: Johanne Enama <jenama@users.noreply.github.com>
Co-authored-by: Kevin Wong <kwong0419@users.noreply.github.com>
2020-12-18 14:20:41 -08:00
Oleksandr T a763600cc4 fix(41818): use last JSDoc comment related to host (#41858) 2020-12-18 13:24:58 -08:00
Wesley Wigham c3ff0d4c17 Under jsx: preserve, actually preserve expressions which contain only comments (#41757)
* Under jsx: preserve, actually preserve expressions which contain only comments

* Even better best effort comment preservation in JSX comments
2020-12-18 11:42:33 -08:00
Wesley Wigham caebbe6714 Dont check computed name visibility results when the computed name representation is not in use (#41806) 2020-12-18 11:41:55 -08:00
Andrew Branch 5cdb2e8899 Fix more inferred template literal types (#42039) 2020-12-18 10:31:42 -08:00