feat: motd hook

This commit is contained in:
dvelo 2025-02-19 16:40:53 -06:00
parent a9d5ddf43d
commit 75fa71cdf1

@ -0,0 +1,28 @@
import { useEffect, useState } from "react";
import type { OnlineServer } from "../types/mh-server";
import MiniMessage from "minimessage-js";
export function useMOTD(servers: OnlineServer[]) {
const [motdList, setMotdList] = useState<{ name: string; motd: string }[]>(
[]
);
useEffect(() => {
setMotdList(
servers.map((server) => {
return {
name: server.name,
motd: MiniMessage.miniMessage().toHTML(
MiniMessage.miniMessage().deserialize(server.motd)
),
};
})
);
}, [servers]);
return {
motdList,
getMotdForServer: (server: OnlineServer) =>
motdList.find((c) => c.name === server.name)?.motd,
};
}