From 15a991687d2e339db3b035c1ea41da5136fd066a Mon Sep 17 00:00:00 2001 From: cj201199 Date: Mon, 29 Jul 2024 20:32:34 +0530 Subject: [PATCH 01/11] minor changes done --- .../Main_Screens/ProfileTab/TimeLine/AddTimeline.dart | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart b/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart index 7342852..ae7c71f 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart +++ b/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart @@ -288,7 +288,7 @@ class _AddTimelineState extends State { ], ), sizedBoxHeight(25.h), - text16400white("Role in the club"), + text16400white("Role in "), sizedBoxHeight(15.h), CustomTextFormField( textEditingController: @@ -568,10 +568,10 @@ class _AddTimelineState extends State { textEditingController: rollnameController, texttype: TextInputType.text, - hintText: 'Enter role in club', + hintText: 'Enter role in the club', validator: (value) { if (value!.isEmpty) { - return 'Enter role in club'; + return 'Enter role in the club'; } return null; }, From e62c3dc8c15479cc0733b0b648714f8f6896e78f Mon Sep 17 00:00:00 2001 From: cj201199 Date: Tue, 30 Jul 2024 13:56:49 +0530 Subject: [PATCH 02/11] null check bug fixed --- .../EditProfile/View/ProfileTab.dart | 36 ++++++++++--------- .../ProfileTab/TimeLine/AddTimeline.dart | 1 - lib/onboarding/Signup/View/signupscreen.dart | 3 ++ .../Signup/view_model/getUserprofile.dart | 2 ++ 4 files changed, 25 insertions(+), 17 deletions(-) diff --git a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart b/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart index ca88cac..8fb24ad 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart +++ b/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart @@ -100,13 +100,15 @@ class _ProfileTabState extends State { String? interestText; @override void initState() { - individualfuture = EditProfileApi() - .getEditProfileIndividual() - .then((value) => {setValues()}); - - businessfuture = EditProfileApi() - .getEditProfileBusiness() - .then((value) => {setValues2()}); + if (globalAccountType == '1') { + individualfuture = EditProfileApi() + .getEditProfileIndividual() + .then((value) => {setValues()}); + } else { + businessfuture = EditProfileApi() + .getEditProfileBusiness() + .then((value) => {setValues2()}); + } super.initState(); } @@ -362,8 +364,9 @@ class _ProfileTabState extends State { sizedBoxHeight(30.h), text18w700white("About"), sizedBoxHeight(10.h), - getEditProfileIndi!.data!.about == null || - getEditProfileIndi!.data!.about!.isEmpty + getEditProfileIndi!.data!.about == null || + getEditProfileIndi! + .data!.about!.isEmpty ? SizedBox() : text14400white( getEditProfileIndi!.data!.about!), @@ -385,13 +388,14 @@ class _ProfileTabState extends State { )), ), sizedBoxWidth(12.w), - getEditProfileIndi!.data!.location == null || - getEditProfileIndi!.data!.location!.isEmpty - ? - SizedBox() - : - text14400whiteblur(getEditProfileIndi! - .data!.location!), + getEditProfileIndi!.data!.location == + null || + getEditProfileIndi! + .data!.location!.isEmpty + ? SizedBox() + : text14400whiteblur( + getEditProfileIndi! + .data!.location!), ], ), sizedBoxHeight(20.h), diff --git a/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart b/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart index ae7c71f..da21a2f 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart +++ b/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart @@ -6,7 +6,6 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart'; import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/timelineabilityModel.dart' as timelineabilist; import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/gettimelineability.dart'; diff --git a/lib/onboarding/Signup/View/signupscreen.dart b/lib/onboarding/Signup/View/signupscreen.dart index 65c24fa..877b883 100644 --- a/lib/onboarding/Signup/View/signupscreen.dart +++ b/lib/onboarding/Signup/View/signupscreen.dart @@ -8,6 +8,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart'; +import 'package:regroup/Global.dart'; import 'package:regroup/Login/ViewModel/LoginApi.dart'; import 'package:regroup/Utils/Common/AppleOAuthService.dart'; import 'package:regroup/Utils/Common/CommonDropdown.dart'; @@ -153,6 +154,7 @@ class _SignupScreenState extends State { if (data.status == ResponseStatus.SUCCESS) { Get.back(); print("Sign up done"); + globalAccountType = accountTypeValue.toString(); String selectedCategory = _selectedAccountType; @@ -165,6 +167,7 @@ class _SignupScreenState extends State { return utils.showToast(data.message); + } else { Get.back(); print("registration not done"); diff --git a/lib/onboarding/Signup/view_model/getUserprofile.dart b/lib/onboarding/Signup/view_model/getUserprofile.dart index effc8b2..e663759 100644 --- a/lib/onboarding/Signup/view_model/getUserprofile.dart +++ b/lib/onboarding/Signup/view_model/getUserprofile.dart @@ -41,6 +41,8 @@ class Getuserdetails { fullname = prefs.getString('fullname'); phonenumber = prefs.getString('phone'); globalAccountType = prefs.getString('accountTypefromLogin'); + globalAccountType = + getuserobj?.data?.userData?.principalTypeXid.toString(); } else if (responseData is String) { Map jsonMap; try { From 55f2b4673ab371b7829cc7e097636ad6b689e9db Mon Sep 17 00:00:00 2001 From: kishan06 Date: Tue, 30 Jul 2024 13:57:12 +0530 Subject: [PATCH 03/11] minor change --- ios/Podfile.lock | 26 ++++----- ios/Runner.xcodeproj/project.pbxproj | 84 +++++++++++++--------------- 2 files changed, 53 insertions(+), 57 deletions(-) diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 10c2c59..6e5bb08 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -64,7 +64,7 @@ PODS: - firebase_core (2.32.0): - Firebase/CoreOnly (= 10.25.0) - Flutter - - FirebaseAppCheckInterop (10.28.0) + - FirebaseAppCheckInterop (10.29.0) - FirebaseAuth (10.25.0): - FirebaseAppCheckInterop (~> 10.17) - FirebaseCore (~> 10.0) @@ -76,7 +76,7 @@ PODS: - FirebaseCoreInternal (~> 10.0) - GoogleUtilities/Environment (~> 7.12) - GoogleUtilities/Logger (~> 7.12) - - FirebaseCoreInternal (10.28.0): + - FirebaseCoreInternal (10.29.0): - "GoogleUtilities/NSData+zlib (~> 7.8)" - Flutter (1.0.0) - flutter_facebook_auth (6.0.4): @@ -130,10 +130,10 @@ PODS: - GTMAppAuth (4.1.1): - AppAuth/Core (~> 1.7) - GTMSessionFetcher/Core (< 4.0, >= 3.3) - - GTMSessionFetcher (3.4.1): - - GTMSessionFetcher/Full (= 3.4.1) - - GTMSessionFetcher/Core (3.4.1) - - GTMSessionFetcher/Full (3.4.1): + - GTMSessionFetcher (3.5.0): + - GTMSessionFetcher/Full (= 3.5.0) + - GTMSessionFetcher/Core (3.5.0) + - GTMSessionFetcher/Full (3.5.0): - GTMSessionFetcher/Core - image_cropper (0.0.4): - Flutter @@ -149,9 +149,9 @@ PODS: - Flutter - PromisesObjC (2.4.0) - RecaptchaInterop (100.0.0) - - SDWebImage (5.19.2): - - SDWebImage/Core (= 5.19.2) - - SDWebImage/Core (5.19.2) + - SDWebImage (5.19.4): + - SDWebImage/Core (= 5.19.4) + - SDWebImage/Core (5.19.4) - shared_preferences_foundation (0.0.1): - Flutter - FlutterMacOS @@ -259,10 +259,10 @@ SPEC CHECKSUMS: Firebase: 0312a2352584f782ea56f66d91606891d4607f06 firebase_auth: 5719ddc9f654b813405899480e84971bd8e61235 firebase_core: a626d00494efa398e7c54f25f1454a64c8abf197 - FirebaseAppCheckInterop: 5315f40293191bfec04b2cfab0215760e441540a + FirebaseAppCheckInterop: 6a1757cfd4067d8e00fccd14fcc1b8fd78cfac07 FirebaseAuth: c0f93dcc570c9da2bffb576969d793e95c344fbb FirebaseCore: 7ec4d0484817f12c3373955bc87762d96842d483 - FirebaseCoreInternal: 58d07f1362fddeb0feb6a857d1d1d1c5e558e698 + FirebaseCoreInternal: df84dd300b561c27d5571684f389bf60b0a5c934 Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7 flutter_facebook_auth: c8700ab1770f3d8e5e7456220e4f3bbcdb831454 fluttertoast: 9f2f8e81bb5ce18facb9748d7855bf5a756fe3db @@ -273,7 +273,7 @@ SPEC CHECKSUMS: GoogleSignIn: d4281ab6cf21542b1cfaff85c191f230b399d2db GoogleUtilities: ea963c370a38a8069cc5f7ba4ca849a60b6d7d15 GTMAppAuth: f69bd07d68cd3b766125f7e072c45d7340dea0de - GTMSessionFetcher: 8000756fc1c19d2e5697b90311f7832d2e33f6cd + GTMSessionFetcher: 5aea5ba6bd522a239e236100971f10cb71b96ab6 image_cropper: 2c150b3d63f4feaad31054d20381ddac0a460e63 image_gallery_saver: cb43cc43141711190510e92c460eb1655cd343cb image_picker_ios: 99dfe1854b4fa34d0364e74a78448a0151025425 @@ -281,7 +281,7 @@ SPEC CHECKSUMS: permission_handler_apple: 9878588469a2b0d0fc1e048d9f43605f92e6cec2 PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47 RecaptchaInterop: 7d1a4a01a6b2cb1610a47ef3f85f0c411434cb21 - SDWebImage: dfe95b2466a9823cf9f0c6d01217c06550d7b29a + SDWebImage: 066c47b573f408f18caa467d71deace7c0f8280d shared_preferences_foundation: b4c3b4cddf1c21f02770737f147a3f5da9d39695 sign_in_with_apple: f3bf75217ea4c2c8b91823f225d70230119b8440 SwiftyGif: 706c60cf65fa2bc5ee0313beece843c8eb8194d4 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index 5d60154..bc384cd 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -8,13 +8,13 @@ /* Begin PBXBuildFile section */ 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; - 2105BA461347F33698D3FD7B /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = DC7FC30109CCD5376F6BFA0F /* Pods_Runner.framework */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; 9FD3FE5A0194B5B2D8202DCF /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = D4274500C33C54346ECA2D49 /* GoogleService-Info.plist */; }; + CA23128F3D22F12344F34510 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 2E6D63EEFD9353D7ADC2CB4D /* Pods_Runner.framework */; }; /* End PBXBuildFile section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -31,16 +31,17 @@ /* End PBXCopyFilesBuildPhase section */ /* Begin PBXFileReference section */ - 01A8D59FC22474B9D47BC82F /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 2E6D63EEFD9353D7ADC2CB4D /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 355191DC29CD1712AAFF95EF /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; - 3E093EFD052120EBB5EFE242 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; + 4145FC1F69369273F821F424 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; 5210D9302C4006FC0040021E /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + 7A2724068B1177B4942EB08B /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; - 8DA153E7FEAC51D97681DB93 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -49,7 +50,6 @@ 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; D4274500C33C54346ECA2D49 /* GoogleService-Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; name = "GoogleService-Info.plist"; path = "Runner/GoogleService-Info.plist"; sourceTree = ""; }; - DC7FC30109CCD5376F6BFA0F /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -57,7 +57,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 2105BA461347F33698D3FD7B /* Pods_Runner.framework in Frameworks */, + CA23128F3D22F12344F34510 /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -67,9 +67,9 @@ 01448FBCAC46C16EC8BC1181 /* Pods */ = { isa = PBXGroup; children = ( - 8DA153E7FEAC51D97681DB93 /* Pods-Runner.debug.xcconfig */, - 3E093EFD052120EBB5EFE242 /* Pods-Runner.release.xcconfig */, - 01A8D59FC22474B9D47BC82F /* Pods-Runner.profile.xcconfig */, + 355191DC29CD1712AAFF95EF /* Pods-Runner.debug.xcconfig */, + 7A2724068B1177B4942EB08B /* Pods-Runner.release.xcconfig */, + 4145FC1F69369273F821F424 /* Pods-Runner.profile.xcconfig */, ); path = Pods; sourceTree = ""; @@ -92,8 +92,8 @@ 97C146F01CF9000F007C117D /* Runner */, 97C146EF1CF9000F007C117D /* Products */, 01448FBCAC46C16EC8BC1181 /* Pods */, - DE8E73CF7AB07643531FB23E /* Frameworks */, D4274500C33C54346ECA2D49 /* GoogleService-Info.plist */, + F4C62E65C792A2B03ABD303E /* Frameworks */, ); sourceTree = ""; }; @@ -121,10 +121,10 @@ path = Runner; sourceTree = ""; }; - DE8E73CF7AB07643531FB23E /* Frameworks */ = { + F4C62E65C792A2B03ABD303E /* Frameworks */ = { isa = PBXGroup; children = ( - DC7FC30109CCD5376F6BFA0F /* Pods_Runner.framework */, + 2E6D63EEFD9353D7ADC2CB4D /* Pods_Runner.framework */, ); name = Frameworks; sourceTree = ""; @@ -136,23 +136,21 @@ isa = PBXNativeTarget; buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( - 2427B225240D99C3274E4E9F /* [CP] Check Pods Manifest.lock */, + 30BAD3BCCCA511EDA8157430 /* [CP] Check Pods Manifest.lock */, 9740EEB61CF901F6004384FC /* Run Script */, 97C146EA1CF9000F007C117D /* Sources */, 97C146EB1CF9000F007C117D /* Frameworks */, 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - 193E6ECF33FCE0798A403773 /* [CP] Embed Pods Frameworks */, - A1A5C179E86574032091061E /* [CP] Copy Pods Resources */, + 4343791398B77D1A11F261A2 /* [CP] Embed Pods Frameworks */, + 57523D9CD6B060C3BF6C72B7 /* [CP] Copy Pods Resources */, ); buildRules = ( ); dependencies = ( ); name = Runner; - packageProductDependencies = ( - ); productName = Runner; productReference = 97C146EE1CF9000F007C117D /* Runner.app */; productType = "com.apple.product-type.application"; @@ -181,8 +179,6 @@ Base, ); mainGroup = 97C146E51CF9000F007C117D; - packageReferences = ( - ); productRefGroup = 97C146EF1CF9000F007C117D /* Products */; projectDirPath = ""; projectRoot = ""; @@ -208,24 +204,7 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 193E6ECF33FCE0798A403773 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", - ); - name = "[CP] Embed Pods Frameworks"; - outputFileListPaths = ( - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - 2427B225240D99C3274E4E9F /* [CP] Check Pods Manifest.lock */ = { + 30BAD3BCCCA511EDA8157430 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -263,22 +242,24 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; - 9740EEB61CF901F6004384FC /* Run Script */ = { + 4343791398B77D1A11F261A2 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; - alwaysOutOfDate = 1; buildActionMask = 2147483647; files = ( ); - inputPaths = ( + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", ); - name = "Run Script"; - outputPaths = ( + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; }; - A1A5C179E86574032091061E /* [CP] Copy Pods Resources */ = { + 57523D9CD6B060C3BF6C72B7 /* [CP] Copy Pods Resources */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -295,6 +276,21 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n"; showEnvVarsInLog = 0; }; + 9740EEB61CF901F6004384FC /* Run Script */ = { + isa = PBXShellScriptBuildPhase; + alwaysOutOfDate = 1; + buildActionMask = 2147483647; + files = ( + ); + inputPaths = ( + ); + name = "Run Script"; + outputPaths = ( + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ From 9bd0f3affc68af4119ee1058afc84e72edc8739a Mon Sep 17 00:00:00 2001 From: kishan06 Date: Wed, 31 Jul 2024 16:08:23 +0530 Subject: [PATCH 04/11] code cleaning --- lib/Common/controller/MainController.dart | 12 +- lib/Common/controller/MainScreen.dart | 2 +- .../controller/data/network/network_api.dart | 6 +- .../ProfileTab/TimeLine/AddTimeline.dart | 978 ---------------- lib/Login/View/loginscreen.dart | 8 +- lib/Login/View/verifygoogleapple.dart | 27 +- .../CalenderTab/AddEvent/AddEvent.dart | 0 .../CalenderTab/AddUsers/AddUsers.dart | 0 .../CalenderTab/Availabillity.dart | 0 .../Main_Screens/CalenderTab/CalenderTab.dart | 0 .../CalenderTab/EventDetails.dart | 0 .../ManageMenmbers/ManageMembersCal.dart | 0 .../Resource Pool/ResourcePool.dart | 0 .../CalenderTab/SetAvailabillity.dart | 0 .../Chats/View/chatsmainscreen.dart | 0 .../Main_Screens/Chats/View/groupchat.dart | 0 .../Main_Screens/Chats/View/newchatpage.dart | 0 .../Main_Screens/Chats/View/newgroup.dart | 0 .../Main_Screens/Chats/View/userchat.dart | 0 .../Main_Screens/Community/Community.dart | 2 +- .../Main_Screens/Community/CycleScreen.dart | 3 +- .../View/PostDetailScreen.dart | 0 .../PostDetailScreen/View/ReactionView.dart | 0 .../Main_Screens/Community/PostScreen.dart | 0 .../ExploreDesign/DetailExplore.dart | 0 .../ExploreDesign/ExploreScreen.dart | 0 .../ExploreDesign/SearchGroup.dart | 0 .../GroupTab/View/ConnectCommunity.dart | 0 .../GroupTab/View/GoupSettings.dart | 0 .../GroupTab/View/GroupDetail.dart | 0 .../GroupTab/View/GroupEvent.dart | 0 .../Main_Screens/GroupTab/View/GroupInfo.dart | 0 .../GroupTab/View/GroupManage.dart | 0 .../Main_Screens/GroupTab/View/GroupTab.dart | 2 +- .../Main_Screens/GroupTab/View/NewPost.dart | 0 .../GroupTab/View/RequestedGroups.dart | 0 .../Main_Screens/GroupTab/View/Sessions.dart | 0 .../View/SubGroup/EditSubgroupInfo.dart | 0 .../GroupTab/View/SubGroup/SubGroupInfo.dart | 11 +- .../View/SubGroup/SubgroupSetting.dart | 89 +- .../GroupTab/View/SubGroup/Subgroups.dart | 49 +- .../ProfileTab/Badges/Badges.dart | 5 +- .../Certificate/AddCertificate.dart | 2 +- .../ProfileTab/Certificate/Certificate.dart | 4 +- .../Main_Screens/ProfileTab/Clubs/Clubs.dart | 10 +- .../EditProfile/Model/GetEditProfileBus.dart | 0 .../EditProfile/Model/GetEditProfileIndi.dart | 0 .../EditProfile/Model/InterestModel.dart | 0 .../EditProfile/View/BusEditProfile.dart | 4 +- .../EditProfile/View/EditProfile.dart | 62 +- .../EditProfile/View/ProfileTab.dart | 40 +- .../indiprofileimagecontroller.dart | 0 .../profileimagecontoller.dart | 0 .../EditProfile/ViewModel/EditProfileApi.dart | 4 +- .../ViewModel/InterestApiList.dart | 2 +- .../ProfileTab/Followers/Followers.dart | 14 +- .../ProfileTab/Following/Following.dart | 12 +- .../Guest User/Model/GetGuestFollowers.dart | 0 .../Guest User/Model/GetGuestFollowing.dart | 0 .../Model/GuestGetProfileDataBus.dart | 0 .../Model/GuestGetProfileDataIndi.dart | 0 .../View/Business/ProfileTabBusGuest.dart | 130 +-- .../View/Individual/ProfileTabIndGuest.dart | 31 +- .../Guest User/ViewModel/GuestProfileApi.dart | 9 +- .../ProfileTab/Model/accountSessionModel.dart | 0 .../ProfileTab/Model/certificateModel.dart | 0 .../ProfileTab/Model/editTimelineModel.dart | 0 .../ProfileTab/Model/faqModel.dart | 0 .../ProfileTab/Model/followersModel.dart | 0 .../ProfileTab/Model/followingModel.dart | 0 .../ProfileTab/Model/privacyPolicyModel.dart | 0 .../Model/termsconditionsModel.dart | 0 .../Model/timelineabilityModel.dart | 0 .../ProfileTab/My Network/MyNetwork.dart | 14 +- .../ProfileTab/Settings/AccountSessions.dart | 100 +- .../ProfileTab/Settings/AccountSetting.dart | 101 +- .../ProfileTab/Settings/ChangePassword.dart | 21 +- .../ProfileTab/Settings/ContactUs.dart | 2 +- .../ProfileTab/Settings/DeleteAccount.dart | 8 +- .../ProfileTab/Settings/FaqScreen.dart | 13 +- .../ProfileTab/Settings/HelpAndSupport.dart | 5 +- .../Settings/Model/FetchBlockUser.dart | 0 .../Settings/Model/FetchNotification.dart | 0 .../ProfileTab/Settings/PrivacyPolicy.dart | 5 +- .../ProfileTab/Settings/ReportABug.dart | 16 +- .../ProfileTab/Settings/Settings.dart | 19 +- .../ProfileTab/Settings/TermsCondition.dart | 7 +- .../ProfileTab/Settings/VerifyCode.dart | 37 +- .../Settings/View/BlockedUsers.dart | 4 +- .../Settings/View/Notification.dart | 4 +- .../Settings/ViewModel/BlockedUserApi.dart | 2 +- .../Settings/ViewModel/NotificationApi.dart | 2 +- .../Share profile/ShareProfile.dart | 5 +- .../ProfileTab/TimeLine/AddTimeline.dart | 1002 +++++++++++++++++ .../view_model/gettimelineability.dart | 2 +- .../view_model/profileGetmethod.dart | 18 +- .../view_model/profilePostmethod.dart | 43 - .../View => Notifications}/notification.dart | 15 +- .../View/step1Letusunderstandbetter.dart | 58 +- .../View/Business/View/step2Selectgroup.dart | 312 ----- .../Business/View/step3SelectCommunity.dart | 313 ----- .../View/Business/View/tellusbusiness.dart | 7 +- .../View/Individual/step1Selectprofile.dart | 271 ----- .../View/Individual/step2Selectactivity.dart | 12 +- .../View/Individual/step3Selectyourgroup.dart | 2 +- .../Individual/step4Selectyourcommunity.dart | 8 +- .../View/Individual/tellusindividual.dart | 23 +- .../Signup/View/communitycommitment.dart | 2 +- lib/onboarding/Signup/View/signupscreen.dart | 1 - lib/onboarding/SplashScreen.dart | 2 +- lib/onboarding/forgotPass/View/ForgotOtp.dart | 60 +- .../forgotPass/ViewModel/ForgotPassAPI.dart | 1 - lib/resources/routes/routes.dart | 237 ++-- .../Community settings/CommunitySetting.dart | 7 +- .../EditCommunity/EditCommunity.dart | 2 +- .../Community settings/ManageGroup.dart | 5 +- .../ManageTags.dart/ManageTags.dart | 9 +- .../ManageTags.dart/NewTag/NewTag.dart | 9 +- .../Announcements/AnnouncementRequest.dart | 29 +- .../Announcements/ManageMembers.dart | 73 +- .../NewAnnouncement/NewAnnounceent.dart | 9 +- .../Announcements/View/Announcements.dart | 2 +- .../sidemenu/Community/Group/view/Group.dart | 7 +- .../Community/MyCommunity/AddGroups.dart | 7 +- .../view/communityInfo.dart | 9 +- .../Community/MyCommunity/NewCommunity.dart | 9 +- .../MyCommunity/View/CommunityDetails.dart | 6 +- .../MyCommunity/View/MyCommunity.dart | 2 +- .../sidemenu/Community/Watchlist.dart | 2 +- .../sidemenu/Model/joineGroupsModel.dart | 0 .../sidemenu/SavedPosts/SavedPosts.dart | 2 +- lib/{Feed Module => }/sidemenu/sidemenu.dart | 0 .../sidemenu/view_model/getmethod.dart | 2 +- .../sidemenu/view_model/postmethod.dart | 0 134 files changed, 1732 insertions(+), 2731 deletions(-) delete mode 100644 lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart rename lib/{Feed Module => }/Main_Screens/CalenderTab/AddEvent/AddEvent.dart (100%) rename lib/{Feed Module => }/Main_Screens/CalenderTab/AddUsers/AddUsers.dart (100%) rename lib/{Feed Module => }/Main_Screens/CalenderTab/Availabillity.dart (100%) rename lib/{Feed Module => }/Main_Screens/CalenderTab/CalenderTab.dart (100%) rename lib/{Feed Module => }/Main_Screens/CalenderTab/EventDetails.dart (100%) rename lib/{Feed Module => }/Main_Screens/CalenderTab/ManageMenmbers/ManageMembersCal.dart (100%) rename lib/{Feed Module => }/Main_Screens/CalenderTab/Resource Pool/ResourcePool.dart (100%) rename lib/{Feed Module => }/Main_Screens/CalenderTab/SetAvailabillity.dart (100%) rename lib/{Feed Module => }/Main_Screens/Chats/View/chatsmainscreen.dart (100%) rename lib/{Feed Module => }/Main_Screens/Chats/View/groupchat.dart (100%) rename lib/{Feed Module => }/Main_Screens/Chats/View/newchatpage.dart (100%) rename lib/{Feed Module => }/Main_Screens/Chats/View/newgroup.dart (100%) rename lib/{Feed Module => }/Main_Screens/Chats/View/userchat.dart (100%) rename lib/{Feed Module => }/Main_Screens/Community/Community.dart (99%) rename lib/{Feed Module => }/Main_Screens/Community/CycleScreen.dart (99%) rename lib/{Feed Module => }/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart (100%) rename lib/{Feed Module => }/Main_Screens/Community/PostDetailScreen/View/ReactionView.dart (100%) rename lib/{Feed Module => }/Main_Screens/Community/PostScreen.dart (100%) rename lib/{Feed Module => }/Main_Screens/ExploreDesign/DetailExplore.dart (100%) rename lib/{Feed Module => }/Main_Screens/ExploreDesign/ExploreScreen.dart (100%) rename lib/{Feed Module => }/Main_Screens/ExploreDesign/SearchGroup.dart (100%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/ConnectCommunity.dart (100%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/GoupSettings.dart (100%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/GroupDetail.dart (100%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/GroupEvent.dart (100%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/GroupInfo.dart (100%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/GroupManage.dart (100%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/GroupTab.dart (99%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/NewPost.dart (100%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/RequestedGroups.dart (100%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/Sessions.dart (100%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/SubGroup/EditSubgroupInfo.dart (100%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart (99%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/SubGroup/SubgroupSetting.dart (70%) rename lib/{Feed Module => }/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart (89%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Badges/Badges.dart (97%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Certificate/AddCertificate.dart (99%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Certificate/Certificate.dart (98%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Clubs/Clubs.dart (98%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileBus.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileIndi.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/EditProfile/Model/InterestModel.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/EditProfile/View/BusEditProfile.dart (99%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/EditProfile/View/EditProfile.dart (93%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart (98%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/indiprofileimagecontroller.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/profileimagecontoller.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart (93%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart (91%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Followers/Followers.dart (98%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Following/Following.dart (98%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Guest User/Model/GetGuestFollowers.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Guest User/Model/GetGuestFollowing.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Guest User/Model/GuestGetProfileDataBus.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Guest User/Model/GuestGetProfileDataIndi.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Guest User/View/Business/ProfileTabBusGuest.dart (92%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Guest User/View/Individual/ProfileTabIndGuest.dart (98%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Guest User/ViewModel/GuestProfileApi.dart (85%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Model/accountSessionModel.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Model/certificateModel.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Model/editTimelineModel.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Model/faqModel.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Model/followersModel.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Model/followingModel.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Model/privacyPolicyModel.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Model/termsconditionsModel.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Model/timelineabilityModel.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/My Network/MyNetwork.dart (98%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/AccountSessions.dart (66%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/AccountSetting.dart (70%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/ChangePassword.dart (93%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/ContactUs.dart (98%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/DeleteAccount.dart (95%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/FaqScreen.dart (95%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/HelpAndSupport.dart (97%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/Model/FetchBlockUser.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/Model/FetchNotification.dart (100%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/PrivacyPolicy.dart (97%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/ReportABug.dart (96%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/Settings.dart (95%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/TermsCondition.dart (93%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/VerifyCode.dart (90%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart (99%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/View/Notification.dart (97%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/ViewModel/BlockedUserApi.dart (95%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Settings/ViewModel/NotificationApi.dart (94%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/Share profile/ShareProfile.dart (98%) create mode 100644 lib/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart rename lib/{Feed Module => }/Main_Screens/ProfileTab/view_model/gettimelineability.dart (90%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/view_model/profileGetmethod.dart (81%) rename lib/{Feed Module => }/Main_Screens/ProfileTab/view_model/profilePostmethod.dart (78%) rename lib/{Feed Module/Notification/View => Notifications}/notification.dart (95%) delete mode 100644 lib/onboarding/Signup/View/Business/View/step2Selectgroup.dart delete mode 100644 lib/onboarding/Signup/View/Business/View/step3SelectCommunity.dart delete mode 100644 lib/onboarding/Signup/View/Individual/step1Selectprofile.dart rename lib/{Feed Module => }/sidemenu/Community/Admin/PopupItem/Community settings/CommunitySetting.dart (95%) rename lib/{Feed Module => }/sidemenu/Community/Admin/PopupItem/Community settings/EditCommunity/EditCommunity.dart (99%) rename lib/{Feed Module => }/sidemenu/Community/Admin/PopupItem/Community settings/ManageGroup.dart (98%) rename lib/{Feed Module => }/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/ManageTags.dart (97%) rename lib/{Feed Module => }/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/NewTag/NewTag.dart (92%) rename lib/{Feed Module => }/sidemenu/Community/Announcements/AnnouncementRequest.dart (86%) rename lib/{Feed Module => }/sidemenu/Community/Announcements/ManageMembers.dart (93%) rename lib/{Feed Module => }/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart (94%) rename lib/{Feed Module => }/sidemenu/Community/Announcements/View/Announcements.dart (98%) rename lib/{Feed Module => }/sidemenu/Community/Group/view/Group.dart (99%) rename lib/{Feed Module => }/sidemenu/Community/MyCommunity/AddGroups.dart (98%) rename lib/{Feed Module => }/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart (97%) rename lib/{Feed Module => }/sidemenu/Community/MyCommunity/NewCommunity.dart (98%) rename lib/{Feed Module => }/sidemenu/Community/MyCommunity/View/CommunityDetails.dart (99%) rename lib/{Feed Module => }/sidemenu/Community/MyCommunity/View/MyCommunity.dart (99%) rename lib/{Feed Module => }/sidemenu/Community/Watchlist.dart (99%) rename lib/{Feed Module => }/sidemenu/Model/joineGroupsModel.dart (100%) rename lib/{Feed Module => }/sidemenu/SavedPosts/SavedPosts.dart (97%) rename lib/{Feed Module => }/sidemenu/sidemenu.dart (100%) rename lib/{Feed Module => }/sidemenu/view_model/getmethod.dart (89%) rename lib/{Feed Module => }/sidemenu/view_model/postmethod.dart (100%) diff --git a/lib/Common/controller/MainController.dart b/lib/Common/controller/MainController.dart index 32c64e1..759e536 100644 --- a/lib/Common/controller/MainController.dart +++ b/lib/Common/controller/MainController.dart @@ -1,12 +1,10 @@ import 'package:get/get.dart'; +import 'package:regroup/Main_Screens/CalenderTab/CalenderTab.dart'; +import 'package:regroup/Main_Screens/Chats/View/chatsmainscreen.dart'; +import 'package:regroup/Main_Screens/Community/Community.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/GroupTab.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/CalenderTab.dart'; - -import 'package:regroup/Feed%20Module/Main_Screens/Chats/View/chatsmainscreen.dart'; - -import 'package:regroup/Feed%20Module/Main_Screens/Community/Community.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/GroupTab.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart'; class MainController extends GetxController { var selectedIndex = 0.obs; diff --git a/lib/Common/controller/MainScreen.dart b/lib/Common/controller/MainScreen.dart index 6538f0d..87a871f 100644 --- a/lib/Common/controller/MainScreen.dart +++ b/lib/Common/controller/MainScreen.dart @@ -2,8 +2,8 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/controller/MainController.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart'; -import '../../Feed Module/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart'; final MainController mainController = Get.put(MainController()); diff --git a/lib/Common/controller/data/network/network_api.dart b/lib/Common/controller/data/network/network_api.dart index dfee1ad..853694a 100644 --- a/lib/Common/controller/data/network/network_api.dart +++ b/lib/Common/controller/data/network/network_api.dart @@ -16,9 +16,8 @@ class NetworkApiServices { Dio dio = Dio(); final controllerEntryPoint = Get.put(EntryPointController()); - String basicAuth = 'Basic ' + - base64.encode( - utf8.encode('RegroupUserName:71%@L%es^bUX94`J9XT*@bh,._WWM{\$%^^&&')); + String basicAuth = 'Basic ${base64.encode( + utf8.encode('RegroupUserName:71%@L%es^bUX94`J9XT*@bh,._WWM{\$%^^&&'))}'; Future getApi(String url, {bool optionalpar = false}) async { if (kDebugMode) { @@ -27,7 +26,6 @@ class NetworkApiServices { Response response; SharedPreferences prefs = await SharedPreferences.getInstance(); token = prefs.getString('access-token'); - print("url is $url"); log(token.toString()); try { diff --git a/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart b/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart deleted file mode 100644 index da21a2f..0000000 --- a/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart +++ /dev/null @@ -1,978 +0,0 @@ -import 'dart:developer'; -import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:get/get.dart'; -import 'package:regroup/Common/CommonGlassmorphism.dart'; -import 'package:regroup/Common/CommonWidget.dart'; -import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/timelineabilityModel.dart' - as timelineabilist; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/gettimelineability.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; -import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/CommonDropdown.dart'; -import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/sized_box.dart'; -import 'package:regroup/Utils/dialogs.dart'; -import 'package:regroup/Utils/texts.dart'; -import 'package:regroup/resources/routes/route_name.dart'; -import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart'; -import 'package:intl/intl.dart'; -import 'package:async/src/future_group.dart'; -import 'package:shared_preferences/shared_preferences.dart'; - -class AddTimeline extends StatefulWidget { - const AddTimeline({super.key}); - - @override - State createState() => _AddTimelineState(); -} - -class _AddTimelineState extends State { - TextEditingController dateController = TextEditingController(); - TextEditingController dateController2 = TextEditingController(); - TextEditingController clubNameController = TextEditingController(); - TextEditingController rollnameController = TextEditingController(); - TextEditingController teamnameController = TextEditingController(); - - int id = Get.arguments["id"]; - bool edited = Get.arguments["edit"]; - - RxBool isChecked = false.obs; - - timelineabilist.TimelineAbilityListModel? abilityModel; - List timeline = []; - List _abilitydrop = []; - - Future fetchABilitylist() async { - TimelineAbilityListApi abilityLsitAPI = TimelineAbilityListApi(); - ResponseData response = await abilityLsitAPI.getAbilitylistApi(); - - if (response.status == ResponseStatus.SUCCESS) { - abilityModel = - timelineabilist.TimelineAbilityListModel.fromJson(response.data!); - setState(() { - timeline = abilityModel!.data ?? []; // Store the fetched cities - _abilitydrop = - timeline.map((platform) => platform.name.toString()).toList(); - }); - log(timeline.toString()); - } else { - print('Failed to fetch abilities'); - } - } - - List selectedabilityid = []; - - void getCatIdFromName(List selectedAbilities) { - selectedabilityid.clear(); // Clear existing selections - for (var name in selectedAbilities) { - for (var i = 0; i < timeline.length; i++) { - if (name == timeline[i].name) { - selectedabilityid.add(timeline[i].id!); - break; // Assuming each name is unique, we break after finding a match - } - } - } - } - - // late Future myfuture; - FutureGroup futureGroup = FutureGroup(); - RxBool isloading = true.obs; - List seelctedNameList = []; - @override - void initState() { - // TODO: implement initState - - if (edited == true) { - // futureGroup.add( - Profilegetmethod().getEditTimeline(id).then((value) { - clubNameController.text = - edittimelineobj!.data!.timelineData!.clubName ?? ""; - rollnameController.text = - edittimelineobj!.data!.timelineData!.roleName ?? ""; - teamnameController.text = - edittimelineobj!.data!.timelineData!.teamName ?? ""; - ""; - dateController.text = - edittimelineobj!.data!.timelineData!.startDate ?? ""; - dateController2.text = - edittimelineobj!.data!.timelineData!.endDate ?? ""; - - log(_abilityMap.length.toString()); - // futureGroup.add( - fetchABilitylist().then((value) { - String abilitiesXids = - edittimelineobj!.data!.timelineData!.abilitiesXids ?? ""; - abilitiesIds = abilitiesXids - .split(',') - .map((e) => int.tryParse(e.trim()) ?? 0) // Trim spaces around IDs - .toList(); - selectedabilityid = abilitiesIds; - - print(selectedabilityid.toList()); - - for (int i = 0; i < _abilitydrop.length; i++) { - _abilityMap.add({ - "id": i + 1, - "name": _abilitydrop[i], - }); - } - getSelectedNames(selectedabilityid).then((value) { - seelctedNameList = value; - isloading = false.obs; - }); - }); - // ); - }); - } else { - fetchABilitylist().then((value) { - isloading = false.obs; - }); - } - - super.initState(); - } - - List abilitiesIds = []; - - UploadData() async { - // SharedPreferences prefs = await SharedPreferences.getInstance(); - utils.loader(); - String abilitiesIds = selectedabilityid.join(','); - print(abilitiesIds); - Map updata = { - "club_name": clubNameController.text, - "role_name": rollnameController.text, - "team_name": teamnameController.text, - "start_date": dateController.text, - "end_date": dateController2.text, - "abilities_xids": abilitiesIds, - }; - final data = await Profilepostmethod().postTimeline(updata); - if (data.status == ResponseStatus.SUCCESS) { - Get.back(); - // Get.back(); - // await EditProfileApi().getEditProfileIndividual().then((value) { - // Get.back(); - // }); - Get.toNamed(RouteName.mainscreen, arguments: 4); - - print("timeline done"); - return utils.showToast(data.message); - } else { - Get.back(); - print("timeline not done"); - return utils.showToast(data.message); - } - } - - EdituploadData() async { - utils.loader(); - String abilitiesIds = selectedabilityid.join(','); - print(abilitiesIds); - Map updata = { - "club_name": clubNameController.text, - "role_name": rollnameController.text, - "team_name": teamnameController.text, - "start_date": dateController.text, - "end_date": dateController2.text, - "abilities_xids": abilitiesIds, - "timeline_id": id, - }; - final data = await Profilepostmethod().postEditTimeline(updata); - if (data.status == ResponseStatus.SUCCESS) { - Get.back(); - print("timeline done"); - // await EditProfileApi().getEditProfileIndividual().then((value) { - // Get.back(); - // }); - - // utils.showToast(data.message); - // await Future.delayed( - // Duration(milliseconds: 500)); // Add a small delay if needed - // Get.toNamed(RouteName.mainscreen, arguments: 4); - Get.toNamed(RouteName.mainscreen, arguments: 4); - } else { - Get.back(); - print("timeline not done"); - return utils.showToast(data.message); - } - } - -// List> _abilityMap = []; - List> _abilityMap = []; - List listData = []; - -// Function to get names from selected IDs - Future> getSelectedNames(List selectedIds) async { - List selectedNames = []; - for (int id in selectedIds) { - for (Map ability in _abilityMap) { - if (ability["id"] == id) { - selectedNames.add(ability["name"]); - break; - } - } - _abilitydrop = - _abilityMap.map((ability) => ability["name"] as String).toList(); - } - - return selectedNames; - } - - @override - Widget build(BuildContext context) { - return GestureDetector( - onTap: () => FocusManager.instance.primaryFocus?.unfocus(), - child: Scaffold( - // resizeToAvoidBottomInset: false, - // key: _scaffoldKey1, - backgroundColor: Color(0xFF222935), - extendBody: true, - appBar: CommonAppbar( - titleTxt: "Add timeline", - ), - body: Obx(() - // { - => - isloading.value - ? Center( - child: Column( - crossAxisAlignment: CrossAxisAlignment.center, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - CircularProgressIndicator(), - ], - )) - : edited == true - ? Stack(children: [ - Container( - decoration: const BoxDecoration( - image: DecorationImage( - image: AssetImage( - "assets/images/png/Ellipse 1496.png"), - fit: BoxFit.fill)), - ), - ListView(physics: ScrollPhysics(), children: [ - Padding( - padding: - EdgeInsets.symmetric(horizontal: 16.w), - child: Column( - crossAxisAlignment: - CrossAxisAlignment.start, - children: [ - sizedBoxHeight(20.h), - text16400white("Club name"), - sizedBoxHeight(15.h), - CustomTextFormField( - textEditingController: - clubNameController, - texttype: TextInputType.text, - hintText: 'Enter club name', - validator: (value) { - if (value!.isEmpty) { - return 'Enter your club name '; - } - return null; - }, - inputFormatters: [ - // LengthLimitingTextInputFormatter(20), - RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow( - RegExp('[a-zA-Z ]')) - ], - ), - sizedBoxHeight(25.h), - text16400white("Role in "), - sizedBoxHeight(15.h), - CustomTextFormField( - textEditingController: - rollnameController, - texttype: TextInputType.text, - hintText: 'Enter role in the club', - validator: (value) { - if (value!.isEmpty) { - return 'Enter role in the club'; - } - return null; - }, - inputFormatters: [ - // LengthLimitingTextInputFormatter(20), - RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow( - RegExp('[a-zA-Z ]')) - ], - ), - sizedBoxHeight(25.h), - text16400white("Team name"), - sizedBoxHeight(15.h), - CustomTextFormField( - textEditingController: - teamnameController, - texttype: TextInputType.text, - hintText: 'Enter team name', - validator: (value) { - if (value!.isEmpty) { - return 'Enter your team name '; - } - return null; - }, - inputFormatters: [ - // LengthLimitingTextInputFormatter(20), - RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow( - RegExp('[a-zA-ZS0-9 ]')), - ], - ), - sizedBoxHeight(25.h), - Row( - mainAxisAlignment: - MainAxisAlignment.spaceBetween, - crossAxisAlignment: - CrossAxisAlignment.start, - children: [ - Expanded( - child: Column( - crossAxisAlignment: - CrossAxisAlignment.start, - children: [ - text16400white("Start date "), - sizedBoxHeight(10.h), - GestureDetector( - onTap: () => datePicker( - context, - dateController), - child: AbsorbPointer( - child: - CustomTextFormField( - textEditingController: - dateController, - leadingIcon: Container( - height: 20.h, - width: 20.w, - child: Center( - child: Image.asset( - "assets/images/png/calender.png", - height: 20.h, - width: 20.w, - ), - ), - ), - ), - ), - ) - ], - ), - ), - sizedBoxWidth(10.h), - Expanded( - child: Column( - crossAxisAlignment: - CrossAxisAlignment.start, - children: [ - text16400white("End date"), - sizedBoxHeight(10.h), - GestureDetector( - onTap: () => datePicker( - context, - dateController2), - child: AbsorbPointer( - child: - CustomTextFormField( - textEditingController: - dateController2, - leadingIcon: Container( - height: 20.h, - width: 20.w, - child: Center( - child: Image.asset( - "assets/images/png/calender.png", - height: 20.h, - width: 20.w, - ), - ), - ), - ), - ), - ), - sizedBoxHeight(10.h), - Row( - children: [ - Obx(() { - return commonGlassContainer( - border: 1, - borderradius: 2, - height: 20.h, - width: 20.w, - opacity1: 0.24, - opacity2: 0.24, - customWidget: - Transform.scale( - scale: 1.2, - child: Checkbox( - side: BorderSide( - color: Color( - 0xFF434A53)), - value: isChecked - .value, - activeColor: Colors - .transparent, - checkColor: - Colors.white, - onChanged: - ((value) { - // isChecked.value = value!; - isChecked - .value = - value!; - if (isChecked - .value) { - // Set end date to today's date - dateController2 - .text = DateFormat( - 'yyyy-MM-dd') - .format(DateTime - .now()); - } else { - // Clear end date when checkbox is unchecked - dateController2 - .clear(); - } - }), - ), - ), - ); - }), - sizedBoxWidth(8.w), - text10400white("Present") - ], - ), - ], - ), - ) - ], - ), - text16400white("Ability"), - sizedBoxHeight(15.h), - // CustomDropDownCheckBoxTimeline( - // header: 'Select ability', - // title: '', - // listData: _abilitydrop, - // onItemSelected: getCatIdFromName, - // initiallySelected: abilitiesIds - // .map((id) => id.toString()) - // .toList(), - // ), - CustomDropDownCheckBoxTimeline( - header: 'Select ability', - title: '', - listData: _abilitydrop, - // _abilityMap.map((ability) => ability["name"]).toList(), - onItemSelected: getCatIdFromName, - // (selectedNames) { - // // Convert selected names back to IDs if needed - // List selectedIds = []; - // for (String name in selectedNames) { - // for (Map ability - // in _abilityMap) { - // if (ability["name"] == name) { - // selectedIds.add(ability["id"]); - // break; - // } - // } - // } - // // Use selectedIds as needed - // print(selectedIds); - // }, - initiallySelected: - seelctedNameList, // Pass initially selected names - ), - sizedBoxHeight(80.h), - Padding( - padding: EdgeInsets.symmetric( - horizontal: 20.w), - child: CustomButton( - text: "Add timeline", - onPressed: () { - if (clubNameController.text.isBlank! || - rollnameController - .text.isBlank! || - teamnameController - .text.isBlank! || - dateController - .text.isBlank! || - dateController2 - .text.isBlank! || - selectedabilityid.isEmpty) { - utils.showToast( - 'Please fill all fields'); - } else { - print(selectedabilityid - .toString()); - - EdituploadData(); - } - }, - ), - ), - ]), - ) - ]) - ]) - : Stack(children: [ - Container( - decoration: const BoxDecoration( - image: DecorationImage( - image: AssetImage( - "assets/images/png/Ellipse 1496.png"), - fit: BoxFit.fill)), - ), - ListView(physics: ScrollPhysics(), children: [ - Padding( - padding: - EdgeInsets.symmetric(horizontal: 16.w), - child: Column( - crossAxisAlignment: - CrossAxisAlignment.start, - children: [ - sizedBoxHeight(20.h), - text16400white("Club name"), - sizedBoxHeight(15.h), - CustomTextFormField( - textEditingController: - clubNameController, - texttype: TextInputType.text, - hintText: 'Enter club name', - validator: (value) { - if (value!.isEmpty) { - return 'Enter your full name '; - } - return null; - }, - inputFormatters: [ - // LengthLimitingTextInputFormatter(20), - RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow( - RegExp('[a-zA-Z ]')) - ], - ), - sizedBoxHeight(25.h), - text16400white("Role in the club"), - sizedBoxHeight(15.h), - CustomTextFormField( - textEditingController: - rollnameController, - texttype: TextInputType.text, - hintText: 'Enter role in the club', - validator: (value) { - if (value!.isEmpty) { - return 'Enter role in the club'; - } - return null; - }, - inputFormatters: [ - // LengthLimitingTextInputFormatter(20), - RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow( - RegExp('[a-zA-Z ]')) - ], - ), - sizedBoxHeight(25.h), - text16400white("Team name"), - sizedBoxHeight(15.h), - CustomTextFormField( - textEditingController: - teamnameController, - texttype: TextInputType.text, - hintText: 'Enter team name', - validator: (value) { - if (value!.isEmpty) { - return 'Enter your team name '; - } - return null; - }, - inputFormatters: [ - // LengthLimitingTextInputFormatter(20), - RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow( - RegExp('[a-zA-ZS0-9 ]')), - ], - ), - sizedBoxHeight(25.h), - Row( - mainAxisAlignment: - MainAxisAlignment.spaceBetween, - crossAxisAlignment: - CrossAxisAlignment.start, - children: [ - Expanded( - child: Column( - crossAxisAlignment: - CrossAxisAlignment.start, - children: [ - text16400white("Start date "), - sizedBoxHeight(10.h), - GestureDetector( - onTap: () => datePicker( - context, - dateController), - child: AbsorbPointer( - child: - CustomTextFormField( - textEditingController: - dateController, - leadingIcon: Container( - height: 20.h, - width: 20.w, - child: Center( - child: Image.asset( - "assets/images/png/calender.png", - height: 20.h, - width: 20.w, - ), - ), - ), - ), - ), - ) - ], - ), - ), - sizedBoxWidth(10.h), - Expanded( - child: Column( - crossAxisAlignment: - CrossAxisAlignment.start, - children: [ - text16400white("End date"), - sizedBoxHeight(10.h), - GestureDetector( - onTap: () => datePicker( - context, - dateController2), - child: AbsorbPointer( - child: - CustomTextFormField( - textEditingController: - dateController2, - leadingIcon: Container( - height: 20.h, - width: 20.w, - child: Center( - child: Image.asset( - "assets/images/png/calender.png", - height: 20.h, - width: 20.w, - ), - ), - ), - ), - ), - ), - sizedBoxHeight(10.h), - Row( - children: [ - Obx(() { - return commonGlassContainer( - border: 1, - borderradius: 2, - height: 20.h, - width: 20.w, - opacity1: 0.24, - opacity2: 0.24, - customWidget: - Transform.scale( - scale: 1.2, - child: Checkbox( - side: BorderSide( - color: Color( - 0xFF434A53)), - value: isChecked - .value, - activeColor: Colors - .transparent, - checkColor: - Colors.white, - onChanged: - ((value) { - // isChecked.value = value!; - isChecked - .value = - value!; - if (isChecked - .value) { - // Set end date to today's date - dateController2 - .text = DateFormat( - 'yyyy-MM-dd') - .format(DateTime - .now()); - } else { - // Clear end date when checkbox is unchecked - dateController2 - .clear(); - } - }), - ), - ), - ); - }), - sizedBoxWidth(8.w), - text10400white("Present") - ], - ), - ], - ), - ) - ], - ), - text16400white("Ability"), - sizedBoxHeight(15.h), - CustomDropDownChexkBox( - header: 'Select ability', - title: '', - listData: _abilitydrop, - onItemSelected: getCatIdFromName, - initiallySelected: [], // or pass initial values if needed - ), - sizedBoxHeight(80.h), - Padding( - padding: EdgeInsets.symmetric( - horizontal: 20.w), - child: CustomButton( - text: "Add timeline", - onPressed: () { - if (clubNameController.text.isBlank! || - rollnameController - .text.isBlank! || - teamnameController - .text.isBlank! || - dateController - .text.isBlank! || - dateController2 - .text.isBlank! || - selectedabilityid.isEmpty) { - utils.showToast( - 'Please fill all fields'); - } else { - print(selectedabilityid - .toString()); - - UploadData(); - } - }, - ), - ), - ]), - ) - ]) - ]) - - // } - )), - ); - } -} - -class CustomDropDownCheckBoxTimeline extends StatefulWidget { - const CustomDropDownCheckBoxTimeline({ - Key? key, - required this.header, - required this.title, - required this.listData, - required this.onItemSelected, - this.leadingImage, - this.showOtherOption = false, - required this.initiallySelected, - }) : super(key: key); - - final String header; - final String title; - final List listData; - final Function(List) onItemSelected; - final Widget? leadingImage; - final bool showOtherOption; - final List initiallySelected; - - @override - State createState() => - _CustomDropDownCheckBoxTimelineState(); -} - -class _CustomDropDownCheckBoxTimelineState - extends State { - RxBool onDropTap = false.obs; - RxList selectedValues = [].obs; - final TextEditingController _textController = TextEditingController(); - - @override - void initState() { - super.initState(); - selectedValues - .addAll(widget.initiallySelected); // Initialize selectedValues - } - - List> _buildDropdownMenuItems() { - return widget.listData.asMap().entries.map((entry) { - int index = entry.key; - String item = entry.value; - return DropdownMenuItem( - value: item, - child: InkWell( - onTap: () { - setState(() { - if (selectedValues.contains(item)) { - selectedValues.remove(item); - } else { - selectedValues.add(item); - } - _textController.clear(); - widget.onItemSelected(selectedValues.toList()); - }); - }, - child: Column( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - Row( - children: [ - Obx(() { - return Checkbox( - value: selectedValues.contains(item), - activeColor: Colors.white, - checkColor: const Color(0xFFD90B2E), - onChanged: (bool? value) { - setState(() { - if (value == true) { - selectedValues.add(item); - } else { - selectedValues.remove(item); - } - _textController.clear(); - widget.onItemSelected(selectedValues.toList()); - }); - }, - ); - }), - const SizedBox(width: 8), - Expanded( - child: Text( - item, - style: const TextStyle( - color: Colors.white, - fontSize: 16, - fontFamily: 'Helvetica', - fontWeight: FontWeight.w500, - ), - maxLines: 1, // Adjust as needed - overflow: TextOverflow.ellipsis, - ), - ), - ], - ), - if (index != widget.listData.length - 1) - const Divider(thickness: 1, color: Color(0xFF434A53)), - ], - ), - ), - ); - }).toList(); - } - - @override - Widget build(BuildContext context) { - return Obx( - () => Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - GestureDetector( - onTap: () { - onDropTap.value = !onDropTap.value; - }, - child: Container( - width: double.infinity, - // height: 50, - padding: - EdgeInsets.only(right: 22, left: 12, top: 15, bottom: 15), - decoration: BoxDecoration( - color: const Color(0xFFFFFFFF).withOpacity(0.10), - borderRadius: onDropTap.value - ? const BorderRadius.vertical( - top: Radius.circular(30), - ) - : const BorderRadius.all(Radius.circular(30)), - gradient: LinearGradient( - begin: Alignment.topLeft, - end: Alignment.bottomRight, - colors: [ - const Color(0xFFffffff).withOpacity(0.50), - const Color(0xFFFFFFFF).withOpacity(0.50), - ], - ), - border: Border.all(color: const Color(0xFF434A53)), - ), - child: Center( - child: Row( - mainAxisAlignment: MainAxisAlignment.start, - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - widget.leadingImage == null - ? SizedBox() - : widget.leadingImage!, - const SizedBox(width: 12), - Expanded( - child: Text( - selectedValues.isEmpty - ? widget.header - : selectedValues.join(', '), - style: TextStyle( - color: Colors.white, - fontSize: 16, - fontFamily: 'Helvetica', - fontWeight: FontWeight.w400, - ), - // overflow: TextOverflow.ellipsis, - ), - ), - // const Spacer(), - onDropTap.value - ? Image.asset('assets/images/png/arrowup.png') - : Image.asset('assets/images/png/arrowdown.png'), - ], - ), - ), - ), - ), - if (onDropTap.value) - Scrollbar( - child: Container( - width: double.infinity, - decoration: BoxDecoration( - color: const Color(0xFFFFFFFF).withOpacity(0.10), - borderRadius: const BorderRadius.vertical( - bottom: Radius.circular(30), - ), - border: Border.all(color: const Color(0xFF434A53)), - gradient: LinearGradient( - begin: Alignment.topLeft, - end: Alignment.bottomRight, - colors: [ - const Color(0xFFffffff).withOpacity(0.50), - const Color(0xFFFFFFFF).withOpacity(0.50), - ], - ), - ), - child: Column( - children: _buildDropdownMenuItems(), - ), - ), - ), - ], - ), - ); - } -} diff --git a/lib/Login/View/loginscreen.dart b/lib/Login/View/loginscreen.dart index edfdfc8..0d187e4 100644 --- a/lib/Login/View/loginscreen.dart +++ b/lib/Login/View/loginscreen.dart @@ -5,9 +5,7 @@ import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:get/get.dart'; -import 'package:logger/web.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart'; import 'package:regroup/Login/ViewModel/LoginApi.dart'; import 'package:regroup/Utils/Common/AppleOAuthService.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; @@ -20,8 +18,7 @@ import 'package:regroup/onboarding/Signup/view_model/getUserprofile.dart'; import 'package:regroup/resources/routes/route_name.dart'; import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart'; import 'package:flutter_facebook_auth/flutter_facebook_auth.dart'; -import 'package:regroup/Common/global.dart' as global; -// import 'package:regroup/Common/global.dart' as global; + class LoginScreen extends StatefulWidget { const LoginScreen({super.key}); @@ -31,7 +28,6 @@ class LoginScreen extends StatefulWidget { } class _LoginScreenState extends State { - AccessToken? _accessToken; final TextEditingController _emailController = TextEditingController(); RxBool isObscured = true.obs; final TextEditingController _passwordController = TextEditingController(); @@ -124,7 +120,6 @@ class _LoginScreenState extends State { final LoginResult result = await FacebookAuth.instance.login(); if (result.status == LoginStatus.success) { - _accessToken = result.accessToken; final userData = await FacebookAuth.instance.getUserData(); logger.i(userData['email']); @@ -141,7 +136,6 @@ class _LoginScreenState extends State { _logout() async { await FacebookAuth.instance.logOut(); - _accessToken = null; setState(() {}); } diff --git a/lib/Login/View/verifygoogleapple.dart b/lib/Login/View/verifygoogleapple.dart index cd8df8d..a25141c 100644 --- a/lib/Login/View/verifygoogleapple.dart +++ b/lib/Login/View/verifygoogleapple.dart @@ -10,7 +10,7 @@ import 'package:regroup/Login/ViewModel/LoginApi.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CommonDropdown.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -52,7 +52,7 @@ class _VerifygoogleandappleState extends State { } } - final Map _accountTypeMap = { + final Map _accountTypeMap = { 'Individual': 1, 'Business': 2, }; @@ -68,12 +68,11 @@ class _VerifygoogleandappleState extends State { SharedPreferences prefs = await SharedPreferences.getInstance(); if (resp.status == ResponseStatus.SUCCESS) { - int accountTypeValue = _accountTypeMap[_selectedAccountType] ?? 0; + int accountTypeValue = _accountTypeMap[_selectedAccountType] ?? 0; - await prefs.setString('accountTypefromLogin', - accountTypeValue.toString()); - await prefs.setString('accountTypeValue', - accountTypeValue.toString()); + await prefs.setString( + 'accountTypefromLogin', accountTypeValue.toString()); + await prefs.setString('accountTypeValue', accountTypeValue.toString()); if (_selectedAccountType == 'Individual') { Get.toNamed(RouteName.tellusindividualscreen); @@ -102,9 +101,9 @@ class _VerifygoogleandappleState extends State { backgroundColor: const Color.fromARGB(255, 18, 32, 47), body: Stack( children: [ - const Positioned( - top: 310, right: -30, child: CommonBlurRightSecond()), - const Positioned(top: 510, left: -30, child: CommonBlurLeftBlue()), + // const Positioned( + // top: 310, right: -30, child: CommonBlurRightSecond()), + // const Positioned(top: 510, left: -30, child: CommonBlurLeftBlue()), GlassmorphicContainer( width: MediaQuery.of(context).size.width, height: @@ -122,19 +121,13 @@ class _VerifygoogleandappleState extends State { const Color(0XFF222935).withOpacity(0.60), const Color(0XFF222935).withOpacity(0.60), const Color(0XFF222935).withOpacity(0.60), - - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), ], ), borderGradient: LinearGradient( begin: Alignment.topCenter, end: Alignment.bottomCenter, colors: [ - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), + const Color(0XFF222935).withOpacity(0.60), const Color(0XFF222935).withOpacity(0.60), diff --git a/lib/Feed Module/Main_Screens/CalenderTab/AddEvent/AddEvent.dart b/lib/Main_Screens/CalenderTab/AddEvent/AddEvent.dart similarity index 100% rename from lib/Feed Module/Main_Screens/CalenderTab/AddEvent/AddEvent.dart rename to lib/Main_Screens/CalenderTab/AddEvent/AddEvent.dart diff --git a/lib/Feed Module/Main_Screens/CalenderTab/AddUsers/AddUsers.dart b/lib/Main_Screens/CalenderTab/AddUsers/AddUsers.dart similarity index 100% rename from lib/Feed Module/Main_Screens/CalenderTab/AddUsers/AddUsers.dart rename to lib/Main_Screens/CalenderTab/AddUsers/AddUsers.dart diff --git a/lib/Feed Module/Main_Screens/CalenderTab/Availabillity.dart b/lib/Main_Screens/CalenderTab/Availabillity.dart similarity index 100% rename from lib/Feed Module/Main_Screens/CalenderTab/Availabillity.dart rename to lib/Main_Screens/CalenderTab/Availabillity.dart diff --git a/lib/Feed Module/Main_Screens/CalenderTab/CalenderTab.dart b/lib/Main_Screens/CalenderTab/CalenderTab.dart similarity index 100% rename from lib/Feed Module/Main_Screens/CalenderTab/CalenderTab.dart rename to lib/Main_Screens/CalenderTab/CalenderTab.dart diff --git a/lib/Feed Module/Main_Screens/CalenderTab/EventDetails.dart b/lib/Main_Screens/CalenderTab/EventDetails.dart similarity index 100% rename from lib/Feed Module/Main_Screens/CalenderTab/EventDetails.dart rename to lib/Main_Screens/CalenderTab/EventDetails.dart diff --git a/lib/Feed Module/Main_Screens/CalenderTab/ManageMenmbers/ManageMembersCal.dart b/lib/Main_Screens/CalenderTab/ManageMenmbers/ManageMembersCal.dart similarity index 100% rename from lib/Feed Module/Main_Screens/CalenderTab/ManageMenmbers/ManageMembersCal.dart rename to lib/Main_Screens/CalenderTab/ManageMenmbers/ManageMembersCal.dart diff --git a/lib/Feed Module/Main_Screens/CalenderTab/Resource Pool/ResourcePool.dart b/lib/Main_Screens/CalenderTab/Resource Pool/ResourcePool.dart similarity index 100% rename from lib/Feed Module/Main_Screens/CalenderTab/Resource Pool/ResourcePool.dart rename to lib/Main_Screens/CalenderTab/Resource Pool/ResourcePool.dart diff --git a/lib/Feed Module/Main_Screens/CalenderTab/SetAvailabillity.dart b/lib/Main_Screens/CalenderTab/SetAvailabillity.dart similarity index 100% rename from lib/Feed Module/Main_Screens/CalenderTab/SetAvailabillity.dart rename to lib/Main_Screens/CalenderTab/SetAvailabillity.dart diff --git a/lib/Feed Module/Main_Screens/Chats/View/chatsmainscreen.dart b/lib/Main_Screens/Chats/View/chatsmainscreen.dart similarity index 100% rename from lib/Feed Module/Main_Screens/Chats/View/chatsmainscreen.dart rename to lib/Main_Screens/Chats/View/chatsmainscreen.dart diff --git a/lib/Feed Module/Main_Screens/Chats/View/groupchat.dart b/lib/Main_Screens/Chats/View/groupchat.dart similarity index 100% rename from lib/Feed Module/Main_Screens/Chats/View/groupchat.dart rename to lib/Main_Screens/Chats/View/groupchat.dart diff --git a/lib/Feed Module/Main_Screens/Chats/View/newchatpage.dart b/lib/Main_Screens/Chats/View/newchatpage.dart similarity index 100% rename from lib/Feed Module/Main_Screens/Chats/View/newchatpage.dart rename to lib/Main_Screens/Chats/View/newchatpage.dart diff --git a/lib/Feed Module/Main_Screens/Chats/View/newgroup.dart b/lib/Main_Screens/Chats/View/newgroup.dart similarity index 100% rename from lib/Feed Module/Main_Screens/Chats/View/newgroup.dart rename to lib/Main_Screens/Chats/View/newgroup.dart diff --git a/lib/Feed Module/Main_Screens/Chats/View/userchat.dart b/lib/Main_Screens/Chats/View/userchat.dart similarity index 100% rename from lib/Feed Module/Main_Screens/Chats/View/userchat.dart rename to lib/Main_Screens/Chats/View/userchat.dart diff --git a/lib/Feed Module/Main_Screens/Community/Community.dart b/lib/Main_Screens/Community/Community.dart similarity index 99% rename from lib/Feed Module/Main_Screens/Community/Community.dart rename to lib/Main_Screens/Community/Community.dart index 784968b..9a0336a 100644 --- a/lib/Feed Module/Main_Screens/Community/Community.dart +++ b/lib/Main_Screens/Community/Community.dart @@ -7,7 +7,7 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonTabBar.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/controller/MainScreen.dart'; -import 'package:regroup/Feed%20Module/sidemenu/sidemenu.dart'; +import 'package:regroup/sidemenu/sidemenu.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; diff --git a/lib/Feed Module/Main_Screens/Community/CycleScreen.dart b/lib/Main_Screens/Community/CycleScreen.dart similarity index 99% rename from lib/Feed Module/Main_Screens/Community/CycleScreen.dart rename to lib/Main_Screens/Community/CycleScreen.dart index 799e14e..3849ef3 100644 --- a/lib/Feed Module/Main_Screens/Community/CycleScreen.dart +++ b/lib/Main_Screens/Community/CycleScreen.dart @@ -5,9 +5,8 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonTabBar.dart'; import 'package:regroup/Common/CommonWidget.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Community/Community.dart'; +import 'package:regroup/Main_Screens/Community/Community.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; diff --git a/lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart b/lib/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart similarity index 100% rename from lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart rename to lib/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart diff --git a/lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/ReactionView.dart b/lib/Main_Screens/Community/PostDetailScreen/View/ReactionView.dart similarity index 100% rename from lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/ReactionView.dart rename to lib/Main_Screens/Community/PostDetailScreen/View/ReactionView.dart diff --git a/lib/Feed Module/Main_Screens/Community/PostScreen.dart b/lib/Main_Screens/Community/PostScreen.dart similarity index 100% rename from lib/Feed Module/Main_Screens/Community/PostScreen.dart rename to lib/Main_Screens/Community/PostScreen.dart diff --git a/lib/Feed Module/Main_Screens/ExploreDesign/DetailExplore.dart b/lib/Main_Screens/ExploreDesign/DetailExplore.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ExploreDesign/DetailExplore.dart rename to lib/Main_Screens/ExploreDesign/DetailExplore.dart diff --git a/lib/Feed Module/Main_Screens/ExploreDesign/ExploreScreen.dart b/lib/Main_Screens/ExploreDesign/ExploreScreen.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ExploreDesign/ExploreScreen.dart rename to lib/Main_Screens/ExploreDesign/ExploreScreen.dart diff --git a/lib/Feed Module/Main_Screens/ExploreDesign/SearchGroup.dart b/lib/Main_Screens/ExploreDesign/SearchGroup.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ExploreDesign/SearchGroup.dart rename to lib/Main_Screens/ExploreDesign/SearchGroup.dart diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/ConnectCommunity.dart b/lib/Main_Screens/GroupTab/View/ConnectCommunity.dart similarity index 100% rename from lib/Feed Module/Main_Screens/GroupTab/View/ConnectCommunity.dart rename to lib/Main_Screens/GroupTab/View/ConnectCommunity.dart diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/GoupSettings.dart b/lib/Main_Screens/GroupTab/View/GoupSettings.dart similarity index 100% rename from lib/Feed Module/Main_Screens/GroupTab/View/GoupSettings.dart rename to lib/Main_Screens/GroupTab/View/GoupSettings.dart diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/GroupDetail.dart b/lib/Main_Screens/GroupTab/View/GroupDetail.dart similarity index 100% rename from lib/Feed Module/Main_Screens/GroupTab/View/GroupDetail.dart rename to lib/Main_Screens/GroupTab/View/GroupDetail.dart diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/GroupEvent.dart b/lib/Main_Screens/GroupTab/View/GroupEvent.dart similarity index 100% rename from lib/Feed Module/Main_Screens/GroupTab/View/GroupEvent.dart rename to lib/Main_Screens/GroupTab/View/GroupEvent.dart diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/GroupInfo.dart b/lib/Main_Screens/GroupTab/View/GroupInfo.dart similarity index 100% rename from lib/Feed Module/Main_Screens/GroupTab/View/GroupInfo.dart rename to lib/Main_Screens/GroupTab/View/GroupInfo.dart diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/GroupManage.dart b/lib/Main_Screens/GroupTab/View/GroupManage.dart similarity index 100% rename from lib/Feed Module/Main_Screens/GroupTab/View/GroupManage.dart rename to lib/Main_Screens/GroupTab/View/GroupManage.dart diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/GroupTab.dart b/lib/Main_Screens/GroupTab/View/GroupTab.dart similarity index 99% rename from lib/Feed Module/Main_Screens/GroupTab/View/GroupTab.dart rename to lib/Main_Screens/GroupTab/View/GroupTab.dart index 48c419d..de51eb8 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/GroupTab.dart +++ b/lib/Main_Screens/GroupTab/View/GroupTab.dart @@ -6,7 +6,7 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/controller/MainScreen.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/NewPost.dart b/lib/Main_Screens/GroupTab/View/NewPost.dart similarity index 100% rename from lib/Feed Module/Main_Screens/GroupTab/View/NewPost.dart rename to lib/Main_Screens/GroupTab/View/NewPost.dart diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/RequestedGroups.dart b/lib/Main_Screens/GroupTab/View/RequestedGroups.dart similarity index 100% rename from lib/Feed Module/Main_Screens/GroupTab/View/RequestedGroups.dart rename to lib/Main_Screens/GroupTab/View/RequestedGroups.dart diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/Sessions.dart b/lib/Main_Screens/GroupTab/View/Sessions.dart similarity index 100% rename from lib/Feed Module/Main_Screens/GroupTab/View/Sessions.dart rename to lib/Main_Screens/GroupTab/View/Sessions.dart diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/EditSubgroupInfo.dart b/lib/Main_Screens/GroupTab/View/SubGroup/EditSubgroupInfo.dart similarity index 100% rename from lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/EditSubgroupInfo.dart rename to lib/Main_Screens/GroupTab/View/SubGroup/EditSubgroupInfo.dart diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart b/lib/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart similarity index 99% rename from lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart rename to lib/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart index 1d7e562..94bb418 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart +++ b/lib/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart @@ -6,7 +6,7 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonTabBar.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -245,7 +245,8 @@ class _SubGroupInfoState extends State { Container( decoration: const BoxDecoration( image: DecorationImage( - image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), ), SingleChildScrollView( child: @@ -677,8 +678,10 @@ class _SubGroupInfoState extends State { itemScale: 0.4, itemSize: const Size(45, 45), boxPadding: const EdgeInsets.all(8), - boxAnimationDuration: const Duration(milliseconds: 200), - itemAnimationDuration: const Duration(milliseconds: 500), + boxAnimationDuration: + const Duration(milliseconds: 200), + itemAnimationDuration: + const Duration(milliseconds: 500), hoverDuration: const Duration(milliseconds: 700), // toggle: false, diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/SubgroupSetting.dart b/lib/Main_Screens/GroupTab/View/SubGroup/SubgroupSetting.dart similarity index 70% rename from lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/SubgroupSetting.dart rename to lib/Main_Screens/GroupTab/View/SubGroup/SubgroupSetting.dart index 7918eac..701bb6a 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/SubgroupSetting.dart +++ b/lib/Main_Screens/GroupTab/View/SubGroup/SubgroupSetting.dart @@ -4,7 +4,7 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -39,57 +39,56 @@ class _SubGroupSettingState extends State { ), resizeToAvoidBottomInset: false, body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), Column( - crossAxisAlignment: CrossAxisAlignment.start, + ), + Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ + sizedBoxHeight(30.h), + GestureDetector( + onTap: () { + inviteBottomSheet(); + }, + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 16.w), + child: Row( children: [ - sizedBoxHeight(30.h), - GestureDetector( - onTap: () { - inviteBottomSheet(); - }, - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Row( - children: [ - text18w400_FCFCFC("Group type"), - Spacer(), - Icon( - Icons.arrow_forward_ios_outlined, - color: Colors.white, - size: 18.sp, - ) - ], - ), - ), + text18w400_FCFCFC("Group type"), + Spacer(), + Icon( + Icons.arrow_forward_ios_outlined, + color: Colors.white, + size: 18.sp, + ) + ], ), - sizedBoxHeight(25.h), - commonDivider(), - sizedBoxHeight(25.h), - GestureDetector( - onTap: () { - Get.toNamed(RouteName.groupmanage); - }, - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Row( - children: [ - text18w400_FCFCFC("Manage members"), - Spacer(), - Icon( - Icons.arrow_forward_ios_outlined, - color: Colors.white, - size: 18.sp, - ) - ], - ), - ), + ), + ), + sizedBoxHeight(25.h), + commonDivider(), + sizedBoxHeight(25.h), + GestureDetector( + onTap: () { + Get.toNamed(RouteName.groupmanage); + }, + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 16.w), + child: Row( + children: [ + text18w400_FCFCFC("Manage members"), + Spacer(), + Icon( + Icons.arrow_forward_ios_outlined, + color: Colors.white, + size: 18.sp, + ) + ], ), - ]) + ), + ), + ]) ])); } diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart b/lib/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart similarity index 89% rename from lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart rename to lib/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart index 6b1b40d..664523e 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart +++ b/lib/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart @@ -4,7 +4,7 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -73,29 +73,30 @@ class _SubGroupsState extends State { image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - sizedBoxHeight(30.h), - Expanded( - child: ListView.builder( - shrinkWrap: true, - physics: BouncingScrollPhysics(), - itemCount: subgroupData.length, - itemBuilder: (context, index) { - return subgroupCard( - ontap: () { - Get.toNamed(RouteName.groupdetail); - }, - imagepath: subgroupData[index]['imagePath'], - title: subgroupData[index]['text'], - members: subgroupData[index]['members']); - }, - ), - ) - ])) + ), + Padding( + padding: EdgeInsets.symmetric(horizontal: 16.w), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + sizedBoxHeight(30.h), + Expanded( + child: ListView.builder( + shrinkWrap: true, + physics: BouncingScrollPhysics(), + itemCount: subgroupData.length, + itemBuilder: (context, index) { + return subgroupCard( + ontap: () { + Get.toNamed(RouteName.groupdetail); + }, + imagepath: subgroupData[index]['imagePath'], + title: subgroupData[index]['text'], + members: subgroupData[index]['members']); + }, + ), + ) + ])) ])); } diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Badges/Badges.dart b/lib/Main_Screens/ProfileTab/Badges/Badges.dart similarity index 97% rename from lib/Feed Module/Main_Screens/ProfileTab/Badges/Badges.dart rename to lib/Main_Screens/ProfileTab/Badges/Badges.dart index 8ec6f61..31dcdb2 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Badges/Badges.dart +++ b/lib/Main_Screens/ProfileTab/Badges/Badges.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -54,7 +54,8 @@ class _BadgesState extends State { Container( decoration: const BoxDecoration( image: DecorationImage( - image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), ), SingleChildScrollView( child: Padding( diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Certificate/AddCertificate.dart b/lib/Main_Screens/ProfileTab/Certificate/AddCertificate.dart similarity index 99% rename from lib/Feed Module/Main_Screens/ProfileTab/Certificate/AddCertificate.dart rename to lib/Main_Screens/ProfileTab/Certificate/AddCertificate.dart index a1ffd3a..2cc96d6 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Certificate/AddCertificate.dart +++ b/lib/Main_Screens/ProfileTab/Certificate/AddCertificate.dart @@ -7,7 +7,7 @@ import 'package:flutter/widgets.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart' hide MultipartFile, FormData; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Certificate/Certificate.dart b/lib/Main_Screens/ProfileTab/Certificate/Certificate.dart similarity index 98% rename from lib/Feed Module/Main_Screens/ProfileTab/Certificate/Certificate.dart rename to lib/Main_Screens/ProfileTab/Certificate/Certificate.dart index d7b1fdd..a4f129a 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Certificate/Certificate.dart +++ b/lib/Main_Screens/ProfileTab/Certificate/Certificate.dart @@ -1,8 +1,8 @@ - import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; + import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Clubs/Clubs.dart b/lib/Main_Screens/ProfileTab/Clubs/Clubs.dart similarity index 98% rename from lib/Feed Module/Main_Screens/ProfileTab/Clubs/Clubs.dart rename to lib/Main_Screens/ProfileTab/Clubs/Clubs.dart index b592b83..6c7cb08 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Clubs/Clubs.dart +++ b/lib/Main_Screens/ProfileTab/Clubs/Clubs.dart @@ -3,7 +3,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -44,13 +44,14 @@ class _ClubsState extends State { ), resizeToAvoidBottomInset: false, body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), SingleChildScrollView( - child: Padding( + ), + SingleChildScrollView( + child: Padding( padding: const EdgeInsets.symmetric(horizontal: 16), child: Column(children: [ sizedBoxHeight(25.h), @@ -218,5 +219,4 @@ class _ClubsState extends State { ), ); } - } diff --git a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileBus.dart b/lib/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileBus.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileBus.dart rename to lib/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileBus.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileIndi.dart b/lib/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileIndi.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileIndi.dart rename to lib/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileIndi.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/Model/InterestModel.dart b/lib/Main_Screens/ProfileTab/EditProfile/Model/InterestModel.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/EditProfile/Model/InterestModel.dart rename to lib/Main_Screens/ProfileTab/EditProfile/Model/InterestModel.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/BusEditProfile.dart b/lib/Main_Screens/ProfileTab/EditProfile/View/BusEditProfile.dart similarity index 99% rename from lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/BusEditProfile.dart rename to lib/Main_Screens/ProfileTab/EditProfile/View/BusEditProfile.dart index 9b23da0..a012092 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/BusEditProfile.dart +++ b/lib/Main_Screens/ProfileTab/EditProfile/View/BusEditProfile.dart @@ -8,8 +8,8 @@ import 'package:get/get.dart' hide MultipartFile, FormData; import 'package:regroup/Common/CommonButton.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/profileimagecontoller.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/profileimagecontoller.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/ImageUpload.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/EditProfile.dart b/lib/Main_Screens/ProfileTab/EditProfile/View/EditProfile.dart similarity index 93% rename from lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/EditProfile.dart rename to lib/Main_Screens/ProfileTab/EditProfile/View/EditProfile.dart index b67f5fb..3a512b3 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/EditProfile.dart +++ b/lib/Main_Screens/ProfileTab/EditProfile/View/EditProfile.dart @@ -9,9 +9,10 @@ import 'package:get/get.dart' hide MultipartFile, FormData; import 'package:regroup/Common/CommonButton.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/indiprofileimagecontroller.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/indiprofileimagecontroller.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart'; + import 'package:regroup/Utils/Common/CommonDropdown.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; @@ -29,7 +30,7 @@ class EditProfile extends StatefulWidget { State createState() => _EditProfileState(); } -//location in normal profile individual api + class _EditProfileState extends State { TextEditingController fullNameController = TextEditingController(); @@ -72,7 +73,7 @@ class _EditProfileState extends State { RxBool isloading = true.obs; void getCatIdFromName(List selectedInterests) { - // selectedinterestid.clear(); + for (var name in selectedInterests) { for (var i = 0; i < interestlistobj!.data!.length; i++) { if (name == interestlistobj!.data![i].name) { @@ -130,32 +131,30 @@ class _EditProfileState extends State { : selectedinterestid; String abilitiesIds = selectedinterestid.toString(); - print("Interests String: $abilitiesIds"); if (editProfileImage.usserprofilePicPath.value.isNotEmpty) { imageFile = await MultipartFile.fromFile( editProfileImage.usserprofilePicPath.value, filename: path.basename(profilePicture), ); - print(imageFile.toString()); } updata = FormData.fromMap({ - // "email_address": "priyanka14@yopmail.com", + "full_name": fullNameController.text, "profile_image": editProfileImage.usserprofilePicPath.isNotEmpty ? imageFile : null, - // profilePicture.isNotEmpty - // ? await convertFileToMultiPart1(profilePicture) - // : null, - // "profile_image": "ghjkk.png", + + + + "user_name": userNameController.text, "date_of_birth": dateController.text, "gender": _selectedgenderType, - // "interest": "selectedSportsIds", + "interest": - // '[1,2,3,4]', + abilitiesIds, "about": aboutController.text, "position": positionController.text, @@ -166,7 +165,6 @@ class _EditProfileState extends State { "address_line1": battingAvgController.text, }); log(updata.toString()); - print(imageFile.toString()); final data = await EditProfileApi().postEditProfileIndividual(updata); if (data.status == ResponseStatus.SUCCESS) { @@ -174,7 +172,7 @@ class _EditProfileState extends State { Get.toNamed(RouteName.mainscreen, arguments: 4); } else { Get.back(); - // btnController.reset(); + Get.snackbar( "Error!", data.data['message'], @@ -185,7 +183,7 @@ class _EditProfileState extends State { snackStyle: SnackStyle.FLOATING, snackPosition: SnackPosition.BOTTOM, ); - // _controller.isTextFieldEnabled.value = true; + } } @@ -224,7 +222,6 @@ class _EditProfileState extends State { if (snapshot.connectionState == ConnectionState.done && snapshot.hasData) { - print("Data fetched-->"); return Stack(children: [ Container( decoration: const BoxDecoration( @@ -252,7 +249,7 @@ class _EditProfileState extends State { .value != '' ? Image( - // File(profilePicture), + image: FileImage( File( editProfileImage @@ -314,16 +311,14 @@ class _EditProfileState extends State { context, true, (result) { - // var filenameresult = - // extractFileName1(result); + + editProfileImage .usserprofilePicPath .value = result; var filenameresult = extractFileName1(result); - print( - "File name is $filenameresult"); profilePicture = result; isImageAdded = true; @@ -488,8 +483,8 @@ class _EditProfileState extends State { ), sizedBoxHeight(16.h), - //Obx(() { - //return + + CustomDropDownChexkBox( header: 'Select interest', title: "", @@ -500,10 +495,10 @@ class _EditProfileState extends State { width: 18.w, height: 17.h, ), - // showOtherOption: true, + initiallySelected: listofUserInterests, ), - // }), + sizedBoxHeight(20.h), text16400white("About"), @@ -514,7 +509,7 @@ class _EditProfileState extends State { "Lorem Ipsum has been the industry's standard dummy text ever since the 1500s. Lorem Ipsum has been the industry's standard", maxlines: 3, ), - // sizedBoxHeight(20.h), + text16400white("Position"), sizedBoxHeight(16.h), @@ -556,7 +551,7 @@ class _EditProfileState extends State { CustomTextFormField( textEditingController: weightController, hintText: "Enter your weight", - inputFormatters: [ + inputFormatters: [ FilteringTextInputFormatter.allow( RegExp(r'[a-zA-Z0-9\s]')), ], @@ -598,12 +593,11 @@ class _EditProfileState extends State { colorText: Colors.white, ); } - // else if (profilePicture == "") { - // utils.showToast( - // 'Upload edit profile picture!'); - // } + + + + else { - print(selectedinterestid.toString()); saveEditProfileInd(); } }, diff --git a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart b/lib/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart similarity index 98% rename from lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart rename to lib/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart index 8fb24ad..01b7234 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart +++ b/lib/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart @@ -9,10 +9,10 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Common/controller/MainScreen.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Global.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; @@ -128,8 +128,6 @@ class _ProfileTabState extends State { SharedPreferences prefs = await SharedPreferences.getInstance(); accountTypeValue = prefs.getString('accountTypeValue'); accounTypeLogin = prefs.getString('accountTypefromLogin'); - print('account tupe login is $accounTypeLogin'); - print('account tupe value is $accountTypeValue'); // foodItemDropdownController.selectedFooddynamic.clear(); // foodItemDropdownController.foodItemQControllerList.clear(); // foodItemDropdownController.OtherFoodIngredientList.clear(); @@ -154,7 +152,7 @@ class _ProfileTabState extends State { int? certificationsremoveid; - RemoveTimelineUploadata() async { + removeTimelineUploadata() async { utils.loader(); Map updata = { "timeline_id": timelineremoveid, @@ -162,11 +160,9 @@ class _ProfileTabState extends State { final data = await Profilepostmethod().postRemoveTimeline(updata); if (data.status == ResponseStatus.SUCCESS) { Get.back(); - print("block done"); return utils.showToast(data.message); } else { Get.back(); - print("block not done"); return utils.showToast(data.message); } } @@ -179,11 +175,9 @@ class _ProfileTabState extends State { final data = await Profilepostmethod().postRemoveCertification(updata); if (data.status == ResponseStatus.SUCCESS) { Get.back(); - print("block done"); return utils.showToast(data.message); } else { Get.back(); - print("block not done"); return utils.showToast(data.message); } } @@ -219,7 +213,6 @@ class _ProfileTabState extends State { if (snapshot.connectionState == ConnectionState.done && snapshot.hasData) { - print("Data fetched-->"); return Stack(clipBehavior: Clip.none, children: [ Container( decoration: const BoxDecoration( @@ -235,7 +228,7 @@ class _ProfileTabState extends State { children: [ Stack( children: [ - Container( + SizedBox( height: 484.h, width: double.infinity, child: getEditProfileIndi! @@ -367,7 +360,7 @@ class _ProfileTabState extends State { getEditProfileIndi!.data!.about == null || getEditProfileIndi! .data!.about!.isEmpty - ? SizedBox() + ? const SizedBox() : text14400white( getEditProfileIndi!.data!.about!), sizedBoxHeight(25.h), @@ -392,7 +385,7 @@ class _ProfileTabState extends State { null || getEditProfileIndi! .data!.location!.isEmpty - ? SizedBox() + ? const SizedBox() : text14400whiteblur( getEditProfileIndi! .data!.location!), @@ -590,7 +583,7 @@ class _ProfileTabState extends State { timelineremoveid = getEditProfileIndi!.data!.timelines![index].id ?? 0; getEditProfileIndi!.data!.timelines!.removeWhere((item) => item.id! == timelineremoveid); // .removeAt(index); - RemoveTimelineUploadata(); + removeTimelineUploadata(); }); }, child: SizedBox( @@ -1105,7 +1098,6 @@ class _ProfileTabState extends State { if (snapshot.connectionState == ConnectionState.done && snapshot.hasData) { - print("Data fetched-->"); return Stack(clipBehavior: Clip.none, children: [ Container( decoration: const BoxDecoration( @@ -1121,7 +1113,7 @@ class _ProfileTabState extends State { children: [ Stack( children: [ - Container( + SizedBox( height: 484.h, width: double.infinity, child: getEditProfileBus!.data! @@ -1221,8 +1213,8 @@ class _ProfileTabState extends State { color: Colors.white, width: 1.0, ), - boxShadow: [ - const BoxShadow( + boxShadow: const [ + BoxShadow( color: Color(0x66000000), offset: Offset(0, 4), @@ -1320,7 +1312,7 @@ class _ProfileTabState extends State { sizedBoxHeight(10.h), getEditProfileBus!.data!.bio == null || getEditProfileBus!.data!.bio!.isEmpty - ? SizedBox() + ? const SizedBox() : text14400white( getEditProfileBus!.data!.bio!), sizedBoxHeight(25.h), @@ -1346,7 +1338,7 @@ class _ProfileTabState extends State { null || getEditProfileBus!.data! .businessOwnerName!.isEmpty - ? SizedBox() + ? const SizedBox() : text14400whiteblur( getEditProfileBus! .data!.businessOwnerName!), @@ -1374,7 +1366,7 @@ class _ProfileTabState extends State { null || getEditProfileBus! .data!.websiteLink!.isEmpty - ? SizedBox() + ? const SizedBox() : text14400whiteblur( getEditProfileBus! .data!.websiteLink!), @@ -1403,7 +1395,7 @@ class _ProfileTabState extends State { null || getEditProfileBus!.data! .businessLocation!.isEmpty - ? SizedBox() + ? const SizedBox() : text14400whiteblur( getEditProfileBus! .data!.businessLocation!), @@ -1434,7 +1426,7 @@ class _ProfileTabState extends State { null || getEditProfileBus! .data!.foundedon!.isEmpty - ? SizedBox() + ? const SizedBox() : text14400whiteblur( getEditProfileBus! .data!.foundedon!), @@ -1520,7 +1512,7 @@ class _ProfileTabState extends State { }) { return Row( children: [ - Container( + SizedBox( width: 10, height: 170.h, child: Stack( diff --git a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/indiprofileimagecontroller.dart b/lib/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/indiprofileimagecontroller.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/indiprofileimagecontroller.dart rename to lib/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/indiprofileimagecontroller.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/profileimagecontoller.dart b/lib/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/profileimagecontoller.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/profileimagecontoller.dart rename to lib/Main_Screens/ProfileTab/EditProfile/View/picturecontroller/profileimagecontoller.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart b/lib/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart similarity index 93% rename from lib/Feed Module/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart rename to lib/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart index 85524f2..6e497cf 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart +++ b/lib/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart @@ -3,8 +3,8 @@ import 'package:regroup/Common/api_urls.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Common/controller/data/network/network_api.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileBus.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileIndi.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileBus.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/Model/GetEditProfileIndi.dart'; import 'package:shared_preferences/shared_preferences.dart'; GetEditProfileIndi? getEditProfileIndi; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart b/lib/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart similarity index 91% rename from lib/Feed Module/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart rename to lib/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart index 09036ae..f8ab05e 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart +++ b/lib/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart @@ -1,7 +1,7 @@ import 'package:regroup/Common/api_urls.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Common/controller/data/network/network_api.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/Model/InterestModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/Model/InterestModel.dart'; InterestModel? interestlistobj; List listofInterests = []; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Followers/Followers.dart b/lib/Main_Screens/ProfileTab/Followers/Followers.dart similarity index 98% rename from lib/Feed Module/Main_Screens/ProfileTab/Followers/Followers.dart rename to lib/Main_Screens/ProfileTab/Followers/Followers.dart index 8117225..69136b0 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Followers/Followers.dart +++ b/lib/Main_Screens/ProfileTab/Followers/Followers.dart @@ -5,11 +5,12 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/Model/GetGuestFollowers.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/ViewModel/GuestProfileApi.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/followersModel.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/Model/GetGuestFollowers.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/ViewModel/GuestProfileApi.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/followersModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; + + import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; @@ -18,6 +19,8 @@ import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart'; +import '../view_model/profilePostmethod.dart'; + class Followers extends StatefulWidget { const Followers({super.key}); @@ -37,7 +40,6 @@ class _FollowersState extends State { @override void initState() { - // TODO: implement initState var updata = ""; if (fromMainBusProfile == 'MainBusProfile') { Profilegetmethod() diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Following/Following.dart b/lib/Main_Screens/ProfileTab/Following/Following.dart similarity index 98% rename from lib/Feed Module/Main_Screens/ProfileTab/Following/Following.dart rename to lib/Main_Screens/ProfileTab/Following/Following.dart index 31bc182..742a8ce 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Following/Following.dart +++ b/lib/Main_Screens/ProfileTab/Following/Following.dart @@ -5,12 +5,12 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/Model/GetGuestFollowers.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/Model/GetGuestFollowing.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/ViewModel/GuestProfileApi.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/followingModel.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/Model/GetGuestFollowing.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/ViewModel/GuestProfileApi.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/followingModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; + import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Guest User/Model/GetGuestFollowers.dart b/lib/Main_Screens/ProfileTab/Guest User/Model/GetGuestFollowers.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Guest User/Model/GetGuestFollowers.dart rename to lib/Main_Screens/ProfileTab/Guest User/Model/GetGuestFollowers.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Guest User/Model/GetGuestFollowing.dart b/lib/Main_Screens/ProfileTab/Guest User/Model/GetGuestFollowing.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Guest User/Model/GetGuestFollowing.dart rename to lib/Main_Screens/ProfileTab/Guest User/Model/GetGuestFollowing.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Guest User/Model/GuestGetProfileDataBus.dart b/lib/Main_Screens/ProfileTab/Guest User/Model/GuestGetProfileDataBus.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Guest User/Model/GuestGetProfileDataBus.dart rename to lib/Main_Screens/ProfileTab/Guest User/Model/GuestGetProfileDataBus.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Guest User/Model/GuestGetProfileDataIndi.dart b/lib/Main_Screens/ProfileTab/Guest User/Model/GuestGetProfileDataIndi.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Guest User/Model/GuestGetProfileDataIndi.dart rename to lib/Main_Screens/ProfileTab/Guest User/Model/GuestGetProfileDataIndi.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Guest User/View/Business/ProfileTabBusGuest.dart b/lib/Main_Screens/ProfileTab/Guest User/View/Business/ProfileTabBusGuest.dart similarity index 92% rename from lib/Feed Module/Main_Screens/ProfileTab/Guest User/View/Business/ProfileTabBusGuest.dart rename to lib/Main_Screens/ProfileTab/Guest User/View/Business/ProfileTabBusGuest.dart index a087b70..4d9d3d8 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Guest User/View/Business/ProfileTabBusGuest.dart +++ b/lib/Main_Screens/ProfileTab/Guest User/View/Business/ProfileTabBusGuest.dart @@ -5,9 +5,10 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/ViewModel/GuestProfileApi.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/ViewModel/GuestProfileApi.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; + + import 'package:regroup/Utils/Common/ShimmerCommon.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; @@ -56,7 +57,6 @@ class _profiletabBusGestState extends State { // return utils.showToast(data.message); } else { Get.back(); - print("unfollow not done"); return utils.showToast(data.message); } } @@ -71,11 +71,9 @@ class _profiletabBusGestState extends State { Get.back(); // Get.back(); Get.toNamed(RouteName.mainscreen, arguments: 4); - print("block done"); return utils.showToast(data.message); } else { Get.back(); - print("block not done"); return utils.showToast(data.message); } } @@ -84,17 +82,17 @@ class _profiletabBusGestState extends State { Widget build(BuildContext context) { return Scaffold( // key: _scaffoldKey1, - backgroundColor: Color(0xFF222935), + backgroundColor: const Color(0xFF222935), extendBody: true, // accountTypeValue == '1' || body: FutureBuilder( future: guestBusfuture, builder: (ctx, snapshot) { if (snapshot.connectionState == ConnectionState.waiting) { - return - // ShimmerCommon(); + return + // ShimmerCommon(); - Center( + const Center( child: CircularProgressIndicator( color: Colors.blue, ), @@ -112,7 +110,6 @@ class _profiletabBusGestState extends State { if (snapshot.connectionState == ConnectionState.done && snapshot.hasData) { - print("Data fetched-->"); return Stack(clipBehavior: Clip.none, children: [ Container( decoration: const BoxDecoration( @@ -143,10 +140,10 @@ class _profiletabBusGestState extends State { ).image, fit: BoxFit.cover, ), - shape: LinearBorder(), + shape: const LinearBorder(), ), ) - : Container( + : SizedBox( height: 484.h, width: double.infinity, child: Image.asset( @@ -156,7 +153,7 @@ class _profiletabBusGestState extends State { ), Positioned.fill( child: Container( - decoration: BoxDecoration( + decoration: const BoxDecoration( gradient: LinearGradient( begin: Alignment.topCenter, end: Alignment.bottomCenter, @@ -232,7 +229,7 @@ class _profiletabBusGestState extends State { width: 1.0, ), boxShadow: [ - BoxShadow( + const BoxShadow( color: Color(0x66000000), offset: Offset(0, 4), blurRadius: 4.0, @@ -297,7 +294,6 @@ class _profiletabBusGestState extends State { followunfollowid = guestGetProfileBus!.data!.id; FollowUnfollowUploadata(); - print(followunfollowid); }, child: guestGetProfileBus!.data! .isIamFollowingToGuestUser == @@ -306,7 +302,7 @@ class _profiletabBusGestState extends State { height: 40.h, width: 170.w, decoration: BoxDecoration( - color: Color(0xFFD90B2E), + color: const Color(0xFFD90B2E), borderRadius: BorderRadius.circular(30.r), ), @@ -318,7 +314,7 @@ class _profiletabBusGestState extends State { height: 40.h, width: 170.w, decoration: BoxDecoration( - color: Color(0xFFD90B2E), + color: const Color(0xFFD90B2E), borderRadius: BorderRadius.circular(30.r), ), @@ -351,14 +347,11 @@ class _profiletabBusGestState extends State { sizedBoxHeight(30.h), text18w700white("About"), sizedBoxHeight(10.h), - guestGetProfileBus!.data!.bio == null || - guestGetProfileBus!.data!.bio!.isEmpty - ? - SizedBox() - : - - text14400white( - guestGetProfileBus!.data!.bio! ), + guestGetProfileBus!.data!.bio == null || + guestGetProfileBus!.data!.bio!.isEmpty + ? const SizedBox() + : text14400white( + guestGetProfileBus!.data!.bio!), sizedBoxHeight(25.h), Row( children: [ @@ -377,14 +370,13 @@ class _profiletabBusGestState extends State { )), ), sizedBoxWidth(12.w), - guestGetProfileBus! - .data!.businessOwnerName == null || guestGetProfileBus! - .data!.businessOwnerName!.isEmpty - ? - SizedBox() - : - text14400whiteblur(guestGetProfileBus! + .data!.businessOwnerName == + null || + guestGetProfileBus!.data! + .businessOwnerName!.isEmpty + ? const SizedBox() + : text14400whiteblur(guestGetProfileBus! .data!.businessOwnerName!), ], ), @@ -406,13 +398,13 @@ class _profiletabBusGestState extends State { )), ), sizedBoxWidth(12.w), - guestGetProfileBus!.data!.websiteLink == null || - guestGetProfileBus!.data!.websiteLink!.isEmpty - ? - SizedBox() - : - text14400whiteblur( - guestGetProfileBus!.data!.websiteLink!), + guestGetProfileBus!.data!.websiteLink == + null || + guestGetProfileBus! + .data!.websiteLink!.isEmpty + ? const SizedBox() + : text14400whiteblur(guestGetProfileBus! + .data!.websiteLink!), ], ), sizedBoxHeight(20.h), @@ -434,13 +426,12 @@ class _profiletabBusGestState extends State { ), sizedBoxWidth(12.w), guestGetProfileBus! - .data!.businessLocation == null || - guestGetProfileBus! - .data!.businessLocation!.isEmpty - ? - SizedBox() - : - text14400whiteblur(guestGetProfileBus! + .data!.businessLocation == + null || + guestGetProfileBus! + .data!.businessLocation!.isEmpty + ? const SizedBox() + : text14400whiteblur(guestGetProfileBus! .data!.businessLocation!), ], ), @@ -470,10 +461,9 @@ class _profiletabBusGestState extends State { null ? text14400whiteblur( ' Founded at : ${guestGetProfileBus!.data!.businessType!.createdAt}') - : - SizedBox(), - // text14400whiteblur( - // "Founded at : 2010") + : const SizedBox(), + // text14400whiteblur( + // "Founded at : 2010") ], ), sizedBoxHeight(30.h), @@ -529,7 +519,7 @@ class _profiletabBusGestState extends State { ), )), ), - Spacer(), + const Spacer(), commonContainer( width: 40.w, height: 40.h, @@ -704,7 +694,7 @@ Widget normalcardtile({ sizedBoxWidth(7.w), Icon( Icons.circle, - color: Color(0xFFFCFCFC), + color: const Color(0xFFFCFCFC), size: 4.sp, ), sizedBoxWidth(6.w), @@ -713,12 +703,12 @@ Widget normalcardtile({ ) ], ), - Spacer(), + const Spacer(), PopupMenuButton( - surfaceTintColor: Color(0xFF222935), + surfaceTintColor: const Color(0xFF222935), constraints: BoxConstraints.tightFor(width: 176.w), - offset: Offset(0, 50), - color: Color(0xFF222935), + offset: const Offset(0, 50), + color: const Color(0xFF222935), tooltip: "", itemBuilder: (BuildContext context) => [ PopupMenuItem( @@ -736,7 +726,7 @@ Widget normalcardtile({ fontFamily: "Nunito Sans", ), ), - Spacer(), + const Spacer(), Image.asset( "assets/images/png/Vector (5).png", height: 15.h, @@ -746,7 +736,7 @@ Widget normalcardtile({ ), ), ), - PopupMenuDivider(), + const PopupMenuDivider(), PopupMenuItem( onTap: () {}, child: Padding( @@ -762,7 +752,7 @@ Widget normalcardtile({ fontFamily: "Nunito Sans", ), ), - Spacer(), + const Spacer(), Image.asset( "assets/images/png/share.png", height: 20.h, @@ -772,7 +762,7 @@ Widget normalcardtile({ ), ), ), - PopupMenuDivider(), + const PopupMenuDivider(), PopupMenuItem( onTap: () {}, child: Padding( @@ -788,7 +778,7 @@ Widget normalcardtile({ fontFamily: "Nunito Sans", ), ), - Spacer(), + const Spacer(), Image.asset( "assets/images/png/f7_pin-fill (2).png", height: 25.h, @@ -814,7 +804,7 @@ Widget normalcardtile({ onTap: () { Get.toNamed(RouteName.postdetailsScreen); }, - child: Container( + child: SizedBox( height: 163.h, width: double.infinity, child: Image.asset( @@ -853,7 +843,7 @@ Widget normalcardtile({ 'assets/images/png/heart 2.png', 'assets/images/png/party-popper 2.png' ]), - Spacer(), + const Spacer(), commonContainer( width: 30.w, height: 30.h, @@ -936,11 +926,11 @@ Widget normalcardtile({ boxRadius: 30, itemsSpacing: 8, itemScale: 0.4, - itemSize: Size(45, 45), - boxPadding: EdgeInsets.all(8), - boxAnimationDuration: Duration(milliseconds: 200), - itemAnimationDuration: Duration(milliseconds: 500), - hoverDuration: Duration(milliseconds: 700), + itemSize: const Size(45, 45), + boxPadding: const EdgeInsets.all(8), + boxAnimationDuration: const Duration(milliseconds: 200), + itemAnimationDuration: const Duration(milliseconds: 500), + hoverDuration: const Duration(milliseconds: 700), // toggle: false, child: _buildReactionsIcon(mainImage.value), @@ -1013,7 +1003,7 @@ Widget containertile({required String text}) { width: 100.w, height: 30.h, borderRadius: BorderRadius.circular(30.r), - borderColor: Color(0xFFD90B2E), + borderColor: const Color(0xFFD90B2E), borderwidth: 0.9, customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 10.w), diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Guest User/View/Individual/ProfileTabIndGuest.dart b/lib/Main_Screens/ProfileTab/Guest User/View/Individual/ProfileTabIndGuest.dart similarity index 98% rename from lib/Feed Module/Main_Screens/ProfileTab/Guest User/View/Individual/ProfileTabIndGuest.dart rename to lib/Main_Screens/ProfileTab/Guest User/View/Individual/ProfileTabIndGuest.dart index 741707c..ed6cd02 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Guest User/View/Individual/ProfileTabIndGuest.dart +++ b/lib/Main_Screens/ProfileTab/Guest User/View/Individual/ProfileTabIndGuest.dart @@ -7,9 +7,8 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/ViewModel/GuestProfileApi.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/ViewModel/GuestProfileApi.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -217,7 +216,7 @@ class _ProfileTabIndGuestState extends State { ).image, fit: BoxFit.cover, ), - shape: LinearBorder(), + shape: const LinearBorder(), ), ) : Container( @@ -450,7 +449,7 @@ class _ProfileTabIndGuestState extends State { sizedBoxHeight(10.h), guestGetProfileInd!.data!.about == null || guestGetProfileInd!.data!.about!.isEmpty - ? SizedBox() + ? const SizedBox() : text14400white( guestGetProfileInd!.data!.about!), sizedBoxHeight(25.h), @@ -471,9 +470,11 @@ class _ProfileTabIndGuestState extends State { )), ), sizedBoxWidth(12.w), - guestGetProfileInd!.data!.location == null || - guestGetProfileInd!.data!.location!.isEmpty - ? SizedBox() + guestGetProfileInd!.data!.location == + null || + guestGetProfileInd! + .data!.location!.isEmpty + ? const SizedBox() : text14400whiteblur(guestGetProfileInd! .data!.location!), ], @@ -650,7 +651,7 @@ class _ProfileTabIndGuestState extends State { child: Container( height: 11.h, width: 11.w, - decoration: BoxDecoration( + decoration: const BoxDecoration( color: Colors .white, shape: BoxShape @@ -662,7 +663,7 @@ class _ProfileTabIndGuestState extends State { width: 1.w, height: 170.h, decoration: - BoxDecoration( + const BoxDecoration( color: Colors .white), ), @@ -705,7 +706,7 @@ class _ProfileTabIndGuestState extends State { children: [ guestGetProfileInd?.data?.profilePhoto == null || guestGetProfileInd!.data!.profilePhoto!.isEmpty - ? CircleAvatar(radius: 10.r, backgroundImage: AssetImage('assets/images/png/cimg1.png')) + ? CircleAvatar(radius: 10.r, backgroundImage: const AssetImage('assets/images/png/cimg1.png')) : CircleAvatar(radius: 10.r, backgroundImage: NetworkImage(guestGetProfileInd!.data!.profilePhoto!)), sizedBoxWidth( 8.w), @@ -886,7 +887,7 @@ class _ProfileTabIndGuestState extends State { scrollDirection: Axis.horizontal, // padding: // EdgeInsets.only(left: 16.w), - physics: ScrollPhysics(), + physics: const ScrollPhysics(), itemCount: guestGetProfileInd! .data!.certifications!.length, itemBuilder: (context, index) { @@ -996,7 +997,7 @@ class _ProfileTabIndGuestState extends State { fontSize: 9.sp, fontWeight: FontWeight.w400, - color: Color(0xffFFFFFF).withOpacity(0.70), + color: const Color(0xffFFFFFF).withOpacity(0.70), fontFamily: 'Helvetica'), ) : Text( @@ -1005,7 +1006,7 @@ class _ProfileTabIndGuestState extends State { fontSize: 9.sp, fontWeight: FontWeight.w400, - color: Color(0xffFFFFFF).withOpacity(0.70), + color: const Color(0xffFFFFFF).withOpacity(0.70), fontFamily: 'Helvetica'), ) ], @@ -1699,7 +1700,7 @@ class _ProfileTabIndGuestState extends State { ).image, fit: BoxFit.cover, ), - shape: LinearBorder(), + shape: const LinearBorder(), ), ) : Container( diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Guest User/ViewModel/GuestProfileApi.dart b/lib/Main_Screens/ProfileTab/Guest User/ViewModel/GuestProfileApi.dart similarity index 85% rename from lib/Feed Module/Main_Screens/ProfileTab/Guest User/ViewModel/GuestProfileApi.dart rename to lib/Main_Screens/ProfileTab/Guest User/ViewModel/GuestProfileApi.dart index 824147b..4efe360 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Guest User/ViewModel/GuestProfileApi.dart +++ b/lib/Main_Screens/ProfileTab/Guest User/ViewModel/GuestProfileApi.dart @@ -4,11 +4,10 @@ import 'dart:developer'; import 'package:regroup/Common/api_urls.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Common/controller/data/network/network_api.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/Model/GetGuestFollowers.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/Model/GetGuestFollowing.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/Model/GuestGetProfileDataBus.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/Model/GuestGetProfileDataIndi.dart'; - +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/Model/GetGuestFollowers.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/Model/GetGuestFollowing.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/Model/GuestGetProfileDataBus.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/Model/GuestGetProfileDataIndi.dart'; GuestGetProfileDataIndi? guestGetProfileInd; GuestGetProfileDataBus? guestGetProfileBus; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Model/accountSessionModel.dart b/lib/Main_Screens/ProfileTab/Model/accountSessionModel.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Model/accountSessionModel.dart rename to lib/Main_Screens/ProfileTab/Model/accountSessionModel.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Model/certificateModel.dart b/lib/Main_Screens/ProfileTab/Model/certificateModel.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Model/certificateModel.dart rename to lib/Main_Screens/ProfileTab/Model/certificateModel.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Model/editTimelineModel.dart b/lib/Main_Screens/ProfileTab/Model/editTimelineModel.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Model/editTimelineModel.dart rename to lib/Main_Screens/ProfileTab/Model/editTimelineModel.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Model/faqModel.dart b/lib/Main_Screens/ProfileTab/Model/faqModel.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Model/faqModel.dart rename to lib/Main_Screens/ProfileTab/Model/faqModel.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Model/followersModel.dart b/lib/Main_Screens/ProfileTab/Model/followersModel.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Model/followersModel.dart rename to lib/Main_Screens/ProfileTab/Model/followersModel.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Model/followingModel.dart b/lib/Main_Screens/ProfileTab/Model/followingModel.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Model/followingModel.dart rename to lib/Main_Screens/ProfileTab/Model/followingModel.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Model/privacyPolicyModel.dart b/lib/Main_Screens/ProfileTab/Model/privacyPolicyModel.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Model/privacyPolicyModel.dart rename to lib/Main_Screens/ProfileTab/Model/privacyPolicyModel.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Model/termsconditionsModel.dart b/lib/Main_Screens/ProfileTab/Model/termsconditionsModel.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Model/termsconditionsModel.dart rename to lib/Main_Screens/ProfileTab/Model/termsconditionsModel.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Model/timelineabilityModel.dart b/lib/Main_Screens/ProfileTab/Model/timelineabilityModel.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Model/timelineabilityModel.dart rename to lib/Main_Screens/ProfileTab/Model/timelineabilityModel.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/My Network/MyNetwork.dart b/lib/Main_Screens/ProfileTab/My Network/MyNetwork.dart similarity index 98% rename from lib/Feed Module/Main_Screens/ProfileTab/My Network/MyNetwork.dart rename to lib/Main_Screens/ProfileTab/My Network/MyNetwork.dart index 3a142af..ed11f14 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/My Network/MyNetwork.dart +++ b/lib/Main_Screens/ProfileTab/My Network/MyNetwork.dart @@ -8,10 +8,10 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonTabBar.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/followersModel.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/followingModel.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/followersModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/followingModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; @@ -117,11 +117,9 @@ class _FollowersTabState extends State { final data = await Profilepostmethod().postRemoveuser(updata); if (data.status == ResponseStatus.SUCCESS) { Get.back(); - print("block done"); return utils.showToast(data.message); } else { Get.back(); - print("block not done"); return utils.showToast(data.message); } } @@ -134,11 +132,9 @@ class _FollowersTabState extends State { final data = await Profilepostmethod().postBlockuser(updata); if (data.status == ResponseStatus.SUCCESS) { Get.back(); - print("block done"); return utils.showToast(data.message); } else { Get.back(); - print("block not done"); return utils.showToast(data.message); } } @@ -521,7 +517,6 @@ class _FollowingTabState extends State { final data = await Profilepostmethod().postunfollowuser(updata); if (data.status == ResponseStatus.SUCCESS) { Get.back(); - print("unfollow done"); // setState(() { // // Assuming followingobj is a list of items, remove the item with matching user ID // followingobj!.data!.removeWhere((item) => item.following!.id == userid); @@ -529,7 +524,6 @@ class _FollowingTabState extends State { return utils.showToast(data.message); } else { Get.back(); - print("unfollow not done"); return utils.showToast(data.message); } } diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/AccountSessions.dart b/lib/Main_Screens/ProfileTab/Settings/AccountSessions.dart similarity index 66% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/AccountSessions.dart rename to lib/Main_Screens/ProfileTab/Settings/AccountSessions.dart index be6b13d..2e6502b 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/AccountSessions.dart +++ b/lib/Main_Screens/ProfileTab/Settings/AccountSessions.dart @@ -1,7 +1,8 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; + import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -23,15 +24,14 @@ class _AccountSessionState extends State { @override Widget build(BuildContext context) { return Scaffold( - // key: _scaffoldKey1, - resizeToAvoidBottomInset: false, - backgroundColor: const Color(0xFF222935), - extendBody: true, - appBar: const CommonAppbar( - titleTxt: "Account sessions", - ), - body: - FutureBuilder( + // key: _scaffoldKey1, + resizeToAvoidBottomInset: false, + backgroundColor: const Color(0xFF222935), + extendBody: true, + appBar: const CommonAppbar( + titleTxt: "Account sessions", + ), + body: FutureBuilder( future: Profilegetmethod().getAccountSessions(), builder: (ctx, snapshot) { if (snapshot.data == null) { @@ -62,12 +62,10 @@ class _AccountSessionState extends State { : _buildBody(context); }, ), - - - ); + ); } - Widget _buildNoDataBody(context) { + Widget _buildNoDataBody(context) { return Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, @@ -86,47 +84,45 @@ class _AccountSessionState extends State { } Widget _buildBody(context) { - return - - Stack(children: [ - Container( - decoration: const BoxDecoration( - image: DecorationImage( - image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), - Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: - Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ - sizedBoxHeight(25.h), - text18w400white("Last login sessions"), - sizedBoxHeight(16.h), - ListView.builder( - shrinkWrap: true, - physics: const ScrollPhysics(), - itemCount: accountsessionobj!.data!.length, - itemBuilder: (context, index) { - final city = accountsessionobj!.data![index].city; - final state = accountsessionobj!.data![index].state; - final country = accountsessionobj!.data![index].country; + return Stack(children: [ + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), + ), + Padding( + padding: EdgeInsets.symmetric(horizontal: 16.w), + child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ + sizedBoxHeight(25.h), + text18w400white("Last login sessions"), + sizedBoxHeight(16.h), + ListView.builder( + shrinkWrap: true, + physics: const ScrollPhysics(), + itemCount: accountsessionobj!.data!.length, + itemBuilder: (context, index) { + final city = accountsessionobj!.data![index].city; + final state = accountsessionobj!.data![index].state; + final country = accountsessionobj!.data![index].country; - // Combine city, state, and country - final locationTitle = '$city, $state, $country'; - return sessionCard( - title: locationTitle, - devicename: accountsessionobj!.data![index].deviceName!, - ipaddress: accountsessionobj!.data![index].ipAddress! - - ); - }, - ) - ]), + // Combine city, state, and country + final locationTitle = '$city, $state, $country'; + return sessionCard( + title: locationTitle, + devicename: accountsessionobj!.data![index].deviceName!, + ipaddress: accountsessionobj!.data![index].ipAddress!); + }, ) - ]); - - } + ]), + ) + ]); + } - Widget sessionCard({required String title, required String devicename, required String ipaddress}) { + Widget sessionCard( + {required String title, + required String devicename, + required String ipaddress}) { return Padding( padding: const EdgeInsets.symmetric(vertical: 15), child: commonGlassContainer( diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/AccountSetting.dart b/lib/Main_Screens/ProfileTab/Settings/AccountSetting.dart similarity index 70% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/AccountSetting.dart rename to lib/Main_Screens/ProfileTab/Settings/AccountSetting.dart index 815dab9..7054342 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/AccountSetting.dart +++ b/lib/Main_Screens/ProfileTab/Settings/AccountSetting.dart @@ -4,10 +4,10 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/ViewModel/EditProfileApi.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; + import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -24,7 +24,7 @@ class AccountSettings extends StatefulWidget { class _AccountSettingsState extends State { // bool swichvalue = false; - String? accountTypeValue; + String? accountTypeValue; String? accounTypeLogin; @override @@ -44,15 +44,14 @@ class _AccountSettingsState extends State { }); } - Future UploadData() async { + Future UploadData() async { print("upload data called"); SharedPreferences prefs = await SharedPreferences.getInstance(); - int? accountype ; + int? accountype; if (accountvisibility == false) { accountype = 0; - } - else if (accountvisibility == true) { + } else if (accountvisibility == true) { accountype = 1; } Map updata = { @@ -64,24 +63,20 @@ class _AccountSettingsState extends State { if (data.status == ResponseStatus.SUCCESS) { String? accountype; -accountype = prefs.getString('accountTypefromLogin'); - -if (accountype == "1") { - EditProfileApi() - .getEditProfileIndividual(); -} -else if (accountype == "2") { - EditProfileApi() - .getEditProfileBusiness(); -} - + accountype = prefs.getString('accountTypefromLogin'); + if (accountype == "1") { + EditProfileApi().getEditProfileIndividual(); + } else if (accountype == "2") { + EditProfileApi().getEditProfileBusiness(); + } return utils.showToast(data.message); } else { return utils.showToast(data.message); } } + @override Widget build(BuildContext context) { return Scaffold( @@ -112,42 +107,40 @@ else if (accountype == "2") { ), sizedBoxHeight(20.h), accounTypeLogin == '1' - ? + ? Column( + children: [ + Padding( + padding: EdgeInsets.symmetric( + horizontal: 16.w, vertical: 20.h), + child: Row(children: [ + Image.asset( + "assets/images/png/eyeIcon.png", + height: 21.h, + width: 21.w, + ), + sizedBoxWidth(12.w), + text16w400_FCFCFC("Account visibility"), + Spacer(), + Transform.scale( + scale: 0.9, + child: CupertinoSwitch( + value: accountvisibility, + trackColor: Colors.white.withOpacity(0.4), + activeColor: Color(0xFF34C759), + onChanged: (bool value) { + setState(() { + accountvisibility = value; + UploadData(); - Column( - children: [ - Padding( - padding: - EdgeInsets.symmetric(horizontal: 16.w, vertical: 20.h), - child: Row(children: [ - Image.asset( - "assets/images/png/eyeIcon.png", - height: 21.h, - width: 21.w, - ), - sizedBoxWidth(12.w), - text16w400_FCFCFC("Account visibility"), - Spacer(), - Transform.scale( - scale: 0.9, - child: CupertinoSwitch( - value: accountvisibility, - trackColor: Colors.white.withOpacity(0.4), - activeColor: Color(0xFF34C759), - onChanged: (bool value) { - setState(() { - accountvisibility = value; - UploadData(); - - // swichvalue = value ?? false; - }); - })) - ]), - ), - commonDivider(), - ], - ) - : SizedBox(), + // swichvalue = value ?? false; + }); + })) + ]), + ), + commonDivider(), + ], + ) + : SizedBox(), GestureDetector( onTap: () { Get.toNamed(RouteName.changepassword); diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/ChangePassword.dart b/lib/Main_Screens/ProfileTab/Settings/ChangePassword.dart similarity index 93% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/ChangePassword.dart rename to lib/Main_Screens/ProfileTab/Settings/ChangePassword.dart index 6cd5d7f..a7d4acb 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/ChangePassword.dart +++ b/lib/Main_Screens/ProfileTab/Settings/ChangePassword.dart @@ -4,10 +4,10 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonButton.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -38,13 +38,11 @@ class _ChangePasswordState extends State { Get.back(); print("Change pass up done"); - Get.toNamed(RouteName.verifycode, - arguments: { - "currentpass" : currentpasscontroller.text, - "newpass" : newpasscontroller.text, - "confirmpass" : repeatpasscontroller.text - } - ); + Get.toNamed(RouteName.verifycode, arguments: { + "currentpass": currentpasscontroller.text, + "newpass": newpasscontroller.text, + "confirmpass": repeatpasscontroller.text + }); return utils.showToast(data.message); } else { Get.back(); @@ -60,9 +58,9 @@ class _ChangePasswordState extends State { child: Scaffold( resizeToAvoidBottomInset: false, // key: _scaffoldKey1, - backgroundColor: Color(0xFF222935), + backgroundColor: const Color(0xFF222935), extendBody: true, - appBar: CommonAppbar( + appBar: const CommonAppbar( titleTxt: "Change password", ), body: Stack(children: [ @@ -172,7 +170,6 @@ class _ChangePasswordState extends State { utils.showToast('Please fill all fields'); } else { Uploadata(); - } }, ) diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/ContactUs.dart b/lib/Main_Screens/ProfileTab/Settings/ContactUs.dart similarity index 98% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/ContactUs.dart rename to lib/Main_Screens/ProfileTab/Settings/ContactUs.dart index f8d0d96..ca8e47a 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/ContactUs.dart +++ b/lib/Main_Screens/ProfileTab/Settings/ContactUs.dart @@ -3,7 +3,7 @@ import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CommonDropdown.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/DeleteAccount.dart b/lib/Main_Screens/ProfileTab/Settings/DeleteAccount.dart similarity index 95% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/DeleteAccount.dart rename to lib/Main_Screens/ProfileTab/Settings/DeleteAccount.dart index 9bfa5ea..9eb0a61 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/DeleteAccount.dart +++ b/lib/Main_Screens/ProfileTab/Settings/DeleteAccount.dart @@ -5,10 +5,10 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonButton.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -64,9 +64,9 @@ class _DeleteAccountState extends State { child: Scaffold( // key: _scaffoldKey1, // resizeToAvoidBottomInset: false, - backgroundColor: Color(0xFF222935), + backgroundColor: const Color(0xFF222935), extendBody: true, - appBar: CommonAppbar( + appBar: const CommonAppbar( titleTxt: "", ), body: Stack(children: [ diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/FaqScreen.dart b/lib/Main_Screens/ProfileTab/Settings/FaqScreen.dart similarity index 95% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/FaqScreen.dart rename to lib/Main_Screens/ProfileTab/Settings/FaqScreen.dart index ebb976d..6a4162a 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/FaqScreen.dart +++ b/lib/Main_Screens/ProfileTab/Settings/FaqScreen.dart @@ -2,9 +2,10 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; + import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -64,10 +65,10 @@ class _FaqScreenState extends State { Widget build(BuildContext context) { return Scaffold( // key: _scaffoldKey1, - backgroundColor: Color(0xFF222935), + backgroundColor: const Color(0xFF222935), resizeToAvoidBottomInset: false, extendBody: true, - appBar: CommonAppbar( + appBar: const CommonAppbar( titleTxt: "FAQ’s", ), body: FutureBuilder( @@ -96,8 +97,8 @@ class _FaqScreenState extends State { ); } } - isExpandedList = - RxList.generate(faqobj!.data!.length, (index) => index == 0); + isExpandedList = + RxList.generate(faqobj!.data!.length, (index) => index == 0); return faqobj!.data!.isEmpty ? _buildNoDataBody(context) : _buildBody(context); diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/HelpAndSupport.dart b/lib/Main_Screens/ProfileTab/Settings/HelpAndSupport.dart similarity index 97% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/HelpAndSupport.dart rename to lib/Main_Screens/ProfileTab/Settings/HelpAndSupport.dart index 2b12ccf..a669ec7 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/HelpAndSupport.dart +++ b/lib/Main_Screens/ProfileTab/Settings/HelpAndSupport.dart @@ -3,7 +3,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -80,8 +80,7 @@ class _HelpAndSupportState extends State { ), ), accounTypeLogin == '1' - ? Column( - children: [ + ? Column(children: [ commonDivider(), GestureDetector( onTap: () { diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/Model/FetchBlockUser.dart b/lib/Main_Screens/ProfileTab/Settings/Model/FetchBlockUser.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/Model/FetchBlockUser.dart rename to lib/Main_Screens/ProfileTab/Settings/Model/FetchBlockUser.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/Model/FetchNotification.dart b/lib/Main_Screens/ProfileTab/Settings/Model/FetchNotification.dart similarity index 100% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/Model/FetchNotification.dart rename to lib/Main_Screens/ProfileTab/Settings/Model/FetchNotification.dart diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/PrivacyPolicy.dart b/lib/Main_Screens/ProfileTab/Settings/PrivacyPolicy.dart similarity index 97% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/PrivacyPolicy.dart rename to lib/Main_Screens/ProfileTab/Settings/PrivacyPolicy.dart index 609776d..7f7b775 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/PrivacyPolicy.dart +++ b/lib/Main_Screens/ProfileTab/Settings/PrivacyPolicy.dart @@ -2,9 +2,10 @@ import 'package:flutter/material.dart'; import 'package:flutter_html/flutter_html.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; + import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/ReportABug.dart b/lib/Main_Screens/ProfileTab/Settings/ReportABug.dart similarity index 96% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/ReportABug.dart rename to lib/Main_Screens/ProfileTab/Settings/ReportABug.dart index 9f559f0..905c70a 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/ReportABug.dart +++ b/lib/Main_Screens/ProfileTab/Settings/ReportABug.dart @@ -7,12 +7,12 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonButton.dart'; import 'package:regroup/Common/CommonDropDown.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CommonDropdown.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -69,9 +69,9 @@ class _ReportABugState extends State { child: Scaffold( // key: _scaffoldKey1, resizeToAvoidBottomInset: false, - backgroundColor: Color(0xFF222935), + backgroundColor: const Color(0xFF222935), extendBody: true, - appBar: CommonAppbar( + appBar: const CommonAppbar( titleTxt: "Report a bug", ), body: Stack(children: [ @@ -82,7 +82,7 @@ class _ReportABugState extends State { fit: BoxFit.fill)), ), SingleChildScrollView( - physics: ScrollPhysics(), + physics: const ScrollPhysics(), child: Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), child: Form( @@ -104,7 +104,7 @@ class _ReportABugState extends State { ), sizedBoxHeight(15.h), CustomTextFormField( - leadingIcon: Container( + leadingIcon: SizedBox( height: 25.h, width: 15.w, child: Center( @@ -145,7 +145,7 @@ class _ReportABugState extends State { ), sizedBoxHeight(15.h), CustomTextFormField( - leadingIcon: Container( + leadingIcon: SizedBox( height: 23.h, width: 23.w, child: Center( @@ -174,7 +174,7 @@ class _ReportABugState extends State { text16400white("Email address"), sizedBoxHeight(15.h), CustomTextFormField( - leadingIcon: Container( + leadingIcon: SizedBox( height: 17.h, width: 24.w, child: Center( diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/Settings.dart b/lib/Main_Screens/ProfileTab/Settings/Settings.dart similarity index 95% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/Settings.dart rename to lib/Main_Screens/ProfileTab/Settings/Settings.dart index 2cc16c7..c57d851 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/Settings.dart +++ b/lib/Main_Screens/ProfileTab/Settings/Settings.dart @@ -2,13 +2,12 @@ import 'package:flutter/material.dart'; import 'package:flutter/widgets.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; -import 'package:glassmorphism/glassmorphism.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -75,10 +74,10 @@ class _SettingsState extends State { Widget build(BuildContext context) { return Scaffold( // key: _scaffoldKey1, - backgroundColor: Color(0xFF222935), + backgroundColor: const Color(0xFF222935), extendBody: true, resizeToAvoidBottomInset: false, - appBar: CommonAppbar( + appBar: const CommonAppbar( titleTxt: "Settings", ), body: Stack(children: [ @@ -124,7 +123,7 @@ class _SettingsState extends State { commonDivider(), ], ) - : SizedBox(), + : const SizedBox(), GestureDetector( onTap: () { Get.toNamed(RouteName.helpandsupport); @@ -157,7 +156,7 @@ class _SettingsState extends State { ), commonDivider(), accounTypeLogin == '1' - ? SizedBox() + ? const SizedBox() : Column( children: [ GestureDetector( @@ -199,8 +198,8 @@ class _SettingsState extends State { ), sizedBoxWidth(12.w), text16w400_FCFCFC(text), - Spacer(), - Icon( + const Spacer(), + const Icon( Icons.arrow_forward_ios, color: Colors.white, size: 20, @@ -253,7 +252,7 @@ class _SettingsState extends State { height: 40.h, width: 130.w, decoration: BoxDecoration( - color: Color(0xFFD90B2E), + color: const Color(0xFFD90B2E), borderRadius: BorderRadius.circular(30.r), ), child: Center(child: text14400white("Keep using App")), diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/TermsCondition.dart b/lib/Main_Screens/ProfileTab/Settings/TermsCondition.dart similarity index 93% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/TermsCondition.dart rename to lib/Main_Screens/ProfileTab/Settings/TermsCondition.dart index 96c8a2d..30d9c9b 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/TermsCondition.dart +++ b/lib/Main_Screens/ProfileTab/Settings/TermsCondition.dart @@ -2,7 +2,8 @@ import 'package:flutter/material.dart'; import 'package:flutter_html/flutter_html.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; + import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; @@ -18,7 +19,7 @@ class _TermsConditionState extends State { Widget build(BuildContext context) { return Scaffold( // key: _scaffoldKey1, - backgroundColor: Color(0xFF222935), + backgroundColor: const Color(0xFF222935), extendBody: true, resizeToAvoidBottomInset: false, appBar: const CommonAppbar( @@ -28,7 +29,7 @@ class _TermsConditionState extends State { future: Profilegetmethod().getTermsConditions(), builder: (ctx, snapshot) { if (snapshot.data == null) { - return Center(child: CircularProgressIndicator()); + return const Center(child: CircularProgressIndicator()); } if (snapshot.connectionState == ConnectionState.done) { if (snapshot.hasError) { diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/VerifyCode.dart b/lib/Main_Screens/ProfileTab/Settings/VerifyCode.dart similarity index 90% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/VerifyCode.dart rename to lib/Main_Screens/ProfileTab/Settings/VerifyCode.dart index efa0b8c..3722179 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/VerifyCode.dart +++ b/lib/Main_Screens/ProfileTab/Settings/VerifyCode.dart @@ -3,14 +3,12 @@ import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:pin_code_fields/pin_code_fields.dart'; -import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Global.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; -import 'package:regroup/Utils/Common/googleOAuthService.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -41,7 +39,6 @@ class _VerifyCodeState extends State { final res = await Profilepostmethod().postChangepassverifyotp(updata); if (res.status == ResponseStatus.SUCCESS) { Get.back(); - print("verification done"); Get.back(); Get.back(); @@ -49,7 +46,6 @@ class _VerifyCodeState extends State { return utils.showToast(res.message); } else { Get.back(); - print("change pass not done"); return utils.showToast(res.message); } } @@ -64,7 +60,6 @@ class _VerifyCodeState extends State { final data = await Profilepostmethod().postChangepassword(updata); if (data.status == ResponseStatus.SUCCESS) { Get.back(); - print("otp done"); setState(() { pincodeController.clear(); @@ -73,7 +68,6 @@ class _VerifyCodeState extends State { return utils.showToast(data.message); } else { Get.back(); - print("otp not done"); return utils.showToast(data.message); } } @@ -82,7 +76,7 @@ class _VerifyCodeState extends State { Widget build(BuildContext context) { return Scaffold( backgroundColor: const Color(0xFF222935), - appBar: CommonAppbar(titleTxt: ""), + appBar: const CommonAppbar(titleTxt: ""), resizeToAvoidBottomInset: false, body: Stack( children: [ @@ -124,29 +118,27 @@ class _VerifyCodeState extends State { obscureText: false, animationType: AnimationType.fade, pinTheme: PinTheme( - selectedFillColor: Color(0xFF434A53), - inactiveFillColor: Color(0xFF434A53), - inactiveColor: Color(0xFF434A53), - activeColor: Color(0xFF434A53), - selectedColor: Color(0xFF434A53), + selectedFillColor: const Color(0xFF434A53), + inactiveFillColor: const Color(0xFF434A53), + inactiveColor: const Color(0xFF434A53), + activeColor: const Color(0xFF434A53), + selectedColor: const Color(0xFF434A53), shape: PinCodeFieldShape.underline, borderRadius: BorderRadius.circular(5), fieldHeight: 70, fieldWidth: 70, activeFillColor: // Colors.white - Color(0xFF303030).withOpacity(0.4), + const Color(0xFF303030).withOpacity(0.4), // textStyle: TextStyle(color: Colors.white, fontSize: 20), // Change text color and font size ), - animationDuration: Duration(milliseconds: 300), + animationDuration: const Duration(milliseconds: 300), enableActiveFill: true, autovalidateMode: AutovalidateMode.onUserInteraction, controller: pincodeController, onCompleted: (v) { - print("Completed"); }, onChanged: (value) { - print(value); setState(() { // currentText = value; }); @@ -158,7 +150,6 @@ class _VerifyCodeState extends State { fontFamily: 'Helvetica', ), beforeTextPaste: (text) { - print("Allowing to paste $text"); return true; }, appContext: context, @@ -166,9 +157,9 @@ class _VerifyCodeState extends State { sizedBoxHeight(10.h), Center( child: TimerButton( - disabledTextStyle: TextStyle(color: Colors.red), - activeTextStyle: TextStyle(color: Colors.white), - disabledColor: Color(0XFF222935).withOpacity(0.10), + disabledTextStyle: const TextStyle(color: Colors.red), + activeTextStyle: const TextStyle(color: Colors.white), + disabledColor: const Color(0XFF222935).withOpacity(0.10), buttonType: ButtonType.textButton, label: "Resend OTP", timeOutInSeconds: 6, @@ -179,7 +170,7 @@ class _VerifyCodeState extends State { }); }, // disabledColor: Colors.white, - color: Color(0XFF222935).withOpacity(0.10), + color: const Color(0XFF222935).withOpacity(0.10), ), ), // ), diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart b/lib/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart similarity index 99% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart rename to lib/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart index edfb5b6..f80841d 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart +++ b/lib/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart @@ -8,8 +8,8 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/Model/FetchBlockUser.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/ViewModel/BlockedUserApi.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/Model/FetchBlockUser.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/ViewModel/BlockedUserApi.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/View/Notification.dart b/lib/Main_Screens/ProfileTab/Settings/View/Notification.dart similarity index 97% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/View/Notification.dart rename to lib/Main_Screens/ProfileTab/Settings/View/Notification.dart index 98dd755..c00e370 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/View/Notification.dart +++ b/lib/Main_Screens/ProfileTab/Settings/View/Notification.dart @@ -4,9 +4,9 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/ViewModel/NotificationApi.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/ViewModel/NotificationApi.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/ViewModel/BlockedUserApi.dart b/lib/Main_Screens/ProfileTab/Settings/ViewModel/BlockedUserApi.dart similarity index 95% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/ViewModel/BlockedUserApi.dart rename to lib/Main_Screens/ProfileTab/Settings/ViewModel/BlockedUserApi.dart index 10b0369..74c9400 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/ViewModel/BlockedUserApi.dart +++ b/lib/Main_Screens/ProfileTab/Settings/ViewModel/BlockedUserApi.dart @@ -3,7 +3,7 @@ import 'dart:async'; import 'package:regroup/Common/api_urls.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Common/controller/data/network/network_api.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/Model/FetchBlockUser.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/Model/FetchBlockUser.dart'; FetchBlockedUser? fetchblockuserobj; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/ViewModel/NotificationApi.dart b/lib/Main_Screens/ProfileTab/Settings/ViewModel/NotificationApi.dart similarity index 94% rename from lib/Feed Module/Main_Screens/ProfileTab/Settings/ViewModel/NotificationApi.dart rename to lib/Main_Screens/ProfileTab/Settings/ViewModel/NotificationApi.dart index 6f53d7c..569374a 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/ViewModel/NotificationApi.dart +++ b/lib/Main_Screens/ProfileTab/Settings/ViewModel/NotificationApi.dart @@ -1,7 +1,7 @@ import 'package:regroup/Common/api_urls.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Common/controller/data/network/network_api.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/Model/FetchNotification.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/Model/FetchNotification.dart'; FetchNotification? fetchNoti; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Share profile/ShareProfile.dart b/lib/Main_Screens/ProfileTab/Share profile/ShareProfile.dart similarity index 98% rename from lib/Feed Module/Main_Screens/ProfileTab/Share profile/ShareProfile.dart rename to lib/Main_Screens/ProfileTab/Share profile/ShareProfile.dart index ee9b84a..c92d6c8 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Share profile/ShareProfile.dart +++ b/lib/Main_Screens/ProfileTab/Share profile/ShareProfile.dart @@ -6,7 +6,7 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -65,7 +65,8 @@ class _ShareProfileState extends State { Container( decoration: const BoxDecoration( image: DecorationImage( - image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), ), SingleChildScrollView( child: Column(children: [ diff --git a/lib/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart b/lib/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart new file mode 100644 index 0000000..2fa1a54 --- /dev/null +++ b/lib/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart @@ -0,0 +1,1002 @@ +import 'dart:developer'; +import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:get/get.dart'; +import 'package:regroup/Common/CommonGlassmorphism.dart'; +import 'package:regroup/Common/CommonWidget.dart'; +import 'package:regroup/Common/base_manager.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/timelineabilityModel.dart' + as timelineabilist; +import 'package:regroup/Main_Screens/ProfileTab/view_model/gettimelineability.dart'; +// import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/timelineabilityModel.dart' +// as timelineabilist; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profileGetmethod.dart'; +import 'package:regroup/Main_Screens/ProfileTab/view_model/profilePostmethod.dart'; + +import 'package:regroup/Utils/Common/CommonAppbar.dart'; +import 'package:regroup/Utils/Common/CommonDropdown.dart'; +import 'package:regroup/Utils/Common/CustomNextButton.dart'; +import 'package:regroup/Utils/Common/CustomTextformfield.dart'; +import 'package:regroup/Utils/Common/sized_box.dart'; +import 'package:regroup/Utils/dialogs.dart'; +import 'package:regroup/Utils/texts.dart'; +import 'package:regroup/resources/routes/route_name.dart'; +import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart'; +import 'package:intl/intl.dart'; +import 'package:async/src/future_group.dart'; + +class AddTimeline extends StatefulWidget { + const AddTimeline({super.key}); + + @override + State createState() => _AddTimelineState(); +} + +class _AddTimelineState extends State { + TextEditingController dateController = TextEditingController(); + TextEditingController dateController2 = TextEditingController(); + TextEditingController clubNameController = TextEditingController(); + TextEditingController rollnameController = TextEditingController(); + TextEditingController teamnameController = TextEditingController(); + + int id = Get.arguments["id"]; + bool edited = Get.arguments["edit"]; + + RxBool isChecked = false.obs; + + timelineabilist.TimelineAbilityListModel? abilityModel; + List timeline = []; + List _abilitydrop = []; + + Future fetchABilitylist() async { + TimelineAbilityListApi abilityLsitAPI = TimelineAbilityListApi(); + ResponseData response = await abilityLsitAPI.getAbilitylistApi(); + + if (response.status == ResponseStatus.SUCCESS) { + abilityModel = + timelineabilist.TimelineAbilityListModel.fromJson(response.data!); + setState(() { + timeline = abilityModel!.data ?? []; // Store the fetched cities + _abilitydrop = + timeline.map((platform) => platform.name.toString()).toList(); + }); + log(timeline.toString()); + } else {} + } + + List selectedabilityid = []; + + void getCatIdFromName(List selectedAbilities) { + selectedabilityid.clear(); // Clear existing selections + for (var name in selectedAbilities) { + for (var i = 0; i < timeline.length; i++) { + if (name == timeline[i].name) { + selectedabilityid.add(timeline[i].id!); + break; // Assuming each name is unique, we break after finding a match + } + } + } + } + + // late Future myfuture; + FutureGroup futureGroup = FutureGroup(); + RxBool isloading = true.obs; + List seelctedNameList = []; + @override + void initState() { + // TODO: implement initState + + if (edited == true) { + // futureGroup.add( + Profilegetmethod().getEditTimeline(id).then((value) { + clubNameController.text = + edittimelineobj!.data!.timelineData!.clubName ?? ""; + rollnameController.text = + edittimelineobj!.data!.timelineData!.roleName ?? ""; + teamnameController.text = + edittimelineobj!.data!.timelineData!.teamName ?? ""; + ""; + dateController.text = + edittimelineobj!.data!.timelineData!.startDate ?? ""; + dateController2.text = + edittimelineobj!.data!.timelineData!.endDate ?? ""; + + log(_abilityMap.length.toString()); + // futureGroup.add( + fetchABilitylist().then((value) { + String abilitiesXids = + edittimelineobj!.data!.timelineData!.abilitiesXids ?? ""; + abilitiesIds = abilitiesXids + .split(',') + .map((e) => int.tryParse(e.trim()) ?? 0) // Trim spaces around IDs + .toList(); + selectedabilityid = abilitiesIds; + + for (int i = 0; i < _abilitydrop.length; i++) { + _abilityMap.add({ + "id": i + 1, + "name": _abilitydrop[i], + }); + } + getSelectedNames(selectedabilityid).then((value) { + seelctedNameList = value; + isloading = false.obs; + }); + }); + // ); + }); + } else { + fetchABilitylist().then((value) { + isloading = false.obs; + }); + } + + super.initState(); + } + + List abilitiesIds = []; + + UploadData() async { + // SharedPreferences prefs = await SharedPreferences.getInstance(); + utils.loader(); + String abilitiesIds = selectedabilityid.join(','); + Map updata = { + "club_name": clubNameController.text, + "role_name": rollnameController.text, + "team_name": teamnameController.text, + "start_date": dateController.text, + "end_date": dateController2.text, + "abilities_xids": abilitiesIds, + }; + final data = await Profilepostmethod().postTimeline(updata); + if (data.status == ResponseStatus.SUCCESS) { + Get.back(); + // Get.back(); + // await EditProfileApi().getEditProfileIndividual().then((value) { + // Get.back(); + // }); + Get.toNamed(RouteName.mainscreen, arguments: 4); + + return utils.showToast(data.message); + } else { + Get.back(); + return utils.showToast(data.message); + } + } + + EdituploadData() async { + utils.loader(); + String abilitiesIds = selectedabilityid.join(','); + Map updata = { + "club_name": clubNameController.text, + "role_name": rollnameController.text, + "team_name": teamnameController.text, + "start_date": dateController.text, + "end_date": dateController2.text, + "abilities_xids": abilitiesIds, + "timeline_id": id, + }; + final data = await Profilepostmethod().postEditTimeline(updata); + if (data.status == ResponseStatus.SUCCESS) { + Get.back(); + // await EditProfileApi().getEditProfileIndividual().then((value) { + // Get.back(); + // }); + + // utils.showToast(data.message); + // await Future.delayed( + // Duration(milliseconds: 500)); // Add a small delay if needed + // Get.toNamed(RouteName.mainscreen, arguments: 4); + Get.toNamed(RouteName.mainscreen, arguments: 4); + } else { + Get.back(); + return utils.showToast(data.message); + } + } + +// List> _abilityMap = []; + List> _abilityMap = []; + List listData = []; + +// Function to get names from selected IDs + Future> getSelectedNames(List selectedIds) async { + List selectedNames = []; + for (int id in selectedIds) { + for (Map ability in _abilityMap) { + if (ability["id"] == id) { + selectedNames.add(ability["name"]); + break; + } + } + _abilitydrop = + _abilityMap.map((ability) => ability["name"] as String).toList(); + } + + return selectedNames; + } + + @override + Widget build(BuildContext context) { + return GestureDetector( + onTap: () => FocusManager.instance.primaryFocus?.unfocus(), + child: Scaffold( + // resizeToAvoidBottomInset: false, + // key: _scaffoldKey1, + backgroundColor: const Color(0xFF222935), + extendBody: true, + appBar: const CommonAppbar( + titleTxt: "Add timeline", + ), + body: Obx(() + // { + => + isloading.value + ? const Center( + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + CircularProgressIndicator(), + ], + )) + : edited == true + ? Stack(children: [ + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage( + "assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), + ), + ListView( + physics: const ScrollPhysics(), + children: [ + Padding( + padding: EdgeInsets.symmetric( + horizontal: 16.w), + child: Column( + crossAxisAlignment: + CrossAxisAlignment.start, + children: [ + sizedBoxHeight(20.h), + text16400white("Club name"), + sizedBoxHeight(15.h), + CustomTextFormField( + textEditingController: + clubNameController, + texttype: TextInputType.text, + hintText: 'Enter club name', + validator: (value) { + if (value!.isEmpty) { + return 'Enter your club name '; + } + return null; + }, + inputFormatters: [ + // LengthLimitingTextInputFormatter(20), + RemoveEmojiInputFormatter(), + FilteringTextInputFormatter + .allow(RegExp('[a-zA-Z ]')) + ], + ), + sizedBoxHeight(25.h), + text16400white("Role in "), + sizedBoxHeight(15.h), + CustomTextFormField( + textEditingController: + rollnameController, + texttype: TextInputType.text, + hintText: + 'Enter role in the club', + validator: (value) { + if (value!.isEmpty) { + return 'Enter role in the club'; + } + return null; + }, + inputFormatters: [ + // LengthLimitingTextInputFormatter(20), + RemoveEmojiInputFormatter(), + FilteringTextInputFormatter + .allow(RegExp('[a-zA-Z ]')) + ], + ), + sizedBoxHeight(25.h), + text16400white("Team name"), + sizedBoxHeight(15.h), + CustomTextFormField( + textEditingController: + teamnameController, + texttype: TextInputType.text, + hintText: 'Enter team name', + validator: (value) { + if (value!.isEmpty) { + return 'Enter your team name '; + } + return null; + }, + inputFormatters: [ + // LengthLimitingTextInputFormatter(20), + RemoveEmojiInputFormatter(), + FilteringTextInputFormatter + .allow(RegExp( + '[a-zA-ZS0-9 ]')), + ], + ), + sizedBoxHeight(25.h), + Row( + mainAxisAlignment: + MainAxisAlignment + .spaceBetween, + crossAxisAlignment: + CrossAxisAlignment.start, + children: [ + Expanded( + child: Column( + crossAxisAlignment: + CrossAxisAlignment + .start, + children: [ + text16400white( + "Start date "), + sizedBoxHeight(10.h), + GestureDetector( + onTap: () => datePicker( + context, + dateController), + child: AbsorbPointer( + child: + CustomTextFormField( + textEditingController: + dateController, + leadingIcon: + Container( + height: 20.h, + width: 20.w, + child: Center( + child: + Image.asset( + "assets/images/png/calender.png", + height: 20.h, + width: 20.w, + ), + ), + ), + ), + ), + ) + ], + ), + ), + sizedBoxWidth(10.h), + Expanded( + child: Column( + crossAxisAlignment: + CrossAxisAlignment + .start, + children: [ + text16400white( + "End date"), + sizedBoxHeight(10.h), + GestureDetector( + onTap: () => datePicker( + context, + dateController2), + child: AbsorbPointer( + child: + CustomTextFormField( + textEditingController: + dateController2, + leadingIcon: + Container( + height: 20.h, + width: 20.w, + child: Center( + child: + Image.asset( + "assets/images/png/calender.png", + height: 20.h, + width: 20.w, + ), + ), + ), + ), + ), + ), + sizedBoxHeight(10.h), + Row( + children: [ + Obx(() { + return commonGlassContainer( + border: 1, + borderradius: 2, + height: 20.h, + width: 20.w, + opacity1: 0.24, + opacity2: 0.24, + customWidget: + Transform + .scale( + scale: 1.2, + child: Checkbox( + side: const BorderSide( + color: Color( + 0xFF434A53)), + value: + isChecked + .value, + activeColor: + Colors + .transparent, + checkColor: + Colors + .white, + onChanged: + ((value) { + // isChecked.value = value!; + isChecked + .value = + value!; + if (isChecked + .value) { + // Set end date to today's date + dateController2 + .text = DateFormat( + 'yyyy-MM-dd') + .format( + DateTime.now()); + } else { + // Clear end date when checkbox is unchecked + dateController2 + .clear(); + } + }), + ), + ), + ); + }), + sizedBoxWidth(8.w), + text10400white( + "Present") + ], + ), + ], + ), + ) + ], + ), + text16400white("Ability"), + sizedBoxHeight(15.h), + // CustomDropDownCheckBoxTimeline( + // header: 'Select ability', + // title: '', + // listData: _abilitydrop, + // onItemSelected: getCatIdFromName, + // initiallySelected: abilitiesIds + // .map((id) => id.toString()) + // .toList(), + // ), + CustomDropDownCheckBoxTimeline( + header: 'Select ability', + title: '', + listData: _abilitydrop, + // _abilityMap.map((ability) => ability["name"]).toList(), + onItemSelected: getCatIdFromName, + // (selectedNames) { + // // Convert selected names back to IDs if needed + // List selectedIds = []; + // for (String name in selectedNames) { + // for (Map ability + // in _abilityMap) { + // if (ability["name"] == name) { + // selectedIds.add(ability["id"]); + // break; + // } + // } + // } + // // Use selectedIds as needed + // print(selectedIds); + // }, + initiallySelected: + seelctedNameList, // Pass initially selected names + ), + sizedBoxHeight(80.h), + Padding( + padding: EdgeInsets.symmetric( + horizontal: 20.w), + child: CustomButton( + text: "Add timeline", + onPressed: () { + if (clubNameController.text.isBlank! || + rollnameController + .text.isBlank! || + teamnameController + .text.isBlank! || + dateController + .text.isBlank! || + dateController2 + .text.isBlank! || + selectedabilityid + .isEmpty) { + utils.showToast( + 'Please fill all fields'); + } else { + EdituploadData(); + } + }, + ), + ), + ]), + ) + ]) + ]) + : Stack(children: [ + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage( + "assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), + ), + ListView( + physics: const ScrollPhysics(), + children: [ + Padding( + padding: EdgeInsets.symmetric( + horizontal: 16.w), + child: Column( + crossAxisAlignment: + CrossAxisAlignment.start, + children: [ + sizedBoxHeight(20.h), + text16400white("Club name"), + sizedBoxHeight(15.h), + CustomTextFormField( + textEditingController: + clubNameController, + texttype: TextInputType.text, + hintText: 'Enter club name', + validator: (value) { + if (value!.isEmpty) { + return 'Enter your full name '; + } + return null; + }, + inputFormatters: [ + // LengthLimitingTextInputFormatter(20), + RemoveEmojiInputFormatter(), + FilteringTextInputFormatter + .allow(RegExp('[a-zA-Z ]')) + ], + ), + sizedBoxHeight(25.h), + text16400white("Role in the club"), + sizedBoxHeight(15.h), + CustomTextFormField( + textEditingController: + rollnameController, + texttype: TextInputType.text, + hintText: + 'Enter role in the club', + validator: (value) { + if (value!.isEmpty) { + return 'Enter role in the club'; + } + return null; + }, + inputFormatters: [ + // LengthLimitingTextInputFormatter(20), + RemoveEmojiInputFormatter(), + FilteringTextInputFormatter + .allow(RegExp('[a-zA-Z ]')) + ], + ), + sizedBoxHeight(25.h), + text16400white("Team name"), + sizedBoxHeight(15.h), + CustomTextFormField( + textEditingController: + teamnameController, + texttype: TextInputType.text, + hintText: 'Enter team name', + validator: (value) { + if (value!.isEmpty) { + return 'Enter your team name '; + } + return null; + }, + inputFormatters: [ + // LengthLimitingTextInputFormatter(20), + RemoveEmojiInputFormatter(), + FilteringTextInputFormatter + .allow(RegExp( + '[a-zA-ZS0-9 ]')), + ], + ), + sizedBoxHeight(25.h), + Row( + mainAxisAlignment: + MainAxisAlignment + .spaceBetween, + crossAxisAlignment: + CrossAxisAlignment.start, + children: [ + Expanded( + child: Column( + crossAxisAlignment: + CrossAxisAlignment + .start, + children: [ + text16400white( + "Start date "), + sizedBoxHeight(10.h), + GestureDetector( + onTap: () => datePicker( + context, + dateController), + child: AbsorbPointer( + child: + CustomTextFormField( + textEditingController: + dateController, + leadingIcon: + Container( + height: 20.h, + width: 20.w, + child: Center( + child: + Image.asset( + "assets/images/png/calender.png", + height: 20.h, + width: 20.w, + ), + ), + ), + ), + ), + ) + ], + ), + ), + sizedBoxWidth(10.h), + Expanded( + child: Column( + crossAxisAlignment: + CrossAxisAlignment + .start, + children: [ + text16400white( + "End date"), + sizedBoxHeight(10.h), + GestureDetector( + onTap: () => datePicker( + context, + dateController2), + child: AbsorbPointer( + child: + CustomTextFormField( + textEditingController: + dateController2, + leadingIcon: + Container( + height: 20.h, + width: 20.w, + child: Center( + child: + Image.asset( + "assets/images/png/calender.png", + height: 20.h, + width: 20.w, + ), + ), + ), + ), + ), + ), + sizedBoxHeight(10.h), + Row( + children: [ + Obx(() { + return commonGlassContainer( + border: 1, + borderradius: 2, + height: 20.h, + width: 20.w, + opacity1: 0.24, + opacity2: 0.24, + customWidget: + Transform + .scale( + scale: 1.2, + child: Checkbox( + side: const BorderSide( + color: Color( + 0xFF434A53)), + value: + isChecked + .value, + activeColor: + Colors + .transparent, + checkColor: + Colors + .white, + onChanged: + ((value) { + // isChecked.value = value!; + isChecked + .value = + value!; + if (isChecked + .value) { + // Set end date to today's date + dateController2 + .text = DateFormat( + 'yyyy-MM-dd') + .format( + DateTime.now()); + } else { + // Clear end date when checkbox is unchecked + dateController2 + .clear(); + } + }), + ), + ), + ); + }), + sizedBoxWidth(8.w), + text10400white( + "Present") + ], + ), + ], + ), + ) + ], + ), + text16400white("Ability"), + sizedBoxHeight(15.h), + CustomDropDownChexkBox( + header: 'Select ability', + title: '', + listData: _abilitydrop, + onItemSelected: getCatIdFromName, + initiallySelected: [], // or pass initial values if needed + ), + sizedBoxHeight(80.h), + Padding( + padding: EdgeInsets.symmetric( + horizontal: 20.w), + child: CustomButton( + text: "Add timeline", + onPressed: () { + if (clubNameController.text.isBlank! || + rollnameController + .text.isBlank! || + teamnameController + .text.isBlank! || + dateController + .text.isBlank! || + dateController2 + .text.isBlank! || + selectedabilityid + .isEmpty) { + utils.showToast( + 'Please fill all fields'); + } else { + UploadData(); + } + }, + ), + ), + ]), + ) + ]) + ]) + + // } + )), + ); + } +} + +class CustomDropDownCheckBoxTimeline extends StatefulWidget { + const CustomDropDownCheckBoxTimeline({ + Key? key, + required this.header, + required this.title, + required this.listData, + required this.onItemSelected, + this.leadingImage, + this.showOtherOption = false, + required this.initiallySelected, + }) : super(key: key); + + final String header; + final String title; + final List listData; + final Function(List) onItemSelected; + final Widget? leadingImage; + final bool showOtherOption; + final List initiallySelected; + + @override + State createState() => + _CustomDropDownCheckBoxTimelineState(); +} + +class _CustomDropDownCheckBoxTimelineState + extends State { + RxBool onDropTap = false.obs; + RxList selectedValues = [].obs; + final TextEditingController _textController = TextEditingController(); + + @override + void initState() { + super.initState(); + selectedValues + .addAll(widget.initiallySelected); // Initialize selectedValues + } + + List> _buildDropdownMenuItems() { + return widget.listData.asMap().entries.map((entry) { + int index = entry.key; + String item = entry.value; + return DropdownMenuItem( + value: item, + child: InkWell( + onTap: () { + setState(() { + if (selectedValues.contains(item)) { + selectedValues.remove(item); + } else { + selectedValues.add(item); + } + _textController.clear(); + widget.onItemSelected(selectedValues.toList()); + }); + }, + child: Column( + mainAxisAlignment: MainAxisAlignment.start, + children: [ + Row( + children: [ + Obx(() { + return Checkbox( + value: selectedValues.contains(item), + activeColor: Colors.white, + checkColor: const Color(0xFFD90B2E), + onChanged: (bool? value) { + setState(() { + if (value == true) { + selectedValues.add(item); + } else { + selectedValues.remove(item); + } + _textController.clear(); + widget.onItemSelected(selectedValues.toList()); + }); + }, + ); + }), + const SizedBox(width: 8), + Expanded( + child: Text( + item, + style: const TextStyle( + color: Colors.white, + fontSize: 16, + fontFamily: 'Helvetica', + fontWeight: FontWeight.w500, + ), + maxLines: 1, // Adjust as needed + overflow: TextOverflow.ellipsis, + ), + ), + ], + ), + if (index != widget.listData.length - 1) + const Divider(thickness: 1, color: Color(0xFF434A53)), + ], + ), + ), + ); + }).toList(); + } + + @override + Widget build(BuildContext context) { + return Obx( + () => Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + GestureDetector( + onTap: () { + onDropTap.value = !onDropTap.value; + }, + child: Container( + width: double.infinity, + // height: 50, + padding: const EdgeInsets.only( + right: 22, left: 12, top: 15, bottom: 15), + decoration: BoxDecoration( + color: const Color(0xFFFFFFFF).withOpacity(0.10), + borderRadius: onDropTap.value + ? const BorderRadius.vertical( + top: Radius.circular(30), + ) + : const BorderRadius.all(Radius.circular(30)), + gradient: LinearGradient( + begin: Alignment.topLeft, + end: Alignment.bottomRight, + colors: [ + const Color(0xFFffffff).withOpacity(0.50), + const Color(0xFFFFFFFF).withOpacity(0.50), + ], + ), + border: Border.all(color: const Color(0xFF434A53)), + ), + child: Center( + child: Row( + mainAxisAlignment: MainAxisAlignment.start, + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + widget.leadingImage == null + ? const SizedBox() + : widget.leadingImage!, + const SizedBox(width: 12), + Expanded( + child: Text( + selectedValues.isEmpty + ? widget.header + : selectedValues.join(', '), + style: const TextStyle( + color: Colors.white, + fontSize: 16, + fontFamily: 'Helvetica', + fontWeight: FontWeight.w400, + ), + // overflow: TextOverflow.ellipsis, + ), + ), + // const Spacer(), + onDropTap.value + ? Image.asset('assets/images/png/arrowup.png') + : Image.asset('assets/images/png/arrowdown.png'), + ], + ), + ), + ), + ), + if (onDropTap.value) + Scrollbar( + child: Container( + width: double.infinity, + decoration: BoxDecoration( + color: const Color(0xFFFFFFFF).withOpacity(0.10), + borderRadius: const BorderRadius.vertical( + bottom: Radius.circular(30), + ), + border: Border.all(color: const Color(0xFF434A53)), + gradient: LinearGradient( + begin: Alignment.topLeft, + end: Alignment.bottomRight, + colors: [ + const Color(0xFFffffff).withOpacity(0.50), + const Color(0xFFFFFFFF).withOpacity(0.50), + ], + ), + ), + child: Column( + children: _buildDropdownMenuItems(), + ), + ), + ), + ], + ), + ); + } +} diff --git a/lib/Feed Module/Main_Screens/ProfileTab/view_model/gettimelineability.dart b/lib/Main_Screens/ProfileTab/view_model/gettimelineability.dart similarity index 90% rename from lib/Feed Module/Main_Screens/ProfileTab/view_model/gettimelineability.dart rename to lib/Main_Screens/ProfileTab/view_model/gettimelineability.dart index 37223ee..cea1867 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/view_model/gettimelineability.dart +++ b/lib/Main_Screens/ProfileTab/view_model/gettimelineability.dart @@ -4,7 +4,7 @@ import 'package:regroup/Common/api_urls.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Common/controller/data/network/network_api.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/timelineabilityModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/timelineabilityModel.dart'; class TimelineAbilityListApi { TimelineAbilityListApi(); diff --git a/lib/Feed Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart b/lib/Main_Screens/ProfileTab/view_model/profileGetmethod.dart similarity index 81% rename from lib/Feed Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart rename to lib/Main_Screens/ProfileTab/view_model/profileGetmethod.dart index 15eb216..ca3898d 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/view_model/profileGetmethod.dart +++ b/lib/Main_Screens/ProfileTab/view_model/profileGetmethod.dart @@ -4,15 +4,15 @@ import 'dart:developer'; import 'package:regroup/Common/api_urls.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Common/controller/data/network/network_api.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/accountSessionModel.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/certificateModel.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/editTimelineModel.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/faqModel.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/followersModel.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/followingModel.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/privacyPolicyModel.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/termsconditionsModel.dart'; -// import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Model/timelineabilityModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/accountSessionModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/certificateModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/editTimelineModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/faqModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/followersModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/followingModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/privacyPolicyModel.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Model/termsconditionsModel.dart'; +// import 'package:regroup/Main_Screens/ProfileTab/Model/timelineabilityModel.dart'; FaqModel? faqobj; PrivacypolicyModel? privacyobj; diff --git a/lib/Feed Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart b/lib/Main_Screens/ProfileTab/view_model/profilePostmethod.dart similarity index 78% rename from lib/Feed Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart rename to lib/Main_Screens/ProfileTab/view_model/profilePostmethod.dart index 0fc9289..2323265 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/view_model/profilePostmethod.dart +++ b/lib/Main_Screens/ProfileTab/view_model/profilePostmethod.dart @@ -17,112 +17,82 @@ class Profilepostmethod { utf8.encode('RegroupUserName:71%@L%es^bUX94`J9XT*@bh,._WWM{\$%^^&&')); Future> postContactus(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postcontactus, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postReportandbug(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postreportbug, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postBlockuser(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postblock, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postunfollowuser(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postunfollow, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postRemoveuser(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postremoveuser, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postChangepassword(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postchangepassword, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postChangepassverifyotp(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postchangepassverify, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postTimeline(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.posttimeline, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postAccountvisibility(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postaccountvisibility, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postDeleteaccount(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postdeleteaccount, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } @@ -179,7 +149,6 @@ class Profilepostmethod { return ResponseData("success", ResponseStatus.SUCCESS, data: response.data); } else if (response.statusCode == 203) { - print(response.data); return ResponseData("success", ResponseStatus.PRIVATE, data: response.data); } else { @@ -194,46 +163,34 @@ class Profilepostmethod { } Future> postEditTimeline(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postedittimeline, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postRemoveTimeline(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postremovetimeline, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postRemoveCertification(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postremovecertification, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } Future> postCertification(updata) async { - print("updata is $updata"); final response = await NetworkApiServices().postApi( updata, ApiUrls.postcertification, ); - print("response is ${response.data}"); - print("response message is ${response.message}"); return response; } diff --git a/lib/Feed Module/Notification/View/notification.dart b/lib/Notifications/notification.dart similarity index 95% rename from lib/Feed Module/Notification/View/notification.dart rename to lib/Notifications/notification.dart index 619f56b..90f2fc6 100644 --- a/lib/Feed Module/Notification/View/notification.dart +++ b/lib/Notifications/notification.dart @@ -3,7 +3,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:glassmorphism/glassmorphism.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -57,12 +57,13 @@ class _NotificationPageState extends State { ), body: Stack( children: [ - // const CommonBlurLeftRed(), - const Positioned(top: 10, left: -30, child: CommonBlurLeftSecond()), - // const CommonBlurRightRed(), - // const CommonBlurLeft(), - const Positioned(top: 150, right: -30, child: CommonBlurRightSecond()), - const Positioned(top: 350, left: -30, child: CommonBlurLeftBlue()), + // // const CommonBlurLeftRed(), + // const Positioned(top: 10, left: -30, child: CommonBlurLeftSecond()), + // // const CommonBlurRightRed(), + // // const CommonBlurLeft(), + // const Positioned( + // top: 150, right: -30, child: CommonBlurRightSecond()), + // const Positioned(top: 350, left: -30, child: CommonBlurLeftBlue()), GlassmorphicContainer( width: MediaQuery.of(context).size.width, height: diff --git a/lib/onboarding/Signup/View/Business/View/step1Letusunderstandbetter.dart b/lib/onboarding/Signup/View/Business/View/step1Letusunderstandbetter.dart index f60173a..2740593 100644 --- a/lib/onboarding/Signup/View/Business/View/step1Letusunderstandbetter.dart +++ b/lib/onboarding/Signup/View/Business/View/step1Letusunderstandbetter.dart @@ -8,7 +8,7 @@ import 'package:glassmorphism/glassmorphism.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/ImageUpload.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -98,10 +98,10 @@ class _LetusUnderstandState extends State { Get.snackbar( "Success!", 'success!', - duration: Duration(seconds: 2), + duration: const Duration(seconds: 2), colorText: Colors.white, backgroundColor: Colors.green, - margin: EdgeInsets.all(8), + margin: const EdgeInsets.all(8), snackStyle: SnackStyle.FLOATING, snackPosition: SnackPosition.BOTTOM, ); @@ -111,10 +111,10 @@ class _LetusUnderstandState extends State { Get.snackbar( "Error!", data.message, - duration: Duration(seconds: 2), + duration: const Duration(seconds: 2), colorText: Colors.white, backgroundColor: Colors.red, - margin: EdgeInsets.all(8), + margin: const EdgeInsets.all(8), snackStyle: SnackStyle.FLOATING, snackPosition: SnackPosition.BOTTOM, ); @@ -124,10 +124,10 @@ class _LetusUnderstandState extends State { Get.snackbar( "Error!", data.data['message'], - duration: Duration(seconds: 2), + duration: const Duration(seconds: 2), colorText: Colors.white, backgroundColor: Colors.red, - margin: EdgeInsets.all(8), + margin: const EdgeInsets.all(8), snackStyle: SnackStyle.FLOATING, snackPosition: SnackPosition.BOTTOM, ); @@ -153,7 +153,7 @@ class _LetusUnderstandState extends State { Widget durationPickerDialog() { int selectedHour = 1; return AlertDialog( - title: Text('Select Duration'), + title: const Text('Select Duration'), content: Container( width: double.minPositive, child: Container( @@ -178,7 +178,7 @@ class _LetusUnderstandState extends State { ), actions: [ TextButton( - child: Text('Cancel'), + child: const Text('Cancel'), onPressed: () { Navigator.of(context).pop(); }, @@ -190,7 +190,7 @@ class _LetusUnderstandState extends State { @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Color.fromARGB(255, 18, 32, 47), + backgroundColor: const Color.fromARGB(255, 18, 32, 47), body: Stack( children: [ // Positioned(top: 70, left: -30, child: CommonBlurLeftSecond()), @@ -274,7 +274,7 @@ class _LetusUnderstandState extends State { height: 25.h, decoration: ShapeDecoration( shape: RoundedRectangleBorder( - side: BorderSide(width: 1, color: Color(0xFF434A53)), + side: const BorderSide(width: 1, color: Color(0xFF434A53)), borderRadius: BorderRadius.circular(30), ), ), @@ -287,7 +287,7 @@ class _LetusUnderstandState extends State { width: 15, height: 15, decoration: ShapeDecoration( - gradient: LinearGradient( + gradient: const LinearGradient( begin: Alignment(0.98, -0.21), end: Alignment(-0.98, 0.21), colors: [ @@ -311,7 +311,7 @@ class _LetusUnderstandState extends State { Center( child: Container( width: 154.w, - decoration: ShapeDecoration( + decoration: const ShapeDecoration( shape: RoundedRectangleBorder( side: BorderSide( width: 1, @@ -566,8 +566,8 @@ class _LetusUnderstandState extends State { height: 115, decoration: ShapeDecoration( gradient: LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), + begin: const Alignment(0.98, -0.21), + end: const Alignment(-0.98, 0.21), colors: [ Colors.white .withOpacity(0.30000001192092896), @@ -576,7 +576,7 @@ class _LetusUnderstandState extends State { ], ), shape: RoundedRectangleBorder( - side: BorderSide( + side: const BorderSide( width: 0.50, color: Color(0xFF7E7E7E)), borderRadius: BorderRadius.circular(10), ), @@ -604,13 +604,13 @@ class _LetusUnderstandState extends State { width: 27, height: 27, decoration: ShapeDecoration( - color: Color(0xFF7E7E7E), + color: const Color(0xFF7E7E7E), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular( 5)), ), - child: Icon( + child: const Icon( Icons.delete_outline_outlined, color: Colors.white, ) @@ -644,8 +644,8 @@ class _LetusUnderstandState extends State { height: 115, decoration: ShapeDecoration( gradient: LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), + begin: const Alignment(0.98, -0.21), + end: const Alignment(-0.98, 0.21), colors: [ Colors.white .withOpacity(0.30000001192092896), @@ -654,7 +654,7 @@ class _LetusUnderstandState extends State { ], ), shape: RoundedRectangleBorder( - side: BorderSide( + side: const BorderSide( width: 0.50, color: Color(0xFF7E7E7E)), borderRadius: BorderRadius.circular(10), @@ -688,8 +688,8 @@ class _LetusUnderstandState extends State { height: 115, decoration: ShapeDecoration( gradient: LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), + begin: const Alignment(0.98, -0.21), + end: const Alignment(-0.98, 0.21), colors: [ Colors.white .withOpacity(0.30000001192092896), @@ -698,7 +698,7 @@ class _LetusUnderstandState extends State { ], ), shape: RoundedRectangleBorder( - side: BorderSide( + side: const BorderSide( width: 0.50, color: Color(0xFF7E7E7E)), borderRadius: BorderRadius.circular(10), ), @@ -726,13 +726,13 @@ class _LetusUnderstandState extends State { width: 27, height: 27, decoration: ShapeDecoration( - color: Color(0xFF7E7E7E), + color: const Color(0xFF7E7E7E), shape: RoundedRectangleBorder( borderRadius: BorderRadius.circular( 5)), ), - child: Icon( + child: const Icon( Icons.delete_outline_outlined, color: Colors.white, ) @@ -766,8 +766,8 @@ class _LetusUnderstandState extends State { height: 115, decoration: ShapeDecoration( gradient: LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), + begin: const Alignment(0.98, -0.21), + end: const Alignment(-0.98, 0.21), colors: [ Colors.white .withOpacity(0.30000001192092896), @@ -776,7 +776,7 @@ class _LetusUnderstandState extends State { ], ), shape: RoundedRectangleBorder( - side: BorderSide( + side: const BorderSide( width: 0.50, color: Color(0xFF7E7E7E)), borderRadius: BorderRadius.circular(10), diff --git a/lib/onboarding/Signup/View/Business/View/step2Selectgroup.dart b/lib/onboarding/Signup/View/Business/View/step2Selectgroup.dart deleted file mode 100644 index 514e86c..0000000 --- a/lib/onboarding/Signup/View/Business/View/step2Selectgroup.dart +++ /dev/null @@ -1,312 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:get/get.dart'; -import 'package:glassmorphism/glassmorphism.dart'; -import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; -import 'package:regroup/Utils/Common/sized_box.dart'; -import 'package:regroup/Utils/texts.dart'; -import 'package:regroup/resources/routes/route_name.dart'; -import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart'; - -class SelectgroupStep2 extends StatefulWidget { - const SelectgroupStep2({super.key}); - - @override - State createState() => _SelectgroupStep2State(); -} - -class _SelectgroupStep2State extends State { - TextEditingController searchcontroller = TextEditingController(); - // StreamController blogsController = StreamController(); - - @override - Widget build(BuildContext context) { - return Scaffold( - backgroundColor: Color.fromARGB(255, 18, 32, 47), - body: Stack( - children: [ - Positioned(top: 70, left: -30, child: CommonBlurLeftSecond()), - Positioned(top: 400, right: -30, child: CommonBlurRightSecond()), - Positioned(top: 630, left: -30, child: CommonBlurLeftBlue()), - SingleChildScrollView( - child: GlassmorphicContainer( - width: MediaQuery.of(context).size.width, - height: - // 500.h, - MediaQuery.of(context).size.height, - borderRadius: 2, - blur: 6, - alignment: Alignment.bottomLeft, - border: 2, - linearGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), - - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - ], - ), - borderGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - Color(0XFF222935).withOpacity(0.60), - - Color(0XFF222935).withOpacity(0.60), - ], - ), - child: Padding( - padding: - EdgeInsets.symmetric(horizontal: 16.w, vertical: 50.h), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Align( - alignment: Alignment.topRight, - child: GestureDetector( - onTap: () { - Get.toNamed(RouteName.communitycommitscreen); - }, - child: Text( - 'Skip', - style: TextStyle( - color: Colors.white, - fontSize: 16.sp, - fontFamily: 'Helvetica', - fontWeight: FontWeight.w400, - decoration: TextDecoration.underline, - decorationColor: Colors.white), - ), - ), - ), - sizedBoxHeight(30.h), - Align( - alignment: Alignment.center, - child: text16400white('Step 2 of 3')), - sizedBoxHeight(20.h), - Container( - width: 358.w, - height: 25.h, - decoration: ShapeDecoration( - shape: RoundedRectangleBorder( - side: BorderSide( - width: 1, color: Color(0xFF434A53)), - borderRadius: BorderRadius.circular(30), - ), - ), - child: Padding( - padding: EdgeInsets.symmetric( - horizontal: 8.w, vertical: 2.h), - child: Row( - children: [ - Container( - width: 148.w, - height: 15.h, - decoration: ShapeDecoration( - gradient: LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), - colors: [ - Color(0xA5D90B2E), - Color(0x42D90B2E) - ], - ), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(30), - ), - ), - child: Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - Container( - width: 15, - height: 15, - decoration: ShapeDecoration( - gradient: LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), - colors: [ - Color(0xFFD90B2E), - Color(0x60D90B2E) - ], - ), - shape: RoundedRectangleBorder( - borderRadius: - BorderRadius.circular(30), - ), - ), - ) - ], - )) - ], - ), - ), - ), - sizedBoxHeight(40.h), - Center( - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - text20400white('Find your group'), - sizedBoxWidth(5.w), - Image.asset('assets/images/png/informationicon.png') - ], - )), - sizedBoxHeight(10.w), - Center( - child: Container( - width: 108.w, - decoration: ShapeDecoration( - shape: RoundedRectangleBorder( - side: BorderSide( - width: 1, - strokeAlign: BorderSide.strokeAlignCenter, - color: Color(0xFF858585), - ), - ), - ), - ), - ), - sizedBoxHeight(30.h), - SearchTextFormField( - textEditingController: searchcontroller, - texttype: TextInputType.text, - hintText: "Search groups", - isInputPassword: false, - suffixIcon: - // const Icon(Icons.mail_outline), - // SvgPicture.asset( - // // width: 23.w, - // // height: 23.h, - // 'assets/images/svg/search.svg', - // ), - Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Icon( - Icons.search, - size: 35, - color: Colors.white, - ), - ), - // validatorText: "Enter your full name", - inputFormatters: [ - // LengthLimitingTextInputFormatter(20), - RemoveEmojiInputFormatter(), - ], - ), - sizedBoxHeight(30.h), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - GroupSelect( - titleString: 'Cambridge university Boat ..', - image: 'assets/images/png/groupindividual.png'), - GroupSelect( - titleString: 'Liverpool FC', - image: - 'assets/images/png/groupindividual2.png'), - ], - ), - sizedBoxHeight(30.h), - Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - GroupSelect( - titleString: 'Cambridge rugby Club', - image: - 'assets/images/png/groupindividual3.png'), - GroupSelect( - titleString: 'Cambridge university Boat ..', - image: 'assets/images/png/groupindividual.png'), - ], - ), - Spacer(flex: 1), - CustomButton( - text: "Continue", - onPressed: () { - Get.toNamed(RouteName.businessSelectcommunitystep3); - }) - ], - ), - )), - ), - ], - )); - } -} - -class GroupSelect extends StatefulWidget { - final String titleString; - final String image; - - GroupSelect({ - Key? key, - required this.titleString, - required this.image, - }) : super(key: key); - - @override - State createState() => _GroupSelectState(); -} - -class _GroupSelectState extends State { - bool _text = false; - - @override - Widget build(BuildContext context) { - return Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ - Container( - width: 169, - height: 74, - decoration: ShapeDecoration( - image: DecorationImage( - image: AssetImage( - // "https://via.placeholder.com/169x74" - widget.image), - fit: BoxFit.fill, - ), - shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(5)), - ), - ), - sizedBoxHeight(15.h), - text12400white(widget.titleString), - sizedBoxHeight(15.h), - GestureDetector( - onTap: () { - setState(() { - _text = !_text; - }); - }, - child: Container( - width: 169, - height: 23, - decoration: ShapeDecoration( - shape: RoundedRectangleBorder( - side: BorderSide(width: 1, color: Color(0xFFFF002B)), - borderRadius: BorderRadius.circular(30), - ), - ), - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - _text ? text10400white('Regrouping') : text10400white('Join') - ], - ), - ), - ), - ]); - } -} diff --git a/lib/onboarding/Signup/View/Business/View/step3SelectCommunity.dart b/lib/onboarding/Signup/View/Business/View/step3SelectCommunity.dart deleted file mode 100644 index 9a678d8..0000000 --- a/lib/onboarding/Signup/View/Business/View/step3SelectCommunity.dart +++ /dev/null @@ -1,313 +0,0 @@ -import 'package:flutter/cupertino.dart'; -import 'package:flutter/material.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:get/get.dart'; -import 'package:glassmorphism/glassmorphism.dart'; -import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; -import 'package:regroup/Utils/Common/sized_box.dart'; -import 'package:regroup/Utils/texts.dart'; -import 'package:regroup/resources/routes/route_name.dart'; -import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart'; - -class SelectBusinessCommunity extends StatefulWidget { - const SelectBusinessCommunity({super.key}); - - @override - State createState() => - _SelectBusinessCommunityState(); -} - -class _SelectBusinessCommunityState extends State { - TextEditingController searchcontroller = TextEditingController(); - // StreamController blogsController = StreamController(); - - @override - Widget build(BuildContext context) { - return Scaffold( - backgroundColor: const Color.fromARGB(255, 18, 32, 47), - body: Stack( - children: [ - const Positioned(top: 70, left: -30, child: CommonBlurLeftSecond()), - const Positioned(top: 400, right: -30, child: CommonBlurRightSecond()), - const Positioned(top: 630, left: -30, child: CommonBlurLeftBlue()), - SingleChildScrollView( - child: GlassmorphicContainer( - width: MediaQuery.of(context).size.width, - height: - // 500.h, - MediaQuery.of(context).size.height, - borderRadius: 2, - blur: 6, - alignment: Alignment.bottomLeft, - border: 2, - linearGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - ], - ), - borderGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - const Color(0XFF222935).withOpacity(0.60), - - const Color(0XFF222935).withOpacity(0.60), - ], - ), - child: Padding( - padding: - EdgeInsets.symmetric(horizontal: 16.w, vertical: 50.h), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Align( - alignment: Alignment.topRight, - child: GestureDetector( - onTap: () { - Get.toNamed(RouteName.communitycommitscreen); - }, - child: Text( - 'Skip', - style: TextStyle( - color: Colors.white, - fontSize: 16.sp, - fontFamily: 'Helvetica', - fontWeight: FontWeight.w400, - decoration: TextDecoration.underline, - decorationColor: Colors.white), - ), - ), - ), - sizedBoxHeight(30.h), - Align( - alignment: Alignment.center, - child: text16400white('Step 3 of 3')), - sizedBoxHeight(20.h), - Container( - width: 358.w, - height: 25.h, - decoration: ShapeDecoration( - shape: RoundedRectangleBorder( - side: const BorderSide( - width: 1, color: Color(0xFF434A53)), - borderRadius: BorderRadius.circular(30), - ), - ), - child: Padding( - padding: EdgeInsets.symmetric( - horizontal: 8.w, vertical: 2.h), - child: Row( - children: [ - Container( - width: 273.w, - height: 15.h, - decoration: ShapeDecoration( - gradient: const LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), - colors: [ - Color(0xA5D90B2E), - Color(0x42D90B2E) - ], - ), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(30), - ), - ), - child: Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - Container( - width: 15, - height: 15, - decoration: ShapeDecoration( - gradient: const LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), - colors: [ - Color(0xFFD90B2E), - Color(0x60D90B2E) - ], - ), - shape: RoundedRectangleBorder( - borderRadius: - BorderRadius.circular(30), - ), - ), - ) - ], - )) - ], - ), - ), - ), - sizedBoxHeight(40.h), - Center( - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - text20400white('Find your community'), - sizedBoxWidth(5.w), - Image.asset( - 'assets/images/png/informationicon.png', - ) - ], - )), - sizedBoxHeight(10.w), - Center( - child: Container( - width: 108.w, - decoration: const ShapeDecoration( - shape: RoundedRectangleBorder( - side: BorderSide( - width: 1, - strokeAlign: BorderSide.strokeAlignCenter, - color: Color(0xFF858585), - ), - ), - ), - ), - ), - sizedBoxHeight(30.h), - SearchTextFormField( - textEditingController: searchcontroller, - texttype: TextInputType.text, - hintText: "Search groups", - isInputPassword: false, - suffixIcon: - // const Icon(Icons.mail_outline), - // SvgPicture.asset( - // // width: 23.w, - // // height: 23.h, - // 'assets/images/svg/search.svg', - // ), - Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: const Icon( - Icons.search, - size: 35, - color: Colors.white, - ), - ), - // validatorText: "Enter your full name", - inputFormatters: [ - // LengthLimitingTextInputFormatter(20), - RemoveEmojiInputFormatter(), - ], - ), - sizedBoxHeight(30.h), - const Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - CommunitySelect( - titleString: 'Active alliance network ', - image: 'assets/images/png/community1.png'), - CommunitySelect( - titleString: 'Fitfam federation', - image: 'assets/images/png/community2.png'), - ], - ), - sizedBoxHeight(30.h), - const Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - CommunitySelect( - titleString: 'The athletic town', - image: - 'assets/images/png/groupindividual3.png'), - CommunitySelect( - titleString: 'Football Fever', - image: 'assets/images/png/community3.png'), - ], - ), - const Spacer(flex: 1), - CustomButton( - text: "Continue", - onPressed: () { - Get.toNamed(RouteName.communitycommitscreen); - }) - ], - ), - )), - ), - ], - )); - } -} - -class CommunitySelect extends StatefulWidget { - final String titleString; - final String image; - - const CommunitySelect({ - Key? key, - required this.titleString, - required this.image, - }) : super(key: key); - - @override - State createState() => _CommunitySelectState(); -} - -class _CommunitySelectState extends State { - bool _text = false; - - @override - Widget build(BuildContext context) { - return Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ - Container( - width: 169, - height: 74, - decoration: ShapeDecoration( - image: DecorationImage( - image: AssetImage( - // "https://via.placeholder.com/169x74" - widget.image), - fit: BoxFit.fill, - ), - shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(5)), - ), - ), - sizedBoxHeight(15.h), - text12400white(widget.titleString), - sizedBoxHeight(15.h), - GestureDetector( - onTap: () { - setState(() { - _text = !_text; - }); - }, - child: Container( - width: 169, - height: 23, - decoration: ShapeDecoration( - shape: RoundedRectangleBorder( - side: const BorderSide(width: 1, color: Color(0xFFFF002B)), - borderRadius: BorderRadius.circular(30), - ), - ), - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - _text ? text10400white('Regrouping') : text10400white('Join') - ], - ), - ), - ), - ]); - } -} diff --git a/lib/onboarding/Signup/View/Business/View/tellusbusiness.dart b/lib/onboarding/Signup/View/Business/View/tellusbusiness.dart index 73fe783..8428a80 100644 --- a/lib/onboarding/Signup/View/Business/View/tellusbusiness.dart +++ b/lib/onboarding/Signup/View/Business/View/tellusbusiness.dart @@ -7,7 +7,7 @@ import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Utils/Common/CommonDropdown.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -129,12 +129,11 @@ class _TellusaboutBusinessState extends State { @override Widget build(BuildContext context) { return WillPopScope( - onWillPop: ()async { + onWillPop: () async { // SystemNavigator.pop(); - Navigator.pop(context); + Navigator.pop(context); return true; - }, child: GestureDetector( onTap: () => FocusManager.instance.primaryFocus?.unfocus(), diff --git a/lib/onboarding/Signup/View/Individual/step1Selectprofile.dart b/lib/onboarding/Signup/View/Individual/step1Selectprofile.dart deleted file mode 100644 index 097b0e0..0000000 --- a/lib/onboarding/Signup/View/Individual/step1Selectprofile.dart +++ /dev/null @@ -1,271 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:flutter_svg/flutter_svg.dart'; -import 'package:get/get.dart'; -import 'package:glassmorphism/glassmorphism.dart'; -import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; -import 'package:regroup/Utils/Common/sized_box.dart'; -import 'package:regroup/Utils/texts.dart'; -import 'package:regroup/resources/routes/route_name.dart'; - -class SelectIndividualProfile extends StatefulWidget { - const SelectIndividualProfile({super.key}); - - @override - State createState() => - _SelectIndividualProfileState(); -} - -class _SelectIndividualProfileState extends State { - ValueNotifier selectedIndex = ValueNotifier(-1); - - @override - Widget build(BuildContext context) { - return Scaffold( - backgroundColor: const Color.fromARGB(255, 18, 32, 47), - body: Stack( - children: [ - const Positioned(top: 70, left: -30, child: CommonBlurLeftSecond()), - const Positioned(top: 310, right: -30, child: CommonBlurRightSecond()), - const Positioned(top: 540, left: -30, child: CommonBlurLeftBlue()), - GlassmorphicContainer( - width: MediaQuery.of(context).size.width, - height: - // 500.h, - MediaQuery.of(context).size.height, - borderRadius: 2, - blur: 6, - alignment: Alignment.bottomLeft, - border: 2, - linearGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - ], - ), - borderGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - const Color(0XFF222935).withOpacity(0.60), - - const Color(0XFF222935).withOpacity(0.60), - ], - ), - child: Padding( - padding: - EdgeInsets.symmetric(horizontal: 16.w, vertical: 50.h), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Align( - alignment: Alignment.topRight, - child: GestureDetector( - onTap: () { - Get.toNamed(RouteName.communitycommitscreen); - }, - child: Text( - 'Skip', - style: TextStyle( - color: Colors.white, - fontSize: 16.sp, - fontFamily: 'Helvetica', - fontWeight: FontWeight.w400, - decoration: TextDecoration.underline, - decorationColor: Colors.white), - ), - ), - ), - sizedBoxHeight(30.h), - Align( - alignment: Alignment.center, - child: text16400white('Step 1 of 4')), - sizedBoxHeight(20.h), - Container( - width: 358.w, - height: 25.h, - decoration: ShapeDecoration( - shape: RoundedRectangleBorder( - side: - const BorderSide(width: 1, color: Color(0xFF434A53)), - borderRadius: BorderRadius.circular(30), - ), - ), - child: Padding( - padding: EdgeInsets.symmetric( - horizontal: 8.w, vertical: 2.h), - child: Row( - children: [ - Container( - width: 15, - height: 15, - decoration: ShapeDecoration( - gradient: const LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), - colors: [ - Color(0xA5D90B2E), - Color(0x42D90B2E) - ], - ), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(30), - ), - ), - ) - ], - ), - ), - ), - sizedBoxHeight(30.h), - Center(child: text20400white('Select your profile type')), - sizedBoxHeight(10.w), - Center( - child: Container( - width: 154.w, - decoration: const ShapeDecoration( - shape: RoundedRectangleBorder( - side: BorderSide( - width: 1, - strokeAlign: BorderSide.strokeAlignCenter, - color: Color(0xFF858585), - ), - ), - ), - ), - ), - sizedBoxHeight(30.h), - ProfileContainer( - titleString: "Athlete", - contentString: - "Lorem Ipsum has been the industry's standard dummy text ever since the 1500s.", - image: 'assets/images/svg/runningindividual.svg', - selectedIndex: selectedIndex, - index: 0, - ), - sizedBoxHeight(20.h), - ProfileContainer( - titleString: "Coach", - contentString: - "Lorem Ipsum has been the industry's standard dummy text ever since the 1500s.", - image: 'assets/images/svg/coachindividual.svg', - selectedIndex: selectedIndex, - index: 1, - ), - sizedBoxHeight(20.h), - ProfileContainer( - titleString: "Social", - contentString: - "Lorem Ipsum has been the industry's standard dummy text ever since the 1500s.", - image: 'assets/images/svg/userindividual.svg', - selectedIndex: selectedIndex, - index: 2, - ), - const Spacer(flex: 1), - CustomButton( - text: "Continue", - onPressed: () { - Get.toNamed(RouteName.individualactivitystep2); - }) - ], - ), - )), - ], - )); - } -} - -class ProfileContainer extends StatefulWidget { - final String titleString; - final String contentString; - final String image; - final ValueNotifier selectedIndex; - final int index; - - const ProfileContainer({ - Key? key, - required this.titleString, - required this.contentString, - required this.image, - required this.selectedIndex, - required this.index, - }) : super(key: key); - - @override - State createState() => _ProfileContainerState(); -} - -class _ProfileContainerState extends State { - @override - Widget build(BuildContext context) { - return GestureDetector( - onTap: () { - // Set the selected ValueNotifier to true when tapped - widget.selectedIndex.value = widget.index; - }, - child: ValueListenableBuilder( - valueListenable: widget.selectedIndex, - builder: (context, selectedIndex, child) { - bool isSelected = selectedIndex == widget.index; - return Container( - width: 358.w, - height: 126.h, - decoration: BoxDecoration( - gradient: LinearGradient( - begin: const Alignment(0.98, -0.21), - end: const Alignment(-0.98, 0.21), - colors: isSelected - ? [ - const Color(0XFFD90B2E).withOpacity(0.80), - const Color(0XFFD90B2E).withOpacity(0.77), - const Color(0XFFD90B2E).withOpacity(0.66), - const Color(0XFFD90B2E).withOpacity(0.18), - ] - : [ - Colors.white.withOpacity(0.06), - Colors.white.withOpacity(0.08) - ], - ), - border: Border.all(width: 1, color: const Color(0xFF434A53)), - borderRadius: BorderRadius.circular(10), - ), - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 16.h), - child: Row( - mainAxisAlignment: MainAxisAlignment.start, - children: [ - SvgPicture.asset(widget.image), - sizedBoxWidth(10.w), - SizedBox( - width: 241.w, - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - text16400white(widget.titleString), - sizedBoxHeight(3.h), - text12400white(widget.contentString) - ], - ), - ), - ], - ), - ), - ); - }, - ), - ); - } -} diff --git a/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart b/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart index 97a11dd..769df0d 100644 --- a/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart +++ b/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart @@ -1,15 +1,12 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:flutter_svg/flutter_svg.dart'; import 'package:get/get.dart'; -import 'package:glassmorphism/glassmorphism.dart'; -import 'package:regroup/Common/CommonDropDown.dart'; + import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Utils/Common/CommonDropdown.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -82,23 +79,19 @@ class _SelectIndividualActivityState extends State { Uploadata() async { utils.loader(); String selectedIndicesString = '[${_selectedIndices.join(',')}]'; - print('Selected Indices: $selectedIndicesString'); Map updata = { "manage_interest_xid": selectedIndicesString, "other_interest": otheractivitycontroller.text, }; - print('Payload: $updata'); final data = await Onboard().PostIndividualActivity(updata); if (data.status == ResponseStatus.SUCCESS) { Get.back(); - print("Activities selected"); Get.toNamed(RouteName.individualgroupstep3); return utils.showToast(data.message); } else { Get.back(); - print("Not done"); return utils.showToast(data.message); } } @@ -118,7 +111,6 @@ class _SelectIndividualActivityState extends State { otheractivitycontroller.text.isEmpty) { utils.showToast('Please select activity'); } else { - print(_selectedIndices.toString()); // String selectedIndicesString = // _selectedIndices.join(','); // print( diff --git a/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart b/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart index 447b062..f3eaf0a 100644 --- a/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart +++ b/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart @@ -8,7 +8,7 @@ import 'package:glassmorphism/glassmorphism.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; diff --git a/lib/onboarding/Signup/View/Individual/step4Selectyourcommunity.dart b/lib/onboarding/Signup/View/Individual/step4Selectyourcommunity.dart index 78b3bd9..242e27e 100644 --- a/lib/onboarding/Signup/View/Individual/step4Selectyourcommunity.dart +++ b/lib/onboarding/Signup/View/Individual/step4Selectyourcommunity.dart @@ -8,7 +8,7 @@ import 'package:glassmorphism/glassmorphism.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -125,7 +125,8 @@ class _SelectIndividualCommunityState extends State { height: 25.h, decoration: ShapeDecoration( shape: RoundedRectangleBorder( - side: const BorderSide(width: 1, color: Color(0xFF434A53)), + side: const BorderSide( + width: 1, color: Color(0xFF434A53)), borderRadius: BorderRadius.circular(30), ), ), @@ -244,7 +245,8 @@ class _SelectIndividualCommunityState extends State { if (snapshot.connectionState == ConnectionState.waiting) { // Display shimmer effect while waiting for data - return const Center(child: CircularProgressIndicator()); + return const Center( + child: CircularProgressIndicator()); } else if (snapshot.hasError) { // Handle error state return Center( diff --git a/lib/onboarding/Signup/View/Individual/tellusindividual.dart b/lib/onboarding/Signup/View/Individual/tellusindividual.dart index 32364f3..a345905 100644 --- a/lib/onboarding/Signup/View/Individual/tellusindividual.dart +++ b/lib/onboarding/Signup/View/Individual/tellusindividual.dart @@ -14,7 +14,7 @@ import 'package:regroup/Utils/Common/CommonDropdown.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; import 'package:regroup/Utils/Common/ImageUpload.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -154,7 +154,7 @@ class _TellusaboutIndividualState extends State { Get.toNamed(RouteName.individualactivitystep2); } else { Get.back(); - utils.showToast(data.message); + utils.showToast(data.message); } } @@ -162,14 +162,11 @@ class _TellusaboutIndividualState extends State { Widget build(BuildContext context) { return WillPopScope( onWillPop: () async { - SystemNavigator.pop(); + SystemNavigator.pop(); // Navigator.pop(context); - return true; - }, - child: GestureDetector( onTap: () => FocusManager.instance.primaryFocus?.unfocus(), child: Scaffold( @@ -179,7 +176,8 @@ class _TellusaboutIndividualState extends State { Container( decoration: const BoxDecoration( image: DecorationImage( - image: AssetImage("assets/images/png/Ellipse 1496.png"), + image: + AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), ), ListView(physics: const ScrollPhysics(), children: [ @@ -319,7 +317,8 @@ class _TellusaboutIndividualState extends State { inputFormatters: [ // LengthLimitingTextInputFormatter(20), RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow(RegExp('[a-zA-Z ]')) + FilteringTextInputFormatter.allow( + RegExp('[a-zA-Z ]')) ], ), sizedBoxHeight(10.h), @@ -346,7 +345,8 @@ class _TellusaboutIndividualState extends State { inputFormatters: [ // LengthLimitingTextInputFormatter(20), RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow(RegExp('[a-zA-Z ]')) + FilteringTextInputFormatter.allow( + RegExp('[a-zA-Z ]')) ], ), sizedBoxHeight(10.h), @@ -416,7 +416,8 @@ class _TellusaboutIndividualState extends State { inputFormatters: [ // LengthLimitingTextInputFormatter(20), RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow(RegExp('[a-zA-Z ]')) + FilteringTextInputFormatter.allow( + RegExp('[a-zA-Z ]')) ], ), sizedBoxHeight(20.h), @@ -435,7 +436,7 @@ class _TellusaboutIndividualState extends State { } // if (_selectedgendertype.isNotEmpty) { // Get.toNamed(RouteName.individualprofilestep1); - + // // Get.to(() => BusinessPage()); // } else { // // Handle case where no selection is made diff --git a/lib/onboarding/Signup/View/communitycommitment.dart b/lib/onboarding/Signup/View/communitycommitment.dart index 7c441c5..6cd9d90 100644 --- a/lib/onboarding/Signup/View/communitycommitment.dart +++ b/lib/onboarding/Signup/View/communitycommitment.dart @@ -3,7 +3,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:glassmorphism/glassmorphism.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; diff --git a/lib/onboarding/Signup/View/signupscreen.dart b/lib/onboarding/Signup/View/signupscreen.dart index 877b883..b4e9c5f 100644 --- a/lib/onboarding/Signup/View/signupscreen.dart +++ b/lib/onboarding/Signup/View/signupscreen.dart @@ -7,7 +7,6 @@ import 'package:flutter_facebook_auth/flutter_facebook_auth.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart'; import 'package:regroup/Global.dart'; import 'package:regroup/Login/ViewModel/LoginApi.dart'; import 'package:regroup/Utils/Common/AppleOAuthService.dart'; diff --git a/lib/onboarding/SplashScreen.dart b/lib/onboarding/SplashScreen.dart index 841450c..27aada9 100644 --- a/lib/onboarding/SplashScreen.dart +++ b/lib/onboarding/SplashScreen.dart @@ -10,8 +10,8 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_svg/svg.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart'; import 'package:regroup/Global.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/ViewModel/InterestApiList.dart'; import 'package:regroup/Utils/Common/NoInternet.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/onboarding/Signup/view_model/getUserprofile.dart'; diff --git a/lib/onboarding/forgotPass/View/ForgotOtp.dart b/lib/onboarding/forgotPass/View/ForgotOtp.dart index 918b4e3..9574c5d 100644 --- a/lib/onboarding/forgotPass/View/ForgotOtp.dart +++ b/lib/onboarding/forgotPass/View/ForgotOtp.dart @@ -7,7 +7,7 @@ import 'package:pin_code_fields/pin_code_fields.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/onboarding/forgotPass/ViewModel/ForgotPassAPI.dart'; @@ -22,11 +22,11 @@ class ForgotOtp extends StatefulWidget { } class _ForgotOtpState extends State { -TextEditingController? pincode = TextEditingController(); + TextEditingController? pincode = TextEditingController(); final String emailAddress = Get.arguments; double? principleId; - + get utils => null; // principleId = prefs.getString('email').toString(); @@ -48,14 +48,14 @@ TextEditingController? pincode = TextEditingController(); Get.snackbar( "Success!", 'OTP verification successful!', - duration: Duration(seconds: 2), + duration: const Duration(seconds: 2), colorText: Colors.white, backgroundColor: Colors.green, - margin: EdgeInsets.all(8), + margin: const EdgeInsets.all(8), snackStyle: SnackStyle.FLOATING, snackPosition: SnackPosition.BOTTOM, ); - Future.delayed(Duration(seconds: 1), () { + Future.delayed(const Duration(seconds: 1), () { Get.toNamed(RouteName.newpassword, arguments: emailAddress); }); // print('success'); @@ -65,10 +65,10 @@ TextEditingController? pincode = TextEditingController(); Get.snackbar( "Error!", data.data['message'], - duration: Duration(seconds: 2), + duration: const Duration(seconds: 2), colorText: Colors.white, backgroundColor: Colors.red, - margin: EdgeInsets.all(8), + margin: const EdgeInsets.all(8), snackStyle: SnackStyle.FLOATING, snackPosition: SnackPosition.BOTTOM, ); @@ -76,20 +76,18 @@ TextEditingController? pincode = TextEditingController(); } } - - @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Color.fromARGB(255, 18, 32, 47), - appBar: CommonAppbar( + backgroundColor: const Color.fromARGB(255, 18, 32, 47), + appBar: const CommonAppbar( titleTxt: '', ), body: Stack( children: [ // CommonBlurLeftSecond(), - Positioned(top: 150, right: -30, child: CommonBlurRightSecond()), - Positioned(top: 350, left: -30, child: CommonBlurLeftBlue()), + // Positioned(top: 150, right: -30, child: CommonBlurRightSecond()), + // Positioned(top: 350, left: -30, child: CommonBlurLeftBlue()), GlassmorphicContainer( width: MediaQuery.of(context).size.width, height: @@ -103,10 +101,10 @@ TextEditingController? pincode = TextEditingController(); begin: Alignment.topCenter, end: Alignment.bottomCenter, colors: [ - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), + const Color(0XFF222935).withOpacity(0.60), + const Color(0XFF222935).withOpacity(0.60), + const Color(0XFF222935).withOpacity(0.60), + const Color(0XFF222935).withOpacity(0.60), // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), @@ -120,9 +118,9 @@ TextEditingController? pincode = TextEditingController(); colors: [ // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - Color(0XFF222935).withOpacity(0.60), + const Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), + const Color(0XFF222935).withOpacity(0.60), ], ), child: Padding( @@ -157,29 +155,27 @@ TextEditingController? pincode = TextEditingController(); obscureText: false, animationType: AnimationType.fade, pinTheme: PinTheme( - selectedFillColor: Color(0xFF434A53), - inactiveFillColor: Color(0xFF434A53), - inactiveColor: Color(0xFF434A53), - activeColor: Color(0xFF434A53), - selectedColor: Color(0xFF434A53), + selectedFillColor: const Color(0xFF434A53), + inactiveFillColor: const Color(0xFF434A53), + inactiveColor: const Color(0xFF434A53), + activeColor: const Color(0xFF434A53), + selectedColor: const Color(0xFF434A53), shape: PinCodeFieldShape.underline, borderRadius: BorderRadius.circular(5), fieldHeight: 70, fieldWidth: 70, activeFillColor: // Colors.white - Color(0xFF303030).withOpacity(0.4), + const Color(0xFF303030).withOpacity(0.4), // textStyle: TextStyle(color: Colors.white, fontSize: 20), // Change text color and font size ), - animationDuration: Duration(milliseconds: 300), + animationDuration: const Duration(milliseconds: 300), enableActiveFill: true, autovalidateMode: AutovalidateMode.onUserInteraction, controller: pincode, onCompleted: (v) { - print("Completed"); }, onChanged: (value) { - print(value); setState(() { // currentText = value; }); @@ -191,7 +187,6 @@ TextEditingController? pincode = TextEditingController(); fontFamily: 'Helvetica', ), beforeTextPaste: (text) { - print("Allowing to paste $text"); return true; }, appContext: context, @@ -223,6 +218,7 @@ TextEditingController? pincode = TextEditingController(); )), ], ), - );; + ); + } -} \ No newline at end of file +} diff --git a/lib/onboarding/forgotPass/ViewModel/ForgotPassAPI.dart b/lib/onboarding/forgotPass/ViewModel/ForgotPassAPI.dart index 6303873..8e3a8dc 100644 --- a/lib/onboarding/forgotPass/ViewModel/ForgotPassAPI.dart +++ b/lib/onboarding/forgotPass/ViewModel/ForgotPassAPI.dart @@ -1,7 +1,6 @@ import 'package:regroup/Common/api_urls.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Common/controller/data/network/network_api.dart'; -import 'package:shared_preferences/shared_preferences.dart'; class ForgotPassAPI { ForgotPassAPI(); diff --git a/lib/resources/routes/routes.dart b/lib/resources/routes/routes.dart index 12a47a7..6eb2bed 100644 --- a/lib/resources/routes/routes.dart +++ b/lib/resources/routes/routes.dart @@ -1,101 +1,99 @@ import 'package:flutter/material.dart'; import 'package:get/get_navigation/src/routes/get_route.dart'; +import 'package:regroup/Main_Screens/CalenderTab/AddEvent/AddEvent.dart'; +import 'package:regroup/Main_Screens/CalenderTab/AddUsers/AddUsers.dart'; +import 'package:regroup/Main_Screens/CalenderTab/Availabillity.dart'; +import 'package:regroup/Main_Screens/CalenderTab/EventDetails.dart'; +import 'package:regroup/Main_Screens/CalenderTab/ManageMenmbers/ManageMembersCal.dart'; +import 'package:regroup/Main_Screens/CalenderTab/Resource%20Pool/ResourcePool.dart'; +import 'package:regroup/Main_Screens/CalenderTab/SetAvailabillity.dart'; +import 'package:regroup/Main_Screens/Chats/View/groupchat.dart'; +import 'package:regroup/Main_Screens/Chats/View/newchatpage.dart'; +import 'package:regroup/Main_Screens/Chats/View/newgroup.dart'; +import 'package:regroup/Main_Screens/Chats/View/userchat.dart'; +import 'package:regroup/Main_Screens/Community/Community.dart'; +import 'package:regroup/Main_Screens/Community/CycleScreen.dart'; +import 'package:regroup/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart'; +import 'package:regroup/Main_Screens/Community/PostDetailScreen/View/ReactionView.dart'; +import 'package:regroup/Main_Screens/Community/PostScreen.dart'; +import 'package:regroup/Main_Screens/ExploreDesign/DetailExplore.dart'; +import 'package:regroup/Main_Screens/ExploreDesign/ExploreScreen.dart'; +import 'package:regroup/Main_Screens/ExploreDesign/SearchGroup.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/ConnectCommunity.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/GoupSettings.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/GroupDetail.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/GroupEvent.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/GroupInfo.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/GroupManage.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/GroupTab.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/NewPost.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/RequestedGroups.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/Sessions.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/SubGroup/EditSubgroupInfo.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/SubGroup/SubgroupSetting.dart'; +import 'package:regroup/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Badges/Badges.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Certificate/AddCertificate.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Certificate/Certificate.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Clubs/Clubs.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/View/BusEditProfile.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/View/EditProfile.dart'; +import 'package:regroup/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Followers/Followers.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Following/Following.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/View/Business/ProfileTabBusGuest.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Guest%20User/View/Individual/ProfileTabIndGuest.dart'; +import 'package:regroup/Main_Screens/ProfileTab/My%20Network/MyNetwork.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/AccountSessions.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/AccountSetting.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/ChangePassword.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/ContactUs.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/DeleteAccount.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/FaqScreen.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/HelpAndSupport.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/PrivacyPolicy.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/ReportABug.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/Settings.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/TermsCondition.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/VerifyCode.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Settings/View/Notification.dart'; +import 'package:regroup/Main_Screens/ProfileTab/Share%20profile/ShareProfile.dart'; +import 'package:regroup/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/AddEvent/AddEvent.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/AddUsers/AddUsers.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/Availabillity.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/EventDetails.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/ManageMenmbers/ManageMembersCal.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/Resource%20Pool/ResourcePool.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/SetAvailabillity.dart'; +import 'package:regroup/Notifications/notification.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Chats/View/groupchat.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Chats/View/newchatpage.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Chats/View/newgroup.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Chats/View/userchat.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Community/PostDetailScreen/View/ReactionView.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ExploreDesign/DetailExplore.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ExploreDesign/ExploreScreen.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ExploreDesign/SearchGroup.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/ConnectCommunity.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/GoupSettings.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/GroupDetail.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/GroupEvent.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/GroupInfo.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/GroupManage.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/GroupTab.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/NewPost.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/RequestedGroups.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/Sessions.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/SubGroup/EditSubgroupInfo.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/SubGroup/SubgroupSetting.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Badges/Badges.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Certificate/AddCertificate.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Certificate/Certificate.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Clubs/Clubs.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/View/BusEditProfile.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/View/EditProfile.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/EditProfile/View/ProfileTab.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Followers/Followers.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Following/Following.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/View/Business/ProfileTabBusGuest.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Guest%20User/View/Individual/ProfileTabIndGuest.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/My%20Network/MyNetwork.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/AccountSessions.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/AccountSetting.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/ChangePassword.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/ContactUs.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/DeleteAccount.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/FaqScreen.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/HelpAndSupport.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/View/Notification.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/PrivacyPolicy.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/ReportABug.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/Settings.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/TermsCondition.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Settings/VerifyCode.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/Share%20profile/ShareProfile.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart'; -import 'package:regroup/Feed%20Module/Notification/View/notification.dart'; - -import 'package:regroup/Feed%20Module/sidemenu/Community/Admin/PopupItem/Community%20settings/CommunitySetting.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/Admin/PopupItem/Community%20settings/EditCommunity/EditCommunity.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/Admin/PopupItem/Community%20settings/ManageGroup.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/Admin/PopupItem/Community%20settings/ManageTags.dart/ManageTags.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/Admin/PopupItem/Community%20settings/ManageTags.dart/NewTag/NewTag.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/Announcements/AnnouncementRequest.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/Announcements/ManageMembers.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/MyCommunity/AddGroups.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/MyCommunity/NewCommunity.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/Watchlist.dart'; +import 'package:regroup/sidemenu/Community/Admin/PopupItem/Community%20settings/CommunitySetting.dart'; +import 'package:regroup/sidemenu/Community/Admin/PopupItem/Community%20settings/EditCommunity/EditCommunity.dart'; +import 'package:regroup/sidemenu/Community/Admin/PopupItem/Community%20settings/ManageGroup.dart'; +import 'package:regroup/sidemenu/Community/Admin/PopupItem/Community%20settings/ManageTags.dart/ManageTags.dart'; +import 'package:regroup/sidemenu/Community/Admin/PopupItem/Community%20settings/ManageTags.dart/NewTag/NewTag.dart'; +import 'package:regroup/sidemenu/Community/Announcements/AnnouncementRequest.dart'; +import 'package:regroup/sidemenu/Community/Announcements/ManageMembers.dart'; +import 'package:regroup/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart'; +import 'package:regroup/sidemenu/Community/MyCommunity/AddGroups.dart'; +import 'package:regroup/sidemenu/Community/MyCommunity/NewCommunity.dart'; +import 'package:regroup/sidemenu/Community/Watchlist.dart'; import 'package:regroup/Login/View/loginscreen.dart'; import 'package:regroup/Common/controller/MainScreen.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Community/Community.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Community/CycleScreen.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Community/PostScreen.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/Announcements/View/Announcements.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/Group/view/Group.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/MyCommunity/View/CommunityDetails.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Community/MyCommunity/View/MyCommunity.dart'; -import 'package:regroup/Feed%20Module/sidemenu/SavedPosts/SavedPosts.dart'; -import 'package:regroup/Feed%20Module/sidemenu/sidemenu.dart'; + +import 'package:regroup/sidemenu/Community/Announcements/View/Announcements.dart'; +import 'package:regroup/sidemenu/Community/Group/view/Group.dart'; +import 'package:regroup/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart'; +import 'package:regroup/sidemenu/Community/MyCommunity/View/CommunityDetails.dart'; +import 'package:regroup/sidemenu/Community/MyCommunity/View/MyCommunity.dart'; +import 'package:regroup/sidemenu/SavedPosts/SavedPosts.dart'; +import 'package:regroup/sidemenu/sidemenu.dart'; import 'package:regroup/Login/View/verifygoogleapple.dart'; import 'package:regroup/Utils/Common/NoInternet.dart'; import 'package:regroup/onboarding/NewPass/View/NewPass.dart'; import 'package:regroup/onboarding/Signup/View/Business/View/step1Letusunderstandbetter.dart'; -import 'package:regroup/onboarding/Signup/View/Business/View/step2Selectgroup.dart'; -import 'package:regroup/onboarding/Signup/View/Business/View/step3SelectCommunity.dart'; + import 'package:regroup/onboarding/Signup/View/Business/View/tellusbusiness.dart'; -import 'package:regroup/onboarding/Signup/View/Individual/step1Selectprofile.dart'; import 'package:regroup/onboarding/Signup/View/Individual/step2Selectactivity.dart'; import 'package:regroup/onboarding/Signup/View/Individual/step3Selectyourgroup.dart'; import 'package:regroup/onboarding/Signup/View/Individual/step4Selectyourcommunity.dart'; @@ -192,10 +190,7 @@ class AppRoutes { name: RouteName.group, page: () => const Group(), ), - GetPage( - name: RouteName.individualprofilestep1, - page: () => const SelectIndividualProfile(), - ), + GetPage( name: RouteName.individualactivitystep2, page: () => const SelectIndividualActivity(), @@ -220,14 +215,8 @@ class AppRoutes { name: RouteName.businessletusunderstandstep1, page: () => const LetusUnderstand(), ), - GetPage( - name: RouteName.businessSelectgroupstep2, - page: () => const SelectgroupStep2(), - ), - GetPage( - name: RouteName.businessSelectcommunitystep3, - page: () => const SelectBusinessCommunity(), - ), + + GetPage( name: RouteName.communitysetting, page: () => const CommunitySetting(), @@ -456,79 +445,73 @@ class AppRoutes { name: RouteName.editsubgroupinfo, page: () => const EditSubgroupInfo(), ), - GetPage( + GetPage( name: RouteName.subgroupsetting, page: () => const SubGroupSetting(), ), - GetPage( + GetPage( name: RouteName.explorescreen, page: () => const ExploreScreen(), ), - GetPage( + GetPage( name: RouteName.searchgroup, page: () => const SearchGroup(), ), - GetPage( + GetPage( name: RouteName.detailexplore, page: () => const DetailExplore(), ), - - GetPage( + GetPage( name: RouteName.certificate, page: () => const Certificate(), ), - GetPage( + GetPage( name: RouteName.availability, page: () => const Availability(), ), - - GetPage( + GetPage( name: RouteName.sessions, page: () => const Sessions(), ), - - GetPage( + GetPage( name: RouteName.forgotpass, page: () => const ForgotPass(), ), - GetPage( + GetPage( name: RouteName.newpassword, page: () => const NewPassword(), ), - GetPage( + GetPage( name: RouteName.forgotOtp, page: () => const ForgotOtp(), - ), - GetPage( - name: RouteName.verifygoogleapplepage, - page: () => Verifygoogleandapple(), ), - GetPage( + GetPage( + name: RouteName.verifygoogleapplepage, + page: () => Verifygoogleandapple(), + ), + GetPage( name: RouteName.buseditprofile, - page: () => BusEditProfile(), + page: () => const BusEditProfile(), ), GetPage( name: RouteName.profiletab, - page: () => ProfileTab(), + page: () => const ProfileTab(), ), - - GetPage( + GetPage( name: RouteName.profiletabindguest, - page: () => ProfileTabIndGuest(), + page: () => const ProfileTabIndGuest(), ), - GetPage( + GetPage( name: RouteName.profiletabbusguest, - page: () => profiletabBusGest(), + page: () => const profiletabBusGest(), ), - GetPage( + GetPage( name: RouteName.mynetwork, - page: () => MyNetwork(), + page: () => const MyNetwork(), ), - GetPage( + GetPage( name: RouteName.addcertificate, - page: () => AddCertificate(), + page: () => const AddCertificate(), ), - - ]; } diff --git a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/CommunitySetting.dart b/lib/sidemenu/Community/Admin/PopupItem/Community settings/CommunitySetting.dart similarity index 95% rename from lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/CommunitySetting.dart rename to lib/sidemenu/Community/Admin/PopupItem/Community settings/CommunitySetting.dart index 38784d9..37e4aa1 100644 --- a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/CommunitySetting.dart +++ b/lib/sidemenu/Community/Admin/PopupItem/Community settings/CommunitySetting.dart @@ -3,7 +3,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -27,12 +27,13 @@ class _CommunitySettingState extends State { titleTxt: "Community settings", ), body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), Column(children: [ + ), + Column(children: [ sizedBoxHeight(30.h), GestureDetector( onTap: () { diff --git a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/EditCommunity/EditCommunity.dart b/lib/sidemenu/Community/Admin/PopupItem/Community settings/EditCommunity/EditCommunity.dart similarity index 99% rename from lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/EditCommunity/EditCommunity.dart rename to lib/sidemenu/Community/Admin/PopupItem/Community settings/EditCommunity/EditCommunity.dart index 0a14f8b..49268b7 100644 --- a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/EditCommunity/EditCommunity.dart +++ b/lib/sidemenu/Community/Admin/PopupItem/Community settings/EditCommunity/EditCommunity.dart @@ -9,7 +9,7 @@ import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CommonDropdown.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/ImageUpload.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; diff --git a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageGroup.dart b/lib/sidemenu/Community/Admin/PopupItem/Community settings/ManageGroup.dart similarity index 98% rename from lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageGroup.dart rename to lib/sidemenu/Community/Admin/PopupItem/Community settings/ManageGroup.dart index 6dbf089..6810b3e 100644 --- a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageGroup.dart +++ b/lib/sidemenu/Community/Admin/PopupItem/Community settings/ManageGroup.dart @@ -4,7 +4,7 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -80,7 +80,8 @@ class _ManageGroupsState extends State { image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), SingleChildScrollView( + ), + SingleChildScrollView( child: Column(children: [ Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), diff --git a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/ManageTags.dart b/lib/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/ManageTags.dart similarity index 97% rename from lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/ManageTags.dart rename to lib/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/ManageTags.dart index 0bacc8b..1644835 100644 --- a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/ManageTags.dart +++ b/lib/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/ManageTags.dart @@ -6,7 +6,7 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonTabBar.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -30,13 +30,14 @@ class _ManageTagsState extends State { ), resizeToAvoidBottomInset: false, body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), SingleChildScrollView( - child: Column(children: [ + ), + SingleChildScrollView( + child: Column(children: [ sizedBoxHeight(20.h), DefaultTabController( length: 2, diff --git a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/NewTag/NewTag.dart b/lib/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/NewTag/NewTag.dart similarity index 92% rename from lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/NewTag/NewTag.dart rename to lib/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/NewTag/NewTag.dart index 2e0b01f..32a983b 100644 --- a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/NewTag/NewTag.dart +++ b/lib/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/NewTag/NewTag.dart @@ -3,7 +3,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -26,13 +26,14 @@ class _NewTagState extends State { ), resizeToAvoidBottomInset: false, body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), SingleChildScrollView( - child: Padding( + ), + SingleChildScrollView( + child: Padding( padding: const EdgeInsets.symmetric(horizontal: 16), child: Column( crossAxisAlignment: CrossAxisAlignment.start, diff --git a/lib/Feed Module/sidemenu/Community/Announcements/AnnouncementRequest.dart b/lib/sidemenu/Community/Announcements/AnnouncementRequest.dart similarity index 86% rename from lib/Feed Module/sidemenu/Community/Announcements/AnnouncementRequest.dart rename to lib/sidemenu/Community/Announcements/AnnouncementRequest.dart index 6299508..b533e3b 100644 --- a/lib/Feed Module/sidemenu/Community/Announcements/AnnouncementRequest.dart +++ b/lib/sidemenu/Community/Announcements/AnnouncementRequest.dart @@ -3,7 +3,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -27,23 +27,24 @@ class _AnnouncementRequestState extends State { titleTxt: "Announcement requests", ), body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), SingleChildScrollView( - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 16), - child: Column( - children: [ - sizedBoxHeight(25.h), - Announcementtile( - profileImg: "assets/images/png/Ellipse 43.png", - title: "title", - mainImg: "assets/images/png/Rectangle 22.png") - ], - ))) + ), + SingleChildScrollView( + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 16), + child: Column( + children: [ + sizedBoxHeight(25.h), + Announcementtile( + profileImg: "assets/images/png/Ellipse 43.png", + title: "title", + mainImg: "assets/images/png/Rectangle 22.png") + ], + ))) ])); } diff --git a/lib/Feed Module/sidemenu/Community/Announcements/ManageMembers.dart b/lib/sidemenu/Community/Announcements/ManageMembers.dart similarity index 93% rename from lib/Feed Module/sidemenu/Community/Announcements/ManageMembers.dart rename to lib/sidemenu/Community/Announcements/ManageMembers.dart index 64c2bb4..1e174f2 100644 --- a/lib/Feed Module/sidemenu/Community/Announcements/ManageMembers.dart +++ b/lib/sidemenu/Community/Announcements/ManageMembers.dart @@ -7,7 +7,7 @@ import 'package:regroup/Common/CommonTabBar.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -58,47 +58,46 @@ class _ManageMembersState extends State { ), ), body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), Column( - crossAxisAlignment: CrossAxisAlignment.start, + ), + Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ + sizedBoxHeight(20.h), + DefaultTabController( + length: 4, + child: Column( children: [ - sizedBoxHeight(20.h), - DefaultTabController( - length: 4, - child: Column( - children: [ - CommonTabBar(tabs: const [ - Tab( - text: 'Members', - ), - Tab( - text: 'Admins', - ), - Tab( - text: 'Requests', - ), - Tab( - text: 'Invites', - ), - ]), - SizedBox( - height: 655.h, - child: TabBarView( - children: [ - membersTab(), - AdminsTab(), - RequestsTab(), - InvitesTab(), - ], - ), - ), - ], - )) - ]) + CommonTabBar(tabs: const [ + Tab( + text: 'Members', + ), + Tab( + text: 'Admins', + ), + Tab( + text: 'Requests', + ), + Tab( + text: 'Invites', + ), + ]), + SizedBox( + height: 655.h, + child: TabBarView( + children: [ + membersTab(), + AdminsTab(), + RequestsTab(), + InvitesTab(), + ], + ), + ), + ], + )) + ]) ])); } diff --git a/lib/Feed Module/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart b/lib/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart similarity index 94% rename from lib/Feed Module/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart rename to lib/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart index a99b5bd..67d557e 100644 --- a/lib/Feed Module/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart +++ b/lib/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart @@ -4,7 +4,7 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -28,13 +28,14 @@ class _NewAnnouncementState extends State { ), resizeToAvoidBottomInset: false, body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), SingleChildScrollView( - child: Padding( + ), + SingleChildScrollView( + child: Padding( padding: const EdgeInsets.symmetric(horizontal: 16), child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ diff --git a/lib/Feed Module/sidemenu/Community/Announcements/View/Announcements.dart b/lib/sidemenu/Community/Announcements/View/Announcements.dart similarity index 98% rename from lib/Feed Module/sidemenu/Community/Announcements/View/Announcements.dart rename to lib/sidemenu/Community/Announcements/View/Announcements.dart index 2b2493a..819122f 100644 --- a/lib/Feed Module/sidemenu/Community/Announcements/View/Announcements.dart +++ b/lib/sidemenu/Community/Announcements/View/Announcements.dart @@ -3,7 +3,7 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; diff --git a/lib/Feed Module/sidemenu/Community/Group/view/Group.dart b/lib/sidemenu/Community/Group/view/Group.dart similarity index 99% rename from lib/Feed Module/sidemenu/Community/Group/view/Group.dart rename to lib/sidemenu/Community/Group/view/Group.dart index 11ba615..eff7079 100644 --- a/lib/Feed Module/sidemenu/Community/Group/view/Group.dart +++ b/lib/sidemenu/Community/Group/view/Group.dart @@ -4,9 +4,9 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; -import 'package:regroup/Feed%20Module/sidemenu/view_model/getmethod.dart'; +import 'package:regroup/sidemenu/view_model/getmethod.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -39,7 +39,7 @@ class _GroupState extends State { }, ]; - late Future myfuture; + late Future myfuture; int id = Get.arguments["id"]; @override @@ -335,7 +335,6 @@ class _GroupState extends State { sizedBoxHeight(10.h), Row( children: [ - stackContainersGroups( number: joinedgroupsobj! .data![index].membersCount diff --git a/lib/Feed Module/sidemenu/Community/MyCommunity/AddGroups.dart b/lib/sidemenu/Community/MyCommunity/AddGroups.dart similarity index 98% rename from lib/Feed Module/sidemenu/Community/MyCommunity/AddGroups.dart rename to lib/sidemenu/Community/MyCommunity/AddGroups.dart index e02620a..eb1f2f3 100644 --- a/lib/Feed Module/sidemenu/Community/MyCommunity/AddGroups.dart +++ b/lib/sidemenu/Community/MyCommunity/AddGroups.dart @@ -6,7 +6,7 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -54,12 +54,13 @@ class _AddGroupState extends State { ), resizeToAvoidBottomInset: false, body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), SingleChildScrollView( + ), + SingleChildScrollView( child: Column(children: [ Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), diff --git a/lib/Feed Module/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart b/lib/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart similarity index 97% rename from lib/Feed Module/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart rename to lib/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart index 8be3ddf..fa1c264 100644 --- a/lib/Feed Module/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart +++ b/lib/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart @@ -4,7 +4,7 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -28,13 +28,14 @@ class _CommunityInfoState extends State { ), resizeToAvoidBottomInset: false, body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), SingleChildScrollView( - child: Column(children: [ + ), + SingleChildScrollView( + child: Column(children: [ Stack(clipBehavior: Clip.none, children: [ GestureDetector( onTap: () { diff --git a/lib/Feed Module/sidemenu/Community/MyCommunity/NewCommunity.dart b/lib/sidemenu/Community/MyCommunity/NewCommunity.dart similarity index 98% rename from lib/Feed Module/sidemenu/Community/MyCommunity/NewCommunity.dart rename to lib/sidemenu/Community/MyCommunity/NewCommunity.dart index c3b1e58..e0b7589 100644 --- a/lib/Feed Module/sidemenu/Community/MyCommunity/NewCommunity.dart +++ b/lib/sidemenu/Community/MyCommunity/NewCommunity.dart @@ -10,7 +10,7 @@ import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CommonDropdown.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; import 'package:regroup/Utils/Common/ImageUpload.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -39,13 +39,14 @@ class _NewCommunityState extends State { titleTxt: "New community", ), body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), SingleChildScrollView( - child: Padding( + ), + SingleChildScrollView( + child: Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), child: Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ diff --git a/lib/Feed Module/sidemenu/Community/MyCommunity/View/CommunityDetails.dart b/lib/sidemenu/Community/MyCommunity/View/CommunityDetails.dart similarity index 99% rename from lib/Feed Module/sidemenu/Community/MyCommunity/View/CommunityDetails.dart rename to lib/sidemenu/Community/MyCommunity/View/CommunityDetails.dart index ceadd24..531dff3 100644 --- a/lib/Feed Module/sidemenu/Community/MyCommunity/View/CommunityDetails.dart +++ b/lib/sidemenu/Community/MyCommunity/View/CommunityDetails.dart @@ -6,7 +6,7 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonTabBar.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -152,12 +152,12 @@ class _CommunityDetailsState extends State { )), ), body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), + ), Positioned.fill( child: SingleChildScrollView( child: Column(children: [ diff --git a/lib/Feed Module/sidemenu/Community/MyCommunity/View/MyCommunity.dart b/lib/sidemenu/Community/MyCommunity/View/MyCommunity.dart similarity index 99% rename from lib/Feed Module/sidemenu/Community/MyCommunity/View/MyCommunity.dart rename to lib/sidemenu/Community/MyCommunity/View/MyCommunity.dart index 41c9543..e0489b6 100644 --- a/lib/Feed Module/sidemenu/Community/MyCommunity/View/MyCommunity.dart +++ b/lib/sidemenu/Community/MyCommunity/View/MyCommunity.dart @@ -4,7 +4,7 @@ import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; diff --git a/lib/Feed Module/sidemenu/Community/Watchlist.dart b/lib/sidemenu/Community/Watchlist.dart similarity index 99% rename from lib/Feed Module/sidemenu/Community/Watchlist.dart rename to lib/sidemenu/Community/Watchlist.dart index 5063a82..348f972 100644 --- a/lib/Feed Module/sidemenu/Community/Watchlist.dart +++ b/lib/sidemenu/Community/Watchlist.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; diff --git a/lib/Feed Module/sidemenu/Model/joineGroupsModel.dart b/lib/sidemenu/Model/joineGroupsModel.dart similarity index 100% rename from lib/Feed Module/sidemenu/Model/joineGroupsModel.dart rename to lib/sidemenu/Model/joineGroupsModel.dart diff --git a/lib/Feed Module/sidemenu/SavedPosts/SavedPosts.dart b/lib/sidemenu/SavedPosts/SavedPosts.dart similarity index 97% rename from lib/Feed Module/sidemenu/SavedPosts/SavedPosts.dart rename to lib/sidemenu/SavedPosts/SavedPosts.dart index 8a31586..ef27041 100644 --- a/lib/Feed Module/sidemenu/SavedPosts/SavedPosts.dart +++ b/lib/sidemenu/SavedPosts/SavedPosts.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; class SavedPosts extends StatefulWidget { diff --git a/lib/Feed Module/sidemenu/sidemenu.dart b/lib/sidemenu/sidemenu.dart similarity index 100% rename from lib/Feed Module/sidemenu/sidemenu.dart rename to lib/sidemenu/sidemenu.dart diff --git a/lib/Feed Module/sidemenu/view_model/getmethod.dart b/lib/sidemenu/view_model/getmethod.dart similarity index 89% rename from lib/Feed Module/sidemenu/view_model/getmethod.dart rename to lib/sidemenu/view_model/getmethod.dart index 9b839b8..dc0f42b 100644 --- a/lib/Feed Module/sidemenu/view_model/getmethod.dart +++ b/lib/sidemenu/view_model/getmethod.dart @@ -3,7 +3,7 @@ import 'dart:developer'; import 'package:regroup/Common/api_urls.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Common/controller/data/network/network_api.dart'; -import 'package:regroup/Feed%20Module/sidemenu/Model/joineGroupsModel.dart'; +import 'package:regroup/sidemenu/Model/joineGroupsModel.dart'; GetmyJoinedGroupsModel? joinedgroupsobj; diff --git a/lib/Feed Module/sidemenu/view_model/postmethod.dart b/lib/sidemenu/view_model/postmethod.dart similarity index 100% rename from lib/Feed Module/sidemenu/view_model/postmethod.dart rename to lib/sidemenu/view_model/postmethod.dart From 00c9683f10be8d915a02afd5e42bcf86674d1d8a Mon Sep 17 00:00:00 2001 From: jayesh Date: Thu, 1 Aug 2024 13:33:57 +0530 Subject: [PATCH 05/11] changes --- lib/Common/api_urls.dart | 4 +- .../Main_Screens/Community/Community.dart | 454 +++++++++++------- .../Main_Screens/Community/CycleScreen.dart | 14 +- .../Community/Modal/LatestPost.dart | 183 +++++++ .../Community/ViewModal/FeedPost.dart | 1 + .../Community/ViewModal/LatesPost.dart | 26 + .../sidemenu/Model/TagCommunityUserModel.dart | 98 ++++ lib/Feed Module/sidemenu/sidemenu.dart | 152 +----- .../sidemenu/view_model/tagcommunityuser.dart | 22 + 9 files changed, 641 insertions(+), 313 deletions(-) create mode 100644 lib/Feed Module/Main_Screens/Community/Modal/LatestPost.dart create mode 100644 lib/Feed Module/Main_Screens/Community/ViewModal/FeedPost.dart create mode 100644 lib/Feed Module/Main_Screens/Community/ViewModal/LatesPost.dart create mode 100644 lib/Feed Module/sidemenu/Model/TagCommunityUserModel.dart create mode 100644 lib/Feed Module/sidemenu/view_model/tagcommunityuser.dart diff --git a/lib/Common/api_urls.dart b/lib/Common/api_urls.dart index 11613b9..637a92b 100644 --- a/lib/Common/api_urls.dart +++ b/lib/Common/api_urls.dart @@ -91,14 +91,14 @@ class ApiUrls { static const getblockuser = "${baseUrl}fetch-blocked-profile"; static const postblockuser = "${baseUrl}block-profile"; + static const latestpost = "${baseUrl}fetch-latest-post"; + static const tagcommunityuser = "${baseUrl}fetch-communities-tags-to-pin"; // Individual static const posteditprofile = "${baseUrl}update-profile"; static const geteditprofile = "${baseUrl}fetch-profile"; static const getinterestlist = "${baseUrl}fetch-interests"; - - // Business static const posteditprofilebusiness = "${baseUrl}update-business-profile"; static const geteditprofilebusiness = "${baseUrl}fetch-business-profile"; diff --git a/lib/Feed Module/Main_Screens/Community/Community.dart b/lib/Feed Module/Main_Screens/Community/Community.dart index 784968b..053c930 100644 --- a/lib/Feed Module/Main_Screens/Community/Community.dart +++ b/lib/Feed Module/Main_Screens/Community/Community.dart @@ -1,3 +1,5 @@ +// ignore_for_file: unused_local_variable, non_constant_identifier_names, avoid_print, file_names + import 'package:flutter/material.dart'; import 'package:flutter_reaction_button/flutter_reaction_button.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; @@ -7,6 +9,7 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonTabBar.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/controller/MainScreen.dart'; +import 'package:regroup/Feed%20Module/Main_Screens/Community/ViewModal/LatesPost.dart'; import 'package:regroup/Feed%20Module/sidemenu/sidemenu.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -118,9 +121,9 @@ class _CommunityScreenState extends State { Expanded( child: TabBarView( children: [ - feedTab(), + feedTabData(), popularTab(), - latestTab(), + const LatestTab(), ], ), ), @@ -164,13 +167,19 @@ class _CommunityScreenState extends State { } } -Widget feedTab() { +Widget feedTabData() { List feedTabData = [ { "profileImg": "assets/images/png/Ellipse 43.png", "title": "Edward Hackket", "mainImg": "assets/images/png/Rectangle 24.png", "containerTitle": ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events'], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -183,6 +192,12 @@ Widget feedTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -195,6 +210,12 @@ Widget feedTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -207,75 +228,58 @@ Widget feedTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, ]; - return Column(children: [ - sizedBoxHeight(16.h), - Expanded( - child: ListView.builder( - shrinkWrap: true, - itemCount: feedTabData.length, - itemBuilder: (context, index) { - if (index == 1) { - return announcecardtile( - profileImg: 'assets/images/png/Ellipse 48.png', - title: 'Jocelyn Dokidis', - mainImg: 'assets/images/png/Rectangle 46.png', - containerTitle: [ - 'Race', - 'Swimming', - 'Events', - 'Marathon', - 'Events' - ]); - } else { + return Column( + children: [ + sizedBoxHeight(20.h), + Expanded( + child: ListView.builder( + shrinkWrap: true, + itemCount: feedTabData.length, + itemBuilder: (context, index) { return Column( children: [ normalcardtile2( - profileImg: feedTabData[index]["profileImg"], - title: feedTabData[index]["title"], - mainImg: feedTabData[index]["mainImg"], - containerTitle: feedTabData[index]["containerTitle"]), + profileImg: feedTabData[index]["profileImg"], + title: feedTabData[index]["title"], + mainImg: feedTabData[index]["mainImg"], + containerTitle: feedTabData[index]["containerTitle"], + description: 'test', + create_at: '1 hour', + total_comments: '20', + total_likes: '20', + total_save: '10', + community_name: 'text', + ), sizedBoxHeight(20.h) ], ); - } - }, + }, + ), ), - ), - // normalcardtile2( - // profileImg: 'assets/images/png/Ellipse 43.png', - // title: 'Edward Hackket', - // mainImg: 'assets/images/png/Rectangle 24.png', - // containerTitle: ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events']), - // sizedBoxHeight(20.h), - // announcecardtile( - // profileImg: 'assets/images/png/Ellipse 48.png', - // title: 'Jocelyn Dokidis', - // mainImg: 'assets/images/png/Rectangle 46.png', - // containerTitle: ['Race', 'Swimming', 'Events', 'Marathon', 'Events']), - // sizedBoxHeight(20.h), - // normalcardtile2( - // profileImg: 'assets/images/png/Ellipse 52.png', - // title: 'Ryan Dorwat', - // mainImg: 'assets/images/png/Rectangle 25.png', - // containerTitle: [ - // 'Football', - // 'Teams player', - // 'Events', - // 'Marathon', - // 'Events' - // ]), - // sizedBoxHeight(20.h), - ]); + ], + ); } Widget normalcardtile2({ required String profileImg, required String title, required String mainImg, + required String description, required List containerTitle, + required String community_name, + required String total_comments, + required String total_likes, + required String total_save, + required String? create_at, }) { var mainImage = 'assets/images/png/uiw_like-o.png'.obs; void updateImage(String reaction) { @@ -290,7 +294,7 @@ Widget normalcardtile2({ return commonGlassUI( width: double.infinity, - height: 570.h, + height: 760.h, mainOpacity: 1, borderRadius: BorderRadius.circular(1), customWidget: Column( @@ -302,7 +306,7 @@ Widget normalcardtile2({ crossAxisAlignment: CrossAxisAlignment.start, children: [ CircleAvatar( - foregroundImage: AssetImage(profileImg), + foregroundImage: NetworkImage(profileImg), radius: 25.r, ), sizedBoxWidth(12.w), @@ -319,7 +323,7 @@ Widget normalcardtile2({ width: 14.w, ), sizedBoxWidth(7.w), - text12w400_FCFCFC('Active alliance network'), + text12w400_FCFCFC(community_name), sizedBoxWidth(7.w), Icon( Icons.circle, @@ -327,7 +331,7 @@ Widget normalcardtile2({ size: 4.sp, ), sizedBoxWidth(6.w), - text12w400_FCFCFC('1 Hour ago'), + text12w400_FCFCFC(create_at!), ], ) ], @@ -430,17 +434,21 @@ Widget normalcardtile2({ ), sizedBoxHeight(20.h), GestureDetector( - onTap: () { - Get.toNamed(RouteName.postdetailsScreen); - }, - child: SizedBox( - height: 163.h, - width: double.infinity, - child: Image.asset( + onTap: () { + Get.toNamed(RouteName.postdetailsScreen); + }, + child: Container( + height: 360, + width: double.infinity, + decoration: BoxDecoration( + image: DecorationImage( + fit: BoxFit.cover, + image: NetworkImage( mainImg, - fit: BoxFit.cover, ), )), + ), + ), sizedBoxHeight(20.h), Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), @@ -465,14 +473,21 @@ Widget normalcardtile2({ ), ), sizedBoxHeight(20.h), - text16w400_FCFCFC( - "Lorem Ipsum has been the industry's standard dummy text ever since the 1500s . . ."), + SizedBox( + width: double.infinity, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + text16w400_FCFCFC(description), + ], + ), + ), Row(children: [ InkWell( onTap: () { Get.toNamed(RouteName.reactionview); }, - child: stackReaction(number: '20', containerImages: [ + child: stackReaction(number: total_likes, containerImages: [ 'assets/images/png/f7_hand-thumbsup.png', 'assets/images/png/heart 2.png', 'assets/images/png/party-popper 2.png' @@ -496,7 +511,7 @@ Widget normalcardtile2({ ), ), sizedBoxWidth(12.w), - text14w400_FCFCFC('20'), + text14w400_FCFCFC(total_comments), sizedBoxWidth(20.w), commonContainer( width: 30.w, @@ -515,7 +530,7 @@ Widget normalcardtile2({ ), ), sizedBoxWidth(12.w), - text14w400_FCFCFC('10'), + text14w400_FCFCFC(total_save), ]), sizedBoxHeight(12.h), commonDivider(), @@ -1382,6 +1397,12 @@ Widget popularTab() { "title": "Edward Hackket", "mainImg": "assets/images/png/Rectangle 24.png", "containerTitle": ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events'], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -1394,6 +1415,12 @@ Widget popularTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -1406,6 +1433,12 @@ Widget popularTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -1418,6 +1451,12 @@ Widget popularTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, ]; @@ -1432,10 +1471,17 @@ Widget popularTab() { return Column( children: [ normalcardtile2( - profileImg: popularTabData[index]["profileImg"], - title: popularTabData[index]["title"], - mainImg: popularTabData[index]["mainImg"], - containerTitle: popularTabData[index]["containerTitle"]), + profileImg: popularTabData[index]["profileImg"], + title: popularTabData[index]["title"], + mainImg: popularTabData[index]["mainImg"], + containerTitle: popularTabData[index]["containerTitle"], + description: 'test', + create_at: '1 hour', + total_comments: '20', + total_likes: '20', + total_save: '10', + community_name: 'text', + ), sizedBoxHeight(20.h) ], ); @@ -1446,98 +1492,168 @@ Widget popularTab() { ); } -Widget latestTab() { - List latestTabData = [ - { - "profileImg": "assets/images/png/Ellipse 43.png", - "title": "Edward Hackket", - "mainImg": "assets/images/png/Rectangle 24.png", - "containerTitle": ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events'], - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - }, - ]; +class LatestTab extends StatefulWidget { + const LatestTab({super.key}); - return Column(children: [ - sizedBoxHeight(16.h), - Expanded( - child: ListView.builder( - shrinkWrap: true, - itemCount: latestTabData.length, - itemBuilder: (context, index) { - if (index == 1) { - return announcecardtile( - profileImg: 'assets/images/png/Ellipse 48.png', - title: 'Jocelyn Dokidis', - mainImg: 'assets/images/png/Rectangle 46.png', - containerTitle: [ - 'Race', - 'Swimming', - 'Events', - 'Marathon', - 'Events' - ]); - } else { - return Column( - children: [ - normalcardtile2( - profileImg: latestTabData[index]["profileImg"], - title: latestTabData[index]["title"], - mainImg: latestTabData[index]["mainImg"], - containerTitle: latestTabData[index]["containerTitle"]), - sizedBoxHeight(20.h) - ], - ); - } - }, - ), - ), - - // normalcardtile2( - // profileImg: 'assets/images/png/Ellipse 43.png', - // title: 'Edward Hackket', - // mainImg: 'assets/images/png/Rectangle 24.png', - // containerTitle: ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events']), - // sizedBoxHeight(20.h), - // announcecardtile( - // profileImg: 'assets/images/png/Ellipse 48.png', - // title: 'Jocelyn Dokidis', - // mainImg: 'assets/images/png/Rectangle 46.png', - // containerTitle: ['Race', 'Swimming', 'Events', 'Marathon', 'Events']), - // sizedBoxHeight(20.h), - ]); + @override + State createState() => _LatestTabState(); +} + +class _LatestTabState extends State { + late Future latestfuture; + + @override + void initState() { + latestfuture = LatespostApi().getLatestPostApi(); + super.initState(); + } + + @override + Widget build(BuildContext context) { + return FutureBuilder( + future: latestfuture, + builder: (ctx, snapshot) { + if (snapshot.connectionState == ConnectionState.waiting) { + return + // ShimmerCommon(); + const Center( + child: CircularProgressIndicator( + color: Colors.blue, + ), + ); + } + + if (snapshot.hasError) { + return Center( + child: Text( + '${snapshot.error} occurred', + style: TextStyle(fontSize: 18.spMin), + ), + ); + } + + if (snapshot.connectionState == ConnectionState.done && + snapshot.hasData) { + print("Data fetched-->"); + + return Stack( + clipBehavior: Clip.none, + children: [ + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill), + ), + ), + Column( + children: [ + sizedBoxHeight(16.h), + Expanded( + child: ListView.builder( + shrinkWrap: true, + itemCount: latestpostobj!.data!.length, + itemBuilder: (context, index) { + if (index == 1) { + return announcecardtile( + profileImg: latestpostobj!.data![index] + .iamPrincipal!.profilePhoto ?? + '', + title: latestpostobj!.data![index].caption ?? '', + mainImg: 'assets/images/png/Rectangle 46.png', + containerTitle: [ + 'Race', + 'Swimming', + 'Events', + 'Marathon', + 'Events' + ]); + } else { + String? createAtstring = + latestpostobj!.data![index].createdAt; + if (createAtstring == null || + createAtstring.isEmpty) { + createAtstring = DateTime.now().toIso8601String(); + } + String? timeAgo; + + try { + DateTime postDateTime = + DateTime.parse(createAtstring); + DateTime now = DateTime.now(); + Duration difference = now.difference(postDateTime); + if (difference.inDays > 365) { + timeAgo = + '${(difference.inDays / 365).floor()} years ago'; + } else if (difference.inDays > 30) { + timeAgo = + '${(difference.inDays / 30).floor()} months ago'; + } else if (difference.inDays > 7) { + timeAgo = + '${(difference.inDays / 7).floor()} weeks ago'; + } else if (difference.inDays > 0) { + timeAgo = '${difference.inDays} days ago'; + } else if (difference.inHours > 0) { + timeAgo = '${difference.inHours} hours ago'; + } else if (difference.inMinutes > 0) { + timeAgo = '${difference.inMinutes} minutes ago'; + } else { + timeAgo = '${difference.inSeconds} seconds ago'; + } + print("Time ago: $timeAgo"); + } catch (e) { + print("Error parsing date: $e"); + String timeAgo = 'Unknown'; + } + + return Column( + children: [ + normalcardtile2( + profileImg: latestpostobj!.data![index] + .iamPrincipal!.profilePhoto ?? + '', + title: latestpostobj! + .data![index].iamPrincipal!.fullName ?? + '', + mainImg: + latestpostobj!.data![index].image ?? '', + containerTitle: + latestpostobj!.data![index].tagNames ?? + [''], + description: + latestpostobj!.data![index].caption ?? '', + create_at: timeAgo, + total_comments: latestpostobj! + .data![index].totalComment + .toString() ?? + '', + total_likes: latestpostobj! + .data![index].likecount + .toString() ?? + '', + total_save: latestpostobj! + .data![index].totalSave + .toString() ?? + '', + community_name: latestpostobj! + .data![index].community!.communityName + .toString() ?? + '', + ), + sizedBoxHeight(20.h) + ], + ); + } + }, + ), + ), + ], + ), + ], + ); + } + return Container(); + }, + ); + } } diff --git a/lib/Feed Module/Main_Screens/Community/CycleScreen.dart b/lib/Feed Module/Main_Screens/Community/CycleScreen.dart index 799e14e..b27104c 100644 --- a/lib/Feed Module/Main_Screens/Community/CycleScreen.dart +++ b/lib/Feed Module/Main_Screens/Community/CycleScreen.dart @@ -7,7 +7,6 @@ import 'package:regroup/Common/CommonTabBar.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Feed%20Module/Main_Screens/Community/Community.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -34,12 +33,13 @@ class _CycleScreenState extends State { width: 26.w, )), body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), Column(children: [ + ), + Column(children: [ sizedBoxHeight(10.h), DefaultTabController( length: 2, @@ -283,7 +283,7 @@ Widget normalcardtile({ Get.toNamed(RouteName.postdetailsScreen); }, child: SizedBox( - height: 163.h, + height: 360.h, width: double.infinity, child: Image.asset( mainImg, @@ -413,8 +413,10 @@ Widget normalcardtile({ itemScale: 0.4, itemSize: const Size(45, 45), boxPadding: const EdgeInsets.all(8), - boxAnimationDuration: const Duration(milliseconds: 200), - itemAnimationDuration: const Duration(milliseconds: 500), + boxAnimationDuration: + const Duration(milliseconds: 200), + itemAnimationDuration: + const Duration(milliseconds: 500), hoverDuration: const Duration(milliseconds: 700), // toggle: false, diff --git a/lib/Feed Module/Main_Screens/Community/Modal/LatestPost.dart b/lib/Feed Module/Main_Screens/Community/Modal/LatestPost.dart new file mode 100644 index 0000000..f9e6f25 --- /dev/null +++ b/lib/Feed Module/Main_Screens/Community/Modal/LatestPost.dart @@ -0,0 +1,183 @@ +class Latestpost { + String? status; + int? statusCode; + String? message; + List? data; + + Latestpost({this.status, this.statusCode, this.message, this.data}); + + Latestpost.fromJson(Map json) { + status = json['status']; + statusCode = json['status_code']; + message = json['message']; + if (json['data'] != null) { + data = []; + json['data'].forEach((v) { + data!.add(Data.fromJson(v)); + }); + } + } + + Map toJson() { + final Map data = {}; + data['status'] = status; + data['status_code'] = statusCode; + data['message'] = message; + if (this.data != null) { + data['data'] = this.data!.map((v) => v.toJson()).toList(); + } + return data; + } +} + +class Data { + int? id; + int? likecount; + List? tagsXid; + bool? isILiked; + int? totalComment; + int? totalSave; + int? iamPrincipalXid; + int? postIn; + String? caption; + String? image; + String? manageTagsXids; + String? postAs; + String? ctaTitle; + String? ctaLink; + String? createdAt; + List? tagNames; + String? likeIcon; + IamPrincipal? iamPrincipal; + Community? community; + + Data( + {this.id, + this.likecount, + this.tagsXid, + this.isILiked, + this.totalComment, + this.totalSave, + this.iamPrincipalXid, + this.postIn, + this.caption, + this.image, + this.manageTagsXids, + this.postAs, + this.ctaTitle, + this.ctaLink, + this.createdAt, + this.tagNames, + this.likeIcon, + this.iamPrincipal, + this.community}); + + Data.fromJson(Map json) { + id = json['id']; + likecount = json['likecount']; + tagsXid = json['tags_xid'].cast(); + isILiked = json['is_i_liked']; + totalComment = json['total_comment']; + totalSave = json['total_save']; + iamPrincipalXid = json['iam_principal_xid']; + postIn = json['post_in']; + caption = json['caption']; + image = json['image']; + manageTagsXids = json['manage_tags_xids']; + postAs = json['post_as']; + ctaTitle = json['cta_title']; + ctaLink = json['cta_link']; + createdAt = json['created_at']; + tagNames = json['tag_names'].cast(); + likeIcon = json['likeIcon']; + iamPrincipal = json['iam_principal'] != null + ? IamPrincipal.fromJson(json['iam_principal']) + : null; + community = json['community'] != null + ? Community.fromJson(json['community']) + : null; + } + + Map toJson() { + final Map data = {}; + data['id'] = id; + data['likecount'] = likecount; + data['tags_xid'] = tagsXid; + data['is_i_liked'] = isILiked; + data['total_comment'] = totalComment; + data['total_save'] = totalSave; + data['iam_principal_xid'] = iamPrincipalXid; + data['post_in'] = postIn; + data['caption'] = caption; + data['image'] = image; + data['manage_tags_xids'] = manageTagsXids; + data['post_as'] = postAs; + data['cta_title'] = ctaTitle; + data['cta_link'] = ctaLink; + data['created_at'] = createdAt; + data['tag_names'] = tagNames; + data['likeIcon'] = likeIcon; + if (iamPrincipal != null) { + data['iam_principal'] = iamPrincipal!.toJson(); + } + if (community != null) { + data['community'] = community!.toJson(); + } + return data; + } +} + +class IamPrincipal { + int? id; + int? principalTypeXid; + String? userName; + String? fullName; + String? profilePhoto; + + IamPrincipal( + {this.id, + this.principalTypeXid, + this.userName, + this.fullName, + this.profilePhoto}); + + IamPrincipal.fromJson(Map json) { + id = json['id']; + principalTypeXid = json['principal_type_xid']; + userName = json['user_name']; + fullName = json['full_name']; + profilePhoto = json['profile_photo']; + } + + Map toJson() { + final Map data = {}; + data['id'] = id; + data['principal_type_xid'] = principalTypeXid; + data['user_name'] = userName; + data['full_name'] = fullName; + data['profile_photo'] = profilePhoto; + return data; + } +} + +class Community { + int? id; + String? communityProfilePhoto; + String? communityName; + + Community({this.id, this.communityProfilePhoto, this.communityName}); + + Community.fromJson(Map json) { + id = json['id']; + communityProfilePhoto = json['community_profile_photo']; + communityName = json['community_name']; + } + + Map toJson() { + final Map data = {}; + data['id'] = id; + data['community_profile_photo'] = communityProfilePhoto; + data['community_name'] = communityName; + return data; + } +} diff --git a/lib/Feed Module/Main_Screens/Community/ViewModal/FeedPost.dart b/lib/Feed Module/Main_Screens/Community/ViewModal/FeedPost.dart new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/lib/Feed Module/Main_Screens/Community/ViewModal/FeedPost.dart @@ -0,0 +1 @@ + diff --git a/lib/Feed Module/Main_Screens/Community/ViewModal/LatesPost.dart b/lib/Feed Module/Main_Screens/Community/ViewModal/LatesPost.dart new file mode 100644 index 0000000..6687d2f --- /dev/null +++ b/lib/Feed Module/Main_Screens/Community/ViewModal/LatesPost.dart @@ -0,0 +1,26 @@ +import 'package:regroup/Common/api_urls.dart'; +import 'package:regroup/Common/base_manager.dart'; +import 'package:regroup/Common/controller/data/network/network_api.dart'; +import 'package:regroup/Feed%20Module/Main_Screens/Community/Modal/LatestPost.dart'; + +Latestpost? latestpostobj; + +class LatespostApi { + LatespostApi(); + + Future> getLatestPostApi() async { + final response = await NetworkApiServices().getApi(ApiUrls.latestpost); + + if (response.status == ResponseStatus.SUCCESS) { + if (response.data["status"] == "success") { + latestpostobj = Latestpost.fromJson(response.data); + } + return ResponseData( + response.data['message'], ResponseStatus.SUCCESS, + data: response.data); + } else { + return ResponseData( + response.data['message'], ResponseStatus.FAILED); + } + } +} diff --git a/lib/Feed Module/sidemenu/Model/TagCommunityUserModel.dart b/lib/Feed Module/sidemenu/Model/TagCommunityUserModel.dart new file mode 100644 index 0000000..84cb06f --- /dev/null +++ b/lib/Feed Module/sidemenu/Model/TagCommunityUserModel.dart @@ -0,0 +1,98 @@ +class TagCommunityUserModel { + String? status; + int? statusCode; + String? message; + Data? data; + + TagCommunityUserModel( + {this.status, this.statusCode, this.message, this.data}); + + TagCommunityUserModel.fromJson(Map json) { + status = json['status']; + statusCode = json['status_code']; + message = json['message']; + data = json['data'] != null ? Data.fromJson(json['data']) : null; + } + + Map toJson() { + final Map data = {}; + data['status'] = status; + data['status_code'] = statusCode; + data['message'] = message; + if (this.data != null) { + data['data'] = this.data!.toJson(); + } + return data; + } +} + +class Data { + List? community; + List? tags; + + Data({this.community, this.tags}); + + Data.fromJson(Map json) { + if (json['community'] != null) { + community = []; + json['community'].forEach((v) { + community!.add(Community.fromJson(v)); + }); + } + if (json['tags'] != null) { + tags = []; + json['tags'].forEach((v) { + tags!.add(Tags.fromJson(v)); + }); + } + } + + Map toJson() { + final Map data = {}; + if (community != null) { + data['community'] = community!.map((v) => v.toJson()).toList(); + } + if (tags != null) { + data['tags'] = tags!.map((v) => v.toJson()).toList(); + } + return data; + } +} + +class Community { + int? id; + String? communityName; + + Community({this.id, this.communityName}); + + Community.fromJson(Map json) { + id = json['id']; + communityName = json['community_name']; + } + + Map toJson() { + final Map data = {}; + data['id'] = id; + data['community_name'] = communityName; + return data; + } +} + +class Tags { + int? id; + String? name; + + Tags({this.id, this.name}); + + Tags.fromJson(Map json) { + id = json['id']; + name = json['name']; + } + + Map toJson() { + final Map data = {}; + data['id'] = id; + data['name'] = name; + return data; + } +} diff --git a/lib/Feed Module/sidemenu/sidemenu.dart b/lib/Feed Module/sidemenu/sidemenu.dart index 46b1503..25bb7aa 100644 --- a/lib/Feed Module/sidemenu/sidemenu.dart +++ b/lib/Feed Module/sidemenu/sidemenu.dart @@ -1,9 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; - import 'package:get/get.dart'; import 'package:regroup/Common/CommonGlassmorphism.dart'; -import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -69,84 +67,17 @@ class _SideMenuState extends State { @override Widget build(BuildContext context) { return Scaffold( - backgroundColor: Color(0xFF222935), + backgroundColor: const Color(0xFF222935), body: Column( children: [ sizedBoxHeight(50.h), Expanded( child: ListView(children: [ Padding( - padding: EdgeInsets.symmetric(horizontal: 10.w), - child: commonGlassUI( - width: double.infinity, - height: 330.h, - borderRadius: BorderRadius.circular(10.r), - customWidget: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Padding( - padding: EdgeInsets.symmetric( - horizontal: 16.w, vertical: 12.h), - child: Row( - children: [ - text16w400_FCFCFC("Pinned"), - Spacer(), - Icon( - Icons.arrow_drop_up, - color: Colors.white, - size: 25, - ) - ], - ), - ), - commonDivider(), - sizedBoxHeight(10.h), - firstRowTile( - text: "Row bridge", - leadingimage: - "assets/images/png/sidemenu/rowing 1 (traced).png", - index: 1), - firstRowTile( - text: "Advice", - leadingimage: - "assets/images/png/sidemenu/solar_cloud-outline.png", - index: 2), - firstRowTile( - text: "Crush", - leadingimage: - "assets/images/png/sidemenu/Vector (4).png", - index: 3), - ListTile( - leading: CircleAvatar( - radius: 15.r, - foregroundImage: AssetImage( - "assets/images/png/sidemenu/Ellipse 52.png"), - ), - title: text14w400_FCFCFC("Ryan Dorwart"), - trailing: Image.asset( - "assets/images/png/sidemenu/f7_pin-fill (1).png", - width: 19.w, - height: 19.h, - ), - onTap: () {}, - ), - ListTile( - leading: CircleAvatar( - radius: 15.r, - foregroundImage: AssetImage( - "assets/images/png/sidemenu/Ellipse 53.png"), - ), - title: text14w400_FCFCFC("Ahmad Rhiel Madsen"), - trailing: Image.asset( - "assets/images/png/sidemenu/f7_pin-fill (1).png", - width: 19.w, - height: 19.h, - ), - onTap: () {}, - ), - ]), - ), + padding: EdgeInsets.symmetric(horizontal: 16.w), + child: text16w400_FCFCFC("My pinned content"), ), + const Spacer(), sizedBoxHeight(18.h), Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), @@ -156,7 +87,7 @@ class _SideMenuState extends State { decoration: BoxDecoration( border: Border( bottom: BorderSide( - color: Color.fromRGBO(255, 255, 255, 0.3), + color: const Color.fromRGBO(255, 255, 255, 0.3), width: 1.w, ), ), @@ -168,8 +99,8 @@ class _SideMenuState extends State { padding: EdgeInsets.symmetric(horizontal: 16.w), child: Row( children: [ - text16w400_FCFCFC("Communities"), - Spacer(), + text16w400_FCFCFC("Tags"), + const Spacer(), GestureDetector( onTap: () { Get.toNamed(RouteName.mycommunity); @@ -207,7 +138,7 @@ class _SideMenuState extends State { decoration: BoxDecoration( border: Border( bottom: BorderSide( - color: Color.fromRGBO(255, 255, 255, 0.3), + color: const Color.fromRGBO(255, 255, 255, 0.3), width: 1.w, ), ), @@ -219,59 +150,8 @@ class _SideMenuState extends State { padding: EdgeInsets.symmetric(horizontal: 16.w), child: Row( children: [ - text16w400_FCFCFC("Watchlist"), - Spacer(), - GestureDetector( - onTap: () { - Get.toNamed(RouteName.watchlist); - }, - child: text14w400_FCFCFC("View all")), - ], - ), - ), - sizedBoxHeight(20.h), - firstRowTile( - text: "Row bridge", - leadingimage: - "assets/images/png/sidemenu/rowing 1 (traced).png", - index: 8), - firstRowTile( - text: "Advice", - leadingimage: - "assets/images/png/sidemenu/solar_cloud-outline.png", - index: 9), - firstRowTile( - text: "Crush", - leadingimage: "assets/images/png/sidemenu/Vector (4).png", - index: 10), - firstRowTile( - text: "Row bridge", - leadingimage: - "assets/images/png/sidemenu/rowing 1 (traced).png", - index: 11), - sizedBoxHeight(18.h), - Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Container( - height: 1, - margin: EdgeInsets.symmetric(vertical: 10.h), - decoration: BoxDecoration( - border: Border( - bottom: BorderSide( - color: Color.fromRGBO(255, 255, 255, 0.3), - width: 1.w, - ), - ), - ), - ), - ), - sizedBoxHeight(18.h), - Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Row( - children: [ - text16w400_FCFCFC("Recent"), - Spacer(), + text16w400_FCFCFC("Communities"), + const Spacer(), GestureDetector( onTap: () { Get.toNamed(RouteName.mycommunity); @@ -285,21 +165,21 @@ class _SideMenuState extends State { text: "Row bridge", leadingimage: "assets/images/png/sidemenu/rowing 1 (traced).png", - index: 8), + index: 4), firstRowTile( text: "Advice", leadingimage: "assets/images/png/sidemenu/solar_cloud-outline.png", - index: 9), + index: 5), firstRowTile( text: "Crush", leadingimage: "assets/images/png/sidemenu/Vector (4).png", - index: 10), + index: 6), firstRowTile( text: "Row bridge", leadingimage: "assets/images/png/sidemenu/rowing 1 (traced).png", - index: 11), + index: 7), sizedBoxHeight(18.h), Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), @@ -309,7 +189,7 @@ class _SideMenuState extends State { decoration: BoxDecoration( border: Border( bottom: BorderSide( - color: Color.fromRGBO(255, 255, 255, 0.3), + color: const Color.fromRGBO(255, 255, 255, 0.3), width: 1.w, ), ), @@ -322,7 +202,7 @@ class _SideMenuState extends State { child: Row( children: [ text16w400_FCFCFC("Users"), - Spacer(), + const Spacer(), GestureDetector( onTap: () { Get.toNamed(RouteName.mycommunity); diff --git a/lib/Feed Module/sidemenu/view_model/tagcommunityuser.dart b/lib/Feed Module/sidemenu/view_model/tagcommunityuser.dart new file mode 100644 index 0000000..59ce7f7 --- /dev/null +++ b/lib/Feed Module/sidemenu/view_model/tagcommunityuser.dart @@ -0,0 +1,22 @@ +import 'dart:developer'; + +import 'package:regroup/Common/api_urls.dart'; +import 'package:regroup/Common/base_manager.dart'; +import 'package:regroup/Common/controller/data/network/network_api.dart'; +import 'package:regroup/Feed%20Module/sidemenu/Model/TagCommunityUserModel.dart'; + +TagCommunityUserModel? tagcommunityuserobj; + +class Sidegetmethod { + Future> getJoinedusergroups(updata) async { + final response = await NetworkApiServices().getApi( + "${ApiUrls.tagcommunityuser}?=$updata", + // optionalpar: false + ); + if (response.status == ResponseStatus.SUCCESS) { + tagcommunityuserobj = TagCommunityUserModel.fromJson(response.data); + log(tagcommunityuserobj!.data.toString()); + } + return response; + } +} From 2dcae88e7e7f293c48184f7f591381b78517dcc9 Mon Sep 17 00:00:00 2001 From: Dakshesh42 Date: Thu, 1 Aug 2024 13:35:58 +0530 Subject: [PATCH 06/11] changes all glassmorphism with glassUi --- assets/images/png/Connected world-amico 1.png | Bin 0 -> 134354 bytes assets/images/png/Group 1000004385.png | Bin 0 -> 79873 bytes assets/images/png/Group 1000004420.png | Bin 0 -> 21354 bytes .../images/png/Organizing projects-pana 1.png | Bin 0 -> 120826 bytes assets/images/png/correct 1.png | Bin 0 -> 10572 bytes assets/images/png/x-circle.png | Bin 0 -> 3217 bytes .../CalenderTab/AddEvent/AddEvent.dart | 48 +- .../CalenderTab/AddUsers/AddUsers.dart | 54 +- .../CalenderTab/Availabillity.dart | 9 +- .../Main_Screens/CalenderTab/CalenderTab.dart | 43 +- .../CalenderTab/EventDetails.dart | 130 +-- .../ManageMenmbers/ManageMembersCal.dart | 50 +- .../Resource Pool/ResourcePool.dart | 12 +- .../CalenderTab/SetAvailabillity.dart | 12 +- .../Main_Screens/Chats/View/groupchat.dart | 6 +- .../Main_Screens/Chats/View/userchat.dart | 6 +- .../Main_Screens/Community/Community.dart | 29 +- .../Main_Screens/Community/CycleScreen.dart | 18 +- .../View/PostDetailScreen.dart | 30 +- .../PostDetailScreen/View/ReactionView.dart | 18 +- .../ExploreDesign/DetailExplore.dart | 6 +- .../ExploreDesign/ExploreScreen.dart | 18 +- .../ExploreDesign/SearchGroup.dart | 6 +- .../GroupTab/View/ConnectCommunity.dart | 6 +- .../GroupTab/View/GroupDetail.dart | 24 +- .../GroupTab/View/GroupEvent.dart | 48 +- .../Main_Screens/GroupTab/View/GroupInfo.dart | 12 +- .../GroupTab/View/GroupManage.dart | 54 +- .../Main_Screens/GroupTab/View/GroupTab.dart | 59 +- .../Main_Screens/GroupTab/View/NewPost.dart | 6 +- .../GroupTab/View/RequestedGroups.dart | 59 +- .../Main_Screens/GroupTab/View/Sessions.dart | 24 +- .../View/SubGroup/EditSubgroupInfo.dart | 6 +- .../GroupTab/View/SubGroup/SubGroupInfo.dart | 48 +- .../GroupTab/View/SubGroup/Subgroups.dart | 6 +- .../Main_Screens/ProfileTab/Clubs/Clubs.dart | 6 +- .../ProfileTab/Settings/AccountSessions.dart | 12 +- .../ProfileTab/Settings/FaqScreen.dart | 6 +- .../ProfileTab/Settings/Settings.dart | 12 +- .../Settings/View/BlockedUsers.dart | 12 +- .../Share profile/ShareProfile.dart | 6 +- .../ProfileTab/TimeLine/AddTimeline.dart | 12 +- .../Notification/View/notification.dart | 55 +- .../EditCommunity/EditCommunity.dart | 12 +- .../Community settings/ManageGroup.dart | 6 +- .../ManageTags.dart/ManageTags.dart | 12 +- .../Announcements/AnnouncementRequest.dart | 12 +- .../Announcements/ManageMembers.dart | 54 +- .../NewAnnouncement/NewAnnounceent.dart | 6 +- .../Announcements/View/Announcements.dart | 6 +- .../sidemenu/Community/Group/view/Group.dart | 82 +- .../Community/MyCommunity/AddGroups.dart | 12 +- .../view/communityInfo.dart | 12 +- .../Community/MyCommunity/NewCommunity.dart | 12 +- .../MyCommunity/View/CommunityDetails.dart | 42 +- .../MyCommunity/View/MyCommunity.dart | 6 +- lib/Login/View/verifygoogleapple.dart | 91 ++- lib/Utils/Common/CommonAppbar.dart | 6 +- lib/Utils/texts.dart | 21 +- lib/main.dart | 4 +- .../View/Business/View/step2Selectgroup.dart | 56 +- .../Business/View/step3SelectCommunity.dart | 55 +- .../View/Individual/FindCommunityPage.dart | 44 + .../View/Individual/step1Selectprofile.dart | 51 +- .../View/Individual/step2Selectactivity.dart | 757 ++++++++++-------- .../View/Individual/step3Selectyourgroup.dart | 204 +++-- .../Individual/step4Selectyourcommunity.dart | 185 +++-- .../View/Individual/tellusindividual.dart | 21 +- .../Signup/View/communitycommitment.dart | 133 ++- lib/onboarding/Signup/View/signupendpage.dart | 78 +- lib/onboarding/forgotPass/View/ForgotOtp.dart | 57 +- lib/resources/routes/route_name.dart | 2 + lib/resources/routes/routes.dart | 5 + 73 files changed, 1658 insertions(+), 1354 deletions(-) create mode 100644 assets/images/png/Connected world-amico 1.png create mode 100644 assets/images/png/Group 1000004385.png create mode 100644 assets/images/png/Group 1000004420.png create mode 100644 assets/images/png/Organizing projects-pana 1.png create mode 100644 assets/images/png/correct 1.png create mode 100644 assets/images/png/x-circle.png create mode 100644 lib/onboarding/Signup/View/Individual/FindCommunityPage.dart diff --git a/assets/images/png/Connected world-amico 1.png b/assets/images/png/Connected world-amico 1.png new file mode 100644 index 0000000000000000000000000000000000000000..f5b8583c06851fd9fdef9bfbaf566a7214cbe669 GIT binary patch literal 134354 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
C*z2M3N#PX6xT9P`?YG^OdJ^lV(xG$&x;u^BL+m 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Ⓢ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%0Ambq7P{ccCPtW>VL?6mb%6$UP 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 KpUXO@geCyV1iW_u literal 0 HcmV?d00001 diff --git a/assets/images/png/Group 1000004385.png b/assets/images/png/Group 1000004385.png new file mode 100644 index 0000000000000000000000000000000000000000..a046e4ae4bab05be8ee8d3ed9c2a4804c424aa7b GIT binary patch literal 79873 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

AxZun2C|-HmM&GJ%)j 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

ShN>(*#A2_QTQIbWV-A{I+>vTTcdVZAw|!?s¥7ld6q&+{jb5vm;} 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 CO8{*E literal 0 HcmV?d00001 diff --git a/assets/images/png/correct 1.png b/assets/images/png/correct 1.png new file mode 100644 index 0000000000000000000000000000000000000000..77e4704c483d88a89a08f65008d65f8b116b287a GIT binary patch literal 10572 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 D*IEs^ literal 0 HcmV?d00001 diff --git a/lib/Feed Module/Main_Screens/CalenderTab/AddEvent/AddEvent.dart b/lib/Feed Module/Main_Screens/CalenderTab/AddEvent/AddEvent.dart index ff085af..102deb7 100644 --- a/lib/Feed Module/Main_Screens/CalenderTab/AddEvent/AddEvent.dart +++ b/lib/Feed Module/Main_Screens/CalenderTab/AddEvent/AddEvent.dart @@ -103,11 +103,11 @@ class _AddEventState extends State { borderType: BorderType.RRect, radius: Radius.circular(14.r), color: const Color(0xFF434A53), - child: commonGlassContainer( - border: 0, + child: commonGlassUI( + // border: 0, width: double.infinity, height: 130.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: bannerPath.isNotEmpty && isbannerAdded ? Stack(children: [ Image.file( @@ -160,10 +160,10 @@ class _AddEventState extends State { ), ), sizedBoxHeight(20.h), - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 60.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Center( child: Padding( padding: EdgeInsets.symmetric(horizontal: 12.w), @@ -197,7 +197,7 @@ class _AddEventState extends State { ]), ), ), - border: 1), + borderwidth: 1), sizedBoxHeight(20.h), text16400white("Type of event"), sizedBoxHeight(14.h), @@ -313,10 +313,10 @@ class _AddEventState extends State { }); } }, - child: commonGlassContainer( + child: commonGlassUI( width: 174.w, height: 50.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), customWidget: Center( child: Row(children: [ sizedBoxWidth(16.w), @@ -330,7 +330,7 @@ class _AddEventState extends State { formatTimeOfDay(starttime!)), ]), ), - border: 1), + borderwidth: 1), ) ], ), @@ -351,10 +351,10 @@ class _AddEventState extends State { }); } }, - child: commonGlassContainer( + child: commonGlassUI( width: 174.w, height: 50.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), customWidget: Center( child: Row(children: [ sizedBoxWidth(16.w), @@ -368,7 +368,7 @@ class _AddEventState extends State { formatTimeOfDay(endtime!)), ]), ), - border: 1), + borderwidth: 1), ) ], ), @@ -378,9 +378,9 @@ class _AddEventState extends State { Row( children: [ Obx(() { - return commonGlassContainer( - border: 1, - borderradius: 2, + return commonGlassUI( + borderwidth: 1, + borderRadius: BorderRadius.circular( 2), height: 23.h, width: 23.w, opacity1: 0.24, @@ -474,19 +474,19 @@ class _AddEventState extends State { Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - commonGlassContainer( + commonGlassUI( height: 50.h, width: 127.w, - borderradius: 30.r, - border: 1, + borderRadius: BorderRadius.circular( 30.r), + borderwidth: 1, customWidget: Center( child: text16400white("2"), )), - commonGlassContainer( + commonGlassUI( height: 50.h, width: 215.w, - borderradius: 30.r, - border: 1, + borderRadius: BorderRadius.circular( 30.r), + borderwidth: 1, customWidget: Center( child: Row( mainAxisAlignment: MainAxisAlignment.center, @@ -515,10 +515,10 @@ class _AddEventState extends State { required String imagePath, required String title, }) { - return commonGlassContainer( + return commonGlassUI( width: double.infinity, height: 50.h, - borderradius: 30, + borderRadius: BorderRadius.circular(30), customWidget: Padding( padding: const EdgeInsets.symmetric(horizontal: 16), child: Center( @@ -540,6 +540,6 @@ class _AddEventState extends State { ), ), ), - border: 1); + borderwidth: 1); } } diff --git a/lib/Feed Module/Main_Screens/CalenderTab/AddUsers/AddUsers.dart b/lib/Feed Module/Main_Screens/CalenderTab/AddUsers/AddUsers.dart index bd7bc9b..725bc1b 100644 --- a/lib/Feed Module/Main_Screens/CalenderTab/AddUsers/AddUsers.dart +++ b/lib/Feed Module/Main_Screens/CalenderTab/AddUsers/AddUsers.dart @@ -138,10 +138,10 @@ class _AddUsersState extends State { children: [ text18w700_FCFCFC("Group members"), const Spacer(), - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/Vector (5)22.png", @@ -149,12 +149,12 @@ class _AddUsersState extends State { width: 12.w, ), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(14.w), - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), customWidget: Center( child: Image.asset( "assets/images/png/bi_filter.png", @@ -162,7 +162,7 @@ class _AddUsersState extends State { width: 18.w, ), ), - border: 0.5) + borderwidth: 0.5) ], ), ), @@ -237,9 +237,9 @@ class _AddUsersState extends State { ], ), const Spacer(), - commonGlassContainer( - border: 1, - borderradius: 2, + commonGlassUI( + borderwidth: 1, + borderRadius: BorderRadius.circular( 2), height: 23.h, width: 23.w, opacity1: 0.24, @@ -280,32 +280,32 @@ class _AddUsersState extends State { sizedBoxHeight(16.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("M")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Tu")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("W")), - border: 0.5), + borderwidth: 0.5), const Spacer(), Row( children: [ @@ -325,32 +325,32 @@ class _AddUsersState extends State { sizedBoxHeight(20.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Th")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("F")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Sa")), - border: 0.5), + borderwidth: 0.5), const Spacer(), Row( children: [ diff --git a/lib/Feed Module/Main_Screens/CalenderTab/Availabillity.dart b/lib/Feed Module/Main_Screens/CalenderTab/Availabillity.dart index 5bd96ca..8549294 100644 --- a/lib/Feed Module/Main_Screens/CalenderTab/Availabillity.dart +++ b/lib/Feed Module/Main_Screens/CalenderTab/Availabillity.dart @@ -121,14 +121,15 @@ class _AvailabilityState extends State { child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 670.h, - borderradius: 1, - border: 0, + borderRadius: BorderRadius.circular(1), + // border: 0, customWidget: SfCalendar( view: CalendarView.timelineMonth, - appointmentTextStyle: const TextStyle(color: Colors.white), + appointmentTextStyle: + const TextStyle(color: Colors.white), headerStyle: const CalendarHeaderStyle( textStyle: TextStyle( color: Colors.blue, diff --git a/lib/Feed Module/Main_Screens/CalenderTab/CalenderTab.dart b/lib/Feed Module/Main_Screens/CalenderTab/CalenderTab.dart index 6e67068..a146e0b 100644 --- a/lib/Feed Module/Main_Screens/CalenderTab/CalenderTab.dart +++ b/lib/Feed Module/Main_Screens/CalenderTab/CalenderTab.dart @@ -177,10 +177,7 @@ class _CalenderTabState extends State { // initialIndex: selectedIndex.value, child: Column( children: [ - const CommonTabBar( - - - tabs: [ + const CommonTabBar(tabs: [ Tab( text: 'My sessions', ), @@ -190,7 +187,6 @@ class _CalenderTabState extends State { ]), Expanded( child: TabBarView( - children: [ mySessionsTab(), comSessionTab(), @@ -215,10 +211,11 @@ class _CalenderTabState extends State { sizedBoxHeight(20.h), Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), - child: commonGlassContainer( + child: commonGlassUI( width: double.infinity, height: 136.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular(10.r) , + borderwidth: 1, customWidget: Row( children: [ Padding( @@ -245,15 +242,15 @@ class _CalenderTabState extends State { Image.asset("assets/images/png/Rectangle 45.png") ], ), - border: 1), + ), ), sizedBoxHeight(25.h), Stack(children: [ - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 500.h, - borderradius: 1, - border: 0, + borderRadius: BorderRadius.circular(1), + // borderw: 0, customWidget: SfCalendar( view: CalendarView.month, appointmentTextStyle: const TextStyle(color: Colors.white), @@ -456,10 +453,11 @@ class _CalenderTabState extends State { onTap: () { Get.toNamed(RouteName.eventDetails); }, - child: commonGlassContainer( + child: commonGlassUI( width: double.infinity, height: 300.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), + borderwidth: 1.w, customWidget: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -529,15 +527,15 @@ class _CalenderTabState extends State { sizedBoxWidth(16.w), CircleAvatar( radius: 12.r, - backgroundImage: - const AssetImage("assets/images/png/Ellipse 52.png"), + backgroundImage: const AssetImage( + "assets/images/png/Ellipse 52.png"), ), sizedBoxWidth(8.w), text14w400_FCFCFC("Ryan dorwat"), ], ) ]), - border: 1), + ), ) ], ), @@ -551,11 +549,11 @@ class _CalenderTabState extends State { sizedBoxHeight(25.h), Stack(children: [ - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 530.h, - borderradius: 1, - border: 0, + borderRadius: BorderRadius.circular(1), + // border: 0, customWidget: SfCalendar( view: CalendarView.month, appointmentTextStyle: const TextStyle(color: Colors.white), @@ -730,10 +728,11 @@ class _CalenderTabState extends State { children: [ text18w700_FCFCFC(title), sizedBoxHeight(25.h), - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 290.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), + borderwidth: 1, customWidget: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ @@ -810,7 +809,7 @@ class _CalenderTabState extends State { ), ], ), - border: 1) + ) ], ), ); diff --git a/lib/Feed Module/Main_Screens/CalenderTab/EventDetails.dart b/lib/Feed Module/Main_Screens/CalenderTab/EventDetails.dart index 070a2e3..48f893c 100644 --- a/lib/Feed Module/Main_Screens/CalenderTab/EventDetails.dart +++ b/lib/Feed Module/Main_Screens/CalenderTab/EventDetails.dart @@ -36,41 +36,44 @@ class _EventDetailsState extends State { onTap: () { Get.toNamed(RouteName.addEvent); }, - child: commonGlassContainer( - width: 40.w, - height: 40.h, - borderradius: 100, - opacity1: 0.24, - opacity2: 0.24, - customWidget: Center( - child: Image.asset("assets/images/png/Vector536.png", - height: 17.h, width: 17.w), - ), - border: 0.5), - ), - sizedBoxWidth(12.w), - commonGlassContainer( + child: commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), opacity1: 0.24, opacity2: 0.24, + borderwidth: 0.5, customWidget: Center( - child: Image.asset("assets/images/png/Vector522.png", + child: Image.asset("assets/images/png/Vector536.png", height: 17.h, width: 17.w), ), - border: 0.5), + ), + ), + sizedBoxWidth(12.w), + commonGlassUI( + width: 40.w, + height: 40.h, + borderRadius: BorderRadius.circular(100), + opacity1: 0.24, + opacity2: 0.24, + borderwidth: 0.5, + customWidget: Center( + child: Image.asset("assets/images/png/Vector522.png", + height: 17.h, width: 17.w), + ), + ), ], ), ), body: Stack(children: [ - Container( + Container( decoration: const BoxDecoration( image: DecorationImage( image: AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), - ), SingleChildScrollView( - child: Column( + ), + SingleChildScrollView( + child: Column( children: [ Padding( padding: const EdgeInsets.symmetric(horizontal: 16), @@ -97,20 +100,21 @@ class _EventDetailsState extends State { sizedBoxHeight(22.h), Row( children: [ - commonGlassContainer( - width: 35.w, - height: 35.h, - borderradius: 100, - opacity1: 0.24, - opacity2: 0.24, - customWidget: Center( - child: Image.asset( - "assets/images/png/calender.png", - height: 17.h, - width: 17.w, - ), + commonGlassUI( + width: 35.w, + height: 35.h, + borderRadius: BorderRadius.circular(100), + opacity1: 0.24, + opacity2: 0.24, + borderwidth: 0.5, + customWidget: Center( + child: Image.asset( + "assets/images/png/calender.png", + height: 17.h, + width: 17.w, ), - border: 0.5), + ), + ), sizedBoxWidth(10.w), text16400white("20th April 2024 - 21st April 2024"), ], @@ -118,10 +122,10 @@ class _EventDetailsState extends State { sizedBoxHeight(16.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), opacity1: 0.24, opacity2: 0.24, customWidget: Center( @@ -131,7 +135,7 @@ class _EventDetailsState extends State { width: 17.w, ), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(10.w), text16400white("3 hours"), ], @@ -139,10 +143,10 @@ class _EventDetailsState extends State { sizedBoxHeight(16.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), opacity1: 0.24, opacity2: 0.24, customWidget: Center( @@ -152,7 +156,7 @@ class _EventDetailsState extends State { width: 17.w, ), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(10.w), text16400white("Elm street london, United Kingdom"), ], @@ -171,26 +175,26 @@ class _EventDetailsState extends State { Row( mainAxisAlignment: MainAxisAlignment.spaceAround, children: [ - commonGlassContainer( + commonGlassUI( width: 87.w, height: 40.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular(30.r), customWidget: Center(child: text16w400_white("Yes")), - border: 1), - commonGlassContainer( + borderwidth: 1), + commonGlassUI( width: 87.w, height: 40.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular(30.r), customWidget: Center(child: text16w400_white("No")), - border: 1), - commonGlassContainer( + borderwidth: 1), + commonGlassUI( width: 154.w, height: 40.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular(30.r), customWidget: Center( child: text16w400_white("Not yet decided")), - border: 1), + borderwidth: 1), ], ), sizedBoxHeight(20.h), @@ -206,13 +210,13 @@ class _EventDetailsState extends State { sizedBoxHeight(16.h), text18w700white("Are you attending this event ?"), sizedBoxHeight(20.h), - commonGlassContainer( + commonGlassUI( width: 221.w, height: 40.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular(30.r), customWidget: Center(child: text16w400_white("Request to join")), - border: 1), + borderwidth: 1), sizedBoxHeight(20.h), commonDivider(), ], @@ -240,10 +244,10 @@ class _EventDetailsState extends State { sizedBoxHeight(20.h), Visibility( visible: adminView, - child: commonGlassContainer( + child: commonGlassUI( width: double.infinity, height: 251.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular(10.r), customWidget: Padding( padding: const EdgeInsets.symmetric(vertical: 20), child: Column( @@ -265,15 +269,15 @@ class _EventDetailsState extends State { ], ), ), - border: 1), + borderwidth: 1), ), sizedBoxHeight(30.h), Visibility( visible: memberView, - child: commonGlassContainer( + child: commonGlassUI( width: double.infinity, height: 65.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular(10.r), customWidget: Row( crossAxisAlignment: CrossAxisAlignment.center, children: [ @@ -293,7 +297,7 @@ class _EventDetailsState extends State { text18w400white("90 Attending") ], ), - border: 1)), + borderwidth: 1)), text18w700white("Messages"), sizedBoxHeight(20.h), Row( @@ -306,20 +310,20 @@ class _EventDetailsState extends State { sizedBoxWidth(10.w), text16w400_white("Send message to invites"), const Spacer(), - commonGlassContainer( + commonGlassUI( width: 98.w, height: 30.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), customWidget: Center(child: text14400white("Select")), - border: 1) + borderwidth: 1) ], ), sizedBoxHeight(25.h), - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 240.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 80.w), child: Column( @@ -353,7 +357,7 @@ class _EventDetailsState extends State { ) ]), ), - border: 1), + borderwidth: 1), sizedBoxHeight(50.h), CommonBtn(text: "Join the event"), sizedBoxHeight(40.h), diff --git a/lib/Feed Module/Main_Screens/CalenderTab/ManageMenmbers/ManageMembersCal.dart b/lib/Feed Module/Main_Screens/CalenderTab/ManageMenmbers/ManageMembersCal.dart index 4572b80..6ebb7f4 100644 --- a/lib/Feed Module/Main_Screens/CalenderTab/ManageMenmbers/ManageMembersCal.dart +++ b/lib/Feed Module/Main_Screens/CalenderTab/ManageMenmbers/ManageMembersCal.dart @@ -189,12 +189,12 @@ class _ManageMembersCalState extends State { child: Center(child: text10400white("Attending")), ), sizedBoxWidth(8.w), - commonGlassContainer( + commonGlassUI( width: 25.w, height: 25.h, opacity1: 0.24, opacity2: 0.24, - borderradius: 100.r, + borderRadius: BorderRadius.circular(100.r), customWidget: Center( child: Image.asset( "assets/images/png/alarm 1 (traced).png", @@ -202,14 +202,14 @@ class _ManageMembersCalState extends State { width: 13.w, ), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(8.w), - commonGlassContainer( + commonGlassUI( width: 25.w, height: 25.h, opacity1: 0.24, opacity2: 0.24, - borderradius: 100.r, + borderRadius: BorderRadius.circular( 100.r), customWidget: Center( child: Image.asset( "assets/images/png/fluent_delete-28-regular.png", @@ -217,7 +217,7 @@ class _ManageMembersCalState extends State { width: 13.w, ), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(12.w) ], ), @@ -244,32 +244,32 @@ class _ManageMembersCalState extends State { sizedBoxHeight(16.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("M")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Tu")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("W")), - border: 0.5), + borderwidth: 0.5), const Spacer(), Row( children: [ @@ -289,32 +289,32 @@ class _ManageMembersCalState extends State { sizedBoxHeight(20.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Th")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("F")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Sa")), - border: 0.5), + borderwidth: 0.5), const Spacer(), Row( children: [ @@ -374,4 +374,6 @@ class _ManageMembersCalState extends State { ), )); } + + } diff --git a/lib/Feed Module/Main_Screens/CalenderTab/Resource Pool/ResourcePool.dart b/lib/Feed Module/Main_Screens/CalenderTab/Resource Pool/ResourcePool.dart index 68a0fa5..9838fb4 100644 --- a/lib/Feed Module/Main_Screens/CalenderTab/Resource Pool/ResourcePool.dart +++ b/lib/Feed Module/Main_Screens/CalenderTab/Resource Pool/ResourcePool.dart @@ -89,10 +89,10 @@ class _ResourcePoolState extends State { } Widget resourceCard() { - return commonGlassContainer( + return commonGlassUI( width: double.infinity, height: 216.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 16), child: @@ -177,7 +177,7 @@ class _ResourcePoolState extends State { ), ]), ), - border: 1); + borderwidth: 1); } void inviteBottomSheet() { @@ -258,9 +258,9 @@ class _ResourcePoolState extends State { sizedBoxWidth(10.w), text16w400_FCFCFC(title), const Spacer(), - commonGlassContainer( - border: 1, - borderradius: 2, + commonGlassUI( + borderwidth: 1, + borderRadius: BorderRadius.circular( 2), height: 23.h, width: 23.w, opacity1: 0.24, diff --git a/lib/Feed Module/Main_Screens/CalenderTab/SetAvailabillity.dart b/lib/Feed Module/Main_Screens/CalenderTab/SetAvailabillity.dart index 1dd6be0..f05a41a 100644 --- a/lib/Feed Module/Main_Screens/CalenderTab/SetAvailabillity.dart +++ b/lib/Feed Module/Main_Screens/CalenderTab/SetAvailabillity.dart @@ -138,10 +138,10 @@ class _SetAvailabillityState extends State { children: [ text16400white("Start time"), sizedBoxHeight(14.h), - commonGlassContainer( + commonGlassUI( width: 174.w, height: 50.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular(30.r), customWidget: Center( child: Row(children: [ sizedBoxWidth(16.w), @@ -154,7 +154,7 @@ class _SetAvailabillityState extends State { text16w400_white("3:00 pm") ]), ), - border: 1) + borderwidth: 1) ], ), const Spacer(), @@ -163,10 +163,10 @@ class _SetAvailabillityState extends State { children: [ text16400white("End time"), sizedBoxHeight(14.h), - commonGlassContainer( + commonGlassUI( width: 174.w, height: 50.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), customWidget: Center( child: Row(children: [ sizedBoxWidth(16.w), @@ -179,7 +179,7 @@ class _SetAvailabillityState extends State { text16w400_white("5:00 pm") ]), ), - border: 1) + borderwidth: 1) ], ), ], diff --git a/lib/Feed Module/Main_Screens/Chats/View/groupchat.dart b/lib/Feed Module/Main_Screens/Chats/View/groupchat.dart index 8cad5e0..0e3ecff 100644 --- a/lib/Feed Module/Main_Screens/Chats/View/groupchat.dart +++ b/lib/Feed Module/Main_Screens/Chats/View/groupchat.dart @@ -264,13 +264,13 @@ class _GroupChatPageState extends State { child: Row( children: [ sizedBoxWidth(10.w), - commonGlassContainer( - border: 0.9, + commonGlassUI( + borderwidth: 0.9, width: 40.w, height: 40.h, opacity1: 0.24, opacity2: 0.24, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( 'assets/images/png/appbararrowbutton.png') diff --git a/lib/Feed Module/Main_Screens/Chats/View/userchat.dart b/lib/Feed Module/Main_Screens/Chats/View/userchat.dart index a6e8f10..918ccd2 100644 --- a/lib/Feed Module/Main_Screens/Chats/View/userchat.dart +++ b/lib/Feed Module/Main_Screens/Chats/View/userchat.dart @@ -266,13 +266,13 @@ class _UserChatPageState extends State { child: Row( children: [ sizedBoxWidth(10.w), - commonGlassContainer( - border: 0.9, + commonGlassUI( + borderwidth: 0.9, width: 40.w, height: 40.h, opacity1: 0.24, opacity2: 0.24, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( 'assets/images/png/appbararrowbutton.png') diff --git a/lib/Feed Module/Main_Screens/Community/Community.dart b/lib/Feed Module/Main_Screens/Community/Community.dart index 784968b..2cdb5a3 100644 --- a/lib/Feed Module/Main_Screens/Community/Community.dart +++ b/lib/Feed Module/Main_Screens/Community/Community.dart @@ -86,7 +86,10 @@ class _CommunityScreenState extends State { sizedBoxWidth(16.w), ], ), - body: Stack(clipBehavior: Clip.none, children: [ + body: + + + Stack(clipBehavior: Clip.none, children: [ Container( decoration: const BoxDecoration( image: DecorationImage( @@ -636,11 +639,11 @@ Widget normalcardtile({ } } - return commonGlassContainer( + return commonGlassUI( width: double.infinity, height: 570.h, - border: 0, - borderradius: 1, + borderwidth: 0, + borderRadius: BorderRadius.circular( 1), customWidget: Column( children: [ sizedBoxHeight(25.h), @@ -827,13 +830,13 @@ Widget normalcardtile({ ]), ), const Spacer(), - commonGlassContainer( - border: 0.43, + commonGlassUI( + borderwidth: 0.43, width: 30.w, height: 30.h, opacity1: 0.05, opacity2: 0.06, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( 'assets/images/png/Frame 1000004088.png', @@ -845,11 +848,11 @@ Widget normalcardtile({ sizedBoxWidth(12.w), text14w400_FCFCFC('20'), sizedBoxWidth(20.w), - commonGlassContainer( - border: 0.43, + commonGlassUI( + borderwidth: 0.43, width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.05, opacity2: 0.06, customWidget: Center( @@ -1349,11 +1352,11 @@ Widget _buildReactionsIcon(String assetPath) { } Widget containertile({required String text}) { - return commonGlassContainer( - border: 1, + return commonGlassUI( + borderwidth: 1, width: 130.w, height: 30.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), borderColor: const Color(0xFFD90B2E), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 10.w), diff --git a/lib/Feed Module/Main_Screens/Community/CycleScreen.dart b/lib/Feed Module/Main_Screens/Community/CycleScreen.dart index 799e14e..3fb34cd 100644 --- a/lib/Feed Module/Main_Screens/Community/CycleScreen.dart +++ b/lib/Feed Module/Main_Screens/Community/CycleScreen.dart @@ -137,11 +137,11 @@ Widget normalcardtile({ } } - return commonGlassContainer( + return commonGlassUI( width: double.infinity, height: 570.h, - border: 0, - borderradius: 1, + borderwidth: 0, + borderRadius: BorderRadius.circular( 1), customWidget: Column( children: [ sizedBoxHeight(25.h), @@ -327,13 +327,13 @@ Widget normalcardtile({ ]), ), const Spacer(), - commonGlassContainer( - border: 0.43, + commonGlassUI( + borderwidth: 0.43, width: 30.w, height: 30.h, opacity1: 0.05, opacity2: 0.06, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( 'assets/images/png/Frame 1000004088.png', @@ -345,11 +345,11 @@ Widget normalcardtile({ sizedBoxWidth(12.w), text14w400_FCFCFC('20'), sizedBoxWidth(20.w), - commonGlassContainer( - border: 0.43, + commonGlassUI( + borderwidth: 0.43, width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.05, opacity2: 0.06, customWidget: Center( diff --git a/lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart b/lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart index d028ed2..f601660 100644 --- a/lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart +++ b/lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart @@ -125,11 +125,11 @@ class _PostDetailsScreenState extends State { } } - return commonGlassContainer( + return commonGlassUI( width: double.infinity, height: 570.h, - border: 0, - borderradius: 0, + borderwidth: 0, + borderRadius: BorderRadius.circular(0), customWidget: Column( children: [ sizedBoxHeight(25.h), @@ -151,14 +151,14 @@ class _PostDetailsScreenState extends State { children: [ text16w400_FCFCFC(title), const Spacer(), - commonGlassContainer( + commonGlassUI( width: 72.w, height: 26.h, - borderradius: 5.r, + borderRadius: BorderRadius.circular(5.r), borderColor: const Color(0xFFD90B2E), customWidget: Center(child: text14400white("Follow")), - border: 1), + borderwidth: 1), sizedBoxWidth(6.w), PopupMenuButton( surfaceTintColor: const Color(0xFF222935), @@ -329,11 +329,11 @@ class _PostDetailsScreenState extends State { 'assets/images/png/party-popper 2.png' ]), const Spacer(), - commonGlassContainer( - border: 0.9, + commonGlassUI( + borderwidth: 0.9, width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), customWidget: Center( child: Image.asset( 'assets/images/png/Frame 1000004088.png', @@ -345,11 +345,11 @@ class _PostDetailsScreenState extends State { sizedBoxWidth(12.w), text14w400_FCFCFC('20'), sizedBoxWidth(20.w), - commonGlassContainer( - border: 0.9, + commonGlassUI( + borderwidth: 0.9, width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( 'assets/images/png/Vector (1).png', @@ -452,11 +452,11 @@ class _PostDetailsScreenState extends State { } Widget containertile({required String text}) { - return commonGlassContainer( - border: 0.9, + return commonGlassUI( + borderwidth: 0.9, width: 100.w, height: 30.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), borderColor: const Color(0xFFD90B2E), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 10.w), diff --git a/lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/ReactionView.dart b/lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/ReactionView.dart index 8519d05..a0e03ac 100644 --- a/lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/ReactionView.dart +++ b/lib/Feed Module/Main_Screens/Community/PostDetailScreen/View/ReactionView.dart @@ -93,13 +93,13 @@ class _ReactionViewState extends State { ), Tab( child: Row(children: [ - commonGlassContainer( + commonGlassUI( borderColor: const Color(0xFF1E3A46), opacity1: 0.05, opacity2: 0.06, width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/f7_hand-thumbsup.png", @@ -107,20 +107,20 @@ class _ReactionViewState extends State { width: 17.w, ), ), - border: 1.71), + borderwidth: 1.71), const Spacer(), text14400white("110K"), ]), ), Tab( child: Row(children: [ - commonGlassContainer( + commonGlassUI( borderColor: const Color(0xFF1E3A46), opacity1: 0.05, opacity2: 0.06, width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/heart 2.png", @@ -128,20 +128,20 @@ class _ReactionViewState extends State { width: 17.w, ), ), - border: 1.71), + borderwidth: 1.71), const Spacer(), text14400white("9.7K"), ]), ), Tab( child: Row(children: [ - commonGlassContainer( + commonGlassUI( borderColor: const Color(0xFF1E3A46), opacity1: 0.05, opacity2: 0.06, width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/party-popper 2.png", @@ -149,7 +149,7 @@ class _ReactionViewState extends State { width: 17.w, ), ), - border: 1.71), + borderwidth: 1.71), const Spacer(), text14400white("7.4K"), ]), diff --git a/lib/Feed Module/Main_Screens/ExploreDesign/DetailExplore.dart b/lib/Feed Module/Main_Screens/ExploreDesign/DetailExplore.dart index 110c852..65c12a9 100644 --- a/lib/Feed Module/Main_Screens/ExploreDesign/DetailExplore.dart +++ b/lib/Feed Module/Main_Screens/ExploreDesign/DetailExplore.dart @@ -41,16 +41,16 @@ class _DetailExploreState extends State { onTap: () { Get.back(); }, - child: commonGlassContainer( + child: commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: const Center( child: Icon( Icons.arrow_back, color: Colors.white, )), - border: 1, + borderwidth: 1, borderColor: const Color(0xFF55434F)), ), sizedBoxWidth(12.w), diff --git a/lib/Feed Module/Main_Screens/ExploreDesign/ExploreScreen.dart b/lib/Feed Module/Main_Screens/ExploreDesign/ExploreScreen.dart index 20b4b60..46ce3d8 100644 --- a/lib/Feed Module/Main_Screens/ExploreDesign/ExploreScreen.dart +++ b/lib/Feed Module/Main_Screens/ExploreDesign/ExploreScreen.dart @@ -191,10 +191,10 @@ class _ExploreScreenState extends State { sizedBoxHeight(25.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/community 1 (traced).png", @@ -202,21 +202,21 @@ class _ExploreScreenState extends State { width: 18.w, ), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(10.w), text16400white("10 subgroups "), const Spacer(), - commonGlassContainer( + commonGlassUI( width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/ph_users-light.png", height: 18.h, width: 18.w, )), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(10.w), text16400white("7 members"), ], @@ -224,14 +224,14 @@ class _ExploreScreenState extends State { sizedBoxHeight(30.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 170.w, height: 35.h, opacity1: 0.05, opacity2: 0.07, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), customWidget: Center(child: text14w400_FCFCFC("Message")), - border: 1), + borderwidth: 1), const Spacer(), Container( width: 170.w, diff --git a/lib/Feed Module/Main_Screens/ExploreDesign/SearchGroup.dart b/lib/Feed Module/Main_Screens/ExploreDesign/SearchGroup.dart index 255ab64..1649038 100644 --- a/lib/Feed Module/Main_Screens/ExploreDesign/SearchGroup.dart +++ b/lib/Feed Module/Main_Screens/ExploreDesign/SearchGroup.dart @@ -125,10 +125,10 @@ class _SearchGroupState extends State { Widget rowTile({required String imagePath, required String title}) { return Row( children: [ - commonGlassContainer( + commonGlassUI( width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( imagePath, @@ -136,7 +136,7 @@ class _SearchGroupState extends State { width: 16.w, ), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(12.w), text16400white(title), const Spacer(), diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/ConnectCommunity.dart b/lib/Feed Module/Main_Screens/GroupTab/View/ConnectCommunity.dart index 14d0c1f..4554fd1 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/ConnectCommunity.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/ConnectCommunity.dart @@ -78,11 +78,11 @@ class _ConnectCommunityState extends State { padding: EdgeInsets.only(bottom: 25.h), child: GestureDetector( onTap: ontap, - child: commonGlassContainer( - border: 0.9, + child: commonGlassUI( + borderwidth: 0.9, width: double.infinity, height: 162.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 16.h), child: Column( diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/GroupDetail.dart b/lib/Feed Module/Main_Screens/GroupTab/View/GroupDetail.dart index ca7f802..08d0779 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/GroupDetail.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/GroupDetail.dart @@ -111,12 +111,12 @@ class _GroupDetailState extends State { ), ), ], - child: commonGlassContainer( + child: commonGlassUI( opacity1: 0.24, opacity2: 0.24, width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/Vector536.png", @@ -124,7 +124,7 @@ class _GroupDetailState extends State { width: 17.w, ), ), - border: 0.5), + borderwidth: 0.5), ), sizedBoxWidth(16.w), PopupMenuButton( @@ -370,10 +370,10 @@ class _GroupDetailState extends State { ], ), sizedBoxHeight(25.h), - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 135.h, - borderradius: 10, + borderRadius: BorderRadius.circular( 10), customWidget: Padding( padding: EdgeInsets.symmetric( vertical: 12.h, horizontal: 16.w), @@ -420,12 +420,12 @@ class _GroupDetailState extends State { ], ), ), - border: 1), + borderwidth: 1), sizedBoxHeight(20.h), - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 51.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: EdgeInsets.only(right: 16.w), child: Center( @@ -447,7 +447,7 @@ class _GroupDetailState extends State { ]), ), ), - border: 1), + borderwidth: 1), sizedBoxHeight(20.h), Row( children: [ @@ -484,10 +484,10 @@ class _GroupDetailState extends State { ), ), sizedBoxHeight(25.h), - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 51.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 12.w), child: Row(children: [ @@ -523,7 +523,7 @@ class _GroupDetailState extends State { ) ]), ), - border: 1), + borderwidth: 1), sizedBoxHeight(25.h), ], ), diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/GroupEvent.dart b/lib/Feed Module/Main_Screens/GroupTab/View/GroupEvent.dart index 5b7553e..21ce10b 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/GroupEvent.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/GroupEvent.dart @@ -109,11 +109,11 @@ class _GroupEventState extends State { borderType: BorderType.RRect, radius: Radius.circular(14.r), color: const Color(0xFF434A53), - child: commonGlassContainer( - border: 0, + child: commonGlassUI( + borderwidth: 0, width: double.infinity, height: 130.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: bannerPath.isNotEmpty && isbannerAdded ? Stack(children: [ Image.file( @@ -166,10 +166,10 @@ class _GroupEventState extends State { ), ), sizedBoxHeight(20.h), - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 60.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Center( child: Padding( padding: EdgeInsets.symmetric(horizontal: 12.w), @@ -203,7 +203,7 @@ class _GroupEventState extends State { ]), ), ), - border: 1), + borderwidth: 1), sizedBoxHeight(20.h), text16400white("Type of event"), sizedBoxHeight(14.h), @@ -319,10 +319,10 @@ class _GroupEventState extends State { }); } }, - child: commonGlassContainer( + child: commonGlassUI( width: 174.w, height: 50.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), customWidget: Center( child: Row(children: [ sizedBoxWidth(16.w), @@ -336,7 +336,7 @@ class _GroupEventState extends State { formatTimeOfDay(starttime!)), ]), ), - border: 1), + borderwidth: 1), ) ], ), @@ -357,10 +357,10 @@ class _GroupEventState extends State { }); } }, - child: commonGlassContainer( + child: commonGlassUI( width: 174.w, height: 50.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), customWidget: Center( child: Row(children: [ sizedBoxWidth(16.w), @@ -374,7 +374,7 @@ class _GroupEventState extends State { formatTimeOfDay(endtime!)), ]), ), - border: 1), + borderwidth: 1), ) ], ), @@ -384,9 +384,9 @@ class _GroupEventState extends State { Row( children: [ Obx(() { - return commonGlassContainer( - border: 1, - borderradius: 2, + return commonGlassUI( + borderwidth: 1, + borderRadius: BorderRadius.circular( 2), height: 23.h, width: 23.w, opacity1: 0.24, @@ -487,19 +487,19 @@ class _GroupEventState extends State { Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - commonGlassContainer( + commonGlassUI( height: 50.h, width: 127.w, - borderradius: 30.r, - border: 1, + borderRadius: BorderRadius.circular( 30.r), + borderwidth: 1, customWidget: Center( child: text16400white("2"), )), - commonGlassContainer( + commonGlassUI( height: 50.h, width: 215.w, - borderradius: 30.r, - border: 1, + borderRadius: BorderRadius.circular( 30.r), + borderwidth: 1, customWidget: Center( child: Row( mainAxisAlignment: MainAxisAlignment.center, @@ -528,10 +528,10 @@ class _GroupEventState extends State { required String imagePath, required String title, }) { - return commonGlassContainer( + return commonGlassUI( width: double.infinity, height: 50.h, - borderradius: 30, + borderRadius: BorderRadius.circular( 30), customWidget: Padding( padding: const EdgeInsets.symmetric(horizontal: 16), child: Center( @@ -553,6 +553,6 @@ class _GroupEventState extends State { ), ), ), - border: 1); + borderwidth: 1); } } diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/GroupInfo.dart b/lib/Feed Module/Main_Screens/GroupTab/View/GroupInfo.dart index 2da225c..15b57ee 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/GroupInfo.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/GroupInfo.dart @@ -94,12 +94,12 @@ class _GroupInfoState extends State { sizedBoxHeight(30.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, opacity1: 0.24, opacity2: 0.24, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/Group 58645.png", @@ -107,7 +107,7 @@ class _GroupInfoState extends State { width: 13.w, ), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(12.w), text16400white("Elm street london, United Kingdom") ], @@ -115,12 +115,12 @@ class _GroupInfoState extends State { sizedBoxHeight(30.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, opacity1: 0.24, opacity2: 0.24, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/Vector2a.png", @@ -128,7 +128,7 @@ class _GroupInfoState extends State { width: 20.w, ), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(12.w), text16400white("www.exampledummywebsite.com") ], diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/GroupManage.dart b/lib/Feed Module/Main_Screens/GroupTab/View/GroupManage.dart index cc5680f..47f895e 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/GroupManage.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/GroupManage.dart @@ -142,10 +142,10 @@ class _GroupManageState extends State { hintText: "Start date - End date", )), const Spacer(), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center( @@ -155,7 +155,7 @@ class _GroupManageState extends State { width: 23.w, ), ), - border: 0.5) + borderwidth: 0.5) ], ), ], @@ -235,32 +235,32 @@ class _GroupManageState extends State { sizedBoxHeight(16.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("M")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Tu")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("W")), - border: 0.5), + borderwidth: 0.5), const Spacer(), Row( children: [ @@ -280,32 +280,32 @@ class _GroupManageState extends State { sizedBoxHeight(20.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Th")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("F")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Sa")), - border: 0.5), + borderwidth: 0.5), const Spacer(), Row( children: [ @@ -414,10 +414,10 @@ class _GroupManageState extends State { hintText: "Start date - End date", )), const Spacer(), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center( @@ -427,7 +427,7 @@ class _GroupManageState extends State { width: 23.w, ), ), - border: 0.5) + borderwidth: 0.5) ], ), ], @@ -538,10 +538,10 @@ class _GroupManageState extends State { hintText: "Start date - End date", )), const Spacer(), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center( @@ -551,7 +551,7 @@ class _GroupManageState extends State { width: 23.w, ), ), - border: 0.5) + borderwidth: 0.5) ], ), ], diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/GroupTab.dart b/lib/Feed Module/Main_Screens/GroupTab/View/GroupTab.dart index 48c419d..0276e15 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/GroupTab.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/GroupTab.dart @@ -232,8 +232,8 @@ class _GroupTabState extends State { EdgeInsets.symmetric(horizontal: 8.w), child: Row( children: [ - text14w400_FCFCFC("Mute group"), - const Spacer(), + text14w400_FCFCFC("Mute community"), + Spacer(), Image.asset( "assets/images/png/Black (1).png", height: 18.h, @@ -243,7 +243,7 @@ class _GroupTabState extends State { ), ), ), - const PopupMenuDivider(), + PopupMenuDivider(), PopupMenuItem( onTap: () {}, child: Padding( @@ -251,29 +251,10 @@ class _GroupTabState extends State { EdgeInsets.symmetric(horizontal: 8.w), child: Row( children: [ - text14w400_FCFCFC("Pin group"), - const Spacer(), + text14w400_FCFCFC("Hide post"), + Spacer(), Image.asset( - "assets/images/png/f7_pin-fill (2).png", - height: 27.h, - width: 27.w, - ) - ], - ), - ), - ), - const PopupMenuDivider(), - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: - EdgeInsets.symmetric(horizontal: 8.w), - child: Row( - children: [ - text14w400_FCFCFC("Make primary"), - const Spacer(), - Image.asset( - "assets/images/png/leave group.png", + "assets/images/png/mingcute_eye-close-line.png", height: 20.h, width: 20.w, ) @@ -281,7 +262,7 @@ class _GroupTabState extends State { ), ), ), - const PopupMenuDivider(), + PopupMenuDivider(), PopupMenuItem( onTap: () {}, child: Padding( @@ -289,11 +270,29 @@ class _GroupTabState extends State { EdgeInsets.symmetric(horizontal: 8.w), child: Row( children: [ - // text14w400_FCFCFC("Leave group"), - text14w400_D90B2E("Leave group"), - const Spacer(), + text14w400_FCFCFC("Pin"), + Spacer(), Image.asset( - "assets/images/png/LightGray22.png", + "assets/images/png/f7_pin-fill (2).png", + height: 25.h, + width: 25.w, + ) + ], + ), + ), + ), + PopupMenuDivider(), + PopupMenuItem( + onTap: () {}, + child: Padding( + padding: + EdgeInsets.symmetric(horizontal: 8.w), + child: Row( + children: [ + text14w400_FCFCFC("Leave community"), + Spacer(), + Image.asset( + "assets/images/png/logout 1 (traced).png", height: 18.h, width: 18.w, ) diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/NewPost.dart b/lib/Feed Module/Main_Screens/GroupTab/View/NewPost.dart index 7868e11..582fbe5 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/NewPost.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/NewPost.dart @@ -84,11 +84,11 @@ class _NewPostState extends State { borderType: BorderType.RRect, radius: Radius.circular(14.r), color: const Color(0xFF434A53), - child: commonGlassContainer( - border: 0, + child: commonGlassUI( + borderwidth: 0, width: double.infinity, height: 130.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: bannerPath.isNotEmpty && isbannerAdded ? Stack(children: [ Image.file( diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/RequestedGroups.dart b/lib/Feed Module/Main_Screens/GroupTab/View/RequestedGroups.dart index 07ba70a..7fc0186 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/RequestedGroups.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/RequestedGroups.dart @@ -144,8 +144,8 @@ class _RequestedGroupsState extends State { EdgeInsets.symmetric(horizontal: 8.w), child: Row( children: [ - text14w400_FCFCFC("Mute group"), - const Spacer(), + text14w400_FCFCFC("Mute community"), + Spacer(), Image.asset( "assets/images/png/Black (1).png", height: 18.h, @@ -155,7 +155,7 @@ class _RequestedGroupsState extends State { ), ), ), - const PopupMenuDivider(), + PopupMenuDivider(), PopupMenuItem( onTap: () {}, child: Padding( @@ -163,29 +163,10 @@ class _RequestedGroupsState extends State { EdgeInsets.symmetric(horizontal: 8.w), child: Row( children: [ - text14w400_FCFCFC("Pin group"), - const Spacer(), + text14w400_FCFCFC("Hide post"), + Spacer(), Image.asset( - "assets/images/png/f7_pin-fill (2).png", - height: 27.h, - width: 27.w, - ) - ], - ), - ), - ), - const PopupMenuDivider(), - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: - EdgeInsets.symmetric(horizontal: 8.w), - child: Row( - children: [ - text14w400_FCFCFC("Make primary"), - const Spacer(), - Image.asset( - "assets/images/png/leave group.png", + "assets/images/png/mingcute_eye-close-line.png", height: 20.h, width: 20.w, ) @@ -193,7 +174,7 @@ class _RequestedGroupsState extends State { ), ), ), - const PopupMenuDivider(), + PopupMenuDivider(), PopupMenuItem( onTap: () {}, child: Padding( @@ -201,11 +182,29 @@ class _RequestedGroupsState extends State { EdgeInsets.symmetric(horizontal: 8.w), child: Row( children: [ - // text14w400_FCFCFC("Leave group"), - text14w400_D90B2E("Leave group"), - const Spacer(), + text14w400_FCFCFC("Pin"), + Spacer(), Image.asset( - "assets/images/png/LightGray22.png", + "assets/images/png/f7_pin-fill (2).png", + height: 25.h, + width: 25.w, + ) + ], + ), + ), + ), + PopupMenuDivider(), + PopupMenuItem( + onTap: () {}, + child: Padding( + padding: + EdgeInsets.symmetric(horizontal: 8.w), + child: Row( + children: [ + text14w400_FCFCFC("Leave community"), + Spacer(), + Image.asset( + "assets/images/png/logout 1 (traced).png", height: 18.h, width: 18.w, ) diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/Sessions.dart b/lib/Feed Module/Main_Screens/GroupTab/View/Sessions.dart index 93640e3..9f06afd 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/Sessions.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/Sessions.dart @@ -245,9 +245,9 @@ class _SessionsState extends State { Row( children: [ Obx(() { - return commonGlassContainer( - border: 1, - borderradius: 2, + return commonGlassUI( + borderwidth: 1, + borderRadius: BorderRadius.circular( 2), height: 23.h, width: 23.w, opacity1: 0.24, @@ -334,19 +334,19 @@ class _SessionsState extends State { Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - commonGlassContainer( + commonGlassUI( height: 50.h, width: 127.w, - borderradius: 30.r, - border: 1, + borderRadius: BorderRadius.circular( 30.r), + borderwidth: 1, customWidget: Center( child: text16400white("2"), )), - commonGlassContainer( + commonGlassUI( height: 50.h, width: 215.w, - borderradius: 30.r, - border: 1, + borderRadius: BorderRadius.circular( 30.r), + borderwidth: 1, customWidget: Center( child: Row( mainAxisAlignment: @@ -385,11 +385,11 @@ class _SessionsState extends State { borderType: BorderType.RRect, radius: Radius.circular(14.r), color: const Color(0xFF434A53), - child: commonGlassContainer( - border: 0, + child: commonGlassUI( + borderwidth: 0, width: double.infinity, height: 130.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: bannerPath.isNotEmpty && isbannerAdded ? Stack(children: [ diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/EditSubgroupInfo.dart b/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/EditSubgroupInfo.dart index 9c87a1e..5adbe64 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/EditSubgroupInfo.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/EditSubgroupInfo.dart @@ -123,11 +123,11 @@ class _EditSubgroupInfoState extends State { }, ); }, - child: commonGlassContainer( - border: 0.9, + child: commonGlassUI( + borderwidth: 0.9, width: double.infinity, height: 150.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular(10.r), customWidget: bannerPath.isNotEmpty && isbannerAdded ? Stack(children: [ Image.file( diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart b/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart index 1d7e562..5257a44 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/SubGroupInfo.dart @@ -77,12 +77,12 @@ class _SubGroupInfoState extends State { ), ), ], - child: commonGlassContainer( + child: commonGlassUI( opacity1: 0.24, opacity2: 0.24, width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/Vector536.png", @@ -90,19 +90,19 @@ class _SubGroupInfoState extends State { width: 17.w, ), ), - border: 0.5), + borderwidth: 0.5), ), sizedBoxWidth(16.w), GestureDetector( onTap: () { Get.toNamed(RouteName.editsubgroupinfo); }, - child: commonGlassContainer( + child: commonGlassUI( opacity1: 0.24, opacity2: 0.24, width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/codicon_account.png", @@ -110,7 +110,7 @@ class _SubGroupInfoState extends State { width: 20.w, ), ), - border: 0.5), + borderwidth: 0.5), ), sizedBoxWidth(16.w), PopupMenuButton( @@ -300,31 +300,31 @@ class _SubGroupInfoState extends State { sizedBoxHeight(16.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center( child: Image.asset("assets/images/png/Black.png", height: 20.h, width: 20.w), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(7.w), text16w400_FCFCFCblur("The athlectic town"), sizedBoxWidth(20.w), - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, opacity1: 0.24, opacity2: 0.24, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset("assets/images/png/img12.png", height: 20.h, width: 20.w), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(7.w), text16w400_FCFCFCblur("Public"), ], @@ -401,11 +401,11 @@ class _SubGroupInfoState extends State { } } - return commonGlassContainer( + return commonGlassUI( width: double.infinity, height: 570.h, - border: 0, - borderradius: 1, + borderwidth: 0, + borderRadius: BorderRadius.circular( 1), customWidget: Column( children: [ sizedBoxHeight(25.h), @@ -591,13 +591,13 @@ class _SubGroupInfoState extends State { ]), ), const Spacer(), - commonGlassContainer( - border: 0.43, + commonGlassUI( + borderwidth: 0.43, width: 30.w, height: 30.h, opacity1: 0.05, opacity2: 0.06, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( 'assets/images/png/Frame 1000004088.png', @@ -609,11 +609,11 @@ class _SubGroupInfoState extends State { sizedBoxWidth(12.w), text14w400_FCFCFC('20'), sizedBoxWidth(20.w), - commonGlassContainer( - border: 0.43, + commonGlassUI( + borderwidth: 0.43, width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.05, opacity2: 0.06, customWidget: Center( @@ -751,11 +751,11 @@ class _SubGroupInfoState extends State { } Widget containertile({required String text}) { - return commonGlassContainer( - border: 1, + return commonGlassUI( + borderwidth: 1, width: 100.w, height: 30.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), borderColor: const Color(0xFFD90B2E), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 10.w), diff --git a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart b/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart index 6b1b40d..c199809 100644 --- a/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart +++ b/lib/Feed Module/Main_Screens/GroupTab/View/SubGroup/Subgroups.dart @@ -109,11 +109,11 @@ class _SubGroupsState extends State { padding: EdgeInsets.only(bottom: 25.h), child: GestureDetector( onTap: ontap, - child: commonGlassContainer( - border: 0.9, + child: commonGlassUI( + borderwidth: 0.9, width: double.infinity, height: 162.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 16.h), child: Column( diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Clubs/Clubs.dart b/lib/Feed Module/Main_Screens/ProfileTab/Clubs/Clubs.dart index b592b83..323be4c 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Clubs/Clubs.dart +++ b/lib/Feed Module/Main_Screens/ProfileTab/Clubs/Clubs.dart @@ -80,11 +80,11 @@ class _ClubsState extends State { padding: EdgeInsets.only(bottom: 25.h), child: GestureDetector( onTap: ontap, - child: commonGlassContainer( - border: 0.9, + child: commonGlassUI( + borderwidth: 0.9, width: double.infinity, height: 143.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 16.h), child: Column( diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/AccountSessions.dart b/lib/Feed Module/Main_Screens/ProfileTab/Settings/AccountSessions.dart index be6b13d..a794031 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/AccountSessions.dart +++ b/lib/Feed Module/Main_Screens/ProfileTab/Settings/AccountSessions.dart @@ -129,22 +129,22 @@ class _AccountSessionState extends State { Widget sessionCard({required String title, required String devicename, required String ipaddress}) { return Padding( padding: const EdgeInsets.symmetric(vertical: 15), - child: commonGlassContainer( + child: commonGlassUI( width: double.infinity, height: 90.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 12), child: Column( children: [ Row( children: [ - commonGlassContainer( + commonGlassUI( width: 25.w, height: 25.h, opacity1: 0.24, opacity2: 0.24, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/Group 58645.png", @@ -152,7 +152,7 @@ class _AccountSessionState extends State { width: 9.w, ), ), - border: 1), + borderwidth: 1), sizedBoxWidth(10.w), text16400white(title), ], @@ -174,7 +174,7 @@ class _AccountSessionState extends State { ], ), ), - border: 1), + borderwidth: 1), ); } } diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/FaqScreen.dart b/lib/Feed Module/Main_Screens/ProfileTab/Settings/FaqScreen.dart index ebb976d..f31f0bc 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/FaqScreen.dart +++ b/lib/Feed Module/Main_Screens/ProfileTab/Settings/FaqScreen.dart @@ -169,10 +169,10 @@ class _FaqScreenState extends State { child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ - commonGlassContainer( + commonGlassUI( width: double.infinity, height: isExpanded ? 250.h : 82.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: SingleChildScrollView( child: Padding( padding: @@ -207,7 +207,7 @@ class _FaqScreenState extends State { ), ), ), - border: 1), + borderwidth: 1), ], ), ); diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/Settings.dart b/lib/Feed Module/Main_Screens/ProfileTab/Settings/Settings.dart index 2cc16c7..d04c305 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/Settings.dart +++ b/lib/Feed Module/Main_Screens/ProfileTab/Settings/Settings.dart @@ -212,13 +212,13 @@ class _SettingsState extends State { dialogwidget() { Get.dialog(Dialog( backgroundColor: Colors.transparent, - child: commonGlassContainer( + child: commonGlassUI( width: double.infinity, height: 200.h, - borderradius: 14, + borderRadius: BorderRadius.circular( 14), opacity1: 0.09, opacity2: 0.13, - border: 0.8, + borderwidth: 0.8, customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 20.h), child: Column( @@ -239,15 +239,15 @@ class _SettingsState extends State { // Get.offAllNamed(RouteName.loginScreen); Uploadata(); }, - child: commonGlassContainer( + child: commonGlassUI( width: 130.w, height: 40.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), opacity1: 0.05, opacity2: 0.07, customWidget: Center(child: text14400white("Yes, I want to")), - border: 1), + borderwidth: 1), ), Container( height: 40.h, diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart b/lib/Feed Module/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart index edfb5b6..630a908 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart +++ b/lib/Feed Module/Main_Screens/ProfileTab/Settings/View/BlockedUsers.dart @@ -436,10 +436,10 @@ class _BlockedUsersState extends State { Get.dialog(Dialog( backgroundColor: Colors.transparent, surfaceTintColor: Colors.transparent, - child: commonGlassContainer( + child: commonGlassUI( width: double.infinity, height: 200.h, - borderradius: 14, + borderRadius: BorderRadius.circular(14), opacity1: 0.09, opacity2: 0.13, customWidget: Padding( @@ -458,14 +458,14 @@ class _BlockedUsersState extends State { onTap: () { Get.back(); }, - child: commonGlassContainer( + child: commonGlassUI( width: 110.w, height: 40.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), opacity1: 0.05, opacity2: 0.07, customWidget: Center(child: text14400white("No")), - border: 1), + borderwidth: 1), ), InkWell( onTap: () { @@ -490,7 +490,7 @@ class _BlockedUsersState extends State { ], ), ), - border: 0.8))); + borderwidth: 0.8))); } Widget blockedUser({ diff --git a/lib/Feed Module/Main_Screens/ProfileTab/Share profile/ShareProfile.dart b/lib/Feed Module/Main_Screens/ProfileTab/Share profile/ShareProfile.dart index ee9b84a..aefe03f 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/Share profile/ShareProfile.dart +++ b/lib/Feed Module/Main_Screens/ProfileTab/Share profile/ShareProfile.dart @@ -148,9 +148,9 @@ class _ShareProfileState extends State { ], ), Spacer(), - commonGlassContainer( - border: 1, - borderradius: 2, + commonGlassUI( + borderwidth: 1, + borderRadius: BorderRadius.circular( 2), height: 23.h, width: 23.w, opacity1: 0.24, diff --git a/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart b/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart index da21a2f..9508a1b 100644 --- a/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart +++ b/lib/Feed Module/Main_Screens/ProfileTab/TimeLine/AddTimeline.dart @@ -403,9 +403,9 @@ class _AddTimelineState extends State { Row( children: [ Obx(() { - return commonGlassContainer( - border: 1, - borderradius: 2, + return commonGlassUI( + borderwidth: 1, + borderRadius: BorderRadius.circular(2), height: 20.h, width: 20.w, opacity1: 0.24, @@ -677,9 +677,9 @@ class _AddTimelineState extends State { Row( children: [ Obx(() { - return commonGlassContainer( - border: 1, - borderradius: 2, + return commonGlassUI( + borderwidth: 1, + borderRadius: BorderRadius.circular( 2), height: 20.h, width: 20.w, opacity1: 0.24, diff --git a/lib/Feed Module/Notification/View/notification.dart b/lib/Feed Module/Notification/View/notification.dart index 619f56b..f1be26f 100644 --- a/lib/Feed Module/Notification/View/notification.dart +++ b/lib/Feed Module/Notification/View/notification.dart @@ -58,47 +58,14 @@ class _NotificationPageState extends State { body: Stack( children: [ // const CommonBlurLeftRed(), - const Positioned(top: 10, left: -30, child: CommonBlurLeftSecond()), - // const CommonBlurRightRed(), - // const CommonBlurLeft(), - const Positioned(top: 150, right: -30, child: CommonBlurRightSecond()), - const Positioned(top: 350, left: -30, child: CommonBlurLeftBlue()), - GlassmorphicContainer( - width: MediaQuery.of(context).size.width, - height: - // 500.h, - MediaQuery.of(context).size.height, - borderRadius: 2, - blur: 6, - alignment: Alignment.bottomLeft, - border: 2, - linearGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - ], - ), - borderGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - const Color(0XFF222935).withOpacity(0.60), - - const Color(0XFF222935).withOpacity(0.60), - ], - ), - child: Column( + + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), + ), + Column( children: [ ListView.separated( separatorBuilder: (context, index) { @@ -121,9 +88,9 @@ class _NotificationPageState extends State { }, ), ], - )), - ], - ), + )]), + + ); } } diff --git a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/EditCommunity/EditCommunity.dart b/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/EditCommunity/EditCommunity.dart index 0a14f8b..24b944b 100644 --- a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/EditCommunity/EditCommunity.dart +++ b/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/EditCommunity/EditCommunity.dart @@ -150,11 +150,11 @@ class _EditCommunityState extends State { borderType: BorderType.RRect, radius: Radius.circular(14.r), color: Color(0xFF434A53), - child: commonGlassContainer( - border: 0, + child: commonGlassUI( + borderwidth: 0, width: double.infinity, height: 150.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: bannerPath.isNotEmpty && isbannerAdded ? Stack(children: [ Image.file( @@ -210,10 +210,10 @@ class _EditCommunityState extends State { ), ), sizedBoxHeight(16.w), - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 60.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Center( child: Padding( padding: EdgeInsets.symmetric(horizontal: 12.w), @@ -247,7 +247,7 @@ class _EditCommunityState extends State { ]), ), ), - border: 1), + borderwidth: 1), sizedBoxHeight(25.h), text16w400_FCFCFC("Community name"), sizedBoxHeight(14.h), diff --git a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageGroup.dart b/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageGroup.dart index 6dbf089..cdc9002 100644 --- a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageGroup.dart +++ b/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageGroup.dart @@ -105,19 +105,19 @@ class _ManageGroupsState extends State { sizedBoxHeight(25.h), Row( children: [ - commonGlassContainer( + commonGlassUI( opacity1: 0.24, opacity2: 0.24, width: 50.w, height: 50.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/Black.png", height: 30.h, width: 30.w, )), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(8.w), text18w400_FCFCFC("Create group"), Spacer(), diff --git a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/ManageTags.dart b/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/ManageTags.dart index 0bacc8b..75bbbcd 100644 --- a/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/ManageTags.dart +++ b/lib/Feed Module/sidemenu/Community/Admin/PopupItem/Community settings/ManageTags.dart/ManageTags.dart @@ -167,22 +167,22 @@ Widget rowTagRequestTile({ }) { return Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), - child: commonGlassContainer( + child: commonGlassUI( width: double.infinity, height: 60.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Center( child: Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), child: Row(children: [ text16w700_FCFCFC(title), Spacer(), - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, opacity1: 0.24, opacity2: 0.24, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Icon( Icons.clear, @@ -190,7 +190,7 @@ Widget rowTagRequestTile({ color: Colors.white, weight: 1, )), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(16.w), Container( height: 35.h, @@ -209,7 +209,7 @@ Widget rowTagRequestTile({ ]), ), ), - border: 1), + borderwidth: 1), ); } diff --git a/lib/Feed Module/sidemenu/Community/Announcements/AnnouncementRequest.dart b/lib/Feed Module/sidemenu/Community/Announcements/AnnouncementRequest.dart index 6299508..20b3103 100644 --- a/lib/Feed Module/sidemenu/Community/Announcements/AnnouncementRequest.dart +++ b/lib/Feed Module/sidemenu/Community/Announcements/AnnouncementRequest.dart @@ -52,11 +52,11 @@ class _AnnouncementRequestState extends State { required String title, required String mainImg, }) { - return commonGlassContainer( + return commonGlassUI( width: double.infinity, height: 400.h, - borderradius: 10.r, - border: 1, + borderRadius: BorderRadius.circular( 10.r), + borderwidth: 1, customWidget: Padding( padding: const EdgeInsets.symmetric(horizontal: 16), child: Column(children: [ @@ -103,14 +103,14 @@ class _AnnouncementRequestState extends State { Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - commonGlassContainer( + commonGlassUI( width: 149.w, height: 30.h, opacity1: 0.05, opacity2: 0.07, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), customWidget: Center(child: text12w400_FCFCFC("Decline")), - border: 1), + borderwidth: 1), Container( height: 30.h, width: 150.h, diff --git a/lib/Feed Module/sidemenu/Community/Announcements/ManageMembers.dart b/lib/Feed Module/sidemenu/Community/Announcements/ManageMembers.dart index 64c2bb4..76aea4d 100644 --- a/lib/Feed Module/sidemenu/Community/Announcements/ManageMembers.dart +++ b/lib/Feed Module/sidemenu/Community/Announcements/ManageMembers.dart @@ -144,10 +144,10 @@ class _ManageMembersState extends State { hintText: "Start date - End date", )), Spacer(), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center( @@ -157,7 +157,7 @@ class _ManageMembersState extends State { width: 23.w, ), ), - border: 0.5) + borderwidth: 0.5) ], ), ], @@ -237,32 +237,32 @@ class _ManageMembersState extends State { sizedBoxHeight(16.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("M")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Tu")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("W")), - border: 0.5), + borderwidth: 0.5), Spacer(), Row( children: [ @@ -282,32 +282,32 @@ class _ManageMembersState extends State { sizedBoxHeight(20.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Th")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("F")), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(15.w), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), opacity1: 0.24, opacity2: 0.24, customWidget: Center(child: text16w400_FCFCFC("Sa")), - border: 0.5), + borderwidth: 0.5), Spacer(), Row( children: [ @@ -416,10 +416,10 @@ class _ManageMembersState extends State { hintText: "Start date - End date", )), Spacer(), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center( @@ -429,7 +429,7 @@ class _ManageMembersState extends State { width: 23.w, ), ), - border: 0.5) + borderwidth: 0.5) ], ), ], @@ -540,10 +540,10 @@ class _ManageMembersState extends State { hintText: "Start date - End date", )), Spacer(), - commonGlassContainer( + commonGlassUI( width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), opacity1: 0.24, opacity2: 0.24, customWidget: Center( @@ -553,7 +553,7 @@ class _ManageMembersState extends State { width: 23.w, ), ), - border: 0.5) + borderwidth: 0.5) ], ), ], diff --git a/lib/Feed Module/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart b/lib/Feed Module/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart index a99b5bd..07238df 100644 --- a/lib/Feed Module/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart +++ b/lib/Feed Module/sidemenu/Community/Announcements/NewAnnouncement/NewAnnounceent.dart @@ -41,17 +41,17 @@ class _NewAnnouncementState extends State { sizedBoxHeight(20.h), text16w400_FCFCFC("Description"), sizedBoxHeight(30.h), - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 150.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 12.w, vertical: 12.h), child: text14w400_FCFCFCblur( "Lorem Ipsum has been the industry's standard dummy text ever since the 1500s . . .Lorem Ipsum has been the industry's standard dummy text ever since the 1500s . . ."), ), - border: 1), + borderwidth: 1), sizedBoxHeight(80.h), CustomButton( text: "Post", diff --git a/lib/Feed Module/sidemenu/Community/Announcements/View/Announcements.dart b/lib/Feed Module/sidemenu/Community/Announcements/View/Announcements.dart index 2b2493a..4a4ab44 100644 --- a/lib/Feed Module/sidemenu/Community/Announcements/View/Announcements.dart +++ b/lib/Feed Module/sidemenu/Community/Announcements/View/Announcements.dart @@ -130,10 +130,10 @@ Widget announcementWidget({ required String date, required String subtitle, }) { - return commonGlassContainer( + return commonGlassUI( width: double.infinity, height: 120.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 12.h), child: Column( @@ -155,5 +155,5 @@ Widget announcementWidget({ ], ), ), - border: 1); + borderwidth: 1); } diff --git a/lib/Feed Module/sidemenu/Community/Group/view/Group.dart b/lib/Feed Module/sidemenu/Community/Group/view/Group.dart index 11ba615..6987dbb 100644 --- a/lib/Feed Module/sidemenu/Community/Group/view/Group.dart +++ b/lib/Feed Module/sidemenu/Community/Group/view/Group.dart @@ -39,7 +39,7 @@ class _GroupState extends State { }, ]; - late Future myfuture; + late Future myfuture; int id = Get.arguments["id"]; @override @@ -134,11 +134,11 @@ class _GroupState extends State { padding: EdgeInsets.only(bottom: 25.h), child: GestureDetector( onTap: () {}, - child: commonGlassContainer( - border: 0.9, + child: commonGlassUI( + borderwidth: 0.9, width: double.infinity, height: 162.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular(10.r), customWidget: Padding( padding: EdgeInsets.symmetric( horizontal: 16.w, vertical: 16.h), @@ -236,11 +236,12 @@ class _GroupState extends State { ), Spacer(), PopupMenuButton( - surfaceTintColor: Color(0xFF222935), + surfaceTintColor: + const Color(0xFF222935), constraints: BoxConstraints.tightFor( width: 200.w), - offset: Offset(0, 30), - color: Color(0xFF222935), + offset: const Offset(0, 30), + color: const Color(0xFF222935), tooltip: "", itemBuilder: (BuildContext context) => [ @@ -252,8 +253,8 @@ class _GroupState extends State { child: Row( children: [ text14w400_FCFCFC( - "Mute community"), - Spacer(), + "Mute group"), + const Spacer(), Image.asset( "assets/images/png/Black (1).png", height: 18.h, @@ -263,7 +264,7 @@ class _GroupState extends State { ), ), ), - PopupMenuDivider(), + const PopupMenuDivider(), PopupMenuItem( onTap: () {}, child: Padding( @@ -272,10 +273,30 @@ class _GroupState extends State { child: Row( children: [ text14w400_FCFCFC( - "Hide post"), - Spacer(), + "Pin group"), + const Spacer(), Image.asset( - "assets/images/png/mingcute_eye-close-line.png", + "assets/images/png/f7_pin-fill (2).png", + height: 27.h, + width: 27.w, + ) + ], + ), + ), + ), + const PopupMenuDivider(), + PopupMenuItem( + onTap: () {}, + child: Padding( + padding: EdgeInsets.symmetric( + horizontal: 8.w), + child: Row( + children: [ + text14w400_FCFCFC( + "Make primary"), + const Spacer(), + Image.asset( + "assets/images/png/leave group.png", height: 20.h, width: 20.w, ) @@ -283,7 +304,7 @@ class _GroupState extends State { ), ), ), - PopupMenuDivider(), + const PopupMenuDivider(), PopupMenuItem( onTap: () {}, child: Padding( @@ -291,30 +312,12 @@ class _GroupState extends State { horizontal: 8.w), child: Row( children: [ - text14w400_FCFCFC("Pin"), - Spacer(), + // text14w400_FCFCFC("Leave group"), + text14w400_D90B2E( + "Leave group"), + const Spacer(), Image.asset( - "assets/images/png/f7_pin-fill (2).png", - height: 25.h, - width: 25.w, - ) - ], - ), - ), - ), - PopupMenuDivider(), - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: EdgeInsets.symmetric( - horizontal: 8.w), - child: Row( - children: [ - text14w400_FCFCFC( - "Leave community"), - Spacer(), - Image.asset( - "assets/images/png/logout 1 (traced).png", + "assets/images/png/LightGray22.png", height: 18.h, width: 18.w, ) @@ -325,8 +328,8 @@ class _GroupState extends State { ], child: Image.asset( "assets/images/png/Group 1000004071.png", - height: 13.h, - width: 3.w, + height: 18.h, + width: 20.w, )), ], ), @@ -335,7 +338,6 @@ class _GroupState extends State { sizedBoxHeight(10.h), Row( children: [ - stackContainersGroups( number: joinedgroupsobj! .data![index].membersCount diff --git a/lib/Feed Module/sidemenu/Community/MyCommunity/AddGroups.dart b/lib/Feed Module/sidemenu/Community/MyCommunity/AddGroups.dart index e02620a..5ed63b8 100644 --- a/lib/Feed Module/sidemenu/Community/MyCommunity/AddGroups.dart +++ b/lib/Feed Module/sidemenu/Community/MyCommunity/AddGroups.dart @@ -84,19 +84,19 @@ class _AddGroupState extends State { sizedBoxHeight(25.h), Row( children: [ - commonGlassContainer( + commonGlassUI( opacity1: 0.24, opacity2: 0.24, width: 50.w, height: 50.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( "assets/images/png/Black.png", height: 30.h, width: 30.w, )), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(8.w), text18w400_FCFCFC("Create group"), Spacer(), @@ -175,9 +175,9 @@ class _AddGroupState extends State { ), Spacer(), Obx(() { - return commonGlassContainer( - border: isCheckedList[index] ? 1.2 : 0.9, - borderradius: 2, + return commonGlassUI( + borderwidth: isCheckedList[index] ? 1.2 : 0.9, + borderRadius: BorderRadius.circular( 2), height: 23.h, width: 23.w, opacity1: 0.24, diff --git a/lib/Feed Module/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart b/lib/Feed Module/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart index 8be3ddf..e1a2d13 100644 --- a/lib/Feed Module/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart +++ b/lib/Feed Module/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart @@ -92,10 +92,10 @@ class _CommunityInfoState extends State { sizedBoxHeight(30.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, - borderradius: 100.r, + borderRadius: BorderRadius.circular( 100.r), customWidget: Center( child: Image.asset( "assets/images/png/Group 58645.png", @@ -103,7 +103,7 @@ class _CommunityInfoState extends State { width: 13.w, ), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(8.w), text16w400_white("Elm street london, United Kingdom") ], @@ -111,10 +111,10 @@ class _CommunityInfoState extends State { sizedBoxHeight(15.h), Row( children: [ - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, - borderradius: 100.r, + borderRadius: BorderRadius.circular( 100.r), customWidget: Center( child: Image.asset( "assets/images/png/puzzle-pieces 1 (traced).png", @@ -122,7 +122,7 @@ class _CommunityInfoState extends State { width: 20.w, ), ), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(8.w), text16w400_white("Sports") ], diff --git a/lib/Feed Module/sidemenu/Community/MyCommunity/NewCommunity.dart b/lib/Feed Module/sidemenu/Community/MyCommunity/NewCommunity.dart index c3b1e58..e2a2878 100644 --- a/lib/Feed Module/sidemenu/Community/MyCommunity/NewCommunity.dart +++ b/lib/Feed Module/sidemenu/Community/MyCommunity/NewCommunity.dart @@ -65,10 +65,10 @@ class _NewCommunityState extends State { }, ); }, - child: commonGlassContainer( + child: commonGlassUI( width: 95.w, height: 95.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: filePath.isNotEmpty && isImageAdded @@ -89,7 +89,7 @@ class _NewCommunityState extends State { width: 30.w, ), ), - border: 0.5), + borderwidth: 0.5), ), ), sizedBoxHeight(20.h), @@ -117,11 +117,11 @@ class _NewCommunityState extends State { borderType: BorderType.RRect, radius: Radius.circular(14.r), color: Color(0xFF434A53), - child: commonGlassContainer( - border: 0, + child: commonGlassUI( + borderwidth: 0, width: double.infinity, height: 130.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular(10.r), customWidget: bannerPath.isNotEmpty && isbannerAdded ? Stack(children: [ Image.file( diff --git a/lib/Feed Module/sidemenu/Community/MyCommunity/View/CommunityDetails.dart b/lib/Feed Module/sidemenu/Community/MyCommunity/View/CommunityDetails.dart index ceadd24..4752758 100644 --- a/lib/Feed Module/sidemenu/Community/MyCommunity/View/CommunityDetails.dart +++ b/lib/Feed Module/sidemenu/Community/MyCommunity/View/CommunityDetails.dart @@ -210,10 +210,10 @@ class _CommunityDetailsState extends State { children: [ text20w700_FCFCFC("Active alliance network"), Spacer(), - commonGlassContainer( + commonGlassUI( width: 35.w, height: 35.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.24, opacity2: 0.24, customWidget: Center( @@ -222,16 +222,16 @@ class _CommunityDetailsState extends State { height: 18.w, width: 18.w, )), - border: 0.5), + borderwidth: 0.5), sizedBoxWidth(8.w), text16w400_FCFCFCblur("Public"), ], ), sizedBoxHeight(20.h), - commonGlassContainer( + commonGlassUI( width: double.infinity, height: 51.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ @@ -260,16 +260,16 @@ class _CommunityDetailsState extends State { ), ], ), - border: 1.w), + borderwidth: 1.w), sizedBoxHeight(20.h), GestureDetector( onTap: () { Get.toNamed(RouteName.addgroup); }, - child: commonGlassContainer( + child: commonGlassUI( width: double.infinity, height: 51.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), child: Column( @@ -293,17 +293,17 @@ class _CommunityDetailsState extends State { ], ), ), - border: 1), + borderwidth: 1), ), sizedBoxHeight(20.h), GestureDetector( onTap: () { Get.toNamed(RouteName.announcement); }, - child: commonGlassContainer( + child: commonGlassUI( width: double.infinity, height: 51.h, - borderradius: 10.r, + borderRadius: BorderRadius.circular( 10.r), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), child: Column( @@ -331,7 +331,7 @@ class _CommunityDetailsState extends State { ], ), ), - border: 1), + borderwidth: 1), ), sizedBoxHeight(35.h), Container( @@ -598,13 +598,13 @@ class _CommunityDetailsState extends State { 'assets/images/png/party-popper 2.png' ]), Spacer(), - commonGlassContainer( - border: 0.43, + commonGlassUI( + borderwidth: 0.43, width: 30.w, height: 30.h, opacity1: 0.05, opacity2: 0.06, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), customWidget: Center( child: Image.asset( 'assets/images/png/Frame 1000004088.png', @@ -616,11 +616,11 @@ class _CommunityDetailsState extends State { sizedBoxWidth(12.w), text14w400_FCFCFC('20'), sizedBoxWidth(20.w), - commonGlassContainer( - border: 0.43, + commonGlassUI( + borderwidth: 0.43, width: 30.w, height: 30.h, - borderradius: 100, + borderRadius: BorderRadius.circular( 100), opacity1: 0.05, opacity2: 0.06, customWidget: Center( @@ -753,11 +753,11 @@ class _CommunityDetailsState extends State { } Widget containertile({required String text}) { - return commonGlassContainer( - border: 1, + return commonGlassUI( + borderwidth: 1, width: 100.w, height: 30.h, - borderradius: 30.r, + borderRadius: BorderRadius.circular( 30.r), borderColor: Color(0xFFD90B2E), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 10.w), diff --git a/lib/Feed Module/sidemenu/Community/MyCommunity/View/MyCommunity.dart b/lib/Feed Module/sidemenu/Community/MyCommunity/View/MyCommunity.dart index 41c9543..aafab8f 100644 --- a/lib/Feed Module/sidemenu/Community/MyCommunity/View/MyCommunity.dart +++ b/lib/Feed Module/sidemenu/Community/MyCommunity/View/MyCommunity.dart @@ -198,11 +198,11 @@ class _MyCommunityState extends State { Row( children: [ Stack(clipBehavior: Clip.none, children: [ - commonGlassContainer( - border: 0.9, + commonGlassUI( + borderwidth: 0.9, width: 30.w, height: 30.h, - borderradius: 100.r, + borderRadius: BorderRadius.circular(100.r), opacity1: 0.24, opacity2: 0.24, customWidget: Center( diff --git a/lib/Login/View/verifygoogleapple.dart b/lib/Login/View/verifygoogleapple.dart index cd8df8d..40796f0 100644 --- a/lib/Login/View/verifygoogleapple.dart +++ b/lib/Login/View/verifygoogleapple.dart @@ -102,45 +102,54 @@ class _VerifygoogleandappleState extends State { backgroundColor: const Color.fromARGB(255, 18, 32, 47), body: Stack( children: [ - const Positioned( - top: 310, right: -30, child: CommonBlurRightSecond()), - const Positioned(top: 510, left: -30, child: CommonBlurLeftBlue()), - GlassmorphicContainer( - width: MediaQuery.of(context).size.width, - height: - // 500.h, - MediaQuery.of(context).size.height, - borderRadius: 2, - blur: 6, - alignment: Alignment.bottomLeft, - border: 2, - linearGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), + + + // Positioned( + // top: 310, right: -30, child: CommonBlurRightSecond()), + // const Positioned(top: 510, left: -30, child: CommonBlurLeftBlue()), + // GlassmorphicContainer( + // width: MediaQuery.of(context).size.width, + // height: + // // 500.h, + // MediaQuery.of(context).size.height, + // borderRadius: 2, + // blur: 6, + // alignment: Alignment.bottomLeft, + // border: 2, + // linearGradient: LinearGradient( + // begin: Alignment.topCenter, + // end: Alignment.bottomCenter, + // colors: [ + // const Color(0XFF222935).withOpacity(0.60), + // const Color(0XFF222935).withOpacity(0.60), + // const Color(0XFF222935).withOpacity(0.60), + // const Color(0XFF222935).withOpacity(0.60), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - ], - ), - borderGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - const Color(0XFF222935).withOpacity(0.60), + // // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), + // // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), + // // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), + // // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), + // ], + // ), + // borderGradient: LinearGradient( + // begin: Alignment.topCenter, + // end: Alignment.bottomCenter, + // colors: [ + // // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), + // // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), + // const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - ], - ), - child: Padding( + // const Color(0XFF222935).withOpacity(0.60), + // ], + // ), + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), + ), + + Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), child: Column( crossAxisAlignment: CrossAxisAlignment.start, @@ -234,10 +243,8 @@ class _VerifygoogleandappleState extends State { ], ), ), - ) - ], - ), - ), - ); + ] ) + + )); } } diff --git a/lib/Utils/Common/CommonAppbar.dart b/lib/Utils/Common/CommonAppbar.dart index 614fd4b..7289a27 100644 --- a/lib/Utils/Common/CommonAppbar.dart +++ b/lib/Utils/Common/CommonAppbar.dart @@ -129,11 +129,11 @@ class CommonAppbar extends StatelessWidget implements PreferredSizeWidget { child: Row( children: [ sizedBoxWidth(10.w), - commonGlassContainer( - border: 0.5, + commonGlassUI( + borderwidth: 0.5, width: 40.w, height: 40.h, - borderradius: 100, + borderRadius: BorderRadius.circular(100), opacity1: 0.24, opacity2: 0.24, customWidget: Center( diff --git a/lib/Utils/texts.dart b/lib/Utils/texts.dart index d796b52..52531db 100644 --- a/lib/Utils/texts.dart +++ b/lib/Utils/texts.dart @@ -45,9 +45,10 @@ Widget text20400white(String text) { ); } -Widget text20400FCFCFC(String text) { +Widget text20400FCFCFC(String text, {TextAlign? textAlign}) { return Text( text, + textAlign: textAlign, style: TextStyle( fontSize: 20.sp, color: const Color(0xFFFCFCFC), @@ -172,6 +173,18 @@ Widget text144005DFD63(String text) { ); } +Widget text13400A7A7A7(String text) { + return Text( + text, + // textAlign: TextAlign.center, + style: TextStyle( + fontSize: 13.sp, + color: const Color(0xFFA7A7A7), + fontWeight: FontWeight.w400, + fontFamily: 'Helvetica'), + ); +} + Widget text14400whiteblur(String text, {TextAlign? textAlign}) { return Text( text, @@ -382,9 +395,10 @@ Widget txt20Black(txt) { ); } -Widget text16w400_FCFCFC(String text) { +Widget text16w400_FCFCFC(String text, {TextAlign? textAlign}) { return Text( text, + textAlign: textAlign, style: TextStyle( fontSize: 16.sp, color: const Color(0xFFFCFCFC), @@ -447,9 +461,10 @@ Widget text10400whiteblur(String text) { ); } -Widget text16w700_FCFCFC(String text) { +Widget text16w700_FCFCFC(String text, {TextAlign? textAlign}) { return Text( text, + textAlign: textAlign, style: TextStyle( fontSize: 16.sp, color: const Color(0xFFFCFCFC), diff --git a/lib/main.dart b/lib/main.dart index 325010a..94915d5 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -122,7 +122,9 @@ class _MyAppState extends State with WidgetsBindingObserver { fontFamily: 'Cambria', ), debugShowCheckedModeBanner: false, - initialRoute: RouteName.splashScreen, + // initialRoute: RouteName.individualactivitystep2, + initialRoute: RouteName.individualactivitystep2, + getPages: AppRoutes.appRoutes(), ), designSize: const Size(390, 844), diff --git a/lib/onboarding/Signup/View/Business/View/step2Selectgroup.dart b/lib/onboarding/Signup/View/Business/View/step2Selectgroup.dart index 514e86c..85da716 100644 --- a/lib/onboarding/Signup/View/Business/View/step2Selectgroup.dart +++ b/lib/onboarding/Signup/View/Business/View/step2Selectgroup.dart @@ -29,46 +29,14 @@ class _SelectgroupStep2State extends State { backgroundColor: Color.fromARGB(255, 18, 32, 47), body: Stack( children: [ - Positioned(top: 70, left: -30, child: CommonBlurLeftSecond()), - Positioned(top: 400, right: -30, child: CommonBlurRightSecond()), - Positioned(top: 630, left: -30, child: CommonBlurLeftBlue()), - SingleChildScrollView( - child: GlassmorphicContainer( - width: MediaQuery.of(context).size.width, - height: - // 500.h, - MediaQuery.of(context).size.height, - borderRadius: 2, - blur: 6, - alignment: Alignment.bottomLeft, - border: 2, - linearGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), - - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - ], - ), - borderGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - Color(0XFF222935).withOpacity(0.60), - - Color(0XFF222935).withOpacity(0.60), - ], - ), - child: Padding( + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), + ), + + Padding( padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 50.h), child: Column( @@ -241,10 +209,10 @@ class _SelectgroupStep2State extends State { }) ], ), - )), - ), - ], - )); + )],), + + + ); } } diff --git a/lib/onboarding/Signup/View/Business/View/step3SelectCommunity.dart b/lib/onboarding/Signup/View/Business/View/step3SelectCommunity.dart index 9a678d8..4f16c3f 100644 --- a/lib/onboarding/Signup/View/Business/View/step3SelectCommunity.dart +++ b/lib/onboarding/Signup/View/Business/View/step3SelectCommunity.dart @@ -29,46 +29,13 @@ class _SelectBusinessCommunityState extends State { backgroundColor: const Color.fromARGB(255, 18, 32, 47), body: Stack( children: [ - const Positioned(top: 70, left: -30, child: CommonBlurLeftSecond()), - const Positioned(top: 400, right: -30, child: CommonBlurRightSecond()), - const Positioned(top: 630, left: -30, child: CommonBlurLeftBlue()), - SingleChildScrollView( - child: GlassmorphicContainer( - width: MediaQuery.of(context).size.width, - height: - // 500.h, - MediaQuery.of(context).size.height, - borderRadius: 2, - blur: 6, - alignment: Alignment.bottomLeft, - border: 2, - linearGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - ], - ), - borderGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - const Color(0XFF222935).withOpacity(0.60), - - const Color(0XFF222935).withOpacity(0.60), - ], - ), - child: Padding( + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), + ), + Padding( padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 50.h), child: Column( @@ -242,10 +209,10 @@ class _SelectBusinessCommunityState extends State { }) ], ), - )), - ), - ], - )); + )]), + + + ); } } diff --git a/lib/onboarding/Signup/View/Individual/FindCommunityPage.dart b/lib/onboarding/Signup/View/Individual/FindCommunityPage.dart new file mode 100644 index 0000000..b8581e7 --- /dev/null +++ b/lib/onboarding/Signup/View/Individual/FindCommunityPage.dart @@ -0,0 +1,44 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_screenutil/flutter_screenutil.dart'; +import 'package:get/get.dart'; +import 'package:regroup/Common/CommonButton.dart'; +import 'package:regroup/Utils/Common/sized_box.dart'; +import 'package:regroup/Utils/texts.dart'; +import 'package:regroup/resources/routes/route_name.dart'; + +class FindCommunityPage extends StatelessWidget { + const FindCommunityPage({super.key}); + + @override + Widget build(BuildContext context) { + return Scaffold( + backgroundColor: Color(0xFF222935), + body: SingleChildScrollView( + child: Padding( + padding: EdgeInsets.symmetric( + vertical: 60.h, + ), + child: Column(children: [ + sizedBoxHeight(40.h), + Image.asset("assets/images/png/Organizing projects-pana 1.png"), + sizedBoxHeight(30.h), + Padding( + padding: EdgeInsets.symmetric(horizontal: 10.w), + child: Column(children: [ + text20400FCFCFC( + '''ReGroup helps organise individuals into groups, and groups within communities. For example, an individual is part of a local football club, while all the football clubs in the city form a wider football community. If you already know which communities you're interested in, you can search for them here.''', + textAlign: TextAlign.center), + sizedBoxHeight(20.h), + CommonBtn( + text: "Find communities", + onTap: () { + // individualcommunitystep4 + // Get.toNamed(RouteName.individualgroupstep3); + Get.toNamed(RouteName.individualcommunitystep4); + }), + ]), + ), + ])), + )); + } +} diff --git a/lib/onboarding/Signup/View/Individual/step1Selectprofile.dart b/lib/onboarding/Signup/View/Individual/step1Selectprofile.dart index 097b0e0..430ec5c 100644 --- a/lib/onboarding/Signup/View/Individual/step1Selectprofile.dart +++ b/lib/onboarding/Signup/View/Individual/step1Selectprofile.dart @@ -2,9 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:get/get.dart'; -import 'package:glassmorphism/glassmorphism.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -26,45 +24,14 @@ class _SelectIndividualProfileState extends State { backgroundColor: const Color.fromARGB(255, 18, 32, 47), body: Stack( children: [ - const Positioned(top: 70, left: -30, child: CommonBlurLeftSecond()), - const Positioned(top: 310, right: -30, child: CommonBlurRightSecond()), - const Positioned(top: 540, left: -30, child: CommonBlurLeftBlue()), - GlassmorphicContainer( - width: MediaQuery.of(context).size.width, - height: - // 500.h, - MediaQuery.of(context).size.height, - borderRadius: 2, - blur: 6, - alignment: Alignment.bottomLeft, - border: 2, - linearGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - const Color(0XFF222935).withOpacity(0.60), - - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - ], - ), - borderGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - const Color(0XFF222935).withOpacity(0.60), - - const Color(0XFF222935).withOpacity(0.60), - ], - ), - child: Padding( + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), + ), + + Padding( padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 50.h), child: Column( @@ -181,7 +148,7 @@ class _SelectIndividualProfileState extends State { }) ], ), - )), + ) ], )); } diff --git a/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart b/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart index 97a11dd..5960bff 100644 --- a/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart +++ b/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart @@ -1,22 +1,19 @@ import 'package:flutter/material.dart'; -import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:flutter_svg/flutter_svg.dart'; import 'package:get/get.dart'; -import 'package:glassmorphism/glassmorphism.dart'; -import 'package:regroup/Common/CommonDropDown.dart'; +import 'package:regroup/Common/CommonButton.dart'; import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Utils/Common/CommonDropdown.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/onboarding/Signup/view_model/getmethod.dart'; import 'package:regroup/onboarding/Signup/view_model/postmethod.dart'; import 'package:regroup/resources/routes/route_name.dart'; -import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart'; + +int? _firstSelectedIndex; +bool _isFirstSelectionActive = false; class SelectIndividualActivity extends StatefulWidget { const SelectIndividualActivity({super.key}); @@ -45,16 +42,49 @@ class _SelectIndividualActivityState extends State { // }); // } - void _onContainerTap(int id) { + void _onContainerTap(int index) { setState(() { - if (_selectedIndices.contains(id)) { - _selectedIndices.remove(id); + if (_selectedIndices.contains(index)) { + _selectedIndices.remove(index); + if (_firstSelectedIndex == index) { + // If the first selected container is unselected, reset the active state + _firstSelectedIndex = null; + _isFirstSelectionActive = false; + } } else { - _selectedIndices.add(id); + if (_firstSelectedIndex == null) { + // The first item is being selected + _firstSelectedIndex = index; + _isFirstSelectionActive = true; + } + _selectedIndices.add(index); } }); } + Color _getGradientColor(int index) { + if (_selectedIndices.isEmpty) { + return Colors.transparent; + } else if (_firstSelectedIndex == index && _isFirstSelectionActive) { + // Apply Color(0XFFD90B2E) to the first selected item + return Color(0XFFD90B2E); + } else if (_selectedIndices.contains(index)) { + // Apply Color(0xFF009DAB) to all other selected items + return Color(0xFF009DAB); + } + return Colors.transparent; + } + + // void _onContainerTap(int id) { + // setState(() { + // if (_selectedIndices.contains(id)) { + // _selectedIndices.remove(id); + // } else { + // _selectedIndices.add(id); + // } + // }); + // } + // to give two different colors for selectedd two containers // Color _getGradientColor(int index) { // if (_selectedIndices.isEmpty) { @@ -72,12 +102,12 @@ class _SelectIndividualActivityState extends State { // return Colors.transparent; // } - Color _getGradientColor(int id) { - if (_selectedIndices.contains(id)) { - return const Color(0XFFD90B2E); // Selected color - } - return Colors.transparent; // Default color - } + // Color _getGradientColor(int id) { + // if (_selectedIndices.contains(id)) { + // return const Color(0XFFD90B2E); // Selected color + // } + // return Colors.transparent; // Default color + // } Uploadata() async { utils.loader(); @@ -93,7 +123,8 @@ class _SelectIndividualActivityState extends State { if (data.status == ResponseStatus.SUCCESS) { Get.back(); print("Activities selected"); - Get.toNamed(RouteName.individualgroupstep3); + // Get.toNamed(RouteName.individualgroupstep3); + Get.toNamed(RouteName.findcommunitypage); return utils.showToast(data.message); } else { @@ -106,310 +137,291 @@ class _SelectIndividualActivityState extends State { @override Widget build(BuildContext context) { return GestureDetector( - onTap: () => FocusManager.instance.primaryFocus?.unfocus(), - child: Scaffold( - backgroundColor: const Color.fromARGB(255, 18, 32, 47), - bottomNavigationBar: Padding( - padding: const EdgeInsets.only(bottom: 10, left: 16, right: 16), - child: CustomButton( - text: "Continue", - onPressed: () { - if (_selectedIndices.isEmpty && - otheractivitycontroller.text.isEmpty) { - utils.showToast('Please select activity'); - } else { - print(_selectedIndices.toString()); - // String selectedIndicesString = - // _selectedIndices.join(','); - // print( - // 'Selected Indices: [$selectedIndicesString]'); - Uploadata(); - } - // Get.toNamed( - // RouteName.individualgroupstep3); - }), - ), - body: SafeArea( - child: FutureBuilder( - future: Getonboard().getIndividualactivity(), - builder: (ctx, snapshot) { - if (snapshot.data == null) { - return const Column( - mainAxisAlignment: MainAxisAlignment.center, - crossAxisAlignment: CrossAxisAlignment.center, - children: [Center(child: CircularProgressIndicator())], - ); - } - if (snapshot.connectionState == ConnectionState.done) { - if (snapshot.hasError) { - return Center( - child: Text( - '${snapshot.error} occured', - style: TextStyle(fontSize: 18.spMin), - ), + onTap: () => FocusManager.instance.primaryFocus?.unfocus(), + child: Scaffold( + backgroundColor: const Color.fromARGB(255, 18, 32, 47), + bottomNavigationBar: Padding( + padding: const EdgeInsets.only(bottom: 10, left: 16, right: 16), + child: CustomButton( + text: "Continue", + onPressed: () { + if (_selectedIndices.isEmpty && + otheractivitycontroller.text.isEmpty) { + utils.showToast('Please select activity'); + } else { + print(_selectedIndices.toString()); + // String selectedIndicesString = + // _selectedIndices.join(','); + // print( + // 'Selected Indices: [$selectedIndicesString]'); + Uploadata(); + } + // Get.toNamed( + // RouteName.individualgroupstep3); + }), + ), + body: SafeArea( + child: FutureBuilder( + future: Getonboard().getIndividualactivity(), + builder: (ctx, snapshot) { + if (snapshot.data == null) { + return const Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.center, + children: [Center(child: CircularProgressIndicator())], ); } - } + if (snapshot.connectionState == ConnectionState.done) { + if (snapshot.hasError) { + return Center( + child: Text( + '${snapshot.error} occured', + style: TextStyle(fontSize: 18.spMin), + ), + ); + } + } - return Stack( - children: [ - Container( - decoration: const BoxDecoration( - image: DecorationImage( - image: AssetImage( - "assets/images/png/Ellipse 1496.png"), - fit: BoxFit.fill)), - ), - Padding( - padding: - EdgeInsets.symmetric(horizontal: 16.w, vertical: 0.h), - child: SingleChildScrollView( - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Align( - alignment: Alignment.topRight, - child: GestureDetector( - onTap: () { - Get.toNamed(RouteName.communitycommitscreen); - }, - child: Text( - 'Skip', - style: TextStyle( - color: Colors.white, - fontSize: 16.sp, - fontFamily: 'Helvetica', - fontWeight: FontWeight.w400, - decoration: TextDecoration.underline, - decorationColor: Colors.white), + return Stack( + children: [ + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage( + "assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), + ), + Padding( + padding: + EdgeInsets.symmetric(horizontal: 16.w, vertical: 0.h), + child: SingleChildScrollView( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Align( + alignment: Alignment.topRight, + child: GestureDetector( + onTap: () { + Get.toNamed(RouteName.communitycommitscreen); + }, + child: Text( + 'Skip', + style: TextStyle( + color: Colors.white, + fontSize: 16.sp, + fontFamily: 'Helvetica', + fontWeight: FontWeight.w400, + decoration: TextDecoration.underline, + decorationColor: Colors.white), + ), ), ), - ), - sizedBoxHeight(30.h), - Align( - alignment: Alignment.center, - child: text16400white('Step 1 of 3')), - sizedBoxHeight(20.h), - Container( - width: double.infinity, - height: 25.h, - decoration: ShapeDecoration( - shape: RoundedRectangleBorder( - side: const BorderSide( - width: 1, color: Color(0xFF434A53)), - borderRadius: BorderRadius.circular(30), + sizedBoxHeight(30.h), + Align( + alignment: Alignment.center, + child: text16400white('Step 1 of 3')), + sizedBoxHeight(20.h), + Container( + width: double.infinity, + height: 25.h, + decoration: ShapeDecoration( + shape: RoundedRectangleBorder( + side: const BorderSide( + width: 1, color: Color(0xFF434A53)), + borderRadius: BorderRadius.circular(30), + ), ), - ), - child: Padding( - padding: EdgeInsets.symmetric( - horizontal: 8.w, vertical: 2.h), - child: Row( - children: [ - Container( - width: 120.w, - height: 15.h, - decoration: ShapeDecoration( - gradient: const LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), - colors: [ - Color(0xA5D90B2E), - Color(0x42D90B2E) - ], - ), - shape: RoundedRectangleBorder( - borderRadius: - BorderRadius.circular(30), - ), - ), - child: Row( - mainAxisAlignment: - MainAxisAlignment.end, - children: [ - Container( - width: 15, - height: 15, - decoration: ShapeDecoration( - gradient: const LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), - colors: [ - Color(0xFFD90B2E), - Color(0x60D90B2E) - ], - ), - shape: RoundedRectangleBorder( - borderRadius: - BorderRadius.circular(30), - ), - ), - ) - ], - )) - ], - ), - ), - ), - sizedBoxHeight(40.h), - indiactivityobj!.data == null || - indiactivityobj!.data!.isEmpty - ? _buildNoDataBody(context) - : Column( - crossAxisAlignment: CrossAxisAlignment.start, + child: Padding( + padding: EdgeInsets.symmetric( + horizontal: 8.w, vertical: 2.h), + child: Row( children: [ - Center( - child: _selectedIndices.isEmpty - ? text20400white( - 'What is your main activity ?') - : text20400white( - 'What else do you do?')), - sizedBoxHeight(10.w), - Center( - child: Container( - width: 154.w, - decoration: const ShapeDecoration( + Container( + width: 100.w, + height: 15.h, + decoration: ShapeDecoration( + gradient: const LinearGradient( + begin: Alignment(0.98, -0.21), + end: Alignment(-0.98, 0.21), + colors: [ + Color(0xA5D90B2E), + Color(0x42D90B2E) + ], + ), shape: RoundedRectangleBorder( - side: BorderSide( - width: 1, - strokeAlign: - BorderSide.strokeAlignCenter, - color: Color(0xFF858585), - ), + borderRadius: + BorderRadius.circular(30), ), ), - ), - ), - sizedBoxHeight(30.h), - GridView.builder( - physics: const ScrollPhysics(), - shrinkWrap: true, - gridDelegate: - SliverGridDelegateWithFixedCrossAxisCount( - crossAxisCount: - 3, // Number of items in each row - crossAxisSpacing: 12 - .w, // Horizontal spacing between items - mainAxisSpacing: 12 - .h, // Vertical spacing between items - ), - itemCount: indiactivityobj!.data!.length, - itemBuilder: (context, index) { - return ActivityContainer( - index: - indiactivityobj!.data![index].id!, - titleString: indiactivityobj! - .data![index].name!, - image: indiactivityobj! - .data![index].image, - // 'assets/images/svg/individualact7.svg', - isSelected: _selectedIndices.contains( - indiactivityobj! - .data![index].id!), - gradientColor: _getGradientColor( - indiactivityobj! - .data![index].id!), - onTap: _onContainerTap, - ); - }, - ), - - sizedBoxHeight(30.h), - text20400FCFCFC("Add other activity"), - sizedBoxHeight(25.h), - CustomTextFormField( - textEditingController: - otheractivitycontroller, - texttype: TextInputType.text, - hintText: "Enter other activity", - // leadingIcon: - // // const Icon(Icons.mail_outline), - // Image.asset( - // width: 22.w, - // height: 17.h, - // 'assets/images/png/user.png', - // ), - // validatorText: "Enter your full name", - validator: (value) { - if (value!.isEmpty) { - return 'Enter your full name '; - } - return null; - }, - inputFormatters: [ - // LengthLimitingTextInputFormatter(20), - RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow( - RegExp('[a-zA-Z ]')) - ], - ), - // CustomDropDownRadio( - // header: "", - // title: "", - // listData: [ - // "American football", - // "Archery", - // "Athletics", - // "Baseball", - // "Basketball", - // "Boxing", - // "Canoeing", - // "Clay pigeon shooting", - // "Climbing", - // "Combat sports", - // "Cricket", - // "Dodgeball", - // "Equestrian", - // "Fencing", - // "Gaelic football", - // "Golf", - // "Gymnastics", - // "Handball", - // "Hockey", - // "Lacrosse", - // "Modern biathlon and pentathlon", - // "Netball", - // "Orienteering", - // "Pool and snooker", - // "Powerlifting", - // "Rifle", - // "Rugby league", - // "Rugby union", - // "Sailing", - // "Snowsports", - // "Squash", - // "Surfing", - // "Swimming", - // "Softball", - // "Table tennis", - // "Tennis", - // "Touch rugby", - // "Trampoline", - // "Triathlon", - // "Ultimate frisbee", - // "Volleyball", - // "Water polo", - // "Windsurfing" - // ], - // onItemSelected: (p0) {}, - // leadingImage: SizedBox()), - // // Spacer(flex: 1), - - sizedBoxHeight(35.h), + child: Row( + mainAxisAlignment: + MainAxisAlignment.end, + children: [ + Container( + width: 15, + height: 15, + decoration: ShapeDecoration( + gradient: const LinearGradient( + begin: Alignment(0.98, -0.21), + end: Alignment(-0.98, 0.21), + colors: [ + Color(0xFFD90B2E), + Color(0x60D90B2E) + ], + ), + shape: RoundedRectangleBorder( + borderRadius: + BorderRadius.circular(30), + ), + ), + ) + ], + )) ], - ) - ], + ), + ), + ), + sizedBoxHeight(40.h), + indiactivityobj!.data == null || + indiactivityobj!.data!.isEmpty + ? _buildNoDataBody(context) + : Column( + crossAxisAlignment: + CrossAxisAlignment.center, + children: [ + text20400white( + 'What are your interests?'), + // sizedBoxHeight(5.w), + + _isFirstSelectionActive + ? text13400A7A7A7( + 'Select your secondary interests') + : text13400A7A7A7( + 'Select your primary interest'), + + // Container( + // width: 154.w, + // decoration: const ShapeDecoration( + // shape: RoundedRectangleBorder( + // side: BorderSide( + // width: 1, + // strokeAlign: + // BorderSide.strokeAlignCenter, + // color: Color(0xFF858585), + // ), + // ), + // ), + // ), + sizedBoxHeight(30.h), + GridView.builder( + physics: const ScrollPhysics(), + shrinkWrap: true, + gridDelegate: + SliverGridDelegateWithFixedCrossAxisCount( + crossAxisCount: + 3, // Number of items in each row + crossAxisSpacing: 12 + .w, // Horizontal spacing between items + mainAxisSpacing: 12 + .h, // Vertical spacing between items + ), + itemCount: + indiactivityobj!.data!.length, + itemBuilder: (context, index) { + return ActivityContainer( + index: indiactivityobj! + .data![index].id!, + titleString: indiactivityobj! + .data![index].name!, + image: indiactivityobj! + .data![index].image, + // 'assets/images/svg/individualact7.svg', + isSelected: _selectedIndices + .contains(indiactivityobj! + .data![index].id!), + gradientColor: _getGradientColor( + indiactivityobj! + .data![index].id!), + onTap: _onContainerTap, + ); + }, + ), + + sizedBoxHeight(30.h), + // text20400FCFCFC("Add other activity"), + // sizedBoxHeight(25.h), + // CustomTextFormField( + // textEditingController: + // otheractivitycontroller, + // texttype: TextInputType.text, + // hintText: "Enter other activity", + // // leadingIcon: + // // // const Icon(Icons.mail_outline), + // // Image.asset( + // // width: 22.w, + // // height: 17.h, + // // 'assets/images/png/user.png', + // // ), + // // validatorText: "Enter your full name", + // validator: (value) { + // if (value!.isEmpty) { + // return 'Enter your full name '; + // } + // return null; + // }, + // inputFormatters: [ + // // LengthLimitingTextInputFormatter(20), + // RemoveEmojiInputFormatter(), + // FilteringTextInputFormatter.allow( + // RegExp('[a-zA-Z ]')) + // ], + // ), + + sizedBoxHeight(35.h), + ], + ) + ], + ), ), ), - ), - ], - ); - }, + ], + ); + }, + ), ), - ), - - // - ), - ); + floatingActionButton: Stack( + alignment: Alignment.center, + clipBehavior: Clip.none, // Ensure the Positioned widget is visible + children: [ + FloatingActionButton( + onPressed: () { + interestdialogwidget(); + }, + backgroundColor: const Color(0xFFD90B2E), + autofocus: true, + shape: const CircleBorder(), + child: Icon( + Icons.add, + color: Colors.white, + size: 27.sp, + ), + ), + Positioned( + right: 60.w, + child: Container( + width: 212.w, + height: 35.h, + decoration: BoxDecoration( + color: Color(0xFF363636), + borderRadius: BorderRadius.circular(20), + border: + Border.all(color: Color(0xFFD90B2E), width: 1.w)), + child: Center( + child: text16400white("Can’t find your interest"))), + ) + ], + ), + )); } Widget _buildNoDataBody(context) { @@ -420,6 +432,108 @@ class _SelectIndividualActivityState extends State { } } +interestdialogwidget() { + Get.dialog(Dialog( + // backgroundColor: Colors.transparent, + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(10.r), + color: const Color(0xFF222935)), + child: Padding( + padding: EdgeInsets.only( + right: 16.w, left: 16.w, top: 20.h, bottom: 40.h), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Spacer(), + Image.asset( + "assets/images/png/x-circle.png", + height: 28.h, + width: 28.w, + ) + ], + ), + text16w700_FCFCFC("Suggest interest"), + sizedBoxHeight(16.h), + Center( + child: CustomTextFormField( + hintText: "Please type your interest", + )), + sizedBoxHeight(10.h), + text10w400_FCFCFC_blur("We will surely make this happen"), + sizedBoxHeight(20.h), + Align( + alignment: Alignment.center, + child: SizedBox( + width: 177.w, + child: CommonBtn( + text: "Suggest", + onTap: () { + Get.back(); + thankdialogwidget(); + })), + ) + ], + ), + ), + ), + ], + ), + )); +} + +thankdialogwidget() { + Get.dialog(Dialog( + // backgroundColor: Colors.transparent, + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(10.r), + color: const Color(0xFF222935)), + child: Padding( + padding: EdgeInsets.only( + right: 16.w, left: 16.w, top: 20.h, bottom: 40.h), + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Row( + children: [ + Spacer(), + Image.asset( + "assets/images/png/x-circle.png", + height: 28.h, + width: 28.w, + ) + ], + ), + Image.asset( + "assets/images/png/correct 1.png", + height: 72.h, + width: 72.w, + ), + sizedBoxHeight(20.h), + text16w700_FCFCFC( + "Thank You! \n for adding one more to the club", + textAlign: TextAlign.center), + sizedBoxHeight(16.h), + ], + ), + ), + ), + ], + ), + )); +} + class ActivityContainer extends StatelessWidget { final int index; final String titleString; @@ -449,19 +563,32 @@ class ActivityContainer extends StatelessWidget { begin: const Alignment(0.98, -0.21), end: const Alignment(-0.98, 0.21), colors: isSelected - ? [ - gradientColor.withOpacity(0.80), - gradientColor.withOpacity(0.77), - gradientColor.withOpacity(0.66), - gradientColor.withOpacity(0.18), - ] + ? _firstSelectedIndex == index && + _isFirstSelectionActive == true + ? [ + gradientColor.withOpacity(0.80), + gradientColor.withOpacity(0.77), + Color(0xFF009DAB).withOpacity(0.66), + Color(0xFF009DAB).withOpacity(0.18), + ] + : [ + Colors.white.withOpacity(0.06), + Colors.white.withOpacity(0.08), + ] : [ Colors.white.withOpacity(0.06), Colors.white.withOpacity(0.08), ], ), shape: RoundedRectangleBorder( - side: const BorderSide(width: 1, color: Color(0xFF434A53)), + side: isSelected + ? _firstSelectedIndex == index && + _isFirstSelectionActive == true + ? BorderSide(width: 1.w, color: Color(0xFF434A53)) + : BorderSide(width: 3.w, color: gradientColor) + : BorderSide(width: 3.w, color: gradientColor), + + borderRadius: BorderRadius.circular(10), ), ), diff --git a/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart b/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart index 447b062..76f1299 100644 --- a/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart +++ b/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart @@ -2,13 +2,14 @@ import 'dart:async'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/widgets.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; -import 'package:glassmorphism/glassmorphism.dart'; +import 'package:regroup/Common/CommonButton.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -67,7 +68,8 @@ class _SelectIndividualGroupState extends State { if (data.status == ResponseStatus.SUCCESS) { Get.back(); print("groups selected"); - Get.toNamed(RouteName.individualcommunitystep4); + // Get.toNamed(RouteName.individualcommunitystep4); + Get.toNamed(RouteName.communitycommitscreen); return utils.showToast(data.message); } else { @@ -82,7 +84,7 @@ class _SelectIndividualGroupState extends State { return GestureDetector( onTap: () => FocusManager.instance.primaryFocus?.unfocus(), child: Scaffold( - backgroundColor: Color.fromARGB(255, 18, 32, 47), + backgroundColor: const Color.fromARGB(255, 18, 32, 47), body: Stack( children: [ Container( @@ -117,14 +119,15 @@ class _SelectIndividualGroupState extends State { sizedBoxHeight(30.h), Align( alignment: Alignment.center, - child: text16400white('Step 2 of 3')), + child: text16400white('Step 3 of 3')), sizedBoxHeight(20.h), Container( width: double.infinity, height: 25.h, decoration: ShapeDecoration( shape: RoundedRectangleBorder( - side: BorderSide(width: 1, color: Color(0xFF434A53)), + side: const BorderSide( + width: 1, color: Color(0xFF434A53)), borderRadius: BorderRadius.circular(30), ), ), @@ -133,45 +136,47 @@ class _SelectIndividualGroupState extends State { horizontal: 8.w, vertical: 2.h), child: Row( children: [ - Container( - width: 216.w, - height: 15.h, - decoration: ShapeDecoration( - gradient: LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), - colors: [ - Color(0xA5D90B2E), - Color(0x42D90B2E) + Expanded( + child: Container( + // width: 216.w, + height: 15.h, + decoration: ShapeDecoration( + gradient: const LinearGradient( + begin: Alignment(0.98, -0.21), + end: Alignment(-0.98, 0.21), + colors: [ + Color(0xA5D90B2E), + Color(0x42D90B2E) + ], + ), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(30), + ), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + Container( + width: 15, + height: 15, + decoration: ShapeDecoration( + gradient: const LinearGradient( + begin: Alignment(0.98, -0.21), + end: Alignment(-0.98, 0.21), + colors: [ + Color(0xFFD90B2E), + Color(0x60D90B2E) + ], + ), + shape: RoundedRectangleBorder( + borderRadius: + BorderRadius.circular(30), + ), + ), + ) ], - ), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(30), - ), - ), - child: Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - Container( - width: 15, - height: 15, - decoration: ShapeDecoration( - gradient: LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), - colors: [ - Color(0xFFD90B2E), - Color(0x60D90B2E) - ], - ), - shape: RoundedRectangleBorder( - borderRadius: - BorderRadius.circular(30), - ), - ), - ) - ], - )) + )), + ) ], ), ), @@ -183,14 +188,19 @@ class _SelectIndividualGroupState extends State { children: [ text20400white('Find your group'), sizedBoxWidth(5.w), - Image.asset('assets/images/png/informationicon.png') + InkWell( + onTap: () { + groupBottomsheet(); + }, + child: Image.asset( + 'assets/images/png/informationicon.png')) ], )), sizedBoxHeight(10.w), Center( child: Container( width: 108.w, - decoration: ShapeDecoration( + decoration: const ShapeDecoration( shape: RoundedRectangleBorder( side: BorderSide( width: 1, @@ -215,7 +225,7 @@ class _SelectIndividualGroupState extends State { // ), Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Icon( + child: const Icon( Icons.search, size: 35, color: Colors.white, @@ -241,13 +251,14 @@ class _SelectIndividualGroupState extends State { if (snapshot.connectionState == ConnectionState.waiting) { // Display shimmer effect while waiting for data - return Center(child: CircularProgressIndicator()); + return const Center( + child: CircularProgressIndicator()); } else if (snapshot.hasError) { // Handle error state return Center( child: Text( '${snapshot.error} occurred', - style: TextStyle(fontSize: 18), + style: const TextStyle(fontSize: 18), ), ); } else { @@ -256,9 +267,9 @@ class _SelectIndividualGroupState extends State { ? _buildNoDataBody(context) : Expanded( child: GridView.builder( - physics: ScrollPhysics(), + physics: const ScrollPhysics(), gridDelegate: - SliverGridDelegateWithFixedCrossAxisCount( + const SliverGridDelegateWithFixedCrossAxisCount( crossAxisCount: 2, crossAxisSpacing: 12.0, mainAxisSpacing: 12.0, @@ -328,6 +339,53 @@ class _SelectIndividualGroupState extends State { ), ); } + + void groupBottomsheet() { + Get.bottomSheet( + isScrollControlled: true, + Container( + // height: 700.h, + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(14.r), + color: const Color(0xFF222935)), + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 20.h), + child: Column(mainAxisSize: MainAxisSize.min, children: [ + // sizedBoxHeight(20.h), + Row( + children: [ + Spacer(), + Image.asset( + "assets/images/png/x-circle.png", + height: 28.h, + width: 28.w, + ), + ], + ), + Image.asset( + "assets/images/png/Group 1000004385.png", + height: 185.h, + width: 185.w, + ), + + sizedBoxHeight(20.h), + text16w400_FCFCFC( + '''Use this screen to find specific groups within your area. Groups span any club, society or hobbyist group e.g. sports clubs, social clubs, service clubs, musical groups or voluntary societies. If you are still exploring your options, you can skip this step. You can always join or create new groups later.''', + textAlign: TextAlign.center), + sizedBoxHeight(20.h), + + SizedBox( + width: 239.w, + child: CommonBtn( + text: "Understood", + onTap: () { + Get.back(); + }, + )), + + // sizedBoxHeight(40.h) + ])))); + } } class GroupSelect extends StatelessWidget { @@ -348,13 +406,13 @@ class GroupSelect extends StatelessWidget { @override Widget build(BuildContext context) { - return Column(crossAxisAlignment: CrossAxisAlignment.start, children: [ + return Column(crossAxisAlignment: CrossAxisAlignment.center, children: [ Container( - width: 169, - height: 74, + width: 72.w, + height: 72.h, decoration: ShapeDecoration( image: image == null || image!.isEmpty - ? DecorationImage( + ? const DecorationImage( image: AssetImage("assets/images/png/groupindividual3.png"), fit: BoxFit.fill, ) @@ -362,26 +420,42 @@ class GroupSelect extends StatelessWidget { image: NetworkImage(image!), fit: BoxFit.fill, ), - shape: RoundedRectangleBorder(borderRadius: BorderRadius.circular(5)), + shape: + RoundedRectangleBorder(borderRadius: BorderRadius.circular(100)), ), ), - SizedBox(height: 15.0), + const SizedBox(height: 15.0), Text( titleString, - style: TextStyle( + style: const TextStyle( color: Colors.white, fontSize: 12.0, overflow: TextOverflow.ellipsis), ), - SizedBox(height: 15.0), + const SizedBox(height: 15.0), GestureDetector( onTap: () => onTap(index), child: Container( - width: 169, - height: 23, + width: 169.w, + height: 23.h, decoration: ShapeDecoration( + gradient: isSelected + ? LinearGradient(colors: [ + Color(0xFFD90B2E), + Color(0xFFD90B2E), + ]) + : LinearGradient( + begin: Alignment(0.98, -0.21), + end: Alignment(-0.98, 0.21), + colors: [ + Colors.white.withOpacity(0.04), + Colors.white.withOpacity(0.05) + ], + ), shape: RoundedRectangleBorder( - side: BorderSide(width: 1, color: Color(0xFFFF002B)), + side: isSelected + ? BorderSide(width: 1.w, color: Colors.transparent) + : BorderSide(width: 1.w, color: Color(0xFF434A53)), borderRadius: BorderRadius.circular(30), ), ), @@ -389,10 +463,8 @@ class GroupSelect extends StatelessWidget { mainAxisAlignment: MainAxisAlignment.center, children: [ isSelected - ? Text('Regrouping', - style: TextStyle(color: Colors.white, fontSize: 10.0)) - : Text('Join', - style: TextStyle(color: Colors.white, fontSize: 10.0)) + ? text10400white("Leave group") + : text10400white("Join") ], ), ), diff --git a/lib/onboarding/Signup/View/Individual/step4Selectyourcommunity.dart b/lib/onboarding/Signup/View/Individual/step4Selectyourcommunity.dart index 78b3bd9..050cdd2 100644 --- a/lib/onboarding/Signup/View/Individual/step4Selectyourcommunity.dart +++ b/lib/onboarding/Signup/View/Individual/step4Selectyourcommunity.dart @@ -2,13 +2,13 @@ import 'dart:async'; import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; +import 'package:flutter/widgets.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; -import 'package:glassmorphism/glassmorphism.dart'; +import 'package:regroup/Common/CommonButton.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; import 'package:regroup/Utils/Common/CustomTextformfield.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/dialogs.dart'; import 'package:regroup/Utils/texts.dart'; @@ -68,7 +68,9 @@ class _SelectIndividualCommunityState extends State { if (data.status == ResponseStatus.SUCCESS) { // Get.back(); print("groups selected"); - Get.toNamed(RouteName.communitycommitscreen); + // Get.toNamed(RouteName.communitycommitscreen); + Get.toNamed(RouteName.individualgroupstep3); + return utils.showToast(data.message); } else { @@ -118,14 +120,15 @@ class _SelectIndividualCommunityState extends State { sizedBoxHeight(30.h), Align( alignment: Alignment.center, - child: text16400white('Step 3 of 3')), + child: text16400white('Step 2 of 3')), sizedBoxHeight(20.h), Container( width: double.infinity, height: 25.h, decoration: ShapeDecoration( shape: RoundedRectangleBorder( - side: const BorderSide(width: 1, color: Color(0xFF434A53)), + side: const BorderSide( + width: 1, color: Color(0xFF434A53)), borderRadius: BorderRadius.circular(30), ), ), @@ -134,46 +137,45 @@ class _SelectIndividualCommunityState extends State { horizontal: 8.w, vertical: 2.h), child: Row( children: [ - Expanded( - child: Container( - // width: 216.w, - height: 15.h, - decoration: ShapeDecoration( - gradient: const LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), - colors: [ - Color(0xA5D90B2E), - Color(0x42D90B2E) - ], + Container( + width: 170.w, + height: 15.h, + decoration: ShapeDecoration( + gradient: const LinearGradient( + begin: Alignment(0.98, -0.21), + end: Alignment(-0.98, 0.21), + colors: [ + Color(0xA5D90B2E), + Color(0x42D90B2E) + ], + ), + shape: RoundedRectangleBorder( + borderRadius: BorderRadius.circular(30), + ), + ), + child: Row( + mainAxisAlignment: MainAxisAlignment.end, + children: [ + Container( + width: 15, + height: 15, + decoration: ShapeDecoration( + gradient: const LinearGradient( + begin: Alignment(0.98, -0.21), + end: Alignment(-0.98, 0.21), + colors: [ + Color(0xFFD90B2E), + Color(0x60D90B2E) + ], + ), + shape: RoundedRectangleBorder( + borderRadius: + BorderRadius.circular(30), + ), ), - shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(30), - ), - ), - child: Row( - mainAxisAlignment: MainAxisAlignment.end, - children: [ - Container( - width: 15, - height: 15, - decoration: ShapeDecoration( - gradient: const LinearGradient( - begin: Alignment(0.98, -0.21), - end: Alignment(-0.98, 0.21), - colors: [ - Color(0xFFD90B2E), - Color(0x60D90B2E) - ], - ), - shape: RoundedRectangleBorder( - borderRadius: - BorderRadius.circular(30), - ), - ), - ) - ], - ))) + ) + ], + )) ], ), ), @@ -185,8 +187,13 @@ class _SelectIndividualCommunityState extends State { children: [ text20400white('Find your community'), sizedBoxWidth(5.w), - Image.asset( - 'assets/images/png/informationicon.png', + InkWell( + onTap: () { + communityBottomsheet(); + }, + child: Image.asset( + 'assets/images/png/informationicon.png', + ), ) ], )), @@ -244,7 +251,8 @@ class _SelectIndividualCommunityState extends State { if (snapshot.connectionState == ConnectionState.waiting) { // Display shimmer effect while waiting for data - return const Center(child: CircularProgressIndicator()); + return const Center( + child: CircularProgressIndicator()); } else if (snapshot.hasError) { // Handle error state return Center( @@ -333,6 +341,56 @@ class _SelectIndividualCommunityState extends State { ), ); } + + void communityBottomsheet() { + Get.bottomSheet( + isScrollControlled: true, + Container( + // height: 700.h, + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(14.r), + color: const Color(0xFF222935)), + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 20.h), + child: Column(mainAxisSize: MainAxisSize.min, children: [ + // sizedBoxHeight(20.h), + Row( + children: [ + Spacer(), + Image.asset( + "assets/images/png/x-circle.png", + height: 28.h, + width: 28.w, + ), + ], + ), + Image.asset( + "assets/images/png/Connected world-amico 1.png", + height: 185.h, + width: 185.w, + ), + + sizedBoxHeight(20.h), + text16w400_FCFCFC( + '''Use this screen to find interesting communities near you. Communities are +a collection of groups, individuals and businesses that share common interests. e.g. 'London football clubs' or 'Cambridge rowing clubs'. If you aren't sure of which communities you'd like to be a part of or already know the specific club you'd like to join, you can skip this step. Don't worry, you can always join new communities later.''', + textAlign: TextAlign.center), + sizedBoxHeight(20.h), + + SizedBox( + width: 239.w, + child: CommonBtn( + text: "Understood", + onTap: () { + Get.back(); + }, + )), + + // sizedBoxHeight(40.h) + ])))); + } + + } class CommunitySelect extends StatelessWidget { @@ -355,8 +413,8 @@ class CommunitySelect extends StatelessWidget { Widget build(BuildContext context) { return Column(crossAxisAlignment: CrossAxisAlignment.center, children: [ Container( - width: 73.w, - height: 73.h, + width: 170.w, + height: 74.h, decoration: ShapeDecoration( image: image == null || image!.isEmpty ? const DecorationImage( @@ -368,7 +426,7 @@ class CommunitySelect extends StatelessWidget { fit: BoxFit.fill, ), shape: RoundedRectangleBorder( - borderRadius: BorderRadius.circular(100), + borderRadius: BorderRadius.circular(5.r), ), ), ), @@ -384,11 +442,26 @@ class CommunitySelect extends StatelessWidget { GestureDetector( onTap: () => onTap(index), child: Container( - width: 169, - height: 23, + width: 169.w, + height: 23.h, decoration: ShapeDecoration( + gradient: isSelected + ? LinearGradient(colors: [ + Color(0xFFD90B2E), + Color(0xFFD90B2E), + ]) + : LinearGradient( + begin: Alignment(0.98, -0.21), + end: Alignment(-0.98, 0.21), + colors: [ + Colors.white.withOpacity(0.04), + Colors.white.withOpacity(0.05) + ], + ), shape: RoundedRectangleBorder( - side: const BorderSide(width: 1, color: Color(0xFFFF002B)), + side: isSelected + ? BorderSide(width: 1.w, color: Colors.transparent) + : BorderSide(width: 1.w, color: Color(0xFF434A53)), borderRadius: BorderRadius.circular(30), ), ), @@ -396,10 +469,8 @@ class CommunitySelect extends StatelessWidget { mainAxisAlignment: MainAxisAlignment.center, children: [ isSelected - ? const Text('Regrouping', - style: TextStyle(color: Colors.white, fontSize: 10.0)) - : const Text('Join', - style: TextStyle(color: Colors.white, fontSize: 10.0)) + ? text10400white("Leave community") + : text10400white("Join") ], ), ), diff --git a/lib/onboarding/Signup/View/Individual/tellusindividual.dart b/lib/onboarding/Signup/View/Individual/tellusindividual.dart index 32364f3..01d5af2 100644 --- a/lib/onboarding/Signup/View/Individual/tellusindividual.dart +++ b/lib/onboarding/Signup/View/Individual/tellusindividual.dart @@ -154,7 +154,7 @@ class _TellusaboutIndividualState extends State { Get.toNamed(RouteName.individualactivitystep2); } else { Get.back(); - utils.showToast(data.message); + utils.showToast(data.message); } } @@ -162,14 +162,11 @@ class _TellusaboutIndividualState extends State { Widget build(BuildContext context) { return WillPopScope( onWillPop: () async { - SystemNavigator.pop(); + SystemNavigator.pop(); // Navigator.pop(context); - return true; - }, - child: GestureDetector( onTap: () => FocusManager.instance.primaryFocus?.unfocus(), child: Scaffold( @@ -179,7 +176,8 @@ class _TellusaboutIndividualState extends State { Container( decoration: const BoxDecoration( image: DecorationImage( - image: AssetImage("assets/images/png/Ellipse 1496.png"), + image: + AssetImage("assets/images/png/Ellipse 1496.png"), fit: BoxFit.fill)), ), ListView(physics: const ScrollPhysics(), children: [ @@ -319,7 +317,8 @@ class _TellusaboutIndividualState extends State { inputFormatters: [ // LengthLimitingTextInputFormatter(20), RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow(RegExp('[a-zA-Z ]')) + FilteringTextInputFormatter.allow( + RegExp('[a-zA-Z ]')) ], ), sizedBoxHeight(10.h), @@ -346,7 +345,8 @@ class _TellusaboutIndividualState extends State { inputFormatters: [ // LengthLimitingTextInputFormatter(20), RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow(RegExp('[a-zA-Z ]')) + FilteringTextInputFormatter.allow( + RegExp('[a-zA-ZS0-9 ]')), ], ), sizedBoxHeight(10.h), @@ -416,7 +416,8 @@ class _TellusaboutIndividualState extends State { inputFormatters: [ // LengthLimitingTextInputFormatter(20), RemoveEmojiInputFormatter(), - FilteringTextInputFormatter.allow(RegExp('[a-zA-Z ]')) + FilteringTextInputFormatter.allow( + RegExp('[a-zA-Z ]')) ], ), sizedBoxHeight(20.h), @@ -435,7 +436,7 @@ class _TellusaboutIndividualState extends State { } // if (_selectedgendertype.isNotEmpty) { // Get.toNamed(RouteName.individualprofilestep1); - + // // Get.to(() => BusinessPage()); // } else { // // Handle case where no selection is made diff --git a/lib/onboarding/Signup/View/communitycommitment.dart b/lib/onboarding/Signup/View/communitycommitment.dart index 7c441c5..f159ae1 100644 --- a/lib/onboarding/Signup/View/communitycommitment.dart +++ b/lib/onboarding/Signup/View/communitycommitment.dart @@ -1,9 +1,9 @@ import 'package:flutter/material.dart'; +import 'package:flutter/widgets.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; -import 'package:glassmorphism/glassmorphism.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; + import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/resources/routes/route_name.dart'; @@ -107,7 +107,8 @@ class _CommunitycommitmentState extends State { CustomButton2( text: 'Decline', onPressed: () { - Get.offAllNamed(RouteName.loginScreen); + alertdialogwidget(); + // Get.offAllNamed(RouteName.loginScreen); }) ], ), @@ -115,4 +116,130 @@ class _CommunitycommitmentState extends State { ], )); } + + alertdialogwidget() { + Get.dialog(Dialog( + // backgroundColor: Colors.transparent, + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(10.r), + color: const Color(0xFF222935)), + child: Padding( + padding: EdgeInsets.only( + right: 16.w, left: 16.w, top: 20.h, bottom: 40.h), + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + text16w400_FCFCFC("Are you sure you don’t want to be \nNice?", + textAlign: TextAlign.center), + sizedBoxHeight(16.h), + Row( + children: [ + InkWell( + onTap: () { + Get.back(); + dialogwidget(); + + Future.delayed(Duration(seconds: 2), () { + Get.back(); + Get.toNamed(RouteName.signupendpage); + }); + }, + child: Container( + // width: 120.w, + height: 40.h, + decoration: BoxDecoration( + gradient: LinearGradient( + begin: Alignment.centerLeft, + end: Alignment.centerRight, + colors: [ + Color.fromRGBO(255, 255, 255, 0.036), + Color.fromRGBO(255, 255, 255, 0.048), + ], + ), + border: Border.all( + color: Color(0xFF434A53), + width: 1.0, + ), + borderRadius: BorderRadius.circular(30.r)), + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 10.w), + child: + Center(child: text14400white("Yes, I am evil")), + ), + ), + ), + Spacer(), + GestureDetector( + onTap: () { + Get.toNamed(RouteName.signupendpage); + }, + child: Container( + // height: 40.h, + // width: 120.w, + decoration: BoxDecoration( + color: Color(0xFFD90B2E), + borderRadius: BorderRadius.circular(30.r), + ), + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 20.w), + child: Center( + child: text14w400_FCFCFC( + "No, I want \nto be Nice")), + ), + ), + ) + ], + ) + ], + ), + ), + ), + ], + ), + )); + } + + dialogwidget() { + Get.dialog(Dialog( + // backgroundColor: Colors.transparent, + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(10.r), + color: const Color(0xFF222935)), + child: Padding( + padding: EdgeInsets.only( + right: 80.w, left: 80.w, top: 20.h, bottom: 40.h), + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Image.asset( + "assets/images/png/Group 1000004420.png", + height: 66.h, + width: 66.w, + ), + sizedBoxHeight(14.w), + SizedBox( + width: 182.w, + child: text16w400_FCFCFC( + "Nah, I know you’re nice person...", + textAlign: TextAlign.center), + ), + sizedBoxHeight(16.h), + ], + ), + ), + ), + ], + ), + )); + } } diff --git a/lib/onboarding/Signup/View/signupendpage.dart b/lib/onboarding/Signup/View/signupendpage.dart index 0fed976..7c23f13 100644 --- a/lib/onboarding/Signup/View/signupendpage.dart +++ b/lib/onboarding/Signup/View/signupendpage.dart @@ -27,54 +27,40 @@ class _SignupendPageState extends State { fit: BoxFit.fill)), ), Center( - child: Container( - width: 358.w, - height: 519.h, - decoration: ShapeDecoration( - gradient: LinearGradient( - begin: const Alignment(0.98, -0.21), - end: const Alignment(-0.98, 0.21), - colors: [ - Colors.white.withOpacity(0.05999999865889549), - Colors.white.withOpacity(0.07999999821186066) - ], - ), - shape: RoundedRectangleBorder( - side: const BorderSide(width: 0.80, color: Color(0xFF434A53)), - borderRadius: BorderRadius.circular(5), - ), - ), - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 30.h), - child: Column( - crossAxisAlignment: CrossAxisAlignment.center, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image.asset('assets/images/png/regroupredtexticon.png'), - sizedBoxHeight(30.h), - text25700white('Welcome Edward '), - sizedBoxHeight(20.h), - // text16400white( - // '''Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.'''), - Text( - '''Congratulations, your account has been successfully created. Get ready to regroup with your community''', - textAlign: TextAlign.center, - style: TextStyle( - color: const Color(0xCCFCFCFC), - fontSize: 16.sp, - fontFamily: 'Helvetica', - fontWeight: FontWeight.w400, - ), + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 30.h), + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image.asset('assets/images/png/regroupredtexticon.png'), + sizedBoxHeight(30.h), + text25700white('Welcome Edward '), + sizedBoxHeight(20.h), + // text16400white( + // '''Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book.'''), + SizedBox( + width: 246.w, + child: Text( + '''Your account is now active. Welcome to the ReGroup community''', + textAlign: TextAlign.center, + style: TextStyle( + color: const Color(0xCCFCFCFC), + fontSize: 16.sp, + fontFamily: 'Helvetica', + fontWeight: FontWeight.w400, ), - sizedBoxHeight(20.h), - CustomButton( - text: "Let's begin", - onPressed: () { - Get.toNamed(RouteName.mainscreen); - }) - ], + ), ), - )), + sizedBoxHeight(20.h), + CustomButton( + text: "Let's begin", + onPressed: () { + Get.toNamed(RouteName.mainscreen); + }) + ], + ), + ), ) ], )); diff --git a/lib/onboarding/forgotPass/View/ForgotOtp.dart b/lib/onboarding/forgotPass/View/ForgotOtp.dart index 918b4e3..b1baee3 100644 --- a/lib/onboarding/forgotPass/View/ForgotOtp.dart +++ b/lib/onboarding/forgotPass/View/ForgotOtp.dart @@ -2,12 +2,10 @@ import 'package:flutter/material.dart'; import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; -import 'package:glassmorphism/glassmorphism.dart'; import 'package:pin_code_fields/pin_code_fields.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Utils/Common/CommonAppbar.dart'; import 'package:regroup/Utils/Common/CustomNextButton.dart'; -import 'package:regroup/Utils/Common/blureffect.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; import 'package:regroup/onboarding/forgotPass/ViewModel/ForgotPassAPI.dart'; @@ -87,45 +85,14 @@ TextEditingController? pincode = TextEditingController(); ), body: Stack( children: [ - // CommonBlurLeftSecond(), - Positioned(top: 150, right: -30, child: CommonBlurRightSecond()), - Positioned(top: 350, left: -30, child: CommonBlurLeftBlue()), - GlassmorphicContainer( - width: MediaQuery.of(context).size.width, - height: - // 500.h, - MediaQuery.of(context).size.height, - borderRadius: 2, - blur: 6, - alignment: Alignment.bottomLeft, - border: 2, - linearGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), - Color(0XFF222935).withOpacity(0.60), - - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - ], - ), - borderGradient: LinearGradient( - begin: Alignment.topCenter, - end: Alignment.bottomCenter, - colors: [ - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - // Color.fromARGB(255, 18, 32, 47).withOpacity(0.50), - Color(0XFF222935).withOpacity(0.60), - - Color(0XFF222935).withOpacity(0.60), - ], - ), - child: Padding( + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill)), + ), + + Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), child: Column( crossAxisAlignment: CrossAxisAlignment.start, @@ -220,9 +187,9 @@ TextEditingController? pincode = TextEditingController(); ), ], ), - )), - ], - ), - );; + )],), + + ); + } } \ No newline at end of file diff --git a/lib/resources/routes/route_name.dart b/lib/resources/routes/route_name.dart index 49dfdfd..ebb1e53 100644 --- a/lib/resources/routes/route_name.dart +++ b/lib/resources/routes/route_name.dart @@ -14,6 +14,8 @@ class RouteName { static const String individualactivitystep2 = '/individualactivitystep2'; static const String individualgroupstep3 = '/individualgroupstep3'; static const String individualcommunitystep4 = '/individualcommunitystep4'; + static const String findcommunitypage = '/findcommunitypage'; + static const String communitycommitscreen = '/communitycommitscreen'; static const String signupendpage = '/signupendpage'; diff --git a/lib/resources/routes/routes.dart b/lib/resources/routes/routes.dart index 12a47a7..66c203f 100644 --- a/lib/resources/routes/routes.dart +++ b/lib/resources/routes/routes.dart @@ -95,6 +95,7 @@ import 'package:regroup/onboarding/Signup/View/Business/View/step1Letusunderstan import 'package:regroup/onboarding/Signup/View/Business/View/step2Selectgroup.dart'; import 'package:regroup/onboarding/Signup/View/Business/View/step3SelectCommunity.dart'; import 'package:regroup/onboarding/Signup/View/Business/View/tellusbusiness.dart'; +import 'package:regroup/onboarding/Signup/View/Individual/FindCommunityPage.dart'; import 'package:regroup/onboarding/Signup/View/Individual/step1Selectprofile.dart'; import 'package:regroup/onboarding/Signup/View/Individual/step2Selectactivity.dart'; import 'package:regroup/onboarding/Signup/View/Individual/step3Selectyourgroup.dart'; @@ -207,6 +208,10 @@ class AppRoutes { GetPage( name: RouteName.individualcommunitystep4, page: () => const SelectIndividualCommunity(), + ), + GetPage( + name: RouteName.findcommunitypage, + page: () => const FindCommunityPage(), ), GetPage( name: RouteName.communitycommitscreen, From 1fd6475a9df838de7846da16c1c32f39c00edd00 Mon Sep 17 00:00:00 2001 From: jayesh Date: Thu, 1 Aug 2024 13:57:46 +0530 Subject: [PATCH 07/11] merge this branch i have taken pull --- lib/Main_Screens/Community/Community.dart | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/Main_Screens/Community/Community.dart b/lib/Main_Screens/Community/Community.dart index 2d98553..91e0572 100644 --- a/lib/Main_Screens/Community/Community.dart +++ b/lib/Main_Screens/Community/Community.dart @@ -158,7 +158,8 @@ class _CommunityScreenState extends State { child: Image.asset( "assets/images/png/iconamoon_edit-thin.png", height: 30.h, - width: 30.w, + width: 30.w + , ), ), ), From e77c766fa07a79254b8ee9366445f48ae11facaa Mon Sep 17 00:00:00 2001 From: jayesh Date: Thu, 1 Aug 2024 15:19:34 +0530 Subject: [PATCH 08/11] revert changes of community latest post api --- lib/Main_Screens/Community/Community.dart | 486 +++++++++++------- .../Community/Model/LatestPostModel.dart | 183 +++++++ .../Community/ViewModel/LatestPost.dart | 26 + lib/main.dart | 4 +- 4 files changed, 510 insertions(+), 189 deletions(-) create mode 100644 lib/Main_Screens/Community/Model/LatestPostModel.dart create mode 100644 lib/Main_Screens/Community/ViewModel/LatestPost.dart diff --git a/lib/Main_Screens/Community/Community.dart b/lib/Main_Screens/Community/Community.dart index 91e0572..4f269bc 100644 --- a/lib/Main_Screens/Community/Community.dart +++ b/lib/Main_Screens/Community/Community.dart @@ -1,3 +1,5 @@ +// ignore_for_file: unused_local_variable, non_constant_identifier_names, avoid_print, file_names + import 'package:flutter/material.dart'; import 'package:flutter_reaction_button/flutter_reaction_button.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; @@ -7,6 +9,7 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonTabBar.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/controller/MainScreen.dart'; +import 'package:regroup/Feed%20Module/Main_Screens/Community/ViewModal/LatesPost.dart'; // import 'package:regroup/Feed%20Module/sidemenu/sidemenu.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; @@ -87,10 +90,7 @@ class _CommunityScreenState extends State { sizedBoxWidth(16.w), ], ), - body: - - - Stack(clipBehavior: Clip.none, children: [ + body: Stack(clipBehavior: Clip.none, children: [ Container( decoration: const BoxDecoration( image: DecorationImage( @@ -122,9 +122,9 @@ class _CommunityScreenState extends State { Expanded( child: TabBarView( children: [ - feedTab(), + feedTabData(), popularTab(), - latestTab(), + const LatestTab(), ], ), ), @@ -158,8 +158,7 @@ class _CommunityScreenState extends State { child: Image.asset( "assets/images/png/iconamoon_edit-thin.png", height: 30.h, - width: 30.w - , + width: 30.w, ), ), ), @@ -169,13 +168,19 @@ class _CommunityScreenState extends State { } } -Widget feedTab() { +Widget feedTabData() { List feedTabData = [ { "profileImg": "assets/images/png/Ellipse 43.png", "title": "Edward Hackket", "mainImg": "assets/images/png/Rectangle 24.png", "containerTitle": ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events'], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -188,6 +193,12 @@ Widget feedTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -200,6 +211,12 @@ Widget feedTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -212,75 +229,58 @@ Widget feedTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, ]; - return Column(children: [ - sizedBoxHeight(16.h), - Expanded( - child: ListView.builder( - shrinkWrap: true, - itemCount: feedTabData.length, - itemBuilder: (context, index) { - if (index == 1) { - return announcecardtile( - profileImg: 'assets/images/png/Ellipse 48.png', - title: 'Jocelyn Dokidis', - mainImg: 'assets/images/png/Rectangle 46.png', - containerTitle: [ - 'Race', - 'Swimming', - 'Events', - 'Marathon', - 'Events' - ]); - } else { + return Column( + children: [ + sizedBoxHeight(20.h), + Expanded( + child: ListView.builder( + shrinkWrap: true, + itemCount: feedTabData.length, + itemBuilder: (context, index) { return Column( children: [ normalcardtile2( - profileImg: feedTabData[index]["profileImg"], - title: feedTabData[index]["title"], - mainImg: feedTabData[index]["mainImg"], - containerTitle: feedTabData[index]["containerTitle"]), + profileImg: feedTabData[index]["profileImg"], + title: feedTabData[index]["title"], + mainImg: feedTabData[index]["mainImg"], + containerTitle: feedTabData[index]["containerTitle"], + description: 'test', + create_at: '1 hour', + total_comments: '20', + total_likes: '20', + total_save: '10', + community_name: 'text', + ), sizedBoxHeight(20.h) ], ); - } - }, + }, + ), ), - ), - // normalcardtile2( - // profileImg: 'assets/images/png/Ellipse 43.png', - // title: 'Edward Hackket', - // mainImg: 'assets/images/png/Rectangle 24.png', - // containerTitle: ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events']), - // sizedBoxHeight(20.h), - // announcecardtile( - // profileImg: 'assets/images/png/Ellipse 48.png', - // title: 'Jocelyn Dokidis', - // mainImg: 'assets/images/png/Rectangle 46.png', - // containerTitle: ['Race', 'Swimming', 'Events', 'Marathon', 'Events']), - // sizedBoxHeight(20.h), - // normalcardtile2( - // profileImg: 'assets/images/png/Ellipse 52.png', - // title: 'Ryan Dorwat', - // mainImg: 'assets/images/png/Rectangle 25.png', - // containerTitle: [ - // 'Football', - // 'Teams player', - // 'Events', - // 'Marathon', - // 'Events' - // ]), - // sizedBoxHeight(20.h), - ]); + ], + ); } Widget normalcardtile2({ required String profileImg, required String title, required String mainImg, + required String description, required List containerTitle, + required String community_name, + required String total_comments, + required String total_likes, + required String total_save, + required String? create_at, }) { var mainImage = 'assets/images/png/uiw_like-o.png'.obs; void updateImage(String reaction) { @@ -295,7 +295,7 @@ Widget normalcardtile2({ return commonGlassUI( width: double.infinity, - height: 570.h, + height: 760.h, mainOpacity: 1, borderRadius: BorderRadius.circular(1), customWidget: Column( @@ -307,7 +307,7 @@ Widget normalcardtile2({ crossAxisAlignment: CrossAxisAlignment.start, children: [ CircleAvatar( - foregroundImage: AssetImage(profileImg), + foregroundImage: NetworkImage(profileImg), radius: 25.r, ), sizedBoxWidth(12.w), @@ -324,7 +324,7 @@ Widget normalcardtile2({ width: 14.w, ), sizedBoxWidth(7.w), - text12w400_FCFCFC('Active alliance network'), + text12w400_FCFCFC(community_name), sizedBoxWidth(7.w), Icon( Icons.circle, @@ -332,7 +332,7 @@ Widget normalcardtile2({ size: 4.sp, ), sizedBoxWidth(6.w), - text12w400_FCFCFC('1 Hour ago'), + text12w400_FCFCFC(create_at!), ], ) ], @@ -435,17 +435,21 @@ Widget normalcardtile2({ ), sizedBoxHeight(20.h), GestureDetector( - onTap: () { - Get.toNamed(RouteName.postdetailsScreen); - }, - child: SizedBox( - height: 163.h, - width: double.infinity, - child: Image.asset( + onTap: () { + Get.toNamed(RouteName.postdetailsScreen); + }, + child: Container( + height: 360, + width: double.infinity, + decoration: BoxDecoration( + image: DecorationImage( + fit: BoxFit.cover, + image: NetworkImage( mainImg, - fit: BoxFit.cover, ), )), + ), + ), sizedBoxHeight(20.h), Padding( padding: EdgeInsets.symmetric(horizontal: 16.w), @@ -470,14 +474,21 @@ Widget normalcardtile2({ ), ), sizedBoxHeight(20.h), - text16w400_FCFCFC( - "Lorem Ipsum has been the industry's standard dummy text ever since the 1500s . . ."), + SizedBox( + width: double.infinity, + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + text16w400_FCFCFC(description), + ], + ), + ), Row(children: [ InkWell( onTap: () { Get.toNamed(RouteName.reactionview); }, - child: stackReaction(number: '20', containerImages: [ + child: stackReaction(number: total_likes, containerImages: [ 'assets/images/png/f7_hand-thumbsup.png', 'assets/images/png/heart 2.png', 'assets/images/png/party-popper 2.png' @@ -501,7 +512,7 @@ Widget normalcardtile2({ ), ), sizedBoxWidth(12.w), - text14w400_FCFCFC('20'), + text14w400_FCFCFC(total_comments), sizedBoxWidth(20.w), commonContainer( width: 30.w, @@ -520,7 +531,7 @@ Widget normalcardtile2({ ), ), sizedBoxWidth(12.w), - text14w400_FCFCFC('10'), + text14w400_FCFCFC(total_save), ]), sizedBoxHeight(12.h), commonDivider(), @@ -641,11 +652,11 @@ Widget normalcardtile({ } } - return commonGlassUI( + return commonGlassContainer( width: double.infinity, height: 570.h, - borderwidth: 0, - borderRadius: BorderRadius.circular( 1), + border: 0, + borderradius: 1, customWidget: Column( children: [ sizedBoxHeight(25.h), @@ -832,13 +843,13 @@ Widget normalcardtile({ ]), ), const Spacer(), - commonGlassUI( - borderwidth: 0.43, + commonGlassContainer( + border: 0.43, width: 30.w, height: 30.h, opacity1: 0.05, opacity2: 0.06, - borderRadius: BorderRadius.circular( 100), + borderradius: 100, customWidget: Center( child: Image.asset( 'assets/images/png/Frame 1000004088.png', @@ -850,11 +861,11 @@ Widget normalcardtile({ sizedBoxWidth(12.w), text14w400_FCFCFC('20'), sizedBoxWidth(20.w), - commonGlassUI( - borderwidth: 0.43, + commonGlassContainer( + border: 0.43, width: 30.w, height: 30.h, - borderRadius: BorderRadius.circular( 100), + borderradius: 100, opacity1: 0.05, opacity2: 0.06, customWidget: Center( @@ -1354,11 +1365,11 @@ Widget _buildReactionsIcon(String assetPath) { } Widget containertile({required String text}) { - return commonGlassUI( - borderwidth: 1, + return commonGlassContainer( + border: 1, width: 130.w, height: 30.h, - borderRadius: BorderRadius.circular( 30.r), + borderradius: 30.r, borderColor: const Color(0xFFD90B2E), customWidget: Padding( padding: EdgeInsets.symmetric(horizontal: 10.w), @@ -1387,6 +1398,12 @@ Widget popularTab() { "title": "Edward Hackket", "mainImg": "assets/images/png/Rectangle 24.png", "containerTitle": ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events'], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -1399,6 +1416,12 @@ Widget popularTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -1411,6 +1434,12 @@ Widget popularTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, { "profileImg": "assets/images/png/Ellipse 52.png", @@ -1423,6 +1452,12 @@ Widget popularTab() { 'Marathon', 'Events' ], + "desciption": "", + "create_at": '1 hour', + "total_comments": 20, + "total_likes": 20, + "total_save": 10, + "community_name": 'text', }, ]; @@ -1437,10 +1472,17 @@ Widget popularTab() { return Column( children: [ normalcardtile2( - profileImg: popularTabData[index]["profileImg"], - title: popularTabData[index]["title"], - mainImg: popularTabData[index]["mainImg"], - containerTitle: popularTabData[index]["containerTitle"]), + profileImg: popularTabData[index]["profileImg"], + title: popularTabData[index]["title"], + mainImg: popularTabData[index]["mainImg"], + containerTitle: popularTabData[index]["containerTitle"], + description: 'test', + create_at: '1 hour', + total_comments: '20', + total_likes: '20', + total_save: '10', + community_name: 'text', + ), sizedBoxHeight(20.h) ], ); @@ -1451,98 +1493,168 @@ Widget popularTab() { ); } -Widget latestTab() { - List latestTabData = [ - { - "profileImg": "assets/images/png/Ellipse 43.png", - "title": "Edward Hackket", - "mainImg": "assets/images/png/Rectangle 24.png", - "containerTitle": ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events'], - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - }, - ]; +class LatestTab extends StatefulWidget { + const LatestTab({super.key}); - return Column(children: [ - sizedBoxHeight(16.h), - Expanded( - child: ListView.builder( - shrinkWrap: true, - itemCount: latestTabData.length, - itemBuilder: (context, index) { - if (index == 1) { - return announcecardtile( - profileImg: 'assets/images/png/Ellipse 48.png', - title: 'Jocelyn Dokidis', - mainImg: 'assets/images/png/Rectangle 46.png', - containerTitle: [ - 'Race', - 'Swimming', - 'Events', - 'Marathon', - 'Events' - ]); - } else { - return Column( - children: [ - normalcardtile2( - profileImg: latestTabData[index]["profileImg"], - title: latestTabData[index]["title"], - mainImg: latestTabData[index]["mainImg"], - containerTitle: latestTabData[index]["containerTitle"]), - sizedBoxHeight(20.h) - ], - ); - } - }, - ), - ), - - // normalcardtile2( - // profileImg: 'assets/images/png/Ellipse 43.png', - // title: 'Edward Hackket', - // mainImg: 'assets/images/png/Rectangle 24.png', - // containerTitle: ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events']), - // sizedBoxHeight(20.h), - // announcecardtile( - // profileImg: 'assets/images/png/Ellipse 48.png', - // title: 'Jocelyn Dokidis', - // mainImg: 'assets/images/png/Rectangle 46.png', - // containerTitle: ['Race', 'Swimming', 'Events', 'Marathon', 'Events']), - // sizedBoxHeight(20.h), - ]); + @override + State createState() => _LatestTabState(); +} + +class _LatestTabState extends State { + late Future latestfuture; + + @override + void initState() { + latestfuture = LatespostApi().getLatestPostApi(); + super.initState(); + } + + @override + Widget build(BuildContext context) { + return FutureBuilder( + future: latestfuture, + builder: (ctx, snapshot) { + if (snapshot.connectionState == ConnectionState.waiting) { + return + // ShimmerCommon(); + const Center( + child: CircularProgressIndicator( + color: Colors.blue, + ), + ); + } + + if (snapshot.hasError) { + return Center( + child: Text( + '${snapshot.error} occurred', + style: TextStyle(fontSize: 18.spMin), + ), + ); + } + + if (snapshot.connectionState == ConnectionState.done && + snapshot.hasData) { + print("Data fetched-->"); + + return Stack( + clipBehavior: Clip.none, + children: [ + Container( + decoration: const BoxDecoration( + image: DecorationImage( + image: AssetImage("assets/images/png/Ellipse 1496.png"), + fit: BoxFit.fill), + ), + ), + Column( + children: [ + sizedBoxHeight(16.h), + Expanded( + child: ListView.builder( + shrinkWrap: true, + itemCount: latestpostobj!.data!.length, + itemBuilder: (context, index) { + if (index == 1) { + return announcecardtile( + profileImg: latestpostobj!.data![index] + .iamPrincipal!.profilePhoto ?? + '', + title: latestpostobj!.data![index].caption ?? '', + mainImg: 'assets/images/png/Rectangle 46.png', + containerTitle: [ + 'Race', + 'Swimming', + 'Events', + 'Marathon', + 'Events' + ]); + } else { + String? createAtstring = + latestpostobj!.data![index].createdAt; + if (createAtstring == null || + createAtstring.isEmpty) { + createAtstring = DateTime.now().toIso8601String(); + } + String? timeAgo; + + try { + DateTime postDateTime = + DateTime.parse(createAtstring); + DateTime now = DateTime.now(); + Duration difference = now.difference(postDateTime); + if (difference.inDays > 365) { + timeAgo = + '${(difference.inDays / 365).floor()} years ago'; + } else if (difference.inDays > 30) { + timeAgo = + '${(difference.inDays / 30).floor()} months ago'; + } else if (difference.inDays > 7) { + timeAgo = + '${(difference.inDays / 7).floor()} weeks ago'; + } else if (difference.inDays > 0) { + timeAgo = '${difference.inDays} days ago'; + } else if (difference.inHours > 0) { + timeAgo = '${difference.inHours} hours ago'; + } else if (difference.inMinutes > 0) { + timeAgo = '${difference.inMinutes} minutes ago'; + } else { + timeAgo = '${difference.inSeconds} seconds ago'; + } + print("Time ago: $timeAgo"); + } catch (e) { + print("Error parsing date: $e"); + String timeAgo = 'Unknown'; + } + + return Column( + children: [ + normalcardtile2( + profileImg: latestpostobj!.data![index] + .iamPrincipal!.profilePhoto ?? + '', + title: latestpostobj! + .data![index].iamPrincipal!.fullName ?? + '', + mainImg: + latestpostobj!.data![index].image ?? '', + containerTitle: + latestpostobj!.data![index].tagNames ?? + [''], + description: + latestpostobj!.data![index].caption ?? '', + create_at: timeAgo, + total_comments: latestpostobj! + .data![index].totalComment + .toString() ?? + '', + total_likes: latestpostobj! + .data![index].likecount + .toString() ?? + '', + total_save: latestpostobj! + .data![index].totalSave + .toString() ?? + '', + community_name: latestpostobj! + .data![index].community!.communityName + .toString() ?? + '', + ), + sizedBoxHeight(20.h) + ], + ); + } + }, + ), + ), + ], + ), + ], + ); + } + return Container(); + }, + ); + } } diff --git a/lib/Main_Screens/Community/Model/LatestPostModel.dart b/lib/Main_Screens/Community/Model/LatestPostModel.dart new file mode 100644 index 0000000..f9e6f25 --- /dev/null +++ b/lib/Main_Screens/Community/Model/LatestPostModel.dart @@ -0,0 +1,183 @@ +class Latestpost { + String? status; + int? statusCode; + String? message; + List? data; + + Latestpost({this.status, this.statusCode, this.message, this.data}); + + Latestpost.fromJson(Map json) { + status = json['status']; + statusCode = json['status_code']; + message = json['message']; + if (json['data'] != null) { + data = []; + json['data'].forEach((v) { + data!.add(Data.fromJson(v)); + }); + } + } + + Map toJson() { + final Map data = {}; + data['status'] = status; + data['status_code'] = statusCode; + data['message'] = message; + if (this.data != null) { + data['data'] = this.data!.map((v) => v.toJson()).toList(); + } + return data; + } +} + +class Data { + int? id; + int? likecount; + List? tagsXid; + bool? isILiked; + int? totalComment; + int? totalSave; + int? iamPrincipalXid; + int? postIn; + String? caption; + String? image; + String? manageTagsXids; + String? postAs; + String? ctaTitle; + String? ctaLink; + String? createdAt; + List? tagNames; + String? likeIcon; + IamPrincipal? iamPrincipal; + Community? community; + + Data( + {this.id, + this.likecount, + this.tagsXid, + this.isILiked, + this.totalComment, + this.totalSave, + this.iamPrincipalXid, + this.postIn, + this.caption, + this.image, + this.manageTagsXids, + this.postAs, + this.ctaTitle, + this.ctaLink, + this.createdAt, + this.tagNames, + this.likeIcon, + this.iamPrincipal, + this.community}); + + Data.fromJson(Map json) { + id = json['id']; + likecount = json['likecount']; + tagsXid = json['tags_xid'].cast(); + isILiked = json['is_i_liked']; + totalComment = json['total_comment']; + totalSave = json['total_save']; + iamPrincipalXid = json['iam_principal_xid']; + postIn = json['post_in']; + caption = json['caption']; + image = json['image']; + manageTagsXids = json['manage_tags_xids']; + postAs = json['post_as']; + ctaTitle = json['cta_title']; + ctaLink = json['cta_link']; + createdAt = json['created_at']; + tagNames = json['tag_names'].cast(); + likeIcon = json['likeIcon']; + iamPrincipal = json['iam_principal'] != null + ? IamPrincipal.fromJson(json['iam_principal']) + : null; + community = json['community'] != null + ? Community.fromJson(json['community']) + : null; + } + + Map toJson() { + final Map data = {}; + data['id'] = id; + data['likecount'] = likecount; + data['tags_xid'] = tagsXid; + data['is_i_liked'] = isILiked; + data['total_comment'] = totalComment; + data['total_save'] = totalSave; + data['iam_principal_xid'] = iamPrincipalXid; + data['post_in'] = postIn; + data['caption'] = caption; + data['image'] = image; + data['manage_tags_xids'] = manageTagsXids; + data['post_as'] = postAs; + data['cta_title'] = ctaTitle; + data['cta_link'] = ctaLink; + data['created_at'] = createdAt; + data['tag_names'] = tagNames; + data['likeIcon'] = likeIcon; + if (iamPrincipal != null) { + data['iam_principal'] = iamPrincipal!.toJson(); + } + if (community != null) { + data['community'] = community!.toJson(); + } + return data; + } +} + +class IamPrincipal { + int? id; + int? principalTypeXid; + String? userName; + String? fullName; + String? profilePhoto; + + IamPrincipal( + {this.id, + this.principalTypeXid, + this.userName, + this.fullName, + this.profilePhoto}); + + IamPrincipal.fromJson(Map json) { + id = json['id']; + principalTypeXid = json['principal_type_xid']; + userName = json['user_name']; + fullName = json['full_name']; + profilePhoto = json['profile_photo']; + } + + Map toJson() { + final Map data = {}; + data['id'] = id; + data['principal_type_xid'] = principalTypeXid; + data['user_name'] = userName; + data['full_name'] = fullName; + data['profile_photo'] = profilePhoto; + return data; + } +} + +class Community { + int? id; + String? communityProfilePhoto; + String? communityName; + + Community({this.id, this.communityProfilePhoto, this.communityName}); + + Community.fromJson(Map json) { + id = json['id']; + communityProfilePhoto = json['community_profile_photo']; + communityName = json['community_name']; + } + + Map toJson() { + final Map data = {}; + data['id'] = id; + data['community_profile_photo'] = communityProfilePhoto; + data['community_name'] = communityName; + return data; + } +} diff --git a/lib/Main_Screens/Community/ViewModel/LatestPost.dart b/lib/Main_Screens/Community/ViewModel/LatestPost.dart new file mode 100644 index 0000000..c5593a1 --- /dev/null +++ b/lib/Main_Screens/Community/ViewModel/LatestPost.dart @@ -0,0 +1,26 @@ +import 'package:regroup/Common/api_urls.dart'; +import 'package:regroup/Common/base_manager.dart'; +import 'package:regroup/Common/controller/data/network/network_api.dart'; +import 'package:regroup/Feed%20Module/Main_Screens/Community/Modal/LatestPost.dart'; + +Latestpost? latestpostobj; + +class LatespostApi { + LatespostApi(); + + Future> getLatestPostApi() async { + final response = await NetworkApiServices().getApi(ApiUrls.latestpost); + + if (response.status == ResponseStatus.SUCCESS) { + if (response.data["status"] == "success") { + latestpostobj = Latestpost.fromJson(response.data); + } + return ResponseData( + response.data['message'], ResponseStatus.SUCCESS, + data: response.data); + } else { + return ResponseData( + response.data['message'], ResponseStatus.FAILED); + } + } +} \ No newline at end of file diff --git a/lib/main.dart b/lib/main.dart index 94915d5..3feeffa 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,5 +1,6 @@ import 'dart:async'; import 'dart:io'; + import 'package:connectivity_plus/connectivity_plus.dart'; import 'package:device_info_plus/device_info_plus.dart'; import 'package:firebase_core/firebase_core.dart'; @@ -9,7 +10,6 @@ import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:permission_handler/permission_handler.dart'; import 'package:regroup/Utils/dialogs.dart'; -import 'package:regroup/Utils/Common/NoInternet.dart'; import 'package:regroup/firebase_options.dart'; import 'package:regroup/resources/routes/route_name.dart'; import 'package:regroup/resources/routes/routes.dart'; @@ -123,7 +123,7 @@ class _MyAppState extends State with WidgetsBindingObserver { ), debugShowCheckedModeBanner: false, // initialRoute: RouteName.individualactivitystep2, - initialRoute: RouteName.individualactivitystep2, + initialRoute: RouteName.splashScreen, getPages: AppRoutes.appRoutes(), ), From 716c2c219b60577540a3536123db136525682e87 Mon Sep 17 00:00:00 2001 From: Dakshesh42 Date: Thu, 1 Aug 2024 15:21:47 +0530 Subject: [PATCH 09/11] ui changes of onboard done --- lib/main.dart | 2 +- .../View/Individual/step2Selectactivity.dart | 225 +++++++++--------- 2 files changed, 120 insertions(+), 107 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index 94915d5..765bb4c 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -123,7 +123,7 @@ class _MyAppState extends State with WidgetsBindingObserver { ), debugShowCheckedModeBanner: false, // initialRoute: RouteName.individualactivitystep2, - initialRoute: RouteName.individualactivitystep2, + initialRoute: RouteName.mainscreen, getPages: AppRoutes.appRoutes(), ), diff --git a/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart b/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart index 2903f56..b381b2f 100644 --- a/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart +++ b/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; +import 'package:flutter/services.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonButton.dart'; @@ -11,6 +12,7 @@ import 'package:regroup/Utils/texts.dart'; import 'package:regroup/onboarding/Signup/view_model/getmethod.dart'; import 'package:regroup/onboarding/Signup/view_model/postmethod.dart'; import 'package:regroup/resources/routes/route_name.dart'; +import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart'; int? _firstSelectedIndex; bool _isFirstSelectionActive = false; @@ -427,108 +429,121 @@ class _SelectIndividualActivityState extends State { children: [Text("No Data Found")], ); } -} -interestdialogwidget() { - Get.dialog(Dialog( - // backgroundColor: Colors.transparent, - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Container( - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(10.r), - color: const Color(0xFF222935)), - child: Padding( - padding: EdgeInsets.only( - right: 16.w, left: 16.w, top: 20.h, bottom: 40.h), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: [ - Spacer(), - Image.asset( - "assets/images/png/x-circle.png", - height: 28.h, - width: 28.w, - ) - ], - ), - text16w700_FCFCFC("Suggest interest"), - sizedBoxHeight(16.h), - Center( - child: CustomTextFormField( - hintText: "Please type your interest", - )), - sizedBoxHeight(10.h), - text10w400_FCFCFC_blur("We will surely make this happen"), - sizedBoxHeight(20.h), - Align( - alignment: Alignment.center, - child: SizedBox( - width: 177.w, - child: CommonBtn( - text: "Suggest", - onTap: () { - Get.back(); - thankdialogwidget(); - })), - ) - ], + interestdialogwidget() { + Get.dialog(Dialog( + // backgroundColor: Colors.transparent, + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(10.r), + color: const Color(0xFF222935)), + child: Padding( + padding: EdgeInsets.only( + right: 16.w, left: 16.w, top: 20.h, bottom: 40.h), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Row( + children: [ + Spacer(), + Image.asset( + "assets/images/png/x-circle.png", + height: 28.h, + width: 28.w, + ) + ], + ), + text16w700_FCFCFC("Suggest interest"), + sizedBoxHeight(16.h), + Center( + child: CustomTextFormField( + textEditingController: otheractivitycontroller, + hintText: "Please type your interest", + texttype: TextInputType.text, + validator: (value) { + if (value!.isEmpty) { + return 'Enter your full name '; + } + return null; + }, + inputFormatters: [ + // LengthLimitingTextInputFormatter(20), + RemoveEmojiInputFormatter(), + FilteringTextInputFormatter.allow(RegExp('[a-zA-Z ]')) + ], + )), + sizedBoxHeight(10.h), + text10w400_FCFCFC_blur("We will surely make this happen"), + sizedBoxHeight(20.h), + Align( + alignment: Alignment.center, + child: SizedBox( + width: 177.w, + child: CommonBtn( + text: "Suggest", + onTap: () { + Get.back(); + thankdialogwidget(); + })), + ) + ], + ), ), ), - ), - ], - ), - )); -} + ], + ), + )); + } -thankdialogwidget() { - Get.dialog(Dialog( - // backgroundColor: Colors.transparent, - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Container( - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(10.r), - color: const Color(0xFF222935)), - child: Padding( - padding: EdgeInsets.only( - right: 16.w, left: 16.w, top: 20.h, bottom: 40.h), - child: Column( - crossAxisAlignment: CrossAxisAlignment.center, - children: [ - Row( - children: [ - Spacer(), - Image.asset( - "assets/images/png/x-circle.png", - height: 28.h, - width: 28.w, - ) - ], - ), - Image.asset( - "assets/images/png/correct 1.png", - height: 72.h, - width: 72.w, - ), - sizedBoxHeight(20.h), - text16w700_FCFCFC( - "Thank You! \n for adding one more to the club", - textAlign: TextAlign.center), - sizedBoxHeight(16.h), - ], + thankdialogwidget() { + Get.dialog(Dialog( + // backgroundColor: Colors.transparent, + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Container( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(10.r), + color: const Color(0xFF222935)), + child: Padding( + padding: EdgeInsets.only( + right: 16.w, left: 16.w, top: 20.h, bottom: 40.h), + child: Column( + crossAxisAlignment: CrossAxisAlignment.center, + children: [ + Row( + children: [ + Spacer(), + Image.asset( + "assets/images/png/x-circle.png", + height: 28.h, + width: 28.w, + ) + ], + ), + Image.asset( + "assets/images/png/correct 1.png", + height: 72.h, + width: 72.w, + ), + sizedBoxHeight(20.h), + text16w700_FCFCFC( + "Thank You! \n for adding one more to the club", + textAlign: TextAlign.center), + sizedBoxHeight(16.h), + ], + ), ), ), - ), - ], - ), - )); + ], + ), + )); + } } class ActivityContainer extends StatelessWidget { @@ -557,16 +572,16 @@ class ActivityContainer extends StatelessWidget { // height: 120.h, decoration: ShapeDecoration( gradient: LinearGradient( - begin: const Alignment(0.98, -0.21), - end: const Alignment(-0.98, 0.21), + begin: const Alignment(0.98, 0.10), + end: const Alignment(-0.40, -0.70), colors: isSelected ? _firstSelectedIndex == index && _isFirstSelectionActive == true ? [ - gradientColor.withOpacity(0.80), - gradientColor.withOpacity(0.77), - Color(0xFF009DAB).withOpacity(0.66), - Color(0xFF009DAB).withOpacity(0.18), + Color(0xFF009DAB).withOpacity(0.80), + Color(0xFF009DAB).withOpacity(0.77), + gradientColor.withOpacity(0.70), + gradientColor.withOpacity(0.50), ] : [ Colors.white.withOpacity(0.06), @@ -581,11 +596,9 @@ class ActivityContainer extends StatelessWidget { side: isSelected ? _firstSelectedIndex == index && _isFirstSelectionActive == true - ? BorderSide(width: 1.w, color: Color(0xFF434A53)) + ? BorderSide(width: 0.4.w, color: Colors.transparent) : BorderSide(width: 3.w, color: gradientColor) - : BorderSide(width: 3.w, color: gradientColor), - - + : BorderSide(width: 2.w, color: Color(0xFF434A53)), borderRadius: BorderRadius.circular(10), ), ), From dd47ae3508723439834584ce487855b5b28ece6a Mon Sep 17 00:00:00 2001 From: jayesh Date: Thu, 1 Aug 2024 15:57:30 +0530 Subject: [PATCH 10/11] deleted duplicate community --- lib/Common/api_urls.dart | 2 +- .../Main_Screens/Community/Community.dart | 1660 ----------------- .../Community/Modal/LatestPost.dart | 183 -- .../Community/ViewModal/FeedPost.dart | 1 - .../Community/ViewModal/LatesPost.dart | 26 - lib/Main_Screens/Community/Community.dart | 2 +- .../Community/Model/LatestPostModel.dart | 6 +- .../Community/ViewModel/LatestPost.dart | 8 +- 8 files changed, 9 insertions(+), 1879 deletions(-) delete mode 100644 lib/Feed Module/Main_Screens/Community/Community.dart delete mode 100644 lib/Feed Module/Main_Screens/Community/Modal/LatestPost.dart delete mode 100644 lib/Feed Module/Main_Screens/Community/ViewModal/FeedPost.dart delete mode 100644 lib/Feed Module/Main_Screens/Community/ViewModal/LatesPost.dart diff --git a/lib/Common/api_urls.dart b/lib/Common/api_urls.dart index 637a92b..a7ac265 100644 --- a/lib/Common/api_urls.dart +++ b/lib/Common/api_urls.dart @@ -91,7 +91,7 @@ class ApiUrls { static const getblockuser = "${baseUrl}fetch-blocked-profile"; static const postblockuser = "${baseUrl}block-profile"; - static const latestpost = "${baseUrl}fetch-latest-post"; + static const getlatestpost = "${baseUrl}fetch-latest-post"; static const tagcommunityuser = "${baseUrl}fetch-communities-tags-to-pin"; // Individual diff --git a/lib/Feed Module/Main_Screens/Community/Community.dart b/lib/Feed Module/Main_Screens/Community/Community.dart deleted file mode 100644 index 4f269bc..0000000 --- a/lib/Feed Module/Main_Screens/Community/Community.dart +++ /dev/null @@ -1,1660 +0,0 @@ -// ignore_for_file: unused_local_variable, non_constant_identifier_names, avoid_print, file_names - -import 'package:flutter/material.dart'; -import 'package:flutter_reaction_button/flutter_reaction_button.dart'; -import 'package:flutter_screenutil/flutter_screenutil.dart'; -import 'package:get/get.dart'; -import 'package:regroup/Common/CommonBottomNavigationBar.dart'; -import 'package:regroup/Common/CommonGlassmorphism.dart'; -import 'package:regroup/Common/CommonTabBar.dart'; -import 'package:regroup/Common/CommonWidget.dart'; -import 'package:regroup/Common/controller/MainScreen.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Community/ViewModal/LatesPost.dart'; -// import 'package:regroup/Feed%20Module/sidemenu/sidemenu.dart'; -import 'package:regroup/Utils/Common/sized_box.dart'; -import 'package:regroup/Utils/texts.dart'; -import 'package:regroup/resources/routes/route_name.dart'; -import 'package:regroup/sidemenu/sidemenu.dart'; - -class CommunityScreen extends StatefulWidget { - const CommunityScreen({super.key}); - - @override - State createState() => _CommunityScreenState(); -} - -final List titles = [ - 'Race', - 'Swimming', - 'Events', - 'Swimming', - 'Events', -]; - -class _CommunityScreenState extends State { - final GlobalKey _scaffoldKey1 = GlobalKey(); - @override - Widget build(BuildContext context) { - return Scaffold( - resizeToAvoidBottomInset: false, - key: _scaffoldKey1, - backgroundColor: const Color(0xFF222935), - // drawerEnableOpenDragGesture: false, - drawer: SizedBox(width: 300.w, child: const SideMenu()), - extendBody: true, - appBar: AppBar( - scrolledUnderElevation: 0.0, - backgroundColor: const Color(0xff222935), - elevation: 0, - automaticallyImplyLeading: false, - titleSpacing: 0, - leading: InkWell( - onTap: () { - _scaffoldKey1.currentState?.openDrawer(); - }, - child: Center( - child: Image.asset( - 'assets/images/png/menu.png', - height: 15.h, - width: 20.w, - ), - ), - ), - title: Image.asset( - 'assets/images/png/Group.png', - width: 26.w, - height: 25.h, - ), - actions: [ - GestureDetector( - onTap: () { - Get.toNamed(RouteName.explorescreen); - }, - child: Image.asset( - 'assets/images/png/ion_search-outline.png', - height: 25.h, - width: 25.w, - ), - ), - sizedBoxWidth(10.w), - GestureDetector( - onTap: () { - Get.toNamed(RouteName.notificaationpage); - }, - child: Image.asset( - 'assets/images/png/Frame 9.png', - height: 25.h, - width: 25.w, - ), - ), - sizedBoxWidth(16.w), - ], - ), - body: Stack(clipBehavior: Clip.none, children: [ - Container( - decoration: const BoxDecoration( - image: DecorationImage( - fit: BoxFit.fill, - image: AssetImage( - 'assets/images/png/HomeScreenBackground.png', - ))), - ), - Padding( - padding: const EdgeInsets.symmetric(vertical: 16), - child: Column(children: [ - Expanded( - child: DefaultTabController( - length: 3, - // initialIndex: selectedIndex.value, - child: Column( - children: [ - const CommonTabBar(tabs: [ - Tab( - text: 'Feed', - ), - Tab( - text: 'Popular', - ), - Tab( - text: 'Latest', - ), - ]), - Expanded( - child: TabBarView( - children: [ - feedTabData(), - popularTab(), - const LatestTab(), - ], - ), - ), - sizedBoxHeight(90.h) - ], - ), - ), - ), - ])) - ]), - floatingActionButton: Container( - height: 55.h, - width: 55.w, - decoration: const BoxDecoration( - shape: BoxShape.circle, - boxShadow: [ - BoxShadow( - color: Color(0x40000000), // Hex color with 40% opacity - offset: Offset(0, 6), - blurRadius: 8, - ), - ], - ), - child: FloatingActionButton( - onPressed: () { - Get.toNamed(RouteName.postscreen); - }, - backgroundColor: const Color(0xFFD90B2E), - autofocus: true, - shape: const CircleBorder(), - child: Image.asset( - "assets/images/png/iconamoon_edit-thin.png", - height: 30.h, - width: 30.w, - ), - ), - ), - - bottomNavigationBar: bottomnavigationbar(mainController), - ); - } -} - -Widget feedTabData() { - List feedTabData = [ - { - "profileImg": "assets/images/png/Ellipse 43.png", - "title": "Edward Hackket", - "mainImg": "assets/images/png/Rectangle 24.png", - "containerTitle": ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events'], - "desciption": "", - "create_at": '1 hour', - "total_comments": 20, - "total_likes": 20, - "total_save": 10, - "community_name": 'text', - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - "desciption": "", - "create_at": '1 hour', - "total_comments": 20, - "total_likes": 20, - "total_save": 10, - "community_name": 'text', - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - "desciption": "", - "create_at": '1 hour', - "total_comments": 20, - "total_likes": 20, - "total_save": 10, - "community_name": 'text', - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - "desciption": "", - "create_at": '1 hour', - "total_comments": 20, - "total_likes": 20, - "total_save": 10, - "community_name": 'text', - }, - ]; - - return Column( - children: [ - sizedBoxHeight(20.h), - Expanded( - child: ListView.builder( - shrinkWrap: true, - itemCount: feedTabData.length, - itemBuilder: (context, index) { - return Column( - children: [ - normalcardtile2( - profileImg: feedTabData[index]["profileImg"], - title: feedTabData[index]["title"], - mainImg: feedTabData[index]["mainImg"], - containerTitle: feedTabData[index]["containerTitle"], - description: 'test', - create_at: '1 hour', - total_comments: '20', - total_likes: '20', - total_save: '10', - community_name: 'text', - ), - sizedBoxHeight(20.h) - ], - ); - }, - ), - ), - ], - ); -} - -Widget normalcardtile2({ - required String profileImg, - required String title, - required String mainImg, - required String description, - required List containerTitle, - required String community_name, - required String total_comments, - required String total_likes, - required String total_save, - required String? create_at, -}) { - var mainImage = 'assets/images/png/uiw_like-o.png'.obs; - void updateImage(String reaction) { - if (reaction == 'like') { - mainImage.value = 'assets/images/png/f7_hand-thumbsup.png'; - } else if (reaction == 'heart') { - mainImage.value = 'assets/images/png/heart 2.png'; - } else if (reaction == 'party') { - mainImage.value = 'assets/images/png/party-popper 2.png'; - } - } - - return commonGlassUI( - width: double.infinity, - height: 760.h, - mainOpacity: 1, - borderRadius: BorderRadius.circular(1), - customWidget: Column( - children: [ - sizedBoxHeight(25.h), - Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - CircleAvatar( - foregroundImage: NetworkImage(profileImg), - radius: 25.r, - ), - sizedBoxWidth(12.w), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - text16w400_FCFCFC(title), - sizedBoxHeight(5.h), - Row( - children: [ - Image.asset( - 'assets/images/png/community 1 (traced).png', - height: 14.w, - width: 14.w, - ), - sizedBoxWidth(7.w), - text12w400_FCFCFC(community_name), - sizedBoxWidth(7.w), - Icon( - Icons.circle, - color: const Color(0xFFFCFCFC), - size: 4.sp, - ), - sizedBoxWidth(6.w), - text12w400_FCFCFC(create_at!), - ], - ) - ], - ), - const Spacer(), - PopupMenuButton( - surfaceTintColor: const Color(0xFF222935), - constraints: BoxConstraints.tightFor(width: 176.w), - offset: const Offset(0, 50), - color: const Color(0xFF222935), - tooltip: "", - itemBuilder: (BuildContext context) => [ - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 12.w), - child: Row( - children: [ - Text( - 'Report Post', - style: TextStyle( - fontSize: 16.sp, - color: Colors.white, - fontWeight: FontWeight.w800, - fontFamily: "Nunito Sans", - ), - ), - const Spacer(), - Image.asset( - "assets/images/png/Vector (5).png", - height: 15.h, - width: 15.w, - ) - ], - ), - ), - ), - const PopupMenuDivider(), - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 12.w), - child: Row( - children: [ - Text( - 'Share post', - style: TextStyle( - fontSize: 16.sp, - color: Colors.white, - fontWeight: FontWeight.w800, - fontFamily: "Nunito Sans", - ), - ), - const Spacer(), - Image.asset( - "assets/images/png/share.png", - height: 20.h, - width: 20.w, - ) - ], - ), - ), - ), - const PopupMenuDivider(), - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 12.w), - child: Row( - children: [ - Text( - 'Pin', - style: TextStyle( - fontSize: 16.sp, - color: Colors.white, - fontWeight: FontWeight.w800, - fontFamily: "Nunito Sans", - ), - ), - const Spacer(), - Image.asset( - "assets/images/png/f7_pin-fill (2).png", - height: 25.h, - width: 25.w, - ) - ], - ), - ), - ), - ], - child: Image.asset( - 'assets/images/png/Group 1000004071.png', - width: 16.w, - height: 18.h, - ), - ), - sizedBoxWidth(5.w) - ], - ), - ), - sizedBoxHeight(20.h), - GestureDetector( - onTap: () { - Get.toNamed(RouteName.postdetailsScreen); - }, - child: Container( - height: 360, - width: double.infinity, - decoration: BoxDecoration( - image: DecorationImage( - fit: BoxFit.cover, - image: NetworkImage( - mainImg, - ), - )), - ), - ), - sizedBoxHeight(20.h), - Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Column(children: [ - SizedBox( - height: 30.h, - child: ListView.builder( - scrollDirection: Axis.horizontal, - shrinkWrap: true, - itemCount: containerTitle.length, - itemBuilder: (context, index) { - return Padding( - padding: EdgeInsets.only(right: 12.w), - child: GestureDetector( - onTap: () { - Get.toNamed(RouteName.cyclescreen); - }, - child: containertile2( - text: ("#${containerTitle[index]}"))), - ); - }, - ), - ), - sizedBoxHeight(20.h), - SizedBox( - width: double.infinity, - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - text16w400_FCFCFC(description), - ], - ), - ), - Row(children: [ - InkWell( - onTap: () { - Get.toNamed(RouteName.reactionview); - }, - child: stackReaction(number: total_likes, containerImages: [ - 'assets/images/png/f7_hand-thumbsup.png', - 'assets/images/png/heart 2.png', - 'assets/images/png/party-popper 2.png' - ]), - ), - const Spacer(), - commonContainer( - width: 30.w, - height: 30.h, - borderColor: const Color(0xFF434A53), - borderwidth: 0.43, - opacity1: 0.2, - opacity2: 0.2, - boxShape: BoxShape.circle, - customWidget: Center( - child: Image.asset( - 'assets/images/png/Frame 1000004088.png', - height: 13.h, - width: 13.w, - ), - ), - ), - sizedBoxWidth(12.w), - text14w400_FCFCFC(total_comments), - sizedBoxWidth(20.w), - commonContainer( - width: 30.w, - height: 30.h, - borderColor: const Color(0xFF434A53), - borderwidth: 0.43, - opacity1: 0.2, - opacity2: 0.2, - boxShape: BoxShape.circle, - customWidget: Center( - child: Image.asset( - 'assets/images/png/Vector (1).png', - height: 12.h, - width: 12.w, - ), - ), - ), - sizedBoxWidth(12.w), - text14w400_FCFCFC(total_save), - ]), - sizedBoxHeight(12.h), - commonDivider(), - sizedBoxHeight(12.h), - Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Obx(() { - return ReactionButton( - onReactionChanged: (reaction) { - updateImage(reaction?.value ?? 'like'); - debugPrint('Selected value: ${reaction?.value}'); - }, - reactions: ?>[ - Reaction( - value: 'like', - previewIcon: _buildReactionsPreviewIcon( - 'assets/images/png/f7_hand-thumbsup.png'), - icon: _buildReactionsIcon( - 'assets/images/png/f7_hand-thumbsup.png', - ), - ), - Reaction( - value: 'heart', - previewIcon: _buildReactionsPreviewIcon( - 'assets/images/png/heart 2.png'), - icon: _buildReactionsIcon( - 'assets/images/png/heart 2.png'), - ), - Reaction( - value: 'party', - previewIcon: _buildReactionsPreviewIcon( - 'assets/images/png/party-popper 2.png'), - icon: _buildReactionsIcon( - 'assets/images/png/party-popper 2.png'), - ), - ], - selectedReaction: Reaction( - value: 'like', - icon: _buildReactionsIcon( - 'assets/images/png/f7_hand-thumbs.png'), - ), - boxColor: Colors.white, - boxElevation: 2, - boxRadius: 30, - itemsSpacing: 8, - itemScale: 0.4, - itemSize: const Size(45, 45), - boxPadding: const EdgeInsets.all(8), - boxAnimationDuration: - const Duration(milliseconds: 200), - itemAnimationDuration: - const Duration(milliseconds: 500), - hoverDuration: const Duration(milliseconds: 700), - // toggle: false, - direction: ReactionsBoxAlignment.rtl, - - child: _buildReactionsIcon(mainImage.value), - ); - }) - ], - ), - GestureDetector( - onTap: () { - Get.toNamed(RouteName.postdetailsScreen); - }, - child: Column( - children: [ - Image.asset( - 'assets/images/png/Frame 1000004088.png', - height: 19.h, - width: 19.w, - ), - sizedBoxHeight(8.h), - text11w400_FCFCFC('Comment') - ], - ), - ), - Column( - children: [ - Image.asset( - 'assets/images/png/Frame 1000004089.png', - height: 19.h, - width: 19.w, - ), - sizedBoxHeight(8.h), - text11w400_FCFCFC('Save') - ], - ) - ], - ), - sizedBoxHeight(12.h), - commonDivider(), - sizedBoxHeight(12.h), - ]), - ), - ], - )); -} - -Widget normalcardtile({ - required String profileImg, - required String title, - required String mainImg, - required List containerTitle, -}) { - var mainImage = 'assets/images/png/uiw_like-o.png'.obs; - void updateImage(String reaction) { - if (reaction == 'like') { - mainImage.value = 'assets/images/png/f7_hand-thumbsup.png'; - } else if (reaction == 'heart') { - mainImage.value = 'assets/images/png/heart 2.png'; - } else if (reaction == 'party') { - mainImage.value = 'assets/images/png/party-popper 2.png'; - } - } - - return commonGlassContainer( - width: double.infinity, - height: 570.h, - border: 0, - borderradius: 1, - customWidget: Column( - children: [ - sizedBoxHeight(25.h), - Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - CircleAvatar( - foregroundImage: AssetImage(profileImg), - radius: 25.r, - ), - sizedBoxWidth(12.w), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - text16w400_FCFCFC(title), - sizedBoxHeight(5.h), - Row( - children: [ - Image.asset( - 'assets/images/png/community 1 (traced).png', - height: 14.w, - width: 14.w, - ), - sizedBoxWidth(7.w), - text12w400_FCFCFC('Active alliance network'), - sizedBoxWidth(7.w), - Icon( - Icons.circle, - color: const Color(0xFFFCFCFC), - size: 4.sp, - ), - sizedBoxWidth(6.w), - text12w400_FCFCFC('1 Hour ago'), - ], - ) - ], - ), - const Spacer(), - PopupMenuButton( - surfaceTintColor: const Color(0xFF222935), - constraints: BoxConstraints.tightFor(width: 176.w), - offset: const Offset(0, 50), - color: const Color(0xFF222935), - tooltip: "", - itemBuilder: (BuildContext context) => [ - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 12.w), - child: Row( - children: [ - Text( - 'Report Post', - style: TextStyle( - fontSize: 16.sp, - color: Colors.white, - fontWeight: FontWeight.w800, - fontFamily: "Nunito Sans", - ), - ), - const Spacer(), - Image.asset( - "assets/images/png/Vector (5).png", - height: 15.h, - width: 15.w, - ) - ], - ), - ), - ), - const PopupMenuDivider(), - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 12.w), - child: Row( - children: [ - Text( - 'Share post', - style: TextStyle( - fontSize: 16.sp, - color: Colors.white, - fontWeight: FontWeight.w800, - fontFamily: "Nunito Sans", - ), - ), - const Spacer(), - Image.asset( - "assets/images/png/share.png", - height: 20.h, - width: 20.w, - ) - ], - ), - ), - ), - const PopupMenuDivider(), - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 12.w), - child: Row( - children: [ - Text( - 'Pin', - style: TextStyle( - fontSize: 16.sp, - color: Colors.white, - fontWeight: FontWeight.w800, - fontFamily: "Nunito Sans", - ), - ), - const Spacer(), - Image.asset( - "assets/images/png/f7_pin-fill (2).png", - height: 25.h, - width: 25.w, - ) - ], - ), - ), - ), - ], - child: Image.asset( - 'assets/images/png/Group 1000004071.png', - width: 16.w, - height: 18.h, - ), - ), - sizedBoxWidth(5.w) - ], - ), - ), - sizedBoxHeight(20.h), - GestureDetector( - onTap: () { - Get.toNamed(RouteName.postdetailsScreen); - }, - child: SizedBox( - height: 163.h, - width: double.infinity, - child: Image.asset( - mainImg, - fit: BoxFit.cover, - ), - )), - sizedBoxHeight(20.h), - Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Column(children: [ - SizedBox( - height: 30.h, - child: ListView.builder( - scrollDirection: Axis.horizontal, - shrinkWrap: true, - itemCount: containerTitle.length, - itemBuilder: (context, index) { - return Padding( - padding: EdgeInsets.only(right: 12.w), - child: GestureDetector( - onTap: () { - Get.toNamed(RouteName.cyclescreen); - }, - child: containertile( - text: ("#${containerTitle[index]}"))), - ); - }, - ), - ), - sizedBoxHeight(20.h), - text16w400_FCFCFC( - "Lorem Ipsum has been the industry's standard dummy text ever since the 1500s . . ."), - Row(children: [ - InkWell( - onTap: () { - Get.toNamed(RouteName.reactionview); - }, - child: stackReaction(number: '20', containerImages: [ - 'assets/images/png/f7_hand-thumbsup.png', - 'assets/images/png/heart 2.png', - 'assets/images/png/party-popper 2.png' - ]), - ), - const Spacer(), - commonGlassContainer( - border: 0.43, - width: 30.w, - height: 30.h, - opacity1: 0.05, - opacity2: 0.06, - borderradius: 100, - customWidget: Center( - child: Image.asset( - 'assets/images/png/Frame 1000004088.png', - height: 13.h, - width: 13.w, - ), - ), - ), - sizedBoxWidth(12.w), - text14w400_FCFCFC('20'), - sizedBoxWidth(20.w), - commonGlassContainer( - border: 0.43, - width: 30.w, - height: 30.h, - borderradius: 100, - opacity1: 0.05, - opacity2: 0.06, - customWidget: Center( - child: Image.asset( - 'assets/images/png/Vector (1).png', - height: 12.h, - width: 12.w, - ), - ), - ), - sizedBoxWidth(12.w), - text14w400_FCFCFC('10'), - ]), - sizedBoxHeight(12.h), - commonDivider(), - sizedBoxHeight(12.h), - Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Obx(() { - return ReactionButton( - onReactionChanged: (reaction) { - updateImage(reaction?.value ?? 'like'); - debugPrint('Selected value: ${reaction?.value}'); - }, - reactions: ?>[ - Reaction( - value: 'like', - previewIcon: _buildReactionsPreviewIcon( - 'assets/images/png/f7_hand-thumbsup.png'), - icon: _buildReactionsIcon( - 'assets/images/png/f7_hand-thumbsup.png', - ), - ), - Reaction( - value: 'heart', - previewIcon: _buildReactionsPreviewIcon( - 'assets/images/png/heart 2.png'), - icon: _buildReactionsIcon( - 'assets/images/png/heart 2.png'), - ), - Reaction( - value: 'party', - previewIcon: _buildReactionsPreviewIcon( - 'assets/images/png/party-popper 2.png'), - icon: _buildReactionsIcon( - 'assets/images/png/party-popper 2.png'), - ), - ], - selectedReaction: Reaction( - value: 'like', - icon: _buildReactionsIcon( - 'assets/images/png/f7_hand-thumbs.png'), - ), - boxColor: Colors.white, - boxElevation: 2, - boxRadius: 30, - itemsSpacing: 8, - itemScale: 0.4, - itemSize: const Size(45, 45), - boxPadding: const EdgeInsets.all(8), - boxAnimationDuration: - const Duration(milliseconds: 200), - itemAnimationDuration: - const Duration(milliseconds: 500), - hoverDuration: const Duration(milliseconds: 700), - // toggle: false, - direction: ReactionsBoxAlignment.rtl, - - child: _buildReactionsIcon(mainImage.value), - ); - }) - ], - ), - GestureDetector( - onTap: () { - Get.toNamed(RouteName.postdetailsScreen); - }, - child: Column( - children: [ - Image.asset( - 'assets/images/png/Frame 1000004088.png', - height: 19.h, - width: 19.w, - ), - sizedBoxHeight(8.h), - text11w400_FCFCFC('Comment') - ], - ), - ), - Column( - children: [ - Image.asset( - 'assets/images/png/Frame 1000004089.png', - height: 19.h, - width: 19.w, - ), - sizedBoxHeight(8.h), - text11w400_FCFCFC('Save') - ], - ) - ], - ), - sizedBoxHeight(12.h), - commonDivider(), - sizedBoxHeight(12.h), - ]), - ), - ], - )); -} - -Widget announcecardtile({ - required String profileImg, - required String title, - required String mainImg, - required List containerTitle, -}) { - var mainImage = 'assets/images/png/uiw_like-o.png'.obs; - void updateImage(String reaction) { - if (reaction == 'like') { - mainImage.value = 'assets/images/png/f7_hand-thumbsup.png'; - } else if (reaction == 'heart') { - mainImage.value = 'assets/images/png/heart 2.png'; - } else if (reaction == 'party') { - mainImage.value = 'assets/images/png/party-popper 2.png'; - } - } - -// MediaQuery.of(context).size.height - return Column( - children: [ - commonGlassUIBlue( - width: double.infinity, - height: 610.h, - borderRadius: BorderRadius.circular(1), - customWidget: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - sizedBoxHeight(25.h), - Padding( - padding: EdgeInsets.only(left: 16.w), - child: text16w700_FCFCFC("#Announcement"), - ), - sizedBoxHeight(25.h), - Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - CircleAvatar( - foregroundImage: AssetImage(profileImg), - radius: 25.r, - ), - sizedBoxWidth(12.w), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - text16w400_FCFCFC(title), - sizedBoxHeight(5.h), - Row( - children: [ - Image.asset( - 'assets/images/png/community 1 (traced).png', - height: 14.w, - width: 14.w, - ), - sizedBoxWidth(7.w), - text12w400_FCFCFC('Active alliance network'), - sizedBoxWidth(7.w), - Icon( - Icons.circle, - color: const Color(0xFFFCFCFC), - size: 4.sp, - ), - sizedBoxWidth(6.w), - text12w400_FCFCFC('1 Hour ago'), - ], - ) - ], - ), - const Spacer(), - PopupMenuButton( - surfaceTintColor: const Color(0xFF222935), - constraints: BoxConstraints.tightFor(width: 176.w), - offset: const Offset(0, 50), - color: const Color(0xFF222935), - tooltip: "", - itemBuilder: (BuildContext context) => [ - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 12.w), - child: Row( - children: [ - Text( - 'Report Post', - style: TextStyle( - fontSize: 16.sp, - color: Colors.white, - fontWeight: FontWeight.w800, - fontFamily: "Nunito Sans", - ), - ), - const Spacer(), - Image.asset( - "assets/images/png/Vector (5).png", - height: 15.h, - width: 15.w, - ) - ], - ), - ), - ), - const PopupMenuDivider(), - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 12.w), - child: Row( - children: [ - Text( - 'Share post', - style: TextStyle( - fontSize: 16.sp, - color: Colors.white, - fontWeight: FontWeight.w800, - fontFamily: "Nunito Sans", - ), - ), - const Spacer(), - Image.asset( - "assets/images/png/share.png", - height: 20.h, - width: 20.w, - ) - ], - ), - ), - ), - const PopupMenuDivider(), - PopupMenuItem( - onTap: () {}, - child: Padding( - padding: EdgeInsets.symmetric(horizontal: 12.w), - child: Row( - children: [ - Text( - 'Pin', - style: TextStyle( - fontSize: 16.sp, - color: Colors.white, - fontWeight: FontWeight.w800, - fontFamily: "Nunito Sans", - ), - ), - const Spacer(), - Image.asset( - "assets/images/png/f7_pin-fill (2).png", - height: 25.h, - width: 25.w, - ) - ], - ), - ), - ), - ], - child: Image.asset( - 'assets/images/png/Group 1000004071.png', - width: 16.w, - height: 18.h, - ), - ), - sizedBoxWidth(5.w) - ], - ), - ), - sizedBoxHeight(20.h), - GestureDetector( - onTap: () { - // Get.toNamed(RouteName.postdetailsScreen); - }, - child: SizedBox( - height: 163.h, - width: double.infinity, - child: Image.asset( - mainImg, - fit: BoxFit.cover, - ), - )), - sizedBoxHeight(20.h), - Padding( - padding: EdgeInsets.symmetric(horizontal: 16.w), - child: Column(children: [ - SizedBox( - height: 30.h, - child: ListView.builder( - scrollDirection: Axis.horizontal, - shrinkWrap: true, - itemCount: containerTitle.length, - itemBuilder: (context, index) { - return Padding( - padding: EdgeInsets.only(right: 12.w), - child: GestureDetector( - onTap: () { - // Get.toNamed(RouteName.cyclescreen); - }, - child: - containertile2(text: containerTitle[index])), - ); - }, - ), - ), - sizedBoxHeight(20.h), - text16w400_FCFCFC( - "Lorem Ipsum has been the industry's standard dummy text ever since the 1500s . . ."), - Row(children: [ - InkWell( - onTap: () { - // Get.toNamed(RouteName.reactionview); - }, - child: stackReaction(number: '20', containerImages: [ - 'assets/images/png/f7_hand-thumbsup.png', - 'assets/images/png/heart 2.png', - 'assets/images/png/party-popper 2.png' - ]), - ), - const Spacer(), - commonContainer( - width: 30.w, - height: 30.h, - borderColor: const Color(0xFF434A53), - borderwidth: 0.43, - opacity1: 0.2, - opacity2: 0.2, - boxShape: BoxShape.circle, - customWidget: Center( - child: Image.asset( - 'assets/images/png/Frame 1000004088.png', - height: 13.h, - width: 13.w, - ), - ), - ), - sizedBoxWidth(12.w), - text14w400_FCFCFC('20'), - sizedBoxWidth(20.w), - commonContainer( - width: 30.w, - height: 30.h, - borderColor: const Color(0xFF434A53), - borderwidth: 0.43, - opacity1: 0.2, - opacity2: 0.2, - boxShape: BoxShape.circle, - customWidget: Center( - child: Image.asset( - 'assets/images/png/Vector (1).png', - height: 12.h, - width: 12.w, - ), - ), - ), - sizedBoxWidth(12.w), - text14w400_FCFCFC('10'), - ]), - sizedBoxHeight(12.h), - commonDivider(), - sizedBoxHeight(12.h), - Row( - mainAxisAlignment: MainAxisAlignment.spaceAround, - children: [ - Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Obx(() { - return ReactionButton( - onReactionChanged: (reaction) { - updateImage(reaction?.value ?? 'like'); - debugPrint( - 'Selected value: ${reaction?.value}'); - }, - reactions: ?>[ - Reaction( - value: 'like', - previewIcon: _buildReactionsPreviewIcon( - 'assets/images/png/f7_hand-thumbsup.png'), - icon: _buildReactionsIcon( - 'assets/images/png/f7_hand-thumbsup.png'), - ), - Reaction( - value: 'heart', - previewIcon: _buildReactionsPreviewIcon( - 'assets/images/png/heart 2.png'), - icon: _buildReactionsIcon( - 'assets/images/png/heart 2.png'), - ), - Reaction( - value: 'party', - previewIcon: _buildReactionsPreviewIcon( - 'assets/images/png/party-popper 2.png'), - icon: _buildReactionsIcon( - 'assets/images/png/party-popper 2.png'), - ), - ], - selectedReaction: Reaction( - value: 'like', - icon: _buildReactionsIcon( - 'assets/images/png/f7_hand-thumbsup.png'), - ), - boxColor: Colors.white, - boxElevation: 9, - boxRadius: 30, - itemsSpacing: 8, - itemScale: 0.4, - itemSize: const Size(45, 45), - boxPadding: const EdgeInsets.all(8), - boxAnimationDuration: - const Duration(milliseconds: 200), - itemAnimationDuration: - const Duration(milliseconds: 500), - hoverDuration: const Duration(milliseconds: 700), - // toggle: false, - - child: _buildReactionsIcon(mainImage.value), - ); - }) - ], - ), - GestureDetector( - onTap: () { - // Get.toNamed(RouteName.postdetailsScreen); - }, - child: Column( - children: [ - Image.asset( - 'assets/images/png/Frame 1000004088.png', - height: 19.h, - width: 19.w, - ), - sizedBoxHeight(8.h), - text11w400_FCFCFC('Comment') - ], - ), - ), - Column( - children: [ - Image.asset( - 'assets/images/png/Frame 1000004089.png', - height: 19.h, - width: 19.w, - ), - sizedBoxHeight(8.h), - text11w400_FCFCFC('Save') - ], - ) - ], - ), - sizedBoxHeight(12.h), - commonDivider(), - sizedBoxHeight(12.h), - ]), - ), - ], - )), - sizedBoxHeight(20.h), - ], - ); -} - -Widget _buildReactionsPreviewIcon(String assetPath) { - return Padding( - padding: const EdgeInsets.all(8.0), - child: Image.asset( - assetPath, - height: 40.h, - width: 40.w, - ), - ); -} - -Widget _buildReactionsIcon(String assetPath) { - return Column( - children: [ - Image.asset( - assetPath, - height: 19.h, - width: 19.w, - ), - sizedBoxHeight(8.h), - text11w400_FCFCFC('Like') - ], - ); -} - -Widget containertile({required String text}) { - return commonGlassContainer( - border: 1, - width: 130.w, - height: 30.h, - borderradius: 30.r, - borderColor: const Color(0xFFD90B2E), - customWidget: Padding( - padding: EdgeInsets.symmetric(horizontal: 10.w), - child: Center(child: text14w400_FCFCFC(text)), - )); -} - -Widget containertile2({required String text}) { - return commonContainer( - width: 130.w, - height: 30.h, - borderRadius: BorderRadius.circular(30.r), - borderColor: const Color(0xFFD90B2E), - opacity1: 0.04, - opacity2: 0.05, - customWidget: Padding( - padding: EdgeInsets.symmetric(horizontal: 10.w), - child: Center(child: text14w400_FCFCFC(text)), - )); -} - -Widget popularTab() { - List popularTabData = [ - { - "profileImg": "assets/images/png/Ellipse 43.png", - "title": "Edward Hackket", - "mainImg": "assets/images/png/Rectangle 24.png", - "containerTitle": ['Cycle', 'Marathon', 'Events', 'Marathon', 'Events'], - "desciption": "", - "create_at": '1 hour', - "total_comments": 20, - "total_likes": 20, - "total_save": 10, - "community_name": 'text', - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - "desciption": "", - "create_at": '1 hour', - "total_comments": 20, - "total_likes": 20, - "total_save": 10, - "community_name": 'text', - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - "desciption": "", - "create_at": '1 hour', - "total_comments": 20, - "total_likes": 20, - "total_save": 10, - "community_name": 'text', - }, - { - "profileImg": "assets/images/png/Ellipse 52.png", - "title": "Ryan Dorwat", - "mainImg": "assets/images/png/Rectangle 25.png", - "containerTitle": [ - 'Football', - 'Teams player', - 'Events', - 'Marathon', - 'Events' - ], - "desciption": "", - "create_at": '1 hour', - "total_comments": 20, - "total_likes": 20, - "total_save": 10, - "community_name": 'text', - }, - ]; - - return Column( - children: [ - sizedBoxHeight(20.h), - Expanded( - child: ListView.builder( - shrinkWrap: true, - itemCount: popularTabData.length, - itemBuilder: (context, index) { - return Column( - children: [ - normalcardtile2( - profileImg: popularTabData[index]["profileImg"], - title: popularTabData[index]["title"], - mainImg: popularTabData[index]["mainImg"], - containerTitle: popularTabData[index]["containerTitle"], - description: 'test', - create_at: '1 hour', - total_comments: '20', - total_likes: '20', - total_save: '10', - community_name: 'text', - ), - sizedBoxHeight(20.h) - ], - ); - }, - ), - ), - ], - ); -} - -class LatestTab extends StatefulWidget { - const LatestTab({super.key}); - - @override - State createState() => _LatestTabState(); -} - -class _LatestTabState extends State { - late Future latestfuture; - - @override - void initState() { - latestfuture = LatespostApi().getLatestPostApi(); - super.initState(); - } - - @override - Widget build(BuildContext context) { - return FutureBuilder( - future: latestfuture, - builder: (ctx, snapshot) { - if (snapshot.connectionState == ConnectionState.waiting) { - return - // ShimmerCommon(); - const Center( - child: CircularProgressIndicator( - color: Colors.blue, - ), - ); - } - - if (snapshot.hasError) { - return Center( - child: Text( - '${snapshot.error} occurred', - style: TextStyle(fontSize: 18.spMin), - ), - ); - } - - if (snapshot.connectionState == ConnectionState.done && - snapshot.hasData) { - print("Data fetched-->"); - - return Stack( - clipBehavior: Clip.none, - children: [ - Container( - decoration: const BoxDecoration( - image: DecorationImage( - image: AssetImage("assets/images/png/Ellipse 1496.png"), - fit: BoxFit.fill), - ), - ), - Column( - children: [ - sizedBoxHeight(16.h), - Expanded( - child: ListView.builder( - shrinkWrap: true, - itemCount: latestpostobj!.data!.length, - itemBuilder: (context, index) { - if (index == 1) { - return announcecardtile( - profileImg: latestpostobj!.data![index] - .iamPrincipal!.profilePhoto ?? - '', - title: latestpostobj!.data![index].caption ?? '', - mainImg: 'assets/images/png/Rectangle 46.png', - containerTitle: [ - 'Race', - 'Swimming', - 'Events', - 'Marathon', - 'Events' - ]); - } else { - String? createAtstring = - latestpostobj!.data![index].createdAt; - if (createAtstring == null || - createAtstring.isEmpty) { - createAtstring = DateTime.now().toIso8601String(); - } - String? timeAgo; - - try { - DateTime postDateTime = - DateTime.parse(createAtstring); - DateTime now = DateTime.now(); - Duration difference = now.difference(postDateTime); - if (difference.inDays > 365) { - timeAgo = - '${(difference.inDays / 365).floor()} years ago'; - } else if (difference.inDays > 30) { - timeAgo = - '${(difference.inDays / 30).floor()} months ago'; - } else if (difference.inDays > 7) { - timeAgo = - '${(difference.inDays / 7).floor()} weeks ago'; - } else if (difference.inDays > 0) { - timeAgo = '${difference.inDays} days ago'; - } else if (difference.inHours > 0) { - timeAgo = '${difference.inHours} hours ago'; - } else if (difference.inMinutes > 0) { - timeAgo = '${difference.inMinutes} minutes ago'; - } else { - timeAgo = '${difference.inSeconds} seconds ago'; - } - print("Time ago: $timeAgo"); - } catch (e) { - print("Error parsing date: $e"); - String timeAgo = 'Unknown'; - } - - return Column( - children: [ - normalcardtile2( - profileImg: latestpostobj!.data![index] - .iamPrincipal!.profilePhoto ?? - '', - title: latestpostobj! - .data![index].iamPrincipal!.fullName ?? - '', - mainImg: - latestpostobj!.data![index].image ?? '', - containerTitle: - latestpostobj!.data![index].tagNames ?? - [''], - description: - latestpostobj!.data![index].caption ?? '', - create_at: timeAgo, - total_comments: latestpostobj! - .data![index].totalComment - .toString() ?? - '', - total_likes: latestpostobj! - .data![index].likecount - .toString() ?? - '', - total_save: latestpostobj! - .data![index].totalSave - .toString() ?? - '', - community_name: latestpostobj! - .data![index].community!.communityName - .toString() ?? - '', - ), - sizedBoxHeight(20.h) - ], - ); - } - }, - ), - ), - ], - ), - ], - ); - } - return Container(); - }, - ); - } -} diff --git a/lib/Feed Module/Main_Screens/Community/Modal/LatestPost.dart b/lib/Feed Module/Main_Screens/Community/Modal/LatestPost.dart deleted file mode 100644 index f9e6f25..0000000 --- a/lib/Feed Module/Main_Screens/Community/Modal/LatestPost.dart +++ /dev/null @@ -1,183 +0,0 @@ -class Latestpost { - String? status; - int? statusCode; - String? message; - List? data; - - Latestpost({this.status, this.statusCode, this.message, this.data}); - - Latestpost.fromJson(Map json) { - status = json['status']; - statusCode = json['status_code']; - message = json['message']; - if (json['data'] != null) { - data = []; - json['data'].forEach((v) { - data!.add(Data.fromJson(v)); - }); - } - } - - Map toJson() { - final Map data = {}; - data['status'] = status; - data['status_code'] = statusCode; - data['message'] = message; - if (this.data != null) { - data['data'] = this.data!.map((v) => v.toJson()).toList(); - } - return data; - } -} - -class Data { - int? id; - int? likecount; - List? tagsXid; - bool? isILiked; - int? totalComment; - int? totalSave; - int? iamPrincipalXid; - int? postIn; - String? caption; - String? image; - String? manageTagsXids; - String? postAs; - String? ctaTitle; - String? ctaLink; - String? createdAt; - List? tagNames; - String? likeIcon; - IamPrincipal? iamPrincipal; - Community? community; - - Data( - {this.id, - this.likecount, - this.tagsXid, - this.isILiked, - this.totalComment, - this.totalSave, - this.iamPrincipalXid, - this.postIn, - this.caption, - this.image, - this.manageTagsXids, - this.postAs, - this.ctaTitle, - this.ctaLink, - this.createdAt, - this.tagNames, - this.likeIcon, - this.iamPrincipal, - this.community}); - - Data.fromJson(Map json) { - id = json['id']; - likecount = json['likecount']; - tagsXid = json['tags_xid'].cast(); - isILiked = json['is_i_liked']; - totalComment = json['total_comment']; - totalSave = json['total_save']; - iamPrincipalXid = json['iam_principal_xid']; - postIn = json['post_in']; - caption = json['caption']; - image = json['image']; - manageTagsXids = json['manage_tags_xids']; - postAs = json['post_as']; - ctaTitle = json['cta_title']; - ctaLink = json['cta_link']; - createdAt = json['created_at']; - tagNames = json['tag_names'].cast(); - likeIcon = json['likeIcon']; - iamPrincipal = json['iam_principal'] != null - ? IamPrincipal.fromJson(json['iam_principal']) - : null; - community = json['community'] != null - ? Community.fromJson(json['community']) - : null; - } - - Map toJson() { - final Map data = {}; - data['id'] = id; - data['likecount'] = likecount; - data['tags_xid'] = tagsXid; - data['is_i_liked'] = isILiked; - data['total_comment'] = totalComment; - data['total_save'] = totalSave; - data['iam_principal_xid'] = iamPrincipalXid; - data['post_in'] = postIn; - data['caption'] = caption; - data['image'] = image; - data['manage_tags_xids'] = manageTagsXids; - data['post_as'] = postAs; - data['cta_title'] = ctaTitle; - data['cta_link'] = ctaLink; - data['created_at'] = createdAt; - data['tag_names'] = tagNames; - data['likeIcon'] = likeIcon; - if (iamPrincipal != null) { - data['iam_principal'] = iamPrincipal!.toJson(); - } - if (community != null) { - data['community'] = community!.toJson(); - } - return data; - } -} - -class IamPrincipal { - int? id; - int? principalTypeXid; - String? userName; - String? fullName; - String? profilePhoto; - - IamPrincipal( - {this.id, - this.principalTypeXid, - this.userName, - this.fullName, - this.profilePhoto}); - - IamPrincipal.fromJson(Map json) { - id = json['id']; - principalTypeXid = json['principal_type_xid']; - userName = json['user_name']; - fullName = json['full_name']; - profilePhoto = json['profile_photo']; - } - - Map toJson() { - final Map data = {}; - data['id'] = id; - data['principal_type_xid'] = principalTypeXid; - data['user_name'] = userName; - data['full_name'] = fullName; - data['profile_photo'] = profilePhoto; - return data; - } -} - -class Community { - int? id; - String? communityProfilePhoto; - String? communityName; - - Community({this.id, this.communityProfilePhoto, this.communityName}); - - Community.fromJson(Map json) { - id = json['id']; - communityProfilePhoto = json['community_profile_photo']; - communityName = json['community_name']; - } - - Map toJson() { - final Map data = {}; - data['id'] = id; - data['community_profile_photo'] = communityProfilePhoto; - data['community_name'] = communityName; - return data; - } -} diff --git a/lib/Feed Module/Main_Screens/Community/ViewModal/FeedPost.dart b/lib/Feed Module/Main_Screens/Community/ViewModal/FeedPost.dart deleted file mode 100644 index 8b13789..0000000 --- a/lib/Feed Module/Main_Screens/Community/ViewModal/FeedPost.dart +++ /dev/null @@ -1 +0,0 @@ - diff --git a/lib/Feed Module/Main_Screens/Community/ViewModal/LatesPost.dart b/lib/Feed Module/Main_Screens/Community/ViewModal/LatesPost.dart deleted file mode 100644 index 6687d2f..0000000 --- a/lib/Feed Module/Main_Screens/Community/ViewModal/LatesPost.dart +++ /dev/null @@ -1,26 +0,0 @@ -import 'package:regroup/Common/api_urls.dart'; -import 'package:regroup/Common/base_manager.dart'; -import 'package:regroup/Common/controller/data/network/network_api.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Community/Modal/LatestPost.dart'; - -Latestpost? latestpostobj; - -class LatespostApi { - LatespostApi(); - - Future> getLatestPostApi() async { - final response = await NetworkApiServices().getApi(ApiUrls.latestpost); - - if (response.status == ResponseStatus.SUCCESS) { - if (response.data["status"] == "success") { - latestpostobj = Latestpost.fromJson(response.data); - } - return ResponseData( - response.data['message'], ResponseStatus.SUCCESS, - data: response.data); - } else { - return ResponseData( - response.data['message'], ResponseStatus.FAILED); - } - } -} diff --git a/lib/Main_Screens/Community/Community.dart b/lib/Main_Screens/Community/Community.dart index 4f269bc..dc6eea5 100644 --- a/lib/Main_Screens/Community/Community.dart +++ b/lib/Main_Screens/Community/Community.dart @@ -9,7 +9,7 @@ import 'package:regroup/Common/CommonGlassmorphism.dart'; import 'package:regroup/Common/CommonTabBar.dart'; import 'package:regroup/Common/CommonWidget.dart'; import 'package:regroup/Common/controller/MainScreen.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Community/ViewModal/LatesPost.dart'; +import 'package:regroup/Main_Screens/Community/ViewModel/LatestPost.dart'; // import 'package:regroup/Feed%20Module/sidemenu/sidemenu.dart'; import 'package:regroup/Utils/Common/sized_box.dart'; import 'package:regroup/Utils/texts.dart'; diff --git a/lib/Main_Screens/Community/Model/LatestPostModel.dart b/lib/Main_Screens/Community/Model/LatestPostModel.dart index f9e6f25..4d986aa 100644 --- a/lib/Main_Screens/Community/Model/LatestPostModel.dart +++ b/lib/Main_Screens/Community/Model/LatestPostModel.dart @@ -1,12 +1,12 @@ -class Latestpost { +class LatestpostModel { String? status; int? statusCode; String? message; List? data; - Latestpost({this.status, this.statusCode, this.message, this.data}); + LatestpostModel({this.status, this.statusCode, this.message, this.data}); - Latestpost.fromJson(Map json) { + LatestpostModel.fromJson(Map json) { status = json['status']; statusCode = json['status_code']; message = json['message']; diff --git a/lib/Main_Screens/Community/ViewModel/LatestPost.dart b/lib/Main_Screens/Community/ViewModel/LatestPost.dart index c5593a1..f536630 100644 --- a/lib/Main_Screens/Community/ViewModel/LatestPost.dart +++ b/lib/Main_Screens/Community/ViewModel/LatestPost.dart @@ -1,19 +1,19 @@ import 'package:regroup/Common/api_urls.dart'; import 'package:regroup/Common/base_manager.dart'; import 'package:regroup/Common/controller/data/network/network_api.dart'; -import 'package:regroup/Feed%20Module/Main_Screens/Community/Modal/LatestPost.dart'; +import 'package:regroup/Main_Screens/Community/Model/LatestPostModel.dart'; -Latestpost? latestpostobj; +LatestpostModel? latestpostobj; class LatespostApi { LatespostApi(); Future> getLatestPostApi() async { - final response = await NetworkApiServices().getApi(ApiUrls.latestpost); + final response = await NetworkApiServices().getApi(ApiUrls.getlatestpost); if (response.status == ResponseStatus.SUCCESS) { if (response.data["status"] == "success") { - latestpostobj = Latestpost.fromJson(response.data); + latestpostobj = LatestpostModel.fromJson(response.data); } return ResponseData( response.data['message'], ResponseStatus.SUCCESS, From 93e07b3cc07f2b7ef7cd915e3c5a90698e3128c6 Mon Sep 17 00:00:00 2001 From: Dakshesh42 Date: Thu, 1 Aug 2024 15:59:47 +0530 Subject: [PATCH 11/11] minor changes --- .../View/Individual/step2Selectactivity.dart | 15 ++++++++++----- .../View/Individual/step3Selectyourgroup.dart | 4 +--- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart b/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart index b381b2f..89c76e2 100644 --- a/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart +++ b/lib/onboarding/Signup/View/Individual/step2Selectactivity.dart @@ -450,10 +450,15 @@ class _SelectIndividualActivityState extends State { Row( children: [ Spacer(), - Image.asset( - "assets/images/png/x-circle.png", - height: 28.h, - width: 28.w, + InkWell( + onTap: () { + Get.back(); + }, + child: Image.asset( + "assets/images/png/x-circle.png", + height: 28.h, + width: 28.w, + ), ) ], ), @@ -466,7 +471,7 @@ class _SelectIndividualActivityState extends State { texttype: TextInputType.text, validator: (value) { if (value!.isEmpty) { - return 'Enter your full name '; + return 'Enter your interest'; } return null; }, diff --git a/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart b/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart index 76f1299..0146056 100644 --- a/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart +++ b/lib/onboarding/Signup/View/Individual/step3Selectyourgroup.dart @@ -1,8 +1,6 @@ import 'dart:async'; -import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; -import 'package:flutter/widgets.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:get/get.dart'; import 'package:regroup/Common/CommonButton.dart'; @@ -66,7 +64,7 @@ class _SelectIndividualGroupState extends State { final data = await Onboard().postGroups(updata); if (data.status == ResponseStatus.SUCCESS) { - Get.back(); + // Get.back(); print("groups selected"); // Get.toNamed(RouteName.individualcommunitystep4); Get.toNamed(RouteName.communitycommitscreen);