Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement EditProfile container #1427

Merged

Conversation

dominik-stumpf
Copy link
Contributor

No description provided.

Copy link

vercel bot commented Aug 1, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
guild-xyz ✅ Ready (Inspect) Visit Preview 💬 Add feedback Aug 8, 2024 3:20pm
1 Skipped Deployment
Name Status Preview Comments Updated (UTC)
guild-xyz-storybook ⬜️ Ignored (Inspect) Aug 8, 2024 3:20pm

@dominik-stumpf dominik-stumpf marked this pull request as ready for review August 8, 2024 15:17
@dominik-stumpf dominik-stumpf merged commit eb7978e into implement-profile-presentation Aug 8, 2024
3 of 4 checks passed
@dominik-stumpf dominik-stumpf deleted the implement-edit-profile-container branch August 8, 2024 15:18
dominik-stumpf added a commit that referenced this pull request Aug 16, 2024
* feat: add chart and start profile page

* chore: build up profile main section

* chore: adjust css to design

* chore: add mobile view

* feat: add contribution card

* chore: position xp radial chart correctly

* feat: improve contribution card view

* chore: add RecentActivity

* chore: replace xp by badge

* chore: move PageContainer into Layout

* chore: add customizability to Layout components

* test: update stories

* chore: remove lucide-react dep

* feat: add bg to circle xp bar

* feat: try filling user data

* chore: remove providers and account

* chore: fine tune CircularProgressBar

* feat: try adding compoundVariants to Toggle

* feat: add LevelPolygon

* chore: add back profile fetching

* chore: finish toggle color config

* fix: address toggle type errors

* Revert "fix: address toggle type errors"

This reverts commit e82fbc8.

* Revert "chore: finish toggle color config"

This reverts commit 913e436.

* feat: improve toggle variants

* chore: adjust spacing and remove placeholder desc

* feat: add LevelBadge

* feat: start editprofile

* refactor(css): redo profile summary

* refactor(css): improve contribution cards

* Revert "chore: remove providers and account"

This reverts commit 2c28453.

* feat: add OperatedGuildCard

* chore: add EditProfile

* feat: finish EditProfile presentation

* chore: adjust spacing in EditProfile

* fix: spread props

* feat: add delete profile view

* feat: add EditContributions

* refactor: remove cartesian grid from ActivityChart

* refactor: reduce spacing on CheckMark

* feat(LayoutFooter): accept children

* fix: remove shadow from LevelBadge

* fix(css): adjust styles

* fix(css): add padding to OperatedGuildCard

* fix(css): adjust styles to design

* chore: move profile to csr only temporarily

* UI(EditContributions): smaller button

* UI(EditProfile): adjust borders

* UI(Dialog): default footer styles

* cleanup: move const out of render function

* remove rechart & Experience section

* UI: make borders muted

* OperatedGuildCard components

* chore: remove xp metagame related components

