mirror of
https://github.com/faisalman/ua-parser-js.git
synced 2025-09-27 16:08:47 +03:00
Update enums & extensions
This commit is contained in:
parent
8fea17f296
commit
f57f8fa1a7
@ -1,103 +1,236 @@
|
|||||||
///////////////////////////////////////////////
|
///////////////////////////////////////////////
|
||||||
/* Enums for UAParser.js v2.0.0-alpha.3
|
/* Enums for UAParser.js v2.0.0-beta
|
||||||
https://github.com/faisalman/ua-parser-js
|
https://github.com/faisalman/ua-parser-js
|
||||||
Author: Faisal Salman <f@faisalman.com>
|
Author: Faisal Salman <f@faisalman.com>
|
||||||
MIT License */
|
AGPLv3 License */
|
||||||
//////////////////////////////////////////////
|
//////////////////////////////////////////////
|
||||||
|
|
||||||
/*jshint esversion: 6 */
|
/*jshint esversion: 6 */
|
||||||
|
|
||||||
const BrowserName = Object.freeze({
|
const Browser = Object.freeze({
|
||||||
CHROME : 'Chrome',
|
ANDROID: 'Android Browser',
|
||||||
EDGE : 'Edge',
|
BRAVE: 'Brave',
|
||||||
SAFARI : 'Safari',
|
CHROME: 'Chrome',
|
||||||
FIREFOX : 'Firefox',
|
CHROMIUM: 'Chromium',
|
||||||
OPERA : 'Opera',
|
DOLPHIN: 'Dolphin',
|
||||||
MOBILE_CHROME : 'Mobile Chrome',
|
DUCKDUCKGO: 'DuckDuckGo',
|
||||||
MOBILE_SAFARI : 'Mobile Safari',
|
EDGE: 'Edge',
|
||||||
MOBILE_FIREFOX : 'Mobile Firefox',
|
FIREFOX: 'Firefox',
|
||||||
ANDROID_BROWSER : 'Android Browser'
|
FOCUS: 'Focus',
|
||||||
|
IE: 'IE',
|
||||||
|
KONQUEROR: 'Konqueror',
|
||||||
|
MOBILE_CHROME: 'Mobile Chrome',
|
||||||
|
MOBILE_FIREFOX: 'Mobile Firefox',
|
||||||
|
MOBILE_SAFARI: 'Mobile Safari',
|
||||||
|
OPERA: 'Opera',
|
||||||
|
PALEMOON: 'PaleMoon',
|
||||||
|
PUFFIN: 'Puffin',
|
||||||
|
QQ: 'QQ Browser',
|
||||||
|
SAFARI: 'Safari',
|
||||||
|
SAMSUNG: 'Samsung Internet',
|
||||||
|
UC: 'UC Browser',
|
||||||
|
VIVALDI: 'Vivaldi',
|
||||||
|
YANDEX: 'Yandex'
|
||||||
|
|
||||||
// TODO : test!
|
// TODO : test!
|
||||||
});
|
});
|
||||||
|
|
||||||
const CPUArch = Object.freeze({
|
const CPU = Object.freeze({
|
||||||
IA32 : 'ia32',
|
ARM : 'arm',
|
||||||
AMD64 : 'amd64',
|
ARM64: 'arm64',
|
||||||
IA64 : 'ia64',
|
ARMHF: 'armhf',
|
||||||
ARM : 'arm',
|
AVR: 'avr',
|
||||||
ARM64 : 'arm64',
|
IA64: 'ia64',
|
||||||
ARMHF : 'armhf',
|
IRIX: 'irix',
|
||||||
_68K : '68k',
|
IRIX64: 'irix64',
|
||||||
AVR : 'avr',
|
MIPS: 'mips',
|
||||||
IRIX : 'irix',
|
MIPS64: 'mips64',
|
||||||
IRIX64 : 'irix64',
|
MOTO_68K: '68k',
|
||||||
MIPS : 'mips',
|
PPC: 'ppc',
|
||||||
MIPS64 : 'mips64',
|
SPARC: 'sparc',
|
||||||
PPC : 'ppc',
|
SPARC64: 'sparc64',
|
||||||
SPARC : 'sparc',
|
X86: 'ia32',
|
||||||
SPARC64 : 'sparc64'
|
X86_64: 'amd64'
|
||||||
});
|
});
|
||||||
|
|
||||||
const DeviceType = Object.freeze({
|
const Device = Object.freeze({
|
||||||
MOBILE : 'mobile',
|
CONSOLE: 'console',
|
||||||
TABLET : 'tablet',
|
DEKSTOP: 'desktop',
|
||||||
SMARTTV : 'smarttv',
|
EMBEDDED: 'embedded',
|
||||||
CONSOLE : 'console',
|
MOBILE: 'mobile',
|
||||||
WEARABLE: 'wearable',
|
SMARTTV: 'smarttv',
|
||||||
EMBEDDED: 'embedded'
|
TABLET: 'tablet',
|
||||||
|
WEARABLE: 'wearable'
|
||||||
});
|
});
|
||||||
|
|
||||||
const DeviceVendor = Object.freeze({
|
const Vendor = Object.freeze({
|
||||||
APPLE : 'Apple',
|
ACER: 'Acer',
|
||||||
SAMSUNG : 'Samsung',
|
ALCATEL: 'Alcatel',
|
||||||
HUAWEI : 'Huawei',
|
APPLE: 'Apple',
|
||||||
XIAOMI : 'Xiaomi',
|
AMAZON: 'Amazon',
|
||||||
OPPO : 'OPPO',
|
ARCHOS: 'Archos',
|
||||||
VIVO : 'Vivo',
|
ASUS: 'ASUS',
|
||||||
REALME : 'Realme',
|
ATT: 'AT&T',
|
||||||
LENOVO : 'Lenovo',
|
BENQ: 'BenQ',
|
||||||
LG : 'LG'
|
BLACKBERRY: 'BlackBerry',
|
||||||
|
DELL: 'Dell',
|
||||||
|
ESSENTIAL: 'Essential',
|
||||||
|
FACEBOOK: 'Facebook',
|
||||||
|
FAIRPHONE: 'Fairphone',
|
||||||
|
GEEKSPHONE: 'GeeksPhone',
|
||||||
|
GENERIC: 'Generic',
|
||||||
|
GOOGLE: 'Google',
|
||||||
|
HP: 'HP',
|
||||||
|
HTC: 'HTC',
|
||||||
|
HUAWEI: 'Huawei',
|
||||||
|
INFINIX: 'Infinix',
|
||||||
|
JOLLA: 'Jolla',
|
||||||
|
KOBO: 'Kobo',
|
||||||
|
LENOVO: 'Lenovo',
|
||||||
|
LG: 'LG',
|
||||||
|
MEIZU: 'Meizu',
|
||||||
|
MICROSOFT: 'Microsoft',
|
||||||
|
MOTOROLA: 'Motorola',
|
||||||
|
NEXIAN: 'Nexian',
|
||||||
|
NINTENDO: 'Nintendo',
|
||||||
|
NOKIA: 'Nokia',
|
||||||
|
NVIDIA: 'Nvidia',
|
||||||
|
ONEPLUS: 'OnePlus',
|
||||||
|
OPPO: 'OPPO',
|
||||||
|
OUYA: 'Ouya',
|
||||||
|
PALM: 'Palm',
|
||||||
|
PANASONIC: 'Panasonic',
|
||||||
|
PEBBLE: 'Pebble',
|
||||||
|
POLYTRON: 'Polytron',
|
||||||
|
REALME: 'Realme',
|
||||||
|
RIM: 'RIM',
|
||||||
|
ROKU: 'Roku',
|
||||||
|
SAMSUNG: 'Samsung',
|
||||||
|
SHARP: 'Sharp',
|
||||||
|
SIEMENS: 'Siemens',
|
||||||
|
SONY: 'Sony',
|
||||||
|
SPRINT: 'Sprint',
|
||||||
|
TECNO: 'Tecno',
|
||||||
|
TESLA: 'Tesla',
|
||||||
|
ULEFONE: 'Ulefone',
|
||||||
|
VIVO: 'Vivo',
|
||||||
|
VODAFONE: 'Vodafone',
|
||||||
|
XBOX: 'Xbox',
|
||||||
|
XIAOMI: 'Xiaomi',
|
||||||
|
ZEBRA: 'Zebra',
|
||||||
|
ZTE: 'ZTE',
|
||||||
|
|
||||||
// TODO : test!
|
// TODO : test!
|
||||||
});
|
});
|
||||||
|
|
||||||
const EngineName = Object.freeze({
|
const Engine = Object.freeze({
|
||||||
AMAYA : 'Amaya',
|
AMAYA: 'Amaya',
|
||||||
BLINK : 'Blink',
|
BLINK: 'Blink',
|
||||||
EDGEHTML: 'EdgeHTML',
|
EDGEHTML: 'EdgeHTML',
|
||||||
FLOW : 'Flow',
|
FLOW: 'Flow',
|
||||||
GECKO : 'Gecko',
|
GECKO: 'Gecko',
|
||||||
GOANNA : 'Goanna',
|
GOANNA: 'Goanna',
|
||||||
ICAB : 'iCab',
|
ICAB: 'iCab',
|
||||||
LIBWEB : 'LibWeb',
|
KHTML: 'KHTML',
|
||||||
KHTML : 'KHTML',
|
LIBWEB: 'LibWeb',
|
||||||
LINKS : 'Links',
|
LINKS: 'Links',
|
||||||
LYNX : 'Lynx',
|
LYNX: 'Lynx',
|
||||||
NETFRONT: 'NetFront',
|
NETFRONT: 'NetFront',
|
||||||
NETSURF : 'NetSurf',
|
NETSURF: 'NetSurf',
|
||||||
PRESTO : 'Presto',
|
PRESTO: 'Presto',
|
||||||
TASMAN : 'Tasman',
|
TASMAN: 'Tasman',
|
||||||
TRIDENT : 'Trident',
|
TRIDENT: 'Trident',
|
||||||
W3M : 'w3m',
|
W3M: 'w3m',
|
||||||
WEBKIT : 'WebKit'
|
WEBKIT: 'WebKit'
|
||||||
});
|
});
|
||||||
|
|
||||||
const OSName = Object.freeze({
|
const OS = Object.freeze({
|
||||||
WINDOWS : 'Windows',
|
AIX: 'AIX',
|
||||||
LINUX : 'Linux',
|
AMIGA_OS: 'Amiga OS',
|
||||||
MACOS : 'macOS',
|
ANDROID: 'Android',
|
||||||
IOS : 'iOS',
|
ANDROID_X86: 'Android-x86',
|
||||||
ANDROID : 'Android'
|
ARCH: 'Arch',
|
||||||
|
BADA: 'Bada',
|
||||||
|
BEOS: 'BeOS',
|
||||||
|
BLACKBERRY: 'BlackBerry',
|
||||||
|
CENTOS: 'CentOS',
|
||||||
|
CHROME_OS: 'Chrome OS',
|
||||||
|
CONTIKI: 'Contiki',
|
||||||
|
FEDORA: 'Fedora',
|
||||||
|
FIREFOX_OS: 'Firefox OS',
|
||||||
|
FREEBSD: 'FreeBSD',
|
||||||
|
DEBIAN: 'Debian',
|
||||||
|
DEEPIN: 'Deepin',
|
||||||
|
DRAGONFLY: 'DragonFly',
|
||||||
|
ELEMENTARY_OS: 'elementary OS',
|
||||||
|
FUCHSIA: 'Fuchsia',
|
||||||
|
GENTOO: 'Gentoo',
|
||||||
|
GHOSTBSD: 'GhostBSD',
|
||||||
|
GNU: 'GNU',
|
||||||
|
HAIKU: 'Haiku',
|
||||||
|
HARMONYOS: 'HarmonyOS',
|
||||||
|
HP_UX: 'HP-UX',
|
||||||
|
HURD: 'Hurd',
|
||||||
|
IOS: 'iOS',
|
||||||
|
JOLI: 'Joli',
|
||||||
|
KAIOS: 'KaiOS',
|
||||||
|
LINPUS: 'Linpus',
|
||||||
|
LINSPIRE: 'Linspire',
|
||||||
|
LINUX: 'Linux',
|
||||||
|
MACOS: 'macOS',
|
||||||
|
MAEMO: 'Maemo',
|
||||||
|
MAGEIA: 'Mageia',
|
||||||
|
MANDRIVA: 'Mandriva',
|
||||||
|
MANJARO: 'Manjaro',
|
||||||
|
MEEGO: 'MeeGo',
|
||||||
|
MINIX: 'Minix',
|
||||||
|
MINT: 'Mint',
|
||||||
|
MORPH_OS: 'Morph OS',
|
||||||
|
NETBSD: 'NetBSD',
|
||||||
|
NETRANGE: 'NetRange',
|
||||||
|
NETTV: 'NetTV',
|
||||||
|
NINTENDO: 'Nintendo',
|
||||||
|
OPENBSD: 'OpenBSD',
|
||||||
|
OPENVMS: 'OpenVMS',
|
||||||
|
OS2: 'OS/2',
|
||||||
|
PALM: 'Palm',
|
||||||
|
PC_BSD: 'PC-BSD',
|
||||||
|
PCLINUXOS: 'PCLinuxOS',
|
||||||
|
PLAN9: 'Plan9',
|
||||||
|
PLAYSTATION: 'PlayStation',
|
||||||
|
QNX: 'QNX',
|
||||||
|
RASPBIAN: 'Raspbian',
|
||||||
|
REDHAT: 'RedHat',
|
||||||
|
RIM_TABLET_OS: 'RIM Tablet OS',
|
||||||
|
RISC_OS: 'RISC OS',
|
||||||
|
SABAYON: 'Sabayon',
|
||||||
|
SAILFISH: 'Sailfish',
|
||||||
|
SERENITYOS: 'SerenityOS',
|
||||||
|
SERIES40: 'Series40',
|
||||||
|
SLACKWARE: 'Slackware',
|
||||||
|
SOLARIS: 'Solaris',
|
||||||
|
SUSE: 'SUSE',
|
||||||
|
SYMBIAN: 'Symbian',
|
||||||
|
TIZEN: 'Tizen',
|
||||||
|
UBUNTU: 'Ubuntu',
|
||||||
|
UNIX: 'Unix',
|
||||||
|
VECTORLINUX: 'VectorLinux',
|
||||||
|
VIERA: 'Viera',
|
||||||
|
WATCHOS: 'watchOS',
|
||||||
|
WEBOS: 'WebOS',
|
||||||
|
WINDOWS: 'Windows',
|
||||||
|
WINDOWS_MOBILE: 'Windows Mobile',
|
||||||
|
WINDOWS_PHONE: 'Windows Phone',
|
||||||
|
ZENWALK: 'Zenwalk'
|
||||||
|
|
||||||
// TODO : test!
|
// TODO : test!
|
||||||
});
|
});
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
BrowserName,
|
Browser,
|
||||||
CPUArch,
|
CPU,
|
||||||
DeviceType,
|
Device,
|
||||||
DeviceVendor,
|
Vendor,
|
||||||
EngineName,
|
Engine,
|
||||||
OSName
|
OS
|
||||||
};
|
};
|
@ -1,8 +1,8 @@
|
|||||||
///////////////////////////////////////////////
|
///////////////////////////////////////////////
|
||||||
/* Extensions for UAParser.js v2.0.0-alpha.3
|
/* Extensions for UAParser.js v2.0.0-beta
|
||||||
https://github.com/faisalman/ua-parser-js
|
https://github.com/faisalman/ua-parser-js
|
||||||
Author: Faisal Salman <f@faisalman.com>
|
Author: Faisal Salman <f@faisalman.com>
|
||||||
MIT License */
|
AGPLv3 License */
|
||||||
//////////////////////////////////////////////
|
//////////////////////////////////////////////
|
||||||
|
|
||||||
/*jshint esversion: 6 */
|
/*jshint esversion: 6 */
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
import { UAParser } from 'ua-parser-js';
|
import { UAParser } from 'ua-parser-js';
|
||||||
import { CPUArch, DeviceType, EngineName } from 'ua-parser-js/enums';
|
import { CPU, Device, Engine } from 'ua-parser-js/enums';
|
||||||
import * as assert from 'assert';
|
import * as assert from 'assert';
|
||||||
|
|
||||||
describe('Returns', () => {
|
describe('Returns', () => {
|
||||||
@ -20,8 +20,8 @@ describe('Returns', () => {
|
|||||||
describe('Enums', () => {
|
describe('Enums', () => {
|
||||||
it('Can use enum', () => {
|
it('Can use enum', () => {
|
||||||
const { cpu, device, engine } = UAParser('Mozilla/5.0 (X11; U; Linux armv7l; en-GB; rv:1.9.2a1pre) Gecko/20090928 Firefox/3.5 Maemo Browser 1.4.1.22 RX-51 N900');
|
const { cpu, device, engine } = UAParser('Mozilla/5.0 (X11; U; Linux armv7l; en-GB; rv:1.9.2a1pre) Gecko/20090928 Firefox/3.5 Maemo Browser 1.4.1.22 RX-51 N900');
|
||||||
assert.strictEqual(cpu.is(CPUArch.ARM), true);
|
assert.strictEqual(cpu.is(CPU.ARM), true);
|
||||||
assert.strictEqual(device.is(DeviceType.MOBILE), true);
|
assert.strictEqual(device.is(Device.MOBILE), true);
|
||||||
assert.strictEqual(engine.is(EngineName.GECKO), true);
|
assert.strictEqual(engine.is(Engine.GECKO), true);
|
||||||
});
|
});
|
||||||
});
|
});
|
Loading…
x
Reference in New Issue
Block a user