0.2.0 • Published 8 years ago

grunt-adjust-sourcemaps v0.2.0

Weekly downloads
2
License
-
Repository
github
Last release
8 years ago

grunt-adjust-sourcemaps

Build Status

Adjusts sourcemaps in arbitrary ways. This can be done by either directly manipulating the JSON representation or using the Mozilla SourceMaps module. The plugin finds and parses sourcemaps, allows you to do any custom manipulation and then writes the maps to a new location.

Getting Started

This plugin requires Grunt ~0.4.5

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-adjust-sourcemaps --save-dev

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

grunt.loadNpmTasks('grunt-adjust-sourcemaps');

The "adjust_sourcemaps" task

Overview

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

grunt.initConfig({
  adjust_sourcemaps: {
    options: {
      process: function(json, sourceMapGenerator, sourceMapConsumer, sourceMapPackage) {
        // do something
        return json || sourceMapGenerator;
      }
    },
    your_target: {
      files: [{
        expand: true,
        src: 'some/sourcemaps/*.js.map',
        dest: 'some/output-dir'
      }]
    },
  },
});

A further note is that grunt.option('adjust_sourcemaps.' + target_name + '.sources') will contain an array of all files mentioned in the processed sourcemaps (this is useful when trying to copy original files for deployment for easier debugging).

Options

options.process

Type: Function(jsonRepresenation, [sourceMapGenerator, sourceMapConsumer, sourceMapsPackage]) Default value: Identity function

Here you can adjust your sourcemaps to your hearts content. The arguments are as follows:

`jsonRepresenation': since sourcemaps are only JSON, this is the RAW json object of the sourcemap.

sourceMapGenerator: sourceMapGenerator which has the sourcemap alreasy preloaded.

sourceMapConsumer: sourceMapConsumer preloaded with your sourcemap.

sourceMapsPackage: https://github.com/mozilla/source-map package loaded for custom manipulations with the source.

The function should return either a JSON object representing the sourcemap or a sourceMapGenerator.

Contributing

Maintaned by Jakub Hampl (@gampleman)

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.

0.2.0

8 years ago

0.1.1

10 years ago

0.1.0

10 years ago