fileset

WebJar for fileset

Лицензия

Лицензия

MIT
Группа

Группа

org.webjars.npm
Идентификатор

Идентификатор

fileset
Последняя версия

Последняя версия

2.0.3
Дата

Дата

Тип

Тип

jar
Описание

Описание

fileset
WebJar for fileset
Ссылка на сайт

Ссылка на сайт

http://webjars.org
Система контроля версий

Система контроля версий

https://github.com/mklabs/node-fileset

Скачать fileset

Как подключить последнюю версию

<!-- https://jarcasting.com/artifacts/org.webjars.npm/fileset/ -->
<dependency>
    <groupId>org.webjars.npm</groupId>
    <artifactId>fileset</artifactId>
    <version>2.0.3</version>
</dependency>
// https://jarcasting.com/artifacts/org.webjars.npm/fileset/
implementation 'org.webjars.npm:fileset:2.0.3'
// https://jarcasting.com/artifacts/org.webjars.npm/fileset/
implementation ("org.webjars.npm:fileset:2.0.3")
'org.webjars.npm:fileset:jar:2.0.3'
<dependency org="org.webjars.npm" name="fileset" rev="2.0.3">
  <artifact name="fileset" type="jar" />
</dependency>
@Grapes(
@Grab(group='org.webjars.npm', module='fileset', version='2.0.3')
)
libraryDependencies += "org.webjars.npm" % "fileset" % "2.0.3"
[org.webjars.npm/fileset "2.0.3"]

Зависимости

compile (2)

Идентификатор библиотеки Тип Версия
org.webjars.npm : glob jar [7.0.3,8)
org.webjars.npm : minimatch jar [3.0.3,4)

Модули Проекта

Данный проект не имеет модулей.

node-fileset Build Status

Exposes a basic wrapper on top of Glob / minimatch combo both written by @isaacs. Glob now uses JavaScript instead of C++ bindings which makes it usable in Node.js 0.6.x and Windows platforms.

NPM

Adds multiples patterns matching and exlude ability. This is basically just a sugar API syntax where you can specify a list of includes and optional exclude patterns. It works by setting up the necessary miniglob "fileset" and filtering out the results using minimatch.

Changelog

Install

npm install fileset

Usage

Can be used with callback or emitter style.

  • include: list of glob patterns foo/**/*.js *.md src/lib/**/*
  • exclude: optional list of glob patterns to filter include results foo/**/*.js *.md
  • callback: optional function that gets called with an error if something wrong happend, otherwise null with an array of results

The callback is optional since the fileset method return an instance of EventEmitter which emit different events you might use:

  • match: Every time a match is found, miniglob emits this event with the pattern.
  • include: Emitted each time an include match is found.
  • exclude: Emitted each time an exclude match is found and filtered out from the fileset.
  • end: Emitted when the matching is finished with all the matches found, optionally filtered by the exclude patterns.

Callback

var fileset = require('fileset');

fileset('**/*.js', '**.min.js', function(err, files) {
  if (err) return console.error(err);

  console.log('Files: ', files.length);
  console.log(files);
});

Event emitter

var fileset = require('fileset');

fileset('**.coffee README.md *.json Cakefile **.js', 'node_modules/**')
  .on('match', console.log.bind(console, 'error'))
  .on('include', console.log.bind(console, 'includes'))
  .on('exclude', console.log.bind(console, 'excludes'))
  .on('end', console.log.bind(console, 'end'));

fileset returns an instance of EventEmitter, with an includes property which is the array of Fileset objects (inheriting from miniglob.Miniglob) that were used during the mathing process, should you want to use them individually.

Check out the tests for more examples.

Sync usage

var results = fileset.sync('*.md *.js', 'CHANGELOG.md node_modules/**/*.md node_modules/**/*.js');

The behavior should remain the same, although it lacks the last options arguments to pass to internal glob and minimatch dependencies.

Tests

Run npm test

Why

Mainly for a build tool with cake files, to provide me an easy way to get a list of files by either using glob or path patterns, optionally allowing exclude patterns to filter out the results.

All the magic is happening in Glob and minimatch. Check them out!

Версии библиотеки

Версия
2.0.3