From dea5de8828bb86451bacfd832bcc7c79a01954a9 Mon Sep 17 00:00:00 2001 From: efrilm Date: Fri, 24 Oct 2025 20:25:30 +0700 Subject: [PATCH] sync page --- lib/common/theme/app_color.dart | 2 +- lib/presentation/pages/sync/sync_page.dart | 63 +++++++++++++++++++++- 2 files changed, 62 insertions(+), 3 deletions(-) diff --git a/lib/common/theme/app_color.dart b/lib/common/theme/app_color.dart index 14ded10..9346883 100644 --- a/lib/common/theme/app_color.dart +++ b/lib/common/theme/app_color.dart @@ -12,7 +12,7 @@ class AppColor { static const Color secondaryDark = Color(0xFF388E3C); // Background Colors - static const Color background = Color(0xFFF8F9FA); + static const Color background = Color(0xFFF1F5F9); static const Color backgroundLight = Color(0xFFFFFFFF); static const Color backgroundDark = Color(0xFF1A1A1A); static const Color surface = Color(0xFFFFFFFF); diff --git a/lib/presentation/pages/sync/sync_page.dart b/lib/presentation/pages/sync/sync_page.dart index 6bbed68..d1e52c9 100644 --- a/lib/presentation/pages/sync/sync_page.dart +++ b/lib/presentation/pages/sync/sync_page.dart @@ -1,5 +1,9 @@ import 'package:auto_route/auto_route.dart'; -import 'package:flutter/widgets.dart'; +import 'package:flutter/material.dart'; + +import '../../../common/extension/extension.dart'; +import '../../../common/theme/theme.dart'; +import '../../components/spaces/space.dart'; @RoutePage() class SyncPage extends StatelessWidget { @@ -7,6 +11,61 @@ class SyncPage extends StatelessWidget { @override Widget build(BuildContext context) { - return const Placeholder(); + return Scaffold( + backgroundColor: AppColor.background, + body: SafeArea( + child: Padding( + padding: EdgeInsets.symmetric(horizontal: 32, vertical: 16), + child: Row( + children: [ + Expanded( + flex: 2, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [_buildHeader()], + ), + ), + SpaceWidth(40), + SizedBox(width: 40), + Expanded( + flex: 3, + child: Container(height: context.deviceHeight * 0.8), + ), + ], + ), + ), + ), + ); + } + + Widget _buildHeader() { + return Column( + children: [ + Container( + width: 60, + height: 60, + decoration: BoxDecoration( + color: AppColor.primary.withOpacity(0.1), + borderRadius: BorderRadius.circular(15), + ), + child: Icon(Icons.sync, size: 30, color: AppColor.primary), + ), + SizedBox(height: 12), + Text( + 'Sinkronisasi Data', + style: TextStyle( + fontSize: 24, + fontWeight: FontWeight.bold, + color: Colors.grey.shade800, + ), + ), + SizedBox(height: 8), + Text( + 'Mengunduh kategori dan produk terbaru', + style: TextStyle(fontSize: 16, color: Colors.grey.shade600), + textAlign: TextAlign.center, + ), + ], + ); } }