The changes fix missing commas between base64-encoded strings in configuration arrays across multiple service modules. This ensures proper parsing of the configuration values during runtime.
Affected modules:
- Anihub
- AnimeON
- Bamboo
- CikavaIdeya
- StarLight
- UAKino
- UaTUT
- Uaflix
- Unimay
Adds a comprehensive host blocking system that prevents requests to specific disallowed hosts across all online streaming services. The implementation includes:
- New `NotAllowedHosts` HashSet containing base64-encoded blocked hostnames
- `IsNotAllowedHost()` method to validate URLs before making HTTP requests
- Integration in all service classes (Anihub, AnimeON, Bamboo, CikavaIdeya, StarLight, UAKino, UaTUT, Uaflix, Unimay)
- Checks applied to search, content fetching, and streaming URL resolution
- Consistent implementation pattern across both Invoke and Controller classes
This security enhancement prevents connections to potentially malicious or unauthorized streaming hosts while maintaining existing functionality for allowed sources.
- Remove manual JSON and HTML building logic in Controller.cs
- Eliminate unused image handling and selection logic
- Remove redundant JsonSerializerOptions and helper methods
- Update Episode model to remove Image property
- Simplify image selection in StarLightInvoke.cs to use single source
- Add Image property to Episode model
- Update episode template call to include image parameter
- Implement SelectImage helper method for flexible image source selection
- Enhance image selection logic for both main content and episodes
- Add Controller.cs for handling StarLight API endpoints
- Add ModInit.cs for module initialization and configuration
- Add StarLightModels.cs for data models (SearchResult, ProjectInfo, etc.)
- Add OnlineApi.cs for integrating with the online API system
- Add StarLight.csproj for project configuration
- Add StarLightInvoke.cs for core functionality including search, project retrieval, and stream resolution
- Add manifest.json for module metadata and initialization
The implementation includes:
- Search functionality with caching
- Project information retrieval with season and episode handling
- Stream resolution with multiple fallback options
- Proxy support and error handling
- Integration with the existing online module system