32 lines
986 B
TypeScript
32 lines
986 B
TypeScript
// Metro module 14486 (f14487).
|
|
import { Image as Image2, View } from "react-native";
|
|
import { getIconById } from "./AppIconConstants";
|
|
import { createStyles } from "../../../design/components/Styles/native/createStyles";
|
|
import Module712 from "../../../_bundle/Module712";
|
|
import useTheme from "../../../hooks/useTheme";
|
|
import { isThemeDark } from "../../../design/shared";
|
|
const useStyles = createStyles({
|
|
container: {
|
|
overflow: "hidden",
|
|
borderColor: Module712.colors.BACKGROUND_BASE_LOWEST
|
|
},
|
|
image: {
|
|
resizeMode: "contain",
|
|
height: "100%",
|
|
width: "100%"
|
|
}
|
|
});
|
|
export default function AppIcon(props) {
|
|
const { id, size = 56, style } = props;
|
|
const styles = useStyles();
|
|
const theme = useTheme();
|
|
const iconById = getIconById(id);
|
|
return <View style={[styles.container, {
|
|
width: size,
|
|
height: size,
|
|
borderWidth: isThemeDark(theme) ? 0 : 1
|
|
}, style]}>
|
|
<Image2 style={styles.image} source={iconById.iconSource} />
|
|
</View>;
|
|
};
|