csigs
7bcbf8c1ae
LEGO: check in for main to temporary branch. ( #46088 )
2021-09-27 16:07:16 -07:00
Orta Therox
d6cd2c7c11
Updates the DOM APIs ( #46080 )
...
* Updates the DOM APIs
* Tests
* Remove static abort(): AbortSignal
2021-09-27 22:07:57 +01:00
Andrew Branch
e160bc8c0d
Type-only import specifiers ( #45998 )
...
* Parse type-only import specifiers
* Add type-only export specifiers
* Update transform and emit
* Update checking
* Fix elision when combined with importsNotUsedAsValues=preserve
* Accept baselines
* Add test
* WIP auto imports updates
* First auto-imports test working
* More auto-import tests
* Fix auto imports of type-only exports
* Add test for promoting type-only import
* Sort import/export specifiers by type-onlyness
* Update completions for `import { type |`
* Update other completions tests
* Respect organize imports sorting when promoting type-only to regular while adding a specifier
* Fix comment mistakes
* Update src/services/codefixes/importFixes.ts
Co-authored-by: Daniel Rosenwasser <DanielRosenwasser@users.noreply.github.com>
* Rearrange some order of assignments in parser
* Split huge if statement
* Remove redundant check
* Update new transformer
* Fix import statement completions
* Fix type keyword completions good grief
* Fix last tests
Co-authored-by: Daniel Rosenwasser <DanielRosenwasser@users.noreply.github.com>
2021-09-27 12:38:30 -07:00
Anders Hejlsberg
26aef89a72
Make never
inferences with template literal types only in special cases ( #46075 )
...
* Make 'never' inferences with template literal types only in special cases
* Accept new baselines
* Add regression test
* Fix comment
2021-09-27 06:47:47 -07:00
TypeScript Bot
4ce902c5fa
Update package-lock.json
2021-09-27 06:09:08 +00:00
csigs
0ca06ede7a
LEGO: Merge pull request 46079
...
LEGO: Merge pull request 46079
2021-09-26 22:13:42 -07:00
csigs
d8701a2de4
LEGO: Merge pull request 46077
...
LEGO: Merge pull request 46077
2021-09-26 16:14:05 -07:00
Anders Hejlsberg
2f0c6070cb
Properly handle missingType in intersections ( #46052 )
...
* Properly handle missingType in intersections
* Add regression tests
* Accept new baselines
* Fix tests
2021-09-26 14:13:42 -07:00
csigs
2be3d45aa7
LEGO: Merge pull request 46070
...
LEGO: Merge pull request 46070
2021-09-26 10:13:35 -07:00
csigs
7aa37fd2ff
LEGO: Merge pull request 46064
...
LEGO: Merge pull request 46064
2021-09-26 04:15:59 -07:00
TypeScript Bot
f715af9dc1
Update package-lock.json
2021-09-26 06:06:13 +00:00
csigs
da884d11ed
LEGO: Merge pull request 46060
...
LEGO: Merge pull request 46060
2021-09-25 16:14:30 -07:00
csigs
d518bdb1f9
LEGO: Merge pull request 46058
...
LEGO: Merge pull request 46058
2021-09-25 10:13:51 -07:00
TypeScript Bot
9820a1df17
Update package-lock.json
2021-09-25 06:06:18 +00:00
Wesley Wigham
586b0d5011
moduleResolution: node12
support (#45884 )
...
* Initial support for module: node12
* Add allowJs and declaration emit enabled tests
* Fix typos
* cts, mts, cjs, mjs, etc extension support
* Fix watch of files whose intepretation changes due to a package.json update
* Minor PR feedback
* Adjust error message
* Initial import/export/self-name support
* Accept new error codes
* TypesVersions support in export/import map conditions
* Fix import suggestion and autoimport default extensions under new resolution modes
* Add tests for import maps non-relative name lookup feature
* Fix isDeclarationFileName for .d.mts and .d.cts
* Preserve new extensions when generating module specifiers
* Fix spurious implict any suggestion caused by file ordering bug and optimize import name format detection by relying on parents being set
* Fix a bunch of incremental bugs that dont repro under fourslash for some reason
* Accept updated baseline
* Always include extensions on completions for cjs/mjs style imports
* String completion relative import suggestions respect the mode of the import when choosing if they provide extensions
* Style feedback
* Change diagnostic case
2021-09-24 14:25:59 -07:00
Orta Therox
12003e53c2
Default tsc --init to es2016 ( #45934 )
2021-09-24 19:13:53 +01:00
Orta Therox
90e83adb44
Resolve with -lib in TypeScript lib node lookup ( #46046 )
2021-09-24 17:46:29 +01:00
Jack Bates
27bbdf1fe9
Transform JSX spread children ( #45693 )
...
* Transform JSX spread children
* Target es2015 to skip helper and refine emit
Co-authored-by: Ron Buckton <ron.buckton@microsoft.com>
Co-authored-by: Ron Buckton <ron.buckton@microsoft.com>
Co-authored-by: Orta <git@orta.io>
2021-09-24 09:19:49 -07:00
Ashley Claymore
af689cc5d5
ES private field check ( #44648 )
...
* es private fields in in (#52 )
add support for the 'private-fields-in-in' TC39 proposal
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [fixup] include inToken when walking forEachChild(node, cb)
* [squash] re-accept lib definition baseline changes
* [squash] reduce if/else to ternary
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] drop 'originalName' and rename parameter instead
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] extend spelling suggestion to all privateIdentifiers
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] revert the added lexical spelling suggestions logic
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] update baseline
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] inline variable as per PR suggestion
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] test targets both esnext and es2020 as per PR comment
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* switch to using a binary expression
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] PrivateIdentifier now extends PrimaryExpression
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] accept public api baseline changes
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] classPrivateFieldInHelper now has documentation
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] type-check now follows existing in-expression path
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] parser now follows existing binaryExpression path
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] correct typo in comment
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] no longer use esNext flag
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] swap 'reciever, state' helper params
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] remove change to parenthesizerRules
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] apply suggested changes to checker
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] remove need for assertion in fixSpelling
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] improve comment hint in test
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] fix comment typos
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] add flow-test for Foo | FooSub | Bar
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] add checkExternalEmitHelpers call and new test case
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] simplify and correct parser
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] move most of the added checker logic to expression level
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] always error when privateId could not be resolved
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] reword comment
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] fix codeFixSpelling test
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] do less work
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* store symbol by priateId not binaryExpression
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* moved parsePrivateIdentifier into parsePrimaryExpression
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] checkInExpressionn bails out early on silentNeverType
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] more detailed error messages
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] resolves conflict in diagnosticMessages.json
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] update baseline for importHelpersES6
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] remove redundent if and comment from parser
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] split up grammar/check/symbolLookup
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
* [squash] reword message for existing left side of in-expression error
Signed-off-by: Ashley Claymore <acutmore@users.noreply.github.com>
2021-09-24 09:05:27 -07:00
TypeScript Bot
59fb3731e3
Update package-lock.json
2021-09-24 06:06:09 +00:00
Oleksandr T
1b6c8fd072
fix(45607): add snippet for type only import statements ( #45873 )
2021-09-23 16:13:17 -07:00
Orta Therox
61d2939359
Adds more Intl.ResolvedDateTimeFormatOptions, and hooks up Intl for ES2021 ( #45905 )
...
* Adds more ResolvedDateTimeFormatOptions to the Intl APIs
* Fix tests
2021-09-23 21:33:37 +01:00
Anders Hejlsberg
a4f9bf0fce
Create type aliases for unresolved type symbols ( #45976 )
...
* Create type aliases for unresolved type symbols
* Accept new baselines
* Update fourslash tests
* Unresolved import aliases create tagged unresolved symbols
* Add comments
* Accept new baselines
* Add fourslash tests
2021-09-23 13:21:27 -07:00
Andrew Branch
039672332f
Revert "Stop looking at binding patterns for type argument inference" ( #46013 )
...
* Revert "Stop looking at binding patterns for type argument inference (#45719 )"
This reverts commit be618b1446
.
* Update error baseline for moved lib file declaration
2021-09-23 09:26:51 -07:00
TypeScript Bot
efbce1099c
Update package-lock.json
2021-09-23 06:06:09 +00:00
Ron Buckton
4c0a51e14b
Avoid Promise<Awaited<T>> in return type inference ( #45925 )
2021-09-22 16:29:07 -07:00
csigs
12f72caaa5
LEGO: Merge pull request 46014
...
LEGO: Merge pull request 46014
2021-09-22 16:14:11 -07:00
Armando Aguirre
24e3b6bf59
Added Jsx Snippet Completion feature ( #45903 )
...
* Added Jsx completion feature and tests
* Renamed jsxSnippetCompletion to jsxAttributeCompletionStyle
* Renamed tests files
* Changed boolean filter
* Escaped snippet
2021-09-22 16:09:00 -07:00
Nathan Shively-Sanders
f0fe1b88ca
Make isDefinition aware of declaring symbol ( #45920 )
...
* Make isDefinition aware of target symbol
Initial code, haven't fixed any tests yet.
* Update baselines
This commit includes a regression for commonjs aliases:
```js
// @filename: a.js
function f() { }
module.exports.f = f
// @filename: b.js
const { f } = require('./a')
f/**/
```
Now says that `f` in b.js has 1 reference --
the alias `module.exports.f = f`. This is not correct (or not exactly
correct), but correctly fixing will involve re-creating the ad-hoc
commonjs alias resolution code from the checker. I don't think it's
worth it for an edge case like this.
* update more unit tests
* Fix symbol lookup for constructors
* More baselines + two fixes
1. Fix `default` support.
2. Add a secondary declaration location for commonjs assignment
declarations.
* Update rest of baselines
* Switch a few more tests over to baselines
2021-09-22 13:43:52 -07:00
Hossein
110b05987e
Fix GH-32798: Allow == null to narrow unknown to null | undefined ( #45853 )
...
* Fix GH-32798
* add assume true
* Address Gabby comments
* Address Gabby comments by adding Else branch
2021-09-22 10:54:59 -07:00
csigs
5a9e1af7de
LEGO: Merge pull request 46008
...
LEGO: Merge pull request 46008
2021-09-22 10:13:57 -07:00
csigs
9f12799b08
LEGO: Merge pull request 46002
...
LEGO: Merge pull request 46002
2021-09-22 04:15:23 -07:00
TypeScript Bot
6495544770
Update package-lock.json
2021-09-22 06:06:27 +00:00
Nathan Shively-Sanders
15722e6b64
Remove referenceGroups/noReferences from fourslash ( #45988 )
...
* Remove referenceGroups/noReferences from fourslash
I left most singleReferenceGroups because there were so many, and my current
PR doesn't affect many of them.
* update fourslash/server too
* Explicitly sort keys
Needed for node 10 compatibility
* Revert "Explicitly sort keys"
This reverts commit 1d1c58a4e3
.
It shouldn't be needed now that we're not testing with node 10
2021-09-21 16:25:52 -07:00
csigs
826b6148dc
LEGO: Merge pull request 45997
...
LEGO: Merge pull request 45997
2021-09-21 16:18:34 -07:00
Nathan Shively-Sanders
f30ab60579
Update github workflows node10 -> node16 ( #45996 )
2021-09-21 16:00:09 -07:00
Oleksandr T
9b3ba871fb
fix(45987): fix pasring invalid names ( #45994 )
2021-09-21 14:02:58 -07:00
csigs
252620b956
LEGO: Merge pull request 45989
...
LEGO: Merge pull request 45989
2021-09-21 10:13:58 -07:00
Eli Barzilay
3a8591b544
Fix const assertions on enums
...
Fixes #45977
2021-09-21 12:42:28 -04:00
TypeScript Bot
5546f207c5
Update package-lock.json
2021-09-21 06:06:18 +00:00
Ikko Ashimine
c6f9732857
Fix typo in findAllReferences.ts ( #45973 )
...
occurences -> occurrences
2021-09-20 17:13:38 -07:00
Oleksandr T
15a46bb72d
fix(45489): add test to cover comparison operator with intersection type ( #45936 )
2021-09-20 16:35:55 -07:00
Wenlu Wang
ec114b8931
Import assertion ( #40698 )
...
* Add parsing
* fix all api
* check gramma of import call
* Add more part of assertion
* Add some case
* Add baseline
* use module insted of target
* strip assertion in d.ts
* Update new baseline
* accept baseline
* Revert error number changes
* Update diagnostic message
* Accept baseline
* rename path
* Fix cr issues
* Accept baseline
* Accept baseline
* Error if assertion and typeonly import
* Accept baseline
* Make lint happy
* Add some comment
* Fix cr issues
* Fix more issue
* Incorporate PR feedback, fix module resolution for import()
* Add contextual type and completions for ImportCall options argument
Co-authored-by: Ron Buckton <ron.buckton@microsoft.com>
2021-09-20 14:15:22 -07:00
Hiroshi Ogawa
5ef043987a
fix(45802): keep children of mismatched jsx element ( #45839 )
...
* fix(45802): keep children of mismatched jsx element
* Apply suggestions from code review
Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>
Co-authored-by: Nathan Shively-Sanders <293473+sandersn@users.noreply.github.com>
2021-09-20 07:19:55 -07:00
TypeScript Bot
78472ec14c
Update package-lock.json
2021-09-20 06:06:11 +00:00
csigs
285c0e2dcb
LEGO: Merge pull request 45947
...
LEGO: Merge pull request 45947
2021-09-17 16:17:42 -07:00
Armando Aguirre
8346143450
Fixed trimming comments on the remaining range ( #45807 )
...
* Fixed trimming comments on the remaining range
* Added test
2021-09-17 14:00:04 -07:00
csigs
3c27c3a5ca
LEGO: Merge pull request 45940
...
LEGO: Merge pull request 45940
2021-09-17 10:19:02 -07:00
csigs
3a4b19cdbf
LEGO: Merge pull request 45935
...
LEGO: Merge pull request 45935
2021-09-17 04:18:16 -07:00
csigs
dfc6d7c08c
LEGO: Merge pull request 45931
...
LEGO: Merge pull request 45931
2021-09-17 03:37:55 -07:00