UNPKG

@onereach/channel-transformer

Version:

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

59 lines (54 loc) 2.2 kB
import { getKeyValue } from '../../../../helpers/get-key-value'; import { getErrorObject } from '../../../../helpers/get-error-object'; import { transformSection } from './items/section'; import { transformText } from './items/text'; import { transformButton } from './items/button'; import { transformSelect } from './items/select'; import { transformImage } from './items/image'; import { transformHeader } from './items/header'; import { transformCard } from './items/card'; import { transformRadio } from './items/radio'; import { transformCheckbox } from './items/checkbox'; import { transformInput } from './items/input'; import { transformRange } from './items/range'; import { transformLocation } from './items/location'; import { transformDivider } from './items/divider'; import { transformDatepicker } from './items/date-picker'; import { transformTimepicker } from './items/time-picker'; import { transformFileUpload } from './items/file'; import { transformLink } from './items/link'; import { transformSwitch } from './items/switch'; import { transformCarousel } from './items/carousel'; import { transformButtonList } from './items/button-list'; import { transformAttachments } from './items/attachments'; import { transformFields } from './items/fields'; import { transformContext } from './items/context'; const methods: { [key: string]: Function } = { section: transformSection, text: transformText, header: transformHeader, image: transformImage, card: transformCard, button: transformButton, select: transformSelect, radio: transformRadio, checkbox: transformCheckbox, input: transformInput, range: transformRange, location: transformLocation, divider: transformDivider, datePicker: transformDatepicker, timePicker: transformTimepicker, file: transformFileUpload, link: transformLink, switch: transformSwitch, carousel: transformCarousel, buttonList: transformButtonList, attachments: transformAttachments, fields: transformFields, context: transformContext }; export const getMethods = (type: string): Function => { return getKeyValue(methods)(type) || getErrorObject({ type, message: 'Generic to RWC' }); }; export { methods };