aboutsummaryrefslogtreecommitdiffstats
path: root/apps/web/components/admin/AdminActions.tsx
diff options
context:
space:
mode:
authorMohamed Bassem <me@mbassem.com>2025-03-09 13:22:18 +0000
committerMohamed Bassem <me@mbassem.com>2025-03-09 13:22:36 +0000
commit80a808048340f7f5e95e71c4ee649fdae7c8c565 (patch)
tree746f98855915c91695a5747fc4281bdba268aee1 /apps/web/components/admin/AdminActions.tsx
parentf42a305fcbd68bf5983bdd75a784ea87e818fd2f (diff)
downloadkarakeep-80a808048340f7f5e95e71c4ee649fdae7c8c565.tar.zst
feat: Move background jobs with the admin actions. Fixes #1083
Diffstat (limited to 'apps/web/components/admin/AdminActions.tsx')
-rw-r--r--apps/web/components/admin/AdminActions.tsx159
1 files changed, 0 insertions, 159 deletions
diff --git a/apps/web/components/admin/AdminActions.tsx b/apps/web/components/admin/AdminActions.tsx
deleted file mode 100644
index fb151ac8..00000000
--- a/apps/web/components/admin/AdminActions.tsx
+++ /dev/null
@@ -1,159 +0,0 @@
-"use client";
-
-import { ActionButton } from "@/components/ui/action-button";
-import { toast } from "@/components/ui/use-toast";
-import { useTranslation } from "@/lib/i18n/client";
-import { api } from "@/lib/trpc";
-
-export default function AdminActions() {
- const { t } = useTranslation();
- const { mutate: recrawlLinks, isPending: isRecrawlPending } =
- api.admin.recrawlLinks.useMutation({
- onSuccess: () => {
- toast({
- description: "Recrawl enqueued",
- });
- },
- onError: (e) => {
- toast({
- variant: "destructive",
- description: e.message,
- });
- },
- });
-
- const { mutate: reindexBookmarks, isPending: isReindexPending } =
- api.admin.reindexAllBookmarks.useMutation({
- onSuccess: () => {
- toast({
- description: "Reindex enqueued",
- });
- },
- onError: (e) => {
- toast({
- variant: "destructive",
- description: e.message,
- });
- },
- });
-
- const { mutate: reprocessAssetsFixMode, isPending: isReprocessingPending } =
- api.admin.reprocessAssetsFixMode.useMutation({
- onSuccess: () => {
- toast({
- description: "Reprocessing enqueued",
- });
- },
- onError: (e) => {
- toast({
- variant: "destructive",
- description: e.message,
- });
- },
- });
-
- const {
- mutate: reRunInferenceOnAllBookmarks,
- isPending: isInferencePending,
- } = api.admin.reRunInferenceOnAllBookmarks.useMutation({
- onSuccess: () => {
- toast({
- description: "Inference jobs enqueued",
- });
- },
- onError: (e) => {
- toast({
- variant: "destructive",
- description: e.message,
- });
- },
- });
-
- const { mutateAsync: tidyAssets, isPending: isTidyAssetsPending } =
- api.admin.tidyAssets.useMutation({
- onSuccess: () => {
- toast({
- description: "Tidy assets request has been enqueued!",
- });
- },
- onError: (e) => {
- toast({
- variant: "destructive",
- description: e.message,
- });
- },
- });
-
- return (
- <div>
- <div className="mb-2 text-xl font-medium">{t("common.actions")}</div>
- <div className="flex flex-col gap-2 sm:w-1/2">
- <ActionButton
- variant="destructive"
- loading={isRecrawlPending}
- onClick={() =>
- recrawlLinks({ crawlStatus: "failure", runInference: true })
- }
- >
- {t("admin.actions.recrawl_failed_links_only")}
- </ActionButton>
- <ActionButton
- variant="destructive"
- loading={isRecrawlPending}
- onClick={() =>
- recrawlLinks({ crawlStatus: "all", runInference: true })
- }
- >
- {t("admin.actions.recrawl_all_links")}
- </ActionButton>
- <ActionButton
- variant="destructive"
- loading={isRecrawlPending}
- onClick={() =>
- recrawlLinks({ crawlStatus: "all", runInference: false })
- }
- >
- {t("admin.actions.recrawl_all_links")} (
- {t("admin.actions.without_inference")})
- </ActionButton>
- <ActionButton
- variant="destructive"
- loading={isInferencePending}
- onClick={() =>
- reRunInferenceOnAllBookmarks({ taggingStatus: "failure" })
- }
- >
- {t("admin.actions.regenerate_ai_tags_for_failed_bookmarks_only")}
- </ActionButton>
- <ActionButton
- variant="destructive"
- loading={isInferencePending}
- onClick={() => reRunInferenceOnAllBookmarks({ taggingStatus: "all" })}
- >
- {t("admin.actions.regenerate_ai_tags_for_all_bookmarks")}
- </ActionButton>
- <ActionButton
- variant="destructive"
- loading={isReindexPending}
- onClick={() => reindexBookmarks()}
- >
- {t("admin.actions.reindex_all_bookmarks")}
- </ActionButton>
- <ActionButton
- variant="destructive"
- loading={isReprocessingPending}
- onClick={() => reprocessAssetsFixMode()}
- >
- {t("admin.actions.reprocess_assets_fix_mode")}
- </ActionButton>
- <ActionButton
- variant="destructive"
- loading={isTidyAssetsPending}
- onClick={() => tidyAssets()}
- >
- {t("admin.actions.compact_assets")}
- </ActionButton>
- </div>
- </div>
- );
-}