Files
flux/lib/features/tickets/blocs/ticket_shipping_state.dart

56 lines
1.5 KiB
Dart
Raw Normal View History

2026-05-15 19:18:03 +02:00
part of 'ticket_shipping_cubit.dart';
enum TicketShippingStatus { initial, loading, success, failure }
class TicketShippingState extends Equatable {
final TicketShippingStatus status;
final ShippingDocumentModel document;
2026-05-16 19:34:33 +02:00
final List<TicketModel> tickets;
2026-05-15 19:18:03 +02:00
// Dati di supporto per la UI
final List<ProviderModel> availableProviders;
final List<ProviderLocationModel> availableLocations;
final bool isAutoNumber;
final String? errorMessage;
const TicketShippingState({
this.status = TicketShippingStatus.initial,
required this.document,
2026-05-16 19:34:33 +02:00
required this.tickets,
2026-05-15 19:18:03 +02:00
this.availableProviders = const [],
this.availableLocations = const [],
2026-05-16 11:51:26 +02:00
this.isAutoNumber = true,
2026-05-15 19:18:03 +02:00
this.errorMessage,
});
TicketShippingState copyWith({
TicketShippingStatus? status,
ShippingDocumentModel? document,
2026-05-15 19:18:03 +02:00
List<ProviderModel>? availableProviders,
List<ProviderLocationModel>? availableLocations,
bool? isAutoNumber,
String? errorMessage,
}) {
return TicketShippingState(
status: status ?? this.status,
document: document ?? this.document,
2026-05-16 19:34:33 +02:00
tickets: tickets,
2026-05-15 19:18:03 +02:00
availableProviders: availableProviders ?? this.availableProviders,
availableLocations: availableLocations ?? this.availableLocations,
isAutoNumber: isAutoNumber ?? this.isAutoNumber,
errorMessage: errorMessage ?? this.errorMessage,
);
}
@override
List<Object?> get props => [
status,
document,
2026-05-16 19:34:33 +02:00
tickets,
2026-05-15 19:18:03 +02:00
availableProviders,
availableLocations,
isAutoNumber,
errorMessage,
];
}