export const SLACK_APP_TYPE_APP_HOME: string = 'App Home';
export const SLACK_APP_TYPE_MESSAGES: string = 'Messages';
export const SLACK_APP_TYPE_MODAL: string = 'Modal';
export const SLACK: string = 'Slack';
export const WEB: string = 'web';
export const MS_TEAMS: string = 'msteams';
export const SLACK_INPUT_SECTION: string = 'input-section';
export const SLACK_RADIO_GROUP_SECTION: string = 'radio-group-section';
export const SLACK_CHECKBOX_GROUP_SECTION: string = 'checkbox-group-section';
export const SLACK_AVAILABLE_TYPE_TITLE: string = 'Slack surface';
export const DEFAULT_FORM_DATA: Object = {
  services: [
    {
      label: 'Slack',
      value: 'slack'
    },
    {
      label: 'Web',
      value: 'web'
    },
    {
      label: 'MS Teams',
      value: 'msteams'
    }
  ],
  channel: 'slack', // web have to be as default for development needs,
  slackType: 'Messages',
  value: {}
};
// FLOW of HTTP uploader (Antonyuk account)
export const FILES_UPLOADER_URL: string =
  'https://sdkapi-staging.onereach.ai/http/db017717-7e0c-4fbe-b466-d40175d3713f/uploader';

// Mapping for icons by file type
export const ICON_CONFIG_BY_FILE_TYPE: Object = {
  png: 'image',
  jpg: 'image',
  jpeg: 'image',
  gif: 'image',
  webp: 'image',
  doc: 'description',
  txt: 'description',
  pdf: 'picture_as_pdf',
  default: 'attach_file'
};

// Content
export const ALERT_SLACK_HINT_TITLE: string = 'Not enough elements?';
export const ALERT_WEB_HINT_TITLE: string = 'Want to switch back?';
export const ALERT_SLACK_ACTION_TITLE: string =
  'Click here to turn this into a Web form';
export const ALERT_WEB_ACTION_TITLE: string =
  'Click here to turn form back into a Slack form';
export const SHOW_HIDDEN_SECTIONS_TITLE: string = 'Show hidden sections';
export const PREVIEW_FOR_LABEL: string = 'Form preview for';

export const NO_BLOCKS_IN_PREVIEW: Object = Object.freeze({
  emoji: '🚀',
  description:
    '<h2>Select a section from the lefthand <br> column to start creating your content.</h2>'
});

const constants = {
  SLACK_APP_TYPE_APP_HOME,
  SLACK_APP_TYPE_MESSAGES,
  SLACK_APP_TYPE_MODAL,
  SLACK,
  WEB,
  MS_TEAMS,
  SLACK_INPUT_SECTION,
  SLACK_RADIO_GROUP_SECTION,
  SLACK_CHECKBOX_GROUP_SECTION,
  SLACK_AVAILABLE_TYPE_TITLE,
  DEFAULT_FORM_DATA,
  NO_BLOCKS_IN_PREVIEW,
  ALERT_SLACK_HINT_TITLE,
  ALERT_WEB_HINT_TITLE,
  ALERT_SLACK_ACTION_TITLE,
  ALERT_WEB_ACTION_TITLE
};

export default constants;
