gatsby-openrpc-theme
Version:
A gatsby theme for generated OpenRPC documentation
51 lines • 2.46 kB
JavaScript
"use strict";
var __importDefault = (this && this.__importDefault) || function (mod) {
return (mod && mod.__esModule) ? mod : { "default": mod };
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.query = void 0;
const react_1 = __importDefault(require("react"));
const gatsby_1 = require("gatsby");
const material_1 = require("@mui/material");
const IndexPage = ({ data }) => {
const { title, description } = data.site.siteMetadata;
const posts = data.allMdx.edges;
return (react_1.default.createElement(react_1.default.Fragment, null,
react_1.default.createElement(material_1.Box, { sx: { mb: 4 } },
react_1.default.createElement(material_1.Typography, { variant: "h1", component: "h1", gutterBottom: true }, title),
react_1.default.createElement(material_1.Typography, { variant: "h5", component: "p", color: "textSecondary", paragraph: true }, description),
react_1.default.createElement(material_1.Button, { variant: "contained", color: "primary", component: gatsby_1.Link, to: "/sample/", sx: { mt: 2 } }, "View Sample Page")),
posts.length > 0 && (react_1.default.createElement(material_1.Box, { sx: { mt: 6 } },
react_1.default.createElement(material_1.Typography, { variant: "h2", gutterBottom: true }, "Documentation"),
react_1.default.createElement(material_1.Grid, { container: true, spacing: 3 }, posts.map(({ node }) => (react_1.default.createElement(material_1.Grid, { item: true, xs: 12, sm: 6, md: 4, key: node.id },
react_1.default.createElement(material_1.Card, null,
react_1.default.createElement(material_1.CardContent, null,
react_1.default.createElement(material_1.Typography, { variant: "h5", component: "h2" }, node.frontmatter.title)),
react_1.default.createElement(material_1.CardActions, null,
react_1.default.createElement(material_1.Button, { size: "small", component: gatsby_1.Link, to: node.fields.slug }, "Read More")))))))))));
};
exports.query = (0, gatsby_1.graphql) `
query {
site {
siteMetadata {
title
description
}
}
allMdx {
edges {
node {
id
fields {
slug
}
frontmatter {
title
}
}
}
}
}
`;
exports.default = IndexPage;
//# sourceMappingURL=index.js.map