fix(route): crossbell replace punycode domain (#11872)

This commit is contained in:
Tony
2023-02-15 12:25:57 +01:00
committed by GitHub
parent 5299cc942e
commit c47b29c509
2 changed files with 35 additions and 22 deletions

View File

@@ -6,17 +6,24 @@ module.exports = async (ctx) => {
ctx.state.data = {
title: 'Crossbell Feeds of ' + characterId,
link: 'https://crossbell.io/',
item: response.data?.list?.map((item) => ({
title: `${item.type} ${item.character.metadata?.content?.name}@${item.character.handle}`,
description: `${item.type} ${item.note && `<br>Note: ${item.note.metadata?.content?.title || item.note.metadata?.content?.content}`}${
item.character && `<br>Character: ${item.character.metadata?.content?.name}@${item.character.handle}`
}`,
link: item.note ? item.note?.metadata?.content?.external_urls || `https://crossbell.io/notes/${item.note?.characterId}-${item.note?.noteId}` : 'https://xchar.app/' + item.character?.handle,
pubDate: item.createdAt,
updated: item.updatedAt,
author: item.note?.metadata?.content?.authors?.[0] || item.note?.character?.metadata?.content?.name || item.note?.character?.handle || item.owner,
guid: item.transactionHash + item.logIndex + item.type,
category: [...(item.note?.metadata?.content?.sources || []), ...(item.note?.metadata?.content?.tags || [])],
})),
item: response.data?.list?.map((item) => {
let link = item.note ? item.note.metadata?.content?.external_urls?.[0] || `https://crossbell.io/notes/${item.note.characterId}-${item.note.noteId}` : 'https://xchar.app/' + item.character.handle;
if (link.startsWith('https://xn--')) {
link = `https://crossbell.io/notes/${item.note?.characterId}-${item.note?.noteId}`;
}
return {
title: `${item.type} ${item.character && item.character.metadata?.content?.name}@${item.character && item.character.handle}`,
description: `${item.type} ${item.note && `<br>Note: ${item.note.metadata?.content?.title || item.note.metadata?.content?.content}`}${
item.character && `<br>Character: ${item.character.metadata?.content?.name}@${item.character.handle}`
}`,
link,
pubDate: item.createdAt,
updated: item.updatedAt,
author: item.note?.metadata?.content?.authors?.[0] || item.note?.character?.metadata?.content?.name || item.note?.character?.handle || item.owner,
guid: item.transactionHash + item.logIndex + item.type,
category: [...(item.note?.metadata?.content?.sources || []), ...(item.note?.metadata?.content?.tags || [])],
};
}),
};
};

View File

@@ -1,12 +1,18 @@
module.exports = {
getItem: (note) => ({
title: note.metadata?.content?.title || '',
description: note.metadata?.content?.content,
link: note.metadata?.content?.external_urls || `https://crossbell.io/notes/${note.characterId}-${note.noteId}`,
pubDate: note.metadata?.content?.publishedAt,
updated: note.metadata?.content?.updatedAt,
author: note.metadata?.content?.authors?.[0] || note.character?.metadata?.content?.name || note.character?.handle,
guid: `${note.characterId}-${note.noteId}`,
category: [...(note.metadata?.content?.sources || []), ...(note.metadata?.content?.tags || [])],
}),
getItem: (note) => {
let link = note.metadata?.content?.external_urls?.[0] ?? `https://crossbell.io/notes/${note.characterId}-${note.noteId}`;
if (link.startsWith('https://xn--')) {
link = `https://crossbell.io/notes/${note.characterId}-${note.noteId}`;
}
return {
title: note.metadata?.content?.title || '',
description: note.metadata?.content?.content,
link,
pubDate: note.metadata?.content?.publishedAt,
updated: note.metadata?.content?.updatedAt,
author: note.metadata?.content?.authors?.[0] || note.character?.metadata?.content?.name || note.character?.handle,
guid: `https://crossbell.io/notes/${note.characterId}-${note.noteId}`,
category: [...(note.metadata?.content?.sources || []), ...(note.metadata?.content?.tags || [])],
};
},
};