UNPKG

@codinglane/dropdown

Version:
6 lines (5 loc) 1.25 kB
import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime"; import * as Atoms from '../../../../atoms'; export const Group = ({ id, grouped, selected, favorize, onOptionClick, onFavorize, ...props }) => { return (_jsx(_Fragment, { children: grouped.map((group, index) => (_jsx("div", { className: 'dropdown-grouping', "data-testid": props['data-testid']?.concat(group.name), children: !group.isParent ? (_jsxs(_Fragment, { children: [_jsx(Atoms.Label, { label: group.name, "data-testid": props['data-testid']?.concat('-label').concat(group.name) }), group.options.map((option) => (_jsx(Atoms.Option, { className: 'group-option', onClick: onOptionClick, id: id?.concat('option').concat(option.value), selected: selected, option: option, favorites: favorize, isFavorite: option.favorite, onFavorize: onFavorize, "data-testid": props['data-testid']?.concat('-group-option').concat(option.value) }, option.value)))] })) : (_jsx(Group, { grouped: group.options, onOptionClick: onOptionClick, onFavorize: onFavorize, id: id?.concat('option'.concat(group.name)), favorize: favorize, selected: selected, "data-testid": props['data-testid']?.concat(group.name) }, group.name)) }, group.name.concat(`-${index}`)))) })); };