Fixes for 1pux importer (#501)

* Pull jslib

* Fixed reading of 1pux files
This commit is contained in:
Daniel James Smith 2022-03-08 13:50:36 +01:00 committed by GitHub
parent 2295cd3266
commit eb0b844750
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 26 additions and 13 deletions

2
jslib

@ -1 +1 @@
Subproject commit 813457c348ef5cac289a4d64d34edc45f49f2b10 Subproject commit 9aad63f8335354a9b5ea59413bd9e41a68d497a3

View File

@ -48,19 +48,32 @@ export class CliUtils {
} }
static extract1PuxContent(input: string): Promise<string> { static extract1PuxContent(input: string): Promise<string> {
return new JSZip() return new Promise<string>((resolve, reject) => {
.loadAsync(input) let p: string = null;
.then((zip) => { if (input != null && input !== "") {
return zip.file("export.data").async("string"); const osInput = path.join(input);
}) if (osInput.indexOf(path.sep) === -1) {
.then( p = path.join(process.cwd(), osInput);
function success(content) { } else {
return content; p = osInput;
},
function error(e) {
return "";
} }
); } else {
reject("You must specify a file path.");
}
fs.readFile(p, function (err, data) {
if (err) {
reject(err);
}
JSZip.loadAsync(data).then(
(zip) => {
resolve(zip.file("export.data").async("string"));
},
(reason) => {
reject(reason);
}
);
});
});
} }
/** /**
* Save the given data to a file and determine the target file if necessary. * Save the given data to a file and determine the target file if necessary.