This commit is contained in:
2026-02-27 21:12:56 +08:00
commit a878084cbb
233 changed files with 22988 additions and 0 deletions

View File

@@ -0,0 +1,107 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.11.1.
// ignore_for_file: invalid_use_of_internal_member, unused_import, unnecessary_import
import '../discovery/model.dart';
import '../event.dart';
import '../frb_generated.dart';
import '../transfer/model.dart';
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
Stream<AppEvent> createEventStream() =>
RustLib.instance.api.crateApiCommandsCreateEventStream();
Future<String> getSavePath() =>
RustLib.instance.api.crateApiCommandsGetSavePath();
Future<void> setSavePath({required String savePath}) =>
RustLib.instance.api.crateApiCommandsSetSavePath(savePath: savePath);
Future<void> setHostname({required String hostname}) =>
RustLib.instance.api.crateApiCommandsSetHostname(hostname: hostname);
Future<String> getHostname() =>
RustLib.instance.api.crateApiCommandsGetHostname();
Future<bool> getAutoAccept() =>
RustLib.instance.api.crateApiCommandsGetAutoAccept();
Future<void> setAutoAccept({required bool autoAccept}) =>
RustLib.instance.api.crateApiCommandsSetAutoAccept(autoAccept: autoAccept);
Future<bool> getSaveHistory() =>
RustLib.instance.api.crateApiCommandsGetSaveHistory();
Future<void> setSaveHistory({required bool saveHistory}) => RustLib.instance.api
.crateApiCommandsSetSaveHistory(saveHistory: saveHistory);
Future<bool> getEnableTls() =>
RustLib.instance.api.crateApiCommandsGetEnableTls();
Future<void> setEnableTls({required bool enableTls}) =>
RustLib.instance.api.crateApiCommandsSetEnableTls(enableTls: enableTls);
Future<List<Peer>> getPeers() =>
RustLib.instance.api.crateApiCommandsGetPeers();
Future<void> sendFile({
required Peer target,
required String targetIp,
required String filePath,
}) => RustLib.instance.api.crateApiCommandsSendFile(
target: target,
targetIp: targetIp,
filePath: filePath,
);
Future<void> sendText({
required Peer target,
required String targetIp,
required String text,
}) => RustLib.instance.api.crateApiCommandsSendText(
target: target,
targetIp: targetIp,
text: text,
);
Future<void> sendFolder({
required Peer target,
required String targetIp,
required String folderPath,
}) => RustLib.instance.api.crateApiCommandsSendFolder(
target: target,
targetIp: targetIp,
folderPath: folderPath,
);
Future<List<Transfer>> getTransfers() =>
RustLib.instance.api.crateApiCommandsGetTransfers();
Future<void> resolvePendingRequest({
required String id,
required bool accept,
required String path,
}) => RustLib.instance.api.crateApiCommandsResolvePendingRequest(
id: id,
accept: accept,
path: path,
);
Future<void> cancelTransfer({required String id}) =>
RustLib.instance.api.crateApiCommandsCancelTransfer(id: id);
Future<void> deleteTransfer({required String id}) =>
RustLib.instance.api.crateApiCommandsDeleteTransfer(id: id);
Future<void> clearTransfers() =>
RustLib.instance.api.crateApiCommandsClearTransfers();
Future<bool> isTrusted({required String peerId}) =>
RustLib.instance.api.crateApiCommandsIsTrusted(peerId: peerId);
Future<void> trustPeer({required String peerId}) =>
RustLib.instance.api.crateApiCommandsTrustPeer(peerId: peerId);
Future<void> untrustPeer({required String peerId}) =>
RustLib.instance.api.crateApiCommandsUntrustPeer(peerId: peerId);

View File

@@ -0,0 +1,72 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.11.1.
// ignore_for_file: invalid_use_of_internal_member, unused_import, unnecessary_import
import '../frb_generated.dart';
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
class Peer {
final String id;
final String name;
final Map<String, RouteState> routes;
final int port;
final String os;
final String publicKey;
final bool trustMismatch;
final bool enableTls;
const Peer({
required this.id,
required this.name,
required this.routes,
required this.port,
required this.os,
required this.publicKey,
required this.trustMismatch,
required this.enableTls,
});
@override
int get hashCode =>
id.hashCode ^
name.hashCode ^
routes.hashCode ^
port.hashCode ^
os.hashCode ^
publicKey.hashCode ^
trustMismatch.hashCode ^
enableTls.hashCode;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is Peer &&
runtimeType == other.runtimeType &&
id == other.id &&
name == other.name &&
routes == other.routes &&
port == other.port &&
os == other.os &&
publicKey == other.publicKey &&
trustMismatch == other.trustMismatch &&
enableTls == other.enableTls;
}
class RouteState {
final String ip;
final double lastSeen;
const RouteState({required this.ip, required this.lastSeen});
@override
int get hashCode => ip.hashCode ^ lastSeen.hashCode;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is RouteState &&
runtimeType == other.runtimeType &&
ip == other.ip &&
lastSeen == other.lastSeen;
}

34
lib/backend/event.dart Normal file
View File

@@ -0,0 +1,34 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.11.1.
// ignore_for_file: invalid_use_of_internal_member, unused_import, unnecessary_import
import 'discovery/model.dart';
import 'frb_generated.dart';
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
import 'package:freezed_annotation/freezed_annotation.dart' hide protected;
import 'transfer/model.dart';
part 'event.freezed.dart';
@freezed
sealed class AppEvent with _$AppEvent {
const AppEvent._();
const factory AppEvent.transferStatusChanged({required Transfer transfer}) =
AppEvent_TransferStatusChanged;
const factory AppEvent.transferProgressChanged({
required String id,
required double progress,
required double total,
required double speed,
}) = AppEvent_TransferProgressChanged;
const factory AppEvent.peerConnectOrUpdated({required Peer peer}) =
AppEvent_PeerConnectOrUpdated;
const factory AppEvent.peerDisconnected({required String id}) =
AppEvent_PeerDisconnected;
const factory AppEvent.transferAdded({required Transfer transfer}) =
AppEvent_TransferAdded;
const factory AppEvent.transferRemoved({required String id}) =
AppEvent_TransferRemoved;
const factory AppEvent.transferClear() = AppEvent_TransferClear;
}

View File

