@ -130,6 +130,7 @@
else if ( windowsphone ) {
else if ( windowsphone ) {
result = {
result = {
name : 'Windows Phone'
name : 'Windows Phone'
, osname : 'Windows Phone'
, windowsphone : t
, windowsphone : t
}
}
if ( edgeVersion ) {
if ( edgeVersion ) {
@ -150,6 +151,7 @@
} else if ( chromeos ) {
} else if ( chromeos ) {
result = {
result = {
name : 'Chrome'
name : 'Chrome'
, osname : 'Chrome OS'
, chromeos : t
, chromeos : t
, chromeBook : t
, chromeBook : t
, chrome : t
, chrome : t
@ -172,6 +174,7 @@
else if ( sailfish ) {
else if ( sailfish ) {
result = {
result = {
name : 'Sailfish'
name : 'Sailfish'
, osname : 'Sailfish OS'
, sailfish : t
, sailfish : t
, version : getFirstMatch ( /sailfish\s?browser\/(\d+(\.\d+)?)/i )
, version : getFirstMatch ( /sailfish\s?browser\/(\d+(\.\d+)?)/i )
}
}
@ -191,6 +194,7 @@
}
}
if ( /\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i . test ( ua ) ) {
if ( /\((mobile|tablet);[^\)]*rv:[\d\.]+\)/i . test ( ua ) ) {
result . firefoxos = t
result . firefoxos = t
result . osname = 'Firefox OS'
}
}
}
}
else if ( silk ) {
else if ( silk ) {
@ -217,6 +221,7 @@
else if ( /blackberry|\bbb\d+/i . test ( ua ) || /rim\stablet/i . test ( ua ) ) {
else if ( /blackberry|\bbb\d+/i . test ( ua ) || /rim\stablet/i . test ( ua ) ) {
result = {
result = {
name : 'BlackBerry'
name : 'BlackBerry'
, osname : 'BlackBerry OS'
, blackberry : t
, blackberry : t
, version : versionIdentifier || getFirstMatch ( /blackberry[\d]+\/(\d+(\.\d+)?)/i )
, version : versionIdentifier || getFirstMatch ( /blackberry[\d]+\/(\d+(\.\d+)?)/i )
}
}
@ -224,6 +229,7 @@
else if ( webos ) {
else if ( webos ) {
result = {
result = {
name : 'WebOS'
name : 'WebOS'
, osname : 'WebOS'
, webos : t
, webos : t
, version : versionIdentifier || getFirstMatch ( /w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i )
, version : versionIdentifier || getFirstMatch ( /w(?:eb)?osbrowser\/(\d+(\.\d+)?)/i )
} ;
} ;
@ -232,6 +238,7 @@
else if ( /bada/i . test ( ua ) ) {
else if ( /bada/i . test ( ua ) ) {
result = {
result = {
name : 'Bada'
name : 'Bada'
, osname : 'Bada'
, bada : t
, bada : t
, version : getFirstMatch ( /dolfin\/(\d+(\.\d+)?)/i )
, version : getFirstMatch ( /dolfin\/(\d+(\.\d+)?)/i )
} ;
} ;
@ -239,6 +246,7 @@
else if ( tizen ) {
else if ( tizen ) {
result = {
result = {
name : 'Tizen'
name : 'Tizen'
, osname : 'Tizen'
, tizen : t
, tizen : t
, version : getFirstMatch ( /(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i ) || versionIdentifier
, version : getFirstMatch ( /(?:tizen\s?)?browser\/(\d+(\.\d+)?)/i ) || versionIdentifier
} ;
} ;
@ -323,17 +331,23 @@
// set OS flags for platforms that have multiple browsers
// set OS flags for platforms that have multiple browsers
if ( ! result . windowsphone && ! result . msedge && ( android || result . silk ) ) {
if ( ! result . windowsphone && ! result . msedge && ( android || result . silk ) ) {
result . android = t
result . android = t
result . osname = 'Android'
} else if ( ! result . windowsphone && ! result . msedge && iosdevice ) {
} else if ( ! result . windowsphone && ! result . msedge && iosdevice ) {
result [ iosdevice ] = t
result [ iosdevice ] = t
result . ios = t
result . ios = t
result . osname = 'iOS'
} else if ( mac ) {
} else if ( mac ) {
result . mac = t
result . mac = t
result . osname = 'macOS'
} else if ( xbox ) {
} else if ( xbox ) {
result . xbox = t
result . xbox = t
result . osname = 'Xbox'
} else if ( windows ) {
} else if ( windows ) {
result . windows = t
result . windows = t
result . osname = 'Windows'
} else if ( linux ) {
} else if ( linux ) {
result . linux = t
result . linux = t
result . osname = 'Linux'
}
}
function getWindowsVersion ( s ) {
function getWindowsVersion ( s ) {