generate cms component