Source: chat_input_actions.js

'use strict';

Object.defineProperty(exports, '__esModule', {
  value: true
});

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { 'default': obj }; }

var _dispatchersApp_dispatcher = require('dispatchers/app_dispatcher');

var _dispatchersApp_dispatcher2 = _interopRequireDefault(_dispatchersApp_dispatcher);

var _dispatchersAnalytics_dispatcher = require('dispatchers/analytics_dispatcher');

var _dispatchersAnalytics_dispatcher2 = _interopRequireDefault(_dispatchersAnalytics_dispatcher);

var _stringsForms_strings = require('strings/forms_strings');

var _stringsForms_strings2 = _interopRequireDefault(_stringsForms_strings);

/**
 * Used to trigger actions on the chat message input
 * @module actions/ChatInputActions
 */
exports['default'] = {

  /**
   * Sends a message to the currently active chat
   * @param {object} data
   * @param {string} data.id Message ID
   * @param {string} data.jid JID of the currently active chat
   * @param {string} data.text Text of the message
   */
  sendMessage: function sendMessage(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('send-message', data);
    _dispatchersAnalytics_dispatcher2['default'].dispatch('analytics-send-message', data);
  },

  clearChat: function clearChat(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('clear-messages', data);
  },

  closeChat: function closeChat(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('close-room', data);
  },

  /**
   * Join room
   * @param {object} data
   * @param {string} data.room Name of room or user mention
   */
  joinChat: function joinChat(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('join-room', data);
  },

  clearChatInput: function clearChatInput() {
    _dispatchersApp_dispatcher2['default'].dispatch('clear-chat-input');
  },

  /**
   * Sets the chat input field's text value
   * @param {object} data
   * @param {string} data.text Text value of the message
   */
  setMsgValue: function setMsgValue(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('set-message-value', data.text);
  },

  appendMessage: function appendMessage(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('append-message-value', data.text);
  },

  setCaretPosition: function setCaretPosition(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('set-chat-caret-position', data);
  },

  resetNewForcedCaretPosition: function resetNewForcedCaretPosition() {
    _dispatchersApp_dispatcher2['default'].dispatch('reset-new-forced-caret-position');
  },

  expandAttachment: function expandAttachment(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('expand-attachment', data);
  },

  closeAttachment: function closeAttachment(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('close-attachment', data);
  },

  toggleTooltip: function toggleTooltip(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('toggle-tooltip', data);
  },

  openTooltip: function openTooltip(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('open-tooltip', data);
  },

  closeTooltip: function closeTooltip(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('close-tooltip', data);
  },

  showMessageLengthError: function showMessageLengthError() {
    _dispatchersApp_dispatcher2['default'].dispatch('show-flag', {
      type: "error",
      body: _stringsForms_strings2['default'].fail.message_too_long,
      close: "auto"
    });
  },

  setUserState: function setUserState(data) {
    _dispatchersApp_dispatcher2['default'].dispatch('set-user-state', {
      jid: data.jid,
      type: data.type,
      state: data.state
    });
  },

  dismissActionsDropDown: function dismissActionsDropDown() {
    _dispatchersApp_dispatcher2['default'].dispatch('dismiss-active-actions-dropdown');
  }

};
module.exports = exports['default'];