forked from SatoshiPortal/bullbitcoin-mobile
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathbitbox_operation_state.dart
More file actions
39 lines (34 loc) · 1.42 KB
/
Copy pathbitbox_operation_state.dart
File metadata and controls
39 lines (34 loc) · 1.42 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import 'package:bb_mobile/core/bitbox/domain/entities/bitbox_device_entity.dart';
import 'package:bb_mobile/core/bitbox/domain/errors/bitbox_errors.dart';
import 'package:freezed_annotation/freezed_annotation.dart';
part 'bitbox_operation_state.freezed.dart';
enum BitBoxOperationStatus {
initial,
scanning,
connecting,
processing,
showingPairingCode,
waitingForPassword,
showingAddressVerification,
success,
error,
}
@freezed
sealed class BitBoxOperationState with _$BitBoxOperationState {
const factory BitBoxOperationState({
@Default(BitBoxOperationStatus.initial) BitBoxOperationStatus status,
BitBoxDeviceEntity? connectedDevice,
BitBoxError? error,
dynamic result,
}) = _BitBoxOperationState;
const BitBoxOperationState._();
bool get isInitial => status == BitBoxOperationStatus.initial;
bool get isScanning => status == BitBoxOperationStatus.scanning;
bool get isConnecting => status == BitBoxOperationStatus.connecting;
bool get isProcessing => status == BitBoxOperationStatus.processing;
bool get isShowingPairingCode => status == BitBoxOperationStatus.showingPairingCode;
bool get isWaitingForPassword => status == BitBoxOperationStatus.waitingForPassword;
bool get isShowingAddressVerification => status == BitBoxOperationStatus.showingAddressVerification;
bool get isSuccess => status == BitBoxOperationStatus.success;
bool get isError => status == BitBoxOperationStatus.error;
}