Remap CSS rules based on declaration value
npm i remap-css
import remapCss from "remap-css";
const css = await remapCss([{
css: `
a {
color: red;
}
`}
], {
"color: red": "color: blue"
});
// a {
// color: blue;
// }
Returns a Promise
that resolves to a CSS string.
sources
: Array Array of sourcessource
: Objectcss
: string A CSS stringprefix
: string A CSS selector to be prefixed to all output rulesmatch
: string A array of plain CSS selectors that prevent a prefix addition on exact matchname
: string Optional name used in comments
mappings
: Object CSS declaration value-to-value mapping. The key is either a exact match CSS declaration or a special rule starting with$
. The value is the a replacement declaration or a replacement value in the case of a special rule.options
: ObjectindentSize
: number Numbers of spaces to indent rules and declarations. Default:2
.indentCss
: number Numbers of spaces to indent the output. Default:0
.lineLength
: number Number of characters after which to wrap lines. Default:80
.ignoreSelectors
: Array of RegExp Regular expressions of selectors to ignore. Default:[]
.comments
: boolean Whether to output comments. Default:false
.stylistic
: boolean Whether to perform stylistic tweaks on selectors. Default:false
.validate
: boolean Validate properties and discard ones that fail. Default:false
.keep
: boolean Retain non-matching declarations in the output. Default:false
.
These special mapping keys supported:
$border: value
: Any occurance ofvalue
in aborder
rule.$background: value
Any occurance ofvalue
in abackground
rule.$box-shadow: value
Any occurance ofvalue
in abox-shadow
rule.$value: value
: Any occurance ofvalue
.
On special rules, only specify the replacement value alone (not the whole declaration).
- fetch-css - Extract CSS from websites and browser extensions
© silverwind, distributed under BSD licence