EnakPoint & EnakCoin wallet, PIN, outlet, order, community, reward

- Wallet EnakPoint & EnakCoin: beranda, riwayat, saldo kedaluwarsa, kode
  bayar, tukar EnakCoin, transfer
- PIN (buat, ganti, lupa), outlet, riwayat order, game spin
- Halaman community, webview, coming soon, dan ikon menu beranda baru
- Redesign Reward Saya: kartu tiket, filter chip, detail kode + QR
- Hapus customer point loader, menu, dan checkout lama
- Base URL ke enaklo-pos-api.altru.id

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
efrilm
2026-10-01 01:43:22 +07:00
co-authored by Claude Opus 5.5
parent 5954510b93
commit f5e3075205
253 changed files with 47212 additions and 17437 deletions
+5 -7
View File
@@ -2,7 +2,7 @@ import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';
import 'package:flutter_bloc/flutter_bloc.dart';
import '../../../application/customer/customer_point_loader/customer_point_loader_bloc.dart';
import '../../../application/wallet/wallet_loader/wallet_loader_bloc.dart';
import '../../../common/theme/theme.dart';
import '../../router/app_router.gr.dart';
@@ -203,9 +203,7 @@ class _CoinPageState extends State<CoinPage> {
super.initState();
activeCategoryId = categories.first.id; // Set first category as active
_initializeCategoryKeys();
context.read<CustomerPointLoaderBloc>().add(
CustomerPointLoaderEvent.fetched(),
);
context.read<WalletLoaderBloc>().add(const WalletLoaderEvent.fetched());
}
void _initializeCategoryKeys() {
@@ -309,7 +307,7 @@ class _CoinPageState extends State<CoinPage> {
}
Widget _buildPointCard() {
return BlocBuilder<CustomerPointLoaderBloc, CustomerPointLoaderState>(
return BlocBuilder<WalletLoaderBloc, WalletLoaderState>(
builder: (context, state) {
return Container(
margin: EdgeInsets.all(16),
@@ -347,14 +345,14 @@ class _CoinPageState extends State<CoinPage> {
// ),
// SizedBox(height: 4),
Text(
"${state.customerPoint.totalPoints}",
"${state.summary.pointBalance}",
style: AppStyle.h2.copyWith(
color: AppColor.textWhite,
fontWeight: FontWeight.w700,
),
),
Text(
"Poin Tersedia",
"EnakPoint Tersedia",
style: AppStyle.sm.copyWith(
color: AppColor.textWhite.withOpacity(0.9),
),