123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869 |
- import { connect } from 'react-redux';
- import {
- changeCompose,
- submitCompose,
- clearComposeSuggestions,
- fetchComposeSuggestions,
- selectComposeSuggestion,
- changeComposeSpoilerText,
- insertEmojiCompose,
- uploadCompose,
- } from '../../../actions/compose';
- import ComposeForm from '../components/compose_form';
- const mapStateToProps = state => ({
- text: state.getIn(['compose', 'text']),
- suggestions: state.getIn(['compose', 'suggestions']),
- spoiler: state.getIn(['compose', 'spoiler']),
- spoilerText: state.getIn(['compose', 'spoiler_text']),
- privacy: state.getIn(['compose', 'privacy']),
- focusDate: state.getIn(['compose', 'focusDate']),
- caretPosition: state.getIn(['compose', 'caretPosition']),
- preselectDate: state.getIn(['compose', 'preselectDate']),
- isSubmitting: state.getIn(['compose', 'is_submitting']),
- isEditing: state.getIn(['compose', 'id']) !== null,
- isChangingUpload: state.getIn(['compose', 'is_changing_upload']),
- isUploading: state.getIn(['compose', 'is_uploading']),
- anyMedia: state.getIn(['compose', 'media_attachments']).size > 0,
- isInReply: state.getIn(['compose', 'in_reply_to']) !== null,
- lang: state.getIn(['compose', 'language']),
- });
- const mapDispatchToProps = (dispatch) => ({
- onChange (text) {
- dispatch(changeCompose(text));
- },
- onSubmit (router) {
- dispatch(submitCompose(router));
- },
- onClearSuggestions () {
- dispatch(clearComposeSuggestions());
- },
- onFetchSuggestions (token) {
- dispatch(fetchComposeSuggestions(token));
- },
- onSuggestionSelected (position, token, suggestion, path) {
- dispatch(selectComposeSuggestion(position, token, suggestion, path));
- },
- onChangeSpoilerText (checked) {
- dispatch(changeComposeSpoilerText(checked));
- },
- onPaste (files) {
- dispatch(uploadCompose(files));
- },
- onPickEmoji (position, data, needsSpace) {
- dispatch(insertEmojiCompose(position, data, needsSpace));
- },
- });
- export default connect(mapStateToProps, mapDispatchToProps)(ComposeForm);
|