Alchemy / QuantumTimeMachineUI.tsx.txt
crystalai's picture
Upload 11 files
90b123f verified
import React, { useState, useEffect } from 'react'
import { Button } from "@/components/ui/button"
import { Slider } from "@/components/ui/slider"
import { Progress } from "@/components/ui/progress"
import { ChevronsUpDown, Zap, RefreshCw } from "lucide-react"
export default function Component() {
const [energy, setEnergy] = useState(50)
const [timeCoordinate, setTimeCoordinate] = useState(2023)
const [isActivated, setIsActivated] = useState(false)
const [stabilityLevel, setStabilityLevel] = useState(100)
useEffect(() => {
if (isActivated) {
const interval = setInterval(() => {
setStabilityLevel((prev) => Math.max(0, prev - Math.random() * 5))
}, 1000)
return () => clearInterval(interval)
}
}, [isActivated])
const handleActivate = () => {
setIsActivated(!isActivated)
if (!isActivated) {
setStabilityLevel(100)
}
}
return (
<div className="w-full max-w-4xl mx-auto p-6 bg-black rounded-xl shadow-2xl text-white">
<h2 className="text-3xl font-bold mb-6 text-center text-purple-400">Crystallized Quantum Physics Matrix Time Machine</h2>
<div className="grid grid-cols-2 gap-6 mb-6">
<div className="space-y-4">
<label className="block text-sm font-medium">Quantum Energy Level</label>
<Slider
value={[energy]}
onValueChange={(value) => setEnergy(value[0])}
max={100}
step={1}
/>
<div className="text-right">{energy}%</div>
</div>
<div className="space-y-4">
<label className="block text-sm font-medium">Time Coordinate</label>
<div className="flex items-center space-x-2">
<Button variant="outline" size="icon" onClick={() => setTimeCoordinate(prev => prev - 1)}>
<ChevronsUpDown className="h-4 w-4" />
</Button>
<input
type="number"
value={timeCoordinate}
onChange={(e) => setTimeCoordinate(parseInt(e.target.value))}
className="flex-1 bg-gray-800 text-white px-3 py-2 rounded-md"
/>
<Button variant="outline" size="icon" onClick={() => setTimeCoordinate(prev => prev + 1)}>
<ChevronsUpDown className="h-4 w-4 rotate-180" />
</Button>
</div>
</div>
</div>
<div className="mb-6">
<label className="block text-sm font-medium mb-2">Matrix Stability</label>
<Progress value={stabilityLevel} className="h-2" />
<div className="text-right mt-1">{stabilityLevel.toFixed(2)}%</div>
</div>
<div className="flex justify-center space-x-4">
<Button
variant={isActivated ? "destructive" : "default"}
onClick={handleActivate}
className="w-40"
>
{isActivated ? "Deactivate" : "Activate"}
<Zap className="ml-2 h-4 w-4" />
</Button>
<Button variant="outline" onClick={() => setStabilityLevel(100)} disabled={!isActivated}>
Restabilize
<RefreshCw className="ml-2 h-4 w-4" />
</Button>
</div>
<div className="mt-6 text-center text-sm text-gray-400">
Warning: Temporal paradoxes may occur. Use at your own risk.
</div>
</div>
)
}