UNPKG

@onereach/channel-transformer

Version:

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

51 lines (44 loc) 1.32 kB
import { IGenericSelect } from '../../../../generic/types/select'; import { ISlackSelectConversations } from '../../../types'; import { transformConfirm } from '../confirm'; import { transformTextObject } from '../helpers/transform-text-object'; export const transformConversationsSelect = ({ type, placeholder, action_id, initial_conversation, default_to_current_conversation, confirm, response_url_enabled, filter }: ISlackSelectConversations): IGenericSelect => { const res: IGenericSelect = { type: 'select', props: { value: initial_conversation, placeholder: transformTextObject(placeholder).value, variableName: action_id, slack: { type } } }; if (placeholder) { res.props.slack.placeholder_type = placeholder.type; res.props.slack.placeholder_emoji = placeholder.emoji; res.props.slack.placeholder_verbatim = placeholder.verbatim; } if (default_to_current_conversation) { res.props.slack.default_to_current_conversation = default_to_current_conversation; } if (confirm) { res.props.slack.confirm = transformConfirm(confirm); } if (response_url_enabled) { res.props.slack.response_url_enabled = response_url_enabled; } if (filter) { res.props.slack.filter = filter; } return res; };