TrackButton function

dynamic TrackButton(
  1. PaymentViewModel model
)

Implementation

TrackButton(PaymentViewModel model) {
  return GestureDetector(
    onTap: model.isBusy ? null : () => model.trackPaymentRequest(),
    child: Container(
      width: double.infinity,
      padding: EdgeInsets.symmetric(vertical: 16),
      decoration: BoxDecoration(
        gradient: LinearGradient(
          colors: [Color(0xFF8140D5), Color(0xFF00539D)],
          begin: Alignment.centerLeft,
          end: Alignment.centerRight,
        ),
        borderRadius: BorderRadius.circular(30),
        boxShadow: [
          BoxShadow(color: Colors.black26, blurRadius: 6, offset: Offset(0, 3)),
        ],
      ),
      alignment: Alignment.center,
      child:
          model.isBusy
              ? CircularProgressIndicator(color: Colors.white)
              : Text(
                'Track Payment',
                style: TextStyle(
                  color: Colors.white,
                  fontSize: 16,
                  fontWeight: FontWeight.bold,
                ),
              ),
    ),
  );
}