import React, { FunctionComponent, HTMLAttributes } from 'react'; import { classNames } from '../../lib/classNames'; import { Icon24Dropdown, Icon20Dropdown } from '@vkontakte/icons'; import FormField from '../FormField/FormField'; import { HasAlign, HasRootRef } from '../../types'; import { withAdaptivity, AdaptivityProps, SizeType } from '../../hoc/withAdaptivity'; import { usePlatform } from '../../hooks/usePlatform'; import { getClassName } from '../..'; import Headline from '../Typography/Headline/Headline'; import Text from '../Typography/Text/Text'; import { VKCOM } from '../../lib/platform'; export interface SelectMimicryProps extends HTMLAttributes, HasAlign, HasRootRef, AdaptivityProps { multiline?: boolean; disabled?: boolean; } const SelectMimicry: FunctionComponent = ({ className, tabIndex, placeholder, children, align, getRootRef, multiline, disabled, onClick, sizeX, sizeY, ...restProps }: SelectMimicryProps) => { const platform = usePlatform(); const TypographyComponent = platform === VKCOM || sizeY === SizeType.COMPACT ? Text : Headline; return ( {children || placeholder} {sizeY === SizeType.COMPACT ? : } ); }; SelectMimicry.defaultProps = { tabIndex: 0, }; export default withAdaptivity(SelectMimicry, { sizeX: true, sizeY: true, });