aboutsummaryrefslogtreecommitdiffstats
path: root/web/src/js/components/Modal/Modal.jsx
diff options
context:
space:
mode:
authorMatthew Shao <me@matshao.com>2017-06-28 18:48:31 +0800
committerMatthew Shao <me@matshao.com>2017-06-28 18:48:31 +0800
commitc0ad25715bc050dac0134ccd46f25884396d0f87 (patch)
treefd3bfba3aaf5eb57ddf39acee505acbfa4644660 /web/src/js/components/Modal/Modal.jsx
parent23a2409a87640c048cb8c9ed297b03c0f9425a37 (diff)
downloadmitmproxy-c0ad25715bc050dac0134ccd46f25884396d0f87.tar.gz
mitmproxy-c0ad25715bc050dac0134ccd46f25884396d0f87.tar.bz2
mitmproxy-c0ad25715bc050dac0134ccd46f25884396d0f87.zip
[web] Add Modal Component and OptionModal
Diffstat (limited to 'web/src/js/components/Modal/Modal.jsx')
-rw-r--r--web/src/js/components/Modal/Modal.jsx33
1 files changed, 33 insertions, 0 deletions
diff --git a/web/src/js/components/Modal/Modal.jsx b/web/src/js/components/Modal/Modal.jsx
new file mode 100644
index 00000000..3370ad36
--- /dev/null
+++ b/web/src/js/components/Modal/Modal.jsx
@@ -0,0 +1,33 @@
+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 {
+
+ constructor(props, context) {
+ super(props, context)
+ }
+
+ render() {
+ const { activeModal, hideModal } = this.props
+ const ActiveModal = _.find(ModalList, m => m.name === activeModal )
+ return(
+ activeModal ?
+ <div>
+ <div className="modal-backdrop fade in"></div>
+ <ActiveModal hideModal={ hideModal }/>
+ </div>
+ : <div/>
+ )
+ }
+}
+
+export default connect(
+ state => ({
+ activeModal: state.ui.modal.activeModal
+ }),
+ {
+ hideModal: modalAction.hideModal
+ }
+)(PureModal)