mirror of
https://github.com/leonvanzyl/autocoder.git
synced 2026-02-01 23:13:36 +00:00
YOLO mode effects
This commit is contained in:
@@ -1,4 +1,4 @@
|
|||||||
import { Play, Square, Loader2, Flame } from 'lucide-react'
|
import { Play, Square, Loader2 } from 'lucide-react'
|
||||||
import {
|
import {
|
||||||
useStartAgent,
|
useStartAgent,
|
||||||
useStopAgent,
|
useStopAgent,
|
||||||
@@ -40,8 +40,6 @@ export function AgentControl({ projectName, status }: AgentControlProps) {
|
|||||||
>
|
>
|
||||||
{isLoading ? (
|
{isLoading ? (
|
||||||
<Loader2 size={18} className="animate-spin" />
|
<Loader2 size={18} className="animate-spin" />
|
||||||
) : yoloMode ? (
|
|
||||||
<Flame size={18} />
|
|
||||||
) : (
|
) : (
|
||||||
<Play size={18} />
|
<Play size={18} />
|
||||||
)}
|
)}
|
||||||
@@ -50,9 +48,11 @@ export function AgentControl({ projectName, status }: AgentControlProps) {
|
|||||||
<button
|
<button
|
||||||
onClick={handleStop}
|
onClick={handleStop}
|
||||||
disabled={isLoading}
|
disabled={isLoading}
|
||||||
className="neo-btn neo-btn-danger text-sm py-2 px-3"
|
className={`neo-btn text-sm py-2 px-3 ${
|
||||||
title="Stop Agent"
|
yoloMode ? 'neo-btn-yolo' : 'neo-btn-danger'
|
||||||
aria-label="Stop Agent"
|
}`}
|
||||||
|
title={yoloMode ? 'Stop Agent (YOLO Mode)' : 'Stop Agent'}
|
||||||
|
aria-label={yoloMode ? 'Stop Agent in YOLO Mode' : 'Stop Agent'}
|
||||||
>
|
>
|
||||||
{isLoading ? (
|
{isLoading ? (
|
||||||
<Loader2 size={18} className="animate-spin" />
|
<Loader2 size={18} className="animate-spin" />
|
||||||
|
|||||||
@@ -163,21 +163,29 @@
|
|||||||
transform: none;
|
transform: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* YOLO Mode Button - Fiery gradient for when YOLO mode is enabled */
|
/* YOLO Mode Button - Animated fire effect for when YOLO mode is enabled */
|
||||||
/* Uses darker orange colors for better contrast with white text (WCAG AA) */
|
|
||||||
.neo-btn-yolo {
|
.neo-btn-yolo {
|
||||||
background: linear-gradient(135deg, #d64500, #e65c00);
|
background: linear-gradient(
|
||||||
|
0deg,
|
||||||
|
#8b0000 0%,
|
||||||
|
#d64500 30%,
|
||||||
|
#ff6a00 60%,
|
||||||
|
#ffa500 100%
|
||||||
|
);
|
||||||
|
background-size: 100% 200%;
|
||||||
color: #ffffff;
|
color: #ffffff;
|
||||||
box-shadow:
|
animation: fireGlow 0.8s ease-in-out infinite, fireGradient 1.5s ease-in-out infinite;
|
||||||
4px 4px 0 var(--color-neo-border),
|
|
||||||
0 0 12px rgba(255, 84, 0, 0.4);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.neo-btn-yolo:hover {
|
.neo-btn-yolo:hover {
|
||||||
background: linear-gradient(135deg, #ff5400, #ff6a00);
|
background: linear-gradient(
|
||||||
box-shadow:
|
0deg,
|
||||||
6px 6px 0 var(--color-neo-border),
|
#a00000 0%,
|
||||||
0 0 16px rgba(255, 84, 0, 0.5);
|
#e65c00 30%,
|
||||||
|
#ff7800 60%,
|
||||||
|
#ffb700 100%
|
||||||
|
);
|
||||||
|
background-size: 100% 200%;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Inputs */
|
/* Inputs */
|
||||||
@@ -371,6 +379,42 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@keyframes fireGlow {
|
||||||
|
0%, 100% {
|
||||||
|
box-shadow:
|
||||||
|
4px 4px 0 var(--color-neo-border),
|
||||||
|
0 0 10px rgba(255, 100, 0, 0.5),
|
||||||
|
0 0 20px rgba(255, 60, 0, 0.3);
|
||||||
|
}
|
||||||
|
25% {
|
||||||
|
box-shadow:
|
||||||
|
4px 4px 0 var(--color-neo-border),
|
||||||
|
0 0 15px rgba(255, 80, 0, 0.6),
|
||||||
|
0 0 30px rgba(255, 40, 0, 0.4);
|
||||||
|
}
|
||||||
|
50% {
|
||||||
|
box-shadow:
|
||||||
|
4px 4px 0 var(--color-neo-border),
|
||||||
|
0 0 12px rgba(255, 120, 0, 0.7),
|
||||||
|
0 0 25px rgba(255, 50, 0, 0.5);
|
||||||
|
}
|
||||||
|
75% {
|
||||||
|
box-shadow:
|
||||||
|
4px 4px 0 var(--color-neo-border),
|
||||||
|
0 0 18px rgba(255, 70, 0, 0.55),
|
||||||
|
0 0 35px rgba(255, 30, 0, 0.35);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@keyframes fireGradient {
|
||||||
|
0%, 100% {
|
||||||
|
background-position: 0% 100%;
|
||||||
|
}
|
||||||
|
50% {
|
||||||
|
background-position: 100% 0%;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/* ============================================================================
|
/* ============================================================================
|
||||||
Utilities Layer
|
Utilities Layer
|
||||||
============================================================================ */
|
============================================================================ */
|
||||||
|
|||||||
Reference in New Issue
Block a user