@@ 26-49 (lines=24) @@ | ||
23 | } |
|
24 | }; |
|
25 | ||
26 | export const browserFromUserAgent = (userAgent) => { |
|
27 | if (!hasValue(userAgent)) { |
|
28 | return DEFAULT; |
|
29 | } |
|
30 | ||
31 | const lowerUserAgent = userAgent.toLowerCase(); |
|
32 | ||
33 | switch (true) { |
|
34 | case lowerUserAgent.includes('opera') || lowerUserAgent.includes('opr'): |
|
35 | return 'Opera'; |
|
36 | case lowerUserAgent.includes('firefox'): |
|
37 | return 'Firefox'; |
|
38 | case lowerUserAgent.includes('chrome'): |
|
39 | return 'Chrome'; |
|
40 | case lowerUserAgent.includes('safari'): |
|
41 | return 'Safari'; |
|
42 | case lowerUserAgent.includes('edg'): |
|
43 | return 'Microsoft Edge'; |
|
44 | case lowerUserAgent.includes('msie'): |
|
45 | return 'Internet Explorer'; |
|
46 | default: |
|
47 | return DEFAULT; |
|
48 | } |
|
49 | }; |
|
50 | ||
51 | export const extractDomain = (url) => { |
|
52 | if (!hasValue(url)) { |
|
@@ 5-24 (lines=20) @@ | ||
2 | ||
3 | const DEFAULT = 'Others'; |
|
4 | ||
5 | export const osFromUserAgent = (userAgent) => { |
|
6 | if (!hasValue(userAgent)) { |
|
7 | return DEFAULT; |
|
8 | } |
|
9 | ||
10 | const lowerUserAgent = userAgent.toLowerCase(); |
|
11 | ||
12 | switch (true) { |
|
13 | case lowerUserAgent.includes('linux'): |
|
14 | return 'Linux'; |
|
15 | case lowerUserAgent.includes('windows'): |
|
16 | return 'Windows'; |
|
17 | case lowerUserAgent.includes('mac'): |
|
18 | return 'MacOS'; |
|
19 | case lowerUserAgent.includes('mobi'): |
|
20 | return 'Mobile'; |
|
21 | default: |
|
22 | return DEFAULT; |
|
23 | } |
|
24 | }; |
|
25 | ||
26 | export const browserFromUserAgent = (userAgent) => { |
|
27 | if (!hasValue(userAgent)) { |