import 'package:flutter/material.dart';
import 'package:flutter/services.dart';

import 'package:provider/provider.dart';

import 'package:pshared/controllers/balance_mask/wallets.dart';

import 'package:pweb/pages/dashboard/buttons/balance/amount.dart';
import 'package:pweb/widgets/refresh_balance/wallet.dart';


class WalletEditFields extends StatelessWidget {
  const WalletEditFields({super.key});

  @override
  Widget build(BuildContext context) {
    return Consumer<WalletsController>(
      builder: (context, controller, _) {
        final wallet = controller.selectedWallet;
        
        if (wallet == null) {
          return SizedBox.shrink();
        }

        return Column(
          crossAxisAlignment: CrossAxisAlignment.start,
          children: [
            Row(
              children: [
                Expanded(
                  child: BalanceAmount(
                    wallet: wallet,
                    onToggleMask: () => controller.toggleBalanceMask(wallet.id),
                  ),
                ),
                WalletBalanceRefreshButton(walletRef: wallet.id),
              ],
            ),
            const SizedBox(height: 8),
            Row(
              mainAxisAlignment: MainAxisAlignment.spaceBetween,
              children: [
                Text(wallet.walletUserID, style: Theme.of(context).textTheme.bodyLarge),
                IconButton(
                  icon: Icon(Icons.copy), 
                  iconSize: 18,
                  onPressed: () => Clipboard.setData(ClipboardData(text: wallet.walletUserID)),
                ),
              ],
            ),
          ],
        );
      },
    );
  }
}
