import { IZendeskContent } from "../types";
import { getMethods } from "./methods";
import { IGenericWrapper } from "../../generic/types";

export const transformGenericToZendesk = ({ children }: IGenericWrapper): Record<string, Array<IZendeskContent>> => {
    const result = children.reduce((acc, child) => {
        acc.push(getMethods(child.type)(child));

        return acc.flat();
    }, []);

    return {
        messages: result
    };
};