Neovictorian Paisley Menswear
Unleash awesomeness. Private packages, team management tools, and powerful integrations. Get started with npm Orgs »

flatten-brunch-map

2.10.1 • Public • Published

flatten-brunch-map

npm Version License

Creates the object to return by a Brunch plugin, with the new sourcemap merged with the preceding sourcemap if necessary.

Install

npm install flatten-brunch-map --save

Usage

const flattenMap = require('flatten-brunch-map')
...
const pluginResult = flattenMap(fileParam, compiledCode, sourceMap)

Example

const flattenMap = require('flatten-brunch-map')
const myCompiler = require('myCompiler')
 
class MyPlugin {
 
  constructor (config) {
    this.options = config.plugins.myPlugin || {}
    // Tell to myCompiler if user wants sourcemap
    this.options.sourceMaps = !!config.sourceMaps
  }
 
  compile (file) {
    return new Promise((resolve, reject) => {
      try {
        // Do the plugin logic and then call flattenMap with the
        // received param and the generated code and sourcemap.
        const output = myCompiler(file.data, this.options)
        const result = this.options.sourceMaps
                     ? flattenMap(file, output.code, output.map) : output.code
 
        resolve(result)
      } catch (error) {
        reject(error)
      }
    })
  }
}
 
MyPlugin.prototype.brunchPlugin = true
MyPlugin.prototype.extension = 'js'
MyPlugin.prototype.type = 'javascript'
 
module.exports = MyPlugin

What's New

From v2.8.2, the plugin returns a normalized string or plain object with sources defaulting to the received file path.


Like it? Don't forget your star :)

install

npm i flatten-brunch-map

Downloadsweekly downloads

45

version

2.10.1

license

MIT

homepage

github.com

repository

Gitgithub

last publish

collaborators

  • avatar
Report a vulnerability