diff options
author | Fabio Berger <me@fabioberger.com> | 2018-08-28 23:03:18 +0800 |
---|---|---|
committer | Fabio Berger <me@fabioberger.com> | 2018-08-28 23:03:18 +0800 |
commit | ca0567ad0911657b0241844cd2f34d78b697de8c (patch) | |
tree | 29e01456dd6a17e6a2886c242d09534795511ccc /packages/website/ts/components/documentation | |
parent | b8241c0f808518a3f727424cacb952cc9ce80c4c (diff) | |
download | dexon-sol-tools-ca0567ad0911657b0241844cd2f34d78b697de8c.tar dexon-sol-tools-ca0567ad0911657b0241844cd2f34d78b697de8c.tar.gz dexon-sol-tools-ca0567ad0911657b0241844cd2f34d78b697de8c.tar.bz2 dexon-sol-tools-ca0567ad0911657b0241844cd2f34d78b697de8c.tar.lz dexon-sol-tools-ca0567ad0911657b0241844cd2f34d78b697de8c.tar.xz dexon-sol-tools-ca0567ad0911657b0241844cd2f34d78b697de8c.tar.zst dexon-sol-tools-ca0567ad0911657b0241844cd2f34d78b697de8c.zip |
Begin implementing doc home page
Diffstat (limited to 'packages/website/ts/components/documentation')
-rw-r--r-- | packages/website/ts/components/documentation/docs_content_top_bar.tsx | 110 | ||||
-rw-r--r-- | packages/website/ts/components/documentation/docs_logo.tsx | 13 |
2 files changed, 123 insertions, 0 deletions
diff --git a/packages/website/ts/components/documentation/docs_content_top_bar.tsx b/packages/website/ts/components/documentation/docs_content_top_bar.tsx new file mode 100644 index 000000000..c9bdca61b --- /dev/null +++ b/packages/website/ts/components/documentation/docs_content_top_bar.tsx @@ -0,0 +1,110 @@ +import { colors, Styles } from '@0xproject/react-shared'; +import * as _ from 'lodash'; +import Drawer from 'material-ui/Drawer'; +import * as React from 'react'; +import { Link } from 'react-router-dom'; +import { TopBarMenuItem } from 'ts/components/top_bar/top_bar_menu_item'; +import { Container } from 'ts/components/ui/container'; +import { Deco, Key, WebsitePaths } from 'ts/types'; +import { constants } from 'ts/utils/constants'; +import { Translate } from 'ts/utils/translate'; + +export interface DocsContentTopBarProps { + location: Location; + translate: Translate; +} + +interface DocsContentTopBarState { + isDrawerOpen: boolean; +} + +const styles: Styles = { + menuItem: { + fontSize: 14, + color: colors.darkestGrey, + paddingTop: 6, + paddingBottom: 6, + cursor: 'pointer', + fontWeight: 400, + }, +}; + +export class DocsContentTopBar extends React.Component<DocsContentTopBarProps, DocsContentTopBarState> { + constructor(props: DocsContentTopBarProps) { + super(props); + this.state = { + isDrawerOpen: false, + }; + } + public componentWillReceiveProps(nextProps: DocsContentTopBarProps): void { + if (nextProps.location.pathname !== this.props.location.pathname) { + this.setState({ + isDrawerOpen: false, + }); + } + } + public render(): React.ReactNode { + const menuIconStyle = { + fontSize: 25, + color: 'black', + cursor: 'pointer', + }; + return ( + <div style={{ height: 75, color: colors.linkSectionGrey }} className="pb1 flex items-center"> + <Container className="flex items-center" width="100%"> + <div className="col col-2"> + <i className="zmdi zmdi-chevron-left" /> 0xproject.com + </div> + <div className="col col-10"> + <div className="flex items-center justify-between right" style={{ width: 300 }}> + <TopBarMenuItem + title={this.props.translate.get(Key.Github, Deco.Cap)} + path={constants.URL_GITHUB_ORG} + style={styles.menuItem} + isNightVersion={false} + isExternal={true} + /> + <TopBarMenuItem + title={this.props.translate.get(Key.Forum, Deco.Cap)} + path={constants.URL_FORUM} + style={styles.menuItem} + isNightVersion={false} + isExternal={true} + /> + <TopBarMenuItem + title={this.props.translate.get(Key.LiveChat, Deco.Cap)} + path={constants.URL_ZEROEX_CHAT} + style={styles.menuItem} + isNightVersion={false} + isExternal={true} + /> + </div> + </div> + <div className={'md-hide lg-hide'}> + <div style={menuIconStyle}> + <i className="zmdi zmdi-menu" onClick={this._onMenuButtonClick.bind(this)} /> + </div> + </div> + </Container> + {this._renderDrawer()} + </div> + ); + } + private _renderDrawer(): React.ReactNode { + return ( + <Drawer + open={this.state.isDrawerOpen} + docked={false} + openSecondary={true} + onRequestChange={this._onMenuButtonClick.bind(this)} + > + <div className="clearfix">TODO</div> + </Drawer> + ); + } + private _onMenuButtonClick(): void { + this.setState({ + isDrawerOpen: !this.state.isDrawerOpen, + }); + } +} diff --git a/packages/website/ts/components/documentation/docs_logo.tsx b/packages/website/ts/components/documentation/docs_logo.tsx new file mode 100644 index 000000000..b65a27fd9 --- /dev/null +++ b/packages/website/ts/components/documentation/docs_logo.tsx @@ -0,0 +1,13 @@ +import * as React from 'react'; +import { Link } from 'react-router-dom'; +import { WebsitePaths } from 'ts/types'; + +export const DocsLogo = () => { + return ( + <div style={{ paddingTop: 28 }}> + <Link to={`${WebsitePaths.Home}`} className="text-decoration-none"> + <img src="/images/docs_logo.svg" height="30px" /> + </Link> + </div> + ); +}; |