'use client' import { useState } from 'react' import { Card, CardContent, CardDescription, CardHeader, CardTitle } from "@/components/ui/card" import { Badge } from "@/components/ui/badge" import { Button } from "@/components/ui/button" import { Input } from "@/components/ui/input" import { Textarea } from "@/components/ui/textarea" import { Label } from "@/components/ui/label" import { Loader2, Play } from "lucide-react" import { useToast } from '@/hooks/use-toast' import type { TemplateRegister } from '../types' import type { WorkflowStep, TemplateResult, DatasetRecord } from './TemplateManager' interface TemplateConfigureStepProps { selectedTemplate: TemplateRegister templateInputs: Record setTemplateInputs: (inputs: Record) => void parseTemplateExample: (inputExample: any) => any setTemplateResult: (result: TemplateResult | null) => void setCurrentStep: (step: WorkflowStep) => void // setEvaluatedData: (data: DatasetRecord[]) => void } export default function TemplateConfigureStep({ selectedTemplate, templateInputs, setTemplateInputs, parseTemplateExample, setTemplateResult, setCurrentStep, // setEvaluatedData }: TemplateConfigureStepProps) { const [isRunningTemplate, setIsRunningTemplate] = useState(false) const { toast } = useToast() const getInputType = (value: any): string => { if (typeof value === 'number') return 'number' if (typeof value === 'boolean') return 'checkbox' if (typeof value === 'object' && value !== null) return 'textarea' return 'text' } const getDefaultValue = (value: any): string => { if (typeof value === 'object' && value !== null) { return JSON.stringify(value, null, 2) } return String(value) } const handleInputChange = (key: string, value: string) => { setTemplateInputs({ ...templateInputs, [key]: value }) } const renderInputField = (key: string, value: any) => { const inputType = getInputType(value) const currentValue = templateInputs[key] || '' if (inputType === 'textarea') { return (