diff --git a/index.html b/index.html index 4b9132f..28b7e0c 100644 --- a/index.html +++ b/index.html @@ -88,8 +88,8 @@
- 😵‍💫💢 Complex - 🫤❓ Unpredictable + 😵‍💫💢 Confusing + 🫤❓ Inconsistent 😭💸 Costly
@@ -102,7 +102,7 @@
🙂✨ Concise 🙂💡 Insightful - 🙂💰 Valuable + 🙂💰 Cost-efficient
@@ -129,7 +129,7 @@
-
+
Browser
@@ -141,7 +141,7 @@
-
+
OS
@@ -153,7 +153,7 @@
-
+
CPU Architecture
@@ -168,7 +168,7 @@
-
+
Device Type
@@ -180,9 +180,9 @@
-
+
- Device Vendor & Model + Device Model
detected device vendor icon @@ -195,7 +195,7 @@
-
+
Category
@@ -207,7 +207,7 @@
-
+
Engine
@@ -221,7 +221,7 @@
-
+
isBot()
@@ -233,7 +233,7 @@
-
+
isAICrawler()
@@ -252,13 +252,13 @@
- +
- +
@@ -303,18 +303,18 @@

-
Clean & Well-Structured
+
Clean & Organized

-

Effortless, intuitive API with clear output.

+

Effortless, intuitive API delivering clear, consistent results.

-
Wide Detection Coverage
+
Wide Coverage

-

Detects various devices, browsers, bots, and more.

+

Detects various devices, browsers, bots, apps, and more.

@@ -338,7 +338,7 @@ Works Everywhere
-

Runs seamlessly in browser and Node.js.

+

Runs seamlessly across browsers and Node.js.

@@ -631,7 +631,7 @@ $ npx ua-parser-js "Flock/2.16 (Zenwalk 7.3; es_PR;)" >> log.txt
- LOVED BY DEVELOPERS + TESTIMONIALS: LOVED BY DEVELOPERS WORLDWIDE
@@ -647,7 +647,7 @@ $ npx ua-parser-js "Flock/2.16 (Zenwalk 7.3; es_PR;)" >> log.txt 5/5
-

"A great utility library to have when you're +

"A great utility library to have when you're investigating what kind of users are visiting your website and how you can improve their UX. Supports most browsers out there."

@@ -663,7 +663,7 @@ $ npx ua-parser-js "Flock/2.16 (Zenwalk 7.3; es_PR;)" >> log.txt 5/5
-

"Thanks to the awesome people who make life so much easier for developers.. The evolution of the internet has made it critical that we detect the user's device type accurately to make our apps function better and look better.".

+

"Thanks to the awesome people who make life so much easier for developers.. The evolution of the internet has made it critical that we detect the user's device type accurately to make our apps function better and look better.".

The-Linguist

@@ -682,7 +682,7 @@ $ npx ua-parser-js "Flock/2.16 (Zenwalk 7.3; es_PR;)" >> log.txt 5/5
-

"I've been using your library for a long time and it +

"I've been using your library for a long time and it totally rocks!".

Christian Rich

@@ -696,7 +696,7 @@ $ npx ua-parser-js "Flock/2.16 (Zenwalk 7.3; es_PR;)" >> log.txt 5/5
-

"Thank you for putting out this very useful +

"Thank you for putting out this very useful library!".

Anuj Nijhawan

@@ -710,7 +710,7 @@ $ npx ua-parser-js "Flock/2.16 (Zenwalk 7.3; es_PR;)" >> log.txt 5/5
-

"For years, it has been appreciated as a valuable tool for web developers. Its ability to accurately parse user agent strings.. has made it an essential library for many of us.".

+

"For years, it has been appreciated as a valuable tool for web developers. Its ability to accurately parse user agent strings.. has made it an essential library for many of us.".

LogRocket

@@ -722,14 +722,14 @@ $ npx ua-parser-js "Flock/2.16 (Zenwalk 7.3; es_PR;)" >> log.txt
- TRUSTED BY TOP TECH COMPANIES + SHOWCASE: TRUSTED BY LEADING TECH COMPANIES

- Case Studies
Hover over the company logo to see projects that use UAParser.js
+ Case Studies
Discover how leading companies use UAParser.js

