vpn_config.dart 987 B

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. import 'package:freezed_annotation/freezed_annotation.dart';
  2. import 'package:flutter/foundation.dart';
  3. part 'vpn_config.freezed.dart';
  4. part 'vpn_config.g.dart';
  5. @freezed
  6. class VpnConfig with _$VpnConfig {
  7. const factory VpnConfig({
  8. List<String>? cdnRouters,
  9. int? autoDisconnectMinutes,
  10. ConnectArgs? connectArgs,
  11. String? defaultDnsServers,
  12. String? forceSkipDomain,
  13. List<String>? routers,
  14. SkipIps? skipIps,
  15. }) = _VpnConfig;
  16. factory VpnConfig.fromJson(Map<String, Object?> json) =>
  17. _$VpnConfigFromJson(json);
  18. }
  19. @freezed
  20. class ConnectArgs with _$ConnectArgs {
  21. const factory ConnectArgs({
  22. String? p,
  23. String? v,
  24. }) = _ConnectArgs;
  25. factory ConnectArgs.fromJson(Map<String, Object?> json) =>
  26. _$ConnectArgsFromJson(json);
  27. }
  28. @freezed
  29. class SkipIps with _$SkipIps {
  30. const factory SkipIps({
  31. String? md5,
  32. String? url,
  33. }) = _SkipIps;
  34. factory SkipIps.fromJson(Map<String, Object?> json) =>
  35. _$SkipIpsFromJson(json);
  36. }