1import React, { useState, useCallback, useMemo } from 'react';
3import useLifecycle from 'lib/useLifecycle';
5import { Anchor, Box, Text } from '@tlon/indigo-react';
6import { useActivateFlow } from './ActivateFlow';
7import ActivateView from './ActivateView';
8import useRoller from 'lib/useRoller';
9import { FadeableActivateHeader as ActivateHeader } from './ActivateHeader';
10import useFadeIn from './useFadeIn';
11import PointPresenter from './PointPresenter';
12import DangerBox from './DangerBox';
13import View from 'components/View';
15import { DownloadPortButton } from './DownloadPortButton';
17const MasterKeyTransfer = () => {
18 const { performL2Reticket } = useRoller();
24 } = useActivateFlow();
25 const [error, setError] = useState();
27 const claimPoint = useCallback(async () => {
31 await performL2Reticket({
32 point: derivedPoint.value,
33 to: derivedWallet.value.ownership.keys.address,
34 manager: derivedWallet.value.management.keys.address,
35 toWallet: derivedWallet.value,
36 fromWallet: inviteWallet.value,
55 const header = useMemo(() => {
70 fontFamily="Source Code Pro"
88 }, [derivedPatp.value]);
90 const footer = useMemo(() => {
94 flexDirection={'column'}
96 justifyContent={'space-between'}>
97 {error && <DangerBox>{error.toString()}</DangerBox>}
98 <DownloadPortButton error={error} />
100 href="https://urbit.org/getting-started/cli"
102 marginBottom={'10px'}
110 rel={'nofollow noopener'}>
111 or setup via command line
118 <View centered={true}>
119 <ActivateView header={header} footer={footer}>
121 alignItems={'center'}
123 flexDirection={'column'}
126 justifyContent={'center'}>
128 patp={derivedPatp.value}
138export default MasterKeyTransfer;
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