import 'package:flutter/material.dart';

import 'package:pweb/generated/i18n/app_localizations.dart';


enum PayoutDestination {
  dashboard(Icons.dashboard_outlined, 'dashboard'),
  sendPayout(Icons.send_outlined, 'sendPayout'),
  recipients(Icons.people_outline, 'recipients'),
  invitations(Icons.mark_email_read_outlined, 'invitations'),
  reports(Icons.insert_chart, 'reports'),
  settings(Icons.settings_outlined, 'settings'),
  methods(Icons.credit_card, 'methods'),
  payment(Icons.payment, 'payout'),
  addrecipient(Icons.app_registration, 'add recipient'),
  editwallet(Icons.wallet, 'edit wallet'),
  walletTopUp(Icons.qr_code_2_outlined, 'wallet top up');


  const PayoutDestination(this.icon, this.labelKey);

  final IconData icon;
  final String labelKey;

  String localizedLabel(BuildContext context) {
    final loc = AppLocalizations.of(context)!;
    switch (this) {
      case PayoutDestination.dashboard:
        return loc.payoutNavDashboard;
      case PayoutDestination.sendPayout:
        return loc.payoutNavSendPayout;
      case PayoutDestination.recipients:
      return loc.payoutNavRecipients;
      case PayoutDestination.reports:
        return loc.payoutNavReports;
      case PayoutDestination.settings:
        return loc.payoutNavSettings;
      case PayoutDestination.methods:
        return loc.payoutNavMethods;
      case PayoutDestination.invitations:
        return loc.payoutNavInvitations;
      case PayoutDestination.payment:
        return loc.payout;
      case PayoutDestination.addrecipient:
        return loc.addRecipient;
      case PayoutDestination.editwallet:
        return loc.editWallet;
      case PayoutDestination.walletTopUp:
        return loc.walletTopUpTitle;
    }
  }
}
