import React from 'react' import { Listbox, ListboxOption, ListboxButton, ListboxOptions, Transition } from '@headlessui/react' import { ChevronDown, Check } from 'lucide-react' export const supportedPipelines = [ 'text-generation', 'feature-extraction', 'zero-shot-classification', 'image-classification', 'text-classification', 'summarization', 'translation' ] interface PipelineSelectorProps { pipeline: string setPipeline: (pipeline: string) => void } const PipelineSelector: React.FC = ({ pipeline, setPipeline }) => { const selectedPipeline = pipeline const formatPipelineName = (pipelineId: string) => { return pipelineId .split('-') .map((word) => word.charAt(0).toUpperCase() + word.slice(1)) .join(' ') } return (
{formatPipelineName(selectedPipeline)} {supportedPipelines.map((p) => ( `relative cursor-default select-none py-2 px-4 ${ active ? 'bg-amber-100 text-amber-900' : 'text-gray-900' }` } value={p} > {({ selected }) => (
{formatPipelineName(p)} {selected && ( )}
)}
))}
) } export default PipelineSelector