/
Bybaleshqa
/
Forktest
Обзор
Документация
Войти
/
Bybaleshqa
/
Forktest
Код
Запросы
1
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
packages/tree/src/TreeNodeList.tsx
32 строки
759 B
Pavel Uryadyshev
feat(tree): добавлена поддержка виртуализации
01 ноя 2024, 16:22
01 ноя 2024, 16:22
d146fcb
Код
Авторство
О чём код?
'use client' /* eslint-disable react/jsx-no-useless-fragment */ import * as React from 'react' import { TreeNodeListProps } from './types' import { TreeItem } from './hooks' import { useTreeContext } from './contexts' const _TreeNodeList = <TItem extends unknown = TreeItem>({ tree, }: TreeNodeListProps<TItem>) => { const { components } = useTreeContext<TItem>() const { Item } = components if (!Item) { return null } return ( <> {tree?.map(({ $meta: { id } }, i) => ( <Item key={id} nodeKey={id} nodeIndex={i} /> ))} </> ) } export const TreeNodeList = _TreeNodeList as <TItem extends unknown = TreeItem>( props: TreeNodeListProps<TItem> & { ref?: React.Ref<HTMLUListElement> } ) => React.ReactElement