diff --git a/src/compiler/checker.ts b/src/compiler/checker.ts index 6211c9153bf14..e67f9e23e6b10 100644 --- a/src/compiler/checker.ts +++ b/src/compiler/checker.ts @@ -24624,7 +24624,8 @@ namespace ts { if (entityName.kind === SyntaxKind.Identifier) { if (isJSXTagName(entityName) && isJsxIntrinsicIdentifier(entityName)) { - return getIntrinsicTagSymbol(entityName.parent); + const symbol = getIntrinsicTagSymbol(entityName.parent); + return symbol === unknownSymbol ? undefined : symbol; } return resolveEntityName(entityName, SymbolFlags.Value, /*ignoreErrors*/ false, /*dontResolveAlias*/ true); diff --git a/src/services/completions.ts b/src/services/completions.ts index 190f9bc9a3403..2add52cc3dd54 100644 --- a/src/services/completions.ts +++ b/src/services/completions.ts @@ -923,9 +923,8 @@ namespace ts.Completions { } else if (isStartingCloseTag) { const tagName = (contextToken.parent.parent).openingElement.tagName; - const tagSymbol = Debug.assertDefined(typeChecker.getSymbolAtLocation(tagName)); - - if (!typeChecker.isUnknownSymbol(tagSymbol)) { + const tagSymbol = typeChecker.getSymbolAtLocation(tagName); + if (tagSymbol) { symbols = [tagSymbol]; } completionKind = CompletionKind.MemberLike; diff --git a/tests/baselines/reference/conflictMarkerTrivia3.symbols b/tests/baselines/reference/conflictMarkerTrivia3.symbols index 3b9fd368bd5cc..a952f35f93239 100644 --- a/tests/baselines/reference/conflictMarkerTrivia3.symbols +++ b/tests/baselines/reference/conflictMarkerTrivia3.symbols @@ -1,6 +1,5 @@ === tests/cases/compiler/conflictMarkerTrivia3.tsx === const x =
>x : Symbol(x, Decl(conflictMarkerTrivia3.tsx, 0, 5)) ->div : Symbol(unknown) <<<<<<< HEAD diff --git a/tests/baselines/reference/es3-jsx-preserve.symbols b/tests/baselines/reference/es3-jsx-preserve.symbols index 9083c113872ce..b0a523a859785 100644 --- a/tests/baselines/reference/es3-jsx-preserve.symbols +++ b/tests/baselines/reference/es3-jsx-preserve.symbols @@ -4,7 +4,5 @@ const React: any = null; const elem =
; >elem : Symbol(elem, Decl(es3-jsx-preserve.tsx, 2, 5)) ->div : Symbol(unknown) ->div : Symbol(unknown) diff --git a/tests/baselines/reference/es3-jsx-react-native.symbols b/tests/baselines/reference/es3-jsx-react-native.symbols index 6963318a8c5be..7668b89389bd4 100644 --- a/tests/baselines/reference/es3-jsx-react-native.symbols +++ b/tests/baselines/reference/es3-jsx-react-native.symbols @@ -4,7 +4,5 @@ const React: any = null; const elem =
; >elem : Symbol(elem, Decl(es3-jsx-react-native.tsx, 2, 5)) ->div : Symbol(unknown) ->div : Symbol(unknown) diff --git a/tests/baselines/reference/es3-jsx-react.symbols b/tests/baselines/reference/es3-jsx-react.symbols index d5ebc65437cb2..6f5b7824445f3 100644 --- a/tests/baselines/reference/es3-jsx-react.symbols +++ b/tests/baselines/reference/es3-jsx-react.symbols @@ -4,7 +4,5 @@ const React: any = null; const elem =
; >elem : Symbol(elem, Decl(es3-jsx-react.tsx, 2, 5)) ->div : Symbol(unknown) ->div : Symbol(unknown) diff --git a/tests/baselines/reference/importHelpersInTsx.symbols b/tests/baselines/reference/importHelpersInTsx.symbols index 465ce502385f1..efd4f98ed983a 100644 --- a/tests/baselines/reference/importHelpersInTsx.symbols +++ b/tests/baselines/reference/importHelpersInTsx.symbols @@ -7,7 +7,6 @@ declare var o: any; export const x = >x : Symbol(x, Decl(external.tsx, 2, 12)) ->span : Symbol(unknown) >o : Symbol(o, Decl(external.tsx, 1, 11)) === tests/cases/compiler/script.tsx === @@ -19,7 +18,6 @@ declare var o: any; const x = >x : Symbol(x, Decl(script.tsx, 2, 5)) ->span : Symbol(unknown) >o : Symbol(o, Decl(script.tsx, 1, 11)) === tests/cases/compiler/tslib.d.ts === diff --git a/tests/baselines/reference/jsFileCompilationTypeAssertions.symbols b/tests/baselines/reference/jsFileCompilationTypeAssertions.symbols index 9e098c3c07114..643afcfbf66fc 100644 --- a/tests/baselines/reference/jsFileCompilationTypeAssertions.symbols +++ b/tests/baselines/reference/jsFileCompilationTypeAssertions.symbols @@ -2,5 +2,4 @@ 0 as number; var v = undefined; >v : Symbol(v, Decl(a.js, 1, 3)) ->string : Symbol(unknown) diff --git a/tests/baselines/reference/jsxAndTypeAssertion.symbols b/tests/baselines/reference/jsxAndTypeAssertion.symbols index 9342adc0b9bf5..796256a839a5d 100644 --- a/tests/baselines/reference/jsxAndTypeAssertion.symbols +++ b/tests/baselines/reference/jsxAndTypeAssertion.symbols @@ -10,53 +10,23 @@ var x: any; x = { test: }; >x : Symbol(x, Decl(jsxAndTypeAssertion.tsx, 4, 3)) ->any : Symbol(unknown) ->any : Symbol(unknown) ->any : Symbol(unknown) x = ; ->any : Symbol(unknown) ->any : Symbol(unknown) ->any : Symbol(unknown) x = hello {{}} ; ->foo : Symbol(unknown) ->foo : Symbol(unknown) ->foo : Symbol(unknown) x = {}}>hello; ->foo : Symbol(unknown) >test : Symbol(test, Decl(jsxAndTypeAssertion.tsx, 11, 8)) ->foo : Symbol(unknown) ->foo : Symbol(unknown) x = {}}>hello{{}}; ->foo : Symbol(unknown) >test : Symbol(test, Decl(jsxAndTypeAssertion.tsx, 13, 8)) ->foo : Symbol(unknown) ->foo : Symbol(unknown) ->foo : Symbol(unknown) x = x, x = ; ->foo : Symbol(unknown) ->foo : Symbol(unknown) ->foo : Symbol(unknown) {{/foo/.test(x) ? : }} ->foo : Symbol(unknown) ->foo : Symbol(unknown) ->foo : Symbol(unknown) >/foo/.test : Symbol(RegExp.test, Decl(lib.d.ts, --, --)) >test : Symbol(RegExp.test, Decl(lib.d.ts, --, --)) >x : Symbol(x, Decl(jsxAndTypeAssertion.tsx, 4, 3)) ->foo : Symbol(unknown) ->foo : Symbol(unknown) ->foo : Symbol(unknown) ->foo : Symbol(unknown) ->foo : Symbol(unknown) ->foo : Symbol(unknown) ->foo : Symbol(unknown) ->foo : Symbol(unknown) diff --git a/tests/baselines/reference/jsxEmitAttributeWithPreserve.symbols b/tests/baselines/reference/jsxEmitAttributeWithPreserve.symbols index 27cdac0100bdd..efdd69525e83a 100644 --- a/tests/baselines/reference/jsxEmitAttributeWithPreserve.symbols +++ b/tests/baselines/reference/jsxEmitAttributeWithPreserve.symbols @@ -3,6 +3,5 @@ declare var React: any; >React : Symbol(React, Decl(jsxEmitAttributeWithPreserve.tsx, 0, 11)) ->foo : Symbol(unknown) >data : Symbol(data, Decl(jsxEmitAttributeWithPreserve.tsx, 1, 4)) diff --git a/tests/baselines/reference/jsxEmitWithAttributes.symbols b/tests/baselines/reference/jsxEmitWithAttributes.symbols index f20470ebb6b37..00de54d5d0767 100644 --- a/tests/baselines/reference/jsxEmitWithAttributes.symbols +++ b/tests/baselines/reference/jsxEmitWithAttributes.symbols @@ -99,19 +99,15 @@ class A { return [ , ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 11, 8)) ->meta : Symbol(unknown) ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 12, 8)) >c.a!.b : Symbol(b, Decl(test.tsx, 3, 6)) >c.a : Symbol(a, Decl(test.tsx, 2, 8)) >c : Symbol(c, Decl(test.tsx, 2, 3)) >a : Symbol(a, Decl(test.tsx, 2, 8)) >b : Symbol(b, Decl(test.tsx, 3, 6)) ->meta : Symbol(unknown) ]; } diff --git a/tests/baselines/reference/jsxEsprimaFbTestSuite.symbols b/tests/baselines/reference/jsxEsprimaFbTestSuite.symbols index 969071e4350a7..a65412ce06e63 100644 --- a/tests/baselines/reference/jsxEsprimaFbTestSuite.symbols +++ b/tests/baselines/reference/jsxEsprimaFbTestSuite.symbols @@ -21,14 +21,12 @@ declare var props; >props : Symbol(props, Decl(jsxEsprimaFbTestSuite.tsx, 6, 11)) ; ->a : Symbol(unknown) //; Namespace unsuported // {value} ; Namespace unsuported ; ->a : Symbol(unknown) >b : Symbol(b, Decl(jsxEsprimaFbTestSuite.tsx, 14, 2)) >c : Symbol(c, Decl(jsxEsprimaFbTestSuite.tsx, 14, 10)) >d : Symbol(d, Decl(jsxEsprimaFbTestSuite.tsx, 14, 16)) @@ -38,12 +36,9 @@ declare var props; >h : Symbol(h, Decl(jsxEsprimaFbTestSuite.tsx, 14, 71)) ; ->a : Symbol(unknown) >b : Symbol(b, Decl(jsxEsprimaFbTestSuite.tsx, 16, 2)) a : Symbol(unknown) - />; <日本語>; @@ -62,36 +57,21 @@ baz >AbC_def : Symbol(AbC_def, Decl(jsxEsprimaFbTestSuite.tsx, 2, 11)) : } />; ->a : Symbol(unknown) >b : Symbol(b, Decl(jsxEsprimaFbTestSuite.tsx, 28, 2)) >x : Symbol(x, Decl(jsxEsprimaFbTestSuite.tsx, 4, 11)) ->c : Symbol(unknown) ->d : Symbol(unknown) {}; ->a : Symbol(unknown) ->a : Symbol(unknown) {/* this is a comment */}; ->a : Symbol(unknown) ->a : Symbol(unknown)
@test content
; ->div : Symbol(unknown) ->div : Symbol(unknown)

