memfs 3.5.3 → 4.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/Dirent.js +26 -27
- package/lib/Stats.js +27 -31
- package/lib/encoding.js +2 -2
- package/lib/fsa/types.d.ts +82 -0
- package/lib/fsa/types.js +2 -0
- package/lib/index.d.ts +16 -2
- package/lib/index.js +28 -26
- package/lib/internal/buffer.js +5 -18
- package/lib/internal/errors.js +61 -91
- package/lib/node/FileHandle.d.ts +30 -0
- package/lib/node/FileHandle.js +50 -0
- package/lib/node/promises.d.ts +2 -0
- package/lib/node/promises.js +88 -0
- package/lib/node/types/callback.d.ts +83 -0
- package/lib/node/types/callback.js +2 -0
- package/lib/node/types/index.d.ts +7 -0
- package/lib/node/types/index.js +2 -0
- package/lib/node/types/misc.d.ts +112 -0
- package/lib/node/types/misc.js +2 -0
- package/lib/node/types/options.d.ts +72 -0
- package/lib/node/types/options.js +2 -0
- package/lib/node/types/promises.d.ts +31 -0
- package/lib/node/types/promises.js +2 -0
- package/lib/node/types/sync.d.ts +100 -0
- package/lib/node/types/sync.js +2 -0
- package/lib/node/util.d.ts +2 -0
- package/lib/node/util.js +13 -0
- package/lib/node.d.ts +2 -2
- package/lib/node.js +209 -289
- package/lib/process.js +5 -5
- package/lib/setImmediate.js +1 -1
- package/lib/setTimeoutUnref.js +1 -1
- package/lib/volume-localstorage.js +48 -85
- package/lib/volume.d.ts +13 -10
- package/lib/volume.js +789 -897
- package/package.json +1 -1
- package/lib/promises.d.ts +0 -78
- package/lib/promises.js +0 -158
package/package.json
CHANGED
package/lib/promises.d.ts
DELETED
|
@@ -1,78 +0,0 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
/// <reference types="node" />
|
|
3
|
-
import { Volume, TData, TMode, TFlags, TFlagsCopy, TTime, IOptions, IAppendFileOptions, IMkdirOptions, IReaddirOptions, IReadFileOptions, IRealpathOptions, IWriteFileOptions, IStatOptions, IRmOptions, IFStatOptions } from './volume';
|
|
4
|
-
import Stats from './Stats';
|
|
5
|
-
import Dirent from './Dirent';
|
|
6
|
-
import { TDataOut } from './encoding';
|
|
7
|
-
import { PathLike, symlink } from 'fs';
|
|
8
|
-
export interface TFileHandleReadResult {
|
|
9
|
-
bytesRead: number;
|
|
10
|
-
buffer: Buffer | Uint8Array;
|
|
11
|
-
}
|
|
12
|
-
export interface TFileHandleWriteResult {
|
|
13
|
-
bytesWritten: number;
|
|
14
|
-
buffer: Buffer | Uint8Array;
|
|
15
|
-
}
|
|
16
|
-
export interface IFileHandle {
|
|
17
|
-
fd: number;
|
|
18
|
-
appendFile(data: TData, options?: IAppendFileOptions | string): Promise<void>;
|
|
19
|
-
chmod(mode: TMode): Promise<void>;
|
|
20
|
-
chown(uid: number, gid: number): Promise<void>;
|
|
21
|
-
close(): Promise<void>;
|
|
22
|
-
datasync(): Promise<void>;
|
|
23
|
-
read(buffer: Buffer | Uint8Array, offset: number, length: number, position: number): Promise<TFileHandleReadResult>;
|
|
24
|
-
readFile(options?: IReadFileOptions | string): Promise<TDataOut>;
|
|
25
|
-
stat(options?: IStatOptions): Promise<Stats>;
|
|
26
|
-
truncate(len?: number): Promise<void>;
|
|
27
|
-
utimes(atime: TTime, mtime: TTime): Promise<void>;
|
|
28
|
-
write(buffer: Buffer | Uint8Array, offset?: number, length?: number, position?: number): Promise<TFileHandleWriteResult>;
|
|
29
|
-
writeFile(data: TData, options?: IWriteFileOptions): Promise<void>;
|
|
30
|
-
}
|
|
31
|
-
export type TFileHandle = PathLike | IFileHandle;
|
|
32
|
-
export interface IPromisesAPI {
|
|
33
|
-
FileHandle: any;
|
|
34
|
-
access(path: PathLike, mode?: number): Promise<void>;
|
|
35
|
-
appendFile(path: TFileHandle, data: TData, options?: IAppendFileOptions | string): Promise<void>;
|
|
36
|
-
chmod(path: PathLike, mode: TMode): Promise<void>;
|
|
37
|
-
chown(path: PathLike, uid: number, gid: number): Promise<void>;
|
|
38
|
-
copyFile(src: PathLike, dest: PathLike, flags?: TFlagsCopy): Promise<void>;
|
|
39
|
-
lchmod(path: PathLike, mode: TMode): Promise<void>;
|
|
40
|
-
lchown(path: PathLike, uid: number, gid: number): Promise<void>;
|
|
41
|
-
link(existingPath: PathLike, newPath: PathLike): Promise<void>;
|
|
42
|
-
lstat(path: PathLike, options?: IStatOptions): Promise<Stats>;
|
|
43
|
-
mkdir(path: PathLike, options?: TMode | IMkdirOptions): Promise<void>;
|
|
44
|
-
mkdtemp(prefix: string, options?: IOptions): Promise<TDataOut>;
|
|
45
|
-
open(path: PathLike, flags: TFlags, mode?: TMode): Promise<FileHandle>;
|
|
46
|
-
readdir(path: PathLike, options?: IReaddirOptions | string): Promise<TDataOut[] | Dirent[]>;
|
|
47
|
-
readFile(id: TFileHandle, options?: IReadFileOptions | string): Promise<TDataOut>;
|
|
48
|
-
readlink(path: PathLike, options?: IOptions): Promise<TDataOut>;
|
|
49
|
-
realpath(path: PathLike, options?: IRealpathOptions | string): Promise<TDataOut>;
|
|
50
|
-
rename(oldPath: PathLike, newPath: PathLike): Promise<void>;
|
|
51
|
-
rmdir(path: PathLike): Promise<void>;
|
|
52
|
-
rm(path: PathLike, options?: IRmOptions): Promise<void>;
|
|
53
|
-
stat(path: PathLike, options?: IStatOptions): Promise<Stats>;
|
|
54
|
-
symlink(target: PathLike, path: PathLike, type?: symlink.Type): Promise<void>;
|
|
55
|
-
truncate(path: PathLike, len?: number): Promise<void>;
|
|
56
|
-
unlink(path: PathLike): Promise<void>;
|
|
57
|
-
utimes(path: PathLike, atime: TTime, mtime: TTime): Promise<void>;
|
|
58
|
-
writeFile(id: TFileHandle, data: TData, options?: IWriteFileOptions): Promise<void>;
|
|
59
|
-
}
|
|
60
|
-
export declare class FileHandle implements IFileHandle {
|
|
61
|
-
private vol;
|
|
62
|
-
fd: number;
|
|
63
|
-
constructor(vol: Volume, fd: number);
|
|
64
|
-
appendFile(data: TData, options?: IAppendFileOptions | string): Promise<void>;
|
|
65
|
-
chmod(mode: TMode): Promise<void>;
|
|
66
|
-
chown(uid: number, gid: number): Promise<void>;
|
|
67
|
-
close(): Promise<void>;
|
|
68
|
-
datasync(): Promise<void>;
|
|
69
|
-
read(buffer: Buffer | Uint8Array, offset: number, length: number, position: number): Promise<TFileHandleReadResult>;
|
|
70
|
-
readFile(options?: IReadFileOptions | string): Promise<TDataOut>;
|
|
71
|
-
stat(options?: IFStatOptions): Promise<Stats>;
|
|
72
|
-
sync(): Promise<void>;
|
|
73
|
-
truncate(len?: number): Promise<void>;
|
|
74
|
-
utimes(atime: TTime, mtime: TTime): Promise<void>;
|
|
75
|
-
write(buffer: Buffer | Uint8Array, offset?: number, length?: number, position?: number): Promise<TFileHandleWriteResult>;
|
|
76
|
-
writeFile(data: TData, options?: IWriteFileOptions): Promise<void>;
|
|
77
|
-
}
|
|
78
|
-
export default function createPromisesApi(vol: Volume): null | IPromisesAPI;
|
package/lib/promises.js
DELETED
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
|
-
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
|
-
if (ar || !(i in from)) {
|
|
5
|
-
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
6
|
-
ar[i] = from[i];
|
|
7
|
-
}
|
|
8
|
-
}
|
|
9
|
-
return to.concat(ar || Array.prototype.slice.call(from));
|
|
10
|
-
};
|
|
11
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
-
exports.FileHandle = void 0;
|
|
13
|
-
function promisify(vol, fn, getResult) {
|
|
14
|
-
if (getResult === void 0) { getResult = function (input) { return input; }; }
|
|
15
|
-
return function () {
|
|
16
|
-
var args = [];
|
|
17
|
-
for (var _i = 0; _i < arguments.length; _i++) {
|
|
18
|
-
args[_i] = arguments[_i];
|
|
19
|
-
}
|
|
20
|
-
return new Promise(function (resolve, reject) {
|
|
21
|
-
vol[fn].bind(vol).apply(void 0, __spreadArray(__spreadArray([], args, false), [function (error, result) {
|
|
22
|
-
if (error)
|
|
23
|
-
return reject(error);
|
|
24
|
-
return resolve(getResult(result));
|
|
25
|
-
}], false));
|
|
26
|
-
});
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
var FileHandle = /** @class */ (function () {
|
|
30
|
-
function FileHandle(vol, fd) {
|
|
31
|
-
this.vol = vol;
|
|
32
|
-
this.fd = fd;
|
|
33
|
-
}
|
|
34
|
-
FileHandle.prototype.appendFile = function (data, options) {
|
|
35
|
-
return promisify(this.vol, 'appendFile')(this.fd, data, options);
|
|
36
|
-
};
|
|
37
|
-
FileHandle.prototype.chmod = function (mode) {
|
|
38
|
-
return promisify(this.vol, 'fchmod')(this.fd, mode);
|
|
39
|
-
};
|
|
40
|
-
FileHandle.prototype.chown = function (uid, gid) {
|
|
41
|
-
return promisify(this.vol, 'fchown')(this.fd, uid, gid);
|
|
42
|
-
};
|
|
43
|
-
FileHandle.prototype.close = function () {
|
|
44
|
-
return promisify(this.vol, 'close')(this.fd);
|
|
45
|
-
};
|
|
46
|
-
FileHandle.prototype.datasync = function () {
|
|
47
|
-
return promisify(this.vol, 'fdatasync')(this.fd);
|
|
48
|
-
};
|
|
49
|
-
FileHandle.prototype.read = function (buffer, offset, length, position) {
|
|
50
|
-
return promisify(this.vol, 'read', function (bytesRead) { return ({ bytesRead: bytesRead, buffer: buffer }); })(this.fd, buffer, offset, length, position);
|
|
51
|
-
};
|
|
52
|
-
FileHandle.prototype.readFile = function (options) {
|
|
53
|
-
return promisify(this.vol, 'readFile')(this.fd, options);
|
|
54
|
-
};
|
|
55
|
-
FileHandle.prototype.stat = function (options) {
|
|
56
|
-
return promisify(this.vol, 'fstat')(this.fd, options);
|
|
57
|
-
};
|
|
58
|
-
FileHandle.prototype.sync = function () {
|
|
59
|
-
return promisify(this.vol, 'fsync')(this.fd);
|
|
60
|
-
};
|
|
61
|
-
FileHandle.prototype.truncate = function (len) {
|
|
62
|
-
return promisify(this.vol, 'ftruncate')(this.fd, len);
|
|
63
|
-
};
|
|
64
|
-
FileHandle.prototype.utimes = function (atime, mtime) {
|
|
65
|
-
return promisify(this.vol, 'futimes')(this.fd, atime, mtime);
|
|
66
|
-
};
|
|
67
|
-
FileHandle.prototype.write = function (buffer, offset, length, position) {
|
|
68
|
-
return promisify(this.vol, 'write', function (bytesWritten) { return ({ bytesWritten: bytesWritten, buffer: buffer }); })(this.fd, buffer, offset, length, position);
|
|
69
|
-
};
|
|
70
|
-
FileHandle.prototype.writeFile = function (data, options) {
|
|
71
|
-
return promisify(this.vol, 'writeFile')(this.fd, data, options);
|
|
72
|
-
};
|
|
73
|
-
return FileHandle;
|
|
74
|
-
}());
|
|
75
|
-
exports.FileHandle = FileHandle;
|
|
76
|
-
function createPromisesApi(vol) {
|
|
77
|
-
if (typeof Promise === 'undefined')
|
|
78
|
-
return null;
|
|
79
|
-
return {
|
|
80
|
-
FileHandle: FileHandle,
|
|
81
|
-
access: function (path, mode) {
|
|
82
|
-
return promisify(vol, 'access')(path, mode);
|
|
83
|
-
},
|
|
84
|
-
appendFile: function (path, data, options) {
|
|
85
|
-
return promisify(vol, 'appendFile')(path instanceof FileHandle ? path.fd : path, data, options);
|
|
86
|
-
},
|
|
87
|
-
chmod: function (path, mode) {
|
|
88
|
-
return promisify(vol, 'chmod')(path, mode);
|
|
89
|
-
},
|
|
90
|
-
chown: function (path, uid, gid) {
|
|
91
|
-
return promisify(vol, 'chown')(path, uid, gid);
|
|
92
|
-
},
|
|
93
|
-
copyFile: function (src, dest, flags) {
|
|
94
|
-
return promisify(vol, 'copyFile')(src, dest, flags);
|
|
95
|
-
},
|
|
96
|
-
lchmod: function (path, mode) {
|
|
97
|
-
return promisify(vol, 'lchmod')(path, mode);
|
|
98
|
-
},
|
|
99
|
-
lchown: function (path, uid, gid) {
|
|
100
|
-
return promisify(vol, 'lchown')(path, uid, gid);
|
|
101
|
-
},
|
|
102
|
-
link: function (existingPath, newPath) {
|
|
103
|
-
return promisify(vol, 'link')(existingPath, newPath);
|
|
104
|
-
},
|
|
105
|
-
lstat: function (path, options) {
|
|
106
|
-
return promisify(vol, 'lstat')(path, options);
|
|
107
|
-
},
|
|
108
|
-
mkdir: function (path, options) {
|
|
109
|
-
return promisify(vol, 'mkdir')(path, options);
|
|
110
|
-
},
|
|
111
|
-
mkdtemp: function (prefix, options) {
|
|
112
|
-
return promisify(vol, 'mkdtemp')(prefix, options);
|
|
113
|
-
},
|
|
114
|
-
open: function (path, flags, mode) {
|
|
115
|
-
return promisify(vol, 'open', function (fd) { return new FileHandle(vol, fd); })(path, flags, mode);
|
|
116
|
-
},
|
|
117
|
-
readdir: function (path, options) {
|
|
118
|
-
return promisify(vol, 'readdir')(path, options);
|
|
119
|
-
},
|
|
120
|
-
readFile: function (id, options) {
|
|
121
|
-
return promisify(vol, 'readFile')(id instanceof FileHandle ? id.fd : id, options);
|
|
122
|
-
},
|
|
123
|
-
readlink: function (path, options) {
|
|
124
|
-
return promisify(vol, 'readlink')(path, options);
|
|
125
|
-
},
|
|
126
|
-
realpath: function (path, options) {
|
|
127
|
-
return promisify(vol, 'realpath')(path, options);
|
|
128
|
-
},
|
|
129
|
-
rename: function (oldPath, newPath) {
|
|
130
|
-
return promisify(vol, 'rename')(oldPath, newPath);
|
|
131
|
-
},
|
|
132
|
-
rmdir: function (path) {
|
|
133
|
-
return promisify(vol, 'rmdir')(path);
|
|
134
|
-
},
|
|
135
|
-
rm: function (path, options) {
|
|
136
|
-
return promisify(vol, 'rm')(path, options);
|
|
137
|
-
},
|
|
138
|
-
stat: function (path, options) {
|
|
139
|
-
return promisify(vol, 'stat')(path, options);
|
|
140
|
-
},
|
|
141
|
-
symlink: function (target, path, type) {
|
|
142
|
-
return promisify(vol, 'symlink')(target, path, type);
|
|
143
|
-
},
|
|
144
|
-
truncate: function (path, len) {
|
|
145
|
-
return promisify(vol, 'truncate')(path, len);
|
|
146
|
-
},
|
|
147
|
-
unlink: function (path) {
|
|
148
|
-
return promisify(vol, 'unlink')(path);
|
|
149
|
-
},
|
|
150
|
-
utimes: function (path, atime, mtime) {
|
|
151
|
-
return promisify(vol, 'utimes')(path, atime, mtime);
|
|
152
|
-
},
|
|
153
|
-
writeFile: function (id, data, options) {
|
|
154
|
-
return promisify(vol, 'writeFile')(id instanceof FileHandle ? id.fd : id, data, options);
|
|
155
|
-
},
|
|
156
|
-
};
|
|
157
|
-
}
|
|
158
|
-
exports.default = createPromisesApi;
|