52 lines
1.5 KiB
Dart
52 lines
1.5 KiB
Dart
part of 'ticket_shipping_cubit.dart';
|
|
|
|
enum TicketShippingStatus { initial, loading, success, failure }
|
|
|
|
class TicketShippingState extends Equatable {
|
|
final TicketShippingStatus status;
|
|
final ShipmentDocumentModel document; // Il nostro eroe!
|
|
|
|
// 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,
|
|
this.availableProviders = const [],
|
|
this.availableLocations = const [],
|
|
this.isAutoNumber = false,
|
|
this.errorMessage,
|
|
});
|
|
|
|
TicketShippingState copyWith({
|
|
TicketShippingStatus? status,
|
|
ShipmentDocumentModel? document,
|
|
List<ProviderModel>? availableProviders,
|
|
List<ProviderLocationModel>? availableLocations,
|
|
bool? isAutoNumber,
|
|
String? errorMessage,
|
|
}) {
|
|
return TicketShippingState(
|
|
status: status ?? this.status,
|
|
document: document ?? this.document,
|
|
availableProviders: availableProviders ?? this.availableProviders,
|
|
availableLocations: availableLocations ?? this.availableLocations,
|
|
isAutoNumber: isAutoNumber ?? this.isAutoNumber,
|
|
errorMessage: errorMessage ?? this.errorMessage,
|
|
);
|
|
}
|
|
|
|
@override
|
|
List<Object?> get props => [
|
|
status,
|
|
document,
|
|
availableProviders,
|
|
availableLocations,
|
|
isAutoNumber,
|
|
errorMessage,
|
|
];
|
|
}
|