JSPM

postcss-message-helpers

1.1.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 1123435
  • Score
    100M100P100Q187402F
  • License MIT

PostCSS helpers to throw or output GNU style messages

Package Exports

  • postcss-message-helpers

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (postcss-message-helpers) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

postcss-message-helpers Build Status

PostCSS helpers to throw or output GNU style messages.

This modules offers you some function to throw or just output messages with GNU style: sourcefile:lineno:column: message

Installation

$ npm install postcss-message-helpers
var messageHelpers = require("postcss-message-helpers")

Usage

var fnValue = messageHelpers.try(fn, source)

Execute fn an return the value. If an exception is thrown during the process, the exception will be catched, enhanced from source & re-throw.

var sourceMessage = messageHelpers.message(message, source)

Returns a message like sourcefile:lineno:column: message.
source should be a postcss source object from a node.

var source = messageHelpers.source(source)

Returns sourcefile:lineno:column for a given source postcss object.

Example

// dependencies
var fs = require("fs")
var postcss = require("postcss")
var messageHelpers = require("postcss-message-helpers")

// css to be processed
var css = fs.readFileSync("input.css", "utf8")

// process css
var output = postcss()
  .use(function(styles) {
    styles.eachDecl(function transformDecl(decl) {
      // will catch, adjust error stack, line, column & message (gnu style) then re-throw
      messageHelpers.try(function IwillThrow() {
        if (decl.value.indexOf("error(") > -1) {
          throw new Error("error detected: " + decl.value)
        }
      }, decl.source)

      // will output a gnu style warning
      if (decl.value.indexOf("warning(") > -1) {
        console.warning(messageHelpers.message("warning: " + decl.value, decl.source))
      }
    })
  })
  .process(css)
  .css

Checkout tests for more examples.


Contributing

Work on a branch, install dev-dependencies, respect coding style & run tests before submitting a bug fix or a feature.

$ git clone https://github.com/postcss/postcss-message-helpers.git
$ git checkout -b patch-1
$ npm install
$ npm test

Changelog

License