From bc072890fcc88cdd722ffa4ce45ac5c0ca31ca99 Mon Sep 17 00:00:00 2001 From: marshennikovaolga Date: Fri, 6 Sep 2024 12:27:35 +0300 Subject: [PATCH] profile in process --- bun.lockb | Bin 404512 -> 404520 bytes .../(pages)/profile/_components/wrapper.tsx | 175 +++++++++++------- .../sidebar/partial/profile-section.tsx | 72 +++---- web/lib/schema/index.ts | 9 +- 4 files changed, 152 insertions(+), 104 deletions(-) diff --git a/bun.lockb b/bun.lockb index 4c75131e3921a04ba524398d948dcd825d5f9727..b2cb3516c2f5bd60dedd32edef65fa5b4e6e73d2 100755 GIT binary patch delta 42515 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�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 Aq5uE@ diff --git a/web/app/(pages)/profile/_components/wrapper.tsx b/web/app/(pages)/profile/_components/wrapper.tsx index a8433c32..a236a42e 100644 --- a/web/app/(pages)/profile/_components/wrapper.tsx +++ b/web/app/(pages)/profile/_components/wrapper.tsx @@ -1,10 +1,11 @@ "use client" import { useAccount } from "@/lib/providers/jazz-provider" -import { useParams, useRouter } from "next/navigation" +import { useParams } from "next/navigation" +import { useState, useRef } from "react" +import { Avatar, AvatarImage, AvatarFallback } from "@/components/ui/avatar" +import { Input } from "@/components/ui/input" import Link from "next/link" -import { LaIcon } from "@/components/custom/la-icon" -import { Icon } from "@/components/la-editor/components/ui/icon" import { Button } from "@/components/ui/button" interface ProfileStatsProps { @@ -12,16 +13,6 @@ interface ProfileStatsProps { label: string } -interface ProfileLinksProps { - linklabel?: string - link?: string - topic?: string -} - -interface ProfilePagesProps { - topic?: string -} - const ProfileStats: React.FC = ({ number, label }) => { return (
@@ -31,37 +22,47 @@ const ProfileStats: React.FC = ({ number, label }) => { ) } -const ProfileLinks: React.FC = ({ linklabel, link, topic }) => { - return ( -
-
-

{linklabel || "Untitled"}

-
- -

{link || "#"}

-
-
-
{topic || "Uncategorized"}
-
- ) -} - -const ProfilePages: React.FC = ({ topic }) => { - return ( -
-
{topic || "Uncategorized"}
-
- ) -} - export const ProfileWrapper = () => { const account = useAccount() const params = useParams() const username = params.username as string + const avatarInputRef = useRef(null) - const router = useRouter() + const [isEditing, setIsEditing] = useState(false) + const [newName, setNewName] = useState(account.me?.profile?.name || "") + const [originalName, setOriginalName] = useState(account.me?.profile?.name || "") - const clickEdit = () => router.push("/edit-profile") + const editProfileClicked = () => { + setIsEditing(!isEditing) + } + + const changeName = (e: React.ChangeEvent) => { + setNewName(e.target.value) + } + + const saveProfile = () => { + if (newName.trim() !== "") { + if (account.me && account.me.profile) { + account.me.profile.name = newName.trim() + } + setOriginalName(newName.trim()) + setIsEditing(false) + } + } + + const clickOutside = () => { + if (isEditing) { + setNewName(originalName) + setIsEditing(false) + } + } + + const editAvatar = (event: React.ChangeEvent) => { + const file = event.target.files?.[0] + if (file) { + console.log("File selected:", file) + } + } if (!account.me || !account.me.profile) { return ( @@ -87,31 +88,36 @@ export const ProfileWrapper = () => {

Profile

-

{username}

-
+ + + avatarInputRef.current?.click()} className="cursor-pointer"> + {account.me?.profile?.name?.charAt(0)} + + + +
-

{account.me.profile.name}

-
- @

{account.me.root?.username}

-
- - -

{account.me.root?.website}

-
+ {isEditing ? ( + + ) : ( +

{account.me?.profile?.name}

+ )}
- +
@@ -121,17 +127,52 @@ export const ProfileWrapper = () => {
- - {/*
-

Public Pages

- {account.me.root?.personalPages?.map((page, index) => )} +
+

Public profiles are coming soon

-
-

Public Links

- {account.me.root?.personalLinks?.map((link, index) => ( - - ))} -
*/}
) } + +{ + // interface ProfileLinksProps { + // linklabel?: string + // link?: string + // topic?: string + // } + // interface ProfilePagesProps { + // topic?: string + // } + // const ProfileLinks: React.FC = ({ linklabel, link, topic }) => { + // return ( + //
+ //
+ //

{linklabel || "Untitled"}

+ //
+ // + //

{link || "#"}

+ //
+ //
+ //
{topic || "Uncategorized"}
+ //
+ // ) + // } + // const ProfilePages: React.FC = ({ topic }) => { + // return ( + //
+ //
{topic || "Uncategorized"}
+ //
+ // ) + // } + /* + +

{account.me.root?.website}

+
*/ + /* */ +} diff --git a/web/components/custom/sidebar/partial/profile-section.tsx b/web/components/custom/sidebar/partial/profile-section.tsx index df626468..68f6bc2c 100644 --- a/web/components/custom/sidebar/partial/profile-section.tsx +++ b/web/components/custom/sidebar/partial/profile-section.tsx @@ -1,7 +1,7 @@ +import { useAccount } from "@/lib/providers/jazz-provider" import { LaIcon } from "../../la-icon" import { useState } from "react" -import { Avatar, AvatarImage, AvatarFallback } from "@/components/ui/avatar" -import { Button } from "@/components/ui/button" +import { useAuth } from "@clerk/nextjs" import { DropdownMenu, DropdownMenuContent, @@ -9,9 +9,8 @@ import { DropdownMenuSeparator, DropdownMenuTrigger } from "@/components/ui/dropdown-menu" -import { useAccount } from "@/lib/providers/jazz-provider" +import { Avatar, AvatarImage } from "@/components/ui/avatar" import Link from "next/link" -import { useAuth } from "@clerk/nextjs" const MenuItem = ({ icon, @@ -52,7 +51,7 @@ export const ProfileSection: React.FC = () => { const { me } = useAccount({ profile: true }) - const { signOut } = useAuth() + const { signOut, isSignedIn } = useAuth() const [menuOpen, setMenuOpen] = useState(false) const closeMenu = () => setMenuOpen(false) @@ -67,11 +66,16 @@ export const ProfileSection: React.FC = () => { aria-label="Profile" className="hover:bg-accent focus-visible:ring-ring hover:text-accent-foreground flex items-center gap-1.5 truncate rounded pl-1 pr-1.5 focus-visible:outline-none focus-visible:ring-1" > - - - {/* CN */} - - {me?.profile?.name} + {isSignedIn ? ( + + + + ) : ( + + )} + + {isSignedIn ? me?.profile?.name : "guest"} + { - - - - - - - - - - - - - - + {isSignedIn ? ( + <> + + + + + + + + + + + + + ) : ( + + + + )}
- {/*
-
- - - - -
*/}
) } + +/* + + */ diff --git a/web/lib/schema/index.ts b/web/lib/schema/index.ts index c0a29f54..3ba49c10 100644 --- a/web/lib/schema/index.ts +++ b/web/lib/schema/index.ts @@ -13,6 +13,11 @@ import { PersonalPageLists } from "./personal-page" import { PersonalLinkLists } from "./personal-link" import { ListOfTopics } from "./master/topic" +declare module "jazz-tools" { + interface Profile { + avatarUrl?: string + } +} export class UserRoot extends CoMap { name = co.string username = co.string @@ -33,7 +38,7 @@ export class LaAccount extends Account { profile = co.ref(Profile) root = co.ref(UserRoot) - migrate(this: LaAccount, creationProps?: { name: string }) { + migrate(this: LaAccount, creationProps?: { name: string; avatarUrl?: string }) { // since we dont have a custom AuthProvider yet. // and still using the DemoAuth. the creationProps will only accept name. // so just do default profile create provided by jazz-tools @@ -46,7 +51,7 @@ export class LaAccount extends Account { { name: creationProps.name, username: creationProps.name, - avatar: "", + avatar: creationProps.avatarUrl || "", website: "", bio: "", is_public: false,