Skip to content

Commit

Permalink
Merge branch 'master' into os
Browse files Browse the repository at this point in the history
  • Loading branch information
liviuconcioiu committed Apr 4, 2024
2 parents 98e6796 + 1f7fa96 commit 10de7d8
Show file tree
Hide file tree
Showing 43 changed files with 6,708 additions and 299 deletions.
44 changes: 35 additions & 9 deletions Parser/Client/Browser.php
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,7 @@ class Browser extends AbstractClientParser
'AV' => 'Amiga Voyager',
'AW' => 'Amiga Aweb',
'PN' => 'APN Browser',
'6A' => 'Arachne',
'RA' => 'Arc',
'AI' => 'Arvin',
'AK' => 'Ask.com',
Expand Down Expand Up @@ -134,6 +135,7 @@ class Browser extends AbstractClientParser
'BE' => 'Beonex',
'B2' => 'Berry Browser',
'BT' => 'Bitchute Browser',
'9B' => 'BizBrowser',
'BH' => 'BlackHawk',
'B0' => 'Bloket',
'BJ' => 'Bunjalloo',
Expand Down Expand Up @@ -202,6 +204,8 @@ class Browser extends AbstractClientParser
'YC' => 'CyBrowser',
'DB' => 'dbrowser',
'PD' => 'Peeps dBrowser',
'DK' => 'Dark Web',
'DP' => 'Dark Web Private',
'D1' => 'Debuggable Browser',
'DC' => 'Decentr',
'DE' => 'Deepnet Explorer',
Expand All @@ -210,6 +214,7 @@ class Browser extends AbstractClientParser
'DT' => 'Delta Browser',
'D0' => 'Desi Browser',
'DS' => 'DeskBrowse',
'D3' => 'Dezor',
'II' => 'Diigo Browser',
'D2' => 'DoCoMo',
'DF' => 'Dolphin',
Expand Down Expand Up @@ -240,6 +245,7 @@ class Browser extends AbstractClientParser
'FG' => 'fGet',
'FA' => 'Falkon',
'FX' => 'Faux Browser',
'F8' => 'Fire Browser',
'F4' => 'Fiery Browser',
'F1' => 'Firefox Mobile iOS',
'FB' => 'Firebird',
Expand Down Expand Up @@ -272,13 +278,15 @@ class Browser extends AbstractClientParser
'GI' => 'GinxDroid Browser',
'GB' => 'Glass Browser',
'GD' => 'Godzilla Browser',
'G3' => 'Good Browser',
'GE' => 'Google Earth',
'GP' => 'Google Earth Pro',
'GO' => 'GOG Galaxy',
'GR' => 'GoBrowser',
'GK' => 'GoKu',
'G2' => 'GO Browser',
'RN' => 'GreenBrowser',
'HW' => 'Habit Browser',
'HB' => 'Harman Browser',
'HS' => 'HasBrowser',
'HA' => 'Hawk Turbo Browser',
Expand Down Expand Up @@ -316,6 +324,7 @@ class Browser extends AbstractClientParser
'3I' => 'Intune Managed Browser',
'I5' => 'Indian UC Mini Browser',
'Z0' => 'InBrowser',
'IG' => 'Involta Go',
'IM' => 'IE Mobile',
'IR' => 'Iron',
'JB' => 'Japan Browser',
Expand All @@ -334,20 +343,24 @@ class Browser extends AbstractClientParser
'KJ' => 'K-Ninja',
'KO' => 'Konqueror',
'KP' => 'Kapiko',
'KE' => 'Keyboard Browser',
'KN' => 'Kinza',
'K4' => 'Kitt',
'KW' => 'Kiwi',
'KD' => 'Kode Browser',
'KT' => 'KUTO Mini Browser',
'KY' => 'Kylo',
'KZ' => 'Kazehakase',
'LB' => 'Cheetah Browser',
'LD' => 'Ladybird',
'LA' => 'Lagatos Browser',
'GN' => 'Legan Browser',
'LR' => 'Lexi Browser',
'LV' => 'Lenovo Browser',
'LF' => 'LieBaoFast',
'LG' => 'LG Browser',
'LH' => 'Light',
'L4' => 'Lightning Browser Plus',
'L1' => 'Lilo',
'LI' => 'Links',
'RI' => 'Liri Browser',
Expand Down Expand Up @@ -434,6 +447,7 @@ class Browser extends AbstractClientParser
'OP' => 'Opera',
'ON' => 'Opera Next',
'OO' => 'Opera Touch',
'OU' => 'Orbitum',
'OA' => 'Orca',
'OS' => 'Ordissimo',
'OR' => 'Oregano',
Expand All @@ -448,6 +462,7 @@ class Browser extends AbstractClientParser
'O7' => 'Open TV Browser',
'OW' => 'OmniWeb',
'OT' => 'Otter Browser',
'4O' => 'Owl Browser',
'PL' => 'Palm Blazer',
'PM' => 'Pale Moon',
'PY' => 'Polypane',
Expand All @@ -464,6 +479,7 @@ class Browser extends AbstractClientParser
'PH' => 'Phantom Browser',
'PX' => 'Phoenix',
'PB' => 'Phoenix Browser',
'5P' => 'Photon',
'P9' => 'PirateBrowser',
'P8' => 'PICO Browser',
'PF' => 'PlayFree Browser',
Expand All @@ -475,6 +491,8 @@ class Browser extends AbstractClientParser
'P4' => 'Privacy Explorer Fast Safe',
'P3' => 'Private Internet Browser',
'P5' => 'Proxy Browser',
'7P' => 'Proxyium',
'6P' => 'Proxynet',
'P2' => 'Pi Browser',
'P0' => 'PronHub Browser',
'PC' => 'PSI Secure Browser',
Expand Down Expand Up @@ -527,6 +545,7 @@ class Browser extends AbstractClientParser
'SY' => 'Sizzy',
'K3' => 'Skye',
'SK' => 'Skyfire',
'KL' => 'SkyLeap',
'SS' => 'Seraphic Sraf',
'KK' => 'SiteKiosk',
'SL' => 'Sleipnir',
Expand Down Expand Up @@ -557,6 +576,7 @@ class Browser extends AbstractClientParser
'RY' => 'Surfy Browser',
'SG' => 'Stargon',
'S0' => 'START Internet Browser',
'5A' => 'Stealth Browser',
'S4' => 'Steam In-Game Overlay',
'ST' => 'Streamy',
'SX' => 'Swiftfox',
Expand All @@ -566,6 +586,7 @@ class Browser extends AbstractClientParser
'TP' => 'T+Browser',
'TR' => 'T-Browser',
'TO' => 't-online.de Browser',
'TT' => 'TalkTo',
'TA' => 'Tao Browser',
'T2' => 'tararia',
'TH' => 'Thor',
Expand Down Expand Up @@ -606,12 +627,14 @@ class Browser extends AbstractClientParser
'V4' => 'Vertex Surf',
'VM' => 'VMware AirWatch',
'VK' => 'Vonkeror',
'VU' => 'Vuhuv',
'WI' => 'Wear Internet Browser',
'WP' => 'Web Explorer',
'W3' => 'Web Browser & Explorer',
'W5' => 'Webian Shell',
'W4' => 'WebDiscover',
'WE' => 'WebPositive',
'W6' => 'Weltweitimnetz Browser',
'WX' => 'Wexond',
'WF' => 'Waterfox',
'WB' => 'Wave Browser',
Expand Down Expand Up @@ -664,9 +687,9 @@ class Browser extends AbstractClientParser
'Baidu' => ['BD', 'BS'],
'Amiga' => ['AV', 'AW'],
'Chrome' => [
'1B', '2B', '7S', 'A0', 'AC', 'A4', 'AE', 'AH', 'AI',
'CH', '2B', '7S', 'A0', 'AC', 'A4', 'AE', 'AH', 'AI',
'AO', 'AS', 'BA', 'BM', 'BR', 'C2', 'C3', 'C5', 'C4',
'C6', 'CC', 'CD', 'CE', 'CF', 'CG', 'CH', 'CI', 'CL',
'C6', 'CC', 'CD', 'CE', 'CF', 'CG', '1B', 'CI', 'CL',
'CM', 'CN', 'CP', 'CR', 'CV', 'CW', 'DA', 'DD', 'DG',
'DR', 'EC', 'EE', 'EU', 'EW', 'FA', 'FS', 'GB', 'GI',
'H2', 'HA', 'HE', 'HH', 'HS', 'I3', 'IR', 'JB', 'KN',
Expand All @@ -692,22 +715,23 @@ class Browser extends AbstractClientParser
'N3', 'GD', 'O9', 'Q3', 'F7', 'K2', 'P5', 'H5', 'V3',
'K3', 'Q4', 'G2', 'R2', 'WX', 'XP', '3I', 'BG', 'R0',
'JO', 'OL', 'GN', 'W4', 'QI', 'E1', 'RI', '8B', '5B',
'K4',
],
'Firefox' => [
'AX', 'BI', 'BF', 'BH', 'BN', 'C0', 'CU', 'EI', 'F1',
'FB', 'FE', 'FF', 'FM', 'FR', 'FY', 'GZ', 'I4', 'IF',
'FF', 'BI', 'BF', 'BH', 'BN', 'C0', 'CU', 'EI', 'F1',
'FB', 'FE', 'AX', 'FM', 'FR', 'FY', 'GZ', 'I4', 'IF',
'IW', 'LH', 'LY', 'MB', 'MN', 'MO', 'MY', 'OA', 'OS',
'PI', 'PX', 'QA', 'S5', 'SX', 'TF', 'TO', 'WF', 'ZV',
'FP', 'AD', 'WL', '2I', 'P9', 'KJ', 'WY', 'VK', 'W5',
'7C',
],
'Internet Explorer' => ['BZ', 'CZ', 'IE', 'IM', 'PS', '3A', '4A', 'RN'],
'Internet Explorer' => ['IE', 'CZ', 'BZ', 'IM', 'PS', '3A', '4A', 'RN'],
'Konqueror' => ['KO'],
'NetFront' => ['NF'],
'NetSurf' => ['NE'],
'Nokia Browser' => ['DO', 'NB', 'NO', 'NV'],
'Opera' => ['O1', 'OG', 'OH', 'OI', 'OM', 'ON', 'OO', 'OP', 'OX', 'Y1'],
'Safari' => ['MF', 'S7', 'SF', 'SO', 'PV'],
'Nokia Browser' => ['NB', 'DO', 'NO', 'NV'],
'Opera' => ['OP', 'OG', 'OH', 'OI', 'OM', 'ON', 'OO', 'O1', 'OX', 'Y1'],
'Safari' => ['SF', 'S7', 'MF', 'SO', 'PV'],
'Sailfish Browser' => ['SA'],
];

