diff options
author | Aldo Cortesi <aldo@nullcube.com> | 2015-01-01 15:37:42 +1300 |
---|---|---|
committer | Aldo Cortesi <aldo@nullcube.com> | 2015-01-01 15:37:42 +1300 |
commit | c9ce5094c810b551de3cddebf14f277a61657e16 (patch) | |
tree | 6eb4a6c5c1c43c99b6e66eab3b7d4f31c92ac8c0 /web/src/js/components/proxyapp.js | |
parent | 67f6f67c48928ca56abfc5395be42b6643a16295 (diff) | |
download | mitmproxy-c9ce5094c810b551de3cddebf14f277a61657e16.tar.gz mitmproxy-c9ce5094c810b551de3cddebf14f277a61657e16.tar.bz2 mitmproxy-c9ce5094c810b551de3cddebf14f277a61657e16.zip |
All files and only files in in js/components are jsx
So remove the redundant naming
Diffstat (limited to 'web/src/js/components/proxyapp.js')
-rw-r--r-- | web/src/js/components/proxyapp.js | 92 |
1 files changed, 92 insertions, 0 deletions
diff --git a/web/src/js/components/proxyapp.js b/web/src/js/components/proxyapp.js new file mode 100644 index 00000000..6d235b50 --- /dev/null +++ b/web/src/js/components/proxyapp.js @@ -0,0 +1,92 @@ +var React = require("react"); +var ReactRouter = require("react-router"); +var _ = require("lodash"); + +var utils = require("./utils.js"); +var MainView = require("./mainview.js"); +var Footer = require("./footer.js"); +var header = require("./header.js"); +var EventLog = require("./eventlog.js"); +var store = require("../store/store.js"); + + +//TODO: Move out of here, just a stub. +var Reports = React.createClass({ + render: function () { + return <div>ReportEditor</div>; + } +}); + + +var ProxyAppMain = React.createClass({ + mixins: [utils.State], + getInitialState: function () { + var eventStore = new store.EventLogStore(); + var flowStore = new store.FlowStore(); + var settings = new store.SettingsStore(); + + // Default Settings before fetch + _.extend(settings.dict,{ + }); + return { + settings: settings, + flowStore: flowStore, + eventStore: eventStore + }; + }, + componentDidMount: function () { + this.state.settings.addListener("recalculate", this.onSettingsChange); + window.app = this; + }, + componentWillUnmount: function () { + this.state.settings.removeListener("recalculate", this.onSettingsChange); + }, + onSettingsChange: function(){ + this.setState({ + settings: this.state.settings + }); + }, + render: function () { + + var eventlog; + if (this.getQuery()[Query.SHOW_EVENTLOG]) { + eventlog = [ + <utils.Splitter key="splitter" axis="y"/>, + <EventLog key="eventlog" eventStore={this.state.eventStore}/> + ]; + } else { + eventlog = null; + } + + return ( + <div id="container"> + <header.Header settings={this.state.settings.dict}/> + <RouteHandler settings={this.state.settings.dict} flowStore={this.state.flowStore}/> + {eventlog} + <Footer settings={this.state.settings.dict}/> + </div> + ); + } +}); + + +var Route = ReactRouter.Route; +var RouteHandler = ReactRouter.RouteHandler; +var Redirect = ReactRouter.Redirect; +var DefaultRoute = ReactRouter.DefaultRoute; +var NotFoundRoute = ReactRouter.NotFoundRoute; + + +var routes = ( + <Route path="/" handler={ProxyAppMain}> + <Route name="flows" path="flows" handler={MainView}/> + <Route name="flow" path="flows/:flowId/:detailTab" handler={MainView}/> + <Route name="reports" handler={Reports}/> + <Redirect path="/" to="flows" /> + </Route> +); + +module.exports = { + routes: routes +}; + |