diff --git a/apps/desktop/src/routes/settings/about.tsx b/apps/desktop/src/routes/settings/about.tsx index a300d4bd..784eb1fe 100644 --- a/apps/desktop/src/routes/settings/about.tsx +++ b/apps/desktop/src/routes/settings/about.tsx @@ -1,76 +1,73 @@ -import { getVersion } from '@tauri-apps/api/app'; -import { relaunch } from '@tauri-apps/plugin-process'; -import { Update, check } from '@tauri-apps/plugin-updater'; -import { useEffect, useState } from 'react'; -import { Link } from 'react-router-dom'; -import { toast } from 'sonner'; +import { getVersion } from "@tauri-apps/api/app"; +import { relaunch } from "@tauri-apps/plugin-process"; +import { Update, check } from "@tauri-apps/plugin-updater"; +import { useEffect, useState } from "react"; +import { Link } from "react-router-dom"; +import { toast } from "sonner"; export function AboutScreen() { - const [version, setVersion] = useState(''); - const [newUpdate, setNewUpdate] = useState(null); + const [version, setVersion] = useState(""); + const [newUpdate, setNewUpdate] = useState(null); - const checkUpdate = async () => { - const update = await check(); - if (!update) toast.info('There is no update available'); - setNewUpdate(update); - }; + const checkUpdate = async () => { + const update = await check(); + if (!update) toast.info("There is no update available"); + setNewUpdate(update); + }; - const installUpdate = async () => { - await newUpdate.downloadAndInstall(); - await relaunch(); - }; + const installUpdate = async () => { + await newUpdate.downloadAndInstall(); + await relaunch(); + }; - useEffect(() => { - async function loadVersion() { - const appVersion = await getVersion(); - setVersion(appVersion); - } + useEffect(() => { + async function loadVersion() { + const appVersion = await getVersion(); + setVersion(appVersion); + } - loadVersion(); - }, []); + loadVersion(); + }, []); - return ( -
-
- Lume's logo -
-

Lume

-

- Version {version} -

-
-
-
- {!newUpdate ? ( - - ) : ( - - )} - - Website - - - Report a issue - -
-
- ); + return ( +
+
+

Lume

+

+ Version {version} +

+
+
+ {!newUpdate ? ( + + ) : ( + + )} + + Website + + + Report a issue + +
+
+ ); } diff --git a/apps/desktop/src/routes/settings/nwc.tsx b/apps/desktop/src/routes/settings/nwc.tsx index 7c135896..96e51be0 100644 --- a/apps/desktop/src/routes/settings/nwc.tsx +++ b/apps/desktop/src/routes/settings/nwc.tsx @@ -45,10 +45,10 @@ export function NWCScreen() {
-

+

Nostr Wallet Connect

-

+

Sending zap easily via Bitcoin Lightning.

diff --git a/packages/ark/src/ark.ts b/packages/ark/src/ark.ts index 61b3d11c..c092b641 100644 --- a/packages/ark/src/ark.ts +++ b/packages/ark/src/ark.ts @@ -109,6 +109,7 @@ export class Ark { .replace("nostr:", "") .split("'")[0] .split(".")[0] + .split(",")[0] .split("?")[0]; if ( diff --git a/packages/ark/src/components/note/primitives/repost.tsx b/packages/ark/src/components/note/primitives/repost.tsx index 9f3e6a38..041e23cc 100644 --- a/packages/ark/src/components/note/primitives/repost.tsx +++ b/packages/ark/src/components/note/primitives/repost.tsx @@ -99,7 +99,7 @@ export function RepostNote({
-
+
diff --git a/packages/ark/src/components/note/primitives/text.tsx b/packages/ark/src/components/note/primitives/text.tsx index d3c6efd5..75ae3ead 100644 --- a/packages/ark/src/components/note/primitives/text.tsx +++ b/packages/ark/src/components/note/primitives/text.tsx @@ -22,7 +22,7 @@ export function TextNote({
-
+
diff --git a/packages/ark/src/components/user/cover.tsx b/packages/ark/src/components/user/cover.tsx new file mode 100644 index 00000000..68101d52 --- /dev/null +++ b/packages/ark/src/components/user/cover.tsx @@ -0,0 +1,28 @@ +import { cn } from "@lume/utils"; +import { useUserContext } from "./provider"; + +export function UserCover({ className }: { className?: string }) { + const user = useUserContext(); + + if (!user) { + return ( +
+ ); + } + + return ( + banner + ); +} diff --git a/packages/ark/src/components/user/index.ts b/packages/ark/src/components/user/index.ts index 690be44c..749a7e23 100644 --- a/packages/ark/src/components/user/index.ts +++ b/packages/ark/src/components/user/index.ts @@ -1,5 +1,6 @@ import { UserAbout } from "./about"; import { UserAvatar } from "./avatar"; +import { UserCover } from "./cover"; import { UserFollowButton } from "./followButton"; import { UserName } from "./name"; import { UserNip05 } from "./nip05"; @@ -11,6 +12,7 @@ export const User = { Provider: UserProvider, Root: UserRoot, Avatar: UserAvatar, + Cover: UserCover, Name: UserName, NIP05: UserNip05, Time: UserTime, diff --git a/packages/ndk-cache-tauri/index.ts b/packages/ndk-cache-tauri/index.ts index 4e481bcc..b9996798 100644 --- a/packages/ndk-cache-tauri/index.ts +++ b/packages/ndk-cache-tauri/index.ts @@ -394,7 +394,7 @@ export class NDKCacheAdapterTauri implements NDKCacheAdapter { const events = await this.#storage.getCacheEvents(eventIds); for (const event of events) { - let rawEvent; + let rawEvent: NostrEvent; try { rawEvent = JSON.parse(event.event); diff --git a/packages/ui/src/account/active.tsx b/packages/ui/src/account/active.tsx index e47e03b1..d89559a6 100644 --- a/packages/ui/src/account/active.tsx +++ b/packages/ui/src/account/active.tsx @@ -24,7 +24,7 @@ export function ActiveAccount() { return ( -
+
- - - - - - - - Settings - - - - - - - ); -} diff --git a/packages/ui/src/index.ts b/packages/ui/src/index.ts index 17c21f07..03739e9d 100644 --- a/packages/ui/src/index.ts +++ b/packages/ui/src/index.ts @@ -1,9 +1,6 @@ export * from "./account/active"; export * from "./account/logout"; -export * from "./account/more"; export * from "./navigation"; -export * from "./nip05"; -export * from "./user"; export * from "./titlebar"; export * from "./layouts/app"; export * from "./layouts/auth"; @@ -15,3 +12,4 @@ export * from "./emptyFeed"; export * from "./routes/event"; export * from "./routes/user"; export * from "./translateRegisterModal"; +export * from "./user"; diff --git a/packages/ui/src/onboarding/finish.tsx b/packages/ui/src/onboarding/finish.tsx index 8d505373..e02ad9af 100644 --- a/packages/ui/src/onboarding/finish.tsx +++ b/packages/ui/src/onboarding/finish.tsx @@ -15,12 +15,7 @@ export function OnboardingFinishScreen() { const finish = async () => { setLoading(true); - const queryCache = queryClient.getQueryCache(); - const queryKeys = queryCache.getAll().map((cache) => cache.queryKey); - - for (const key of queryKeys) { - await queryClient.refetchQueries({ queryKey: key }); - } + await queryClient.refetchQueries({ queryKey: ["timeline-9999"] }); setLoading(false); setOnboarding(false); diff --git a/packages/ui/src/onboarding/follow.tsx b/packages/ui/src/onboarding/follow.tsx index 385bd52d..79771967 100644 --- a/packages/ui/src/onboarding/follow.tsx +++ b/packages/ui/src/onboarding/follow.tsx @@ -1,4 +1,4 @@ -import { useArk } from "@lume/ark"; +import { User, useArk } from "@lume/ark"; import { ArrowLeftIcon, CancelIcon, @@ -14,7 +14,6 @@ import { nip19 } from "nostr-tools"; import { useState } from "react"; import { useNavigate } from "react-router-dom"; import { toast } from "sonner"; -import { User } from "../user"; const POPULAR_USERS = [ "npub180cvv07tjdrrgpa0j7j7tmnyl2yr6yr7l8j4s3evf6u64th6gkwsyjh6w6", @@ -66,6 +65,7 @@ export function OnboardingFollowScreen() { const submit = async () => { try { setLoading(true); + if (!follows.length) return navigate("/finish"); const publish = await ark.newContactList({ @@ -118,7 +118,18 @@ export function OnboardingFollowScreen() { key={pubkey} className="flex h-max w-full shrink-0 flex-col my-3 gap-4 overflow-hidden rounded-lg bg-white dark:bg-black" > - + + + +
+ +
+ + +
+
+
+
+ UU
)) @@ -218,7 +241,18 @@ export function OnboardingFollowScreen() { key={pubkey} className="flex h-max w-full shrink-0 flex-col my-3 gap-4 overflow-hidden rounded-lg bg-white dark:bg-black" > - + + + +
+ +
+ + +
+
+
+