import 'package:flutter/material.dart'; import 'package:pshared/models/payment/execution_operation.dart'; import 'package:pshared/models/payment/payment.dart'; import 'package:pweb/pages/report/details/sections/fx.dart'; import 'package:pweb/pages/report/details/sections/operations/section.dart'; class PaymentDetailsSections extends StatelessWidget { final Payment payment; final bool Function(PaymentExecutionOperation operation)? canDownloadOperationDocument; final ValueChanged? onDownloadOperationDocument; const PaymentDetailsSections({ super.key, required this.payment, this.canDownloadOperationDocument, this.onDownloadOperationDocument, }); @override Widget build(BuildContext context) { final hasFx = _hasFxQuote(payment); final hasOperations = payment.operations.isNotEmpty; return Column( crossAxisAlignment: CrossAxisAlignment.stretch, children: [ if (hasFx) ...[ PaymentFxSection(payment: payment), const SizedBox(height: 16), ], if (hasOperations) ...[ PaymentOperationsSection( payment: payment, canDownloadDocument: canDownloadOperationDocument, onDownloadDocument: onDownloadOperationDocument, ), const SizedBox(height: 16), ], ], ); } bool _hasFxQuote(Payment payment) => payment.lastQuote?.fxQuote != null; }