Compare commits

...

4 Commits

Author SHA1 Message Date
f2b1458bd2 bump version & fix using nsecbunker with token 2023-12-07 18:49:55 +07:00
0d43c13928 bump version 2023-12-07 11:55:49 +07:00
a42a2788ea fix nip-05 2023-12-06 10:15:41 +07:00
e30274dab3 fix typo 2023-12-06 09:07:32 +07:00
9 changed files with 21 additions and 23 deletions

View File

@@ -2,7 +2,7 @@
"name": "lume",
"description": "the communication app",
"private": true,
"version": "2.2.1",
"version": "2.2.3",
"scripts": {
"dev": "vite",
"build": "vite build",

View File

@@ -33,7 +33,7 @@ tauri-plugin-store = { git = "https://github.com/tauri-apps/plugins-workspace",
tauri-plugin-upload = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "v2" }
tauri-plugin-window-state = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "v2" }
tauri-plugin-theme = { git = "https://github.com/wyhaya/tauri-plugin-theme" }
tauri-plugin-sql = { git = "hhttps://github.com/tauri-apps/plugins-workspace", branch = "v2", features = [
tauri-plugin-sql = { git = "https://github.com/tauri-apps/plugins-workspace", branch = "v2", features = [
"sqlite",
] }
sqlx-cli = { version = "0.7.0", default-features = false, features = [

View File

@@ -9,7 +9,7 @@
},
"package": {
"productName": "Lume",
"version": "2.2.1"
"version": "2.2.3"
},
"plugins": {
"fs": {

View File

@@ -48,7 +48,7 @@ export function ImportAccountScreen() {
const localSigner = NDKPrivateKeySigner.generate();
await db.createSetting('nsecbunker', '1');
await db.secureSave(`${pubkey}-nsecbunker`, localSigner.privateKey);
await db.secureSave(`${npub}-nsecbunker`, localSigner.privateKey);
// open nsecbunker web app in default browser
await open('https://app.nsecbunker.com/keys');
@@ -56,7 +56,7 @@ export function ImportAccountScreen() {
const bunker = new NDK({
explicitRelayUrls: ['wss://relay.nsecbunker.com', 'wss://nostr.vulpem.com'],
});
bunker.connect();
await bunker.connect();
const remoteSigner = new NDKNip46Signer(bunker, npub, localSigner);
await remoteSigner.blockUntilReady();

View File

@@ -31,16 +31,16 @@ export const NDKInstance = () => {
try {
// NIP-46 Signer
if (nsecbunker) {
const localSignerPrivkey = await db.secureLoad(`${db.account.pubkey}-nsecbunker`);
const localSignerPrivkey = await db.secureLoad(`${db.account.id}-nsecbunker`);
if (!localSignerPrivkey) return null;
const localSigner = new NDKPrivateKeySigner(localSignerPrivkey);
const bunker = new NDK({
explicitRelayUrls: ['wss://relay.nsecbunker.com', 'wss://nostr.vulpem.com'],
});
bunker.connect();
await bunker.connect();
const remoteSigner = new NDKNip46Signer(bunker, db.account.id, localSigner);
const remoteSigner = new NDKNip46Signer(bunker, db.account.pubkey, localSigner);
await remoteSigner.blockUntilReady();
return remoteSigner;

View File

@@ -19,7 +19,7 @@ export function Logout() {
// remove private key
await db.secureRemove(db.account.pubkey);
await db.secureRemove(`${db.account.pubkey}-nsecbunker`);
await db.secureRemove(`${db.account.id}-nsecbunker`);
// logout
await db.accountLogout();

View File

@@ -22,7 +22,7 @@ export function NewLayout() {
<div className="col-span-1">
<Link
to="/"
className="inline-flex h-10 w-10 items-center justify-center rounded-lg bg-neutral-100 hover:bg-neutral-200 dark:bg-neutral-900"
className="inline-flex h-10 w-10 items-center justify-center rounded-lg bg-neutral-100 hover:bg-neutral-200 dark:bg-neutral-900 dark:hover:bg-neutral-800"
>
<ArrowLeftIcon className="h-5 w-5" />
</Link>

View File

@@ -40,7 +40,11 @@ export const NIP05 = memo(function NIP05({
const data: NIP05 = await res.json();
if (data.names) {
if (data.names[localPath] !== pubkey) return false;
if (
data.names[localPath.toLowerCase()] !== pubkey ||
data.names[localPath] !== pubkey
)
return false;
return true;
}
return false;
@@ -60,17 +64,13 @@ export const NIP05 = memo(function NIP05({
return (
<div className="inline-flex items-center gap-1">
<p className={twMerge('text-sm font-medium', className)}>{nip05}</p>
<p className={twMerge('text-sm font-medium', className)}>
{nip05.startsWith('_@') ? nip05.replace('_@', '') : nip05}
</p>
{data === true ? (
<div className="inline-flex h-5 w-max shrink-0 items-center justify-center gap-1 rounded-full bg-teal-500 pl-0.5 pr-1.5 text-xs font-medium text-white">
<VerifiedIcon className="h-4 w-4" />
Verified
</div>
<VerifiedIcon className="h-4 w-4 text-teal-500" />
) : (
<div className="inline-flex h-5 w-max shrink-0 items-center justify-center gap-1.5 rounded-full bg-red-500 pl-0.5 pr-1.5 text-xs font-medium text-white">
<UnverifiedIcon className="h-4 w-4" />
Unverified
</div>
<UnverifiedIcon className="h-4 w-4 text-red-500" />
)}
</div>
);

View File

@@ -30,9 +30,7 @@ export function LiveUpdater({ status }: { status: QueryStatus }) {
useEffect(() => {
let sub: NDKSubscription = undefined;
if (status === 'success' && db.account && db.account?.follows?.length > 0) {
queryClient.fetchQuery({ queryKey: ['notification'] });
if (status === 'success' && db.account && db.account?.contacts?.length > 0) {
const filter: NDKFilter = {
kinds: [NDKKind.Text, NDKKind.Repost],
authors: db.account.contacts,