frontend/app/composables/ResolveMentions.ts
Jesse Wierzbinski 7f7cf20311
Some checks failed
CodeQL / Analyze (javascript) (push) Failing after 1s
Deploy to GitHub Pages / build (push) Failing after 1s
Deploy to GitHub Pages / deploy (push) Has been skipped
Docker / build (push) Failing after 1s
Mirror to Codeberg / Mirror (push) Failing after 1s
chore: ⬆️ Upgrade to Nuxt 4
2025-07-16 07:48:39 +02:00

30 lines
772 B
TypeScript

import type { Client } from "@versia/client";
import type { Account, Mention } from "@versia/client/schemas";
import type { z } from "zod";
export const useResolveMentions = (
mentions: Ref<z.infer<typeof Mention>[]>,
client: Client | null,
): Ref<z.infer<typeof Account>[]> => {
if (!client) {
return ref([]);
}
const output = ref<z.infer<typeof Account>[]>([]);
watch(
mentions,
async () => {
output.value = await Promise.all(
toValue(mentions).map(async (mention) => {
const response = await client.getAccount(mention.id);
return response.data;
}),
);
},
{ immediate: true },
);
return output;
};