UNPKG

@vertisanpro/flowbite-react

Version:

Non-Official React components built for Flowbite and Tailwind CSS

14 lines (13 loc) 808 B
import { twMerge } from '@vertisanpro/tailwind-merge'; import React from 'react'; import { mergeDeep } from '../../helpers/merge-deep'; import { getTheme } from '../../theme-store'; import { ListItem } from './ListItem'; const ListComponent = ({ children, className, unstyled, nested, ordered, theme: customTheme = {}, ...props }) => { const theme = mergeDeep(getTheme().list, customTheme); const Component = ordered ? 'ol' : 'ul'; return (React.createElement(Component, { className: twMerge(theme.root.ordered[ordered ? 'on' : 'off'], unstyled && theme.root.unstyled, nested && theme.root.nested, theme.root.base, className), ...props }, children)); }; ListComponent.displayName = 'List'; ListItem.displayName = 'List.Item'; export const List = Object.assign(ListComponent, { Item: ListItem });