
Research
Malicious npm Packages Impersonate Flashbots SDKs, Targeting Ethereum Wallet Credentials
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
extract-svg-sprite-webpack-plugin
Advanced tools
Webpack plugin extract SVGs to separate file. Main purpose - extract images from CSS. But also works with SVGs imported from JS.
Webpack plugin extract SVGs to separate file. Main purpose - extract images from CSS. But also works with SVGs imported from JS.
Input
.img {
background: url('img.svg');
}
Output
.img {
background: url('sprite.svg') no-repeat 0 0;
background-size: 100% 104.50%;
}
npm install extract-svg-sprite-webpack-plugin
For "classic" SVG sprite you will need to setup 2 loaders: first for the SVGs, second for CSS, for generating proper styles for positioning symbol within the sprite.
const SpritePlugin = require('extract-svg-sprite-webpack-plugin');
module.exports = {
module: {
rules: [
{
test: /\.svg$/,
loader: SpritePlugin.loader
},
{
test: /\.css$/,
use: [
'css-loader',
SpritePlugin.cssLoader, /* should be right BEFORE css-loader */
'postcss-loader',
'sass-loader'
]
}
]
},
plugins: [
new SpritePlugin({ options })
]
}
emitType: boolean
Default:true
Emit sprite file.
filenameType: string | Function
Default:sprite.svg
File name of resulting sprite. [contenthash] token will be replaced with hash of
file content.
publicPathType: string Default: null
Custom public path for sprites. By default webpack's output.publicPath will be used.
runtimeGeneratorType: RuntimeGenerator
Custom runtime generator. Docs will be ASAP.
selectorCSS selector for generated sprite styles. By default current selector is used,
but is is possible to create separate style rule with sprite styles by specifying
a valid CSS selector which will be appended to current rule. Note that original
background image declaration will be moved to new rule. Example for selector: '::after'':
/* Input */
.img {
background: url('img.svg');
}
/* Output */
.img {}
.img::after {
background: url('sprite.svg') no-repeat 0 0;
background-size: 100% 104.50%;
}
spriteClassType: mixer.Sprite Default: mixer.Sprite
Custom sprite class. Docs will be ASAP.
spriteConfigType: Object Default: undefined
spriteTypeType: 'classic' | 'stack' Default: 'classic'
See svg-mixer spriteType.
For classic sprite you will need to setup additional loader for CSS. See example config.
symbolClassType: mixer.SpriteSymbol Default: mixer.SpriteSymbol
Custom symbol class. Docs will be ASAP.
symbolIdType: string | Function Default: '[name]'
How <symbol id> attribute should be named. All patterns from loader-utils#interpolateName
are supported. Also can be a function which accepts 2 args - file path and query
string and should return a function.
FAQs
Webpack plugin extract SVGs to separate file. Main purpose - extract images from CSS. But also works with SVGs imported from JS.
The npm package extract-svg-sprite-webpack-plugin receives a total of 85 weekly downloads. As such, extract-svg-sprite-webpack-plugin popularity was classified as not popular.
We found that extract-svg-sprite-webpack-plugin 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.

Research
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.

Security News
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.

Security News
Following last week’s supply chain attack, Nx published findings on the GitHub Actions exploit and moved npm publishing to Trusted Publishers.