7x invalid-js-identifier
; ->div : Symbol(unknown) ->br : Symbol(unknown) ->div : Symbol(unknown) right=monkeys /> gorillas />; >LeftRight : Symbol(LeftRight, Decl(jsxEsprimaFbTestSuite.tsx, 3, 11)) >left : Symbol(left, Decl(jsxEsprimaFbTestSuite.tsx, 38, 10)) ->a : Symbol(unknown) >right : Symbol(right, Decl(jsxEsprimaFbTestSuite.tsx, 38, 21)) ->b : Symbol(unknown) ->b : Symbol(unknown) ; >a : Symbol(a, Decl(jsxEsprimaFbTestSuite.tsx, 5, 11)) @@ -102,26 +82,19 @@ baz >a : Symbol(a, Decl(jsxEsprimaFbTestSuite.tsx, 5, 11)) (
) < x; ->div : Symbol(unknown) >x : Symbol(x, Decl(jsxEsprimaFbTestSuite.tsx, 4, 11))
; ->div : Symbol(unknown) >props : Symbol(props, Decl(jsxEsprimaFbTestSuite.tsx, 6, 11))
; ->div : Symbol(unknown) >props : Symbol(props, Decl(jsxEsprimaFbTestSuite.tsx, 6, 11)) >post : Symbol(post, Decl(jsxEsprimaFbTestSuite.tsx, 48, 15))
; ->div : Symbol(unknown) >pre : Symbol(pre, Decl(jsxEsprimaFbTestSuite.tsx, 50, 4)) >pre2 : Symbol(pre2, Decl(jsxEsprimaFbTestSuite.tsx, 50, 18)) >props : Symbol(props, Decl(jsxEsprimaFbTestSuite.tsx, 6, 11)) ->div : Symbol(unknown) ; ->a : Symbol(unknown) ->a : Symbol(unknown) diff --git a/tests/baselines/reference/jsxFactoryAndFragment.symbols b/tests/baselines/reference/jsxFactoryAndFragment.symbols index fdea78366262f..e30b5de3e94fe 100644 --- a/tests/baselines/reference/jsxFactoryAndFragment.symbols +++ b/tests/baselines/reference/jsxFactoryAndFragment.symbols @@ -4,10 +4,3 @@ declare var h: any; <>; <>1<>2.12.2; ->span : Symbol(unknown) ->span : Symbol(unknown) ->span : Symbol(unknown) ->span : Symbol(unknown) ->span : Symbol(unknown) ->span : Symbol(unknown) - diff --git a/tests/baselines/reference/jsxFactoryAndReactNamespace.symbols b/tests/baselines/reference/jsxFactoryAndReactNamespace.symbols index f20470ebb6b37..00de54d5d0767 100644 --- a/tests/baselines/reference/jsxFactoryAndReactNamespace.symbols +++ b/tests/baselines/reference/jsxFactoryAndReactNamespace.symbols @@ -99,19 +99,15 @@ class A { return [ , ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 11, 8)) ->meta : Symbol(unknown) ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 12, 8)) >c.a!.b : Symbol(b, Decl(test.tsx, 3, 6)) >c.a : Symbol(a, Decl(test.tsx, 2, 8)) >c : Symbol(c, Decl(test.tsx, 2, 3)) >a : Symbol(a, Decl(test.tsx, 2, 8)) >b : Symbol(b, Decl(test.tsx, 3, 6)) ->meta : Symbol(unknown) ]; } diff --git a/tests/baselines/reference/jsxFactoryIdentifier.symbols b/tests/baselines/reference/jsxFactoryIdentifier.symbols index 7c8ad0c97cff8..d6070f3dbc0b0 100644 --- a/tests/baselines/reference/jsxFactoryIdentifier.symbols +++ b/tests/baselines/reference/jsxFactoryIdentifier.symbols @@ -105,19 +105,15 @@ class A { return [ , ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 11, 8)) ->meta : Symbol(unknown) ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 12, 8)) >c.a!.b : Symbol(b, Decl(test.tsx, 3, 6)) >c.a : Symbol(a, Decl(test.tsx, 2, 8)) >c : Symbol(c, Decl(test.tsx, 2, 3)) >a : Symbol(a, Decl(test.tsx, 2, 8)) >b : Symbol(b, Decl(test.tsx, 3, 6)) ->meta : Symbol(unknown) ]; } diff --git a/tests/baselines/reference/jsxFactoryIdentifierAsParameter.symbols b/tests/baselines/reference/jsxFactoryIdentifierAsParameter.symbols index 069e377d47be2..6e9be879085ff 100644 --- a/tests/baselines/reference/jsxFactoryIdentifierAsParameter.symbols +++ b/tests/baselines/reference/jsxFactoryIdentifierAsParameter.symbols @@ -18,7 +18,6 @@ export class AppComponent { >createElement : Symbol(createElement, Decl(test.tsx, 7, 11)) return
; ->div : Symbol(unknown) } } diff --git a/tests/baselines/reference/jsxFactoryIdentifierWithAbsentParameter.symbols b/tests/baselines/reference/jsxFactoryIdentifierWithAbsentParameter.symbols index e3419ae296234..0383945672a58 100644 --- a/tests/baselines/reference/jsxFactoryIdentifierWithAbsentParameter.symbols +++ b/tests/baselines/reference/jsxFactoryIdentifierWithAbsentParameter.symbols @@ -17,7 +17,6 @@ export class AppComponent { >render : Symbol(AppComponent.render, Decl(test.tsx, 6, 27)) return
; ->div : Symbol(unknown) } } diff --git a/tests/baselines/reference/jsxFactoryNotIdentifierOrQualifiedName.symbols b/tests/baselines/reference/jsxFactoryNotIdentifierOrQualifiedName.symbols index f20470ebb6b37..00de54d5d0767 100644 --- a/tests/baselines/reference/jsxFactoryNotIdentifierOrQualifiedName.symbols +++ b/tests/baselines/reference/jsxFactoryNotIdentifierOrQualifiedName.symbols @@ -99,19 +99,15 @@ class A { return [ , ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 11, 8)) ->meta : Symbol(unknown) ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 12, 8)) >c.a!.b : Symbol(b, Decl(test.tsx, 3, 6)) >c.a : Symbol(a, Decl(test.tsx, 2, 8)) >c : Symbol(c, Decl(test.tsx, 2, 3)) >a : Symbol(a, Decl(test.tsx, 2, 8)) >b : Symbol(b, Decl(test.tsx, 3, 6)) ->meta : Symbol(unknown) ]; } diff --git a/tests/baselines/reference/jsxFactoryNotIdentifierOrQualifiedName2.symbols b/tests/baselines/reference/jsxFactoryNotIdentifierOrQualifiedName2.symbols index f20470ebb6b37..00de54d5d0767 100644 --- a/tests/baselines/reference/jsxFactoryNotIdentifierOrQualifiedName2.symbols +++ b/tests/baselines/reference/jsxFactoryNotIdentifierOrQualifiedName2.symbols @@ -99,19 +99,15 @@ class A { return [ , ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 11, 8)) ->meta : Symbol(unknown) ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 12, 8)) >c.a!.b : Symbol(b, Decl(test.tsx, 3, 6)) >c.a : Symbol(a, Decl(test.tsx, 2, 8)) >c : Symbol(c, Decl(test.tsx, 2, 3)) >a : Symbol(a, Decl(test.tsx, 2, 8)) >b : Symbol(b, Decl(test.tsx, 3, 6)) ->meta : Symbol(unknown) ]; } diff --git a/tests/baselines/reference/jsxFactoryQualifiedName.symbols b/tests/baselines/reference/jsxFactoryQualifiedName.symbols index f20470ebb6b37..00de54d5d0767 100644 --- a/tests/baselines/reference/jsxFactoryQualifiedName.symbols +++ b/tests/baselines/reference/jsxFactoryQualifiedName.symbols @@ -99,19 +99,15 @@ class A { return [ , ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 11, 8)) ->meta : Symbol(unknown) ->meta : Symbol(unknown) >content : Symbol(content, Decl(test.tsx, 12, 8)) >c.a!.b : Symbol(b, Decl(test.tsx, 3, 6)) >c.a : Symbol(a, Decl(test.tsx, 2, 8)) >c : Symbol(c, Decl(test.tsx, 2, 3)) >a : Symbol(a, Decl(test.tsx, 2, 8)) >b : Symbol(b, Decl(test.tsx, 3, 6)) ->meta : Symbol(unknown) ]; } diff --git a/tests/baselines/reference/jsxFactoryQualifiedNameResolutionError.symbols b/tests/baselines/reference/jsxFactoryQualifiedNameResolutionError.symbols index 8f923a506abab..4e1532480c4e9 100644 --- a/tests/baselines/reference/jsxFactoryQualifiedNameResolutionError.symbols +++ b/tests/baselines/reference/jsxFactoryQualifiedNameResolutionError.symbols @@ -18,6 +18,5 @@ export class AppComponent { >createElement : Symbol(createElement, Decl(test.tsx, 7, 11)) return
; ->div : Symbol(unknown) } } diff --git a/tests/baselines/reference/jsxFactoryQualifiedNameWithEs5.symbols b/tests/baselines/reference/jsxFactoryQualifiedNameWithEs5.symbols index e06b8e345e80e..ae57fc7c04235 100644 --- a/tests/baselines/reference/jsxFactoryQualifiedNameWithEs5.symbols +++ b/tests/baselines/reference/jsxFactoryQualifiedNameWithEs5.symbols @@ -16,7 +16,5 @@ class Component { >renderCallback : Symbol(Component.renderCallback, Decl(index.tsx, 5, 17)) return
test
; ->div : Symbol(unknown) ->div : Symbol(unknown) } }; diff --git a/tests/baselines/reference/jsxHash.symbols b/tests/baselines/reference/jsxHash.symbols index ddba4832d2c26..8a6ad0849f079 100644 --- a/tests/baselines/reference/jsxHash.symbols +++ b/tests/baselines/reference/jsxHash.symbols @@ -1,68 +1,34 @@ === tests/cases/compiler/jsxHash.tsx === var t02 = {0}#; >t02 : Symbol(t02, Decl(jsxHash.tsx, 0, 3)) ->a : Symbol(unknown) ->a : Symbol(unknown) var t03 = #{0}; >t03 : Symbol(t03, Decl(jsxHash.tsx, 1, 3)) ->a : Symbol(unknown) ->a : Symbol(unknown) var t04 = #{0}#; >t04 : Symbol(t04, Decl(jsxHash.tsx, 2, 3)) ->a : Symbol(unknown) ->a : Symbol(unknown) var t05 = #; >t05 : Symbol(t05, Decl(jsxHash.tsx, 3, 3)) ->a : Symbol(unknown) ->i : Symbol(unknown) ->i : Symbol(unknown) ->a : Symbol(unknown) var t06 = #; >t06 : Symbol(t06, Decl(jsxHash.tsx, 4, 3)) ->a : Symbol(unknown) ->i : Symbol(unknown) ->i : Symbol(unknown) ->a : Symbol(unknown) var t07 = ##; >t07 : Symbol(t07, Decl(jsxHash.tsx, 5, 3)) ->a : Symbol(unknown) ->i : Symbol(unknown) ->i : Symbol(unknown) ->a : Symbol(unknown) var t08 = #; >t08 : Symbol(t08, Decl(jsxHash.tsx, 6, 3)) ->a : Symbol(unknown) ->i : Symbol(unknown) ->i : Symbol(unknown) ->a : Symbol(unknown) var t09 = ##; >t09 : Symbol(t09, Decl(jsxHash.tsx, 7, 3)) ->a : Symbol(unknown) ->i : Symbol(unknown) ->i : Symbol(unknown) ->a : Symbol(unknown) var t10 = #; >t10 : Symbol(t10, Decl(jsxHash.tsx, 8, 3)) ->a : Symbol(unknown) ->i : Symbol(unknown) ->a : Symbol(unknown) var t11 = #; >t11 : Symbol(t11, Decl(jsxHash.tsx, 9, 3)) ->a : Symbol(unknown) ->i : Symbol(unknown) ->a : Symbol(unknown) var t12 = #; >t12 : Symbol(t12, Decl(jsxHash.tsx, 10, 3)) ->a : Symbol(unknown) ->a : Symbol(unknown) diff --git a/tests/baselines/reference/jsxImportInAttribute.symbols b/tests/baselines/reference/jsxImportInAttribute.symbols index 8f35f213f03c9..bf69796122b1d 100644 --- a/tests/baselines/reference/jsxImportInAttribute.symbols +++ b/tests/baselines/reference/jsxImportInAttribute.symbols @@ -8,7 +8,6 @@ let x = Test; // emit test_1.default >Test : Symbol(Test, Decl(consumer.tsx, 1, 6)) ; // ? ->anything : Symbol(unknown) >attr : Symbol(attr, Decl(consumer.tsx, 4, 9)) >Test : Symbol(Test, Decl(consumer.tsx, 1, 6)) diff --git a/tests/baselines/reference/jsxInExtendsClause.symbols b/tests/baselines/reference/jsxInExtendsClause.symbols index b7f3635bfd987..4853d339d8884 100644 --- a/tests/baselines/reference/jsxInExtendsClause.symbols +++ b/tests/baselines/reference/jsxInExtendsClause.symbols @@ -36,7 +36,5 @@ class Foo extends createComponentClass(() => class extends React.Component<{}, { >render : Symbol((Anonymous class).render, Decl(jsxInExtendsClause.tsx, 6, 84)) return Hello, world!; ->span : Symbol(unknown) ->span : Symbol(unknown) } }) {} diff --git a/tests/baselines/reference/jsxInvalidEsprimaTestSuite.symbols b/tests/baselines/reference/jsxInvalidEsprimaTestSuite.symbols index f2389f2e3e773..3e9c94c680386 100644 --- a/tests/baselines/reference/jsxInvalidEsprimaTestSuite.symbols +++ b/tests/baselines/reference/jsxInvalidEsprimaTestSuite.symbols @@ -5,41 +5,28 @@ declare var React: any; ; === tests/cases/conformance/jsx/2.tsx === ; ->a : Symbol(unknown) - -=== tests/cases/conformance/jsx/3.tsx === +No type information for this code.=== tests/cases/conformance/jsx/3.tsx === <:a />; No type information for this code.=== tests/cases/conformance/jsx/4.tsx === ; ->a : Symbol(unknown) >b : Symbol(b, Decl(4.tsx, 0, 2)) === tests/cases/conformance/jsx/5.tsx === ; ->a : Symbol(unknown) - -=== tests/cases/conformance/jsx/6.tsx === +No type information for this code.=== tests/cases/conformance/jsx/6.tsx === ; ->a : Symbol(unknown) ->b : Symbol(unknown) - -=== tests/cases/conformance/jsx/7.tsx === +No type information for this code.=== tests/cases/conformance/jsx/7.tsx === ; ->a : Symbol(unknown) ->a : Symbol(unknown) - -=== tests/cases/conformance/jsx/21.tsx === +No type information for this code.=== tests/cases/conformance/jsx/21.tsx === ; ->span : Symbol(unknown) >className : Symbol(className, Decl(21.tsx, 0, 5)) >id : Symbol(id, Decl(21.tsx, 0, 20)) === tests/cases/conformance/jsx/22.tsx ===
; ->div : Symbol(unknown) >className : Symbol(className, Decl(22.tsx, 0, 4)) === tests/cases/conformance/jsx/23.tsx ===
; ->div : Symbol(unknown) - -=== tests/cases/conformance/jsx/24.tsx === +No type information for this code. +No type information for this code.=== tests/cases/conformance/jsx/24.tsx ===
stuff
; ->div : Symbol(unknown) ->div : Symbol(unknown) - -=== tests/cases/conformance/jsx/25.tsx === +No type information for this code. +No type information for this code.=== tests/cases/conformance/jsx/25.tsx ===
stuff
; ->div : Symbol(unknown) ->div : Symbol(unknown) - - -=== tests/cases/conformance/jsx/26.tsx === +No type information for this code. +No type information for this code. +No type information for this code.=== tests/cases/conformance/jsx/26.tsx ===
>; ->a : Symbol(unknown) ->a : Symbol(unknown) - -=== tests/cases/conformance/jsx/27.tsx === +No type information for this code. +No type information for this code.=== tests/cases/conformance/jsx/27.tsx === >; ->a : Symbol(unknown) ->a : Symbol(unknown) - -=== tests/cases/conformance/jsx/28.tsx === +No type information for this code. +No type information for this code.=== tests/cases/conformance/jsx/28.tsx === ; ->a : Symbol(unknown) >b : Symbol(b, Decl(28.tsx, 0, 2)) === tests/cases/conformance/jsx/29.tsx === ; ->a : Symbol(unknown) >b : Symbol(b, Decl(29.tsx, 0, 2)) === tests/cases/conformance/jsx/30.tsx === }; ->a : Symbol(unknown) ->a : Symbol(unknown) - -=== tests/cases/conformance/jsx/31.tsx === +No type information for this code. +No type information for this code.=== tests/cases/conformance/jsx/31.tsx === ; ->a : Symbol(unknown) >asdf : Symbol(asdf, Decl(31.tsx, 0, 6)) diff --git a/tests/baselines/reference/jsxMultilineAttributeStringValues.symbols b/tests/baselines/reference/jsxMultilineAttributeStringValues.symbols index e2f1e19edea1a..20c8e5bb9a39e 100644 --- a/tests/baselines/reference/jsxMultilineAttributeStringValues.symbols +++ b/tests/baselines/reference/jsxMultilineAttributeStringValues.symbols @@ -1,19 +1,14 @@ === tests/cases/compiler/jsxMultilineAttributeStringValues.tsx === const a = ; ->input : Symbol(unknown) - const b = ; ->input : Symbol(unknown) diff --git a/tests/baselines/reference/jsxMultilineAttributeValuesReact.symbols b/tests/baselines/reference/jsxMultilineAttributeValuesReact.symbols index 39252554e1675..b015f50199e5a 100644 --- a/tests/baselines/reference/jsxMultilineAttributeValuesReact.symbols +++ b/tests/baselines/reference/jsxMultilineAttributeValuesReact.symbols @@ -4,28 +4,20 @@ declare var React: any; const a = ; ->input : Symbol(unknown) - const b = ; ->input : Symbol(unknown) - const c = ; ->input : Symbol(unknown) diff --git a/tests/baselines/reference/jsxPreserveWithJsInput.symbols b/tests/baselines/reference/jsxPreserveWithJsInput.symbols index 66de8699f33d9..8c435eb0ee58a 100644 --- a/tests/baselines/reference/jsxPreserveWithJsInput.symbols +++ b/tests/baselines/reference/jsxPreserveWithJsInput.symbols @@ -5,14 +5,10 @@ var elemA = 42; === tests/cases/compiler/b.jsx === var elemB = {"test"}; >elemB : Symbol(elemB, Decl(b.jsx, 0, 3)) ->b : Symbol(unknown) ->b : Symbol(unknown) === tests/cases/compiler/c.js === var elemC = {42}; >elemC : Symbol(elemC, Decl(c.js, 0, 3)) ->c : Symbol(unknown) ->c : Symbol(unknown) === tests/cases/compiler/d.ts === var elemD = 42; @@ -21,6 +17,4 @@ var elemD = 42; === tests/cases/compiler/e.tsx === var elemE = {true}; >elemE : Symbol(elemE, Decl(e.tsx, 0, 3)) ->e : Symbol(unknown) ->e : Symbol(unknown) diff --git a/tests/baselines/reference/jsxPropsAsIdentifierNames.symbols b/tests/baselines/reference/jsxPropsAsIdentifierNames.symbols index 15df2efa0c9df..41dc383810dc6 100644 --- a/tests/baselines/reference/jsxPropsAsIdentifierNames.symbols +++ b/tests/baselines/reference/jsxPropsAsIdentifierNames.symbols @@ -18,6 +18,5 @@ declare namespace JSX { } } export default
; ->div : Symbol(unknown) >static : Symbol(static, Decl(index.tsx, 8, 19)) diff --git a/tests/baselines/reference/jsxReactTestSuite.symbols b/tests/baselines/reference/jsxReactTestSuite.symbols index 6ee9f629d4372..dfcc4c70bd801 100644 --- a/tests/baselines/reference/jsxReactTestSuite.symbols +++ b/tests/baselines/reference/jsxReactTestSuite.symbols @@ -36,36 +36,21 @@ declare var hasOwnProperty:any; >hasOwnProperty : Symbol(hasOwnProperty, Decl(jsxReactTestSuite.tsx, 11, 11))
text
; ->div : Symbol(unknown) ->div : Symbol(unknown)
->div : Symbol(unknown) - {this.props.children}
; ->div : Symbol(unknown)
->div : Symbol(unknown) -

