import React from 'react'; import { Avatar, Input, Menu, MenuProps, Progress } from 'antd'; import { useStore } from '@/mstore'; import Project from '@/mstore/types/project'; import { observer } from 'mobx-react-lite'; import { AppWindowMac, Smartphone } from 'lucide-react'; type MenuItem = Required['items'][number]; const ProjectList: React.FC = () => { const { projectsStore } = useStore(); const [search, setSearch] = React.useState(''); const filteredProjects = projectsStore.list.filter((project: Project) => project.name.toLowerCase().includes(search.toLowerCase()) ); const handleSearch = (value: string) => setSearch(value); const onClick: MenuProps['onClick'] = (e) => { const pid = parseInt(e.key as string); projectsStore.setConfigProject(pid); }; const menuItems: MenuItem[] = filteredProjects.map((project) => ({ key: project.id + '', label: project.name, icon: ( ) })); return (
setSearch(e.target.value)} allowClear />
); }; export default observer(ProjectList); const ProjectIconWithProgress: React.FC<{ platform: string; progress: number; }> = ({ platform, progress }) => (
''} strokeWidth={4} strokeColor="#23959a" />
) : ( ) } />
);