blob: f94d45d5eec61521e29cd605e2cf577b79251d4c [file]
import '../../shared/logic/app_event_bus.dart';
sealed class PreviewState {}
extension PreviewStateRuntimeButtonAction on PreviewState {
bool get showsRestartAction => switch (this) {
PreviewRunning() || PreviewRestarting() || PreviewHotReloading() => true,
PreviewInitial() || PreviewStarting() || PreviewStopping() || PreviewCompileError() || PreviewValidationError() => false,
};
}
class PreviewInitial extends PreviewState {}
class PreviewStarting extends PreviewState {}
class PreviewRunning extends PreviewState {
PreviewRunning(this.entrypoint);
final String entrypoint;
}
class PreviewRestarting extends PreviewState {}
class PreviewHotReloading extends PreviewState {}
class PreviewStopping extends PreviewState {}
class PreviewCompileError extends PreviewState {
PreviewCompileError(this.entrypoint, this.message);
final String entrypoint;
final String message;
}
class PreviewValidationError extends PreviewState {
PreviewValidationError(this.message, {this.actionLabel, this.actionPanelType});
final String message;
final String? actionLabel;
final PanelType? actionPanelType;
}