feat: polish

This commit is contained in:
2024-01-17 08:50:43 +07:00
parent 33dd8b1d8a
commit c29b4e173e
8 changed files with 60 additions and 49 deletions

View File

@@ -105,7 +105,11 @@ export class Ark {
public getCleanPubkey(pubkey: string) {
try {
let hexstring = pubkey.replace("nostr:", "").split("'")[0].split(".")[0];
let hexstring = pubkey
.replace("nostr:", "")
.split("'")[0]
.split(".")[0]
.split("?")[0];
if (
hexstring.startsWith("npub1") ||

View File

@@ -17,13 +17,10 @@ export function AvatarUploadButton({
setLoading(true);
const image = await ark.upload({ fileExts: [] });
if (image) {
setPicture(image);
setLoading(false);
}
return;
} catch (e) {
setLoading(false);
toast.error(e);
@@ -34,7 +31,7 @@ export function AvatarUploadButton({
<button
type="button"
onClick={() => uploadAvatar()}
className="inline-flex items-center justify-center rounded-lg border border-blue-200 bg-blue-100 px-2 py-1.5 text-sm font-medium text-blue-500 hover:border-blue-300 hover:bg-blue-200 dark:border-blue-800 dark:bg-blue-900 dark:text-blue-500 dark:hover:border-blue-800 dark:hover:bg-blue-800"
className="inline-flex items-center justify-center rounded-lg border border-blue-200 bg-blue-100 w-32 px-2 py-1.5 text-sm font-medium text-blue-500 hover:border-blue-300 hover:bg-blue-200 dark:border-blue-800 dark:bg-blue-900 dark:text-blue-500 dark:hover:border-blue-800 dark:hover:bg-blue-800"
>
{loading ? (
<LoaderIcon className="size-4 animate-spin" />

View File

@@ -17,7 +17,7 @@ export function AuthLayout({ platform }: { platform: Platform }) {
<div data-tauri-drag-region className="h-9 shrink-0" />
)}
<div className="relative w-full h-full">
<div className="absolute top-0 z-10 flex items-center justify-between w-full px-9">
<div className="absolute top-8 z-10 flex items-center justify-between w-full px-9">
{canGoBack ? (
<button
type="button"
@@ -29,9 +29,6 @@ export function AuthLayout({ platform }: { platform: Platform }) {
) : (
<div />
)}
<div className="inline-flex items-center justify-center rounded-lg size-10 bg-neutral-950 group hover:bg-neutral-900">
<SettingsIcon className="size-6 text-neutral-700 group-hover:text-neutral-500" />
</div>
</div>
<Outlet />
</div>

View File

@@ -7,7 +7,6 @@ import { useSetAtom } from "jotai";
import { useState } from "react";
export function OnboardingFinishScreen() {
const ark = useArk();
const queryClient = useQueryClient();
const setOnboarding = useSetAtom(onboardingAtom);
@@ -19,10 +18,6 @@ export function OnboardingFinishScreen() {
const queryCache = queryClient.getQueryCache();
const queryKeys = queryCache.getAll().map((cache) => cache.queryKey);
await queryClient.refetchQueries({
queryKey: ["user", ark.account.pubkey],
});
for (const key of queryKeys) {
await queryClient.refetchQueries({ queryKey: key });
}

View File

@@ -2,6 +2,7 @@ import { useArk } from "@lume/ark";
import { ArrowLeftIcon, LoaderIcon } from "@lume/icons";
import { useStorage } from "@lume/storage";
import { NDKKind, NDKUserProfile } from "@nostr-dev-kit/ndk";
import { useQueryClient } from "@tanstack/react-query";
import { motion } from "framer-motion";
import { minidenticon } from "minidenticons";
import { useState } from "react";
@@ -16,6 +17,7 @@ export function OnboardingProfileSettingsScreen() {
const ark = useArk();
const storage = useStorage();
const queryClient = useQueryClient();
const navigate = useNavigate();
const { register, handleSubmit } = useForm();
@@ -52,6 +54,12 @@ export function OnboardingProfileSettingsScreen() {
});
if (publish) {
// invalid cache
await storage.clearProfileCache(ark.account.pubkey);
await queryClient.setQueryData(["user", ark.account.pubkey], () => {
return profile;
});
setLoading(false);
navigate("/follow");
}