@onereach/channel-transformer
Version:
Convert data model between different channels (Slack, Microsoft Teams, Generic...)
61 lines (58 loc) • 1.83 kB
text/typescript
import { getKeyValue } from '../../../../helpers/get-key-value';
import { getErrorObject } from '../../../../helpers/get-error-object';
import {
transformRWCText,
transformDatepicker,
transformTimepicker,
transformInput,
transformSlider,
transformGeoLocation,
transformFileUpload,
transformDropdown,
transformMenu,
transformButtonList,
transformCard,
transformCarousel,
transformCheckboxGroup,
transformRadioGroup,
transformMedias,
transformMessage,
transformRWCMedias,
transformRating,
transformMultimedia,
transformAudioPlayback,
transformVideoPlayback,
transformSignature,
transformCreditCard,
transformReorderableList,
transformScheduler
} from '.';
const methods: { [key: string]: Function } = {
'rwc-text': transformRWCText,
'rwc-text-input': transformInput,
'rwc-datepicker': transformDatepicker,
'rwc-timepicker': transformTimepicker,
'rwc-slider': transformSlider,
'rwc-location': transformGeoLocation,
'rwc-attachment': transformFileUpload,
'rwc-menu': transformMenu,
'rwc-dropdown': transformDropdown,
'rwc-buttons-list': transformButtonList,
'rwc-card': transformCard,
'rwc-carousel': transformCarousel,
'rwc-checkbox-group': transformCheckboxGroup,
'rwc-radio-group': transformRadioGroup,
'rwc-medias': transformRWCMedias,
'rwc-rate': transformRating,
'rwc-record': transformMultimedia,
'rwc-audio': transformAudioPlayback,
'rwc-video': transformVideoPlayback,
'rwc-signature': transformSignature,
'rwc-credit': transformCreditCard,
'rwc-reorderable-list': transformReorderableList,
'rwc-scheduler': transformScheduler,
'messages@message': transformMessage
};
export const getMethods = (type: string): Function => {
return getKeyValue(methods)(type) || getErrorObject({ type, message: 'RWCv5 to Generic' });
};