@@ -57,7 +57,7 @@ export default function ResetExecute({ newWallet, setNewWallet }) {
57 } = useWallet();
57 } = useWallet();
58 const { performL2Reticket } = useRoller();
58 const { performL2Reticket } = useRoller();
60− point: { isL2 },
60+ point: { isL2Spawn },
61 } = useRollerStore();
61 } = useRollerStore();
62 const { pointCursor } = usePointCursor();
62 const { pointCursor } = usePointCursor();
63 const { getDetails } = usePointCache();
63 const { getDetails } = usePointCache();
@@ -74,8 +74,38 @@ export default function ResetExecute({ newWallet, setNewWallet }) {
75 useBlockWindowClose();
75 useBlockWindowClose();
77− // start reticketing transactions on mount
77+ const goToRestart = useCallback(() => {
78− useEffect(() => {
78+ reset();
79+ setNewWallet(Nothing());
80+ }, [reset, setNewWallet]);
82+ const loginAndGoHome = useCallback(() => {
85+ setWalletType(WALLET_TYPES.TICKET);
86+ setUrbitWallet(Just(newWallet.value.wallet));
87+ // (implicit) pointCursor stays the same
90+ }, [resetWallet, setWalletType, setUrbitWallet, newWallet, popTo, names]);
92+ const handleUpdate = useCallback(
93+ ({ type, state, value }) => {
96+ return setProgress(state);
98+ return setNeedFunds(value);
100+ return setNeedFunds(false);
102+ console.error(`Unknown update: ${type}`);
105+ [setProgress, setNeedFunds]
108+ const performReticket = useCallback(async () => {
79 (async () => {
109 (async () => {
80 // due to react shenanigans we may need to wait for the connector
110 // due to react shenanigans we may need to wait for the connector
@@ -98,17 +128,16 @@ export default function ResetExecute({ newWallet, setNewWallet }) {
98 walletType === WALLET_TYPES.WALLET_CONNECT ? wcSend : undefined;
128 walletType === WALLET_TYPES.WALLET_CONNECT ? wcSend : undefined;
101− if (isL2) {
131+ if (isL2Spawn) {
102− console.log(newWallet.value);
103 // FIXME: the useEffect is called twice, which is fine since the duplicate
132 // FIXME: the useEffect is called twice, which is fine since the duplicate
104 // L2 txs will be discarded
133 // L2 txs will be discarded
106 await performL2Reticket({
134 await performL2Reticket({
108 to: newWallet.value.wallet.ownership.keys.address,
136 to: newWallet.value.wallet.ownership.keys.address,
109 manager: newWallet.value.wallet.management.keys.address,
137 manager: newWallet.value.wallet.management.keys.address,
110 toWallet: newWallet.value.wallet,
138 toWallet: newWallet.value.wallet,
111 fromWallet: need.wallet(wallet),
139 fromWallet: need.wallet(wallet),
140+ onUpdate: handleUpdate,
114 await reticketPointBetweenWallets({
143 await reticketPointBetweenWallets({
@@ -130,43 +159,33 @@ export default function ResetExecute({ newWallet, setNewWallet }) {
130 setGeneralError(err);
159 setGeneralError(err);
169+ newWallet.value.wallet,
180+ // start reticketing transactions on mount
133 //NOTE this was using useLifecycle previously (which is useEffect without
183 //NOTE this was using useLifecycle previously (which is useEffect without
134 // dependencies) and worked fine, but in the wc case we might need to
184 // dependencies) and worked fine, but in the wc case we might need to
135 // wait for the connector to get set due to react state shenanigans.
185 // wait for the connector to get set due to react state shenanigans.
136 // eslint-disable-next-line react-hooks/exhaustive-deps
186 // eslint-disable-next-line react-hooks/exhaustive-deps
137 }, [connector]);
187 }, [connector]);
139− const goToRestart = useCallback(() => {
141− setNewWallet(Nothing());
142− }, [reset, setNewWallet]);
144− const loginAndGoHome = useCallback(() => {
147− setWalletType(WALLET_TYPES.TICKET);
148− setUrbitWallet(Just(newWallet.value.wallet));
149− // (implicit) pointCursor stays the same
150− // redirect to point
152− }, [resetWallet, setWalletType, setUrbitWallet, newWallet, popTo, names]);
154− const handleUpdate = useCallback(
155− ({ type, state, value }) => {
158− return setProgress(state);
160− return setNeedFunds(value);
162− return setNeedFunds(false);
164− console.error(`Unknown update: ${type}`);
167− [setProgress, setNeedFunds]
170 const renderAdditionalInfo = () => {
189 const renderAdditionalInfo = () => {
171 if (generalError) {
190 if (generalError) {
172 console.log(generalError);
191 console.log(generalError);