/unplugin-glob

Imports or exports files using glob match for ES Module.

Primary LanguageTypeScriptMIT LicenseMIT

unplugin-glob npm

Unit Test

Imports or exports files using glob match for ES Module.

Features

  • ⚡️ Supports Vite, Webpack, Vue CLI, Rollup, esbuild and more, powered by unplugin.
  • 🦾 Full TypeScript support.

Installation

npm i unplugin-glob
Vite
// vite.config.ts
import UnpluginGlob from 'unplugin-glob/vite'

export default defineConfig({
  plugins: [UnpluginGlob()],
})


Rollup
// rollup.config.js
import UnpluginGlob from 'unplugin-glob/rollup'

export default {
  plugins: [UnpluginGlob()],
}


esbuild
// esbuild.config.js
import { build } from 'esbuild'

build({
  plugins: [require('unplugin-glob/esbuild')()],
})


Webpack
// webpack.config.js
module.exports = {
  /* ... */
  plugins: [require('unplugin-glob/webpack')()],
}


Vue CLI
// vue.config.js
module.exports = {
  configureWebpack: {
    plugins: [require('unplugin-glob/webpack')()],
  },
}


Usage

// To avoid type declaration conflicts, a name is needed for each directory.
import * as all from 'glob:name:./some-path/*.js'

console.log(all.sth)

export * from 'glob:name:./some-path/**'

Configuration

Glob({
  // targets to resolve
  include: [/\.m?[jt]sx?$/],
  exclude: options.exclude || [/\.d\.ts$/],

  root: process.cwd(),

  // Filepath to generate corresponding .d.ts files.
  // Defaults to both './glob.d.ts' and 'glob-global.d.ts' when provided `true`.
  // Set `false` to disable.
  dts: false, // boolean or string
})

Sponsors

License

MIT License © 2022-PRESENT 三咲智子