You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
182 lines
5.6 KiB
182 lines
5.6 KiB
/**
|
|
* Copyright (c) 2013-present, Facebook, Inc.
|
|
*
|
|
* @emails react-core
|
|
*/
|
|
|
|
'use strict';
|
|
|
|
import Container from 'components/Container';
|
|
import ExternalFooterLink from './ExternalFooterLink';
|
|
import FooterLink from './FooterLink';
|
|
import FooterNav from './FooterNav';
|
|
import MetaTitle from 'templates/components/MetaTitle';
|
|
import React from 'react';
|
|
import {colors, media} from 'theme';
|
|
|
|
import ossLogoPng from 'images/oss_logo.png';
|
|
|
|
const Footer = ({layoutHasSidebar = false}) => (
|
|
<footer
|
|
css={{
|
|
backgroundColor: colors.darker,
|
|
color: colors.white,
|
|
paddingTop: 10,
|
|
paddingBottom: 50,
|
|
|
|
[media.size('sidebarFixed')]: {
|
|
paddingTop: 40,
|
|
},
|
|
}}>
|
|
<Container>
|
|
<div
|
|
css={{
|
|
display: 'flex',
|
|
flexDirection: 'row',
|
|
flexWrap: 'wrap',
|
|
|
|
[media.between('small', 'medium')]: {
|
|
paddingRight: layoutHasSidebar ? 240 : null,
|
|
},
|
|
|
|
[media.between('large', 'largerSidebar')]: {
|
|
paddingRight: layoutHasSidebar ? 280 : null,
|
|
},
|
|
[media.between('largerSidebar', 'sidebarFixed', true)]: {
|
|
paddingRight: layoutHasSidebar ? 380 : null,
|
|
},
|
|
}}>
|
|
<div
|
|
css={{
|
|
flexWrap: 'wrap',
|
|
display: 'flex',
|
|
|
|
[media.lessThan('large')]: {
|
|
width: '100%',
|
|
},
|
|
[media.greaterThan('xlarge')]: {
|
|
width: 'calc(100% / 3 * 2)',
|
|
paddingLeft: 40,
|
|
},
|
|
}}>
|
|
<FooterNav layoutHasSidebar={layoutHasSidebar}>
|
|
<MetaTitle onDark={true}>Docs</MetaTitle>
|
|
<FooterLink to="/docs/hello-world.html">Quick Start</FooterLink>
|
|
<FooterLink to="/docs/thinking-in-react.html">
|
|
Thinking in React
|
|
</FooterLink>
|
|
<FooterLink to="/tutorial/tutorial.html">Tutorial</FooterLink>
|
|
<FooterLink to="/docs/jsx-in-depth.html">
|
|
Advanced Guides
|
|
</FooterLink>
|
|
</FooterNav>
|
|
<FooterNav layoutHasSidebar={layoutHasSidebar}>
|
|
<MetaTitle onDark={true}>Community</MetaTitle>
|
|
<ExternalFooterLink
|
|
href="http://stackoverflow.com/questions/tagged/reactjs"
|
|
target="_blank"
|
|
rel="noopener">
|
|
Stack Overflow
|
|
</ExternalFooterLink>
|
|
<ExternalFooterLink
|
|
href="https://discuss.reactjs.org"
|
|
target="_blank"
|
|
rel="noopener">
|
|
Discussion Forum
|
|
</ExternalFooterLink>
|
|
<ExternalFooterLink
|
|
href="https://discord.gg/0ZcbPKXt5bZjGY5n"
|
|
target="_blank"
|
|
rel="noopener">
|
|
Reactiflux Chat
|
|
</ExternalFooterLink>
|
|
<ExternalFooterLink
|
|
href="https://www.facebook.com/react"
|
|
target="_blank"
|
|
rel="noopener">
|
|
Facebook
|
|
</ExternalFooterLink>
|
|
<ExternalFooterLink
|
|
href="https://twitter.com/reactjs"
|
|
target="_blank"
|
|
rel="noopener">
|
|
Twitter
|
|
</ExternalFooterLink>
|
|
</FooterNav>
|
|
<FooterNav layoutHasSidebar={layoutHasSidebar}>
|
|
<MetaTitle onDark={true}>Resources</MetaTitle>
|
|
<FooterLink to="/community/conferences.html">
|
|
Conferences
|
|
</FooterLink>
|
|
<FooterLink to="/community/videos.html">Videos</FooterLink>
|
|
<FooterLink to="/community/examples.html">Examples</FooterLink>
|
|
<FooterLink to="/community/debugging-tools.html">
|
|
Complementary Tools
|
|
</FooterLink>
|
|
</FooterNav>
|
|
<FooterNav layoutHasSidebar={layoutHasSidebar}>
|
|
<MetaTitle onDark={true}>More</MetaTitle>
|
|
<FooterLink to="/blog/">Blog</FooterLink>
|
|
<ExternalFooterLink
|
|
href="https://github.com/facebook/react"
|
|
target="_blank"
|
|
rel="noopener">
|
|
GitHub
|
|
</ExternalFooterLink>
|
|
<ExternalFooterLink
|
|
href="http://facebook.github.io/react-native/"
|
|
target="_blank"
|
|
rel="noopener">
|
|
React Native
|
|
</ExternalFooterLink>
|
|
<FooterLink to="/acknowledgements.html">
|
|
Acknowledgements
|
|
</FooterLink>
|
|
</FooterNav>
|
|
</div>
|
|
<section
|
|
css={{
|
|
paddingTop: 40,
|
|
display: 'block !important', // Override 'Installation' <style> specifics
|
|
|
|
[media.greaterThan('xlarge')]: {
|
|
width: 'calc(100% / 3)',
|
|
order: -1,
|
|
},
|
|
[media.greaterThan('large')]: {
|
|
order: -1,
|
|
width: layoutHasSidebar ? null : 'calc(100% / 3)',
|
|
},
|
|
[media.lessThan('large')]: {
|
|
textAlign: 'center',
|
|
width: '100%',
|
|
paddingTop: 40,
|
|
},
|
|
}}>
|
|
<a
|
|
href="https://code.facebook.com/projects/"
|
|
target="_blank"
|
|
rel="noopener">
|
|
<img
|
|
alt="Facebook Open Source"
|
|
css={{
|
|
maxWidth: 160,
|
|
height: 'auto',
|
|
}}
|
|
src={ossLogoPng}
|
|
/>
|
|
</a>
|
|
<p
|
|
css={{
|
|
color: colors.subtleOnDark,
|
|
paddingTop: 15,
|
|
}}>
|
|
Copyright © 2017 Facebook Inc.
|
|
</p>
|
|
</section>
|
|
</div>
|
|
</Container>
|
|
</footer>
|
|
);
|
|
|
|
export default Footer;
|
|
|