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

34 lines
1.1 KiB
React
Raw Normal View History

import Telescope from 'meteor/nova:lib';
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}
2016-12-02 13:43:26 +01:00
documentId={props.comment._id}
2016-11-07 15:03:45 +09:00
successCallback={props.successCallback}
cancelCallback={props.cancelCallback}
removeSuccessCallback={props.removeSuccessCallback}
2016-11-23 11:07:48 +09:00
showRemove={true}
2016-12-04 19:00:01 +09:00
extraFields={['htmlBody']}
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-11-15 18:33:16 +01:00
};
2016-11-07 23:46:12 +09:00
const mapStateToProps = state => ({ messages: state.messages });
const mapDispatchToProps = dispatch => bindActionCreators(Telescope.actions.messages, dispatch);
Telescope.registerComponent('CommentsEditForm', CommentsEditForm, connect(mapStateToProps, mapDispatchToProps));