postcss-reduce-idents-rauchg

2.3.0 • Public • Published

postcss-reduce-idents Build Status NPM version Dependency Status

Reduce custom identifiers with PostCSS.

Install

With npm do:

npm install postcss-reduce-idents --save

Example

Input

This module will rename custom identifiers in your CSS files; it does so by converting each name to a index, which is then encoded into a legal identifier. A legal custom identifier in CSS is case sensitive and must start with a letter, but can contain digits, hyphens and underscores. There are over 3,000 possible two character identifiers, and 51 possible single character identifiers that will be generated.

@keyframes whiteToBlack {
    0% {
        color: #fff
    }
    to {
        color: #000
    }
}

.one {
    animation-name: whiteToBlack
}

Output

@keyframes a {
    0% {
        color: #fff
    }
    to {
        color: #000
    }
}

.one {
    animation-name: a
}

Note that this module does not handle identifiers that are not linked together. The following example will not be transformed in any way:

@keyframes fadeOut {
    0% { opacity: 1 }
    to { opacity: 0 }
}

.fadeIn {
    animation-name: fadeIn;
}

It works for @keyframes, @counter-style and custom counter values. See the documentation for more information, or the tests for more examples.

Usage

See the PostCSS documentation for examples for your environment.

API

reduceIdents([options])

options

counter

Type: boolean Default: true

Pass false to disable reducing content, counter-reset and counter-increment declarations.

keyframes

Type: boolean Default: true

Pass false to disable reducing keyframes rules and animation declarations.

counterStyle

Type: boolean Default: true

Pass false to disable reducing counter-style rules and list-style and system declarations.

encoder

Type: function Default: lib/encode.js

Pass a custom function to encode the identifier with (e.g.: as a way of prefixing them automatically).

It receives two parameters:

  • A String with the node value.
  • A Number identifying the index of the occurrence.

Contributing

Pull requests are welcome. If you add functionality, then please add unit tests to cover it.

License

MIT © Ben Briggs

Package Sidebar

Install

npm i postcss-reduce-idents-rauchg

Weekly Downloads

0

Version

2.3.0

License

MIT

Last publish

Collaborators

  • rauchg