SPB Git

spb/vquant Public MIT

VibeQuant — AI-powered institutional-grade financial intelligence platform.

TypeScript 84.3% Python 11.7% JavaScript 1.6% CSS 1.5% HTML 0.7%
2.2 KB · 76 lines tsx
Raw Blame History
1/*2 * =============================================================================3 *  VibeQuant (vquant) — AI-Powered Financial Intelligence Platform4 * -----------------------------------------------------------------------------5 *  File:      client/src/components/ui/alert.tsx6 *7 *  Author:    Simon-Pierre Boucher8 *  Contact:   contact@spboucher.ai9 *  Website:   https://www.spboucher.ai10 *  Demo:      https://www.vquant.ai11 *  License:   MIT (see LICENSE)12 *13 *  Copyright © 2026 Simon-Pierre Boucher. All rights reserved.14 * =============================================================================15 */1617import * as React from "react"18import { cva, type VariantProps } from "class-variance-authority"1920import { cn } from "@/lib/utils"2122const alertVariants = cva(23  "relative w-full rounded-lg border p-4 [&>svg~*]:pl-7 [&>svg+div]:translate-y-[-3px] [&>svg]:absolute [&>svg]:left-4 [&>svg]:top-4 [&>svg]:text-foreground",24  {25    variants: {26      variant: {27        default: "bg-background text-foreground",28        destructive:29          "border-destructive/50 text-destructive dark:border-destructive [&>svg]:text-destructive",30      },31    },32    defaultVariants: {33      variant: "default",34    },35  }36)3738const Alert = React.forwardRef<39  HTMLDivElement,40  React.HTMLAttributes<HTMLDivElement> & VariantProps<typeof alertVariants>41>(({ className, variant, ...props }, ref) => (42  <div43    ref={ref}44    role="alert"45    className={cn(alertVariants({ variant }), className)}46    {...props}47  />48))49Alert.displayName = "Alert"5051const AlertTitle = React.forwardRef<52  HTMLParagraphElement,53  React.HTMLAttributes<HTMLHeadingElement>54>(({ className, ...props }, ref) => (55  <h556    ref={ref}57    className={cn("mb-1 font-medium leading-none tracking-tight", className)}58    {...props}59  />60))61AlertTitle.displayName = "AlertTitle"6263const AlertDescription = React.forwardRef<64  HTMLParagraphElement,65  React.HTMLAttributes<HTMLParagraphElement>66>(({ className, ...props }, ref) => (67  <div68    ref={ref}69    className={cn("text-sm [&_p]:leading-relaxed", className)}70    {...props}71  />72))73AlertDescription.displayName = "AlertDescription"7475export { Alert, AlertTitle, AlertDescription }76