import 'package:ambito/src/widgets/buttons/delete_buttons_group.dart';
import 'package:flutter/material.dart';
import 'package:get/get.dart';

import '../../../entity/area/area_repository.dart';
import '../../../packages/ambito_api/base_api.dart';
import '../../../packages/ambito_theme/ambito_theme.dart';

class DeleteAreaDialog extends StatelessWidget {
  const DeleteAreaDialog({super.key, required this.id});

  final int id;

  @override
  Widget build(BuildContext context) {
    final AmbitoTheme theme = getTheme(context);
    return Dialog(
      shape: const RoundedRectangleBorder(
        borderRadius: BorderRadius.all(
          Radius.circular(10.0),
        ),
      ),
      child: SizedBox(
        width: 800,
        child: Padding(
          padding: const EdgeInsets.all(20.0),
          child: Column(
            mainAxisSize: MainAxisSize.min,
            mainAxisAlignment: MainAxisAlignment.center,
            crossAxisAlignment: CrossAxisAlignment.start,
            children: <Widget>[
              Text(
                'Fläche löschen',
                style: theme.headlineSmall.copyWith(
                  color: theme.currentColorScheme.error,
                ),
              ),
              theme.verticalSpacer,
              Text(
                'Möchten Sie die Fläche wirklich löschen?',
                style: theme.bodyMedium,
              ),
              Text(
                'Diese wird auch in der Flächenliste entgültig gelöscht.',
                style: theme.bodyMedium,
              ),
              theme.verticalSpacerMax,
              DeleteButtonsGroup(onPressed: () {
                AreaRepository().delete(id);
                BaseApi().deleteContent('area', id).then((_) {
                  Navigator.pop(context);
                  Get.offAndToNamed('/dashboard/flaechen/1');
                });
              }),
            ],
          ),
        ),
      ),
    );
  }
}
