@nexara/nativeflow
Version:
Beautiful, responsive, and customizable UI components for React Native – built for performance and seamless experiences.
24 lines (23 loc) • 803 B
JavaScript
;
import React, { useMemo } from "react";
import { verticalScale } from "../../helpers/ResponsiveCalculations.js";
import { useTheme } from "../../hooks/index.js";
import { Fragment as _Fragment, jsx as _jsx } from "react/jsx-runtime";
const Icon = ({
renderIcon,
color
}) => {
const theme = useTheme(!color && !renderIcon?.props.color);
const renderCallBackIcon = useMemo(() => {
return /*#__PURE__*/React.cloneElement(renderIcon, {
...renderIcon?.props,
size: verticalScale(renderIcon?.props?.size ?? 17),
color: color ?? renderIcon?.props.color ?? theme?.colors.iconPrimary
});
}, [color, theme, renderIcon.props]);
return /*#__PURE__*/_jsx(_Fragment, {
children: renderCallBackIcon
});
};
export default Icon;
//# sourceMappingURL=Icon.js.map