diff options
author | Chenyu Huang <itschenyu@gmail.com> | 2025-08-20 15:00:06 -0700 |
---|---|---|
committer | Chenyu Huang <itschenyu@gmail.com> | 2025-08-20 15:00:06 -0700 |
commit | 0474a3b6f7706d9881f8f7544be343459ecc4035 (patch) | |
tree | 4290348418e9feedb662afdd6cfccd84397c7542 | |
parent | f7c05c2df44bec9feebbcb8f888cdcb49d6095d3 (diff) | |
download | voidsky-0474a3b6f7706d9881f8f7544be343459ecc4035.tar.zst |
address feedback
-rw-r--r-- | src/components/dialogs/StarterPackDialog.tsx | 41 | ||||
-rw-r--r-- | src/screens/StarterPack/Wizard/index.tsx | 60 |
2 files changed, 57 insertions, 44 deletions
diff --git a/src/components/dialogs/StarterPackDialog.tsx b/src/components/dialogs/StarterPackDialog.tsx index a8e775958..443b84205 100644 --- a/src/components/dialogs/StarterPackDialog.tsx +++ b/src/components/dialogs/StarterPackDialog.tsx @@ -4,7 +4,7 @@ import { type AppBskyGraphGetStarterPacksWithMembership, AppBskyGraphStarterpack, } from '@atproto/api' -import {msg, Trans} from '@lingui/macro' +import {msg, Plural, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' import {useNavigation} from '@react-navigation/native' import {useQueryClient} from '@tanstack/react-query' @@ -20,7 +20,6 @@ import { useListMembershipRemoveMutation, } from '#/state/queries/list-memberships' import * as Toast from '#/view/com/util/Toast' -import {UserAvatar} from '#/view/com/util/UserAvatar' import {atoms as a, useTheme} from '#/alf' import {Button, ButtonIcon, ButtonText} from '#/components/Button' import * as Dialog from '#/components/Dialog' @@ -28,6 +27,7 @@ import {Divider} from '#/components/Divider' import {Loader} from '#/components/Loader' import {Text} from '#/components/Typography' import * as bsky from '#/types/bsky' +import {AvatarStack} from '../AvatarStack' import {PlusLarge_Stroke2_Corner0_Rounded} from '../icons/Plus' import {StarterPack} from '../icons/StarterPack' import {TimesLarge_Stroke2_Corner0_Rounded} from '../icons/Times' @@ -107,7 +107,9 @@ function Empty({onStartWizard}: {onStartWizard: () => void}) { size="small" onPress={onStartWizard}> <ButtonText> - <Trans>Create</Trans> + <Trans comment="Text on button to create a new starter pack"> + Create + </Trans> </ButtonText> <ButtonIcon icon={PlusLarge_Stroke2_Corner0_Rounded} /> </Button> @@ -200,7 +202,9 @@ function StarterPackList({ size="small" onPress={onStartWizard}> <ButtonText> - <Trans>Create</Trans> + <Trans comment="Text on button to create a new starter pack"> + Create + </Trans> </ButtonText> <ButtonIcon icon={PlusLarge_Stroke2_Corner0_Rounded} /> </Button> @@ -347,22 +351,12 @@ function StarterPackItem({ {starterPack.listItemsSample && starterPack.listItemsSample.length > 0 && ( <> - {starterPack.listItemsSample?.slice(0, 4).map((p, index) => ( - <UserAvatar - key={p.subject.did} - avatar={p.subject.avatar} - size={32} - type={'user'} - style={[ - { - zIndex: 1 - index, - marginLeft: index > 0 ? -2 : 0, - borderWidth: 0.5, - borderColor: t.atoms.bg.backgroundColor, - }, - ]} - /> - ))} + <AvatarStack + size={32} + profiles={starterPack.listItemsSample + ?.slice(0, 4) + .map(p => p.subject)} + /> {starterPack.list?.listItemCount && starterPack.list.listItemCount > 4 && ( @@ -372,7 +366,12 @@ function StarterPackItem({ t.atoms.text_contrast_medium, a.ml_xs, ]}> - {`+${starterPack.list.listItemCount - 4} more`} + <Trans> + <Plural + value={starterPack.list.listItemCount - 4} + other="+# more" + /> + </Trans> </Text> )} </> diff --git a/src/screens/StarterPack/Wizard/index.tsx b/src/screens/StarterPack/Wizard/index.tsx index e823f8bb7..651f8f77f 100644 --- a/src/screens/StarterPack/Wizard/index.tsx +++ b/src/screens/StarterPack/Wizard/index.tsx @@ -483,30 +483,44 @@ function Footer({ <Text style={[a.text_center, textStyles]}> { items.length < 2 ? ( - <Trans> - It's just{' '} - <Text style={[a.font_bold, textStyles]} emoji> - {currentAccount?.did === items[0].did - ? 'you' - : getName(items[0])}{' '} - </Text> - right now! Add more people to your starter pack by searching - above. - </Trans> + currentAccount?.did === items[0].did ? ( + <Trans> + It's just you right now! Add more people to your starter + pack by searching above. + </Trans> + ) : ( + <Trans> + It's just{' '} + <Text style={[a.font_bold, textStyles]} emoji> + {getName(items[0])}{' '} + </Text> + right now! Add more people to your starter pack by searching + above. + </Trans> + ) ) : items.length === 2 ? ( - <Trans> - <Text style={[a.font_bold, textStyles]}> - {currentAccount?.did === items[0].did - ? 'you' - : getName(items[0])} - </Text>{' '} - and - <Text> </Text> - <Text style={[a.font_bold, textStyles]} emoji> - {getName(items[1] /* [0] is self, skip it */)}{' '} - </Text> - are included in your starter pack - </Trans> + currentAccount?.did === items[0].did ? ( + <Trans> + <Text style={[a.font_bold, textStyles]}>You</Text> and + <Text> </Text> + <Text style={[a.font_bold, textStyles]} emoji> + {getName(items[1] /* [0] is self, skip it */)}{' '} + </Text> + are included in your starter pack + </Trans> + ) : ( + <Trans> + <Text style={[a.font_bold, textStyles]}> + {getName(items[0])} + </Text>{' '} + and + <Text> </Text> + <Text style={[a.font_bold, textStyles]} emoji> + {getName(items[1] /* [0] is self, skip it */)}{' '} + </Text> + are included in your starter pack + </Trans> + ) ) : items.length > 2 ? ( <Trans context="profiles"> <Text style={[a.font_bold, textStyles]} emoji> |