// Author: fruit.com.cn import 'package:flutter/material.dart'; import '../../../core/theme/app_colors.dart'; import '../../../core/theme/app_dimens.dart'; import '../../../l10n/app_localizations.dart'; class MineMoreServices extends StatelessWidget { const MineMoreServices({ super.key, required this.onCommonQuestions, required this.onAbout, }); final VoidCallback onCommonQuestions; final VoidCallback onAbout; @override Widget build(BuildContext context) { final l10n = AppLocalizations.of(context)!; return Container( key: const Key('mine-more-services'), decoration: BoxDecoration( color: AppColors.minePanelSurface, borderRadius: BorderRadius.circular(AppDimens.mineGridRadius), ), clipBehavior: Clip.antiAlias, child: Column( children: [ _row( key: const Key('mine-common-questions'), label: l10n.commonQuestions, onTap: onCommonQuestions, ), const Divider( height: AppDimens.mineGridDividerWidth, thickness: AppDimens.mineGridDividerWidth, color: AppColors.mineMoreDivider, ), _row( key: const Key('mine-about'), label: l10n.aboutUs, onTap: onAbout, ), ], ), ); } Widget _row({ required Key key, required String label, required VoidCallback onTap, }) { return Material( color: AppColors.transparent, child: InkWell( key: key, onTap: onTap, child: SizedBox( height: AppDimens.mineMoreRowHeight, child: Padding( padding: const EdgeInsets.symmetric( horizontal: AppDimens.minePanelPadding, ), child: Row( children: [ Expanded( child: Text( label, maxLines: 1, overflow: TextOverflow.ellipsis, style: const TextStyle( color: AppColors.textPrimary, fontSize: AppDimens.mineMoreFont, fontWeight: FontWeight.w400, ), ), ), const Icon( Icons.chevron_right_rounded, color: AppColors.textSecondary, size: 18, ), ], ), ), ), ), ); } }