@nickkaramoff/taskr-postcss
v2.0.3
Published
PostCSS plugin for Taskr
Downloads
4
Readme
@nickkaramoff/taskr-postcss
Heads up!
This is a fork of the official @taskr/postcss package with a few differences:
- this package uses PostCSS 8 (and not 6)
- thus, this package supports Node version 10 and higher (like PostCSS 8 itself)
- it loads the config using PostCSS' own
postcss-load-config
While this can be used as a drop-in replacement for @taskr/postcss, there is no guarantee that your build won't break. Use with caution!
Install
$ npm install --save-dev @nickkaramoff/taskr-postcss
API
.postcss([options])
Check out PostCSS's Options documentation to see the available options.
Note: There should be no need to set
options.to
andoptions.from
.
If you would like to autoload external PostCSS config, you must not define any options
directly.
Usage
Embedded Options
Declare your PostCSS options directly within your
taskfile.js
:
exports.styles = function * (task) {
yield task.source('src/**/*.scss').postcss({
plugins: [
require('precss'),
require('autoprefixer')({
browsers: ['last 2 versions']
})
],
options: {
parser: require('postcss-scss')
}
}).target('dist/css');
}
Autoloaded Options
Automatically detect & connect to existing PostCSS configurations
If no options
were defined, @nickkaramoff/taskr-postcss
will look for existing .postcssrc
, postcss.config.js
, and .postcssrc.js
root-directory files. Similarly, it will honor a "postcss"
key within your package.json
file.
.postcssrc
-- must be JSON; see example.postcssrc.js
-- can be JSON ormodule.exports
a Function or Object; see examplepostcss.config.js
-- can be JSON ormodule.exports
a Function or Object; see examplepackage.json
-- must use"postcss"
key & must be JSON; see example
Important: If you take this route, you only need one of the files mentioned!
// taskfile.js
exports.styles = function * (task) {
yield task.source('src/**/*.scss').postcss().target('dist/css');
}
// .postcssrc
{
"plugins": {
"precss": {},
"autoprefixer": {
"browsers": ["last 2 versions"]
}
},
"options": {
"parser": "postcss-scss"
}
}
Support
Any issues or questions about Taskr can be sent to the Taskr monorepo.
Any issues about this package should be sent here.
License
MIT © Luke Edwards MIT © Nikita Karamov