Implement remote account resolution

This commit is contained in:
Akihiko Odaki 2018-03-27 16:51:12 +09:00
parent bee892d446
commit 68ce6d5748
73 changed files with 735 additions and 334 deletions

View file

@ -1,12 +0,0 @@
import { IUser } from '../api/models/user';
/**
*
* @param user
*/
export default function(user: IUser): string {
return `${user.name} (@${user.username})\n` +
`${user.posts_count}投稿、${user.following_count}フォロー、${user.followers_count}フォロワー\n` +
`場所: ${user.account.profile.location}、誕生日: ${user.account.profile.birthday}\n` +
`${user.description}`;
}

View file

@ -0,0 +1,3 @@
export default user => {
return user.host === null ? user.username : `${user.username}@${user.host}`;
};

View file

@ -0,0 +1,18 @@
import { ILocalAccount, IUser } from '../../api/models/user';
import getAcct from './get-acct';
/**
*
* @param user
*/
export default function(user: IUser): string {
let string = `${user.name} (@${getAcct(user)})\n` +
`${user.posts_count}投稿、${user.following_count}フォロー、${user.followers_count}フォロワー\n`;
if (user.host === null) {
const account = user.account as ILocalAccount;
string += `場所: ${account.profile.location}、誕生日: ${account.profile.birthday}\n`;
}
return string + `${user.description}`;
}

View file

@ -0,0 +1,4 @@
export default acct => {
const splitted = acct.split('@', 2);
return { username: splitted[0], host: splitted[1] || null };
};