54 lines
1.6 KiB
JavaScript
54 lines
1.6 KiB
JavaScript
/**
|
|
* Copyright (c) 2015-present, Facebook, Inc.
|
|
* All rights reserved.
|
|
*
|
|
* This source code is licensed under the BSD-style license found in the
|
|
* LICENSE file in the root directory of this source tree. An additional grant
|
|
* of patent rights can be found in the PATENTS file in the same directory.
|
|
*
|
|
* @providesModule DocsLayout
|
|
*/
|
|
|
|
var DocsSidebar = require('DocsSidebar');
|
|
var HeaderWithGithub = require('HeaderWithGithub');
|
|
var Marked = require('Marked');
|
|
var React = require('React');
|
|
var Site = require('Site');
|
|
|
|
var DocsLayout = React.createClass({
|
|
childContextTypes: {
|
|
permalink: React.PropTypes.string
|
|
},
|
|
|
|
getChildContext: function() {
|
|
return {permalink: this.props.metadata.permalink};
|
|
},
|
|
|
|
render: function() {
|
|
var metadata = this.props.metadata;
|
|
var content = this.props.children;
|
|
return (
|
|
<Site section="docs" title={metadata.title}>
|
|
<section className="content wrap documentationContent">
|
|
<DocsSidebar metadata={metadata} />
|
|
<div className="inner-content">
|
|
<a id="content" />
|
|
<HeaderWithGithub
|
|
title={metadata.title}
|
|
level={1}
|
|
path={'docs/' + metadata.filename}
|
|
/>
|
|
<Marked>{content}</Marked>
|
|
<div className="docs-prevnext">
|
|
{metadata.previous && <a className="docs-prev" href={'docs/' + metadata.previous + '.html#content'}>← Prev</a>}
|
|
{metadata.next && <a className="docs-next" href={'docs/' + metadata.next + '.html#content'}>Next →</a>}
|
|
</div>
|
|
</div>
|
|
</section>
|
|
</Site>
|
|
);
|
|
}
|
|
});
|
|
|
|
module.exports = DocsLayout;
|