1 | import { detect } from 'detect-browser';
|
2 | export var SUPPORTED_FIREFOX_VERSION = 57;
|
3 | export var SUPPORTED_CHROME_VERSION = 64;
|
4 | export var SUPPORTED_EDGE_VERSION = 16;
|
5 |
|
6 |
|
7 |
|
8 | export function getUnsupportedBrowserError() {
|
9 | var info = detect();
|
10 | if (!info || !info.version) {
|
11 | return 'browser cannot be detected';
|
12 | }
|
13 | var prefix = "unsupported browser detected:";
|
14 | switch (info.name) {
|
15 | case 'firefox':
|
16 | var fVersion = parseInt(info.version.slice(0, info.version.indexOf('.')), 10);
|
17 | if (fVersion <= SUPPORTED_FIREFOX_VERSION && fVersion !== 52) {
|
18 | return prefix + " Firefox " + info.version + " (< " + SUPPORTED_FIREFOX_VERSION + ")";
|
19 | }
|
20 | return null;
|
21 | case 'edge':
|
22 | var eVersion = parseInt(info.version.slice(0, info.version.indexOf('.')), 10);
|
23 | if (eVersion <= SUPPORTED_EDGE_VERSION) {
|
24 | return prefix + " Edge " + info.version + " (< " + SUPPORTED_EDGE_VERSION + ")";
|
25 | }
|
26 | return null;
|
27 | case 'chrome':
|
28 | var cVersion = parseInt(info.version.slice(0, info.version.indexOf('.')), 10);
|
29 | if (cVersion <= SUPPORTED_CHROME_VERSION) {
|
30 | return prefix + " Chrome " + info.version + " (< " + SUPPORTED_CHROME_VERSION + ")";
|
31 | }
|
32 | return null;
|
33 | case 'ie':
|
34 | return prefix + " Internet Explorer";
|
35 | }
|
36 | console.warn('unknown browser detected', info, 'assuming fine...');
|
37 | return null;
|
38 | }
|
39 |
|
40 |
|
41 |
|
42 |
|
43 | export function isBrowserSupported() {
|
44 | return getUnsupportedBrowserError() == null;
|
45 | }
|
46 |
|
\ | No newline at end of file |