Merge branch 'nostr-onboarding' into 'main'

Display the onboarding flow to new Nostr users

See merge request soapbox-pub/soapbox!3088
environments/review-main-yi2y9f/deployments/4756
Alex Gleason 1 month ago
commit 72ffcae99e

@ -2,11 +2,12 @@ import { RootState, type AppDispatch } from 'soapbox/store';
import { authLoggedIn, verifyCredentials } from './auth';
import { obtainOAuthToken } from './oauth';
import { startOnboarding } from './onboarding';
const NOSTR_PUBKEY_SET = 'NOSTR_PUBKEY_SET';
/** Log in with a Nostr pubkey. */
function logInNostr(pubkey: string) {
function logInNostr(pubkey: string, onboard = false) {
return async (dispatch: AppDispatch, getState: () => RootState) => {
dispatch(setNostrPubkey(pubkey));
@ -27,6 +28,10 @@ function logInNostr(pubkey: string) {
secret,
}));
if (onboard) {
dispatch(startOnboarding());
}
dispatch(setNostrPubkey(undefined));
const { access_token } = dispatch(authLoggedIn(token));

@ -45,7 +45,7 @@ const OnboardingWizard = () => {
<SuggestedAccountsStep onNext={handleNextStep} />,
];
if (features.federating){
if (features.federating && !features.nostr) {
steps.push(<FediverseStep onNext={handleNextStep} />);
}

@ -43,7 +43,7 @@ const KeygenStep: React.FC<IKeygenStep> = ({ onClose }) => {
const handleNext = async () => {
const signer = NKeys.add(secretKey);
const pubkey = await signer.getPublicKey();
dispatch(logInNostr(pubkey));
dispatch(logInNostr(pubkey, true));
onClose();
};

Loading…
Cancel
Save