| "use strict"; |
| 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; |