Announcement, group, my community, communityinfo page done
BIN
assets/images/png/Black1233.png
Normal file
|
After Width: | Height: | Size: 1020 B |
|
Before Width: | Height: | Size: 148 KiB |
|
Before Width: | Height: | Size: 137 KiB |
|
Before Width: | Height: | Size: 172 KiB |
|
Before Width: | Height: | Size: 169 KiB |
BIN
assets/images/png/Ellipse 52.png
Normal file
|
After Width: | Height: | Size: 27 KiB |
BIN
assets/images/png/Frame 58575.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
assets/images/png/Group 58645.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
assets/images/png/img34.png
Normal file
|
After Width: | Height: | Size: 1.8 MiB |
BIN
assets/images/png/img45.png
Normal file
|
After Width: | Height: | Size: 14 MiB |
BIN
assets/images/png/puzzle-pieces 1 (traced).png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
assets/images/png/uiw_user-add.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
@@ -3,9 +3,10 @@ import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:flutter_svg/svg.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:path/path.dart' as path;
|
||||
import 'package:regroup/Utils/Common/sized_box.dart';
|
||||
import 'package:regroup/Utils/texts.dart';
|
||||
import 'package:remove_emoji_input_formatter/remove_emoji_input_formatter.dart';
|
||||
|
||||
|
||||
class TextInputField extends StatefulWidget {
|
||||
TextInputField({Key? key, this.hinttext, this.controller, this.validator})
|
||||
: super(key: key);
|
||||
@@ -65,9 +66,7 @@ class _TextInputFieldState extends State<TextInputField> {
|
||||
Widget MessageTextInputField(
|
||||
String hinttext, TextEditingController controller, dynamic validator) {
|
||||
return TextFormField(
|
||||
inputFormatters: [
|
||||
RemoveEmojiInputFormatter()
|
||||
],
|
||||
inputFormatters: [RemoveEmojiInputFormatter()],
|
||||
// maxLength: 5,
|
||||
autovalidateMode: AutovalidateMode.onUserInteraction,
|
||||
maxLines: 5,
|
||||
@@ -119,20 +118,105 @@ Widget MessageTextInputField(
|
||||
);
|
||||
}
|
||||
|
||||
Widget commonDivider(){
|
||||
return Container(
|
||||
height: 1.5.h,
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: Alignment.topLeft,
|
||||
end: Alignment.bottomRight,
|
||||
colors: [
|
||||
Color.fromRGBO(255, 255, 255, 0.07),
|
||||
Color.fromRGBO(255, 255, 255, 0.09),
|
||||
],
|
||||
transform: GradientRotation(1.78),
|
||||
Widget commonDivider() {
|
||||
return Container(
|
||||
height: 1.5.h,
|
||||
width: double.infinity,
|
||||
decoration: BoxDecoration(
|
||||
gradient: LinearGradient(
|
||||
begin: Alignment.topLeft,
|
||||
end: Alignment.bottomRight,
|
||||
colors: [
|
||||
Color.fromRGBO(255, 255, 255, 0.07),
|
||||
Color.fromRGBO(255, 255, 255, 0.09),
|
||||
],
|
||||
transform: GradientRotation(1.78),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget stackContainers({
|
||||
required String number,
|
||||
required List<String> containerImages,
|
||||
}) {
|
||||
return Row(
|
||||
children: [
|
||||
SizedBox(width: 12),
|
||||
Stack(
|
||||
clipBehavior: Clip.none,
|
||||
children: [
|
||||
Container(
|
||||
height: 30,
|
||||
width: 30,
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
color: Color(0xFFD90B2E),
|
||||
border: Border.all(color: Color(0xFF2C3742), width: 1),
|
||||
),
|
||||
child: Center(
|
||||
child: Text(
|
||||
number,
|
||||
style: TextStyle(
|
||||
color: Colors.white,
|
||||
fontWeight: FontWeight.w400,
|
||||
fontSize: 8,
|
||||
),
|
||||
),
|
||||
),
|
||||
),
|
||||
Positioned(
|
||||
left: 20,
|
||||
child: SizedBox(
|
||||
height: 30,
|
||||
width: 50,
|
||||
child: Stack(
|
||||
clipBehavior: Clip.none,
|
||||
children: List.generate(containerImages.length, (index) {
|
||||
return Positioned(
|
||||
left: index * 22.0,
|
||||
child: Container(
|
||||
height: 30,
|
||||
width: 30,
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
border: Border.all(color: Color(0xFF2C3742), width: 1),
|
||||
),
|
||||
child: CircleAvatar(
|
||||
foregroundImage: AssetImage(containerImages[index]),
|
||||
),
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
);
|
||||
}),
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
Widget popupMenuItemWidget({
|
||||
required void Function()? ontap,
|
||||
required String text,
|
||||
required String imageIcon,
|
||||
}) {
|
||||
return PopupMenuItem(
|
||||
onTap: ontap,
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 12.w),
|
||||
child: Row(
|
||||
children: [
|
||||
text14w400white(text),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
imageIcon,
|
||||
height: 25.h,
|
||||
width: 25.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
@@ -141,13 +141,13 @@ class _CustomTextFormFieldState extends State<CustomTextFormField> {
|
||||
),
|
||||
style: const TextStyle(color: Colors.white),
|
||||
keyboardType: widget.texttype,
|
||||
// validator: widget.validator ??
|
||||
// (value) {
|
||||
// if (value == null || value.isEmpty) {
|
||||
// return "Empty value";
|
||||
// }
|
||||
// return null;
|
||||
// },
|
||||
validator: widget.validator ??
|
||||
(value) {
|
||||
if (value == null || value.isEmpty) {
|
||||
return "Empty value";
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: widget.inputFormatters,
|
||||
onChanged: (value) {
|
||||
widget.onInput?.call(value);
|
||||
|
||||
@@ -153,6 +153,16 @@ Widget feedTab() {
|
||||
}
|
||||
|
||||
Widget normalcardtile() {
|
||||
var mainImage = 'assets/images/png/uiw_like-o.png'.obs;
|
||||
void updateImage(String reaction) {
|
||||
if (reaction == 'like') {
|
||||
mainImage.value = 'assets/images/png/f7_hand-thumbsup.png';
|
||||
} else if (reaction == 'heart') {
|
||||
mainImage.value = 'assets/images/png/heart 2.png';
|
||||
} else if (reaction == 'party') {
|
||||
mainImage.value = 'assets/images/png/party-popper 2.png';
|
||||
}
|
||||
}
|
||||
return Column(
|
||||
children: [
|
||||
sizedBoxHeight(25.h),
|
||||
@@ -284,17 +294,16 @@ Widget normalcardtile() {
|
||||
height: 18.h,
|
||||
),
|
||||
),
|
||||
|
||||
sizedBoxWidth(5.w)
|
||||
],
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.postdetailsScreen);
|
||||
},
|
||||
child: Image.asset('assets/images/png/Rectangle 22.png')),
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.postdetailsScreen);
|
||||
},
|
||||
child: Image.asset('assets/images/png/Rectangle 22.png')),
|
||||
sizedBoxHeight(20.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
@@ -321,11 +330,9 @@ Widget normalcardtile() {
|
||||
text16w400_FCFCFC(
|
||||
"Lorem Ipsum has been the industry's standard dummy text ever since the 1500s . . ."),
|
||||
Row(children: [
|
||||
|
||||
Spacer(),
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
border: 0.9,
|
||||
width: 30.w,
|
||||
height: 30.h,
|
||||
borderradius: 100,
|
||||
@@ -352,8 +359,7 @@ Widget normalcardtile() {
|
||||
text14w400_FCFCFC('20'),
|
||||
sizedBoxWidth(20.w),
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
border: 0.9,
|
||||
width: 30.w,
|
||||
height: 30.h,
|
||||
borderradius: 100,
|
||||
@@ -391,61 +397,62 @@ Widget normalcardtile() {
|
||||
Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
ReactionButton<String>(
|
||||
onReactionChanged: (reaction) {
|
||||
debugPrint('Selected value: ${reaction?.value}');
|
||||
},
|
||||
reactions: <Reaction<String>?>[
|
||||
Reaction<String>(
|
||||
Obx(() {
|
||||
return ReactionButton<String>(
|
||||
onReactionChanged: (reaction) {
|
||||
updateImage(reaction?.value ?? 'like');
|
||||
debugPrint(
|
||||
'Selected value: ${reaction?.value}');
|
||||
},
|
||||
reactions: <Reaction<String>?>[
|
||||
Reaction<String>(
|
||||
value: 'like',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
),
|
||||
Reaction<String>(
|
||||
value: 'heart',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/heart 2.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/heart 2.png'),
|
||||
),
|
||||
Reaction<String>(
|
||||
value: 'party',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/party-popper 2.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/party-popper 2.png'),
|
||||
),
|
||||
],
|
||||
// placeholder: Reaction<String>(
|
||||
// value: 'like',
|
||||
// icon: _buildReactionsIcon(
|
||||
// 'assets/images/png/f7_hand-thumbsup.png'),
|
||||
// ),
|
||||
selectedReaction: Reaction<String>(
|
||||
value: 'like',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
),
|
||||
Reaction<String>(
|
||||
value: 'heart',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/heart 2.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/heart 2.png'),
|
||||
),
|
||||
Reaction<String>(
|
||||
value: 'party',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/party-popper 2.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/party-popper 2.png'),
|
||||
),
|
||||
|
||||
// Add more reactions here if needed
|
||||
],
|
||||
placeholder: Reaction<String>(
|
||||
value: 'like',
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
),
|
||||
selectedReaction: Reaction<String>(
|
||||
value: 'like',
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
),
|
||||
boxColor: Colors.white,
|
||||
boxElevation: 5,
|
||||
boxRadius: 50,
|
||||
itemsSpacing: 8,
|
||||
itemScale: 0.3,
|
||||
itemSize: Size(40.w, 40.h),
|
||||
boxPadding: EdgeInsets.all(4),
|
||||
boxAnimationDuration: Duration(milliseconds: 200),
|
||||
itemAnimationDuration: Duration(milliseconds: 100),
|
||||
hoverDuration: Duration(milliseconds: 400),
|
||||
toggle: false,
|
||||
direction: ReactionsBoxAlignment.ltr,
|
||||
child: _buildReactionsIcon(
|
||||
'assets/images/png/uiw_like-o.png',
|
||||
),
|
||||
),
|
||||
boxColor: Colors.white,
|
||||
boxElevation: 5,
|
||||
boxRadius: 50,
|
||||
itemsSpacing: 8,
|
||||
itemScale: 0.3,
|
||||
itemSize: Size(40.0, 40.0),
|
||||
boxPadding: EdgeInsets.all(4),
|
||||
boxAnimationDuration: Duration(milliseconds: 200),
|
||||
itemAnimationDuration:
|
||||
Duration(milliseconds: 100),
|
||||
hoverDuration: Duration(milliseconds: 400),
|
||||
toggle: false,
|
||||
direction: ReactionsBoxAlignment.ltr,
|
||||
child: _buildReactionsIcon(mainImage.value),
|
||||
);
|
||||
})
|
||||
],
|
||||
),
|
||||
],
|
||||
@@ -482,6 +489,7 @@ Widget normalcardtile() {
|
||||
),
|
||||
],
|
||||
);
|
||||
|
||||
}
|
||||
|
||||
Widget _buildReactionsPreviewIcon(String assetPath) {
|
||||
@@ -505,8 +513,7 @@ Widget _buildReactionsIcon(String assetPath) {
|
||||
|
||||
Widget tagCardTile() {
|
||||
return commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
border: 0.9,
|
||||
width: double.infinity,
|
||||
height: 580.h,
|
||||
borderradius: 1,
|
||||
@@ -525,8 +532,7 @@ Widget tagCardTile() {
|
||||
|
||||
Widget containertile({required String text}) {
|
||||
return commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
border: 0.9,
|
||||
width: 100.w,
|
||||
height: 30.h,
|
||||
borderradius: 30.r,
|
||||
|
||||
@@ -8,6 +8,7 @@ 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 CycleScreen extends StatefulWidget {
|
||||
const CycleScreen({super.key});
|
||||
@@ -78,6 +79,17 @@ Widget CyclelatestTab() {
|
||||
}
|
||||
|
||||
Widget normalcardtile() {
|
||||
var mainImage = 'assets/images/png/uiw_like-o.png'.obs;
|
||||
void updateImage(String reaction) {
|
||||
if (reaction == 'like') {
|
||||
mainImage.value = 'assets/images/png/f7_hand-thumbsup.png';
|
||||
} else if (reaction == 'heart') {
|
||||
mainImage.value = 'assets/images/png/heart 2.png';
|
||||
} else if (reaction == 'party') {
|
||||
mainImage.value = 'assets/images/png/party-popper 2.png';
|
||||
}
|
||||
}
|
||||
|
||||
return Column(
|
||||
children: [
|
||||
sizedBoxHeight(25.h),
|
||||
@@ -118,17 +130,107 @@ Widget normalcardtile() {
|
||||
],
|
||||
),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
'assets/images/png/Group 1000004071.png',
|
||||
width: 4.w,
|
||||
height: 18.h,
|
||||
PopupMenuButton(
|
||||
surfaceTintColor: Color(0xFF222935),
|
||||
constraints: BoxConstraints.tightFor(width: 176.w),
|
||||
offset: Offset(0, 50),
|
||||
color: Color(0xFF222935),
|
||||
tooltip: "",
|
||||
itemBuilder: (BuildContext context) => <PopupMenuEntry>[
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 12.w),
|
||||
child: Row(
|
||||
children: [
|
||||
Text(
|
||||
'Report Post',
|
||||
style: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
color: Colors.white,
|
||||
fontWeight: FontWeight.w800,
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/Vector (5).png",
|
||||
height: 15.h,
|
||||
width: 15.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 12.w),
|
||||
child: Row(
|
||||
children: [
|
||||
Text(
|
||||
'Share post',
|
||||
style: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
color: Colors.white,
|
||||
fontWeight: FontWeight.w800,
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/share.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 12.w),
|
||||
child: Row(
|
||||
children: [
|
||||
Text(
|
||||
'Pin',
|
||||
style: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
color: Colors.white,
|
||||
fontWeight: FontWeight.w800,
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/f7_pin-fill (2).png",
|
||||
height: 25.h,
|
||||
width: 25.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
child: Image.asset(
|
||||
'assets/images/png/Group 1000004071.png',
|
||||
width: 4.w,
|
||||
height: 18.h,
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(5.w)
|
||||
],
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
Image.asset('assets/images/png/Rectangle 22.png'),
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.postdetailsScreen);
|
||||
},
|
||||
child: Image.asset('assets/images/png/Rectangle 22.png')),
|
||||
sizedBoxHeight(20.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
@@ -142,7 +244,11 @@ Widget normalcardtile() {
|
||||
itemBuilder: (context, index) {
|
||||
return Padding(
|
||||
padding: EdgeInsets.only(right: 12.w),
|
||||
child: containertile(text: titles[index]),
|
||||
child: GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.cyclescreen);
|
||||
},
|
||||
child: containertile(text: titles[index])),
|
||||
);
|
||||
},
|
||||
),
|
||||
@@ -151,87 +257,9 @@ Widget normalcardtile() {
|
||||
text16w400_FCFCFC(
|
||||
"Lorem Ipsum has been the industry's standard dummy text ever since the 1500s . . ."),
|
||||
Row(children: [
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
width: 30.w,
|
||||
height: 30.h,
|
||||
borderradius: 100,
|
||||
customWidget: Center(
|
||||
child: ReactionButton<String>(
|
||||
itemSize: Size.fromHeight(20),
|
||||
onReactionChanged: (Reaction<String>? reaction) {
|
||||
debugPrint('Selected value: ${reaction?.value}');
|
||||
},
|
||||
reactions: <Reaction<String>>[
|
||||
Reaction<String>(
|
||||
value: 'like',
|
||||
icon: Image.asset(
|
||||
'assets/images/png/f7_hand-thumbsup.png',
|
||||
height: 17.h,
|
||||
width: 17.w,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
width: 30.w,
|
||||
height: 30.h,
|
||||
borderradius: 100,
|
||||
customWidget: Center(
|
||||
child: ReactionButton<String>(
|
||||
itemSize: Size.fromHeight(20),
|
||||
onReactionChanged: (Reaction<String>? reaction) {
|
||||
debugPrint('Selected value: ${reaction?.value}');
|
||||
},
|
||||
reactions: <Reaction<String>>[
|
||||
Reaction<String>(
|
||||
value: 'Favourite',
|
||||
icon: Image.asset(
|
||||
'assets/images/png/heart 2.png',
|
||||
height: 17.h,
|
||||
width: 17.w,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
width: 30.w,
|
||||
height: 30.h,
|
||||
borderradius: 100,
|
||||
customWidget: Center(
|
||||
child: ReactionButton<String>(
|
||||
itemSize: Size.fromHeight(20),
|
||||
onReactionChanged: (Reaction<String>? reaction) {
|
||||
debugPrint('Selected value: ${reaction?.value}');
|
||||
},
|
||||
reactions: <Reaction<String>>[
|
||||
Reaction<String>(
|
||||
value: 'Party',
|
||||
icon: Image.asset(
|
||||
'assets/images/png/party-popper 2.png',
|
||||
height: 17.h,
|
||||
width: 17.w,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(7),
|
||||
text14w400_FCFCFC('20'),
|
||||
Spacer(),
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
border: 0.9,
|
||||
width: 30.w,
|
||||
height: 30.h,
|
||||
borderradius: 100,
|
||||
@@ -258,8 +286,7 @@ Widget normalcardtile() {
|
||||
text14w400_FCFCFC('20'),
|
||||
sizedBoxWidth(20.w),
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
border: 0.9,
|
||||
width: 30.w,
|
||||
height: 30.h,
|
||||
borderradius: 100,
|
||||
@@ -291,13 +318,71 @@ Widget normalcardtile() {
|
||||
children: [
|
||||
Column(
|
||||
children: [
|
||||
GestureDetector(
|
||||
onTap: () {},
|
||||
child: Image.asset(
|
||||
'assets/images/png/uiw_like-o.png',
|
||||
height: 19.h,
|
||||
width: 19.w,
|
||||
),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceAround,
|
||||
children: [
|
||||
Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Obx(() {
|
||||
return ReactionButton<String>(
|
||||
onReactionChanged: (reaction) {
|
||||
updateImage(reaction?.value ?? 'like');
|
||||
debugPrint(
|
||||
'Selected value: ${reaction?.value}');
|
||||
},
|
||||
reactions: <Reaction<String>?>[
|
||||
Reaction<String>(
|
||||
value: 'like',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
),
|
||||
Reaction<String>(
|
||||
value: 'heart',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/heart 2.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/heart 2.png'),
|
||||
),
|
||||
Reaction<String>(
|
||||
value: 'party',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/party-popper 2.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/party-popper 2.png'),
|
||||
),
|
||||
],
|
||||
// placeholder: Reaction<String>(
|
||||
// value: 'like',
|
||||
// icon: _buildReactionsIcon(
|
||||
// 'assets/images/png/f7_hand-thumbsup.png'),
|
||||
// ),
|
||||
selectedReaction: Reaction<String>(
|
||||
value: 'like',
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
),
|
||||
boxColor: Colors.white,
|
||||
boxElevation: 5,
|
||||
boxRadius: 50,
|
||||
itemsSpacing: 8,
|
||||
itemScale: 0.3,
|
||||
itemSize: Size(40.0, 40.0),
|
||||
boxPadding: EdgeInsets.all(4),
|
||||
boxAnimationDuration: Duration(milliseconds: 200),
|
||||
itemAnimationDuration:
|
||||
Duration(milliseconds: 100),
|
||||
hoverDuration: Duration(milliseconds: 400),
|
||||
toggle: false,
|
||||
direction: ReactionsBoxAlignment.ltr,
|
||||
child: _buildReactionsIcon(mainImage.value),
|
||||
);
|
||||
})
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(8.h),
|
||||
text11w400_FCFCFC('Like')
|
||||
@@ -333,6 +418,25 @@ Widget normalcardtile() {
|
||||
);
|
||||
}
|
||||
|
||||
Widget _buildReactionsPreviewIcon(String assetPath) {
|
||||
return Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: Image.asset(
|
||||
assetPath,
|
||||
height: 40.h,
|
||||
width: 40.w,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget _buildReactionsIcon(String assetPath) {
|
||||
return Image.asset(
|
||||
assetPath,
|
||||
height: 19.h,
|
||||
width: 19.w,
|
||||
);
|
||||
}
|
||||
|
||||
class CycleTabBar extends StatelessWidget {
|
||||
// Set the desired height
|
||||
|
||||
|
||||
@@ -37,7 +37,7 @@ class _PostDetailsScreenState extends State<PostDetailsScreen> {
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
sizedBoxHeight(25.h),
|
||||
sizedBoxHeight(16.h),
|
||||
postCards(),
|
||||
sizedBoxHeight(30.h),
|
||||
commonDivider(),
|
||||
@@ -102,7 +102,7 @@ class _PostDetailsScreenState extends State<PostDetailsScreen> {
|
||||
];
|
||||
return Column(
|
||||
children: [
|
||||
sizedBoxHeight(25.h),
|
||||
sizedBoxHeight(16.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Row(
|
||||
@@ -296,8 +296,7 @@ class _PostDetailsScreenState extends State<PostDetailsScreen> {
|
||||
text14w400_FCFCFC('20'),
|
||||
sizedBoxWidth(20.w),
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
border: 0.9,
|
||||
width: 30.w,
|
||||
height: 30.h,
|
||||
borderradius: 100,
|
||||
@@ -432,8 +431,7 @@ class _PostDetailsScreenState extends State<PostDetailsScreen> {
|
||||
|
||||
Widget containertile({required String text}) {
|
||||
return commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
border: 0.9,
|
||||
width: 100.w,
|
||||
height: 30.h,
|
||||
borderradius: 30.r,
|
||||
|
||||
@@ -50,15 +50,15 @@ class _PostScreenState extends State<PostScreen> {
|
||||
children: [
|
||||
sizedBoxHeight(20.h),
|
||||
text16w400_FCFCFC("Caption"),
|
||||
sizedBoxHeight(20.h),
|
||||
sizedBoxHeight(18.h),
|
||||
const CustomTextFormField2(
|
||||
maxlines: 3,
|
||||
),
|
||||
sizedBoxHeight(25.h),
|
||||
text16w400_FCFCFC("Media"),
|
||||
sizedBoxHeight(20.h),
|
||||
commonGlassContainer( border: 0.9,
|
||||
|
||||
sizedBoxHeight(18.h),
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
width: double.infinity,
|
||||
height: 130.h,
|
||||
borderradius: 10.r,
|
||||
@@ -81,6 +81,20 @@ class _PostScreenState extends State<PostScreen> {
|
||||
)),
|
||||
sizedBoxHeight(25.h),
|
||||
text16w400_FCFCFC("Tags"),
|
||||
sizedBoxHeight(18.h),
|
||||
CustomTextFormField(
|
||||
suffixIcon: Container(
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
child: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/Frame 58575.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
),
|
||||
)),
|
||||
sizedBoxHeight(25.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
@@ -101,25 +115,24 @@ class _PostScreenState extends State<PostScreen> {
|
||||
),
|
||||
sizedBoxHeight(30.h),
|
||||
text16w400_FCFCFC("CTA Title"),
|
||||
sizedBoxHeight(25.h),
|
||||
sizedBoxHeight(18.h),
|
||||
CustomTextFormField(),
|
||||
sizedBoxHeight(30.h),
|
||||
text16w400_FCFCFC("Post as"),
|
||||
sizedBoxHeight(25.h),
|
||||
text16w400_FCFCFC("Post as"),
|
||||
sizedBoxHeight(18.h),
|
||||
CommonDropdownBtn(hint: '', items: [
|
||||
'Active alliance network',
|
||||
'Fitfam federation',
|
||||
'The athletic town'
|
||||
]),
|
||||
sizedBoxHeight(30.h),
|
||||
text16w400_FCFCFC("Post as"),
|
||||
sizedBoxHeight(25.h),
|
||||
text16w400_FCFCFC("Post in"),
|
||||
sizedBoxHeight(18.h),
|
||||
CommonDropdownBtn(hint: '', items: [
|
||||
'Active alliance network',
|
||||
'Fitfam federation',
|
||||
'The athletic town'
|
||||
]),
|
||||
|
||||
sizedBoxHeight(100.h),
|
||||
]),
|
||||
),
|
||||
@@ -127,8 +140,6 @@ class _PostScreenState extends State<PostScreen> {
|
||||
]));
|
||||
}
|
||||
|
||||
|
||||
|
||||
Widget containerTile({
|
||||
required String text,
|
||||
required int index,
|
||||
|
||||
@@ -0,0 +1,114 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.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 Announcements extends StatefulWidget {
|
||||
const Announcements({super.key});
|
||||
|
||||
@override
|
||||
State<Announcements> createState() => _AnnouncementsState();
|
||||
}
|
||||
|
||||
class _AnnouncementsState extends State<Announcements> {
|
||||
List announcement = [
|
||||
{
|
||||
"imagepath": "assets/images/png/Ellipse 52.png",
|
||||
"title": "Ryan Dorwat",
|
||||
"date": "11-04-2024",
|
||||
"subtitle":
|
||||
"Lorem Ipsum has been the industry's standard dummy text ever since the 1500s."
|
||||
},
|
||||
{
|
||||
"imagepath": "assets/images/png/Ellipse 52.png",
|
||||
"title": "Ryan Dorwat",
|
||||
"date": "11-04-2024",
|
||||
"subtitle":
|
||||
"Lorem Ipsum has been the industry's standard dummy text ever since the 1500s."
|
||||
},
|
||||
{
|
||||
"imagepath": "assets/images/png/Ellipse 52.png",
|
||||
"title": "Ryan Dorwat",
|
||||
"date": "11-04-2024",
|
||||
"subtitle":
|
||||
"Lorem Ipsum has been the industry's standard dummy text ever since the 1500s."
|
||||
},
|
||||
];
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: CommonAppbar(
|
||||
titleTxt: "Announcements",
|
||||
),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Positioned.fill(
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: SingleChildScrollView(
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
sizedBoxHeight(20.h),
|
||||
Column(
|
||||
children: List.generate(announcement.length, (index) {
|
||||
return Column(
|
||||
children: [
|
||||
announcementWidget(
|
||||
imagepath: announcement[index]["imagepath"],
|
||||
title: announcement[index]["title"],
|
||||
date: announcement[index]["date"],
|
||||
subtitle: announcement[index]["subtitle"]),
|
||||
sizedBoxHeight(16.h)
|
||||
],
|
||||
);
|
||||
}),
|
||||
)
|
||||
]))))
|
||||
]));
|
||||
}
|
||||
}
|
||||
|
||||
Widget announcementWidget({
|
||||
required String imagepath,
|
||||
required String title,
|
||||
required String date,
|
||||
required String subtitle,
|
||||
}) {
|
||||
return commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 120.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 12.h),
|
||||
child: Column(
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
CircleAvatar(
|
||||
radius: 15.r,
|
||||
foregroundImage: AssetImage(imagepath),
|
||||
),
|
||||
sizedBoxWidth(12.w),
|
||||
text16w700_FCFCFC(title),
|
||||
sizedBoxWidth(10.w),
|
||||
text12w400_FCFCFC_blur(date),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(16.w),
|
||||
text14w400_FCFCFCblur(subtitle),
|
||||
],
|
||||
),
|
||||
),
|
||||
border: 1);
|
||||
}
|
||||
249
lib/Feed Module/sidemenu/Community/Group/view/Group.dart
Normal file
@@ -0,0 +1,249 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:regroup/Common/CommonGlassmorphism.dart';
|
||||
import 'package:regroup/Common/CommonWidget.dart';
|
||||
import 'package:regroup/Utils/Common/CommonAppbar.dart';
|
||||
import 'package:regroup/Utils/Common/blureffect.dart';
|
||||
import 'package:regroup/Utils/Common/sized_box.dart';
|
||||
import 'package:regroup/Utils/texts.dart';
|
||||
|
||||
class Group extends StatefulWidget {
|
||||
const Group({super.key});
|
||||
|
||||
@override
|
||||
State<Group> createState() => _GroupState();
|
||||
}
|
||||
|
||||
class _GroupState extends State<Group> {
|
||||
List GroupData = [
|
||||
{
|
||||
"imagepath": "assets/images/png/img45.png",
|
||||
"title": "Cardio crusaders circle",
|
||||
"subtitle": "Iron titans fitness crew",
|
||||
"members": "7 members"
|
||||
},
|
||||
{
|
||||
"imagepath": "assets/images/png/Rectangle 25.png",
|
||||
"title": "Strength squad syndicate",
|
||||
"subtitle": "Iron titans fitness crew",
|
||||
"members": "7 members"
|
||||
},
|
||||
{
|
||||
"imagepath": "assets/images/png/img2.png",
|
||||
"title": "Flexibility faction force",
|
||||
"subtitle": "Iron titans fitness crew",
|
||||
"members": "7 members"
|
||||
},
|
||||
];
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: CommonAppbar(
|
||||
titleTxt: "Groups",
|
||||
),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Positioned.fill(
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16),
|
||||
child: SingleChildScrollView(
|
||||
child: Column(
|
||||
children: [
|
||||
Column(
|
||||
children: List.generate(GroupData.length, (index) {
|
||||
return groupCard(
|
||||
imagepath: GroupData[index]["imagepath"] ?? '',
|
||||
title: GroupData[index]["title"] ?? '',
|
||||
ontap: () {},
|
||||
subtitle: GroupData[index]["subtitle"],
|
||||
members: GroupData[index]["members"] ?? '');
|
||||
}),
|
||||
)
|
||||
],
|
||||
))))
|
||||
]));
|
||||
}
|
||||
|
||||
Widget groupCard({
|
||||
required String imagepath,
|
||||
required String title,
|
||||
required void Function()? ontap,
|
||||
required String members,
|
||||
required String subtitle,
|
||||
}) {
|
||||
return Padding(
|
||||
padding: EdgeInsets.only(bottom: 25.h),
|
||||
child: GestureDetector(
|
||||
onTap: ontap,
|
||||
child: commonGlassContainer(
|
||||
border: 0.9,
|
||||
width: double.infinity,
|
||||
height: 162.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 16.h),
|
||||
child: Column(
|
||||
children: [
|
||||
Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
Container(
|
||||
height: 65.h,
|
||||
width: 65.h,
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
// color: Colors.amber,
|
||||
),
|
||||
child:
|
||||
// Center(
|
||||
// child: Image.asset(imagepath, fit: BoxFit.cover)),
|
||||
|
||||
CircleAvatar(
|
||||
backgroundImage: AssetImage(
|
||||
imagepath,
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(13.w),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text18w700_FCFCFC(title),
|
||||
sizedBoxHeight(10.h),
|
||||
Row(
|
||||
children: [
|
||||
Image.asset(
|
||||
'assets/images/png/community 1 (traced).png',
|
||||
width: 18.w,
|
||||
height: 18.h,
|
||||
),
|
||||
sizedBoxWidth(4.w),
|
||||
text14w400_FCFCFCblur(subtitle)
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
Spacer(),
|
||||
PopupMenuButton(
|
||||
surfaceTintColor: Color(0xFF222935),
|
||||
constraints: BoxConstraints.tightFor(width: 200.w),
|
||||
offset: Offset(0, 30),
|
||||
color: Color(0xFF222935),
|
||||
tooltip: "",
|
||||
itemBuilder: (BuildContext context) =>
|
||||
<PopupMenuEntry>[
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding:
|
||||
EdgeInsets.symmetric(horizontal: 8.w),
|
||||
child: Row(
|
||||
children: [
|
||||
text14w400_FCFCFC("Mute community"),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/Black (1).png",
|
||||
height: 18.h,
|
||||
width: 18.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding:
|
||||
EdgeInsets.symmetric(horizontal: 8.w),
|
||||
child: Row(
|
||||
children: [
|
||||
text14w400_FCFCFC("Hide post"),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/mingcute_eye-close-line.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding:
|
||||
EdgeInsets.symmetric(horizontal: 8.w),
|
||||
child: Row(
|
||||
children: [
|
||||
text14w400_FCFCFC("Pin"),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/f7_pin-fill (2).png",
|
||||
height: 25.h,
|
||||
width: 25.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding:
|
||||
EdgeInsets.symmetric(horizontal: 8.w),
|
||||
child: Row(
|
||||
children: [
|
||||
text14w400_FCFCFC("Leave community"),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/logout 1 (traced).png",
|
||||
height: 18.h,
|
||||
width: 18.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
child: Image.asset(
|
||||
"assets/images/png/Group 1000004071.png",
|
||||
height: 13.h,
|
||||
width: 3.w,
|
||||
)),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(16.h),
|
||||
commonDivider(),
|
||||
sizedBoxHeight(10.h),
|
||||
Row(
|
||||
children: [
|
||||
stackContainers(
|
||||
number: "+2",
|
||||
containerImages: [
|
||||
"assets/images/png/cimg3.png",
|
||||
"assets/images/png/cimg2.png",
|
||||
"assets/images/png/cimg3.png",
|
||||
"assets/images/png/cimg2.png",
|
||||
],
|
||||
),
|
||||
sizedBoxWidth(95.w),
|
||||
text12w400_FCFCFC_blur(members),
|
||||
],
|
||||
)
|
||||
],
|
||||
),
|
||||
)),
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,134 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:regroup/Common/CommonGlassmorphism.dart';
|
||||
import 'package:regroup/Common/CommonWidget.dart';
|
||||
import 'package:regroup/Utils/Common/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 CommunityInfo extends StatefulWidget {
|
||||
const CommunityInfo({super.key});
|
||||
|
||||
@override
|
||||
State<CommunityInfo> createState() => _CommunityInfoState();
|
||||
}
|
||||
|
||||
class _CommunityInfoState extends State<CommunityInfo> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: CommonAppbar(
|
||||
titleTxt: "Community info page",
|
||||
),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Positioned.fill(
|
||||
child: SingleChildScrollView(
|
||||
child: Column(children: [
|
||||
Stack(clipBehavior: Clip.none, children: [
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.communityInfo);
|
||||
},
|
||||
child: SizedBox(
|
||||
height: 130.h,
|
||||
width: double.infinity,
|
||||
child: Image.asset(
|
||||
"assets/images/png/img1.png",
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
),
|
||||
),
|
||||
Positioned(
|
||||
bottom: -35.h,
|
||||
left: 20.w,
|
||||
child: Container(
|
||||
width: 85.r,
|
||||
height: 85.r,
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
border: Border.all(
|
||||
color: Color.fromRGBO(255, 255, 255, 0.5),
|
||||
width: 1,
|
||||
),
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: Color.fromRGBO(0, 0, 0, 0.25),
|
||||
blurRadius: 12,
|
||||
offset: Offset(0, 6),
|
||||
),
|
||||
],
|
||||
),
|
||||
child: CircleAvatar(
|
||||
radius: 42.5.r,
|
||||
foregroundImage: AssetImage("assets/images/png/img2.png"),
|
||||
),
|
||||
))
|
||||
]),
|
||||
sizedBoxHeight(50.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text20w700_FCFCFC("Active alliance network"),
|
||||
sizedBoxHeight(20.h),
|
||||
commonDivider(),
|
||||
sizedBoxHeight(20.h),
|
||||
text16w400_FCFCFC("About community"),
|
||||
sizedBoxHeight(20.h),
|
||||
text14w400_FCFCFCblur(
|
||||
"Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book."),
|
||||
sizedBoxHeight(30.h),
|
||||
Row(
|
||||
children: [
|
||||
commonGlassContainer(
|
||||
width: 35.w,
|
||||
height: 35.h,
|
||||
borderradius: 100.r,
|
||||
customWidget: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/Group 58645.png",
|
||||
height: 17.h,
|
||||
width: 13.w,
|
||||
),
|
||||
),
|
||||
border: 0.5),
|
||||
sizedBoxWidth(8.w),
|
||||
text16w400_white("Elm street london, United Kingdom")
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(15.h),
|
||||
Row(
|
||||
children: [
|
||||
commonGlassContainer(
|
||||
width: 35.w,
|
||||
height: 35.h,
|
||||
borderradius: 100.r,
|
||||
customWidget: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/puzzle-pieces 1 (traced).png",
|
||||
height: 19.h,
|
||||
width: 20.w,
|
||||
),
|
||||
),
|
||||
border: 0.5),
|
||||
sizedBoxWidth(8.w),
|
||||
text16w400_white("Sports")
|
||||
],
|
||||
)
|
||||
]),
|
||||
)
|
||||
])))
|
||||
]));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,757 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_reaction_button/flutter_reaction_button.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.dart';
|
||||
import 'package:get/get.dart';
|
||||
import 'package:regroup/Common/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 CommunityDetails extends StatefulWidget {
|
||||
const CommunityDetails({super.key});
|
||||
|
||||
@override
|
||||
State<CommunityDetails> createState() => _CommunityDetailsState();
|
||||
}
|
||||
|
||||
class _CommunityDetailsState extends State<CommunityDetails> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: CommonAppbar(
|
||||
titleTxt: "",
|
||||
customActionWidget: PopupMenuButton(
|
||||
surfaceTintColor: Color(0xFF222935),
|
||||
constraints: BoxConstraints.tightFor(width: 180.w),
|
||||
offset: Offset(0, 20),
|
||||
color: Color(0xFF222935),
|
||||
tooltip: "",
|
||||
itemBuilder: (BuildContext context) => <PopupMenuEntry>[
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 8.w),
|
||||
child: Row(
|
||||
children: [
|
||||
text14w400white("Invite"),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/uiw_user-add.png",
|
||||
height: 15.h,
|
||||
width: 15.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 8.w),
|
||||
child: Row(
|
||||
children: [
|
||||
text14w400white("Share"),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/share.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 8.w),
|
||||
child: Row(
|
||||
children: [
|
||||
text14w400white("Search"),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/Frame 58575.png",
|
||||
height: 18.h,
|
||||
width: 18.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 8.w),
|
||||
child: Row(
|
||||
children: [
|
||||
text14w400white("Mute notification"),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/Black1233.png",
|
||||
height: 16.h,
|
||||
width: 16.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 8.w),
|
||||
child: Row(
|
||||
children: [
|
||||
text14w400white("Pin"),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/f7_pin-fill (2).png",
|
||||
height: 25.h,
|
||||
width: 25.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
child: Image.asset(
|
||||
'assets/images/png/Group 1000004071.png',
|
||||
height: 22.h,
|
||||
width: 4.w,
|
||||
)),
|
||||
),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Positioned.fill(
|
||||
child: SingleChildScrollView(
|
||||
child: Column(children: [
|
||||
Stack(clipBehavior: Clip.none, children: [
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.communityInfo);
|
||||
},
|
||||
child: SizedBox(
|
||||
height: 130.h,
|
||||
width: double.infinity,
|
||||
child: Image.asset(
|
||||
"assets/images/png/img1.png",
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
),
|
||||
),
|
||||
Positioned(
|
||||
bottom: -35.h,
|
||||
left: 20.w,
|
||||
child: Container(
|
||||
width: 85.r,
|
||||
height: 85.r,
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
border: Border.all(
|
||||
color: Color.fromRGBO(255, 255, 255, 0.5),
|
||||
width: 1,
|
||||
),
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: Color.fromRGBO(0, 0, 0, 0.25),
|
||||
blurRadius: 12,
|
||||
offset: Offset(0, 6),
|
||||
),
|
||||
],
|
||||
),
|
||||
child: CircleAvatar(
|
||||
radius: 42.5.r,
|
||||
foregroundImage: AssetImage("assets/images/png/img2.png"),
|
||||
),
|
||||
))
|
||||
]),
|
||||
sizedBoxHeight(40.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
text20w700_FCFCFC("Active alliance network"),
|
||||
Spacer(),
|
||||
commonGlassContainer(
|
||||
width: 35.w,
|
||||
height: 35.h,
|
||||
borderradius: 100,
|
||||
customWidget: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/img12.png",
|
||||
height: 18.w,
|
||||
width: 18.w,
|
||||
)),
|
||||
border: 0.5),
|
||||
sizedBoxWidth(8.w),
|
||||
text16w400_FCFCFCblur("Public"),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 51.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
stackContainers(
|
||||
number: "+2",
|
||||
containerImages: [
|
||||
"assets/images/png/cimg3.png",
|
||||
"assets/images/png/cimg2.png",
|
||||
"assets/images/png/cimg3.png",
|
||||
"assets/images/png/cimg2.png",
|
||||
],
|
||||
),
|
||||
sizedBoxWidth(90.w),
|
||||
text16w400_white('7 members'),
|
||||
Spacer(),
|
||||
Icon(
|
||||
Icons.arrow_forward,
|
||||
size: 20.sp,
|
||||
color: Colors.white,
|
||||
),
|
||||
sizedBoxWidth(16.w),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
border: 1.w),
|
||||
sizedBoxHeight(20.h),
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.group);
|
||||
},
|
||||
child: commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 51.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Row(children: [
|
||||
Image.asset(
|
||||
"assets/images/png/Black.png",
|
||||
height: 23.h,
|
||||
width: 31.w,
|
||||
),
|
||||
sizedBoxWidth(15.w),
|
||||
text16w400white('10 groups'),
|
||||
Spacer(),
|
||||
Icon(
|
||||
Icons.arrow_forward,
|
||||
size: 20.sp,
|
||||
color: Colors.white,
|
||||
),
|
||||
]),
|
||||
],
|
||||
),
|
||||
),
|
||||
border: 1),
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.announcement);
|
||||
},
|
||||
child: commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 51.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Row(children: [
|
||||
Image.asset(
|
||||
"assets/images/png/marketing 1 (traced).png",
|
||||
height: 23.h,
|
||||
width: 31.w,
|
||||
),
|
||||
sizedBoxWidth(15.w),
|
||||
text16w400white('Announcements'),
|
||||
Spacer(),
|
||||
Container(
|
||||
height: 21.h,
|
||||
width: 43.w,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xFFD90B2E),
|
||||
borderRadius:
|
||||
BorderRadius.circular(30.r)),
|
||||
child: Center(child: text12w400_FCFCFC("11")),
|
||||
)
|
||||
]),
|
||||
],
|
||||
),
|
||||
),
|
||||
border: 1),
|
||||
),
|
||||
sizedBoxHeight(35.h),
|
||||
Container(
|
||||
height: 40.h,
|
||||
width: 200.w,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xFFD90B2E),
|
||||
borderRadius: BorderRadius.circular(30.r)),
|
||||
child:
|
||||
Center(child: text14w400white("Leave the community")),
|
||||
),
|
||||
sizedBoxHeight(50.h),
|
||||
],
|
||||
),
|
||||
),
|
||||
DefaultTabController(
|
||||
length: 2,
|
||||
// initialIndex: selectedIndex.value,
|
||||
child: Column(
|
||||
children: [
|
||||
MyTabBar(),
|
||||
SizedBox(
|
||||
height: 600.h,
|
||||
child: TabBarView(
|
||||
children: [
|
||||
poststab(),
|
||||
eventstab(),
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
])))
|
||||
]));
|
||||
}
|
||||
|
||||
Widget poststab() {
|
||||
return Column(
|
||||
children: [
|
||||
sizedBoxHeight(20.h),
|
||||
normalcardtile(),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
Widget eventstab() {
|
||||
return Column(
|
||||
children: [],
|
||||
);
|
||||
}
|
||||
|
||||
Widget normalcardtile() {
|
||||
final List<String> titles = [
|
||||
'Race',
|
||||
'Swimming',
|
||||
'Events',
|
||||
'Swimming',
|
||||
'Events',
|
||||
];
|
||||
return Column(
|
||||
children: [
|
||||
sizedBoxHeight(25.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Row(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
CircleAvatar(
|
||||
foregroundImage: AssetImage('assets/images/png/Ellipse 43.png'),
|
||||
radius: 25.r,
|
||||
),
|
||||
sizedBoxWidth(12.w),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: [
|
||||
text16w400_FCFCFC('Edward Hackket'),
|
||||
sizedBoxHeight(5.h),
|
||||
Row(
|
||||
children: [
|
||||
Image.asset(
|
||||
'assets/images/png/community 1 (traced).png',
|
||||
height: 14.w,
|
||||
width: 14.w,
|
||||
),
|
||||
sizedBoxWidth(7.w),
|
||||
text12w400_FCFCFC('Active alliance network'),
|
||||
sizedBoxWidth(7.w),
|
||||
Icon(
|
||||
Icons.circle,
|
||||
color: Color(0xFFFCFCFC),
|
||||
size: 4.sp,
|
||||
),
|
||||
sizedBoxWidth(6.w),
|
||||
text12w400_FCFCFC('1 Hour ago'),
|
||||
],
|
||||
)
|
||||
],
|
||||
),
|
||||
Spacer(),
|
||||
PopupMenuButton(
|
||||
surfaceTintColor: Color(0xFF222935),
|
||||
constraints: BoxConstraints.tightFor(width: 176.w),
|
||||
offset: Offset(0, 50),
|
||||
color: Color(0xFF222935),
|
||||
tooltip: "",
|
||||
itemBuilder: (BuildContext context) => <PopupMenuEntry>[
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 12.w),
|
||||
child: Row(
|
||||
children: [
|
||||
Text(
|
||||
'Report Post',
|
||||
style: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
color: Colors.white,
|
||||
fontWeight: FontWeight.w800,
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/Vector (5).png",
|
||||
height: 15.h,
|
||||
width: 15.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 12.w),
|
||||
child: Row(
|
||||
children: [
|
||||
Text(
|
||||
'Share post',
|
||||
style: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
color: Colors.white,
|
||||
fontWeight: FontWeight.w800,
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/share.png",
|
||||
height: 20.h,
|
||||
width: 20.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
PopupMenuDivider(),
|
||||
PopupMenuItem(
|
||||
onTap: () {},
|
||||
child: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 12.w),
|
||||
child: Row(
|
||||
children: [
|
||||
Text(
|
||||
'Pin',
|
||||
style: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
color: Colors.white,
|
||||
fontWeight: FontWeight.w800,
|
||||
fontFamily: "Nunito Sans",
|
||||
),
|
||||
),
|
||||
Spacer(),
|
||||
Image.asset(
|
||||
"assets/images/png/f7_pin-fill (2).png",
|
||||
height: 25.h,
|
||||
width: 25.w,
|
||||
)
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
],
|
||||
child: Image.asset(
|
||||
'assets/images/png/Group 1000004071.png',
|
||||
width: 4.w,
|
||||
height: 18.h,
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(5.w)
|
||||
],
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.postdetailsScreen);
|
||||
},
|
||||
child: Image.asset('assets/images/png/Rectangle 22.png')),
|
||||
sizedBoxHeight(20.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(children: [
|
||||
SizedBox(
|
||||
height: 30.h,
|
||||
child: ListView.builder(
|
||||
scrollDirection: Axis.horizontal,
|
||||
shrinkWrap: true,
|
||||
itemCount: titles.length,
|
||||
itemBuilder: (context, index) {
|
||||
return Padding(
|
||||
padding: EdgeInsets.only(right: 12.w),
|
||||
child: GestureDetector(
|
||||
onTap: () {
|
||||
Get.toNamed(RouteName.cyclescreen);
|
||||
},
|
||||
child: containertile(text: titles[index])),
|
||||
);
|
||||
},
|
||||
),
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
text16w400_FCFCFC(
|
||||
"Lorem Ipsum has been the industry's standard dummy text ever since the 1500s . . ."),
|
||||
Row(children: [
|
||||
Spacer(),
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
width: 30.w,
|
||||
height: 30.h,
|
||||
borderradius: 100,
|
||||
customWidget: Center(
|
||||
child: ReactionButton<String>(
|
||||
itemSize: Size.fromHeight(20),
|
||||
onReactionChanged: (Reaction<String>? reaction) {
|
||||
debugPrint('Selected value: ${reaction?.value}');
|
||||
},
|
||||
reactions: <Reaction<String>>[
|
||||
Reaction<String>(
|
||||
value: 'message',
|
||||
icon: Image.asset(
|
||||
'assets/images/png/Vector.png',
|
||||
height: 13.h,
|
||||
width: 13.w,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(12.w),
|
||||
text14w400_FCFCFC('20'),
|
||||
sizedBoxWidth(20.w),
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
width: 30.w,
|
||||
height: 30.h,
|
||||
borderradius: 100,
|
||||
customWidget: Center(
|
||||
child: ReactionButton<String>(
|
||||
itemSize: Size.fromHeight(20),
|
||||
onReactionChanged: (Reaction<String>? reaction) {
|
||||
debugPrint('Selected value: ${reaction?.value}');
|
||||
},
|
||||
reactions: <Reaction<String>>[
|
||||
Reaction<String>(
|
||||
value: 'message',
|
||||
icon: Image.asset(
|
||||
'assets/images/png/Vector (1).png',
|
||||
height: 12.h,
|
||||
width: 12.w,
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
),
|
||||
sizedBoxWidth(12.w),
|
||||
text14w400_FCFCFC('10'),
|
||||
]),
|
||||
sizedBoxHeight(30.h),
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceAround,
|
||||
children: [
|
||||
Column(
|
||||
children: [
|
||||
Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceAround,
|
||||
children: [
|
||||
Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
ReactionButton<String>(
|
||||
onReactionChanged: (reaction) {
|
||||
debugPrint(
|
||||
'Selected value: ${reaction?.value}');
|
||||
},
|
||||
reactions: <Reaction<String>?>[
|
||||
Reaction<String>(
|
||||
value: 'like',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
),
|
||||
Reaction<String>(
|
||||
value: 'heart',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/heart 2.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/heart 2.png'),
|
||||
),
|
||||
Reaction<String>(
|
||||
value: 'party',
|
||||
previewIcon: _buildReactionsPreviewIcon(
|
||||
'assets/images/png/party-popper 2.png'),
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/party-popper 2.png'),
|
||||
),
|
||||
|
||||
// Add more reactions here if needed
|
||||
],
|
||||
placeholder: Reaction<String>(
|
||||
value: 'like',
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
),
|
||||
selectedReaction: Reaction<String>(
|
||||
value: 'like',
|
||||
icon: _buildReactionsIcon(
|
||||
'assets/images/png/f7_hand-thumbsup.png'),
|
||||
),
|
||||
boxColor: Colors.white,
|
||||
boxElevation: 5,
|
||||
boxRadius: 50,
|
||||
itemsSpacing: 8,
|
||||
itemScale: 0.3,
|
||||
itemSize: Size(40.w, 40.h),
|
||||
boxPadding: EdgeInsets.all(4),
|
||||
boxAnimationDuration: Duration(milliseconds: 200),
|
||||
itemAnimationDuration:
|
||||
Duration(milliseconds: 100),
|
||||
hoverDuration: Duration(milliseconds: 400),
|
||||
toggle: false,
|
||||
direction: ReactionsBoxAlignment.ltr,
|
||||
child: _buildReactionsIcon(
|
||||
'assets/images/png/uiw_like-o.png',
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(8.h),
|
||||
text11w400_FCFCFC('Like')
|
||||
],
|
||||
),
|
||||
Column(
|
||||
children: [
|
||||
Image.asset(
|
||||
'assets/images/png/Vector.png',
|
||||
height: 19.h,
|
||||
width: 19.w,
|
||||
),
|
||||
sizedBoxHeight(8.h),
|
||||
text11w400_FCFCFC('Comment')
|
||||
],
|
||||
),
|
||||
Column(
|
||||
children: [
|
||||
Image.asset(
|
||||
'assets/images/png/Frame 1000004089.png',
|
||||
height: 19.h,
|
||||
width: 19.w,
|
||||
),
|
||||
sizedBoxHeight(8.h),
|
||||
text11w400_FCFCFC('Save')
|
||||
],
|
||||
)
|
||||
],
|
||||
)
|
||||
]),
|
||||
),
|
||||
],
|
||||
);
|
||||
}
|
||||
|
||||
Widget _buildReactionsPreviewIcon(String assetPath) {
|
||||
return Padding(
|
||||
padding: const EdgeInsets.all(8.0),
|
||||
child: Image.asset(
|
||||
assetPath,
|
||||
height: 40.h,
|
||||
width: 40.w,
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
Widget _buildReactionsIcon(String assetPath) {
|
||||
return Image.asset(
|
||||
assetPath,
|
||||
height: 19.h,
|
||||
width: 19.w,
|
||||
);
|
||||
}
|
||||
|
||||
Widget containertile({required String text}) {
|
||||
return commonGlassContainer(
|
||||
border: 0.9,
|
||||
width: 100.w,
|
||||
height: 30.h,
|
||||
borderradius: 30.r,
|
||||
customWidget: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 10.w),
|
||||
child: Center(child: text14w400_FCFCFC(text)),
|
||||
));
|
||||
}
|
||||
}
|
||||
|
||||
class MyTabBar extends StatelessWidget {
|
||||
// Set the desired height
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return TabBar(
|
||||
dividerColor: Color(0xFFFFFFFF).withOpacity(0.07),
|
||||
labelStyle: TextStyle(
|
||||
fontSize: 14.sp,
|
||||
color: Color(0xFFFCFCFC),
|
||||
fontWeight: FontWeight.w400,
|
||||
fontFamily: 'Helvetica'),
|
||||
indicatorSize: TabBarIndicatorSize.tab,
|
||||
indicatorColor: const Color(0xFFD90B2E),
|
||||
// labelColor: Colors.white,
|
||||
indicatorWeight: 2.h,
|
||||
dividerHeight: 2.h,
|
||||
unselectedLabelColor: Color(0xFFFCFCFC),
|
||||
overlayColor: MaterialStateProperty.all(const Color(0xFFD90B2E)),
|
||||
tabs: const [
|
||||
Tab(
|
||||
text: 'Posts',
|
||||
),
|
||||
Tab(
|
||||
text: 'Events',
|
||||
),
|
||||
]);
|
||||
}
|
||||
}
|
||||
@@ -19,21 +19,28 @@ class MyCommunity extends StatefulWidget {
|
||||
class _MyCommunityState extends State<MyCommunity> {
|
||||
List JoinedcommunityData = [
|
||||
{
|
||||
"imagePath": "assets/images/png/Ellipse 34.png",
|
||||
"imagePath": "assets/images/png/img2.png",
|
||||
"text": "Active alliance network",
|
||||
"members": "7 members"
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/Ellipse 35.png",
|
||||
"text": "FitFam federation"
|
||||
"imagePath": "assets/images/png/img34.png",
|
||||
"text": "FitFam federation",
|
||||
"members": "7 members"
|
||||
},
|
||||
];
|
||||
|
||||
List RequestcommunityData = [
|
||||
{
|
||||
"imagePath": "assets/images/png/Ellipse 36.png",
|
||||
"imagePath": "assets/images/png/img45.png",
|
||||
"text": "The athletic town",
|
||||
"members": "7 members"
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/img2.png",
|
||||
"text": "Football fever",
|
||||
"members": "7 members"
|
||||
},
|
||||
{"imagePath": "assets/images/png/Ellipse 37.png", "text": "Football fever"},
|
||||
];
|
||||
|
||||
@override
|
||||
@@ -96,7 +103,9 @@ class _MyCommunityState extends State<MyCommunity> {
|
||||
},
|
||||
imagepath: JoinedcommunityData[index]
|
||||
['imagePath'],
|
||||
title: JoinedcommunityData[index]['text']);
|
||||
title: JoinedcommunityData[index]['text'],
|
||||
members: JoinedcommunityData[index]
|
||||
['members']);
|
||||
}),
|
||||
),
|
||||
text18w700_FCFCFC("Requested communities"),
|
||||
@@ -108,7 +117,9 @@ class _MyCommunityState extends State<MyCommunity> {
|
||||
ontap: () {},
|
||||
imagepath: RequestcommunityData[index]
|
||||
['imagePath'],
|
||||
title: RequestcommunityData[index]['text']);
|
||||
title: RequestcommunityData[index]['text'],
|
||||
members: RequestcommunityData[index]
|
||||
['members']);
|
||||
}),
|
||||
)
|
||||
]),
|
||||
@@ -120,16 +131,16 @@ class _MyCommunityState extends State<MyCommunity> {
|
||||
required String imagepath,
|
||||
required String title,
|
||||
required void Function()? ontap,
|
||||
required String members,
|
||||
}) {
|
||||
return Padding(
|
||||
padding: EdgeInsets.only(bottom: 25.h),
|
||||
child: GestureDetector(
|
||||
onTap: ontap,
|
||||
child: commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
border: 0.9,
|
||||
width: double.infinity,
|
||||
height: 157.h,
|
||||
height: 162.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w, vertical: 16.h),
|
||||
@@ -145,14 +156,16 @@ class _MyCommunityState extends State<MyCommunity> {
|
||||
shape: BoxShape.circle,
|
||||
// color: Colors.amber,
|
||||
),
|
||||
child: Center(
|
||||
child: Image.asset(imagepath, fit: BoxFit.cover)),
|
||||
child:
|
||||
// Center(
|
||||
// child: Image.asset(imagepath, fit: BoxFit.cover)),
|
||||
|
||||
CircleAvatar(
|
||||
backgroundImage: AssetImage(
|
||||
imagepath,
|
||||
),
|
||||
),
|
||||
),
|
||||
// CircleAvatar(
|
||||
// foregroundImage: AssetImage(
|
||||
// imagepath,
|
||||
// ),
|
||||
// radius: 32.5.r),
|
||||
sizedBoxWidth(13.w),
|
||||
Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
@@ -162,8 +175,7 @@ class _MyCommunityState extends State<MyCommunity> {
|
||||
Row(
|
||||
children: [
|
||||
commonGlassContainer(
|
||||
border: 0.9,
|
||||
|
||||
border: 0.9,
|
||||
width: 30.w,
|
||||
height: 30.h,
|
||||
borderradius: 100.r,
|
||||
@@ -274,10 +286,27 @@ class _MyCommunityState extends State<MyCommunity> {
|
||||
),
|
||||
sizedBoxHeight(16.h),
|
||||
commonDivider(),
|
||||
sizedBoxHeight(10.h),
|
||||
Row(
|
||||
children: [
|
||||
stackContainers(
|
||||
number: "+2",
|
||||
containerImages: [
|
||||
"assets/images/png/cimg3.png",
|
||||
"assets/images/png/cimg2.png",
|
||||
"assets/images/png/cimg3.png",
|
||||
"assets/images/png/cimg2.png",
|
||||
],
|
||||
),
|
||||
sizedBoxWidth(95.w),
|
||||
text12w400_FCFCFC_blur(members),
|
||||
],
|
||||
)
|
||||
],
|
||||
),
|
||||
)),
|
||||
),
|
||||
);
|
||||
}
|
||||
|
||||
}
|
||||
@@ -1,318 +0,0 @@
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:flutter_screenutil/flutter_screenutil.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 CommunityDetails extends StatefulWidget {
|
||||
const CommunityDetails({super.key});
|
||||
|
||||
@override
|
||||
State<CommunityDetails> createState() => _CommunityDetailsState();
|
||||
}
|
||||
|
||||
class _CommunityDetailsState extends State<CommunityDetails> {
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Scaffold(
|
||||
// key: _scaffoldKey1,
|
||||
backgroundColor: Color(0xFF222935),
|
||||
extendBody: true,
|
||||
appBar: CommonAppbar(
|
||||
titleTxt: "",
|
||||
customActionWidget: Image.asset(
|
||||
'assets/images/png/Group 1000004071.png',
|
||||
height: 22.h,
|
||||
width: 4.w,
|
||||
)),
|
||||
body: Stack(children: [
|
||||
const CommonBlurLeftRed(),
|
||||
const CommonBlurRightRed(),
|
||||
const CommonBlurLeft(),
|
||||
const CommonBlurRight(),
|
||||
Positioned.fill(
|
||||
child: SingleChildScrollView(
|
||||
child: Column(children: [
|
||||
Stack(clipBehavior: Clip.none, children: [
|
||||
SizedBox(
|
||||
height: 130.h,
|
||||
width: double.infinity,
|
||||
child: Image.asset(
|
||||
"assets/images/png/img1.png",
|
||||
fit: BoxFit.cover,
|
||||
),
|
||||
),
|
||||
Positioned(
|
||||
bottom: -35.h,
|
||||
left: 20.w,
|
||||
child: Container(
|
||||
width: 85.r,
|
||||
height: 85.r,
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
border: Border.all(
|
||||
color: Color.fromRGBO(255, 255, 255, 0.5),
|
||||
width: 1,
|
||||
),
|
||||
boxShadow: [
|
||||
BoxShadow(
|
||||
color: Color.fromRGBO(0, 0, 0, 0.25),
|
||||
blurRadius: 12,
|
||||
offset: Offset(0, 6),
|
||||
),
|
||||
],
|
||||
),
|
||||
child: CircleAvatar(
|
||||
radius: 42.5.r,
|
||||
foregroundImage: AssetImage("assets/images/png/img2.png"),
|
||||
),
|
||||
))
|
||||
]),
|
||||
sizedBoxHeight(40.h),
|
||||
Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
text20w700_FCFCFC("Active alliance network"),
|
||||
Spacer(),
|
||||
commonGlassContainer(
|
||||
width: 35.w,
|
||||
height: 35.h,
|
||||
borderradius: 100,
|
||||
customWidget: Center(
|
||||
child: Image.asset(
|
||||
"assets/images/png/img12.png",
|
||||
height: 18.w,
|
||||
width: 18.w,
|
||||
)),
|
||||
border: 0.5),
|
||||
sizedBoxWidth(8.w),
|
||||
text16w400_FCFCFCblur("Public"),
|
||||
],
|
||||
),
|
||||
sizedBoxHeight(20.h),
|
||||
commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 51.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Row(
|
||||
children: [
|
||||
stackContainers(),
|
||||
sizedBoxWidth(90.w),
|
||||
text16w400_white('7 members'),
|
||||
Spacer(),
|
||||
Icon(
|
||||
Icons.arrow_forward,
|
||||
size: 20.sp,
|
||||
color: Colors.white,
|
||||
),
|
||||
sizedBoxWidth(16.w),
|
||||
],
|
||||
),
|
||||
],
|
||||
),
|
||||
border: 1.w),
|
||||
sizedBoxHeight(20.h),
|
||||
commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 51.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Row(children: [
|
||||
Image.asset(
|
||||
"assets/images/png/Black.png",
|
||||
height: 23.h,
|
||||
width: 31.w,
|
||||
),
|
||||
sizedBoxWidth(15.w),
|
||||
text16w400white('10 groups'),
|
||||
Spacer(),
|
||||
Icon(
|
||||
Icons.arrow_forward,
|
||||
size: 20.sp,
|
||||
color: Colors.white,
|
||||
),
|
||||
]),
|
||||
],
|
||||
),
|
||||
),
|
||||
border: 1),
|
||||
sizedBoxHeight(20.h),
|
||||
commonGlassContainer(
|
||||
width: double.infinity,
|
||||
height: 51.h,
|
||||
borderradius: 10.r,
|
||||
customWidget: Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 16.w),
|
||||
child: Column(
|
||||
mainAxisAlignment: MainAxisAlignment.center,
|
||||
children: [
|
||||
Row(children: [
|
||||
Image.asset(
|
||||
"assets/images/png/marketing 1 (traced).png",
|
||||
height: 23.h,
|
||||
width: 31.w,
|
||||
),
|
||||
sizedBoxWidth(15.w),
|
||||
text16w400white('Announcements'),
|
||||
Spacer(),
|
||||
Container(
|
||||
height: 21.h,
|
||||
width: 43.w,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xFFD90B2E),
|
||||
borderRadius: BorderRadius.circular(30.r)),
|
||||
child: Center(child: text12w400_FCFCFC("11")),
|
||||
)
|
||||
]),
|
||||
],
|
||||
),
|
||||
),
|
||||
border: 1),
|
||||
sizedBoxHeight(35.h),
|
||||
Container(
|
||||
height: 40.h,
|
||||
width: 200.w,
|
||||
decoration: BoxDecoration(
|
||||
color: Color(0xFFD90B2E),
|
||||
borderRadius: BorderRadius.circular(30.r)),
|
||||
child:
|
||||
Center(child: text14w400white("Leave the community")),
|
||||
),
|
||||
sizedBoxHeight(50.h),
|
||||
],
|
||||
),
|
||||
),
|
||||
DefaultTabController(
|
||||
length: 2,
|
||||
// initialIndex: selectedIndex.value,
|
||||
child: Column(
|
||||
children: [
|
||||
MyTabBar(),
|
||||
SizedBox(
|
||||
height: 600.h,
|
||||
child: TabBarView(
|
||||
children: [
|
||||
poststab(),
|
||||
eventstab(),
|
||||
],
|
||||
),
|
||||
),
|
||||
],
|
||||
),
|
||||
),
|
||||
])))
|
||||
]));
|
||||
}
|
||||
|
||||
Widget poststab() {
|
||||
return Column(
|
||||
children: [],
|
||||
);
|
||||
}
|
||||
|
||||
Widget eventstab() {
|
||||
return Column(
|
||||
children: [],
|
||||
);
|
||||
}
|
||||
|
||||
Widget stackContainers() {
|
||||
List containerimages = [
|
||||
{
|
||||
"imagePath": "assets/images/png/cimg3.png",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/cimg2.png",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/cimg3.png",
|
||||
},
|
||||
{
|
||||
"imagePath": "assets/images/png/cimg2.png",
|
||||
},
|
||||
];
|
||||
return Row(
|
||||
children: [
|
||||
sizedBoxWidth(12.w),
|
||||
Stack(clipBehavior: Clip.none, children: [
|
||||
Container(
|
||||
height: 30.h,
|
||||
width: 30.w,
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
color: Color(0xFFD90B2E),
|
||||
border: Border.all(color: Color(0xFF2C3742), width: 1.w)),
|
||||
child: Center(child: text8w400_white("+2")),
|
||||
),
|
||||
Positioned(
|
||||
left: 20,
|
||||
child: SizedBox(
|
||||
height: 20,
|
||||
width: 50,
|
||||
child: Stack(
|
||||
clipBehavior: Clip.none,
|
||||
children: List.generate(containerimages.length, (index) {
|
||||
return Positioned(
|
||||
left: index * 22.w,
|
||||
child: Container(
|
||||
height: 30.h,
|
||||
width: 30.w,
|
||||
decoration: BoxDecoration(
|
||||
shape: BoxShape.circle,
|
||||
border: Border.all(
|
||||
color: Color(0xFF2C3742), width: 1.w)),
|
||||
child: CircleAvatar(
|
||||
foregroundImage:
|
||||
AssetImage(containerimages[index]["imagePath"]),
|
||||
)),
|
||||
);
|
||||
}),
|
||||
),
|
||||
))
|
||||
]),
|
||||
],
|
||||
);
|
||||
}
|
||||
}
|
||||
|
||||
class MyTabBar extends StatelessWidget {
|
||||
// Set the desired height
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return TabBar(
|
||||
dividerColor: Color(0xFFFFFFFF).withOpacity(0.07),
|
||||
labelStyle: TextStyle(
|
||||
fontSize: 14.sp,
|
||||
color: Color(0xFFFCFCFC),
|
||||
fontWeight: FontWeight.w400,
|
||||
fontFamily: 'Helvetica'),
|
||||
indicatorSize: TabBarIndicatorSize.tab,
|
||||
indicatorColor: const Color(0xFFD90B2E),
|
||||
// labelColor: Colors.white,
|
||||
indicatorWeight: 2.h,
|
||||
dividerHeight: 2.h,
|
||||
unselectedLabelColor: Color(0xFFFCFCFC),
|
||||
overlayColor: MaterialStateProperty.all(const Color(0xFFD90B2E)),
|
||||
tabs: const [
|
||||
Tab(
|
||||
text: 'Posts',
|
||||
),
|
||||
Tab(
|
||||
text: 'Events',
|
||||
),
|
||||
]);
|
||||
}
|
||||
}
|
||||
@@ -96,7 +96,6 @@ class _CustomTextFormFieldState extends State<CustomTextFormField> {
|
||||
autovalidateMode: AutovalidateMode.onUserInteraction,
|
||||
obscureText: obscureText,
|
||||
controller: widget.textEditingController,
|
||||
|
||||
decoration: InputDecoration(
|
||||
hintText: widget.hintText,
|
||||
prefixIconColor: widget.prefixIconColor,
|
||||
@@ -144,13 +143,13 @@ class _CustomTextFormFieldState extends State<CustomTextFormField> {
|
||||
),
|
||||
style: const TextStyle(color: Colors.white),
|
||||
keyboardType: widget.texttype,
|
||||
// validator: widget.validator ??
|
||||
// (value) {
|
||||
// if (value == null || value.isEmpty) {
|
||||
// return "Empty value";
|
||||
// }
|
||||
// return null;
|
||||
// },
|
||||
validator: widget.validator ??
|
||||
(value) {
|
||||
if (value == null || value.isEmpty) {
|
||||
return "Empty value";
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: widget.inputFormatters,
|
||||
onChanged: (value) {
|
||||
widget.onInput?.call(value);
|
||||
@@ -250,7 +249,6 @@ class _CustomTextFormField2State extends State<CustomTextFormField2> {
|
||||
autovalidateMode: AutovalidateMode.onUserInteraction,
|
||||
obscureText: obscureText,
|
||||
controller: widget.textEditingController,
|
||||
|
||||
decoration: InputDecoration(
|
||||
hintText: widget.hintText,
|
||||
prefixIconColor: widget.prefixIconColor,
|
||||
@@ -298,13 +296,13 @@ class _CustomTextFormField2State extends State<CustomTextFormField2> {
|
||||
),
|
||||
style: const TextStyle(color: Colors.white),
|
||||
keyboardType: widget.texttype,
|
||||
// validator: widget.validator ??
|
||||
// (value) {
|
||||
// if (value == null || value.isEmpty) {
|
||||
// return "Empty value";
|
||||
// }
|
||||
// return null;
|
||||
// },
|
||||
validator: widget.validator ??
|
||||
(value) {
|
||||
if (value == null || value.isEmpty) {
|
||||
return "Empty value";
|
||||
}
|
||||
return null;
|
||||
},
|
||||
inputFormatters: widget.inputFormatters,
|
||||
onChanged: (value) {
|
||||
widget.onInput?.call(value);
|
||||
|
||||
@@ -166,6 +166,17 @@ Widget text16w400_FCFCFC(String text) {
|
||||
);
|
||||
}
|
||||
|
||||
Widget text16w700_FCFCFC(String text) {
|
||||
return Text(
|
||||
text,
|
||||
style: TextStyle(
|
||||
fontSize: 16.sp,
|
||||
color: Color(0xFFFCFCFC),
|
||||
fontFamily: 'Helvetica',
|
||||
fontWeight: FontWeight.w700),
|
||||
);
|
||||
}
|
||||
|
||||
Widget text16w400_white(String text) {
|
||||
return Text(
|
||||
text,
|
||||
|
||||
@@ -12,6 +12,12 @@ class RouteName {
|
||||
static const String postdetailsScreen = '/postdetailsScreen';
|
||||
static const String mycommunity = '/mycommunity';
|
||||
static const String communityDetails = '/communityDetails';
|
||||
static const String communityInfo = '/communityInfo';
|
||||
static const String announcement = '/announcement';
|
||||
static const String group = '/group';
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -4,8 +4,11 @@ import 'package:regroup/Feed%20Module/Main_Screens/Community/Community.dart';
|
||||
import 'package:regroup/Feed%20Module/Main_Screens/Community/CycleScreen.dart';
|
||||
import 'package:regroup/Feed%20Module/Main_Screens/Community/PostDetailScreen/View/PostDetailScreen.dart';
|
||||
import 'package:regroup/Feed%20Module/Main_Screens/Community/PostScreen.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/MyCommunity/View/CommunityDetails.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/MyCommunity/View/MyCommunity.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/Community/Announcements/View/Announcements.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/Community/Group/view/Group.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/Community/MyCommunity/Community_Info-Page/view/communityInfo.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/Community/MyCommunity/View/CommunityDetails.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/Community/MyCommunity/View/MyCommunity.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/SavedPosts/SavedPosts.dart';
|
||||
import 'package:regroup/Feed%20Module/sidemenu/sidemenu.dart';
|
||||
import 'package:regroup/Utils/Common/NoInternet.dart';
|
||||
@@ -63,5 +66,17 @@ class AppRoutes {
|
||||
name: RouteName.communityDetails,
|
||||
page: () => const CommunityDetails(),
|
||||
),
|
||||
GetPage(
|
||||
name: RouteName.communityInfo,
|
||||
page: () => const CommunityInfo(),
|
||||
),
|
||||
GetPage(
|
||||
name: RouteName.announcement,
|
||||
page: () => const Announcements(),
|
||||
),
|
||||
GetPage(
|
||||
name: RouteName.group,
|
||||
page: () => const Group(),
|
||||
),
|
||||
];
|
||||
}
|
||||
|
||||