aboutsummaryrefslogtreecommitdiffstats
path: root/web/src/js/components/Header/OptionMenu.jsx
diff options
context:
space:
mode:
authorAldo Cortesi <aldo@corte.si>2016-06-11 16:08:14 +1200
committerGitHub <noreply@github.com>2016-06-11 16:08:14 +1200
commit227d762cace09bc315e57644da2135480bf32cb9 (patch)
treedd1b458e77d79a8f7867e31f7a352c19e586e129 /web/src/js/components/Header/OptionMenu.jsx
parent250b47487aa071e61f0bd2960992e80222103a3a (diff)
parent0b241a1da71ef9eb7632fc0e32abcf061dcbd217 (diff)
downloadmitmproxy-227d762cace09bc315e57644da2135480bf32cb9.tar.gz
mitmproxy-227d762cace09bc315e57644da2135480bf32cb9.tar.bz2
mitmproxy-227d762cace09bc315e57644da2135480bf32cb9.zip
Merge branch 'master' into toxfiddle
Diffstat (limited to 'web/src/js/components/Header/OptionMenu.jsx')
-rw-r--r--web/src/js/components/Header/OptionMenu.jsx60
1 files changed, 60 insertions, 0 deletions
diff --git a/web/src/js/components/Header/OptionMenu.jsx b/web/src/js/components/Header/OptionMenu.jsx
new file mode 100644
index 00000000..6bbf15d5
--- /dev/null
+++ b/web/src/js/components/Header/OptionMenu.jsx
@@ -0,0 +1,60 @@
+import React, { PropTypes } from 'react'
+import { ToggleInputButton, ToggleButton } from '../common.js'
+import { SettingsActions } from '../../actions.js'
+
+OptionMenu.title = "Options"
+
+OptionMenu.propTypes = {
+ settings: PropTypes.object.isRequired,
+}
+
+export default function OptionMenu({ settings }) {
+ // @todo use settings.map
+ return (
+ <div>
+ <div className="menu-row">
+ <ToggleButton text="showhost"
+ checked={settings.showhost}
+ onToggle={() => SettingsActions.update({ showhost: !settings.showhost })}
+ />
+ <ToggleButton text="no_upstream_cert"
+ checked={settings.no_upstream_cert}
+ onToggle={() => SettingsActions.update({ no_upstream_cert: !settings.no_upstream_cert })}
+ />
+ <ToggleButton text="rawtcp"
+ checked={settings.rawtcp}
+ onToggle={() => SettingsActions.update({ rawtcp: !settings.rawtcp })}
+ />
+ <ToggleButton text="http2"
+ checked={settings.http2}
+ onToggle={() => SettingsActions.update({ http2: !settings.http2 })}
+ />
+ <ToggleButton text="anticache"
+ checked={settings.anticache}
+ onToggle={() => SettingsActions.update({ anticache: !settings.anticache })}
+ />
+ <ToggleButton text="anticomp"
+ checked={settings.anticomp}
+ onToggle={() => SettingsActions.update({ anticomp: !settings.anticomp })}
+ />
+ <ToggleInputButton name="stickyauth" placeholder="Sticky auth filter"
+ checked={!!settings.stickyauth}
+ txt={settings.stickyauth || ''}
+ onToggleChanged={txt => SettingsActions.update({ stickyauth: !settings.stickyauth ? txt : null })}
+ />
+ <ToggleInputButton name="stickycookie" placeholder="Sticky cookie filter"
+ checked={!!settings.stickycookie}
+ txt={settings.stickycookie || ''}
+ onToggleChanged={txt => SettingsActions.update({ stickycookie: !settings.stickycookie ? txt : null })}
+ />
+ <ToggleInputButton name="stream" placeholder="stream..."
+ checked={!!settings.stream}
+ txt={settings.stream || ''}
+ inputType="number"
+ onToggleChanged={txt => SettingsActions.update({ stream: !settings.stream ? txt : null })}
+ />
+ </div>
+ <div className="clearfix"/>
+ </div>
+ )
+}