->div : Symbol(unknown) ->br : Symbol(unknown) ->div : Symbol(unknown) - {foo}
{bar}
>Component : Symbol(Component, Decl(jsxReactTestSuite.tsx, 1, 11)) >foo : Symbol(foo, Decl(jsxReactTestSuite.tsx, 6, 11)) ->br : Symbol(unknown) >bar : Symbol(bar, Decl(jsxReactTestSuite.tsx, 7, 11)) >Component : Symbol(Component, Decl(jsxReactTestSuite.tsx, 1, 11))
->br : Symbol(unknown) -
; ->div : Symbol(unknown) @@ -88,8 +73,6 @@ var x = >x : Symbol(x, Decl(jsxReactTestSuite.tsx, 9, 11), Decl(jsxReactTestSuite.tsx, 34, 3))
div : Symbol(unknown) - attr1={ >attr1 : Symbol(attr1, Decl(jsxReactTestSuite.tsx, 35, 6)) @@ -113,64 +96,41 @@ var x = >attr4 : Symbol(attr4, Decl(jsxReactTestSuite.tsx, 48, 5))
; ->div : Symbol(unknown) (
->div : Symbol(unknown) - {/* A comment at the beginning */} {/* A second comment at the beginning */} ->span : Symbol(unknown) - {/* A nested comment */} ->span : Symbol(unknown) - {/* A sandwiched comment */}
->br : Symbol(unknown) - {/* A comment at the end */} {/* A second comment at the end */}
->div : Symbol(unknown) - ); (
div : Symbol(unknown) - /* a multi-line comment */ attr1="foo"> >attr1 : Symbol(attr1, Decl(jsxReactTestSuite.tsx, 67, 6)) span : Symbol(unknown) - attr2="bar" >attr2 : Symbol(attr2, Decl(jsxReactTestSuite.tsx, 71, 9)) />
->div : Symbol(unknown) - );
 
; ->div : Symbol(unknown) ->div : Symbol(unknown)
 
; ->div : Symbol(unknown) ->div : Symbol(unknown) testing; ->hasOwnProperty : Symbol(unknown) ->hasOwnProperty : Symbol(unknown) ; >Component : Symbol(Component, Decl(jsxReactTestSuite.tsx, 1, 11)) @@ -197,7 +157,6 @@ var x = >sound : Symbol(sound, Decl(jsxReactTestSuite.tsx, 93, 19)) ; ->font-face : Symbol(unknown) ; >Component : Symbol(Component, Decl(jsxReactTestSuite.tsx, 1, 11)) @@ -205,7 +164,6 @@ var x = >y : Symbol(y, Decl(jsxReactTestSuite.tsx, 8, 11)) ; ->x-component : Symbol(unknown) ; >Component : Symbol(Component, Decl(jsxReactTestSuite.tsx, 1, 11)) diff --git a/tests/baselines/reference/keywordInJsxIdentifier.symbols b/tests/baselines/reference/keywordInJsxIdentifier.symbols index b56f0af3285be..d3125bccacd16 100644 --- a/tests/baselines/reference/keywordInJsxIdentifier.symbols +++ b/tests/baselines/reference/keywordInJsxIdentifier.symbols @@ -3,18 +3,14 @@ declare var React: any; >React : Symbol(React, Decl(keywordInJsxIdentifier.tsx, 0, 11)) ; ->foo : Symbol(unknown) >class-id : Symbol(class-id, Decl(keywordInJsxIdentifier.tsx, 1, 4)) ; ->foo : Symbol(unknown) >class : Symbol(class, Decl(keywordInJsxIdentifier.tsx, 2, 4)) ; ->foo : Symbol(unknown) >class-id : Symbol(class-id, Decl(keywordInJsxIdentifier.tsx, 3, 4)) ; ->foo : Symbol(unknown) >class : Symbol(class, Decl(keywordInJsxIdentifier.tsx, 4, 4)) diff --git a/tests/baselines/reference/reactNamespaceImportPresevation.symbols b/tests/baselines/reference/reactNamespaceImportPresevation.symbols index 0a1d51843effd..821d127fe7957 100644 --- a/tests/baselines/reference/reactNamespaceImportPresevation.symbols +++ b/tests/baselines/reference/reactNamespaceImportPresevation.symbols @@ -17,6 +17,5 @@ declare var foo: any; >foo : Symbol(foo, Decl(test.tsx, 1, 11)) ; ->foo : Symbol(unknown) >data : Symbol(data, Decl(test.tsx, 3, 4)) diff --git a/tests/baselines/reference/reactNamespaceInvalidInput.symbols b/tests/baselines/reference/reactNamespaceInvalidInput.symbols index ae08a968e8254..4e8689a2dfe64 100644 --- a/tests/baselines/reference/reactNamespaceInvalidInput.symbols +++ b/tests/baselines/reference/reactNamespaceInvalidInput.symbols @@ -1,5 +1,4 @@ === tests/cases/compiler/reactNamespaceInvalidInput.tsx === ; ->foo : Symbol(unknown) >data : Symbol(data, Decl(reactNamespaceInvalidInput.tsx, 0, 4)) diff --git a/tests/baselines/reference/reactNamespaceJSXEmit.symbols b/tests/baselines/reference/reactNamespaceJSXEmit.symbols index ff52f0bff8737..f30915ba4b446 100644 --- a/tests/baselines/reference/reactNamespaceJSXEmit.symbols +++ b/tests/baselines/reference/reactNamespaceJSXEmit.symbols @@ -15,7 +15,6 @@ declare var x: any; >x : Symbol(x, Decl(reactNamespaceJSXEmit.tsx, 4, 11)) ; ->foo : Symbol(unknown) >data : Symbol(data, Decl(reactNamespaceJSXEmit.tsx, 6, 4)) ; @@ -24,8 +23,6 @@ declare var x: any; >x : Symbol(x, Decl(reactNamespaceJSXEmit.tsx, 4, 11)) ; ->x-component : Symbol(unknown) - ; >Bar : Symbol(Bar, Decl(reactNamespaceJSXEmit.tsx, 2, 11)) >x : Symbol(x, Decl(reactNamespaceJSXEmit.tsx, 4, 11)) diff --git a/tests/baselines/reference/reactNamespaceMissingDeclaration.symbols b/tests/baselines/reference/reactNamespaceMissingDeclaration.symbols index aee6c84b915b1..c5a6e44603b18 100644 --- a/tests/baselines/reference/reactNamespaceMissingDeclaration.symbols +++ b/tests/baselines/reference/reactNamespaceMissingDeclaration.symbols @@ -1,6 +1,5 @@ === tests/cases/compiler/reactNamespaceMissingDeclaration.tsx === // Error myReactLib not declared ->foo : Symbol(unknown) >data : Symbol(data, Decl(reactNamespaceMissingDeclaration.tsx, 1, 4)) diff --git a/tests/baselines/reference/spreadIntersectionJsx.symbols b/tests/baselines/reference/spreadIntersectionJsx.symbols index 24d7c90be1f05..6bc527240eb14 100644 --- a/tests/baselines/reference/spreadIntersectionJsx.symbols +++ b/tests/baselines/reference/spreadIntersectionJsx.symbols @@ -17,6 +17,5 @@ let intersected: A & C; let element =
; >element : Symbol(element, Decl(spreadIntersectionJsx.tsx, 4, 3)) ->div : Symbol(unknown) >intersected : Symbol(intersected, Decl(spreadIntersectionJsx.tsx, 3, 3)) diff --git a/tests/baselines/reference/tsxCorrectlyParseLessThanComparison1.symbols b/tests/baselines/reference/tsxCorrectlyParseLessThanComparison1.symbols index d00b4ca115ff2..0eb7abdc12400 100644 --- a/tests/baselines/reference/tsxCorrectlyParseLessThanComparison1.symbols +++ b/tests/baselines/reference/tsxCorrectlyParseLessThanComparison1.symbols @@ -48,8 +48,6 @@ export class ShortDetails extends React.Component<{ id: number }, {}> { >id : Symbol(id, Decl(tsxCorrectlyParseLessThanComparison1.tsx, 12, 51)) return (
); ->div : Symbol(unknown) ->div : Symbol(unknown) } } } diff --git a/tests/baselines/reference/tsxDynamicTagName2.symbols b/tests/baselines/reference/tsxDynamicTagName2.symbols index f7df6993ea804..f6af99c20b03c 100644 --- a/tests/baselines/reference/tsxDynamicTagName2.symbols +++ b/tests/baselines/reference/tsxDynamicTagName2.symbols @@ -17,6 +17,3 @@ var customTag = "h1"; >customTag : Symbol(customTag, Decl(tsxDynamicTagName2.tsx, 7, 3)) Hello World // This should be an error. The lower-case is look up as an intrinsic element name ->customTag : Symbol(unknown) ->customTag : Symbol(unknown) - diff --git a/tests/baselines/reference/tsxElementResolution1.symbols b/tests/baselines/reference/tsxElementResolution1.symbols index 6148f41b1972e..2dc52883ef3bf 100644 --- a/tests/baselines/reference/tsxElementResolution1.symbols +++ b/tests/baselines/reference/tsxElementResolution1.symbols @@ -19,5 +19,3 @@ declare module JSX { // Fail ; ->span : Symbol(unknown) - diff --git a/tests/baselines/reference/tsxElementResolution13.symbols b/tests/baselines/reference/tsxElementResolution13.symbols index e306faeaaf261..ae37dde20487a 100644 --- a/tests/baselines/reference/tsxElementResolution13.symbols +++ b/tests/baselines/reference/tsxElementResolution13.symbols @@ -22,6 +22,5 @@ var obj1: Obj1; >Obj1 : Symbol(Obj1, Decl(file.tsx, 3, 1)) ; // Error ->obj1 : Symbol(unknown) >x : Symbol(x, Decl(file.tsx, 9, 5)) diff --git a/tests/baselines/reference/tsxElementResolution14.symbols b/tests/baselines/reference/tsxElementResolution14.symbols index e1a17239e85be..fe6ffa2bf958f 100644 --- a/tests/baselines/reference/tsxElementResolution14.symbols +++ b/tests/baselines/reference/tsxElementResolution14.symbols @@ -17,6 +17,5 @@ var obj1: Obj1; >Obj1 : Symbol(Obj1, Decl(file.tsx, 2, 1)) ; // OK ->obj1 : Symbol(unknown) >x : Symbol(x, Decl(file.tsx, 8, 5)) diff --git a/tests/baselines/reference/tsxElementResolution16.symbols b/tests/baselines/reference/tsxElementResolution16.symbols index e934148a38aec..994b849ff1276 100644 --- a/tests/baselines/reference/tsxElementResolution16.symbols +++ b/tests/baselines/reference/tsxElementResolution16.symbols @@ -14,6 +14,5 @@ var obj1: Obj1; >Obj1 : Symbol(Obj1, Decl(file.tsx, 1, 1)) ; // Error (JSX.Element is implicit any) ->obj1 : Symbol(unknown) >x : Symbol(x, Decl(file.tsx, 7, 5)) diff --git a/tests/baselines/reference/tsxElementResolution18.symbols b/tests/baselines/reference/tsxElementResolution18.symbols index 3de0f50635fca..332cf8412a900 100644 --- a/tests/baselines/reference/tsxElementResolution18.symbols +++ b/tests/baselines/reference/tsxElementResolution18.symbols @@ -8,6 +8,5 @@ declare module JSX { // Error under implicit any
; ->div : Symbol(unknown) >n : Symbol(n, Decl(file1.tsx, 5, 4)) diff --git a/tests/baselines/reference/tsxElementResolution5.symbols b/tests/baselines/reference/tsxElementResolution5.symbols index a788a51fc65e8..3ab219432d7b4 100644 --- a/tests/baselines/reference/tsxElementResolution5.symbols +++ b/tests/baselines/reference/tsxElementResolution5.symbols @@ -8,6 +8,5 @@ declare module JSX { // OK, but implicit any
; ->div : Symbol(unknown) >n : Symbol(n, Decl(file1.tsx, 5, 4)) diff --git a/tests/baselines/reference/tsxElementResolution6.symbols b/tests/baselines/reference/tsxElementResolution6.symbols index c4efec3b41b9d..f4218034434a1 100644 --- a/tests/baselines/reference/tsxElementResolution6.symbols +++ b/tests/baselines/reference/tsxElementResolution6.symbols @@ -14,6 +14,5 @@ var div: any; // Still an error
; ->div : Symbol(unknown) >n : Symbol(n, Decl(file.tsx, 7, 4)) diff --git a/tests/baselines/reference/tsxErrorRecovery1.symbols b/tests/baselines/reference/tsxErrorRecovery1.symbols index e814e41428b86..de6bce7d278c2 100644 --- a/tests/baselines/reference/tsxErrorRecovery1.symbols +++ b/tests/baselines/reference/tsxErrorRecovery1.symbols @@ -8,7 +8,6 @@ function foo() { var x =
{
>x : Symbol(x, Decl(file.tsx, 3, 4)) ->div : Symbol(unknown) } // Shouldn't see any errors down here var y = { a: 1 }; diff --git a/tests/baselines/reference/tsxErrorRecovery2.symbols b/tests/baselines/reference/tsxErrorRecovery2.symbols index 425098ff12dc5..725be76e6d11f 100644 --- a/tests/baselines/reference/tsxErrorRecovery2.symbols +++ b/tests/baselines/reference/tsxErrorRecovery2.symbols @@ -4,18 +4,9 @@ declare namespace JSX { interface Element { } } >Element : Symbol(Element, Decl(file1.tsx, 0, 23))
->div : Symbol(unknown) ->div : Symbol(unknown) -
->div : Symbol(unknown) ->div : Symbol(unknown) === tests/cases/conformance/jsx/file2.tsx === var x =
>x : Symbol(x, Decl(file2.tsx, 0, 3)) ->div : Symbol(unknown) ->div : Symbol(unknown) ->div : Symbol(unknown) ->div : Symbol(unknown) diff --git a/tests/baselines/reference/tsxErrorRecovery3.symbols b/tests/baselines/reference/tsxErrorRecovery3.symbols index 425098ff12dc5..725be76e6d11f 100644 --- a/tests/baselines/reference/tsxErrorRecovery3.symbols +++ b/tests/baselines/reference/tsxErrorRecovery3.symbols @@ -4,18 +4,9 @@ declare namespace JSX { interface Element { } } >Element : Symbol(Element, Decl(file1.tsx, 0, 23))
->div : Symbol(unknown) ->div : Symbol(unknown) -
->div : Symbol(unknown) ->div : Symbol(unknown) === tests/cases/conformance/jsx/file2.tsx === var x =
>x : Symbol(x, Decl(file2.tsx, 0, 3)) ->div : Symbol(unknown) ->div : Symbol(unknown) ->div : Symbol(unknown) ->div : Symbol(unknown) diff --git a/tests/baselines/reference/tsxExternalModuleEmit1.symbols b/tests/baselines/reference/tsxExternalModuleEmit1.symbols index 39c85c371abf2..a70f1f70781bd 100644 --- a/tests/baselines/reference/tsxExternalModuleEmit1.symbols +++ b/tests/baselines/reference/tsxExternalModuleEmit1.symbols @@ -45,8 +45,6 @@ export class Button extends React.Component { >render : Symbol(Button.render, Decl(button.tsx, 2, 55)) return ; ->button : Symbol(unknown) ->button : Symbol(unknown) } } diff --git a/tests/baselines/reference/tsxInferenceShouldNotYieldAnyOnUnions.symbols b/tests/baselines/reference/tsxInferenceShouldNotYieldAnyOnUnions.symbols index b6163a36df641..37580994a15e8 100644 --- a/tests/baselines/reference/tsxInferenceShouldNotYieldAnyOnUnions.symbols +++ b/tests/baselines/reference/tsxInferenceShouldNotYieldAnyOnUnions.symbols @@ -44,7 +44,6 @@ function ShouldInferFromData(props: Props): JSX.Element { >Element : Symbol(JSX.Element, Decl(index.tsx, 0, 15)) return
; ->div : Symbol(unknown) } // Sanity check: function call equivalent versions work fine diff --git a/tests/baselines/reference/tsxNoJsx.symbols b/tests/baselines/reference/tsxNoJsx.symbols index 2bf187c99cd04..65a397961e7e8 100644 --- a/tests/baselines/reference/tsxNoJsx.symbols +++ b/tests/baselines/reference/tsxNoJsx.symbols @@ -1,4 +1,4 @@ === tests/cases/conformance/jsx/tsxNoJsx.tsx === ; ->nope : Symbol(unknown) - +No type information for this code. +No type information for this code. \ No newline at end of file diff --git a/tests/baselines/reference/tsxReactEmitNesting.symbols b/tests/baselines/reference/tsxReactEmitNesting.symbols index 9972436ac7311..e6d19f3ea6272 100644 --- a/tests/baselines/reference/tsxReactEmitNesting.symbols +++ b/tests/baselines/reference/tsxReactEmitNesting.symbols @@ -15,19 +15,13 @@ let render = (ctrl, model) => >model : Symbol(model, Decl(file.tsx, 5, 19))
->section : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 6, 12))
->header : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 7, 15))

