UNPKG

@onereach/channel-transformer

Version:

Convert data model between different channels (Slack, Microsoft Teams, Generic...)

33 lines (29 loc) 901 B
import { IGenericFields } from '../../../../generic/types'; import { IRWCMessage } from '../../../types'; import { getMethods } from '../methods'; export const transformFields = ({ props, children }: IGenericFields): IRWCMessage => { const colNum = props.column || 2; let message = '<table><tbody>'; for (let i = 0; i < children.length; i = i + colNum) { let row = `<tr>`; for (let j = 0; j < colNum; j++) { const item = children[i+j]; if (item) { const field = getMethods(item.type)(item); const text = typeof field === 'string' ? field : typeof field?.message === 'string' ? field.message : ''; row += `<td>${text}</td>`; } else { row += `<td></td>`; } } row += `</tr>`; message += row; } message += '</tbody></table>'; const result: IRWCMessage = { message }; return result; };