Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org »

    grunt-importerpublic

    grunt-importer

    Importer adds an #import statement to JavaScript based languages including CoffeeScript that works like #include in C-based languages. It concatenates them together in the places you've defined.

    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-importer --save-dev

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

    grunt.loadNpmTasks('grunt-importer');

    The "importer" task

    Overview

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

    grunt.initConfig({
      importer: {
        scripts: {
          files: [{
            expand: true,
            src: 'scripts/layout.template.js',
            rename: function (dest, src) {
              return (dest || '') + src.replace('.template.js', '.js');
            }
          }]
        },
      },
    })

    Usage Examples

    Replace a Single File

    In this example the script would be replaced in-place with any import statements substituted for their references.

    grunt.initConfig({
      importer: {
        scripts: {
          files: [{ src: 'tmp/replace_single_file/foo.js' }]
        }
      },
    })

    Output to Different Folder and Rename

    In this example the dynamic file expanding object is used to output the results to a different folder using a different file name:

    grunt.initConfig({
      importer: {
        scripts: {
          files: [{
            expand: true,
            flatten: true,
            src: 'test/fixtures/foo.template.js',
            dest: 'tmp/different_output_folder_and_rename/',
            rename: function (dest, src) {
              return (dest || '') + src.replace('.template.js', '.js');
            }
          }]
        },
      },
    })

    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

    • 2013-10-04   v1.0.0   Initial release
    • 2013-10-04   v1.0.1   Removed debug output

    Keywords

    none

    install

    npm i grunt-importer

    Downloadslast 7 days

    1

    version

    1.0.1

    license

    none

    repository

    github.com

    last publish

    collaborators

    • avatar