From 4b5d6e6efb09a714d82e2093dec39c85400a2de6 Mon Sep 17 00:00:00 2001 From: Samuel Newman Date: Fri, 27 Sep 2024 22:50:32 +0100 Subject: Pinned posts (#5055) * add to dropdown menu * use normal profile mutation hook * add pin as reason * request pins * shadow update * rm logs * get prev pinned from getProfile * fix toasts * invalidate after appview ready * don't mutate params * rm log * use checkCommited rather than manual whenAppViewReady * move to mutation * even more optimistic optimistic update * allow pins in `posts_and_author_threads` * update @atproto/api * add reasonPin type * fix strange type error in unrelated query * another missing type --- src/view/com/posts/FeedItem.tsx | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'src/view/com/posts/FeedItem.tsx') diff --git a/src/view/com/posts/FeedItem.tsx b/src/view/com/posts/FeedItem.tsx index fb9cdb065..28b8f4ceb 100644 --- a/src/view/com/posts/FeedItem.tsx +++ b/src/view/com/posts/FeedItem.tsx @@ -38,7 +38,8 @@ import {PostMeta} from '#/view/com/util/PostMeta' import {Text} from '#/view/com/util/text/Text' import {PreviewableUserAvatar} from '#/view/com/util/UserAvatar' import {atoms as a} from '#/alf' -import {Repost_Stroke2_Corner2_Rounded as Repost} from '#/components/icons/Repost' +import {Pin_Stroke2_Corner0_Rounded as PinIcon} from '#/components/icons/Pin' +import {Repost_Stroke2_Corner2_Rounded as RepostIcon} from '#/components/icons/Repost' import {ContentHider} from '#/components/moderation/ContentHider' import {LabelsOnMyPost} from '#/components/moderation/LabelsOnMe' import {PostAlerts} from '#/components/moderation/PostAlerts' @@ -52,6 +53,7 @@ interface FeedItemProps { record: AppBskyFeedPost.Record reason: | AppBskyFeedDefs.ReasonRepost + | AppBskyFeedDefs.ReasonPin | ReasonFeedSource | {[k: string]: unknown; $type: string} | undefined @@ -295,7 +297,7 @@ let FeedItemInner = ({ ) } onBeforePress={onOpenReposter}> - + ) : AppBskyFeedDefs.isReasonPin(reason) ? ( + + + + Pinned + + ) : null} -- cgit 1.4.1