ZIP (archive)
Utilities to zip and unzip files and directories. You can always zip and unzip a file from the file system or use in memory data in the form of Uint8Array
.
Methods
type FileEntries: {
[filePath: string] : {
isDir: boolean,
contenst: string | Uint8Array
}
}
zip(in: string | FileEntries) : Promise<Uint8Array>;
zip(in: string | FileEntries, out: string) : Promise<Boolean>;
zip(in: string, out: null | undefined, skip: string[]) : Promise<Uint8Array>;
zip(in: string, out: string, skip: string[]) : Promise<Boolean>;
unzip(in: string | FileEntries) : Promise<FileEntries>;
unzip(in: string | FileEntries, out: string) : Promise<Boolean>;
Example
import archive, { FileEntries } from "archive";
import core_fetch from "core_fetch";
const files: FileEntries = {
"hello.txt": {
isDir: false,
contents: "Hello World"
},
"directory": {
isDir: true,
contents: null
},
"directory/a-nested-file.txt": {
isDir: false,
contents: ""
}
}
const zipData = await archive.zip(files);
core_fetch("https://my.cloud.storage", {
method: "POST",
body: zipData
})