JSPM

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

Sort files in stream by path or any custom sort comparator

Package Exports

  • gulp-sort

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 (gulp-sort) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

gulp-sort

Sort files in stream by path or any custom sort comparator

Build Status

Install

$ npm install gulp-sort --save-dev

Usage

var sort = require('gulp-sort');

// default sort
gulp.src('./src/js/**/*.js')
    .pipe(sort())
    .pipe(gulp.dest('./build/js'));

// pass in a custom comparator function
gulp.src('./src/js/**/*.js')
    .pipe(sort(customComparator))
    .pipe(gulp.dest('./build/js'));

// sort descending
gulp.src('./src/js/**/*.js')
    .pipe(sort({
         asc: false
    }))
    .pipe(gulp.dest('./build/js'));

// sort with a custom comparator
gulp.src('./src/js/**/*.js')
    .pipe(sort({
        comparator: function(file1, file2) {
            if (file1.path.indexOf('build') > -1) {
                return 1;
            }
            if (file2.path.indexOf('build') > -1) {
                return -1;
            }
            return 0;
        }
    }))
    .pipe(gulp.dest('./build/js'));

// sort with a custom sort function
var stable = require('stable');
gulp.src('./src/js/**/*.js')
    .pipe(sort({
        customSortFn: function(files, comparator) {
            return stable(files, comparator);
        }
    }))
    .pipe(gulp.dest('./build/js'));

Options

gulp-sort takes in an optional comparator function, or dictionary with following params:

asc

Sort ascending. Defaults to true. Specify false to sort descending.

comparator

Comparator function to use. comparator(file1, file2). Defaults to localeCompare of file paths.

customSortFn

Use customSortFn in order to control the sorting yourself (useful for stable sorts).

customSortFn signature is as follows:

customSortFn(<files>, <comparator>)

  • files being the vinyl file objects that were passed in
  • comparator is the default comparator used, or a custom one that was passed as param

This function is expected to return back the sorted list of files.

License

MIT ©Gilad Peleg