Skip to content

Commit 9f5290b

Browse files
committed
Fix dependencies, resolved dart problem
1 parent f10d59e commit 9f5290b

File tree

4 files changed

+14
-92
lines changed

4 files changed

+14
-92
lines changed

example/lib/main.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
import 'package:flutter/material.dart';
22
import 'dart:async';
3-
import 'package:vpnclient_engine_flutter/vpnclient_engine_flutter.dart';
43
import 'package:vpnclient_engine_flutter/vpnclient_engine/engine.dart';
54

65
void main() {

lib/vpnclient_engine/core.dart

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
import 'dart:async';
2-
import 'dart:convert';
3-
import 'package:http/http.dart' as http;
4-
import 'package:dart_ping/dart_ping.dart';
52
import 'package:flutter/foundation.dart';
6-
import 'package:flutter_v2ray/flutter_v2ray.dart';
7-
import 'package:rxdart/rxdart.dart';
83

94
enum ConnectionStatus { connecting, connected, disconnected, error }
105

lib/vpnclient_engine/engine.dart

Lines changed: 9 additions & 86 deletions
Original file line numberDiff line numberDiff line change
@@ -4,92 +4,15 @@ import 'package:http/http.dart' as http;
44
import 'package:flutter_v2ray/flutter_v2ray.dart';
55
import 'package:dart_ping/dart_ping.dart';
66
import 'package:rxdart/rxdart.dart';
7-
import 'package:vpnclient_engine_flutter/vpnclient_engine_flutter.dart';
87
import 'package:vpnclient_engine_flutter/vpnclient_engine/core.dart';
9-
import 'package:vpnclient_engine_flutter/vpnclient_engine/protocols/openvpn.dart';
8+
//import 'package:vpnclient_engine_flutter/vpnclient_engine/protocols/openvpn.dart';
109
import 'package:vpnclient_engine_flutter/vpnclient_engine/protocols/v2ray.dart';
11-
import 'package:vpnclient_engine_flutter/vpnclient_engine/protocols/wireguard.dart';
12-
13-
enum Action { block, allow, routeThroughVPN, direct, proxy }
14-
15-
class Server {
16-
final String address;
17-
final int? latency;
18-
final String? location;
19-
final bool? isPreferred;
20-
21-
Server({
22-
required this.address,
23-
this.latency,
24-
this.location,
25-
this.isPreferred,
26-
});
27-
}
28-
29-
class SubscriptionDetails {
30-
final DateTime? expiryDate;
31-
final int? dataLimit;
32-
final int? usedData;
33-
34-
SubscriptionDetails({this.expiryDate, this.dataLimit, this.usedData});
35-
}
36-
37-
class SessionStatistics {
38-
final Duration? sessionDuration;
39-
final int dataInBytes;
40-
final int dataOutBytes;
10+
//import 'package:vpnclient_engine_flutter/vpnclient_engine/protocols/wireguard.dart';
4111

42-
SessionStatistics({
43-
this.sessionDuration,
44-
required this.dataInBytes,
45-
required this.dataOutBytes,
46-
});
47-
}
48-
49-
class ErrorDetails {
50-
final ErrorCode errorCode;
51-
final String errorMessage;
52-
53-
ErrorDetails({required this.errorCode, required this.errorMessage});
54-
}
55-
56-
class ProxyConfig {
57-
final ProxyType type;
58-
final String address;
59-
final int port;
60-
final String? credentials;
61-
62-
ProxyConfig({
63-
required this.type,
64-
required this.address,
65-
required this.port,
66-
this.credentials,
67-
});
68-
}
69-
70-
class PingResult {
71-
final int subscriptionIndex;
72-
final int serverIndex;
73-
final int latencyInMs;
74-
75-
PingResult({
76-
required this.subscriptionIndex,
77-
required this.serverIndex,
78-
required this.latencyInMs,
79-
});
80-
}
81-
82-
class RoutingRule {
83-
final String? appName;
84-
final String? domain;
85-
final String action; // proxy, direct, block
86-
87-
RoutingRule({this.appName, this.domain, required this.action});
88-
}
12+
export 'package:vpnclient_engine_flutter/vpnclient_engine/core.dart';
8913

9014
class VPNclientEngine {
9115
static List<List<String>> _subscriptionServers = [];
92-
static Map<int, ServerConnection> _connections = {};
9316
static List<String> _subscriptions = [];
9417

9518
static final _connectionStatusSubject = BehaviorSubject<ConnectionStatus>();
@@ -217,10 +140,10 @@ class VPNclientEngine {
217140
url.startsWith('vmess://') ||
218141
url.startsWith('v2ray://')) {
219142
_vpnCore = V2RayCore();
220-
} else if (url.startsWith('wg://')) {
221-
_vpnCore = WireGuardCore();
222-
} else if (url.startsWith('openvpn://') || url.endsWith('.ovpn')) {
223-
_vpnCore = OpenVPNCore();
143+
//} else if (url.startsWith('wg://')) {
144+
//_vpnCore = WireGuardCore();
145+
//} else if (url.startsWith('openvpn://') || url.endsWith('.ovpn')) {
146+
//_vpnCore = OpenVPNCore();
224147
} else {
225148
_emitError(ErrorCode.unknownError, 'Unsupported URL format');
226149
return;
@@ -232,8 +155,8 @@ class VPNclientEngine {
232155
}
233156

234157
await _vpnCore.connect(
235-
Server(address: _subscriptionServers[subscriptionIndex][serverIndex]),
236-
proxyConfig,
158+
subscriptionIndex: subscriptionIndex,
159+
serverIndex: serverIndex,
237160
);
238161
}
239162

lib/vpnclient_engine/protocols/v2ray.dart

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
import 'package:flutter_v2ray/flutter_v2ray.dart';
2+
import 'package:dart_ping/dart_ping.dart';
3+
import 'package:http/http.dart' as http;
4+
import 'dart:convert';
5+
import 'package:rxdart/rxdart.dart';
16
import 'package:vpnclient_engine_flutter/vpnclient_engine/core.dart';
27

38
class V2RayCore implements VpnCore {

0 commit comments

Comments
 (0)