Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

shinnn/clean-css-promise

Open more actions menu

Repository files navigation

clean-css-promise

npm version Github Actions codecov

clean-css with the default Promise interface and some improvements

const CleanCssPromise = require('clean-css-promise');

(async () => {
  const {styles} = await new CleanCssPromise().minify(`
p {
  color: #ff0000;
}

b {
  /* nothing */
}
`); //=> 'p{color:red}'
})();

Installation

Use npm.

npm install clean-css-promise

API

const CleanCssPromise = require('clean-css-promise');

class CleanCssPromise([options])

options: Object (clean-css constructor options)

Almost the same the original clean-css, except for:

  • returnPromise option is enabled by default, and cannot be disabled.
  • onRejected function receives an Error instead of an Array.
  • All problems that clean-css considers as warnings, for example broken CSS syntax, are regarded as errors.
const CleanCssPromise = require('clean-css-promise');

new CleanCssPromise({})
.minify('@import url(/foo);}')
.catch(err => {
  err.message;
  /*=> `2 errors found while optimizing CSS with clean-css:
  1. Ignoring local @import of "/foo" as resource is missing.
  2. Invalid character(s) '?' at 1:18. Ignoring.

clean-css dangerously ignores these errors but clean-css-promise doesn't, because it's much more reasonable to update the CSS to fix all problems than to pretend that you didn't see the errors.` */
});

License

ISC License © 2017 - 2019 Watanabe Shinnosuke

Morty Proxy This is a proxified and sanitized view of the page, visit original site.