Package for reading different archive files in a consistent way.
A consistent set of archive extractors, mainly those required to work with shockpkg packages, though other formats may be added.
Some functionality, like disk image reading, resource forks, and file permissions, can only be fully supported on certain platforms.
Currently supported archive files:
- ZIP (
.zip
) - TAR (
.tar
) - TAR gzip (
.tar.gz
,.tgz
) - TAR bzip2 (
.tar.bz2
,.tbz2
) - Disk Images (
.dmg
,.iso
,.cdr
), macOS only as it useshdiutil
A plain directory can also be opened as an archive.
import {ArchiveZip} from '@shockpkg/archive-files';
const archive = new ArchiveZip('path/to/archive.zip');
await archive.read(async entry => {
console.log(entry.path);
await entry.extract(`extracted/${entry.path}`);
});
import {createArchiveByFileExtension} from '@shockpkg/archive-files';
const archive = createArchiveByFileExtension('path/to/archive.zip');
await archive.read(async entry => {
console.log(entry.path);
await entry.extract(`extracted/${entry.path}`);
});
If you find a bug or have compatibility issues, please open a ticket under issues section for this repository.
Copyright (c) 2019-2024 JrMasterModelBuilder
Licensed under the Mozilla Public License, v. 2.0.
If this license does not work for you, feel free to contact me.