import 'package:get/get.dart';
import 'package:wechat_assets_picker/wechat_assets_picker.dart';

class PhotoGroup {
  // 照片组的标题
  // final String title;

  // // 照片组中的图片数量
  // final int imageCount;

  // 照片组的选择状态
  final RxBool isSelected;

  // 照片组中的图片列表
  final List<AssetEntity> images;

  // 每张图片的选择状态
  final RxList<bool> selectedImages;

  // 照片组的位置
  final String? location;

  // 照片组的月份
  final String? month;

  // 获取已选中的图片数量
  int get selectedCount => selectedImages.where((selected) => selected).length;

  // 构造函数
  PhotoGroup({
    // required this.imageCount,
    // required this.title,
    required bool isSelected,
    required this.images,
    this.location,
    this.month,
  })  : isSelected = isSelected.obs,
        selectedImages = RxList<bool>.filled(images.length, isSelected);

  // 切换选择所有图片的状态
  void toggleSelectAll(bool value) {
    isSelected.value = value;
    selectedImages.assignAll(List.filled(images.length, value));
  }

  // 更新图片的选择状态
  void updateImageSelection(int index, bool isSelected) {
    if (index >= 0 && index < images.length) {
      selectedImages[index] = isSelected;
    }
  }
}