Sharkey/src/common/get-post-summary.ts

46 lines
868 B
TypeScript
Raw Normal View History

2017-10-06 21:36:46 +03:00
/**
* 稿
* @param {*} post 稿
*/
2017-10-07 00:58:50 +03:00
const summarize = (post: any): string => {
2017-10-31 21:16:16 +02:00
let summary = '';
// チャンネル
summary += post.channel ? `${post.channel.title}:` : '';
// 本文
summary += post.text ? post.text : '';
2017-02-18 06:07:34 +02:00
// メディアが添付されているとき
if (post.media) {
summary += ` (${post.media.length}つのメディア)`;
}
// 投票が添付されているとき
if (post.poll) {
summary += ' (投票)';
}
// 返信のとき
if (post.reply_to_id) {
if (post.reply_to) {
2017-02-19 05:27:43 +02:00
summary += ` RE: ${summarize(post.reply_to)}`;
2017-02-18 06:07:34 +02:00
} else {
summary += ' RE: ...';
}
}
// Repostのとき
if (post.repost_id) {
if (post.repost) {
2017-02-19 05:27:43 +02:00
summary += ` RP: ${summarize(post.repost)}`;
2017-02-18 06:07:34 +02:00
} else {
summary += ' RP: ...';
}
}
return summary.trim();
};
2017-03-18 13:05:11 +02:00
export default summarize;