export default defineEventHandler((event) => { const userAgent = getHeader(event, 'user-agent') || '' // Detect if the requesting device is a tablet // Android tablets: have "Android" but NOT "Mobile" // iPads: older iPads have "iPad" in UA; newer iPadOS 13+ report as "Macintosh" const isAndroidTablet = /Android/i.test(userAgent) && !/Mobile/i.test(userAgent) const isIPad = /iPad/i.test(userAgent) || (/Macintosh/i.test(userAgent) && /Safari/i.test(userAgent) && /AppleWebKit/i.test(userAgent) && !/Chrome/i.test(userAgent)) const isTablet = isAndroidTablet || isIPad const manifest = { name: 'LogShip ERP', short_name: 'LogShip', description: 'LogShip ERP - Order Management System', start_url: '/', display: 'standalone', background_color: '#ffffff', theme_color: '#1a1a1a', orientation: isTablet ? 'any' : 'portrait', scope: '/', icons: [ { src: '/icon-72x72.png', sizes: '72x72', type: 'image/png', purpose: 'any' }, { src: '/icon-96x96.png', sizes: '96x96', type: 'image/png', purpose: 'any' }, { src: '/icon-128x128.png', sizes: '128x128', type: 'image/png', purpose: 'any' }, { src: '/icon-144x144.png', sizes: '144x144', type: 'image/png', purpose: 'any' }, { src: '/icon-152x152.png', sizes: '152x152', type: 'image/png', purpose: 'any' }, { src: '/icon-192x192.png', sizes: '192x192', type: 'image/png', purpose: 'any maskable' }, { src: '/icon-384x384.png', sizes: '384x384', type: 'image/png', purpose: 'any' }, { src: '/icon-512x512.png', sizes: '512x512', type: 'image/png', purpose: 'any maskable' } ], categories: ['business', 'productivity'], prefer_related_applications: false } setHeader(event, 'content-type', 'application/manifest+json') return manifest })