@push.rocks/smartproxy 13.1.3 → 15.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (32) hide show
  1. package/dist_ts/00_commitinfo_data.js +3 -3
  2. package/dist_ts/proxies/smart-proxy/domain-config-manager.d.ts +15 -0
  3. package/dist_ts/proxies/smart-proxy/domain-config-manager.js +140 -9
  4. package/dist_ts/proxies/smart-proxy/index.d.ts +5 -3
  5. package/dist_ts/proxies/smart-proxy/index.js +9 -5
  6. package/dist_ts/proxies/smart-proxy/models/index.d.ts +2 -0
  7. package/dist_ts/proxies/smart-proxy/models/index.js +2 -1
  8. package/dist_ts/proxies/smart-proxy/models/interfaces.d.ts +82 -15
  9. package/dist_ts/proxies/smart-proxy/models/interfaces.js +11 -1
  10. package/dist_ts/proxies/smart-proxy/models/route-types.d.ts +133 -0
  11. package/dist_ts/proxies/smart-proxy/models/route-types.js +2 -0
  12. package/dist_ts/proxies/smart-proxy/route-connection-handler.d.ts +55 -0
  13. package/dist_ts/proxies/smart-proxy/route-connection-handler.js +804 -0
  14. package/dist_ts/proxies/smart-proxy/route-helpers.d.ts +127 -0
  15. package/dist_ts/proxies/smart-proxy/route-helpers.js +196 -0
  16. package/dist_ts/proxies/smart-proxy/route-manager.d.ts +103 -0
  17. package/dist_ts/proxies/smart-proxy/route-manager.js +483 -0
  18. package/dist_ts/proxies/smart-proxy/smart-proxy.d.ts +19 -8
  19. package/dist_ts/proxies/smart-proxy/smart-proxy.js +250 -46
  20. package/package.json +2 -2
  21. package/readme.md +675 -446
  22. package/readme.plan.md +311 -250
  23. package/ts/00_commitinfo_data.ts +2 -2
  24. package/ts/proxies/smart-proxy/domain-config-manager.ts +157 -14
  25. package/ts/proxies/smart-proxy/index.ts +20 -4
  26. package/ts/proxies/smart-proxy/models/index.ts +4 -0
  27. package/ts/proxies/smart-proxy/models/interfaces.ts +92 -13
  28. package/ts/proxies/smart-proxy/models/route-types.ts +184 -0
  29. package/ts/proxies/smart-proxy/route-connection-handler.ts +1117 -0
  30. package/ts/proxies/smart-proxy/route-helpers.ts +344 -0
  31. package/ts/proxies/smart-proxy/route-manager.ts +587 -0
  32. package/ts/proxies/smart-proxy/smart-proxy.ts +312 -69
@@ -0,0 +1,55 @@
1
+ import * as plugins from '../../plugins.js';
2
+ import type { ISmartProxyOptions } from './models/interfaces.js';
3
+ import { ConnectionManager } from './connection-manager.js';
4
+ import { SecurityManager } from './security-manager.js';
5
+ import { DomainConfigManager } from './domain-config-manager.js';
6
+ import { TlsManager } from './tls-manager.js';
7
+ import { NetworkProxyBridge } from './network-proxy-bridge.js';
8
+ import { TimeoutManager } from './timeout-manager.js';
9
+ import { RouteManager } from './route-manager.js';
10
+ /**
11
+ * Handles new connection processing and setup logic with support for route-based configuration
12
+ */
13
+ export declare class RouteConnectionHandler {
14
+ private connectionManager;
15
+ private securityManager;
16
+ private domainConfigManager;
17
+ private tlsManager;
18
+ private networkProxyBridge;
19
+ private timeoutManager;
20
+ private routeManager;
21
+ private settings;
22
+ constructor(settings: ISmartProxyOptions, connectionManager: ConnectionManager, securityManager: SecurityManager, domainConfigManager: DomainConfigManager, tlsManager: TlsManager, networkProxyBridge: NetworkProxyBridge, timeoutManager: TimeoutManager, routeManager: RouteManager);
23
+ /**
24
+ * Handle a new incoming connection
25
+ */
26
+ handleConnection(socket: plugins.net.Socket): void;
27
+ /**
28
+ * Handle a connection and wait for TLS handshake for SNI extraction if needed
29
+ */
30
+ private handleTlsConnection;
31
+ /**
32
+ * Route the connection based on match criteria
33
+ */
34
+ private routeConnection;
35
+ /**
36
+ * Handle a forward action for a route
37
+ */
38
+ private handleForwardAction;
39
+ /**
40
+ * Handle a redirect action for a route
41
+ */
42
+ private handleRedirectAction;
43
+ /**
44
+ * Handle a block action for a route
45
+ */
46
+ private handleBlockAction;
47
+ /**
48
+ * Handle a connection using legacy domain configuration
49
+ */
50
+ private handleLegacyConnection;
51
+ /**
52
+ * Sets up a direct connection to the target
53
+ */
54
+ private setupDirectConnection;
55
+ }