Calender tab added.
25
.vscode/launch.json
vendored
Normal file
@@ -0,0 +1,25 @@
|
||||
{
|
||||
// Use IntelliSense to learn about possible attributes.
|
||||
// Hover to view descriptions of existing attributes.
|
||||
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
|
||||
"version": "0.2.0",
|
||||
"configurations": [
|
||||
{
|
||||
"name": "Regroup_flutter",
|
||||
"request": "launch",
|
||||
"type": "dart"
|
||||
},
|
||||
{
|
||||
"name": "Regroup_flutter (profile mode)",
|
||||
"request": "launch",
|
||||
"type": "dart",
|
||||
"flutterMode": "profile"
|
||||
},
|
||||
{
|
||||
"name": "Regroup_flutter (release mode)",
|
||||
"request": "launch",
|
||||
"type": "dart",
|
||||
"flutterMode": "release"
|
||||
}
|
||||
]
|
||||
}
|
||||
BIN
assets/images/png/Group122.png
Normal file
|
After Width: | Height: | Size: 983 B |
BIN
assets/images/png/Rectangle 45.png
Normal file
|
After Width: | Height: | Size: 550 KiB |
BIN
assets/images/png/Rectangle299.png
Normal file
|
After Width: | Height: | Size: 1.7 MiB |
BIN
assets/images/png/Red.png
Normal file
|
After Width: | Height: | Size: 2.0 KiB |
BIN
assets/images/png/Vector (4).png
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
assets/images/png/Vector (5)12.png
Normal file
|
After Width: | Height: | Size: 690 B |
BIN
assets/images/png/Vector (5)22.png
Normal file
|
After Width: | Height: | Size: 492 B |
BIN
assets/images/png/Vector (5)3343.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
assets/images/png/Vector522.png
Normal file
|
After Width: | Height: | Size: 723 B |
BIN
assets/images/png/Vector536.png
Normal file
|
After Width: | Height: | Size: 664 B |
BIN
assets/images/png/alarm 1 (traced).png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
assets/images/png/blurcalender.png
Normal file
|
After Width: | Height: | Size: 561 B |
@@ -11,22 +11,23 @@ import 'package:regroup/Common/CommonWidget.dart';
|
||||
import 'package:regroup/Utils/Common/sized_box.dart';
|
||||
|
||||
class CommonDropdownBtn extends StatefulWidget {
|
||||
const CommonDropdownBtn({
|
||||
CommonDropdownBtn({
|
||||
required this.hint,
|
||||
required this.items,
|
||||
this.isEnabled = true,
|
||||
this.islocation = false,
|
||||
this.textcolor = false,
|
||||
this.onItemSelected,
|
||||
this.leadingImage,
|
||||
bool showAddButton = false,
|
||||
super.key,
|
||||
});
|
||||
|
||||
final String hint;
|
||||
final List<String>? items;
|
||||
final void Function(String)? onItemSelected;
|
||||
final bool isEnabled;
|
||||
final bool islocation;
|
||||
final bool textcolor;
|
||||
final Widget? leadingImage;
|
||||
|
||||
@override
|
||||
State<CommonDropdownBtn> createState() => _CommonDropdownBtnState();
|
||||
@@ -38,17 +39,8 @@ class _CommonDropdownBtnState extends State<CommonDropdownBtn> {
|
||||
border: Border.all(color: Colors.white),
|
||||
borderRadius: BorderRadius.circular(30.r),
|
||||
);
|
||||
|
||||
late String label;
|
||||
final List<String> items = [
|
||||
'Item1',
|
||||
'Item2',
|
||||
'Item3',
|
||||
'Item4',
|
||||
'Item5',
|
||||
'Item6',
|
||||
'Item7',
|
||||
'Item8',
|
||||
];
|
||||
String? selectedValue;
|
||||
|
||||
@override
|
||||
@@ -56,33 +48,20 @@ class _CommonDropdownBtnState extends State<CommonDropdownBtn> {
|
||||
return DropdownButtonHideUnderline(
|
||||
child: Row(
|
||||
children: [
|
||||
widget.islocation
|
||||
? Padding(
|
||||
padding: EdgeInsets.only(left: 4.w),
|
||||
child: SvgPicture.asset("assets/svg/location.svg"),
|
||||
)
|
||||
: SizedBox(),
|
||||
Expanded(
|
||||
child: DropdownButton2(
|
||||
isExpanded: true,
|
||||
hint: Row(
|
||||
children: [
|
||||
// SizedBox(
|
||||
// width: 4,
|
||||
// ),
|
||||
// widget.islocation
|
||||
// ? SvgPicture.asset("assets/svg/location.svg")
|
||||
// : SizedBox(),
|
||||
|
||||
// widget.islocation ? sizedBoxWidth(4.w) : SizedBox(),
|
||||
|
||||
if (widget.leadingImage != null) widget.leadingImage!,
|
||||
SizedBox(
|
||||
width: 8.w), // Spacing between the image and the text
|
||||
Expanded(
|
||||
child: Text(
|
||||
widget.hint,
|
||||
style: TextStyle(
|
||||
fontSize: 12.sp,
|
||||
fontFamily: 'hiragino',
|
||||
//fontWeight: FontWeight.bold,
|
||||
color: Colors.white,
|
||||
fontWeight: FontWeight.w500),
|
||||
overflow: TextOverflow.ellipsis,
|
||||
@@ -106,11 +85,16 @@ class _CommonDropdownBtnState extends State<CommonDropdownBtn> {
|
||||
))
|
||||
.toList(),
|
||||
value: selectedValue,
|
||||
onChanged: (value) {
|
||||
setState(() {
|
||||
selectedValue = value as String;
|
||||
});
|
||||
},
|
||||
onChanged: widget.isEnabled
|
||||
? (value) {
|
||||
setState(() {
|
||||
selectedValue = value as String;
|
||||
if (widget.onItemSelected != null) {
|
||||
widget.onItemSelected!(selectedValue!);
|
||||
}
|
||||
});
|
||||
}
|
||||
: null,
|
||||
buttonStyleData: ButtonStyleData(
|
||||
height: 50.h,
|
||||
width: double.infinity,
|
||||
@@ -147,16 +131,11 @@ class _CommonDropdownBtnState extends State<CommonDropdownBtn> {
|
||||
maxHeight: 200,
|
||||
width: 350,
|
||||
padding: null,
|
||||
// padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(30),
|
||||
// border: Border.all(
|
||||
// color: Color(0xffCCCCCC),
|
||||
// ),
|
||||
color: Color(0xFF222935),
|
||||
),
|
||||
elevation: 0,
|
||||
// offset: const Offset(-20, 0),
|
||||
scrollbarTheme: ScrollbarThemeData(
|
||||
radius: const Radius.circular(40),
|
||||
thickness: MaterialStateProperty.all<double>(6),
|
||||
@@ -181,6 +160,7 @@ class CommonDropdownradioBtn extends StatefulWidget {
|
||||
required this.items,
|
||||
this.textcolor = false,
|
||||
this.onItemSelected,
|
||||
this.showOtherOption = false,
|
||||
super.key,
|
||||
});
|
||||
|
||||
@@ -188,13 +168,16 @@ class CommonDropdownradioBtn extends StatefulWidget {
|
||||
final List<String>? items;
|
||||
final void Function(String)? onItemSelected;
|
||||
final bool textcolor;
|
||||
final bool showOtherOption;
|
||||
|
||||
@override
|
||||
State<CommonDropdownradioBtn> createState() => _CommonDropdownradioBtnState();
|
||||
}
|
||||
|
||||
class _CommonDropdownradioBtnState extends State<CommonDropdownradioBtn> {
|
||||
var selectedValue = ''.obs;
|
||||
final RxString selectedValue = RxString('');
|
||||
final TextEditingController _textController = TextEditingController();
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return DropdownButtonHideUnderline(
|
||||
@@ -207,7 +190,7 @@ class _CommonDropdownradioBtnState extends State<CommonDropdownradioBtn> {
|
||||
child: Text(
|
||||
selectedValue.isEmpty ? widget.hint : selectedValue.value,
|
||||
style: TextStyle(
|
||||
fontSize: 12.sp,
|
||||
fontSize: 12,
|
||||
fontFamily: 'hiragino',
|
||||
color: Colors.white,
|
||||
fontWeight: FontWeight.w500,
|
||||
@@ -218,82 +201,35 @@ class _CommonDropdownradioBtnState extends State<CommonDropdownradioBtn> {
|
||||
],
|
||||
);
|
||||
}),
|
||||
items: widget.items!.asMap().entries.map((entry) {
|
||||
int index = entry.key;
|
||||
String item = entry.value;
|
||||
return DropdownMenuItem<String>(
|
||||
value: item,
|
||||
child: Column(
|
||||
children: [
|
||||
InkWell(
|
||||
onTap: () {
|
||||
selectedValue.value = item;
|
||||
if (widget.onItemSelected != null) {
|
||||
widget.onItemSelected!(item);
|
||||
}
|
||||
},
|
||||
child: Row(
|
||||
children: [
|
||||
Obx(() {
|
||||
return Radio<String>(
|
||||
value: item,
|
||||
activeColor: Colors.white,
|
||||
groupValue: selectedValue.value,
|
||||
onChanged: (value) {
|
||||
selectedValue.value = value!;
|
||||
if (widget.onItemSelected != null) {
|
||||
widget.onItemSelected!(value);
|
||||
}
|
||||
},
|
||||
);
|
||||
}),
|
||||
SizedBox(width: 8.w),
|
||||
Text(
|
||||
item,
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 16.sp,
|
||||
fontFamily: 'hiragino',
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
overflow: TextOverflow.ellipsis,
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
if (index != widget.items!.length - 1) commonDivider(),
|
||||
],
|
||||
),
|
||||
);
|
||||
}).toList(),
|
||||
items: _buildDropdownMenuItems(),
|
||||
value: null,
|
||||
onChanged: (value) {},
|
||||
selectedItemBuilder: (BuildContext context) {
|
||||
return widget.items!.map((item) {
|
||||
return Row(
|
||||
children: [
|
||||
Expanded(
|
||||
child: Obx(() {
|
||||
return Text(
|
||||
return Obx(() {
|
||||
return Row(
|
||||
children: [
|
||||
Expanded(
|
||||
child: Text(
|
||||
selectedValue.value,
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 16.sp,
|
||||
fontSize: 16,
|
||||
fontFamily: 'hiragino',
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
overflow: TextOverflow.ellipsis,
|
||||
);
|
||||
}),
|
||||
),
|
||||
],
|
||||
);
|
||||
),
|
||||
),
|
||||
],
|
||||
);
|
||||
});
|
||||
}).toList();
|
||||
},
|
||||
buttonStyleData: ButtonStyleData(
|
||||
height: 50.h,
|
||||
height: 50,
|
||||
width: double.infinity,
|
||||
padding: EdgeInsets.only(left: 12.w, right: 4.w),
|
||||
padding: EdgeInsets.only(left: 12, right: 4),
|
||||
decoration: BoxDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: Alignment.topLeft,
|
||||
@@ -304,7 +240,7 @@ class _CommonDropdownradioBtnState extends State<CommonDropdownradioBtn> {
|
||||
],
|
||||
stops: [0.1, 1],
|
||||
),
|
||||
borderRadius: BorderRadius.circular(30.r),
|
||||
borderRadius: BorderRadius.circular(30),
|
||||
border: Border.all(
|
||||
color: Color(0xff434A53),
|
||||
),
|
||||
@@ -316,7 +252,7 @@ class _CommonDropdownradioBtnState extends State<CommonDropdownradioBtn> {
|
||||
icon: Icon(
|
||||
Icons.keyboard_arrow_down,
|
||||
),
|
||||
iconSize: 23.sp,
|
||||
iconSize: 23,
|
||||
iconEnabledColor: Color(0xFFFFFFFF),
|
||||
iconDisabledColor: Color(0xFFFFFFFF),
|
||||
),
|
||||
@@ -336,12 +272,143 @@ class _CommonDropdownradioBtnState extends State<CommonDropdownradioBtn> {
|
||||
),
|
||||
),
|
||||
menuItemStyleData: const MenuItemStyleData(
|
||||
height: 50,
|
||||
height: 60,
|
||||
padding: EdgeInsets.only(left: 14, right: 14),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
List<DropdownMenuItem<String>> _buildDropdownMenuItems() {
|
||||
List<DropdownMenuItem<String>> items =
|
||||
widget.items!.asMap().entries.map((entry) {
|
||||
int index = entry.key;
|
||||
String item = entry.value;
|
||||
return DropdownMenuItem<String>(
|
||||
value: item,
|
||||
child: InkWell(
|
||||
onTap: () {
|
||||
selectedValue.value = item;
|
||||
_textController.clear();
|
||||
if (widget.onItemSelected != null) {
|
||||
widget.onItemSelected!(item);
|
||||
}
|
||||
},
|
||||
child: Column(
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
Obx(() {
|
||||
return Radio<String>(
|
||||
value: item,
|
||||
activeColor: Colors.white,
|
||||
groupValue: selectedValue.value,
|
||||
onChanged: (value) {
|
||||
selectedValue.value = value!;
|
||||
_textController.clear();
|
||||
if (widget.onItemSelected != null) {
|
||||
widget.onItemSelected!(value);
|
||||
}
|
||||
},
|
||||
);
|
||||
}),
|
||||
SizedBox(width: 8),
|
||||
Text(
|
||||
item,
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 16,
|
||||
fontFamily: 'hiragino',
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
overflow: TextOverflow.ellipsis,
|
||||
),
|
||||
],
|
||||
),
|
||||
SizedBox(height: 5.h),
|
||||
if (index != widget.items!.length - 1) commonDivider()
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}).toList();
|
||||
if (widget.showOtherOption) {
|
||||
items.add(
|
||||
DropdownMenuItem<String>(
|
||||
value: _textController.text,
|
||||
child: Column(
|
||||
children: [
|
||||
commonDivider(),
|
||||
Row(
|
||||
children: [
|
||||
Obx(() {
|
||||
return Radio<String>(
|
||||
value: _textController.text,
|
||||
activeColor: Colors.white,
|
||||
groupValue: selectedValue.value,
|
||||
onChanged: (value) {
|
||||
selectedValue.value = value!;
|
||||
_textController.clear();
|
||||
if (widget.onItemSelected != null) {
|
||||
widget.onItemSelected!(value);
|
||||
}
|
||||
},
|
||||
);
|
||||
}),
|
||||
SizedBox(width: 8),
|
||||
Text(
|
||||
"Other: ",
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 16,
|
||||
fontFamily: 'hiragino',
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
overflow: TextOverflow.ellipsis,
|
||||
),
|
||||
Expanded(
|
||||
child: TextField(
|
||||
controller: _textController,
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 16,
|
||||
fontFamily: 'hiragino',
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
decoration: InputDecoration(
|
||||
hintText: '',
|
||||
hintStyle: TextStyle(color: Colors.white70),
|
||||
border: UnderlineInputBorder()),
|
||||
),
|
||||
),
|
||||
TextButton(
|
||||
onPressed: () {
|
||||
if (_textController.text.trim().isNotEmpty) {
|
||||
selectedValue.value = _textController.text;
|
||||
if (widget.onItemSelected != null) {
|
||||
widget.onItemSelected!(_textController.text);
|
||||
}
|
||||
}
|
||||
},
|
||||
child: Text(
|
||||
'OK',
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontSize: 16,
|
||||
fontFamily: 'hiragino',
|
||||
fontWeight: FontWeight.w500,
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
return items;
|
||||
}
|
||||
}
|
||||
|
||||
class CommonDropdownCheckbox extends StatefulWidget {
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
import 'package:get/get.dart';
|
||||
import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/CalenderTab.dart';
|
||||
import 'package:regroup/Feed%20Module/Main_Screens/Community/Community.dart';
|
||||
|
||||
class MainController extends GetxController {
|
||||
@@ -7,7 +8,7 @@ class MainController extends GetxController {
|
||||
var currentTab = [
|
||||
const CommunityScreen(),
|
||||
const CommunityScreen(),
|
||||
const CommunityScreen(),
|
||||
const CalenderTab(),
|
||||
const CommunityScreen(),
|
||||
const CommunityScreen(),
|
||||
].obs;
|
||||
|
||||
432
lib/Feed Module/Main_Screens/CalenderTab/AddEvent/AddEvent.dart
Normal file
@@ -0,0 +1,432 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:regroup/Common/CommonButton.dart';
|
||||
import 'package:regroup/Common/CommonDropDown.dart';
|
||||
import 'package:regroup/Common/CommonGlassmorphism.dart';
|
||||
import 'package:regroup/Common/controller/CommonTextFormField.dart';
|
||||
import 'package:regroup/Utils/Common/CommonAppbar.dart';
|
||||
import 'package:regroup/Utils/Common/CustomNextButton.dart';
|
||||
import 'package:regroup/Utils/Common/blureffect.dart';
|
||||
import 'package:regroup/Utils/Common/sized_box.dart';
|
||||
import 'package:regroup/Utils/texts.dart';
|
||||
|
||||
class AddEvent extends StatefulWidget {
|
||||
const AddEvent({super.key});
|
||||
|
||||
@override
|
||||
State<AddEvent> createState() => _AddEventState();
|
||||
}
|
||||
|
||||
class _AddEventState extends State<AddEvent> {
|
||||
RxBool isChecked = false.obs;
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: CommonAppbar(
|
||||
titleTxt: "",
|
||||
),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Positioned.fill(
|
||||
child: SingleChildScrollView(
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text16400white("Event Title"),
|
||||
sizedBoxHeight(14.h),
|
||||
CustomTextFormField(
|
||||
leadingIcon: Container(
|
||||
height: 22.h,
|
||||
width: 18.w,
|
||||
child: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/Vector (5)12.png",
|
||||
fit: BoxFit.cover,
|
||||
height: 22.h,
|
||||
width: 18.w,
|
||||
),
|
||||
),
|
||||
),
|
||||
hintText: "Tri-sport challenge",
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
text16400white("Event image"),
|
||||
sizedBoxHeight(20.h),
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
width: double.infinity,
|
||||
height: 130.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Padding(
|
||||
padding: EdgeInsets.symmetric(vertical: 16.h),
|
||||
child: Column(
|
||||
children: [
|
||||
Image.asset(
|
||||
"assets/images/png/bi_download.png",
|
||||
height: 36.h,
|
||||
width: 36.w,
|
||||
),
|
||||
sizedBoxHeight(10.h),
|
||||
text14w400white("Upload event image"),
|
||||
sizedBoxHeight(8.h),
|
||||
text8w400_8A8A8A(
|
||||
"Allowed file extensions: jpg, png, gif Max file size: 10 MB"),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 60.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Center(
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 12.w),
|
||||
child: Row(children: [
|
||||
Container(
|
||||
height: 40.h,
|
||||
width: 40.w,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.circular(5.r)),
|
||||
child: Image.asset(
|
||||
"assets/images/png/img2.png",
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
text14400white("Event1.png"),
|
||||
sizedBoxHeight(2.h),
|
||||
text12w400_FCFCFC_blur("10 kb")
|
||||
],
|
||||
),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
'assets/images/png/cancelicon.png',
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
)
|
||||
]),
|
||||
),
|
||||
),
|
||||
border: 1),
|
||||
sizedBoxHeight(16.h),
|
||||
text16400white("Type of event"),
|
||||
sizedBoxHeight(14.h),
|
||||
CommonDropdownBtn(
|
||||
hint: 'Race',
|
||||
items: [],
|
||||
leadingImage: Container(
|
||||
height: 22.h,
|
||||
width: 18.w,
|
||||
child: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/Vector (5)12.png",
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(16.h),
|
||||
text16400white("Sport"),
|
||||
sizedBoxHeight(14.h),
|
||||
CommonDropdownBtn(
|
||||
hint: 'Cycling',
|
||||
items: [],
|
||||
leadingImage: Container(
|
||||
height: 22.h,
|
||||
width: 18.w,
|
||||
child: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/Vector (4).png",
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(16.h),
|
||||
Row(
|
||||
children: [
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text16400white("Start date"),
|
||||
sizedBoxHeight(14.h),
|
||||
commonGlassContainer(
|
||||
width: 174.w,
|
||||
height: 50.h,
|
||||
borderradius: 30.r,
|
||||
customWidget: Center(
|
||||
child: Row(children: [
|
||||
sizedBoxWidth(16.w),
|
||||
Image.asset(
|
||||
"assets/images/png/calender.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text16w400_white("1-4-2024")
|
||||
]),
|
||||
),
|
||||
border: 1)
|
||||
],
|
||||
),
|
||||
Spacer(),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text16400white("End date"),
|
||||
sizedBoxHeight(14.h),
|
||||
commonGlassContainer(
|
||||
width: 174.w,
|
||||
height: 50.h,
|
||||
borderradius: 30.r,
|
||||
customWidget: Center(
|
||||
child: Row(children: [
|
||||
sizedBoxWidth(16.w),
|
||||
Image.asset(
|
||||
"assets/images/png/calender.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text16w400_white("4-4-2024")
|
||||
]),
|
||||
),
|
||||
border: 1)
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
Row(
|
||||
children: [
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text16400white("Start time"),
|
||||
sizedBoxHeight(14.h),
|
||||
commonGlassContainer(
|
||||
width: 174.w,
|
||||
height: 50.h,
|
||||
borderradius: 30.r,
|
||||
customWidget: Center(
|
||||
child: Row(children: [
|
||||
sizedBoxWidth(16.w),
|
||||
Image.asset(
|
||||
"assets/images/png/clock.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text16w400_white("3:00 pm")
|
||||
]),
|
||||
),
|
||||
border: 1)
|
||||
],
|
||||
),
|
||||
Spacer(),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text16400white("End time"),
|
||||
sizedBoxHeight(14.h),
|
||||
commonGlassContainer(
|
||||
width: 174.w,
|
||||
height: 50.h,
|
||||
borderradius: 30.r,
|
||||
customWidget: Center(
|
||||
child: Row(children: [
|
||||
sizedBoxWidth(16.w),
|
||||
Image.asset(
|
||||
"assets/images/png/clock.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text16w400_white("5:00 pm")
|
||||
]),
|
||||
),
|
||||
border: 1)
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(8.h),
|
||||
Row(
|
||||
children: [
|
||||
Obx(() {
|
||||
return commonGlassContainer(
|
||||
border: 1,
|
||||
borderradius: 2,
|
||||
height: 23.h,
|
||||
width: 23.w,
|
||||
opacity1: 0.24,
|
||||
opacity2: 0.24,
|
||||
customWidget: Transform.scale(
|
||||
scale: 1.4,
|
||||
child: Checkbox(
|
||||
side: BorderSide(color: Color(0xFF434A53)),
|
||||
value: isChecked.value,
|
||||
activeColor: Colors.transparent,
|
||||
checkColor: Colors.white,
|
||||
onChanged: ((value) {
|
||||
isChecked.value = value!;
|
||||
}),
|
||||
),
|
||||
),
|
||||
);
|
||||
}),
|
||||
sizedBoxWidth(8.w),
|
||||
text14w400_FCFCFC("Repeat event")
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(16.h),
|
||||
text16400white("Post in"),
|
||||
sizedBoxHeight(14.h),
|
||||
CommonDropdownBtn(
|
||||
hint: '',
|
||||
items: [],
|
||||
leadingImage: Container(
|
||||
height: 22.h,
|
||||
width: 28.w,
|
||||
child: Center(
|
||||
child: Image.asset("assets/images/png/Black.png"),
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(16.h),
|
||||
text16400white("Add Users"),
|
||||
sizedBoxHeight(14.h),
|
||||
CustomTextFormField(
|
||||
leadingIcon: Container(
|
||||
height: 22.h,
|
||||
width: 18.w,
|
||||
child: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/Group122.png",
|
||||
fit: BoxFit.cover,
|
||||
height: 18.h,
|
||||
width: 18.w,
|
||||
),
|
||||
),
|
||||
),
|
||||
hintText: "",
|
||||
suffixIcon:
|
||||
Icon(Icons.arrow_forward, color: Color(0xFFFFFFFF)),
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
containerWidget(
|
||||
imagePath: "assets/images/png/Ellipse 52.png",
|
||||
title: "Ryan Dorwart"),
|
||||
sizedBoxHeight(10.h),
|
||||
containerWidget(
|
||||
imagePath: "assets/images/png/Ellipse 52.png",
|
||||
title: "Ryan Dorwart"),
|
||||
sizedBoxHeight(10.h),
|
||||
Align(
|
||||
alignment: Alignment.center,
|
||||
child: text14400white("View more")),
|
||||
sizedBoxHeight(30.h),
|
||||
text16400white("Location"),
|
||||
sizedBoxHeight(14.h),
|
||||
CustomTextFormField(
|
||||
leadingIcon: Container(
|
||||
height: 19.h,
|
||||
width: 15.w,
|
||||
child: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/Group 58645.png",
|
||||
height: 19.h,
|
||||
width: 15.w,
|
||||
),
|
||||
),
|
||||
),
|
||||
hintText: "Elm street, London, United kingdom",
|
||||
),
|
||||
sizedBoxHeight(25.h),
|
||||
text16400white("Reminder"),
|
||||
sizedBoxHeight(22.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
commonGlassContainer(
|
||||
height: 50.h,
|
||||
width: 127.w,
|
||||
borderradius: 30.r,
|
||||
border: 1,
|
||||
customWidget: Center(
|
||||
child: text16400white("2"),
|
||||
)),
|
||||
commonGlassContainer(
|
||||
height: 50.h,
|
||||
width: 215.w,
|
||||
borderradius: 30.r,
|
||||
border: 1,
|
||||
customWidget: Center(
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
text16400white("Minutes"),
|
||||
sizedBoxWidth(5.w),
|
||||
Icon(
|
||||
Icons.keyboard_arrow_down,
|
||||
color: Colors.white,
|
||||
)
|
||||
],
|
||||
),
|
||||
))
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(35.h),
|
||||
CommonBtn(text: "Save"),
|
||||
sizedBoxHeight(70.h),
|
||||
]),
|
||||
),
|
||||
))
|
||||
]));
|
||||
}
|
||||
|
||||
Widget containerWidget({
|
||||
required String imagePath,
|
||||
required String title,
|
||||
}) {
|
||||
return commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 50.h,
|
||||
borderradius: 30,
|
||||
customWidget: Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16),
|
||||
child: Center(
|
||||
child: Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
CircleAvatar(
|
||||
backgroundImage: AssetImage(imagePath),
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text16400white(title),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/cancelicon.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
border: 1);
|
||||
}
|
||||
}
|
||||
267
lib/Feed Module/Main_Screens/CalenderTab/AddUsers/AddUsers.dart
Normal file
@@ -0,0 +1,267 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:get/get_connect/http/src/utils/utils.dart';
|
||||
import 'package:regroup/Common/CommonGlassmorphism.dart';
|
||||
import 'package:regroup/Common/CommonTabBar.dart';
|
||||
import 'package:regroup/Common/CommonWidget.dart';
|
||||
import 'package:regroup/Common/controller/CommonTextFormField.dart';
|
||||
import 'package:regroup/Utils/Common/CommonAppbar.dart';
|
||||
import 'package:regroup/Utils/Common/blureffect.dart';
|
||||
import 'package:regroup/Utils/Common/sized_box.dart';
|
||||
import 'package:regroup/Utils/texts.dart';
|
||||
|
||||
class AddUsers extends StatefulWidget {
|
||||
const AddUsers({super.key});
|
||||
|
||||
@override
|
||||
State<AddUsers> createState() => _AddUsersState();
|
||||
}
|
||||
|
||||
class _AddUsersState extends State<AddUsers> {
|
||||
List groupData = [
|
||||
{
|
||||
"imagePath": "assets/images/png/Ellipse 52.png",
|
||||
"title": "Ryan Dorwart",
|
||||
"subtitle": "Row row row your boat",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/Ellipse 48.png",
|
||||
"title": "Ahmad Rhiel Madsen",
|
||||
"subtitle": "Football fever",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/Ellipse 43.png",
|
||||
"title": "Kaylynn Vaccaro",
|
||||
"subtitle": "The athletic town",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/cimg4.png",
|
||||
"title": "Kianna Donin",
|
||||
"subtitle": "Active alliance network",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/cimg1.png",
|
||||
"title": "Ahmad Rhiel Madsen",
|
||||
"subtitle": "Football fever",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/Ellipse 43.png",
|
||||
"title": "Kaylynn Vaccaro",
|
||||
"subtitle": "The athletic town",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/cimg4.png",
|
||||
"title": "Kianna Donin",
|
||||
"subtitle": "Active alliance network",
|
||||
},
|
||||
];
|
||||
|
||||
List<bool> isCheckedList = [false, false, false, false, false, false, false];
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: CommonAppbar(
|
||||
titleTxt: "Add users",
|
||||
),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Positioned.fill(
|
||||
child: SingleChildScrollView(
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
sizedBoxHeight(10.h),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16),
|
||||
child: CustomTextFormField(
|
||||
leadingIcon: SizedBox(
|
||||
height: 23,
|
||||
width: 23,
|
||||
child: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/ion_search-outline.png",
|
||||
height: 23,
|
||||
width: 23,
|
||||
),
|
||||
),
|
||||
),
|
||||
hintText: "Search users",
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(16.h),
|
||||
DefaultTabController(
|
||||
length: 3,
|
||||
// initialIndex: selectedIndex.value,
|
||||
child: Column(children: [
|
||||
CommonTabBar(tabs: const [
|
||||
Tab(
|
||||
text: 'Group',
|
||||
),
|
||||
Tab(
|
||||
text: 'Sub-group',
|
||||
),
|
||||
Tab(
|
||||
text: 'Followers',
|
||||
),
|
||||
]),
|
||||
SizedBox(
|
||||
height: 600.h,
|
||||
child: TabBarView(
|
||||
children: [
|
||||
GroupTab(),
|
||||
SubgroupTab(),
|
||||
FollowersTab(),
|
||||
],
|
||||
),
|
||||
),
|
||||
]))
|
||||
])))
|
||||
]));
|
||||
}
|
||||
|
||||
Widget GroupTab() {
|
||||
return Column(
|
||||
children: [
|
||||
sizedBoxHeight(30.h),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16),
|
||||
child: Row(
|
||||
children: [
|
||||
text18w700_FCFCFC("Group members"),
|
||||
Spacer(),
|
||||
commonGlassContainer(
|
||||
width: 35.w,
|
||||
height: 35.h,
|
||||
borderradius: 100,
|
||||
customWidget: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/Vector (5)22.png",
|
||||
height: 12.h,
|
||||
width: 12.w,
|
||||
),
|
||||
),
|
||||
border: 0.5),
|
||||
sizedBoxWidth(14.w),
|
||||
commonGlassContainer(
|
||||
width: 35.w,
|
||||
height: 35.h,
|
||||
borderradius: 100,
|
||||
customWidget: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/bi_filter.png",
|
||||
height: 22.h,
|
||||
width: 18.w,
|
||||
),
|
||||
),
|
||||
border: 0.5)
|
||||
],
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(15.h),
|
||||
Expanded(
|
||||
child: ListView.builder(
|
||||
shrinkWrap: true,
|
||||
itemCount: groupData.length,
|
||||
itemBuilder: (context, index) {
|
||||
return Column(
|
||||
children: [
|
||||
groupWidget(
|
||||
index: index,
|
||||
imagePath: groupData[index]["imagePath"],
|
||||
title: groupData[index]["title"],
|
||||
subtitle: groupData[index]["subtitle"],
|
||||
isChecked: isCheckedList[index],
|
||||
onCheckedChanged: (bool? value) {
|
||||
setState(() {
|
||||
isCheckedList[index] = value ?? false;
|
||||
});
|
||||
},
|
||||
),
|
||||
if (index != groupData.length - 1) commonDivider(),
|
||||
],
|
||||
);
|
||||
},
|
||||
),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
Widget groupWidget({
|
||||
required int index,
|
||||
required String imagePath,
|
||||
required String title,
|
||||
required String subtitle,
|
||||
required bool isChecked,
|
||||
required ValueChanged<bool?> onCheckedChanged,
|
||||
}) {
|
||||
return Padding(
|
||||
padding: EdgeInsets.symmetric(vertical: 16.h, horizontal: 16.w),
|
||||
child: Row(
|
||||
children: [
|
||||
CircleAvatar(
|
||||
backgroundImage: AssetImage(imagePath),
|
||||
radius: 25.r,
|
||||
),
|
||||
sizedBoxWidth(10.w),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
text16w400_FCFCFC(title),
|
||||
sizedBoxWidth(6.w),
|
||||
Image.asset(
|
||||
"assets/images/png/calender.png",
|
||||
height: 14.h,
|
||||
width: 14.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(4.h),
|
||||
text12w400_FCFCFC_blur(subtitle),
|
||||
],
|
||||
),
|
||||
Spacer(),
|
||||
commonGlassContainer(
|
||||
border: 1,
|
||||
borderradius: 2,
|
||||
height: 23.h,
|
||||
width: 23.w,
|
||||
opacity1: 0.24,
|
||||
opacity2: 0.24,
|
||||
customWidget: Transform.scale(
|
||||
scale: 1.4,
|
||||
child: Checkbox(
|
||||
side: BorderSide(color: Color(0xFF434A53)),
|
||||
value: isChecked,
|
||||
activeColor: Colors.transparent,
|
||||
checkColor: Colors.white,
|
||||
onChanged: onCheckedChanged,
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget SubgroupTab() {
|
||||
return Column(
|
||||
children: [],
|
||||
);
|
||||
}
|
||||
|
||||
Widget FollowersTab() {
|
||||
return Column(
|
||||
children: [],
|
||||
);
|
||||
}
|
||||
}
|
||||
529
lib/Feed Module/Main_Screens/CalenderTab/CalenderTab.dart
Normal file
@@ -0,0 +1,529 @@
|
||||
import 'package:calendar_date_picker2/calendar_date_picker2.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:regroup/Common/CommonBottomNavigationBar.dart';
|
||||
import 'package:regroup/Common/CommonGlassmorphism.dart';
|
||||
import 'package:regroup/Common/CommonTabBar.dart';
|
||||
import 'package:regroup/Common/controller/MainScreen.dart';
|
||||
import 'package:regroup/Utils/Common/blureffect.dart';
|
||||
import 'package:regroup/Utils/Common/sized_box.dart';
|
||||
import 'package:regroup/Utils/texts.dart';
|
||||
import 'package:regroup/resources/routes/route_name.dart';
|
||||
|
||||
class CalenderTab extends StatefulWidget {
|
||||
const CalenderTab({super.key});
|
||||
|
||||
@override
|
||||
State<CalenderTab> createState() => _CalenderTabState();
|
||||
}
|
||||
|
||||
class _CalenderTabState extends State<CalenderTab> {
|
||||
List sessionData = [
|
||||
{
|
||||
"title": "Attending events",
|
||||
"imagePath": "assets/images/png/Rectangle299.png",
|
||||
"names": "Sports challenge"
|
||||
},
|
||||
{
|
||||
"title": "Shown Interest",
|
||||
"imagePath": "assets/images/png/Rectangle 25.png",
|
||||
"names": "Ultimate athlete challenge"
|
||||
},
|
||||
{
|
||||
"title": "Not going",
|
||||
"imagePath": "assets/images/png/Rectangle 24.png",
|
||||
"names": "Cyclotron challenge"
|
||||
},
|
||||
];
|
||||
|
||||
List communityData = [
|
||||
{
|
||||
"title": "Featured community",
|
||||
"imagePath": "assets/images/png/Rectangle 24.png",
|
||||
"names": "Sports challenge"
|
||||
},
|
||||
{
|
||||
"title": "Featured community",
|
||||
"imagePath": "assets/images/png/Rectangle 24.png",
|
||||
"names": "Tri-sport challenge"
|
||||
},
|
||||
];
|
||||
|
||||
DateTime selectedDate = DateTime.now();
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: AppBar(
|
||||
scrolledUnderElevation: 0.0,
|
||||
backgroundColor: Color(0xff222935),
|
||||
elevation: 0,
|
||||
automaticallyImplyLeading: false,
|
||||
title: text20700white("Sessions"),
|
||||
actions: [
|
||||
InkWell(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.addUsers);
|
||||
},
|
||||
child: Container(
|
||||
height: 35.h,
|
||||
width: 35.w,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xFFD90B2E),
|
||||
shape: BoxShape.circle,
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: Color(0x40000000),
|
||||
offset: Offset(0, 6),
|
||||
blurRadius: 8,
|
||||
spreadRadius: 0,
|
||||
),
|
||||
],
|
||||
),
|
||||
child: Icon(Icons.add, color: Colors.white, weight: 2),
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(14.w),
|
||||
InkWell(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.setavailabillity);
|
||||
},
|
||||
child: Image.asset(
|
||||
'assets/images/png/calender.png',
|
||||
height: 22.h,
|
||||
width: 22.w,
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(14.w),
|
||||
Image.asset(
|
||||
'assets/images/png/Frame 9.png',
|
||||
height: 25.h,
|
||||
width: 25.w,
|
||||
),
|
||||
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: [
|
||||
DefaultTabController(
|
||||
length: 2,
|
||||
// initialIndex: selectedIndex.value,
|
||||
child: Column(
|
||||
children: [
|
||||
CommonTabBar(tabs: const [
|
||||
Tab(
|
||||
text: 'My sessions',
|
||||
),
|
||||
Tab(
|
||||
text: 'Community session',
|
||||
),
|
||||
]),
|
||||
SizedBox(
|
||||
height: 600.h,
|
||||
child: TabBarView(
|
||||
children: [
|
||||
MySessionsTab(),
|
||||
ComSessionTab(),
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
]))
|
||||
])
|
||||
]),
|
||||
bottomNavigationBar: bottomnavigationbar(mainController),
|
||||
);
|
||||
}
|
||||
|
||||
Widget MySessionsTab() {
|
||||
return SingleChildScrollView(
|
||||
child: Column(
|
||||
children: [
|
||||
sizedBoxHeight(20.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 136.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Row(
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.only(left: 16.w),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
SizedBox(
|
||||
width: 171.w,
|
||||
child: text14w400_FCFCFC(
|
||||
"Are you looking for resources ? We might have a solution"),
|
||||
),
|
||||
sizedBoxHeight(12.h),
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.resourcepool);
|
||||
},
|
||||
child: text16w700_FCFCFCline("View resources"))
|
||||
],
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
Image.asset("assets/images/png/Rectangle 45.png")
|
||||
],
|
||||
),
|
||||
border: 1),
|
||||
),
|
||||
sizedBoxHeight(25.h),
|
||||
commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 314.h,
|
||||
borderradius: 1,
|
||||
customWidget: CalendarDatePicker2(
|
||||
config: CalendarDatePicker2Config(
|
||||
calendarType: CalendarDatePicker2Type.range,
|
||||
weekdayLabels: [
|
||||
'Sun',
|
||||
'Mon',
|
||||
'Tue',
|
||||
'Wed',
|
||||
'Thu',
|
||||
'Fri',
|
||||
'Sat'
|
||||
],
|
||||
selectedYearTextStyle: TextStyle(color: Colors.white),
|
||||
yearTextStyle: TextStyle(color: Colors.white),
|
||||
selectedDayHighlightColor: Color(0xFFD90B2E),
|
||||
controlsTextStyle: TextStyle(color: Colors.white),
|
||||
dayTextStyle: TextStyle(color: Colors.white),
|
||||
monthTextStyle: TextStyle(color: Colors.white),
|
||||
weekdayLabelTextStyle: TextStyle(color: Colors.white),
|
||||
nextMonthIcon: Icon(
|
||||
Icons.arrow_forward_ios,
|
||||
color: Colors.white,
|
||||
),
|
||||
lastMonthIcon: Icon(
|
||||
Icons.arrow_back_ios_new,
|
||||
color: Colors.white,
|
||||
),
|
||||
),
|
||||
value: [selectedDate],
|
||||
),
|
||||
border: 0.9),
|
||||
sizedBoxHeight(25.h),
|
||||
Column(
|
||||
children: List.generate(3, (index) {
|
||||
return sessionCard(
|
||||
imagePath: sessionData[index]["imagePath"],
|
||||
names: sessionData[index]["names"],
|
||||
title: sessionData[index]["title"]);
|
||||
}),
|
||||
)
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget sessionCard({
|
||||
required String title,
|
||||
required String imagePath,
|
||||
required String names,
|
||||
}) {
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 20),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text18w700_FCFCFC(title),
|
||||
sizedBoxHeight(25.h),
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.eventDetails);
|
||||
},
|
||||
child: commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 300.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Container(
|
||||
height: 151.h,
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.only(
|
||||
topRight: Radius.circular(10.r),
|
||||
topLeft: Radius.circular(10.r))),
|
||||
child: Image.asset(
|
||||
imagePath,
|
||||
fit: BoxFit.cover,
|
||||
)),
|
||||
sizedBoxHeight(20.h),
|
||||
Row(
|
||||
children: [
|
||||
sizedBoxWidth(16.w),
|
||||
Image.asset(
|
||||
"assets/images/png/calender.png",
|
||||
color: Colors.white.withOpacity(0.8),
|
||||
height: 12.h,
|
||||
width: 12.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text10w400_FCFCFC_blur("29th april 2024"),
|
||||
sizedBoxWidth(10.w),
|
||||
Container(
|
||||
height: 15,
|
||||
width: 1,
|
||||
color: Colors.white.withOpacity(0.8),
|
||||
),
|
||||
sizedBoxWidth(10.w),
|
||||
Image.asset(
|
||||
"assets/images/png/clock.png",
|
||||
color: Colors.white.withOpacity(0.8),
|
||||
height: 12.h,
|
||||
width: 12.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text10w400_FCFCFC_blur("3:00 pm"),
|
||||
sizedBoxWidth(10.w),
|
||||
Container(
|
||||
height: 15,
|
||||
width: 1,
|
||||
color: Colors.white.withOpacity(0.8),
|
||||
),
|
||||
sizedBoxWidth(10.w),
|
||||
Image.asset(
|
||||
"assets/images/png/Black.png",
|
||||
color: Colors.white.withOpacity(0.8),
|
||||
height: 12.h,
|
||||
width: 12.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text10w400_FCFCFC_blur("Iron titans fitness crew"),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(15.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.only(left: 16.w),
|
||||
child: text18w700_FCFCFC(names),
|
||||
),
|
||||
sizedBoxHeight(15.h),
|
||||
Row(
|
||||
children: [
|
||||
sizedBoxWidth(16.w),
|
||||
CircleAvatar(
|
||||
radius: 12.r,
|
||||
backgroundImage:
|
||||
AssetImage("assets/images/png/Ellipse 52.png"),
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text14w400_FCFCFC("Ryan dorwat"),
|
||||
],
|
||||
)
|
||||
]),
|
||||
border: 1),
|
||||
)
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget ComSessionTab() {
|
||||
return SingleChildScrollView(
|
||||
child: Column(
|
||||
children: [
|
||||
sizedBoxHeight(20.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 136.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Row(
|
||||
children: [
|
||||
Padding(
|
||||
padding: EdgeInsets.only(left: 16.w),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
SizedBox(
|
||||
width: 171.w,
|
||||
child: text14w400_FCFCFC(
|
||||
"Are you looking for resources ? We might have a solution"),
|
||||
),
|
||||
sizedBoxHeight(12.h),
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.resourcepool);
|
||||
},
|
||||
child: text16w700_FCFCFCline("View resources"))
|
||||
],
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
Image.asset("assets/images/png/Rectangle 45.png")
|
||||
],
|
||||
),
|
||||
border: 1),
|
||||
),
|
||||
sizedBoxHeight(25.h),
|
||||
commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 314.h,
|
||||
borderradius: 1,
|
||||
customWidget: CalendarDatePicker2(
|
||||
config: CalendarDatePicker2Config(
|
||||
calendarType: CalendarDatePicker2Type.range,
|
||||
weekdayLabels: [
|
||||
'Sun',
|
||||
'Mon',
|
||||
'Tue',
|
||||
'Wed',
|
||||
'Thu',
|
||||
'Fri',
|
||||
'Sat'
|
||||
],
|
||||
selectedYearTextStyle: TextStyle(color: Colors.white),
|
||||
yearTextStyle: TextStyle(color: Colors.white),
|
||||
selectedDayHighlightColor: Color(0xFFD90B2E),
|
||||
controlsTextStyle: TextStyle(color: Colors.white),
|
||||
dayTextStyle: TextStyle(color: Colors.white),
|
||||
monthTextStyle: TextStyle(color: Colors.white),
|
||||
weekdayLabelTextStyle: TextStyle(color: Colors.white),
|
||||
nextMonthIcon: Icon(
|
||||
Icons.arrow_forward_ios,
|
||||
color: Colors.white,
|
||||
),
|
||||
lastMonthIcon: Icon(
|
||||
Icons.arrow_back_ios_new,
|
||||
color: Colors.white,
|
||||
),
|
||||
),
|
||||
value: [selectedDate],
|
||||
),
|
||||
border: 0.9),
|
||||
sizedBoxHeight(25.h),
|
||||
Column(
|
||||
children: List.generate(communityData.length, (index) {
|
||||
return communitysessionCard(
|
||||
imagePath: communityData[index]["imagePath"],
|
||||
names: communityData[index]["names"],
|
||||
title: communityData[index]["title"]);
|
||||
}),
|
||||
)
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
Widget communitysessionCard({
|
||||
required String title,
|
||||
required String imagePath,
|
||||
required String names,
|
||||
}) {
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 20),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text18w700_FCFCFC(title),
|
||||
sizedBoxHeight(25.h),
|
||||
commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 290.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Container(
|
||||
height: 151.h,
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.only(
|
||||
topRight: Radius.circular(10.r),
|
||||
topLeft: Radius.circular(10.r))),
|
||||
child: Image.asset(
|
||||
imagePath,
|
||||
fit: BoxFit.cover,
|
||||
)),
|
||||
Row(
|
||||
children: [
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
sizedBoxHeight(16.h),
|
||||
Row(
|
||||
children: [
|
||||
sizedBoxWidth(16.w),
|
||||
Image.asset(
|
||||
"assets/images/png/calender.png",
|
||||
color: Colors.white.withOpacity(0.8),
|
||||
height: 12.h,
|
||||
width: 12.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text10w400_FCFCFC_blur("29th april 2024"),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(15.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.only(left: 16.w),
|
||||
child: text18w700_FCFCFC(names),
|
||||
),
|
||||
sizedBoxHeight(15.h),
|
||||
Row(
|
||||
children: [
|
||||
sizedBoxWidth(16.w),
|
||||
CircleAvatar(
|
||||
radius: 12.r,
|
||||
backgroundImage: AssetImage(
|
||||
"assets/images/png/Ellipse 52.png"),
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text14w400_FCFCFC("Ryan dorwat"),
|
||||
],
|
||||
),
|
||||
]),
|
||||
Spacer(),
|
||||
Container(
|
||||
height: 138.h,
|
||||
width: 143.w,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xFFD90B2E),
|
||||
borderRadius: BorderRadius.only(
|
||||
bottomRight: Radius.circular(10.r),
|
||||
),
|
||||
),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
text25700FCFCFC("14"),
|
||||
text16w700_FCFCFCblur("April 2024"),
|
||||
sizedBoxHeight(12.h),
|
||||
text16w700_FCFCFC("3:00 pm")
|
||||
],
|
||||
),
|
||||
)
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
border: 1)
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
320
lib/Feed Module/Main_Screens/CalenderTab/EventDetails.dart
Normal file
@@ -0,0 +1,320 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:regroup/Common/CommonButton.dart';
|
||||
import 'package:regroup/Common/CommonGlassmorphism.dart';
|
||||
import 'package:regroup/Common/CommonWidget.dart';
|
||||
import 'package:regroup/Utils/Common/CommonAppbar.dart';
|
||||
import 'package:regroup/Utils/Common/blureffect.dart';
|
||||
import 'package:regroup/Utils/Common/sized_box.dart';
|
||||
import 'package:regroup/Utils/texts.dart';
|
||||
import 'package:regroup/resources/routes/route_name.dart';
|
||||
|
||||
class EventDetails extends StatefulWidget {
|
||||
const EventDetails({super.key});
|
||||
|
||||
@override
|
||||
State<EventDetails> createState() => _EventDetailsState();
|
||||
}
|
||||
|
||||
class _EventDetailsState extends State<EventDetails> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: CommonAppbar(
|
||||
titleTxt: "",
|
||||
customActionWidget: Row(
|
||||
children: [
|
||||
InkWell(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.addEvent);
|
||||
},
|
||||
child: commonGlassContainer(
|
||||
width: 40.w,
|
||||
height: 40.h,
|
||||
borderradius: 100,
|
||||
opacity1: 0.24,
|
||||
opacity2: 0.24,
|
||||
customWidget: Center(
|
||||
child: Image.asset("assets/images/png/Vector536.png",
|
||||
height: 17.h, width: 17.w),
|
||||
),
|
||||
border: 0.5),
|
||||
),
|
||||
sizedBoxWidth(12.w),
|
||||
commonGlassContainer(
|
||||
width: 40.w,
|
||||
height: 40.h,
|
||||
borderradius: 100,
|
||||
opacity1: 0.24,
|
||||
opacity2: 0.24,
|
||||
customWidget: Center(
|
||||
child: Image.asset("assets/images/png/Vector522.png",
|
||||
height: 17.h, width: 17.w),
|
||||
),
|
||||
border: 0.5),
|
||||
],
|
||||
),
|
||||
),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Positioned.fill(
|
||||
child: SingleChildScrollView(
|
||||
child: Column(
|
||||
children: [
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
sizedBoxHeight(10.h),
|
||||
SizedBox(
|
||||
height: 260.h,
|
||||
width: double.infinity,
|
||||
child: ClipRRect(
|
||||
borderRadius: BorderRadius.circular(10.r),
|
||||
child: Image.asset(
|
||||
"assets/images/png/Rectangle299.png",
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
text18w700_FCFCFC("Sports challenge"),
|
||||
sizedBoxHeight(16.h),
|
||||
text14400whiteblur(
|
||||
"Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer . . . "),
|
||||
sizedBoxHeight(22.h),
|
||||
Row(
|
||||
children: [
|
||||
commonGlassContainer(
|
||||
width: 35.w,
|
||||
height: 35.h,
|
||||
borderradius: 100,
|
||||
opacity1: 0.24,
|
||||
opacity2: 0.24,
|
||||
customWidget: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/calender.png",
|
||||
height: 17.h,
|
||||
width: 17.w,
|
||||
),
|
||||
),
|
||||
border: 0.5),
|
||||
sizedBoxWidth(10.w),
|
||||
text16400white("20th April 2024 - 21st April 2024"),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(16.h),
|
||||
Row(
|
||||
children: [
|
||||
commonGlassContainer(
|
||||
width: 35.w,
|
||||
height: 35.h,
|
||||
borderradius: 100,
|
||||
opacity1: 0.24,
|
||||
opacity2: 0.24,
|
||||
customWidget: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/clock.png",
|
||||
height: 17.h,
|
||||
width: 17.w,
|
||||
),
|
||||
),
|
||||
border: 0.5),
|
||||
sizedBoxWidth(10.w),
|
||||
text16400white("3 hours"),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(16.h),
|
||||
Row(
|
||||
children: [
|
||||
commonGlassContainer(
|
||||
width: 35.w,
|
||||
height: 35.h,
|
||||
borderradius: 100,
|
||||
opacity1: 0.24,
|
||||
opacity2: 0.24,
|
||||
customWidget: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/Group 58645.png",
|
||||
height: 17.h,
|
||||
width: 17.w,
|
||||
),
|
||||
),
|
||||
border: 0.5),
|
||||
sizedBoxWidth(10.w),
|
||||
text16400white("Elm street london, United Kingdom"),
|
||||
],
|
||||
),
|
||||
]),
|
||||
),
|
||||
sizedBoxHeight(16.h),
|
||||
commonDivider(),
|
||||
sizedBoxHeight(16.h),
|
||||
text18w700white("Are you attending this event ?"),
|
||||
sizedBoxHeight(20.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceAround,
|
||||
children: [
|
||||
commonGlassContainer(
|
||||
width: 87.w,
|
||||
height: 40.h,
|
||||
borderradius: 30.r,
|
||||
customWidget: Center(child: text16w400_white("Yes")),
|
||||
border: 1),
|
||||
commonGlassContainer(
|
||||
width: 87.w,
|
||||
height: 40.h,
|
||||
borderradius: 30.r,
|
||||
customWidget: Center(child: text16w400_white("No")),
|
||||
border: 1),
|
||||
commonGlassContainer(
|
||||
width: 154.w,
|
||||
height: 40.h,
|
||||
borderradius: 30.r,
|
||||
customWidget:
|
||||
Center(child: text16w400_white("Not yet decided")),
|
||||
border: 1),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
commonDivider(),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
sizedBoxHeight(20.h),
|
||||
text18w700white("Reminder"),
|
||||
sizedBoxHeight(10.h),
|
||||
Row(
|
||||
children: [
|
||||
Image.asset(
|
||||
"assets/images/png/alarm 1 (traced).png",
|
||||
height: 24.h,
|
||||
width: 24.w,
|
||||
),
|
||||
sizedBoxWidth(10.w),
|
||||
text16w400_white("10 minutes before")
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 251.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 20),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
reminderWidget(
|
||||
text: "Total invites", count: '150'),
|
||||
sizedBoxHeight(16.h),
|
||||
reminderWidget(text: "Attending", count: '78'),
|
||||
sizedBoxHeight(16.h),
|
||||
reminderWidget(
|
||||
text: "Not attending", count: '35'),
|
||||
sizedBoxHeight(16.h),
|
||||
reminderWidget(text: "Not deciding", count: '20'),
|
||||
sizedBoxHeight(16.h),
|
||||
reminderWidget(
|
||||
text: "Waiting reply", count: '17'),
|
||||
],
|
||||
),
|
||||
),
|
||||
border: 1),
|
||||
sizedBoxHeight(30.h),
|
||||
text18w700white("Messages"),
|
||||
sizedBoxHeight(20.h),
|
||||
Row(
|
||||
children: [
|
||||
Image.asset(
|
||||
"assets/images/png/Vector (5)3343.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
),
|
||||
sizedBoxWidth(10.w),
|
||||
text16w400_white("Send message to invites"),
|
||||
Spacer(),
|
||||
commonGlassContainer(
|
||||
width: 98.w,
|
||||
height: 30.h,
|
||||
borderradius: 30.r,
|
||||
customWidget:
|
||||
Center(child: text14400white("Select")),
|
||||
border: 1)
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(25.h),
|
||||
commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 240.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 80.w),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
crossAxisAlignment: CrossAxisAlignment.center,
|
||||
children: [
|
||||
CircleAvatar(
|
||||
radius: 33.5,
|
||||
backgroundImage:
|
||||
AssetImage("assets/images/png/cimg1.png"),
|
||||
),
|
||||
sizedBoxHeight(15.h),
|
||||
text12400whiteblur("Organized By"),
|
||||
text16w700white("Ryan dorwat"),
|
||||
sizedBoxHeight(15.h),
|
||||
commonDivider(),
|
||||
sizedBoxHeight(15.h),
|
||||
text12400whiteblur('Group'),
|
||||
sizedBoxHeight(15.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
CircleAvatar(
|
||||
radius: 12.5.r,
|
||||
backgroundImage: AssetImage(
|
||||
"assets/images/png/img322.png"),
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text16w700white("Row row your boat"),
|
||||
],
|
||||
)
|
||||
]),
|
||||
),
|
||||
border: 1),
|
||||
sizedBoxHeight(50.h),
|
||||
CommonBtn(text: "Join the event"),
|
||||
sizedBoxHeight(40.h),
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
)))
|
||||
]));
|
||||
}
|
||||
|
||||
Widget reminderWidget({required String text, required String count}) {
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16),
|
||||
child: Row(
|
||||
children: [
|
||||
Image.asset("assets/images/png/Red.png", height: 22.h, width: 16.w),
|
||||
sizedBoxWidth(10.w),
|
||||
SizedBox(width: 250.w, child: text16w400_white(text)),
|
||||
Spacer(),
|
||||
text16400white(count),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
36
lib/Feed Module/Main_Screens/CalenderTab/ManageMembers.dart
Normal file
@@ -0,0 +1,36 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:regroup/Utils/Common/CommonAppbar.dart';
|
||||
import 'package:regroup/Utils/Common/blureffect.dart';
|
||||
import 'package:regroup/Utils/Common/sized_box.dart';
|
||||
|
||||
class ManageMember extends StatefulWidget {
|
||||
const ManageMember({super.key});
|
||||
|
||||
@override
|
||||
State<ManageMember> createState() => _ManageMemberState();
|
||||
}
|
||||
|
||||
class _ManageMemberState extends State<ManageMember> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: CommonAppbar(
|
||||
titleTxt: "Add users",
|
||||
),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Positioned.fill(
|
||||
child: SingleChildScrollView(
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
sizedBoxHeight(10.h),])))]));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,284 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:regroup/Common/CommonGlassmorphism.dart';
|
||||
import 'package:regroup/Common/CommonWidget.dart';
|
||||
import 'package:regroup/Common/controller/CommonTextFormField.dart';
|
||||
import 'package:regroup/Utils/Common/CommonAppbar.dart';
|
||||
import 'package:regroup/Utils/Common/blureffect.dart';
|
||||
import 'package:regroup/Utils/Common/sized_box.dart';
|
||||
import 'package:regroup/Utils/texts.dart';
|
||||
import 'package:regroup/resources/routes/route_name.dart';
|
||||
|
||||
class ResourcePool extends StatefulWidget {
|
||||
const ResourcePool({super.key});
|
||||
|
||||
@override
|
||||
State<ResourcePool> createState() => _ResourcePoolState();
|
||||
}
|
||||
|
||||
class _ResourcePoolState extends State<ResourcePool> {
|
||||
List<bool> isCheckedList = [false, false, false, false];
|
||||
|
||||
List eventData = [
|
||||
{
|
||||
"imagePath": "assets/images/png/img45.png",
|
||||
"title": "Super sports fest",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/Rectangle 25.png",
|
||||
"title": "Tri-sport challenge",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/img2.png",
|
||||
"title": "Ultimate athlete challenge",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/img2.png",
|
||||
"title": "Cyclotron challenge",
|
||||
},
|
||||
];
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: CommonAppbar(
|
||||
titleTxt: "Resource pool",
|
||||
),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Positioned.fill(
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16),
|
||||
child: Column(children: [
|
||||
sizedBoxHeight(10.h),
|
||||
CustomTextFormField(
|
||||
leadingIcon: SizedBox(
|
||||
height: 23,
|
||||
width: 23,
|
||||
child: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/ion_search-outline.png",
|
||||
height: 23,
|
||||
width: 23,
|
||||
),
|
||||
),
|
||||
),
|
||||
hintText: "Search community sessions",
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
Expanded(
|
||||
child: ListView.builder(
|
||||
itemCount: 2,
|
||||
shrinkWrap: true,
|
||||
itemBuilder: (context, index) {
|
||||
return Padding(
|
||||
padding: const EdgeInsets.symmetric(vertical: 16),
|
||||
child: resourceCard(),
|
||||
);
|
||||
},
|
||||
),
|
||||
)
|
||||
]),
|
||||
))
|
||||
]));
|
||||
}
|
||||
|
||||
Widget resourceCard() {
|
||||
return commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 216.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16, vertical: 16),
|
||||
child:
|
||||
Column(crossAxisAlignment: CrossAxisAlignment.start, children: [
|
||||
Row(
|
||||
children: [
|
||||
CircleAvatar(
|
||||
backgroundImage:
|
||||
AssetImage("assets/images/png/Ellipse 52.png"),
|
||||
radius: 25.r,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text16w400_FCFCFC("Ryan Dorwart"),
|
||||
sizedBoxHeight(6.h),
|
||||
text12w400_FCFCFC_blur("Row row row your boat")
|
||||
],
|
||||
),
|
||||
Spacer(),
|
||||
InkWell(
|
||||
onTap: () {
|
||||
inviteBottomSheet();
|
||||
},
|
||||
child: Container(
|
||||
height: 30.h,
|
||||
width: 95.w,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xFFD90B2E),
|
||||
borderRadius: BorderRadius.circular(30.r)),
|
||||
child: Center(child: text14400white("Invite")),
|
||||
),
|
||||
)
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(14.h),
|
||||
commonDivider(),
|
||||
sizedBoxHeight(14.h),
|
||||
text16w400_FCFCFC("Available for :"),
|
||||
sizedBoxHeight(12.h),
|
||||
Row(
|
||||
children: [
|
||||
Image.asset(
|
||||
"assets/images/png/calender.png",
|
||||
height: 16.h,
|
||||
width: 16.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
SizedBox(width: 140.w, child: text14w400_FCFCFC("Race")),
|
||||
sizedBoxWidth(16.w),
|
||||
Image.asset(
|
||||
"assets/images/png/Vector (4).png",
|
||||
height: 16.h,
|
||||
width: 16.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
SizedBox(width: 120.w, child: text14w400_FCFCFC("Race")),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(12.h),
|
||||
Row(
|
||||
children: [
|
||||
Image.asset(
|
||||
"assets/images/png/Black.png",
|
||||
height: 16.h,
|
||||
width: 16.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
SizedBox(
|
||||
width: 140.w,
|
||||
child: text14w400_FCFCFC("Only group events")),
|
||||
sizedBoxWidth(16.w),
|
||||
Image.asset(
|
||||
"assets/images/png/Group122.png",
|
||||
height: 16.h,
|
||||
width: 16.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
SizedBox(width: 120.w, child: text14w400_FCFCFC("Lorem ipsum")),
|
||||
],
|
||||
),
|
||||
]),
|
||||
),
|
||||
border: 1);
|
||||
}
|
||||
|
||||
void inviteBottomSheet() {
|
||||
Get.bottomSheet(
|
||||
StatefulBuilder(
|
||||
builder: (BuildContext context, StateSetter setState) {
|
||||
return Container(
|
||||
decoration: BoxDecoration(
|
||||
borderRadius: BorderRadius.only(
|
||||
topLeft: Radius.circular(30.r),
|
||||
topRight: Radius.circular(30.r),
|
||||
),
|
||||
color: Color(0xFF222935),
|
||||
),
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
mainAxisSize: MainAxisSize.min,
|
||||
children: [
|
||||
sizedBoxHeight(20.h),
|
||||
text18w400white("Events"),
|
||||
Column(
|
||||
children: List.generate(eventData.length, (index) {
|
||||
return Column(
|
||||
children: [
|
||||
sizedBoxHeight(10.h),
|
||||
eventWidget(
|
||||
index: index,
|
||||
imagePath: eventData[index]["imagePath"],
|
||||
title: eventData[index]["title"],
|
||||
isChecked: isCheckedList[index],
|
||||
onCheckedChanged: (bool? value) {
|
||||
setState(() {
|
||||
isCheckedList[index] = value ?? false;
|
||||
});
|
||||
},
|
||||
),
|
||||
if (index != eventData.length - 1) commonDivider(),
|
||||
],
|
||||
);
|
||||
}),
|
||||
),
|
||||
sizedBoxHeight(30.h),
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
},
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget eventWidget({
|
||||
required int index,
|
||||
required String imagePath,
|
||||
required String title,
|
||||
required bool isChecked,
|
||||
required ValueChanged<bool?> onCheckedChanged,
|
||||
}) {
|
||||
return Padding(
|
||||
padding: EdgeInsets.symmetric(
|
||||
vertical: 16.h,
|
||||
),
|
||||
child: Row(
|
||||
children: [
|
||||
SizedBox(
|
||||
height: 30.h,
|
||||
width: 30.w,
|
||||
child: ClipRRect(
|
||||
borderRadius: BorderRadius.circular(5.r),
|
||||
child: Image.asset(
|
||||
imagePath,
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(10.w),
|
||||
text16w400_FCFCFC(title),
|
||||
Spacer(),
|
||||
commonGlassContainer(
|
||||
border: 1,
|
||||
borderradius: 2,
|
||||
height: 23.h,
|
||||
width: 23.w,
|
||||
opacity1: 0.24,
|
||||
opacity2: 0.24,
|
||||
customWidget: Transform.scale(
|
||||
scale: 1.4,
|
||||
child: Checkbox(
|
||||
side: BorderSide(color: Color(0xFF434A53)),
|
||||
value: isChecked,
|
||||
activeColor: Colors.transparent,
|
||||
checkColor: Colors.white,
|
||||
onChanged: onCheckedChanged,
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
220
lib/Feed Module/Main_Screens/CalenderTab/SetAvailabillity.dart
Normal file
@@ -0,0 +1,220 @@
|
||||
import 'package:flutter/cupertino.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:glassmorphism/glassmorphism.dart';
|
||||
import 'package:regroup/Common/CommonButton.dart';
|
||||
import 'package:regroup/Common/CommonDropDown.dart';
|
||||
import 'package:regroup/Common/CommonGlassmorphism.dart';
|
||||
import 'package:regroup/Utils/Common/CommonAppbar.dart';
|
||||
import 'package:regroup/Utils/Common/blureffect.dart';
|
||||
import 'package:regroup/Utils/Common/sized_box.dart';
|
||||
import 'package:regroup/Utils/texts.dart';
|
||||
|
||||
class SetAvailabillity extends StatefulWidget {
|
||||
const SetAvailabillity({super.key});
|
||||
|
||||
@override
|
||||
State<SetAvailabillity> createState() => _SetAvailabillityState();
|
||||
}
|
||||
|
||||
class _SetAvailabillityState extends State<SetAvailabillity> {
|
||||
bool swichvalue = false;
|
||||
|
||||
var selectedContainerIndices = <int>{}.obs;
|
||||
|
||||
void toggleSelectedIndex(int index) {
|
||||
if (selectedContainerIndices.contains(index)) {
|
||||
selectedContainerIndices.remove(index);
|
||||
} else {
|
||||
selectedContainerIndices.add(index);
|
||||
}
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: CommonAppbar(
|
||||
titleTxt: "Set availability",
|
||||
),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Positioned.fill(
|
||||
child: SingleChildScrollView(
|
||||
child: Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 16),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
sizedBoxHeight(10.h),
|
||||
text16400white("Select event type"),
|
||||
sizedBoxHeight(15.h),
|
||||
CommonDropdownBtn(hint: "", items: []),
|
||||
sizedBoxHeight(18.h),
|
||||
text16400white("Select sport"),
|
||||
sizedBoxHeight(15.h),
|
||||
CommonDropdownBtn(hint: "", items: []),
|
||||
sizedBoxHeight(18.h),
|
||||
text16400white("Select role "),
|
||||
sizedBoxHeight(15.h),
|
||||
CommonDropdownBtn(hint: "", items: []),
|
||||
sizedBoxHeight(18.h),
|
||||
text16400white("Space selection"),
|
||||
sizedBoxHeight(15.h),
|
||||
CommonDropdownBtn(hint: "", items: []),
|
||||
sizedBoxHeight(18.h),
|
||||
Row(
|
||||
children: [
|
||||
text16w400_white("Availability"),
|
||||
Spacer(),
|
||||
Transform.scale(
|
||||
scaleY: 1,
|
||||
child: CupertinoSwitch(
|
||||
value: swichvalue,
|
||||
trackColor:
|
||||
Colors.white.withOpacity(0.4),
|
||||
activeColor: Color(0xFF3192D8),
|
||||
onChanged: (bool? value) {
|
||||
setState(() {
|
||||
swichvalue = value ?? false;
|
||||
});
|
||||
}))
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(30.h),
|
||||
text16400white("Select days"),
|
||||
sizedBoxHeight(15.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: [
|
||||
commondayContainer(text: "M", index: 1),
|
||||
commondayContainer(text: "Tu", index: 2),
|
||||
commondayContainer(text: "W", index: 3),
|
||||
commondayContainer(text: "Th", index: 4),
|
||||
commondayContainer(text: "F", index: 5),
|
||||
commondayContainer(text: "Sa", index: 6),
|
||||
commondayContainer(text: "Su", index: 7),
|
||||
// GlassmorphicContainer(
|
||||
// width: 40.w,
|
||||
// height: 40.h,
|
||||
// borderRadius: 100,
|
||||
// blur: 10,
|
||||
// alignment: Alignment.topCenter,
|
||||
// border: 0.5,
|
||||
// linearGradient: LinearGradient(
|
||||
// begin: Alignment.topLeft,
|
||||
// end: Alignment.bottomRight,
|
||||
// colors: [
|
||||
// Color(0xFFD90B2E).withOpacity(0.18),
|
||||
// const Color(0xFFD90B2E).withOpacity(0.4),
|
||||
// ],
|
||||
// stops: const [
|
||||
// 0.1,
|
||||
// 1,
|
||||
// ],
|
||||
// ),
|
||||
// borderGradient: LinearGradient(
|
||||
// begin: Alignment.topLeft,
|
||||
// end: Alignment.bottomRight,
|
||||
// colors: [
|
||||
// Color(0xffD90B2E),
|
||||
// Color(0xFFD90B2E),
|
||||
// ],
|
||||
// ),
|
||||
// child: Center(child: text16w400_FCFCFC("Su")),
|
||||
// ),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
Row(
|
||||
children: [
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text16400white("Start time"),
|
||||
sizedBoxHeight(14.h),
|
||||
commonGlassContainer(
|
||||
width: 174.w,
|
||||
height: 50.h,
|
||||
borderradius: 30.r,
|
||||
customWidget: Center(
|
||||
child: Row(children: [
|
||||
sizedBoxWidth(16.w),
|
||||
Image.asset(
|
||||
"assets/images/png/clock.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text16w400_white("3:00 pm")
|
||||
]),
|
||||
),
|
||||
border: 1)
|
||||
],
|
||||
),
|
||||
Spacer(),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text16400white("End time"),
|
||||
sizedBoxHeight(14.h),
|
||||
commonGlassContainer(
|
||||
width: 174.w,
|
||||
height: 50.h,
|
||||
borderradius: 30.r,
|
||||
customWidget: Center(
|
||||
child: Row(children: [
|
||||
sizedBoxWidth(16.w),
|
||||
Image.asset(
|
||||
"assets/images/png/clock.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
),
|
||||
sizedBoxWidth(8.w),
|
||||
text16w400_white("5:00 pm")
|
||||
]),
|
||||
),
|
||||
border: 1)
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(30.h),
|
||||
CommonBtn(text: "Send"),
|
||||
sizedBoxHeight(30.h),
|
||||
]))))
|
||||
]));
|
||||
}
|
||||
|
||||
Widget commondayContainer({
|
||||
required String text,
|
||||
required int index,
|
||||
}) {
|
||||
return Obx(() {
|
||||
return GestureDetector(
|
||||
onTap: () {
|
||||
toggleSelectedIndex(index);
|
||||
},
|
||||
child: Container(
|
||||
width: 40.w,
|
||||
height: 40.h,
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
color: selectedContainerIndices.contains(index)
|
||||
? Color(0xFFD90B2E).withOpacity(0.4)
|
||||
: Color(0xFFFFFFFF).withOpacity(0.2),
|
||||
border: selectedContainerIndices.contains(index)
|
||||
? Border.all(color: Color(0xFFD90B2E), width: 1)
|
||||
: null),
|
||||
child: Center(child: text16w400_FCFCFC(text)),
|
||||
),
|
||||
);
|
||||
});
|
||||
}
|
||||
}
|
||||
@@ -179,13 +179,14 @@ class _EditCommunityState extends State<EditCommunity> {
|
||||
text16w400_FCFCFC("Location*"),
|
||||
sizedBoxHeight(14.h),
|
||||
CommonDropdownradioBtn(
|
||||
hint: '',
|
||||
items: ["Public", "Private - Request to join"]),
|
||||
hint: '', items: ["Public", "Private", "Secret"]),
|
||||
sizedBoxHeight(25.h),
|
||||
text16w400_FCFCFC("Primary activity*"),
|
||||
sizedBoxHeight(14.h),
|
||||
CommonDropdownradioBtn(
|
||||
hint: '', items: ["Sports", "Hobby"]),
|
||||
hint: '',
|
||||
items: ["Sports", "Hobby"],
|
||||
showOtherOption: true),
|
||||
sizedBoxHeight(50.h),
|
||||
CustomButton(text: 'Save changes', onPressed: () {}),
|
||||
sizedBoxHeight(50.h),
|
||||
|
||||
@@ -93,7 +93,9 @@ class _NewCommunityState extends State<NewCommunity> {
|
||||
text16w400_FCFCFC("Type of community*"),
|
||||
sizedBoxHeight(15.h),
|
||||
CommonDropdownradioBtn(
|
||||
hint: '', items: ['Public', 'Private', 'Secret']),
|
||||
hint: '',
|
||||
items: ['Public', 'Private', 'Secret'],
|
||||
showOtherOption: false),
|
||||
sizedBoxHeight(25.h),
|
||||
text16w400_FCFCFC("Location*"),
|
||||
sizedBoxHeight(15.h),
|
||||
@@ -103,15 +105,20 @@ class _NewCommunityState extends State<NewCommunity> {
|
||||
items: ['Public', 'Private', 'Secret']),
|
||||
sizedBoxHeight(25.h),
|
||||
text16w400_FCFCFC("Primary activity*"),
|
||||
sizedBoxHeight(15.h),
|
||||
CustomDropDownWidgetSignup(
|
||||
header: 'Primary activity',
|
||||
title: 'ss',
|
||||
listData: ['Public', 'Private', 'Secret'],
|
||||
onItemSelected: (p0) => {},
|
||||
leadingImage: SizedBox()),
|
||||
CommonDropdownBtn(
|
||||
hint: '', items: ['Public', 'Private', 'Secret']),
|
||||
// CustomDropDownWidgetSignup(
|
||||
// header: 'Primary activity',
|
||||
// title: 'ss',
|
||||
// listData: ['Public', 'Private', 'Secret'],
|
||||
// onItemSelected: (p0) => {},
|
||||
// leadingImage: SizedBox()),
|
||||
sizedBoxHeight(20.h),
|
||||
CommonDropdownradioBtn(
|
||||
hint: '',
|
||||
items: [
|
||||
'Sports',
|
||||
'Hobby',
|
||||
],
|
||||
showOtherOption: true),
|
||||
sizedBoxHeight(25.h),
|
||||
sizedBoxHeight(25.h),
|
||||
CommonBtn(
|
||||
@@ -121,7 +128,7 @@ class _NewCommunityState extends State<NewCommunity> {
|
||||
},
|
||||
),
|
||||
sizedBoxHeight(25.h),
|
||||
sizedBoxHeight(25.h),
|
||||
sizedBoxHeight(150.h),
|
||||
]),
|
||||
)))
|
||||
]));
|
||||
|
||||
@@ -33,6 +33,17 @@ Widget text20400white(String text) {
|
||||
);
|
||||
}
|
||||
|
||||
Widget text20700white(String text) {
|
||||
return Text(
|
||||
text,
|
||||
style: TextStyle(
|
||||
fontSize: 20.sp,
|
||||
color: AppColors.white,
|
||||
fontWeight: FontWeight.w700,
|
||||
fontFamily: 'Helvetica'),
|
||||
);
|
||||
}
|
||||
|
||||
Widget text16400white(String text) {
|
||||
return Text(
|
||||
text,
|
||||
@@ -57,6 +68,18 @@ Widget text25700white(String text) {
|
||||
);
|
||||
}
|
||||
|
||||
Widget text25700FCFCFC(String text) {
|
||||
return Text(
|
||||
text,
|
||||
// textAlign: TextAlign.center,
|
||||
style: TextStyle(
|
||||
fontSize: 25.sp,
|
||||
color: Color(0xFFFCFCFC),
|
||||
fontWeight: FontWeight.w700,
|
||||
fontFamily: 'Helvetica'),
|
||||
);
|
||||
}
|
||||
|
||||
Widget text12400white(String text) {
|
||||
return Text(
|
||||
text,
|
||||
@@ -68,6 +91,17 @@ Widget text12400white(String text) {
|
||||
);
|
||||
}
|
||||
|
||||
Widget text12400whiteblur(String text) {
|
||||
return Text(
|
||||
text,
|
||||
style: TextStyle(
|
||||
fontSize: 12.sp,
|
||||
color: AppColors.white.withOpacity(0.8),
|
||||
fontWeight: FontWeight.w400,
|
||||
fontFamily: 'Helvetica'),
|
||||
);
|
||||
}
|
||||
|
||||
Widget text14400white(String text) {
|
||||
return Text(
|
||||
text,
|
||||
@@ -80,6 +114,18 @@ Widget text14400white(String text) {
|
||||
);
|
||||
}
|
||||
|
||||
Widget text14400whiteblur(String text) {
|
||||
return Text(
|
||||
text,
|
||||
// textAlign: TextAlign.center,
|
||||
style: TextStyle(
|
||||
fontSize: 14.sp,
|
||||
color: AppColors.white.withOpacity(0.8),
|
||||
fontWeight: FontWeight.w400,
|
||||
fontFamily: 'Helvetica'),
|
||||
);
|
||||
}
|
||||
|
||||
Widget text14700white(String text) {
|
||||
return Text(
|
||||
text,
|
||||
@@ -177,6 +223,20 @@ Widget text16w400white(String text, {TextAlign? textAlign}) {
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget text16w700white(String text, {TextAlign? textAlign}) {
|
||||
return Text(
|
||||
text,
|
||||
textAlign: textAlign,
|
||||
style: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w700,
|
||||
color: AppColors.white,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget text18w700white(String text, {TextAlign? textAlign}) {
|
||||
return Text(
|
||||
text,
|
||||
@@ -190,6 +250,19 @@ Widget text18w700white(String text, {TextAlign? textAlign}) {
|
||||
);
|
||||
}
|
||||
|
||||
Widget text18w400white(String text, {TextAlign? textAlign}) {
|
||||
return Text(
|
||||
text,
|
||||
textAlign: textAlign,
|
||||
style: TextStyle(
|
||||
fontSize: 18.sp,
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w400,
|
||||
color: AppColors.white,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget text14w400white(String text, {TextAlign? textAlign}) {
|
||||
return Text(
|
||||
text,
|
||||
@@ -272,6 +345,30 @@ Widget text16w700_FCFCFC(String text) {
|
||||
);
|
||||
}
|
||||
|
||||
Widget text16w700_FCFCFCblur(String text) {
|
||||
return Text(
|
||||
text,
|
||||
style: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
color: Color(0xFFFCFCFC).withOpacity(0.8),
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w700),
|
||||
);
|
||||
}
|
||||
|
||||
Widget text16w700_FCFCFCline(String text) {
|
||||
return Text(
|
||||
text,
|
||||
style: TextStyle(
|
||||
decoration: TextDecoration.underline,
|
||||
decorationColor: Color(0xFFFCFCFC),
|
||||
fontSize: 16.sp,
|
||||
color: Color(0xFFFCFCFC),
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w700),
|
||||
);
|
||||
}
|
||||
|
||||
Widget text16w700_FCFCFCUnderline(String text) {
|
||||
return Text(
|
||||
text,
|
||||
|
||||
@@ -42,6 +42,12 @@ class RouteName {
|
||||
static const String managegroups = '/managegroups';
|
||||
static const String addgroup = '/addgroup';
|
||||
static const String newcommunity = '/newcommunity';
|
||||
static const String resourcepool = '/resourcepool';
|
||||
static const String eventDetails = '/eventDetails';
|
||||
static const String addEvent = '/addEvent';
|
||||
static const String setavailabillity = '/setavailabillity';
|
||||
static const String addUsers = '/addUsers';
|
||||
// static const String managemembers= '/managemembers';
|
||||
|
||||
|
||||
}
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
import 'package:get/get_navigation/src/routes/get_route.dart';
|
||||
import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/AddEvent/AddEvent.dart';
|
||||
import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/AddUsers/AddUsers.dart';
|
||||
import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/EventDetails.dart';
|
||||
import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/Resource%20Pool/ResourcePool.dart';
|
||||
import 'package:regroup/Feed%20Module/Main_Screens/CalenderTab/SetAvailabillity.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/Community/Admin/PopupItem/Community%20settings/CommunitySetting.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/Community/Admin/PopupItem/Community%20settings/EditCommunity/EditCommunity.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/Community/Admin/PopupItem/Community%20settings/ManageGroup.dart';
|
||||
@@ -201,5 +206,29 @@ class AppRoutes {
|
||||
name: RouteName.newcommunity,
|
||||
page: () => const NewCommunity(),
|
||||
),
|
||||
GetPage(
|
||||
name: RouteName.resourcepool,
|
||||
page: () => const ResourcePool(),
|
||||
),
|
||||
GetPage(
|
||||
name: RouteName.eventDetails,
|
||||
page: () => const EventDetails(),
|
||||
),
|
||||
GetPage(
|
||||
name: RouteName.addEvent,
|
||||
page: () => const AddEvent(),
|
||||
),
|
||||
GetPage(
|
||||
name: RouteName.setavailabillity,
|
||||
page: () => const SetAvailabillity(),
|
||||
),
|
||||
GetPage(
|
||||
name: RouteName.addUsers,
|
||||
page: () => const AddUsers(),
|
||||
),
|
||||
// GetPage(
|
||||
// name: RouteName.managemembers,
|
||||
// page: () => const ManageMembers(),
|
||||
// ),
|
||||
];
|
||||
}
|
||||
|
||||
48
pubspec.lock
@@ -41,6 +41,14 @@ packages:
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "2.1.1"
|
||||
calendar_date_picker2:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: calendar_date_picker2
|
||||
sha256: "5fddc1fb78c8f218b2e0dd6bae239f7ac502784c62f34ef96f4b22a8cb5d5608"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.0.3"
|
||||
characters:
|
||||
dependency: transitive
|
||||
description:
|
||||
@@ -400,6 +408,14 @@ packages:
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.2.1+1"
|
||||
intl:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: intl
|
||||
sha256: d6f56758b7d3014a48af9701c085700aac781a92a87a62b1333b46d8879661cf
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.19.0"
|
||||
js:
|
||||
dependency: transitive
|
||||
description:
|
||||
@@ -717,6 +733,30 @@ packages:
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.2.0"
|
||||
syncfusion_flutter_calendar:
|
||||
dependency: "direct main"
|
||||
description:
|
||||
name: syncfusion_flutter_calendar
|
||||
sha256: "4c14947b6a398afbbb341b4ea069bc0c1a68d5459ff8b04c8668342ea6380820"
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "25.2.7"
|
||||
syncfusion_flutter_core:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: syncfusion_flutter_core
|
||||
sha256: e17dcc7a1d0701e84d0a83c0040503cdcc6c72e44db0d733ab4c706dd5b8b9f8
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "25.2.7"
|
||||
syncfusion_flutter_datepicker:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: syncfusion_flutter_datepicker
|
||||
sha256: ebe93b6b54937164ee8b19cd036f314f226a5d69c47da97d05ce07a0ecae4dee
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "25.2.7"
|
||||
term_glyph:
|
||||
dependency: transitive
|
||||
description:
|
||||
@@ -733,6 +773,14 @@ packages:
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.6.1"
|
||||
timezone:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: timezone
|
||||
sha256: a6ccda4a69a442098b602c44e61a1e2b4bf6f5516e875bbf0f427d5df14745d5
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.9.3"
|
||||
typed_data:
|
||||
dependency: transitive
|
||||
description:
|
||||
|
||||
@@ -59,6 +59,8 @@ dependencies:
|
||||
|
||||
dropdown_button2: ^2.3.9
|
||||
flutter_reaction_button: any
|
||||
syncfusion_flutter_calendar: ^25.2.7
|
||||
calendar_date_picker2: ^1.0.3
|
||||
|
||||
|
||||
dev_dependencies:
|
||||
|
||||