-
Notifications
You must be signed in to change notification settings - Fork 14
Profile screens #26
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
Merged
Merged
Profile screens #26
Changes from all commits
Commits
Show all changes
24 commits
Select commit
Hold shift + click to select a range
95dc638
chore: replace Color.withOpacity with Color.withValues for alpha tran…
1e6a194
refactor: consolidate reusable UI components into core/ui directory a…
8850678
chore: split CustomButton into CustomFilledButton and CustomTextButto…
4728b31
chore: removed redundant padding
b072ff3
patch: add chat navigation and improve bottom sheet UI across Android…
1e66e32
Add GeneralSettingsScreen and folders for specific settings
untreu2 83bb7bb
patch: fixed font issues
9a4f56e
chore: fixed imports
dd28e14
feat: add profile bottomsheet
6983969
feat: added profile switcher tile om profile
efae507
feat: implement profile switching functionality with bottom sheet UI
f7e8e2d
feat: implement profile editing screen with custom UI components
c524710
feat: nostr keys screen
769ee95
patch: created reusable widget for icon button
d1902b2
feat: implement network settings screen with relay management
fdfcacf
patch: extracted out info box to make it reusable
2d71a4a
feat: implement wallet screen
dfd0495
chore: update dependencies and add iOS configuration for plugins
b6b6452
refactor: update color scheme to use glitch palette and replace Custo…
c5c023d
style: update color scheme for chat list appbar and bottom sheet title
289f657
feat: add settings routes and UI adjustments across profile and chat …
3c0ccca
Merge branch 'master' into feature/profile-screens
Quwaysim bd1b395
refactor: replace custom SettingsButton with CustomFilledButton in no…
4682c2d
fix: adjust height factor of remove nostr keys bottom sheet from 0.4 …
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
Binary file not shown.
Binary file not shown.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
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
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,23 @@ | ||
| import 'package:flutter/material.dart'; | ||
| import 'package:flutter_screenutil/flutter_screenutil.dart'; | ||
| import 'package:flutter_svg/svg.dart'; | ||
| import 'package:whitenoise/ui/core/themes/colors.dart'; | ||
|
|
||
| class CustomIconButton extends StatelessWidget { | ||
| final void Function()? onTap; | ||
| final String iconPath; | ||
|
|
||
| const CustomIconButton({required this.onTap, required this.iconPath, super.key}); | ||
|
|
||
| @override | ||
| Widget build(BuildContext context) { | ||
| return GestureDetector( | ||
| onTap: onTap, | ||
| child: Container( | ||
| height: 40.h, | ||
| decoration: BoxDecoration(border: Border.all(color: AppColors.glitch200)), | ||
| child: Padding(padding: EdgeInsets.all(12.w), child: SvgPicture.asset(iconPath, width: 16.w, height: 16.w)), | ||
| ), | ||
| ); | ||
| } | ||
| } |
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
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,47 @@ | ||
| import 'package:flutter/material.dart'; | ||
| import 'package:flutter_screenutil/flutter_screenutil.dart'; | ||
| import 'package:flutter_svg/svg.dart'; | ||
| import 'package:gap/gap.dart'; | ||
| import 'package:whitenoise/ui/core/themes/assets.dart'; | ||
|
|
||
| class InfoBox extends StatelessWidget { | ||
| const InfoBox({super.key, required this.colorTheme, required this.title, required this.description}); | ||
|
|
||
| final Color colorTheme; | ||
| final String title; | ||
| final String description; | ||
|
|
||
| @override | ||
| Widget build(BuildContext context) { | ||
| return Container( | ||
| padding: EdgeInsets.all(16.w), | ||
| decoration: BoxDecoration(color: colorTheme.withValues(alpha: 0.1)), | ||
| child: Row( | ||
| crossAxisAlignment: CrossAxisAlignment.start, | ||
| children: [ | ||
| Padding( | ||
| padding: EdgeInsets.only(top: 4.w), | ||
| child: SvgPicture.asset( | ||
| AssetsPaths.icWarning, | ||
| width: 16.w, | ||
| height: 16.w, | ||
| colorFilter: ColorFilter.mode(colorTheme, BlendMode.srcIn), | ||
| ), | ||
| ), | ||
| Gap(12.w), | ||
| Expanded( | ||
| child: Column( | ||
| crossAxisAlignment: CrossAxisAlignment.start, | ||
| mainAxisAlignment: MainAxisAlignment.start, | ||
| children: [ | ||
| Text(title, style: TextStyle(fontSize: 14.sp, fontWeight: FontWeight.w600, color: colorTheme)), | ||
| Gap(8.h), | ||
| Text(description, style: TextStyle(fontSize: 14.sp, color: colorTheme)), | ||
| ], | ||
| ), | ||
| ), | ||
| ], | ||
| ), | ||
| ); | ||
| } | ||
| } |
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
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🛠️ Refactor suggestion
Review the settings route structure and dummy data usage.
The route structure is well-organized, but there are a couple of concerns:
dummyContacts.firstfor the profile editing route may not be appropriate for production code.Consider refactoring the profile route to handle real user data:
GoRoute( path: 'profile', - builder: (context, state) => EditProfileScreen(profile: dummyContacts.first), + builder: (context, state) { + // TODO: Get actual user profile from state management + final userProfile = ref.read(userProfileProvider); + return EditProfileScreen(profile: userProfile); + }, ),🤖 Prompt for AI Agents