From 789476c677f05a44d15d27e7a0b5114092bbc6bf Mon Sep 17 00:00:00 2001 From: Martti Malmi Date: Wed, 27 Dec 2023 15:06:17 +0200 Subject: [PATCH] NostrLink initialState --- packages/app/src/Pages/Layout/Header.tsx | 20 ++++++++++---------- packages/app/src/Pages/NostrLinkHandler.tsx | 2 +- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/app/src/Pages/Layout/Header.tsx b/packages/app/src/Pages/Layout/Header.tsx index f6e967ac..b6440fca 100644 --- a/packages/app/src/Pages/Layout/Header.tsx +++ b/packages/app/src/Pages/Layout/Header.tsx @@ -1,5 +1,5 @@ import { useLocation, useNavigate } from "react-router-dom"; -import React, { useCallback, useEffect, useMemo, useState } from "react"; +import React, { useCallback, useMemo } from "react"; import classNames from "classnames"; import { LogoHeader } from "@/Pages/Layout/LogoHeader"; import { rootTabItems, RootTabs } from "@/Element/Feed/RootTabs"; @@ -16,7 +16,15 @@ export function Header() { const navigate = useNavigate(); const location = useLocation(); const pageName = decodeURIComponent(location.pathname.split("/")[1]); - const [nostrLink, setNostrLink] = useState(); + + const nostrLink = useMemo(() => { + try { + return parseNostrLink(pageName); + } catch (e) { + return undefined; + } + }, [pageName]); + const { publicKey, tags } = useLogin(); const isRootTab = useMemo(() => { @@ -27,14 +35,6 @@ export function Header() { window.scrollTo({ top: 0, behavior: "instant" }); }, []); - useEffect(() => { - try { - setNostrLink(parseNostrLink(pageName)); - } catch (e) { - setNostrLink(undefined); - } - }, [pageName]); - const handleBackButtonClick = () => { const idx = window.history.state?.idx; if (idx === undefined || idx > 0) { diff --git a/packages/app/src/Pages/NostrLinkHandler.tsx b/packages/app/src/Pages/NostrLinkHandler.tsx index 2edd428f..91bccaee 100644 --- a/packages/app/src/Pages/NostrLinkHandler.tsx +++ b/packages/app/src/Pages/NostrLinkHandler.tsx @@ -12,7 +12,7 @@ export default function NostrLinkHandler() { const { state } = useLocation(); const { link } = useParams(); - const determineInitialComponent = (link) => { + const determineInitialComponent = link => { const nav = tryParseNostrLink(link); if (nav) { switch (nav.type) {