feat: add special effect for Ultra mode

This commit is contained in:
Henry Li
2026-02-08 23:22:51 +08:00
parent fdd25c1bb8
commit d36fbcdfc1
2 changed files with 115 additions and 90 deletions

View File

@@ -53,12 +53,21 @@ export function SubtaskCard({
className={cn("relative w-full gap-2 rounded-lg border py-0", className)} className={cn("relative w-full gap-2 rounded-lg border py-0", className)}
open={!collapsed} open={!collapsed}
> >
<div
className={cn(
"ambilight z-[-1]",
task.status === "in_progress" ? "enabled" : "",
)}
></div>
{task.status === "in_progress" && ( {task.status === "in_progress" && (
<>
<ShineBorder <ShineBorder
borderWidth={1.5} borderWidth={1.5}
shineColor={["#A07CFE", "#FE8FB5", "#FFBE7B"]} shineColor={["#A07CFE", "#FE8FB5", "#FFBE7B"]}
/> />
</>
)} )}
<div className="bg-background/95 flex w-full flex-col rounded-lg">
<div className="flex w-full items-center justify-between p-0.5"> <div className="flex w-full items-center justify-between p-0.5">
<Button <Button
className="w-full items-start justify-start text-left" className="w-full items-start justify-start text-left"
@@ -150,6 +159,7 @@ export function SubtaskCard({
></ChainOfThoughtStep> ></ChainOfThoughtStep>
)} )}
</ChainOfThoughtContent> </ChainOfThoughtContent>
</div>
</ChainOfThought> </ChainOfThought>
); );
} }

View File

@@ -316,9 +316,16 @@
} }
} }
.ambilight {
pointer-events: none;
opacity: 0;
transition: opacity 1s ease-in-out;
}
.ambilight:before, .ambilight:before,
.ambilight:after { .ambilight:after {
content: ""; content: "";
pointer-events: none;
position: absolute; position: absolute;
left: 0; left: 0;
top: 0; top: 0;
@@ -339,9 +346,17 @@
width: 100%; width: 100%;
height: 100%; height: 100%;
border-radius: 10px; border-radius: 10px;
opacity: 0.75;
z-index: -1; z-index: -1;
animation: ambilight 60s ease-in-out infinite; animation: ambilight 40s ease-in-out infinite;
}
.ambilight.enabled {
opacity: 1;
}
.dark .ambilight:before,
.dark .ambilight:after {
opacity: 0.85;
} }
@keyframes ambilight { @keyframes ambilight {