import 'package:flutter/material.dart';
import 'package:syncrow_web/pages/space_management_v2/main_module/shared/helpers/space_management_community_dialog_helper.dart';
import 'package:syncrow_web/pages/space_management_v2/main_module/widgets/community_template_cell.dart';
import 'package:syncrow_web/utils/color_manager.dart';

class SpaceManagementTemplatesView extends StatelessWidget {
  const SpaceManagementTemplatesView({super.key});
  @override
  Widget build(BuildContext context) {
    return ColoredBox(
      color: ColorsManager.whiteColors,
      child: GridView.builder(
        padding: const EdgeInsets.symmetric(horizontal: 40, vertical: 20),
        gridDelegate: const SliverGridDelegateWithMaxCrossAxisExtent(
          maxCrossAxisExtent: 400,
          mainAxisSpacing: 10,
          crossAxisSpacing: 10,
          childAspectRatio: 2.0,
        ),
        itemCount: _gridItems(context).length,
        itemBuilder: (context, index) {
          final model = _gridItems(context)[index];
          return CommunityTemplateCell(
            onTap: model.onTap,
            title: model.title,
          );
        },
      ),
    );
  }

  List<_CommunityTemplateModel> _gridItems(BuildContext context) {
    return [
      _CommunityTemplateModel(
        title: const Text('Blank'),
        onTap: () => SpaceManagementCommunityDialogHelper.showCreateDialog(context),
      ),
    ];
  }
}

class _CommunityTemplateModel {
  final Widget title;
  final void Function() onTap;

  _CommunityTemplateModel({
    required this.title,
    required this.onTap,
  });
}
