export class FingerprintHelper { public static async getPlatform(): Promise< 'TWA' | 'Android' | 'iPhone' | 'Desktop' > { const isTwa: boolean = (document.referrer && document.referrer.startsWith('android-app://')) || 'standalone' in navigator || window.matchMedia('(display-mode: standalone)').matches; if (isTwa) { return 'TWA'; } const userAgent: string = navigator.userAgent; if (/Android/i.test(userAgent)) { // TODO if (/SamsungBrowser/i.test(userAgent)) { return 'TWA'; } return 'Android'; } if (/iPhone/.test(userAgent)) { return 'iPhone'; } return 'Desktop'; } }