UNPKG

native-fn

Version:
2 lines (1 loc) 12.7 kB
"use strict";function e(e){if(void 0===e)return"";var i={"4.90":"ME","NT3.51":"NT 3.11","NT4.0":"NT 4.0","NT 5.0":"2000","NT 5.1":"XP","NT 5.2":"XP","NT 6.0":"Vista","NT 6.1":"7","NT 6.2":"8","NT 6.3":"8.1","NT 6.4":"10","NT 10.0":"10",ARM:"RT"}[e];return void 0!==i?i:e}function i(e){return void 0===e?"":e.replace(/_/g,".")}var n,r,o,t;!function(e){e.Unknown="Unknown",e.Android="Android",e.iOS="iOS",e.Windows="Windows",e.MacOS="MacOS"}(n||(n={})),function(e){e.Unknown="Unknown",e.Mobile="Mobile",e.Desktop="Desktop"}(r||(r={})),function(e){e.Unknown="Unknown",e.EdgeHTML="EdgeHTML",e.ArkWeb="ArkWeb",e.Blink="Blink",e.Presto="Presto",e.WebKit="WebKit",e.Trident="Trident",e.NetFront="NetFront",e.KHTML="KHTML",e.Tasman="Tasman",e.Gecko="Gecko"}(o||(o={})),function(e){e.Unknown="Unknown",e.Chrome="Chrome",e.Safari="Safari",e.Edge="Edge",e.Firefox="Firefox",e.Opera="Opera",e.IE="IE",e.SamsungInternet="SamsungInternet"}(t||(t={}));var a=void 0!==globalThis.navigator&&"string"==typeof globalThis.navigator.userAgent?globalThis.navigator.userAgent:"",s={"Google Chrome":"Chrome","Microsoft Edge":"Edge","Microsoft Edge WebView2":"Edge WebView2","Android WebView":"Chrome WebView",HeadlessChrome:"Chrome Headless",OperaMobile:"Opera Mobi"},l=["ae","ar","arc","bcc","bqi","ckb","dv","fa","glk","he","iw","ku","mzn","nqo","pnb","ps","sd","ug","ur","yi"],g=[[/windows nt (6\.[23]); arm/i,n.Windows,e],[/windows (?:phone|mobile|iot)(?: os)?[\/ ]?([\d.]*( se)?)/i,n.Windows,e],[/windows[\/ ](1[01]|2000|3\.1|7|8(\.1)?|9[58]|me|server 20\d\d( r2)?|vista|xp)/i,n.Windows,e],[/windows nt ?([\d.)]*)(?!.+xbox)/i,n.Windows,e],[/\bwin(?=3| ?9|n)(?:nt| 9x )?([\d.;]*)/i,n.Windows,e],[/windows ce\/?([\d.]*)/i,n.Windows,e],[/[adehimnop]{4,7}\b(?:.*os (\w+) like mac|; opera)/i,n.iOS,i],[/(?:ios;fbsv|ios(?=.+ip(?:ad|hone))|ip(?:ad|hone)(?: |.+i(?:pad)?)os)[\/ ]([\w.]+)/i,n.iOS,i],[/cfnetwork\/.+darwin/i,n.iOS,i],[/mac os x ?([\w. ]*)/i,n.MacOS,i],[/(?:macintosh|mac_powerpc\b)(?!.+(haiku|morphos))/i,n.MacOS,i],[/droid ([\w.]+)\b.+(android[- ]x86)/i,n.Android],[/android\w*[-\/.; ]?([\d.]*)/i,n.Android]],d=[[/windows.+ edge\/([\w.]+)/i,o.EdgeHTML],[/arkweb\/([\w.]+)/i,o.ArkWeb],[/webkit\/537\.36.+chrome\/(?!27)([\w.]+)/i,o.Blink],[/presto\/([\w.]+)/i,o.Presto],[/webkit\/([\w.]+)/i,o.WebKit],[/trident\/([\w.]+)/i,o.Trident],[/netfront\/([\w.]+)/i,o.NetFront],[/khtml[\/ ]\(?([\w.]+)/i,o.KHTML],[/tasman[\/ ]\(?([\w.]+)/i,o.Tasman],[/rv:([\w.]{1,9})\b.+gecko/i,o.Gecko]],u=[[/\b(?:crmo|crios)\/([\w.]+)/i,t.Chrome],[/webview.+edge\/([\w.]+)/i,t.Edge],[/edg(?:e|ios|a)?\/([\w.]+)/i,t.Edge],[/opera mini\/([-\w.]+)/i,t.Opera],[/opera [mobileta]{3,6}\b.+version\/([-\w.]+)/i,t.Opera],[/opera(?:.+version\/|[\/ ]+)([\w.]+)/i,t.Opera],[/opios[\/ ]+([\w.]+)/i,t.Opera],[/\bop(?:rg)?x\/([\w.]+)/i,t.Opera],[/\bopr\/([\w.]+)/i,t.Opera],[/iemobile(?:browser|boat|jet)[\/ ]?([\d.]*)/i,t.IE],[/(?:ms|\()ie ([\w.]+)/i,t.IE],[/trident.+rv[: ]([\w.]{1,9})\b.+like gecko/i,t.IE],[/\bfocus\/([\w.]+)/i,t.Firefox],[/\bopt\/([\w.]+)/i,t.Opera],[/coast\/([\w.]+)/i,t.Opera],[/fxios\/([\w.-]+)/i,t.Firefox],[/samsungbrowser\/([\w.]+)/i,t.SamsungInternet],[/headlesschrome(?:\/([\w.]+)| )/i,t.Chrome],[/wv\).+chrome\/([\w.]+).+edgw\//i,t.Edge],[/ wv\).+(chrome)\/([\w.]+)/i,t.Chrome],[/chrome\/([\w.]+) mobile/i,t.Chrome],[/chrome\/v?([\w.]+)/i,t.Chrome],[/version\/([\w.,]+) .*mobile(?:\/\w+ | ?)safari/i,t.Safari],[/iphone .*mobile(?:\/\w+ | ?)safari/i,t.Safari],[/version\/([\w.,]+) .*safari/i,t.Safari],[/webkit.+?(?:mobile ?safari|safari)(\/[\w.]+)/i,t.Safari,"1"],[/(?:mobile|tablet);.*firefox\/([\w.-]+)/i,t.Firefox],[/mobile vr; rv:([\w.]+)\).+firefox/i,t.Firefox],[/firefox\/([\w.]+)/i,t.Firefox]],c=[/ daum[ /]/i,/ deusu\//i,/(?:^|[^g])news(?!sapphire)/i,/(?<! (?:channel\/|google\/))google(?!(app|\/google| pixel))/i,/(?<! cu)bots?(?:\b|_)/i,/(?<!lib)http/i,/(?<![hg]m)score/i,/(?<!cam)scan/i,/24x7/i,/@[a-z][\w-]+\./i,/\(\)/i,/\.com\b/i,/\b\w+\.ai/i,/\bmanus-user\//i,/\bort\//i,/\bperl\b/i,/\bsecurityheaders\b/i,/\btime\//i,/\|/i,/^[\w .\-(?:)%]+(?:\/v?\d+(?:\.\d+)?(?:\.\d{1,10})*?)?(?:,|$)/i,/^[^ ]{50,}$/i,/^\d+\b/i,/^\W/i,/^\w*search\b/i,/^\w+\/[\w()]*$/i,/^\w+\/\d\.\d\s\([\w@]+\)$/i,/^active/i,/^ad muncher/i,/^amaya/i,/^apache\//i,/^avsdevicesdk\//i,/^azure/i,/^biglotron/i,/^bot/i,/^bw\//i,/^clamav[ /]/i,/^client\//i,/^cobweb\//i,/^custom/i,/^ddg[_-]android/i,/^discourse/i,/^dispatch\/\d/i,/^downcast\//i,/^duckduckgo/i,/^email/i,/^facebook/i,/^getright\//i,/^gozilla\//i,/^hobbit/i,/^hotzonu/i,/^hwcdn\//i,/^igetter\//i,/^jeode\//i,/^jetty\//i,/^jigsaw/i,/^microsoft bits/i,/^movabletype/i,/^mozilla\/\d\.\d\s[\w.-]+$/i,/^mozilla\/\d\.\d\s\(compatible;?(?:\s[\w-.]+\/\d+\.\d+)?\)$/i,/^navermailapp/i,/^netsurf/i,/^offline/i,/^openai\//i,/^owler/i,/^php/i,/^postman/i,/^python/i,/^rank/i,/^read/i,/^reed/i,/^rest/i,/^rss/i,/^snapchat/i,/^space bison/i,/^svn/i,/^swcd /i,/^taringa/i,/^thumbor\//i,/^track/i,/^w3c/i,/^webbandit\//i,/^webcopier/i,/^wget/i,/^whatsapp/i,/^wordpress/i,/^xenu link sleuth/i,/^yahoo/i,/^yandex/i,/^zdm\/\d/i,/^zoom marketplace\//i,/advisor/i,/agent\b/i,/analyzer/i,/archive/i,/ask jeeves\/teoma/i,/audit/i,/bit\.ly\//i,/bluecoat drtr/i,/browsex/i,/burpcollaborator/i,/capture/i,/catch/i,/check\b/i,/checker/i,/chrome-lighthouse/i,/chromeframe/i,/classifier/i,/cloudflare/i,/convertify/i,/crawl/i,/cypress\//i,/dareboost/i,/datanyze/i,/dejaclick/i,/detect/i,/dmbrowser/i,/download/i,/exaleadcloudview/i,/feed/i,/fetcher/i,/firephp/i,/functionize/i,/grab/i,/headless/i,/httrack/i,/hubspot marketing grader/i,/ibisbrowser/i,/infrawatch/i,/insight/i,/inspect/i,/iplabel/i,/java(?!;)/i,/library/i,/linkcheck/i,/mail\.ru\//i,/manager/i,/measure/i,/neustar wpm/i,/node\b/i,/nutch/i,/offbyone/i,/onetrust/i,/optimize/i,/pageburst/i,/pagespeed/i,/parser/i,/phantomjs/i,/pingdom/i,/powermarks/i,/preview/i,/proxy/i,/ptst[ /]\d/i,/retriever/i,/rexx;/i,/rigor/i,/rss\b/i,/scrape/i,/server/i,/sogou/i,/sparkler\//i,/speedcurve/i,/spider/i,/splash/i,/statuscake/i,/supercleaner/i,/synapse/i,/synthetic/i,/tools/i,/torrent/i,/transcoder/i,/url/i,/validator/i,/virtuoso/i,/wappalyzer/i,/webglance/i,/webkit2png/i,/whatcms\//i,/xtate\//i],m=a,b={get os(){return function(){for(var e={name:n.Unknown,version:""},i=0;i<g.length;i++){var r=g[i],o=r[0],t=r[1],s=r[2],l=b.userAgent.match(o);if(null!==l){e.name=t,e.version=f(l[1],s);break}}if(e.name===n.iOS&&0===function(e,i){for(var n=e.split("."),r=i.split("."),o=Math.max(n.length,r.length),t=0;t<o;t++){var a=void 0,s=void 0;if((a=t<n.length?parseInt(n[t],10):0)>(s=t<r.length?parseInt(r[t],10):0))return 1;if(a<s)return-1}return 0}(e.version,"18.6")){var d=/\) Version\/([\d.]+)/.exec(b.userAgent);null!==d&&parseInt(d[1].substring(0,2),10)>=26&&(e.version=d[1])}b.userAgent===a&&(void 0!==w.name&&(e.name=w.name),void 0!==w.version&&(e.version=w.version));return e}()},get engine(){return function(){for(var e={name:o.Unknown,version:""},i=0;i<d.length;i++){var n=d[i],r=n[0],t=n[1],s=n[2],l=b.userAgent.match(r);if(null!==l){e.name=t,e.version=f(l[1],s);break}}b.userAgent===a&&(void 0!==p.name&&(e.name=p.name),void 0!==p.version&&(e.version=p.version));return e}()},get browser(){return function(){for(var e={name:t.Unknown,version:""},i=0;i<u.length;i++){var n=u[i],r=n[0],o=n[1],s=n[2],l=b.userAgent.match(r);if(null!==l){e.name=o,e.version=f(l[1],s);break}}b.userAgent===a&&(void 0!==v.name&&(e.name=v.name),void 0!==v.version&&(e.version=v.version));return e}()},get userAgent(){return m},set userAgent(e){m=e},get locale(){return function(){var e={language:null,languages:[],timezone:null,timezoneOffset:0,isRTL:!1},i=null;function n(e){for(var i=0;i<e.length;i++)r(e[i])}function r(i){"string"==typeof(i=T(i))&&-1===e.languages.indexOf(i)&&(null===e.language&&(e.language=i),e.languages.push(i))}if("undefined"!=typeof Intl){try{r(Intl.DateTimeFormat().resolvedOptions().locale)}catch(e){}try{e.timezone=Intl.DateTimeFormat().resolvedOptions().timeZone}catch(e){}}void 0!==globalThis.navigator&&(void 0!==globalThis.navigator.languages&&n(globalThis.navigator.languages),void 0!==globalThis.navigator.language&&r(globalThis.navigator.language),void 0!==globalThis.navigator.userLanguage&&r(globalThis.navigator.userLanguage),void 0!==globalThis.navigator.browserLanguage&&r(globalThis.navigator.browserLanguage),void 0!==globalThis.navigator.systemLanguage&&r(globalThis.navigator.systemLanguage));try{e.timezoneOffset=(new Date).getTimezoneOffset()}catch(e){}if("string"==typeof e.language){if("undefined"!=typeof Intl&&void 0!==Intl.Locale)try{var o=new Intl.Locale(e.language);"function"==typeof o.getTextInfo?i="rtl"===o.getTextInfo().direction:void 0!==o.textInfo&&(i="rtl"===o.textInfo.direction)}catch(e){}if("boolean"!=typeof i){var t=/^([A-Za-z]{1,8})(?:[-_][A-Za-z0-9]{1,8})*$/.exec(e.language);if(null!==t)for(var a=t[1].toLowerCase(),s=0;s<l.length;s++)if(l[s]===a){i=!0;break}}}"boolean"==typeof i&&(e.isRTL=i);return e}()},get device(){return b.userAgent===a&&null!==h?h:b.os.name===n.iOS||b.os.name===n.Android?r.Mobile:b.os.name===n.Windows||b.os.name===n.MacOS?r.Desktop:r.Unknown},get renderer(){return function(){if(void 0===globalThis.document)return"";var e=globalThis.document.createElement("canvas");if("function"!=typeof e.getContext)return"";var i=e.getContext("webgl2")||e.getContext("experimental-webgl")||e.getContext("webgl");if(null===i)return"";if(i instanceof WebGLRenderingContext||"getParameter"in i&&"function"==typeof i.getParameter){var n=i.getExtension("WEBGL_debug_renderer_info");return null===n?i.getParameter(i.RENDERER):i.getParameter(n.UNMASKED_RENDERER_WEBGL)}return""}()},get isWebview(){return/; ?wv|applewebkit(?!.*safari)/i.test(b.userAgent)},get isNode(){return void 0!==globalThis.process&&void 0!==globalThis.process.versions&&void 0!==globalThis.process.versions.node},get isStandalone(){return b.os.name===n.iOS?"standalone"in globalThis.navigator&&!!globalThis.navigator.standalone:"matchMedia"in globalThis&&globalThis.matchMedia("(display-mode: standalone)").matches},get isBot(){return function(){for(var e=0;e<c.length;e++)if(c[e].test(b.userAgent))return!0;return!1}()},Constants:{OS:n,Engines:o,Browsers:t,Devices:r},Errors:{}},w={},v={},p={},h=null;function f(e,i){return"function"==typeof i?i(e):"string"==typeof i?i:void 0===e?"":e}function T(e){if(null==e)return e;if(0===e.length)return null;if("C"===(e=e.replace(/_/g,"-"))||"posix"===e.toLowerCase())return"en-US";if(-1!==e.indexOf("."))return T(e.split(".")[0]);if(-1!==e.indexOf("@"))return T(e.split("@")[0]);var i=e.split("-");return 0===i.length?null:(i[0]=i[0].toLowerCase(),i.length>1&&2===i[1].length&&(i[1]=i[1].toUpperCase()),i.length>2&&4===i[1].length&&(i[1]=i[1].charAt(0).toUpperCase()+i[1].slice(1).toLowerCase()),i.join("-"))}void 0!==globalThis.navigator&&void 0!==globalThis.navigator.userAgentData&&void 0!==globalThis.navigator.userAgentData.getHighEntropyValues&&globalThis.navigator.userAgentData.getHighEntropyValues(["brands","fullVersionList","mobile","model","platform","platformVersion","architecture","formFactors","bitness","uaFullVersion","wow64"]).then((function(e){try{for(var i=e.fullVersionList||e.brands||[],o=e.platformVersion,a=e.platform,l=b.browser.name,g=null,d=0;d<i.length;d++){var u=null==(f=i[d])?{brand:"",version:""}:"string"==typeof f?{brand:f,version:""}:{brand:f.brand,version:f.version},c=u.version,m=u.brand;/not.a.brand/i.test(m)||((null===g||/Chrom/.test(g)&&"Chromium"!==m||"Edge"===g&&/WebView2/.test(m))&&(m=s[m]||m,null!==(g=l)&&!/Chrom/.test(g)&&/Chrom/.test(m)||("Chrome"===(l=m)||"Chrome WebView"===l||"Chrome Headless"===l?v.name=t.Chrome:"Edge"===l||"Edge WebView2"===l?v.name=t.Edge:"Opera Mobi"===l&&(v.name=t.Opera),v.version=c),g=m),"Chromium"===m&&(p.version=c))}"string"==typeof o&&(b.os.name===n.Windows?w.version=parseInt(o.split(".")[0],10)>=13?"11":"10":w.version=o),"string"==typeof a&&(/android/i.test(a)?w.name=n.Android:/ios|iphone|ipad/i.test(a)?w.name=n.iOS:/windows|win32/i.test(a)?w.name=n.Windows:/macos|macintel/i.test(a)&&(w.name=n.MacOS)),!0===e.mobile&&(h=r.Mobile)}catch(e){}var f}));var k=/iemobile/i.test(b.userAgent),x=/windows phone/i.test(b.userAgent),y=null,E={get value(){return(e=A())&&e.getAttribute("content")||void 0;var e},set value(e){var i;void 0===e?(i=A())&&(i.remove(),y=null):function(e){var i=A();null===i&&(i=function(){var e=globalThis.document.createElement("meta");return e.setAttribute("name",O()),globalThis.document.head.prepend(e),y=e}());i.setAttribute("content",e)}(e)},Constants:{},Errors:{}};function O(){return k?"msapplication-navbutton-color":x?"msapplication-TileColor":"theme-color"}function A(){return null!==y&&y.isConnected?y:y=globalThis.document.querySelector('meta[name="'+O()+'"]')}module.exports=E;