diff --git a/apps/browser/src/globals.d.ts b/apps/browser/src/globals.d.ts index edfc54dcd1a8..753c6fd9b10c 100644 --- a/apps/browser/src/globals.d.ts +++ b/apps/browser/src/globals.d.ts @@ -1,3 +1,5 @@ +export {}; + declare function escape(s: string): string; declare function unescape(s: string): string; /** @@ -127,3 +129,10 @@ declare namespace chrome { declare let opr: Opera | undefined; declare let opera: unknown | undefined; declare let safari: any; + +declare global { + interface Window { + opr: Opera | undefined; + opera: unknown; + } +} diff --git a/apps/browser/src/services/browserPlatformUtils.service.ts b/apps/browser/src/services/browserPlatformUtils.service.ts index fdb2807b2277..a9f1c35567d0 100644 --- a/apps/browser/src/services/browserPlatformUtils.service.ts +++ b/apps/browser/src/services/browserPlatformUtils.service.ts @@ -33,8 +33,8 @@ export default class BrowserPlatformUtilsService implements PlatformUtilsService ) { this.deviceCache = DeviceType.FirefoxExtension; } else if ( - (typeof opr !== "undefined" && typeof opr.addons !== "undefined") || - typeof opera !== "undefined" || + (self.opr && self.opr.addons) || + self.opera || navigator.userAgent.indexOf(" OPR/") >= 0 ) { this.deviceCache = DeviceType.OperaExtension; @@ -42,7 +42,7 @@ export default class BrowserPlatformUtilsService implements PlatformUtilsService this.deviceCache = DeviceType.EdgeExtension; } else if (navigator.userAgent.indexOf(" Vivaldi/") !== -1) { this.deviceCache = DeviceType.VivaldiExtension; - } else if ((window as any).chrome && navigator.userAgent.indexOf(" Chrome/") !== -1) { + } else if (window.chrome && navigator.userAgent.indexOf(" Chrome/") !== -1) { this.deviceCache = DeviceType.ChromeExtension; } else if (navigator.userAgent.indexOf(" Safari/") !== -1) { this.deviceCache = DeviceType.SafariExtension;