diff --git a/surfsense_web/app/dashboard/[search_space_id]/documents/(manage)/components/DocumentsTableShell.tsx b/surfsense_web/app/dashboard/[search_space_id]/documents/(manage)/components/DocumentsTableShell.tsx index b8ede1037..f7c8663e5 100644 --- a/surfsense_web/app/dashboard/[search_space_id]/documents/(manage)/components/DocumentsTableShell.tsx +++ b/surfsense_web/app/dashboard/[search_space_id]/documents/(manage)/components/DocumentsTableShell.tsx @@ -11,7 +11,6 @@ import { Clock, FileText, FileX, - Loader2, Network, Plus, User, @@ -361,7 +360,7 @@ export function DocumentsTableShell({ - )} + )} {columnVisibility.created_by && ( @@ -773,7 +772,7 @@ export function DocumentsTableShell({
{viewingLoading ? (
- +
) : ( diff --git a/surfsense_web/app/dashboard/[search_space_id]/more-pages/page.tsx b/surfsense_web/app/dashboard/[search_space_id]/more-pages/page.tsx index 7bb15b78b..f9dbf64ef 100644 --- a/surfsense_web/app/dashboard/[search_space_id]/more-pages/page.tsx +++ b/surfsense_web/app/dashboard/[search_space_id]/more-pages/page.tsx @@ -2,12 +2,13 @@ import { IconCalendar, IconMailFilled } from "@tabler/icons-react"; import { useMutation, useQuery, useQueryClient } from "@tanstack/react-query"; -import { Check, ExternalLink, Gift, Loader2, Mail, Star } from "lucide-react"; +import { Check, ExternalLink, Gift, Mail, Star } from "lucide-react"; import { motion } from "motion/react"; import Link from "next/link"; import { useEffect } from "react"; import { toast } from "sonner"; import { Button } from "@/components/ui/button"; +import { Spinner } from "@/components/ui/spinner"; import { Card, CardContent } from "@/components/ui/card"; import { Dialog, @@ -144,7 +145,7 @@ export default function MorePagesPage() { className="gap-1" > {completeMutation.isPending ? ( - + ) : ( <> Go diff --git a/surfsense_web/components/UserDropdown.tsx b/surfsense_web/components/UserDropdown.tsx index 233a41a1f..8c5bc221e 100644 --- a/surfsense_web/components/UserDropdown.tsx +++ b/surfsense_web/components/UserDropdown.tsx @@ -1,10 +1,11 @@ "use client"; -import { BadgeCheck, Loader2, LogOut } from "lucide-react"; +import { BadgeCheck, LogOut } from "lucide-react"; import { useRouter } from "next/navigation"; import { useState } from "react"; import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar"; import { Button } from "@/components/ui/button"; +import { Spinner } from "@/components/ui/spinner"; import { DropdownMenu, DropdownMenuContent, @@ -97,9 +98,9 @@ export function UserDropdown({ className="text-xs md:text-sm" disabled={isLoggingOut} > - {isLoggingOut ? ( - - ) : ( + {isLoggingOut ? ( + + ) : ( )} {isLoggingOut ? "Logging out..." : "Log out"} diff --git a/surfsense_web/components/assistant-ui/thread.tsx b/surfsense_web/components/assistant-ui/thread.tsx index dc30cfe40..6ec028b2f 100644 --- a/surfsense_web/components/assistant-ui/thread.tsx +++ b/surfsense_web/components/assistant-ui/thread.tsx @@ -19,7 +19,6 @@ import { ChevronRightIcon, CopyIcon, DownloadIcon, - Loader2, RefreshCwIcon, SquareIcon, } from "lucide-react"; @@ -61,6 +60,7 @@ import { } from "@/components/new-chat/document-mention-picker"; import type { ThinkingStep } from "@/components/tool-ui/deepagent-thinking"; import { Button } from "@/components/ui/button"; +import { Spinner } from "@/components/ui/spinner"; import type { Document } from "@/contracts/types/document.types"; import { useCommentsElectric } from "@/hooks/use-comments-electric"; import { cn } from "@/lib/utils"; @@ -542,7 +542,7 @@ const ComposerAction: FC = ({ isBlockedByOtherUser = false {/* Show processing indicator when attachments are being processed */} {hasProcessingAttachments && (
- + Processing...
)} diff --git a/surfsense_web/components/json-metadata-viewer.tsx b/surfsense_web/components/json-metadata-viewer.tsx index faab000ad..0438abfa0 100644 --- a/surfsense_web/components/json-metadata-viewer.tsx +++ b/surfsense_web/components/json-metadata-viewer.tsx @@ -1,7 +1,8 @@ -import { FileJson, Loader2 } from "lucide-react"; +import { FileJson } from "lucide-react"; import React from "react"; import { defaultStyles, JsonView } from "react-json-view-lite"; import { Button } from "@/components/ui/button"; +import { Spinner } from "@/components/ui/spinner"; import { Dialog, DialogContent, @@ -58,7 +59,7 @@ export function JsonMetadataViewer({
{loading ? (
- +
) : ( diff --git a/surfsense_web/components/layout/ui/sidebar/SidebarUserProfile.tsx b/surfsense_web/components/layout/ui/sidebar/SidebarUserProfile.tsx index 997482ed3..f0db30eac 100644 --- a/surfsense_web/components/layout/ui/sidebar/SidebarUserProfile.tsx +++ b/surfsense_web/components/layout/ui/sidebar/SidebarUserProfile.tsx @@ -5,7 +5,6 @@ import { ChevronUp, Languages, Laptop, - Loader2, LogOut, Moon, Settings, @@ -27,6 +26,7 @@ import { } from "@/components/ui/dropdown-menu"; import { Tooltip, TooltipContent, TooltipTrigger } from "@/components/ui/tooltip"; import { useLocaleContext } from "@/contexts/LocaleContext"; +import { Spinner } from "@/components/ui/spinner"; import { cn } from "@/lib/utils"; import type { User } from "../../types/layout.types"; @@ -264,18 +264,18 @@ export function SidebarUserProfile({ - - {isLoggingOut ? ( - - ) : ( - - )} - {isLoggingOut ? t("loggingOut") : t("logout")} - - - -
- ); + + {isLoggingOut ? ( + + ) : ( + + )} + {isLoggingOut ? t("loggingOut") : t("logout")} + + + +
+ ); } // Expanded view @@ -386,16 +386,16 @@ export function SidebarUserProfile({ - - {isLoggingOut ? ( - - ) : ( - - )} - {isLoggingOut ? t("loggingOut") : t("logout")} - - - - + + {isLoggingOut ? ( + + ) : ( + + )} + {isLoggingOut ? t("loggingOut") : t("logout")} + + + + ); } diff --git a/surfsense_web/components/public-chat/public-chat-footer.tsx b/surfsense_web/components/public-chat/public-chat-footer.tsx index 2211f3142..39099aaf7 100644 --- a/surfsense_web/components/public-chat/public-chat-footer.tsx +++ b/surfsense_web/components/public-chat/public-chat-footer.tsx @@ -1,10 +1,11 @@ "use client"; -import { Copy, Loader2 } from "lucide-react"; +import { Copy } from "lucide-react"; import { useRouter, useSearchParams } from "next/navigation"; import { useCallback, useEffect, useRef, useState } from "react"; import { toast } from "sonner"; import { Button } from "@/components/ui/button"; +import { Spinner } from "@/components/ui/spinner"; import { publicChatApiService } from "@/lib/apis/public-chat-api.service"; import { getBearerToken } from "@/lib/auth-utils"; @@ -61,9 +62,9 @@ export function PublicChatFooter({ shareToken }: PublicChatFooterProps) { }; return ( -
-
diff --git a/surfsense_web/components/public-chat/public-chat-view.tsx b/surfsense_web/components/public-chat/public-chat-view.tsx index 08a450d06..2755494f9 100644 --- a/surfsense_web/components/public-chat/public-chat-view.tsx +++ b/surfsense_web/components/public-chat/public-chat-view.tsx @@ -1,8 +1,8 @@ "use client"; import { AssistantRuntimeProvider } from "@assistant-ui/react"; -import { Loader2 } from "lucide-react"; import { Navbar } from "@/components/homepage/navbar"; +import { Spinner } from "@/components/ui/spinner"; import { DisplayImageToolUI } from "@/components/tool-ui/display-image"; import { GeneratePodcastToolUI } from "@/components/tool-ui/generate-podcast"; import { LinkPreviewToolUI } from "@/components/tool-ui/link-preview"; @@ -26,7 +26,7 @@ export function PublicChatView({ shareToken }: PublicChatViewProps) {
- +
);