; | |
Object.defineProperty(exports, "__esModule", { value: true }); | |
const path = require("path"); | |
const fsStat = require("@nodelib/fs.stat"); | |
const fs = require("./adapters/fs"); | |
class Settings { | |
constructor(_options = {}) { | |
this._options = _options; | |
this.followSymbolicLinks = this._getValue(this._options.followSymbolicLinks, false); | |
this.fs = fs.createFileSystemAdapter(this._options.fs); | |
this.pathSegmentSeparator = this._getValue(this._options.pathSegmentSeparator, path.sep); | |
this.stats = this._getValue(this._options.stats, false); | |
this.throwErrorOnBrokenSymbolicLink = this._getValue(this._options.throwErrorOnBrokenSymbolicLink, true); | |
this.fsStatSettings = new fsStat.Settings({ | |
followSymbolicLink: this.followSymbolicLinks, | |
fs: this.fs, | |
throwErrorOnBrokenSymbolicLink: this.throwErrorOnBrokenSymbolicLink | |
}); | |
} | |
_getValue(option, value) { | |
return option !== null && option !== void 0 ? option : value; | |
} | |
} | |
exports.default = Settings; | |