diff --git a/renderer/components/settings-tab/CompressionInput.tsx b/renderer/components/settings-tab/CompressionInput.tsx index e50d442..d42a96b 100644 --- a/renderer/components/settings-tab/CompressionInput.tsx +++ b/renderer/components/settings-tab/CompressionInput.tsx @@ -15,7 +15,8 @@ export function CompressionInput({ {compression > 0 && (

PNG compression is lossless, so it might not reduce the file size - significantly. JPG and WebP compression is lossy. + significantly and higher compression values might affect the + performance. JPG and WebP compression is lossy.

)} , @@ -15,12 +15,12 @@ const ToastViewport = React.forwardRef< ref={ref} className={cn( "fixed top-0 z-[100] flex max-h-screen w-full flex-col-reverse p-4 sm:bottom-0 sm:right-0 sm:top-auto sm:flex-col md:max-w-[420px]", - className + className, )} {...props} /> -)) -ToastViewport.displayName = ToastPrimitives.Viewport.displayName +)); +ToastViewport.displayName = ToastPrimitives.Viewport.displayName; const toastVariants = cva( "group pointer-events-auto relative flex w-full items-center justify-between space-x-4 overflow-hidden rounded-md border p-6 pr-8 shadow-lg transition-all data-[swipe=cancel]:translate-x-0 data-[swipe=end]:translate-x-[var(--radix-toast-swipe-end-x)] data-[swipe=move]:translate-x-[var(--radix-toast-swipe-move-x)] data-[swipe=move]:transition-none data-[state=open]:animate-in data-[state=closed]:animate-out data-[swipe=end]:animate-out data-[state=closed]:fade-out-80 data-[state=closed]:slide-out-to-right-full data-[state=open]:slide-in-from-top-full data-[state=open]:sm:slide-in-from-bottom-full", @@ -35,8 +35,8 @@ const toastVariants = cva( defaultVariants: { variant: "default", }, - } -) + }, +); const Toast = React.forwardRef< React.ElementRef, @@ -49,9 +49,9 @@ const Toast = React.forwardRef< className={cn(toastVariants({ variant }), className)} {...props} /> - ) -}) -Toast.displayName = ToastPrimitives.Root.displayName + ); +}); +Toast.displayName = ToastPrimitives.Root.displayName; const ToastAction = React.forwardRef< React.ElementRef, @@ -60,13 +60,13 @@ const ToastAction = React.forwardRef< -)) -ToastAction.displayName = ToastPrimitives.Action.displayName +)); +ToastAction.displayName = ToastPrimitives.Action.displayName; const ToastClose = React.forwardRef< React.ElementRef, @@ -75,16 +75,16 @@ const ToastClose = React.forwardRef< -)) -ToastClose.displayName = ToastPrimitives.Close.displayName +)); +ToastClose.displayName = ToastPrimitives.Close.displayName; const ToastTitle = React.forwardRef< React.ElementRef, @@ -95,8 +95,8 @@ const ToastTitle = React.forwardRef< className={cn("text-sm font-semibold", className)} {...props} /> -)) -ToastTitle.displayName = ToastPrimitives.Title.displayName +)); +ToastTitle.displayName = ToastPrimitives.Title.displayName; const ToastDescription = React.forwardRef< React.ElementRef, @@ -107,12 +107,12 @@ const ToastDescription = React.forwardRef< className={cn("text-sm opacity-90", className)} {...props} /> -)) -ToastDescription.displayName = ToastPrimitives.Description.displayName +)); +ToastDescription.displayName = ToastPrimitives.Description.displayName; -type ToastProps = React.ComponentPropsWithoutRef +type ToastProps = React.ComponentPropsWithoutRef; -type ToastActionElement = React.ReactElement +type ToastActionElement = React.ReactElement; export { type ToastProps, @@ -124,4 +124,4 @@ export { ToastDescription, ToastClose, ToastAction, -} +}; diff --git a/renderer/components/ui/toaster.tsx b/renderer/components/ui/toaster.tsx index a2209ba..5ff5709 100644 --- a/renderer/components/ui/toaster.tsx +++ b/renderer/components/ui/toaster.tsx @@ -5,11 +5,11 @@ import { ToastProvider, ToastTitle, ToastViewport, -} from "@/components/ui/toast" -import { useToast } from "@/components/ui/use-toast" +} from "@/components/ui/toast"; +import { useToast } from "@/components/ui/use-toast"; export function Toaster() { - const { toasts } = useToast() + const { toasts } = useToast(); return ( @@ -25,9 +25,9 @@ export function Toaster() { {action} - ) + ); })} - ) + ); } diff --git a/renderer/pages/index.tsx b/renderer/pages/index.tsx index 108aa87..b79504f 100644 --- a/renderer/pages/index.tsx +++ b/renderer/pages/index.tsx @@ -40,7 +40,12 @@ import { import { NewsModal } from "@/components/NewsModal"; import { newsAtom, showNewsModalAtom } from "@/atoms/newsAtom"; import matter from "gray-matter"; -import { PanelLeftCloseIcon, PanelRightCloseIcon } from "lucide-react"; +import { + ChevronLeftIcon, + ChevronRightIcon, + PanelLeftCloseIcon, + PanelRightCloseIcon, +} from "lucide-react"; import { cn } from "@/lib/utils"; import { useToast } from "@/components/ui/use-toast"; import { ToastAction } from "@/components/ui/toast"; @@ -125,9 +130,22 @@ const Home = () => { title: "GPU Error", description: `GPU error occurred. Please read the wiki for troubleshooting! ${data})`, action: ( - - Troubleshoot - +
+ { + navigator.clipboard.writeText(data); + }} + > + Copy Error + + + Troubleshoot + +
), }); resetImagePaths(); @@ -135,11 +153,24 @@ const Home = () => { if (batchMode) return; toast({ title: "Read/Write Error", - description: `Make sure that the path is correct and you have proper read/write permissions (${data})`, + description: `Make sure that the path is correct and you have proper read/write permissions \n(${data})`, action: ( - - Troubleshoot - +
+ { + navigator.clipboard.writeText(data); + }} + > + Copy Error + + + Troubleshoot + +
), }); resetImagePaths(); @@ -574,12 +605,12 @@ const Home = () => { {/* SIDEBAR BUTTON */} {/* LEFT PANE */} @@ -587,10 +618,10 @@ const Home = () => { className={`relative flex h-screen min-w-[350px] max-w-[350px] flex-col bg-base-100 ${showSidebar ? "" : "hidden"}`} > {/* UPSCAYL CLOUD MODAL */}