1
0
silverbullet/plugs/emoji/emoji.ts
Zef Hemel 561aa6891f
Migrate to Deno (#86)
Big bang migration to Deno 🤯
2022-10-10 14:50:21 +02:00

24 lines
616 B
TypeScript

import emojis from "./emoji.json" assert { type: "json" };
import { matchBefore } from "$sb/silverbullet-syscall/editor.ts";
export async function emojiCompleter() {
const prefix = await matchBefore(":[\\w]+");
if (!prefix) {
return null;
}
const textPrefix = prefix.text.substring(1); // Cut off the initial :
const filteredEmoji = emojis.filter(([_, shortcode]) =>
shortcode.includes(textPrefix)
);
return {
from: prefix.from,
filter: false,
options: filteredEmoji.map(([emoji, shortcode]) => ({
detail: shortcode,
label: emoji,
type: "emoji",
})),
};
}