@@ -0,0 +1,638 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
// coverage:ignore-file
// ignore_for_file: type=lint
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
part of 'event.dart';
// **************************************************************************
// FreezedGenerator
// **************************************************************************
// dart format off
T _$identity<T>(T value) => value;
/// @nodoc
mixin _$AppEvent {
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is AppEvent);
}
@override
int get hashCode => runtimeType.hashCode;
@override
String toString() {
return 'AppEvent()';
}
}
/// @nodoc
class $AppEventCopyWith<$Res> {
$AppEventCopyWith(AppEvent _, $Res Function(AppEvent) __);
}
/// Adds pattern-matching-related methods to [AppEvent].
extension AppEventPatterns on AppEvent {
/// A variant of `map` that fallback to returning `orElse`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case final Subclass value:
/// return ...;
/// case _:
/// return orElse();
/// }
/// ```
@optionalTypeArgs TResult maybeMap<TResult extends Object?>({TResult Function( AppEvent_TransferStatusChanged value)? transferStatusChanged,TResult Function( AppEvent_TransferProgressChanged value)? transferProgressChanged,TResult Function( AppEvent_PeerConnectOrUpdated value)? peerConnectOrUpdated,TResult Function( AppEvent_PeerDisconnected value)? peerDisconnected,TResult Function( AppEvent_TransferAdded value)? transferAdded,TResult Function( AppEvent_TransferRemoved value)? transferRemoved,TResult Function( AppEvent_TransferClear value)? transferClear,required TResult orElse(),}){
final _that = this;
switch (_that) {
case AppEvent_TransferStatusChanged() when transferStatusChanged != null:
return transferStatusChanged(_that);case AppEvent_TransferProgressChanged() when transferProgressChanged != null:
return transferProgressChanged(_that);case AppEvent_PeerConnectOrUpdated() when peerConnectOrUpdated != null:
return peerConnectOrUpdated(_that);case AppEvent_PeerDisconnected() when peerDisconnected != null:
return peerDisconnected(_that);case AppEvent_TransferAdded() when transferAdded != null:
return transferAdded(_that);case AppEvent_TransferRemoved() when transferRemoved != null:
return transferRemoved(_that);case AppEvent_TransferClear() when transferClear != null:
return transferClear(_that);case _:
return orElse();
}
}
/// A `switch`-like method, using callbacks.
///
/// Callbacks receives the raw object, upcasted.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case final Subclass value:
/// return ...;
/// case final Subclass2 value:
/// return ...;
/// }
/// ```
@optionalTypeArgs TResult map<TResult extends Object?>({required TResult Function( AppEvent_TransferStatusChanged value) transferStatusChanged,required TResult Function( AppEvent_TransferProgressChanged value) transferProgressChanged,required TResult Function( AppEvent_PeerConnectOrUpdated value) peerConnectOrUpdated,required TResult Function( AppEvent_PeerDisconnected value) peerDisconnected,required TResult Function( AppEvent_TransferAdded value) transferAdded,required TResult Function( AppEvent_TransferRemoved value) transferRemoved,required TResult Function( AppEvent_TransferClear value) transferClear,}){
final _that = this;
switch (_that) {
case AppEvent_TransferStatusChanged():
return transferStatusChanged(_that);case AppEvent_TransferProgressChanged():
return transferProgressChanged(_that);case AppEvent_PeerConnectOrUpdated():
return peerConnectOrUpdated(_that);case AppEvent_PeerDisconnected():
return peerDisconnected(_that);case AppEvent_TransferAdded():
return transferAdded(_that);case AppEvent_TransferRemoved():
return transferRemoved(_that);case AppEvent_TransferClear():
return transferClear(_that);}
}
/// A variant of `map` that fallback to returning `null`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case final Subclass value:
/// return ...;
/// case _:
/// return null;
/// }
/// ```
@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>({TResult? Function( AppEvent_TransferStatusChanged value)? transferStatusChanged,TResult? Function( AppEvent_TransferProgressChanged value)? transferProgressChanged,TResult? Function( AppEvent_PeerConnectOrUpdated value)? peerConnectOrUpdated,TResult? Function( AppEvent_PeerDisconnected value)? peerDisconnected,TResult? Function( AppEvent_TransferAdded value)? transferAdded,TResult? Function( AppEvent_TransferRemoved value)? transferRemoved,TResult? Function( AppEvent_TransferClear value)? transferClear,}){
final _that = this;
switch (_that) {
case AppEvent_TransferStatusChanged() when transferStatusChanged != null:
return transferStatusChanged(_that);case AppEvent_TransferProgressChanged() when transferProgressChanged != null:
return transferProgressChanged(_that);case AppEvent_PeerConnectOrUpdated() when peerConnectOrUpdated != null:
return peerConnectOrUpdated(_that);case AppEvent_PeerDisconnected() when peerDisconnected != null:
return peerDisconnected(_that);case AppEvent_TransferAdded() when transferAdded != null:
return transferAdded(_that);case AppEvent_TransferRemoved() when transferRemoved != null:
return transferRemoved(_that);case AppEvent_TransferClear() when transferClear != null:
return transferClear(_that);case _:
return null;
}
}
/// A variant of `when` that fallback to an `orElse` callback.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case Subclass(:final field):
/// return ...;
/// case _:
/// return orElse();
/// }
/// ```
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>({TResult Function( Transfer transfer)? transferStatusChanged,TResult Function( String id, double progress, double total, double speed)? transferProgressChanged,TResult Function( Peer peer)? peerConnectOrUpdated,TResult Function( String id)? peerDisconnected,TResult Function( Transfer transfer)? transferAdded,TResult Function( String id)? transferRemoved,TResult Function()? transferClear,required TResult orElse(),}) {final _that = this;
switch (_that) {
case AppEvent_TransferStatusChanged() when transferStatusChanged != null:
return transferStatusChanged(_that.transfer);case AppEvent_TransferProgressChanged() when transferProgressChanged != null:
return transferProgressChanged(_that.id,_that.progress,_that.total,_that.speed);case AppEvent_PeerConnectOrUpdated() when peerConnectOrUpdated != null:
return peerConnectOrUpdated(_that.peer);case AppEvent_PeerDisconnected() when peerDisconnected != null:
return peerDisconnected(_that.id);case AppEvent_TransferAdded() when transferAdded != null:
return transferAdded(_that.transfer);case AppEvent_TransferRemoved() when transferRemoved != null:
return transferRemoved(_that.id);case AppEvent_TransferClear() when transferClear != null:
return transferClear();case _:
return orElse();
}
}
/// A `switch`-like method, using callbacks.
///
/// As opposed to `map`, this offers destructuring.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case Subclass(:final field):
/// return ...;
/// case Subclass2(:final field2):
/// return ...;
/// }
/// ```
@optionalTypeArgs TResult when<TResult extends Object?>({required TResult Function( Transfer transfer) transferStatusChanged,required TResult Function( String id, double progress, double total, double speed) transferProgressChanged,required TResult Function( Peer peer) peerConnectOrUpdated,required TResult Function( String id) peerDisconnected,required TResult Function( Transfer transfer) transferAdded,required TResult Function( String id) transferRemoved,required TResult Function() transferClear,}) {final _that = this;
switch (_that) {
case AppEvent_TransferStatusChanged():
return transferStatusChanged(_that.transfer);case AppEvent_TransferProgressChanged():
return transferProgressChanged(_that.id,_that.progress,_that.total,_that.speed);case AppEvent_PeerConnectOrUpdated():
return peerConnectOrUpdated(_that.peer);case AppEvent_PeerDisconnected():
return peerDisconnected(_that.id);case AppEvent_TransferAdded():
return transferAdded(_that.transfer);case AppEvent_TransferRemoved():
return transferRemoved(_that.id);case AppEvent_TransferClear():
return transferClear();}
}
/// A variant of `when` that fallback to returning `null`
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case Subclass(:final field):
/// return ...;
/// case _:
/// return null;
/// }
/// ```
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>({TResult? Function( Transfer transfer)? transferStatusChanged,TResult? Function( String id, double progress, double total, double speed)? transferProgressChanged,TResult? Function( Peer peer)? peerConnectOrUpdated,TResult? Function( String id)? peerDisconnected,TResult? Function( Transfer transfer)? transferAdded,TResult? Function( String id)? transferRemoved,TResult? Function()? transferClear,}) {final _that = this;
switch (_that) {
case AppEvent_TransferStatusChanged() when transferStatusChanged != null:
return transferStatusChanged(_that.transfer);case AppEvent_TransferProgressChanged() when transferProgressChanged != null:
return transferProgressChanged(_that.id,_that.progress,_that.total,_that.speed);case AppEvent_PeerConnectOrUpdated() when peerConnectOrUpdated != null:
return peerConnectOrUpdated(_that.peer);case AppEvent_PeerDisconnected() when peerDisconnected != null:
return peerDisconnected(_that.id);case AppEvent_TransferAdded() when transferAdded != null:
return transferAdded(_that.transfer);case AppEvent_TransferRemoved() when transferRemoved != null:
return transferRemoved(_that.id);case AppEvent_TransferClear() when transferClear != null:
return transferClear();case _:
return null;
}
}
}
/// @nodoc
class AppEvent_TransferStatusChanged extends AppEvent {
const AppEvent_TransferStatusChanged({required this.transfer}): super._();
final Transfer transfer;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$AppEvent_TransferStatusChangedCopyWith<AppEvent_TransferStatusChanged> get copyWith => _$AppEvent_TransferStatusChangedCopyWithImpl<AppEvent_TransferStatusChanged>(this, _$identity);
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is AppEvent_TransferStatusChanged&&(identical(other.transfer, transfer) || other.transfer == transfer));
}
@override
int get hashCode => Object.hash(runtimeType,transfer);
@override
String toString() {
return 'AppEvent.transferStatusChanged(transfer: $transfer)';
}
}
/// @nodoc
abstract mixin class $AppEvent_TransferStatusChangedCopyWith<$Res> implements $AppEventCopyWith<$Res> {
factory $AppEvent_TransferStatusChangedCopyWith(AppEvent_TransferStatusChanged value, $Res Function(AppEvent_TransferStatusChanged) _then) = _$AppEvent_TransferStatusChangedCopyWithImpl;
@useResult
$Res call({
Transfer transfer
});
}
/// @nodoc
class _$AppEvent_TransferStatusChangedCopyWithImpl<$Res>
implements $AppEvent_TransferStatusChangedCopyWith<$Res> {
_$AppEvent_TransferStatusChangedCopyWithImpl(this._self, this._then);
final AppEvent_TransferStatusChanged _self;
final $Res Function(AppEvent_TransferStatusChanged) _then;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') $Res call({Object? transfer = null,}) {
return _then(AppEvent_TransferStatusChanged(
transfer: null == transfer ? _self.transfer : transfer // ignore: cast_nullable_to_non_nullable
as Transfer,
));
}
}
/// @nodoc
class AppEvent_TransferProgressChanged extends AppEvent {
const AppEvent_TransferProgressChanged({required this.id, required this.progress, required this.total, required this.speed}): super._();
final String id;
final double progress;
final double total;
final double speed;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$AppEvent_TransferProgressChangedCopyWith<AppEvent_TransferProgressChanged> get copyWith => _$AppEvent_TransferProgressChangedCopyWithImpl<AppEvent_TransferProgressChanged>(this, _$identity);
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is AppEvent_TransferProgressChanged&&(identical(other.id, id) || other.id == id)&&(identical(other.progress, progress) || other.progress == progress)&&(identical(other.total, total) || other.total == total)&&(identical(other.speed, speed) || other.speed == speed));
}
@override
int get hashCode => Object.hash(runtimeType,id,progress,total,speed);
@override
String toString() {
return 'AppEvent.transferProgressChanged(id: $id, progress: $progress, total: $total, speed: $speed)';
}
}
/// @nodoc
abstract mixin class $AppEvent_TransferProgressChangedCopyWith<$Res> implements $AppEventCopyWith<$Res> {
factory $AppEvent_TransferProgressChangedCopyWith(AppEvent_TransferProgressChanged value, $Res Function(AppEvent_TransferProgressChanged) _then) = _$AppEvent_TransferProgressChangedCopyWithImpl;
@useResult
$Res call({
String id, double progress, double total, double speed
});
}
/// @nodoc
class _$AppEvent_TransferProgressChangedCopyWithImpl<$Res>
implements $AppEvent_TransferProgressChangedCopyWith<$Res> {
_$AppEvent_TransferProgressChangedCopyWithImpl(this._self, this._then);
final AppEvent_TransferProgressChanged _self;
final $Res Function(AppEvent_TransferProgressChanged) _then;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') $Res call({Object? id = null,Object? progress = null,Object? total = null,Object? speed = null,}) {
return _then(AppEvent_TransferProgressChanged(
id: null == id ? _self.id : id // ignore: cast_nullable_to_non_nullable
as String,progress: null == progress ? _self.progress : progress // ignore: cast_nullable_to_non_nullable
as double,total: null == total ? _self.total : total // ignore: cast_nullable_to_non_nullable
as double,speed: null == speed ? _self.speed : speed // ignore: cast_nullable_to_non_nullable
as double,
));
}
}
/// @nodoc
class AppEvent_PeerConnectOrUpdated extends AppEvent {
const AppEvent_PeerConnectOrUpdated({required this.peer}): super._();
final Peer peer;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$AppEvent_PeerConnectOrUpdatedCopyWith<AppEvent_PeerConnectOrUpdated> get copyWith => _$AppEvent_PeerConnectOrUpdatedCopyWithImpl<AppEvent_PeerConnectOrUpdated>(this, _$identity);
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is AppEvent_PeerConnectOrUpdated&&(identical(other.peer, peer) || other.peer == peer));
}
@override
int get hashCode => Object.hash(runtimeType,peer);
@override
String toString() {
return 'AppEvent.peerConnectOrUpdated(peer: $peer)';
}
}
/// @nodoc
abstract mixin class $AppEvent_PeerConnectOrUpdatedCopyWith<$Res> implements $AppEventCopyWith<$Res> {
factory $AppEvent_PeerConnectOrUpdatedCopyWith(AppEvent_PeerConnectOrUpdated value, $Res Function(AppEvent_PeerConnectOrUpdated) _then) = _$AppEvent_PeerConnectOrUpdatedCopyWithImpl;
@useResult
$Res call({
Peer peer
});
}
/// @nodoc
class _$AppEvent_PeerConnectOrUpdatedCopyWithImpl<$Res>
implements $AppEvent_PeerConnectOrUpdatedCopyWith<$Res> {
_$AppEvent_PeerConnectOrUpdatedCopyWithImpl(this._self, this._then);
final AppEvent_PeerConnectOrUpdated _self;
final $Res Function(AppEvent_PeerConnectOrUpdated) _then;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') $Res call({Object? peer = null,}) {
return _then(AppEvent_PeerConnectOrUpdated(
peer: null == peer ? _self.peer : peer // ignore: cast_nullable_to_non_nullable
as Peer,
));
}
}
/// @nodoc
class AppEvent_PeerDisconnected extends AppEvent {
const AppEvent_PeerDisconnected({required this.id}): super._();
final String id;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$AppEvent_PeerDisconnectedCopyWith<AppEvent_PeerDisconnected> get copyWith => _$AppEvent_PeerDisconnectedCopyWithImpl<AppEvent_PeerDisconnected>(this, _$identity);
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is AppEvent_PeerDisconnected&&(identical(other.id, id) || other.id == id));
}
@override
int get hashCode => Object.hash(runtimeType,id);
@override
String toString() {
return 'AppEvent.peerDisconnected(id: $id)';
}
}
/// @nodoc
abstract mixin class $AppEvent_PeerDisconnectedCopyWith<$Res> implements $AppEventCopyWith<$Res> {
factory $AppEvent_PeerDisconnectedCopyWith(AppEvent_PeerDisconnected value, $Res Function(AppEvent_PeerDisconnected) _then) = _$AppEvent_PeerDisconnectedCopyWithImpl;
@useResult
$Res call({
String id
});
}
/// @nodoc
class _$AppEvent_PeerDisconnectedCopyWithImpl<$Res>
implements $AppEvent_PeerDisconnectedCopyWith<$Res> {
_$AppEvent_PeerDisconnectedCopyWithImpl(this._self, this._then);
final AppEvent_PeerDisconnected _self;
final $Res Function(AppEvent_PeerDisconnected) _then;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') $Res call({Object? id = null,}) {
return _then(AppEvent_PeerDisconnected(
id: null == id ? _self.id : id // ignore: cast_nullable_to_non_nullable
as String,
));
}
}
/// @nodoc
class AppEvent_TransferAdded extends AppEvent {
const AppEvent_TransferAdded({required this.transfer}): super._();
final Transfer transfer;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$AppEvent_TransferAddedCopyWith<AppEvent_TransferAdded> get copyWith => _$AppEvent_TransferAddedCopyWithImpl<AppEvent_TransferAdded>(this, _$identity);
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is AppEvent_TransferAdded&&(identical(other.transfer, transfer) || other.transfer == transfer));
}
@override
int get hashCode => Object.hash(runtimeType,transfer);
@override
String toString() {
return 'AppEvent.transferAdded(transfer: $transfer)';
}
}
/// @nodoc
abstract mixin class $AppEvent_TransferAddedCopyWith<$Res> implements $AppEventCopyWith<$Res> {
factory $AppEvent_TransferAddedCopyWith(AppEvent_TransferAdded value, $Res Function(AppEvent_TransferAdded) _then) = _$AppEvent_TransferAddedCopyWithImpl;
@useResult
$Res call({
Transfer transfer
});
}
/// @nodoc
class _$AppEvent_TransferAddedCopyWithImpl<$Res>
implements $AppEvent_TransferAddedCopyWith<$Res> {
_$AppEvent_TransferAddedCopyWithImpl(this._self, this._then);
final AppEvent_TransferAdded _self;
final $Res Function(AppEvent_TransferAdded) _then;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') $Res call({Object? transfer = null,}) {
return _then(AppEvent_TransferAdded(
transfer: null == transfer ? _self.transfer : transfer // ignore: cast_nullable_to_non_nullable
as Transfer,
));
}
}
/// @nodoc
class AppEvent_TransferRemoved extends AppEvent {
const AppEvent_TransferRemoved({required this.id}): super._();
final String id;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$AppEvent_TransferRemovedCopyWith<AppEvent_TransferRemoved> get copyWith => _$AppEvent_TransferRemovedCopyWithImpl<AppEvent_TransferRemoved>(this, _$identity);
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is AppEvent_TransferRemoved&&(identical(other.id, id) || other.id == id));
}
@override
int get hashCode => Object.hash(runtimeType,id);
@override
String toString() {
return 'AppEvent.transferRemoved(id: $id)';
}
}
/// @nodoc
abstract mixin class $AppEvent_TransferRemovedCopyWith<$Res> implements $AppEventCopyWith<$Res> {
factory $AppEvent_TransferRemovedCopyWith(AppEvent_TransferRemoved value, $Res Function(AppEvent_TransferRemoved) _then) = _$AppEvent_TransferRemovedCopyWithImpl;
@useResult
$Res call({
String id
});
}
/// @nodoc
class _$AppEvent_TransferRemovedCopyWithImpl<$Res>
implements $AppEvent_TransferRemovedCopyWith<$Res> {
_$AppEvent_TransferRemovedCopyWithImpl(this._self, this._then);
final AppEvent_TransferRemoved _self;
final $Res Function(AppEvent_TransferRemoved) _then;
/// Create a copy of AppEvent
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') $Res call({Object? id = null,}) {
return _then(AppEvent_TransferRemoved(
id: null == id ? _self.id : id // ignore: cast_nullable_to_non_nullable
as String,
));
}
}
/// @nodoc
class AppEvent_TransferClear extends AppEvent {
const AppEvent_TransferClear(): super._();
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is AppEvent_TransferClear);
}
@override
int get hashCode => runtimeType.hashCode;
@override
String toString() {
return 'AppEvent.transferClear()';
}
}
// dart format on

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,303 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.11.1.
// ignore_for_file: unused_import, unused_element, unnecessary_import, duplicate_ignore, invalid_use_of_internal_member, annotate_overrides, non_constant_identifier_names, curly_braces_in_flow_control_structures, prefer_const_literals_to_create_immutables, unused_field
import 'api/commands.dart';
import 'dart:async';
import 'dart:convert';
import 'dart:ffi' as ffi;
import 'discovery/model.dart';
import 'event.dart';
import 'frb_generated.dart';
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated_io.dart';
import 'transfer/model.dart';
abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
RustLibApiImplPlatform({
required super.handler,
required super.wire,
required super.generalizedFrbRustBinding,
required super.portManager,
});
@protected
AnyhowException dco_decode_AnyhowException(dynamic raw);
@protected
Map<String, RouteState> dco_decode_Map_String_route_state_None(dynamic raw);
@protected
RustStreamSink<AppEvent> dco_decode_StreamSink_app_event_Sse(dynamic raw);
@protected
String dco_decode_String(dynamic raw);
@protected
AppEvent dco_decode_app_event(dynamic raw);
@protected
bool dco_decode_bool(dynamic raw);
@protected
Peer dco_decode_box_autoadd_peer(dynamic raw);
@protected
Transfer dco_decode_box_autoadd_transfer(dynamic raw);
@protected
CanceledBy dco_decode_canceled_by(dynamic raw);
@protected
ContentType dco_decode_content_type(dynamic raw);
@protected
double dco_decode_f_64(dynamic raw);
@protected
int dco_decode_i_32(dynamic raw);
@protected
PlatformInt64 dco_decode_i_64(dynamic raw);
@protected
List<Peer> dco_decode_list_peer(dynamic raw);
@protected
Uint8List dco_decode_list_prim_u_8_strict(dynamic raw);
@protected
List<(String, RouteState)> dco_decode_list_record_string_route_state(
dynamic raw,
);
@protected
List<Transfer> dco_decode_list_transfer(dynamic raw);
@protected
Peer dco_decode_peer(dynamic raw);
@protected
(String, RouteState) dco_decode_record_string_route_state(dynamic raw);
@protected
RouteState dco_decode_route_state(dynamic raw);
@protected
Transfer dco_decode_transfer(dynamic raw);
@protected
TransferStatus dco_decode_transfer_status(dynamic raw);
@protected
TransferType dco_decode_transfer_type(dynamic raw);
@protected
int dco_decode_u_16(dynamic raw);
@protected
int dco_decode_u_8(dynamic raw);
@protected
void dco_decode_unit(dynamic raw);
@protected
AnyhowException sse_decode_AnyhowException(SseDeserializer deserializer);
@protected
Map<String, RouteState> sse_decode_Map_String_route_state_None(
SseDeserializer deserializer,
);
@protected
RustStreamSink<AppEvent> sse_decode_StreamSink_app_event_Sse(
SseDeserializer deserializer,
);
@protected
String sse_decode_String(SseDeserializer deserializer);
@protected
AppEvent sse_decode_app_event(SseDeserializer deserializer);
@protected
bool sse_decode_bool(SseDeserializer deserializer);
@protected
Peer sse_decode_box_autoadd_peer(SseDeserializer deserializer);
@protected
Transfer sse_decode_box_autoadd_transfer(SseDeserializer deserializer);
@protected
CanceledBy sse_decode_canceled_by(SseDeserializer deserializer);
@protected
ContentType sse_decode_content_type(SseDeserializer deserializer);
@protected
double sse_decode_f_64(SseDeserializer deserializer);
@protected
int sse_decode_i_32(SseDeserializer deserializer);
@protected
PlatformInt64 sse_decode_i_64(SseDeserializer deserializer);
@protected
List<Peer> sse_decode_list_peer(SseDeserializer deserializer);
@protected
Uint8List sse_decode_list_prim_u_8_strict(SseDeserializer deserializer);
@protected
List<(String, RouteState)> sse_decode_list_record_string_route_state(
SseDeserializer deserializer,
);
@protected
List<Transfer> sse_decode_list_transfer(SseDeserializer deserializer);
@protected
Peer sse_decode_peer(SseDeserializer deserializer);
@protected
(String, RouteState) sse_decode_record_string_route_state(
SseDeserializer deserializer,
);
@protected
RouteState sse_decode_route_state(SseDeserializer deserializer);
@protected
Transfer sse_decode_transfer(SseDeserializer deserializer);
@protected
TransferStatus sse_decode_transfer_status(SseDeserializer deserializer);
@protected
TransferType sse_decode_transfer_type(SseDeserializer deserializer);
@protected
int sse_decode_u_16(SseDeserializer deserializer);
@protected
int sse_decode_u_8(SseDeserializer deserializer);
@protected
void sse_decode_unit(SseDeserializer deserializer);
@protected
void sse_encode_AnyhowException(
AnyhowException self,
SseSerializer serializer,
);
@protected
void sse_encode_Map_String_route_state_None(
Map<String, RouteState> self,
SseSerializer serializer,
);
@protected
void sse_encode_StreamSink_app_event_Sse(
RustStreamSink<AppEvent> self,
SseSerializer serializer,
);
@protected
void sse_encode_String(String self, SseSerializer serializer);
@protected
void sse_encode_app_event(AppEvent self, SseSerializer serializer);
@protected
void sse_encode_bool(bool self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_peer(Peer self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_transfer(Transfer self, SseSerializer serializer);
@protected
void sse_encode_canceled_by(CanceledBy self, SseSerializer serializer);
@protected
void sse_encode_content_type(ContentType self, SseSerializer serializer);
@protected
void sse_encode_f_64(double self, SseSerializer serializer);
@protected
void sse_encode_i_32(int self, SseSerializer serializer);
@protected
void sse_encode_i_64(PlatformInt64 self, SseSerializer serializer);
@protected
void sse_encode_list_peer(List<Peer> self, SseSerializer serializer);
@protected
void sse_encode_list_prim_u_8_strict(
Uint8List self,
SseSerializer serializer,
);
@protected
void sse_encode_list_record_string_route_state(
List<(String, RouteState)> self,
SseSerializer serializer,
);
@protected
void sse_encode_list_transfer(List<Transfer> self, SseSerializer serializer);
@protected
void sse_encode_peer(Peer self, SseSerializer serializer);
@protected
void sse_encode_record_string_route_state(
(String, RouteState) self,
SseSerializer serializer,
);
@protected
void sse_encode_route_state(RouteState self, SseSerializer serializer);
@protected
void sse_encode_transfer(Transfer self, SseSerializer serializer);
@protected
void sse_encode_transfer_status(
TransferStatus self,
SseSerializer serializer,
);
@protected
void sse_encode_transfer_type(TransferType self, SseSerializer serializer);
@protected
void sse_encode_u_16(int self, SseSerializer serializer);
@protected
void sse_encode_u_8(int self, SseSerializer serializer);
@protected
void sse_encode_unit(void self, SseSerializer serializer);
}
// Section: wire_class
class RustLibWire implements BaseWire {
factory RustLibWire.fromExternalLibrary(ExternalLibrary lib) =>
RustLibWire(lib.ffiDynamicLibrary);
/// Holds the symbol lookup function.
final ffi.Pointer<T> Function<T extends ffi.NativeType>(String symbolName)
_lookup;
/// The symbols are looked up in [dynamicLibrary].
RustLibWire(ffi.DynamicLibrary dynamicLibrary)
: _lookup = dynamicLibrary.lookup;
}

View File

@@ -0,0 +1,303 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.11.1.
// ignore_for_file: unused_import, unused_element, unnecessary_import, duplicate_ignore, invalid_use_of_internal_member, annotate_overrides, non_constant_identifier_names, curly_braces_in_flow_control_structures, prefer_const_literals_to_create_immutables, unused_field
// Static analysis wrongly picks the IO variant, thus ignore this
// ignore_for_file: argument_type_not_assignable
import 'api/commands.dart';
import 'dart:async';
import 'dart:convert';
import 'discovery/model.dart';
import 'event.dart';
import 'frb_generated.dart';
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated_web.dart';
import 'transfer/model.dart';
abstract class RustLibApiImplPlatform extends BaseApiImpl<RustLibWire> {
RustLibApiImplPlatform({
required super.handler,
required super.wire,
required super.generalizedFrbRustBinding,
required super.portManager,
});
@protected
AnyhowException dco_decode_AnyhowException(dynamic raw);
@protected
Map<String, RouteState> dco_decode_Map_String_route_state_None(dynamic raw);
@protected
RustStreamSink<AppEvent> dco_decode_StreamSink_app_event_Sse(dynamic raw);
@protected
String dco_decode_String(dynamic raw);
@protected
AppEvent dco_decode_app_event(dynamic raw);
@protected
bool dco_decode_bool(dynamic raw);
@protected
Peer dco_decode_box_autoadd_peer(dynamic raw);
@protected
Transfer dco_decode_box_autoadd_transfer(dynamic raw);
@protected
CanceledBy dco_decode_canceled_by(dynamic raw);
@protected
ContentType dco_decode_content_type(dynamic raw);
@protected
double dco_decode_f_64(dynamic raw);
@protected
int dco_decode_i_32(dynamic raw);
@protected
PlatformInt64 dco_decode_i_64(dynamic raw);
@protected
List<Peer> dco_decode_list_peer(dynamic raw);
@protected
Uint8List dco_decode_list_prim_u_8_strict(dynamic raw);
@protected
List<(String, RouteState)> dco_decode_list_record_string_route_state(
dynamic raw,
);
@protected
List<Transfer> dco_decode_list_transfer(dynamic raw);
@protected
Peer dco_decode_peer(dynamic raw);
@protected
(String, RouteState) dco_decode_record_string_route_state(dynamic raw);
@protected
RouteState dco_decode_route_state(dynamic raw);
@protected
Transfer dco_decode_transfer(dynamic raw);
@protected
TransferStatus dco_decode_transfer_status(dynamic raw);
@protected
TransferType dco_decode_transfer_type(dynamic raw);
@protected
int dco_decode_u_16(dynamic raw);
@protected
int dco_decode_u_8(dynamic raw);
@protected
void dco_decode_unit(dynamic raw);
@protected
AnyhowException sse_decode_AnyhowException(SseDeserializer deserializer);
@protected
Map<String, RouteState> sse_decode_Map_String_route_state_None(
SseDeserializer deserializer,
);
@protected
RustStreamSink<AppEvent> sse_decode_StreamSink_app_event_Sse(
SseDeserializer deserializer,
);
@protected
String sse_decode_String(SseDeserializer deserializer);
@protected
AppEvent sse_decode_app_event(SseDeserializer deserializer);
@protected
bool sse_decode_bool(SseDeserializer deserializer);
@protected
Peer sse_decode_box_autoadd_peer(SseDeserializer deserializer);
@protected
Transfer sse_decode_box_autoadd_transfer(SseDeserializer deserializer);
@protected
CanceledBy sse_decode_canceled_by(SseDeserializer deserializer);
@protected
ContentType sse_decode_content_type(SseDeserializer deserializer);
@protected
double sse_decode_f_64(SseDeserializer deserializer);
@protected
int sse_decode_i_32(SseDeserializer deserializer);
@protected
PlatformInt64 sse_decode_i_64(SseDeserializer deserializer);
@protected
List<Peer> sse_decode_list_peer(SseDeserializer deserializer);
@protected
Uint8List sse_decode_list_prim_u_8_strict(SseDeserializer deserializer);
@protected
List<(String, RouteState)> sse_decode_list_record_string_route_state(
SseDeserializer deserializer,
);
@protected
List<Transfer> sse_decode_list_transfer(SseDeserializer deserializer);
@protected
Peer sse_decode_peer(SseDeserializer deserializer);
@protected
(String, RouteState) sse_decode_record_string_route_state(
SseDeserializer deserializer,
);
@protected
RouteState sse_decode_route_state(SseDeserializer deserializer);
@protected
Transfer sse_decode_transfer(SseDeserializer deserializer);
@protected
TransferStatus sse_decode_transfer_status(SseDeserializer deserializer);
@protected
TransferType sse_decode_transfer_type(SseDeserializer deserializer);
@protected
int sse_decode_u_16(SseDeserializer deserializer);
@protected
int sse_decode_u_8(SseDeserializer deserializer);
@protected
void sse_decode_unit(SseDeserializer deserializer);
@protected
void sse_encode_AnyhowException(
AnyhowException self,
SseSerializer serializer,
);
@protected
void sse_encode_Map_String_route_state_None(
Map<String, RouteState> self,
SseSerializer serializer,
);
@protected
void sse_encode_StreamSink_app_event_Sse(
RustStreamSink<AppEvent> self,
SseSerializer serializer,
);
@protected
void sse_encode_String(String self, SseSerializer serializer);
@protected
void sse_encode_app_event(AppEvent self, SseSerializer serializer);
@protected
void sse_encode_bool(bool self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_peer(Peer self, SseSerializer serializer);
@protected
void sse_encode_box_autoadd_transfer(Transfer self, SseSerializer serializer);
@protected
void sse_encode_canceled_by(CanceledBy self, SseSerializer serializer);
@protected
void sse_encode_content_type(ContentType self, SseSerializer serializer);
@protected
void sse_encode_f_64(double self, SseSerializer serializer);
@protected
void sse_encode_i_32(int self, SseSerializer serializer);
@protected
void sse_encode_i_64(PlatformInt64 self, SseSerializer serializer);
@protected
void sse_encode_list_peer(List<Peer> self, SseSerializer serializer);
@protected
void sse_encode_list_prim_u_8_strict(
Uint8List self,
SseSerializer serializer,
);
@protected
void sse_encode_list_record_string_route_state(
List<(String, RouteState)> self,
SseSerializer serializer,
);
@protected
void sse_encode_list_transfer(List<Transfer> self, SseSerializer serializer);
@protected
void sse_encode_peer(Peer self, SseSerializer serializer);
@protected
void sse_encode_record_string_route_state(
(String, RouteState) self,
SseSerializer serializer,
);
@protected
void sse_encode_route_state(RouteState self, SseSerializer serializer);
@protected
void sse_encode_transfer(Transfer self, SseSerializer serializer);
@protected
void sse_encode_transfer_status(
TransferStatus self,
SseSerializer serializer,
);
@protected
void sse_encode_transfer_type(TransferType self, SseSerializer serializer);
@protected
void sse_encode_u_16(int self, SseSerializer serializer);
@protected
void sse_encode_u_8(int self, SseSerializer serializer);
@protected
void sse_encode_unit(void self, SseSerializer serializer);
}
// Section: wire_class
class RustLibWire implements BaseWire {
RustLibWire.fromExternalLibrary(ExternalLibrary lib);
}
@JS('wasm_bindgen')
external RustLibWasmModule get wasmModule;
@JS()
@anonymous
extension type RustLibWasmModule._(JSObject _) implements JSObject {}

View File

@@ -0,0 +1,109 @@
// This file is automatically generated, so please do not edit it.
// @generated by `flutter_rust_bridge`@ 2.11.1.
// ignore_for_file: invalid_use_of_internal_member, unused_import, unnecessary_import
import '../discovery/model.dart';
import '../frb_generated.dart';
import 'package:flutter_rust_bridge/flutter_rust_bridge_for_generated.dart';
import 'package:freezed_annotation/freezed_annotation.dart' hide protected;
part 'model.freezed.dart';
enum CanceledBy { sender, receiver }
enum ContentType { file, text, folder }
class Transfer {
final String id;
final double createTime;
final Peer sender;
final String senderIp;
final String fileName;
final double fileSize;
final String savePath;
final TransferStatus status;
final TransferType type;
final ContentType contentType;
final String text;
final String errorMsg;
final String token;
final double progress;
final PlatformInt64 lastReadTime;
final double speed;
const Transfer({
required this.id,
required this.createTime,
required this.sender,
required this.senderIp,
required this.fileName,
required this.fileSize,
required this.savePath,
required this.status,
required this.type,
required this.contentType,
required this.text,
required this.errorMsg,
required this.token,
required this.progress,
required this.lastReadTime,
required this.speed,
});
@override
int get hashCode =>
id.hashCode ^
createTime.hashCode ^
sender.hashCode ^
senderIp.hashCode ^
fileName.hashCode ^
fileSize.hashCode ^
savePath.hashCode ^
status.hashCode ^
type.hashCode ^
contentType.hashCode ^
text.hashCode ^
errorMsg.hashCode ^
token.hashCode ^
progress.hashCode ^
lastReadTime.hashCode ^
speed.hashCode;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is Transfer &&
runtimeType == other.runtimeType &&
id == other.id &&
createTime == other.createTime &&
sender == other.sender &&
senderIp == other.senderIp &&
fileName == other.fileName &&
fileSize == other.fileSize &&
savePath == other.savePath &&
status == other.status &&
type == other.type &&
contentType == other.contentType &&
text == other.text &&
errorMsg == other.errorMsg &&
token == other.token &&
progress == other.progress &&
lastReadTime == other.lastReadTime &&
speed == other.speed;
}
@freezed
sealed class TransferStatus with _$TransferStatus {
const TransferStatus._();
const factory TransferStatus.pending() = TransferStatus_Pending;
const factory TransferStatus.accepted() = TransferStatus_Accepted;
const factory TransferStatus.rejected() = TransferStatus_Rejected;
const factory TransferStatus.completed() = TransferStatus_Completed;
const factory TransferStatus.error() = TransferStatus_Error;
const factory TransferStatus.canceled(CanceledBy field0) =
TransferStatus_Canceled;
const factory TransferStatus.active() = TransferStatus_Active;
}
enum TransferType { send, receive }

View File

@@ -0,0 +1,462 @@
// GENERATED CODE - DO NOT MODIFY BY HAND
// coverage:ignore-file
// ignore_for_file: type=lint
// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides, invalid_annotation_target, unnecessary_question_mark
part of 'model.dart';
// **************************************************************************
// FreezedGenerator
// **************************************************************************
// dart format off
T _$identity<T>(T value) => value;
/// @nodoc
mixin _$TransferStatus {
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is TransferStatus);
}
@override
int get hashCode => runtimeType.hashCode;
@override
String toString() {
return 'TransferStatus()';
}
}
/// @nodoc
class $TransferStatusCopyWith<$Res> {
$TransferStatusCopyWith(TransferStatus _, $Res Function(TransferStatus) __);
}
/// Adds pattern-matching-related methods to [TransferStatus].
extension TransferStatusPatterns on TransferStatus {
/// A variant of `map` that fallback to returning `orElse`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case final Subclass value:
/// return ...;
/// case _:
/// return orElse();
/// }
/// ```
@optionalTypeArgs TResult maybeMap<TResult extends Object?>({TResult Function( TransferStatus_Pending value)? pending,TResult Function( TransferStatus_Accepted value)? accepted,TResult Function( TransferStatus_Rejected value)? rejected,TResult Function( TransferStatus_Completed value)? completed,TResult Function( TransferStatus_Error value)? error,TResult Function( TransferStatus_Canceled value)? canceled,TResult Function( TransferStatus_Active value)? active,required TResult orElse(),}){
final _that = this;
switch (_that) {
case TransferStatus_Pending() when pending != null:
return pending(_that);case TransferStatus_Accepted() when accepted != null:
return accepted(_that);case TransferStatus_Rejected() when rejected != null:
return rejected(_that);case TransferStatus_Completed() when completed != null:
return completed(_that);case TransferStatus_Error() when error != null:
return error(_that);case TransferStatus_Canceled() when canceled != null:
return canceled(_that);case TransferStatus_Active() when active != null:
return active(_that);case _:
return orElse();
}
}
/// A `switch`-like method, using callbacks.
///
/// Callbacks receives the raw object, upcasted.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case final Subclass value:
/// return ...;
/// case final Subclass2 value:
/// return ...;
/// }
/// ```
@optionalTypeArgs TResult map<TResult extends Object?>({required TResult Function( TransferStatus_Pending value) pending,required TResult Function( TransferStatus_Accepted value) accepted,required TResult Function( TransferStatus_Rejected value) rejected,required TResult Function( TransferStatus_Completed value) completed,required TResult Function( TransferStatus_Error value) error,required TResult Function( TransferStatus_Canceled value) canceled,required TResult Function( TransferStatus_Active value) active,}){
final _that = this;
switch (_that) {
case TransferStatus_Pending():
return pending(_that);case TransferStatus_Accepted():
return accepted(_that);case TransferStatus_Rejected():
return rejected(_that);case TransferStatus_Completed():
return completed(_that);case TransferStatus_Error():
return error(_that);case TransferStatus_Canceled():
return canceled(_that);case TransferStatus_Active():
return active(_that);}
}
/// A variant of `map` that fallback to returning `null`.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case final Subclass value:
/// return ...;
/// case _:
/// return null;
/// }
/// ```
@optionalTypeArgs TResult? mapOrNull<TResult extends Object?>({TResult? Function( TransferStatus_Pending value)? pending,TResult? Function( TransferStatus_Accepted value)? accepted,TResult? Function( TransferStatus_Rejected value)? rejected,TResult? Function( TransferStatus_Completed value)? completed,TResult? Function( TransferStatus_Error value)? error,TResult? Function( TransferStatus_Canceled value)? canceled,TResult? Function( TransferStatus_Active value)? active,}){
final _that = this;
switch (_that) {
case TransferStatus_Pending() when pending != null:
return pending(_that);case TransferStatus_Accepted() when accepted != null:
return accepted(_that);case TransferStatus_Rejected() when rejected != null:
return rejected(_that);case TransferStatus_Completed() when completed != null:
return completed(_that);case TransferStatus_Error() when error != null:
return error(_that);case TransferStatus_Canceled() when canceled != null:
return canceled(_that);case TransferStatus_Active() when active != null:
return active(_that);case _:
return null;
}
}
/// A variant of `when` that fallback to an `orElse` callback.
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case Subclass(:final field):
/// return ...;
/// case _:
/// return orElse();
/// }
/// ```
@optionalTypeArgs TResult maybeWhen<TResult extends Object?>({TResult Function()? pending,TResult Function()? accepted,TResult Function()? rejected,TResult Function()? completed,TResult Function()? error,TResult Function( CanceledBy field0)? canceled,TResult Function()? active,required TResult orElse(),}) {final _that = this;
switch (_that) {
case TransferStatus_Pending() when pending != null:
return pending();case TransferStatus_Accepted() when accepted != null:
return accepted();case TransferStatus_Rejected() when rejected != null:
return rejected();case TransferStatus_Completed() when completed != null:
return completed();case TransferStatus_Error() when error != null:
return error();case TransferStatus_Canceled() when canceled != null:
return canceled(_that.field0);case TransferStatus_Active() when active != null:
return active();case _:
return orElse();
}
}
/// A `switch`-like method, using callbacks.
///
/// As opposed to `map`, this offers destructuring.
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case Subclass(:final field):
/// return ...;
/// case Subclass2(:final field2):
/// return ...;
/// }
/// ```
@optionalTypeArgs TResult when<TResult extends Object?>({required TResult Function() pending,required TResult Function() accepted,required TResult Function() rejected,required TResult Function() completed,required TResult Function() error,required TResult Function( CanceledBy field0) canceled,required TResult Function() active,}) {final _that = this;
switch (_that) {
case TransferStatus_Pending():
return pending();case TransferStatus_Accepted():
return accepted();case TransferStatus_Rejected():
return rejected();case TransferStatus_Completed():
return completed();case TransferStatus_Error():
return error();case TransferStatus_Canceled():
return canceled(_that.field0);case TransferStatus_Active():
return active();}
}
/// A variant of `when` that fallback to returning `null`
///
/// It is equivalent to doing:
/// ```dart
/// switch (sealedClass) {
/// case Subclass(:final field):
/// return ...;
/// case _:
/// return null;
/// }
/// ```
@optionalTypeArgs TResult? whenOrNull<TResult extends Object?>({TResult? Function()? pending,TResult? Function()? accepted,TResult? Function()? rejected,TResult? Function()? completed,TResult? Function()? error,TResult? Function( CanceledBy field0)? canceled,TResult? Function()? active,}) {final _that = this;
switch (_that) {
case TransferStatus_Pending() when pending != null:
return pending();case TransferStatus_Accepted() when accepted != null:
return accepted();case TransferStatus_Rejected() when rejected != null:
return rejected();case TransferStatus_Completed() when completed != null:
return completed();case TransferStatus_Error() when error != null:
return error();case TransferStatus_Canceled() when canceled != null:
return canceled(_that.field0);case TransferStatus_Active() when active != null:
return active();case _:
return null;
}
}
}
/// @nodoc
class TransferStatus_Pending extends TransferStatus {
const TransferStatus_Pending(): super._();
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is TransferStatus_Pending);
}
@override
int get hashCode => runtimeType.hashCode;
@override
String toString() {
return 'TransferStatus.pending()';
}
}
/// @nodoc
class TransferStatus_Accepted extends TransferStatus {
const TransferStatus_Accepted(): super._();
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is TransferStatus_Accepted);
}
@override
int get hashCode => runtimeType.hashCode;
@override
String toString() {
return 'TransferStatus.accepted()';
}
}
/// @nodoc
class TransferStatus_Rejected extends TransferStatus {
const TransferStatus_Rejected(): super._();
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is TransferStatus_Rejected);
}
@override
int get hashCode => runtimeType.hashCode;
@override
String toString() {
return 'TransferStatus.rejected()';
}
}
/// @nodoc
class TransferStatus_Completed extends TransferStatus {
const TransferStatus_Completed(): super._();
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is TransferStatus_Completed);
}
@override
int get hashCode => runtimeType.hashCode;
@override
String toString() {
return 'TransferStatus.completed()';
}
}
/// @nodoc
class TransferStatus_Error extends TransferStatus {
const TransferStatus_Error(): super._();
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is TransferStatus_Error);
}
@override
int get hashCode => runtimeType.hashCode;
@override
String toString() {
return 'TransferStatus.error()';
}
}
/// @nodoc
class TransferStatus_Canceled extends TransferStatus {
const TransferStatus_Canceled(this.field0): super._();
final CanceledBy field0;
/// Create a copy of TransferStatus
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@pragma('vm:prefer-inline')
$TransferStatus_CanceledCopyWith<TransferStatus_Canceled> get copyWith => _$TransferStatus_CanceledCopyWithImpl<TransferStatus_Canceled>(this, _$identity);
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is TransferStatus_Canceled&&(identical(other.field0, field0) || other.field0 == field0));
}
@override
int get hashCode => Object.hash(runtimeType,field0);
@override
String toString() {
return 'TransferStatus.canceled(field0: $field0)';
}
}
/// @nodoc
abstract mixin class $TransferStatus_CanceledCopyWith<$Res> implements $TransferStatusCopyWith<$Res> {
factory $TransferStatus_CanceledCopyWith(TransferStatus_Canceled value, $Res Function(TransferStatus_Canceled) _then) = _$TransferStatus_CanceledCopyWithImpl;
@useResult
$Res call({
CanceledBy field0
});
}
/// @nodoc
class _$TransferStatus_CanceledCopyWithImpl<$Res>
implements $TransferStatus_CanceledCopyWith<$Res> {
_$TransferStatus_CanceledCopyWithImpl(this._self, this._then);
final TransferStatus_Canceled _self;
final $Res Function(TransferStatus_Canceled) _then;
/// Create a copy of TransferStatus
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline') $Res call({Object? field0 = null,}) {
return _then(TransferStatus_Canceled(
null == field0 ? _self.field0 : field0 // ignore: cast_nullable_to_non_nullable
as CanceledBy,
));
}
}
/// @nodoc
class TransferStatus_Active extends TransferStatus {
const TransferStatus_Active(): super._();
@override
bool operator ==(Object other) {
return identical(this, other) || (other.runtimeType == runtimeType&&other is TransferStatus_Active);
}
@override
int get hashCode => runtimeType.hashCode;
@override
String toString() {
return 'TransferStatus.active()';
}
}
// dart format on