| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 | "use strict";Object.defineProperty(exports, "__esModule", { value: true });const path = require("path");const deep_1 = require("./filters/deep");const entry_1 = require("./filters/entry");const error_1 = require("./filters/error");const entry_2 = require("./transformers/entry");class Provider {    constructor(_settings) {        this._settings = _settings;        this.errorFilter = new error_1.default(this._settings);        this.entryFilter = new entry_1.default(this._settings, this._getMicromatchOptions());        this.deepFilter = new deep_1.default(this._settings, this._getMicromatchOptions());        this.entryTransformer = new entry_2.default(this._settings);    }    _getRootDirectory(task) {        return path.resolve(this._settings.cwd, task.base);    }    _getReaderOptions(task) {        const basePath = task.base === '.' ? '' : task.base;        return {            basePath,            pathSegmentSeparator: '/',            concurrency: this._settings.concurrency,            deepFilter: this.deepFilter.getFilter(basePath, task.positive, task.negative),            entryFilter: this.entryFilter.getFilter(task.positive, task.negative),            errorFilter: this.errorFilter.getFilter(),            followSymbolicLinks: this._settings.followSymbolicLinks,            fs: this._settings.fs,            stats: this._settings.stats,            throwErrorOnBrokenSymbolicLink: this._settings.throwErrorOnBrokenSymbolicLink,            transform: this.entryTransformer.getTransformer()        };    }    _getMicromatchOptions() {        return {            dot: this._settings.dot,            matchBase: this._settings.baseNameMatch,            nobrace: !this._settings.braceExpansion,            nocase: !this._settings.caseSensitiveMatch,            noext: !this._settings.extglob,            noglobstar: !this._settings.globstar,            posix: true,            strictSlashes: false        };    }}exports.default = Provider;
 |