import * as React from 'react';
import type { LucideIcon, LucideProps } from 'lucide-react-native';
import { cssInterop } from 'nativewind';
import { cn } from '../lib/cn';
import { TextClassContext } from './text';
type IconProps = LucideProps & {
as: LucideIcon;
};
function IconImpl({ as: IconComponent, ...props }: IconProps) {
return ;
}
cssInterop(IconImpl, {
className: {
target: 'style',
nativeStyleToProp: {
height: 'size',
width: 'size',
},
},
});
/**
* Wrapper sobre iconos Lucide con soporte de `className` via NativeWind.
*
* @example
* import { ArrowRight } from 'lucide-react-native';
*
*/
function Icon({ as: IconComponent, className, size = 14, ...props }: IconProps) {
const textClass = React.useContext(TextClassContext);
return (
);
}
export { Icon };
export type { IconProps };