diff options
| author | MohamedBassem <me@mbassem.com> | 2024-05-05 11:54:39 +0100 |
|---|---|---|
| committer | MohamedBassem <me@mbassem.com> | 2024-05-05 11:55:27 +0100 |
| commit | 27f45d595be3bccc94e79f623c07555d62fa54ec (patch) | |
| tree | bf043322221b3a9bde66935f5a7da3eb9e5f9370 /apps/cli/src/commands | |
| parent | 81e49fa9e9ab059542a1055c11701c39fefa4cc2 (diff) | |
| download | karakeep-27f45d595be3bccc94e79f623c07555d62fa54ec.tar.zst | |
fix(cli): Allow bookmark listing to fetch all pages instead of only the first one. Fixes #135
Diffstat (limited to 'apps/cli/src/commands')
| -rw-r--r-- | apps/cli/src/commands/bookmarks.ts | 19 |
1 files changed, 16 insertions, 3 deletions
diff --git a/apps/cli/src/commands/bookmarks.ts b/apps/cli/src/commands/bookmarks.ts index 0d68fee0..5c7a160e 100644 --- a/apps/cli/src/commands/bookmarks.ts +++ b/apps/cli/src/commands/bookmarks.ts @@ -117,11 +117,24 @@ bookmarkCmd .option("--list-id <id>", "if set, only items from that list will be fetched") .action(async (opts) => { const api = getAPIClient(); - const resp = await api.bookmarks.getBookmarks.query({ + + const request = { archived: opts.includeArchived ? undefined : false, listId: opts.listId, - }); - console.log(resp.bookmarks.map(normalizeBookmark)); + }; + + let results: ZBookmark[] = []; + let resp = await api.bookmarks.getBookmarks.query(request); + + while (resp.nextCursor) { + resp = await api.bookmarks.getBookmarks.query({ + ...request, + cursor: resp.nextCursor, + }); + results = [...results, ...resp.bookmarks]; + } + + console.log(results.map(normalizeBookmark)); }); bookmarkCmd |
