diff options
author | dan <dan.abramov@gmail.com> | 2024-12-18 19:50:37 +0000 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-12-18 19:50:37 +0000 |
commit | a7f763faf23bc5d9db94f6e8f2f52ffec25d95a2 (patch) | |
tree | 35cbf13d3e475bcf0dafc70b1127506758f474ba /src/components/Menu/index.tsx | |
parent | 4097fe07c5abca2689436956636ac9ab4a0e663a (diff) | |
download | voidsky-a7f763faf23bc5d9db94f6e8f2f52ffec25d95a2.tar.zst |
Add reply sorting in-thread (#7156)
* Add button * Extract component * Make it work * Extract and use RadioCircle * Add tree/list setting * Prefer local state * Factor out threadViewPrefs * Fix optimistic stuff * Revert RadioButton changes * Tweak radio styles, add Menu.LabelText * Labels * Margins * Update copy --------- Co-authored-by: Eric Bailey <git@esb.lol>
Diffstat (limited to 'src/components/Menu/index.tsx')
-rw-r--r-- | src/components/Menu/index.tsx | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/src/components/Menu/index.tsx b/src/components/Menu/index.tsx index 73eb9da52..d79b0ff90 100644 --- a/src/components/Menu/index.tsx +++ b/src/components/Menu/index.tsx @@ -190,6 +190,55 @@ export function ItemIcon({icon: Comp}: ItemIconProps) { ) } +export function ItemRadio({selected}: {selected: boolean}) { + const t = useTheme() + return ( + <View + style={[ + a.justify_center, + a.align_center, + a.rounded_full, + t.atoms.border_contrast_high, + { + borderWidth: 1, + height: 24, + width: 24, + }, + ]}> + {selected ? ( + <View + style={[ + a.absolute, + a.rounded_full, + {height: 16, width: 16}, + selected + ? { + backgroundColor: t.palette.primary_500, + } + : {}, + ]} + /> + ) : null} + </View> + ) +} + +export function LabelText({children}: {children: React.ReactNode}) { + const t = useTheme() + return ( + <Text + style={[ + a.font_bold, + t.atoms.text_contrast_medium, + { + marginBottom: -8, + }, + ]}> + {children} + </Text> + ) +} + export function Group({children, style}: GroupProps) { const t = useTheme() return ( |