| /* |
| MIT License http://www.opensource.org/licenses/mit-license.php |
| Author Tobias Koppers @sokra |
| */ |
| "use strict"; |
| |
| const fs = require("graceful-fs"); |
| |
| class NodeJsInputFileSystem { |
| readdir(path, callback) { |
| fs.readdir(path, (err, files) => { |
| callback(err, files && files.map(file => { |
| return file.normalize ? file.normalize("NFC") : file; |
| })); |
| }); |
| } |
| |
| readdirSync(path) { |
| const files = fs.readdirSync(path); |
| return files && files.map(file => { |
| return file.normalize ? file.normalize("NFC") : file; |
| }); |
| } |
| } |
| |
| const fsMethods = [ |
| "stat", |
| "statSync", |
| "readFile", |
| "readFileSync", |
| "readlink", |
| "readlinkSync" |
| ]; |
| |
| for(const key of fsMethods) { |
| Object.defineProperty(NodeJsInputFileSystem.prototype, key, { |
| configurable: true, |
| writable: true, |
| value: fs[key].bind(fs) |
| }); |
| } |
| |
| module.exports = NodeJsInputFileSystem; |