@@ -1414,9 +1414,9 @@ $ npx ua-parser-js "Flock/2.16 (Zenwalk 7.3; es_PR;)" >> log.txt
Non-commercial usage
    -
  • Full detection features
  • -
  • npm & downloadable
  • -
  • Non-commercial use
  • +
  • Full features
  • +
  • npm-ready
  • +
  • Non-commercial usage rights
  • Unlimited deployments
  • 1 year support
  • Lifetime updates
  • @@ -1438,9 +1438,9 @@ $ npx ua-parser-js "Flock/2.16 (Zenwalk 7.3; es_PR;)" >> log.txt
    1 End-Product per 1 License
      -
    • Full detection features
    • -
    • npm & downloadable
    • -
    • Commercial rights
    • +
    • Full features
    • +
    • npm-ready
    • +
    • Commercial usage rights
    • 1 TLD per 1 license
    • 1 year support
    • Lifetime updates
    • @@ -1462,9 +1462,9 @@ $ npx ua-parser-js "Flock/2.16 (Zenwalk 7.3; es_PR;)" >> log.txt
      Full usage rights
        -
      • Full detection features
      • -
      • npm & downloadable
      • -
      • Commercial rights
      • +
      • Full features
      • +
      • npm-ready
      • +
      • Commercial usage rights
      • Unlimited deployments
      • 1 year support
      • Lifetime updates
      • diff --git a/js/ua-parser.js b/js/ua-parser.js index 8f682e4..64a9420 100644 --- a/js/ua-parser.js +++ b/js/ua-parser.js @@ -1,12 +1,3 @@ -// Helpers - -(function(){window.isBot=function(o){return/(cli|library|crawler|fetcher)/.exec(o.browser.type)};var o=["ai2bot","amazonbot","anthropic-ai","claude-web","claude-searchbot","claudebot","applebot","applebot-extended","bravebot","bytespider","tiktokspider","cohere-training-data-crawler","ccbot","coveobot","dataforseobot","deepseekbot","diffbot","googleother","googleother-image","googleother-video","google-cloudvertexbot","google-extended","imagesiftbot","petalbot","pangubot","huggingface-bot","kangaroo bot","firecrawlagent","facebookbot","meta-externalagent","gptbot","oai-searchbot","perplexitybot","replicate-bot","runpod-bot","sbintuitionsbot","semrushbot-ocob","timpibot","together-bot","velenpublicwebcrawler","v0bot","omgili","omgilibot","webzio-extended","xai-bot","youbot","chatglm-spider"];window.isAIBot=function(e){return-1!==o.indexOf(String(e.browser.name).toLowerCase())}})(); - -// Extension - -(function(){var MODEL="model",NAME="name",TYPE="type",VENDOR="vendor",VERSION="version",MOBILE="mobile",TABLET="tablet",CRAWLER="crawler",CLI="cli",EMAIL="email",FETCHER="fetcher",INAPP="inapp",MEDIAPLAYER="mediaplayer",LIBRARY="library";window.CLIs={browser:[[/(wget|curl|lynx|elinks|httpie)[\/ ]\(?([\w\.-]+)/i],[NAME,VERSION,[TYPE,CLI]]]};window.Crawlers={browser:[[/((?:adidx|ahrefs|amazon|bing|brave|cc|contx|coveo|criteo|dot|duckduck(?:go-favicons-)?|exa|facebook|gpt|iask|kagi|kangaroo |linkedin|mj12|mojeek|oai-search|onespot-scraper|perplexity|sbintuitions|semrush|seznam|yep)bot)\/([\w\.-]+)/i,/(algolia crawler(?: renderscript)?)\/?([\w\.]*)/i,/(applebot(?:-extended)?)\/?([\w\.]*)/i,/(baiduspider[-imagevdonwsfcpr]{0,7})\/?([\w\.]*)/i,/(claude(?:bot|-searchbot|-web)|anthropic-ai)\/?([\w\.]*)/i,/(coccocbot-(?:image|web))\/([\w\.]+)/i,/(daum(?:oa)?(?:-image)?)[ \/]([\w\.]+)/i,/(facebook(?:externalhit|catalog)|meta-externalagent)\/([\w\.]+)/i,/(google(?:bot|other|-inspectiontool)(?:-image|-video|-news)?|storebot-google)\/?([\w\.]*)/i,/(ia_archiver|archive\.org_bot)\/?([\w\.]*)/i,/(oncrawl) mobile\/([\w\.]+)/i,/(qwantbot)[-\w]*\/?([\w\.]*)/i,/((?:semrush|splitsignal)bot[-abcfimostw]*)\/?([\w\.-]*)/i,/(sogou (?:pic|head|web|orion|news) spider)\/([\w\.]+)/i,/(y!?j-(?:asr|br[uw]|dscv|mmp|vsidx|wsc))\/([\w\.]+)/i,/(yandex(?:(?:mobile)?(?:accessibility|additional|com|renderresources|screenshot|sprav)?bot(?!.+mirror)|image(?:s|resizer)|adnet|blogs|favicons|market|media|metrika|news|ontodb(?:api)?|partner|rca|tracker|turbo|verti(?:cal)?s|webmaster|video(?:parser)?))\/([\w\.]+)/i,/(yeti)\/([\w\.]+)/i,/((?:aihit|blex|diff|huggingface-|msn|pangu|replicate-|runpod-|timpi|together-|xai-|you|zum)bot|(?:magpie-|velenpublicweb)crawler|(?:chatglm-|line|screaming frog seo |yisou)spider|cotoyogi|firecrawlagent|freespoke|omgili(?:bot)?|openai image downloader|startpageprivateimageproxy|twinagent|webzio-extended)\/?([\w\.]*)/i],[NAME,VERSION,[TYPE,CRAWLER]],[/(yandexbot\/([\w\.]+); mirrordetector)/i],[[NAME,/\/.+;/gi,""],VERSION,[TYPE,CRAWLER]],[/((?:adsbot|apis|mediapartners)-google(?:-mobile)?|google-?(?:other|cloudvertexbot|extended|safety))/i,/\b((ai2|aspiegel|dataforseo|deepseek|imagesift|petal|seekport|turnitin|v0)bot|360spider-?(image|video)?|baidu-ads|botify|(byte|tiktok)spider|cohere-training-data-crawler|elastic(?=\/s)|marginalia|siteimprove(?=bot|\.com)|teoma|webzio|yahoo! slurp)/i],[NAME,[TYPE,CRAWLER]]]};window.ExtraDevices={device:[[/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[VENDOR,MODEL,[TYPE,TABLET]],[/(u304aa)/i],[MODEL,[VENDOR,"AT&T"],[TYPE,MOBILE]],[/\bsie-(\w*)/i],[MODEL,[VENDOR,"Siemens"],[TYPE,MOBILE]],[/\b(rct\w+) b/i],[MODEL,[VENDOR,"RCA"],[TYPE,TABLET]],[/\b(venue[\d ]{2,7}) b/i],[MODEL,[VENDOR,"Dell"],[TYPE,TABLET]],[/\b(q(?:mv|ta)\w+) b/i],[MODEL,[VENDOR,"Verizon"],[TYPE,TABLET]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[MODEL,[VENDOR,"Barnes & Noble"],[TYPE,TABLET]],[/\b(tm\d{3}\w+) b/i],[MODEL,[VENDOR,"NuVision"],[TYPE,TABLET]],[/\b(k88) b/i],[MODEL,[VENDOR,"ZTE"],[TYPE,TABLET]],[/\b(nx\d{3}j) b/i],[MODEL,[VENDOR,"ZTE"],[TYPE,MOBILE]],[/\b(gen\d{3}) b.+49h/i],[MODEL,[VENDOR,"Swiss"],[TYPE,MOBILE]],[/\b(zur\d{3}) b/i],[MODEL,[VENDOR,"Swiss"],[TYPE,TABLET]],[/^((zeki)?tb.*\b) b/i],[MODEL,[VENDOR,"Zeki"],[TYPE,TABLET]],[/\b([yr]\d{2}) b/i,/\b(?:dragon[- ]+touch |dt)(\w{5}) b/i],[MODEL,[VENDOR,"Dragon Touch"],[TYPE,TABLET]],[/\b(ns-?\w{0,9}) b/i],[MODEL,[VENDOR,"Insignia"],[TYPE,TABLET]],[/\b((nxa|next)-?\w{0,9}) b/i],[MODEL,[VENDOR,"NextBook"],[TYPE,TABLET]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[VENDOR,"Voice"],MODEL,[TYPE,MOBILE]],[/\b(lvtel\-)?(v1[12]) b/i],[[VENDOR,"LvTel"],MODEL,[TYPE,MOBILE]],[/\b(ph-1) /i],[MODEL,[VENDOR,"Essential"],[TYPE,MOBILE]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[MODEL,[VENDOR,"Envizen"],[TYPE,TABLET]],[/\b(trio[-\w\. ]+) b/i],[MODEL,[VENDOR,"MachSpeed"],[TYPE,TABLET]],[/\btu_(1491) b/i],[MODEL,[VENDOR,"Rotor"],[TYPE,TABLET]]]};window.Emails={browser:[[/((?:air|blue|daum|fox|poly|proton)mail|emclient|evolution|kmail2?|kontact|(?:microsoft |mac)?outlook(?:-express)?|navermailapp|(?!chrom.+)sparrow|sparkdesktop|thunderbird|yahoo|zohomail-desktop)(?:m.+ail; |[\/ ])([\w\.]+)/i,/(mail)\/([\w\.]+) cf/i],[NAME,VERSION,[TYPE,EMAIL]],[/zdesktop\/([\w\.]+)/i],[VERSION,[NAME,"Zimbra"],[TYPE,EMAIL]]]};window.Fetchers={browser:[[/(asana|ahrefssiteaudit|(?:bing|microsoft)preview|blueno|(?:chatgpt|claude|mistralai|perplexity)-user|cohere-ai|hubspot page fetcher|mastodon|(?:bitly|bufferlinkpreview|discord|duckassist|linkedin|pinterest|reddit|roger|siteaudit|twitter|uptimero|zoom)bot|google-site-verification|iframely|kakaotalk-scrap|meta-externalfetcher|y!?j-dlc|yandex(?:calendar|direct(?:dyn)?|fordomain|pagechecker|searchshop)|yadirectfetcher)\/([\w\.]+)/i,/(bluesky) cardyb\/([\w\.]+)/i,/(skypeuripreview) preview\/([\w\.]+)/i,/(slack(?:bot)?(?:-imgproxy|-linkexpanding)?) ([\w\.]+)/i,/(whatsapp)\/([\w\.]+)/i],[NAME,VERSION,[TYPE,FETCHER]],[/((?:better uptime |telegram|vercel)bot|chrome-lighthouse|feedfetcher-google|gemini-deep-research|google(?:imageproxy|-read-aloud|-pagerenderer|producer)|snap url preview|vercel(flags|tracing|-(favicon|screenshot)-bot)|yandex(?:sitelinks|userproxy))/i],[NAME,[TYPE,FETCHER]]]};window.InApps={browser:[[/\b(discord|figma|mattermost|notion|postman|rambox|rocket.chat|slack|teams)\/([\w\.]+).+(electron\/|; ios)/i,/(flipboard)\/([\w\.]+)/i],[NAME,VERSION,[TYPE,INAPP]],[/(evernote) win/i,/(teams)mobile-(ios|and)/i],[NAME,[TYPE,INAPP]],[/chatlyio\/([\d\.]+)/i],[VERSION,[NAME,"Slack"],[TYPE,INAPP]],[/ultralite app_version\/([\w\.]+)/i],[VERSION,[NAME,"TikTok Lite"],[TYPE,INAPP]],[/\) code\/([\d\.]+).+electron\//i],[VERSION,[NAME,"VS Code"],[TYPE,INAPP]],[/jp\.co\.yahoo\.(?:android\.yjtop|ipn\.appli)\/([\d\.]+)/i],[VERSION,[NAME,"Yahoo! Japan"],[TYPE,INAPP]]]};window.MediaPlayers={browser:[[/(apple(?:coremedia|tv))\/([\w\._]+)/i,/(coremedia) v([\w\._]+)/i,/(ares|clementine|music player daemon|nexplayer|ossproxy) ([\w\.-]+)/i,/^(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,/(gstreamer) souphttpsrc.+libsoup\/([\w\.-]+)/i,/(htc streaming player) [\w_]+ \/ ([\d\.]+)/i,/(lavf)([\d\.]+)/i,/(mplayer)(?: |\/)(?:(?:sherpya-){0,1}svn)(?:-| )(r\d+(?:-\d+[\w\.-]+))/i,/ (songbird)\/([\w\.-]+)/i,/(winamp)(?:3 version|mpeg| ) ([\w\.-]+)/i,/(vlc)(?:\/| media player - version )([\w\.-]+)/i,/^(foobar2000|itunes|smp)\/([\d\.]+)/i,/com\.(riseupradioalarm)\/([\d\.]*)/i,/(mplayer)(?:\s|\/| unknown-)([\w\.\-]+)/i,/(windows)\/([\w\.-]+) upnp\/[\d\.]+ dlnadoc\/[\d\.]+ home media server/i],[NAME,VERSION,[TYPE,MEDIAPLAYER]],[/(flrp)\/([\w\.-]+)/i],[[NAME,"Flip Player"],VERSION,[TYPE,MEDIAPLAYER]],[/(fstream|media player classic|inlight radio|mplayer|nativehost|nero showtime|ocms-bot|queryseekspider|tapinradio|tunein radio|winamp|yourmuze)/i],[NAME,[TYPE,MEDIAPLAYER]],[/(htc_one_s|windows-media-player|wmplayer)\/([\w\.-]+)/i],[[NAME,/[_-]/g," "],VERSION,[TYPE,MEDIAPLAYER]],[/(rad.io|radio.(?:de|at|fr)) ([\d\.]+)/i],[[NAME,"rad.io"],VERSION,[TYPE,MEDIAPLAYER]]]};window.Libraries={browser:[[/^(apache-httpclient|axios|(?:go|java)-http-client|got|guzzlehttp|java|libwww-perl|lua-resty-http|needle|node-(?:fetch|superagent)|okhttp|php-soap|postmanruntime|python-(?:httpx|urllib[23]?|requests)|scrapy)\/([\w\.]+)/i,/(adobeair|aiohttp|jsdom)\/([\w\.]+)/i,/(nutch)-([\w\.-]+)(\(|$)/i,/\((java)\/([\w\.]+)/i],[NAME,VERSION,[TYPE,LIBRARY]]]};window.Vehicles={device:[[/aftlbt962e2/i],[[VENDOR,"BMW"]],[/dilink.+(byd) auto/i],[VENDOR],[/aftlft962x3/i],[[VENDOR,"Jeep"],[MODEL,"Wagooner"]],[/(rivian) (r1t)/i],[VENDOR,MODEL],[/vcc.+netfront/i],[[VENDOR,"Volvo"]]]};})(); - -/* UAParser.js v2.0.5 - Copyright © 2012-2025 Faisal Salman +/* UAParser.js © Faisal Salman AGPLv3 License */ -(function(i,c){function V(i){for(var e={},t=0;tI?Mi(i,I):i),this}]]).setUA(s),this):new P(i,e,t).getResult()}P.VERSION="2.0.5",P.BROWSER=V([v,y,G,k]),P.CPU=V([C]),P.DEVICE=V([S,x,k,W,_,e,r,t,F]),P.ENGINE=P.OS=V([v,y]),typeof exports!==n?(exports=typeof module!==n&&module.exports?module.exports=P:exports).UAParser=P:typeof define===L&&define.amd?define(function(){return P}):_i&&(i.UAParser=P);var Wi,Ni=_i&&(i.jQuery||i.Zepto);Ni&&!Ni.ua&&(Wi=new P,Ni.ua=Wi.getResult(),Ni.ua.get=function(){return Wi.getUA()},Ni.ua.set=function(i){Wi.setUA(i);var e,t=Wi.getResult();for(e in t)Ni.ua[e]=t[e]})})("object"==typeof window?window:this); \ No newline at end of file +(function(){window.isBot=function(o){return/(cli|library|crawler|fetcher)/.exec(o.browser.type)};var o='ai2bot|amazonbot|anthropic-ai|claude-web|claude-searchbot|claudebot|applebot|applebot-extended|bravebot|bytespider|tiktokspider|cohere-training-data-crawler|ccbot|coveobot|dataforseobot|deepseekbot|diffbot|googleother|googleother-image|googleother-video|google-cloudvertexbot|google-extended|imagesiftbot|petalbot|pangubot|huggingface-bot|kangaroo bot|firecrawlagent|facebookbot|meta-externalagent|gptbot|oai-searchbot|perplexitybot|replicate-bot|runpod-bot|sbintuitionsbot|semrushbot-ocob|timpibot|together-bot|velenpublicwebcrawler|v0bot|omgili|omgilibot|webzio-extended|xai-bot|youbot|chatglm-spider'.split('|');window.isAIBot=function(e){return-1!==o.indexOf(String(e.browser.name).toLowerCase())}})(); (function(){var MODEL="model",NAME="name",TYPE="type",VENDOR="vendor",VERSION="version",MOBILE="mobile",TABLET="tablet",CRAWLER="crawler",CLI="cli",EMAIL="email",FETCHER="fetcher",INAPP="inapp",MEDIAPLAYER="mediaplayer",LIBRARY="library";window.CLIs={browser:[[/(wget|curl|lynx|elinks|httpie)[\/ ]\(?([\w\.-]+)/i],[NAME,VERSION,[TYPE,CLI]]]};window.Crawlers={browser:[[/((?:adidx|ahrefs|amazon|bing|brave|cc|contx|coveo|criteo|dot|duckduck(?:go-favicons-)?|exa|facebook|gpt|iask|kagi|kangaroo |linkedin|mj12|mojeek|oai-search|onespot-scraper|perplexity|sbintuitions|semrush|seznam|yep)bot)\/([\w\.-]+)/i,/(algolia crawler(?: renderscript)?)\/?([\w\.]*)/i,/(applebot(?:-extended)?)\/?([\w\.]*)/i,/(baiduspider[-imagevdonwsfcpr]{0,7})\/?([\w\.]*)/i,/(claude(?:bot|-searchbot|-web)|anthropic-ai)\/?([\w\.]*)/i,/(coccocbot-(?:image|web))\/([\w\.]+)/i,/(daum(?:oa)?(?:-image)?)[ \/]([\w\.]+)/i,/(facebook(?:externalhit|catalog)|meta-externalagent)\/([\w\.]+)/i,/(google(?:bot|other|-inspectiontool)(?:-image|-video|-news)?|storebot-google)\/?([\w\.]*)/i,/(ia_archiver|archive\.org_bot)\/?([\w\.]*)/i,/(oncrawl) mobile\/([\w\.]+)/i,/(qwantbot)[-\w]*\/?([\w\.]*)/i,/((?:semrush|splitsignal)bot[-abcfimostw]*)\/?([\w\.-]*)/i,/(sogou (?:pic|head|web|orion|news) spider)\/([\w\.]+)/i,/(y!?j-(?:asr|br[uw]|dscv|mmp|vsidx|wsc))\/([\w\.]+)/i,/(yandex(?:(?:mobile)?(?:accessibility|additional|com|renderresources|screenshot|sprav)?bot(?!.+mirror)|image(?:s|resizer)|adnet|blogs|favicons|market|media|metrika|news|ontodb(?:api)?|partner|rca|tracker|turbo|verti(?:cal)?s|webmaster|video(?:parser)?))\/([\w\.]+)/i,/(yeti)\/([\w\.]+)/i,/((?:aihit|blex|diff|huggingface-|msn|pangu|replicate-|runpod-|timpi|together-|xai-|you|zum)bot|(?:magpie-|velenpublicweb)crawler|(?:chatglm-|line|screaming frog seo |yisou)spider|cotoyogi|firecrawlagent|freespoke|omgili(?:bot)?|openai image downloader|startpageprivateimageproxy|twinagent|webzio-extended)\/?([\w\.]*)/i],[NAME,VERSION,[TYPE,CRAWLER]],[/(yandexbot\/([\w\.]+); mirrordetector)/i],[[NAME,/\/.+;/gi,""],VERSION,[TYPE,CRAWLER]],[/((?:adsbot|apis|mediapartners)-google(?:-mobile)?|google-?(?:other|cloudvertexbot|extended|safety))/i,/\b((ai2|aspiegel|dataforseo|deepseek|imagesift|petal|seekport|turnitin|v0)bot|360spider-?(image|video)?|baidu-ads|botify|(byte|tiktok)spider|cohere-training-data-crawler|elastic(?=\/s)|marginalia|siteimprove(?=bot|\.com)|teoma|webzio|yahoo! slurp)/i],[NAME,[TYPE,CRAWLER]]]};window.ExtraDevices={device:[[/(nook)[\w ]+build\/(\w+)/i,/(dell) (strea[kpr\d ]*[\dko])/i,/(le[- ]+pan)[- ]+(\w{1,9}) bui/i,/(trinity)[- ]*(t\d{3}) bui/i,/(gigaset)[- ]+(q\w{1,9}) bui/i,/(vodafone) ([\w ]+)(?:\)| bui)/i],[VENDOR,MODEL,[TYPE,TABLET]],[/(u304aa)/i],[MODEL,[VENDOR,"AT&T"],[TYPE,MOBILE]],[/\bsie-(\w*)/i],[MODEL,[VENDOR,"Siemens"],[TYPE,MOBILE]],[/\b(rct\w+) b/i],[MODEL,[VENDOR,"RCA"],[TYPE,TABLET]],[/\b(venue[\d ]{2,7}) b/i],[MODEL,[VENDOR,"Dell"],[TYPE,TABLET]],[/\b(q(?:mv|ta)\w+) b/i],[MODEL,[VENDOR,"Verizon"],[TYPE,TABLET]],[/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],[MODEL,[VENDOR,"Barnes & Noble"],[TYPE,TABLET]],[/\b(tm\d{3}\w+) b/i],[MODEL,[VENDOR,"NuVision"],[TYPE,TABLET]],[/\b(k88) b/i],[MODEL,[VENDOR,"ZTE"],[TYPE,TABLET]],[/\b(nx\d{3}j) b/i],[MODEL,[VENDOR,"ZTE"],[TYPE,MOBILE]],[/\b(gen\d{3}) b.+49h/i],[MODEL,[VENDOR,"Swiss"],[TYPE,MOBILE]],[/\b(zur\d{3}) b/i],[MODEL,[VENDOR,"Swiss"],[TYPE,TABLET]],[/^((zeki)?tb.*\b) b/i],[MODEL,[VENDOR,"Zeki"],[TYPE,TABLET]],[/\b([yr]\d{2}) b/i,/\b(?:dragon[- ]+touch |dt)(\w{5}) b/i],[MODEL,[VENDOR,"Dragon Touch"],[TYPE,TABLET]],[/\b(ns-?\w{0,9}) b/i],[MODEL,[VENDOR,"Insignia"],[TYPE,TABLET]],[/\b((nxa|next)-?\w{0,9}) b/i],[MODEL,[VENDOR,"NextBook"],[TYPE,TABLET]],[/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],[[VENDOR,"Voice"],MODEL,[TYPE,MOBILE]],[/\b(lvtel\-)?(v1[12]) b/i],[[VENDOR,"LvTel"],MODEL,[TYPE,MOBILE]],[/\b(ph-1) /i],[MODEL,[VENDOR,"Essential"],[TYPE,MOBILE]],[/\b(v(100md|700na|7011|917g).*\b) b/i],[MODEL,[VENDOR,"Envizen"],[TYPE,TABLET]],[/\b(trio[-\w\. ]+) b/i],[MODEL,[VENDOR,"MachSpeed"],[TYPE,TABLET]],[/\btu_(1491) b/i],[MODEL,[VENDOR,"Rotor"],[TYPE,TABLET]]]};window.Emails={browser:[[/((?:air|blue|daum|fox|poly|proton)mail|emclient|evolution|kmail2?|kontact|(?:microsoft |mac)?outlook(?:-express)?|navermailapp|(?!chrom.+)sparrow|sparkdesktop|thunderbird|yahoo|zohomail-desktop)(?:m.+ail; |[\/ ])([\w\.]+)/i,/(mail)\/([\w\.]+) cf/i],[NAME,VERSION,[TYPE,EMAIL]],[/zdesktop\/([\w\.]+)/i],[VERSION,[NAME,"Zimbra"],[TYPE,EMAIL]]]};window.Fetchers={browser:[[/(asana|ahrefssiteaudit|(?:bing|microsoft)preview|blueno|(?:chatgpt|claude|mistralai|perplexity)-user|cohere-ai|hubspot page fetcher|mastodon|(?:bitly|bufferlinkpreview|discord|duckassist|linkedin|pinterest|reddit|roger|siteaudit|twitter|uptimero|zoom)bot|google-site-verification|iframely|kakaotalk-scrap|meta-externalfetcher|y!?j-dlc|yandex(?:calendar|direct(?:dyn)?|fordomain|pagechecker|searchshop)|yadirectfetcher)\/([\w\.]+)/i,/(bluesky) cardyb\/([\w\.]+)/i,/(skypeuripreview) preview\/([\w\.]+)/i,/(slack(?:bot)?(?:-imgproxy|-linkexpanding)?) ([\w\.]+)/i,/(whatsapp)\/([\w\.]+)/i],[NAME,VERSION,[TYPE,FETCHER]],[/((?:better uptime |telegram|vercel)bot|chrome-lighthouse|feedfetcher-google|gemini-deep-research|google(?:imageproxy|-read-aloud|-pagerenderer|producer)|snap url preview|vercel(flags|tracing|-(favicon|screenshot)-bot)|yandex(?:sitelinks|userproxy))/i],[NAME,[TYPE,FETCHER]]]};window.InApps={browser:[[/\b(discord|figma|mattermost|notion|postman|rambox|rocket.chat|slack|teams)\/([\w\.]+).+(electron\/|; ios)/i,/(flipboard)\/([\w\.]+)/i],[NAME,VERSION,[TYPE,INAPP]],[/(evernote) win/i,/(teams)mobile-(ios|and)/i],[NAME,[TYPE,INAPP]],[/chatlyio\/([\d\.]+)/i],[VERSION,[NAME,"Slack"],[TYPE,INAPP]],[/ultralite app_version\/([\w\.]+)/i],[VERSION,[NAME,"TikTok Lite"],[TYPE,INAPP]],[/\) code\/([\d\.]+).+electron\//i],[VERSION,[NAME,"VS Code"],[TYPE,INAPP]],[/jp\.co\.yahoo\.(?:android\.yjtop|ipn\.appli)\/([\d\.]+)/i],[VERSION,[NAME,"Yahoo! Japan"],[TYPE,INAPP]]]};window.MediaPlayers={browser:[[/(apple(?:coremedia|tv))\/([\w\._]+)/i,/(coremedia) v([\w\._]+)/i,/(ares|clementine|music player daemon|nexplayer|ossproxy) ([\w\.-]+)/i,/^(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,/(gstreamer) souphttpsrc.+libsoup\/([\w\.-]+)/i,/(htc streaming player) [\w_]+ \/ ([\d\.]+)/i,/(lavf)([\d\.]+)/i,/(mplayer)(?: |\/)(?:(?:sherpya-){0,1}svn)(?:-| )(r\d+(?:-\d+[\w\.-]+))/i,/ (songbird)\/([\w\.-]+)/i,/(winamp)(?:3 version|mpeg| ) ([\w\.-]+)/i,/(vlc)(?:\/| media player - version )([\w\.-]+)/i,/^(foobar2000|itunes|smp)\/([\d\.]+)/i,/com\.(riseupradioalarm)\/([\d\.]*)/i,/(mplayer)(?:\s|\/| unknown-)([\w\.\-]+)/i,/(windows)\/([\w\.-]+) upnp\/[\d\.]+ dlnadoc\/[\d\.]+ home media server/i],[NAME,VERSION,[TYPE,MEDIAPLAYER]],[/(flrp)\/([\w\.-]+)/i],[[NAME,"Flip Player"],VERSION,[TYPE,MEDIAPLAYER]],[/(fstream|media player classic|inlight radio|mplayer|nativehost|nero showtime|ocms-bot|queryseekspider|tapinradio|tunein radio|winamp|yourmuze)/i],[NAME,[TYPE,MEDIAPLAYER]],[/(htc_one_s|windows-media-player|wmplayer)\/([\w\.-]+)/i],[[NAME,/[_-]/g," "],VERSION,[TYPE,MEDIAPLAYER]],[/(rad.io|radio.(?:de|at|fr)) ([\d\.]+)/i],[[NAME,"rad.io"],VERSION,[TYPE,MEDIAPLAYER]]]};window.Libraries={browser:[[/^(apache-httpclient|axios|(?:go|java)-http-client|got|guzzlehttp|java|libwww-perl|lua-resty-http|needle|node-(?:fetch|superagent)|okhttp|php-soap|postmanruntime|python-(?:httpx|urllib[23]?|requests)|scrapy)\/([\w\.]+)/i,/(adobeair|aiohttp|jsdom)\/([\w\.]+)/i,/(nutch)-([\w\.-]+)(\(|$)/i,/\((java)\/([\w\.]+)/i],[NAME,VERSION,[TYPE,LIBRARY]]]};window.Vehicles={device:[[/aftlbt962e2/i],[[VENDOR,"BMW"]],[/dilink.+(byd) auto/i],[VENDOR],[/aftlft962x3/i],[[VENDOR,"Jeep"],[MODEL,"Wagooner"]],[/(rivian) (r1t)/i],[VENDOR,MODEL],[/vcc.+netfront/i],[[VENDOR,"Volvo"]]]};})(); ((i,c)=>{function A(i){for(var e={},t=0;t{var t,o={},r=e;if(!Si(e))for(var a in r={},e)for(var s in e[a])r[s]=e[a][s].concat(r[s]||[]);for(t in i)o[t]=r[t]&&r[t].length%2==0?r[t].concat(i[t]):i[t];return o})(Ai,e):Ai,q.call(this,[["getBrowser",(b=function(i){return i==g?function(){return new Mi(i,s,w,n).set("ua",s).set(u,this.getBrowser()).set(h,this.getCPU()).set(p,this.getDevice()).set(m,this.getEngine()).set(f,this.getOS()).get()}:function(){return new Mi(i,s,w[i],n).parseUA().get()}})(u)],["getCPU",b(h)],["getDevice",b(p)],["getEngine",b(m)],["getOS",b(f)],["getResult",b(g)],["getUA",function(){return s}],["setUA",function(i){return Ti(i)&&(s=_i(i,500)),this}]]).setUA(s),this):new F(i,e,t).getResult()}F.VERSION="2.0.6",F.BROWSER=A([v,y,j,k]),F.CPU=A([C]),F.DEVICE=A([E,x,k,M,N,e,r,t,P]),F.ENGINE=F.OS=A([v,y]),typeof exports!==l.UNDEFINED?(exports=typeof module!==l.UNDEFINED&&module.exports?module.exports=F:exports).UAParser=F:typeof define===l.FUNCTION&&define.amd?define(function(){return F}):Ei&&(i.UAParser=F);var Vi,Pi=Ei&&(i.jQuery||i.Zepto);Pi&&!Pi.ua&&(Vi=new F,Pi.ua=Vi.getResult(),Pi.ua.get=function(){return Vi.getUA()},Pi.ua.set=function(i){Vi.setUA(i);var e,t=Vi.getResult();for(e in t)Pi.ua[e]=t[e]})})("object"==typeof window?window:this); \ No newline at end of file diff --git a/semantic-ui/semantic.css b/semantic-ui/semantic.css index bc61d86..8f623d9 100755 --- a/semantic-ui/semantic.css +++ b/semantic-ui/semantic.css @@ -8,7 +8,7 @@ * http://opensource.org/licenses/MIT * */ -@import url('https://fonts.googleapis.com/css?family=EB+Garamond:500|Source+Code+Pro:500|Source+Sans+Pro:400,700,400italic,700italic&subset=latin'); +@import url('https://fonts.googleapis.com/css?family=Sora:400,700|EB+Garamond:500|Source+Code+Pro:500|Source+Sans+Pro:400,700,400italic,700italic&subset=latin'); /*! * # Semantic UI 2.5.0 - Reset * http://github.com/semantic-org/semantic-ui/ @@ -564,7 +564,7 @@ body { overflow-x: hidden; min-width: 320px; background: #FFFFFF; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 14px; line-height: 1.4285em; color: rgba(0, 0, 0, 0.87); @@ -580,7 +580,7 @@ h2, h3, h4, h5 { - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; line-height: 1.28571429em; margin: calc(2rem - 0.14285714em ) 0em 1rem; font-weight: bold; @@ -783,7 +783,7 @@ body .ui.inverted::-webkit-scrollbar-thumb:hover { vertical-align: baseline; background: #E0E1E2 none; color: rgba(0, 0, 0, 0.6); - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; margin: 0em 0.25em 0em 0em; padding: 0.78571429em 1.5em 0.78571429em; text-transform: none; @@ -4966,7 +4966,7 @@ body .ui.inverted::-webkit-scrollbar-thumb:hover { /* Text Container */ .ui.text.container { - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; max-width: 700px !important; line-height: 1.5; } @@ -6573,7 +6573,7 @@ i.flag.zimbabwe:before { border: none; margin: calc(2rem - 0.14285714em ) 0em 1rem; padding: 0em 0em; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-weight: bold; line-height: 1.28571429em; text-transform: none; @@ -13867,7 +13867,7 @@ img.ui.bordered.image { -webkit-tap-highlight-color: rgba(255, 255, 255, 0); text-align: left; line-height: 1.21428571em; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; padding: 0.67857143em 1em; background: #FFFFFF; border: 1px solid rgba(34, 36, 38, 0.15); @@ -15969,7 +15969,7 @@ ol.ui.list ol li, .ui.list > .item .header { display: block; margin: 0em; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-weight: bold; color: rgba(0, 0, 0, 0.87); } @@ -18986,7 +18986,7 @@ ol.ui.horizontal.list li:before, /* Title */ .ui.steps .step .title { - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 1.14285714em; font-weight: bold; } @@ -19736,7 +19736,7 @@ ol.ui.horizontal.list li:before, .ui.form input[type="text"], .ui.form input[type="file"], .ui.form input[type="url"] { - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; margin: 0em; outline: none; -webkit-appearance: none; @@ -22989,7 +22989,7 @@ ol.ui.horizontal.list li:before, .ui.menu { display: flex; margin: 1rem 0em; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; background: #FFFFFF; font-weight: normal; border: 1px solid rgba(34, 36, 38, 0.15); @@ -25219,7 +25219,7 @@ Floated Menu / Item .ui.message .header { display: block; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-weight: bold; margin: -0.14285714em 0em 0rem 0em; } @@ -27427,7 +27427,7 @@ Floated Menu / Item .ui.card > .content > .header { display: block; margin: ''; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; color: rgba(0, 0, 0, 0.85); } @@ -29030,7 +29030,7 @@ a.ui.card:hover, .ui.items > .item > .content > .header { display: inline-block; margin: -0.21425em 0em 0em; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-weight: bold; color: rgba(0, 0, 0, 0.85); } @@ -29474,7 +29474,7 @@ a.ui.card:hover, .ui.statistics .statistic > .value, .ui.statistic > .value { - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 4rem; font-weight: normal; line-height: 1em; @@ -29489,7 +29489,7 @@ a.ui.card:hover, .ui.statistics .statistic > .label, .ui.statistic > .label { - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 1em; font-weight: bold; color: rgba(0, 0, 0, 0.87); @@ -30024,7 +30024,7 @@ a.ui.card:hover, .ui.accordion .title:not(.ui) { padding: 0.5em 0em; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 1em; color: rgba(0, 0, 0, 0.87); } @@ -32978,7 +32978,7 @@ select.ui.dropdown { .ui.modal > .header { display: block; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; background: #FFFFFF; margin: 0em; padding: 1.25rem 1.5rem; @@ -33736,7 +33736,7 @@ a.ui.nag { .ui.popup > .header { padding: 0em; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 1.14285714em; line-height: 1.2; font-weight: bold; @@ -35450,7 +35450,7 @@ a.ui.nag { .ui.search > .results .result .title { margin: -0.14285714em 0em 0em; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-weight: bold; font-size: 1em; color: rgba(0, 0, 0, 0.85); @@ -35476,7 +35476,7 @@ a.ui.nag { } .ui.search > .results > .message .header { - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 1rem; font-weight: bold; color: rgba(0, 0, 0, 0.87); @@ -35688,7 +35688,7 @@ a.ui.nag { width: 100px; white-space: nowrap; background: transparent; - font-family: 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; + font-family: 'Sora', 'Source Sans Pro', 'Helvetica Neue', Arial, Helvetica, sans-serif; font-size: 1em; padding: 0.4em 1em; font-weight: bold;