Ant Design Table filters children column

Ребят. Всех приветствую. Возникла проблема при фильтрации групповых колонок Ant Design Table.

При помощи рекурсии нашёл все дочерние колонки и у них работает сортировка, рендер, собирается список фильтрации (всё по фен Шую). Но на групповых колонках, при попытке отфильтровать, ничего не происходит. А на обычных (не групповых колонках) работает как и должно.

Пример кода поиска дочерних колонок:

const _adapter = (
    column: TableElementResponse | TableGroupElementResponse
): ColumnType<DataType> | ColumnGroupType<DataType> | undefined => {
    if ("children" in column) {
        const group: ColumnGroupType<DataType> = {
            title: column.title,
            children: column.children?.reduce((prev, child) => {
                if ("children" in child || keys.includes(child.key)) {
                    const childAdapt = _adapter(child)
                    if (childAdapt) return [...prev, childAdapt]
                    else return prev
                }
                return prev
            }, [] as ColumnsType<DataType>),
        }
        if (group.children.length) return group
        else return undefined
    }
    else {
        const render = _render(column)
        const sorter: CompareFn<DataType> = (a: any, b: any) => {
            const sorter: string = column.key
            return a[sorter] > b[sorter] ? 1 : -1
        }

        const onFiltersFunc = (key: string) => {
            return (
                value: string | number | boolean | any,
                record: DataType
            ): boolean => {
                console.log(value)
                return value === record[key]
            }
        }

        if (keys.includes(column.key))
            return {
                key: column.key,
                dataIndex: column.key,
                title: column.title,
                render,
                sorter,
                filters: flar[column.key],
                // onFilter: onFiltersFunc(column.key),
                onFilter: (value: any, record) => {
                    console.log(value)
                    record[column.key].indexOf(value.toString()) === 0},
                // ...getColumnSearchProps(column.key),
                align: column.align as ("left" | "right" | "center"),
                width: column.width,
            }
    }

Подскажите, пожалуйста, кто сталкивался с подобным?

Работает всё. Но при выборе из списка значений в фильтрации, у не групповых колонок всё работает, а у групповых колонок даже не показывает в консоли что был выбор значения фильтрации. Ошибок даже не выдаёт.

Сейчас увидел, что выводит ошибку при изменении параметров у дочерних колонок

   Uncaught TypeError: record[column.key].indexOf is not a function
at onFilter (adapters.tsx:118:51)
at index.js:133:16
at Array.some (<anonymous>)
at index.js:129:56
at Array.filter (<anonymous>)
at index.js:129:26
at Array.reduce (<anonymous>)
at getFilterData (index.js:120:23)
at triggerOnChange (InternalTable.js:126:26)
at onFilterChange (InternalTable.js:156:5)

Ответы (0 шт):