Expand Down Expand Up @@ -735,7 +759,9 @@ class Browser extends AbstractClientParser
'ZR', 'D6', 'F6', 'P3', 'FT', 'A9', 'X2', 'NI', 'FG',
'TH', 'N3', 'GD', 'O9', 'Q3', 'F7', 'K2', 'N4', 'P5',
'H5', 'V3', 'G2', 'BG', 'OL', 'II', 'TL', 'M6', 'Y3',
'M7', 'GN',
'M7', 'GN', 'D3', 'IG', 'HW', '4O', 'OU', '5P', 'KE',
'5A', 'TT', '6P', 'G3', '7P', 'VU', 'F8', 'L4', 'DK',
'DP', 'KL', 'K4',
];

/**
Expand Down
2 changes: 2 additions & 0 deletions Parser/Client/Browser/Engine.php
Original file line number Diff line number Diff line change
Expand Up @@ -54,6 +54,8 @@ class Engine extends AbstractClientParser
'Servo',
'Goanna',
'EkiohFlow',
'Arachne',
'LibWeb',
];

/**
Expand Down
8 changes: 8 additions & 0 deletions Parser/Client/Browser/Engine/Version.php
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,14 @@ public function parse(): ?array
$engineToken = 'Chrome|Cronet';
}

if ('Arachne' === $this->engine) {
$engineToken = 'Arachne\/5\.';
}

if ('LibWeb' === $this->engine) {
$engineToken = 'LibWeb\+LibJs';
}

\preg_match(
"~(?:{$engineToken})\s*/?\s*((?(?=\d+\.\d)\d+[.\d]*|\d{1,7}(?=(?:\D|$))))~i",
$this->userAgent,
Expand Down
7 changes: 7 additions & 0 deletions Parser/Device/AbstractDeviceParser.php
Original file line number Diff line number Diff line change
Expand Up @@ -110,12 +110,14 @@ abstract class AbstractDeviceParser extends AbstractParser
'A3' => 'AGM',
'AEE' => 'AEEZO',
'J0' => 'AG Mobile',
'AJI' => 'Ajib',
'AZ' => 'Ainol',
'AIR' => 'Airis',
'AI' => 'Airness',
'ARP' => 'Airpha',
'AT' => 'Airties',
'7U' => 'Airtel',
'AIT' => 'AirTouch',
'U0' => 'AIRON',
'0A' => 'AIS',
'AW' => 'Aiwa',
Expand Down Expand Up @@ -542,6 +544,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'EI' => 'Ezio',
'EZ' => 'Ezze',
'UF' => 'EYU',
'EYE' => 'Eyemoo',
'UE1' => 'UE',
'5F' => 'F150',
'FPS' => 'F+',
Expand Down Expand Up @@ -693,6 +696,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'HIK' => 'HiKing',
'H2' => 'Highscreen',
'Q1' => 'High Q',
'HIG' => 'HiGrace',
'1H' => 'Hipstreet',
'HIR' => 'Hiremco',
'HI' => 'Hisense',
Expand Down Expand Up @@ -1321,6 +1325,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'YQ' => 'QLink',
'QY' => 'Qnet Mobile',
'WJ' => 'Qware',
'QWT' => 'QWATT',
'R2' => 'R-TV',
'RA' => 'Ramos',
'0R' => 'Raspberry',
Expand Down Expand Up @@ -1526,6 +1531,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'SYC' => 'Syco',
'SM' => 'Symphony',
'4S' => 'Syrox',
'SYS' => 'System76',
'TM' => 'T-Mobile',
'T96' => 'T96',
'TAD' => 'TADAAM',
Expand Down Expand Up @@ -1611,6 +1617,7 @@ abstract class AbstractDeviceParser extends AbstractParser
'5R' => 'Transpeed',
'T6' => 'TrekStor',
'T3' => 'Trevi',
'TRI' => 'TriaPlay',
'TJ' => 'Trifone',
'Q5' => 'Trident',
'4T' => 'Tronsmart',
Expand Down
Loading

0 comments on commit 10de7d8

Please sign in to comment.