Webpack block for style loader, file loader, url loader and friends.
npm install @webpack-blocks/assets

This is the assets block providing configuration for the style loader, file loader, URL loader and
friends.
``js
const { createConfig, match } = require('@webpack-blocks/webpack')
const { css, file, url } = require('@webpack-blocks/assets')
module.exports = createConfig([
css(), // or use match() to apply it to other files than *.css
// will copy font files to build directory and link to them
match(['.eot', '.ttf', '.woff', '.woff2'], [
file()
]),
// will load images up to 10KB as data URL
match(['.gif', '.jpg', '.jpeg', '.png', '.svg', '.webp'], [
url({ limit: 10000 })
])
])
`
In order to use CSS modules:
`js
const { createConfig, match } = require('@webpack-blocks/webpack')
const { css } = require('@webpack-blocks/assets')
module.exports = createConfig([
match(
['.css', '!node_modules*'],
[
css.modules({
modules: {
localIdentName: '[name]--[local]--[hash:base64:5]'
}
})
]
)
])
`
Will match *.css by default if not used with match(). You can pass allcss-loader options. With styleLoader you canstyle-loader
pass options to the , setting it tofalse will remove the style-loader from loaders.
Will match *.css by default if not used with match(). You can pass allcss-loader options.
The difference to css() is that it sets the following css-loader options by default:
- modules option is enabledimportLoaders
- defaults to 1modules.localIdentName
- defaults to '[name]--[local]--[hash:base64:5]' in development and'[hash:base64:10]'
in production
Must be used with match(). You can pass allfile-loader options.
Must be used with match(). You can pass allurl-loader options. We strongly recommend settinglimit` to prevent huge files to be encoded as a data URL.
a
Check out the
š Main documentation
Released under the terms of the MIT license.