diff options
| author | 2026-01-15 15:03:51 +0800 | |
|---|---|---|
| committer | 2026-01-15 15:03:51 +0800 | |
| commit | 10e6048cfbbc5c2b69c9c7bdbd0ab062724fd34d (patch) | |
| tree | 5084a888f01eda13437554644b8124a7cec451af /ui/src/components/HomeView.svelte | |
| parent | fd61cbe823c51c300de7cb6a634c8960a4ee2207 (diff) | |
| download | DropOut-10e6048cfbbc5c2b69c9c7bdbd0ab062724fd34d.tar.gz DropOut-10e6048cfbbc5c2b69c9c7bdbd0ab062724fd34d.zip | |
docs: Update README.md with enhanced feature descriptions, improved UI terminology, and added installation instructions; update image alt text for accessibility
Diffstat (limited to 'ui/src/components/HomeView.svelte')
| -rw-r--r-- | ui/src/components/HomeView.svelte | 14 |
1 files changed, 13 insertions, 1 deletions
diff --git a/ui/src/components/HomeView.svelte b/ui/src/components/HomeView.svelte index 2794712..732545f 100644 --- a/ui/src/components/HomeView.svelte +++ b/ui/src/components/HomeView.svelte @@ -22,10 +22,22 @@ }); } + function escapeHtml(unsafe: string) { + return unsafe + .replace(/&/g, "&") + .replace(/</g, "<") + .replace(/>/g, ">") + .replace(/"/g, """) + .replace(/'/g, "'"); + } + // Enhanced markdown parser with Emoji and GitHub specific features function formatBody(body: string) { if (!body) return ''; + // Escape HTML first to prevent XSS + let processed = escapeHtml(body); + // Emoji map (common GitHub emojis) const emojiMap: Record<string, string> = { ':tada:': '🎉', ':sparkles:': '✨', ':bug:': '🐛', ':memo:': '📝', @@ -89,7 +101,7 @@ </div> <!-- Scrollable Container --> -<div class="relative z-10 h-full {releasesState.isLoading || releasesState.releases.length === 0 ? 'overflow-hidden' : 'overflow-y-auto custom-scrollbar scroll-smooth'}"> +<div class="relative z-10 h-full {releasesState.isLoading ? 'overflow-hidden' : 'overflow-y-auto custom-scrollbar scroll-smooth'}"> <!-- Hero Section (Full Height) --> <div class="min-h-full flex flex-col justify-end p-12 pb-32"> |