import type { ExtensionDefinition } from "../types";

export const mergedChatExtension: ExtensionDefinition = {
    id: "merged-chat",
    init(api) {
        api.on("chat_message", async (event) => {
            await api.db.createChatMessage({
                streamId: event.payload.streamId,
                platform: event.payload.platform,
                author: event.payload.author,
                message: event.payload.message
            });

            await api.emit("ws_out", {
                streamId: event.payload.streamId,
                target: "all",
                event: "merged_chat_message",
                data: {
                    platform: event.payload.platform,
                    author: event.payload.author,
                    message: event.payload.message
                }
            });
        });
    }
};
