{"version":3,"file":"component---src-pages-home-index-js-d9570a34bbc3942f0db6.js","mappings":"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","sources":["webpack://hpe-dev-portal/./src/pages/Home/index.js"],"sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { graphql, navigate } from 'gatsby';\nimport {\n  Box,\n  Button,\n  Card as GrommetCard,\n  CardHeader,\n  Grid,\n  Heading,\n  Image,\n  Paragraph,\n  Text,\n} from 'grommet';\nimport { LinkNext } from 'grommet-icons';\n\nimport { Layout, SEO, Card, TitleMarkdown, ButtonLink } from '../../components';\n\nconst OpenSourceCard = ({ children }) => (\n  <Box pad={{ horizontal: 'large', bottom: 'large' }}>\n    <GrommetCard elevation=\"medium\" fill=\"horizontal\">\n      <CardHeader pad={{ horizontal: 'large', vertical: 'medium' }}>\n        <Heading level={2} margin=\"none\">\n          Featured Open Source Projects\n        </Heading>\n        <ButtonLink icon={<LinkNext color=\"green\" />} to=\"/opensource\" />\n      </CardHeader>\n      <Grid\n        columns=\"small\"\n        gap=\"large\"\n        pad={{ horizontal: 'large', bottom: 'large' }}\n      >\n        {children}\n      </Grid>\n    </GrommetCard>\n  </Box>\n);\n\nOpenSourceCard.propTypes = {\n  children: PropTypes.node,\n};\n\nconst Project = ({ title, description, link }) => (\n  <Box\n    align=\"start\"\n    gap=\"medium\"\n    /* eslint-disable */\n    onClick={\n      link && link.match(/^\\//g)\n        ? () => navigate(link)\n        : link\n        ? () => window.open(link)\n        : undefined\n    }\n  >\n    {/* <Box flex={false} height=\"xsmall\" width=\"xsmall\">\n      <Image src={image} fit=\"contain\" alt=\"opensource project logo\" />\n    </Box> */}\n    <Box>\n      <Text size=\"large\" weight=\"bold\">\n        {title}\n      </Text>\n      <Paragraph truncate margin=\"none\" size=\"large\">\n        {description && description.length > 115\n          ? description.substring(0, 115) + '...'\n          : description}\n      </Paragraph>\n    </Box>\n  </Box>\n);\n\nProject.propTypes = {\n  image: PropTypes.string,\n  title: PropTypes.string,\n  description: PropTypes.string,\n  link: PropTypes.string,\n};\n\nconst Home = ({ data }) => {\n  const { title, image } = data.markdownRemark.frontmatter;\n  const siteTitle = data.site.siteMetadata.title;\n\n  const panels = data.home.edges;\n\n  const projects = data.opensource.edges;\n\n  return (\n    <Layout title={siteTitle}>\n      <SEO title={title} />\n      <Box direction=\"row-responsive\" pad=\"xlarge\" gap=\"xlarge\" align=\"center\">\n        <Box>\n          <TitleMarkdown>{data.markdownRemark.rawMarkdownBody}</TitleMarkdown>\n          <Button\n            label=\"Join the Community\"\n            primary\n            reverse\n            icon={<Image src=\"/img/home/hpe-element.png\" />}\n            href=\"/community\"\n            style={{\n              backgroundColor: '#01A982',\n              borderRadius: '100px',\n              color: '#ffffff',\n              width: 300,\n            }}\n          />\n        </Box>\n        <Box align=\"center\">\n          {image && <Image src={image} alt=\"hpedev logo\" />}\n        </Box>\n      </Box>\n      <Box flex={false} direction=\"row-responsive\" wrap margin=\"medium\">\n        {panels &&\n          panels.map(({ node }) => (\n            <Card\n              key={node.id}\n              category={node.frontmatter.category}\n              width={node.frontmatter.width}\n              content={node.rawMarkdownBody}\n              link={node.frontmatter.link}\n              image={node.frontmatter.image}\n              imageScale={node.frontmatter.imageScale}\n              reverse={node.frontmatter.reverse}\n              title={node.frontmatter.title}\n              author={node.frontmatter.author}\n            />\n          ))}\n      </Box>\n      <OpenSourceCard>\n        {projects &&\n          projects.map(({ node }) => (\n            <Project\n              key={node.id}\n              image={node.frontmatter.image}\n              title={node.frontmatter.title}\n              description={node.frontmatter.description}\n              link={node.frontmatter.link}\n            />\n          ))}\n      </OpenSourceCard>\n    </Layout>\n  );\n};\n\nHome.propTypes = {\n  data: PropTypes.shape({\n    site: PropTypes.shape({\n      siteMetadata: PropTypes.shape({\n        title: PropTypes.string.isRequired,\n      }).isRequired,\n    }).isRequired,\n    markdownRemark: PropTypes.shape({\n      frontmatter: PropTypes.shape({\n        title: PropTypes.string.isRequired,\n        image: PropTypes.string,\n      }).isRequired,\n      rawMarkdownBody: PropTypes.string,\n    }).isRequired,\n    home: PropTypes.shape({\n      edges: PropTypes.arrayOf(\n        PropTypes.shape({\n          node: PropTypes.shape({\n            id: PropTypes.string,\n            frontmatter: PropTypes.shape({\n              width: PropTypes.string,\n              category: PropTypes.string,\n              image: PropTypes.string,\n              imageScale: PropTypes.number,\n              link: PropTypes.string,\n              priority: PropTypes.number,\n              reverse: PropTypes.bool,\n              active: PropTypes.bool,\n            }),\n          }),\n          rawMarkdownBody: PropTypes.string,\n        }),\n      ),\n    }),\n    opensource: PropTypes.shape({\n      edges: PropTypes.arrayOf(\n        PropTypes.shape({\n          node: PropTypes.shape({\n            id: PropTypes.string,\n            frontmatter: PropTypes.shape({\n              title: PropTypes.string,\n              category: PropTypes.string,\n              description: PropTypes.string,\n              image: PropTypes.string,\n            }),\n          }),\n          rawMarkdownBody: PropTypes.string,\n        }),\n      ),\n    }),\n  }).isRequired,\n};\n\nexport default Home;\n\nexport const pageQuery = graphql`\n  query {\n    site {\n      siteMetadata {\n        title\n      }\n    }\n    markdownRemark(fields: { slug: { eq: \"/\" } }) {\n      excerpt\n      frontmatter {\n        title\n        image\n      }\n      rawMarkdownBody\n    }\n    home: allMarkdownRemark(\n      filter: {\n        fields: { sourceInstanceName: { eq: \"homepanels\" } }\n        frontmatter: { active: { eq: true } }\n      }\n      sort: {frontmatter: {priority: ASC}}\n    ) {\n      edges {\n        node {\n          id\n          frontmatter {\n            width\n            category\n            link\n            image\n            imageScale\n            title\n            author\n            reverse\n            active\n          }\n          rawMarkdownBody\n        }\n      }\n    }\n    opensource: allMarkdownRemark(\n      filter: {\n        fields: { sourceInstanceName: { eq: \"opensource\" } }\n        frontmatter: { Featured: { eq: true } }\n      }\n      sort: {frontmatter: {priority: ASC}}\n    ) {\n      edges {\n        node {\n          id\n          rawMarkdownBody\n          fields {\n            slug\n            sourceInstanceName\n          }\n          excerpt\n          frontmatter {\n            title\n            category\n            description\n            image\n            frontpage\n            priority\n            link\n          }\n        }\n      }\n    }\n  }\n`;\n"],"names":["OpenSourceCard","_ref","children","React","Box","pad","horizontal","bottom","GrommetCard","elevation","fill","CardHeader","vertical","Heading","level","margin","ButtonLink","icon","LinkNext","color","to","Grid","columns","gap","Project","_ref2","title","description","link","align","onClick","match","navigate","window","open","undefined","Text","size","weight","Paragraph","truncate","length","substring","_ref3","data","image","markdownRemark","frontmatter","siteTitle","site","siteMetadata","panels","home","edges","projects","opensource","Layout","SEO","direction","TitleMarkdown","rawMarkdownBody","Button","label","primary","reverse","Image","src","href","style","backgroundColor","borderRadius","width","alt","flex","wrap","map","_ref4","node","Card","key","id","category","content","imageScale","author","_ref5"],"sourceRoot":""}