feat(ui): add ImageCacheService, ImageLoader control, and Avalonia XAML converters - #396
Conversation
1510115 to
93c81c9
Compare
…nd use SHA-256 key hashing
93c81c9 to
ba45729
Compare
|
Warning Review limit reached
Next review available in: 43 minutes Limit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. How can I continue?Wait for the limit to reset, then comment An organization admin can change what happens after included review limits in Billing. How do review limits work?CodeRabbit enforces per-developer PR review limits within each organization. For paid Pro and Pro+ reviews, CodeRabbit uses a developer's included PR review attempts over the past 7 days to set the current hourly allowance. At typical activity levels, the full plan allowance applies. Higher sustained activity can lower the allowance until earlier attempts leave the 7-day window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: Organization UI Review profile: ASSERTIVE Plan: Pro Plus Run ID: 📒 Files selected for processing (23)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
|
|
Overall Grade |
Security Reliability Complexity Hygiene |
Code Review Summary
| Analyzer | Status | Updated (UTC) | Details |
|---|---|---|---|
| C# | Aug 20, 2026 9:36p.m. | Review ↗ | |
| JavaScript | Aug 20, 2026 9:36p.m. | Review ↗ | |
| Shell | Aug 20, 2026 9:36p.m. | Review ↗ | |
| Secrets | Aug 20, 2026 9:36p.m. | Review ↗ |
Important
AI Review is run only on demand for your team. We're only showing results of static analysis review right now. To trigger AI Review, comment @deepsourcebot review on this thread.
Summary
Adds an asynchronous two-tier (memory LRU and persistent disk) image caching service, custom
ImageLoaderAvalonia control, and a full suite of XAML value converters for UI bindings.Note
This is a self-contained infrastructure PR carved out of #265 and must be merged ahead of #265.
Changes
ImageCacheServicewith SHA-256 disk key hashing, async file streaming, eviction policy, and memory cache layer.ImageLoaderAvalonia control for responsive, non-blocking image loading with fallback placeholders and error handling.GenHub/Infrastructure/Converters/:StringToImageConverterStripHtmlConverterBoolToBackgroundConverterBoolToBorderConverterContentStateToBrushConverterContentStateToPathDataConverterContentStateToTextConverterGameTypeInitialConverterIndentToMarginConverterNotEqualToConverter&ComparisonConvertersImageCacheServiceTests.cs,StripHtmlConverterTests.cs, andStringToImageConverterTests.cs.Verification