Feat:Improve profile notifications and social login consistency#3817
Open
SebasianDev wants to merge 23 commits intoava-labs:masterfrom
Open
Feat:Improve profile notifications and social login consistency#3817SebasianDev wants to merge 23 commits intoava-labs:masterfrom
SebasianDev wants to merge 23 commits intoava-labs:masterfrom
Conversation
…and improve accessibility text
…dling and response updates
… into voyager-ship/stabilization
|
@SebasianDev is attempting to deploy a commit to the Ava Labs Team on Vercel. A member of the Team first needs to authorize it. |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
… into voyager-ship/stabilization
…te into profile components - Updated `ProfileHeader` to display the completion percentage around the avatar.
… across multiple components
…loading experience
- Implemented key-value input fields for website and social links in the project submission step.
…rsistence - Added functionality to prefill registration step 1 fields from user profile data. - Implemented saving of step 1 fields back to the user profile upon form submission or navigation. - Updated email input to be read-only and styled for better user experience.
…ility and styling with a background overlay and adjusted layout for better visual presentation.
…or optional fields
…ofile tabs and projects
server/services/submitProject.ts
Outdated
| categories: normalizeCategories(projectData.categories), | ||
| other_category: projectData.other_category ?? null, | ||
| deployed_addresses: normalizeDeployedAddresses(projectData.deployed_addresses), | ||
| website: (projectData.website && typeof projectData.website === 'object' && !Array.isArray(projectData.website) && Object.keys(projectData.website).length > 0) |
Contributor
There was a problem hiding this comment.
I think it's better to build something like:
const isNonEmptyObject = (value: unknown): value is Record<string, unknown> => {
return (
typeof value === 'object' &&
value !== null &&
!Array.isArray(value) &&
Object.keys(value).length > 0
);
};
website: isNonEmptyObject(projectData.website)
? projectData.website
: Prisma.JsonNull,
socials: isNonEmptyObject(projectData.socials)
? projectData.socials
: Prisma.JsonNull,
… into voyager-ship/stabilization
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
🔔 Profile Notifications
Improved and enhanced notification settings management.
Better handling of user preferences and state updates.
🏆 Project Winner Setup
Enhanced winner-setting logic.
Added proper error handling and updated API responses for clearer outcomes.
🔐 Social Login
Updated social media provider naming from X to twitter for consistency.
Features
✨ Enhance registration form with profile integration and field persistence
✨ Integrate UserAvatarContext for avatar management across components
✨ Add website and socials fields to project submission form
✨ Implement profile completion percentage and integrate into profile components
Fixes
🐛 Update profile form label from "City of Residence" to "Country"
🐛 Update wallet label in profile to specify EVM Wallet
🐛 Improve WalletConnectButton to use a stable account request method
Refactors
♻️ Update form validation mode to onChange in profile setup and hooks
♻️ Enforce name validation in profile and registration forms
♻️ Improve ProfileHeader avatar section (accessibility, overlay, layout)
♻️ Streamline image handling in reward components and loading experience
♻️ Replace auth redirection with login modal trigger across components
♻️ Update styling for layout and text wrapping (Tailwind canonical classes)