fix alby connection

This commit is contained in:
Ren Amamiya 2023-09-11 07:52:43 +07:00
parent 5bf816eba2
commit 602d012efe
3 changed files with 17 additions and 10 deletions

View File

@ -58,9 +58,6 @@ export function UnlockScreen() {
const privkey = await db.secureLoad(db.account.pubkey); const privkey = await db.secureLoad(db.account.pubkey);
const uri = await db.secureLoad('walletConnectURL', 'alby'); const uri = await db.secureLoad('walletConnectURL', 'alby');
console.log('found privkey: ', privkey);
console.log('found wallet conenct url: ', uri);
if (privkey) setPrivkey(privkey); if (privkey) setPrivkey(privkey);
if (uri) setWalletConnectURL(uri); if (uri) setWalletConnectURL(uri);
// redirect to home // redirect to home

View File

@ -47,9 +47,8 @@ export function AlbyConnectButton() {
webview.listen('tauri://close-requested', async () => { webview.listen('tauri://close-requested', async () => {
await db.secureSave('walletConnectURL', walletConnectURL, 'alby'); await db.secureSave('walletConnectURL', walletConnectURL, 'alby');
setWalletConnectURL(walletConnectURL); setWalletConnectURL(walletConnectURL);
setIsloading(false);
setIsOpen(false);
setIsConnected(true); setIsConnected(true);
setIsloading(false);
}); });
} catch (e) { } catch (e) {
setIsloading(false); setIsloading(false);

View File

@ -3,7 +3,7 @@ import { SendPaymentResponse } from '@getalby/sdk/dist/types';
import * as Dialog from '@radix-ui/react-dialog'; import * as Dialog from '@radix-ui/react-dialog';
import { message } from '@tauri-apps/api/dialog'; import { message } from '@tauri-apps/api/dialog';
import { QRCodeSVG } from 'qrcode.react'; import { QRCodeSVG } from 'qrcode.react';
import { useState } from 'react'; import { useEffect, useState } from 'react';
import CurrencyInput from 'react-currency-input-field'; import CurrencyInput from 'react-currency-input-field';
import TextareaAutosize from 'react-textarea-autosize'; import TextareaAutosize from 'react-textarea-autosize';
@ -26,6 +26,7 @@ export function NoteZap({ id, pubkey }: { id: string; pubkey: string }) {
const [zapMessage, setZapMessage] = useState<string>(''); const [zapMessage, setZapMessage] = useState<string>('');
const [invoice, setInvoice] = useState<null | string>(null); const [invoice, setInvoice] = useState<null | string>(null);
const [isOpen, setIsOpen] = useState(false); const [isOpen, setIsOpen] = useState(false);
const [isCompleted, setIsCompleted] = useState(false);
const walletConnectURL = useStronghold((state) => state.walletConnectURL); const walletConnectURL = useStronghold((state) => state.walletConnectURL);
@ -59,15 +60,25 @@ export function NoteZap({ id, pubkey }: { id: string; pubkey: string }) {
// eose // eose
nwc.close(); nwc.close();
setIsOpen(false); setIsCompleted(true);
setAmount('');
setZapMessage(''); // reset after 3 secs
const timeout = setTimeout(() => setIsCompleted(false), 3000);
clearTimeout(timeout);
} }
} catch (e) { } catch (e) {
await message(JSON.stringify(e), { title: 'Zap', type: 'error' }); await message(JSON.stringify(e), { title: 'Zap', type: 'error' });
} }
}; };
useEffect(() => {
return () => {
setAmount('');
setZapMessage('');
setIsCompleted(false);
};
}, []);
return ( return (
<Dialog.Root open={isOpen} onOpenChange={setIsOpen}> <Dialog.Root open={isOpen} onOpenChange={setIsOpen}>
<Dialog.Trigger asChild> <Dialog.Trigger asChild>
@ -168,7 +179,7 @@ export function NoteZap({ id, pubkey }: { id: string; pubkey: string }) {
onClick={() => createZapRequest()} onClick={() => createZapRequest()}
className="inline-flex h-11 w-full items-center justify-center rounded-lg bg-orange-100 px-4 font-medium text-black hover:bg-orange-200" className="inline-flex h-11 w-full items-center justify-center rounded-lg bg-orange-100 px-4 font-medium text-black hover:bg-orange-200"
> >
<p>Tip with Alby</p> <p>{isCompleted ? 'Successfully tipped' : 'Tip with Alby'}</p>
<AlbyIcon className="h-6 w-6" /> <AlbyIcon className="h-6 w-6" />
</button> </button>
) : ( ) : (