From a326a5ff959f5bc4ea0eb9de2863426d01e4a8b2 Mon Sep 17 00:00:00 2001 From: Hongbo Wu Date: Fri, 4 Aug 2023 16:28:17 +0800 Subject: [PATCH 1/2] replace rss with feeds on the settings page --- packages/web/pages/settings/feeds/add.tsx | 20 +++++++++---------- packages/web/pages/settings/feeds/index.tsx | 22 ++++++++++----------- 2 files changed, 21 insertions(+), 21 deletions(-) diff --git a/packages/web/pages/settings/feeds/add.tsx b/packages/web/pages/settings/feeds/add.tsx index 7d68fd181..f3f9ceb68 100644 --- a/packages/web/pages/settings/feeds/add.tsx +++ b/packages/web/pages/settings/feeds/add.tsx @@ -32,7 +32,7 @@ export default function AddRssFeed(): JSX.Element { const subscribe = useCallback(async () => { if (!feedUrl) { - setErrorMessage('Please enter a valid RSS feed URL') + setErrorMessage('Please enter a valid feed URL') return } @@ -41,7 +41,7 @@ export default function AddRssFeed(): JSX.Element { try { normailizedUrl = new URL(feedUrl).toString() } catch (e) { - setErrorMessage('Please enter a valid RSS feed URL') + setErrorMessage('Please enter a valid feed URL') return } @@ -54,17 +54,17 @@ export default function AddRssFeed(): JSX.Element { const errorMessage = formatMessage({ id: `error.${result.subscribe.errorCodes[0]}`, }) - setErrorMessage(`There was an error adding new RSS feed: ${errorMessage}`) + setErrorMessage(`There was an error adding new feed: ${errorMessage}`) return } - router.push(`/settings/rss`) - showSuccessToast('New RSS feed has been added.') + router.push(`/settings/feeds`) + showSuccessToast('New feed has been added.') }, [feedUrl, router]) return ( <> - + -
Add new RSS Feed
+
Add new Feed
{ setErrorMessage(undefined) setFeedUrl(e.target.value) @@ -128,7 +128,7 @@ export default function AddRssFeed(): JSX.Element { style="ctaGray" css={{}} onClick={async () => { - router.push('/settings/rss') + router.push('/settings/feeds') }} > Back @@ -136,7 +136,7 @@ export default function AddRssFeed(): JSX.Element {
-
+
) } diff --git a/packages/web/pages/settings/feeds/index.tsx b/packages/web/pages/settings/feeds/index.tsx index edd4e075a..a14f7d36c 100644 --- a/packages/web/pages/settings/feeds/index.tsx +++ b/packages/web/pages/settings/feeds/index.tsx @@ -50,14 +50,14 @@ export default function Rss(): JSX.Element { return } - showSuccessToast('RSS feed updated', { position: 'bottom-right' }) + showSuccessToast('Feed updated', { position: 'bottom-right' }) revalidate() } async function onDelete(id: string): Promise { const result = await unsubscribeMutation('', id) if (result) { - showSuccessToast('RSS feed unsubscribed', { position: 'bottom-right' }) + showSuccessToast('Feed unsubscribed', { position: 'bottom-right' }) } else { showErrorToast('Failed to unsubscribe', { position: 'bottom-right' }) } @@ -76,7 +76,7 @@ export default function Rss(): JSX.Element { const action = status == 'UNSUBSCRIBED' ? 'pause' : 'resume' if (result) { - showSuccessToast(`RSS feed ${action}d`, { + showSuccessToast(`Feed ${action}d`, { position: 'bottom-right', }) } else { @@ -89,17 +89,17 @@ export default function Rss(): JSX.Element { return ( { - router.push('/settings/rss/add') + router.push('/settings/feeds/add') }} > {subscriptions.length === 0 ? ( ) : ( subscriptions.map((subscription, i) => { @@ -219,7 +219,7 @@ export default function Rss(): JSX.Element { {onDeleteId && ( { await onDelete(onDeleteId) @@ -231,7 +231,7 @@ export default function Rss(): JSX.Element { {onPauseId && ( Date: Fri, 4 Aug 2023 16:30:17 +0800 Subject: [PATCH 2/2] use alternate link before self --- packages/rss-handler/src/index.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/packages/rss-handler/src/index.ts b/packages/rss-handler/src/index.ts index fd64afb00..afc64c1e3 100644 --- a/packages/rss-handler/src/index.ts +++ b/packages/rss-handler/src/index.ts @@ -123,7 +123,7 @@ const parser = new Parser({ }, }) -// get link following the order of preference: via, self, alternate +// get link following the order of preference: via, alternate, self const getLink = (links: RssFeedItemLink[]) => { // sort links by preference const sortedLinks: string[] = [] @@ -137,10 +137,10 @@ const getLink = (links: RssFeedItemLink[]) => { if (link.$.rel === 'via') { sortedLinks[0] = link.$.href } - if (link.$.rel === 'self' || !link.$.rel) { + if (link.$.rel === 'alternate') { sortedLinks[1] = link.$.href } - if (link.$.rel === 'alternate') { + if (link.$.rel === 'self' || !link.$.rel) { sortedLinks[2] = link.$.href } })