Skip to content

Commit 1d0b37b

Browse files
authored
Merge pull request #22 from rollup-umd/dev
fix(createConfig): getComponentPathLine can handle @svgr/webpack path…
2 parents b288544 + 428cb81 commit 1d0b37b

File tree

1 file changed

+14
-2
lines changed

1 file changed

+14
-2
lines changed

src/createConfig.js

Lines changed: 14 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -443,10 +443,22 @@ export function createConfig(config = {}, options = {}) {
443443
verbose: false,
444444
version: pkg.version,
445445
getComponentPathLine(componentPath) {
446-
let name = basename(componentPath, '.js');
446+
let name = '';
447+
let ext = '';
448+
let key = null;
449+
if (/.js$/.test(componentPath)) {
450+
name = basename(componentPath, '.js');
451+
} else if (/.svg$/.test(componentPath)) {
452+
// we can import svg as react component using @svgr/webpack
453+
name = basename(componentPath, '.svg');
454+
name = `${name[0].toUpperCase()}${name.slice(1)}`;
455+
key = 'ReactComponent';
456+
ext = '.svg';
457+
}
447458
const dir = name === 'index' ? dirname(componentPath) : `${dirname(componentPath)}/${name}`;
448459
name = name === 'index' ? basename(dir) : name;
449-
return `import ${name} from '${pkg.name}/${dir.replace(/^src\//, 'lib/')}';`;
460+
const es6import = key ? `{ ${key} as ${name} }` : name;
461+
return `import ${es6import} from '${pkg.name}/${dir.replace(/^src\//, 'lib/')}${ext}';`;
450462
},
451463
// this is useful for markdown generated with documentationjs
452464
updateExample(props) {

0 commit comments

Comments
 (0)