* implement contribution container (#1430)

* feat: add useContribution

* feat: update contribution card

* chore: add EditContribution

* feat: add select contribution

* feat: add edit contribution

* chore: try adding EditContributionCard container

* feat: add image to select items

* chore: align select item padding with input

* chore: start adding swr smaller fetches

* feat: add delete update and create contribution

* feat: add create new contribution

* feat: cover contribution CRUD

* chore: remove revalidation from swr fetches

* feat: add delete loader and validation

* refactor: select placeholder fix, remove comments

* refactor: remove useAllUserRoles.tsx

* chore: use GuildLabel on ContributionCardView

* UI(OperatedGuildCard): light mode

* Implement `EditProfile` container (#1427)

* feat: add delete profile hook

* feat: add profile editing

* fix: update Header import

* chore: remove sfx from confetti

* fix: update jotai type

* chore: add comment to assertion

* chore: add ts path alias for @app dir

* refactor: apply write-check

* feat: remove profile atom and add swr hooks

* feat: add ssr to page

* feat: add profile owner guard

* feat: add ssr with swr fallback

* feat: add ssr with swr fallback for guild and role

* chore: add note why use constant api url

* chore: resolve schema errors in profile update

* refactor: revalidate on profile deletion

* UI(Avatar): smaller more count text

* add FeaturedIcon to OperatedGuildCard

* chore: break profile name and remove caretdown

* fix(CardWithGuildLabel): label in light mode

* chore: add card behind edit profile

* feat: add not found page

* feat: add color picker

* refactor: redirect to error and fetch per guild

* add optimistic update for edit contributions and profile (#1438)

* refactor: redirect to error and fetch per guild

* feat: add optimistic update to contributions

* feat: finish update contribution and polish

* feat: add optimistic update to profile

* chore: rename revalidateContribution and fix type error

* feat: memoize profile guard

* static banner style base

* UI: layout & responsivity impros

* SectionTitle component & md size on mobile

* UI(OperatedGuildCard): responsivity impros

* chore: add bg to CardWithGuildLabel

* UI(ContributionCard): responsivity impros

* update to new types package & change profileId to userId

* UI(EditProfile): subtle border for images too

* update to new types package

* feat: working color theming

* fix(ProfileColorPicker): dynamic icon color

* UI(EditProfile): inside scroll in modal

* refactor(EditProfile): batch components

* feat: background image

* fix: address client side error and remove type assertions

* feat: add referred users

* chore: switch to dev backend, cache activities

* cleanup chart colors

* refactor: use backend schemas

* fix: broken banner styles

---------

Co-authored-by: BrickheadJohnny <[email protected]>
Co-authored-by: valid <[email protected]>
dominik-stumpf added a commit that referenced this pull request Sep 12, 2024
* feat: add marketing pages

* chore: strip layout and Header

This commit is to be reverted, stripping happens for faster compilations
on dev server

* feat: add GuilPassInvite

* feat: add GuildPassInvite

* feat: add threejs

* chore: fine tune carousel

* feat: add CarouselDotButton

* chore: rename hook

* fix: update CarouselDotButton type

* chore: remove margin bottom from canvas

* chore: ignore unknown error

* chore: add tooltip provider to layout

* chore: attempt to merge picker and checkout card

* fix: correctly update the picked pass

* chore: finish picker view

* chore: add bold to chosen pass

* feat: rename modals, add start profile

* chore: resize icon, add input inside label

* chore: add manual control over progression

* chore: spacing fix

* chore: adjust StartProfile spacing

* chore(css): adjust to design

* chore: change button to ghost

* fix: disallow empty changes on toggle button

* chore: change avatar bg

* feat: add keyboard navigation

* chore: update to external changes

* upgrade package-lock

* fix: change banner color in dark mode

* cleanup: remove unused atom

* cleanup(Carousel): remove `* as React` imports for consistency

* fix: adjust card sizes

* feat: add purcase success effect

* chore: remove focus from button

* chore: remove hover effect on selected pass

* fix: make text selectable

* fix: remove shadon, update Layout

* chore: fix invalid tailwind class

* chore: add missed cn call to Layout

* chore: add basic logic to driver

* chore: disable autoplay on dot button click

* feat: add driver logic

* chore: rename data to chainData

* fix: spread prev value too

* fix(ChoosePass): disable autoplay & start from the 2nd slide

* fix: rename type

* feat: add emoji images

* revert: add layout and header back

* chore: remove accidental line terminator

* wip: prepare components for animations

* feat: add farcaster button

* chore: reposition driver buttons

* feat: add destructive to button and required to label

* feat: add container to StartProfile (#1411)

* feat: add container to StartProfile

* feat: add avatar to form

* feat: add avatar upload and error message

* feat: add confetti effect on create profile

* feat: add sfx to confetti

* feat: add farcaster autofill, fix submit by avatar

* docs: rename credits file

* feat: redirect on profile creation

* chore: replace route instead push

* fix: address farcaster linking

* chore: update zod message

* fix: make avatar size properly image, disable

* fix: align code to suggestions

* feat: reset onboarding if not signed in

* chore: rename handle to username

* chore: replace local profile types

* refactor: move profileSchema into validations

* chore: remove walletselectormodal popup

* fix(turbopack): avoid server relative imports

* fix: add absolute path to confetti sfx

* fix: align carousel dots to center

* UI(Benefits): sizing & whitespace refinements

* fix(ConnectFarcasterButton): icon alignment

* chore: fix types and farcaster image

* refactor: use backend schemas

* feat: add models to `/create-profile` scenes (#1441)

* feat: add models to scene

* refactor: use backend schemas

* chore: compress guild pass models

* Implement `/profile` presentation and container (#1403)

* feat: add chart and start profile page

* chore: build up profile main section

* chore: adjust css to design

* chore: add mobile view

* feat: add contribution card

* chore: position xp radial chart correctly

* feat: improve contribution card view

* chore: add RecentActivity

* chore: replace xp by badge

* chore: move PageContainer into Layout

* chore: add customizability to Layout components

* test: update stories

* chore: remove lucide-react dep

* feat: add bg to circle xp bar

* feat: try filling user data

* chore: remove providers and account

* chore: fine tune CircularProgressBar

* feat: try adding compoundVariants to Toggle

* feat: add LevelPolygon

* chore: add back profile fetching

* chore: finish toggle color config

* fix: address toggle type errors

* Revert "fix: address toggle type errors"

This reverts commit e82fbc8.

* Revert "chore: finish toggle color config"

This reverts commit 913e436.

* feat: improve toggle variants

* chore: adjust spacing and remove placeholder desc

* feat: add LevelBadge

* feat: start editprofile

* refactor(css): redo profile summary

* refactor(css): improve contribution cards

* Revert "chore: remove providers and account"

This reverts commit 2c28453.

* feat: add OperatedGuildCard

* chore: add EditProfile

* feat: finish EditProfile presentation

* chore: adjust spacing in EditProfile

* fix: spread props

* feat: add delete profile view

* feat: add EditContributions

* refactor: remove cartesian grid from ActivityChart

* refactor: reduce spacing on CheckMark

* feat(LayoutFooter): accept children

* fix: remove shadow from LevelBadge

* fix(css): adjust styles

* fix(css): add padding to OperatedGuildCard

* fix(css): adjust styles to design

* chore: move profile to csr only temporarily

* UI(EditContributions): smaller button

* UI(EditProfile): adjust borders

* UI(Dialog): default footer styles

* cleanup: move const out of render function

* remove rechart & Experience section

* UI: make borders muted

* OperatedGuildCard components

* chore: remove xp metagame related components

* implement contribution container (#1430)

* feat: add useContribution

* feat: update contribution card

* chore: add EditContribution

* feat: add select contribution

* feat: add edit contribution

* chore: try adding EditContributionCard container

* feat: add image to select items

* chore: align select item padding with input

* chore: start adding swr smaller fetches

* feat: add delete update and create contribution

* feat: add create new contribution

* feat: cover contribution CRUD

* chore: remove revalidation from swr fetches

* feat: add delete loader and validation

* refactor: select placeholder fix, remove comments

* refactor: remove useAllUserRoles.tsx

* chore: use GuildLabel on ContributionCardView

* UI(OperatedGuildCard): light mode

* Implement `EditProfile` container (#1427)

* feat: add delete profile hook

* feat: add profile editing

* fix: update Header import

* chore: remove sfx from confetti

* fix: update jotai type

* chore: add comment to assertion

* chore: add ts path alias for @app dir

* refactor: apply write-check

* feat: remove profile atom and add swr hooks

* feat: add ssr to page

* feat: add profile owner guard

* feat: add ssr with swr fallback

* feat: add ssr with swr fallback for guild and role

* chore: add note why use constant api url

* chore: resolve schema errors in profile update

* refactor: revalidate on profile deletion

* UI(Avatar): smaller more count text

* add FeaturedIcon to OperatedGuildCard

* chore: break profile name and remove caretdown

* fix(CardWithGuildLabel): label in light mode

* chore: add card behind edit profile

* feat: add not found page

* feat: add color picker

* refactor: redirect to error and fetch per guild

* add optimistic update for edit contributions and profile (#1438)

* refactor: redirect to error and fetch per guild

* feat: add optimistic update to contributions

* feat: finish update contribution and polish

* feat: add optimistic update to profile

* chore: rename revalidateContribution and fix type error

* feat: memoize profile guard

* static banner style base

* UI: layout & responsivity impros

* SectionTitle component & md size on mobile

* UI(OperatedGuildCard): responsivity impros

* chore: add bg to CardWithGuildLabel

* UI(ContributionCard): responsivity impros

* update to new types package & change profileId to userId

* UI(EditProfile): subtle border for images too

* update to new types package

* feat: working color theming

* fix(ProfileColorPicker): dynamic icon color

* UI(EditProfile): inside scroll in modal

* refactor(EditProfile): batch components

* feat: background image

* fix: address client side error and remove type assertions

* feat: add referred users

* chore: switch to dev backend, cache activities

* cleanup chart colors

* refactor: use backend schemas

* fix: broken banner styles

---------

Co-authored-by: BrickheadJohnny <[email protected]>
Co-authored-by: valid <[email protected]>

* chore: remove old activity endpoint

* chore: extract OperatedGuildCard

* Remake `/create-profile` driver with referrer (#1445)

* feat: add referred users to claim pass

* fix: prevent render loop

* chore: try adding wizard form with history

* feat: add auth wall

* feat: add onboarding flow restrictions

* chore: remove subscription logic

* chore: clean up comments and unused file

* chore: remove unused comments in ClaimPass

* chore: add margin top to form description

* chore: remove unused variables

* fix: omit referredUserId from schema

* chore: exclude subscription features

* chore: improve auth wall page design

* chore: add short profile intro

* Revert "chore: exclude subscription features" (#1446)

This reverts commit 56e64e8.

* UI impros, use layout from create-guild

* chore: add select component back

* chore: remove auth guard paragraph

* chore: add todo to profile creation

* fix(css): move card compound layout into create-profile

* Revert "chore: remove auth guard paragraph"

This reverts commit 8fd993d.

* chore: adjust spacing on auth guard

* feat: add username validation onBlur

* fix: add default referrer to submit

* fix: avoid error retry for invite link

* fix: prevent invalid user submit

* refactor: rename chain to createProfile

* fix: put router call into useEffect

* feat: sustain invite link on AuthWall

* fix: add Suspense to searchParams calls

* Revert "fix: add Suspense to searchParams calls"

This reverts commit 2fc759b.

* chore: move suspense out to layout

---------

Co-authored-by: valid <[email protected]>

* feat: add empty cards for contribution (#1447)

* CardWithGuildLabel: handle light colors

* refactor: extract ProfileHero component

* UI: make hero section the same in light mode as in dark mode

* fix: prevent NaN on contribution card

* fix(ProfileHero): referredUsers fallback

* automatic banner height with css, smaller edit btn on mobile, whitespace impros, simplifications

* feat: implement account modal for profile (#1429)

* feat: implement account modal for profile

* chore: center align CheckMark

* chore: replace account name placeholder

* separate NetworkIndicator component and add to profile popover too

* UI(AccountModal): profile section refinements

* chore: remove xp and payment feature

---------

Co-authored-by: valid <[email protected]>

* chore: update useDeleteProfile redirect

* chore: remove subscription logic

* chore: truncate and fallback account usernames

* fix: load empty card on 0 len, slice contribution

* ProfileColorBanner: remove legacy comment

* add join profile action card (#1451)

* feat: add join profile action card

* feat: add mountain icon and restrict card popup

* chore: prevent pointer event overlay

* chore: add activity log with filter (#1450)

* chore: add activity log with filter

* feat: add more actions, remove unused code

* chore: add refer profile and guild fallback

* chore: add spacing above RecentActivity

* chore: update outdated footer text

* chore: add key to activity skeleton

* chore: add color support for guild activity

* fix: remove accidental catch chain

* UI(create-guild): impros, use layout from create-guild (lost changes during merge)

* fix(GuildLabel): color in dark mode for guilds without theme color

* feat: add fallback image and name to profile

* refactor: move related activity files to RecentActivity folder

* UI(RecentActivity): refinements

* feat(RecentActivity): handle no actions / less than 20 actions cases

* feat(RecentActivity): add fallback when wallet is not connected

* fix: prevent falsy userId when updating profile

* fix(RecentActivity): >= 20 condition

* RecentActivity: filter actions

* RecentActivity: remove last month filter

* RecentActivity: show reward badges

* fix(RoleBadge): deleted state instead of infinite loading state

* remove duplicated guild badges (temporarily comment out)

* fix(BadgeSkeleton): layout shift

* RecentActivity: SendReward to GetReward

* chore: rename ActionLabel to ProfileActionLabel & add comment about it

* remove duplicated ACTION enum, add profile icons (for personal activity log)

* filter types to match the scope of the current design

* chore: round down numbers if possible in contribution

* chore: remove farcaster follower view from hero

* chore: add line clamp to edit contribution

* chore: remove GuildPass from ClaimPass

* fix: prevent hydration error and AuthWall flicker

* feat: add relevant metadata to page

* chore: clarify profile title metadata

* chore: clarify profile footer paragraph

* fix: avoid JoinProfileAction flash popup

* chore: add priority to profileBackgroundUrl

* chore: prevent flash on Account

* refactor: rename createprofile function

* chore: revalidate user on createProfile

* chore: back to prod backend

* update to new types package

* feat(StartProfile): set default color by profile pic automatically

* feat(CardWithGuildLabel): add hover title to view full name

* chore: rename claim-pass to prompt-referrer

* chore: revalidate user on edit profile

* fix: allow mixed cased username, filter lego route better

* fix(ActivityCard): text color for guilds without color

* feat: RewardBadges

* feat: reset form on EditContribution Add

* chore: add referred users to swr cache

* chore: put revalidate tag on referred users

* fix: revalidate user on profile delete, enlongate loading on start profile

* chore: add loading state to delete profile button

* fix(css): add overflow hidden to Account card skeleton

* chore: add referred users type

* chore: revalidate contributions, cleanup start profile route
when a profile was deleted, the contribution cache remained and caused bugs on the new profile

* Add farcaster follower and relevant follower integration to `/profile` (#1455)

* chore: try adding farcaster integration

* feat: refine ProfileHero

* chore: put revalidate tag on fc profile

* refactor: move logic to ProfileSocialCounters component

* refactor: SocialCountTile

* refactor: rename variables and add docs, fallback if referred is not defined

* refactor: farcaster hooks

* UI: remove divider on small screens

* adjust referredUsers condition

---------

Co-authored-by: valid <[email protected]>

* fix(RewardBadge): reward types with primitive colorSchemes

* UI(AccountModal): margin refinement & use correct Button component

* fix(ProfileBackgroundImageUploader): error toast

* feat(ProfileBackgroundUploader): add tooltip

* fix: replace next image with regular img

* fix: remove size param

* chore: replace next image with image on editprofile

* fix: add types to neynar responses, DisplayableUser

* chore: add error message for relevant followers

* chore: add "Only " just below 18 percent

* extract EditProfilePicture to separate component

* feat(EditProfilePicture): upload feedback, error handling

* feat(EditProfile): handle saving while still uploading images
& simplification

* cleanup: delete profile loading logic

* chore: add object cover to avatar on StartProfile

* copy(PromptReferrer): remove description & adjust helper text

* copy(useDeleteProfile): add "redirecting to..." description

* feat: add farcaster autofill on editprofile, move delete profile (#1466)

* feat: add farcaster autofill on editprofile, move delete profile

* extract to separate EditProfileDropdown component

* UI improvements

* remove modal inside scroll and relevant styling

* add back delete loading state

---------

Co-authored-by: valid <[email protected]>

* feat: set auto background color by farcaster image too

* refactor: EditProfilePicture on StartProfile too

* cleanup: remove custom error handling that's already abstracted in usePinata

* UI fix(create-profile): banner radial fade

* feat(StartProfile): handle saving while still uploading image

* cleanup: remove console log

* UI(CreateProfileSkeleton): decrease height

* UI(create-profile): size lg inputs & buttons

* fix(create-profile): correct card width on mobile for every step

* fix(create-profile): correct card width for "sign in" step too

* chore: use ui AvatarFallback

* chore: add unique tags onto profile ssr requests

* fix: remove quotes from fc relevant followers, size AvatarGroup image

* move farcaster avatars to pinata (#1469)

* feat: move farcaster avatars to pinata on profile update

* chore: restrict submit when uploading image

* feat: upload farcaster image to IPFS in EditProfile

* feat(EditProfilePicture): show spinner if progress is not available

* refactor: extract image uploader

* refactor: exclude not required fields

* chore: rename uploader

* cleanup(StartProfile): remove unnecessary loading condition
isUploadingShown already handles it, avoiding confusion about why the button might be disabled

---------

Co-authored-by: valid <[email protected]>

* chore: hide AccountModal on profile visit

* Add contribution collection to `/profile`, improve card (#1454)

* feat: add collection and checkmark

* chore: add extended collection

* fix: add line clamp to edit contribution select

* feat: add point image to contribution

* fix: show cards if no point is received

* feat: add points text and leaderboard ranking

* chore: copy static folder to public

* chore: render contribution card if no collection is present

* feat: add nft to collection

* feat: add pins

* refactor: cleanup collection

* fix: remove checkmark, allow longer label

* feat: add tooltip to collection

* fix: prevent wrap on points text

* chore: remove NFT from tooltip

* chore: remove src/static dir duplication

* chore: polish borders

* chore: add border to AvatarGroup

* chore: truncate relevant followers and balance text

* fix: dont revalidate all profile and contribution

* feat: add guildmate skeleton

* fix: revalidate profile properly on username update

* fix: only send dirty values from profile update + a11y

* chore: adjust social counter max width

* Revert "chore: adjust social counter max width"

This reverts commit 053dd7a.

* chore: ease social counter inner max width

* fix: prevent double file explorer popup on bg upload

* refactor: remove userId filter on RecentActivity

* fix: farcaster others pluralize + more space

* fix: farcaster others pluralize + more space

* chore: reapply userid filter to RecentActivity

* feat: add "Just now" if event is 0 minutes ago

* add xp metagame to profile (#1473)

* feat: add progress bar and polygon

* feat: implement xp ranking, leveling logic

* chore: remove console.log

* feat: add xp to activity card, refactor xp system

* feat: add xp to activity card, refactor xp system

* fix: cache experiences count on server

* feat: add xp to Account and AccountModal

* fix(a11y): add dialog description to modal

* UI(ActivityCard): move XP to the right in gold

* feat: add activity chart

* feat: add tooltip to chart

* UI(ProfileHero): avatar level indicator refinements

* feat: style tooltip and group xp entries

* chore: adjust barchart size

* fix: size experience card with badge

* refactor: resize RewardBadge

* refactor: add progress ui component

* fix: assign rank properly on profile

* chore: floor levels for simplicity

* chore: revalidate experiences every 20 min

* fix: Experience & Top contributions title colors in light mode

* UI: whitespace refinement

* chore: add fallback to activity chart

* UI(experiences): impros/fixes

* fix: reorder useEffect calls, adjust startTime

* UI: account modal & progress refinements

* cleanup(LevelBadge): duplicated text style

* copy(ActivityChart): fallback fix

* ActivityChart batching / fallback rendering impro

---------

Co-authored-by: valid <[email protected]>

* fix: start counting avatar from 1

---------

Co-authored-by: BrickheadJohnny <[email protected]>
Co-authored-by: valid <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant