present method

Future<PaymentResult?> present(
  1. BuildContext context, {
  2. required String method,
  3. String? amount,
  4. Map<String, dynamic>? merchantArgs,
  5. UIAdjust? uiAdjust,
  6. bool mountOnShow = false,
  7. bool enableStripeJs = false,
  8. void onResult(
    1. PaymentResult
    )?,
  9. Future<void> onPay()?,
})

Implementation

Future<PaymentResult?> present(
  BuildContext context, {
  required String method,
  String? amount,
  Map<String, dynamic>? merchantArgs,
  UIAdjust? uiAdjust,
  bool mountOnShow = false,
  bool enableStripeJs = false,
  void Function(PaymentResult)? onResult,
  Future<void> Function()? onPay,
}) {
  return showModalBottomSheet<PaymentResult>(
    context: context,
    isScrollControlled: true,
    backgroundColor: Colors.transparent,
    builder: (modalContext) {
      return DraggableScrollableSheet(
        initialChildSize: 0.5,
        minChildSize: 0.3,
        maxChildSize: 0.9,
        expand: false,
        builder: (context, scrollController) {
          return Container(
            decoration: const BoxDecoration(
              color: Colors.white,
              borderRadius: BorderRadius.vertical(top: Radius.circular(16)),
            ),
              child: _UIAdjustPaysheet(
              method: method,
              amount: amount,
              merchantArgs: merchantArgs,
                uiAdjust: uiAdjust,
              scrollController: scrollController,
              onResult: (r) => onResult?.call(r),
              onPay: onPay,
            ),
          );
        },
      );
    },
  );
}