node package manager

vinyl-fs-that-respects-files

vinyl-fs NPM version Build Status Coveralls Status Dependency Status

Information

Packagevinyl-fs
Description Vinyl adapter for the file system
Node Version >= 0.10

Usage

var map = require('map-stream');
var fs = require('vinyl-fs');
 
var log = function(file, cb) {
  console.log(file.path);
  cb(null, file);
};
 
fs.src(['./js/**/*.js', '!./js/vendor/*.js'])
  .pipe(map(log))
  .pipe(fs.dest('./output'));

API

src(globs[, opt])

  • Takes a glob string or an array of glob strings as the first argument.
  • Globs are executed in order, so negations should follow positive globs. For example:
fs.src(['!b*.js', '*.js'])

would not exclude any files, but this would

fs.src(['*.js', '!b*.js'])
  • Possible options for the second argument:
    • cwd - Specify the working directory the folder is relative to.
      • Default is process.cwd().
    • base - Specify the folder relative to the cwd. This is used to determine the file names when saving in .dest().
      • Default is where the glob begins if any.
      • Default is process.cwd() if there is no glob.
    • buffer - true or false if you want to buffer the file.
      • Default value is true.
      • false will make file.contents a paused Stream.
    • read - true or false if you want the file to be read or not. Useful for stuff like rming files.
      • Default value is true.
      • false will disable writing the file to disk via .dest().
    • since - Date or number if you only want files that have been modified since the time specified.
    • passthrough - true or false if you want a duplex stream which passes items through and emits globbed files.
      • Default is false.
    • sourcemaps - true or false if you want files to have sourcemaps enabled.
      • Default is false.
    • Any glob-related options are documented in glob-stream and node-glob.
  • Returns a Readable stream by default, or a Duplex stream if the passthrough option is set to true.
  • This stream emits matching vinyl File objects.

Note: UTF-8 BOM will be stripped from all files read with .src.

watch(globs[, opt, cb])

This is just glob-watcher.

  • Takes a glob string or an array of glob strings as the first argument.
  • Possible options for the second argument:
    • Any options are passed to gaze.
  • Returns an EventEmitter.
    • 'changed' event is emitted on each file change.
  • Optionally calls the callback on each change event.

dest(folder[, opt])

  • Takes a folder path as the first argument.
  • First argument can also be a function that takes in a file and returns a folder path.
  • Possible options for the second argument:
    • cwd - Specify the working directory the folder is relative to.
      • Default is process.cwd().
    • base - Specify the folder relative to the cwd. This is used to determine the file names when saving in .dest().
      • Default is the cwd resolves to the folder path.
      • Can also be a function that takes in a file and returns a folder path.
    • mode - Specify the mode the files should be created with.
      • Default is the mode of the input file (file.stat.mode) if any.
      • Default is the process mode if the input file has no mode property.
    • dirMode - Specify the mode the directory should be created with.
      • Default is the process mode.
    • overwrite - Specify if existing files with the same path should be overwritten or not.
      • Default is true, to always overwrite existing files.
  • Returns a Readable/Writable stream.
  • On write the stream will save the vinyl File to disk at the folder/cwd specified.
  • After writing the file to disk, it will be emitted from the stream so you can keep piping these around.
  • The file will be modified after being written to this stream:
    • cwd, base, and path will be overwritten to match the folder.
    • stat.mode will be overwritten if you used a mode parameter.
    • contents will have it's position reset to the beginning if it is a stream.

symlink(folder[, opt])

  • Takes a folder path as the first argument.
  • First argument can also be a function that takes in a file and returns a folder path.
  • Possible options for the second argument:
    • cwd - Specify the working directory the folder is relative to.
      • Default is process.cwd().
    • base - Specify the folder relative to the cwd. This is used to determine the file names when saving in .dest().
      • Default is the cwd resolves to the folder path.
      • Can also be a function that takes in a file and returns a folder path.
    • dirMode - Specify the mode the directory should be created with.
      • Default is the process mode.
  • Returns a Readable/Writable stream.
  • On write the stream will create a symbolic link (i.e. symlink) on disk at the folder/cwd specified.
  • After creating the symbolic link, it will be emitted from the stream so you can keep piping these around.
  • The file will be modified after being written to this stream:
    • cwd, base, and path will be overwritten to match the folder.