Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 2 additions & 5 deletions .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -8,14 +8,11 @@
},
"extends": [
"eslint:recommended",
"google"
"google",
"plugin:prettier/recommended"
],
"rules": {
"no-control-regex": 0,
"max-len": [
1,
120
],
"no-console":"warn",
"require-jsdoc": 0
}
Expand Down
14 changes: 4 additions & 10 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,17 +12,11 @@ jobs:
strategy:
matrix:
node-version:
- "6.x"
- "7.x"
- "8.x"
- "9.x"
- "10.x"
- "11.x"
- "12.x"
- "13.x"
- "14.x"
- "15.x"
- "16.x"
- "17.x"
- "18.x"
- "19.x"
- "20.x"
steps:
- name: "Set up Node.js ${{ matrix.node-version }}"
uses: actions/setup-node@v1
Expand Down
4 changes: 4 additions & 0 deletions .husky/pre-commit
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
#!/usr/bin/env sh
. "$(dirname -- "$0")/_/husky.sh"

npx --no-install lint-staged
4 changes: 4 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
#### 0.7.1 (2023-11-01)

- **Database:** Added Chrome 101 to 118.

#### 0.7.0 (2022-04-21)

- Sync WhichBrowser/Parser-JavaScript to [WhichBrowser/Parser-PHP@1044880](https://github.com/WhichBrowser/Parser-PHP/commit/1044880bc792dbce5948fbff22ae731c43c280d9)
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ The useragent header looks like Opera 11.10 on Linux, but we know it's Opera Min

## Requirements

WhichBrowser requires node 6 or higher.
WhichBrowser requires Node 6 or higher to run and Node 16 or higher to build and test.

## Dependencies

Expand Down
4 changes: 2 additions & 2 deletions bin/update-applications.js
Original file line number Diff line number Diff line change
Expand Up @@ -57,9 +57,9 @@ types.forEach((type) => {
fileStream.write('/* This file is automatically generated, do not edit manually! */\n\n');
fileStream.write('/* eslint-disable */\n\n');
type.needsDeviceConstants &&
fileStream.write('const DeviceType = require(\'../src/constants\').deviceType;\n\n');
fileStream.write("const DeviceType = require('../src/constants').deviceType;\n\n");
type.needsBrowserConstants &&
fileStream.write('const BrowserType = require(\'../src/constants\').browserType;\n\n');
fileStream.write("const BrowserType = require('../src/constants').browserType;\n\n");
fileStream.write(`exports.${type.name} = ${result};\n\n`);

fileStream.write('/* This file is automatically generated, do not edit manually! */\n');
Expand Down
14 changes: 2 additions & 12 deletions bin/update-chrome.js
Original file line number Diff line number Diff line change
Expand Up @@ -22,20 +22,10 @@ request('http://omahaproxy.appspot.com/history', (err, response = {}) => {
omaha.forEach((line) => {
const [os, stability, version] = line.split(',');
if (os === 'mac' && stability === 'stable') {
stable.desktop.push(
version
.split('.')
.slice(0, 3)
.join('.')
);
stable.desktop.push(version.split('.').slice(0, 3).join('.'));
}
if (os === 'android' && stability === 'stable') {
stable.mobile.push(
version
.split('.')
.slice(0, 3)
.join('.')
);
stable.mobile.push(version.split('.').slice(0, 3).join('.'));
}
});

Expand Down
5 changes: 4 additions & 1 deletion bin/update-indices.js
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,9 @@ function updateIndecesFromWeb(type) {
* @param {object} obj
* @return {object}
*/
const ksort = (obj) => Object.keys(obj).sort().reduce((acc, val) => Object.assign(acc, {[val]: obj[val]}), {});
const ksort = (obj) =>
Object.keys(obj)
.sort()
.reduce((acc, val) => Object.assign(acc, { [val]: obj[val] }), {});

types.forEach(useWeb ? updateIndecesFromWeb : updateIndeces);
26 changes: 13 additions & 13 deletions bin/update-models.js
Original file line number Diff line number Diff line change
Expand Up @@ -7,27 +7,27 @@ const models = [
needsFlagsConstants: true,
hasCarrier: true,
},
{name: 'ASHA'},
{name: 'BADA'},
{name: 'BLACKBERRY'},
{name: 'BREW'},
{ name: 'ASHA' },
{ name: 'BADA' },
{ name: 'BLACKBERRY' },
{ name: 'BREW' },
{
name: 'FEATURE',
needsDeviceConstants: true,
},
{name: 'FIREFOXOS'},
{ name: 'FIREFOXOS' },
{
name: 'IOS',
needsDeviceConstants: true,
},
{name: 'KDDI'},
{ name: 'KDDI' },
{
name: 'PALMOS',
needsDeviceConstants: true,
needsDeviceSubTypeConstants: true,
},
{name: 'S30PLUS'},
{name: 'S40'},
{ name: 'S30PLUS' },
{ name: 'S40' },
{
name: 'SYMBIAN',
needsFlagsConstants: true,
Expand All @@ -38,7 +38,7 @@ const models = [
name: 'TIZEN',
needsDeviceConstants: true,
},
{name: 'TOUCHWIZ'},
{ name: 'TOUCHWIZ' },
{
name: 'WM',
hasCarrier: true,
Expand Down Expand Up @@ -105,12 +105,12 @@ models.forEach((type) => {
fileStream.write('/* This file is automatically generated, do not edit manually! */\n\n');
fileStream.write('/* eslint-disable */\n\n');
type.needsDeviceConstants &&
fileStream.write('const DeviceType = require(\'../src/constants\').deviceType;\n\n');
fileStream.write("const DeviceType = require('../src/constants').deviceType;\n\n");
type.needsDeviceSubTypeConstants &&
fileStream.write('const DeviceSubType = require(\'../src/constants\').deviceSubType;\n\n');
fileStream.write("const DeviceSubType = require('../src/constants').deviceSubType;\n\n");
type.needsBrowserConstants &&
fileStream.write('const BrowserType = require(\'../src/constants\').browserType;\n\n');
type.needsFlagsConstants && fileStream.write('const Flag = require(\'../src/constants\').flag;\n\n');
fileStream.write("const BrowserType = require('../src/constants').browserType;\n\n");
type.needsFlagsConstants && fileStream.write("const Flag = require('../src/constants').flag;\n\n");
fileStream.write(`exports.${type.name}_MODELS = ${result};\n\n`);

fileStream.write('/* This file is automatically generated, do not edit manually! */\n');
Expand Down
2 changes: 1 addition & 1 deletion bin/update-profiles.js
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ request('https://api.whichbrowser.net/resources/profiles.json', (err, response =
const result = JSON.parse(response.body);
fileStream.write('/* This file is automatically generated, do not edit manually! */\n\n');
fileStream.write('/* eslint-disable max-len */\n\n');
fileStream.write('const DeviceType = require(\'../src/constants\').deviceType;\n\n');
fileStream.write("const DeviceType = require('../src/constants').deviceType;\n\n");
fileStream.write('exports.PROFILES = {\n');
result.forEach(
(profile) =>
Expand Down
2 changes: 1 addition & 1 deletion bin/update-regexes.js
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ function updateRegexes(type) {
*/
function getSet(list) {
const set = new Set();
list.forEach(({id}) => set.add(id));
list.forEach(({ id }) => set.add(id));
return set;
}

Expand Down
36 changes: 36 additions & 0 deletions data/browsers-chrome.js
Original file line number Diff line number Diff line change
Expand Up @@ -103,6 +103,24 @@ module.exports = {
'98.0.4758': 'stable',
'99.0.4844': 'stable',
'100.0.4896': 'stable',
'101.0.4951': 'stable',
'102.0.5005': 'stable',
'103.0.5060': 'stable',
'104.0.5112': 'stable',
'105.0.5195': 'stable',
'106.0.5249': 'stable',
'107.0.5304': 'stable',
'108.0.5359': 'stable',
'109.0.5414': 'stable',
'110.0.5481': 'stable',
'111.0.5563': 'stable',
'112.0.5615': 'stable',
'113.0.5672': 'stable',
'114.0.5735': 'stable',
'115.0.5790': 'stable',
'116.0.5845': 'stable',
'117.0.5938': 'stable',
'118.0.5993': 'stable',
},
MOBILE: {
'16.0.912': 'beta',
Expand Down Expand Up @@ -180,5 +198,23 @@ module.exports = {
'98.0.4758': 'stable',
'99.0.4844': 'stable',
'100.0.4896': 'stable',
'101.0.4951': 'stable',
'102.0.5005': 'stable',
'103.0.5060': 'stable',
'104.0.5112': 'stable',
'105.0.5195': 'stable',
'106.0.5249': 'stable',
'107.0.5304': 'stable',
'108.0.5359': 'stable',
'109.0.5414': 'stable',
'110.0.5481': 'stable',
'111.0.5563': 'stable',
'112.0.5615': 'stable',
'113.0.5672': 'stable',
'114.0.5735': 'stable',
'115.0.5790': 'stable',
'116.0.5845': 'stable',
'117.0.5938': 'stable',
'118.0.5993': 'stable',
},
};
Loading