on master help sign in
bridge/src/components/Greeting.jsx
109 lines 3.3 kB history raw
1import React, { useCallback } from 'react';
2import cn from 'classnames';
3import ob from 'urbit-ob';
4import { Grid, Text, LinkButton } from 'indigo-react';
6import {
7 Box,
8 Button,
9 Checkbox,
10 Icon,
11 RadioButton,
12 Row,
13} from '@tlon/indigo-react';
15import useWasGreeted from 'lib/useWasGreeted';
17const TEXT_STYLE = 'f5';
19export default function ActivateDisclaimer({ point }) {
20 const [wasGreeted, setWasGreeted] = useWasGreeted();
22 const pointName = ob.patp(point);
24 const dismiss = useCallback(async () => {
25 setWasGreeted(true);
26 }, [setWasGreeted]);
28 if (wasGreeted) {
29 return null;
30 }
32 return (
33 <Grid gap={4} className="mb10">
34 <Grid.Item full>
35 <Text className={cn(TEXT_STYLE, 'block mb4')}>
36 Welcome <span className="mono">{pointName}</span>,
37 </Text>
38 <Text className={cn(TEXT_STYLE, 'block mb2')}>
39 As of this moment, you own a piece of Urbit.
40 Keep your login details safe. No one can recover them for you.
41 </Text>
42 <Text className={cn(TEXT_STYLE, 'block mb2')}>Now that you own your identity, the next step is to run your own operating system:</Text>
43 </Grid.Item>
45 <Grid.Item full>
46 <Box className="info-list">
47 <Row className="info-row">
48 <Box className="info-message">
49 Comfortable with a command line?
50 <br></br>
51 <a
52 style={{ fontWeight: 600 }}
53 className="underline"
54 target="_blank"
55 rel="noreferrer"
56 href="https://docs.urbit.org/get-on-urbit#get-the-urbit-runtime">
57 Run it using Vere↗
58 </a>
59 </Box>
60 </Row>
61 <Row className="info-row">
62 <Box className="info-message">
63 Graphical interfaces more your speed?
65 <br></br>
66 <a
67 style={{ fontWeight: 600 }}
68 className="underline"
69 target="_blank"
70 rel="noreferrer"
71 href="https://nativeplanet.io/software">
72 Check out Groundseg↗
73 </a>
74 </Box>
75 </Row>
76 <Row className="info-row">
77 <Box className="info-message">
78 Want a dedicated Urbit device to do it all for you?
80 <br></br>
81 <a
82 style={{ fontWeight: 600 }}
83 className="underline"
84 target="_blank"
85 rel="noreferrer"
86 href="https://nativeplanet.io/hardware">
87 Get Native Planet hardware↗
88 </a>
89 </Box>
90 </Row>
91 <Row className="info-row">
92 <Box style={{ fontStyle: 'italic' }} className="info-message">
93 Not ready to self-host? Contact <a className="bold underline" href="mailto:support@tlon.io">support@tlon.io</a> to have them host your Urbit for you!
94 </Box>
95 </Row>
96 </Box>
97 </Grid.Item>
99 <Grid.Item full>
100 <Text className={cn(TEXT_STYLE, 'block mb4')}>
101 Welcome to Urbit. See you on the network.
102 </Text>
103 </Grid.Item>
104 <Grid.Item full as={LinkButton} onClick={dismiss}>
105 Close
106 </Grid.Item>
107 </Grid>
108 );