From 5a740d61efeaa077ed6a59693868220c3dbcd98f Mon Sep 17 00:00:00 2001 From: Ryan Breen Date: Fri, 20 Jan 2023 22:37:19 -0500 Subject: [PATCH] Render the keys and npub/nsec keys in the UI --- Shared (Extension)/Resources/background.js | 28 ++++++++++++++++++---- Shared (Extension)/Resources/popup.js | 19 +++++++++------ 2 files changed, 36 insertions(+), 11 deletions(-) diff --git a/Shared (Extension)/Resources/background.js b/Shared (Extension)/Resources/background.js index 055bcbe..7620eb7 100644 --- a/Shared (Extension)/Resources/background.js +++ b/Shared (Extension)/Resources/background.js @@ -16,9 +16,13 @@ browser.runtime.onMessage.addListener(async (message, _sender, sendResponse) => let profileIndex = await getProfileIndex(); sendResponse(profileIndex); break; - case 'getPrivKey': - let privKey = await getPrivKey(); - sendResponse(privKey); + case 'getNsecKey': + let nsecKey = await getNsecKey(); + sendResponse(nsecKey); + break; + case 'getNpubKey': + let npubKey = await getNpubKey(); + sendResponse(npubKey); break; case 'getPubKey': let pubKey = await getPubKey(); @@ -85,14 +89,28 @@ async function initialize() { await getOrSetDefault('profiles', [{name: 'Default', privKey: generatePrivateKey(), hosts: []}]); } +async function getNsecKey() { + let profile = await currentProfile(); + return profile.nsecKey; +} + async function getPrivKey() { let profile = await currentProfile(); return profile.privKey; } +async function getNpubKey() { + let pubKey = await getPubKey(); + console.log('pubKey: ', pubKey); + let npubKey = nip19.npubEncode(pubKey); + console.log('npub key: ', npubKey); + return npubKey; +} + async function getPubKey() { let privKey = await getPrivKey(); - return getPublicKey(privKey); + let pubKey = getPublicKey(privKey); + return pubKey; } async function getHosts() { @@ -121,6 +139,8 @@ async function getProfileIndex() { async function currentProfile() { let index = await get('profileIndex'); let profiles = await get('profiles'); + let currentProfile = profiles[index]; + currentProfile.nsecKey = nip19.nsecEncode(currentProfile.privKey); return profiles[index]; } diff --git a/Shared (Extension)/Resources/popup.js b/Shared (Extension)/Resources/popup.js index 7707bd0..ad580ef 100644 --- a/Shared (Extension)/Resources/popup.js +++ b/Shared (Extension)/Resources/popup.js @@ -31,8 +31,8 @@ Alpine.data('popup', () => ({ }, async refreshProfile() { - await this.getPrivKey(); - await this.getPubKey(); + await this.getNsecKey(); + await this.getNpubKey(); await this.getHosts(); await this.getName(); await this.getProfileNames(); @@ -46,12 +46,14 @@ Alpine.data('popup', () => ({ } }, - async getPrivKey() { - this.privKey = await browser.runtime.sendMessage({kind: 'getPrivKey'}); + async getNsecKey() { + this.privKey = await browser.runtime.sendMessage({kind: 'getNsecKey'}); + console.log('privKey: ', this.privKey); }, - - async getPubKey() { - this.pubKey = await browser.runtime.sendMessage({kind: 'getPubKey'}); + + async getNpubKey() { + this.pubKey = await browser.runtime.sendMessage({kind: 'getNpubKey'}); + console.log('pubKey: ', this.pubKey); }, async getHosts() { @@ -60,14 +62,17 @@ Alpine.data('popup', () => ({ async getProfileNames() { this.profileNames = await browser.runtime.sendMessage({kind: 'getProfileNames'}); + console.log('Profile Names: ', this.profileNames); }, async getName() { this.name = await browser.runtime.sendMessage({kind: 'getName'}); + console.log('Name: ', this.name); }, async getProfileIndex() { this.profileIndex = await browser.runtime.sendMessage({kind: 'getProfileIndex'}); + console.log('Profile Index: ', this.profileIndex); }, async newProfile() {