Vulcan/packages/nova-base-components/lib/comments/CommentsEditForm.jsx

38 lines
1.1 KiB
React
Raw Normal View History

2016-03-17 17:48:25 +09:00
import React, { PropTypes, Component } from 'react';
import NovaForm from "meteor/nova:forms";
2016-06-23 12:17:39 +09:00
import Comments from "meteor/nova:comments";
2016-11-07 23:46:12 +09:00
import { bindActionCreators } from 'redux';
import { connect } from 'react-redux';
2016-02-18 21:39:33 +09:00
2016-11-07 15:03:45 +09:00
const CommentsEditForm = (props, context) => {
return (
<div className="comments-edit-form">
<NovaForm
layout="elementOnly"
collection={Comments}
document={props.comment}
2016-11-07 23:46:12 +09:00
mutationName="commentsEdit"
fragment={Comments.fragments.full}
2016-11-07 15:03:45 +09:00
successCallback={props.successCallback}
cancelCallback={props.cancelCallback}
removeSuccessCallback={props.removeSuccessCallback}
2016-11-07 15:03:45 +09:00
/>
</div>
)
2016-03-17 17:48:25 +09:00
}
2016-11-07 15:03:45 +09:00
CommentsEditForm.propTypes = {
2016-03-17 17:48:25 +09:00
comment: React.PropTypes.object.isRequired,
successCallback: React.PropTypes.func,
2016-03-17 17:48:25 +09:00
cancelCallback: React.PropTypes.func
}
2016-02-18 21:39:33 +09:00
2016-11-07 15:03:45 +09:00
CommentsEditForm.contextTypes = {
currentUser: React.PropTypes.object
}
2016-11-07 23:46:12 +09:00
const mapStateToProps = state => ({ messages: state.messages });
const mapDispatchToProps = dispatch => bindActionCreators(Telescope.actions.messages, dispatch);
module.exports = connect(mapStateToProps, mapDispatchToProps)(CommentsEditForm);