diff --git a/lib/attractions/repository/attractions_repository.dart b/lib/attractions/repository/attractions_repository.dart index dba0114..4d11f2d 100644 --- a/lib/attractions/repository/attractions_repository.dart +++ b/lib/attractions/repository/attractions_repository.dart @@ -1,3 +1,5 @@ +import 'package:citycards_customer/common_packages/common_app_texts.dart'; + import '../models/attraction_model.dart'; class AttractionsRepository { @@ -8,7 +10,7 @@ class AttractionsRepository { location: "Krong Siem Reap", price: "\$25", image: "assets/dummy/dummy_1.jpg", - tags: ["Unlimited Card", "Flexi Card"], + tags: ["Unlimited Card", "${CommonAppText.selectiveCard} Card"], isBookingRequired: false, description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Convallis condimentum morbi non egestas enim amet sagittis. Proin sed aliquet rhoncus ut pellentesque ullamcorper sit eget ac.Sit nisi, cras amet varius eget egestas pellentesque. Cursus gravida euismod non... ", @@ -28,7 +30,7 @@ class AttractionsRepository { location: "Krong Siem Reap", price: "\$25", image: "assets/dummy/dummy_3.jpg", - tags: ["Unlimited Card", "Flexi Card"], + tags: ["Unlimited Card", "${CommonAppText.selectiveCard} Card"], isBookingRequired: false, description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Convallis condimentum morbi non egestas enim amet sagittis. Proin sed aliquet rhoncus ut pellentesque ullamcorper sit eget ac.Sit nisi, cras amet varius eget egestas pellentesque. Cursus gravida euismod non... ", @@ -38,7 +40,7 @@ class AttractionsRepository { location: "Krong Siem Reap", price: "\$25", image: "assets/dummy/dummy_4.jpg", - tags: ["Flexi Card"], + tags: ["${CommonAppText.selectiveCard} Card"], isBookingRequired: false, description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Convallis condimentum morbi non egestas enim amet sagittis. Proin sed aliquet rhoncus ut pellentesque ullamcorper sit eget ac.Sit nisi, cras amet varius eget egestas pellentesque. Cursus gravida euismod non... ", @@ -48,7 +50,7 @@ class AttractionsRepository { location: "Krong Siem Reap", price: "\$25", image: "assets/dummy/dummy_5.jpg", - tags: ["Unlimited Card", "Flexi Card"], + tags: ["Unlimited Card", "${CommonAppText.selectiveCard} Card"], isBookingRequired: false, description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Convallis condimentum morbi non egestas enim amet sagittis. Proin sed aliquet rhoncus ut pellentesque ullamcorper sit eget ac.Sit nisi, cras amet varius eget egestas pellentesque. Cursus gravida euismod non... ", @@ -63,7 +65,7 @@ class AttractionsRepository { location: "Krong Siem Reap", price: "\$25", image: "assets/dummy/dummy_1.jpg", - tags: ["Unlimited Card", "Flexi Card"], + tags: ["Unlimited Card", "${CommonAppText.selectiveCard} Card"], isBookingRequired: true, description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Convallis condimentum morbi non egestas enim amet sagittis. Proin sed aliquet rhoncus ut pellentesque ullamcorper sit eget ac.Sit nisi, cras amet varius eget egestas pellentesque. Cursus gravida euismod non... ", @@ -83,7 +85,7 @@ class AttractionsRepository { location: "Krong Siem Reap", price: "\$25", image: "assets/dummy/dummy_3.jpg", - tags: ["Unlimited Card", "Flexi Card"], + tags: ["Unlimited Card", "${CommonAppText.selectiveCard} Card"], isBookingRequired: true, description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Convallis condimentum morbi non egestas enim amet sagittis. Proin sed aliquet rhoncus ut pellentesque ullamcorper sit eget ac.Sit nisi, cras amet varius eget egestas pellentesque. Cursus gravida euismod non... ", @@ -93,7 +95,7 @@ class AttractionsRepository { location: "Krong Siem Reap", price: "\$25", image: "assets/dummy/dummy_4.jpg", - tags: ["Flexi Card"], + tags: ["${CommonAppText.selectiveCard} Card"], isBookingRequired: true, description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Convallis condimentum morbi non egestas enim amet sagittis. Proin sed aliquet rhoncus ut pellentesque ullamcorper sit eget ac.Sit nisi, cras amet varius eget egestas pellentesque. Cursus gravida euismod non... ", @@ -103,7 +105,7 @@ class AttractionsRepository { location: "Krong Siem Reap", price: "\$25", image: "assets/dummy/dummy_5.jpg", - tags: ["Unlimited Card", "Flexi Card"], + tags: ["Unlimited Card", "${CommonAppText.selectiveCard} Card"], isBookingRequired: true, description: "Lorem ipsum dolor sit amet, consectetur adipiscing elit. Convallis condimentum morbi non egestas enim amet sagittis. Proin sed aliquet rhoncus ut pellentesque ullamcorper sit eget ac.Sit nisi, cras amet varius eget egestas pellentesque. Cursus gravida euismod non... ", diff --git a/lib/attractions/widget/attraction_card.dart b/lib/attractions/widget/attraction_card.dart index 14b56e1..e533026 100644 --- a/lib/attractions/widget/attraction_card.dart +++ b/lib/attractions/widget/attraction_card.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:google_fonts/google_fonts.dart'; +import '../../common_packages/common_app_texts.dart'; import '../../core/route_constants.dart'; import '../models/attraction_model.dart'; @@ -86,13 +87,13 @@ class AttractionCard extends StatelessWidget { vertical: 4, ), decoration: BoxDecoration( - color: tag == "Flexi Card" + color: tag == "${CommonAppText.selectiveCard} Card" ? const Color(0xffF95FAF).withOpacity(0.1) : const Color( 0xffF95F62, ).withOpacity(0.1), border: Border.all( - color: tag == "Flexi Card" + color: tag == "${CommonAppText.selectiveCard} Card" ? const Color(0xffF95FAF) : const Color(0xffF95F62), ), diff --git a/lib/buy_a_pass/view/buy_pass_view.dart b/lib/buy_a_pass/view/buy_pass_view.dart index d6f42a4..363cc30 100644 --- a/lib/buy_a_pass/view/buy_pass_view.dart +++ b/lib/buy_a_pass/view/buy_pass_view.dart @@ -7,6 +7,8 @@ import 'package:citycards_customer/core/route_constants.dart'; import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; +import '../../common_packages/common_app_texts.dart'; + class BuyPassView extends StatelessWidget { BuyPassView({super.key}); @@ -68,9 +70,9 @@ class BuyPassView extends StatelessWidget { scrollDirection: Axis.horizontal, child: Row( children: [ - PassCardView(themeColor: Color(0xFFF95FAF)), + PassCardView(themeColor: Color(0xFFF97316)), SizedBox(width: 12.w), - PassCardView(themeColor: Color(0xFF1E8AF6)), + PassCardView(themeColor: Color(0xFF1E8AF6),), ], ), ), @@ -217,7 +219,7 @@ class BuyPassView extends StatelessWidget { Center( child: PaymentCard( city: 'Melbourne', - tag: 'Flexi Card', + tag: '${CommonAppText.selectiveCard} Card', oldPrice: 120, newPrice: 90, ), diff --git a/lib/buy_a_pass/widget/feature_table.dart b/lib/buy_a_pass/widget/feature_table.dart index 767f539..426a274 100644 --- a/lib/buy_a_pass/widget/feature_table.dart +++ b/lib/buy_a_pass/widget/feature_table.dart @@ -1,6 +1,8 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; +import '../../common_packages/common_app_texts.dart'; + class FeatureTable extends StatelessWidget { const FeatureTable({super.key}); @@ -66,7 +68,7 @@ class FeatureTable extends StatelessWidget { padding: EdgeInsets.symmetric(vertical: 6.h), child: Center( child: Text( - 'Flexi', + '${CommonAppText.selectiveCard}', style: TextStyle(fontWeight: FontWeight.w500, fontSize: 16.sp), ), ), diff --git a/lib/buy_a_pass/widget/pass_card_view.dart b/lib/buy_a_pass/widget/pass_card_view.dart index 6bbd37d..d4aac1f 100644 --- a/lib/buy_a_pass/widget/pass_card_view.dart +++ b/lib/buy_a_pass/widget/pass_card_view.dart @@ -2,6 +2,8 @@ import 'package:citycards_customer/common_packages/custom_text.dart'; import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; +import '../../common_packages/common_app_texts.dart'; + class PassCardView extends StatelessWidget { final Color? themeColor; final String? city; @@ -143,7 +145,7 @@ class PassCardView extends StatelessWidget { text: TextSpan( children: [ TextSpan( - text: "Flexi ", + text: "${CommonAppText.selectiveCard} ", style: TextStyle(color: Colors.white, fontSize: 16.sp), ), TextSpan( diff --git a/lib/cart/views/my_pass_page_view.dart b/lib/cart/views/my_pass_page_view.dart index 15f7ad8..53e4d9a 100644 --- a/lib/cart/views/my_pass_page_view.dart +++ b/lib/cart/views/my_pass_page_view.dart @@ -7,6 +7,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import '../../checkout/widget/login_email_bottomsheet.dart'; +import '../../common_packages/common_app_texts.dart'; import '../blocs/pass_bloc.dart'; class MyPassesPage extends StatelessWidget { @@ -154,7 +155,7 @@ class MyPassesPage extends StatelessWidget { width: 35.w, height: 123.h, decoration: BoxDecoration( - color: Color(0xFFF95FAF), + color: Color(0xFFF97316), borderRadius: BorderRadius.only( bottomRight: Radius.circular(8.r), topRight: Radius.circular(8.r), @@ -167,7 +168,7 @@ class MyPassesPage extends StatelessWidget { text: TextSpan( children: [ TextSpan( - text: "Flexi ", + text: "${CommonAppText.selectiveCard} ", style: TextStyle( color: Colors.white, fontSize: 16.sp, diff --git a/lib/checkout/view/checkout_view.dart b/lib/checkout/view/checkout_view.dart index 6cd045d..d01f4ef 100644 --- a/lib/checkout/view/checkout_view.dart +++ b/lib/checkout/view/checkout_view.dart @@ -7,6 +7,8 @@ import 'package:citycards_customer/common_packages/custom_dashed_line.dart'; import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; +import '../../common_packages/common_app_texts.dart'; + class CheckoutView extends StatelessWidget { const CheckoutView({super.key}); @@ -167,7 +169,7 @@ class CheckoutView extends StatelessWidget { width: 35.w, height: 123.h, decoration: BoxDecoration( - color: Color(0xFFF95FAF), + color: Color(0xFFF97316), borderRadius: BorderRadius.only( bottomRight: Radius.circular(8.r), topRight: Radius.circular(8.r), @@ -180,7 +182,7 @@ class CheckoutView extends StatelessWidget { text: TextSpan( children: [ TextSpan( - text: "Flexi ", + text: "${CommonAppText.selectiveCard} ", style: TextStyle( color: Colors.white, fontSize: 16.sp, @@ -204,7 +206,7 @@ class CheckoutView extends StatelessWidget { ), ), - SizedBox(height: 15.h), + SizedBox(height: 10.h), Container( padding: EdgeInsets.symmetric(horizontal: 12.w, vertical: 12.h), decoration: BoxDecoration( diff --git a/lib/common_packages/common_app_texts.dart b/lib/common_packages/common_app_texts.dart new file mode 100644 index 0000000..402c069 --- /dev/null +++ b/lib/common_packages/common_app_texts.dart @@ -0,0 +1,3 @@ +class CommonAppText { + static const String selectiveCard = "Selective"; +} \ No newline at end of file diff --git a/lib/home/views/registered_user_home_page.dart b/lib/home/views/registered_user_home_page.dart index f0d02c7..12f7a28 100644 --- a/lib/home/views/registered_user_home_page.dart +++ b/lib/home/views/registered_user_home_page.dart @@ -23,11 +23,6 @@ class RegisteredUserHomePage extends StatefulWidget { class _RegisteredUserHomePageState extends State { final List> attractions = [ - { - 'title': 'Long-Tail Boat Charter', - 'subtitle': 'Lorem ipsum dolor sit amet...', - 'image': 'assets/images/clock.png', - }, { 'title': 'Koh Rong Samloemr', 'subtitle': 'Lorem ipsum dolor sit amet...', @@ -43,6 +38,11 @@ class _RegisteredUserHomePageState extends State { 'subtitle': 'Lorem ipsum dolor sit amet...', 'image': 'assets/images/koh_rong.png', }, + { + 'title': 'Long-Tail Boat Charter', + 'subtitle': 'Lorem ipsum dolor sit amet...', + 'image': 'assets/images/clock.png', + }, ]; @override diff --git a/lib/home/widgets/attractions_list.dart b/lib/home/widgets/attractions_list.dart index 4b3f22d..94fe0a9 100644 --- a/lib/home/widgets/attractions_list.dart +++ b/lib/home/widgets/attractions_list.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:google_fonts/google_fonts.dart'; +import '../../core/route_constants.dart'; class AttractionsListView extends StatefulWidget { final List> attractions; @@ -38,69 +39,74 @@ class _AttractionsListViewState extends State { @override Widget build(BuildContext context) { - return Column( - children: [ - SizedBox( - height: 240, - child: ListView.builder( - controller: _scrollController, - scrollDirection: Axis.horizontal, - padding: const EdgeInsets.only(right: 16), - itemCount: widget.attractions.length, - itemBuilder: (context, index) { - final item = widget.attractions[index]; - return Container( - alignment: Alignment.center, - margin: const EdgeInsets.only(right: 16), - padding: const EdgeInsets.all(4), - decoration: BoxDecoration( - border: Border.all( - color: const Color(0xFFF95F62).withOpacity(0.24), - ), - borderRadius: BorderRadius.circular(16), - ), - child: Container( - height: 232, - width: 161, + return InkWell( + onTap: (){ + Navigator.of(context).pushNamed(RouteConstants.attractionDetails); + }, + child: Column( + children: [ + SizedBox( + height: 240, + child: ListView.builder( + controller: _scrollController, + scrollDirection: Axis.horizontal, + padding: const EdgeInsets.only(right: 16), + itemCount: widget.attractions.length, + itemBuilder: (context, index) { + final item = widget.attractions[index]; + return Container( + alignment: Alignment.center, + margin: const EdgeInsets.only(right: 16), + padding: const EdgeInsets.all(4), decoration: BoxDecoration( + border: Border.all( + color: const Color(0xFFF95F62).withOpacity(0.24), + ), borderRadius: BorderRadius.circular(16), - image: DecorationImage( - image: AssetImage(item['image']!), - fit: BoxFit.cover, + ), + child: Container( + height: 232, + width: 161, + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(16), + image: DecorationImage( + image: AssetImage(item['image']!), + fit: BoxFit.cover, + ), + ), + alignment: Alignment.bottomLeft, + padding: const EdgeInsets.all(12), + child: Text( + item['title']!, + style: GoogleFonts.poppins( + color: Colors.white, + fontWeight: FontWeight.w600, + fontSize: 14, + ), ), ), - alignment: Alignment.bottomLeft, - padding: const EdgeInsets.all(12), - child: Text( - item['title']!, - style: GoogleFonts.poppins( - color: Colors.white, - fontWeight: FontWeight.w600, - fontSize: 14, - ), - ), - ), - ); - }, + ); + }, + ), ), - ), - const SizedBox(height: 20), - Align( - alignment: Alignment.center, - child: SizedBox( - width: 200, - child: ClipRRect( - borderRadius: BorderRadius.circular(10), - child: LinearProgressIndicator( - value: _scrollProgress, - minHeight: 6, - backgroundColor: const Color(0xffFEE7E7), - color: const Color(0xffF95F62), + const SizedBox(height: 20), + Align( + alignment: Alignment.center, + child: SizedBox( + width: 200, + child: ClipRRect( + borderRadius: BorderRadius.circular(10), + child: LinearProgressIndicator( + value: _scrollProgress, + minHeight: 6, + backgroundColor: const Color(0xffFEE7E7), + color: const Color(0xffF95F62), + ), ), ), ), - ), - ], + ], + ), ); } } diff --git a/lib/home/widgets/pass_card_list.dart b/lib/home/widgets/pass_card_list.dart index 27bc18f..1dd54ee 100644 --- a/lib/home/widgets/pass_card_list.dart +++ b/lib/home/widgets/pass_card_list.dart @@ -2,6 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; import 'package:google_fonts/google_fonts.dart'; +import '../../common_packages/common_app_texts.dart'; import '../../core/route_constants.dart'; class ChooseYourPassSection extends StatefulWidget { @@ -20,7 +21,7 @@ class _ChooseYourPassSectionState extends State { final List> passes = [ { - "title": "Chicago-\nFLEXI CARD", + "title": "Chicago-\n${CommonAppText.selectiveCard} CARD", "price": "\$50", "color": const Color(0xffF95FAF), "bgColor": const Color(0xFFFDE7F1), diff --git a/lib/search_offers/view/search_offers_with_listing.dart b/lib/search_offers/view/search_offers_with_listing.dart index 64341b4..da217ed 100644 --- a/lib/search_offers/view/search_offers_with_listing.dart +++ b/lib/search_offers/view/search_offers_with_listing.dart @@ -7,6 +7,8 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_screenutil/flutter_screenutil.dart'; +import '../../common_packages/common_app_texts.dart'; + class SearchOffersWithListing extends StatelessWidget { SearchOffersWithListing({super.key}); @@ -32,7 +34,7 @@ class SearchOffersWithListing extends StatelessWidget { }, child: Icon(Icons.arrow_back)), SizedBox(width: 8.w), - CustomText(text: "Offers with Flexi Card", size: 12.sp), + CustomText(text: "Offers with ${CommonAppText.selectiveCard} Card", size: 12.sp), ], ),