mirror of
https://github.com/SyncrowIOT/web.git
synced 2025-07-10 15:17:31 +00:00
63 lines
1.4 KiB
Dart
63 lines
1.4 KiB
Dart
import 'package:equatable/equatable.dart';
|
|
import 'package:flutter/material.dart'; // Import for Offset
|
|
|
|
abstract class SpaceManagementEvent extends Equatable {
|
|
const SpaceManagementEvent();
|
|
|
|
@override
|
|
List<Object> get props => [];
|
|
}
|
|
|
|
class LoadCommunityAndSpacesEvent extends SpaceManagementEvent {}
|
|
|
|
class CreateSpaceEvent extends SpaceManagementEvent {
|
|
final String name;
|
|
final String icon;
|
|
final Offset position;
|
|
final int? parentIndex;
|
|
final String? direction;
|
|
|
|
CreateSpaceEvent({
|
|
required this.name,
|
|
required this.icon,
|
|
required this.position,
|
|
this.parentIndex,
|
|
this.direction,
|
|
});
|
|
|
|
@override
|
|
List<Object> get props => [
|
|
name,
|
|
icon,
|
|
position,
|
|
parentIndex ?? -1, // Use a fallback value if nullable
|
|
direction ?? '', // Use a fallback value if nullable
|
|
];
|
|
}
|
|
|
|
class UpdateSpacePositionEvent extends SpaceManagementEvent {
|
|
final int index;
|
|
final Offset newPosition;
|
|
|
|
UpdateSpacePositionEvent(this.index, this.newPosition);
|
|
|
|
@override
|
|
List<Object> get props => [index, newPosition];
|
|
}
|
|
|
|
|
|
class CreateCommunityEvent extends SpaceManagementEvent {
|
|
final String name;
|
|
final String description;
|
|
final String regionId;
|
|
|
|
CreateCommunityEvent({
|
|
required this.name,
|
|
required this.description,
|
|
required this.regionId,
|
|
});
|
|
|
|
@override
|
|
List<Object> get props => [name, description, regionId];
|
|
}
|