Some cleanup on background.js
This commit is contained in:
@@ -38,18 +38,9 @@ browser.runtime.onMessage.addListener(
|
|||||||
case 'generatePrivateKey':
|
case 'generatePrivateKey':
|
||||||
sendResponse(generatePrivateKey());
|
sendResponse(generatePrivateKey());
|
||||||
break;
|
break;
|
||||||
|
|
||||||
// Options page
|
|
||||||
case 'newProfile':
|
|
||||||
let newIndex = await newProfile();
|
|
||||||
sendResponse(newIndex);
|
|
||||||
break;
|
|
||||||
case 'savePrivateKey':
|
case 'savePrivateKey':
|
||||||
await savePrivateKey(message.payload);
|
await savePrivateKey(message.payload);
|
||||||
break;
|
break;
|
||||||
case 'saveProfileName':
|
|
||||||
await saveProfileName(message.payload);
|
|
||||||
break;
|
|
||||||
case 'getNpub':
|
case 'getNpub':
|
||||||
let npub = await getNpub(message.payload);
|
let npub = await getNpub(message.payload);
|
||||||
sendResponse(npub);
|
sendResponse(npub);
|
||||||
@@ -58,33 +49,10 @@ browser.runtime.onMessage.addListener(
|
|||||||
let nsec = await getNsec(message.payload);
|
let nsec = await getNsec(message.payload);
|
||||||
sendResponse(nsec);
|
sendResponse(nsec);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'getPubKey':
|
case 'getPubKey':
|
||||||
let pubKey = await getPubKey();
|
let pubKey = await getPubKey();
|
||||||
sendResponse(pubKey);
|
sendResponse(pubKey);
|
||||||
break;
|
break;
|
||||||
case 'getHosts':
|
|
||||||
let hosts = await getHosts();
|
|
||||||
sendResponse(hosts);
|
|
||||||
break;
|
|
||||||
case 'clearData':
|
|
||||||
await clearData();
|
|
||||||
break;
|
|
||||||
case 'deleteProfile':
|
|
||||||
await deleteProfile(message.payload);
|
|
||||||
break;
|
|
||||||
case 'getRelaysForProfile':
|
|
||||||
let profileRelays = await getRelaysForProfile(message.payload);
|
|
||||||
sendResponse(profileRelays);
|
|
||||||
break;
|
|
||||||
case 'saveRelaysForProfile':
|
|
||||||
let [srfpIndex, srfpRelays] = message.payload;
|
|
||||||
await saveRelaysForProfile(srfpIndex, srfpRelays);
|
|
||||||
break;
|
|
||||||
case 'getNameForProfile':
|
|
||||||
let nameForProfile = await getNameForProfile(message.payload);
|
|
||||||
sendResponse(nameForProfile);
|
|
||||||
break;
|
|
||||||
|
|
||||||
// window.nostr
|
// window.nostr
|
||||||
case 'signEvent':
|
case 'signEvent':
|
||||||
@@ -112,12 +80,6 @@ browser.runtime.onMessage.addListener(
|
|||||||
);
|
);
|
||||||
|
|
||||||
// Options
|
// Options
|
||||||
async function clearData() {
|
|
||||||
let ignoreInstallHook = await storage.get({ ignoreInstallHook: false });
|
|
||||||
await storage.clear();
|
|
||||||
await storage.set(ignoreInstallHook);
|
|
||||||
}
|
|
||||||
|
|
||||||
async function savePrivateKey([index, privKey]) {
|
async function savePrivateKey([index, privKey]) {
|
||||||
if (privKey.startsWith('nsec')) {
|
if (privKey.startsWith('nsec')) {
|
||||||
privKey = nip19.decode(privKey).data;
|
privKey = nip19.decode(privKey).data;
|
||||||
@@ -127,12 +89,6 @@ async function savePrivateKey([index, privKey]) {
|
|||||||
await storage.set({ profiles });
|
await storage.set({ profiles });
|
||||||
}
|
}
|
||||||
|
|
||||||
async function saveProfileName([index, profileName]) {
|
|
||||||
let profiles = await get('profiles');
|
|
||||||
profiles[index].name = profileName;
|
|
||||||
await storage.set({ profiles });
|
|
||||||
}
|
|
||||||
|
|
||||||
async function getNsec(index) {
|
async function getNsec(index) {
|
||||||
let profile = await getProfile(index);
|
let profile = await getProfile(index);
|
||||||
let nsec = nip19.nsecEncode(profile.privKey);
|
let nsec = nip19.nsecEncode(profile.privKey);
|
||||||
@@ -165,19 +121,6 @@ async function currentProfile() {
|
|||||||
return profiles[index];
|
return profiles[index];
|
||||||
}
|
}
|
||||||
|
|
||||||
async function newProfile() {
|
|
||||||
let profiles = await get('profiles');
|
|
||||||
const newProfile = {
|
|
||||||
name: 'New Profile',
|
|
||||||
privKey: generatePrivateKey(),
|
|
||||||
hosts: [],
|
|
||||||
relays: [],
|
|
||||||
};
|
|
||||||
profiles.push(newProfile);
|
|
||||||
await storage.set({ profiles });
|
|
||||||
return profiles.length - 1;
|
|
||||||
}
|
|
||||||
|
|
||||||
async function signEvent_(event) {
|
async function signEvent_(event) {
|
||||||
event = { ...event };
|
event = { ...event };
|
||||||
let privKey = await getPrivKey();
|
let privKey = await getPrivKey();
|
||||||
@@ -195,35 +138,6 @@ async function nip04Decrypt({ pubKey, cipherText }) {
|
|||||||
return nip04.decrypt(privKey, pubKey, cipherText);
|
return nip04.decrypt(privKey, pubKey, cipherText);
|
||||||
}
|
}
|
||||||
|
|
||||||
async function getRelays() {
|
|
||||||
let profile = await currentProfile();
|
|
||||||
let relays = {};
|
|
||||||
let profileRelays = profile.relays || [];
|
|
||||||
profileRelays.forEach(relay => {
|
|
||||||
relays[relay.url] = { read: relay.read, write: relay.write };
|
|
||||||
});
|
|
||||||
return relays;
|
|
||||||
}
|
|
||||||
|
|
||||||
async function getRelaysForProfile(profileIndex) {
|
|
||||||
let profiles = await get('profiles');
|
|
||||||
let profile = profiles[profileIndex];
|
|
||||||
return profile.relays || [];
|
|
||||||
}
|
|
||||||
|
|
||||||
async function saveRelaysForProfile(profileIndex, relays) {
|
|
||||||
let profiles = await get('profiles');
|
|
||||||
let profile = profiles[profileIndex];
|
|
||||||
profile.relays = relays;
|
|
||||||
await storage.set({ profiles });
|
|
||||||
}
|
|
||||||
|
|
||||||
async function getNameForProfile(profileIndex) {
|
|
||||||
let profiles = await get('profiles');
|
|
||||||
let profile = profiles[profileIndex];
|
|
||||||
return profile.name;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Utilities
|
// Utilities
|
||||||
|
|
||||||
async function get(item) {
|
async function get(item) {
|
||||||
|
|||||||
Reference in New Issue
Block a user