21 lines
656 B
JavaScript
21 lines
656 B
JavaScript
import config from "../../../../config/index.js";
|
|
export class MentionConverter {
|
|
static encode(u, m) {
|
|
let acct = u.username;
|
|
let acctUrl = `https://${u.host || config.host}/@${u.username}`;
|
|
let url = null;
|
|
if (u.host) {
|
|
const info = m.find((r)=>r.username === u.username && r.host === u.host);
|
|
acct = `${u.username}@${u.host}`;
|
|
acctUrl = `https://${u.host}/@${u.username}`;
|
|
if (info) url = info.url ?? info.uri;
|
|
}
|
|
return {
|
|
id: u.id,
|
|
username: u.username,
|
|
acct: acct,
|
|
url: url ?? acctUrl
|
|
};
|
|
}
|
|
}
|