Files
discord-decomp/modules/summaries/native/SummaryActionSheetButton.tsx
T
2026-11-01 12:12:55 +02:00

44 lines
1.4 KiB
TypeScript

// Metro module 10935 (f10936).
import { View } from "react-native";
import { createStyles } from "../../../design/components/Styles/native/createStyles";
import Module712 from "../../../_bundle/Module712";
import { PressableOpacity } from "../../../design/void/Pressables/native/Pressables";
import { Icon } from "../../../design/void/native";
import { Text } from "../../../design/components/Text/native/Text";
const useStyles = createStyles({
container: {
flexDirection: "column",
justifyContent: "center",
alignItems: "center",
paddingVertical: 8,
width: 78
},
iconBox: {
borderRadius: Module712.radii.round,
border: 1,
overflow: "hidden",
alignItems: "center",
justifyContent: "center",
backgroundColor: Module712.colors.BACKGROUND_BASE_LOW,
...Module712.shadows.SHADOW_LOW
},
icon: {
margin: 12,
tintColor: Module712.colors.INTERACTIVE_TEXT_DEFAULT
},
name: {
textAlign: "center",
marginTop: 8
}
});
export function SummaryActionSheetButton(props) {
const { label, iconSource, onPress } = props;
const styles = useStyles();
return <PressableOpacity style={styles.container} onPress={onPress} accessibilityRole="button" accessibilityLabel={label}>
<View style={[styles.iconBox]}>
<Icon style={styles.icon} source={iconSource} />
</View>
<Text style={styles.name} variant="text-xs/medium" color="interactive-text-default" lineClamp={1}>{label}</Text>
</PressableOpacity>;
}