- Introduced a centralized routing module with comprehensive matchers for domains, headers, IPs, and paths. - Added DomainMatcher for domain pattern matching with support for wildcards and specificity calculation. - Implemented HeaderMatcher for HTTP header matching, including exact matches and pattern support. - Developed IpMatcher for IP address matching, supporting CIDR notation, ranges, and wildcards. - Created PathMatcher for path matching with parameter extraction and wildcard support. - Established RouteSpecificity class to calculate and compare route specificity scores. - Enhanced HttpRouter to utilize the new matching system, supporting both modern and legacy route configurations. - Added detailed logging and error handling for routing operations.
29 lines
986 B
TypeScript
29 lines
986 B
TypeScript
/**
|
|
* SmartProxy implementation
|
|
*
|
|
* Version 14.0.0: Unified Route-Based Configuration API
|
|
*/
|
|
// Re-export models
|
|
export * from './models/index.js';
|
|
|
|
// Export the main SmartProxy class
|
|
export { SmartProxy } from './smart-proxy.js';
|
|
|
|
// Export core supporting classes
|
|
export { ConnectionManager } from './connection-manager.js';
|
|
export { SecurityManager } from './security-manager.js';
|
|
export { TimeoutManager } from './timeout-manager.js';
|
|
export { TlsManager } from './tls-manager.js';
|
|
export { HttpProxyBridge } from './http-proxy-bridge.js';
|
|
|
|
// Export route-based components
|
|
export { SharedRouteManager as RouteManager } from '../../core/utils/route-manager.js';
|
|
export { RouteConnectionHandler } from './route-connection-handler.js';
|
|
export { NFTablesManager } from './nftables-manager.js';
|
|
|
|
// Export certificate management
|
|
export { SmartCertManager } from './certificate-manager.js';
|
|
|
|
// Export all helper functions from the utils directory
|
|
export * from './utils/index.js';
|