PresetNodeForm.tsx raw

   1  import { wordlist } from "@scure/bip39/wordlists/english.js";
   2  import { useEffect } from "react";
   3  import { useNavigate, useSearchParams } from "react-router";
   4  import useSetupStore from "src/state/SetupStore";
   5  
   6  import * as bip39 from "@scure/bip39";
   7  import Loading from "src/components/Loading";
   8  import { useInfo } from "src/hooks/useInfo";
   9  import { backendTypeConfigs } from "src/lib/backendType";
  10  
  11  export function PresetNodeForm() {
  12    const navigate = useNavigate();
  13    const [searchParams] = useSearchParams();
  14    const { data: info } = useInfo();
  15  
  16    // No configuration needed, automatically proceed with the next step
  17    useEffect(() => {
  18      if (!info) {
  19        return;
  20      }
  21      if (backendTypeConfigs[info.backendType].hasMnemonic) {
  22        useSetupStore.getState().updateNodeInfo({
  23          mnemonic: bip39.generateMnemonic(wordlist, 128),
  24        });
  25      }
  26  
  27      navigate("/setup/security", {
  28        replace: true,
  29      });
  30    }, [info, navigate, searchParams]);
  31  
  32    return (
  33      <>
  34        <title>Loading... ยท Alby Hub</title>
  35        <Loading />
  36      </>
  37    );
  38  }
  39