1.0.0 • Published 1 year ago

glob-import-esbuild-plugin v1.0.0

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

Description

This esbuild plugin allows importing multiple modules by using a glob pattern.

Example

Given a project with the following structure:

index.js
a-folder/
├── module-a.js
└── a-subfolder/
    ├── module-b.js
    └── module-c.js

index.js:

import modules from "./a-folder/**/*.js"

console.log(modules)

// It'd print the following.
//
// {
//   "Users/jhondoe/example/a-folder/module-a.js": { aNamedExport, default},
//   "Users/jhondoe/example/a-folder/a-subfolder/module-b.js": { aNamedExport, default},
//   "Users/jhondoe/example/a-folder/a-subfolder/module-c.js": { aNamedExport, default},
// }

The import result is inspired (although not identical) to Vite's glob import.

Usage

esbuild.config.js:

import { build } from 'esbuild';
import globImportPlugin from "glob-import-esbuild-plugin";

await build({
  ...,
  plugins: [globImportPlugin]
})

Prior art

1.0.0

1 year ago