Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

customize-watch

Package Overview
Dependencies
Maintainers
1
Versions
16
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

customize-watch

A file watcher for customize

  • 0.4.0
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
2.9K
increased by496.27%
Maintainers
1
Weekly downloads
 
Created
Source

customize-watch

A file watcher for customize

customize-watch is a file watcher for customize It attaches watchers (using chokidar) to the files and directories that are relevant for computing a result with customize.

If files are added, removed or changed the result will be recomputed.

Installation

npm install customize-watch

Usage

The following example is almost identical to the "merging another configuration"-example of the customize-module.

var customize = require('customize-watch')

// Load files from one directory and merge with second
customize()
  .registerEngine('files', require('./engine-concat-files'))
  .merge({
    files: 'dir1'
  })
  .merge({
    files: 'dir2'
  })
  .watch()
  .on('update', function (result) {
    console.log('result', result.files)
  })

It will generate the same output, but every time the files in dir1 and dir2 are changed, removed or added, the output will be recomputed. The update-event will be sent with the result as argument, every time the computation has finished.

API-reference

Recustomize

Kind: global class

new Recustomize(builder)

Recustomize has the same interface as Customize, but instead of storing the current configuration-state, it stores a function that computes the state. The only difference is the watch()-method. It can be used to emit an event every time one of the input files is added, removed or changed.

ParamTypeDescription
builderfunctiona builder function for a Customize object

recustomize.merge

Wrapped function. See customize for details

Kind: instance property of Recustomize
Api: private

recustomize.registerEngine

Wrapped function. See customize for details

Kind: instance property of Recustomize
Api: private

recustomize.load

Wrapped function. See customize for details

Kind: instance property of Recustomize
Api: private

recustomize.buildConfig() ⇒ Promise.<object>

Return the configuation object

Kind: instance method of Recustomize
Api: private

recustomize.watched() ⇒ Promise.<object.<Array.<string>>>

Return a list of files and directories that need to be watched in watch-mode.

Kind: instance method of Recustomize
Returns: Promise.<object.<Array.<string>>> - a list of paths to files or directories for each engine
Api: private

recustomize.watch() ⇒ EventEmitter

Register file-watchers for all relevant files. Rebuild the config and run the appropriate engine, whenever a file has changed.

Kind: instance method of Recustomize

recustomize.run() ⇒ object

Wraps the run(...)-method of the customize object, rebuilding the whole configuration before running.

Kind: instance method of Recustomize
Api: private

Recustomize~wrap(fnName) ⇒ function

Wrap the method of a Customize object such that instead of the new Customize object, new Recustomize object with the appropriate builder-function is returned

Kind: inner method of Recustomize
Api: private

Param
fnName

License

customize-watch is published under the MIT-license. See LICENSE.md for details.

Release-Notes

For release notes, see CHANGELOG.md

Contributing guidelines

See CONTRIBUTING.md.

FAQs

Package last updated on 18 Oct 2015

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc