From 97bfa40ce35ac93fa25172d015fdae26e9a61129 Mon Sep 17 00:00:00 2001 From: Eric Bailey Date: Wed, 7 Feb 2024 18:52:44 -0600 Subject: [PATCH] Complete header --- .../icons/bars3_stroke2_corner0_rounded.svg | 1 + src/components/icons/Bars.tsx | 5 + .../ProfileModerationService/Header.tsx | 162 ++++++++---------- .../ProfileModerationService/index.tsx | 1 - src/view/com/profile/ProfileHeaderModCard.tsx | 70 ++++---- 5 files changed, 112 insertions(+), 127 deletions(-) create mode 100644 assets/icons/bars3_stroke2_corner0_rounded.svg create mode 100644 src/components/icons/Bars.tsx diff --git a/assets/icons/bars3_stroke2_corner0_rounded.svg b/assets/icons/bars3_stroke2_corner0_rounded.svg new file mode 100644 index 0000000000..cbcb531a6e --- /dev/null +++ b/assets/icons/bars3_stroke2_corner0_rounded.svg @@ -0,0 +1 @@ + diff --git a/src/components/icons/Bars.tsx b/src/components/icons/Bars.tsx new file mode 100644 index 0000000000..7b1415a4bc --- /dev/null +++ b/src/components/icons/Bars.tsx @@ -0,0 +1,5 @@ +import {createSinglePathSVG} from './TEMPLATE' + +export const Bars3_Stroke2_Corner0_Rounded = createSinglePathSVG({ + path: 'M3 5a1 1 0 0 0 0 2h18a1 1 0 1 0 0-2H3Zm-1 7a1 1 0 0 1 1-1h18a1 1 0 1 1 0 2H3a1 1 0 0 1-1-1Zm0 6a1 1 0 0 1 1-1h18a1 1 0 1 1 0 2H3a1 1 0 0 1-1-1Z', +}) diff --git a/src/screens/ProfileModerationService/Header.tsx b/src/screens/ProfileModerationService/Header.tsx index 447e525281..409136c6f2 100644 --- a/src/screens/ProfileModerationService/Header.tsx +++ b/src/screens/ProfileModerationService/Header.tsx @@ -1,38 +1,29 @@ import React from 'react' -import {Pressable, StyleSheet, View} from 'react-native' +import {View} from 'react-native' import LinearGradient from 'react-native-linear-gradient' -import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome' import {useNavigation} from '@react-navigation/native' -import {usePalette} from 'lib/hooks/usePalette' -import {useWebMediaQueries} from 'lib/hooks/useWebMediaQueries' -import {Text as OldText} from '#/view/com/util/text/Text' -import {TextLink} from '#/view/com/util/Link' -import {CenteredView} from '#/view/com/util/Views' -import {sanitizeHandle} from 'lib/strings/handles' -import {makeProfileLink} from 'lib/routes/links' -import {NavigationProp} from 'lib/routes/types' -import {BACK_HITSLOP} from 'lib/constants' -import {isNative} from 'platform/detection' +import {AppBskyModerationDefs} from '@atproto/api' import {useLingui} from '@lingui/react' import {Trans, msg} from '@lingui/macro' + +import {sanitizeHandle} from '#/lib/strings/handles' +import {makeProfileLink} from '#/lib/routes/links' +import {NavigationProp} from '#/lib/routes/types' import {useSetDrawerOpen} from '#/state/shell' import {emitSoftReset} from '#/state/events' -import {AppBskyModerationDefs} from '@atproto/api' -import {HandIcon} from '#/lib/icons' -import {shareUrl} from 'lib/sharing' +import {shareUrl} from '#/lib/sharing' import {sanitizeDisplayName} from '#/lib/strings/display-names' -import {Button as OldButton} from '#/view/com/util/forms/Button' -import {NativeDropdown, DropdownItem} from 'view/com/util/forms/NativeDropdown' +import {NativeDropdown, DropdownItem} from '#/view/com/util/forms/NativeDropdown' import {useSession} from '#/state/session' import {useModalControls} from '#/state/modals' -import {useTheme, atoms as a, tokens} from '#/alf' +import {useTheme, atoms as a, tokens, web, native, useBreakpoints} from '#/alf' import {Text} from '#/components/Typography' -import {Button, ButtonText} from '#/components/Button' +import {Button, ButtonText, ButtonIcon} from '#/components/Button' import {RaisingHande4Finger_Stroke2_Corner0_Rounded as RaisingHand} from '#/components/icons/RaisingHand' -import {InlineLink} from '#/components/Link' import {DotGrid1x3Horizontal_Stroke2_Corner0_Rounded as Ellipsis} from '#/components/icons/DotGrid' import {ChevronLeft_Stroke2_Corner0_Rounded as ChevronLeft} from '#/components/icons/Chevron' +import {Bars3_Stroke2_Corner0_Rounded as Bars} from '#/components/icons/Bars' import {Divider} from '#/components/Divider' export function Header({ @@ -41,11 +32,10 @@ export function Header({ info: AppBskyModerationDefs.ModServiceViewDetailed }) { const t = useTheme() + const {gtMobile} = useBreakpoints() const setDrawerOpen = useSetDrawerOpen() const navigation = useNavigation() const {_} = useLingui() - const {isMobile} = useWebMediaQueries() - const pal = usePalette('default') const canGoBack = navigation.canGoBack() const onPressBack = React.useCallback(() => { @@ -61,8 +51,8 @@ export function Header({ }, [setDrawerOpen]) return ( - - {isMobile && ( + + {!gtMobile && ( @@ -70,22 +60,26 @@ export function Header({ testID="headerDrawerBtn" size="small" color="secondary" - variant="ghost" - shape="round" + variant="solid" + shape="square" onPress={canGoBack ? onPressBack : onPressMenu} - label={canGoBack ? 'Back' : 'Menu'}> - {canGoBack ? ( - - ) : ( - - )} + label={canGoBack ? _(msg`Go back`) : _(msg`Open main menu`)}> + - + + + + + @@ -107,39 +101,44 @@ export function Header({ end={{x: 1, y: 1}} style={[a.absolute, a.inset_0]} /> - + - - + Moderation service - - + {gtMobile && ( + + - {!isMobile && } - + + + )} ) @@ -151,9 +150,9 @@ function CommonControls({ info: AppBskyModerationDefs.ModServiceViewDetailed }) { const t = useTheme() + const {_} = useLingui() const {hasSession} = useSession() const {openModal} = useModalControls() - const {_} = useLingui() const onPressShare = React.useCallback(() => { const url = makeProfileLink(info.creator, 'modservice') @@ -200,39 +199,14 @@ function CommonControls({ }, [hasSession, onPressReport, onPressShare, _]) return ( - <> - - - - - - + + + + + ) } - -const styles = StyleSheet.create({ - backBtn: { - width: 20, - height: 30, - }, - backBtnWide: { - width: 20, - height: 30, - paddingHorizontal: 6, - }, - backIcon: { - marginTop: 6, - }, - btn: { - flexDirection: 'row', - alignItems: 'center', - gap: 6, - paddingVertical: 7, - paddingHorizontal: 14, - borderRadius: 50, - }, -}) diff --git a/src/screens/ProfileModerationService/index.tsx b/src/screens/ProfileModerationService/index.tsx index c5fd6d4e5b..7af5bc154b 100644 --- a/src/screens/ProfileModerationService/index.tsx +++ b/src/screens/ProfileModerationService/index.tsx @@ -65,7 +65,6 @@ export function ProfileModserviceScreen( - - {!isMobile && } - - - Moderation service - - - - {isMobile ? ( - - ) : ( - - - View + + + + {!isMobile && } + + + Moderation service + - )} + {isMobile ? ( + + ) : ( + + + View + + + )} + - + ) }