aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib
diff options
context:
space:
mode:
authorAdam Soltys <[email protected]>2025-01-23 20:39:51 -0800
committerAdam Soltys <[email protected]>2025-01-23 20:39:51 -0800
commitdbca79c616ec2fec6bae94fb33587b84e1a66055 (patch)
treed2a8d10898648ae0d21d0995a0bc1a3d6f8a238e /src/lib
parent3f258ea37faf150f201fa76504a874596ee7905f (diff)
downloadcoinos-ui-dbca79c616ec2fec6bae94fb33587b84e1a66055.tar.gz
coinos-ui-dbca79c616ec2fec6bae94fb33587b84e1a66055.zip
fix nostr connect
Diffstat (limited to 'src/lib')
-rw-r--r--src/lib/nostr.ts11
1 files changed, 8 insertions, 3 deletions
diff --git a/src/lib/nostr.ts b/src/lib/nostr.ts
index a5b2d990..bfaa14c1 100644
--- a/src/lib/nostr.ts
+++ b/src/lib/nostr.ts
@@ -17,6 +17,7 @@ import {
nip04,
nip19,
} from "nostr-tools";
+import { decrypt as nip44decrypt, getConversationKey } from "nostr-tools/nip44";
import { Relay } from "nostr-tools/relay";
import { get } from "svelte/store";
@@ -168,9 +169,13 @@ const signingMethods = {
async onevent(event) {
pk = event.pubkey;
try {
- const response = JSON.parse(
- await nip04.decrypt(sk, pk, event.content),
- );
+ let response;
+ try {
+ response = JSON.parse(await nip04.decrypt(sk, pk, event.content));
+ } catch (e) {
+ const ck = await getConversationKey(sk, pk);
+ response = JSON.parse(await nip44decrypt(event.content, ck));
+ }
if (response.id === id) resolve(JSON.parse(response.result));
} catch (e) {