💻
- Would you like to work on a fix?
How are you using Babel?
@babel/cli
Input code
import { type Foo } from './foo'
function Foo() {}
REPL
Configuration file name
babel.config.json
Configuration
{
"presets": [
[
"@babel/preset-env",
{
"targets": {
"browsers": ["last 2 versions", "ie 11"]
},
"modules": "auto"
}
],
"@babel/preset-react",
"@babel/preset-typescript"
],
"plugins": ["@babel/plugin-proposal-class-properties"],
}
Current and expected behavior
Current behavior
Babel throws an error :
Duplicate declaration "Foo"
1 | import { type Foo } from './foo'
2 |
> 3 | function Foo() {}
| ^^^
4 |
However there is no error if the type Foo is declared in the same file as the function Foo.
Expected behavior
Babel should accept that an imported type and a value can share the same name.
Environment
Babel version: v7.20.5
Node: 16.15.1
Yarn: 1.22.19
OS: Linux 6.0 Arch Linux
Monorepo: yes (yarn workspaces)
Possible solution
No response
Additional context
No response
Reactions are currently unavailable
💻
How are you using Babel?
@babel/cli
Input code
REPL
Configuration file name
babel.config.json
Configuration
{ "presets": [ [ "@babel/preset-env", { "targets": { "browsers": ["last 2 versions", "ie 11"] }, "modules": "auto" } ], "@babel/preset-react", "@babel/preset-typescript" ], "plugins": ["@babel/plugin-proposal-class-properties"], }Current and expected behavior
Current behavior
Babel throws an error :
Duplicate declaration "Foo" 1 | import { type Foo } from './foo' 2 | > 3 | function Foo() {} | ^^^ 4 |However there is no error if the type Foo is declared in the same file as the function Foo.
Expected behavior
Babel should accept that an imported type and a value can share the same name.
Environment
Babel version: v7.20.5
Node: 16.15.1
Yarn: 1.22.19
OS: Linux 6.0 Arch Linux
Monorepo: yes (yarn workspaces)
Possible solution
No response
Additional context
No response