memfs 4.2.3 → 4.4.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/constants.d.ts +1 -0
- package/lib/constants.js +1 -0
- package/lib/constants.js.map +1 -1
- package/lib/fsa-to-node/FsaNodeFs.d.ts +1 -0
- package/lib/node/FileHandle.d.ts +10 -0
- package/lib/node/FileHandle.js +6 -0
- package/lib/node/FileHandle.js.map +1 -1
- package/lib/node/FsPromises.d.ts +1 -0
- package/lib/node/lists/fsCallbackApiList.js +2 -0
- package/lib/node/lists/fsCallbackApiList.js.map +1 -1
- package/lib/node/lists/fsSynchronousApiList.js +2 -1
- package/lib/node/lists/fsSynchronousApiList.js.map +1 -1
- package/lib/node/types/misc.d.ts +10 -0
- package/lib/node/util.js +3 -0
- package/lib/node/util.js.map +1 -1
- package/lib/volume.d.ts +13 -9
- package/lib/volume.js +97 -13
- package/lib/volume.js.map +1 -1
- package/package.json +56 -56
package/lib/constants.d.ts
CHANGED
package/lib/constants.js
CHANGED
package/lib/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG;IACvB,QAAQ,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,GAAG;IACX,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,GAAG;IACZ,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,MAAM;IACjB,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE,OAAO;IACf,QAAQ,EAAE,KAAK;IACf,UAAU,EAAE,IAAI;IAChB,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IAEV,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IAEP,iBAAiB,EAAE,CAAC;IACpB,sBAAsB,EAAE,CAAC;IAEzB,mBAAmB,EAAE,CAAC;IACtB,sBAAsB,EAAE,CAAC;IACzB,4BAA4B,EAAE,CAAC;IAC/B,aAAa,EAAE,CAAC;IAChB,gBAAgB,EAAE,CAAC;IACnB,sBAAsB,EAAE,CAAC;CAC1B,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,SAAS,GAAG;IACvB,QAAQ,EAAE,CAAC;IACX,QAAQ,EAAE,CAAC;IACX,MAAM,EAAE,CAAC;IACT,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,KAAK;IACd,OAAO,EAAE,IAAI;IACb,OAAO,EAAE,KAAK;IACd,QAAQ,EAAE,KAAK;IACf,OAAO,EAAE,EAAE;IACX,MAAM,EAAE,GAAG;IACX,QAAQ,EAAE,GAAG;IACb,OAAO,EAAE,GAAG;IACZ,QAAQ,EAAE,IAAI;IACd,WAAW,EAAE,KAAK;IAClB,SAAS,EAAE,MAAM;IACjB,UAAU,EAAE,MAAM;IAClB,MAAM,EAAE,OAAO;IACf,SAAS,EAAE,OAAO;IAClB,QAAQ,EAAE,KAAK;IACf,UAAU,EAAE,IAAI;IAChB,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,EAAE;IACX,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IACV,OAAO,EAAE,CAAC;IAEV,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IAEP,iBAAiB,EAAE,CAAC;IACpB,sBAAsB,EAAE,CAAC;IAEzB,mBAAmB,EAAE,CAAC;IACtB,sBAAsB,EAAE,CAAC;IACzB,4BAA4B,EAAE,CAAC;IAC/B,aAAa,EAAE,CAAC;IAChB,gBAAgB,EAAE,CAAC;IACnB,sBAAsB,EAAE,CAAC;CAC1B,CAAC"}
|
package/lib/node/FileHandle.d.ts
CHANGED
|
@@ -12,12 +12,14 @@ export declare class FileHandle implements IFileHandle {
|
|
|
12
12
|
close(): Promise<void>;
|
|
13
13
|
datasync(): Promise<void>;
|
|
14
14
|
read(buffer: Buffer | Uint8Array, offset: number, length: number, position: number): Promise<TFileHandleReadResult>;
|
|
15
|
+
readv(buffers: ArrayBufferView[], position?: number | null | undefined): Promise<TFileHandleReadvResult>;
|
|
15
16
|
readFile(options?: opts.IReadFileOptions | string): Promise<TDataOut>;
|
|
16
17
|
stat(options?: opts.IFStatOptions): Promise<IStats>;
|
|
17
18
|
sync(): Promise<void>;
|
|
18
19
|
truncate(len?: number): Promise<void>;
|
|
19
20
|
utimes(atime: TTime, mtime: TTime): Promise<void>;
|
|
20
21
|
write(buffer: Buffer | Uint8Array, offset?: number, length?: number, position?: number): Promise<TFileHandleWriteResult>;
|
|
22
|
+
writev(buffers: ArrayBufferView[], position?: number | null | undefined): Promise<TFileHandleWritevResult>;
|
|
21
23
|
writeFile(data: TData, options?: opts.IWriteFileOptions): Promise<void>;
|
|
22
24
|
}
|
|
23
25
|
export interface TFileHandleReadResult {
|
|
@@ -28,3 +30,11 @@ export interface TFileHandleWriteResult {
|
|
|
28
30
|
bytesWritten: number;
|
|
29
31
|
buffer: Buffer | Uint8Array;
|
|
30
32
|
}
|
|
33
|
+
export interface TFileHandleReadvResult {
|
|
34
|
+
bytesRead: number;
|
|
35
|
+
buffers: ArrayBufferView[];
|
|
36
|
+
}
|
|
37
|
+
export interface TFileHandleWritevResult {
|
|
38
|
+
bytesWritten: number;
|
|
39
|
+
buffers: ArrayBufferView[];
|
|
40
|
+
}
|
package/lib/node/FileHandle.js
CHANGED
|
@@ -25,6 +25,9 @@ class FileHandle {
|
|
|
25
25
|
read(buffer, offset, length, position) {
|
|
26
26
|
return (0, util_1.promisify)(this.fs, 'read', bytesRead => ({ bytesRead, buffer }))(this.fd, buffer, offset, length, position);
|
|
27
27
|
}
|
|
28
|
+
readv(buffers, position) {
|
|
29
|
+
return (0, util_1.promisify)(this.fs, 'readv', bytesRead => ({ bytesRead, buffers }))(this.fd, buffers, position);
|
|
30
|
+
}
|
|
28
31
|
readFile(options) {
|
|
29
32
|
return (0, util_1.promisify)(this.fs, 'readFile')(this.fd, options);
|
|
30
33
|
}
|
|
@@ -43,6 +46,9 @@ class FileHandle {
|
|
|
43
46
|
write(buffer, offset, length, position) {
|
|
44
47
|
return (0, util_1.promisify)(this.fs, 'write', bytesWritten => ({ bytesWritten, buffer }))(this.fd, buffer, offset, length, position);
|
|
45
48
|
}
|
|
49
|
+
writev(buffers, position) {
|
|
50
|
+
return (0, util_1.promisify)(this.fs, 'writev', bytesWritten => ({ bytesWritten, buffers }))(this.fd, buffers, position);
|
|
51
|
+
}
|
|
46
52
|
writeFile(data, options) {
|
|
47
53
|
return (0, util_1.promisify)(this.fs, 'writeFile')(this.fd, data, options);
|
|
48
54
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FileHandle.js","sourceRoot":"","sources":["../../src/node/FileHandle.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"FileHandle.js","sourceRoot":"","sources":["../../src/node/FileHandle.ts"],"names":[],"mappings":"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"}
|
package/lib/node/FsPromises.d.ts
CHANGED
|
@@ -26,6 +26,7 @@ exports.fsCallbackApiList = [
|
|
|
26
26
|
'mkdtemp',
|
|
27
27
|
'open',
|
|
28
28
|
'read',
|
|
29
|
+
'readv',
|
|
29
30
|
'readdir',
|
|
30
31
|
'readFile',
|
|
31
32
|
'readlink',
|
|
@@ -42,6 +43,7 @@ exports.fsCallbackApiList = [
|
|
|
42
43
|
'watch',
|
|
43
44
|
'watchFile',
|
|
44
45
|
'write',
|
|
46
|
+
'writev',
|
|
45
47
|
'writeFile',
|
|
46
48
|
];
|
|
47
49
|
//# sourceMappingURL=fsCallbackApiList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fsCallbackApiList.js","sourceRoot":"","sources":["../../../src/node/lists/fsCallbackApiList.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAA+B;IAC3D,QAAQ;IACR,YAAY;IACZ,OAAO;IACP,OAAO;IACP,OAAO;IACP,UAAU;IACV,kBAAkB;IAClB,mBAAmB;IACnB,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,OAAO;IACP,OAAO;IACP,WAAW;IACX,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,OAAO;IACP,OAAO;IACP,SAAS;IACT,MAAM;IACN,MAAM;IACN,SAAS;IACT,UAAU;IACV,UAAU;IACV,UAAU;IACV,QAAQ;IACR,IAAI;IACJ,OAAO;IACP,MAAM;IACN,SAAS;IACT,UAAU;IACV,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,OAAO;IACP,WAAW;IACX,OAAO;IACP,WAAW;CACZ,CAAC"}
|
|
1
|
+
{"version":3,"file":"fsCallbackApiList.js","sourceRoot":"","sources":["../../../src/node/lists/fsCallbackApiList.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAA+B;IAC3D,QAAQ;IACR,YAAY;IACZ,OAAO;IACP,OAAO;IACP,OAAO;IACP,UAAU;IACV,kBAAkB;IAClB,mBAAmB;IACnB,QAAQ;IACR,QAAQ;IACR,QAAQ;IACR,WAAW;IACX,OAAO;IACP,OAAO;IACP,WAAW;IACX,SAAS;IACT,QAAQ;IACR,QAAQ;IACR,MAAM;IACN,OAAO;IACP,OAAO;IACP,SAAS;IACT,MAAM;IACN,MAAM;IACN,OAAO;IACP,SAAS;IACT,UAAU;IACV,UAAU;IACV,UAAU;IACV,QAAQ;IACR,IAAI;IACJ,OAAO;IACP,MAAM;IACN,SAAS;IACT,UAAU;IACV,QAAQ;IACR,aAAa;IACb,QAAQ;IACR,OAAO;IACP,WAAW;IACX,OAAO;IACP,QAAQ;IACR,WAAW;CACZ,CAAC"}
|
|
@@ -27,6 +27,7 @@ exports.fsSynchronousApiList = [
|
|
|
27
27
|
'readFileSync',
|
|
28
28
|
'readlinkSync',
|
|
29
29
|
'readSync',
|
|
30
|
+
'readvSync',
|
|
30
31
|
'realpathSync',
|
|
31
32
|
'renameSync',
|
|
32
33
|
'rmdirSync',
|
|
@@ -38,9 +39,9 @@ exports.fsSynchronousApiList = [
|
|
|
38
39
|
'utimesSync',
|
|
39
40
|
'writeFileSync',
|
|
40
41
|
'writeSync',
|
|
42
|
+
'writevSync',
|
|
41
43
|
// 'cpSync',
|
|
42
44
|
// 'lutimesSync',
|
|
43
45
|
// 'statfsSync',
|
|
44
|
-
// 'writevSync',
|
|
45
46
|
];
|
|
46
47
|
//# sourceMappingURL=fsSynchronousApiList.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fsSynchronousApiList.js","sourceRoot":"","sources":["../../../src/node/lists/fsSynchronousApiList.ts"],"names":[],"mappings":";;;AAEa,QAAA,oBAAoB,GAAkC;IACjE,YAAY;IACZ,gBAAgB;IAChB,WAAW;IACX,WAAW;IACX,WAAW;IACX,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,WAAW;IACX,WAAW;IACX,eAAe;IACf,aAAa;IACb,YAAY;IACZ,YAAY;IACZ,UAAU;IACV,WAAW;IACX,WAAW;IACX,aAAa;IACb,UAAU;IACV,aAAa;IACb,cAAc;IACd,cAAc;IACd,UAAU;IACV,cAAc;IACd,YAAY;IACZ,WAAW;IACX,QAAQ;IACR,UAAU;IACV,aAAa;IACb,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,WAAW;
|
|
1
|
+
{"version":3,"file":"fsSynchronousApiList.js","sourceRoot":"","sources":["../../../src/node/lists/fsSynchronousApiList.ts"],"names":[],"mappings":";;;AAEa,QAAA,oBAAoB,GAAkC;IACjE,YAAY;IACZ,gBAAgB;IAChB,WAAW;IACX,WAAW;IACX,WAAW;IACX,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,WAAW;IACX,WAAW;IACX,eAAe;IACf,aAAa;IACb,YAAY;IACZ,YAAY;IACZ,UAAU;IACV,WAAW;IACX,WAAW;IACX,aAAa;IACb,UAAU;IACV,aAAa;IACb,cAAc;IACd,cAAc;IACd,UAAU;IACV,WAAW;IACX,cAAc;IACd,YAAY;IACZ,WAAW;IACX,QAAQ;IACR,UAAU;IACV,aAAa;IACb,cAAc;IACd,YAAY;IACZ,YAAY;IACZ,eAAe;IACf,WAAW;IACX,YAAY;IAEZ,YAAY;IACZ,iBAAiB;IACjB,gBAAgB;CACjB,CAAC"}
|
package/lib/node/types/misc.d.ts
CHANGED
|
@@ -111,11 +111,13 @@ export interface IFileHandle {
|
|
|
111
111
|
close(): Promise<void>;
|
|
112
112
|
datasync(): Promise<void>;
|
|
113
113
|
read(buffer: Buffer | Uint8Array, offset: number, length: number, position: number): Promise<TFileHandleReadResult>;
|
|
114
|
+
readv(buffers: ArrayBufferView[], position?: number | null): Promise<TFileHandleReadvResult>;
|
|
114
115
|
readFile(options?: IReadFileOptions | string): Promise<TDataOut>;
|
|
115
116
|
stat(options?: IStatOptions): Promise<IStats>;
|
|
116
117
|
truncate(len?: number): Promise<void>;
|
|
117
118
|
utimes(atime: TTime, mtime: TTime): Promise<void>;
|
|
118
119
|
write(buffer: Buffer | ArrayBufferView | DataView, offset?: number, length?: number, position?: number): Promise<TFileHandleWriteResult>;
|
|
120
|
+
writev(buffers: ArrayBufferView[], position?: number | null): Promise<TFileHandleWritevResult>;
|
|
119
121
|
writeFile(data: TData, options?: IWriteFileOptions): Promise<void>;
|
|
120
122
|
}
|
|
121
123
|
export type TFileHandle = PathLike | IFileHandle;
|
|
@@ -127,4 +129,12 @@ export interface TFileHandleWriteResult {
|
|
|
127
129
|
bytesWritten: number;
|
|
128
130
|
buffer: Buffer | Uint8Array;
|
|
129
131
|
}
|
|
132
|
+
export interface TFileHandleReadvResult {
|
|
133
|
+
bytesRead: number;
|
|
134
|
+
buffers: ArrayBufferView[];
|
|
135
|
+
}
|
|
136
|
+
export interface TFileHandleWritevResult {
|
|
137
|
+
bytesWritten: number;
|
|
138
|
+
buffers: ArrayBufferView[];
|
|
139
|
+
}
|
|
130
140
|
export type AssertCallback<T> = T extends () => void ? T : never;
|
package/lib/node/util.js
CHANGED
|
@@ -95,6 +95,7 @@ const EISDIR = 'EISDIR';
|
|
|
95
95
|
const ENOTEMPTY = 'ENOTEMPTY';
|
|
96
96
|
const ENOSYS = 'ENOSYS';
|
|
97
97
|
const ERR_FS_EISDIR = 'ERR_FS_EISDIR';
|
|
98
|
+
const ERR_OUT_OF_RANGE = 'ERR_OUT_OF_RANGE';
|
|
98
99
|
function formatError(errorCode, func = '', path = '', path2 = '') {
|
|
99
100
|
let pathFormatted = '';
|
|
100
101
|
if (path)
|
|
@@ -128,6 +129,8 @@ function formatError(errorCode, func = '', path = '', path2 = '') {
|
|
|
128
129
|
return `ENOSYS: function not implemented, ${func}${pathFormatted}`;
|
|
129
130
|
case ERR_FS_EISDIR:
|
|
130
131
|
return `[ERR_FS_EISDIR]: Path is a directory: ${func} returned EISDIR (is a directory) ${path}`;
|
|
132
|
+
case ERR_OUT_OF_RANGE:
|
|
133
|
+
return `[ERR_OUT_OF_RANGE]: value out of range, ${func}${pathFormatted}`;
|
|
131
134
|
default:
|
|
132
135
|
return `${errorCode}: error occurred, ${func}${pathFormatted}`;
|
|
133
136
|
}
|
package/lib/node/util.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/node/util.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"util.js","sourceRoot":"","sources":["../../src/node/util.ts"],"names":[],"mappings":"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"}
|
package/lib/volume.d.ts
CHANGED
|
@@ -12,7 +12,7 @@ import { EventEmitter } from 'events';
|
|
|
12
12
|
import { TDataOut } from './encoding';
|
|
13
13
|
import * as misc from './node/types/misc';
|
|
14
14
|
import * as opts from './node/types/options';
|
|
15
|
-
import { FsCallbackApi } from './node/types/FsCallbackApi';
|
|
15
|
+
import { FsCallbackApi, WritevCallback } from './node/types/FsCallbackApi';
|
|
16
16
|
import { ToTreeOptions } from './print';
|
|
17
17
|
import type { PathLike, symlink } from 'fs';
|
|
18
18
|
import type { FsPromisesApi, FsSynchronousApi } from './node/types';
|
|
@@ -50,7 +50,7 @@ export interface NestedDirectoryJSON {
|
|
|
50
50
|
/**
|
|
51
51
|
* `Volume` represents a file system.
|
|
52
52
|
*/
|
|
53
|
-
export declare class Volume implements FsCallbackApi {
|
|
53
|
+
export declare class Volume implements FsCallbackApi, FsSynchronousApi {
|
|
54
54
|
static fromJSON(json: DirectoryJSON, cwd?: string): Volume;
|
|
55
55
|
static fromNestedJSON(json: NestedDirectoryJSON, cwd?: string): Volume;
|
|
56
56
|
/**
|
|
@@ -107,7 +107,7 @@ export declare class Volume implements FsCallbackApi {
|
|
|
107
107
|
*/
|
|
108
108
|
private wrapAsync;
|
|
109
109
|
private _toJSON;
|
|
110
|
-
toJSON(paths?: PathLike | PathLike[], json?: {}, isRelative?: boolean): DirectoryJSON;
|
|
110
|
+
toJSON(paths?: PathLike | PathLike[], json?: {}, isRelative?: boolean, asBuffer?: boolean): DirectoryJSON;
|
|
111
111
|
fromJSON(json: DirectoryJSON, cwd?: string): void;
|
|
112
112
|
fromNestedJSON(json: NestedDirectoryJSON, cwd?: string): void;
|
|
113
113
|
toTree(opts?: ToTreeOptions): string;
|
|
@@ -124,8 +124,12 @@ export declare class Volume implements FsCallbackApi {
|
|
|
124
124
|
close(fd: number, callback: TCallback<void>): void;
|
|
125
125
|
private openFileOrGetById;
|
|
126
126
|
private readBase;
|
|
127
|
-
readSync(fd: number, buffer: Buffer | ArrayBufferView | DataView, offset: number, length: number, position: number): number;
|
|
128
|
-
read(fd: number, buffer: Buffer | ArrayBufferView | DataView, offset: number, length: number, position: number, callback: (err?: Error | null, bytesRead?: number, buffer?: Buffer | ArrayBufferView | DataView) => void): void;
|
|
127
|
+
readSync(fd: number, buffer: Buffer | ArrayBufferView | DataView, offset: number, length: number, position: number | null): number;
|
|
128
|
+
read(fd: number, buffer: Buffer | ArrayBufferView | DataView, offset: number, length: number, position: number | null, callback: (err?: Error | null, bytesRead?: number, buffer?: Buffer | ArrayBufferView | DataView) => void): void;
|
|
129
|
+
private readvBase;
|
|
130
|
+
readv(fd: number, buffers: ArrayBufferView[], callback: misc.TCallback2<number, ArrayBufferView[]>): void;
|
|
131
|
+
readv(fd: number, buffers: ArrayBufferView[], position: number | null, callback: misc.TCallback2<number, ArrayBufferView[]>): void;
|
|
132
|
+
readvSync(fd: number, buffers: ArrayBufferView[], position: number | null): number;
|
|
129
133
|
private readFileBase;
|
|
130
134
|
readFileSync(file: TFileId, options?: opts.IReadFileOptions | string): TDataOut;
|
|
131
135
|
readFile(id: TFileId, callback: TCallback<TDataOut>): any;
|
|
@@ -140,6 +144,10 @@ export declare class Volume implements FsCallbackApi {
|
|
|
140
144
|
write(fd: number, str: string, callback: (...args: any[]) => void): any;
|
|
141
145
|
write(fd: number, str: string, position: number, callback: (...args: any[]) => void): any;
|
|
142
146
|
write(fd: number, str: string, position: number, encoding: BufferEncoding, callback: (...args: any[]) => void): any;
|
|
147
|
+
private writevBase;
|
|
148
|
+
writev(fd: number, buffers: ArrayBufferView[], callback: WritevCallback): void;
|
|
149
|
+
writev(fd: number, buffers: ArrayBufferView[], position: number | null, callback: WritevCallback): void;
|
|
150
|
+
writevSync(fd: number, buffers: ArrayBufferView[], position: number | null): number;
|
|
143
151
|
private writeFileBase;
|
|
144
152
|
writeFileSync(id: TFileId, data: TData, options?: opts.IWriteFileOptions): void;
|
|
145
153
|
writeFile(id: TFileId, data: TData, callback: TCallback<void>): any;
|
|
@@ -331,14 +339,10 @@ export declare class Volume implements FsCallbackApi {
|
|
|
331
339
|
cpSync: FsSynchronousApi['cpSync'];
|
|
332
340
|
lutimesSync: FsSynchronousApi['lutimesSync'];
|
|
333
341
|
statfsSync: FsSynchronousApi['statfsSync'];
|
|
334
|
-
writevSync: FsSynchronousApi['writevSync'];
|
|
335
|
-
readvSync: FsSynchronousApi['readvSync'];
|
|
336
342
|
opendirSync: FsSynchronousApi['opendirSync'];
|
|
337
343
|
cp: FsCallbackApi['cp'];
|
|
338
344
|
lutimes: FsCallbackApi['lutimes'];
|
|
339
345
|
statfs: FsCallbackApi['statfs'];
|
|
340
|
-
writev: FsCallbackApi['writev'];
|
|
341
|
-
readv: FsCallbackApi['readv'];
|
|
342
346
|
openAsBlob: FsCallbackApi['openAsBlob'];
|
|
343
347
|
opendir: FsCallbackApi['opendir'];
|
|
344
348
|
}
|
package/lib/volume.js
CHANGED
|
@@ -21,11 +21,12 @@ const constants_2 = require("./node/constants");
|
|
|
21
21
|
const options_1 = require("./node/options");
|
|
22
22
|
const util_1 = require("./node/util");
|
|
23
23
|
const resolveCrossPlatform = pathModule.resolve;
|
|
24
|
-
const { O_RDONLY, O_WRONLY, O_RDWR, O_CREAT, O_EXCL, O_TRUNC, O_APPEND, O_DIRECTORY, F_OK, COPYFILE_EXCL, COPYFILE_FICLONE_FORCE, } = constants_1.constants;
|
|
24
|
+
const { O_RDONLY, O_WRONLY, O_RDWR, O_CREAT, O_EXCL, O_TRUNC, O_APPEND, O_DIRECTORY, O_SYMLINK, F_OK, COPYFILE_EXCL, COPYFILE_FICLONE_FORCE, } = constants_1.constants;
|
|
25
25
|
const { sep, relative, join, dirname } = pathModule.posix ? pathModule.posix : pathModule;
|
|
26
26
|
// ---------------------------------------- Constants
|
|
27
27
|
const kMinPoolSpace = 128;
|
|
28
28
|
// ---------------------------------------- Error messages
|
|
29
|
+
const EPERM = 'EPERM';
|
|
29
30
|
const ENOENT = 'ENOENT';
|
|
30
31
|
const EBADF = 'EBADF';
|
|
31
32
|
const EINVAL = 'EINVAL';
|
|
@@ -37,6 +38,7 @@ const EISDIR = 'EISDIR';
|
|
|
37
38
|
const ENOTEMPTY = 'ENOTEMPTY';
|
|
38
39
|
const ENOSYS = 'ENOSYS';
|
|
39
40
|
const ERR_FS_EISDIR = 'ERR_FS_EISDIR';
|
|
41
|
+
const ERR_OUT_OF_RANGE = 'ERR_OUT_OF_RANGE';
|
|
40
42
|
let resolve = (filename, base = process_1.default.cwd()) => resolveCrossPlatform(base, filename);
|
|
41
43
|
if (util_1.isWin) {
|
|
42
44
|
const _resolve = resolve;
|
|
@@ -155,14 +157,10 @@ class Volume {
|
|
|
155
157
|
this.cpSync = notImplemented;
|
|
156
158
|
this.lutimesSync = notImplemented;
|
|
157
159
|
this.statfsSync = notImplemented;
|
|
158
|
-
this.writevSync = notImplemented;
|
|
159
|
-
this.readvSync = notImplemented;
|
|
160
160
|
this.opendirSync = notImplemented;
|
|
161
161
|
this.cp = notImplemented;
|
|
162
162
|
this.lutimes = notImplemented;
|
|
163
163
|
this.statfs = notImplemented;
|
|
164
|
-
this.writev = notImplemented;
|
|
165
|
-
this.readv = notImplemented;
|
|
166
164
|
this.openAsBlob = notImplemented;
|
|
167
165
|
this.opendir = notImplemented;
|
|
168
166
|
this.props = Object.assign({ Node: node_1.Node, Link: node_1.Link, File: node_1.File }, props);
|
|
@@ -362,7 +360,7 @@ class Volume {
|
|
|
362
360
|
callback(null, result);
|
|
363
361
|
});
|
|
364
362
|
}
|
|
365
|
-
_toJSON(link = this.root, json = {}, path) {
|
|
363
|
+
_toJSON(link = this.root, json = {}, path, asBuffer) {
|
|
366
364
|
let isEmpty = true;
|
|
367
365
|
let children = link.children;
|
|
368
366
|
if (link.getNode().isFile()) {
|
|
@@ -383,7 +381,7 @@ class Volume {
|
|
|
383
381
|
let filename = child.getPath();
|
|
384
382
|
if (path)
|
|
385
383
|
filename = relative(path, filename);
|
|
386
|
-
json[filename] = node.getString();
|
|
384
|
+
json[filename] = asBuffer ? node.getBuffer() : node.getString();
|
|
387
385
|
}
|
|
388
386
|
else if (node.isDirectory()) {
|
|
389
387
|
this._toJSON(child, json, path);
|
|
@@ -397,7 +395,7 @@ class Volume {
|
|
|
397
395
|
}
|
|
398
396
|
return json;
|
|
399
397
|
}
|
|
400
|
-
toJSON(paths, json = {}, isRelative = false) {
|
|
398
|
+
toJSON(paths, json = {}, isRelative = false, asBuffer = false) {
|
|
401
399
|
const links = [];
|
|
402
400
|
if (paths) {
|
|
403
401
|
if (!Array.isArray(paths))
|
|
@@ -416,7 +414,7 @@ class Volume {
|
|
|
416
414
|
if (!links.length)
|
|
417
415
|
return json;
|
|
418
416
|
for (const link of links)
|
|
419
|
-
this._toJSON(link, json, isRelative ? link.getPath() : '');
|
|
417
|
+
this._toJSON(link, json, isRelative ? link.getPath() : '', asBuffer);
|
|
420
418
|
return json;
|
|
421
419
|
}
|
|
422
420
|
// TODO: `cwd` should probably not invoke `process.cwd()`.
|
|
@@ -521,7 +519,7 @@ class Volume {
|
|
|
521
519
|
const modeNum = (0, util_1.modeToNumber)(mode);
|
|
522
520
|
const fileName = (0, util_1.pathToFilename)(path);
|
|
523
521
|
const flagsNum = (0, util_1.flagsToNumber)(flags);
|
|
524
|
-
return this.openBase(fileName, flagsNum, modeNum);
|
|
522
|
+
return this.openBase(fileName, flagsNum, modeNum, !(flagsNum & O_SYMLINK));
|
|
525
523
|
}
|
|
526
524
|
open(path, flags, a, b) {
|
|
527
525
|
let mode = a;
|
|
@@ -534,7 +532,7 @@ class Volume {
|
|
|
534
532
|
const modeNum = (0, util_1.modeToNumber)(mode);
|
|
535
533
|
const fileName = (0, util_1.pathToFilename)(path);
|
|
536
534
|
const flagsNum = (0, util_1.flagsToNumber)(flags);
|
|
537
|
-
this.wrapAsync(this.openBase, [fileName, flagsNum, modeNum], callback);
|
|
535
|
+
this.wrapAsync(this.openBase, [fileName, flagsNum, modeNum, !(flagsNum & O_SYMLINK)], callback);
|
|
538
536
|
}
|
|
539
537
|
closeFile(file) {
|
|
540
538
|
if (!this.fds[file.fd])
|
|
@@ -564,8 +562,14 @@ class Volume {
|
|
|
564
562
|
}
|
|
565
563
|
}
|
|
566
564
|
readBase(fd, buffer, offset, length, position) {
|
|
565
|
+
if (buffer.byteLength < length) {
|
|
566
|
+
throw (0, util_1.createError)(ERR_OUT_OF_RANGE, 'read', undefined, undefined, RangeError);
|
|
567
|
+
}
|
|
567
568
|
const file = this.getFileByFdOrThrow(fd);
|
|
568
|
-
|
|
569
|
+
if (file.node.isSymlink()) {
|
|
570
|
+
throw (0, util_1.createError)(EPERM, 'read', file.link.getPath());
|
|
571
|
+
}
|
|
572
|
+
return file.read(buffer, Number(offset), Number(length), position === -1 || typeof position !== 'number' ? undefined : position);
|
|
569
573
|
}
|
|
570
574
|
readSync(fd, buffer, offset, length, position) {
|
|
571
575
|
(0, util_1.validateFd)(fd);
|
|
@@ -590,6 +594,44 @@ class Volume {
|
|
|
590
594
|
}
|
|
591
595
|
});
|
|
592
596
|
}
|
|
597
|
+
readvBase(fd, buffers, position) {
|
|
598
|
+
const file = this.getFileByFdOrThrow(fd);
|
|
599
|
+
let p = position !== null && position !== void 0 ? position : undefined;
|
|
600
|
+
if (p === -1) {
|
|
601
|
+
p = undefined;
|
|
602
|
+
}
|
|
603
|
+
let bytesRead = 0;
|
|
604
|
+
for (const buffer of buffers) {
|
|
605
|
+
const bytes = file.read(buffer, 0, buffer.byteLength, p);
|
|
606
|
+
p = undefined;
|
|
607
|
+
bytesRead += bytes;
|
|
608
|
+
if (bytes < buffer.byteLength)
|
|
609
|
+
break;
|
|
610
|
+
}
|
|
611
|
+
return bytesRead;
|
|
612
|
+
}
|
|
613
|
+
readv(fd, buffers, a, b) {
|
|
614
|
+
let position = a;
|
|
615
|
+
let callback = b;
|
|
616
|
+
if (typeof a === 'function') {
|
|
617
|
+
position = null;
|
|
618
|
+
callback = a;
|
|
619
|
+
}
|
|
620
|
+
(0, util_1.validateCallback)(callback);
|
|
621
|
+
(0, setImmediate_1.default)(() => {
|
|
622
|
+
try {
|
|
623
|
+
const bytes = this.readvBase(fd, buffers, position);
|
|
624
|
+
callback(null, bytes, buffers);
|
|
625
|
+
}
|
|
626
|
+
catch (err) {
|
|
627
|
+
callback(err);
|
|
628
|
+
}
|
|
629
|
+
});
|
|
630
|
+
}
|
|
631
|
+
readvSync(fd, buffers, position) {
|
|
632
|
+
(0, util_1.validateFd)(fd);
|
|
633
|
+
return this.readvBase(fd, buffers, position);
|
|
634
|
+
}
|
|
593
635
|
readFileBase(id, flagsNum, encoding) {
|
|
594
636
|
let result;
|
|
595
637
|
const isUserFd = typeof id === 'number';
|
|
@@ -630,7 +672,10 @@ class Volume {
|
|
|
630
672
|
}
|
|
631
673
|
writeBase(fd, buf, offset, length, position) {
|
|
632
674
|
const file = this.getFileByFdOrThrow(fd, 'write');
|
|
633
|
-
|
|
675
|
+
if (file.node.isSymlink()) {
|
|
676
|
+
throw (0, util_1.createError)(EBADF, 'write', file.link.getPath());
|
|
677
|
+
}
|
|
678
|
+
return file.write(buf, offset, length, position === -1 || typeof position !== 'number' ? undefined : position);
|
|
634
679
|
}
|
|
635
680
|
writeSync(fd, a, b, c, d) {
|
|
636
681
|
const [, buf, offset, length, position] = (0, util_1.getWriteSyncArgs)(fd, a, b, c, d);
|
|
@@ -653,6 +698,45 @@ class Volume {
|
|
|
653
698
|
}
|
|
654
699
|
});
|
|
655
700
|
}
|
|
701
|
+
writevBase(fd, buffers, position) {
|
|
702
|
+
const file = this.getFileByFdOrThrow(fd);
|
|
703
|
+
let p = position !== null && position !== void 0 ? position : undefined;
|
|
704
|
+
if (p === -1) {
|
|
705
|
+
p = undefined;
|
|
706
|
+
}
|
|
707
|
+
let bytesWritten = 0;
|
|
708
|
+
for (const buffer of buffers) {
|
|
709
|
+
const nodeBuf = buffer_1.Buffer.from(buffer.buffer, buffer.byteOffset, buffer.byteLength);
|
|
710
|
+
const bytes = file.write(nodeBuf, 0, nodeBuf.byteLength, p);
|
|
711
|
+
p = undefined;
|
|
712
|
+
bytesWritten += bytes;
|
|
713
|
+
if (bytes < nodeBuf.byteLength)
|
|
714
|
+
break;
|
|
715
|
+
}
|
|
716
|
+
return bytesWritten;
|
|
717
|
+
}
|
|
718
|
+
writev(fd, buffers, a, b) {
|
|
719
|
+
let position = a;
|
|
720
|
+
let callback = b;
|
|
721
|
+
if (typeof a === 'function') {
|
|
722
|
+
position = null;
|
|
723
|
+
callback = a;
|
|
724
|
+
}
|
|
725
|
+
(0, util_1.validateCallback)(callback);
|
|
726
|
+
(0, setImmediate_1.default)(() => {
|
|
727
|
+
try {
|
|
728
|
+
const bytes = this.writevBase(fd, buffers, position);
|
|
729
|
+
callback(null, bytes, buffers);
|
|
730
|
+
}
|
|
731
|
+
catch (err) {
|
|
732
|
+
callback(err);
|
|
733
|
+
}
|
|
734
|
+
});
|
|
735
|
+
}
|
|
736
|
+
writevSync(fd, buffers, position) {
|
|
737
|
+
(0, util_1.validateFd)(fd);
|
|
738
|
+
return this.writevBase(fd, buffers, position);
|
|
739
|
+
}
|
|
656
740
|
writeFileBase(id, buf, flagsNum, modeNum) {
|
|
657
741
|
// console.log('writeFileBase', id, buf, flagsNum, modeNum);
|
|
658
742
|
// const node = this.getNodeByIdOrCreate(id, flagsNum, modeNum);
|
package/lib/volume.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"volume.js","sourceRoot":"","sources":["../src/volume.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"volume.js","sourceRoot":"","sources":["../src/volume.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,21 +1,45 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "memfs",
|
|
3
|
-
"version": "4.
|
|
3
|
+
"version": "4.4.0",
|
|
4
4
|
"description": "In-memory file-system with Node's fs API.",
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
"
|
|
11
|
-
"
|
|
12
|
-
|
|
5
|
+
"keywords": [
|
|
6
|
+
"fs",
|
|
7
|
+
"filesystem",
|
|
8
|
+
"fs.js",
|
|
9
|
+
"memory-fs",
|
|
10
|
+
"memfs",
|
|
11
|
+
"file",
|
|
12
|
+
"file system",
|
|
13
|
+
"mount",
|
|
14
|
+
"memory",
|
|
15
|
+
"in-memory",
|
|
16
|
+
"virtual",
|
|
17
|
+
"test",
|
|
18
|
+
"testing",
|
|
19
|
+
"mock",
|
|
20
|
+
"fsa",
|
|
21
|
+
"file system access",
|
|
22
|
+
"native file system",
|
|
23
|
+
"webfs",
|
|
24
|
+
"crudfs",
|
|
25
|
+
"opfs",
|
|
26
|
+
"casfs",
|
|
27
|
+
"content addressable storage"
|
|
28
|
+
],
|
|
13
29
|
"homepage": "https://github.com/streamich/memfs",
|
|
14
30
|
"repository": {
|
|
15
31
|
"type": "git",
|
|
16
32
|
"url": "https://github.com/streamich/memfs.git"
|
|
17
33
|
},
|
|
34
|
+
"funding": {
|
|
35
|
+
"type": "github",
|
|
36
|
+
"url": "https://github.com/sponsors/streamich"
|
|
37
|
+
},
|
|
18
38
|
"license": "Apache-2.0",
|
|
39
|
+
"author": {
|
|
40
|
+
"name": "streamich",
|
|
41
|
+
"url": "https://github.com/streamich"
|
|
42
|
+
},
|
|
19
43
|
"main": "lib/index.js",
|
|
20
44
|
"types": "lib/index.d.ts",
|
|
21
45
|
"files": [
|
|
@@ -27,7 +51,14 @@
|
|
|
27
51
|
],
|
|
28
52
|
"scripts": {
|
|
29
53
|
"build": "tsc -p .",
|
|
54
|
+
"build:webfs": "NODE_ENV=production webpack --config ./src/webfs/webpack.config.js",
|
|
30
55
|
"clean": "rimraf lib types",
|
|
56
|
+
"demo:crud-and-cas": "webpack serve --config ./demo/crud-and-cas/webpack.config.js",
|
|
57
|
+
"demo:fsa-to-node-sync-tests": "webpack serve --config ./demo/fsa-to-node-sync-tests/webpack.config.js",
|
|
58
|
+
"demo:fsa-to-node-zipfile": "webpack serve --config ./demo/fsa-to-node-zipfile/webpack.config.js",
|
|
59
|
+
"demo:git-fsa": "webpack serve --config ./demo/git-fsa/webpack.config.js",
|
|
60
|
+
"demo:git-opfs": "webpack serve --config ./demo/git-opfs/webpack.config.js",
|
|
61
|
+
"demo:webfs": "webpack serve --config ./src/webfs/webpack.config.js",
|
|
31
62
|
"prettier": "prettier --ignore-path .gitignore --write \"src/**/*.{ts,js}\"",
|
|
32
63
|
"prettier:diff": "prettier -l \"src/**/*.{ts,js}\"",
|
|
33
64
|
"test": "jest --maxWorkers 2",
|
|
@@ -35,39 +66,8 @@
|
|
|
35
66
|
"test:watch": "jest --watch",
|
|
36
67
|
"tslint": "tslint \"src/**/*.ts\" -t verbose",
|
|
37
68
|
"typecheck": "tsc -p .",
|
|
38
|
-
"watch": "watch \"npm run build\" ./src"
|
|
39
|
-
"build:webfs": "NODE_ENV=production webpack --config ./src/webfs/webpack.config.js",
|
|
40
|
-
"demo:webfs": "webpack serve --config ./src/webfs/webpack.config.js",
|
|
41
|
-
"demo:fsa-to-node-sync-tests": "webpack serve --config ./demo/fsa-to-node-sync-tests/webpack.config.js",
|
|
42
|
-
"demo:fsa-to-node-zipfile": "webpack serve --config ./demo/fsa-to-node-zipfile/webpack.config.js",
|
|
43
|
-
"demo:git-fsa": "webpack serve --config ./demo/git-fsa/webpack.config.js",
|
|
44
|
-
"demo:git-opfs": "webpack serve --config ./demo/git-opfs/webpack.config.js",
|
|
45
|
-
"demo:crud-and-cas": "webpack serve --config ./demo/crud-and-cas/webpack.config.js"
|
|
69
|
+
"watch": "watch \"npm run build\" ./src"
|
|
46
70
|
},
|
|
47
|
-
"keywords": [
|
|
48
|
-
"fs",
|
|
49
|
-
"filesystem",
|
|
50
|
-
"fs.js",
|
|
51
|
-
"memory-fs",
|
|
52
|
-
"memfs",
|
|
53
|
-
"file",
|
|
54
|
-
"file system",
|
|
55
|
-
"mount",
|
|
56
|
-
"memory",
|
|
57
|
-
"in-memory",
|
|
58
|
-
"virtual",
|
|
59
|
-
"test",
|
|
60
|
-
"testing",
|
|
61
|
-
"mock",
|
|
62
|
-
"fsa",
|
|
63
|
-
"file system access",
|
|
64
|
-
"native file system",
|
|
65
|
-
"webfs",
|
|
66
|
-
"crudfs",
|
|
67
|
-
"opfs",
|
|
68
|
-
"casfs",
|
|
69
|
-
"content addressable storage"
|
|
70
|
-
],
|
|
71
71
|
"commitlint": {
|
|
72
72
|
"extends": [
|
|
73
73
|
"@commitlint/config-conventional"
|
|
@@ -78,6 +78,16 @@
|
|
|
78
78
|
"path": "git-cz"
|
|
79
79
|
}
|
|
80
80
|
},
|
|
81
|
+
"prettier": {
|
|
82
|
+
"arrowParens": "avoid",
|
|
83
|
+
"bracketSpacing": true,
|
|
84
|
+
"printWidth": 120,
|
|
85
|
+
"semi": true,
|
|
86
|
+
"singleQuote": true,
|
|
87
|
+
"tabWidth": 2,
|
|
88
|
+
"trailingComma": "all",
|
|
89
|
+
"useTabs": false
|
|
90
|
+
},
|
|
81
91
|
"release": {
|
|
82
92
|
"branches": [
|
|
83
93
|
"master",
|
|
@@ -110,9 +120,6 @@
|
|
|
110
120
|
"^.+\\.tsx?$": "ts-jest"
|
|
111
121
|
}
|
|
112
122
|
},
|
|
113
|
-
"peerDependencies": {
|
|
114
|
-
"tslib": "2"
|
|
115
|
-
},
|
|
116
123
|
"dependencies": {
|
|
117
124
|
"json-joy": "^9.2.0",
|
|
118
125
|
"thingies": "^1.11.1"
|
|
@@ -121,7 +128,7 @@
|
|
|
121
128
|
"@semantic-release/changelog": "^6.0.1",
|
|
122
129
|
"@semantic-release/git": "^10.0.1",
|
|
123
130
|
"@semantic-release/npm": "^9.0.1",
|
|
124
|
-
"@types/jest": "^
|
|
131
|
+
"@types/jest": "^29.0.0",
|
|
125
132
|
"@types/node": "^10.17.60",
|
|
126
133
|
"app-root-path": "^3.1.0",
|
|
127
134
|
"assert": "^2.0.0",
|
|
@@ -129,7 +136,7 @@
|
|
|
129
136
|
"html-webpack-plugin": "^5.5.3",
|
|
130
137
|
"husky": "^8.0.1",
|
|
131
138
|
"isomorphic-git": "^1.24.2",
|
|
132
|
-
"jest": "^
|
|
139
|
+
"jest": "^29.0.0",
|
|
133
140
|
"path-browserify": "^1.0.1",
|
|
134
141
|
"prettier": "^2.7.1",
|
|
135
142
|
"pretty-quick": "^3.1.3",
|
|
@@ -150,17 +157,10 @@
|
|
|
150
157
|
"webpack-cli": "^5.1.4",
|
|
151
158
|
"webpack-dev-server": "^4.15.1"
|
|
152
159
|
},
|
|
160
|
+
"peerDependencies": {
|
|
161
|
+
"tslib": "2"
|
|
162
|
+
},
|
|
153
163
|
"engines": {
|
|
154
164
|
"node": ">= 4.0.0"
|
|
155
|
-
},
|
|
156
|
-
"prettier": {
|
|
157
|
-
"printWidth": 120,
|
|
158
|
-
"tabWidth": 2,
|
|
159
|
-
"useTabs": false,
|
|
160
|
-
"semi": true,
|
|
161
|
-
"singleQuote": true,
|
|
162
|
-
"trailingComma": "all",
|
|
163
|
-
"bracketSpacing": true,
|
|
164
|
-
"arrowParens": "avoid"
|
|
165
165
|
}
|
|
166
166
|
}
|