diff --git a/src/analyze.ts b/src/analyze.ts index 2172a57..d1bc2bc 100644 --- a/src/analyze.ts +++ b/src/analyze.ts @@ -99,7 +99,7 @@ export function findExports (code: string): ESMExport[] { // Find named exports const namedExports = matchAll(EXPORT_NAMED_RE, code, { type: 'named' }) for (const namedExport of namedExports) { - namedExport.names = namedExport.exports.split(/\s*,\s*/g).map(name => name.replace(/^.*?\sas\s/, '').trim()) + namedExport.names = namedExport.exports.split(/\s*,\s*/g).map(name => name.replace(/^.*?\sas\s/, '').trim()).filter(name => !!name) } // Find export default diff --git a/test/exports.test.ts b/test/exports.test.ts index c74a21d..e12ec93 100644 --- a/test/exports.test.ts +++ b/test/exports.test.ts @@ -8,6 +8,7 @@ describe('findExports', () => { 'export { useB, _useC as useC }': { names: ['useB', 'useC'], type: 'named' }, 'export default foo': { type: 'default', name: 'default', names: ['default'] }, 'export { default } from "./other"': { type: 'default', name: 'default', names: ['default'], specifier: './other' }, + 'export { default , } from "./other"': { type: 'default', name: 'default', names: ['default'], specifier: './other' }, 'export async function foo ()': { type: 'declaration', names: ['foo'] }, 'export const $foo = () => {}': { type: 'declaration', names: ['$foo'] }, 'export { foo as default }': { type: 'default', name: 'default', names: ['default'] },