| const language = useLanguage() | const language = useLanguage() | ||||
| const [searchText, setSearchText] = useState('') | const [searchText, setSearchText] = useState('') | ||||
| const filteredModelList = modelList.filter( | |||||
| model => model.models.filter( | |||||
| (modelItem) => { | |||||
| if (modelItem.label[language] !== undefined) | |||||
| return modelItem.label[language].toLowerCase().includes(searchText.toLowerCase()) | |||||
| const filteredModelList = modelList.map((model) => { | |||||
| const filteredModels = model.models.filter((modelItem) => { | |||||
| if (modelItem.label[language] !== undefined) | |||||
| return modelItem.label[language].toLowerCase().includes(searchText.toLowerCase()) | |||||
| let found = false | |||||
| Object.keys(modelItem.label).forEach((key) => { | |||||
| if (modelItem.label[key].toLowerCase().includes(searchText.toLowerCase())) | |||||
| found = true | |||||
| }) | |||||
| return Object.values(modelItem.label).some(label => | |||||
| label.toLowerCase().includes(searchText.toLowerCase()), | |||||
| ) | |||||
| }) | |||||
| return found | |||||
| }, | |||||
| ).length, | |||||
| ) | |||||
| return { ...model, models: filteredModels } | |||||
| }).filter(model => model.models.length > 0) | |||||
| return ( | return ( | ||||
| <div className='w-[320px] max-h-[480px] rounded-lg border-[0.5px] border-gray-200 bg-white shadow-lg overflow-y-auto'> | <div className='w-[320px] max-h-[480px] rounded-lg border-[0.5px] border-gray-200 bg-white shadow-lg overflow-y-auto'> |