diff options
Diffstat (limited to 'src/js/node/fs.promises.ts')
-rw-r--r-- | src/js/node/fs.promises.ts | 132 |
1 files changed, 45 insertions, 87 deletions
diff --git a/src/js/node/fs.promises.ts b/src/js/node/fs.promises.ts index bdbacd27d..6a1c42ecd 100644 --- a/src/js/node/fs.promises.ts +++ b/src/js/node/fs.promises.ts @@ -1,8 +1,5 @@ // Hardcoded module "node:fs/promises" - -// Note: `constants` is injected into the top of this file -declare var constants: typeof import("node:fs/promises").constants; -const { createFIFO } = $lazy("primordials"); +const constants = $processBindingConstants.fs; var fs = Bun.fs(); @@ -19,7 +16,7 @@ var promisify = { }, }[notrace]; -export function watch( +function watch( filename: string | Buffer | URL, options: { encoding?: BufferEncoding; persistent?: boolean; recursive?: boolean; signal?: AbortSignal } = {}, ) { @@ -39,7 +36,7 @@ export function watch( if (typeof options === "string") { options = { encoding: options }; } - const queue = createFIFO(); + const queue = $createFIFO(); const watcher = fs.watch(filename, options || {}, (eventType: string, filename: string | Buffer | undefined) => { queue.push({ eventType, filename }); @@ -91,43 +88,45 @@ export function watch( }, }; } -export var access = promisify(fs.accessSync), - appendFile = promisify(fs.appendFileSync), - close = promisify(fs.closeSync), - copyFile = promisify(fs.copyFileSync), - exists = promisify(fs.existsSync), - chown = promisify(fs.chownSync), - chmod = promisify(fs.chmodSync), - fchmod = promisify(fs.fchmodSync), - fchown = promisify(fs.fchownSync), - fstat = promisify(fs.fstatSync), - fsync = promisify(fs.fsyncSync), - ftruncate = promisify(fs.ftruncateSync), - futimes = promisify(fs.futimesSync), - lchmod = promisify(fs.lchmodSync), - lchown = promisify(fs.lchownSync), - link = promisify(fs.linkSync), - lstat = fs.lstat.bind(fs), - mkdir = promisify(fs.mkdirSync), - mkdtemp = promisify(fs.mkdtempSync), - open = promisify(fs.openSync), - read = promisify(fs.readSync), - write = promisify(fs.writeSync), - readdir = fs.readdir.bind(fs), - readFile = fs.readFile.bind(fs), - writeFile = promisify(fs.writeFileSync), - readlink = promisify(fs.readlinkSync), - realpath = promisify(fs.realpathSync), - rename = promisify(fs.renameSync), - stat = fs.stat.bind(fs), - symlink = promisify(fs.symlinkSync), - truncate = promisify(fs.truncateSync), - unlink = promisify(fs.unlinkSync), - utimes = promisify(fs.utimesSync), - lutimes = promisify(fs.lutimesSync), - rm = promisify(fs.rmSync), - rmdir = promisify(fs.rmdirSync), - writev = (fd, buffers, position) => { + +export default { + access: promisify(fs.accessSync), + appendFile: promisify(fs.appendFileSync), + close: promisify(fs.closeSync), + copyFile: promisify(fs.copyFileSync), + exists: promisify(fs.existsSync), + chown: promisify(fs.chownSync), + chmod: promisify(fs.chmodSync), + fchmod: promisify(fs.fchmodSync), + fchown: promisify(fs.fchownSync), + fstat: promisify(fs.fstatSync), + fsync: promisify(fs.fsyncSync), + ftruncate: promisify(fs.ftruncateSync), + futimes: promisify(fs.futimesSync), + lchmod: promisify(fs.lchmodSync), + lchown: promisify(fs.lchownSync), + link: promisify(fs.linkSync), + lstat: fs.lstat.bind(fs), + mkdir: promisify(fs.mkdirSync), + mkdtemp: promisify(fs.mkdtempSync), + open: promisify(fs.openSync), + read: promisify(fs.readSync), + write: promisify(fs.writeSync), + readdir: fs.readdir.bind(fs), + readFile: fs.readFile.bind(fs), + writeFile: promisify(fs.writeFileSync), + readlink: promisify(fs.readlinkSync), + realpath: promisify(fs.realpathSync), + rename: promisify(fs.renameSync), + stat: fs.stat.bind(fs), + symlink: promisify(fs.symlinkSync), + truncate: promisify(fs.truncateSync), + unlink: promisify(fs.unlinkSync), + utimes: promisify(fs.utimesSync), + lutimes: promisify(fs.lutimesSync), + rm: promisify(fs.rmSync), + rmdir: promisify(fs.rmdirSync), + writev: (fd, buffers, position) => { return new Promise((resolve, reject) => { try { var bytesWritten = fs.writevSync(fd, buffers, position); @@ -142,7 +141,7 @@ export var access = promisify(fs.accessSync), }); }); }, - readv = (fd, buffers, position) => { + readv: (fd, buffers, position) => { return new Promise((resolve, reject) => { try { var bytesRead = fs.readvSync(fd, buffers, position); @@ -156,48 +155,7 @@ export var access = promisify(fs.accessSync), buffers, }); }); - }; - -export default { - access, - appendFile, - close, - copyFile, - exists, - chown, - chmod, - fchmod, - fchown, - fstat, - fsync, - ftruncate, - futimes, - lchmod, - lchown, - link, - lstat, - mkdir, - mkdtemp, - open, - read, - write, - readdir, - readFile, - writeFile, - readlink, - realpath, - rename, - stat, - symlink, - truncate, - unlink, - utimes, - lutimes, - rm, - rmdir, - watch, - writev, - readv, + }, constants, - [Symbol.for("CommonJS")]: 0, + watch, }; |