todos <x>

->h1 : Symbol(unknown) ->h1 : Symbol(unknown) - ->input : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 9, 18)) >autofocus : Symbol(autofocus, Decl(file.tsx, 9, 35)) >autocomplete : Symbol(autocomplete, Decl(file.tsx, 9, 45)) @@ -40,10 +34,7 @@ let render = (ctrl, model) => >model : Symbol(model, Decl(file.tsx, 5, 19))
->header : Symbol(unknown) -
->section : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 11, 16)) >style : Symbol(style, Decl(file.tsx, 11, 29)) >display : Symbol(display, Decl(file.tsx, 11, 38)) @@ -51,7 +42,6 @@ let render = (ctrl, model) => >model : Symbol(model, Decl(file.tsx, 5, 19)) ->input : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 12, 18)) >type : Symbol(type, Decl(file.tsx, 12, 37)) >onChange : Symbol(onChange, Decl(file.tsx, 12, 53)) @@ -59,7 +49,6 @@ let render = (ctrl, model) => >ctrl : Symbol(ctrl, Decl(file.tsx, 5, 14))
    ->ul : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 13, 15)) {model.filteredTodos.map((todo) => @@ -67,7 +56,6 @@ let render = (ctrl, model) => >todo : Symbol(todo, Decl(file.tsx, 14, 42))
  • ->li : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 15, 23)) >todo : Symbol(todo, Decl(file.tsx, 15, 32)) >completed : Symbol(completed, Decl(file.tsx, 15, 43)) @@ -77,62 +65,42 @@ let render = (ctrl, model) => >model : Symbol(model, Decl(file.tsx, 5, 19))
    ->div : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 16, 28)) {(!todo.editable) ? >todo : Symbol(todo, Decl(file.tsx, 14, 42)) ->input : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 18, 38)) >type : Symbol(type, Decl(file.tsx, 18, 53)) ->input : Symbol(unknown) : null } ->label : Symbol(unknown) >onDoubleClick : Symbol(onDoubleClick, Decl(file.tsx, 21, 34)) >ctrl : Symbol(ctrl, Decl(file.tsx, 5, 14)) >todo : Symbol(todo, Decl(file.tsx, 14, 42)) >todo : Symbol(todo, Decl(file.tsx, 14, 42)) ->label : Symbol(unknown) ->button : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 22, 35)) >onClick : Symbol(onClick, Decl(file.tsx, 22, 51)) >ctrl : Symbol(ctrl, Decl(file.tsx, 5, 14)) >ctrl : Symbol(ctrl, Decl(file.tsx, 5, 14)) >todo : Symbol(todo, Decl(file.tsx, 14, 42)) ->button : Symbol(unknown)
    ->div : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 23, 32))
    ->div : Symbol(unknown) >class : Symbol(class, Decl(file.tsx, 24, 36))
    ->div : Symbol(unknown) -
    ->div : Symbol(unknown) -
  • ->li : Symbol(unknown) - )}
