diff --git a/package.json b/package.json index 63bf0e5..408a897 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "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", "author": "Zak Timson", "license": "MIT", diff --git a/src/manager.js b/src/manager.js index 47b3091..b19e59c 100644 --- a/src/manager.js +++ b/src/manager.js @@ -73,8 +73,10 @@ export class ZimManager { /** Resolves a file path or catalog `name` to a local file path. */ async #resolveFile(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 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}`); return match.file; }