showConfirmationDialog method

void showConfirmationDialog({
  1. required String confirmationMessage,
  2. required String confirmButtonText,
  3. required String cancelButtonText,
  4. required BuildContext context,
  5. required void onConfirm()?,
})

to show alert dialog to user to confirm request or cancel request

Implementation

void showConfirmationDialog({
  required String confirmationMessage,
  required String confirmButtonText,
  required String cancelButtonText,
  required BuildContext context,
  required void Function()? onConfirm,
}) {
  showDialog(
    context: context,
    builder: (context) {
      return AlertDialog(
        shape: RoundedRectangleBorder(
          borderRadius: BorderRadius.circular(10),
        ),
        content: Padding(
          padding: const EdgeInsets.only(top: 20.0),
          child: Text(
            confirmationMessage,
            textAlign: TextAlign.center,
            style: const TextStyle(
              fontSize: 14,
              fontWeight: FontWeight.w500,
            ),
          ),
        ),
        contentPadding: const EdgeInsets.symmetric(
          horizontal: 15,
        ),
        actionsPadding:
            const EdgeInsets.symmetric(horizontal: 15, vertical: 15),
        actions: [
          Row(
            children: [
              // confirm button to confirm request
              Expanded(
                child: Widgets().textButton(
                  onPressed: onConfirm,
                  text: confirmButtonText,
                ),
              ),
              const SizedBox(
                width: 10,
              ),
              // cancel button to cancel request
              Expanded(
                child: Widgets().textButton(
                  onPressed: () {
                    Navigator.of(context).pop();
                  },
                  text: cancelButtonText,
                ),
              ),
            ],
          )
        ],
      );
    },
  );
}