Built and signed on GitHub ActionsBuilt and signed on GitHub Actions
Built and signed on GitHub Actions
A universal bundler plugin which replaces targeted strings in files.
This package works with Node.js, BunIt is unknown whether this package works with Cloudflare Workers, Deno



JSR Score
100%
Published
2 months ago (0.6.0)
unplugin-replace

🍣 A universal bundler plugin which replaces targeted strings in files, based on @rollup/plugin-replace.
Installation
# npm npm i -D unplugin-replace # jsr npx jsr add -D @unplugin/replace
Vite
// vite.config.ts import Replace from 'unplugin-replace/vite' export default defineConfig({ plugins: [Replace()], })
Rollup
// rollup.config.js import Replace from 'unplugin-replace/rollup' export default { plugins: [Replace()], }
esbuild
// esbuild.config.js import { build } from 'esbuild' build({ plugins: [require('unplugin-replace/esbuild')()], })
Webpack
// webpack.config.js module.exports = { /* ... */ plugins: [require('unplugin-replace/webpack')()], }
Usage
Options
For all options please refer to docs.
This plugin accepts all @rollup/plugin-replace options, and some extra options that are specific to this plugin.
options.values
- Type:
{ [find: string]: Replacement } | ReplaceItem[]
- Default:
[]
type ReplaceItem = { /** Supply a string or RegExp to find what you are looking for. */ find: string | RegExp /** * Can be a string or a function. * - If it's a string, it will replace the substring matched by pattern. A number of special replacement patterns are supported * - If it's a function, it will be invoked for every match and its return value is used as the replacement text. */ replacement: Replacement } type Replacement = string | ((id: string, match: RegExpExecArray) => string)
Comparing with @rollup/plugin-replace
, find
option supports regex pattern.
Example:
Replace({ values: [ { find: /apples/gi, replacement: 'oranges', }, { find: 'process.env.NODE_ENV', replacement: '"production"', }, ], })
Sponsors
License
Built and signed on
GitHub Actions