From 9e1af7d14d1ec2702ebb516df48735d5d38c5b30 Mon Sep 17 00:00:00 2001 From: Gareth Jones Date: Wed, 1 May 2019 17:26:33 +1200 Subject: [PATCH] =?UTF-8?q?fix:=20=F0=9F=90=9B=20accept=20`null`=20as=20va?= =?UTF-8?q?lue=20in=20`fromJSON`=20functions?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/volume.ts | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/volume.ts b/src/volume.ts index 3c377c5f..383ecb99 100644 --- a/src/volume.ts +++ b/src/volume.ts @@ -518,11 +518,13 @@ function validateGid(gid: number) { let promisesWarn = !process.env.MEMFS_DONT_WARN; +type DirectoryJSON = Record; + /** * `Volume` represents a file system. */ export class Volume { - static fromJSON(json: { [filename: string]: string }, cwd?: string): Volume { + static fromJSON(json: DirectoryJSON, cwd?: string): Volume { const vol = new Volume(); vol.fromJSON(json, cwd); return vol; @@ -855,7 +857,7 @@ export class Volume { } // fromJSON(json: {[filename: string]: string}, cwd: string = '/') { - fromJSON(json: { [filename: string]: string }, cwd: string = process.cwd()) { + fromJSON(json: DirectoryJSON, cwd: string = process.cwd()) { for (let filename in json) { const data = json[filename]; @@ -886,7 +888,7 @@ export class Volume { } // Legacy interface - mountSync(mountpoint: string, json: { [filename: string]: string }) { + mountSync(mountpoint: string, json: DirectoryJSON) { this.fromJSON(json, mountpoint); }