removed backdropfilter
This commit is contained in:
3
assets/images/svg/fluent_home-20-regular.svg
Normal file
3
assets/images/svg/fluent_home-20-regular.svg
Normal file
@@ -0,0 +1,3 @@
|
||||
<svg width="25" height="25" viewBox="0 0 25 25" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M11.2475 2.98502C11.5917 2.67581 12.038 2.50476 12.5006 2.50476C12.9633 2.50476 13.4096 2.67581 13.7537 2.98502L20.6287 9.16252C20.8242 9.3383 20.9805 9.55323 21.0876 9.79334C21.1946 10.0334 21.2499 10.2934 21.25 10.5563V19.375C21.25 19.8723 21.0525 20.3492 20.7008 20.7008C20.3492 21.0525 19.8723 21.25 19.375 21.25H16.25C15.7527 21.25 15.2758 21.0525 14.9242 20.7008C14.5725 20.3492 14.375 19.8723 14.375 19.375V15C14.375 14.8343 14.3092 14.6753 14.1919 14.5581C14.0747 14.4409 13.9158 14.375 13.75 14.375H11.25C11.0842 14.375 10.9253 14.4409 10.8081 14.5581C10.6908 14.6753 10.625 14.8343 10.625 15V19.375C10.625 19.8723 10.4275 20.3492 10.0758 20.7008C9.72419 21.0525 9.24728 21.25 8.75 21.25H5.625C5.12772 21.25 4.65081 21.0525 4.29917 20.7008C3.94754 20.3492 3.75 19.8723 3.75 19.375V10.5563C3.75 10.025 3.975 9.51877 4.3725 9.16252L11.2475 2.98502ZM12.9175 3.91502C12.8028 3.81207 12.6541 3.75512 12.5 3.75512C12.3459 3.75512 12.1972 3.81207 12.0825 3.91502L5.2075 10.0925C5.14237 10.151 5.09025 10.2225 5.0545 10.3024C5.01876 10.3822 5.00019 10.4688 5 10.5563V19.375C5 19.5408 5.06585 19.6998 5.18306 19.817C5.30027 19.9342 5.45924 20 5.625 20H8.75C8.91576 20 9.07473 19.9342 9.19194 19.817C9.30915 19.6998 9.375 19.5408 9.375 19.375V15C9.375 14.5027 9.57254 14.0258 9.92417 13.6742C10.2758 13.3226 10.7527 13.125 11.25 13.125H13.75C14.2473 13.125 14.7242 13.3226 15.0758 13.6742C15.4275 14.0258 15.625 14.5027 15.625 15V19.375C15.625 19.5408 15.6908 19.6998 15.8081 19.817C15.9253 19.9342 16.0842 20 16.25 20H19.375C19.5408 20 19.6997 19.9342 19.8169 19.817C19.9342 19.6998 20 19.5408 20 19.375V10.5563C19.9998 10.4688 19.9812 10.3822 19.9455 10.3024C19.9098 10.2225 19.8576 10.151 19.7925 10.0925L12.9175 3.91502Z" fill="#FCFCFC"/>
|
||||
</svg>
|
||||
|
After Width: | Height: | Size: 1.8 KiB |
@@ -8,6 +8,7 @@
|
||||
|
||||
/* 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 */; };
|
||||
@@ -29,12 +30,15 @@
|
||||
/* 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 = "<group>"; };
|
||||
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; };
|
||||
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; };
|
||||
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; };
|
||||
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 = "<group>"; };
|
||||
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; };
|
||||
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
|
||||
7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; };
|
||||
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 = "<group>"; };
|
||||
9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; };
|
||||
9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; };
|
||||
97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
@@ -42,6 +46,7 @@
|
||||
97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
|
||||
97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
|
||||
97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
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 */
|
||||
@@ -49,12 +54,23 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
2105BA461347F33698D3FD7B /* Pods_Runner.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
01448FBCAC46C16EC8BC1181 /* Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
8DA153E7FEAC51D97681DB93 /* Pods-Runner.debug.xcconfig */,
|
||||
3E093EFD052120EBB5EFE242 /* Pods-Runner.release.xcconfig */,
|
||||
01A8D59FC22474B9D47BC82F /* Pods-Runner.profile.xcconfig */,
|
||||
);
|
||||
path = Pods;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
9740EEB11CF90186004384FC /* Flutter */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -72,6 +88,8 @@
|
||||
9740EEB11CF90186004384FC /* Flutter */,
|
||||
97C146F01CF9000F007C117D /* Runner */,
|
||||
97C146EF1CF9000F007C117D /* Products */,
|
||||
01448FBCAC46C16EC8BC1181 /* Pods */,
|
||||
DE8E73CF7AB07643531FB23E /* Frameworks */,
|
||||
);
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
@@ -98,6 +116,14 @@
|
||||
path = Runner;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
DE8E73CF7AB07643531FB23E /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
DC7FC30109CCD5376F6BFA0F /* Pods_Runner.framework */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
/* End PBXGroup section */
|
||||
|
||||
/* Begin PBXNativeTarget section */
|
||||
@@ -105,12 +131,15 @@
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */;
|
||||
buildPhases = (
|
||||
2427B225240D99C3274E4E9F /* [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 */,
|
||||
);
|
||||
buildRules = (
|
||||
);
|
||||
@@ -127,7 +156,7 @@
|
||||
97C146E61CF9000F007C117D /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastUpgradeCheck = 1300;
|
||||
LastUpgradeCheck = 1430;
|
||||
ORGANIZATIONNAME = "";
|
||||
TargetAttributes = {
|
||||
97C146ED1CF9000F007C117D = {
|
||||
@@ -169,6 +198,45 @@
|
||||
/* 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 */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
|
||||
"${PODS_ROOT}/Manifest.lock",
|
||||
);
|
||||
name = "[CP] Check Pods Manifest.lock";
|
||||
outputFileListPaths = (
|
||||
);
|
||||
outputPaths = (
|
||||
"$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
3B06AD1E1E4923F5004D2608 /* Thin Binary */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
alwaysOutOfDate = 1;
|
||||
@@ -176,6 +244,7 @@
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${TARGET_BUILD_DIR}/${INFOPLIST_PATH}",
|
||||
);
|
||||
name = "Thin Binary";
|
||||
outputPaths = (
|
||||
@@ -199,6 +268,23 @@
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";
|
||||
};
|
||||
A1A5C179E86574032091061E /* [CP] Copy Pods Resources */ = {
|
||||
isa = PBXShellScriptBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
);
|
||||
inputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-input-files.xcfilelist",
|
||||
);
|
||||
name = "[CP] Copy Pods Resources";
|
||||
outputFileListPaths = (
|
||||
"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources-${CONFIGURATION}-output-files.xcfilelist",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-resources.sh\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
/* End PBXShellScriptBuildPhase section */
|
||||
|
||||
/* Begin PBXSourcesBuildPhase section */
|
||||
@@ -274,7 +360,7 @@
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = iphoneos;
|
||||
SUPPORTED_PLATFORMS = iphoneos;
|
||||
@@ -290,13 +376,18 @@
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
||||
DEVELOPMENT_TEAM = A89AY6VY4F;
|
||||
ENABLE_BITCODE = NO;
|
||||
INFOPLIST_FILE = Runner/Info.plist;
|
||||
INFOPLIST_KEY_CFBundleDisplayName = Regroup;
|
||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.regroup;
|
||||
MARKETING_VERSION = 1;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.regroup.wdi;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||
SWIFT_VERSION = 5.0;
|
||||
@@ -351,7 +442,7 @@
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
SDKROOT = iphoneos;
|
||||
@@ -400,7 +491,7 @@
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 11.0;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = iphoneos;
|
||||
SUPPORTED_PLATFORMS = iphoneos;
|
||||
@@ -418,13 +509,18 @@
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
||||
DEVELOPMENT_TEAM = A89AY6VY4F;
|
||||
ENABLE_BITCODE = NO;
|
||||
INFOPLIST_FILE = Runner/Info.plist;
|
||||
INFOPLIST_KEY_CFBundleDisplayName = Regroup;
|
||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.regroup;
|
||||
MARKETING_VERSION = 1;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.regroup.wdi;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
@@ -440,13 +536,18 @@
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CURRENT_PROJECT_VERSION = "$(FLUTTER_BUILD_NUMBER)";
|
||||
DEVELOPMENT_TEAM = A89AY6VY4F;
|
||||
ENABLE_BITCODE = NO;
|
||||
INFOPLIST_FILE = Runner/Info.plist;
|
||||
INFOPLIST_KEY_CFBundleDisplayName = Regroup;
|
||||
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.social-networking";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = (
|
||||
"$(inherited)",
|
||||
"@executable_path/Frameworks",
|
||||
);
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.example.regroup;
|
||||
MARKETING_VERSION = 1;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = com.regroup.wdi;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_OBJC_BRIDGING_HEADER = "Runner/Runner-Bridging-Header.h";
|
||||
SWIFT_VERSION = 5.0;
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "1300"
|
||||
LastUpgradeVersion = "1430"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CADisableMinimumFrameDurationOnPhone</key>
|
||||
<true/>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||
<key>CFBundleDisplayName</key>
|
||||
@@ -24,6 +26,8 @@
|
||||
<string>$(FLUTTER_BUILD_NUMBER)</string>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
<true/>
|
||||
<key>UIApplicationSupportsIndirectInputEvents</key>
|
||||
<true/>
|
||||
<key>UILaunchStoryboardName</key>
|
||||
<string>LaunchScreen</string>
|
||||
<key>UIMainStoryboardFile</key>
|
||||
@@ -43,9 +47,9 @@
|
||||
</array>
|
||||
<key>UIViewControllerBasedStatusBarAppearance</key>
|
||||
<false/>
|
||||
<key>CADisableMinimumFrameDurationOnPhone</key>
|
||||
<true/>
|
||||
<key>UIApplicationSupportsIndirectInputEvents</key>
|
||||
<true/>
|
||||
<key>NSPhotoLibraryAddUsageDescription</key>
|
||||
<string>Regroup get write-only access to the user photo library</string>
|
||||
<key>NSPhotoLibraryUsageDescription</key>
|
||||
<string>Allow access to photo library</string>
|
||||
</dict>
|
||||
</plist>
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:flutter_svg/flutter_svg.dart';
|
||||
import 'package:glassmorphism/glassmorphism.dart';
|
||||
import 'package:regroup/Common/controller/MainController.dart';
|
||||
|
||||
@@ -8,7 +9,7 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
width: double.infinity,
|
||||
height: 83.h,
|
||||
borderRadius: 2,
|
||||
blur: 30,
|
||||
blur: 6,
|
||||
alignment: Alignment.center,
|
||||
border: 0,
|
||||
linearGradient: LinearGradient(
|
||||
@@ -16,7 +17,7 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
end: Alignment.bottomRight,
|
||||
colors: [
|
||||
Colors.white.withOpacity(0.04),
|
||||
Color(0xFFFFFFFF).withOpacity(0.05),
|
||||
const Color(0xFFFFFFFF).withOpacity(0.05),
|
||||
],
|
||||
stops: const [
|
||||
0.1,
|
||||
@@ -31,7 +32,6 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
],
|
||||
),
|
||||
child: BottomNavigationBar(
|
||||
// backgroundColor: ,
|
||||
type: BottomNavigationBarType.fixed,
|
||||
backgroundColor: const Color(0xFFFFFFFF).withOpacity(0),
|
||||
showUnselectedLabels: true,
|
||||
@@ -41,22 +41,22 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
fontSize: 10.sp,
|
||||
color: const Color(0xFF676767),
|
||||
fontWeight: FontWeight.w400,
|
||||
fontFamily: 'hiragino'),
|
||||
fontFamily: 'Helvetica'),
|
||||
selectedLabelStyle: TextStyle(
|
||||
fontSize: 10.sp,
|
||||
color: const Color(0xFFFFFFFF),
|
||||
fontWeight: FontWeight.w400,
|
||||
fontFamily: 'hiragino'),
|
||||
fontFamily: 'Helvetica'),
|
||||
currentIndex: _mainController.selectedIndex.value,
|
||||
onTap: (index) {
|
||||
_mainController.updateTab(index);
|
||||
},
|
||||
items: [
|
||||
BottomNavigationBarItem(
|
||||
icon: Image.asset(
|
||||
'assets/images/png/BottomBar/inactiveHome.png',
|
||||
height: 26.h,
|
||||
width: 26.w,
|
||||
icon: SvgPicture.asset(
|
||||
'assets/images/svg/fluent_home-20-regular.svg',
|
||||
height: 25.h,
|
||||
width: 25.w,
|
||||
),
|
||||
// Icon(
|
||||
// Icons.home,
|
||||
@@ -67,13 +67,13 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
children: [
|
||||
if (_mainController.selectedIndex.value == 0)
|
||||
Container(
|
||||
height: 40.h,
|
||||
width: 40.w,
|
||||
height: 39.h,
|
||||
// width: 40.w,
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: Color(0xFFD90B2E).withOpacity(0.16),
|
||||
color: Colors.amber,
|
||||
spreadRadius: 15,
|
||||
blurRadius: 25,
|
||||
offset: const Offset(0, 10),
|
||||
@@ -81,27 +81,27 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
],
|
||||
),
|
||||
),
|
||||
Positioned(
|
||||
left: 0,
|
||||
right: 0,
|
||||
top: -15,
|
||||
child: Container(
|
||||
height: 2.h,
|
||||
width: 20.w,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10.r),
|
||||
color: Color(0xFFD90B2E)),
|
||||
)),
|
||||
// Positioned(
|
||||
// left: 0,
|
||||
// right: 0,
|
||||
// top: -15,
|
||||
// child: Container(
|
||||
// height: 2.h,
|
||||
// width: 20.w,
|
||||
// decoration: BoxDecoration(
|
||||
// borderRadius: BorderRadius.circular(10.r),
|
||||
// color: const Color(0xFFD90B2E)),
|
||||
// )),
|
||||
Positioned(
|
||||
top: 0,
|
||||
bottom: 0,
|
||||
right: 0,
|
||||
left: 0,
|
||||
child: Center(
|
||||
child: Image.asset(
|
||||
'assets/images/png/BottomBar/ActiveHome.png',
|
||||
height: 30.h,
|
||||
width: 30.w,
|
||||
child: SvgPicture.asset(
|
||||
'assets/images/svg/fluent_home-20-regular.svg',
|
||||
// height: 25.h,
|
||||
// width: 25.w,
|
||||
),
|
||||
),
|
||||
)
|
||||
@@ -128,7 +128,7 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
shape: BoxShape.circle,
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: Color(0xFFD90B2E).withOpacity(0.16),
|
||||
color: const Color(0xFFD90B2E).withOpacity(0.16),
|
||||
spreadRadius: 15,
|
||||
blurRadius: 25,
|
||||
offset: const Offset(0, 10),
|
||||
@@ -145,7 +145,7 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
width: 20.w,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10.r),
|
||||
color: Color(0xFFD90B2E)),
|
||||
color: const Color(0xFFD90B2E)),
|
||||
)),
|
||||
Positioned(
|
||||
left: 0,
|
||||
@@ -182,7 +182,7 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
shape: BoxShape.circle,
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: Color(0xFFD90B2E).withOpacity(0.16),
|
||||
color: const Color(0xFFD90B2E).withOpacity(0.16),
|
||||
spreadRadius: 15,
|
||||
blurRadius: 25,
|
||||
offset: const Offset(0, 10),
|
||||
@@ -199,7 +199,7 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
width: 20.w,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10.r),
|
||||
color: Color(0xFFD90B2E)),
|
||||
color: const Color(0xFFD90B2E)),
|
||||
)),
|
||||
Positioned(
|
||||
left: 0,
|
||||
@@ -236,7 +236,7 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
shape: BoxShape.circle,
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: Color(0xFFD90B2E).withOpacity(0.16),
|
||||
color: const Color(0xFFD90B2E).withOpacity(0.16),
|
||||
spreadRadius: 15,
|
||||
blurRadius: 25,
|
||||
offset: const Offset(0, 10),
|
||||
@@ -253,7 +253,7 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
width: 20.w,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10.r),
|
||||
color: Color(0xFFD90B2E)),
|
||||
color: const Color(0xFFD90B2E)),
|
||||
)),
|
||||
Positioned(
|
||||
left: 0,
|
||||
@@ -290,7 +290,7 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
shape: BoxShape.circle,
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: Color(0xFFD90B2E).withOpacity(0.16),
|
||||
color: const Color(0xFFD90B2E).withOpacity(0.16),
|
||||
spreadRadius: 15,
|
||||
blurRadius: 25,
|
||||
offset: const Offset(0, 10),
|
||||
@@ -307,7 +307,7 @@ GlassmorphicContainer bottomnavigationbar(MainController _mainController) {
|
||||
width: 20.w,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(10.r),
|
||||
color: Color(0xFFD90B2E)),
|
||||
color: const Color(0xFFD90B2E)),
|
||||
)),
|
||||
Positioned(
|
||||
left: 0,
|
||||
|
||||
@@ -34,13 +34,13 @@ class _CommunityScreenState extends State<CommunityScreen> {
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
backgroundColor: const Color(0xFF222935),
|
||||
// drawerEnableOpenDragGesture: false,
|
||||
drawer: SizedBox(width: 300.w, child: SideMenu()),
|
||||
drawer: SizedBox(width: 300.w, child: const SideMenu()),
|
||||
extendBody: true,
|
||||
appBar: AppBar(
|
||||
scrolledUnderElevation: 0.0,
|
||||
backgroundColor: Color(0xff222935),
|
||||
backgroundColor: const Color(0xff222935),
|
||||
elevation: 0,
|
||||
automaticallyImplyLeading: false,
|
||||
titleSpacing: 0,
|
||||
@@ -86,53 +86,52 @@ class _CommunityScreenState extends State<CommunityScreen> {
|
||||
sizedBoxWidth(16.w),
|
||||
],
|
||||
),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Stack(children: [
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 16),
|
||||
child: Column(children: [
|
||||
Expanded(
|
||||
child: DefaultTabController(
|
||||
length: 3,
|
||||
// initialIndex: selectedIndex.value,
|
||||
child: Column(
|
||||
children: [
|
||||
CommonTabBar(tabs: const [
|
||||
Tab(
|
||||
text: 'Feed',
|
||||
),
|
||||
Tab(
|
||||
text: 'Popular',
|
||||
),
|
||||
Tab(
|
||||
text: 'Latest',
|
||||
),
|
||||
]),
|
||||
Expanded(
|
||||
child: TabBarView(
|
||||
children: [
|
||||
feedTab(),
|
||||
popularTab(),
|
||||
latestTab(),
|
||||
],
|
||||
),
|
||||
body:
|
||||
// const CommonBlurLeftRed(),
|
||||
// const CommonBlurRightRed(),
|
||||
// const CommonBlurLeft(),
|
||||
// const CommonBlurRight(),
|
||||
Stack(children: [
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 16),
|
||||
child: Column(children: [
|
||||
Expanded(
|
||||
child: DefaultTabController(
|
||||
length: 3,
|
||||
// initialIndex: selectedIndex.value,
|
||||
child: Column(
|
||||
children: [
|
||||
CommonTabBar(tabs: const [
|
||||
Tab(
|
||||
text: 'Feed',
|
||||
),
|
||||
sizedBoxHeight(90.h)
|
||||
],
|
||||
),
|
||||
Tab(
|
||||
text: 'Popular',
|
||||
),
|
||||
Tab(
|
||||
text: 'Latest',
|
||||
),
|
||||
]),
|
||||
Expanded(
|
||||
child: TabBarView(
|
||||
children: [
|
||||
feedTab(),
|
||||
popularTab(),
|
||||
latestTab(),
|
||||
],
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(90.h)
|
||||
],
|
||||
),
|
||||
),
|
||||
]))
|
||||
])
|
||||
),
|
||||
]))
|
||||
]),
|
||||
floatingActionButton: Container(
|
||||
height: 55.h,
|
||||
width: 55.w,
|
||||
decoration: BoxDecoration(
|
||||
decoration: const BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
@@ -146,9 +145,9 @@ class _CommunityScreenState extends State<CommunityScreen> {
|
||||
onPressed: () {
|
||||
Get.toNamed(RouteName.postscreen);
|
||||
},
|
||||
backgroundColor: Color(0xFFD90B2E),
|
||||
backgroundColor: const Color(0xFFD90B2E),
|
||||
autofocus: true,
|
||||
shape: CircleBorder(),
|
||||
shape: const CircleBorder(),
|
||||
child: Image.asset(
|
||||
"assets/images/png/iconamoon_edit-thin.png",
|
||||
height: 30.h,
|
||||
@@ -251,7 +250,7 @@ Widget announcecardtile({
|
||||
sizedBoxWidth(7.w),
|
||||
Icon(
|
||||
Icons.circle,
|
||||
color: Color(0xFFFCFCFC),
|
||||
color: const Color(0xFFFCFCFC),
|
||||
size: 4.sp,
|
||||
),
|
||||
sizedBoxWidth(6.w),
|
||||
@@ -260,12 +259,12 @@ Widget announcecardtile({
|
||||
)
|
||||
],
|
||||
),
|
||||
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) => <PopupMenuEntry>[
|
||||
PopupMenuItem(
|
||||
@@ -283,7 +282,7 @@ Widget announcecardtile({
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
const Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/Vector (5).png",
|
||||
height: 15.h,
|
||||
@@ -293,7 +292,7 @@ Widget announcecardtile({
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
const PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
@@ -309,7 +308,7 @@ Widget announcecardtile({
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
const Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/share.png",
|
||||
height: 20.h,
|
||||
@@ -319,7 +318,7 @@ Widget announcecardtile({
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
const PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
@@ -335,7 +334,7 @@ Widget announcecardtile({
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
const Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/f7_pin-fill (2).png",
|
||||
height: 25.h,
|
||||
@@ -405,7 +404,7 @@ Widget announcecardtile({
|
||||
'assets/images/png/party-popper 2.png'
|
||||
]),
|
||||
),
|
||||
Spacer(),
|
||||
const Spacer(),
|
||||
commonGlassContainer(
|
||||
border: 0.43,
|
||||
width: 30.w,
|
||||
@@ -490,11 +489,13 @@ Widget announcecardtile({
|
||||
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),
|
||||
@@ -592,7 +593,7 @@ Widget normalcardtile({
|
||||
sizedBoxWidth(7.w),
|
||||
Icon(
|
||||
Icons.circle,
|
||||
color: Color(0xFFFCFCFC),
|
||||
color: const Color(0xFFFCFCFC),
|
||||
size: 4.sp,
|
||||
),
|
||||
sizedBoxWidth(6.w),
|
||||
@@ -601,12 +602,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) => <PopupMenuEntry>[
|
||||
PopupMenuItem(
|
||||
@@ -624,7 +625,7 @@ Widget normalcardtile({
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
const Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/Vector (5).png",
|
||||
height: 15.h,
|
||||
@@ -634,7 +635,7 @@ Widget normalcardtile({
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
const PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
@@ -650,7 +651,7 @@ Widget normalcardtile({
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
const Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/share.png",
|
||||
height: 20.h,
|
||||
@@ -660,7 +661,7 @@ Widget normalcardtile({
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
const PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
@@ -676,7 +677,7 @@ Widget normalcardtile({
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
const Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/f7_pin-fill (2).png",
|
||||
height: 25.h,
|
||||
@@ -747,7 +748,7 @@ Widget normalcardtile({
|
||||
'assets/images/png/party-popper 2.png'
|
||||
]),
|
||||
),
|
||||
Spacer(),
|
||||
const Spacer(),
|
||||
commonGlassContainer(
|
||||
border: 0.43,
|
||||
width: 30.w,
|
||||
@@ -833,11 +834,13 @@ 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,
|
||||
direction: ReactionsBoxAlignment.rtl,
|
||||
|
||||
@@ -915,7 +918,7 @@ Widget containertile({required String text}) {
|
||||
width: 130.w,
|
||||
height: 30.h,
|
||||
borderradius: 30.r,
|
||||
borderColor: Color(0xFFD90B2E),
|
||||
borderColor: const Color(0xFFD90B2E),
|
||||
customWidget: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 10.w),
|
||||
child: Center(child: text14w400_FCFCFC(text)),
|
||||
|
||||
@@ -13,6 +13,7 @@ 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';
|
||||
import 'package:show_fps/show_fps.dart';
|
||||
|
||||
class LoginScreen extends StatefulWidget {
|
||||
const LoginScreen({super.key});
|
||||
@@ -22,471 +23,244 @@ class LoginScreen extends StatefulWidget {
|
||||
}
|
||||
|
||||
class _LoginScreenState extends State<LoginScreen> {
|
||||
TextEditingController _email = TextEditingController();
|
||||
final TextEditingController _email = TextEditingController();
|
||||
RxBool isObscured = true.obs;
|
||||
TextEditingController _password = TextEditingController();
|
||||
final TextEditingController _password = TextEditingController();
|
||||
// final GlobalKey<FormState> _form = GlobalKey<FormState>();
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
backgroundColor: Color.fromARGB(255, 18, 32, 47),
|
||||
body: Stack(
|
||||
children: [
|
||||
Positioned(top: 210, left: -30, child: CommonBlurLeftSecond()),
|
||||
Positioned(top: 400, right: -30, child: CommonBlurRightSecond()),
|
||||
Positioned(top: 550, left: -30, child: CommonBlurLeftBlue()),
|
||||
SingleChildScrollView(
|
||||
child: GlassmorphicContainer(
|
||||
width: MediaQuery.of(context).size.width,
|
||||
height:
|
||||
// 500.h,
|
||||
MediaQuery.of(context).size.height,
|
||||
borderRadius: 2,
|
||||
blur: 10,
|
||||
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),
|
||||
],
|
||||
),
|
||||
resizeToAvoidBottomInset:
|
||||
false, // Prevent resizing when the keyboard opens
|
||||
backgroundColor: const Color.fromARGB(255, 18, 32, 47),
|
||||
body: Stack(
|
||||
clipBehavior: Clip.none,
|
||||
children: [
|
||||
Container(
|
||||
decoration: const BoxDecoration(
|
||||
image: DecorationImage(
|
||||
image: AssetImage("assets/images/png/Choice screen.png"))),
|
||||
),
|
||||
Center(
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
SizedBox(
|
||||
height: 271.h,
|
||||
),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Container(
|
||||
width: double.infinity,
|
||||
height: 271.h,
|
||||
decoration: BoxDecoration(
|
||||
image: DecorationImage(
|
||||
image: AssetImage(
|
||||
"assets/images/png/blurwhole.png"),
|
||||
fit: BoxFit.fill)),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.end,
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.only(top: 100.h),
|
||||
child: Center(
|
||||
child: SvgPicture.asset(
|
||||
"assets/images/svg/onboarding2.svg",
|
||||
width: 104.w,
|
||||
height: 104.h,
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(15.h),
|
||||
Center(
|
||||
child: text22400white('Find your community')),
|
||||
],
|
||||
sizedBoxHeight(35.h),
|
||||
text16400white('Email address'),
|
||||
sizedBoxHeight(10.h),
|
||||
CustomTextFormField(
|
||||
textEditingController: _email,
|
||||
hintText: "Enter your email address",
|
||||
leadingIcon:
|
||||
// const Icon(Icons.mail_outline),
|
||||
SizedBox(
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
child: Image.asset(
|
||||
'assets/images/png/mail.png',
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
),
|
||||
),
|
||||
// validatorText: "Email Id",
|
||||
validator: (value) {
|
||||
if (value!.isEmpty) {
|
||||
return 'Enter your e-mail address';
|
||||
}
|
||||
if (!RegExp(
|
||||
r'^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$')
|
||||
.hasMatch(value)) {
|
||||
return 'Enter a valid e-mail address';
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: [
|
||||
LengthLimitingTextInputFormatter(30),
|
||||
RemoveEmojiInputFormatter()
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
text16400white('Password'),
|
||||
sizedBoxHeight(10.h),
|
||||
CustomTextFormField(
|
||||
isInputPassword: true,
|
||||
textEditingController: _password,
|
||||
hintText: 'Enter your password',
|
||||
leadingIcon: Image.asset(
|
||||
'assets/images/png/lock.png',
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
),
|
||||
validator: (val) {
|
||||
if (val == null || val.isEmpty) {
|
||||
return 'Please enter your password';
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: [
|
||||
LengthLimitingTextInputFormatter(20),
|
||||
RemoveEmojiInputFormatter()
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
Align(
|
||||
alignment: Alignment.centerRight,
|
||||
child: Padding(
|
||||
padding: EdgeInsets.only(right: 6.w),
|
||||
child: text14400white('Forgot password ?'),
|
||||
)),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
sizedBoxHeight(40.h),
|
||||
CustomButton(
|
||||
text: "Login",
|
||||
onPressed: () {
|
||||
Get.toNamed(RouteName.mainscreen);
|
||||
}),
|
||||
sizedBoxHeight(20.h),
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.signupscreen);
|
||||
},
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
sizedBoxHeight(35.h),
|
||||
text16400white('Email address'),
|
||||
sizedBoxHeight(10.h),
|
||||
// TextFormField(
|
||||
// style: TextStyle(
|
||||
// fontSize: 16.sp, color: Colors.white),
|
||||
// validator: (value) {
|
||||
// if (value == null || value.isEmpty) {
|
||||
// return "Please enter email";
|
||||
// }
|
||||
|
||||
// // Check if the entered value is a valid email address
|
||||
// bool isEmailValid = RegExp(
|
||||
// r'^[\w-]+(\.[\w-]+)*@([\w-]+\.)+[a-zA-Z]{2,7}$')
|
||||
// .hasMatch(value);
|
||||
|
||||
// if (!isEmailValid) {
|
||||
// return "Please enter valid email";
|
||||
// }
|
||||
|
||||
// return null;
|
||||
// },
|
||||
// inputFormatters: [
|
||||
// RemoveEmojiInputFormatter(),
|
||||
// LengthLimitingTextInputFormatter(50)
|
||||
// ],
|
||||
// controller: _email,
|
||||
// cursorColor: Colors.white,
|
||||
// autovalidateMode:
|
||||
// AutovalidateMode.onUserInteraction,
|
||||
// decoration: InputDecoration(
|
||||
// fillColor: Color(0xFFFFFFFF).withOpacity(0.10),
|
||||
// filled: true,
|
||||
// prefixIcon: Image.asset(
|
||||
// 'assets/images/png/mail.png',
|
||||
// width: 22.w,
|
||||
// height: 17.h,
|
||||
// ),
|
||||
// // Icon(
|
||||
// // Icons.mail_outline,
|
||||
// // color: Colors.white,
|
||||
// // ),
|
||||
// hintText: 'Enter your email address',
|
||||
// hintStyle: TextStyle(
|
||||
// color: Colors.white,
|
||||
// fontSize: 14.sp,
|
||||
// fontWeight: FontWeight.w400,
|
||||
// fontFamily:
|
||||
// "Helvetica" // Default label color
|
||||
// ),
|
||||
// enabledBorder: OutlineInputBorder(
|
||||
// borderSide: const BorderSide(
|
||||
// color: Color(0xFF434A53),
|
||||
// ),
|
||||
// borderRadius: BorderRadius.all(
|
||||
// Radius.circular(30.r),
|
||||
// ),
|
||||
// ),
|
||||
// focusedBorder: OutlineInputBorder(
|
||||
// borderSide: BorderSide(
|
||||
// color: Color(
|
||||
// 0xFF434A53), // Border color when focused
|
||||
// ),
|
||||
// borderRadius: BorderRadius.all(
|
||||
// Radius.circular(30.r),
|
||||
// ),
|
||||
// ),
|
||||
// errorBorder: OutlineInputBorder(
|
||||
// borderRadius: BorderRadius.circular(30.r),
|
||||
// borderSide:
|
||||
// const BorderSide(color: Colors.red),
|
||||
// ),
|
||||
// focusedErrorBorder: OutlineInputBorder(
|
||||
// // borderRadius: BorderRadius.circular(8.r),
|
||||
// borderSide: BorderSide(
|
||||
// color: Colors.red,
|
||||
// ),
|
||||
// borderRadius: BorderRadius.all(
|
||||
// Radius.circular(30.r),
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
CustomTextFormField(
|
||||
textEditingController: _email,
|
||||
hintText: "Enter your email address",
|
||||
leadingIcon:
|
||||
// const Icon(Icons.mail_outline),
|
||||
SizedBox(
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
child: Image.asset(
|
||||
'assets/images/png/mail.png',
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
),
|
||||
),
|
||||
// validatorText: "Email Id",
|
||||
validator: (value) {
|
||||
if (value!.isEmpty) {
|
||||
return 'Enter your e-mail address';
|
||||
}
|
||||
if (!RegExp(
|
||||
r'^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$')
|
||||
.hasMatch(value)) {
|
||||
return 'Enter a valid e-mail address';
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: [
|
||||
LengthLimitingTextInputFormatter(30),
|
||||
RemoveEmojiInputFormatter()
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
text16400white('Password'),
|
||||
sizedBoxHeight(10.h),
|
||||
// Obx(() {
|
||||
// return TextFormField(
|
||||
// style: TextStyle(
|
||||
// fontSize: 16.sp, color: Colors.white),
|
||||
// cursorColor: Colors.white,
|
||||
// autovalidateMode:
|
||||
// AutovalidateMode.onUserInteraction,
|
||||
// obscureText: isObscured.value,
|
||||
// controller: _password,
|
||||
// decoration: InputDecoration(
|
||||
// filled: true,
|
||||
// fillColor:
|
||||
// Color(0xFFFFFFFF).withOpacity(0.10),
|
||||
// prefixIcon: Image.asset(
|
||||
// 'assets/images/png/lock.png',
|
||||
// width: 22.w,
|
||||
// height: 17.h,
|
||||
// ),
|
||||
// // const Icon(
|
||||
// // Icons.lock_outline,
|
||||
// // color: Colors.white,
|
||||
// // ),
|
||||
// suffixIcon: Padding(
|
||||
// padding: EdgeInsets.only(right: 5.w),
|
||||
// child: IconButton(
|
||||
// onPressed: () {
|
||||
// isObscured.value = !isObscured.value;
|
||||
// },
|
||||
// color: Color(0xFF959595),
|
||||
// icon: isObscured.value
|
||||
// // ? const Icon(Icons.visibility_off)
|
||||
// // : const Icon(Icons.visibility)),
|
||||
// ? SvgPicture.asset(
|
||||
// "assets/images/svg/loginpasswordclose.svg")
|
||||
// // const Icon(Icons.remove_red_eye)
|
||||
// : SvgPicture.asset(
|
||||
// 'assets/images/svg/loginpasswordopen.svg')
|
||||
// // const Icon(
|
||||
// // Icons.remove_red_eye_outlined)
|
||||
// ),
|
||||
// ),
|
||||
// hintText: 'Enter your password',
|
||||
// hintStyle: TextStyle(
|
||||
// color: Colors.white,
|
||||
// fontSize: 14.sp,
|
||||
// fontWeight: FontWeight.w400,
|
||||
// fontFamily:
|
||||
// "Helvetica" // Default label color
|
||||
// ),
|
||||
// enabledBorder: OutlineInputBorder(
|
||||
// borderSide: const BorderSide(
|
||||
// color: Color(0xFF434A53),
|
||||
// ),
|
||||
// borderRadius: BorderRadius.all(
|
||||
// Radius.circular(30.r),
|
||||
// ),
|
||||
// ),
|
||||
// focusedBorder: OutlineInputBorder(
|
||||
// borderSide: BorderSide(
|
||||
// color: Color(
|
||||
// 0xFF434A53), // Border color when focused
|
||||
// ),
|
||||
// borderRadius: BorderRadius.all(
|
||||
// Radius.circular(30.r),
|
||||
// ),
|
||||
// ),
|
||||
// errorBorder: OutlineInputBorder(
|
||||
// borderRadius: BorderRadius.circular(30.r),
|
||||
// borderSide:
|
||||
// const BorderSide(color: Colors.red),
|
||||
// ),
|
||||
// focusedErrorBorder: OutlineInputBorder(
|
||||
// // borderRadius: BorderRadius.circular(8.r),
|
||||
// borderSide: BorderSide(
|
||||
// color: Colors.red,
|
||||
// ),
|
||||
// borderRadius: BorderRadius.all(
|
||||
// Radius.circular(30.r),
|
||||
// ),
|
||||
// ),
|
||||
// ),
|
||||
// validator: (val) {
|
||||
// if (val == null || val.isEmpty) {
|
||||
// return 'Please enter your password';
|
||||
// }
|
||||
// return null;
|
||||
// },
|
||||
// inputFormatters: [
|
||||
// RemoveEmojiInputFormatter(),
|
||||
// LengthLimitingTextInputFormatter(50)
|
||||
// ],
|
||||
// );
|
||||
// }),
|
||||
CustomTextFormField(
|
||||
isInputPassword: true,
|
||||
textEditingController: _password,
|
||||
hintText: 'Enter your password',
|
||||
leadingIcon: Image.asset(
|
||||
'assets/images/png/lock.png',
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
),
|
||||
// const Icon(Icons.lock_outline),
|
||||
// validationMessage: "Enter your password",
|
||||
validator: (val) {
|
||||
if (val == null || val.isEmpty) {
|
||||
return 'Please enter your password';
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: [
|
||||
LengthLimitingTextInputFormatter(20),
|
||||
RemoveEmojiInputFormatter()
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
Align(
|
||||
alignment: Alignment.centerRight,
|
||||
child: Padding(
|
||||
padding: EdgeInsets.only(right: 6.w),
|
||||
child: text14400white('Forgot password ?'),
|
||||
)),
|
||||
sizedBoxHeight(40.h),
|
||||
CustomButton(text: "Login", onPressed: () {
|
||||
Get.toNamed(RouteName.mainscreen);
|
||||
}),
|
||||
sizedBoxHeight(20.h),
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.signupscreen);
|
||||
},
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text14400white('Don’t have account ? '),
|
||||
sizedBoxWidth(5.w),
|
||||
text14700white('Sign up')
|
||||
],
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(30.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Container(
|
||||
width: 160,
|
||||
decoration: ShapeDecoration(
|
||||
shape: RoundedRectangleBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
strokeAlign:
|
||||
BorderSide.strokeAlignCenter,
|
||||
color: Color(0xFF434A53),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(6.w),
|
||||
text14400white('Or'),
|
||||
sizedBoxWidth(6.w),
|
||||
Container(
|
||||
width: 160,
|
||||
decoration: ShapeDecoration(
|
||||
shape: RoundedRectangleBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
strokeAlign:
|
||||
BorderSide.strokeAlignCenter,
|
||||
color: Color(0xFF434A53),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
Center(
|
||||
child: SizedBox(
|
||||
width: 220.w,
|
||||
child: Row(
|
||||
children: [
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: Alignment(0.71, -0.70),
|
||||
end: Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white.withOpacity(
|
||||
0.07999999821186066),
|
||||
Colors.white.withOpacity(
|
||||
0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login2.png'))),
|
||||
),
|
||||
Spacer(),
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: Alignment(0.71, -0.70),
|
||||
end: Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white.withOpacity(
|
||||
0.07999999821186066),
|
||||
Colors.white.withOpacity(
|
||||
0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login3.png'))),
|
||||
),
|
||||
Spacer(),
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: Alignment(0.71, -0.70),
|
||||
end: Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white.withOpacity(
|
||||
0.07999999821186066),
|
||||
Colors.white.withOpacity(
|
||||
0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login4.png'))),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
)
|
||||
text14400white('Don’t have account ? '),
|
||||
sizedBoxWidth(5.w),
|
||||
text14700white('Sign up')
|
||||
],
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(30.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Container(
|
||||
width: 160,
|
||||
decoration: const ShapeDecoration(
|
||||
shape: RoundedRectangleBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
strokeAlign: BorderSide.strokeAlignCenter,
|
||||
color: Color(0xFF434A53),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(6.w),
|
||||
text14400white('Or'),
|
||||
sizedBoxWidth(6.w),
|
||||
Container(
|
||||
width: 160,
|
||||
decoration: const ShapeDecoration(
|
||||
shape: RoundedRectangleBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
strokeAlign: BorderSide.strokeAlignCenter,
|
||||
color: Color(0xFF434A53),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
Center(
|
||||
child: SizedBox(
|
||||
width: 220.w,
|
||||
child: Row(
|
||||
children: [
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: const Alignment(0.71, -0.70),
|
||||
end: const Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white
|
||||
.withOpacity(0.07999999821186066),
|
||||
Colors.white
|
||||
.withOpacity(0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: const OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: const DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login2.png'))),
|
||||
),
|
||||
const Spacer(),
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: const Alignment(0.71, -0.70),
|
||||
end: const Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white
|
||||
.withOpacity(0.07999999821186066),
|
||||
Colors.white
|
||||
.withOpacity(0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: const OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: const DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login3.png'))),
|
||||
),
|
||||
const Spacer(),
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: const Alignment(0.71, -0.70),
|
||||
end: const Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white
|
||||
.withOpacity(0.07999999821186066),
|
||||
Colors.white
|
||||
.withOpacity(0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: const OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: const DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login4.png'))),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
)
|
||||
],
|
||||
)),
|
||||
),
|
||||
)
|
||||
],
|
||||
),
|
||||
],
|
||||
));
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -83,7 +83,7 @@ class _CustomTextFormFieldState extends State<CustomTextFormField> {
|
||||
width: double.infinity,
|
||||
height: 50,
|
||||
borderRadius: 30,
|
||||
blur: 10,
|
||||
blur: 6,
|
||||
alignment: Alignment.bottomCenter,
|
||||
border: 0.8,
|
||||
linearGradient: LinearGradient(
|
||||
@@ -93,7 +93,7 @@ class _CustomTextFormFieldState extends State<CustomTextFormField> {
|
||||
const Color(0xFFffffff).withOpacity(widget.opacity1),
|
||||
const Color(0xFFFFFFFF).withOpacity(widget.opacity2),
|
||||
],
|
||||
stops: [
|
||||
stops: const [
|
||||
0.1,
|
||||
1,
|
||||
]),
|
||||
@@ -120,7 +120,7 @@ class _CustomTextFormFieldState extends State<CustomTextFormField> {
|
||||
decoration: InputDecoration(
|
||||
hintText: widget.hintText,
|
||||
prefixIconColor: widget.prefixIconColor,
|
||||
constraints: BoxConstraints(minHeight: 50),
|
||||
constraints: const BoxConstraints(minHeight: 50),
|
||||
hintStyle: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
color: Colors.white,
|
||||
@@ -129,7 +129,7 @@ class _CustomTextFormFieldState extends State<CustomTextFormField> {
|
||||
prefixIcon: widget.leadingIcon == null
|
||||
? null
|
||||
: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 10),
|
||||
padding: const EdgeInsets.symmetric(horizontal: 10),
|
||||
child: widget.leadingIcon!,
|
||||
),
|
||||
suffixIcon: widget.isInputPassword
|
||||
@@ -140,7 +140,7 @@ class _CustomTextFormFieldState extends State<CustomTextFormField> {
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.only(right: 20.0),
|
||||
padding: const EdgeInsets.only(right: 20.0),
|
||||
child: SvgPicture.asset(
|
||||
"assets/images/svg/loginpasswordclose.svg",
|
||||
),
|
||||
@@ -151,7 +151,7 @@ class _CustomTextFormFieldState extends State<CustomTextFormField> {
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.only(right: 20.0),
|
||||
padding: const EdgeInsets.only(right: 20.0),
|
||||
child: SvgPicture.asset(
|
||||
'assets/images/svg/loginpasswordopen.svg',
|
||||
),
|
||||
@@ -176,7 +176,7 @@ class _CustomTextFormFieldState extends State<CustomTextFormField> {
|
||||
),
|
||||
sizedBoxHeight(5.h),
|
||||
widget.validationMessage == null
|
||||
? SizedBox()
|
||||
? const SizedBox()
|
||||
: Text(
|
||||
widget.validationMessage ?? '',
|
||||
style: TextStyle(color: Colors.red, fontSize: 12.sp),
|
||||
@@ -256,7 +256,7 @@ class _CustomTextFormField2State extends State<CustomTextFormField2> {
|
||||
width: double.infinity,
|
||||
height: 100.h,
|
||||
borderRadius: 10,
|
||||
blur: 10,
|
||||
blur: 6,
|
||||
alignment: Alignment.bottomCenter,
|
||||
border: 0.8,
|
||||
linearGradient: LinearGradient(
|
||||
@@ -266,7 +266,7 @@ class _CustomTextFormField2State extends State<CustomTextFormField2> {
|
||||
const Color(0xFFffffff).withOpacity(0.04),
|
||||
const Color(0xFFFFFFFF).withOpacity(0.05),
|
||||
],
|
||||
stops: [
|
||||
stops: const [
|
||||
0.1,
|
||||
1,
|
||||
]),
|
||||
@@ -293,7 +293,7 @@ class _CustomTextFormField2State extends State<CustomTextFormField2> {
|
||||
decoration: InputDecoration(
|
||||
hintText: widget.hintText,
|
||||
prefixIconColor: widget.prefixIconColor,
|
||||
constraints: BoxConstraints(minHeight: 50),
|
||||
constraints: const BoxConstraints(minHeight: 50),
|
||||
|
||||
hintStyle: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
@@ -452,7 +452,7 @@ class _CustomtextFormFieldPasswordState
|
||||
const Color(0xFFffffff).withOpacity(0.04),
|
||||
const Color(0xFFFFFFFF).withOpacity(0.05),
|
||||
],
|
||||
stops: [0.1, 1],
|
||||
stops: const [0.1, 1],
|
||||
),
|
||||
borderGradient: const LinearGradient(
|
||||
begin: Alignment.topLeft,
|
||||
@@ -485,9 +485,10 @@ class _CustomtextFormFieldPasswordState
|
||||
labelStyle: const TextStyle(color: Colors.white),
|
||||
errorStyle: TextStyle(
|
||||
fontSize: 13.sp,
|
||||
color: Color.fromARGB(255, 245, 130, 122),
|
||||
color: const Color.fromARGB(255, 245, 130, 122),
|
||||
),
|
||||
contentPadding: EdgeInsets.symmetric(vertical: 10, horizontal: 0),
|
||||
contentPadding:
|
||||
const EdgeInsets.symmetric(vertical: 10, horizontal: 0),
|
||||
filled: true,
|
||||
fillColor:
|
||||
Colors.transparent, // Make sure fillColor is transparent
|
||||
@@ -504,7 +505,7 @@ class _CustomtextFormFieldPasswordState
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.only(right: 20.0),
|
||||
padding: const EdgeInsets.only(right: 20.0),
|
||||
child: SvgPicture.asset(
|
||||
"assets/images/svg/loginpasswordclose.svg",
|
||||
),
|
||||
@@ -515,7 +516,7 @@ class _CustomtextFormFieldPasswordState
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.only(right: 20.0),
|
||||
padding: const EdgeInsets.only(right: 20.0),
|
||||
child: SvgPicture.asset(
|
||||
'assets/images/svg/loginpasswordopen.svg',
|
||||
),
|
||||
@@ -624,7 +625,7 @@ class _SearchTextFormFieldState extends State<SearchTextFormField> {
|
||||
const Color(0xFFffffff).withOpacity(0.04),
|
||||
const Color(0xFFFFFFFF).withOpacity(0.05),
|
||||
],
|
||||
stops: [
|
||||
stops: const [
|
||||
0.1,
|
||||
1,
|
||||
]),
|
||||
@@ -651,7 +652,7 @@ class _SearchTextFormFieldState extends State<SearchTextFormField> {
|
||||
decoration: InputDecoration(
|
||||
hintText: widget.hintText,
|
||||
prefixIconColor: widget.prefixIconColor,
|
||||
constraints: BoxConstraints(minHeight: 50),
|
||||
constraints: const BoxConstraints(minHeight: 50),
|
||||
hintStyle: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
color: Colors.white,
|
||||
@@ -667,7 +668,7 @@ class _SearchTextFormFieldState extends State<SearchTextFormField> {
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.only(right: 20.0),
|
||||
padding: const EdgeInsets.only(right: 20.0),
|
||||
child: SvgPicture.asset(
|
||||
"assets/images/svg/loginpasswordclose.svg",
|
||||
),
|
||||
@@ -678,7 +679,7 @@ class _SearchTextFormFieldState extends State<SearchTextFormField> {
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.only(right: 20.0),
|
||||
padding: const EdgeInsets.only(right: 20.0),
|
||||
child: SvgPicture.asset(
|
||||
'assets/images/svg/loginpasswordopen.svg',
|
||||
),
|
||||
|
||||
@@ -19,13 +19,10 @@ class CommonBlurLeftRed extends StatelessWidget {
|
||||
shape: BoxShape.circle,
|
||||
color: Color(0x4CD90B2E).withOpacity(0.5),
|
||||
),
|
||||
child: BackdropFilter(
|
||||
filter: ImageFilter.blur(sigmaX: 30, sigmaY: 30),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -49,13 +46,10 @@ class CommonBlurRightRed extends StatelessWidget {
|
||||
shape: BoxShape.circle,
|
||||
color: Color(0x4CD90B2E).withOpacity(0.5),
|
||||
),
|
||||
child: BackdropFilter(
|
||||
filter: ImageFilter.blur(sigmaX: 30, sigmaY: 30),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -79,13 +73,10 @@ class CommonBlurLeft extends StatelessWidget {
|
||||
shape: BoxShape.circle,
|
||||
color: Color(0xFF009DAB).withOpacity(0.50),
|
||||
),
|
||||
child: BackdropFilter(
|
||||
filter: ImageFilter.blur(sigmaX: 30, sigmaY: 30),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -109,13 +100,10 @@ class CommonBlurRight extends StatelessWidget {
|
||||
shape: BoxShape.circle,
|
||||
color: Color(0xFF009DAB).withOpacity(0.50),
|
||||
),
|
||||
child: BackdropFilter(
|
||||
filter: ImageFilter.blur(sigmaX: 30, sigmaY: 30),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
),
|
||||
);
|
||||
@@ -136,13 +124,10 @@ class CommonBlurLeftSecond extends StatelessWidget {
|
||||
shape: BoxShape.circle,
|
||||
color: Color(0x4CD90B2E).withOpacity(0.5),
|
||||
),
|
||||
child: BackdropFilter(
|
||||
filter: ImageFilter.blur(sigmaX: 30, sigmaY: 30),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
);
|
||||
}
|
||||
@@ -162,13 +147,10 @@ class CommonBlurRightSecond extends StatelessWidget {
|
||||
shape: BoxShape.circle,
|
||||
color: Color(0x4CD90B2E).withOpacity(0.5),
|
||||
),
|
||||
child: BackdropFilter(
|
||||
filter: ImageFilter.blur(sigmaX: 30, sigmaY: 30),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
);
|
||||
}
|
||||
@@ -188,13 +170,10 @@ class CommonBlurLeftBlue extends StatelessWidget {
|
||||
shape: BoxShape.circle,
|
||||
color: Color(0xFF009DAB).withOpacity(0.50),
|
||||
),
|
||||
child: BackdropFilter(
|
||||
filter: ImageFilter.blur(sigmaX: 30, sigmaY: 30),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
child: Container(
|
||||
height: 200,
|
||||
width: 200,
|
||||
color: Colors.transparent,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -11,19 +11,15 @@ import 'package:permission_handler/permission_handler.dart';
|
||||
import 'package:regroup/Utils/dialogs.dart';
|
||||
import 'package:regroup/resources/routes/route_name.dart';
|
||||
import 'package:regroup/resources/routes/routes.dart';
|
||||
import 'package:shared_preferences/shared_preferences.dart';
|
||||
|
||||
// void main() {
|
||||
// runApp(const MyApp());
|
||||
// }
|
||||
import 'package:statsfl/statsfl.dart';
|
||||
|
||||
Future<void> main() async {
|
||||
WidgetsFlutterBinding.ensureInitialized();
|
||||
SharedPreferences prefs = await SharedPreferences.getInstance();
|
||||
|
||||
SystemChrome.setPreferredOrientations([
|
||||
DeviceOrientation.portraitUp,
|
||||
]).then((value) => runApp(const MyApp()));
|
||||
]).then((value) => runApp(StatsFl(
|
||||
align: Alignment.center, width: 200, height: 100, child: const MyApp())));
|
||||
}
|
||||
|
||||
class MyApp extends StatefulWidget {
|
||||
@@ -40,16 +36,14 @@ class _MyAppState extends State<MyApp> {
|
||||
builder: (BuildContext context, Widget? child) => GetMaterialApp(
|
||||
title: 'Regroup',
|
||||
theme: ThemeData(
|
||||
primarySwatch:
|
||||
// createPrimarySwatch(Color(0xFF737373)),
|
||||
Colors.grey,
|
||||
primarySwatch: Colors.grey,
|
||||
fontFamily: 'Cambria',
|
||||
),
|
||||
debugShowCheckedModeBanner: false,
|
||||
initialRoute: RouteName.mainscreen,
|
||||
initialRoute: RouteName.splashScreen,
|
||||
getPages: AppRoutes.appRoutes(),
|
||||
),
|
||||
designSize: const Size(390, 848),
|
||||
designSize: const Size(390, 844),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -12,6 +12,7 @@ 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:show_fps/show_fps.dart';
|
||||
|
||||
class SignupScreen extends StatefulWidget {
|
||||
const SignupScreen({super.key});
|
||||
@@ -41,387 +42,361 @@ class _SignupScreenState extends State<SignupScreen> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
backgroundColor: Color.fromARGB(255, 18, 32, 47),
|
||||
resizeToAvoidBottomInset: false,
|
||||
backgroundColor: const Color.fromARGB(255, 18, 32, 47),
|
||||
body: Stack(
|
||||
children: [
|
||||
Positioned(top: 210, left: -30, child: CommonBlurLeftSecond()),
|
||||
Positioned(top: 400, right: -30, child: CommonBlurRightSecond()),
|
||||
Positioned(top: 550, left: -30, child: CommonBlurLeftBlue()),
|
||||
GlassmorphicContainer(
|
||||
width: MediaQuery.of(context).size.width,
|
||||
height:
|
||||
// 500.h,
|
||||
MediaQuery.of(context).size.height,
|
||||
borderRadius: 2,
|
||||
blur: 10,
|
||||
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: ListView(physics: ScrollPhysics(), children: [
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Container(
|
||||
width: double.infinity,
|
||||
height: 221.h,
|
||||
decoration: BoxDecoration(
|
||||
// color: Colors.red,
|
||||
image: DecorationImage(
|
||||
image: AssetImage(
|
||||
"assets/images/png/blurwhole.png"),
|
||||
fit: BoxFit.fill)),
|
||||
Container(
|
||||
decoration: const BoxDecoration(
|
||||
image: DecorationImage(
|
||||
image:
|
||||
AssetImage("assets/images/png/Choice screen.png"))),
|
||||
),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
SizedBox(
|
||||
width: double.infinity,
|
||||
height: 221.h,
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.end,
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.only(top: 150.h),
|
||||
child:
|
||||
Center(child: text22400white('Create account')),
|
||||
),
|
||||
],
|
||||
)),
|
||||
Expanded(
|
||||
child: SingleChildScrollView(
|
||||
child: Column(
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.end,
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.only(top: 150.h),
|
||||
child: Center(
|
||||
child: text22400white('Create account')),
|
||||
text16400white('Email address'),
|
||||
sizedBoxHeight(10.h),
|
||||
CustomTextFormField(
|
||||
textEditingController: emailidcontroller,
|
||||
hintText: "Enter your email address",
|
||||
leadingIcon:
|
||||
// const Icon(Icons.mail_outline),
|
||||
SizedBox(
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
child: Image.asset(
|
||||
'assets/images/png/mail.png',
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
),
|
||||
),
|
||||
// validatorText: "Email Id",
|
||||
validator: (value) {
|
||||
if (value!.isEmpty) {
|
||||
return 'Enter your e-mail address';
|
||||
}
|
||||
if (!RegExp(
|
||||
r'^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$')
|
||||
.hasMatch(value)) {
|
||||
return 'Enter a valid e-mail address';
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: [
|
||||
LengthLimitingTextInputFormatter(20),
|
||||
RemoveEmojiInputFormatter()
|
||||
],
|
||||
),
|
||||
],
|
||||
)),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text16400white('Email address'),
|
||||
sizedBoxHeight(10.h),
|
||||
CustomTextFormField(
|
||||
textEditingController: emailidcontroller,
|
||||
hintText: "Enter your email address",
|
||||
leadingIcon:
|
||||
// const Icon(Icons.mail_outline),
|
||||
SizedBox(
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
child: Image.asset(
|
||||
'assets/images/png/mail.png',
|
||||
sizedBoxHeight(10.h),
|
||||
text16400white('Password'),
|
||||
sizedBoxHeight(10.h),
|
||||
CustomTextFormField(
|
||||
isInputPassword: true,
|
||||
textEditingController: _password,
|
||||
hintText: 'Enter your password',
|
||||
leadingIcon: Image.asset(
|
||||
'assets/images/png/lock.png',
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
),
|
||||
),
|
||||
// validatorText: "Email Id",
|
||||
validator: (value) {
|
||||
if (value!.isEmpty) {
|
||||
return 'Enter your e-mail address';
|
||||
}
|
||||
if (!RegExp(
|
||||
r'^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$')
|
||||
.hasMatch(value)) {
|
||||
return 'Enter a valid e-mail address';
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: [
|
||||
LengthLimitingTextInputFormatter(20),
|
||||
RemoveEmojiInputFormatter()
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
text16400white('Password'),
|
||||
sizedBoxHeight(10.h),
|
||||
CustomTextFormField(
|
||||
isInputPassword: true,
|
||||
textEditingController: _password,
|
||||
hintText: 'Enter your password',
|
||||
leadingIcon: Image.asset(
|
||||
'assets/images/png/lock.png',
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
),
|
||||
// const Icon(Icons.lock_outline),
|
||||
// validationMessage: "Enter your password",
|
||||
validator: (val) {
|
||||
if (val == null || val.isEmpty) {
|
||||
return 'Please enter your password';
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: [
|
||||
LengthLimitingTextInputFormatter(20),
|
||||
RemoveEmojiInputFormatter()
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
text16400white('Confirm password'),
|
||||
sizedBoxHeight(10.h),
|
||||
CustomTextFormField(
|
||||
isInputPassword: true,
|
||||
textEditingController: confirmpasscontroller,
|
||||
hintText: "Enter your password",
|
||||
leadingIcon: Image.asset(
|
||||
'assets/images/png/lock.png',
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
),
|
||||
// const Icon(Icons.lock_outline),
|
||||
// validatorText: "Enter your password",
|
||||
validator: (val) {
|
||||
if (val == null || val.isEmpty) {
|
||||
return 'Please enter your password';
|
||||
}
|
||||
if (val != _password.text) {
|
||||
return 'Password does not match';
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: [
|
||||
LengthLimitingTextInputFormatter(20),
|
||||
RemoveEmojiInputFormatter()
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
Row(
|
||||
children: [
|
||||
text16400white('Account type'),
|
||||
sizedBoxWidth(5.w),
|
||||
Image.asset(
|
||||
'assets/images/png/informationicon.png')
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
CustomDropDownWidgetSignup(
|
||||
header: 'Select account type',
|
||||
title: '',
|
||||
listData: _dropdownProductItems,
|
||||
onItemSelected: _onItemSelected,
|
||||
leadingImage: Image.asset(
|
||||
'assets/images/png/user.png',
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(30.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
SizedBox(
|
||||
width: 320.w,
|
||||
height: 42.h,
|
||||
child: Text.rich(
|
||||
TextSpan(
|
||||
children: [
|
||||
TextSpan(
|
||||
text:
|
||||
'By signing up to ReGroup you agree to our ',
|
||||
style: TextStyle(
|
||||
color: Color(0xCCFCFCFC),
|
||||
fontSize: 14.sp,
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w400,
|
||||
),
|
||||
),
|
||||
TextSpan(
|
||||
text: 'Terms and Conditions',
|
||||
style: TextStyle(
|
||||
color: Color(0xCCFCFCFC),
|
||||
fontSize: 14.sp,
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w700,
|
||||
decoration:
|
||||
TextDecoration.underline,
|
||||
decorationColor: Color(0xffFCFCFC)
|
||||
.withOpacity(0.80),
|
||||
),
|
||||
),
|
||||
TextSpan(
|
||||
text: ' and ',
|
||||
style: TextStyle(
|
||||
color: Color(0xCCFCFCFC),
|
||||
fontSize: 14.sp,
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w400,
|
||||
),
|
||||
),
|
||||
TextSpan(
|
||||
text: 'Privacy Policy',
|
||||
style: TextStyle(
|
||||
color: Color(0xCCFCFCFC),
|
||||
fontSize: 14.sp,
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w700,
|
||||
decoration:
|
||||
TextDecoration.underline,
|
||||
decorationColor: Color(0xffFCFCFC)
|
||||
.withOpacity(0.80),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
CustomButton(
|
||||
text: "Continue",
|
||||
onPressed: () {
|
||||
if (_selectedAccountType == 'Individual') {
|
||||
// Get.to(() => IndividualPage());
|
||||
print('individual selected');
|
||||
Get.toNamed(RouteName.verifyusercreen,
|
||||
arguments: _selectedAccountType);
|
||||
} else if (_selectedAccountType ==
|
||||
'Business') {
|
||||
print('business selected');
|
||||
Get.toNamed(RouteName.verifyusercreen,
|
||||
arguments: _selectedAccountType);
|
||||
|
||||
// Get.to(() => BusinessPage());
|
||||
} else {
|
||||
// Handle case where no selection is made
|
||||
utils.showToast(
|
||||
'Please select an account type');
|
||||
// const Icon(Icons.lock_outline),
|
||||
// validationMessage: "Enter your password",
|
||||
validator: (val) {
|
||||
if (val == null || val.isEmpty) {
|
||||
return 'Please enter your password';
|
||||
}
|
||||
}),
|
||||
sizedBoxHeight(20.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Container(
|
||||
width: 160,
|
||||
decoration: ShapeDecoration(
|
||||
shape: RoundedRectangleBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
strokeAlign:
|
||||
BorderSide.strokeAlignCenter,
|
||||
color: Color(0xFF434A53),
|
||||
),
|
||||
),
|
||||
),
|
||||
return null;
|
||||
},
|
||||
inputFormatters: [
|
||||
LengthLimitingTextInputFormatter(20),
|
||||
RemoveEmojiInputFormatter()
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
text16400white('Confirm password'),
|
||||
sizedBoxHeight(10.h),
|
||||
CustomTextFormField(
|
||||
isInputPassword: true,
|
||||
textEditingController: confirmpasscontroller,
|
||||
hintText: "Enter your password",
|
||||
leadingIcon: Image.asset(
|
||||
'assets/images/png/lock.png',
|
||||
width: 22.w,
|
||||
height: 17.h,
|
||||
),
|
||||
sizedBoxWidth(6.w),
|
||||
text14400white('Or'),
|
||||
sizedBoxWidth(6.w),
|
||||
Container(
|
||||
width: 160,
|
||||
decoration: ShapeDecoration(
|
||||
shape: RoundedRectangleBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
strokeAlign:
|
||||
BorderSide.strokeAlignCenter,
|
||||
color: Color(0xFF434A53),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
Center(
|
||||
child: SizedBox(
|
||||
width: 220.w,
|
||||
child: Row(
|
||||
children: [
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: Alignment(0.71, -0.70),
|
||||
end: Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white.withOpacity(
|
||||
0.07999999821186066),
|
||||
Colors.white.withOpacity(
|
||||
0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login2.png'))),
|
||||
),
|
||||
Spacer(),
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: Alignment(0.71, -0.70),
|
||||
end: Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white.withOpacity(
|
||||
0.07999999821186066),
|
||||
Colors.white.withOpacity(
|
||||
0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login3.png'))),
|
||||
),
|
||||
Spacer(),
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: Alignment(0.71, -0.70),
|
||||
end: Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white.withOpacity(
|
||||
0.07999999821186066),
|
||||
Colors.white.withOpacity(
|
||||
0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login4.png'))),
|
||||
),
|
||||
],
|
||||
// const Icon(Icons.lock_outline),
|
||||
// validatorText: "Enter your password",
|
||||
validator: (val) {
|
||||
if (val == null || val.isEmpty) {
|
||||
return 'Please enter your password';
|
||||
}
|
||||
if (val != _password.text) {
|
||||
return 'Password does not match';
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: [
|
||||
LengthLimitingTextInputFormatter(20),
|
||||
RemoveEmojiInputFormatter()
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
Row(
|
||||
children: [
|
||||
text16400white('Account type'),
|
||||
sizedBoxWidth(5.w),
|
||||
Image.asset(
|
||||
'assets/images/png/informationicon.png')
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
CustomDropDownWidgetSignup(
|
||||
header: 'Select account type',
|
||||
title: '',
|
||||
listData: _dropdownProductItems,
|
||||
onItemSelected: _onItemSelected,
|
||||
leadingImage: Image.asset(
|
||||
'assets/images/png/user.png',
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
],
|
||||
sizedBoxHeight(30.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
SizedBox(
|
||||
width: 320.w,
|
||||
height: 42.h,
|
||||
child: Text.rich(
|
||||
TextSpan(
|
||||
children: [
|
||||
TextSpan(
|
||||
text:
|
||||
'By signing up to ReGroup you agree to our ',
|
||||
style: TextStyle(
|
||||
color: const Color(0xCCFCFCFC),
|
||||
fontSize: 14.sp,
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w400,
|
||||
),
|
||||
),
|
||||
TextSpan(
|
||||
text: 'Terms and Conditions',
|
||||
style: TextStyle(
|
||||
color: const Color(0xCCFCFCFC),
|
||||
fontSize: 14.sp,
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w700,
|
||||
decoration:
|
||||
TextDecoration.underline,
|
||||
decorationColor:
|
||||
const Color(0xffFCFCFC)
|
||||
.withOpacity(0.80),
|
||||
),
|
||||
),
|
||||
TextSpan(
|
||||
text: ' and ',
|
||||
style: TextStyle(
|
||||
color: const Color(0xCCFCFCFC),
|
||||
fontSize: 14.sp,
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w400,
|
||||
),
|
||||
),
|
||||
TextSpan(
|
||||
text: 'Privacy Policy',
|
||||
style: TextStyle(
|
||||
color: const Color(0xCCFCFCFC),
|
||||
fontSize: 14.sp,
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w700,
|
||||
decoration:
|
||||
TextDecoration.underline,
|
||||
decorationColor:
|
||||
const Color(0xffFCFCFC)
|
||||
.withOpacity(0.80),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
textAlign: TextAlign.center,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
CustomButton(
|
||||
text: "Continue",
|
||||
onPressed: () {
|
||||
if (_selectedAccountType == 'Individual') {
|
||||
// Get.to(() => IndividualPage());
|
||||
print('individual selected');
|
||||
Get.toNamed(RouteName.verifyusercreen,
|
||||
arguments: _selectedAccountType);
|
||||
} else if (_selectedAccountType ==
|
||||
'Business') {
|
||||
print('business selected');
|
||||
Get.toNamed(RouteName.verifyusercreen,
|
||||
arguments: _selectedAccountType);
|
||||
|
||||
// Get.to(() => BusinessPage());
|
||||
} else {
|
||||
// Handle case where no selection is made
|
||||
utils.showToast(
|
||||
'Please select an account type');
|
||||
}
|
||||
}),
|
||||
sizedBoxHeight(20.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Container(
|
||||
width: 160,
|
||||
decoration: const ShapeDecoration(
|
||||
shape: RoundedRectangleBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
strokeAlign:
|
||||
BorderSide.strokeAlignCenter,
|
||||
color: Color(0xFF434A53),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(6.w),
|
||||
text14400white('Or'),
|
||||
sizedBoxWidth(6.w),
|
||||
Container(
|
||||
width: 160,
|
||||
decoration: const ShapeDecoration(
|
||||
shape: RoundedRectangleBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
strokeAlign:
|
||||
BorderSide.strokeAlignCenter,
|
||||
color: Color(0xFF434A53),
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
Center(
|
||||
child: SizedBox(
|
||||
width: 220.w,
|
||||
child: Row(
|
||||
children: [
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin:
|
||||
const Alignment(0.71, -0.70),
|
||||
end: const Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white.withOpacity(
|
||||
0.07999999821186066),
|
||||
Colors.white.withOpacity(
|
||||
0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: const OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: const DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login2.png'))),
|
||||
),
|
||||
const Spacer(),
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin:
|
||||
const Alignment(0.71, -0.70),
|
||||
end: const Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white.withOpacity(
|
||||
0.07999999821186066),
|
||||
Colors.white.withOpacity(
|
||||
0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: const OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: const DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login3.png'))),
|
||||
),
|
||||
const Spacer(),
|
||||
Container(
|
||||
width: 55,
|
||||
height: 55,
|
||||
decoration: ShapeDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin:
|
||||
const Alignment(0.71, -0.70),
|
||||
end: const Alignment(-0.71, 0.7),
|
||||
colors: [
|
||||
Colors.white.withOpacity(
|
||||
0.07999999821186066),
|
||||
Colors.white.withOpacity(
|
||||
0.12999999523162842)
|
||||
],
|
||||
),
|
||||
shape: const OvalBorder(
|
||||
side: BorderSide(
|
||||
width: 0.50,
|
||||
color: Color(0xFF434A53)),
|
||||
),
|
||||
image: const DecorationImage(
|
||||
image: AssetImage(
|
||||
'assets/images/png/login4.png'))),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
],
|
||||
),
|
||||
),
|
||||
)
|
||||
],
|
||||
],
|
||||
),
|
||||
),
|
||||
])),
|
||||
)
|
||||
],
|
||||
),
|
||||
],
|
||||
));
|
||||
}
|
||||
|
||||
@@ -20,15 +20,78 @@ class _Onboarding1State extends State<Onboarding1> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
body: Stack(
|
||||
children: [
|
||||
Container(
|
||||
width: MediaQuery.of(context).size.width,
|
||||
height: MediaQuery.of(context).size.height,
|
||||
decoration: BoxDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: Alignment.center,
|
||||
end: Alignment.bottomCenter,
|
||||
body: Container(
|
||||
width: MediaQuery.of(context).size.width,
|
||||
height: MediaQuery.of(context).size.height,
|
||||
decoration: BoxDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: Alignment.center,
|
||||
end: Alignment.bottomCenter,
|
||||
colors: [
|
||||
Color(0xFF222935).withOpacity(0.12),
|
||||
Color(0xFF222935).withOpacity(0.60),
|
||||
Color(0XFF222B37),
|
||||
Color(0xFF222935),
|
||||
],
|
||||
),
|
||||
image: DecorationImage(
|
||||
image: AssetImage("assets/images/png/onboarding1.png"),
|
||||
fit: BoxFit.fill)),
|
||||
child: Stack(children: [
|
||||
Positioned(
|
||||
top: 800,
|
||||
left: 0,
|
||||
child: Container(
|
||||
height: 70.h,
|
||||
width: MediaQuery.of(context).size.width,
|
||||
decoration: BoxDecoration(
|
||||
// shape: BoxShape.circle,
|
||||
color:
|
||||
// Colors.red
|
||||
Color(0xFF009DAB).withOpacity(0.50),
|
||||
),
|
||||
),
|
||||
),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
children: [
|
||||
Spacer(),
|
||||
SvgPicture.asset(
|
||||
"assets/images/svg/onboarding2.svg",
|
||||
width: 104.w,
|
||||
height: 104.h,
|
||||
),
|
||||
const Spacer(
|
||||
flex: 8,
|
||||
),
|
||||
SizedBox(
|
||||
width: 301.w,
|
||||
height: 64.h,
|
||||
child: text22400white(
|
||||
"Find motivation and support from like-minded people"),
|
||||
),
|
||||
sizedBoxHeight(30.h),
|
||||
GlassmorphicContainer(
|
||||
width: MediaQuery.of(context).size.width,
|
||||
height: 180.h,
|
||||
borderRadius: 2,
|
||||
blur: 30,
|
||||
alignment: Alignment.bottomLeft,
|
||||
border: 2,
|
||||
linearGradient: LinearGradient(
|
||||
begin: Alignment.topLeft,
|
||||
end: Alignment.centerRight,
|
||||
colors: [
|
||||
Color(0xFF222935).withOpacity(0.12),
|
||||
Color(0xFF222935).withOpacity(0.60),
|
||||
Color(0XFF222B37).withOpacity(0.12),
|
||||
Color(0xFF222935).withOpacity(0.60),
|
||||
],
|
||||
),
|
||||
borderGradient: LinearGradient(
|
||||
begin: Alignment.topLeft,
|
||||
end: Alignment.bottomRight,
|
||||
colors: [
|
||||
Color(0xFF222935).withOpacity(0.12),
|
||||
Color(0xFF222935).withOpacity(0.60),
|
||||
@@ -36,110 +99,29 @@ class _Onboarding1State extends State<Onboarding1> {
|
||||
Color(0xFF222935),
|
||||
],
|
||||
),
|
||||
image: DecorationImage(
|
||||
image: AssetImage("assets/images/png/onboarding1.png"),
|
||||
fit: BoxFit.fill)),
|
||||
child: Stack(children: [
|
||||
Positioned(
|
||||
top: 800,
|
||||
left: 0,
|
||||
child: Container(
|
||||
height: 70.h,
|
||||
width: MediaQuery.of(context).size.width,
|
||||
decoration: BoxDecoration(
|
||||
// shape: BoxShape.circle,
|
||||
color:
|
||||
// Colors.red
|
||||
Color(0xFF009DAB).withOpacity(0.50),
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
children: [
|
||||
CustomButton(
|
||||
text: "Sign up",
|
||||
onPressed: () {
|
||||
Get.toNamed(RouteName.signupscreen);
|
||||
}),
|
||||
sizedBoxHeight(30.h),
|
||||
CustomButton2(
|
||||
text: "Login",
|
||||
onPressed: () {
|
||||
Get.toNamed(RouteName.loginScreen);
|
||||
}),
|
||||
// sizedBoxHeight(10.h),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
mainAxisAlignment: MainAxisAlignment.start,
|
||||
children: [
|
||||
Spacer(),
|
||||
SvgPicture.asset(
|
||||
"assets/images/svg/onboarding2.svg",
|
||||
width: 104.w,
|
||||
height: 104.h,
|
||||
),
|
||||
const Spacer(
|
||||
flex: 8,
|
||||
),
|
||||
SizedBox(
|
||||
width: 301.w,
|
||||
height: 64.h,
|
||||
child: text22400white(
|
||||
"Find motivation and support from like-minded people"),
|
||||
),
|
||||
sizedBoxHeight(30.h),
|
||||
GlassmorphicContainer(
|
||||
width: MediaQuery.of(context).size.width,
|
||||
height: 180.h,
|
||||
borderRadius: 2,
|
||||
blur: 30,
|
||||
alignment: Alignment.bottomLeft,
|
||||
border: 2,
|
||||
linearGradient: LinearGradient(
|
||||
begin: Alignment.topLeft,
|
||||
end: Alignment.centerRight,
|
||||
colors: [
|
||||
Color(0xFF222935).withOpacity(0.12),
|
||||
Color(0xFF222935).withOpacity(0.60),
|
||||
Color(0XFF222B37).withOpacity(0.12),
|
||||
Color(0xFF222935).withOpacity(0.60),
|
||||
|
||||
// Color(0xFF009DAB40),
|
||||
// Color(0xFF35798C6F),
|
||||
// Color(0xFFD90B2E54),
|
||||
// Color(0xFFD90B2E85),
|
||||
// Color(0xFFD90B2E96),
|
||||
|
||||
// Colors.green.withOpacity(0.9),
|
||||
// Colors.amber.withOpacity(0.1)
|
||||
],
|
||||
),
|
||||
borderGradient: LinearGradient(
|
||||
begin: Alignment.topLeft,
|
||||
end: Alignment.bottomRight,
|
||||
colors: [
|
||||
// Color(0xFFffffff).withOpacity(0.5),
|
||||
// Color((0xFFFFFFFF)).withOpacity(0.5),
|
||||
|
||||
Color(0xFF222935).withOpacity(0.12),
|
||||
Color(0xFF222935).withOpacity(0.60),
|
||||
Color(0XFF222B37),
|
||||
Color(0xFF222935),
|
||||
|
||||
// Colors.green.withOpacity(0.1),
|
||||
// Color((0xFFFFFFFF)).withOpacity(0.5),
|
||||
],
|
||||
),
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
children: [
|
||||
CustomButton(
|
||||
text: "Sign up",
|
||||
onPressed: () {
|
||||
Get.toNamed(RouteName.signupscreen);
|
||||
}),
|
||||
sizedBoxHeight(30.h),
|
||||
CustomButton2(
|
||||
text: "Login",
|
||||
onPressed: () {
|
||||
Get.toNamed(RouteName.loginScreen);
|
||||
}),
|
||||
// sizedBoxHeight(10.h),
|
||||
],
|
||||
),
|
||||
)),
|
||||
],
|
||||
),
|
||||
]),
|
||||
],
|
||||
),
|
||||
],
|
||||
]),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
24
pubspec.lock
24
pubspec.lock
@@ -352,6 +352,14 @@ packages:
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.0.0"
|
||||
glassmorphism_ui:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: glassmorphism_ui
|
||||
sha256: "4a28b45fedb74c2b30e25495980394e3cf5b3634c74ec1ebedaef4d4c295f46f"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.3.0"
|
||||
google_maps_flutter:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
@@ -792,6 +800,14 @@ packages:
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "3.0.0"
|
||||
show_fps:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: show_fps
|
||||
sha256: "398124dd74456ad92fbb791cd6dd1018b5ced5ac3b9d0b401ab8c0e035ac9920"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.0.6"
|
||||
sky_engine:
|
||||
dependency: transitive
|
||||
description: flutter
|
||||
@@ -821,6 +837,14 @@ packages:
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.11.1"
|
||||
statsfl:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: statsfl
|
||||
sha256: "12901533eee23cc04f01858f1e6851beec27d927a9afa694bb3d68403a5e0d13"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.3.0"
|
||||
stream_channel:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
||||
@@ -64,6 +64,10 @@ dependencies:
|
||||
google_maps_flutter: ^2.2.8
|
||||
geolocator: ^11.1.0
|
||||
syncfusion_flutter_calendar: ^21.2.10
|
||||
glassmorphism_ui: ^0.3.0
|
||||
show_fps: ^1.0.6
|
||||
statsfl: ^2.3.0
|
||||
|
||||
|
||||
|
||||
dev_dependencies:
|
||||
|
||||
Reference in New Issue
Block a user