github.com/golang/dep@v0.5.4/website/pages/en/index.js (about) 1 const React = require('react'); 2 3 const CompLibrary = require('../../core/CompLibrary.js'); 4 const MarkdownBlock = CompLibrary.MarkdownBlock; /* Used to read markdown */ 5 const Container = CompLibrary.Container; 6 const GridBlock = CompLibrary.GridBlock; 7 8 const siteConfig = require(process.cwd() + '/siteConfig.js'); 9 10 class Button extends React.Component { 11 render() { 12 return ( 13 <div className="pluginWrapper buttonWrapper"> 14 <a className="button" href={this.props.href} target={this.props.target}> 15 {this.props.children} 16 </a> 17 </div> 18 ); 19 } 20 } 21 22 function assetUrl(img) { 23 return siteConfig.baseUrl + 'docs/assets/' + img; 24 } 25 26 function docUrl(doc, language) { 27 return siteConfig.baseUrl + 'docs/' + (language ? language + '/' : '') + doc; 28 } 29 30 Button.defaultProps = { 31 target: '_self', 32 }; 33 34 const SplashContainer = props => ( 35 <div className="homeContainer"> 36 <div className="homeSplashFade"> 37 <div className="wrapper homeWrapper">{props.children}</div> 38 </div> 39 </div> 40 ); 41 42 const Logo = props => ( 43 <div className="projectLogo"> 44 <img src={props.img_src} /> 45 </div> 46 ); 47 48 const ProjectTitle = props => ( 49 <h2 className="projectTitle"> 50 {siteConfig.title} 51 <small>{siteConfig.tagline}</small> 52 </h2> 53 ); 54 55 const PromoSection = props => ( 56 <div className="section promoSection"> 57 <div className="promoRow"> 58 <div className="pluginRowBlock">{props.children}</div> 59 </div> 60 </div> 61 ); 62 63 class HomeSplash extends React.Component { 64 render() { 65 let language = this.props.language || ''; 66 return ( 67 <SplashContainer> 68 <Logo img_src={assetUrl('DigbyShadows.svg')} /> 69 <div className="inner"> 70 <ProjectTitle /> 71 <PromoSection> 72 <Button href={docUrl('introduction.html', language)}>Docs</Button> 73 <Button href={siteConfig.baseUrl + 'blog'}>Blog</Button> 74 <Button href='https://github.com/golang/dep'>Code</Button> 75 </PromoSection> 76 </div> 77 </SplashContainer> 78 ); 79 } 80 } 81 82 class Index extends React.Component { 83 render() { 84 let language = this.props.language || ''; 85 86 return ( 87 <HomeSplash language={language} /> 88 ); 89 } 90 } 91 92 module.exports = Index;