mirror of
https://github.com/swc-project/swc.git
synced 2024-10-04 20:28:43 +03:00
fix(es/typescript): Treat export default declarations as declarations (#7017)
**Related issue:** - Closes https://github.com/swc-project/swc/issues/6953.
This commit is contained in:
parent
66247f0c49
commit
34f9ad3778
@ -1581,6 +1581,23 @@ where
|
||||
self.non_top_level = old;
|
||||
}
|
||||
|
||||
fn visit_default_decl(&mut self, decl: &DefaultDecl) {
|
||||
decl.visit_children_with(self);
|
||||
match decl {
|
||||
DefaultDecl::Class(d) => {
|
||||
if let Some(id) = &d.ident {
|
||||
self.store(id.sym.clone(), id.span.ctxt, true);
|
||||
}
|
||||
}
|
||||
DefaultDecl::Fn(d) => {
|
||||
if let Some(id) = &d.ident {
|
||||
self.store(id.sym.clone(), id.span.ctxt, true);
|
||||
}
|
||||
}
|
||||
_ => {}
|
||||
}
|
||||
}
|
||||
|
||||
fn visit_expr(&mut self, n: &Expr) {
|
||||
let old = self.in_var_pat;
|
||||
self.in_var_pat = false;
|
||||
|
@ -0,0 +1,15 @@
|
||||
import { Scope } from "../../scopes";
|
||||
import {
|
||||
AnyNode,
|
||||
TSUnknownKeywordTypeAnnotation,
|
||||
tsUnknownKeywordTypeAnnotation,
|
||||
} from "@internal/ast";
|
||||
|
||||
export default function TSUnknownKeywordTypeAnnotation(
|
||||
node: AnyNode,
|
||||
scope: Scope,
|
||||
) {
|
||||
node = tsUnknownKeywordTypeAnnotation.assert(node);
|
||||
scope;
|
||||
throw new Error("unimplemented");
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
import { tsUnknownKeywordTypeAnnotation } from "@internal/ast";
|
||||
export default function TSUnknownKeywordTypeAnnotation(node, scope) {
|
||||
node = tsUnknownKeywordTypeAnnotation.assert(node);
|
||||
scope;
|
||||
throw new Error("unimplemented");
|
||||
}
|
Loading…
Reference in New Issue
Block a user