From ed7293ea666538532d809f14431099064cae559e Mon Sep 17 00:00:00 2001
From: Paul Frazee <pfrazee@gmail.com>
Date: Wed, 17 May 2023 22:15:44 -0500
Subject: [PATCH] Remove redundant component

---
 src/view/com/feeds/SavedFeedItem.tsx | 66 ----------------------------
 src/view/screens/SavedFeeds.tsx      | 32 ++++++++++++--
 2 files changed, 28 insertions(+), 70 deletions(-)
 delete mode 100644 src/view/com/feeds/SavedFeedItem.tsx

diff --git a/src/view/com/feeds/SavedFeedItem.tsx b/src/view/com/feeds/SavedFeedItem.tsx
deleted file mode 100644
index 8a5889e4..00000000
--- a/src/view/com/feeds/SavedFeedItem.tsx
+++ /dev/null
@@ -1,66 +0,0 @@
-import React, {useCallback} from 'react'
-import {
-  View,
-  TouchableOpacity,
-  StyleSheet,
-  StyleProp,
-  ViewStyle,
-} from 'react-native'
-import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
-import {colors} from 'lib/styles'
-import {observer} from 'mobx-react-lite'
-import {CustomFeedModel} from 'state/models/feeds/custom-feed'
-import {SavedFeedsModel} from 'state/models/ui/saved-feeds'
-import {CustomFeed} from './CustomFeed'
-import {usePalette} from 'lib/hooks/usePalette'
-
-export const SavedFeedItem = observer(
-  ({
-    item,
-    savedFeeds,
-    showSaveBtn = false,
-    style,
-  }: {
-    item: CustomFeedModel
-    savedFeeds: SavedFeedsModel
-    showSaveBtn?: boolean
-    style?: StyleProp<ViewStyle>
-  }) => {
-    const pal = usePalette('default')
-    const isPinned = savedFeeds.isPinned(item)
-    const onTogglePinned = useCallback(
-      () => savedFeeds.togglePinnedFeed(item),
-      [savedFeeds, item],
-    )
-
-    return (
-      <View style={[styles.itemContainer, style]}>
-        <CustomFeed
-          key={item.data.uri}
-          item={item}
-          showSaveBtn={showSaveBtn}
-          style={styles.noBorder}
-        />
-        <TouchableOpacity accessibilityRole="button" onPress={onTogglePinned}>
-          <FontAwesomeIcon
-            icon="thumb-tack"
-            size={20}
-            color={isPinned ? colors.blue3 : pal.colors.icon}
-          />
-        </TouchableOpacity>
-      </View>
-    )
-  },
-)
-
-const styles = StyleSheet.create({
-  itemContainer: {
-    flex: 1,
-    flexDirection: 'row',
-    alignItems: 'center',
-    marginRight: 18,
-  },
-  noBorder: {
-    borderTopWidth: 0,
-  },
-})
diff --git a/src/view/screens/SavedFeeds.tsx b/src/view/screens/SavedFeeds.tsx
index b1ea27af..5b9b546f 100644
--- a/src/view/screens/SavedFeeds.tsx
+++ b/src/view/screens/SavedFeeds.tsx
@@ -19,12 +19,12 @@ import {ViewHeader} from 'view/com/util/ViewHeader'
 import {CenteredView} from 'view/com/util/Views'
 import {Text} from 'view/com/util/text/Text'
 import {isDesktopWeb, isWeb} from 'platform/detection'
-import {s} from 'lib/styles'
+import {s, colors} from 'lib/styles'
 import DraggableFlatList, {
   ShadowDecorator,
   ScaleDecorator,
 } from 'react-native-draggable-flatlist'
-import {SavedFeedItem} from 'view/com/feeds/SavedFeedItem'
+import {CustomFeed} from 'view/com/feeds/CustomFeed'
 import {FontAwesomeIcon} from '@fortawesome/react-native-fontawesome'
 import {CustomFeedModel} from 'state/models/feeds/custom-feed'
 
@@ -106,6 +106,10 @@ const ListItem = observer(
     const rootStore = useStores()
     const savedFeeds = useMemo(() => rootStore.me.savedFeeds, [rootStore])
     const isPinned = savedFeeds.isPinned(item)
+    const onTogglePinned = useCallback(
+      () => savedFeeds.togglePinnedFeed(item),
+      [savedFeeds, item],
+    )
     return (
       <ScaleDecorator>
         <ShadowDecorator>
@@ -146,7 +150,21 @@ const ListItem = observer(
                 style={s.ml20}
               />
             ) : null}
-            <SavedFeedItem item={item} savedFeeds={savedFeeds} showSaveBtn />
+            <CustomFeed
+              key={item.data.uri}
+              item={item}
+              showSaveBtn
+              style={styles.noBorder}
+            />
+            <TouchableOpacity
+              accessibilityRole="button"
+              onPress={onTogglePinned}>
+              <FontAwesomeIcon
+                icon="thumb-tack"
+                size={20}
+                color={isPinned ? colors.blue3 : pal.colors.icon}
+              />
+            </TouchableOpacity>
           </Pressable>
         </ShadowDecorator>
       </ScaleDecorator>
@@ -170,10 +188,16 @@ const styles = StyleSheet.create({
     flexDirection: 'row',
     alignItems: 'center',
     borderTopWidth: 1,
+    paddingRight: 16,
   },
   webArrowButtonsContainer: {
     flexDirection: 'column',
     justifyContent: 'space-around',
   },
-  webArrowUpButton: {marginBottom: 10},
+  webArrowUpButton: {
+    marginBottom: 10,
+  },
+  noBorder: {
+    borderTopWidth: 0,
+  },
 })