mirror of
https://github.com/SamyRai/turash.git
synced 2025-12-26 23:01:33 +00:00
- 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.
44 lines
982 B
TypeScript
44 lines
982 B
TypeScript
/**
|
|
* Standardized icon sizing and styling utilities
|
|
*/
|
|
|
|
export const iconSizes = {
|
|
xs: 'h-3 w-3',
|
|
sm: 'h-4 w-4',
|
|
md: 'h-5 w-5',
|
|
lg: 'h-6 w-6',
|
|
xl: 'h-8 w-8',
|
|
'2xl': 'h-10 w-10',
|
|
} as const;
|
|
|
|
export type IconSize = keyof typeof iconSizes;
|
|
|
|
export const iconVariants = {
|
|
default: 'text-current',
|
|
muted: 'text-muted-foreground',
|
|
primary: 'text-primary',
|
|
destructive: 'text-destructive',
|
|
success: 'text-green-600',
|
|
warning: 'text-yellow-600',
|
|
} as const;
|
|
|
|
export type IconVariant = keyof typeof iconVariants;
|
|
|
|
export interface IconProps {
|
|
size?: IconSize;
|
|
variant?: IconVariant;
|
|
className?: string;
|
|
}
|
|
|
|
export interface ExtendedIconProps extends IconProps {
|
|
width?: number;
|
|
height?: number;
|
|
}
|
|
|
|
/**
|
|
* Helper function to combine icon size and variant classes
|
|
*/
|
|
export const getIconClasses = (size: IconSize = 'sm', variant: IconVariant = 'default', className = '') => {
|
|
return `${iconSizes[size]} ${iconVariants[variant]} ${className}`.trim();
|
|
};
|