* fix: enhance MTProto settings and transport planning for DC Relay support
* fix: refactor MTProto settings UI for improved usability and clarity
* fix: update MTProto settings UI to improve DC Relay handling and remove deprecated helper text
* fix: add support for nft_tproxy and nft_socket kernel modules across various platform scripts
* Implement WebSocket client in mtproto package with tests
- Added wsdial.go for WebSocket connection handling, including frame reading/writing, connection upgrades, and error handling.
- Introduced wsHandshakeError for managing WebSocket handshake errors.
- Created wsConn struct to manage WebSocket connections with methods for reading, writing, and closing connections.
- Implemented dialWS function to establish a WebSocket connection with optional socket marking.
- Added wsdial_test.go to include unit tests for WebSocket roundtrip communication and error handling for redirects.
- Utilized httptest to create a mock WebSocket server for testing purposes.
* fix: handle error in ensureIPSet when checking for existing sets
* fix: reorder input chain candidates for nft input filter check
* fix: replace boolean closed flag with atomic.Bool for thread safety in wsConn
* fix: simplify WSCustomDomain assignment in handleMTProtoTestWS
* fix: remove unnecessary blank line in localizeFieldError function
* feat: add memory limit configuration and validation, improve logging settings UI
* fix: handle JSON decoding error in handleMTProtoTestWS function
* feat: add ws_fallback_tcp and ws_endpoint_host to MTProto settings
* fix: validate WSEndpointHost format in MTProto settings
* fix: update memory limit help text in English and Russian localization files
* feat: implement msgSplitter for MTProto message handling and enhance FakeTLS error handling
* test: add unit tests for MsgSplitter and FakeTLS handling
* fix: update WSCustomDomain handling and improve related documentation
* fix: ensure proper closure of connections in proxyToMaskingDomain function
* fix: update WSCustomDomain handling and validate upstream mode in handleMTProtoTestWS
* fix: update removeProxyInputAccept to use signature format for mark comparison
- Implemented a new validation system in the config package to check for various conditions, including port collisions, TLS certificate requirements, and routing mode validity.
- Added detailed error messages for validation failures, including specific field errors for better debugging.
- Introduced API error handling to return structured error responses for invalid configurations.
- Updated the SnackbarProvider to handle multiple snackbar messages in a queue.
- Refactored useSets hook to simplify error handling by removing unnecessary ApiError checks.
- Added localization for error messages in the UI, improving user experience.
- Created utility functions for error localization and reporting.
- Added tests for validation logic to ensure robustness and correctness.
- Simplified destructuring and formatting in various components for better readability.
- Updated API client error handling to use more concise syntax.
- Refactored asynchronous functions to enhance clarity and maintainability.
- Improved handling of state updates and effects in hooks for better performance.
- Cleaned up imports and removed unused variables to streamline code.