'use client'; import { useCallback } from 'react'; import { Grammeme } from '@/models/language'; import { prefixes } from '@/utils/constants'; import { IGrammemeOption, PremadeWordForms, SelectorGrammems } from '@/utils/selectors'; import WordformButton from './WordformButton'; interface SelectWordFormProps { selected: IGrammemeOption[] setSelected: React.Dispatch> } function SelectWordForm({ selected, setSelected }: SelectWordFormProps) { const handleSelect = useCallback( (grams: Grammeme[]) => { setSelected(SelectorGrammems.filter(({value}) => grams.includes(value as Grammeme))); }, [setSelected]); return (
{PremadeWordForms.slice(0, 12).map( (data, index) => selected.find(item => item.value as Grammeme === gram))} onSelectGrams={handleSelect} /> )}
); } export default SelectWordForm;