0.1.6Updated a month ago
import { Zip, type I_File } from "@infinity-beyond/modules/zip.ts";
import { join, relative } from "jsr:@std/path";
import { walk } from "jsr:@std/fs@^1.0.13";

const files: I_File[] = []

const static_path = join(Deno.cwd(), 'ui/islands');
for await(const dirEntry of walk(static_path, { includeDirs: false })) {
  files.push({
    actual_path: dirEntry.path,
    path_in_zip: relative(static_path, dirEntry.path)
  });
}

(await Zip.Process(files, {
  destination_file_path: join(Deno.cwd(), 'dist/islands.zip')
})).save();