DevTools: Include Edge in browser name detection (#22584)
Juan committed
Oct 19, 2021 at 09:52 UTC
5b9d000c8aff1e9f8368ec3e03b9568c8852fe5e
1 file changed
+16
-3
packages/react-devtools-extensions/src/utils.js
+16
-3
@@ -2,12 +2,25 @@
2
3
import type {BrowserTheme} from 'react-devtools-shared/src/devtools/views/DevTools';
4
5
-const IS_CHROME = navigator.userAgent.indexOf('Firefox') < 0;
5
+const IS_EDGE = navigator.userAgent.indexOf('Edg') >= 0;
6
+const IS_FIREFOX = navigator.userAgent.indexOf('Firefox') >= 0;
7
+const IS_CHROME = IS_EDGE === false && IS_FIREFOX === false;
8
7
-export type BrowserName = 'Chrome' | 'Firefox';
9
+export type BrowserName = 'Chrome' | 'Firefox' | 'Edge';
10
11
export function getBrowserName(): BrowserName {
10
- return IS_CHROME ? 'Chrome' : 'Firefox';
12
+ if (IS_EDGE) {
13
+ return 'Edge';
14
+ }
15
+ if (IS_FIREFOX) {
16
+ return 'Firefox';
17
+ }
18
+ if (IS_CHROME) {
19
+ return 'Chrome';
20
+ }
21
+ throw new Error(
22
+ 'Expected browser name to be one of Chrome, Edge or Firefox.',
23
+ );
24
}
25
26
export function getBrowserTheme(): BrowserTheme {