@@ -1,6 +1,6 @@
1−import React, { useCallback, useMemo, useRef } from 'react';
1+import React, { useCallback, useMemo, useRef, useState } from 'react';
2import { Just } from 'folktale/maybe';
2import { Just } from 'folktale/maybe';
3−import { Grid, ToggleInput, CheckboxInput } from 'indigo-react';
3+import { Grid, ToggleInput, CheckboxInput, Button } from 'indigo-react';
4import * as azimuth from 'azimuth-js';
4import * as azimuth from 'azimuth-js';
5import { randomHex } from 'web3-utils';
5import { randomHex } from 'web3-utils';
@@ -8,7 +8,9 @@ import { usePointCursor } from 'store/pointCursor';
8import { usePointCache } from 'store/pointCache';
8import { usePointCache } from 'store/pointCache';
9import { useNetwork } from 'store/network';
9import { useNetwork } from 'store/network';
10import { useWallet } from 'store/wallet';
10import { useWallet } from 'store/wallet';
11+import { useRollerStore } from 'store/roller';
13+import useRoller from 'lib/useRoller';
12import { useLocalRouter } from 'lib/LocalRouter';
14import { useLocalRouter } from 'lib/LocalRouter';
13import * as need from 'lib/need';
15import * as need from 'lib/need';
@@ -50,7 +52,7 @@ function useSetKeys(manualNetworkSeed, setManualNetworkSeed) {
51 const networkRevision = convertToInt(_details.keyRevisionNumber, 10);
53 const networkRevision = convertToInt(_details.keyRevisionNumber, 10);
52 const randomSeed = useRef();
54 const randomSeed = useRef();
53−
55+ console.log(manualNetworkSeed);
55 available: keyfileAvailable,
57 available: keyfileAvailable,
56 generating: keyfileGenerating,
58 generating: keyfileGenerating,
@@ -141,6 +143,9 @@ export default function UrbitOSNetworkingKeys({
141 const { pop } = useLocalRouter();
143 const { pop } = useLocalRouter();
142 const { pointCursor } = usePointCursor();
144 const { pointCursor } = usePointCursor();
143 const { getDetails } = usePointCache();
145 const { getDetails } = usePointCache();
146+ const { currentL2 } = useRollerStore();
147+ const { configureNetworkingKeys, getPendingTransactions } = useRoller();
148+ const [breach, setBreach] = useState(false);
145 const point = need.point(pointCursor);
150 const point = need.point(pointCursor);
146 const details = getDetails(point);
151 const details = getDetails(point);
@@ -187,17 +192,46 @@ export default function UrbitOSNetworkingKeys({
187 values.useNetworkSeed ? values.networkSeed : undefined,
192 values.useNetworkSeed ? values.networkSeed : undefined,
188 values.useDiscontinuity
193 values.useDiscontinuity
195+ setBreach(values.useDiscontinuity);
196+ setManualNetworkSeed(values.useNetworkSeed);
191 unconstruct();
198 unconstruct();
194 if (!values.useNetworkSeed && values.networkSeed) {
201 if (!values.useNetworkSeed && values.networkSeed) {
195 form.change('networkSeed', '');
202 form.change('networkSeed', '');
204+ setManualNetworkSeed('');
198− [construct, unconstruct]
207+ [construct, unconstruct, setManualNetworkSeed, setBreach]
210+ const setNetworkingKeys = useCallback(async () => {
211+ // setLoading(true);
212+ console.log(breach, manualNetworkSeed);
214+ const txHash = await configureNetworkingKeys({
218+ // TODO: just use the tx hash instead?
219+ getPendingTransactions(point);
224+ // setLoading(false);
229+ getPendingTransactions,
232+ configureNetworkingKeys,
201 const initialValues = useMemo(
235 const initialValues = useMemo(
203 useNetworkSeed: false,
237 useNetworkSeed: false,
@@ -280,13 +314,25 @@ export default function UrbitOSNetworkingKeys({
283− <Grid.Item
318+ <Grid.Item
324+ onClick={setNetworkingKeys}>
325+ {'Sign Transaction'}
285− as={InlineEthereumTransaction}
330+ as={InlineEthereumTransaction}
286− {...bind}
331+ {...bind}
287− label={`${hasKeys ? 'Reset' : 'Set'} Networking Keys`}
332+ label={`${hasKeys ? 'Reset' : 'Set'} Networking Keys`}
288− onReturn={() => pop()}
333+ onReturn={() => pop()}
292 </BridgeForm>
338 </BridgeForm>