diff --git a/assets/icons/gift1_filled_corner0_rounded.svg b/assets/icons/gift1_filled_corner0_rounded.svg new file mode 100644 index 0000000000..3b5c47abfc --- /dev/null +++ b/assets/icons/gift1_filled_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/assets/icons/gift1_stroke2_corner0_rounded.svg b/assets/icons/gift1_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..828de5df72 --- /dev/null +++ b/assets/icons/gift1_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/src/components/icons/Gift1.tsx b/src/components/icons/Gift1.tsx new file mode 100644 index 0000000000..874798af7d --- /dev/null +++ b/src/components/icons/Gift1.tsx @@ -0,0 +1,9 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const Gift1_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M6 4.667A2.667 2.667 0 0 1 8.667 2c1.34 0 2.538.608 3.333 1.564A4.324 4.324 0 0 1 15.333 2 2.667 2.667 0 0 1 18 4.667c0 .859-.25 1.66-.681 2.333H20a1 1 0 0 1 1 1v4a1 1 0 0 1-1 1v7a1 1 0 0 1-1 1H5a1 1 0 0 1-1-1v-7a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1h2.681A4.313 4.313 0 0 1 6 4.667ZM10.333 7H11v-.667A2.333 2.333 0 0 0 8.667 4 .667.667 0 0 0 8 4.667 2.333 2.333 0 0 0 10.333 7ZM13 6.333V7h.667A2.333 2.333 0 0 0 16 4.667.667.667 0 0 0 15.333 4 2.333 2.333 0 0 0 13 6.333ZM11 9H5v2h6V9Zm2 2V9h6v2h-6Zm-2 2H6v6h5v-6Zm2 6v-6h5v6h-5Z', +}) + +export const Gift1_Filled_Corner0_Rounded = createSinglePathSVG({ + path: 'M6 4.667A2.667 2.667 0 0 1 8.667 2c1.34 0 2.538.608 3.333 1.564A4.324 4.324 0 0 1 15.333 2 2.667 2.667 0 0 1 18 4.667c0 .859-.25 1.66-.681 2.333H20a1 1 0 0 1 1 1v2a1 1 0 0 1-1 1h-7V7h.667A2.333 2.333 0 0 0 16 4.667.667.667 0 0 0 15.333 4 2.333 2.333 0 0 0 13 6.333V7h-2v-.667A2.333 2.333 0 0 0 8.667 4 .667.667 0 0 0 8 4.667 2.333 2.333 0 0 0 10.333 7H11v4H4a1 1 0 0 1-1-1V8a1 1 0 0 1 1-1h2.681A4.313 4.313 0 0 1 6 4.667ZM11 13H4v7a1 1 0 0 0 1 1h6v-8Zm9 0h-7v8h6a1 1 0 0 0 1-1v-7Z', +}) diff --git a/src/view/com/home/HomeHeaderLayoutMobile.tsx b/src/view/com/home/HomeHeaderLayoutMobile.tsx index f5397d7172..675f016fab 100644 --- a/src/view/com/home/HomeHeaderLayoutMobile.tsx +++ b/src/view/com/home/HomeHeaderLayoutMobile.tsx @@ -16,6 +16,7 @@ import {atoms} from '#/alf' import {useTheme} from '#/alf' import {atoms as a} from '#/alf' import {ColorPalette_Stroke2_Corner0_Rounded as ColorPalette} from '#/components/icons/ColorPalette' +import {Gift1_Stroke2_Corner0_Rounded as Gift} from '#/components/icons/Gift1' import {Hashtag_Stroke2_Corner0_Rounded as FeedsIcon} from '#/components/icons/Hashtag' import {Menu_Stroke2_Corner0_Rounded as Menu} from '#/components/icons/Menu' import {Link} from '#/components/Link' @@ -73,6 +74,9 @@ export function HomeHeaderLayoutMobile({ ]}> {IS_DEV && ( <> + + + { setDrawerOpen(false) }, [navigation, setDrawerOpen]) + const onPressSubscriptions = React.useCallback(() => { + navigation.navigate('Subscriptions') + setDrawerOpen(false) + }, [navigation, setDrawerOpen]) + const onPressFeedback = React.useCallback(() => { Linking.openURL( FEEDBACK_FORM_URL({ @@ -266,6 +276,12 @@ let DrawerContent = ({}: {}): React.ReactNode => { onPress={onPressProfile} /> + {IS_INTERNAL && ( + + )} ) : ( <> @@ -562,6 +578,31 @@ let SettingsMenuItem = ({onPress}: {onPress: () => void}): React.ReactNode => { } SettingsMenuItem = React.memo(SettingsMenuItem) +let SubscriptionsMenuItem = ({ + isActive, + onPress, +}: { + isActive: boolean + onPress: () => void +}): React.ReactNode => { + const {_} = useLingui() + const t = useTheme() + return ( + + ) : ( + + ) + } + label={_(msg`Support Bluesky`)} + onPress={onPress} + /> + ) +} +SubscriptionsMenuItem = React.memo(SubscriptionsMenuItem) + function MenuItem({icon, label, count, bold, onPress}: MenuItemProps) { const t = useTheme() return (