Extend AngularJS applications by injecting module dependencies at build time.
JavaScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
tasks
test
.gitignore
.jshintrc
.travis.yml
Gruntfile.js
LICENSE-MIT
README.md
package.json

README.md

grunt-angular-extender

Extend AngularJS applications by injecting module dependencies at build time.

Take at look at https://github.com/mariocasciaro/angular-extender to know what exactly this task is doing.

NPM

Build Status Dependency Status

Getting Started

This plugin requires Grunt ~0.4.1

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-angular-extender --save-dev

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

grunt.loadNpmTasks('grunt-angular-extender');

The "angular_extender" task

Overview

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

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

Options

options.modules

Type: Object Default value: {}

An object where the keys are the modules to extend and the values are arrays containing a list of module names that will be added to the extended module dependencies.

Usage Examples

Transform the files in place

Transforms all the .js files in a given directory. WARNING: use this option only on fresh copies of your sources, this grunt task is NOT idempotent and will change the contents of your sources

grunt.initConfig({
  angular_extender: {
    options: {
      modules: {
        "myApp": [
          "plugin1",
          "plugin2"
        ]
      }
    },
    src: "assets/*.js"
  }
});

Copy and transform the files

Copy all the files to the specified target directory and transforms the angular modules in the process.

grunt.initConfig({
  angular_extender: {
    options: {
      modules: {
        "myApp": [
          "plugin1",
          "plugin2"
        ]
      }
    },
    files: [
      {
        expand: true, 
        cwd: 'src/', 
        src: ['**/*.js'], 
        dest: 'compiled/', 
        filter: 'isFile'
      }
    ]
  }
});

Contributing

In lieu of a formal styleguide, take care to maintain the existing coding style. Add unit tests for any new or changed functionality. Lint and test your code using Grunt.

Release History

(Nothing yet)