replace-text-in-bundle-plugin
v1.0.3
Published
A webpack plugin for dynamically replacing text patterns in bundle files during the build process.
Downloads
32
Maintainers
Keywords
Readme
replace-text-in-bundle-plugin
A webpack plugin for replacing text in bundle files.
Installation
Install the plugin using npm:
npm i --save-dev replace-text-in-bundle-plugin
Usage
Import the plugin in your webpack configuration file:
const ReplaceTextInBundlePlugin = require('replace-text-in-bundle-plugin');
Add an instance of the plugin to the
plugins
array in your webpack configuration:plugins: [ new ReplaceTextInBundlePlugin([ { bundle: 'main.bundle.js', from: '"${temp_base_url}"', to: `window.site_base_url + "/some/path/to/"`, }, { bundle: 'style.css', from: '${temp_base_url}', to: '', } ]) ]
The plugin takes an array of objects as an argument. Each object represents a replacement configuration. The properties of the configuration object are as follows:
bundle
: The name of the generated bundle file to modify.from
: The text pattern to search for in the bundle.to
: The replacement text to use.
In the above example, the plugin will replace
"${temp_base_url}"
withwindow.site_base_url + "/some/path/to/"
in themain.bundle.js
file, and${temp_base_url}
with an empty string in thestyle.css
file.
Use Case
This plugin is useful when you need to dynamically replace specific text patterns in your bundle files during the webpack build process. For example, you may want to replace placeholder URLs or environment-specific values with actual values.
In the provided usage example, the plugin replaces the ${temp_base_url}
placeholder with a custom URL defined in the window.site_base_url
variable, concatenated with the value of /some/path/to/
. This allows you to dynamically set the base URL for your application or replace any other placeholders as needed.
Note: Make sure that the specified text patterns (from
) exist in the bundle files you're targeting, otherwise the plugin won't make any changes.
License
This project is licensed under the MIT License.
Contributing
We welcome contributions from the community to enhance the plugin's functionality and address any issues. If you have any feedback, bug reports, or feature requests, please don't hesitate to open an issue or submit a pull request on GitHub.