Skip to content

salmanm/babel-plugin-reexport

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

84 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

babel-plugin-reexport

Allows re-exporting a node module

Usage

CLI

npx babel ./node_modules/some-package/dir --out-dir ./export-dir --plugins=reexport

Programatically

Typically this is what you'd need to do to make sure that the path of the package you're trying to export is resolved by node.

/* eslint-disable no-console */

const path = require('path');
const { spawn } = require('child_process');

const pkgPath = path.dirname(require.resolve('some-package/dir'));
const babelPath = require.resolve('@babel/cli/bin/babel');
const configPath = path.join(__dirname, '.babelrc');
const outPath = path.join(process.cwd(), 'export-dir');

const babel = spawn(
  babelPath,
  [pkgPath, '--out-dir', outPath, '--config-file', configPath],
  {
    stdio: [process.stdin, process.stdout, process.stderr],
  }
);

Output

The generated output files would contain only the re-export statements from the original package.

For example this

// some-package/dir/MyClass.js

class MyClass {}

export default MyClass

outputs this

export { default } from 'some-package/dir/MyClass'

This plugin supports the following

  • Default exports: export default MyClass -> export { default } from "<path>"

  • Named default exports: export { default } from './MyClass' -> export { default } from "<path>"

  • Named exports: export const Foo = 'bar' -> export * from "<path>"

About

Allows re-exporting a node module

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •