2018-07-07 12:19:00 +02:00
|
|
|
import getUserName from './get-user-name';
|
2020-12-28 15:05:30 +01:00
|
|
|
import { getNoteSummary } from './get-note-summary';
|
2017-11-10 16:27:02 +01:00
|
|
|
import getReactionEmoji from './get-reaction-emoji';
|
2020-12-28 15:05:30 +01:00
|
|
|
import locales = require('../../locales');
|
2017-11-10 16:27:02 +01:00
|
|
|
|
|
|
|
/**
|
|
|
|
* 通知を表す文字列を取得します。
|
|
|
|
* @param notification 通知
|
|
|
|
*/
|
2017-11-10 17:00:14 +01:00
|
|
|
export default function(notification: any): string {
|
2017-11-10 16:27:02 +01:00
|
|
|
switch (notification.type) {
|
|
|
|
case 'follow':
|
2018-04-05 18:36:34 +02:00
|
|
|
return `${getUserName(notification.user)}にフォローされました`;
|
2017-11-10 16:27:02 +01:00
|
|
|
case 'mention':
|
2020-12-28 15:05:30 +01:00
|
|
|
return `言及されました:\n${getUserName(notification.user)}「${getNoteSummary(notification.note, locales['ja-JP'])}」`;
|
2017-11-10 16:27:02 +01:00
|
|
|
case 'reply':
|
2020-12-28 15:05:30 +01:00
|
|
|
return `返信されました:\n${getUserName(notification.user)}「${getNoteSummary(notification.note, locales['ja-JP'])}」`;
|
2018-04-07 19:30:37 +02:00
|
|
|
case 'renote':
|
2020-12-28 15:05:30 +01:00
|
|
|
return `Renoteされました:\n${getUserName(notification.user)}「${getNoteSummary(notification.note, locales['ja-JP'])}」`;
|
2017-11-10 16:27:02 +01:00
|
|
|
case 'quote':
|
2020-12-28 15:05:30 +01:00
|
|
|
return `引用されました:\n${getUserName(notification.user)}「${getNoteSummary(notification.note, locales['ja-JP'])}」`;
|
2017-11-10 16:27:02 +01:00
|
|
|
case 'reaction':
|
2020-12-28 15:05:30 +01:00
|
|
|
return `リアクションされました:\n${getUserName(notification.user)} <${getReactionEmoji(notification.reaction)}>「${getNoteSummary(notification.note, locales['ja-JP'])}」`;
|
2019-04-07 14:50:36 +02:00
|
|
|
case 'pollVote':
|
2020-12-28 15:05:30 +01:00
|
|
|
return `投票されました:\n${getUserName(notification.user)}「${getNoteSummary(notification.note, locales['ja-JP'])}」`;
|
2017-11-10 16:27:02 +01:00
|
|
|
default:
|
|
|
|
return `<不明な通知タイプ: ${notification.type}>`;
|
|
|
|
}
|
|
|
|
}
|