-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
19 changed files
with
276 additions
and
210 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,7 +1,7 @@ | ||
{ | ||
"title": "UAParser.js", | ||
"name": "ua-parser-js", | ||
"version": "2.0.0", | ||
"version": "2.0.1", | ||
"author": "Faisal Salman <[email protected]> (http://faisalman.com)", | ||
"description": "Detect Browser, Engine, OS, CPU, and Device type/model from User-Agent & Client Hints data. Supports browser & node.js environment", | ||
"keywords": [ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
/////////////////////////////////////////////// | ||
/* Enums for UAParser.js v2.0.0 | ||
/* Enums for UAParser.js v2.0.1 | ||
https://github.com/faisalman/ua-parser-js | ||
Author: Faisal Salman <[email protected]> | ||
AGPLv3 License */ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,7 +3,7 @@ | |
// Source: /src/enums/ua-parser-enums.js | ||
|
||
/////////////////////////////////////////////// | ||
/* Enums for UAParser.js v2.0.0 | ||
/* Enums for UAParser.js v2.0.1 | ||
https://github.com/faisalman/ua-parser-js | ||
Author: Faisal Salman <[email protected]> | ||
AGPLv3 License */ | ||
|
@@ -38,6 +38,7 @@ const Browser = Object.freeze({ | |
COBALT: 'Cobalt', | ||
COC_COC: 'Coc Coc', | ||
CONKEROR: 'Conkeror', | ||
DAUM: 'Daum', | ||
DILLO: 'Dillo', | ||
DOLPHIN: 'Dolphin', | ||
DORIS: 'Doris', | ||
|
@@ -370,11 +371,13 @@ const OS = Object.freeze({ | |
SYMBIAN: 'Symbian', | ||
TIZEN: 'Tizen', | ||
UBUNTU: 'Ubuntu', | ||
UBUNTU_TOUCH: 'Ubuntu Touch', | ||
UNIX: 'Unix', | ||
VECTORLINUX: 'VectorLinux', | ||
WATCHOS: 'watchOS', | ||
WEBOS: 'WebOS', | ||
WINDOWS: 'Windows', | ||
WINDOWS_IOT: 'Windows IoT', | ||
WINDOWS_MOBILE: 'Windows Mobile', | ||
WINDOWS_PHONE: 'Windows Phone', | ||
XBOX: 'Xbox', | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
/////////////////////////////////////////////// | ||
/* Extensions for UAParser.js v2.0.0 | ||
/* Extensions for UAParser.js v2.0.1 | ||
https://github.com/faisalman/ua-parser-js | ||
Author: Faisal Salman <[email protected]> | ||
AGPLv3 License */ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,7 +3,7 @@ | |
// Source: /src/extensions/ua-parser-extensions.js | ||
|
||
/////////////////////////////////////////////// | ||
/* Extensions for UAParser.js v2.0.0 | ||
/* Extensions for UAParser.js v2.0.1 | ||
https://github.com/faisalman/ua-parser-js | ||
Author: Faisal Salman <[email protected]> | ||
AGPLv3 License */ | ||
|
@@ -165,7 +165,7 @@ const ExtraDevices = Object.freeze({ | |
/\b(zur\d{3}) b/i // Swiss ZUR Tablet | ||
], [MODEL, [VENDOR, 'Swiss'], [TYPE, TABLET]], [ | ||
|
||
/\b((zeki)?tb.*\b) b/i // Zeki Tablets | ||
/^((zeki)?tb.*\b) b/i // Zeki Tablets | ||
], [MODEL, [VENDOR, 'Zeki'], [TYPE, TABLET]], [ | ||
|
||
/\b([yr]\d{2}) b/i, | ||
|
@@ -222,31 +222,25 @@ const Fetchers = Object.freeze({ | |
// ChatGPT-User - https://platform.openai.com/docs/plugins/bot | ||
// DuckAssistBot - https://duckduckgo.com/duckassistbot/ | ||
// BingPreview / Mastodon / Pinterestbot / Redditbot / Rogerbot / Telegrambot / Twitterbot / UptimeRobot | ||
/(ahrefssiteaudit|bingpreview|chatgpt-user|mastodon|(?:discord|duckassist|linkedin|pinterest|reddit|roger|telegram|twitter|uptimero)bot)\/([\w\.]+)/i, | ||
|
||
// Google Site Verifier | ||
/(google-site-verification)\/([\w\.]+)/i, | ||
// Google Site Verifier / Meta / Yahoo! Japan | ||
// Yandex Bots - https://yandex.com/bots | ||
/(ahrefssiteaudit|bingpreview|chatgpt-user|mastodon|(?:discord|duckassist|linkedin|pinterest|reddit|roger|telegram|twitter|uptimero)bot|google-site-verification|meta-externalfetcher|y!?j-dlc|yandex(?:calendar|direct(?:dyn)?|searchshop)|yadirectfetcher)\/([\w\.]+)/i, | ||
|
||
// Meta | ||
/(meta-externalfetcher)\/([\w\.]+)/i, | ||
// Bluesky | ||
/(bluesky) cardyb\/([\w\.]+)/i, | ||
|
||
// Slackbot - https://api.slack.com/robots | ||
/(slack(?:bot)?(?:-imgproxy|-linkexpanding)?) ([\w\.]+)/i, | ||
|
||
/(whatsapp)\/([\w\.]+)[\/ ][ianw]/i, | ||
|
||
// Yahoo! Japan | ||
/(y!?j-dlc)\/([\w\.]+)/i, | ||
|
||
// Yandex Bots - https://yandex.com/bots | ||
/(yandex(?:calendar|direct(?:dyn)?|searchshop)|yadirectfetcher)\/([\w\.]+)/i, | ||
/(yandex(?:sitelinks|userproxy))/i | ||
/(whatsapp)\/([\w\.]+)[\/ ][ianw]/i | ||
], | ||
[NAME, VERSION, [TYPE, FETCHER]], | ||
|
||
// Google Bots / Cohere / Snapchat / Vercelbot | ||
[/(cohere-ai|vercelbot|feedfetcher-google|google(?:-read-aloud|producer)|(?=bot; )snapchat)/i], | ||
[ | ||
// Google Bots / Cohere / Snapchat / Vercelbot / Yandex Bots | ||
/(cohere-ai|vercelbot|feedfetcher-google|google(?:-read-aloud|producer)|(?=bot; )snapchat|yandex(?:sitelinks|userproxy))/i | ||
], | ||
[NAME, [TYPE, FETCHER]], | ||
] | ||
}); | ||
|
@@ -271,104 +265,48 @@ const InApps = Object.freeze({ | |
|
||
const MediaPlayers = Object.freeze({ | ||
browser : [[ | ||
|
||
/(apple(?:coremedia|))\/([\w\._]+)/i, // Generic Apple CoreMedia | ||
/(coremedia) v([\w\._]+)/i | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(aqualung|lyssna|bsplayer)\/([\w\.-]+)/i // Aqualung/Lyssna/BSPlayer | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(ares|ossproxy)\s([\w\.-]+)/i // Ares/OSSProxy | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(audacious|audimusicstream|amarok|bass|core|dalvik|gnomemplayer|music on console|nsplayer|psp-internetradioplayer|videos)\/([\w\.-]+)/i, | ||
// Audacious/AudiMusicStream/Amarok/BASS/OpenCORE/Dalvik/GnomeMplayer/MoC | ||
/(apple(?:coremedia|tv))\/([\w\._]+)/i, // Generic Apple CoreMedia | ||
/(coremedia) v([\w\._]+)/i, | ||
// Ares/Nexplayer/OSSProxy | ||
/(ares|clementine|music player daemon|nexplayer|ossproxy) ([\w\.-]+)/i, | ||
// Aqualung/Lyssna/BSPlayer/Clementine/MPD | ||
// Audacious/AudiMusicStream/Amarok/BASS/OpenCORE/GnomeMplayer/MoC | ||
// NSPlayer/PSP-InternetRadioPlayer/Videos | ||
/(clementine|music player daemon)\s([\w\.-]+)/i, // Clementine/MPD | ||
/(lg player|nexplayer)\s([\d\.]+)/i, | ||
/player\/(nexplayer|lg player)\s([\w\.-]+)/i // NexPlayer/LG Player | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
/(nexplayer)\s([\w\.-]+)/i // Nexplayer | ||
// Nero Home/Nero Scout/Nokia | ||
// QuickTime/RealMedia/RadioApp/RadioClientApplication/ | ||
// SoundTap/Totem/Stagefright/Streamium | ||
// XBMC/gvfs/Xine/XMMS/irapp | ||
/^(aqualung|audacious|audimusicstream|amarok|bass|bsplayer|core|gnomemplayer|gvfs|irapp|lyssna|music on console|nero (?:home|scout)|nokia\d+|nsplayer|psp-internetradioplayer|quicktime|rma|radioapp|radioclientapplication|soundtap|stagefright|streamium|totem|videos|xbmc|xine|xmms)\/([\w\.-]+)/i, | ||
/(lg player|nexplayer) ([\d\.]+)/i, | ||
/player\/(nexplayer|lg player) ([\w\.-]+)/i, // NexPlayer/LG Player | ||
/(gstreamer) souphttpsrc.+libsoup\/([\w\.-]+)/i, // Gstreamer | ||
/(htc streaming player) [\w_]+ \/ ([\d\.]+)/i, // HTC Streaming Player | ||
/(lavf)([\d\.]+)/i, // Lavf (FFMPEG) | ||
// MPlayer SVN | ||
/(mplayer)(?: |\/)(?:(?:sherpya-){0,1}svn)(?:-| )(r\d+(?:-\d+[\w\.-]+))/i, | ||
/ (songbird)\/([\w\.-]+)/i, // Songbird/Philips-Songbird | ||
/(winamp)(?:3 version|mpeg| ) ([\w\.-]+)/i, // Winamp | ||
/(vlc)(?:\/| media player - version )([\w\.-]+)/i, // VLC Videolan | ||
/^(foobar2000|itunes|smp)\/([\d\.]+)/i, // Foobar2000/iTunes/SMP | ||
/com\.(riseupradioalarm)\/([\d\.]*)/i, // RiseUP Radio Alarm | ||
/(mplayer)(?:\s|\/| unknown-)([\w\.\-]+)/i, // MPlayer | ||
// Windows Media Server | ||
/(windows)\/([\w\.-]+) upnp\/[\d\.]+ dlnadoc\/[\d\.]+ home media server/i | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(flrp)\/([\w\.-]+)/i // Flip Player | ||
], [[NAME, 'Flip Player'], VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(fstream|nativehost|queryseekspider)/i | ||
// FStream/NativeHost/QuerySeekSpider | ||
// MPlayer (no other info)/Media Player Classic/Nero ShowTime | ||
// OCMS-bot/tap in radio/tunein/unknown/winamp (no other info) | ||
// inlight radio / YourMuze | ||
/(fstream|media player classic|inlight radio|mplayer|nativehost|nero showtime|ocms-bot|queryseekspider|tapinradio|tunein radio|winamp|yourmuze)/i | ||
], [NAME, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(gstreamer) souphttpsrc.+libsoup\/([\w\.-]+)/i | ||
// Gstreamer | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(htc streaming player)\s[\w_]+\s\/\s([\d\.]+)/i, // HTC Streaming Player | ||
/(lavf)([\d\.]+)/i // Lavf (FFMPEG) | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(htc_one_s)\/([\d\.]+)/i, // HTC One S | ||
], [[NAME, /_/g, ' '], VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(mplayer)(?:\s|\/)(?:(?:sherpya-){0,1}svn)(?:-|\s)(r\d+(?:-\d+[\w\.-]+))/i, | ||
// MPlayer SVN | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(mplayer)(?:\s|\/)([\w\.-]+)/i, // MPlayer | ||
/(mplayer) unknown-([\w\.\-]+)/i // MPlayer UNKNOWN | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(mplayer)/i, // MPlayer (no other info) | ||
/(yourmuze)/i, // YourMuze | ||
/(media player classic|nero showtime)/i // Media Player Classic/Nero ShowTime | ||
], [NAME, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(nero (?:home|scout))\/([\w\.-]+)/i // Nero Home/Nero Scout | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(nokia\d+)\/([\w\.-]+)/i // Nokia | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/\s(songbird)\/([\w\.-]+)/i // Songbird/Philips-Songbird | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(winamp)3 version ([\w\.-]+)/i, // Winamp | ||
/(winamp)\s([\w\.-]+)/i, | ||
/(winamp)mpeg\/([\w\.-]+)/i | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(ocms-bot|tapinradio|tunein radio|unknown|winamp|inlight radio)/i // OCMS-bot/tap in radio/tunein/unknown/winamp (no other info) | ||
// inlight radio | ||
], [NAME, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(quicktime|rma|radioapp|radioclientapplication|soundtap|totem|stagefright|streamium)\/([\w\.-]+)/i | ||
// QuickTime/RealMedia/RadioApp/RadioClientApplication/ | ||
// SoundTap/Totem/Stagefright/Streamium | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(smp)([\d\.]+)/i // SMP | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
/(htc_one_s|windows-media-player|wmplayer)\/([\w\.-]+)/i, // HTC One S / Windows Media Player | ||
], [[NAME, /[_-]/g, ' '], VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(vlc) media player - version ([\w\.]+)/i, // VLC Videolan | ||
/(vlc)\/([\w\.-]+)/i, | ||
/(xbmc|gvfs|xine|xmms|irapp)\/([\w\.-]+)/i, // XBMC/gvfs/Xine/XMMS/irapp | ||
/(foobar2000)\/([\d\.]+)/i, // Foobar2000 | ||
/(itunes)\/([\d\.]+)/i // iTunes | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(wmplayer)\/([\w\.-]+)/i, // Windows Media Player | ||
/(windows-media-player)\/([\w\.-]+)/i | ||
], [[NAME, /-/g, ' '], VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/windows\/([\w\.-]+) upnp\/[\d\.]+ dlnadoc\/[\d\.]+ (home media server)/i, | ||
// Windows Media Server | ||
], [VERSION, [NAME, 'Windows'], [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(com\.riseupradioalarm)\/([\d\.]*)/i // RiseUP Radio Alarm | ||
], [NAME, VERSION, [TYPE, MEDIAPLAYER]], [ | ||
|
||
/(rad.io)\s([\d\.]+)/i, // Rad.io | ||
/(radio.(?:de|at|fr))\s([\d\.]+)/i | ||
/(rad.io|radio.(?:de|at|fr)) ([\d\.]+)/i // Rad.io | ||
], [[NAME, 'rad.io'], VERSION, [TYPE, MEDIAPLAYER]] | ||
] | ||
}); | ||
|
@@ -387,6 +325,24 @@ const Libraries = Object.freeze({ | |
] | ||
}); | ||
|
||
///////////// | ||
// VEHICLES | ||
//////////// | ||
|
||
const Vehicles = Object.freeze({ | ||
device : [ | ||
[ | ||
/dilink.+(byd) auto/i, // BYD | ||
], [VENDOR], [ | ||
|
||
/(rivian) (r1t)/i, // Rivian | ||
], [VENDOR, MODEL], [ | ||
|
||
/vcc.+netfront/i, // Volvo | ||
], [[VENDOR, 'Volvo']] | ||
] | ||
}); | ||
|
||
////////// | ||
// BOTS | ||
///////// | ||
|
@@ -409,5 +365,6 @@ export { | |
Fetchers, | ||
InApps, | ||
Libraries, | ||
MediaPlayers | ||
MediaPlayers, | ||
Vehicles | ||
}; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
/////////////////////////////////////////////// | ||
/* Helpers for UAParser.js v2.0.0 | ||
/* Helpers for UAParser.js v2.0.1 | ||
https://github.com/faisalman/ua-parser-js | ||
Author: Faisal Salman <[email protected]> | ||
AGPLv3 License */ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,7 +3,7 @@ | |
// Source: /src/helpers/ua-parser-helpers.js | ||
|
||
/////////////////////////////////////////////// | ||
/* Helpers for UAParser.js v2.0.0 | ||
/* Helpers for UAParser.js v2.0.1 | ||
https://github.com/faisalman/ua-parser-js | ||
Author: Faisal Salman <[email protected]> | ||
AGPLv3 License */ | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.