Code view:

A painting is a person's account of this edit as text, recorded independently of the node mapping - a rendering often has several equally defensible answers where the mapping has one. Deletions and insertions carry no position on the opposite side in a painting, so that panel draws no caret for them.

Before

…lines 1–9 unchanged (9 lines)
10
11class D extends ab.C{ }
12
13class E extends A.B.C{ }
14
15
16//// [declareDottedExtend.js]
17var ab = A.B;
18class D extends ab.C {
19}
20class E extends A.B.C {
21}
22

After

…lines 1–10 unchanged (10 lines)
11class D extends ab.C{ }
12
13class E extends A.B.C{ }
14
15
16//// [declareDottedExtend.js]
17"use strict";
18var ab = A.B;
19class D extends ab.C {
20}
21class E extends A.B.C {
22}
23

Before

program
comment "//// [tests/cases/compiler/declareDottedExtend.ts] ////"
comment "//// [declareDottedExtend.ts]"
expression_statement
member_expression
identifier "declare"
ERROR
identifier "namespace"
identifier "A"
. "."
property_identifier "B"
statement_block
{ "{"
export_statement
export "export"
class_declaration
class "class"
identifier "C"
class_body
{ "{"
} "}"
} "}"
ERROR
import "import"
identifier "ab"
= "="
identifier "A"
. "."
identifier "B"
empty_statement
; ";"
class_declaration
class "class"
identifier "D"
class_heritage
extends "extends"
member_expression
identifier "ab"
. "."
property_identifier "C"
class_body
{ "{"
} "}"
class_declaration
class "class"
identifier "E"
class_heritage
extends "extends"
member_expression
member_expression
identifier "A"
. "."
property_identifier "B"
. "."
property_identifier "C"
class_body
{ "{"
} "}"
comment "//// [declareDottedExtend.js]"
variable_declaration
var "var"
variable_declarator
identifier "ab"
= "="
member_expression
identifier "A"
. "."
property_identifier "B"
; ";"
class_declaration
class "class"
identifier "D"
class_heritage
extends "extends"
member_expression
identifier "ab"
. "."
property_identifier "C"
class_body
{ "{"
} "}"
class_declaration
class "class"
identifier "E"
class_heritage
extends "extends"
member_expression
member_expression
identifier "A"
. "."
property_identifier "B"
. "."
property_identifier "C"
class_body
{ "{"
} "}"

After

program
comment "//// [tests/cases/compiler/declareDottedExtend.ts] ////"
comment "//// [declareDottedExtend.ts]"
expression_statement
member_expression
identifier "declare"
ERROR
identifier "namespace"
identifier "A"
. "."
property_identifier "B"
statement_block
{ "{"
export_statement
export "export"
class_declaration
class "class"
identifier "C"
class_body
{ "{"
} "}"
} "}"
ERROR
import "import"
identifier "ab"
= "="
identifier "A"
. "."
identifier "B"
empty_statement
; ";"
class_declaration
class "class"
identifier "D"
class_heritage
extends "extends"
member_expression
identifier "ab"
. "."
property_identifier "C"
class_body
{ "{"
} "}"
class_declaration
class "class"
identifier "E"
class_heritage
extends "extends"
member_expression
member_expression
identifier "A"
. "."
property_identifier "B"
. "."
property_identifier "C"
class_body
{ "{"
} "}"
comment "//// [declareDottedExtend.js]"
expression_statement
string
" "\""
string_fragment "use strict"
" "\""
; ";"
variable_declaration
var "var"
variable_declarator
identifier "ab"
= "="
member_expression
identifier "A"
. "."
property_identifier "B"
; ";"
class_declaration
class "class"
identifier "D"
class_heritage
extends "extends"
member_expression
identifier "ab"
. "."
property_identifier "C"
class_body
{ "{"
} "}"
class_declaration
class "class"
identifier "E"
class_heritage
extends "extends"
member_expression
member_expression
identifier "A"
. "."
property_identifier "B"
. "."
property_identifier "C"
class_body
{ "{"
} "}"