refactor invite page to pickup webpacked code
This commit is contained in:
parent
5b6ab8779e
commit
ae64424f54
3 changed files with 86 additions and 77 deletions
|
|
@ -1,74 +0,0 @@
|
|||
window.onload = function () {
|
||||
if (!window.nostr) {
|
||||
console.log('Nostr extension not present');
|
||||
document.querySelector('#nostr-signup-button').disabled = true;
|
||||
document.querySelector('#no-extension-nudges').style.display = 'block';
|
||||
} else {
|
||||
console.log('Nostr extension present');
|
||||
}
|
||||
};
|
||||
|
||||
const signUpConfirmation = document.querySelector('#sign-up-success');
|
||||
|
||||
function showConfirmationAndRedirect() {
|
||||
signUpConfirmation.classList.add('revealed');
|
||||
setTimeout(() => {
|
||||
window.location.href = '/createProfile';
|
||||
}, 5000);
|
||||
}
|
||||
|
||||
async function acceptInvite() {
|
||||
let challengeResponse;
|
||||
try {
|
||||
challengeResponse = await fetch('/api/signup/nostr-challenge', {
|
||||
method: 'GET',
|
||||
headers: {
|
||||
'Content-Type': 'application/json',
|
||||
},
|
||||
});
|
||||
} catch (error) {
|
||||
console.log(`Something went wrong: ${error}`);
|
||||
return;
|
||||
}
|
||||
|
||||
const { challenge } = await challengeResponse.json();
|
||||
|
||||
let pubkey;
|
||||
try {
|
||||
pubkey = await window.nostr.getPublicKey();
|
||||
} catch (error) {
|
||||
document.querySelector('#rejected-nostr-nudges').style.display = 'block';
|
||||
return;
|
||||
}
|
||||
const event = {
|
||||
kind: 22242,
|
||||
created_at: Math.floor(Date.now() / 1000),
|
||||
tags: [['challenge', challenge]],
|
||||
content: 'Sign this challenge to authenticate',
|
||||
pubkey: pubkey,
|
||||
};
|
||||
|
||||
let signedEvent;
|
||||
try {
|
||||
signedEvent = await window.nostr.signEvent(event);
|
||||
} catch (error) {
|
||||
document.querySelector('#rejected-nostr-nudges').style.display = 'block';
|
||||
return;
|
||||
}
|
||||
|
||||
let verifyResponse;
|
||||
try {
|
||||
verifyResponse = await fetch('/api/signup/nostr-verify', {
|
||||
method: 'POST',
|
||||
headers: { 'Content-Type': 'application/json' },
|
||||
body: JSON.stringify(signedEvent),
|
||||
});
|
||||
} catch (error) {
|
||||
console.log(`Something went wrong: ${error}`);
|
||||
return;
|
||||
}
|
||||
|
||||
if (verifyResponse.ok) {
|
||||
showConfirmationAndRedirect();
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue