OLD | NEW |
1 /* This Source Code Form is subject to the terms of the Mozilla Public | 1 /* This Source Code Form is subject to the terms of the Mozilla Public |
2 * License, v. 2.0. If a copy of the MPL was not distributed with this | 2 * License, v. 2.0. If a copy of the MPL was not distributed with this |
3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ | 3 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */ |
4 | 4 |
5 "use strict"; | 5 "use strict"; |
6 | 6 |
7 exports.addonName = {{ basename|json }}; | 7 exports.addonName = {{ basename|json }}; |
8 exports.addonVersion = {{ version|json }}; | 8 exports.addonVersion = {{ version|json }}; |
9 | 9 |
10 exports.application = "unknown"; | 10 exports.application = "unknown"; |
11 exports.applicationVersion = "0"; | 11 exports.applicationVersion = "0"; |
12 | 12 |
13 exports.platform = "gecko"; | 13 exports.platform = "gecko"; |
14 exports.platformVersion = "0"; | 14 exports.platformVersion = "0"; |
15 | 15 |
16 let match = /\brv:(\d+(?:\.\d+)?)\b/.exec(navigator.userAgent); | 16 exports.deviceForm = "unknown"; |
| 17 |
| 18 // https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/User-Agent/Firefox |
| 19 let match = /\(((?:[^;]+; )+)rv:(\d+(?:\.\d+)?)\)/.exec(navigator.userAgent); |
17 if (match) | 20 if (match) |
18 exports.platformVersion = match[1]; | 21 { |
| 22 exports.platformVersion = match[2]; |
| 23 |
| 24 let platformTokens = match[1].split("; "); |
| 25 |
| 26 if (platformTokens.includes("Mobile")) |
| 27 exports.deviceForm = "phone"; |
| 28 else if (platformTokens.includes("Tablet")) |
| 29 exports.deviceForm = "tablet"; |
| 30 } |
19 | 31 |
20 browser.runtime.getBrowserInfo().then(browserInfo => | 32 browser.runtime.getBrowserInfo().then(browserInfo => |
21 { | 33 { |
22 exports.application = browserInfo.name.toLowerCase(); | 34 exports.application = browserInfo.name.toLowerCase(); |
23 exports.applicationVersion = browserInfo.version; | 35 exports.applicationVersion = browserInfo.version; |
24 }); | 36 }); |
OLD | NEW |