fix: installed pwa shortcuts (#2205)

zio/stable
Joaquín Sánchez 2023-07-07 12:56:06 +02:00 committed by GitHub
parent cb109b49b8
commit a08d9d147c
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 17 additions and 2 deletions

View File

@ -14,12 +14,27 @@ export default defineNuxtRouteMiddleware((to) => {
}) })
function handleAuth(to: RouteLocationNormalized) { function handleAuth(to: RouteLocationNormalized) {
if (to.path === '/') {
// Installed PWA shortcut to notifications
if (to.query['notifications-pwa-shortcut'] !== undefined) {
if (currentUser.value)
return navigateTo('/notifications')
else
return navigateTo(`/${currentServer.value}/public/local`)
}
// Installed PWA shortcut to local
if (to.query['local-pwa-shortcut'] !== undefined)
return navigateTo(`/${currentServer.value}/public/local`)
}
if (!currentUser.value) { if (!currentUser.value) {
if (to.path === '/home' && to.query['share-target'] !== undefined) if (to.path === '/home' && to.query['share-target'] !== undefined)
return navigateTo('/share-target') return navigateTo('/share-target')
else else
return navigateTo(`/${currentServer.value}/public/local`) return navigateTo(`/${currentServer.value}/public/local`)
} }
if (to.path === '/') if (to.path === '/')
return navigateTo('/home') return navigateTo('/home')
} }

View File

@ -29,14 +29,14 @@ export async function createI18n(): Promise<LocalizedWebManifest> {
], ],
}, { }, {
name: nav.local, name: nav.local,
url: '/', url: '/?local-pwa-shortcut=true',
icons: [ icons: [
{ src: 'shortcuts/local-96x96.png', sizes: '96x96', type: 'image/png' }, { src: 'shortcuts/local-96x96.png', sizes: '96x96', type: 'image/png' },
{ src: 'shortcuts/local.png', sizes: '192x192', type: 'image/png' }, { src: 'shortcuts/local.png', sizes: '192x192', type: 'image/png' },
], ],
}, { }, {
name: nav.notifications, name: nav.notifications,
url: '/notifications', url: '/?notifications-pwa-shortcut=true',
icons: [ icons: [
{ src: 'shortcuts/notifications-96x96.png', sizes: '96x96', type: 'image/png' }, { src: 'shortcuts/notifications-96x96.png', sizes: '96x96', type: 'image/png' },
{ src: 'shortcuts/notifications.png', sizes: '192x192', type: 'image/png' }, { src: 'shortcuts/notifications.png', sizes: '192x192', type: 'image/png' },