diff --git a/openclosenew/assets/images/arrow-right.png b/openclosenew/assets/images/arrow-right.png new file mode 100644 index 0000000..f1f49d3 Binary files /dev/null and b/openclosenew/assets/images/arrow-right.png differ diff --git a/openclosenew/assets/images/food1.png b/openclosenew/assets/images/food1.png new file mode 100644 index 0000000..a8b210f Binary files /dev/null and b/openclosenew/assets/images/food1.png differ diff --git a/openclosenew/assets/images/food2.png b/openclosenew/assets/images/food2.png new file mode 100644 index 0000000..b974205 Binary files /dev/null and b/openclosenew/assets/images/food2.png differ diff --git a/openclosenew/assets/images/food3.png b/openclosenew/assets/images/food3.png new file mode 100644 index 0000000..6d2db8c Binary files /dev/null and b/openclosenew/assets/images/food3.png differ diff --git a/openclosenew/assets/images/room1.png b/openclosenew/assets/images/room1.png new file mode 100644 index 0000000..42a6ed5 Binary files /dev/null and b/openclosenew/assets/images/room1.png differ diff --git a/openclosenew/assets/images/room2.png b/openclosenew/assets/images/room2.png new file mode 100644 index 0000000..4881cd2 Binary files /dev/null and b/openclosenew/assets/images/room2.png differ diff --git a/openclosenew/assets/images/room3.png b/openclosenew/assets/images/room3.png new file mode 100644 index 0000000..350c1b8 Binary files /dev/null and b/openclosenew/assets/images/room3.png differ diff --git a/openclosenew/lib/businessdetail.dart b/openclosenew/lib/businessdetail.dart index bb6b5e1..01842f6 100644 --- a/openclosenew/lib/businessdetail.dart +++ b/openclosenew/lib/businessdetail.dart @@ -1,13 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_switch/flutter_switch.dart'; - -class PageViewModel { - String title; - String body; - String image; - - PageViewModel({required this.title, required this.body, required this.image}); -} +import 'package:openclosenew/thankyou.dart'; +import 'package:smooth_page_indicator/smooth_page_indicator.dart'; class businessdetail extends StatefulWidget { const businessdetail({Key? key}) : super(key: key); @@ -16,542 +10,842 @@ class businessdetail extends StatefulWidget { State createState() => _businessdetailState(); } -class _businessdetailState extends State { +class _businessdetailState extends State + with TickerProviderStateMixin { bool status = true; int pageIndex = 0; - PageController pageController = PageController(); - - final List pages = [ - PageViewModel( - title: '', - body: 'Best Hotels and Restaurants around you...', - image: 'assets/images/onboarding_image_1.png', - ), - PageViewModel( - title: '', - body: 'Best Medicals, Clinics and Hospitals around you...', - image: 'assets/images/onboarding_image_2.png', - ), - PageViewModel( - title: '', - body: 'Best Grocery and all Other Shops around you...', - image: "assets/images/onboarding_image_3.png", - ) - ]; + final _Controller = PageController(); @override Widget build(BuildContext context) { + TabController _tabController = TabController(length: 4, vsync: this); return Scaffold( backgroundColor: Colors.white, - body: Column( - children: [ - SafeArea( - child: Container( - height: 500, - child: Stack( - children: [ - Container( - height: 250, - decoration: BoxDecoration( - image: const DecorationImage( - image: AssetImage('assets/images/bg.png'), - fit: BoxFit.cover, - ), - borderRadius: BorderRadius.only( - bottomLeft: Radius.circular(20), - bottomRight: Radius.circular(20), - ), - ), - child: Padding( - padding: const EdgeInsets.only( - left: 10, right: 10, bottom: 120), - child: Row( - children: [ - FloatingActionButton( - child: Icon( - Icons.arrow_back, - size: 24, - color: Color(0xFF3D3D3D), - ), - mini: true, - backgroundColor: Colors.white, - onPressed: () { - Navigator.pop(context); - }, - ), - Spacer(), - FlutterSwitch( - width: 107, - height: 50, - valueFontSize: 12, - toggleSize: 20, - value: status, - borderRadius: 30.0, - padding: 5, - showOnOff: true, - onToggle: (val) { - setState(() { - status = val; - }); - }, - activeText: "OPEN", - activeSwitchBorder: - Border.all(color: Colors.white, width: 10), - inactiveSwitchBorder: - Border.all(color: Colors.white, width: 10), - activeTextColor: Colors.white, - activeTextFontWeight: FontWeight.w600, - activeColor: Color(0xFF09CD99), - inactiveText: "CLOSED", - inactiveTextColor: Colors.white, - inactiveTextFontWeight: FontWeight.w600, - inactiveColor: Color(0xFFFF4B4C), - ), - ], - ), - ), - ), - Spacer(), - Align( - alignment: Alignment.center, - child: Container( - margin: EdgeInsets.only(right: 20, left: 20, top: 60), - padding: EdgeInsets.all(12), - height: 270, + body: SafeArea( + child: SingleChildScrollView( + child: Column( + children: [ + Container( + height: 500, + child: Stack( + children: [ + Container( + height: 250, decoration: BoxDecoration( - color: Colors.white, - borderRadius: BorderRadius.all( - Radius.circular(10), + image: const DecorationImage( + image: AssetImage('assets/images/bg.png'), + fit: BoxFit.cover, + ), + borderRadius: BorderRadius.only( + bottomLeft: Radius.circular(20), + bottomRight: Radius.circular(20), ), - boxShadow: [ - BoxShadow( - color: Colors.grey.shade500, - offset: Offset(4.0, 4.0), - blurRadius: 10.0, - spreadRadius: 1.0, - ), - ], ), - child: Column( - children: [ - Row( - crossAxisAlignment: CrossAxisAlignment.start, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Image.asset( - 'assets/images/store_logo.png', - width: 60, - height: 60, + child: Padding( + padding: const EdgeInsets.only( + left: 10, right: 10, bottom: 120), + child: Row( + children: [ + FloatingActionButton( + child: Icon( + Icons.arrow_back, + size: 24, + color: Color(0xFF3D3D3D), ), - Padding( - padding: - const EdgeInsets.only(top: 10, left: 5), + mini: true, + backgroundColor: Colors.white, + onPressed: () { + Navigator.pop(context); + }, + ), + Spacer(), + FlutterSwitch( + width: 107, + height: 50, + valueFontSize: 12, + toggleSize: 20, + value: status, + borderRadius: 30.0, + padding: 5, + showOnOff: true, + onToggle: (val) { + setState(() { + status = val; + }); + }, + activeText: "OPEN", + activeSwitchBorder: + Border.all(color: Colors.white, width: 10), + inactiveSwitchBorder: + Border.all(color: Colors.white, width: 10), + activeTextColor: Colors.white, + activeTextFontWeight: FontWeight.w600, + activeColor: Color(0xFF09CD99), + inactiveText: "CLOSED", + inactiveTextColor: Colors.white, + inactiveTextFontWeight: FontWeight.w600, + inactiveColor: Color(0xFFFF4B4C), + ), + ], + ), + ), + ), + Spacer(), + Align( + alignment: Alignment.center, + child: Container( + margin: EdgeInsets.only(right: 20, left: 20, top: 60), + padding: EdgeInsets.all(12), + height: 270, + decoration: BoxDecoration( + color: Colors.white, + borderRadius: BorderRadius.all( + Radius.circular(10), + ), + boxShadow: [ + BoxShadow( + color: Colors.grey.shade500, + offset: Offset(4.0, 4.0), + blurRadius: 10.0, + spreadRadius: 1.0, + ), + ], + ), + child: Column( + children: [ + Row( + crossAxisAlignment: CrossAxisAlignment.start, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Image.asset( + 'assets/images/store_logo.png', + width: 60, + height: 60, + ), + Padding( + padding: + const EdgeInsets.only(top: 10, left: 5), + child: Column( + crossAxisAlignment: + CrossAxisAlignment.start, + children: [ + RichText( + text: TextSpan( + text: "Barbeque Nation ", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w600, + fontSize: 16, + color: Colors.black, + ), + ), + ), + RichText( + text: TextSpan( + children: [ + TextSpan( + text: "4.2 ", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w400, + fontSize: 15, + color: Color(0xFFFFBE3F), + ), + ), + WidgetSpan( + child: Icon( + Icons.star, + color: Color(0xFFFFBE3F), + size: 15, + ), + ), + ], + ), + ), + ], + ), + ), + Spacer(), + IconButton( + icon: Image.asset( + 'assets/images/edit_pen.png', + color: Colors.black, + ), + onPressed: () { + Navigator.pop(context); + }, + ), + ], + ), + Spacer(), + Align( + alignment: Alignment.topLeft, + child: Padding( + padding: const EdgeInsets.only(left: 10), child: Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ - RichText( - text: TextSpan( - text: "Barbeque Nation ", - style: TextStyle( - fontFamily: 'Manrope', - fontStyle: FontStyle.normal, - fontWeight: FontWeight.w600, - fontSize: 16, - color: Colors.black, + Row( + children: [ + Image.asset( + 'assets/images/veg_logo.png', + width: 20, + height: 20, + ), + SizedBox( + width: 12, + ), + Text( + 'Veg', + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w400, + fontSize: 13, + ), + ), + SizedBox( + width: 10, + ), + Image.asset( + 'assets/images/nonveg_icon.png', + width: 20, + height: 20, + ), + SizedBox( + width: 12, + ), + Text( + 'Non-Veg', + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w400, + fontSize: 13, + ), + ), + ], + ), + Row( + children: [ + Padding( + padding: + const EdgeInsets.only(top: 10), + child: RichText( + text: TextSpan( + children: [ + WidgetSpan( + child: Image.asset( + 'assets/images/call_icon.png', + width: 25, + height: 25, + ), + ), + TextSpan( + text: + " +91 98651 76796, +91 76786 85869", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w500, + fontSize: 12, + color: Color(0xFF5C5C5C), + ), + ), + ], + ), + ), + ), + ], + ), + Padding( + padding: const EdgeInsets.only(top: 10), + child: RichText( + text: TextSpan( + children: [ + WidgetSpan( + child: Image.asset( + 'assets/images/loc_logo.png', + width: 25, + height: 25, + ), + ), + TextSpan( + text: + " 112, Avinashi Road, Peelamedu, Coimbatore...", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w500, + fontSize: 12, + color: Color(0xFF5C5C5C), + ), + ), + ], ), ), ), - RichText( - text: TextSpan( - children: [ - TextSpan( - text: "4.2 ", - style: TextStyle( - fontFamily: 'Manrope', - fontStyle: FontStyle.normal, - fontWeight: FontWeight.w400, - fontSize: 15, - color: Color(0xFFFFBE3F), + Padding( + padding: const EdgeInsets.only(top: 10), + child: RichText( + text: TextSpan( + children: [ + WidgetSpan( + child: Image.asset( + 'assets/images/glob_icon.png', + width: 25, + height: 25, + ), ), - ), - WidgetSpan( - child: Icon( - Icons.star, - color: Color(0xFFFFBE3F), - size: 15, + TextSpan( + text: " www.bbqnation.com", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w500, + fontSize: 12, + color: Color(0xFF5C5C5C), + ), ), - ), - ], + ], + ), + ), + ), + Padding( + padding: const EdgeInsets.only(top: 10), + child: RichText( + text: TextSpan( + children: [ + WidgetSpan( + child: Image.asset( + 'assets/images/clock_icon.png', + width: 25, + height: 25, + ), + ), + TextSpan( + text: + " Working Hours: Mon - Fri 9:00am to 9:00pm", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w500, + fontSize: 12, + color: Color(0xFF5C5C5C), + ), + ), + ], + ), ), ), ], ), ), - Spacer(), - IconButton( - icon: Image.asset( - 'assets/images/edit_pen.png', - color: Colors.black, + ), + ], + ), + ), + ), + ], + ), + ), + Container( + height: 100, + child: ListView( + scrollDirection: Axis.horizontal, + children: [ + Padding( + padding: const EdgeInsets.only(left: 22, right: 10), + child: InkWell( + onTap: () {}, + child: Container( + width: 350, + margin: EdgeInsets.only(right: 10), + decoration: BoxDecoration( + image: const DecorationImage( + alignment: Alignment.centerLeft, + image: AssetImage( + 'assets/images/offer.png', + ), + scale: 2, + ), + borderRadius: BorderRadius.all( + Radius.circular(10), + ), + ), + child: Padding( + padding: const EdgeInsets.only(left: 80), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + "WELCOME OFFER !", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w700, + fontSize: 20, + color: Color(0xFF09CD99), + ), + ), + Text( + "Get 50% discount on your first order", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w400, + fontSize: 15, + color: Color(0xFF5C5C5C), + ), + ), + ], + ), + ), + ), + ), + ), + Spacer(), + Padding( + padding: const EdgeInsets.only(left: 22), + child: InkWell( + onTap: () {}, + child: Container( + width: 350, + margin: EdgeInsets.only(right: 10), + decoration: BoxDecoration( + image: const DecorationImage( + alignment: Alignment.centerLeft, + image: AssetImage( + 'assets/images/offer.png', + ), + scale: 2, + ), + borderRadius: BorderRadius.all( + Radius.circular(10), + ), + ), + child: Padding( + padding: const EdgeInsets.only(left: 80), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + "WELCOME OFFER !", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w700, + fontSize: 20, + color: Color(0xFF09CD99), + ), + ), + Text( + "Get 50% discount on your first order", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w400, + fontSize: 15, + color: Color(0xFF5C5C5C), + ), + ), + ], + ), + ), + ), + ), + ), + ], + ), + ), + SmoothPageIndicator( + controller: _Controller, // PageController + count: 3, + effect: ExpandingDotsEffect( + activeDotColor: Color(0xFF2AB17F), + dotColor: Colors.greenAccent, + dotWidth: 5, + dotHeight: 5), + // your preferred effect + onDotClicked: (index) {}, + ), + Padding( + padding: const EdgeInsets.only( + left: 15, right: 15, top: 5, bottom: 10), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + "Food Items", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w600, + fontSize: 20, + color: Color(0xFF3D3D3D), + ), + ), + Spacer(), + IconButton( + icon: Image.asset('assets/images/arrow-right.png'), + onPressed: () { + Navigator.pop(context); + }, + ), + ], + ), + ), + Container( + height: 150, + child: ListView( + scrollDirection: Axis.horizontal, + children: [ + Spacer(), + Column( + children: [ + Padding( + padding: const EdgeInsets.only(left: 15, right: 15), + child: Container( + width: 130, + height: 100, + decoration: BoxDecoration( + image: const DecorationImage( + fit: BoxFit.cover, + image: AssetImage( + 'assets/images/food1.png', + ), + ), + borderRadius: + BorderRadius.all(Radius.circular(5)), + ), + ), + ), + Padding( + padding: const EdgeInsets.only(right: 16), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + "Chicken Briyani", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w500, + fontSize: 15, + color: Color(0xFF3D3D3D), + ), + ), + Text( + "₹ 180.00", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w600, + fontSize: 15, + color: Color(0xFF3D3D3D), ), - onPressed: () { - Navigator.pop(context); - }, ), ], ), - Spacer(), - Align( - alignment: Alignment.topLeft, - child: Padding( - padding: const EdgeInsets.only(left: 10), - child: Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Row( - children: [ - Image.asset( - 'assets/images/veg_logo.png', - width: 20, - height: 20, - ), - SizedBox( - width: 12, - ), - Text( - 'Veg', - style: TextStyle( - fontFamily: 'Manrope', - fontStyle: FontStyle.normal, - fontWeight: FontWeight.w400, - fontSize: 13, - ), - ), - SizedBox( - width: 10, - ), - Image.asset( - 'assets/images/nonveg_icon.png', - width: 20, - height: 20, - ), - SizedBox( - width: 12, - ), - Text( - 'Non-Veg', - style: TextStyle( - fontFamily: 'Manrope', - fontStyle: FontStyle.normal, - fontWeight: FontWeight.w400, - fontSize: 13, - ), - ), - ], - ), - Row( - children: [ - Padding( - padding: const EdgeInsets.only(top: 10), - child: RichText( - text: TextSpan( - children: [ - WidgetSpan( - child: Image.asset( - 'assets/images/call_icon.png', - width: 25, - height: 25, - ), - ), - TextSpan( - text: - " +91 98651 76796, +91 76786 85869", - style: TextStyle( - fontFamily: 'Manrope', - fontStyle: FontStyle.normal, - fontWeight: FontWeight.w500, - fontSize: 12, - color: Color(0xFF5C5C5C), - ), - ), - ], - ), - ), - ), - ], - ), - Padding( - padding: const EdgeInsets.only(top: 10), - child: RichText( - text: TextSpan( - children: [ - WidgetSpan( - child: Image.asset( - 'assets/images/loc_logo.png', - width: 25, - height: 25, - ), - ), - TextSpan( - text: - " 112, Avinashi Road, Peelamedu, Coimbatore...", - style: TextStyle( - fontFamily: 'Manrope', - fontStyle: FontStyle.normal, - fontWeight: FontWeight.w500, - fontSize: 12, - color: Color(0xFF5C5C5C), - ), - ), - ], - ), - ), - ), - Padding( - padding: const EdgeInsets.only(top: 10), - child: RichText( - text: TextSpan( - children: [ - WidgetSpan( - child: Image.asset( - 'assets/images/glob_icon.png', - width: 25, - height: 25, - ), - ), - TextSpan( - text: " www.bbqnation.com", - style: TextStyle( - fontFamily: 'Manrope', - fontStyle: FontStyle.normal, - fontWeight: FontWeight.w500, - fontSize: 12, - color: Color(0xFF5C5C5C), - ), - ), - ], - ), - ), - ), - Padding( - padding: const EdgeInsets.only(top: 10), - child: RichText( - text: TextSpan( - children: [ - WidgetSpan( - child: Image.asset( - 'assets/images/clock_icon.png', - width: 25, - height: 25, - ), - ), - TextSpan( - text: - " Working Hours: Mon - Fri 9:00am to 9:00pm", - style: TextStyle( - fontFamily: 'Manrope', - fontStyle: FontStyle.normal, - fontWeight: FontWeight.w500, - fontSize: 12, - color: Color(0xFF5C5C5C), - ), - ), - ], - ), - ), - ), - ], + ), + ], + ), + Spacer(), + Column( + children: [ + Padding( + padding: const EdgeInsets.only(left: 15, right: 15), + child: Container( + width: 130, + height: 100, + decoration: BoxDecoration( + image: const DecorationImage( + fit: BoxFit.cover, + image: AssetImage( + 'assets/images/food2.png', + ), ), + borderRadius: + BorderRadius.all(Radius.circular(5)), ), ), - ], - ), - ), - ), - ], - ), - ), - ), - Container( - height: 100, - child: ListView( - scrollDirection: Axis.horizontal, - children: [ - Padding( - padding: const EdgeInsets.only(left: 22, right: 10), - child: InkWell( - onTap: () {}, - child: Container( - width: 350, - margin: EdgeInsets.only(right: 10), - decoration: BoxDecoration( - image: const DecorationImage( - alignment: Alignment.centerLeft, - image: AssetImage( - 'assets/images/offer.png', - ), - scale: 2, ), - borderRadius: BorderRadius.all( - Radius.circular(10), - ), - ), - child: Padding( - padding: const EdgeInsets.only(left: 80), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, + Column( crossAxisAlignment: CrossAxisAlignment.start, children: [ Text( - "WELCOME OFFER !", + "Chicken Pepper...", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, - fontWeight: FontWeight.w700, - fontSize: 20, - color: Color(0xFF09CD99), + fontWeight: FontWeight.w500, + fontSize: 15, + color: Color(0xFF3D3D3D), ), ), Text( - "Get 50% discount on your first order", + "₹ 360.00", style: TextStyle( fontFamily: 'Manrope', fontStyle: FontStyle.normal, - fontWeight: FontWeight.w400, + fontWeight: FontWeight.w600, fontSize: 15, - color: Color(0xFF5C5C5C), + color: Color(0xFF3D3D3D), ), ), ], ), - ), + ], ), - ), - ), - Spacer(), - Padding( - padding: const EdgeInsets.only(left: 22), - child: InkWell( - onTap: () {}, - child: Container( - width: 350, - margin: EdgeInsets.only(right: 10), - decoration: BoxDecoration( - image: const DecorationImage( - alignment: Alignment.centerLeft, - image: AssetImage( - 'assets/images/offer.png', + Spacer(), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Padding( + padding: const EdgeInsets.only(left: 15, right: 15), + child: Container( + width: 130, + height: 100, + decoration: BoxDecoration( + image: const DecorationImage( + fit: BoxFit.cover, + image: AssetImage( + 'assets/images/food3.png', + ), + ), + borderRadius: + BorderRadius.all(Radius.circular(5)), + ), ), - scale: 2, ), - borderRadius: BorderRadius.all( - Radius.circular(10), + Padding( + padding: const EdgeInsets.only(left: 20), + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + "Malai Kofta", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w500, + fontSize: 15, + color: Color(0xFF3D3D3D), + ), + ), + Text( + "₹ 280.00", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w600, + fontSize: 15, + color: Color(0xFF3D3D3D), + ), + ), + ], + ), ), + ], + ), + ], + ), + ), + Padding( + padding: const EdgeInsets.only(left: 15, right: 15, top: 5), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + "Photos", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w600, + fontSize: 20, + color: Color(0xFF3D3D3D), ), - child: Padding( - padding: const EdgeInsets.only(left: 80), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - "WELCOME OFFER !", - style: TextStyle( - fontFamily: 'Manrope', - fontStyle: FontStyle.normal, - fontWeight: FontWeight.w700, - fontSize: 20, - color: Color(0xFF09CD99), + ), + Spacer(), + IconButton( + icon: Image.asset('assets/images/arrow-right.png'), + onPressed: () { + Navigator.pop(context); + }, + ), + ], + ), + ), + Container( + height: 150, + child: ListView( + scrollDirection: Axis.horizontal, + children: [ + Spacer(), + Column( + children: [ + Padding( + padding: const EdgeInsets.only(left: 15, right: 15), + child: Container( + width: 130, + height: 100, + decoration: BoxDecoration( + image: const DecorationImage( + fit: BoxFit.cover, + image: AssetImage( + 'assets/images/room1.png', + ), ), + borderRadius: + BorderRadius.all(Radius.circular(5)), ), - Text( - "Get 50% discount on your first order", - style: TextStyle( - fontFamily: 'Manrope', - fontStyle: FontStyle.normal, - fontWeight: FontWeight.w400, - fontSize: 15, - color: Color(0xFF5C5C5C), + ), + ), + ], + ), + Spacer(), + Column( + children: [ + Padding( + padding: const EdgeInsets.only(left: 15, right: 15), + child: Container( + width: 130, + height: 100, + decoration: BoxDecoration( + image: const DecorationImage( + fit: BoxFit.cover, + image: AssetImage( + 'assets/images/room2.png', + ), ), + borderRadius: + BorderRadius.all(Radius.circular(5)), ), - ], + ), + ), + ], + ), + Spacer(), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Padding( + padding: const EdgeInsets.only(left: 15, right: 15), + child: Container( + width: 130, + height: 100, + decoration: BoxDecoration( + image: const DecorationImage( + fit: BoxFit.cover, + image: AssetImage( + 'assets/images/room3.png', + ), + ), + borderRadius: + BorderRadius.all(Radius.circular(5)), + ), + ), + ), + ], + ), + ], + ), + ), + Padding( + padding: const EdgeInsets.only(left: 15, right: 15, top: 5), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + "Services", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w600, + fontSize: 20, + color: Color(0xFF3D3D3D), + ), + ), + Spacer(), + IconButton( + icon: Image.asset('assets/images/arrow-right.png'), + onPressed: () { + Navigator.pop(context); + }, + ), + ], + ), + ), + Align( + alignment: Alignment.centerLeft, + child: TabBar( + controller: _tabController, + labelColor: Color(0xFF3D3D3D), + isScrollable: true, + labelPadding: EdgeInsets.symmetric(horizontal: 25), + indicator: BoxDecoration( + borderRadius: BorderRadius.circular(5), + color: Color(0xFFE4E4E4), + ), + tabs: [ + Tab( + child: Text( + "Buffet", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w500, + fontSize: 15, + color: Color(0xFF3D3D3D), ), ), ), - ), - ), - ], - ), - ), - Spacer(), - Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - for (int i = 0; i < pages.length; i++) - Container( - height: 8, - width: (pageIndex == i) ? 20 : 8, - margin: EdgeInsets.only(right: 8), - decoration: BoxDecoration( - color: (pageIndex == i) - ? Colors.green - : Colors.green.shade100, - borderRadius: BorderRadius.circular(8)), - ), - ], - ), - Row( - children: [ - Padding( - padding: const EdgeInsets.only(left: 24), - child: Text( - 'Photos', - style: TextStyle( - fontSize: 16, - fontFamily: 'Manrope', - fontStyle: FontStyle.normal, - fontWeight: FontWeight.w600, - ), - ), - ), - Spacer(), - Padding( - padding: const EdgeInsets.only(right: 10), - child: IconButton( - icon: Icon( - Icons.arrow_forward, - size: 25, - color: Color(0xFF5C5C5C), - ), - onPressed: () {}, + Tab( + child: Text( + "Bar", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w500, + fontSize: 15, + color: Color(0xFF3D3D3D), + ), + ), + ), + Tab( + child: Text( + "Car Parking", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w500, + fontSize: 15, + color: Color(0xFF3D3D3D), + ), + ), + ), + Tab( + child: Text( + "Family Room", + style: TextStyle( + fontFamily: 'Manrope', + fontStyle: FontStyle.normal, + fontWeight: FontWeight.w500, + fontSize: 15, + color: Color(0xFF3D3D3D), + ), + ), + ), + ], ), ), ], ), - Spacer(), - Container( - height: 50, - child: ListView( - scrollDirection: Axis.horizontal, - children: [ - Container( - width: 150, - decoration: BoxDecoration( - image: const DecorationImage( - alignment: Alignment.centerLeft, - image: AssetImage( - 'assets/images/offer.png', - ), - scale: 2, - ), - borderRadius: BorderRadius.all( - Radius.circular(10), - ), - ), - ), - ], - ), - ), - ], + ), ), ); } diff --git a/openclosenew/pubspec.lock b/openclosenew/pubspec.lock index 00bfdae..24a9538 100644 --- a/openclosenew/pubspec.lock +++ b/openclosenew/pubspec.lock @@ -56,7 +56,7 @@ packages: name: collection url: "https://pub.dartlang.org" source: hosted - version: "1.15.0" + version: "1.16.0" cross_file: dependency: transitive description: @@ -98,7 +98,7 @@ packages: name: fake_async url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "1.3.0" ffi: dependency: transitive description: @@ -239,7 +239,7 @@ packages: name: js url: "https://pub.dartlang.org" source: hosted - version: "0.6.3" + version: "0.6.4" libphonenumber: dependency: transitive description: @@ -288,7 +288,7 @@ packages: name: material_color_utilities url: "https://pub.dartlang.org" source: hosted - version: "0.1.3" + version: "0.1.4" meta: dependency: transitive description: @@ -302,7 +302,7 @@ packages: name: path url: "https://pub.dartlang.org" source: hosted - version: "1.8.0" + version: "1.8.1" path_drawing: dependency: transitive description: @@ -455,6 +455,13 @@ packages: description: flutter source: sdk version: "0.0.99" + smooth_page_indicator: + dependency: "direct main" + description: + name: smooth_page_indicator + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0+2" snippet_coder_utils: dependency: "direct main" description: @@ -468,7 +475,7 @@ packages: name: source_span url: "https://pub.dartlang.org" source: hosted - version: "1.8.1" + version: "1.8.2" stack_trace: dependency: transitive description: @@ -503,7 +510,7 @@ packages: name: test_api url: "https://pub.dartlang.org" source: hosted - version: "0.4.8" + version: "0.4.9" typed_data: dependency: transitive description: @@ -524,7 +531,7 @@ packages: name: vector_math url: "https://pub.dartlang.org" source: hosted - version: "2.1.1" + version: "2.1.2" win32: dependency: transitive description: @@ -554,5 +561,5 @@ packages: source: hosted version: "3.1.0" sdks: - dart: ">=2.16.2 <3.0.0" + dart: ">=2.17.0-0 <3.0.0" flutter: ">=2.10.0-0" diff --git a/openclosenew/pubspec.yaml b/openclosenew/pubspec.yaml index a26b6d5..064b85e 100644 --- a/openclosenew/pubspec.yaml +++ b/openclosenew/pubspec.yaml @@ -40,6 +40,7 @@ dependencies: shared_preferences: ^2.0.11 intl_phone_number_input: ^0.7.0+2 get: ^4.5.1 + smooth_page_indicator: ^1.0.0+2