import 'package:flutter/material.dart';
import 'package:syncrow_app/features/shared_widgets/text_widgets/body_large.dart';
import 'package:syncrow_app/utils/resource_manager/color_manager.dart';

class UpdateInfoDialog extends StatelessWidget {
  final Function()? cancelTab;
  final Function()? confirmTab;

  const UpdateInfoDialog({
    super.key,
    required this.cancelTab,
    required this.confirmTab,
  });

  @override
  Widget build(BuildContext context) {
    return AlertDialog(
      contentPadding: EdgeInsets.zero,
      content: Column(
        mainAxisSize: MainAxisSize.min,
        children: <Widget>[
          const SizedBox(
            height: 10,
          ),
          BodyLarge(
            text: 'Update Available',
            fontWeight: FontWeight.w700,
            fontColor: ColorsManager.switchButton.withOpacity(0.6),
            fontSize: 16,
          ),
          const Padding(
            padding: EdgeInsets.only(left: 15, right: 15),
            child: Divider(
              color: ColorsManager.textGray,
            ),
          ),
          const Padding(
            padding: EdgeInsets.only(left: 15, right: 20, top: 15, bottom: 20),
            child: Column(
              children: [
                Center(
                    child: Text(
                  'An update is available for your device. Version 2.1.0 includes new features and important fixes to enhance performance and security.',
                  textAlign: TextAlign.center,
                )),
              ],
            ),
          ),
          Row(
            children: [
              Expanded(
                child: Container(
                  decoration: const BoxDecoration(
                      border: Border(
                    right: BorderSide(
                      color: ColorsManager.textGray,
                      width: 0.5,
                    ),
                    top: BorderSide(
                      color: ColorsManager.textGray,
                      width: 1.0,
                    ),
                  )),
                  child: SizedBox(
                    child: InkWell(
                      onTap: cancelTab,
                      child: const Padding(
                        padding: const EdgeInsets.only(top: 15, bottom: 15),
                        child: Center(
                          child: Text(
                            'Remind me later',
                            style: TextStyle(
                                color: ColorsManager.textGray,
                                fontSize: 14,
                                fontWeight: FontWeight.w400),
                          ),
                        ),
                      ),
                    ),
                  ),
                ),
              ),
              Expanded(
                  child: Container(
                decoration: const BoxDecoration(
                    border: Border(
                  left: BorderSide(
                    color: ColorsManager.textGray,
                    width: 0.5,
                  ),
                  top: BorderSide(
                    color: ColorsManager.textGray,
                    width: 1.0,
                  ),
                )),
                child: InkWell(
                    onTap: confirmTab,
                    child: Padding(
                      padding: const EdgeInsets.only(top: 15, bottom: 15),
                      child: Center(
                        child: Text(
                          'Update Now',
                          style: TextStyle(
                              color:
                                  ColorsManager.switchButton.withOpacity(0.6),
                              fontSize: 14,
                              fontWeight: FontWeight.w400),
                        ),
                      ),
                    )),
              ))
            ],
          )
        ],
      ),
    );
  }
}
