Skip to content

Load files into memory to be parsed & traversed using Babylon/Babel

License

Notifications You must be signed in to change notification settings

babel-utils/babel-file-loader

Repository files navigation

babel-file-loader

Load files into memory to be parsed & traversed using Babylon/Babel

import {loadImportSync} from 'babel-file-loader';

export function plugin() {
  return {
    visitor: {
      ImportDefaultDeclaration(path) {
        let file = loadImportSync(path);

        file.path.traverse({
          ExportDefaultDeclaration() {
            console.log('Found matching export default');
          },
        });
      },
    },
  },
};

API

resolveFilePath{Async,Sync}(path, filePath, resolveOpts)

Resolve a filePath relative to the file a path belongs to. Returns string.

resolveImportFilePath{Async,Sync}(path, resolveOpts)

Resolve an import declaration path to extract a file path. Returns string.

loadFile{Async,Sync}(filePath, parserOpts)

Load and parse a file from a filePath. Returns File.

loadImport{Async,Sync}(path, resolveOpts, parserOpts)

Load and parse a file from an import declaration path. Returns File.

About

Load files into memory to be parsed & traversed using Babylon/Babel

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published