summaryrefslogtreecommitdiff
path: root/src/server/api/mastodon/emoji.ts
blob: df19c6e758bffdab41513bc9b13549620e80d00c (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
export type IMastodonEmoji = {
	shortcode: string,
	url: string,
	static_url: string,
	visible_in_picker: boolean
};

export async function toMastodonEmojis(emoji: any): Promise<IMastodonEmoji[]> {
	return [{
		shortcode: emoji.name,
		url: emoji.url,
		static_url: emoji.url, // TODO: Implement ensuring static emoji
		visible_in_picker: true
	}, ...(emoji.aliases as string[] || []).map(x => ({
		shortcode: x,
		url: emoji.url,
		static_url: emoji.url,
		visible_in_picker: true
	}))];
}

export function toMisskeyEmojiSync(emoji: IMastodonEmoji) {
	return {
		name: emoji.shortcode,
		url: emoji.url
	};
}

export function toMisskeyEmojiWithAliasesSync(emoji: IMastodonEmoji, ...aliases: string[]) {
	return {
		name: emoji.shortcode,
		aliases,
		url: emoji.url
	};
}