Skip to content

flyfishMT/GulpMainNpmFiles

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Installation

To install this module, you need to run the following command

$ npm install gulp-main-npm-files

Usage

var mainNpmFiles = require('gulp-main-npm-files');
var files = mainNpmFiles([[filter, ]options][, callback]);

This will read your package.json, iterate through your dependencies and returns an array of files defined in the main property of the packages package.json.

Usage with gulp

var gulp = require('gulp');
var mainNpmFiles = require('gulp-main-npm-files');

gulp.task('TASKNAME', function() {
    return gulp.src(mainNpmFiles())
        .pipe(/* what you want to do with the files */)
});

Options

The module accepts the following options:

  • nodeModulesPath: path to your node_modules. By default, it is ./node_modules that means this directory is at your project's root.
var mainNpmFiles = require('gulp-main-npm-files');

// Copy dependencies from ./node_modules to build/node_modules/
gulp.task('copyNpmDependencies', function() {
  gulp.src(mainNpmFiles(), { base:'./' })
    .pipe(gulp.dest('./build'));
});
var mainNpmFiles = require('gulp-main-npm-files');

// Copy dependencies from ./path/node_modules to build/node_modules/
gulp.task('copyNpmDependencies', function() {
  gulp.src(mainNpmFiles({ nodeModulesPath: "./path/node_modules" }), { base:'./' })
    .pipe(gulp.dest('./build'));
});
  • packageJsonPath: path to you package.json file. By default, it is ./package.json that means this file is at your project's root with the default name.
var mainNpmFiles = require('gulp-main-npm-files');

// Copy dependencies present in ./package.jon to build/node_modules/
gulp.task('copyNpmDependencies', function() {
  gulp.src(mainNpmFiles(), { base:'./' })
    .pipe(gulp.dest('./build'));
});
var mainNpmFiles = require('gulp-main-npm-files');

// Copy dependencies present in ./path/package.json to build/node_modules/
gulp.task('copyNpmDependencies', function() {
  gulp.src(mainNpmFiles({ packageJsonPath: "path/package.json" }), { base:'./' })
    .pipe(gulp.dest('./build'));
});
  • devDependencies: true if you want to take account the dev dependencies, false otherwise. The default value is false.
var mainNpmFiles = require('gulp-main-npm-files');

// Copy dependencies to build/node_modules/
gulp.task('copyNpmDependencies', function() {
  gulp.src(mainNpmFiles(), { base:'./' })
    .pipe(gulp.dest('./build'));
});
var mainNpmFiles = require('gulp-main-npm-files');

// Copy dev dependencies and dependencies to build/node_modules/
gulp.task('copyNpmDependencies', function() {
  gulp.src(mainNpmFiles({ devDependencies: true }), { base:'./' })
    .pipe(gulp.dest('./build'));
});
  • overrides: Object of overrides to use for a package. Format is packageName => array of paths. For use when alternate files are wanted or the vendor package.json is incorrect.
var mainNpmFiles = require('gulp-main-npm-files');

// Copy dependencies to build/node_modules/
gulp.task('copyNpmDependencies', function() {
  gulp.src(mainNpmFiles({
		overrides: {
			select2:  ['./dist/js/select2.full.js', './dist/css/select2.css']
		}
	}), { base:'./' })
    .pipe(gulp.dest('./build'));
});

Comments

Don't hesitate to send me any recommendations, suggestions about this project. I really want to have some returns about does it work well, does it match user expectation, etc.

You can send me any issues you want or contact me to my github email and put the repository name in the subject.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 100.0%