1
0
mirror of https://github.com/ascribe/onion.git synced 2024-06-30 21:52:08 +02:00
onion/js/components/ascribe_app.js

41 lines
1.1 KiB
JavaScript
Raw Normal View History

'use strict';
2015-05-13 16:26:12 +02:00
import React from 'react';
import TransactionManager from './ascribe_transaction_manager/transaction_manager';
2015-05-20 16:19:40 +02:00
import Header from '../components/header';
2015-07-02 15:41:17 +02:00
import Footer from '../components/footer';
2015-06-08 18:14:25 +02:00
import GlobalNotification from './global_notification';
2015-05-15 15:38:25 +02:00
2015-05-13 16:26:12 +02:00
2015-05-20 12:00:16 +02:00
let AscribeApp = React.createClass({
propTypes: {
children: React.PropTypes.oneOfType([
React.PropTypes.arrayOf(React.PropTypes.element),
React.PropTypes.element
2015-10-01 14:00:56 +02:00
]),
routes: React.PropTypes.arrayOf(React.PropTypes.object)
},
2015-05-18 18:00:12 +02:00
render() {
2015-10-01 14:00:56 +02:00
let { children, routes } = this.props;
2015-05-18 18:00:12 +02:00
return (
<TransactionManager
routes={routes}>
<div className="container ascribe-default-app">
<Header routes={routes} />
{/* Routes are injected here */}
{children}
<Footer />
<GlobalNotification />
<div id="modal" className="container"></div>
</div>
</TransactionManager>
2015-05-18 18:00:12 +02:00
);
}
2015-05-20 12:00:16 +02:00
});
2015-05-13 16:26:12 +02:00
export default AscribeApp;