aboutsummaryrefslogtreecommitdiffstats
path: root/packages
diff options
context:
space:
mode:
authorkamtschatka <simon.schatka@gmx.at>2024-09-30 02:02:48 +0200
committerGitHub <noreply@github.com>2024-09-30 01:02:48 +0100
commit8b69cddfb92b3b7548d3f90dbec1038c728ea5d9 (patch)
tree7d6dcbdc6c40aac0c98dce48a573c560f2891a90 /packages
parent5281531d6f4aab4605c407d5167dd8e44f237f0d (diff)
downloadkarakeep-8b69cddfb92b3b7548d3f90dbec1038c728ea5d9.tar.zst
feature(web): Add ability to manually trigger full page archives. Fixes #398 (#418)
* [Feature Request] Ability to select what to "crawl full page archive" #398 Added the ability to start a full page crawl for links and also in bulk operations added the ability to refresh links as a bulk operation as well * minor icon and wording changes --------- Co-authored-by: MohamedBassem <me@mbassem.com>
Diffstat (limited to 'packages')
-rw-r--r--packages/shared/queues.ts3
-rw-r--r--packages/trpc/routers/bookmarks.ts8
2 files changed, 9 insertions, 2 deletions
diff --git a/packages/shared/queues.ts b/packages/shared/queues.ts
index 756f095d..cadeefd0 100644
--- a/packages/shared/queues.ts
+++ b/packages/shared/queues.ts
@@ -17,8 +17,9 @@ export function runQueueDBMigrations() {
export const zCrawlLinkRequestSchema = z.object({
bookmarkId: z.string(),
runInference: z.boolean().optional(),
+ archiveFullPage: z.boolean().optional().default(false),
});
-export type ZCrawlLinkRequest = z.infer<typeof zCrawlLinkRequestSchema>;
+export type ZCrawlLinkRequest = z.input<typeof zCrawlLinkRequestSchema>;
export const LinkCrawlerQueue = new SqliteQueue<ZCrawlLinkRequest>(
"link_crawler_queue",
diff --git a/packages/trpc/routers/bookmarks.ts b/packages/trpc/routers/bookmarks.ts
index 9990c6ed..9b23c88e 100644
--- a/packages/trpc/routers/bookmarks.ts
+++ b/packages/trpc/routers/bookmarks.ts
@@ -426,11 +426,17 @@ export const bookmarksAppRouter = router({
}
}),
recrawlBookmark: authedProcedure
- .input(z.object({ bookmarkId: z.string() }))
+ .input(
+ z.object({
+ bookmarkId: z.string(),
+ archiveFullPage: z.boolean().optional().default(false),
+ }),
+ )
.use(ensureBookmarkOwnership)
.mutation(async ({ input }) => {
await LinkCrawlerQueue.enqueue({
bookmarkId: input.bookmarkId,
+ archiveFullPage: input.archiveFullPage,
});
}),
getBookmark: authedProcedure