diff --git a/src/components/StarterPack/NewskieDialog.tsx b/src/components/StarterPack/NewskieDialog.tsx index f8b36bfa66..0101288da1 100644 --- a/src/components/StarterPack/NewskieDialog.tsx +++ b/src/components/StarterPack/NewskieDialog.tsx @@ -5,6 +5,7 @@ import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' import {HITSLOP_10} from 'lib/constants' +import {ago} from 'lib/strings/time' import {isNative} from 'platform/detection' import {useSession} from 'state/session' import {atoms as a} from '#/alf' @@ -14,93 +15,6 @@ import {Newskie} from '#/components/icons/Newskie' import {StarterPackCard} from '#/components/StarterPack/StarterPackCard' import {Text} from '#/components/Typography' -const mockSP = { - uri: 'at://did:plc:t5nrviyjxkdhd5ymyra772dm/app.bsky.graph.starterpack/3kuec35ms422t', - cid: 'bafyreigrvmj3qd4urr5q6lqku7uzj4xmazepik6oobuxtvunx3g7d6e6xi', - record: { - list: 'at://did:plc:t5nrviyjxkdhd5ymyra772dm/app.bsky.graph.list/3kuec35kvkj2t', - name: 'Test 123', - $type: 'app.bsky.graph.starterpack', - feeds: [], - createdAt: '2024-06-07T19:43:07.211Z', - description: 'Test123', - descriptionFacets: [], - }, - creator: { - did: 'did:plc:t5nrviyjxkdhd5ymyra772dm', - handle: 'alice.test', - displayName: 'Alice', - associated: { - chat: { - allowIncoming: 'following', - }, - }, - viewer: { - muted: false, - blockedBy: false, - }, - labels: [], - }, - feedCount: 0, - joinedAllTimeCount: 0, - joinedWeekCount: 0, - listItemCount: 2, - labels: [], - indexedAt: '2024-06-07T19:43:07.211Z', - feeds: [], - list: { - uri: 'at://did:plc:t5nrviyjxkdhd5ymyra772dm/app.bsky.graph.list/3kuec35kvkj2t', - cid: 'bafyreibnigtususbzhjzadhsqconcf7s5wan6dl7h6s56jhxd6ebfvflrq', - name: 'Test 123', - purpose: 'app.bsky.graph.defs#referencelist', - indexedAt: '2024-06-07T19:43:07.122Z', - labels: [], - viewer: { - muted: false, - }, - }, - listItemsSample: [ - { - uri: 'at://did:plc:t5nrviyjxkdhd5ymyra772dm/app.bsky.graph.listitem/3kuec35m2o22t', - subject: { - did: 'did:plc:5warwwnoavxfhchjhcjlqyqi', - handle: 'bob.test', - displayName: 'Bob', - viewer: { - muted: false, - blockedBy: false, - following: - 'at://did:plc:t5nrviyjxkdhd5ymyra772dm/app.bsky.graph.follow/3kudwno6ck22t', - followedBy: - 'at://did:plc:5warwwnoavxfhchjhcjlqyqi/app.bsky.graph.follow/3kudwno6nbs2t', - }, - labels: [], - description: 'Test user 2', - indexedAt: '2024-06-07T16:18:43.414Z', - }, - }, - { - uri: 'at://did:plc:t5nrviyjxkdhd5ymyra772dm/app.bsky.graph.listitem/3kuec35m2nz2t', - subject: { - did: 'did:plc:cvdwnci2mr5srh4slty7lndz', - handle: 'carla.test', - displayName: 'Carla', - viewer: { - muted: false, - blockedBy: false, - following: - 'at://did:plc:t5nrviyjxkdhd5ymyra772dm/app.bsky.graph.follow/3kudwno6hgc2t', - followedBy: - 'at://did:plc:cvdwnci2mr5srh4slty7lndz/app.bsky.graph.follow/3kudwno6x2c2t', - }, - labels: [], - description: 'Test user 3', - indexedAt: '2024-06-07T16:18:43.462Z', - }, - }, - ], -} - export function NewskieDialog({ profile, }: { @@ -110,7 +24,7 @@ export function NewskieDialog({ const control = useDialogControl() const profileName = profile.displayName || `@${profile.handle}` - // const joinedVia = profile.joinedViaStarterPack + const joinedVia = profile.joinedViaStarterPack const {currentAccount} = useSession() return ( @@ -134,20 +48,22 @@ export function NewskieDialog({ {profileName} is new here! - {AppBskyGraphStarterpack.isRecord(mockSP.record) ? ( + {AppBskyGraphStarterpack.isRecord(joinedVia?.record) && + profile.createdAt ? ( - {profileName} joined Bluesky 3 days ago with{' '} - {mockSP?.creator.did === currentAccount?.did + {profileName} joined Bluesky {ago(profile.createdAt, true)}{' '} + ago with{' '} + {joinedVia?.creator.did === currentAccount?.did ? 'your' - : `${mockSP?.creator.displayName}'s` || - `@${mockSP?.creator.handle}'s`}{' '} + : `${joinedVia?.creator.displayName}'s` || + `@${joinedVia?.creator.handle}'s`}{' '} starter pack. ) : ( {profileName} recently joined Bluesky 3 days ago )} - + diff --git a/src/screens/Onboarding/StepFinished.tsx b/src/screens/Onboarding/StepFinished.tsx index 5089980ad0..6c8feae8c0 100644 --- a/src/screens/Onboarding/StepFinished.tsx +++ b/src/screens/Onboarding/StepFinished.tsx @@ -3,6 +3,12 @@ import {View} from 'react-native' import {AppBskyGraphDefs, AppBskyGraphStarterpack} from '@atproto/api' import {msg, Trans} from '@lingui/macro' import {useLingui} from '@lingui/react' +import { + CommonActions, + StackActions, + useNavigation, + useNavigationContainerRef, +} from '@react-navigation/native' import {useQueryClient} from '@tanstack/react-query' import {useAnalytics} from '#/lib/analytics/analytics' @@ -15,6 +21,7 @@ import {useAgent} from '#/state/session' import {useOnboardingDispatch} from '#/state/shell' import {uploadBlob} from 'lib/api' import {useRequestNotificationsPermission} from 'lib/notifications/notifications' +import {NavigationProp} from 'lib/routes/types' import { useSetUsedStarterPack, useUsedStarterPack, @@ -165,15 +172,15 @@ export function StepFinished() { track('OnboardingV2:Complete') logEvent('onboarding:finished:nextPressed', {}) }, [ - state, queryClient, agent, - setUsedStarterPack, dispatch, onboardDispatch, track, - requestNotificationsPermission, usedStarterPack, + state, + requestNotificationsPermission, + setUsedStarterPack, ]) React.useEffect(() => { diff --git a/src/screens/StarterPack/Landing/index.tsx b/src/screens/StarterPack/Landing/index.tsx index f216202b29..1a2fc9f0e2 100644 --- a/src/screens/StarterPack/Landing/index.tsx +++ b/src/screens/StarterPack/Landing/index.tsx @@ -171,6 +171,7 @@ function LandingScreenInner({ }: { starterPack: AppBskyGraphDefs.StarterPackView }) { + const navigation = useNavigation() const {record, creator, listItemsSample, feeds, joinedWeekCount} = starterPack const {_} = useLingui() const t = useTheme() @@ -199,7 +200,12 @@ function LandingScreenInner({ contentContainerStyle={{paddingBottom: 100}}> + style={[ + a.align_center, + a.gap_sm, + a.py_2xl, + {borderBottomLeftRadius: 10, borderBottomRightRadius: 10}, + ]}> @@ -213,12 +219,12 @@ function LandingScreenInner({ - {!!joinedWeekCount && joinedWeekCount >= 50 && ( - - {joinedWeekCount} joined this week! - - )} + {/*{!!joinedWeekCount && joinedWeekCount >= -1 && (*/} + + 180 joined this week! + + {/*)}*/} - + {record.description} - - {starterPack.feeds?.length && ( - - {starterPack.feeds?.map(feed => ( - - ))} - {/**/} - {/**/} + {Boolean(starterPack.feeds?.length) && ( + + + Join Bluesky now to subscribe to these feeds + + + + {starterPack.feeds?.map((feed, index) => ( + + ))} + {/**/} + {/**/} + )} {sampleProfiles?.length && ( - <> - + + {feeds?.length ? ( You'll also follow these people and many others! @@ -288,7 +302,7 @@ function LandingScreenInner({ )} - + )} diff --git a/src/screens/StarterPack/Main/index.tsx b/src/screens/StarterPack/Main/index.tsx index c929112a8b..a80b45b5fc 100644 --- a/src/screens/StarterPack/Main/index.tsx +++ b/src/screens/StarterPack/Main/index.tsx @@ -135,7 +135,7 @@ function Header({ page.feeds) || [] + const popularFeeds = + popularFeedsPages?.pages.flatMap(page => page.feeds) || [] - const popularFeeds = [ - { - uri: 'at://did:plc:6262fucmqlkgz23yaslhuuq6/app.bsky.feed.generator/alice-favs', - cid: 'bafyreidgvy4vlvvhx3lhpyej2qido3m5sk2l5643bhbmqtgfuxwz53xqlm', - did: 'did:plc:epfqsozl6rso6ebd6mkfyzpl', - creator: { - did: 'did:plc:vyhhvdf4xw5nziakfxxsynwk', - handle: 'alice.test', - displayName: 'Alice', - viewer: { - muted: false, - blockedBy: false, - }, - labels: [], - description: 'Test user 1', - indexedAt: '2024-06-10T17:37:36.662Z', - }, - displayName: 'alices feed', - description: 'all my fav stuff', - avatar: - 'http://localhost:2584/img/avatar/plain/did:plc:vyhhvdf4xw5nziakfxxsynwk/bafkreihem6nzbu462kcx5cqnrkonpq75fe5dlbhgnzcmuvvhqk7s5vcq3u@jpeg', - likeCount: 3, - labels: [], - viewer: { - like: 'at://did:plc:vyhhvdf4xw5nziakfxxsynwk/app.bsky.feed.like/3kulmhjxuoc2g', - }, - indexedAt: '2022-07-15T00:51:16.914Z', - }, - ] + // const popularFeeds = [ + // { + // uri: 'at://did:plc:i2g4cq5neuol2n5kadpffqok/app.bsky.feed.generator/alice-favs', + // cid: 'bafyreidgvy4vlvvhx3lhpyej2qido3m5sk2l5643bhbmqtgfuxwz53xqlm', + // did: 'did:plc:epfqsozl6rso6ebd6mkfyzpl', + // creator: { + // did: 'did:plc:vyhhvdf4xw5nziakfxxsynwk', + // handle: 'alice.test', + // displayName: 'Alice', + // viewer: { + // muted: false, + // blockedBy: false, + // }, + // labels: [], + // description: 'Test user 1', + // indexedAt: '2024-06-10T17:37:36.662Z', + // }, + // displayName: 'alices feed', + // description: 'all my fav stuff', + // avatar: + // 'http://localhost:2584/img/avatar/plain/did:plc:vyhhvdf4xw5nziakfxxsynwk/bafkreihem6nzbu462kcx5cqnrkonpq75fe5dlbhgnzcmuvvhqk7s5vcq3u@jpeg', + // likeCount: 3, + // labels: [], + // viewer: { + // like: 'at://did:plc:vyhhvdf4xw5nziakfxxsynwk/app.bsky.feed.like/3kulmhjxuoc2g', + // }, + // indexedAt: '2022-07-15T00:51:16.914Z', + // }, + // ] const { data: searchedFeeds,