{"size": 3936, "ext": "js", "max_stars_repo_path": "FidoU2f.Demo/Scripts/bowser.min.js", "max_stars_repo_name": "scottstephens/fido-u2f-net", "max_stars_repo_stars_event_min_datetime": "2015-03-07T11:12:30.000Z", "max_stars_repo_stars_event_max_datetime": "2021-08-05T03:28:00.000Z", "max_issues_repo_path": "FidoU2f.Demo/Scripts/bowser.min.js", "max_issues_repo_name": "scottstephens/fido-u2f-net", "max_issues_repo_issues_event_min_datetime": "2015-03-12T01:56:32.000Z", "max_issues_repo_issues_event_max_datetime": "2016-11-03T18:54:25.000Z", "max_forks_repo_path": "FidoU2f.Demo/Scripts/bowser.min.js", "max_forks_repo_name": "scottstephens/fido-u2f-net", "max_forks_repo_forks_event_min_datetime": "2015-03-30T16:49:54.000Z", "max_forks_repo_forks_event_max_datetime": "2021-05-15T16:37:47.000Z"}
{"max_stars_count": 23, "max_issues_count": 2, "max_forks_count": 14, "avg_line_length": 562.2857142857, "max_line_length": 3820, "alphanum_fraction": 0.5101626016}
﻿/*!
  * Bowser - a browser detector
  * https://github.com/ded/bowser
  * MIT License | (c) Dustin Diaz 2014
  */
!function (e, t) { typeof module != "undefined" && module.exports ? module.exports.browser = t() : typeof define == "function" && define.amd ? define(t) : this[e] = t() }("bowser", function () { function t(t) { function n(e) { var n = t.match(e); return n && n.length > 1 && n[1] || "" } var r = n(/(ipod|iphone|ipad)/i).toLowerCase(), i = /like android/i.test(t), s = !i && /android/i.test(t), o = n(/version\/(\d+(\.\d+)?)/i), u = /tablet/i.test(t), a = !u && /[^-]mobi/i.test(t), f; /opera|opr/i.test(t) ? f = { name: "Opera", opera: e, version: o || n(/(?:opera|opr)[\s\/](\d+(\.\d+)?)/i) } : /windows phone/i.test(t) ? f = { name: "Windows Phone", windowsphone: e, msie: e, version: n(/iemobile\/(\d+(\.\d+)?)/i) } : /msie|trident/i.test(t) ? f = { name: "Internet Explorer", msie: e, version: n(/(?:msie |rv:)(\d+(\.\d+)?)/i) } : /chrome|crios|crmo/i.test(t) ? f = { name: "Chrome", chrome: e, version: n(/(?:chrome|crios|crmo)\/(\d+(\.\d+)?)/i) } : r ? (f = { name: r == "iphone" ? "iPhone" : r == "ipad" ? "iPad" : "iPod" }, o && (f.version = o)) : /sailfish/i.test(t) ? f = { name: "Sailfish", sailfish: e, version: n(/sailfish\s?browser\/(\d+(\.\d+)?)/i) } : /seamonkey\//i.test(t) ? f = { name: "SeaMonkey", seamonkey: e, version: n(/seamonkey\/(\d+(\.\d+)?)/i) } : /firefox|iceweasel/i.test(t) ? (f = { name: "Firefox", firefox: e, version: n(/(?:firefox|iceweasel)[ \/](\d+(\.\d+)?)/i) }, /\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i.test(t) && (f.firefoxos = e)) : /silk/i.test(t) ? f = { name: "Amazon Silk", silk: e, version: n(/silk\/(\d+(\.\d+)?)/i) } : s ? f = { name: "Android", version: o } : /phantom/i.test(t) ? f = { name: "PhantomJS", phantom: e, version: n(/phantomjs\/(\d+(\.\d+)?)/i) } : /blackberry|\bbb\d+/i.test(t) || /rim\stablet/i.test(t) ? f = { name: "BlackBerry", blackberry: e, version: o || n(/blackberry[\d]+\/(\d+(\.\d+)?)/i) } : /(web|hpw)os/i.test(t) ? (f = { name: "WebOS", webos: e, version: o || n(/w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i) }, /touchpad\//i.test(t) && (f.touchpad = e)) : /bada/i.test(t) ? f = { name: "Bada", bada: e, version: n(/dolfin\/(\d+(\.\d+)?)/i) } : /tizen/i.test(t) ? f = { name: "Tizen", tizen: e, version: n(/(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i) || o } : /safari/i.test(t) ? f = { name: "Safari", safari: e, version: o } : f = {}, /(apple)?webkit/i.test(t) ? (f.name = f.name || "Webkit", f.webkit = e, !f.version && o && (f.version = o)) : !f.opera && /gecko\//i.test(t) && (f.name = f.name || "Gecko", f.gecko = e, f.version = f.version || n(/gecko\/(\d+(\.\d+)?)/i)), s || f.silk ? f.android = e : r && (f[r] = e, f.ios = e); var l = ""; r ? (l = n(/os (\d+([_\s]\d+)*) like mac os x/i), l = l.replace(/[_\s]/g, ".")) : s ? l = n(/android[ \/-](\d+(\.\d+)*)/i) : f.windowsphone ? l = n(/windows phone (?:os)?\s?(\d+(\.\d+)*)/i) : f.webos ? l = n(/(?:web|hpw)os\/(\d+(\.\d+)*)/i) : f.blackberry ? l = n(/rim\stablet\sos\s(\d+(\.\d+)*)/i) : f.bada ? l = n(/bada\/(\d+(\.\d+)*)/i) : f.tizen && (l = n(/tizen[\/\s](\d+(\.\d+)*)/i)), l && (f.osversion = l); var c = l.split(".")[0]; if (u || r == "ipad" || s && (c == 3 || c == 4 && !a) || f.silk) f.tablet = e; else if (a || r == "iphone" || r == "ipod" || s || f.blackberry || f.webos || f.bada) f.mobile = e; return f.msie && f.version >= 10 || f.chrome && f.version >= 20 || f.firefox && f.version >= 20 || f.safari && f.version >= 6 || f.opera && f.version >= 10 || f.ios && f.osversion && f.osversion.split(".")[0] >= 6 || f.blackberry && f.version >= 10.1 ? f.a = e : f.msie && f.version < 10 || f.chrome && f.version < 20 || f.firefox && f.version < 20 || f.safari && f.version < 6 || f.opera && f.version < 10 || f.ios && f.osversion && f.osversion.split(".")[0] < 6 ? f.c = e : f.x = e, f } var e = !0, n = t(typeof navigator != "undefined" ? navigator.userAgent : ""); return n._detect = t, n })
