misskey-awawa/src/common/get-post-summary.js

40 lines
746 B
JavaScript
Raw Normal View History

2017-10-06 18:36:46 +00:00
/**
* 投稿を表す文字列を取得します
* @param {*} post 投稿
*/
const summarize = post => {
2017-02-18 22:20:31 +00:00
let summary = post.text ? post.text : '';
2017-02-18 04:07:34 +00:00
// メディアが添付されているとき
if (post.media) {
summary += ` (${post.media.length}つのメディア)`;
}
// 投票が添付されているとき
if (post.poll) {
summary += ' (投票)';
}
// 返信のとき
if (post.reply_to_id) {
if (post.reply_to) {
2017-02-19 03:27:43 +00:00
summary += ` RE: ${summarize(post.reply_to)}`;
2017-02-18 04:07:34 +00:00
} else {
summary += ' RE: ...';
}
}
// Repostのとき
if (post.repost_id) {
if (post.repost) {
2017-02-19 03:27:43 +00:00
summary += ` RP: ${summarize(post.repost)}`;
2017-02-18 04:07:34 +00:00
} else {
summary += ' RP: ...';
}
}
return summary.trim();
};
2017-03-18 11:05:11 +00:00
export default summarize;