'use strict';

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

var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();

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

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }

var _coreAlt = require('../core/alt');

var _coreAlt2 = _interopRequireDefault(_coreAlt);

var EditorActions = (function () {
  function EditorActions() {
    _classCallCheck(this, EditorActions);
  }

  _createClass(EditorActions, [{
    key: 'initialize',
    value: function initialize(config, replica) {
      this.dispatch({ config: config, replica: replica });
    }
  }, {
    key: 'initializeCursorModel',
    value: function initializeCursorModel(cursorSet, cursorModel) {
      this.dispatch({ cursorSet: cursorSet, cursorModel: cursorModel });
    }
  }, {
    key: 'replicaInitialized',
    value: function replicaInitialized() {
      this.dispatch();
    }
  }, {
    key: 'replicaUpdated',
    value: function replicaUpdated() {
      this.dispatch();
    }
  }, {
    key: 'focusInput',
    value: function focusInput() {
      this.dispatch();
    }
  }, {
    key: 'inputFocusLost',
    value: function inputFocusLost() {
      this.dispatch();
    }
  }, {
    key: 'setRemoteCursorPosition',
    value: function setRemoteCursorPosition(remoteCursor) {
      this.dispatch(remoteCursor);
    }
  }, {
    key: 'unsetRemoteCursorPosition',
    value: function unsetRemoteCursorPosition(remoteCursor) {
      this.dispatch(remoteCursor);
    }
  }, {
    key: 'revealRemoteCursorName',
    value: function revealRemoteCursorName(remoteCursor) {
      this.dispatch(remoteCursor);
    }

    // navigation actions
  }, {
    key: 'navigateLeft',
    value: function navigateLeft() {
      this.dispatch();
    }
  }, {
    key: 'navigateRight',
    value: function navigateRight() {
      this.dispatch();
    }
  }, {
    key: 'navigateUp',
    value: function navigateUp() {
      this.dispatch();
    }
  }, {
    key: 'navigateDown',
    value: function navigateDown() {
      this.dispatch();
    }
  }, {
    key: 'navigatePageUp',
    value: function navigatePageUp() {
      this.dispatch();
    }
  }, {
    key: 'navigatePageDown',
    value: function navigatePageDown() {
      this.dispatch();
    }
  }, {
    key: 'navigateStart',
    value: function navigateStart() {
      this.dispatch();
    }
  }, {
    key: 'navigateStartLine',
    value: function navigateStartLine() {
      this.dispatch();
    }
  }, {
    key: 'navigateEnd',
    value: function navigateEnd() {
      this.dispatch();
    }
  }, {
    key: 'navigateEndLine',
    value: function navigateEndLine() {
      this.dispatch();
    }
  }, {
    key: 'navigateWordLeft',
    value: function navigateWordLeft() {
      this.dispatch();
    }
  }, {
    key: 'navigateWordRight',
    value: function navigateWordRight() {
      this.dispatch();
    }
  }, {
    key: 'navigateToCoordinates',
    value: function navigateToCoordinates(coordinates) {
      this.dispatch(coordinates);
    }

    // selection actions
  }, {
    key: 'selectionLeft',
    value: function selectionLeft() {
      this.dispatch();
    }
  }, {
    key: 'selectionRight',
    value: function selectionRight() {
      this.dispatch();
    }
  }, {
    key: 'selectionUp',
    value: function selectionUp() {
      this.dispatch();
    }
  }, {
    key: 'selectionDown',
    value: function selectionDown() {
      this.dispatch();
    }
  }, {
    key: 'selectionPageUp',
    value: function selectionPageUp() {
      this.dispatch();
    }
  }, {
    key: 'selectionPageDown',
    value: function selectionPageDown() {
      this.dispatch();
    }
  }, {
    key: 'selectionStart',
    value: function selectionStart() {
      this.dispatch();
    }
  }, {
    key: 'selectionStartLine',
    value: function selectionStartLine() {
      this.dispatch();
    }
  }, {
    key: 'selectionEnd',
    value: function selectionEnd() {
      this.dispatch();
    }
  }, {
    key: 'selectionEndLine',
    value: function selectionEndLine() {
      this.dispatch();
    }
  }, {
    key: 'selectionWordLeft',
    value: function selectionWordLeft() {
      this.dispatch();
    }
  }, {
    key: 'selectionWordRight',
    value: function selectionWordRight() {
      this.dispatch();
    }
  }, {
    key: 'selectionAll',
    value: function selectionAll() {
      this.dispatch();
    }
  }, {
    key: 'selectToCoordinates',
    value: function selectToCoordinates(coordinates) {
      this.dispatch(coordinates);
    }
  }, {
    key: 'selectWordAtCurrentPosition',
    value: function selectWordAtCurrentPosition() {
      this.dispatch();
    }
  }, {
    key: 'copySelection',
    value: function copySelection(copyHandler) {
      this.dispatch(copyHandler);
    }
  }, {
    key: 'insertChars',
    value: function insertChars(value, attributes, atPosition) {
      this.dispatch({ value: value, attributes: attributes, atPosition: atPosition });
    }
  }, {
    key: 'insertCharsBatch',
    value: function insertCharsBatch(chunks) {
      this.dispatch(chunks);
    }
  }, {
    key: 'eraseCharBack',
    value: function eraseCharBack() {
      this.dispatch();
    }
  }, {
    key: 'eraseCharForward',
    value: function eraseCharForward() {
      this.dispatch();
    }
  }, {
    key: 'eraseWordBack',
    value: function eraseWordBack() {
      this.dispatch();
    }
  }, {
    key: 'eraseWordForward',
    value: function eraseWordForward() {
      this.dispatch();
    }
  }, {
    key: 'eraseSelection',
    value: function eraseSelection() {
      this.dispatch();
    }

    // toggle attribute actions
  }, {
    key: 'toggleBold',
    value: function toggleBold() {
      this.dispatch();
    }
  }, {
    key: 'toggleItalics',
    value: function toggleItalics() {
      this.dispatch();
    }
  }, {
    key: 'toggleUnderline',
    value: function toggleUnderline() {
      this.dispatch();
    }
  }, {
    key: 'toggleStrikethrough',
    value: function toggleStrikethrough() {
      this.dispatch();
    }
  }, {
    key: 'toggleSuperscript',
    value: function toggleSuperscript() {
      this.dispatch();
    }
  }, {
    key: 'toggleSubscript',
    value: function toggleSubscript() {
      this.dispatch();
    }
  }]);

  return EditorActions;
})();

exports['default'] = _coreAlt2['default'].createActions(EditorActions);
module.exports = exports['default'];