1 Commits
0.1.1 ... 0.1.2

Author SHA1 Message Date
c38f149733 Better pathing
All checks were successful
Publish Library / Build NPM Project (push) Successful in 9s
Publish Library / Tag Version (push) Successful in 9s
2026-08-22 10:22:32 -04:00
2 changed files with 4 additions and 2 deletions

View File

@@ -1,6 +1,6 @@
{ {
"name": "@ztimson/zim-utils", "name": "@ztimson/zim-utils",
"version": "0.1.1", "version": "0.1.2",
"description": "Native, dependency-light ZIM archive reader/searcher and Kiwix catalog downloader for Node.js", "description": "Native, dependency-light ZIM archive reader/searcher and Kiwix catalog downloader for Node.js",
"author": "Zak Timson", "author": "Zak Timson",
"license": "MIT", "license": "MIT",

View File

@@ -73,8 +73,10 @@ export class ZimManager {
/** Resolves a file path or catalog `name` to a local file path. */ /** Resolves a file path or catalog `name` to a local file path. */
async #resolveFile(fileOrName) { async #resolveFile(fileOrName) {
if (fs.existsSync(fileOrName)) return fileOrName; if (fs.existsSync(fileOrName)) return fileOrName;
const joined = path.join(this.#dir, fileOrName);
if (fs.existsSync(joined)) return joined;
const local = await this.list(); const local = await this.list();
const match = local.find(l => l.meta?.name === fileOrName); const match = local.find(l => l.meta?.name === fileOrName || path.basename(l.file) === fileOrName);
if (!match) throw new Error(`ZIM not found locally: ${fileOrName}`); if (!match) throw new Error(`ZIM not found locally: ${fileOrName}`);
return match.file; return match.file;
} }