this repo has no description
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

undo ridiculous folder structure

+20 -17
+1 -1
apps/expo/src/app/(app)/(tabs)/(stack)/profile/[handle]/index.tsx apps/expo/src/app/profile/[handle]/index.tsx
··· 1 1 import { useLocalSearchParams } from "expo-router"; 2 2 3 - import { ProfileView } from "../../../../../../components/profile-view"; 3 + import { ProfileView } from "../../../components/profile-view"; 4 4 5 5 export default function ProfilePage() { 6 6 const { handle } = useLocalSearchParams() as { handle: string };
+4 -4
apps/expo/src/app/(app)/(tabs)/(stack)/profile/[handle]/post/[id].tsx apps/expo/src/app/profile/[handle]/post/[id].tsx
··· 4 4 import { FlashList } from "@shopify/flash-list"; 5 5 import { useQuery } from "@tanstack/react-query"; 6 6 7 - import { FeedPost } from "../../../../../../../components/feed-post"; 8 - import { Post } from "../../../../../../../components/post"; 9 - import { useAuthedAgent } from "../../../../../../../lib/agent"; 10 - import { assert } from "../../../../../../../lib/utils/assert"; 7 + import { FeedPost } from "../../../../components/feed-post"; 8 + import { Post } from "../../../../components/post"; 9 + import { useAuthedAgent } from "../../../../lib/agent"; 10 + import { assert } from "../../../../lib/utils/assert"; 11 11 12 12 type Posts = { 13 13 post: AppBskyFeedDefs.PostView;
apps/expo/src/app/(app)/(tabs)/_layout.tsx apps/expo/src/app/(tabs)/_layout.tsx
-8
apps/expo/src/app/(app)/(tabs)/profile.tsx
··· 1 - import { ProfileView } from "../../../components/profile-view"; 2 - import { useAuthedAgent } from "../../../lib/agent"; 3 - 4 - export default function ProfilePage() { 5 - const agent = useAuthedAgent(); 6 - 7 - return <ProfileView handle={agent.session.handle} />; 8 - }
+3 -3
apps/expo/src/app/(app)/(tabs)/timeline.tsx apps/expo/src/app/(tabs)/timeline.tsx
··· 4 4 import { FlashList } from "@shopify/flash-list"; 5 5 import { useInfiniteQuery } from "@tanstack/react-query"; 6 6 7 - import { Button } from "../../../components/button"; 8 - import { FeedPost } from "../../../components/feed-post"; 9 - import { useAuthedAgent } from "../../../lib/agent"; 7 + import { Button } from "../../components/button"; 8 + import { FeedPost } from "../../components/feed-post"; 9 + import { useAuthedAgent } from "../../lib/agent"; 10 10 11 11 export default function Timeline() { 12 12 const agent = useAuthedAgent();
apps/expo/src/app/(app)/compose.tsx apps/expo/src/app/compose.tsx
+8
apps/expo/src/app/(tabs)/profile.tsx
··· 1 + import { ProfileView } from "../../components/profile-view"; 2 + import { useAuthedAgent } from "../../lib/agent"; 3 + 4 + export default function ProfilePage() { 5 + const agent = useAuthedAgent(); 6 + 7 + return <ProfileView handle={agent.session.handle} />; 8 + }
+3
apps/expo/src/app/_layout.tsx
··· 21 21 const [loading, setLoading] = useState(true); 22 22 const [session, setSession] = useState<AtpSessionData | null>(null); 23 23 24 + // need to implement this 25 + // https://expo.github.io/router/docs/features/routing#shared-routes 26 + 24 27 const agent = useMemo(() => { 25 28 BskyAgent.configure({ fetch: fetchHandler }); 26 29 return new BskyAgent({
+1 -1
apps/expo/src/components/profile-view.tsx
··· 121 121 ListHeaderComponent={<ProfileInfo profile={profile.data} />} 122 122 ListFooterComponent={ 123 123 timeline.isFetching ? ( 124 - <View className="w-full items-center py-4"> 124 + <View className="w-full items-center py-8"> 125 125 <ActivityIndicator /> 126 126 </View> 127 127 ) : (