Repository URL to install this package:
|
Version:
5.0.0-rc.11 ▾
|
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }
var _commonjsHelpers = require('../../../../_virtual/_commonjsHelpers.js');
var path$1 = _interopDefault(require('path'));
var path = require('../utils/path.js');
var deep = require('./filters/deep.js');
var entry = require('./filters/entry.js');
var reader = _commonjsHelpers.createCommonjsModule(function (module, exports) {
Object.defineProperty(exports, "__esModule", { value: true });
var Reader = /** @class */ (function () {
function Reader(options) {
this.options = options;
this.micromatchOptions = this.getMicromatchOptions();
this.entryFilter = new entry.default.default(options, this.micromatchOptions);
this.deepFilter = new deep.default.default(options, this.micromatchOptions);
}
/**
* Returns root path to scanner.
*/
Reader.prototype.getRootDirectory = function (task) {
return path$1.resolve(this.options.cwd, task.base);
};
/**
* Returns options for reader.
*/
Reader.prototype.getReaderOptions = function (task) {
return {
basePath: task.base === '.' ? '' : task.base,
filter: this.entryFilter.getFilter(task.positive, task.negative),
deep: this.deepFilter.getFilter(task.positive, task.negative),
sep: '/'
};
};
/**
* Returns options for micromatch.
*/
Reader.prototype.getMicromatchOptions = function () {
return {
dot: this.options.dot,
nobrace: !this.options.brace,
noglobstar: !this.options.globstar,
noext: !this.options.extension,
nocase: !this.options.case,
matchBase: this.options.matchBase
};
};
/**
* Returns transformed entry.
*/
Reader.prototype.transform = function (entry) {
if (this.options.absolute) {
entry.path = path.default.makeAbsolute(this.options.cwd, entry.path);
}
if (this.options.markDirectories && entry.isDirectory()) {
entry.path += '/';
}
var item = this.options.stats ? entry : entry.path;
if (this.options.transform === null) {
return item;
}
return this.options.transform(item);
};
/**
* Returns true if error has ENOENT code.
*/
Reader.prototype.isEnoentCodeError = function (err) {
return err.code === 'ENOENT';
};
return Reader;
}());
exports.default = Reader;
});
exports.__moduleExports = reader;
exports.default = reader;
//# sourceMappingURL=reader.js.map