->ul : Symbol(unknown) -
->section : Symbol(unknown) -
->section : Symbol(unknown) diff --git a/tests/baselines/reference/tsxSpreadAttributesResolution17.symbols b/tests/baselines/reference/tsxSpreadAttributesResolution17.symbols index 6f346ccdcb1e1..96dfe32abb00b 100644 --- a/tests/baselines/reference/tsxSpreadAttributesResolution17.symbols +++ b/tests/baselines/reference/tsxSpreadAttributesResolution17.symbols @@ -24,8 +24,6 @@ export class Empty extends React.Component<{}, {}> { >render : Symbol(Empty.render, Decl(file.tsx, 8, 52)) return
Hello
; ->div : Symbol(unknown) ->div : Symbol(unknown) } } diff --git a/tests/baselines/reference/tsxTypeErrors.symbols b/tests/baselines/reference/tsxTypeErrors.symbols index f40faf52b194b..a58529c525859 100644 --- a/tests/baselines/reference/tsxTypeErrors.symbols +++ b/tests/baselines/reference/tsxTypeErrors.symbols @@ -2,13 +2,11 @@ // A built-in element (OK) var a1 =
; >a1 : Symbol(a1, Decl(tsxTypeErrors.tsx, 1, 3)) ->div : Symbol(unknown) >id : Symbol(id, Decl(tsxTypeErrors.tsx, 1, 13)) // A built-in element with a mistyped property (error) var a2 = >a2 : Symbol(a2, Decl(tsxTypeErrors.tsx, 4, 3)) ->img : Symbol(unknown) >srce : Symbol(srce, Decl(tsxTypeErrors.tsx, 4, 13)) // A built-in element with a badly-typed attribute value (error) @@ -18,14 +16,12 @@ var thing = { oops: 100 }; var a3 =
>a3 : Symbol(a3, Decl(tsxTypeErrors.tsx, 8, 3)) ->div : Symbol(unknown) >id : Symbol(id, Decl(tsxTypeErrors.tsx, 8, 13)) >thing : Symbol(thing, Decl(tsxTypeErrors.tsx, 7, 3)) // Mistyped html name (error) var e1 = >e1 : Symbol(e1, Decl(tsxTypeErrors.tsx, 11, 3)) ->imag : Symbol(unknown) >src : Symbol(src, Decl(tsxTypeErrors.tsx, 11, 14)) // A custom type diff --git a/tests/baselines/reference/unusedImports13.symbols b/tests/baselines/reference/unusedImports13.symbols index 2b9da078e4482..46949555e7358 100644 --- a/tests/baselines/reference/unusedImports13.symbols +++ b/tests/baselines/reference/unusedImports13.symbols @@ -4,8 +4,6 @@ import React = require("react"); export const FooComponent =
>FooComponent : Symbol(FooComponent, Decl(foo.tsx, 2, 12)) ->div : Symbol(unknown) ->div : Symbol(unknown) === tests/cases/compiler/node_modules/@types/react/index.d.ts === export = React; diff --git a/tests/baselines/reference/unusedImports14.symbols b/tests/baselines/reference/unusedImports14.symbols index 2b9da078e4482..46949555e7358 100644 --- a/tests/baselines/reference/unusedImports14.symbols +++ b/tests/baselines/reference/unusedImports14.symbols @@ -4,8 +4,6 @@ import React = require("react"); export const FooComponent =
>FooComponent : Symbol(FooComponent, Decl(foo.tsx, 2, 12)) ->div : Symbol(unknown) ->div : Symbol(unknown) === tests/cases/compiler/node_modules/@types/react/index.d.ts === export = React; diff --git a/tests/baselines/reference/unusedImports15.symbols b/tests/baselines/reference/unusedImports15.symbols index e163b1ad4596b..2aa411467381b 100644 --- a/tests/baselines/reference/unusedImports15.symbols +++ b/tests/baselines/reference/unusedImports15.symbols @@ -4,8 +4,6 @@ import Element = require("react"); export const FooComponent =
>FooComponent : Symbol(FooComponent, Decl(foo.tsx, 2, 12)) ->div : Symbol(unknown) ->div : Symbol(unknown) === tests/cases/compiler/node_modules/@types/react/index.d.ts === export = React; diff --git a/tests/baselines/reference/unusedImports16.symbols b/tests/baselines/reference/unusedImports16.symbols index e163b1ad4596b..2aa411467381b 100644 --- a/tests/baselines/reference/unusedImports16.symbols +++ b/tests/baselines/reference/unusedImports16.symbols @@ -4,8 +4,6 @@ import Element = require("react"); export const FooComponent =
>FooComponent : Symbol(FooComponent, Decl(foo.tsx, 2, 12)) ->div : Symbol(unknown) ->div : Symbol(unknown) === tests/cases/compiler/node_modules/@types/react/index.d.ts === export = React; diff --git a/tests/cases/fourslash/extract-method_jsxIntrinsicTagSymbol.ts b/tests/cases/fourslash/extract-method_jsxIntrinsicTagSymbol.ts new file mode 100644 index 0000000000000..55fd74d4243a5 --- /dev/null +++ b/tests/cases/fourslash/extract-method_jsxIntrinsicTagSymbol.ts @@ -0,0 +1,10 @@ +/// + +// @Filename: /a.tsx + +// Test that we don't get `unknownSymbol`, which causes a crash when we try getting its declarations. + +/////*a*/
/*b*/ + +goTo.select("a", "b"); +verify.refactorAvailable("Extract Symbol", "constant_scope_0");