1
0
mirror of https://github.com/Pomax/BezierInfo-2.git synced 2025-08-28 18:49:57 +02:00

Use Preact, rather than React (#91)

* moving to Preact to shave off 100+kb

* preact'ed
This commit is contained in:
Mike Kamermans
2017-04-02 14:32:06 -07:00
committed by GitHub
parent bcc465d26b
commit 25a18d8891
18 changed files with 122 additions and 251 deletions

View File

@@ -2,58 +2,28 @@ var React = require("react");
var Ribbon = require("./Ribbon.jsx");
var Header = require("./Header.jsx");
var Relatives = require("./Relatives.jsx");
var LocaleSwitcher = require("./localized").LocaleSwitcher;
var Navigation = require("./Navigation.jsx");
var Footer = require("./Footer.jsx");
var Page = React.createClass({
renderCompactContent: function(nav) {
return (
<div>
<Relatives prev={this.props.prev} next={this.props.next} position="before" />
{this.props.children}
<Relatives prev={this.props.prev} next={this.props.next} position="after" />
</div>
);
},
renderCompactRoot: function(nav) {
return (
<div>
{this.props.children}
{nav}
</div>
);
},
renderPageContent: function(nav) {
return (
<div>
<LocaleSwitcher/>
{nav}
<Navigation/>
{this.props.children}
</div>
);
},
render: function() {
var content;
var compact = this.props.compact;
var isRoot = this.props.name === '/';
var nav = <Navigation compact={compact && !isRoot}/>;
if (compact) {
if (isRoot) {
content = this.renderCompactRoot(nav);
} else {
content = this.renderCompactContent(nav);
}
} else {
content = this.renderPageContent(nav);
}
return <div><Ribbon/><Header/>{ content }<Footer/></div>;
return <div>
<Ribbon/>
<Header/>
{ this.renderPageContent() }
<Footer/>
</div>;
}
});