1.2.2 • Published 4 years ago

@marknotton/notifier v1.2.2

Weekly downloads
6
License
MIT
Repository
github
Last release
4 years ago

Notifier

Made For NPM Made For Gulp

Manage CLI and popup notification messages.

Installation

npm i @marknotton/notifier --save-dev
const notifier = require('@marknotton/notifier');

Usage

gulp.task('someTask', () => {
  return gulp.src([...])
  .pipe(plumber({errorHandler: notifier.error }))
  .pipe(concat('ccombined.js'))
  .pipe(gulp.dest('/some/location/'))
  .pipe(notifier.success())
});

Options

OptionTypeDefaultDetails
projectStringPackage.json 'name'Project name. Will appear as a subheading.
exclusionsString'.map'Files that match any part of this string will be excluded from any notification
prefixString-String to add before the notification message
suffixString-String to add after the notification message
popupsBooltruePrevent popups from showing. Console logs will still be rendered. Defaults to false on non 'dev' environments.
successStringIcon to use on success messages. Can be relative to the project folder or an absolute URL. An attempt will be made to look for a 'icon.png' in your projects root directly.
errorStringIcon to use on error messages. Can be relative to the project folder or an absolute URL
messagesStringFiles compiled successfullyThe message you want to display. This can be a shorthand name that references an object key defined in the defaults function (see below)
extraArray/String-Manually add extra files to log out, regardless of whether they are actually part of the stream

A string will be defined as the message or message shorthand.

notifier.success('js', { project : 'My Project', ...})

Notice the use of a shorthand name as the first parameter. This will look for the keys in the default settings object. So you can list all your messages in one place.

Defining your default settings

You can preset the above options with the settings function. This will be refereed as your default options for every notifier instance.

notifier.settings({
  project : 'My Project,
  success : 'images/icon.png',
  exclusions:'.map',
  messages  : {
    js      : 'Javascript files compiled!',
    sass    : 'Looking gooooood!'
  }
});