grunt-rcs

The grunt task to the main module rename-css-selectors

Usage no npm install needed!

<script type="module">
  import gruntRcs from 'https://cdn.skypack.dev/grunt-rcs';
</script>

README

grunt-rcs

Build Status

grunt-rcs is the grunt plugin for rename-css-selectors

JPeer.at is using this plugin based on Angular.

Getting Started

This plugin requires Grunt 1.0.0+

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-rcs --save

or

yarn add grunt-rcs

Once the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-rcs');

The "rcs" task

Overview

In your project's Gruntfile, add a section named rcs to the data object passed into grunt.initConfig().

grunt.initConfig({
  rcs: {
    options: {
      // Task-specific options go here.
    },
    your_target: {
      // Target-specific file lists and/or options go here.
    },
  },
});

Options

options.replaceCss

Type: Boolean
Default value: false

This option is important, if you want to store new selectors to the selector library. It should just be enabled on css files.

options.config

Type: String
Default value: .rcsrc or package.json if .rcsrc does not exist

A specific path to the config file. It will load the config file from this given path.

options.exclude

Type: Array
Default value:

An array with own defined excludes. It is better to get them from a config file.

Usage Examples

Default Options

It is really important to differ between css files and other files.

grunt.initConfig({
  rcs: {
    options: {},
    css: {
      options: {
        replaceCss: true
      },
      files: [{
        expand: true,
        cwd: './src',
        src: '**/*.css',
        dest: './dist',
      }]
    },
    all: {
      files: [{
        expand: true,
        cwd: './src',
        src: ['**/*.js', '**/*.html'],
        dest: './dist',
      }]
    }
  },
});

Custom Options

Here a custom config file is loaded, plus custom excludes will also ignore these specified selectors.

grunt.initConfig({
  rcs: {
    options: {
      config: './config/rcs_config.json',
      exclude: [
        'ignore-this-selector',
        'or-this'
      ]
    },
    css: {
      options: {
        replaceCss: true
      },
      files: [{
        expand: true,
        cwd: './src',
        src: '**/*.css',
        dest: './dist',
      }]
    },
    all: {
      files: [{
        expand: true,
        cwd: './src',
        src: ['**/*.js', '**/*.html'],
        dest: './dist',
      }]
    }
  },
});

Release History

You can find the releases here

LICENSE

MIT © Jan Peer Stöcklmair