diff options
author | Matthew Shao <me@matshao.com> | 2017-06-30 20:46:02 +0800 |
---|---|---|
committer | Matthew Shao <me@matshao.com> | 2017-06-30 20:46:02 +0800 |
commit | 7baf3069b169e8196e5d389e655a3a187b4329d9 (patch) | |
tree | 131b6b04894d05ed1b19a6cc45ea72ac728b41e9 /web | |
parent | 7a50301af322667faff8adc1d5990957df9dc4bb (diff) | |
download | mitmproxy-7baf3069b169e8196e5d389e655a3a187b4329d9.tar.gz mitmproxy-7baf3069b169e8196e5d389e655a3a187b4329d9.tar.bz2 mitmproxy-7baf3069b169e8196e5d389e655a3a187b4329d9.zip |
[web] Update the Structure of Modal component.
Diffstat (limited to 'web')
-rw-r--r-- | web/src/js/components/Modal/Modal.jsx | 15 | ||||
-rw-r--r-- | web/src/js/components/Modal/ModalLayout.jsx | 16 | ||||
-rw-r--r-- | web/src/js/components/Modal/ModalList.jsx | 12 | ||||
-rw-r--r-- | web/src/js/components/Modal/OptionModal.jsx | 33 |
4 files changed, 30 insertions, 46 deletions
diff --git a/web/src/js/components/Modal/Modal.jsx b/web/src/js/components/Modal/Modal.jsx index e39f5415..88e81156 100644 --- a/web/src/js/components/Modal/Modal.jsx +++ b/web/src/js/components/Modal/Modal.jsx @@ -1,6 +1,5 @@ import React, { Component } from 'react' import { connect } from 'react-redux' -import * as modalAction from '../../ducks/ui/modal' import ModalList from './ModalList' class PureModal extends Component { @@ -10,15 +9,10 @@ class PureModal extends Component { } render() { - const { activeModal, hideModal } = this.props + const { activeModal } = this.props const ActiveModal = ModalList.find(m => m.name === activeModal ) return( - activeModal ? - <div> - <div className="modal-backdrop fade in"></div> - <ActiveModal hideModal={ hideModal }/> - </div> - : <div/> + activeModal ? <ActiveModal/> : <div/> ) } } @@ -26,8 +20,5 @@ class PureModal extends Component { export default connect( state => ({ activeModal: state.ui.modal.activeModal - }), - { - hideModal: modalAction.hideModal - } + }) )(PureModal) diff --git a/web/src/js/components/Modal/ModalLayout.jsx b/web/src/js/components/Modal/ModalLayout.jsx new file mode 100644 index 00000000..cf357b2b --- /dev/null +++ b/web/src/js/components/Modal/ModalLayout.jsx @@ -0,0 +1,16 @@ +import React from 'react' + +export default function ModalLayout ({ children }) { + return ( + <div> + <div className="modal-backdrop fade in"></div> + <div className="modal modal-visible" id="optionsModal" tabIndex="-1" role="dialog" aria-labelledby="options"> + <div className="modal-dialog modal-lg" role="document"> + <div className="modal-content"> + {children} + </div> + </div> + </div> + </div> + ) +} diff --git a/web/src/js/components/Modal/ModalList.jsx b/web/src/js/components/Modal/ModalList.jsx index 8ba46b00..1175d5ea 100644 --- a/web/src/js/components/Modal/ModalList.jsx +++ b/web/src/js/components/Modal/ModalList.jsx @@ -1,3 +1,13 @@ -import OptionModal from './OptionModal' +import React from 'react' +import ModalLayout from './ModalLayout' +import OptionContent from './OptionModal' + +function OptionModal() { + return ( + <ModalLayout> + <OptionContent/> + </ModalLayout> + ) +} export default [ OptionModal ] diff --git a/web/src/js/components/Modal/OptionModal.jsx b/web/src/js/components/Modal/OptionModal.jsx deleted file mode 100644 index d9e8b829..00000000 --- a/web/src/js/components/Modal/OptionModal.jsx +++ /dev/null @@ -1,33 +0,0 @@ -import React from 'react' -import PropTypes from 'prop-types' - -OptionModal.prototype = { - hideModal: PropTypes.function, -} - -export default function OptionModal( { hideModal }) { - const title = 'Options' - return ( - <div className="modal modal-visible" id="optionsModal" tabIndex="-1" role="dialog" aria-labelledby="options"> - <div className="modal-dialog modal-lg" role="document"> - <div className="modal-content"> - <div className="modal-header"> - <button type="button" className="close" data-dismiss="modal" onClick={() => { hideModal() }}> - <i className="fa fa-fw fa-times"></i> - </button> - <div className="modal-title"> - <h4>{ title }</h4> - </div> - </div> - - <div className="modal-body"> - </div> - - <div className="modal-footer"> - <button type="button" className="btn btn-primary">Save Changes</button> - </div> - </div> - </div> - </div> - ) -} |