From 4bc0f1d51d3954e9ccde46cdaf176b7dac9ad325 Mon Sep 17 00:00:00 2001 From: Ren Amamiya <123083837+reyamir@users.noreply.github.com> Date: Fri, 24 Feb 2023 20:19:26 +0700 Subject: [PATCH] fixed import private key process --- .../[pubkey].tsx => fetch-follows.tsx} | 22 +++----------- .../[privkey].tsx => fetch-profile.tsx} | 29 ++++++------------- src/pages/onboarding/import.tsx | 8 +++-- 3 files changed, 18 insertions(+), 41 deletions(-) rename src/pages/onboarding/{follows/[pubkey].tsx => fetch-follows.tsx} (87%) rename src/pages/onboarding/{profile/[privkey].tsx => fetch-profile.tsx} (86%) diff --git a/src/pages/onboarding/follows/[pubkey].tsx b/src/pages/onboarding/fetch-follows.tsx similarity index 87% rename from src/pages/onboarding/follows/[pubkey].tsx rename to src/pages/onboarding/fetch-follows.tsx index 195c05d2..2088f7f2 100644 --- a/src/pages/onboarding/follows/[pubkey].tsx +++ b/src/pages/onboarding/fetch-follows.tsx @@ -3,7 +3,6 @@ import BaseLayout from '@layouts/baseLayout'; import OnboardingLayout from '@layouts/onboardingLayout'; import { motion } from 'framer-motion'; -import { GetStaticPaths } from 'next'; import { useRouter } from 'next/router'; import { useNostrEvents } from 'nostr-react'; import { @@ -16,11 +15,12 @@ import { } from 'react'; import Database from 'tauri-plugin-sql-api'; -export default function Page({ pubkey }: { pubkey: string }) { +export default function Page() { const [follows, setFollows] = useState([null]); const [loading, setLoading] = useState(false); const router = useRouter(); + const { pubkey }: any = router.query; const { onEvent } = useNostrEvents({ filter: { @@ -45,7 +45,7 @@ export default function Page({ pubkey }: { pubkey: string }) { follows.forEach(async (item) => { if (item) { await db.execute( - `INSERT INTO follows (pubkey, account) VALUES ("${item[1]}", "${pubkey}")` + `INSERT OR IGNORE INTO follows (pubkey, account) VALUES ("${item[1]}", "${pubkey}")` ); } }); @@ -56,7 +56,7 @@ export default function Page({ pubkey }: { pubkey: string }) { .then(() => { setTimeout(() => { setLoading(false); - router.push('/feed/following'); + router.push('/'); }, 1500); }) .catch(console.error); @@ -108,20 +108,6 @@ export default function Page({ pubkey }: { pubkey: string }) { ); } -export const getStaticPaths: GetStaticPaths = async () => { - return { - paths: [], - fallback: 'blocking', - }; -}; - -export async function getStaticProps(context) { - const pubkey = context.params.pubkey; - return { - props: { pubkey }, - }; -} - Page.getLayout = function getLayout( page: | string diff --git a/src/pages/onboarding/profile/[privkey].tsx b/src/pages/onboarding/fetch-profile.tsx similarity index 86% rename from src/pages/onboarding/profile/[privkey].tsx rename to src/pages/onboarding/fetch-profile.tsx index 2f9feab4..fc3c5d54 100644 --- a/src/pages/onboarding/profile/[privkey].tsx +++ b/src/pages/onboarding/fetch-profile.tsx @@ -3,7 +3,6 @@ import BaseLayout from '@layouts/baseLayout'; import OnboardingLayout from '@layouts/onboardingLayout'; import { motion } from 'framer-motion'; -import { GetStaticPaths } from 'next'; import { useRouter } from 'next/router'; import { useNostrEvents } from 'nostr-react'; import { getPublicKey, nip19 } from 'nostr-tools'; @@ -17,15 +16,16 @@ import { } from 'react'; import Database from 'tauri-plugin-sql-api'; -export default function Page({ privkey }: { privkey: string }) { +export default function Page() { const router = useRouter(); + const { privkey }: any = router.query; const [account, setAccount] = useState(null); const [loading, setLoading] = useState(false); - const pubkey = getPublicKey(privkey); - const npub = nip19.npubEncode(pubkey); - const nsec = nip19.nsecEncode(privkey); + const pubkey = privkey ? getPublicKey(privkey) : null; + const npub = privkey ? nip19.npubEncode(pubkey) : null; + const nsec = privkey ? nip19.nsecEncode(privkey) : null; const { onEvent } = useNostrEvents({ filter: { @@ -62,7 +62,10 @@ export default function Page({ privkey }: { privkey: string }) { .then(() => { setTimeout(() => { setLoading(false); - router.push(`/onboarding/follows/${pubkey}`); + router.push({ + pathname: '/onboarding/fetch-follows', + query: { pubkey: pubkey }, + }); }, 1500); }) .catch(console.error); @@ -114,20 +117,6 @@ export default function Page({ privkey }: { privkey: string }) { ); } -export const getStaticPaths: GetStaticPaths = async () => { - return { - paths: [], - fallback: 'blocking', - }; -}; - -export async function getStaticProps(context) { - const privkey = context.params.privkey; - return { - props: { privkey }, - }; -} - Page.getLayout = function getLayout( page: | string diff --git a/src/pages/onboarding/import.tsx b/src/pages/onboarding/import.tsx index 9bb12a9b..a3e9604b 100644 --- a/src/pages/onboarding/import.tsx +++ b/src/pages/onboarding/import.tsx @@ -43,9 +43,10 @@ export default function Page() { } try { - if (privkey) { - router.push(`/onboarding/profile/${privkey}`); - } + router.push({ + pathname: '/onboarding/fetch-profile', + query: { privkey: privkey }, + }); } catch (error) { setError('key', { type: 'custom', @@ -73,6 +74,7 @@ export default function Page() {