mirror of
https://github.com/faisalman/ua-parser-js.git
synced 2025-09-27 07:58:45 +03:00
4 lines
18 KiB
JavaScript
4 lines
18 KiB
JavaScript
/* UAParser.js v2.0.0-alpha.1
|
|
Copyright © 2012-2023 Faisal Salman <f@faisalman.com>
|
|
MIT License */
|
|
!function(i,u){"use strict";function e(i){for(var e={},t=0;t<i.length;t++)e[i[t].toUpperCase()]=i[t];return e}function b(i,e){if(!(typeof i===p&&0<i.length))return typeof i===s&&-1!==gi(e).indexOf(gi(i));for(var t in i)if(gi(i[t])==gi(e))return 1}function w(i,e){if(i&&e)for(var t,o,r,a,s,n=0;n<e.length&&!a;){for(var w=e[n],b=e[n+1],l=t=0;l<w.length&&!a&&w[l];)if(a=w[l++].exec(i))for(o=0;o<b.length;o++)s=a[++t],typeof(r=b[o])===p&&0<r.length?2===r.length?typeof r[1]==c?this[r[0]]=r[1].call(this,s):this[r[0]]=r[1]:3===r.length?typeof r[1]!==c||r[1].exec&&r[1].test?this[r[0]]=s?s.replace(r[1],r[2]):u:this[r[0]]=s?r[1].call(this,s,r[2]):u:4===r.length&&(this[r[0]]=s?r[3].call(this,s.replace(r[1],r[2])):u):this[r]=s||u;n+=2}}function t(i,e){for(var t in e)if(typeof e[t]===p&&0<e[t].length){for(var o=0;o<e[t].length;o++)if(b(e[t][o],i))return"?"===t?u:t}else if(b(e[t],i))return"?"===t?u:t;return i}var l="",c="function",d="undefined",p="object",s="string",h="major",f="model",m="name",g="type",o="vendor",v="version",x="architecture",r="console",k="mobile",a="tablet",n="smarttv",y="wearable",_="embedded",T="user-agent",S=350,q="brands",C="fullVersionList",N="platform",z="platformVersion",A="bitness",O="sec-ch-ua",P=O+"-full-version-list",R=O+"-arch",U=O+"-bitness",E=O+"-mobile",H=O+"-model",I=O+"-platform",M=I+"-version",j=["brands","fullVersionList",k,f,"platform","platformVersion",x,"bitness"],V="browser",B="cpu",F="device",$="engine",D="os",L="result",W="Amazon",G="Apple",X="ASUS",Z="BlackBerry",K="Google",Q="Huawei",Y="LG",J="Microsoft",ii="Motorola",ei="Samsung",ti="Sony",oi="Xiaomi",ri="Zebra",ai="Mobile ",si=" Browser",ni="Chrome",wi="Firefox",bi="Opera",li="Facebook",ui="Windows",ci=typeof i!==d&&i.navigator?i.navigator:u,di=ci&&ci.userAgentData?ci.userAgentData:u,pi=function(i){for(var e in i){e=i[e];typeof e==p&&2==e.length?this[e[0]]=e[1]:this[e]=u}return this},hi=function(i,e){var t,o={};for(t in i)o[t]=e[t]&&e[t].length%2==0?e[t].concat(i[t]):i[t];return o},fi=function(i){for(var e in i)return/^(browser|cpu|device|engine|os)$/.test(e)},mi=function(i){if(!i)return u;for(var e=[],t=xi(/\\?\"/g,i).split(", "),o=0;o<t.length;o++){var r=t[o].split(";v=");e[o]={brand:r[0],version:r[1]}}return e},gi=function(i){return typeof i===s?i.toLowerCase():i},vi=function(i){return typeof i===s?xi(/[^\d\.]/g,i).split(".")[0]:u},xi=function(i,e){return e.replace(i,l)},ki=function(i){return typeof i===s?xi(/\"/g,i):i},yi=function(i,e){if(typeof i===s)return i=xi(/^\s\s*/,i),typeof e===d?i:i.substring(0,S)},_i={ME:"4.90","NT 3.11":"NT3.51","NT 4.0":"NT4.0",2e3:"NT 5.0",XP:["NT 5.1","NT 5.2"],Vista:"NT 6.0",7:"NT 6.1",8:"NT 6.2",8.1:"NT 6.3",10:["NT 6.4","NT 10.0"],RT:"ARM"},Ti={browser:[[/\b(?:crmo|crios)\/([\w\.]+)/i],[v,[m,ai+"Chrome"]],[/edg(?:e|ios|a)?\/([\w\.]+)/i],[v,[m,"Edge"]],[/(opera mini)\/([-\w\.]+)/i,/(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,/(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i],[m,v],[/opios[\/ ]+([\w\.]+)/i],[v,[m,bi+" Mini"]],[/\bopr\/([\w\.]+)/i],[v,[m,bi]],[/(kindle)\/([\w\.]+)/i,/(lunascape|maxthon|netfront|jasmine|blazer)[\/ ]?([\w\.]*)/i,/(avant |iemobile|slim)(?:browser)?[\/ ]?([\w\.]*)/i,/(ba?idubrowser)[\/ ]?([\w\.]+)/i,/(?:ms|\()(ie) ([\w\.]+)/i,/(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\/([-\w\.]+)/i,/(heytap|ovi)browser\/([\d\.]+)/i,/(weibo)__([\d\.]+)/i],[m,v],[/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],[v,[m,"UCBrowser"]],[/microm.+\bqbcore\/([\w\.]+)/i,/\bqbcore\/([\w\.]+).+microm/i],[v,[m,"WeChat(Win) Desktop"]],[/micromessenger\/([\w\.]+)/i],[v,[m,"WeChat"]],[/konqueror\/([\w\.]+)/i],[v,[m,"Konqueror"]],[/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],[v,[m,"IE"]],[/ya(?:search)?browser\/([\w\.]+)/i],[v,[m,"Yandex"]],[/(avast|avg)\/([\w\.]+)/i],[[m,/(.+)/,"$1 Secure"+si],v],[/\bfocus\/([\w\.]+)/i],[v,[m,wi+" Focus"]],[/\bopt\/([\w\.]+)/i],[v,[m,bi+" Touch"]],[/coc_coc\w+\/([\w\.]+)/i],[v,[m,"Coc Coc"]],[/dolfin\/([\w\.]+)/i],[v,[m,"Dolphin"]],[/coast\/([\w\.]+)/i],[v,[m,bi+" Coast"]],[/miuibrowser\/([\w\.]+)/i],[v,[m,"MIUI"+si]],[/fxios\/([\w\.-]+)/i],[v,[m,ai+"Firefox"]],[/\bqihu|(qi?ho?o?|360)browser/i],[[m,"360"+si]],[/(oculus|samsung|sailfish|huawei)browser\/([\w\.]+)/i],[[m,/(.+)/,"$1"+si],v],[/(comodo_dragon)\/([\w\.]+)/i],[[m,/_/g," "],v],[/(electron)\/([\w\.]+) safari/i,/(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,/m?(qqbrowser|baiduboxapp|2345Explorer)[\/ ]?([\w\.]+)/i],[m,v],[/(metasr)[\/ ]?([\w\.]+)/i,/(lbbrowser)/i,/\[(linkedin)app\]/i],[m],[/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],[[m,li],v],[/(kakao(?:talk|story))[\/ ]([\w\.]+)/i,/(naver)\(.*?(\d+\.[\w\.]+).*\)/i,/safari (line)\/([\w\.]+)/i,/\b(line)\/([\w\.]+)\/iab/i,/(chromium|instagram)[\/ ]([-\w\.]+)/i],[m,v],[/\bgsa\/([\w\.]+) .*safari\//i],[v,[m,"GSA"]],[/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],[v,[m,"TikTok"]],[/headlesschrome(?:\/([\w\.]+)| )/i],[v,[m,ni+" Headless"]],[/ wv\).+(chrome)\/([\w\.]+)/i],[[m,ni+" WebView"],v],[/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],[v,[m,"Android"+si]],[/chrome\/([\w\.]+) mobile/i],[v,[m,ai+"Chrome"]],[/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],[m,v],[/version\/([\w\.\,]+) .*mobile(?:\/\w+ | ?)safari/i],[v,[m,ai+"Safari"]],[/iphone .*mobile(?:\/\w+ | ?)safari/i],[[m,ai+"Safari"]],[/version\/([\w\.\,]+) .*(safari)/i],[v,m],[/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],[m,[v,t,{"1.0":"/8",1.2:"/1",1.3:"/3","2.0":"/412","2.0.2":"/416","2.0.3":"/417","2.0.4":"/419","?":"/"}]],[/(webkit|khtml)\/([\w\.]+)/i],[m,v],[/(?:mobile|tablet);.*(firefox)\/([\w\.-]+)/i],[[m,ai+"Firefox"],v],[/(navigator|netscape\d?)\/([-\w\.]+)/i],[[m,"Netscape"],v],[/mobile vr; rv:([\w\.]+)\).+firefox/i],[v,[m,wi+" Reality"]],[/ekiohf.+(flow)\/([\w\.]+)/i,/(swiftfox)/i,/(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\/ ]?([\w\.\+]+)/i,/(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,/(firefox)\/([\w\.]+)/i,/(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,/(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,/(links) \(([\w\.]+)/i,/panasonic;(viera)/i],[m,v],[/(cobalt)\/([\w\.]+)/i],[m,[v,/[^\d\.]+./,l]]],cpu:[[/\b(?:(amd|x|x86[-_]?|wow|win)64)\b/i],[[x,"amd64"]],[/(ia32(?=;))/i,/((?:i[346]|x)86)[;\)]/i],[[x,"ia32"]],[/\b(aarch64|arm(v?8e?l?|_?64))\b/i],[[x,"arm64"]],[/\b(arm(?:v[67])?ht?n?[fl]p?)\b/i],[[x,"armhf"]],[/windows (ce|mobile); ppc;/i],[[x,"arm"]],[/((?:ppc|powerpc)(?:64)?)(?: mac|;|\))/i],[[x,/ower/,l,gi]],[/(sun4\w)[;\)]/i],[[x,"sparc"]],[/((?:avr32|ia64(?=;))|68k(?=\))|\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\b|pa-risc)/i],[[x,gi]]],device:[[/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],[f,[o,ei],[g,a]],[/\b((?:s[cgp]h|gt|sm)-\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,/samsung[- ]([-\w]+)/i,/sec-(sgh\w+)/i],[f,[o,ei],[g,k]],[/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],[f,[o,G],[g,k]],[/\((ipad);[-\w\),; ]+apple/i,/applecoremedia\/[\w\.]+ \((ipad)/i,/\b(ipad)\d\d?,\d\d?[;\]].+ios/i],[f,[o,G],[g,a]],[/(macintosh);/i],[f,[o,G]],[/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],[f,[o,"Sharp"],[g,k]],[/\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\d{2})\b(?!.+d\/s)/i],[f,[o,Q],[g,a]],[/(?:huawei|honor)([-\w ]+)[;\)]/i,/\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],[f,[o,Q],[g,k]],[/\b(poco[\w ]+)(?: bui|\))/i,/\b; (\w+) build\/hm\1/i,/\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,/\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,/\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\))/i],[[f,/_/g," "],[o,oi],[g,k]],[/\b(mi[-_ ]?(?:pad)(?:[\w_ ]+))(?: bui|\))/i],[[f,/_/g," "],[o,oi],[g,a]],[/; (\w+) bui.+ oppo/i,/\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],[f,[o,"OPPO"],[g,k]],[/vivo (\w+)(?: bui|\))/i,/\b(v[12]\d{3}\w?[at])(?: bui|;)/i],[f,[o,"Vivo"],[g,k]],[/\b(rmx[12]\d{3})(?: bui|;|\))/i],[f,[o,"Realme"],[g,k]],[/\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,/\bmot(?:orola)?[- ](\w*)/i,/((?:moto[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i],[f,[o,ii],[g,k]],[/\b(mz60\d|xoom[2 ]{0,2}) build\//i],[f,[o,ii],[g,a]],[/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],[f,[o,Y],[g,a]],[/(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,/\blg[-e;\/ ]+((?!browser|netcast|android tv)\w+)/i,/\blg-?([\d\w]+) bui/i],[f,[o,Y],[g,k]],[/(ideatab[-\w ]+)/i,/lenovo ?(s[56]000[-\w]+|tab(?:[\w ]+)|yt[-\d\w]{6}|tb[-\d\w]{6})/i],[f,[o,"Lenovo"],[g,a]],[/(?:maemo|nokia).*(n900|lumia \d+)/i,/nokia[-_ ]?([-\w\.]*)/i],[[f,/_/g," "],[o,"Nokia"],[g,k]],[/(pixel c)\b/i],[f,[o,K],[g,a]],[/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],[f,[o,K],[g,k]],[/droid.+ (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],[f,[o,ti],[g,k]],[/sony tablet [ps]/i,/\b(?:sony)?sgp\w+(?: bui|\))/i],[[f,"Xperia Tablet"],[o,ti],[g,a]],[/ (kb2005|in20[12]5|be20[12][59])\b/i,/(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],[f,[o,"OnePlus"],[g,k]],[/(alexa)webm/i,/(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\))/i,/(kf[a-z]+)( bui|\)).+silk\//i],[f,[o,W],[g,a]],[/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],[[f,/(.+)/g,"Fire Phone $1"],[o,W],[g,k]],[/(playbook);[-\w\),; ]+(rim)/i],[f,o,[g,a]],[/\b((?:bb[a-f]|st[hv])100-\d)/i,/\(bb10; (\w+)/i],[f,[o,Z],[g,k]],[/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],[f,[o,X],[g,a]],[/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],[f,[o,X],[g,k]],[/(nexus 9)/i],[f,[o,"HTC"],[g,a]],[/(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,/(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,/(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i],[o,[f,/_/g," "],[g,k]],[/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],[f,[o,"Acer"],[g,a]],[/droid.+; (m[1-5] note) bui/i,/\bmz-([-\w]{2,})/i],[f,[o,"Meizu"],[g,k]],[/(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\w]*)/i,/(hp) ([\w ]+\w)/i,/(asus)-?(\w+)/i,/(microsoft); (lumia[\w ]+)/i,/(lenovo)[-_ ]?([-\w]+)/i,/(jolla)/i,/(oppo) ?([\w ]+) bui/i],[o,f,[g,k]],[/(kobo)\s(ereader|touch)/i,/(archos) (gamepad2?)/i,/(hp).+(touchpad(?!.+tablet)|tablet)/i,/(kindle)\/([\w\.]+)/i],[o,f,[g,a]],[/(surface duo)/i],[f,[o,J],[g,a]],[/droid [\d\.]+; (fp\du?)(?: b|\))/i],[f,[o,"Fairphone"],[g,k]],[/(shield[\w ]+) b/i],[f,[o,"Nvidia"],[g,a]],[/(sprint) (\w+)/i],[o,f,[g,k]],[/(kin\.[onetw]{3})/i],[[f,/\./g," "],[o,J],[g,k]],[/droid.+; ([c6]+|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],[f,[o,ri],[g,a]],[/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],[f,[o,ri],[g,k]],[/smart-tv.+(samsung)/i],[o,[g,n]],[/hbbtv.+maple;(\d+)/i],[[f,/^/,"SmartTV"],[o,ei],[g,n]],[/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],[[o,Y],[g,n]],[/(apple) ?tv/i],[o,[f,G+" TV"],[g,n]],[/crkey/i],[[f,ni+"cast"],[o,K],[g,n]],[/droid.+aft(\w)( bui|\))/i],[f,[o,W],[g,n]],[/\(dtv[\);].+(aquos)/i,/(aquos-tv[\w ]+)\)/i],[f,[o,"Sharp"],[g,n]],[/(bravia[\w ]+)( bui|\))/i],[f,[o,ti],[g,n]],[/(mitv-\w{5}) bui/i],[f,[o,oi],[g,n]],[/Hbbtv.*(technisat) (.*);/i],[o,f,[g,n]],[/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i,/hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],[[o,yi],[f,yi],[g,n]],[/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],[[g,n]],[/(ouya)/i,/(nintendo) (\w+)/i],[o,f,[g,r]],[/droid.+; (shield) bui/i],[f,[o,"Nvidia"],[g,r]],[/(playstation \w+)/i],[f,[o,ti],[g,r]],[/\b(xbox(?: one)?(?!; xbox))[\); ]/i],[f,[o,J],[g,r]],[/((pebble))app/i],[o,f,[g,y]],[/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],[f,[o,G],[g,y]],[/droid.+; (glass) \d/i],[f,[o,K],[g,y]],[/droid.+; (wt63?0{2,3})\)/i],[f,[o,ri],[g,y]],[/(quest( 2| pro)?)/i],[f,[o,li],[g,y]],[/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],[o,[g,_]],[/(aeobc)\b/i],[f,[o,W],[g,_]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+? mobile safari/i],[f,[g,k]],[/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],[f,[g,a]],[/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],[[g,a]],[/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],[[g,k]],[/(android[-\w\. ]{0,9});.+buil/i],[f,[o,"Generic"]]],engine:[[/windows.+ edge\/([\w\.]+)/i],[v,[m,"EdgeHTML"]],[/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],[v,[m,"Blink"]],[/(presto)\/([\w\.]+)/i,/(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\/([\w\.]+)/i,/ekioh(flow)\/([\w\.]+)/i,/(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,/(icab)[\/ ]([23]\.[\d\.]+)/i,/\b(libweb)/i],[m,v],[/rv\:([\w\.]{1,9})\b.+(gecko)/i],[v,m]],os:[[/microsoft (windows) (vista|xp)/i],[m,v],[/(windows) nt 6\.2; (arm)/i,/(windows (?:phone(?: os)?|mobile))[\/ ]?([\d\.\w ]*)/i,/(windows)[\/ ]?([ntce\d\. ]+\w)(?!.+xbox)/i],[m,[v,t,_i]],[/(win(?=3|9|n)|win 9x )([nt\d\.]+)/i],[[m,ui],[v,t,_i]],[/ip[honead]{2,4}\b(?:.*os ([\w]+) like mac|; opera)/i,/ios;fbsv\/([\d\.]+)/i,/cfnetwork\/.+darwin/i],[[v,/_/g,"."],[m,"iOS"]],[/(mac os x) ?([\w\. ]*)/i,/(macintosh|mac_powerpc\b)(?!.+haiku)/i],[[m,"macOS"],[v,/_/g,"."]],[/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],[v,m],[/(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\/ ]?([\w\.]*)/i,/(blackberry)\w*\/([\w\.]*)/i,/(tizen|kaios)[\/ ]([\w\.]+)/i,/\((series40);/i],[m,v],[/\(bb(10);/i],[v,[m,Z]],[/(?:symbian ?os|symbos|s60(?=;)|series60)[-\/ ]?([\w\.]*)/i],[v,[m,"Symbian"]],[/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],[v,[m,wi+" OS"]],[/web0s;.+rt(tv)/i,/\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],[v,[m,"webOS"]],[/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],[v,[m,"watchOS"]],[/crkey\/([\d\.]+)/i],[v,[m,ni+"cast"]],[/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],[[m,"Chrome OS"],v],[/panasonic;(viera)/i,/(netrange)mmh/i,/(nettv)\/(\d+\.[\w\.]+)/i,/(nintendo|playstation) (\w+)/i,/(xbox); +xbox ([^\);]+)/i,/\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,/(mint)[\/\(\) ]?(\w*)/i,/(mageia|vectorlinux)[; ]/i,/([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,/(hurd|linux) ?([\w\.]*)/i,/(gnu) ?([\w\.]*)/i,/\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,/(haiku) (\w+)/i],[m,v],[/(sunos) ?([\w\.\d]*)/i],[[m,"Solaris"],v],[/((?:open)?solaris)[-\/ ]?([\w\.]*)/i,/(aix) ((\d)(?=\.|\)| )[\w\.])*/i,/\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,/(unix) ?([\w\.]*)/i],[m,v]]},Si=(ni={init:{},isIgnore:{},isIgnoreRgx:{},toString:{}},pi.call(ni.init,[[V,[m,v,h]],[B,[x]],[F,[g,f,o]],[$,[m,v]],[D,[m,v]]]),pi.call(ni.isIgnore,[[V,[v,h]],[$,[v]],[D,[v]]]),pi.call(ni.isIgnoreRgx,[[V,/ ?browser$/i],[D,/ ?os$/i]]),pi.call(ni.toString,[[V,[m,v]],[B,[x]],[F,[o,f]],[$,[m,v]],[D,[m,v]]]),ni),qi=function(e,t,o,i){var r=Si.init[e],a=Si.isIgnore[e]||0,s=Si.isIgnoreRgx[e]||0,n=Si.toString[e]||0;function w(){pi.call(this,r)}return w.prototype.withClientHints=function(){return di?di.getHighEntropyValues(j).then(function(i){i=new Ci(i,!1);return new Ni(e,t,o,i).parseCH().get()}):new Ni(e,t,o,i).parseCH().get()},e!=L&&(w.prototype.is=function(i){var e,t=!1;for(e in this)if(this.hasOwnProperty(e)&&!b(a,e)&&gi(s?xi(s,this[e]):this[e])==gi(s?xi(s,i):i)){if(t=!0,i!=d)break}else if(i==d&&t){t=!t;break}return t},w.prototype.toString=function(){var i,e=l;for(i in n)typeof this[n[i]]!==d&&(e+=(e?" ":l)+this[n[i]]);return e||d}),di||(w.prototype.then=function(i){return i(this),this}),new w};function Ci(i,e){if(i=i||{},pi.call(this,j),e)pi.call(this,[[q,mi(i[O])],[C,mi(i[P])],[q,mi(i[O])],[k,/\?1/.test(i[E])],[f,ki(i[H])],[N,ki(i[I])],[z,ki(i[M])],[x,ki(i[R])],[A,ki(i[U])]]);else for(var t in i)this.hasOwnProperty(t)&&typeof i[t]!==d&&(this[t]=i[t]);return this}function Ni(i,e,t,o){switch(pi.call(this,[["itemType",i],["ua",e],["uaCH",o],["rgxMap",t],["data",qi(i,e,t,o)]]),this.parse(),this.itemType){case V:ci&&ci.userAgent==e&&ci.brave&&typeof ci.brave.isBrave==c&&this.set(m,"Brave"),this.set(h,vi(this.get(v)));break;case F:!this.get(g)&&di&&di[k]&&this.set(g,k),"Macintosh"==this.get(f)&&ci&&typeof ci.standalone!==d&&ci.maxTouchPoints&&2<ci.maxTouchPoints&&this.set(f,"iPad").set(g,a);break;case D:!this.get(m)&&di&&di[N]&&"Unknown"!=di[N]&&this.set(m,di[N]);break;case L:var r=function(i){return new Ni(i,e,t[i],o).get()};this.set("ua",e).set(V,r(V)).set(B,r(B)).set(F,r(F)).set($,r($)).set(D,r(D)).get()}return this}function zi(i,e,t){if(typeof i===p?(e=fi(i)?(typeof e===p&&(t=e),i):(t=i,u),i=u):typeof i!==s||fi(e)||(t=e,e=u),!(this instanceof zi))return new zi(i,e,t).getResult();var o=i||(ci&&ci.userAgent?ci.userAgent:t&&t[T]?t[T]:l),r=new Ci(t,!0),a=e?hi(Ti,e):Ti,e=function(i){return function(){return new Ni(i,o,i==L?a:a[i],r).get()}};return pi.call(this,[["getBrowser",e(V)],["getCPU",e(B)],["getDevice",e(F)],["getEngine",e($)],["getOS",e(D)],["getResult",e(L)],["getUA",function(){return o}],["setUA",function(i){return o=typeof i===s&&i.length>S?yi(i,S):i,this}]]).setUA(o),this}Ni.prototype.get=function(i){return i?this.data.hasOwnProperty(i)?this.data[i]:u:this.data},Ni.prototype.parse=function(){return this.itemType!=L&&w.call(this.data,this.ua,this.rgxMap),this},Ni.prototype.parseCH=function(){var e=this.ua,t=this.uaCH,o=this.rgxMap;switch(this.itemType){case V:var i=t[C]||t[q];if(i)for(var r in i){var a=i[r].brand,r=i[r].version;/not.a.brand/i.test(a)&&!/chromi/i.test(this.get(m))||this.set(m,xi(K+" ",a)).set(v,r).set(h,vi(r))}break;case B:var s=t[x];s&&(s&&"64"==t[A]&&(s+="64"),w.call(this.data,s+";",o));break;case F:t[k]&&this.set(g,k),t[f]&&this.set(f,t[f]);break;case D:s=t[N];s&&(n=t[z],s==ui&&(n=13<=parseInt(vi(n),10)?"11":"10"),this.set(m,s).set(v,n));break;case L:var n=function(i){return new Ni(i,e,o[i],t).parseCH().get()};this.set("ua",e).set(V,n(V)).set(B,n(B)).set(F,n(F)).set($,n($)).set(D,n(D))}return this},Ni.prototype.set=function(i,e){return this.data[i]=e,this},zi.VERSION="2.0.0-alpha.1",zi.BROWSER=e([m,v,h]),zi.CPU=e([x]),zi.DEVICE=e([f,o,g,r,k,n,a,y,_]),zi.ENGINE=zi.OS=e([m,v]),typeof exports!==d?(typeof module!==d&&module.exports&&(exports=module.exports=zi),exports.UAParser=zi):typeof define===c&&define.amd?define(function(){return zi}):typeof i!==d&&(i.UAParser=zi);var Ai,Oi=typeof i!==d&&(i.jQuery||i.Zepto);Oi&&!Oi.ua&&(Ai=new zi,Oi.ua=Ai.getResult(),Oi.ua.get=function(){return Ai.getUA()},Oi.ua.set=function(i){Ai.setUA(i);var e,t=Ai.getResult();for(e in t)Oi.ua[e]=t[e]})}("object"==typeof window?window:this); |