import React, { FunctionComponent } from 'react'; import { getClassName } from '../../helpers/getClassName'; import { classNames } from '../../lib/classNames'; import { Icon24Spinner, Icon32Spinner, Icon44Spinner, Icon16Spinner } from '@vkontakte/icons'; import { usePlatform } from '../../hooks/usePlatform'; export interface SpinnerProps extends React.HTMLAttributes { size?: 'small' | 'regular' | 'large' | 'medium'; } const svgSpinner = (size: SpinnerProps['size']): React.ReactElement => { switch (size) { case 'large': return ; case 'medium': return ; case 'small': return ; default: return ; } }; const Spinner: FunctionComponent = ({ className, size, ...restProps }: SpinnerProps) => { const platform = usePlatform(); return (
{svgSpinner(size)}
); }; Spinner.defaultProps = { size: 'regular', }; export default React.memo(Spinner);