Security News
The Push to Ban Ransom Payments Is Gaining Momentum
Ransomware costs victims an estimated $30 billion per year and has gotten so out of control that global support for banning payments is gaining momentum.
@bva/override-resolver
Advanced tools
Readme
Webpack resolver plugin for overriding or aliasing dependencies and component requests.
Leverages enhanced-resolve to handle internal resolution and hook into the request’s lifecycle.
//npm
npm install @bva/override-resolver
//yarn
yarn add @bva/override-resolver
This plugin was born from the need to customize 3rd party UI Kits, Component Libraries, etc. without requiring a local clone of the entire library.
A simple example is a Button
component provided by a library installed in node_modules
as a dependency. This **Button**
may be in use by said library throughout multiple other components, which typically makes it difficult to add global custom logic to that Button
across your app or project.
Override Resolver trivializes such scenario by providing the option to update that one Button
component, or specific parts of it, without affecting the rest of the Component Library.
Both of those may be good enough for certain applications, however they share the limitation of not resolving a package’s internal relative requests. Webpack resolve.modules
and resolve.alias
would only work if all requests were done using module paths (i.e. @moduleName/path/to/component
).
Override Resolver is able to handle absolute, module, and relative paths. If a request to a file exists, Override Resolver is able to override it.
This plugin can be used outside of simple Component/UI Library overrides you can specify any given request path to alias or override files from.
This can also be leveraged to setup a theme structure or a fallback system for your modules and components.
Requires Webpack 4.x+ and works with NuxtJS, Vue, NextJS, React, JS, SCSS, plus any other file type or framework that can use Webpack.
const path = require('path');
const OverrideResolver = require('@bva/override-resolver');
const WebpackConfig = {
//...
resolve: {
plugins: [
new OverrideResolver({
name: '@bva',
alias: path.resolve(__dirname, 'overrides'),
})
],
},
//...
}
module.exports = WebpackConfig;
import path from 'path';
import OverrideResolver from '@bva/override-resolver';
const NuxtConfig = {
//...
build: {
extend(config) {
config.resolve.plugins.push(new OverrideResolver(
{
name: '@bva',
alias: path.resolve(__dirname, 'overrides'),
},
));
},
},
//...
};
export default NuxtConfig;
FAQs
Webpack resolver plugin for overriding or aliasing dependencies and component requests.
We found that @bva/override-resolver demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
Ransomware costs victims an estimated $30 billion per year and has gotten so out of control that global support for banning payments is gaining momentum.
Application Security
New SEC disclosure rules aim to enforce timely cyber incident reporting, but fear of job loss and inadequate resources lead to significant underreporting.
Security News
The Python Software Foundation has secured a 5-year sponsorship from Fastly that supports PSF's activities and events, most notably the security and reliability of the Python Package Index (PyPI).