UNPKG

consonance

Version:
44 lines (38 loc) 1.18 kB
const React = require('react'); const css = require('../css/base.css'); const R = require('ramda'); const Header = require('./Header.jsx'); const Nav = require('./Nav.jsx'); const Footer = require('./Footer.jsx'); const { RouteHandler } = require('react-router'); const Root = React.createClass({ render() { var initialProps = { __html: safeStringify(R.dissoc('webpackStats', this.props)) } return ( <html> <head> <title>{this.props.title}</title> <style dangerouslySetInnerHTML={{ __html: css }} /> <meta charSet="utf-8" /> </head> <body className='flex flex-column container'> <Nav {...this.props} /> <Header {...this.props} /> <RouteHandler {...this.props} /> <Footer {...this.props} /> <script id='initial-props' type='application/json' dangerouslySetInnerHTML={initialProps} /> <script src='bundle.js' /> </body> </html> ) } }); const safeStringify = obj => { return JSON.stringify(obj).replace(/<\/script/g, '<\\/script').replace(/<!--/g, '<\\!--') } module.exports = Root;