Rollup plugin that transforms inline styling with PostCSS
npm i rollup-plugin-inline-postcss --save-dev
import resolve from 'rollup-plugin-node-resolve';
import inlinePostCSS from 'rollup-plugin-inline-postcss';
export default {
input: 'src/main.js',
plugins: [
resolve(),
inlinePostCSS()
]
}
Property | Description |
---|---|
include | Files to include |
exclude | Files to exclude |
styleRegex | Regex for selecting CSS in file |
This plugin by default looks for a template literal in JavaScript (or TypeScript) and will process CSS found inside of the string. This is particularly useful for Web Components or other CSS in JavaScript situations. The default pattern is below. The regex can be configured by passing the styleRegex property in the plugin options.
css`
:host {
display: block;
background: rgba(24, 24, 24, 1);
width: 200px;
height: 200px;
color: white;
padding: 1em;
border-radius: 8px;
}
`
The default regex for selecting this template literal is:
/css\`((?:\\.|[^"\\])*)\`/g
This plugin honors postcss.config.js
in the root directory and will look for environment variables based on the current NODE_ENV
. The example postcss.config.js below demonstrates minifying CSS with the postcss-csso
plugin only when the NODE_ENV is set to prod
.
module.exports = ctx => ({
plugins: {
'postcss-csso': ctx.env === 'prod' ? {} : false
}
})