github.com/muhammedhassanm/blockchain@v0.0.0-20200120143007-697261defd4d/blockapps-ba-master/ui/src/scenes/Projects/components/BidModal/index.js (about) 1 import React, { Component } from 'react'; 2 import { connect } from 'react-redux'; 3 import Dialog from 'react-md/lib/Dialogs'; 4 import ReduxedTextField from '../../../../components/ReduxedTextField/'; 5 import { reduxForm, Field } from 'redux-form'; 6 //import FileInput from 'react-md/lib/FileInputs'; 7 import Button from 'react-md/lib/Buttons'; 8 import { bidSubmit, closeBidModal } from './bidModal.actions'; 9 import mixpanel from 'mixpanel-browser'; 10 import './BidModal.css'; 11 12 class BidModal extends Component { 13 14 closeDialog = () => { 15 this.props.closeBidModal(); 16 } 17 18 submit = (values) => { 19 mixpanel.track('create_bid_click'); 20 this.props.bidSubmit({ 21 name: this.props.name, 22 supplier: this.props.supplier, 23 amount: values.amount 24 }); 25 this.props.closeBidModal(); 26 } 27 28 render() { 29 const { 30 handleSubmit 31 } = this.props; 32 33 return( 34 <Dialog 35 id="simpleDialogExample" 36 visible={this.props.isOpen} 37 title={ "Bid for " + this.props.name } 38 onHide={this.closeDialog}> 39 <form onSubmit={handleSubmit(this.submit)}> 40 <div className="md-grid"> 41 <Field 42 id="amount" 43 name="amount" 44 type="number" 45 label="Enter Bid Amount" 46 className="md-cell--12 md-cell--top" 47 component={ReduxedTextField} 48 /> 49 {/*<div className="md-cell--12 center"> 50 <br /> 51 <h4> Upload project plan </h4> 52 </div> 53 <FileInput 54 id="proposal" 55 accept="*" 56 flat 57 iconBefore 58 className="md-cell--12 md-cell--right" 59 />*/} 60 <div className="md-cell--12"> 61 <Button raised primary label="Bid" type="submit" className="bid-button"/> 62 </div> 63 64 </div> 65 </form> 66 </Dialog> 67 ); 68 } 69 70 } 71 72 function mapStateToProps(state) { 73 return { 74 supplier: state.login.username, 75 isOpen: state.bidModal.isOpen 76 }; 77 } 78 79 const connected = connect(mapStateToProps, { bidSubmit, closeBidModal })(BidModal); 80 81 const formedComponent = reduxForm({ form: 'bid'})(connected); 82 83 export default formedComponent;