From f8a6887d092a73cb45593001d2d697974f3cdd98 Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Fri, 5 Apr 2024 17:26:38 +0800 Subject: [PATCH] show failed_at timestamp if a feed failed to fresh --- .../queries/useGetSubscriptionsQuery.tsx | 2 ++ packages/web/pages/settings/feeds/index.tsx | 15 +++++++++++---- 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/packages/web/lib/networking/queries/useGetSubscriptionsQuery.tsx b/packages/web/lib/networking/queries/useGetSubscriptionsQuery.tsx index b05d64eb9..58ec302dd 100644 --- a/packages/web/lib/networking/queries/useGetSubscriptionsQuery.tsx +++ b/packages/web/lib/networking/queries/useGetSubscriptionsQuery.tsx @@ -30,6 +30,7 @@ export type Subscription = { updatedAt: string lastFetchedAt?: string mostRecentItemDate?: string + failedAt?: string fetchContentType?: FetchContentType } @@ -74,6 +75,7 @@ export function useGetSubscriptionsQuery( lastFetchedAt fetchContentType mostRecentItemDate + failedAt } } ... on SubscriptionsError { diff --git a/packages/web/pages/settings/feeds/index.tsx b/packages/web/pages/settings/feeds/index.tsx index 37bc5dae1..fcff2c823 100644 --- a/packages/web/pages/settings/feeds/index.tsx +++ b/packages/web/pages/settings/feeds/index.tsx @@ -229,10 +229,17 @@ export default function Rss(): JSX.Element { }} > {`URL: ${subscription.url}`} - {`Last refreshed: ${ - subscription.lastFetchedAt - ? formattedDateTime(subscription.lastFetchedAt) - : 'Never' + {/* show failed timestamp instead of last refreshed timestamp if the feed failed to refresh */} + {`${ + subscription.failedAt + ? `Failed to refresh: ${formattedDateTime( + subscription.failedAt + )}` + : `Last refreshed: ${ + subscription.lastFetchedAt + ? formattedDateTime(subscription.lastFetchedAt) + : 'Never' + }` }`} {subscription.mostRecentItemDate &&