UNPKG

@stryke/fs

Version:

A package containing various file system utilities that expand the functionality of NodeJs's built-in `fs` module.

2 lines (1 loc) 717 B
import{uint8ArrayToString as n}from"@stryke/convert/uint8-array-to-string";import{findFolderName as m,isDirectory as r,resolveParentPath as p}from"@stryke/path";import{joinPaths as a}from"@stryke/path/join-paths";import{createTarGzip as f}from"nanotar";import{listFiles as l}from"./list-files";import{readFileIfExisting as g}from"./read-file";import{writeFile as w}from"./write-file";export async function compressDirectory(t,i){const e=await l(r(t)?a(t,"**/*"):t,i),s=await f(await Promise.all(e.map(async o=>({name:o,data:await g(o)}))),{attrs:{group:"storm-software"}});return w(i?.destination?r(i.destination)?a(i.destination,`${new Date().getTime()}.tar.gz`):i.destination:r(t)?`${a(p(t),m(t))}.tar.gz`:t,n(s))}