feat: revue de code, doc CODE_REVIEW, forfaits 2026, traduction LLM, providers avec modèle

Made-with: Cursor
This commit is contained in:
Sepehr Ramezani
2026-03-07 11:42:58 +01:00
parent 3d37ce4582
commit 473b3e26c7
181 changed files with 30617 additions and 7170 deletions

View File

@@ -1,3 +1,5 @@
"use client"
import * as React from "react"
import * as ToastPrimitives from "@radix-ui/react-toast"
import { cva, type VariantProps } from "class-variance-authority"
@@ -116,7 +118,7 @@ const Toast = React.forwardRef<
className={cn(
"inline-flex h-8 shrink-0 items-center justify-center rounded-md border bg-transparent px-3 text-sm font-medium transition-colors hover:bg-secondary focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 group-[.destructive]:border-muted/40 group-[.destructive]:hover:border-destructive/30 group-[.destructive]:hover:bg-destructive group-[.destructive]:hover:text-destructive-foreground group-[.destructive]:focus:ring-destructive"
)}
alt={typeof action === 'string' ? action : undefined}
altText={typeof action === 'string' ? action : 'Action'}
>
{action}
</ToastPrimitives.Action>
@@ -146,6 +148,21 @@ const ToastAction = React.forwardRef<
))
ToastAction.displayName = ToastPrimitives.Action.displayName
const ToastClose = React.forwardRef<
React.ElementRef<typeof ToastPrimitives.Close>,
React.ComponentPropsWithoutRef<typeof ToastPrimitives.Close>
>(({ className, ...props }, ref) => (
<ToastPrimitives.Close
ref={ref}
className={cn(
"absolute right-2 top-2 rounded-md p-1 text-foreground/50 opacity-0 transition-opacity hover:text-foreground focus:opacity-100 focus:outline-none focus:ring-2 group-hover:opacity-100 group-[.destructive]:text-red-300 group-[.destructive]:hover:text-red-50 group-[.destructive]:focus:ring-red-400 group-[.destructive]:focus:ring-offset-red-600",
className
)}
{...props}
/>
))
ToastClose.displayName = ToastPrimitives.Close.displayName
const ToastTitle = React.forwardRef<
React.ElementRef<typeof ToastPrimitives.Title>,
React.ComponentPropsWithoutRef<typeof ToastPrimitives.Title>
@@ -185,7 +202,7 @@ export function useToast() {
description?: string
variant?: VariantProps<typeof toastVariants>["variant"]
duration?: number
action?: ToastActionElement
action?: React.ReactNode
icon?: React.ReactNode
}>>([])
@@ -267,7 +284,7 @@ export const ToastContainer = ({ children }: { children: React.ReactNode }) => {
// Individual Toast Component for use in ToastContainer
export const ToastItem = React.forwardRef<
HTMLDivElement,
HTMLLIElement,
{
toast: {
id: string
@@ -275,15 +292,15 @@ export const ToastItem = React.forwardRef<
description?: string
variant?: VariantProps<typeof toastVariants>["variant"]
duration?: number
action?: ToastActionElement
action?: React.ReactNode
icon?: React.ReactNode
}
onDismiss: (id: string) => void
}
>(({ toast, onDismiss, ...props }, ref) => {
return (
<li ref={ref}>
<Toast
ref={ref}
variant={toast.variant}
title={toast.title}
description={toast.description}
@@ -297,6 +314,7 @@ export const ToastItem = React.forwardRef<
}}
{...props}
/>
</li>
)
})
ToastItem.displayName = "ToastItem"