import { ComponentType, FC } from 'react'; import { observer } from 'mobx-react'; import { DropDownList, DropDownListChangeEvent } from '@progress/kendo-react-dropdowns'; import { TableCellProps } from '../table'; import { getEditableCell, EditorProps } from './get-editable-cell'; import { Option } from '@servicetitan/form'; import classNames from 'classnames'; interface GetSelectEditableCellParams { options: Option[]; viewer?: ComponentType>; } export function getSelectEditableCell({ options, viewer }: GetSelectEditableCellParams) { const Editor = observer>>( ({ fieldState: { value, onChange, hasError, error }, className, tdProps }) => { const selected = options.find(option => option.value === value); const handleChange = (event: DropDownListChangeEvent) => { onChange(event.target.value.value); }; return ( ); } ); return getEditableCell({ viewer, editor: Editor, }); }