1import React, { useCallback } from 'react';
2import cn from 'classnames';
3import { Flex } from 'indigo-react';
5import Footer from './Footer';
6import useBreakpoints from 'lib/useBreakpoints';
7import MiniBackButton from './MiniBackButton';
8import { useHistory } from 'store/history';
10const EXPECT_LOGOUT_WHEN_POPPING_AT_DEPTH = 2;
12// View is a top-level component that all Views must render to inherit styling
21 const { size } = useHistory();
22 const isMobile = useBreakpoints([true, false, false]);
23 const shouldInset = inset && !isMobile;
25 const insetPadding = cn({
30 const goBack = useCallback(() => pop(), [pop]);
32 const showBackButton = size > 1 && !!pop;
33 const backIsLogout = size === EXPECT_LOGOUT_WHEN_POPPING_AT_DEPTH;
44 'mw2 ph9-md ph10-lg': full,
52 style={{ width: '48px' }}
53 className={cn(insetPadding)}>
64 <Flex.Item flex={1} as={Flex} col justify="between">
65 <Flex.Item className={cn('pb5', insetPadding)}>{children}</Flex.Item>
66 <Flex.Item as={Footer.Target} />
69 <Flex.Item style={{ width: '48px' }} />
74// View.Full is sugar for <View full /> to help with readability
75View.Full = function FullView(props) {
76 return <View full {...props} />;
keysesc to close
- j k
- move down, up
- enter
- open
- esc
- back, or up a level
- 1 2 3 4
- readme, files, commits, refs
- /
- filter
- y
- copy the clone command
- c
- compare the chosen commit with another (or shift-click both)
- ?
- show or hide this list