๐Ÿก index : quine-global/hyper.git

import Terms from '../components/terms';
import { values } from '../utils/object';
import { connect } from '../utils/plugins';
import {
  resizeSession,
  sendSessionData,
  exitSessionBrowser,
  setSessionXtermTitle,
  setActiveSession
} from '../actions/sessions';

const TermsContainer = connect(
  (state) => {
    const sessions = state.sessions.sessions;
    return {
      cols: state.ui.cols,
      rows: state.ui.rows,
      sessions: values(sessions),
      activeSession: state.sessions.activeUid,
      customCSS: state.ui.termCSS,
      write: state.sessions.write,
      fontSize: state.ui.fontSizeOverride
        ? state.ui.fontSizeOverride
        : state.ui.fontSize,
      fontFamily: state.ui.fontFamily,
      padding: state.ui.padding,
      cursorColor: state.ui.cursorColor,
      borderColor: state.ui.borderColor,
      colors: state.ui.colors,
      foregroundColor: state.ui.foregroundColor,
      backgroundColor: state.ui.backgroundColor
    };
  },
  (dispatch) => {
    return {
      onData (uid, data) {
        dispatch(sendSessionData(uid, data));
      },

      onTitle (uid, title) {
        dispatch(setSessionXtermTitle(uid, title));
      },

      onResize (uid, cols, rows) {
        dispatch(resizeSession(uid, cols, rows));
      },

      onURLAbort (uid) {
        dispatch(exitSessionBrowser(uid));
      },

      onActive (uid) {
        dispatch(setActiveSession(uid));
      }
    };
  },
  null,
  { withRef: true }
)(Terms, 'Terms');

export default TermsContainer;