turash/bugulma/frontend/components/ui/IconButton.tsx
Damir Mukimov 6347f42e20
Consolidate repositories: Remove nested frontend .git and merge into main repository
- Remove nested git repository from bugulma/frontend/.git
- Add all frontend files to main repository tracking
- Convert from separate frontend/backend repos to unified monorepo
- Preserve all frontend code and development history as tracked files
- Eliminate nested repository complexity for simpler development workflow

This creates a proper monorepo structure with frontend and backend
coexisting in the same repository for easier development and deployment.
2025-11-25 06:02:57 +01:00

36 lines
858 B
TypeScript

import React from 'react';
import Button from '@/components/ui/Button.tsx';
type IconButtonProps = React.ButtonHTMLAttributes<HTMLButtonElement> & {
variant?: 'primary' | 'outline' | 'ghost' | 'primary-ghost';
size?: 'default' | 'sm' | 'lg';
children: React.ReactNode;
'aria-label': string;
};
const IconButton = React.forwardRef<HTMLButtonElement, IconButtonProps>(
({ variant = 'ghost', size = 'sm', children, className, ...props }, ref) => {
const sizeClasses = {
default: 'h-10 w-10',
sm: 'h-9 w-9',
lg: 'h-12 w-12',
};
return (
<Button
ref={ref}
variant={variant}
size={size}
className={`p-0 ${sizeClasses[size]} ${className}`}
{...props}
>
{children}
</Button>
);
}
);
IconButton.displayName = 'IconButton';
export default IconButton;