feat: 本次提交更新内容如下

更新了旧项目的代码和样式
This commit is contained in:
2025-07-11 11:40:24 +08:00
parent 8fd9269bef
commit dedf6be5a6
62 changed files with 9099 additions and 1416 deletions

View File

@@ -1,28 +1,35 @@
"use client"
import * as React from "react"
import * as ProgressPrimitive from "@radix-ui/react-progress"
import { cn } from "@/lib/utils"
const Progress = React.forwardRef<
React.ElementRef<typeof ProgressPrimitive.Root>,
React.ComponentPropsWithoutRef<typeof ProgressPrimitive.Root>
>(({ className, value, ...props }, ref) => (
<ProgressPrimitive.Root
ref={ref}
className={cn(
"relative h-4 w-full overflow-hidden rounded-full bg-secondary",
className
)}
{...props}
>
<ProgressPrimitive.Indicator
className="h-full w-full flex-1 bg-primary transition-all"
style={{ transform: `translateX(-${100 - (value || 0)}%)` }}
/>
</ProgressPrimitive.Root>
))
Progress.displayName = ProgressPrimitive.Root.displayName
interface ProgressProps extends React.HTMLAttributes<HTMLDivElement> {
value?: number
max?: number
className?: string
}
const Progress = React.forwardRef<HTMLDivElement, ProgressProps>(
({ className, value = 0, max = 100, ...props }, ref) => {
const percentage = Math.min(Math.max((value / max) * 100, 0), 100)
return (
<div
ref={ref}
className={cn("relative h-2 w-full overflow-hidden rounded-full bg-gray-200", className)}
{...props}
>
<div
className="h-full w-full flex-1 bg-blue-500 transition-all duration-300 ease-in-out"
style={{
transform: `translateX(-${100 - percentage}%)`,
}}
/>
</div>
)
},
)
Progress.displayName = "Progress"
export { Progress }