style: Update favicon image URLs in HTML and SVG files
@@ -2,10 +2,10 @@
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="UTF-8" />
|
||||
<link rel="icon" type="image/png" href="/favicon-96x96.png" sizes="96x96" />
|
||||
<link rel="icon" type="image/png" href="/favicon.png" sizes="96x96" />
|
||||
<link rel="icon" type="image/svg+xml" href="/favicon.svg" />
|
||||
<link rel="shortcut icon" href="/favicon.ico" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png" />
|
||||
<link rel="apple-touch-icon" sizes="180x180" href="/favicon.png" />
|
||||
<meta name="apple-mobile-web-app-title" content="MyTube" />
|
||||
<link rel="manifest" href="/site.webmanifest" />
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
|
||||
|
||||
|
Before Width: | Height: | Size: 3.7 KiB |
|
Before Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 15 KiB After Width: | Height: | Size: 4.2 KiB |
BIN
frontend/public/favicon.png
Normal file
|
After Width: | Height: | Size: 13 KiB |
@@ -1,36 +1,34 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="512" height="512"><svg width="512" height="512" viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg">
|
||||
<svg width="512" height="512" viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg">
|
||||
<defs>
|
||||
<linearGradient id="SvgjsLinearGradient1003" x1="0%" y1="0%" x2="0%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#FF7eb3;stop-opacity:1"></stop>
|
||||
<stop offset="100%" style="stop-color:#00bfff;stop-opacity:1"></stop>
|
||||
<linearGradient id="frameGradient" x1="0%" y1="0%" x2="0%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#FF7eb3;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#00bfff;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
|
||||
<linearGradient id="SvgjsLinearGradient1002" x1="0%" y1="100%" x2="100%" y2="0%">
|
||||
<stop offset="0%" style="stop-color:#ff3333;stop-opacity:1"></stop>
|
||||
<stop offset="100%" style="stop-color:#FF7eb3;stop-opacity:1"></stop>
|
||||
<linearGradient id="antLeftGrad" x1="0%" y1="100%" x2="100%" y2="0%">
|
||||
<stop offset="0%" style="stop-color:#ff3333;stop-opacity:1" />
|
||||
<stop offset="100%" style="stop-color:#FF7eb3;stop-opacity:1" />
|
||||
</linearGradient>
|
||||
</defs>
|
||||
|
||||
<g stroke-width="6" stroke-linecap="round">
|
||||
<line x1="80" y1="55" x2="65" y2="35" stroke="url(#antLeftGrad)"></line>
|
||||
<circle cx="65" cy="35" r="6" fill="#FF7eb3"></circle>
|
||||
<line x1="80" y1="55" x2="65" y2="35" stroke="url(#antLeftGrad)" />
|
||||
<circle cx="65" cy="35" r="6" fill="#FF7eb3" />
|
||||
|
||||
<line x1="120" y1="55" x2="135" y2="35" stroke="#00bfff"></line>
|
||||
<circle cx="135" cy="35" r="6" fill="#00bfff"></circle>
|
||||
<line x1="120" y1="55" x2="135" y2="35" stroke="#00bfff" />
|
||||
<circle cx="135" cy="35" r="6" fill="#00bfff" />
|
||||
</g>
|
||||
|
||||
<g>
|
||||
<path d="M 100 50 H 60 Q 30 50 30 80 V 140 Q 30 170 60 170 H 100 V 50 Z" fill="#FF0000"></path>
|
||||
<path d="M 100 50 H 60 Q 30 50 30 80 V 140 Q 30 170 60 170 H 100 V 50 Z" fill="#FF0000" />
|
||||
|
||||
<path d="M 100 50 H 140 Q 170 50 170 80 V 140 Q 170 170 140 170 H 100 V 50 Z" fill="url(#frameGradient)"></path>
|
||||
<path d="M 100 50 H 140 Q 170 50 170 80 V 140 Q 170 170 140 170 H 100 V 50 Z" fill="url(#frameGradient)" />
|
||||
</g>
|
||||
|
||||
<rect x="45" y="65" width="110" height="90" rx="22" fill="white"></rect>
|
||||
<rect x="45" y="65" width="110" height="90" rx="22" fill="white" />
|
||||
|
||||
<rect x="55" y="75" width="90" height="70" rx="16" fill="#FF0000"></rect>
|
||||
<rect x="55" y="75" width="90" height="70" rx="16" fill="#FF0000" />
|
||||
|
||||
<path d="M 90 95 L 90 125 L 115 110 Z" fill="white" stroke="white" stroke-width="2" stroke-linejoin="round"></path>
|
||||
<path d="M 90 95 L 90 125 L 115 110 Z" fill="white" stroke="white" stroke-width="2" stroke-linejoin="round" />
|
||||
|
||||
</svg><style>@media (prefers-color-scheme: light) { :root { filter: none; } }
|
||||
@media (prefers-color-scheme: dark) { :root { filter: none; } }
|
||||
</style></svg>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.7 KiB After Width: | Height: | Size: 1.3 KiB |
|
Before Width: | Height: | Size: 3.7 KiB |
|
Before Width: | Height: | Size: 2.0 KiB |
|
Before Width: | Height: | Size: 15 KiB |
@@ -1,36 +0,0 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="512" height="512"><svg width="512" height="512" viewBox="0 0 200 200" xmlns="http://www.w3.org/2000/svg">
|
||||
<defs>
|
||||
<linearGradient id="SvgjsLinearGradient1003" x1="0%" y1="0%" x2="0%" y2="100%">
|
||||
<stop offset="0%" style="stop-color:#FF7eb3;stop-opacity:1"></stop>
|
||||
<stop offset="100%" style="stop-color:#00bfff;stop-opacity:1"></stop>
|
||||
</linearGradient>
|
||||
|
||||
<linearGradient id="SvgjsLinearGradient1002" x1="0%" y1="100%" x2="100%" y2="0%">
|
||||
<stop offset="0%" style="stop-color:#ff3333;stop-opacity:1"></stop>
|
||||
<stop offset="100%" style="stop-color:#FF7eb3;stop-opacity:1"></stop>
|
||||
</linearGradient>
|
||||
</defs>
|
||||
|
||||
<g stroke-width="6" stroke-linecap="round">
|
||||
<line x1="80" y1="55" x2="65" y2="35" stroke="url(#antLeftGrad)"></line>
|
||||
<circle cx="65" cy="35" r="6" fill="#FF7eb3"></circle>
|
||||
|
||||
<line x1="120" y1="55" x2="135" y2="35" stroke="#00bfff"></line>
|
||||
<circle cx="135" cy="35" r="6" fill="#00bfff"></circle>
|
||||
</g>
|
||||
|
||||
<g>
|
||||
<path d="M 100 50 H 60 Q 30 50 30 80 V 140 Q 30 170 60 170 H 100 V 50 Z" fill="#FF0000"></path>
|
||||
|
||||
<path d="M 100 50 H 140 Q 170 50 170 80 V 140 Q 170 170 140 170 H 100 V 50 Z" fill="url(#frameGradient)"></path>
|
||||
</g>
|
||||
|
||||
<rect x="45" y="65" width="110" height="90" rx="22" fill="white"></rect>
|
||||
|
||||
<rect x="55" y="75" width="90" height="70" rx="16" fill="#FF0000"></rect>
|
||||
|
||||
<path d="M 90 95 L 90 125 L 115 110 Z" fill="white" stroke="white" stroke-width="2" stroke-linejoin="round"></path>
|
||||
|
||||
</svg><style>@media (prefers-color-scheme: light) { :root { filter: none; } }
|
||||
@media (prefers-color-scheme: dark) { :root { filter: none; } }
|
||||
</style></svg>
|
||||
|
Before Width: | Height: | Size: 1.7 KiB |
@@ -1,21 +0,0 @@
|
||||
{
|
||||
"name": "MyTube",
|
||||
"short_name": "MyTube",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/web-app-manifest-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
},
|
||||
{
|
||||
"src": "/web-app-manifest-512x512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
}
|
||||
],
|
||||
"theme_color": "#ffffff",
|
||||
"background_color": "#ffffff",
|
||||
"display": "standalone"
|
||||
}
|
||||
|
Before Width: | Height: | Size: 4.1 KiB |
|
Before Width: | Height: | Size: 14 KiB |
@@ -3,13 +3,13 @@
|
||||
"short_name": "MyTube",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/web-app-manifest-192x192.png",
|
||||
"src": "/favicon.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
},
|
||||
{
|
||||
"src": "/web-app-manifest-512x512.png",
|
||||
"src": "/favicon.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
|
||||
@@ -1 +0,0 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
|
||||
|
Before Width: | Height: | Size: 1.5 KiB |
|
Before Width: | Height: | Size: 4.1 KiB |
|
Before Width: | Height: | Size: 14 KiB |
@@ -19,25 +19,29 @@ const Footer = () => {
|
||||
}}
|
||||
>
|
||||
<Container maxWidth="lg">
|
||||
<Box sx={{ display: 'flex', flexDirection: { xs: 'column', sm: 'row' }, justifyContent: 'center', alignItems: 'center' }}>
|
||||
<Box sx={{ display: 'flex', flexDirection: 'column', justifyContent: 'center', alignItems: 'center' }}>
|
||||
|
||||
<Box sx={{ display: 'flex', alignItems: 'center', mt: { xs: 1, sm: 0 } }}>
|
||||
<Typography variant="body2" color="text.secondary" sx={{ mr: 2 }}>
|
||||
v{import.meta.env.VITE_APP_VERSION}
|
||||
</Typography>
|
||||
<Typography variant="body2" color="text.secondary" sx={{ mr: 2 }}>
|
||||
Created by franklioxygen
|
||||
</Typography>
|
||||
<Link
|
||||
href="https://github.com/franklioxygen/MyTube"
|
||||
target="_blank"
|
||||
rel="noopener noreferrer"
|
||||
color="inherit"
|
||||
underline="none"
|
||||
sx={{ display: 'flex', alignItems: 'center' }}
|
||||
>
|
||||
<GitHub fontSize="small" sx={{ mr: 0.5 }} />
|
||||
<GitHub sx={{ fontSize: 16, mr: 0.5 }} />
|
||||
<Typography variant="body2" color="text.secondary" sx={{ mr: 2 }}>
|
||||
MyTube
|
||||
</Typography>
|
||||
</Link>
|
||||
<Typography variant="body2" color="text.secondary">
|
||||
v{import.meta.env.VITE_APP_VERSION}
|
||||
</Typography>
|
||||
</Box>
|
||||
<Typography variant="body2" color="text.secondary" sx={{ mt: 1 }}>
|
||||
Created by franklioxygen
|
||||
</Typography>
|
||||
</Box>
|
||||
</Container>
|
||||
</Box>
|
||||
|
||||
@@ -229,7 +229,7 @@ const VideoInfo: React.FC<VideoInfoProps> = ({
|
||||
onChange={handleRatingChangeInternal}
|
||||
/>
|
||||
<Typography variant="body2" color="text.secondary" sx={{ ml: 1 }}>
|
||||
{video.rating ? `(${video.rating})` : t('rateThisVideo')}
|
||||
{video.rating ? `` : t('rateThisVideo')}
|
||||
</Typography>
|
||||
<Typography variant="body2" color="text.secondary" sx={{ ml: 2 }}>
|
||||
{video.viewCount || 0} {t('views')}
|
||||
@@ -403,7 +403,7 @@ const VideoInfo: React.FC<VideoInfoProps> = ({
|
||||
{video.addedAt && (
|
||||
<Typography variant="body2" sx={{ display: 'flex', alignItems: 'center' }}>
|
||||
<CalendarToday fontSize="small" sx={{ mr: 0.5 }} />
|
||||
{new Date(video.addedAt).toLocaleDateString()}
|
||||
{new Date(video.addedAt).toISOString().split('T')[0]}
|
||||
</Typography>
|
||||
)}
|
||||
</Box>
|
||||
|
||||