Eliminated Microsoft Translator support from the codebase, including its service implementation, API endpoint, and related tests. Updated both English and Chinese README files to reflect the removal and to clarify usage of DeepL and Google endpoints, providing improved examples and API documentation.
Refactored the Microsoft Translator service to use a parameter object for translation requests, improved language code normalization, and enhanced error handling. Updated integration and unit tests to match the new API and moved Microsoft Translator unit tests to a new location under tests/lib/services. Removed the old test file and added more comprehensive test coverage for translation scenarios and error cases.
Refactored the Microsoft Translator integration to improve error handling, token acquisition, and API request structure. Added comprehensive unit tests for translation and service availability, covering success, error, and edge cases.
Introduces a Google Translate integration with a new service module and endpoint (/google), refactors translation handling to support both DeepL and Google providers, and updates cache key generation to include the provider. Adds integration and unit tests for the new provider and updates API route definitions for clarity and extensibility.
Deleted htmlUtils module and its related tests. Removed all references to HTML preservation functions from index.ts and query.ts, simplifying the query logic and eliminating HTML-specific handling.
Changed placeholder format to a unique string less likely to be altered by translation services and added zero-padding for consistency. Updated restoration logic to handle case-insensitive matching of placeholders. Added tests to verify correct restoration when placeholders are converted to lowercase.
Add configuration, documentation, code of conduct, contributing guide, license, and README files. Set up .gitignore, coverage config, GitHub issue templates, pull request template, and initial source code, scripts, and tests for DeepLX optimized for Cloudflare Workers.