Files
MWClash/lib/models/generated/clash_config.freezed.dart
chen08209 676f2d058a Add windows server mode start process verify
Add linux deb dependencies

Add backup recovery strategy select

Support custom text scaling

Optimize the display of different text scale

Optimize windows setup experience

Optimize startTun performance

Optimize android tv experience

Optimize default option

Optimize computed text size

Optimize hyperOS freeform window

Add developer mode

Update core

Optimize more details
2025-05-01 00:02:29 +08:00

3495 lines
114 KiB
Dart

// coverage:ignore-file
// GENERATED CODE - DO NOT MODIFY BY HAND
// 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 '../clash_config.dart';
// **************************************************************************
// FreezedGenerator
// **************************************************************************
T _$identity<T>(T value) => value;
final _privateConstructorUsedError = UnsupportedError(
'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more information: https://github.com/rrousselGit/freezed#adding-getters-and-methods-to-our-models');
ProxyGroup _$ProxyGroupFromJson(Map<String, dynamic> json) {
return _ProxyGroup.fromJson(json);
}
/// @nodoc
mixin _$ProxyGroup {
String get name => throw _privateConstructorUsedError;
@JsonKey(fromJson: GroupType.parseProfileType)
GroupType get type => throw _privateConstructorUsedError;
List<String>? get proxies => throw _privateConstructorUsedError;
List<String>? get use => throw _privateConstructorUsedError;
int? get interval => throw _privateConstructorUsedError;
bool? get lazy => throw _privateConstructorUsedError;
String? get url => throw _privateConstructorUsedError;
int? get timeout => throw _privateConstructorUsedError;
@JsonKey(name: "max-failed-times")
int? get maxFailedTimes => throw _privateConstructorUsedError;
String? get filter => throw _privateConstructorUsedError;
@JsonKey(name: "expected-filter")
String? get excludeFilter => throw _privateConstructorUsedError;
@JsonKey(name: "exclude-type")
String? get excludeType => throw _privateConstructorUsedError;
@JsonKey(name: "expected-status")
dynamic get expectedStatus => throw _privateConstructorUsedError;
bool? get hidden => throw _privateConstructorUsedError;
String? get icon => throw _privateConstructorUsedError;
/// Serializes this ProxyGroup to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of ProxyGroup
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$ProxyGroupCopyWith<ProxyGroup> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $ProxyGroupCopyWith<$Res> {
factory $ProxyGroupCopyWith(
ProxyGroup value, $Res Function(ProxyGroup) then) =
_$ProxyGroupCopyWithImpl<$Res, ProxyGroup>;
@useResult
$Res call(
{String name,
@JsonKey(fromJson: GroupType.parseProfileType) GroupType type,
List<String>? proxies,
List<String>? use,
int? interval,
bool? lazy,
String? url,
int? timeout,
@JsonKey(name: "max-failed-times") int? maxFailedTimes,
String? filter,
@JsonKey(name: "expected-filter") String? excludeFilter,
@JsonKey(name: "exclude-type") String? excludeType,
@JsonKey(name: "expected-status") dynamic expectedStatus,
bool? hidden,
String? icon});
}
/// @nodoc
class _$ProxyGroupCopyWithImpl<$Res, $Val extends ProxyGroup>
implements $ProxyGroupCopyWith<$Res> {
_$ProxyGroupCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of ProxyGroup
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? name = null,
Object? type = null,
Object? proxies = freezed,
Object? use = freezed,
Object? interval = freezed,
Object? lazy = freezed,
Object? url = freezed,
Object? timeout = freezed,
Object? maxFailedTimes = freezed,
Object? filter = freezed,
Object? excludeFilter = freezed,
Object? excludeType = freezed,
Object? expectedStatus = freezed,
Object? hidden = freezed,
Object? icon = freezed,
}) {
return _then(_value.copyWith(
name: null == name
? _value.name
: name // ignore: cast_nullable_to_non_nullable
as String,
type: null == type
? _value.type
: type // ignore: cast_nullable_to_non_nullable
as GroupType,
proxies: freezed == proxies
? _value.proxies
: proxies // ignore: cast_nullable_to_non_nullable
as List<String>?,
use: freezed == use
? _value.use
: use // ignore: cast_nullable_to_non_nullable
as List<String>?,
interval: freezed == interval
? _value.interval
: interval // ignore: cast_nullable_to_non_nullable
as int?,
lazy: freezed == lazy
? _value.lazy
: lazy // ignore: cast_nullable_to_non_nullable
as bool?,
url: freezed == url
? _value.url
: url // ignore: cast_nullable_to_non_nullable
as String?,
timeout: freezed == timeout
? _value.timeout
: timeout // ignore: cast_nullable_to_non_nullable
as int?,
maxFailedTimes: freezed == maxFailedTimes
? _value.maxFailedTimes
: maxFailedTimes // ignore: cast_nullable_to_non_nullable
as int?,
filter: freezed == filter
? _value.filter
: filter // ignore: cast_nullable_to_non_nullable
as String?,
excludeFilter: freezed == excludeFilter
? _value.excludeFilter
: excludeFilter // ignore: cast_nullable_to_non_nullable
as String?,
excludeType: freezed == excludeType
? _value.excludeType
: excludeType // ignore: cast_nullable_to_non_nullable
as String?,
expectedStatus: freezed == expectedStatus
? _value.expectedStatus
: expectedStatus // ignore: cast_nullable_to_non_nullable
as dynamic,
hidden: freezed == hidden
? _value.hidden
: hidden // ignore: cast_nullable_to_non_nullable
as bool?,
icon: freezed == icon
? _value.icon
: icon // ignore: cast_nullable_to_non_nullable
as String?,
) as $Val);
}
}
/// @nodoc
abstract class _$$ProxyGroupImplCopyWith<$Res>
implements $ProxyGroupCopyWith<$Res> {
factory _$$ProxyGroupImplCopyWith(
_$ProxyGroupImpl value, $Res Function(_$ProxyGroupImpl) then) =
__$$ProxyGroupImplCopyWithImpl<$Res>;
@override
@useResult
$Res call(
{String name,
@JsonKey(fromJson: GroupType.parseProfileType) GroupType type,
List<String>? proxies,
List<String>? use,
int? interval,
bool? lazy,
String? url,
int? timeout,
@JsonKey(name: "max-failed-times") int? maxFailedTimes,
String? filter,
@JsonKey(name: "expected-filter") String? excludeFilter,
@JsonKey(name: "exclude-type") String? excludeType,
@JsonKey(name: "expected-status") dynamic expectedStatus,
bool? hidden,
String? icon});
}
/// @nodoc
class __$$ProxyGroupImplCopyWithImpl<$Res>
extends _$ProxyGroupCopyWithImpl<$Res, _$ProxyGroupImpl>
implements _$$ProxyGroupImplCopyWith<$Res> {
__$$ProxyGroupImplCopyWithImpl(
_$ProxyGroupImpl _value, $Res Function(_$ProxyGroupImpl) _then)
: super(_value, _then);
/// Create a copy of ProxyGroup
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? name = null,
Object? type = null,
Object? proxies = freezed,
Object? use = freezed,
Object? interval = freezed,
Object? lazy = freezed,
Object? url = freezed,
Object? timeout = freezed,
Object? maxFailedTimes = freezed,
Object? filter = freezed,
Object? excludeFilter = freezed,
Object? excludeType = freezed,
Object? expectedStatus = freezed,
Object? hidden = freezed,
Object? icon = freezed,
}) {
return _then(_$ProxyGroupImpl(
name: null == name
? _value.name
: name // ignore: cast_nullable_to_non_nullable
as String,
type: null == type
? _value.type
: type // ignore: cast_nullable_to_non_nullable
as GroupType,
proxies: freezed == proxies
? _value._proxies
: proxies // ignore: cast_nullable_to_non_nullable
as List<String>?,
use: freezed == use
? _value._use
: use // ignore: cast_nullable_to_non_nullable
as List<String>?,
interval: freezed == interval
? _value.interval
: interval // ignore: cast_nullable_to_non_nullable
as int?,
lazy: freezed == lazy
? _value.lazy
: lazy // ignore: cast_nullable_to_non_nullable
as bool?,
url: freezed == url
? _value.url
: url // ignore: cast_nullable_to_non_nullable
as String?,
timeout: freezed == timeout
? _value.timeout
: timeout // ignore: cast_nullable_to_non_nullable
as int?,
maxFailedTimes: freezed == maxFailedTimes
? _value.maxFailedTimes
: maxFailedTimes // ignore: cast_nullable_to_non_nullable
as int?,
filter: freezed == filter
? _value.filter
: filter // ignore: cast_nullable_to_non_nullable
as String?,
excludeFilter: freezed == excludeFilter
? _value.excludeFilter
: excludeFilter // ignore: cast_nullable_to_non_nullable
as String?,
excludeType: freezed == excludeType
? _value.excludeType
: excludeType // ignore: cast_nullable_to_non_nullable
as String?,
expectedStatus: freezed == expectedStatus
? _value.expectedStatus
: expectedStatus // ignore: cast_nullable_to_non_nullable
as dynamic,
hidden: freezed == hidden
? _value.hidden
: hidden // ignore: cast_nullable_to_non_nullable
as bool?,
icon: freezed == icon
? _value.icon
: icon // ignore: cast_nullable_to_non_nullable
as String?,
));
}
}
/// @nodoc
@JsonSerializable()
class _$ProxyGroupImpl implements _ProxyGroup {
const _$ProxyGroupImpl(
{required this.name,
@JsonKey(fromJson: GroupType.parseProfileType) required this.type,
final List<String>? proxies,
final List<String>? use,
this.interval,
this.lazy,
this.url,
this.timeout,
@JsonKey(name: "max-failed-times") this.maxFailedTimes,
this.filter,
@JsonKey(name: "expected-filter") this.excludeFilter,
@JsonKey(name: "exclude-type") this.excludeType,
@JsonKey(name: "expected-status") this.expectedStatus,
this.hidden,
this.icon})
: _proxies = proxies,
_use = use;
factory _$ProxyGroupImpl.fromJson(Map<String, dynamic> json) =>
_$$ProxyGroupImplFromJson(json);
@override
final String name;
@override
@JsonKey(fromJson: GroupType.parseProfileType)
final GroupType type;
final List<String>? _proxies;
@override
List<String>? get proxies {
final value = _proxies;
if (value == null) return null;
if (_proxies is EqualUnmodifiableListView) return _proxies;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(value);
}
final List<String>? _use;
@override
List<String>? get use {
final value = _use;
if (value == null) return null;
if (_use is EqualUnmodifiableListView) return _use;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(value);
}
@override
final int? interval;
@override
final bool? lazy;
@override
final String? url;
@override
final int? timeout;
@override
@JsonKey(name: "max-failed-times")
final int? maxFailedTimes;
@override
final String? filter;
@override
@JsonKey(name: "expected-filter")
final String? excludeFilter;
@override
@JsonKey(name: "exclude-type")
final String? excludeType;
@override
@JsonKey(name: "expected-status")
final dynamic expectedStatus;
@override
final bool? hidden;
@override
final String? icon;
@override
String toString() {
return 'ProxyGroup(name: $name, type: $type, proxies: $proxies, use: $use, interval: $interval, lazy: $lazy, url: $url, timeout: $timeout, maxFailedTimes: $maxFailedTimes, filter: $filter, excludeFilter: $excludeFilter, excludeType: $excludeType, expectedStatus: $expectedStatus, hidden: $hidden, icon: $icon)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$ProxyGroupImpl &&
(identical(other.name, name) || other.name == name) &&
(identical(other.type, type) || other.type == type) &&
const DeepCollectionEquality().equals(other._proxies, _proxies) &&
const DeepCollectionEquality().equals(other._use, _use) &&
(identical(other.interval, interval) ||
other.interval == interval) &&
(identical(other.lazy, lazy) || other.lazy == lazy) &&
(identical(other.url, url) || other.url == url) &&
(identical(other.timeout, timeout) || other.timeout == timeout) &&
(identical(other.maxFailedTimes, maxFailedTimes) ||
other.maxFailedTimes == maxFailedTimes) &&
(identical(other.filter, filter) || other.filter == filter) &&
(identical(other.excludeFilter, excludeFilter) ||
other.excludeFilter == excludeFilter) &&
(identical(other.excludeType, excludeType) ||
other.excludeType == excludeType) &&
const DeepCollectionEquality()
.equals(other.expectedStatus, expectedStatus) &&
(identical(other.hidden, hidden) || other.hidden == hidden) &&
(identical(other.icon, icon) || other.icon == icon));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(
runtimeType,
name,
type,
const DeepCollectionEquality().hash(_proxies),
const DeepCollectionEquality().hash(_use),
interval,
lazy,
url,
timeout,
maxFailedTimes,
filter,
excludeFilter,
excludeType,
const DeepCollectionEquality().hash(expectedStatus),
hidden,
icon);
/// Create a copy of ProxyGroup
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$ProxyGroupImplCopyWith<_$ProxyGroupImpl> get copyWith =>
__$$ProxyGroupImplCopyWithImpl<_$ProxyGroupImpl>(this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$ProxyGroupImplToJson(
this,
);
}
}
abstract class _ProxyGroup implements ProxyGroup {
const factory _ProxyGroup(
{required final String name,
@JsonKey(fromJson: GroupType.parseProfileType)
required final GroupType type,
final List<String>? proxies,
final List<String>? use,
final int? interval,
final bool? lazy,
final String? url,
final int? timeout,
@JsonKey(name: "max-failed-times") final int? maxFailedTimes,
final String? filter,
@JsonKey(name: "expected-filter") final String? excludeFilter,
@JsonKey(name: "exclude-type") final String? excludeType,
@JsonKey(name: "expected-status") final dynamic expectedStatus,
final bool? hidden,
final String? icon}) = _$ProxyGroupImpl;
factory _ProxyGroup.fromJson(Map<String, dynamic> json) =
_$ProxyGroupImpl.fromJson;
@override
String get name;
@override
@JsonKey(fromJson: GroupType.parseProfileType)
GroupType get type;
@override
List<String>? get proxies;
@override
List<String>? get use;
@override
int? get interval;
@override
bool? get lazy;
@override
String? get url;
@override
int? get timeout;
@override
@JsonKey(name: "max-failed-times")
int? get maxFailedTimes;
@override
String? get filter;
@override
@JsonKey(name: "expected-filter")
String? get excludeFilter;
@override
@JsonKey(name: "exclude-type")
String? get excludeType;
@override
@JsonKey(name: "expected-status")
dynamic get expectedStatus;
@override
bool? get hidden;
@override
String? get icon;
/// Create a copy of ProxyGroup
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$ProxyGroupImplCopyWith<_$ProxyGroupImpl> get copyWith =>
throw _privateConstructorUsedError;
}
RuleProvider _$RuleProviderFromJson(Map<String, dynamic> json) {
return _RuleProvider.fromJson(json);
}
/// @nodoc
mixin _$RuleProvider {
String get name => throw _privateConstructorUsedError;
/// Serializes this RuleProvider to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of RuleProvider
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$RuleProviderCopyWith<RuleProvider> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $RuleProviderCopyWith<$Res> {
factory $RuleProviderCopyWith(
RuleProvider value, $Res Function(RuleProvider) then) =
_$RuleProviderCopyWithImpl<$Res, RuleProvider>;
@useResult
$Res call({String name});
}
/// @nodoc
class _$RuleProviderCopyWithImpl<$Res, $Val extends RuleProvider>
implements $RuleProviderCopyWith<$Res> {
_$RuleProviderCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of RuleProvider
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? name = null,
}) {
return _then(_value.copyWith(
name: null == name
? _value.name
: name // ignore: cast_nullable_to_non_nullable
as String,
) as $Val);
}
}
/// @nodoc
abstract class _$$RuleProviderImplCopyWith<$Res>
implements $RuleProviderCopyWith<$Res> {
factory _$$RuleProviderImplCopyWith(
_$RuleProviderImpl value, $Res Function(_$RuleProviderImpl) then) =
__$$RuleProviderImplCopyWithImpl<$Res>;
@override
@useResult
$Res call({String name});
}
/// @nodoc
class __$$RuleProviderImplCopyWithImpl<$Res>
extends _$RuleProviderCopyWithImpl<$Res, _$RuleProviderImpl>
implements _$$RuleProviderImplCopyWith<$Res> {
__$$RuleProviderImplCopyWithImpl(
_$RuleProviderImpl _value, $Res Function(_$RuleProviderImpl) _then)
: super(_value, _then);
/// Create a copy of RuleProvider
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? name = null,
}) {
return _then(_$RuleProviderImpl(
name: null == name
? _value.name
: name // ignore: cast_nullable_to_non_nullable
as String,
));
}
}
/// @nodoc
@JsonSerializable()
class _$RuleProviderImpl implements _RuleProvider {
const _$RuleProviderImpl({required this.name});
factory _$RuleProviderImpl.fromJson(Map<String, dynamic> json) =>
_$$RuleProviderImplFromJson(json);
@override
final String name;
@override
String toString() {
return 'RuleProvider(name: $name)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$RuleProviderImpl &&
(identical(other.name, name) || other.name == name));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType, name);
/// Create a copy of RuleProvider
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$RuleProviderImplCopyWith<_$RuleProviderImpl> get copyWith =>
__$$RuleProviderImplCopyWithImpl<_$RuleProviderImpl>(this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$RuleProviderImplToJson(
this,
);
}
}
abstract class _RuleProvider implements RuleProvider {
const factory _RuleProvider({required final String name}) =
_$RuleProviderImpl;
factory _RuleProvider.fromJson(Map<String, dynamic> json) =
_$RuleProviderImpl.fromJson;
@override
String get name;
/// Create a copy of RuleProvider
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$RuleProviderImplCopyWith<_$RuleProviderImpl> get copyWith =>
throw _privateConstructorUsedError;
}
Tun _$TunFromJson(Map<String, dynamic> json) {
return _Tun.fromJson(json);
}
/// @nodoc
mixin _$Tun {
bool get enable => throw _privateConstructorUsedError;
String get device => throw _privateConstructorUsedError;
@JsonKey(name: "auto-route")
bool get autoRoute => throw _privateConstructorUsedError;
TunStack get stack => throw _privateConstructorUsedError;
@JsonKey(name: "dns-hijack")
List<String> get dnsHijack => throw _privateConstructorUsedError;
@JsonKey(name: "route-address")
List<String> get routeAddress => throw _privateConstructorUsedError;
/// Serializes this Tun to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of Tun
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$TunCopyWith<Tun> get copyWith => throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $TunCopyWith<$Res> {
factory $TunCopyWith(Tun value, $Res Function(Tun) then) =
_$TunCopyWithImpl<$Res, Tun>;
@useResult
$Res call(
{bool enable,
String device,
@JsonKey(name: "auto-route") bool autoRoute,
TunStack stack,
@JsonKey(name: "dns-hijack") List<String> dnsHijack,
@JsonKey(name: "route-address") List<String> routeAddress});
}
/// @nodoc
class _$TunCopyWithImpl<$Res, $Val extends Tun> implements $TunCopyWith<$Res> {
_$TunCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of Tun
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? enable = null,
Object? device = null,
Object? autoRoute = null,
Object? stack = null,
Object? dnsHijack = null,
Object? routeAddress = null,
}) {
return _then(_value.copyWith(
enable: null == enable
? _value.enable
: enable // ignore: cast_nullable_to_non_nullable
as bool,
device: null == device
? _value.device
: device // ignore: cast_nullable_to_non_nullable
as String,
autoRoute: null == autoRoute
? _value.autoRoute
: autoRoute // ignore: cast_nullable_to_non_nullable
as bool,
stack: null == stack
? _value.stack
: stack // ignore: cast_nullable_to_non_nullable
as TunStack,
dnsHijack: null == dnsHijack
? _value.dnsHijack
: dnsHijack // ignore: cast_nullable_to_non_nullable
as List<String>,
routeAddress: null == routeAddress
? _value.routeAddress
: routeAddress // ignore: cast_nullable_to_non_nullable
as List<String>,
) as $Val);
}
}
/// @nodoc
abstract class _$$TunImplCopyWith<$Res> implements $TunCopyWith<$Res> {
factory _$$TunImplCopyWith(_$TunImpl value, $Res Function(_$TunImpl) then) =
__$$TunImplCopyWithImpl<$Res>;
@override
@useResult
$Res call(
{bool enable,
String device,
@JsonKey(name: "auto-route") bool autoRoute,
TunStack stack,
@JsonKey(name: "dns-hijack") List<String> dnsHijack,
@JsonKey(name: "route-address") List<String> routeAddress});
}
/// @nodoc
class __$$TunImplCopyWithImpl<$Res> extends _$TunCopyWithImpl<$Res, _$TunImpl>
implements _$$TunImplCopyWith<$Res> {
__$$TunImplCopyWithImpl(_$TunImpl _value, $Res Function(_$TunImpl) _then)
: super(_value, _then);
/// Create a copy of Tun
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? enable = null,
Object? device = null,
Object? autoRoute = null,
Object? stack = null,
Object? dnsHijack = null,
Object? routeAddress = null,
}) {
return _then(_$TunImpl(
enable: null == enable
? _value.enable
: enable // ignore: cast_nullable_to_non_nullable
as bool,
device: null == device
? _value.device
: device // ignore: cast_nullable_to_non_nullable
as String,
autoRoute: null == autoRoute
? _value.autoRoute
: autoRoute // ignore: cast_nullable_to_non_nullable
as bool,
stack: null == stack
? _value.stack
: stack // ignore: cast_nullable_to_non_nullable
as TunStack,
dnsHijack: null == dnsHijack
? _value._dnsHijack
: dnsHijack // ignore: cast_nullable_to_non_nullable
as List<String>,
routeAddress: null == routeAddress
? _value._routeAddress
: routeAddress // ignore: cast_nullable_to_non_nullable
as List<String>,
));
}
}
/// @nodoc
@JsonSerializable()
class _$TunImpl implements _Tun {
const _$TunImpl(
{this.enable = false,
this.device = appName,
@JsonKey(name: "auto-route") this.autoRoute = false,
this.stack = TunStack.mixed,
@JsonKey(name: "dns-hijack")
final List<String> dnsHijack = const ["any:53"],
@JsonKey(name: "route-address")
final List<String> routeAddress = const []})
: _dnsHijack = dnsHijack,
_routeAddress = routeAddress;
factory _$TunImpl.fromJson(Map<String, dynamic> json) =>
_$$TunImplFromJson(json);
@override
@JsonKey()
final bool enable;
@override
@JsonKey()
final String device;
@override
@JsonKey(name: "auto-route")
final bool autoRoute;
@override
@JsonKey()
final TunStack stack;
final List<String> _dnsHijack;
@override
@JsonKey(name: "dns-hijack")
List<String> get dnsHijack {
if (_dnsHijack is EqualUnmodifiableListView) return _dnsHijack;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_dnsHijack);
}
final List<String> _routeAddress;
@override
@JsonKey(name: "route-address")
List<String> get routeAddress {
if (_routeAddress is EqualUnmodifiableListView) return _routeAddress;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_routeAddress);
}
@override
String toString() {
return 'Tun(enable: $enable, device: $device, autoRoute: $autoRoute, stack: $stack, dnsHijack: $dnsHijack, routeAddress: $routeAddress)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$TunImpl &&
(identical(other.enable, enable) || other.enable == enable) &&
(identical(other.device, device) || other.device == device) &&
(identical(other.autoRoute, autoRoute) ||
other.autoRoute == autoRoute) &&
(identical(other.stack, stack) || other.stack == stack) &&
const DeepCollectionEquality()
.equals(other._dnsHijack, _dnsHijack) &&
const DeepCollectionEquality()
.equals(other._routeAddress, _routeAddress));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(
runtimeType,
enable,
device,
autoRoute,
stack,
const DeepCollectionEquality().hash(_dnsHijack),
const DeepCollectionEquality().hash(_routeAddress));
/// Create a copy of Tun
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$TunImplCopyWith<_$TunImpl> get copyWith =>
__$$TunImplCopyWithImpl<_$TunImpl>(this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$TunImplToJson(
this,
);
}
}
abstract class _Tun implements Tun {
const factory _Tun(
{final bool enable,
final String device,
@JsonKey(name: "auto-route") final bool autoRoute,
final TunStack stack,
@JsonKey(name: "dns-hijack") final List<String> dnsHijack,
@JsonKey(name: "route-address") final List<String> routeAddress}) =
_$TunImpl;
factory _Tun.fromJson(Map<String, dynamic> json) = _$TunImpl.fromJson;
@override
bool get enable;
@override
String get device;
@override
@JsonKey(name: "auto-route")
bool get autoRoute;
@override
TunStack get stack;
@override
@JsonKey(name: "dns-hijack")
List<String> get dnsHijack;
@override
@JsonKey(name: "route-address")
List<String> get routeAddress;
/// Create a copy of Tun
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$TunImplCopyWith<_$TunImpl> get copyWith =>
throw _privateConstructorUsedError;
}
FallbackFilter _$FallbackFilterFromJson(Map<String, dynamic> json) {
return _FallbackFilter.fromJson(json);
}
/// @nodoc
mixin _$FallbackFilter {
bool get geoip => throw _privateConstructorUsedError;
@JsonKey(name: "geoip-code")
String get geoipCode => throw _privateConstructorUsedError;
List<String> get geosite => throw _privateConstructorUsedError;
List<String> get ipcidr => throw _privateConstructorUsedError;
List<String> get domain => throw _privateConstructorUsedError;
/// Serializes this FallbackFilter to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of FallbackFilter
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$FallbackFilterCopyWith<FallbackFilter> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $FallbackFilterCopyWith<$Res> {
factory $FallbackFilterCopyWith(
FallbackFilter value, $Res Function(FallbackFilter) then) =
_$FallbackFilterCopyWithImpl<$Res, FallbackFilter>;
@useResult
$Res call(
{bool geoip,
@JsonKey(name: "geoip-code") String geoipCode,
List<String> geosite,
List<String> ipcidr,
List<String> domain});
}
/// @nodoc
class _$FallbackFilterCopyWithImpl<$Res, $Val extends FallbackFilter>
implements $FallbackFilterCopyWith<$Res> {
_$FallbackFilterCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of FallbackFilter
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? geoip = null,
Object? geoipCode = null,
Object? geosite = null,
Object? ipcidr = null,
Object? domain = null,
}) {
return _then(_value.copyWith(
geoip: null == geoip
? _value.geoip
: geoip // ignore: cast_nullable_to_non_nullable
as bool,
geoipCode: null == geoipCode
? _value.geoipCode
: geoipCode // ignore: cast_nullable_to_non_nullable
as String,
geosite: null == geosite
? _value.geosite
: geosite // ignore: cast_nullable_to_non_nullable
as List<String>,
ipcidr: null == ipcidr
? _value.ipcidr
: ipcidr // ignore: cast_nullable_to_non_nullable
as List<String>,
domain: null == domain
? _value.domain
: domain // ignore: cast_nullable_to_non_nullable
as List<String>,
) as $Val);
}
}
/// @nodoc
abstract class _$$FallbackFilterImplCopyWith<$Res>
implements $FallbackFilterCopyWith<$Res> {
factory _$$FallbackFilterImplCopyWith(_$FallbackFilterImpl value,
$Res Function(_$FallbackFilterImpl) then) =
__$$FallbackFilterImplCopyWithImpl<$Res>;
@override
@useResult
$Res call(
{bool geoip,
@JsonKey(name: "geoip-code") String geoipCode,
List<String> geosite,
List<String> ipcidr,
List<String> domain});
}
/// @nodoc
class __$$FallbackFilterImplCopyWithImpl<$Res>
extends _$FallbackFilterCopyWithImpl<$Res, _$FallbackFilterImpl>
implements _$$FallbackFilterImplCopyWith<$Res> {
__$$FallbackFilterImplCopyWithImpl(
_$FallbackFilterImpl _value, $Res Function(_$FallbackFilterImpl) _then)
: super(_value, _then);
/// Create a copy of FallbackFilter
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? geoip = null,
Object? geoipCode = null,
Object? geosite = null,
Object? ipcidr = null,
Object? domain = null,
}) {
return _then(_$FallbackFilterImpl(
geoip: null == geoip
? _value.geoip
: geoip // ignore: cast_nullable_to_non_nullable
as bool,
geoipCode: null == geoipCode
? _value.geoipCode
: geoipCode // ignore: cast_nullable_to_non_nullable
as String,
geosite: null == geosite
? _value._geosite
: geosite // ignore: cast_nullable_to_non_nullable
as List<String>,
ipcidr: null == ipcidr
? _value._ipcidr
: ipcidr // ignore: cast_nullable_to_non_nullable
as List<String>,
domain: null == domain
? _value._domain
: domain // ignore: cast_nullable_to_non_nullable
as List<String>,
));
}
}
/// @nodoc
@JsonSerializable()
class _$FallbackFilterImpl implements _FallbackFilter {
const _$FallbackFilterImpl(
{this.geoip = true,
@JsonKey(name: "geoip-code") this.geoipCode = "CN",
final List<String> geosite = const ["gfw"],
final List<String> ipcidr = const ["240.0.0.0/4"],
final List<String> domain = const [
"+.google.com",
"+.facebook.com",
"+.youtube.com"
]})
: _geosite = geosite,
_ipcidr = ipcidr,
_domain = domain;
factory _$FallbackFilterImpl.fromJson(Map<String, dynamic> json) =>
_$$FallbackFilterImplFromJson(json);
@override
@JsonKey()
final bool geoip;
@override
@JsonKey(name: "geoip-code")
final String geoipCode;
final List<String> _geosite;
@override
@JsonKey()
List<String> get geosite {
if (_geosite is EqualUnmodifiableListView) return _geosite;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_geosite);
}
final List<String> _ipcidr;
@override
@JsonKey()
List<String> get ipcidr {
if (_ipcidr is EqualUnmodifiableListView) return _ipcidr;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_ipcidr);
}
final List<String> _domain;
@override
@JsonKey()
List<String> get domain {
if (_domain is EqualUnmodifiableListView) return _domain;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_domain);
}
@override
String toString() {
return 'FallbackFilter(geoip: $geoip, geoipCode: $geoipCode, geosite: $geosite, ipcidr: $ipcidr, domain: $domain)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$FallbackFilterImpl &&
(identical(other.geoip, geoip) || other.geoip == geoip) &&
(identical(other.geoipCode, geoipCode) ||
other.geoipCode == geoipCode) &&
const DeepCollectionEquality().equals(other._geosite, _geosite) &&
const DeepCollectionEquality().equals(other._ipcidr, _ipcidr) &&
const DeepCollectionEquality().equals(other._domain, _domain));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(
runtimeType,
geoip,
geoipCode,
const DeepCollectionEquality().hash(_geosite),
const DeepCollectionEquality().hash(_ipcidr),
const DeepCollectionEquality().hash(_domain));
/// Create a copy of FallbackFilter
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$FallbackFilterImplCopyWith<_$FallbackFilterImpl> get copyWith =>
__$$FallbackFilterImplCopyWithImpl<_$FallbackFilterImpl>(
this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$FallbackFilterImplToJson(
this,
);
}
}
abstract class _FallbackFilter implements FallbackFilter {
const factory _FallbackFilter(
{final bool geoip,
@JsonKey(name: "geoip-code") final String geoipCode,
final List<String> geosite,
final List<String> ipcidr,
final List<String> domain}) = _$FallbackFilterImpl;
factory _FallbackFilter.fromJson(Map<String, dynamic> json) =
_$FallbackFilterImpl.fromJson;
@override
bool get geoip;
@override
@JsonKey(name: "geoip-code")
String get geoipCode;
@override
List<String> get geosite;
@override
List<String> get ipcidr;
@override
List<String> get domain;
/// Create a copy of FallbackFilter
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$FallbackFilterImplCopyWith<_$FallbackFilterImpl> get copyWith =>
throw _privateConstructorUsedError;
}
Dns _$DnsFromJson(Map<String, dynamic> json) {
return _Dns.fromJson(json);
}
/// @nodoc
mixin _$Dns {
bool get enable => throw _privateConstructorUsedError;
String get listen => throw _privateConstructorUsedError;
@JsonKey(name: "prefer-h3")
bool get preferH3 => throw _privateConstructorUsedError;
@JsonKey(name: "use-hosts")
bool get useHosts => throw _privateConstructorUsedError;
@JsonKey(name: "use-system-hosts")
bool get useSystemHosts => throw _privateConstructorUsedError;
@JsonKey(name: "respect-rules")
bool get respectRules => throw _privateConstructorUsedError;
bool get ipv6 => throw _privateConstructorUsedError;
@JsonKey(name: "default-nameserver")
List<String> get defaultNameserver => throw _privateConstructorUsedError;
@JsonKey(name: "enhanced-mode")
DnsMode get enhancedMode => throw _privateConstructorUsedError;
@JsonKey(name: "fake-ip-range")
String get fakeIpRange => throw _privateConstructorUsedError;
@JsonKey(name: "fake-ip-filter")
List<String> get fakeIpFilter => throw _privateConstructorUsedError;
@JsonKey(name: "nameserver-policy")
Map<String, String> get nameserverPolicy =>
throw _privateConstructorUsedError;
List<String> get nameserver => throw _privateConstructorUsedError;
List<String> get fallback => throw _privateConstructorUsedError;
@JsonKey(name: "proxy-server-nameserver")
List<String> get proxyServerNameserver => throw _privateConstructorUsedError;
@JsonKey(name: "fallback-filter")
FallbackFilter get fallbackFilter => throw _privateConstructorUsedError;
/// Serializes this Dns to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of Dns
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$DnsCopyWith<Dns> get copyWith => throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $DnsCopyWith<$Res> {
factory $DnsCopyWith(Dns value, $Res Function(Dns) then) =
_$DnsCopyWithImpl<$Res, Dns>;
@useResult
$Res call(
{bool enable,
String listen,
@JsonKey(name: "prefer-h3") bool preferH3,
@JsonKey(name: "use-hosts") bool useHosts,
@JsonKey(name: "use-system-hosts") bool useSystemHosts,
@JsonKey(name: "respect-rules") bool respectRules,
bool ipv6,
@JsonKey(name: "default-nameserver") List<String> defaultNameserver,
@JsonKey(name: "enhanced-mode") DnsMode enhancedMode,
@JsonKey(name: "fake-ip-range") String fakeIpRange,
@JsonKey(name: "fake-ip-filter") List<String> fakeIpFilter,
@JsonKey(name: "nameserver-policy") Map<String, String> nameserverPolicy,
List<String> nameserver,
List<String> fallback,
@JsonKey(name: "proxy-server-nameserver")
List<String> proxyServerNameserver,
@JsonKey(name: "fallback-filter") FallbackFilter fallbackFilter});
$FallbackFilterCopyWith<$Res> get fallbackFilter;
}
/// @nodoc
class _$DnsCopyWithImpl<$Res, $Val extends Dns> implements $DnsCopyWith<$Res> {
_$DnsCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of Dns
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? enable = null,
Object? listen = null,
Object? preferH3 = null,
Object? useHosts = null,
Object? useSystemHosts = null,
Object? respectRules = null,
Object? ipv6 = null,
Object? defaultNameserver = null,
Object? enhancedMode = null,
Object? fakeIpRange = null,
Object? fakeIpFilter = null,
Object? nameserverPolicy = null,
Object? nameserver = null,
Object? fallback = null,
Object? proxyServerNameserver = null,
Object? fallbackFilter = null,
}) {
return _then(_value.copyWith(
enable: null == enable
? _value.enable
: enable // ignore: cast_nullable_to_non_nullable
as bool,
listen: null == listen
? _value.listen
: listen // ignore: cast_nullable_to_non_nullable
as String,
preferH3: null == preferH3
? _value.preferH3
: preferH3 // ignore: cast_nullable_to_non_nullable
as bool,
useHosts: null == useHosts
? _value.useHosts
: useHosts // ignore: cast_nullable_to_non_nullable
as bool,
useSystemHosts: null == useSystemHosts
? _value.useSystemHosts
: useSystemHosts // ignore: cast_nullable_to_non_nullable
as bool,
respectRules: null == respectRules
? _value.respectRules
: respectRules // ignore: cast_nullable_to_non_nullable
as bool,
ipv6: null == ipv6
? _value.ipv6
: ipv6 // ignore: cast_nullable_to_non_nullable
as bool,
defaultNameserver: null == defaultNameserver
? _value.defaultNameserver
: defaultNameserver // ignore: cast_nullable_to_non_nullable
as List<String>,
enhancedMode: null == enhancedMode
? _value.enhancedMode
: enhancedMode // ignore: cast_nullable_to_non_nullable
as DnsMode,
fakeIpRange: null == fakeIpRange
? _value.fakeIpRange
: fakeIpRange // ignore: cast_nullable_to_non_nullable
as String,
fakeIpFilter: null == fakeIpFilter
? _value.fakeIpFilter
: fakeIpFilter // ignore: cast_nullable_to_non_nullable
as List<String>,
nameserverPolicy: null == nameserverPolicy
? _value.nameserverPolicy
: nameserverPolicy // ignore: cast_nullable_to_non_nullable
as Map<String, String>,
nameserver: null == nameserver
? _value.nameserver
: nameserver // ignore: cast_nullable_to_non_nullable
as List<String>,
fallback: null == fallback
? _value.fallback
: fallback // ignore: cast_nullable_to_non_nullable
as List<String>,
proxyServerNameserver: null == proxyServerNameserver
? _value.proxyServerNameserver
: proxyServerNameserver // ignore: cast_nullable_to_non_nullable
as List<String>,
fallbackFilter: null == fallbackFilter
? _value.fallbackFilter
: fallbackFilter // ignore: cast_nullable_to_non_nullable
as FallbackFilter,
) as $Val);
}
/// Create a copy of Dns
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$FallbackFilterCopyWith<$Res> get fallbackFilter {
return $FallbackFilterCopyWith<$Res>(_value.fallbackFilter, (value) {
return _then(_value.copyWith(fallbackFilter: value) as $Val);
});
}
}
/// @nodoc
abstract class _$$DnsImplCopyWith<$Res> implements $DnsCopyWith<$Res> {
factory _$$DnsImplCopyWith(_$DnsImpl value, $Res Function(_$DnsImpl) then) =
__$$DnsImplCopyWithImpl<$Res>;
@override
@useResult
$Res call(
{bool enable,
String listen,
@JsonKey(name: "prefer-h3") bool preferH3,
@JsonKey(name: "use-hosts") bool useHosts,
@JsonKey(name: "use-system-hosts") bool useSystemHosts,
@JsonKey(name: "respect-rules") bool respectRules,
bool ipv6,
@JsonKey(name: "default-nameserver") List<String> defaultNameserver,
@JsonKey(name: "enhanced-mode") DnsMode enhancedMode,
@JsonKey(name: "fake-ip-range") String fakeIpRange,
@JsonKey(name: "fake-ip-filter") List<String> fakeIpFilter,
@JsonKey(name: "nameserver-policy") Map<String, String> nameserverPolicy,
List<String> nameserver,
List<String> fallback,
@JsonKey(name: "proxy-server-nameserver")
List<String> proxyServerNameserver,
@JsonKey(name: "fallback-filter") FallbackFilter fallbackFilter});
@override
$FallbackFilterCopyWith<$Res> get fallbackFilter;
}
/// @nodoc
class __$$DnsImplCopyWithImpl<$Res> extends _$DnsCopyWithImpl<$Res, _$DnsImpl>
implements _$$DnsImplCopyWith<$Res> {
__$$DnsImplCopyWithImpl(_$DnsImpl _value, $Res Function(_$DnsImpl) _then)
: super(_value, _then);
/// Create a copy of Dns
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? enable = null,
Object? listen = null,
Object? preferH3 = null,
Object? useHosts = null,
Object? useSystemHosts = null,
Object? respectRules = null,
Object? ipv6 = null,
Object? defaultNameserver = null,
Object? enhancedMode = null,
Object? fakeIpRange = null,
Object? fakeIpFilter = null,
Object? nameserverPolicy = null,
Object? nameserver = null,
Object? fallback = null,
Object? proxyServerNameserver = null,
Object? fallbackFilter = null,
}) {
return _then(_$DnsImpl(
enable: null == enable
? _value.enable
: enable // ignore: cast_nullable_to_non_nullable
as bool,
listen: null == listen
? _value.listen
: listen // ignore: cast_nullable_to_non_nullable
as String,
preferH3: null == preferH3
? _value.preferH3
: preferH3 // ignore: cast_nullable_to_non_nullable
as bool,
useHosts: null == useHosts
? _value.useHosts
: useHosts // ignore: cast_nullable_to_non_nullable
as bool,
useSystemHosts: null == useSystemHosts
? _value.useSystemHosts
: useSystemHosts // ignore: cast_nullable_to_non_nullable
as bool,
respectRules: null == respectRules
? _value.respectRules
: respectRules // ignore: cast_nullable_to_non_nullable
as bool,
ipv6: null == ipv6
? _value.ipv6
: ipv6 // ignore: cast_nullable_to_non_nullable
as bool,
defaultNameserver: null == defaultNameserver
? _value._defaultNameserver
: defaultNameserver // ignore: cast_nullable_to_non_nullable
as List<String>,
enhancedMode: null == enhancedMode
? _value.enhancedMode
: enhancedMode // ignore: cast_nullable_to_non_nullable
as DnsMode,
fakeIpRange: null == fakeIpRange
? _value.fakeIpRange
: fakeIpRange // ignore: cast_nullable_to_non_nullable
as String,
fakeIpFilter: null == fakeIpFilter
? _value._fakeIpFilter
: fakeIpFilter // ignore: cast_nullable_to_non_nullable
as List<String>,
nameserverPolicy: null == nameserverPolicy
? _value._nameserverPolicy
: nameserverPolicy // ignore: cast_nullable_to_non_nullable
as Map<String, String>,
nameserver: null == nameserver
? _value._nameserver
: nameserver // ignore: cast_nullable_to_non_nullable
as List<String>,
fallback: null == fallback
? _value._fallback
: fallback // ignore: cast_nullable_to_non_nullable
as List<String>,
proxyServerNameserver: null == proxyServerNameserver
? _value._proxyServerNameserver
: proxyServerNameserver // ignore: cast_nullable_to_non_nullable
as List<String>,
fallbackFilter: null == fallbackFilter
? _value.fallbackFilter
: fallbackFilter // ignore: cast_nullable_to_non_nullable
as FallbackFilter,
));
}
}
/// @nodoc
@JsonSerializable()
class _$DnsImpl implements _Dns {
const _$DnsImpl(
{this.enable = true,
this.listen = "0.0.0.0:1053",
@JsonKey(name: "prefer-h3") this.preferH3 = false,
@JsonKey(name: "use-hosts") this.useHosts = true,
@JsonKey(name: "use-system-hosts") this.useSystemHosts = true,
@JsonKey(name: "respect-rules") this.respectRules = false,
this.ipv6 = false,
@JsonKey(name: "default-nameserver")
final List<String> defaultNameserver = const ["223.5.5.5"],
@JsonKey(name: "enhanced-mode") this.enhancedMode = DnsMode.fakeIp,
@JsonKey(name: "fake-ip-range") this.fakeIpRange = "198.18.0.1/16",
@JsonKey(name: "fake-ip-filter") final List<String> fakeIpFilter = const [
"*.lan",
"localhost.ptlogin2.qq.com"
],
@JsonKey(name: "nameserver-policy")
final Map<String, String> nameserverPolicy = const {
"www.baidu.com": "114.114.114.114",
"+.internal.crop.com": "10.0.0.1",
"geosite:cn": "https://doh.pub/dns-query"
},
final List<String> nameserver = const [
"https://doh.pub/dns-query",
"https://dns.alidns.com/dns-query"
],
final List<String> fallback = const ["tls://8.8.4.4", "tls://1.1.1.1"],
@JsonKey(name: "proxy-server-nameserver")
final List<String> proxyServerNameserver = const [
"https://doh.pub/dns-query"
],
@JsonKey(name: "fallback-filter")
this.fallbackFilter = const FallbackFilter()})
: _defaultNameserver = defaultNameserver,
_fakeIpFilter = fakeIpFilter,
_nameserverPolicy = nameserverPolicy,
_nameserver = nameserver,
_fallback = fallback,
_proxyServerNameserver = proxyServerNameserver;
factory _$DnsImpl.fromJson(Map<String, dynamic> json) =>
_$$DnsImplFromJson(json);
@override
@JsonKey()
final bool enable;
@override
@JsonKey()
final String listen;
@override
@JsonKey(name: "prefer-h3")
final bool preferH3;
@override
@JsonKey(name: "use-hosts")
final bool useHosts;
@override
@JsonKey(name: "use-system-hosts")
final bool useSystemHosts;
@override
@JsonKey(name: "respect-rules")
final bool respectRules;
@override
@JsonKey()
final bool ipv6;
final List<String> _defaultNameserver;
@override
@JsonKey(name: "default-nameserver")
List<String> get defaultNameserver {
if (_defaultNameserver is EqualUnmodifiableListView)
return _defaultNameserver;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_defaultNameserver);
}
@override
@JsonKey(name: "enhanced-mode")
final DnsMode enhancedMode;
@override
@JsonKey(name: "fake-ip-range")
final String fakeIpRange;
final List<String> _fakeIpFilter;
@override
@JsonKey(name: "fake-ip-filter")
List<String> get fakeIpFilter {
if (_fakeIpFilter is EqualUnmodifiableListView) return _fakeIpFilter;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_fakeIpFilter);
}
final Map<String, String> _nameserverPolicy;
@override
@JsonKey(name: "nameserver-policy")
Map<String, String> get nameserverPolicy {
if (_nameserverPolicy is EqualUnmodifiableMapView) return _nameserverPolicy;
// ignore: implicit_dynamic_type
return EqualUnmodifiableMapView(_nameserverPolicy);
}
final List<String> _nameserver;
@override
@JsonKey()
List<String> get nameserver {
if (_nameserver is EqualUnmodifiableListView) return _nameserver;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_nameserver);
}
final List<String> _fallback;
@override
@JsonKey()
List<String> get fallback {
if (_fallback is EqualUnmodifiableListView) return _fallback;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_fallback);
}
final List<String> _proxyServerNameserver;
@override
@JsonKey(name: "proxy-server-nameserver")
List<String> get proxyServerNameserver {
if (_proxyServerNameserver is EqualUnmodifiableListView)
return _proxyServerNameserver;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_proxyServerNameserver);
}
@override
@JsonKey(name: "fallback-filter")
final FallbackFilter fallbackFilter;
@override
String toString() {
return 'Dns(enable: $enable, listen: $listen, preferH3: $preferH3, useHosts: $useHosts, useSystemHosts: $useSystemHosts, respectRules: $respectRules, ipv6: $ipv6, defaultNameserver: $defaultNameserver, enhancedMode: $enhancedMode, fakeIpRange: $fakeIpRange, fakeIpFilter: $fakeIpFilter, nameserverPolicy: $nameserverPolicy, nameserver: $nameserver, fallback: $fallback, proxyServerNameserver: $proxyServerNameserver, fallbackFilter: $fallbackFilter)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$DnsImpl &&
(identical(other.enable, enable) || other.enable == enable) &&
(identical(other.listen, listen) || other.listen == listen) &&
(identical(other.preferH3, preferH3) ||
other.preferH3 == preferH3) &&
(identical(other.useHosts, useHosts) ||
other.useHosts == useHosts) &&
(identical(other.useSystemHosts, useSystemHosts) ||
other.useSystemHosts == useSystemHosts) &&
(identical(other.respectRules, respectRules) ||
other.respectRules == respectRules) &&
(identical(other.ipv6, ipv6) || other.ipv6 == ipv6) &&
const DeepCollectionEquality()
.equals(other._defaultNameserver, _defaultNameserver) &&
(identical(other.enhancedMode, enhancedMode) ||
other.enhancedMode == enhancedMode) &&
(identical(other.fakeIpRange, fakeIpRange) ||
other.fakeIpRange == fakeIpRange) &&
const DeepCollectionEquality()
.equals(other._fakeIpFilter, _fakeIpFilter) &&
const DeepCollectionEquality()
.equals(other._nameserverPolicy, _nameserverPolicy) &&
const DeepCollectionEquality()
.equals(other._nameserver, _nameserver) &&
const DeepCollectionEquality().equals(other._fallback, _fallback) &&
const DeepCollectionEquality()
.equals(other._proxyServerNameserver, _proxyServerNameserver) &&
(identical(other.fallbackFilter, fallbackFilter) ||
other.fallbackFilter == fallbackFilter));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(
runtimeType,
enable,
listen,
preferH3,
useHosts,
useSystemHosts,
respectRules,
ipv6,
const DeepCollectionEquality().hash(_defaultNameserver),
enhancedMode,
fakeIpRange,
const DeepCollectionEquality().hash(_fakeIpFilter),
const DeepCollectionEquality().hash(_nameserverPolicy),
const DeepCollectionEquality().hash(_nameserver),
const DeepCollectionEquality().hash(_fallback),
const DeepCollectionEquality().hash(_proxyServerNameserver),
fallbackFilter);
/// Create a copy of Dns
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$DnsImplCopyWith<_$DnsImpl> get copyWith =>
__$$DnsImplCopyWithImpl<_$DnsImpl>(this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$DnsImplToJson(
this,
);
}
}
abstract class _Dns implements Dns {
const factory _Dns(
{final bool enable,
final String listen,
@JsonKey(name: "prefer-h3") final bool preferH3,
@JsonKey(name: "use-hosts") final bool useHosts,
@JsonKey(name: "use-system-hosts") final bool useSystemHosts,
@JsonKey(name: "respect-rules") final bool respectRules,
final bool ipv6,
@JsonKey(name: "default-nameserver") final List<String> defaultNameserver,
@JsonKey(name: "enhanced-mode") final DnsMode enhancedMode,
@JsonKey(name: "fake-ip-range") final String fakeIpRange,
@JsonKey(name: "fake-ip-filter") final List<String> fakeIpFilter,
@JsonKey(name: "nameserver-policy")
final Map<String, String> nameserverPolicy,
final List<String> nameserver,
final List<String> fallback,
@JsonKey(name: "proxy-server-nameserver")
final List<String> proxyServerNameserver,
@JsonKey(name: "fallback-filter")
final FallbackFilter fallbackFilter}) = _$DnsImpl;
factory _Dns.fromJson(Map<String, dynamic> json) = _$DnsImpl.fromJson;
@override
bool get enable;
@override
String get listen;
@override
@JsonKey(name: "prefer-h3")
bool get preferH3;
@override
@JsonKey(name: "use-hosts")
bool get useHosts;
@override
@JsonKey(name: "use-system-hosts")
bool get useSystemHosts;
@override
@JsonKey(name: "respect-rules")
bool get respectRules;
@override
bool get ipv6;
@override
@JsonKey(name: "default-nameserver")
List<String> get defaultNameserver;
@override
@JsonKey(name: "enhanced-mode")
DnsMode get enhancedMode;
@override
@JsonKey(name: "fake-ip-range")
String get fakeIpRange;
@override
@JsonKey(name: "fake-ip-filter")
List<String> get fakeIpFilter;
@override
@JsonKey(name: "nameserver-policy")
Map<String, String> get nameserverPolicy;
@override
List<String> get nameserver;
@override
List<String> get fallback;
@override
@JsonKey(name: "proxy-server-nameserver")
List<String> get proxyServerNameserver;
@override
@JsonKey(name: "fallback-filter")
FallbackFilter get fallbackFilter;
/// Create a copy of Dns
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$DnsImplCopyWith<_$DnsImpl> get copyWith =>
throw _privateConstructorUsedError;
}
GeoXUrl _$GeoXUrlFromJson(Map<String, dynamic> json) {
return _GeoXUrl.fromJson(json);
}
/// @nodoc
mixin _$GeoXUrl {
String get mmdb => throw _privateConstructorUsedError;
String get asn => throw _privateConstructorUsedError;
String get geoip => throw _privateConstructorUsedError;
String get geosite => throw _privateConstructorUsedError;
/// Serializes this GeoXUrl to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of GeoXUrl
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$GeoXUrlCopyWith<GeoXUrl> get copyWith => throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $GeoXUrlCopyWith<$Res> {
factory $GeoXUrlCopyWith(GeoXUrl value, $Res Function(GeoXUrl) then) =
_$GeoXUrlCopyWithImpl<$Res, GeoXUrl>;
@useResult
$Res call({String mmdb, String asn, String geoip, String geosite});
}
/// @nodoc
class _$GeoXUrlCopyWithImpl<$Res, $Val extends GeoXUrl>
implements $GeoXUrlCopyWith<$Res> {
_$GeoXUrlCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of GeoXUrl
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? mmdb = null,
Object? asn = null,
Object? geoip = null,
Object? geosite = null,
}) {
return _then(_value.copyWith(
mmdb: null == mmdb
? _value.mmdb
: mmdb // ignore: cast_nullable_to_non_nullable
as String,
asn: null == asn
? _value.asn
: asn // ignore: cast_nullable_to_non_nullable
as String,
geoip: null == geoip
? _value.geoip
: geoip // ignore: cast_nullable_to_non_nullable
as String,
geosite: null == geosite
? _value.geosite
: geosite // ignore: cast_nullable_to_non_nullable
as String,
) as $Val);
}
}
/// @nodoc
abstract class _$$GeoXUrlImplCopyWith<$Res> implements $GeoXUrlCopyWith<$Res> {
factory _$$GeoXUrlImplCopyWith(
_$GeoXUrlImpl value, $Res Function(_$GeoXUrlImpl) then) =
__$$GeoXUrlImplCopyWithImpl<$Res>;
@override
@useResult
$Res call({String mmdb, String asn, String geoip, String geosite});
}
/// @nodoc
class __$$GeoXUrlImplCopyWithImpl<$Res>
extends _$GeoXUrlCopyWithImpl<$Res, _$GeoXUrlImpl>
implements _$$GeoXUrlImplCopyWith<$Res> {
__$$GeoXUrlImplCopyWithImpl(
_$GeoXUrlImpl _value, $Res Function(_$GeoXUrlImpl) _then)
: super(_value, _then);
/// Create a copy of GeoXUrl
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? mmdb = null,
Object? asn = null,
Object? geoip = null,
Object? geosite = null,
}) {
return _then(_$GeoXUrlImpl(
mmdb: null == mmdb
? _value.mmdb
: mmdb // ignore: cast_nullable_to_non_nullable
as String,
asn: null == asn
? _value.asn
: asn // ignore: cast_nullable_to_non_nullable
as String,
geoip: null == geoip
? _value.geoip
: geoip // ignore: cast_nullable_to_non_nullable
as String,
geosite: null == geosite
? _value.geosite
: geosite // ignore: cast_nullable_to_non_nullable
as String,
));
}
}
/// @nodoc
@JsonSerializable()
class _$GeoXUrlImpl implements _GeoXUrl {
const _$GeoXUrlImpl(
{this.mmdb =
"https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip.metadb",
this.asn =
"https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/GeoLite2-ASN.mmdb",
this.geoip =
"https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geoip.dat",
this.geosite =
"https://github.com/MetaCubeX/meta-rules-dat/releases/download/latest/geosite.dat"});
factory _$GeoXUrlImpl.fromJson(Map<String, dynamic> json) =>
_$$GeoXUrlImplFromJson(json);
@override
@JsonKey()
final String mmdb;
@override
@JsonKey()
final String asn;
@override
@JsonKey()
final String geoip;
@override
@JsonKey()
final String geosite;
@override
String toString() {
return 'GeoXUrl(mmdb: $mmdb, asn: $asn, geoip: $geoip, geosite: $geosite)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$GeoXUrlImpl &&
(identical(other.mmdb, mmdb) || other.mmdb == mmdb) &&
(identical(other.asn, asn) || other.asn == asn) &&
(identical(other.geoip, geoip) || other.geoip == geoip) &&
(identical(other.geosite, geosite) || other.geosite == geosite));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType, mmdb, asn, geoip, geosite);
/// Create a copy of GeoXUrl
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$GeoXUrlImplCopyWith<_$GeoXUrlImpl> get copyWith =>
__$$GeoXUrlImplCopyWithImpl<_$GeoXUrlImpl>(this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$GeoXUrlImplToJson(
this,
);
}
}
abstract class _GeoXUrl implements GeoXUrl {
const factory _GeoXUrl(
{final String mmdb,
final String asn,
final String geoip,
final String geosite}) = _$GeoXUrlImpl;
factory _GeoXUrl.fromJson(Map<String, dynamic> json) = _$GeoXUrlImpl.fromJson;
@override
String get mmdb;
@override
String get asn;
@override
String get geoip;
@override
String get geosite;
/// Create a copy of GeoXUrl
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$GeoXUrlImplCopyWith<_$GeoXUrlImpl> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
mixin _$ParsedRule {
RuleAction get ruleAction => throw _privateConstructorUsedError;
String? get content => throw _privateConstructorUsedError;
String? get ruleTarget => throw _privateConstructorUsedError;
String? get ruleProvider => throw _privateConstructorUsedError;
String? get subRule => throw _privateConstructorUsedError;
bool get noResolve => throw _privateConstructorUsedError;
bool get src => throw _privateConstructorUsedError;
/// Create a copy of ParsedRule
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$ParsedRuleCopyWith<ParsedRule> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $ParsedRuleCopyWith<$Res> {
factory $ParsedRuleCopyWith(
ParsedRule value, $Res Function(ParsedRule) then) =
_$ParsedRuleCopyWithImpl<$Res, ParsedRule>;
@useResult
$Res call(
{RuleAction ruleAction,
String? content,
String? ruleTarget,
String? ruleProvider,
String? subRule,
bool noResolve,
bool src});
}
/// @nodoc
class _$ParsedRuleCopyWithImpl<$Res, $Val extends ParsedRule>
implements $ParsedRuleCopyWith<$Res> {
_$ParsedRuleCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of ParsedRule
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? ruleAction = null,
Object? content = freezed,
Object? ruleTarget = freezed,
Object? ruleProvider = freezed,
Object? subRule = freezed,
Object? noResolve = null,
Object? src = null,
}) {
return _then(_value.copyWith(
ruleAction: null == ruleAction
? _value.ruleAction
: ruleAction // ignore: cast_nullable_to_non_nullable
as RuleAction,
content: freezed == content
? _value.content
: content // ignore: cast_nullable_to_non_nullable
as String?,
ruleTarget: freezed == ruleTarget
? _value.ruleTarget
: ruleTarget // ignore: cast_nullable_to_non_nullable
as String?,
ruleProvider: freezed == ruleProvider
? _value.ruleProvider
: ruleProvider // ignore: cast_nullable_to_non_nullable
as String?,
subRule: freezed == subRule
? _value.subRule
: subRule // ignore: cast_nullable_to_non_nullable
as String?,
noResolve: null == noResolve
? _value.noResolve
: noResolve // ignore: cast_nullable_to_non_nullable
as bool,
src: null == src
? _value.src
: src // ignore: cast_nullable_to_non_nullable
as bool,
) as $Val);
}
}
/// @nodoc
abstract class _$$ParsedRuleImplCopyWith<$Res>
implements $ParsedRuleCopyWith<$Res> {
factory _$$ParsedRuleImplCopyWith(
_$ParsedRuleImpl value, $Res Function(_$ParsedRuleImpl) then) =
__$$ParsedRuleImplCopyWithImpl<$Res>;
@override
@useResult
$Res call(
{RuleAction ruleAction,
String? content,
String? ruleTarget,
String? ruleProvider,
String? subRule,
bool noResolve,
bool src});
}
/// @nodoc
class __$$ParsedRuleImplCopyWithImpl<$Res>
extends _$ParsedRuleCopyWithImpl<$Res, _$ParsedRuleImpl>
implements _$$ParsedRuleImplCopyWith<$Res> {
__$$ParsedRuleImplCopyWithImpl(
_$ParsedRuleImpl _value, $Res Function(_$ParsedRuleImpl) _then)
: super(_value, _then);
/// Create a copy of ParsedRule
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? ruleAction = null,
Object? content = freezed,
Object? ruleTarget = freezed,
Object? ruleProvider = freezed,
Object? subRule = freezed,
Object? noResolve = null,
Object? src = null,
}) {
return _then(_$ParsedRuleImpl(
ruleAction: null == ruleAction
? _value.ruleAction
: ruleAction // ignore: cast_nullable_to_non_nullable
as RuleAction,
content: freezed == content
? _value.content
: content // ignore: cast_nullable_to_non_nullable
as String?,
ruleTarget: freezed == ruleTarget
? _value.ruleTarget
: ruleTarget // ignore: cast_nullable_to_non_nullable
as String?,
ruleProvider: freezed == ruleProvider
? _value.ruleProvider
: ruleProvider // ignore: cast_nullable_to_non_nullable
as String?,
subRule: freezed == subRule
? _value.subRule
: subRule // ignore: cast_nullable_to_non_nullable
as String?,
noResolve: null == noResolve
? _value.noResolve
: noResolve // ignore: cast_nullable_to_non_nullable
as bool,
src: null == src
? _value.src
: src // ignore: cast_nullable_to_non_nullable
as bool,
));
}
}
/// @nodoc
class _$ParsedRuleImpl implements _ParsedRule {
const _$ParsedRuleImpl(
{required this.ruleAction,
this.content,
this.ruleTarget,
this.ruleProvider,
this.subRule,
this.noResolve = false,
this.src = false});
@override
final RuleAction ruleAction;
@override
final String? content;
@override
final String? ruleTarget;
@override
final String? ruleProvider;
@override
final String? subRule;
@override
@JsonKey()
final bool noResolve;
@override
@JsonKey()
final bool src;
@override
String toString() {
return 'ParsedRule(ruleAction: $ruleAction, content: $content, ruleTarget: $ruleTarget, ruleProvider: $ruleProvider, subRule: $subRule, noResolve: $noResolve, src: $src)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$ParsedRuleImpl &&
(identical(other.ruleAction, ruleAction) ||
other.ruleAction == ruleAction) &&
(identical(other.content, content) || other.content == content) &&
(identical(other.ruleTarget, ruleTarget) ||
other.ruleTarget == ruleTarget) &&
(identical(other.ruleProvider, ruleProvider) ||
other.ruleProvider == ruleProvider) &&
(identical(other.subRule, subRule) || other.subRule == subRule) &&
(identical(other.noResolve, noResolve) ||
other.noResolve == noResolve) &&
(identical(other.src, src) || other.src == src));
}
@override
int get hashCode => Object.hash(runtimeType, ruleAction, content, ruleTarget,
ruleProvider, subRule, noResolve, src);
/// Create a copy of ParsedRule
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$ParsedRuleImplCopyWith<_$ParsedRuleImpl> get copyWith =>
__$$ParsedRuleImplCopyWithImpl<_$ParsedRuleImpl>(this, _$identity);
}
abstract class _ParsedRule implements ParsedRule {
const factory _ParsedRule(
{required final RuleAction ruleAction,
final String? content,
final String? ruleTarget,
final String? ruleProvider,
final String? subRule,
final bool noResolve,
final bool src}) = _$ParsedRuleImpl;
@override
RuleAction get ruleAction;
@override
String? get content;
@override
String? get ruleTarget;
@override
String? get ruleProvider;
@override
String? get subRule;
@override
bool get noResolve;
@override
bool get src;
/// Create a copy of ParsedRule
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$ParsedRuleImplCopyWith<_$ParsedRuleImpl> get copyWith =>
throw _privateConstructorUsedError;
}
Rule _$RuleFromJson(Map<String, dynamic> json) {
return _Rule.fromJson(json);
}
/// @nodoc
mixin _$Rule {
String get id => throw _privateConstructorUsedError;
String get value => throw _privateConstructorUsedError;
/// Serializes this Rule to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of Rule
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$RuleCopyWith<Rule> get copyWith => throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $RuleCopyWith<$Res> {
factory $RuleCopyWith(Rule value, $Res Function(Rule) then) =
_$RuleCopyWithImpl<$Res, Rule>;
@useResult
$Res call({String id, String value});
}
/// @nodoc
class _$RuleCopyWithImpl<$Res, $Val extends Rule>
implements $RuleCopyWith<$Res> {
_$RuleCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of Rule
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? id = null,
Object? value = null,
}) {
return _then(_value.copyWith(
id: null == id
? _value.id
: id // ignore: cast_nullable_to_non_nullable
as String,
value: null == value
? _value.value
: value // ignore: cast_nullable_to_non_nullable
as String,
) as $Val);
}
}
/// @nodoc
abstract class _$$RuleImplCopyWith<$Res> implements $RuleCopyWith<$Res> {
factory _$$RuleImplCopyWith(
_$RuleImpl value, $Res Function(_$RuleImpl) then) =
__$$RuleImplCopyWithImpl<$Res>;
@override
@useResult
$Res call({String id, String value});
}
/// @nodoc
class __$$RuleImplCopyWithImpl<$Res>
extends _$RuleCopyWithImpl<$Res, _$RuleImpl>
implements _$$RuleImplCopyWith<$Res> {
__$$RuleImplCopyWithImpl(_$RuleImpl _value, $Res Function(_$RuleImpl) _then)
: super(_value, _then);
/// Create a copy of Rule
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? id = null,
Object? value = null,
}) {
return _then(_$RuleImpl(
id: null == id
? _value.id
: id // ignore: cast_nullable_to_non_nullable
as String,
value: null == value
? _value.value
: value // ignore: cast_nullable_to_non_nullable
as String,
));
}
}
/// @nodoc
@JsonSerializable()
class _$RuleImpl implements _Rule {
const _$RuleImpl({required this.id, required this.value});
factory _$RuleImpl.fromJson(Map<String, dynamic> json) =>
_$$RuleImplFromJson(json);
@override
final String id;
@override
final String value;
@override
String toString() {
return 'Rule(id: $id, value: $value)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$RuleImpl &&
(identical(other.id, id) || other.id == id) &&
(identical(other.value, value) || other.value == value));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType, id, value);
/// Create a copy of Rule
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$RuleImplCopyWith<_$RuleImpl> get copyWith =>
__$$RuleImplCopyWithImpl<_$RuleImpl>(this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$RuleImplToJson(
this,
);
}
}
abstract class _Rule implements Rule {
const factory _Rule({required final String id, required final String value}) =
_$RuleImpl;
factory _Rule.fromJson(Map<String, dynamic> json) = _$RuleImpl.fromJson;
@override
String get id;
@override
String get value;
/// Create a copy of Rule
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$RuleImplCopyWith<_$RuleImpl> get copyWith =>
throw _privateConstructorUsedError;
}
SubRule _$SubRuleFromJson(Map<String, dynamic> json) {
return _SubRule.fromJson(json);
}
/// @nodoc
mixin _$SubRule {
String get name => throw _privateConstructorUsedError;
/// Serializes this SubRule to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of SubRule
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$SubRuleCopyWith<SubRule> get copyWith => throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $SubRuleCopyWith<$Res> {
factory $SubRuleCopyWith(SubRule value, $Res Function(SubRule) then) =
_$SubRuleCopyWithImpl<$Res, SubRule>;
@useResult
$Res call({String name});
}
/// @nodoc
class _$SubRuleCopyWithImpl<$Res, $Val extends SubRule>
implements $SubRuleCopyWith<$Res> {
_$SubRuleCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of SubRule
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? name = null,
}) {
return _then(_value.copyWith(
name: null == name
? _value.name
: name // ignore: cast_nullable_to_non_nullable
as String,
) as $Val);
}
}
/// @nodoc
abstract class _$$SubRuleImplCopyWith<$Res> implements $SubRuleCopyWith<$Res> {
factory _$$SubRuleImplCopyWith(
_$SubRuleImpl value, $Res Function(_$SubRuleImpl) then) =
__$$SubRuleImplCopyWithImpl<$Res>;
@override
@useResult
$Res call({String name});
}
/// @nodoc
class __$$SubRuleImplCopyWithImpl<$Res>
extends _$SubRuleCopyWithImpl<$Res, _$SubRuleImpl>
implements _$$SubRuleImplCopyWith<$Res> {
__$$SubRuleImplCopyWithImpl(
_$SubRuleImpl _value, $Res Function(_$SubRuleImpl) _then)
: super(_value, _then);
/// Create a copy of SubRule
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? name = null,
}) {
return _then(_$SubRuleImpl(
name: null == name
? _value.name
: name // ignore: cast_nullable_to_non_nullable
as String,
));
}
}
/// @nodoc
@JsonSerializable()
class _$SubRuleImpl implements _SubRule {
const _$SubRuleImpl({required this.name});
factory _$SubRuleImpl.fromJson(Map<String, dynamic> json) =>
_$$SubRuleImplFromJson(json);
@override
final String name;
@override
String toString() {
return 'SubRule(name: $name)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$SubRuleImpl &&
(identical(other.name, name) || other.name == name));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(runtimeType, name);
/// Create a copy of SubRule
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$SubRuleImplCopyWith<_$SubRuleImpl> get copyWith =>
__$$SubRuleImplCopyWithImpl<_$SubRuleImpl>(this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$SubRuleImplToJson(
this,
);
}
}
abstract class _SubRule implements SubRule {
const factory _SubRule({required final String name}) = _$SubRuleImpl;
factory _SubRule.fromJson(Map<String, dynamic> json) = _$SubRuleImpl.fromJson;
@override
String get name;
/// Create a copy of SubRule
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$SubRuleImplCopyWith<_$SubRuleImpl> get copyWith =>
throw _privateConstructorUsedError;
}
ClashConfigSnippet _$ClashConfigSnippetFromJson(Map<String, dynamic> json) {
return _ClashConfigSnippet.fromJson(json);
}
/// @nodoc
mixin _$ClashConfigSnippet {
@JsonKey(name: "proxy-groups")
List<ProxyGroup> get proxyGroups => throw _privateConstructorUsedError;
@JsonKey(fromJson: _genRule)
List<Rule> get rule => throw _privateConstructorUsedError;
@JsonKey(name: "rule-providers", fromJson: _genRuleProviders)
List<RuleProvider> get ruleProvider => throw _privateConstructorUsedError;
@JsonKey(name: "sub-rules", fromJson: _genSubRules)
List<SubRule> get subRules => throw _privateConstructorUsedError;
/// Serializes this ClashConfigSnippet to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of ClashConfigSnippet
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$ClashConfigSnippetCopyWith<ClashConfigSnippet> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $ClashConfigSnippetCopyWith<$Res> {
factory $ClashConfigSnippetCopyWith(
ClashConfigSnippet value, $Res Function(ClashConfigSnippet) then) =
_$ClashConfigSnippetCopyWithImpl<$Res, ClashConfigSnippet>;
@useResult
$Res call(
{@JsonKey(name: "proxy-groups") List<ProxyGroup> proxyGroups,
@JsonKey(fromJson: _genRule) List<Rule> rule,
@JsonKey(name: "rule-providers", fromJson: _genRuleProviders)
List<RuleProvider> ruleProvider,
@JsonKey(name: "sub-rules", fromJson: _genSubRules)
List<SubRule> subRules});
}
/// @nodoc
class _$ClashConfigSnippetCopyWithImpl<$Res, $Val extends ClashConfigSnippet>
implements $ClashConfigSnippetCopyWith<$Res> {
_$ClashConfigSnippetCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of ClashConfigSnippet
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? proxyGroups = null,
Object? rule = null,
Object? ruleProvider = null,
Object? subRules = null,
}) {
return _then(_value.copyWith(
proxyGroups: null == proxyGroups
? _value.proxyGroups
: proxyGroups // ignore: cast_nullable_to_non_nullable
as List<ProxyGroup>,
rule: null == rule
? _value.rule
: rule // ignore: cast_nullable_to_non_nullable
as List<Rule>,
ruleProvider: null == ruleProvider
? _value.ruleProvider
: ruleProvider // ignore: cast_nullable_to_non_nullable
as List<RuleProvider>,
subRules: null == subRules
? _value.subRules
: subRules // ignore: cast_nullable_to_non_nullable
as List<SubRule>,
) as $Val);
}
}
/// @nodoc
abstract class _$$ClashConfigSnippetImplCopyWith<$Res>
implements $ClashConfigSnippetCopyWith<$Res> {
factory _$$ClashConfigSnippetImplCopyWith(_$ClashConfigSnippetImpl value,
$Res Function(_$ClashConfigSnippetImpl) then) =
__$$ClashConfigSnippetImplCopyWithImpl<$Res>;
@override
@useResult
$Res call(
{@JsonKey(name: "proxy-groups") List<ProxyGroup> proxyGroups,
@JsonKey(fromJson: _genRule) List<Rule> rule,
@JsonKey(name: "rule-providers", fromJson: _genRuleProviders)
List<RuleProvider> ruleProvider,
@JsonKey(name: "sub-rules", fromJson: _genSubRules)
List<SubRule> subRules});
}
/// @nodoc
class __$$ClashConfigSnippetImplCopyWithImpl<$Res>
extends _$ClashConfigSnippetCopyWithImpl<$Res, _$ClashConfigSnippetImpl>
implements _$$ClashConfigSnippetImplCopyWith<$Res> {
__$$ClashConfigSnippetImplCopyWithImpl(_$ClashConfigSnippetImpl _value,
$Res Function(_$ClashConfigSnippetImpl) _then)
: super(_value, _then);
/// Create a copy of ClashConfigSnippet
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? proxyGroups = null,
Object? rule = null,
Object? ruleProvider = null,
Object? subRules = null,
}) {
return _then(_$ClashConfigSnippetImpl(
proxyGroups: null == proxyGroups
? _value._proxyGroups
: proxyGroups // ignore: cast_nullable_to_non_nullable
as List<ProxyGroup>,
rule: null == rule
? _value._rule
: rule // ignore: cast_nullable_to_non_nullable
as List<Rule>,
ruleProvider: null == ruleProvider
? _value._ruleProvider
: ruleProvider // ignore: cast_nullable_to_non_nullable
as List<RuleProvider>,
subRules: null == subRules
? _value._subRules
: subRules // ignore: cast_nullable_to_non_nullable
as List<SubRule>,
));
}
}
/// @nodoc
@JsonSerializable()
class _$ClashConfigSnippetImpl implements _ClashConfigSnippet {
const _$ClashConfigSnippetImpl(
{@JsonKey(name: "proxy-groups")
final List<ProxyGroup> proxyGroups = const [],
@JsonKey(fromJson: _genRule) final List<Rule> rule = const [],
@JsonKey(name: "rule-providers", fromJson: _genRuleProviders)
final List<RuleProvider> ruleProvider = const [],
@JsonKey(name: "sub-rules", fromJson: _genSubRules)
final List<SubRule> subRules = const []})
: _proxyGroups = proxyGroups,
_rule = rule,
_ruleProvider = ruleProvider,
_subRules = subRules;
factory _$ClashConfigSnippetImpl.fromJson(Map<String, dynamic> json) =>
_$$ClashConfigSnippetImplFromJson(json);
final List<ProxyGroup> _proxyGroups;
@override
@JsonKey(name: "proxy-groups")
List<ProxyGroup> get proxyGroups {
if (_proxyGroups is EqualUnmodifiableListView) return _proxyGroups;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_proxyGroups);
}
final List<Rule> _rule;
@override
@JsonKey(fromJson: _genRule)
List<Rule> get rule {
if (_rule is EqualUnmodifiableListView) return _rule;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_rule);
}
final List<RuleProvider> _ruleProvider;
@override
@JsonKey(name: "rule-providers", fromJson: _genRuleProviders)
List<RuleProvider> get ruleProvider {
if (_ruleProvider is EqualUnmodifiableListView) return _ruleProvider;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_ruleProvider);
}
final List<SubRule> _subRules;
@override
@JsonKey(name: "sub-rules", fromJson: _genSubRules)
List<SubRule> get subRules {
if (_subRules is EqualUnmodifiableListView) return _subRules;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_subRules);
}
@override
String toString() {
return 'ClashConfigSnippet(proxyGroups: $proxyGroups, rule: $rule, ruleProvider: $ruleProvider, subRules: $subRules)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$ClashConfigSnippetImpl &&
const DeepCollectionEquality()
.equals(other._proxyGroups, _proxyGroups) &&
const DeepCollectionEquality().equals(other._rule, _rule) &&
const DeepCollectionEquality()
.equals(other._ruleProvider, _ruleProvider) &&
const DeepCollectionEquality().equals(other._subRules, _subRules));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(
runtimeType,
const DeepCollectionEquality().hash(_proxyGroups),
const DeepCollectionEquality().hash(_rule),
const DeepCollectionEquality().hash(_ruleProvider),
const DeepCollectionEquality().hash(_subRules));
/// Create a copy of ClashConfigSnippet
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$ClashConfigSnippetImplCopyWith<_$ClashConfigSnippetImpl> get copyWith =>
__$$ClashConfigSnippetImplCopyWithImpl<_$ClashConfigSnippetImpl>(
this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$ClashConfigSnippetImplToJson(
this,
);
}
}
abstract class _ClashConfigSnippet implements ClashConfigSnippet {
const factory _ClashConfigSnippet(
{@JsonKey(name: "proxy-groups") final List<ProxyGroup> proxyGroups,
@JsonKey(fromJson: _genRule) final List<Rule> rule,
@JsonKey(name: "rule-providers", fromJson: _genRuleProviders)
final List<RuleProvider> ruleProvider,
@JsonKey(name: "sub-rules", fromJson: _genSubRules)
final List<SubRule> subRules}) = _$ClashConfigSnippetImpl;
factory _ClashConfigSnippet.fromJson(Map<String, dynamic> json) =
_$ClashConfigSnippetImpl.fromJson;
@override
@JsonKey(name: "proxy-groups")
List<ProxyGroup> get proxyGroups;
@override
@JsonKey(fromJson: _genRule)
List<Rule> get rule;
@override
@JsonKey(name: "rule-providers", fromJson: _genRuleProviders)
List<RuleProvider> get ruleProvider;
@override
@JsonKey(name: "sub-rules", fromJson: _genSubRules)
List<SubRule> get subRules;
/// Create a copy of ClashConfigSnippet
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$ClashConfigSnippetImplCopyWith<_$ClashConfigSnippetImpl> get copyWith =>
throw _privateConstructorUsedError;
}
ClashConfig _$ClashConfigFromJson(Map<String, dynamic> json) {
return _ClashConfig.fromJson(json);
}
/// @nodoc
mixin _$ClashConfig {
@JsonKey(name: "mixed-port")
int get mixedPort => throw _privateConstructorUsedError;
Mode get mode => throw _privateConstructorUsedError;
@JsonKey(name: "allow-lan")
bool get allowLan => throw _privateConstructorUsedError;
@JsonKey(name: "log-level")
LogLevel get logLevel => throw _privateConstructorUsedError;
bool get ipv6 => throw _privateConstructorUsedError;
@JsonKey(name: "find-process-mode", unknownEnumValue: FindProcessMode.always)
FindProcessMode get findProcessMode => throw _privateConstructorUsedError;
@JsonKey(name: "keep-alive-interval")
int get keepAliveInterval => throw _privateConstructorUsedError;
@JsonKey(name: "unified-delay")
bool get unifiedDelay => throw _privateConstructorUsedError;
@JsonKey(name: "tcp-concurrent")
bool get tcpConcurrent => throw _privateConstructorUsedError;
@JsonKey(fromJson: Tun.safeFormJson)
Tun get tun => throw _privateConstructorUsedError;
@JsonKey(fromJson: Dns.safeDnsFromJson)
Dns get dns => throw _privateConstructorUsedError;
@JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson)
GeoXUrl get geoXUrl => throw _privateConstructorUsedError;
@JsonKey(name: "geodata-loader")
GeodataLoader get geodataLoader => throw _privateConstructorUsedError;
@JsonKey(name: "proxy-groups")
List<ProxyGroup> get proxyGroups => throw _privateConstructorUsedError;
List<String> get rule => throw _privateConstructorUsedError;
@JsonKey(name: "global-ua")
String? get globalUa => throw _privateConstructorUsedError;
@JsonKey(name: "external-controller")
ExternalControllerStatus get externalController =>
throw _privateConstructorUsedError;
Map<String, String> get hosts => throw _privateConstructorUsedError;
/// Serializes this ClashConfig to a JSON map.
Map<String, dynamic> toJson() => throw _privateConstructorUsedError;
/// Create a copy of ClashConfig
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
$ClashConfigCopyWith<ClashConfig> get copyWith =>
throw _privateConstructorUsedError;
}
/// @nodoc
abstract class $ClashConfigCopyWith<$Res> {
factory $ClashConfigCopyWith(
ClashConfig value, $Res Function(ClashConfig) then) =
_$ClashConfigCopyWithImpl<$Res, ClashConfig>;
@useResult
$Res call(
{@JsonKey(name: "mixed-port") int mixedPort,
Mode mode,
@JsonKey(name: "allow-lan") bool allowLan,
@JsonKey(name: "log-level") LogLevel logLevel,
bool ipv6,
@JsonKey(
name: "find-process-mode", unknownEnumValue: FindProcessMode.always)
FindProcessMode findProcessMode,
@JsonKey(name: "keep-alive-interval") int keepAliveInterval,
@JsonKey(name: "unified-delay") bool unifiedDelay,
@JsonKey(name: "tcp-concurrent") bool tcpConcurrent,
@JsonKey(fromJson: Tun.safeFormJson) Tun tun,
@JsonKey(fromJson: Dns.safeDnsFromJson) Dns dns,
@JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson)
GeoXUrl geoXUrl,
@JsonKey(name: "geodata-loader") GeodataLoader geodataLoader,
@JsonKey(name: "proxy-groups") List<ProxyGroup> proxyGroups,
List<String> rule,
@JsonKey(name: "global-ua") String? globalUa,
@JsonKey(name: "external-controller")
ExternalControllerStatus externalController,
Map<String, String> hosts});
$TunCopyWith<$Res> get tun;
$DnsCopyWith<$Res> get dns;
$GeoXUrlCopyWith<$Res> get geoXUrl;
}
/// @nodoc
class _$ClashConfigCopyWithImpl<$Res, $Val extends ClashConfig>
implements $ClashConfigCopyWith<$Res> {
_$ClashConfigCopyWithImpl(this._value, this._then);
// ignore: unused_field
final $Val _value;
// ignore: unused_field
final $Res Function($Val) _then;
/// Create a copy of ClashConfig
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? mixedPort = null,
Object? mode = null,
Object? allowLan = null,
Object? logLevel = null,
Object? ipv6 = null,
Object? findProcessMode = null,
Object? keepAliveInterval = null,
Object? unifiedDelay = null,
Object? tcpConcurrent = null,
Object? tun = null,
Object? dns = null,
Object? geoXUrl = null,
Object? geodataLoader = null,
Object? proxyGroups = null,
Object? rule = null,
Object? globalUa = freezed,
Object? externalController = null,
Object? hosts = null,
}) {
return _then(_value.copyWith(
mixedPort: null == mixedPort
? _value.mixedPort
: mixedPort // ignore: cast_nullable_to_non_nullable
as int,
mode: null == mode
? _value.mode
: mode // ignore: cast_nullable_to_non_nullable
as Mode,
allowLan: null == allowLan
? _value.allowLan
: allowLan // ignore: cast_nullable_to_non_nullable
as bool,
logLevel: null == logLevel
? _value.logLevel
: logLevel // ignore: cast_nullable_to_non_nullable
as LogLevel,
ipv6: null == ipv6
? _value.ipv6
: ipv6 // ignore: cast_nullable_to_non_nullable
as bool,
findProcessMode: null == findProcessMode
? _value.findProcessMode
: findProcessMode // ignore: cast_nullable_to_non_nullable
as FindProcessMode,
keepAliveInterval: null == keepAliveInterval
? _value.keepAliveInterval
: keepAliveInterval // ignore: cast_nullable_to_non_nullable
as int,
unifiedDelay: null == unifiedDelay
? _value.unifiedDelay
: unifiedDelay // ignore: cast_nullable_to_non_nullable
as bool,
tcpConcurrent: null == tcpConcurrent
? _value.tcpConcurrent
: tcpConcurrent // ignore: cast_nullable_to_non_nullable
as bool,
tun: null == tun
? _value.tun
: tun // ignore: cast_nullable_to_non_nullable
as Tun,
dns: null == dns
? _value.dns
: dns // ignore: cast_nullable_to_non_nullable
as Dns,
geoXUrl: null == geoXUrl
? _value.geoXUrl
: geoXUrl // ignore: cast_nullable_to_non_nullable
as GeoXUrl,
geodataLoader: null == geodataLoader
? _value.geodataLoader
: geodataLoader // ignore: cast_nullable_to_non_nullable
as GeodataLoader,
proxyGroups: null == proxyGroups
? _value.proxyGroups
: proxyGroups // ignore: cast_nullable_to_non_nullable
as List<ProxyGroup>,
rule: null == rule
? _value.rule
: rule // ignore: cast_nullable_to_non_nullable
as List<String>,
globalUa: freezed == globalUa
? _value.globalUa
: globalUa // ignore: cast_nullable_to_non_nullable
as String?,
externalController: null == externalController
? _value.externalController
: externalController // ignore: cast_nullable_to_non_nullable
as ExternalControllerStatus,
hosts: null == hosts
? _value.hosts
: hosts // ignore: cast_nullable_to_non_nullable
as Map<String, String>,
) as $Val);
}
/// Create a copy of ClashConfig
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$TunCopyWith<$Res> get tun {
return $TunCopyWith<$Res>(_value.tun, (value) {
return _then(_value.copyWith(tun: value) as $Val);
});
}
/// Create a copy of ClashConfig
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$DnsCopyWith<$Res> get dns {
return $DnsCopyWith<$Res>(_value.dns, (value) {
return _then(_value.copyWith(dns: value) as $Val);
});
}
/// Create a copy of ClashConfig
/// with the given fields replaced by the non-null parameter values.
@override
@pragma('vm:prefer-inline')
$GeoXUrlCopyWith<$Res> get geoXUrl {
return $GeoXUrlCopyWith<$Res>(_value.geoXUrl, (value) {
return _then(_value.copyWith(geoXUrl: value) as $Val);
});
}
}
/// @nodoc
abstract class _$$ClashConfigImplCopyWith<$Res>
implements $ClashConfigCopyWith<$Res> {
factory _$$ClashConfigImplCopyWith(
_$ClashConfigImpl value, $Res Function(_$ClashConfigImpl) then) =
__$$ClashConfigImplCopyWithImpl<$Res>;
@override
@useResult
$Res call(
{@JsonKey(name: "mixed-port") int mixedPort,
Mode mode,
@JsonKey(name: "allow-lan") bool allowLan,
@JsonKey(name: "log-level") LogLevel logLevel,
bool ipv6,
@JsonKey(
name: "find-process-mode", unknownEnumValue: FindProcessMode.always)
FindProcessMode findProcessMode,
@JsonKey(name: "keep-alive-interval") int keepAliveInterval,
@JsonKey(name: "unified-delay") bool unifiedDelay,
@JsonKey(name: "tcp-concurrent") bool tcpConcurrent,
@JsonKey(fromJson: Tun.safeFormJson) Tun tun,
@JsonKey(fromJson: Dns.safeDnsFromJson) Dns dns,
@JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson)
GeoXUrl geoXUrl,
@JsonKey(name: "geodata-loader") GeodataLoader geodataLoader,
@JsonKey(name: "proxy-groups") List<ProxyGroup> proxyGroups,
List<String> rule,
@JsonKey(name: "global-ua") String? globalUa,
@JsonKey(name: "external-controller")
ExternalControllerStatus externalController,
Map<String, String> hosts});
@override
$TunCopyWith<$Res> get tun;
@override
$DnsCopyWith<$Res> get dns;
@override
$GeoXUrlCopyWith<$Res> get geoXUrl;
}
/// @nodoc
class __$$ClashConfigImplCopyWithImpl<$Res>
extends _$ClashConfigCopyWithImpl<$Res, _$ClashConfigImpl>
implements _$$ClashConfigImplCopyWith<$Res> {
__$$ClashConfigImplCopyWithImpl(
_$ClashConfigImpl _value, $Res Function(_$ClashConfigImpl) _then)
: super(_value, _then);
/// Create a copy of ClashConfig
/// with the given fields replaced by the non-null parameter values.
@pragma('vm:prefer-inline')
@override
$Res call({
Object? mixedPort = null,
Object? mode = null,
Object? allowLan = null,
Object? logLevel = null,
Object? ipv6 = null,
Object? findProcessMode = null,
Object? keepAliveInterval = null,
Object? unifiedDelay = null,
Object? tcpConcurrent = null,
Object? tun = null,
Object? dns = null,
Object? geoXUrl = null,
Object? geodataLoader = null,
Object? proxyGroups = null,
Object? rule = null,
Object? globalUa = freezed,
Object? externalController = null,
Object? hosts = null,
}) {
return _then(_$ClashConfigImpl(
mixedPort: null == mixedPort
? _value.mixedPort
: mixedPort // ignore: cast_nullable_to_non_nullable
as int,
mode: null == mode
? _value.mode
: mode // ignore: cast_nullable_to_non_nullable
as Mode,
allowLan: null == allowLan
? _value.allowLan
: allowLan // ignore: cast_nullable_to_non_nullable
as bool,
logLevel: null == logLevel
? _value.logLevel
: logLevel // ignore: cast_nullable_to_non_nullable
as LogLevel,
ipv6: null == ipv6
? _value.ipv6
: ipv6 // ignore: cast_nullable_to_non_nullable
as bool,
findProcessMode: null == findProcessMode
? _value.findProcessMode
: findProcessMode // ignore: cast_nullable_to_non_nullable
as FindProcessMode,
keepAliveInterval: null == keepAliveInterval
? _value.keepAliveInterval
: keepAliveInterval // ignore: cast_nullable_to_non_nullable
as int,
unifiedDelay: null == unifiedDelay
? _value.unifiedDelay
: unifiedDelay // ignore: cast_nullable_to_non_nullable
as bool,
tcpConcurrent: null == tcpConcurrent
? _value.tcpConcurrent
: tcpConcurrent // ignore: cast_nullable_to_non_nullable
as bool,
tun: null == tun
? _value.tun
: tun // ignore: cast_nullable_to_non_nullable
as Tun,
dns: null == dns
? _value.dns
: dns // ignore: cast_nullable_to_non_nullable
as Dns,
geoXUrl: null == geoXUrl
? _value.geoXUrl
: geoXUrl // ignore: cast_nullable_to_non_nullable
as GeoXUrl,
geodataLoader: null == geodataLoader
? _value.geodataLoader
: geodataLoader // ignore: cast_nullable_to_non_nullable
as GeodataLoader,
proxyGroups: null == proxyGroups
? _value._proxyGroups
: proxyGroups // ignore: cast_nullable_to_non_nullable
as List<ProxyGroup>,
rule: null == rule
? _value._rule
: rule // ignore: cast_nullable_to_non_nullable
as List<String>,
globalUa: freezed == globalUa
? _value.globalUa
: globalUa // ignore: cast_nullable_to_non_nullable
as String?,
externalController: null == externalController
? _value.externalController
: externalController // ignore: cast_nullable_to_non_nullable
as ExternalControllerStatus,
hosts: null == hosts
? _value._hosts
: hosts // ignore: cast_nullable_to_non_nullable
as Map<String, String>,
));
}
}
/// @nodoc
@JsonSerializable()
class _$ClashConfigImpl implements _ClashConfig {
const _$ClashConfigImpl(
{@JsonKey(name: "mixed-port") this.mixedPort = defaultMixedPort,
this.mode = Mode.rule,
@JsonKey(name: "allow-lan") this.allowLan = false,
@JsonKey(name: "log-level") this.logLevel = LogLevel.error,
this.ipv6 = false,
@JsonKey(
name: "find-process-mode", unknownEnumValue: FindProcessMode.always)
this.findProcessMode = FindProcessMode.off,
@JsonKey(name: "keep-alive-interval")
this.keepAliveInterval = defaultKeepAliveInterval,
@JsonKey(name: "unified-delay") this.unifiedDelay = true,
@JsonKey(name: "tcp-concurrent") this.tcpConcurrent = true,
@JsonKey(fromJson: Tun.safeFormJson) this.tun = defaultTun,
@JsonKey(fromJson: Dns.safeDnsFromJson) this.dns = defaultDns,
@JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson)
this.geoXUrl = defaultGeoXUrl,
@JsonKey(name: "geodata-loader")
this.geodataLoader = GeodataLoader.memconservative,
@JsonKey(name: "proxy-groups")
final List<ProxyGroup> proxyGroups = const [],
final List<String> rule = const [],
@JsonKey(name: "global-ua") this.globalUa,
@JsonKey(name: "external-controller")
this.externalController = ExternalControllerStatus.close,
final Map<String, String> hosts = const {}})
: _proxyGroups = proxyGroups,
_rule = rule,
_hosts = hosts;
factory _$ClashConfigImpl.fromJson(Map<String, dynamic> json) =>
_$$ClashConfigImplFromJson(json);
@override
@JsonKey(name: "mixed-port")
final int mixedPort;
@override
@JsonKey()
final Mode mode;
@override
@JsonKey(name: "allow-lan")
final bool allowLan;
@override
@JsonKey(name: "log-level")
final LogLevel logLevel;
@override
@JsonKey()
final bool ipv6;
@override
@JsonKey(name: "find-process-mode", unknownEnumValue: FindProcessMode.always)
final FindProcessMode findProcessMode;
@override
@JsonKey(name: "keep-alive-interval")
final int keepAliveInterval;
@override
@JsonKey(name: "unified-delay")
final bool unifiedDelay;
@override
@JsonKey(name: "tcp-concurrent")
final bool tcpConcurrent;
@override
@JsonKey(fromJson: Tun.safeFormJson)
final Tun tun;
@override
@JsonKey(fromJson: Dns.safeDnsFromJson)
final Dns dns;
@override
@JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson)
final GeoXUrl geoXUrl;
@override
@JsonKey(name: "geodata-loader")
final GeodataLoader geodataLoader;
final List<ProxyGroup> _proxyGroups;
@override
@JsonKey(name: "proxy-groups")
List<ProxyGroup> get proxyGroups {
if (_proxyGroups is EqualUnmodifiableListView) return _proxyGroups;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_proxyGroups);
}
final List<String> _rule;
@override
@JsonKey()
List<String> get rule {
if (_rule is EqualUnmodifiableListView) return _rule;
// ignore: implicit_dynamic_type
return EqualUnmodifiableListView(_rule);
}
@override
@JsonKey(name: "global-ua")
final String? globalUa;
@override
@JsonKey(name: "external-controller")
final ExternalControllerStatus externalController;
final Map<String, String> _hosts;
@override
@JsonKey()
Map<String, String> get hosts {
if (_hosts is EqualUnmodifiableMapView) return _hosts;
// ignore: implicit_dynamic_type
return EqualUnmodifiableMapView(_hosts);
}
@override
String toString() {
return 'ClashConfig(mixedPort: $mixedPort, mode: $mode, allowLan: $allowLan, logLevel: $logLevel, ipv6: $ipv6, findProcessMode: $findProcessMode, keepAliveInterval: $keepAliveInterval, unifiedDelay: $unifiedDelay, tcpConcurrent: $tcpConcurrent, tun: $tun, dns: $dns, geoXUrl: $geoXUrl, geodataLoader: $geodataLoader, proxyGroups: $proxyGroups, rule: $rule, globalUa: $globalUa, externalController: $externalController, hosts: $hosts)';
}
@override
bool operator ==(Object other) {
return identical(this, other) ||
(other.runtimeType == runtimeType &&
other is _$ClashConfigImpl &&
(identical(other.mixedPort, mixedPort) ||
other.mixedPort == mixedPort) &&
(identical(other.mode, mode) || other.mode == mode) &&
(identical(other.allowLan, allowLan) ||
other.allowLan == allowLan) &&
(identical(other.logLevel, logLevel) ||
other.logLevel == logLevel) &&
(identical(other.ipv6, ipv6) || other.ipv6 == ipv6) &&
(identical(other.findProcessMode, findProcessMode) ||
other.findProcessMode == findProcessMode) &&
(identical(other.keepAliveInterval, keepAliveInterval) ||
other.keepAliveInterval == keepAliveInterval) &&
(identical(other.unifiedDelay, unifiedDelay) ||
other.unifiedDelay == unifiedDelay) &&
(identical(other.tcpConcurrent, tcpConcurrent) ||
other.tcpConcurrent == tcpConcurrent) &&
(identical(other.tun, tun) || other.tun == tun) &&
(identical(other.dns, dns) || other.dns == dns) &&
(identical(other.geoXUrl, geoXUrl) || other.geoXUrl == geoXUrl) &&
(identical(other.geodataLoader, geodataLoader) ||
other.geodataLoader == geodataLoader) &&
const DeepCollectionEquality()
.equals(other._proxyGroups, _proxyGroups) &&
const DeepCollectionEquality().equals(other._rule, _rule) &&
(identical(other.globalUa, globalUa) ||
other.globalUa == globalUa) &&
(identical(other.externalController, externalController) ||
other.externalController == externalController) &&
const DeepCollectionEquality().equals(other._hosts, _hosts));
}
@JsonKey(includeFromJson: false, includeToJson: false)
@override
int get hashCode => Object.hash(
runtimeType,
mixedPort,
mode,
allowLan,
logLevel,
ipv6,
findProcessMode,
keepAliveInterval,
unifiedDelay,
tcpConcurrent,
tun,
dns,
geoXUrl,
geodataLoader,
const DeepCollectionEquality().hash(_proxyGroups),
const DeepCollectionEquality().hash(_rule),
globalUa,
externalController,
const DeepCollectionEquality().hash(_hosts));
/// Create a copy of ClashConfig
/// with the given fields replaced by the non-null parameter values.
@JsonKey(includeFromJson: false, includeToJson: false)
@override
@pragma('vm:prefer-inline')
_$$ClashConfigImplCopyWith<_$ClashConfigImpl> get copyWith =>
__$$ClashConfigImplCopyWithImpl<_$ClashConfigImpl>(this, _$identity);
@override
Map<String, dynamic> toJson() {
return _$$ClashConfigImplToJson(
this,
);
}
}
abstract class _ClashConfig implements ClashConfig {
const factory _ClashConfig(
{@JsonKey(name: "mixed-port") final int mixedPort,
final Mode mode,
@JsonKey(name: "allow-lan") final bool allowLan,
@JsonKey(name: "log-level") final LogLevel logLevel,
final bool ipv6,
@JsonKey(
name: "find-process-mode", unknownEnumValue: FindProcessMode.always)
final FindProcessMode findProcessMode,
@JsonKey(name: "keep-alive-interval") final int keepAliveInterval,
@JsonKey(name: "unified-delay") final bool unifiedDelay,
@JsonKey(name: "tcp-concurrent") final bool tcpConcurrent,
@JsonKey(fromJson: Tun.safeFormJson) final Tun tun,
@JsonKey(fromJson: Dns.safeDnsFromJson) final Dns dns,
@JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson)
final GeoXUrl geoXUrl,
@JsonKey(name: "geodata-loader") final GeodataLoader geodataLoader,
@JsonKey(name: "proxy-groups") final List<ProxyGroup> proxyGroups,
final List<String> rule,
@JsonKey(name: "global-ua") final String? globalUa,
@JsonKey(name: "external-controller")
final ExternalControllerStatus externalController,
final Map<String, String> hosts}) = _$ClashConfigImpl;
factory _ClashConfig.fromJson(Map<String, dynamic> json) =
_$ClashConfigImpl.fromJson;
@override
@JsonKey(name: "mixed-port")
int get mixedPort;
@override
Mode get mode;
@override
@JsonKey(name: "allow-lan")
bool get allowLan;
@override
@JsonKey(name: "log-level")
LogLevel get logLevel;
@override
bool get ipv6;
@override
@JsonKey(name: "find-process-mode", unknownEnumValue: FindProcessMode.always)
FindProcessMode get findProcessMode;
@override
@JsonKey(name: "keep-alive-interval")
int get keepAliveInterval;
@override
@JsonKey(name: "unified-delay")
bool get unifiedDelay;
@override
@JsonKey(name: "tcp-concurrent")
bool get tcpConcurrent;
@override
@JsonKey(fromJson: Tun.safeFormJson)
Tun get tun;
@override
@JsonKey(fromJson: Dns.safeDnsFromJson)
Dns get dns;
@override
@JsonKey(name: "geox-url", fromJson: GeoXUrl.safeFormJson)
GeoXUrl get geoXUrl;
@override
@JsonKey(name: "geodata-loader")
GeodataLoader get geodataLoader;
@override
@JsonKey(name: "proxy-groups")
List<ProxyGroup> get proxyGroups;
@override
List<String> get rule;
@override
@JsonKey(name: "global-ua")
String? get globalUa;
@override
@JsonKey(name: "external-controller")
ExternalControllerStatus get externalController;
@override
Map<String, String> get hosts;
/// Create a copy of ClashConfig
/// with the given fields replaced by the non-null parameter values.
@override
@JsonKey(includeFromJson: false, includeToJson: false)
_$$ClashConfigImplCopyWith<_$ClashConfigImpl> get copyWith =>
throw _privateConstructorUsedError;
}