/** * Copyright (c) 2017-present, Facebook, Inc. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. */ const React = require('react'); const BlogPost = require('./BlogPost.js'); const BlogSidebar = require('./BlogSidebar.js'); const Container = require('./Container.js'); const MetadataBlog = require('./MetadataBlog.js'); const Site = require('./Site.js'); const utils = require('./utils.js'); // used to generate entire blog pages, i.e. collection of truncated blog posts class BlogPageLayout extends React.Component { getPageURL(page) { let url = `${this.props.config.baseUrl}blog/`; if (page > 0) { url += `page${page + 1}/`; } return url; } render() { const perPage = this.props.metadata.perPage; const page = this.props.metadata.page; return (
{MetadataBlog.slice(page * perPage, (page + 1) * perPage).map( post => ( ), )}
{page > 0 && ( ← Prev )} {MetadataBlog.length > (page + 1) * perPage && ( Next → )}
); } } module.exports = BlogPageLayout;