diff --git a/docs/social-media.md b/docs/social-media.md index d2ba7d320..6e06322a0 100644 --- a/docs/social-media.md +++ b/docs/social-media.md @@ -36,7 +36,7 @@ Tiny Tiny RSS 会给所有 iframe 元素添加 `sandbox="allow-scripts"` 属性 ### UP 主动态 - + ### UP 主频道 diff --git a/lib/routes/bilibili/dynamic.js b/lib/routes/bilibili/dynamic.js index 816ad9126..dfeaeff2f 100644 --- a/lib/routes/bilibili/dynamic.js +++ b/lib/routes/bilibili/dynamic.js @@ -129,15 +129,29 @@ module.exports = async (ctx) => { } else if (item.desc && item.desc.dynamic_id) { link = `https://t.bilibili.com/${item.desc.dynamic_id}`; } + const getTitle = (data) => data.title || data.description || data.content || (data.vest && data.vest.content) || ''; const getDes = (data) => data.desc || data.description || data.content || data.summary || (data.vest && data.vest.content) + (data.sketch && `
${data.sketch.title}
${data.sketch.desc_text}`) || data.intro || ''; const getOriginDes = (data) => (data && (data.apiSeasonInfo && data.apiSeasonInfo.title && `//转发自: ${data.apiSeasonInfo.title}`) + (data.index_title && `
${data.index_title}`)) || ''; const getOriginName = (data) => data.uname || (data.author && data.author.name) || data.upper || (data.user && (data.user.uname || data.user.name)) || (data.owner && data.owner.name) || ''; const getOriginTitle = (data) => (data.title ? `${data.title}
` : ''); const getIframe = (data) => (!disableEmbed && data && data.aid ? `

${utils.iframe(data.aid)}
` : ''); + + // emoji + let data_content = ''; + if (item.display.emoji_info) { + const emoji = item.display.emoji_info.emoji_details; + emoji.forEach(function (item) { + data_content = getDes(data).replace( + new RegExp(`\\${item.text}`, 'g'), + `${item.text}` + ); + }); + } + return { title: getTitle(data), - description: `${getDes(data)}${ + description: `${data_content}${ origin && getOriginName(origin) ? `

//转发自: @${getOriginName(origin)}: ${getOriginTitle(origin.item || origin)}${getDes(origin.item || origin)}` : `${getOriginDes(origin)}` }${getIframe(data)}${getIframe(origin)}${imgHTML ? `
${imgHTML}` : ''}`, pubDate: new Date(item.desc.timestamp * 1000).toUTCString(),