Skip to content

Commit efd92c8

Browse files
MichaelDeBoeySaraVieira
authored andcommitted
🔨 Switch ForkServerModal to use useOvermind (codesandbox#3367)
1 parent 12796ac commit efd92c8

File tree

2 files changed

+36
-20
lines changed

2 files changed

+36
-20
lines changed
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
import styled from 'styled-components';
2+
3+
import { SignInButton as SignInButtonBase } from 'app/pages/common/SignInButton';
4+
5+
export const NiceName = styled.span`
6+
font-weight: 500;
7+
`;
8+
9+
export const SignInButton = styled(SignInButtonBase)`
10+
margin-top: 12px;
11+
`;
Lines changed: 25 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -1,48 +1,53 @@
1-
import React, { useEffect } from 'react';
2-
import { useOvermind } from 'app/overmind';
31
import getTemplateDefinition from '@codesandbox/common/lib/templates';
4-
import { SignInButton } from 'app/pages/common/SignInButton';
2+
import React, { FunctionComponent, useEffect } from 'react';
3+
4+
import { useOvermind } from 'app/overmind';
55

66
import { Container, Heading, Explanation } from '../elements';
77

8-
export const ForkServerModal: React.FC = () => {
8+
import { NiceName as NiceNameBase, SignInButton } from './elements';
9+
10+
export const ForkServerModal: FunctionComponent = () => {
911
const {
10-
state: {
11-
isLoggedIn,
12-
editor: { currentSandbox },
13-
},
1412
actions: {
15-
modalClosed,
1613
editor: { forkSandboxClicked },
14+
modalClosed,
15+
},
16+
state: {
17+
editor: {
18+
currentSandbox: { template },
19+
},
20+
isLoggedIn,
1721
},
1822
} = useOvermind();
1923

2024
useEffect(() => {
21-
// Which means that the user signed in in the meantime with the intention to
22-
// fork
25+
// Which means that the user signed in in the meantime with the intention to fork
2326
if (isLoggedIn) {
2427
forkSandboxClicked();
28+
2529
modalClosed();
2630
}
2731
}, [forkSandboxClicked, isLoggedIn, modalClosed]);
2832

29-
const templateDefinition = getTemplateDefinition(currentSandbox.template);
30-
const niceName = (
31-
<span style={{ color: templateDefinition.color(), fontWeight: 500 }}>
32-
{templateDefinition.niceName}
33-
</span>
33+
const { color, niceName } = getTemplateDefinition(template);
34+
const NiceName: FunctionComponent = () => (
35+
<NiceNameBase color={color()}>{niceName}</NiceNameBase>
3436
);
3537

3638
return (
3739
<Container>
38-
<Heading>Fork {niceName} Sandbox</Heading>
40+
<Heading>
41+
Fork <NiceName /> Sandbox
42+
</Heading>
43+
3944
<Explanation>
40-
We execute {niceName} sandboxes in a server container. This is still in
41-
beta, so we require you to sign in before you can fork a {niceName}{' '}
45+
We execute <NiceName /> sandboxes in a server container. This is still
46+
in beta, so we require you to sign in before you can fork a <NiceName />{' '}
4247
sandbox.
4348
</Explanation>
4449

45-
<SignInButton style={{ marginTop: 12 }} />
50+
<SignInButton />
4651
</Container>
4752
);
4853
};

0 commit comments

Comments
 (0)