From 46f56d8776e5bc2ec8041cb7fb205a323d90ffe0 Mon Sep 17 00:00:00 2001
From: Baraa
Date: Sun, 19 Apr 2015 13:21:52 -0400
Subject: [PATCH 01/11] 2015 Updates!
---
Gruntfile.js | 2 +-
MIT-LICENSE.txt | 4 ++--
dist/jquery.browser.js | 6 +++---
dist/jquery.browser.min.js | 7 ++++---
4 files changed, 10 insertions(+), 9 deletions(-)
diff --git a/Gruntfile.js b/Gruntfile.js
index 95dc931..4d3c2fb 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -20,7 +20,7 @@ module.exports = function(grunt) {
},
uglify: {
options: {
- banner: '/*!\n * jQuery Browser Plugin <%= pkg.version %>\n * https://github.com/gabceb/jquery-browser-plugin\n *\n * Original jquery-browser code Copyright 2005, 2013 jQuery Foundation, Inc. and other contributors\n * http://jquery.org/license\n *\n * Modifications Copyright <%= grunt.template.today("yyyy") %> Gabriel Cebrian\n * https://github.com/gabceb\n *\n * Released under the MIT license\n *\n * Date: <%= grunt.template.today("dd-mm-yyyy")%>\n */'
+ banner: '/*!\n * jQuery Browser Plugin <%= pkg.version %>\n * https://github.com/gabceb/jquery-browser-plugin\n *\n * Original jquery-browser code Copyright 2005, 2015 jQuery Foundation, Inc. and other contributors\n * http://jquery.org/license\n *\n * Modifications Copyright <%= grunt.template.today("yyyy") %> Gabriel Cebrian\n * https://github.com/gabceb\n *\n * Released under the MIT license\n *\n * Date: <%= grunt.template.today("dd-mm-yyyy")%>\n */'
},
dist: {
files: {
diff --git a/MIT-LICENSE.txt b/MIT-LICENSE.txt
index d04f9a7..c6ae678 100644
--- a/MIT-LICENSE.txt
+++ b/MIT-LICENSE.txt
@@ -1,5 +1,5 @@
-Copyright 2013 jQuery Foundation and other contributors, http://jquery.com/
-Modifications Copyright 2013 Gabriel Cebrian, https://www.github.com/gabceb
+Copyright 2015 jQuery Foundation and other contributors, http://jquery.com/
+Modifications Copyright 2015 Gabriel Cebrian, https://www.github.com/gabceb
Permission is hereby granted, free of charge, to any person obtaining
a copy of this software and associated documentation files (the
diff --git a/dist/jquery.browser.js b/dist/jquery.browser.js
index 9bd4648..f3248b8 100644
--- a/dist/jquery.browser.js
+++ b/dist/jquery.browser.js
@@ -2,15 +2,15 @@
* jQuery Browser Plugin 0.0.7
* https://github.com/gabceb/jquery-browser-plugin
*
- * Original jquery-browser code Copyright 2005, 2013 jQuery Foundation, Inc. and other contributors
+ * Original jquery-browser code Copyright 2005, 2015 jQuery Foundation, Inc. and other contributors
* http://jquery.org/license
*
- * Modifications Copyright 2014 Gabriel Cebrian
+ * Modifications Copyright 2015 Gabriel Cebrian
* https://github.com/gabceb
*
* Released under the MIT license
*
- * Date: 12-12-2014
+ * Date: 19-05-2015
*/
/*global window: false */
diff --git a/dist/jquery.browser.min.js b/dist/jquery.browser.min.js
index 55f8cf5..223144e 100644
--- a/dist/jquery.browser.min.js
+++ b/dist/jquery.browser.min.js
@@ -2,7 +2,7 @@
* jQuery Browser Plugin 0.0.7
* https://github.com/gabceb/jquery-browser-plugin
*
- * Original jquery-browser code Copyright 2005, 2013 jQuery Foundation, Inc. and other contributors
+ * Original jquery-browser code Copyright 2005, 2015 jQuery Foundation, Inc. and other contributors
* http://jquery.org/license
*
* Modifications Copyright 2015 Gabriel Cebrian
@@ -10,5 +10,6 @@
*
* Released under the MIT license
*
- * Date: 20-01-2015
- */!function(a){"function"==typeof define&&define.amd?define(["jquery"],function(b){a(b)}):"object"==typeof module&&"object"==typeof module.exports?module.exports=a(require("jquery")):a(window.jQuery)}(function(a){"use strict";function b(a){void 0===a&&(a=window.navigator.userAgent),a=a.toLowerCase();var b=/(edge)\/([\w.]+)/.exec(a)||/(opr)[\/]([\w.]+)/.exec(a)||/(chrome)[ \/]([\w.]+)/.exec(a)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[],c=/(ipad)/.exec(a)||/(ipod)/.exec(a)||/(iphone)/.exec(a)||/(kindle)/.exec(a)||/(silk)/.exec(a)||/(android)/.exec(a)||/(windows phone)/.exec(a)||/(win)/.exec(a)||/(mac)/.exec(a)||/(linux)/.exec(a)||/(cros)/.exec(a)||/(playbook)/.exec(a)||/(bb)/.exec(a)||/(blackberry)/.exec(a)||[],d={},e={browser:b[5]||b[3]||b[1]||"",version:b[2]||b[4]||"0",versionNumber:b[4]||b[2]||"0",platform:c[0]||""};if(e.browser&&(d[e.browser]=!0,d.version=e.version,d.versionNumber=parseInt(e.versionNumber,10)),e.platform&&(d[e.platform]=!0),(d.android||d.bb||d.blackberry||d.ipad||d.iphone||d.ipod||d.kindle||d.playbook||d.silk||d["windows phone"])&&(d.mobile=!0),(d.cros||d.mac||d.linux||d.win)&&(d.desktop=!0),(d.chrome||d.opr||d.safari)&&(d.webkit=!0),d.rv||d.edge){var f="msie";e.browser=f,d[f]=!0}if(d.safari&&d.blackberry){var g="blackberry";e.browser=g,d[g]=!0}if(d.safari&&d.playbook){var h="playbook";e.browser=h,d[h]=!0}if(d.bb){var i="blackberry";e.browser=i,d[i]=!0}if(d.opr){var j="opera";e.browser=j,d[j]=!0}if(d.safari&&d.android){var k="android";e.browser=k,d[k]=!0}if(d.safari&&d.kindle){var l="kindle";e.browser=l,d[l]=!0}if(d.safari&&d.silk){var m="silk";e.browser=m,d[m]=!0}return d.name=e.browser,d.platform=e.platform,d}return window.jQBrowser=b(window.navigator.userAgent),window.jQBrowser.uaMatch=b,a&&(a.browser=window.jQBrowser),window.jQBrowser});
\ No newline at end of file
+ * Date: 19-05-2015
+ */
+!function(a){"function"==typeof define&&define.amd?define(["jquery"],function(b){a(b)}):"object"==typeof module&&"object"==typeof module.exports?module.exports=a(require("jquery")):a(window.jQuery)}(function(a){"use strict";function b(a){void 0===a&&(a=window.navigator.userAgent),a=a.toLowerCase();var b=/(edge)\/([\w.]+)/.exec(a)||/(opr)[\/]([\w.]+)/.exec(a)||/(chrome)[ \/]([\w.]+)/.exec(a)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[],c=/(ipad)/.exec(a)||/(ipod)/.exec(a)||/(iphone)/.exec(a)||/(kindle)/.exec(a)||/(silk)/.exec(a)||/(android)/.exec(a)||/(windows phone)/.exec(a)||/(win)/.exec(a)||/(mac)/.exec(a)||/(linux)/.exec(a)||/(cros)/.exec(a)||/(playbook)/.exec(a)||/(bb)/.exec(a)||/(blackberry)/.exec(a)||[],d={},e={browser:b[5]||b[3]||b[1]||"",version:b[2]||b[4]||"0",versionNumber:b[4]||b[2]||"0",platform:c[0]||""};if(e.browser&&(d[e.browser]=!0,d.version=e.version,d.versionNumber=parseInt(e.versionNumber,10)),e.platform&&(d[e.platform]=!0),(d.android||d.bb||d.blackberry||d.ipad||d.iphone||d.ipod||d.kindle||d.playbook||d.silk||d["windows phone"])&&(d.mobile=!0),(d.cros||d.mac||d.linux||d.win)&&(d.desktop=!0),(d.chrome||d.opr||d.safari)&&(d.webkit=!0),d.rv||d.edge){var f="msie";e.browser=f,d[f]=!0}if(d.safari&&d.blackberry){var g="blackberry";e.browser=g,d[g]=!0}if(d.safari&&d.playbook){var h="playbook";e.browser=h,d[h]=!0}if(d.bb){var i="blackberry";e.browser=i,d[i]=!0}if(d.opr){var j="opera";e.browser=j,d[j]=!0}if(d.safari&&d.android){var k="android";e.browser=k,d[k]=!0}if(d.safari&&d.kindle){var l="kindle";e.browser=l,d[l]=!0}if(d.safari&&d.silk){var m="silk";e.browser=m,d[m]=!0}return d.name=e.browser,d.platform=e.platform,d}return window.jQBrowser=b(window.navigator.userAgent),window.jQBrowser.uaMatch=b,a&&(a.browser=window.jQBrowser),window.jQBrowser});
From 1c8e69209269591d26c84173b30de1fd943a20fb Mon Sep 17 00:00:00 2001
From: artemkaint
Date: Mon, 19 Jan 2015 11:16:59 +0300
Subject: [PATCH 02/11] Merge (fix) #57 - Fix bower AMD loading
---
dist/jquery.browser.js | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/dist/jquery.browser.js b/dist/jquery.browser.js
index f3248b8..f7f7872 100644
--- a/dist/jquery.browser.js
+++ b/dist/jquery.browser.js
@@ -17,8 +17,8 @@
(function (factory) {
if (typeof define === 'function' && define.amd) {
// AMD. Register as an anonymous module.
- define(['jquery'], function($) {
- factory($);
+ define(['jquery'], function ($) {
+ return factory($);
});
} else if (typeof module === 'object' && typeof module.exports === 'object') {
// Node-like environment
From e651dd59375dc3da684a55919666b7a956c34f03 Mon Sep 17 00:00:00 2001
From: Triangle717
Date: Tue, 23 Jun 2015 14:46:00 -0400
Subject: [PATCH 03/11] Disable sudo on Travis CI
This help speed up the builds and make use of updated Travis
infrastructure.
---
.travis.yml | 1 +
1 file changed, 1 insertion(+)
diff --git a/.travis.yml b/.travis.yml
index 8deaf3f..0a7a84e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -1,3 +1,4 @@
+sudo: false
language: node_js
node_js:
- "0.10"
From 04a369383dc2aa1e327679cce68482bb24d55a75 Mon Sep 17 00:00:00 2001
From: Triangle717
Date: Tue, 23 Jun 2015 15:18:37 -0400
Subject: [PATCH 04/11] Initial README update
---
README.md | 19 +++++++++++++------
1 file changed, 13 insertions(+), 6 deletions(-)
diff --git a/README.md b/README.md
index abbdc88..362c0fb 100644
--- a/README.md
+++ b/README.md
@@ -2,17 +2,20 @@
[](https://travis-ci.org/gabceb/jquery-browser-plugin)
-A jQuery plugin for browser detection. jQuery removed support for browser detection on 1.9.1 so it was abstracted into a jQuery plugin
+A jQuery plugin for browser detection. jQuery v1.9.1 dropped support for browser detection, and this project aims to keep the detection up-to-date.
## Installation
Include script *after* the jQuery library:
+```html
+
+```
-
+Alternatively, you can use the plugin without jQuery by substituting `$.browser` for the global `jQBrowser` object.
## Usage
-Returns true if the current useragent is some version of Microsoft's Internet Explorer. Supports all IE versions including IE 12.
+Returns true if the current useragent is some version of Microsoft's Internet Explorer. Supports all IE versions including IE 11.
$.browser.msie;
@@ -24,10 +27,14 @@ Returns true if the current useragent is some version of Firefox
$.browser.mozilla;
-Reading the browser verion
-
+Reading the browser version
+
$.browser.version
+You can also examine arbitrary useragents
+
+ jQBrowser.uaMatch();
+
## Things not included in the original jQuery $.browser implementation
- Detect specifically Windows, Mac, Linux, iPad, iPhone, iPod, Android, Kindle, BlackBerry, Chrome OS, and Windows Phone useragents
@@ -78,7 +85,7 @@ Alternatively, you can detect for generic classifications such as desktop or mob
$.browser.versionNumber // Returns 32 as a number
```
-- Support for new useragent on IE 11 and IE 12
+- Support for new useragent on IE 11
- Support for WebKit based Opera browsers
- Added testing using PhantomJS and different browser user agents
From 3498df963b11a5748e7b44e4b38dc09cfb5c44ed Mon Sep 17 00:00:00 2001
From: Caleb Ely
Date: Sun, 5 Jul 2015 18:10:22 -0400
Subject: [PATCH 05/11] Fixed reversed wording for non-jQuery usage
---
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/README.md b/README.md
index 362c0fb..cb9b5ec 100644
--- a/README.md
+++ b/README.md
@@ -11,7 +11,7 @@ Include script *after* the jQuery library:
```
-Alternatively, you can use the plugin without jQuery by substituting `$.browser` for the global `jQBrowser` object.
+Alternatively, you can use the plugin without jQuery by using the global object `jQBrowser` instead of `$.browser`.
## Usage
From deedc12dcf8857686d592365df0cc0cf7324eec8 Mon Sep 17 00:00:00 2001
From: Triangle717
Date: Sun, 5 Jul 2015 21:06:04 -0400
Subject: [PATCH 06/11] v0.0.8
---
bower.json | 2 +-
browser.jquery.json | 2 +-
dist/jquery.browser.js | 4 ++--
dist/jquery.browser.min.js | 7 +++----
package.json | 2 +-
5 files changed, 8 insertions(+), 9 deletions(-)
diff --git a/bower.json b/bower.json
index 686c626..a7a391f 100644
--- a/bower.json
+++ b/bower.json
@@ -1,6 +1,6 @@
{
"name": "jquery.browser",
- "version": "0.0.6",
+ "version": "0.0.8",
"homepage": "https://github.com/gabceb/jquery-browser-plugin",
"authors": ["Gabriel Cebrian ", "jQuery Team "],
"description": "A jQuery plugin for browser detection.",
diff --git a/browser.jquery.json b/browser.jquery.json
index 4e4c14c..1468346 100644
--- a/browser.jquery.json
+++ b/browser.jquery.json
@@ -9,7 +9,7 @@
"html5",
"support"
],
- "version": "0.0.6",
+ "version": "0.0.8",
"author": {
"name": "Gabriel Cebrian. Initial implementation by the jQuery Team",
"url": "https://github.com/gabceb/jquery-browser-plugin/wiki/Authors"
diff --git a/dist/jquery.browser.js b/dist/jquery.browser.js
index f7f7872..038ec52 100644
--- a/dist/jquery.browser.js
+++ b/dist/jquery.browser.js
@@ -1,5 +1,5 @@
/*!
- * jQuery Browser Plugin 0.0.7
+ * jQuery Browser Plugin 0.0.8
* https://github.com/gabceb/jquery-browser-plugin
*
* Original jquery-browser code Copyright 2005, 2015 jQuery Foundation, Inc. and other contributors
@@ -10,7 +10,7 @@
*
* Released under the MIT license
*
- * Date: 19-05-2015
+ * Date: 05-07-2015
*/
/*global window: false */
diff --git a/dist/jquery.browser.min.js b/dist/jquery.browser.min.js
index 223144e..246407c 100644
--- a/dist/jquery.browser.min.js
+++ b/dist/jquery.browser.min.js
@@ -1,5 +1,5 @@
/*!
- * jQuery Browser Plugin 0.0.7
+ * jQuery Browser Plugin 0.0.8
* https://github.com/gabceb/jquery-browser-plugin
*
* Original jquery-browser code Copyright 2005, 2015 jQuery Foundation, Inc. and other contributors
@@ -10,6 +10,5 @@
*
* Released under the MIT license
*
- * Date: 19-05-2015
- */
-!function(a){"function"==typeof define&&define.amd?define(["jquery"],function(b){a(b)}):"object"==typeof module&&"object"==typeof module.exports?module.exports=a(require("jquery")):a(window.jQuery)}(function(a){"use strict";function b(a){void 0===a&&(a=window.navigator.userAgent),a=a.toLowerCase();var b=/(edge)\/([\w.]+)/.exec(a)||/(opr)[\/]([\w.]+)/.exec(a)||/(chrome)[ \/]([\w.]+)/.exec(a)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[],c=/(ipad)/.exec(a)||/(ipod)/.exec(a)||/(iphone)/.exec(a)||/(kindle)/.exec(a)||/(silk)/.exec(a)||/(android)/.exec(a)||/(windows phone)/.exec(a)||/(win)/.exec(a)||/(mac)/.exec(a)||/(linux)/.exec(a)||/(cros)/.exec(a)||/(playbook)/.exec(a)||/(bb)/.exec(a)||/(blackberry)/.exec(a)||[],d={},e={browser:b[5]||b[3]||b[1]||"",version:b[2]||b[4]||"0",versionNumber:b[4]||b[2]||"0",platform:c[0]||""};if(e.browser&&(d[e.browser]=!0,d.version=e.version,d.versionNumber=parseInt(e.versionNumber,10)),e.platform&&(d[e.platform]=!0),(d.android||d.bb||d.blackberry||d.ipad||d.iphone||d.ipod||d.kindle||d.playbook||d.silk||d["windows phone"])&&(d.mobile=!0),(d.cros||d.mac||d.linux||d.win)&&(d.desktop=!0),(d.chrome||d.opr||d.safari)&&(d.webkit=!0),d.rv||d.edge){var f="msie";e.browser=f,d[f]=!0}if(d.safari&&d.blackberry){var g="blackberry";e.browser=g,d[g]=!0}if(d.safari&&d.playbook){var h="playbook";e.browser=h,d[h]=!0}if(d.bb){var i="blackberry";e.browser=i,d[i]=!0}if(d.opr){var j="opera";e.browser=j,d[j]=!0}if(d.safari&&d.android){var k="android";e.browser=k,d[k]=!0}if(d.safari&&d.kindle){var l="kindle";e.browser=l,d[l]=!0}if(d.safari&&d.silk){var m="silk";e.browser=m,d[m]=!0}return d.name=e.browser,d.platform=e.platform,d}return window.jQBrowser=b(window.navigator.userAgent),window.jQBrowser.uaMatch=b,a&&(a.browser=window.jQBrowser),window.jQBrowser});
+ * Date: 05-07-2015
+ */!function(a){"function"==typeof define&&define.amd?define(["jquery"],function(b){return a(b)}):"object"==typeof module&&"object"==typeof module.exports?module.exports=a(require("jquery")):a(window.jQuery)}(function(a){"use strict";function b(a){void 0===a&&(a=window.navigator.userAgent),a=a.toLowerCase();var b=/(edge)\/([\w.]+)/.exec(a)||/(opr)[\/]([\w.]+)/.exec(a)||/(chrome)[ \/]([\w.]+)/.exec(a)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[],c=/(ipad)/.exec(a)||/(ipod)/.exec(a)||/(iphone)/.exec(a)||/(kindle)/.exec(a)||/(silk)/.exec(a)||/(android)/.exec(a)||/(windows phone)/.exec(a)||/(win)/.exec(a)||/(mac)/.exec(a)||/(linux)/.exec(a)||/(cros)/.exec(a)||/(playbook)/.exec(a)||/(bb)/.exec(a)||/(blackberry)/.exec(a)||[],d={},e={browser:b[5]||b[3]||b[1]||"",version:b[2]||b[4]||"0",versionNumber:b[4]||b[2]||"0",platform:c[0]||""};if(e.browser&&(d[e.browser]=!0,d.version=e.version,d.versionNumber=parseInt(e.versionNumber,10)),e.platform&&(d[e.platform]=!0),(d.android||d.bb||d.blackberry||d.ipad||d.iphone||d.ipod||d.kindle||d.playbook||d.silk||d["windows phone"])&&(d.mobile=!0),(d.cros||d.mac||d.linux||d.win)&&(d.desktop=!0),(d.chrome||d.opr||d.safari)&&(d.webkit=!0),d.rv||d.edge){var f="msie";e.browser=f,d[f]=!0}if(d.safari&&d.blackberry){var g="blackberry";e.browser=g,d[g]=!0}if(d.safari&&d.playbook){var h="playbook";e.browser=h,d[h]=!0}if(d.bb){var i="blackberry";e.browser=i,d[i]=!0}if(d.opr){var j="opera";e.browser=j,d[j]=!0}if(d.safari&&d.android){var k="android";e.browser=k,d[k]=!0}if(d.safari&&d.kindle){var l="kindle";e.browser=l,d[l]=!0}if(d.safari&&d.silk){var m="silk";e.browser=m,d[m]=!0}return d.name=e.browser,d.platform=e.platform,d}return window.jQBrowser=b(window.navigator.userAgent),window.jQBrowser.uaMatch=b,a&&(a.browser=window.jQBrowser),window.jQBrowser});
\ No newline at end of file
diff --git a/package.json b/package.json
index abc22ab..d263ceb 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "jquery.browser",
- "version": "0.0.7",
+ "version": "0.0.8",
"authors": [
"Gabriel Cebrian ",
"jQuery Team "
From 6ea05333701e5ffc4bfb61733c93a0ddd8e85f58 Mon Sep 17 00:00:00 2001
From: MoonYard
Date: Mon, 23 Nov 2015 12:26:09 +0100
Subject: [PATCH 07/11] bugfix windows phone (lumia520)
Closes #68
---
dist/jquery.browser.js | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/dist/jquery.browser.js b/dist/jquery.browser.js
index 038ec52..3ef0152 100644
--- a/dist/jquery.browser.js
+++ b/dist/jquery.browser.js
@@ -40,6 +40,7 @@
var match = /(edge)\/([\w.]+)/.exec( ua ) ||
/(opr)[\/]([\w.]+)/.exec( ua ) ||
/(chrome)[ \/]([\w.]+)/.exec( ua ) ||
+ /(iemobile)[\/]([\w.]+)/.exec( ua ) ||
/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec( ua ) ||
/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec( ua ) ||
/(webkit)[ \/]([\w.]+)/.exec( ua ) ||
@@ -51,11 +52,11 @@
var platform_match = /(ipad)/.exec( ua ) ||
/(ipod)/.exec( ua ) ||
+ /(windows phone)/.exec( ua ) ||
/(iphone)/.exec( ua ) ||
/(kindle)/.exec( ua ) ||
/(silk)/.exec( ua ) ||
/(android)/.exec( ua ) ||
- /(windows phone)/.exec( ua ) ||
/(win)/.exec( ua ) ||
/(mac)/.exec( ua ) ||
/(linux)/.exec( ua ) ||
@@ -101,7 +102,7 @@
// IE11 has a new token so we will assign it msie to avoid breaking changes
// IE12 disguises itself as Chrome, but adds a new Edge token.
- if ( browser.rv || browser.edge ) {
+ if ( browser.rv || browser.edge || browser.iemobile) {
var ie = "msie";
matched.browser = ie;
From 7dd692a1dee0451240083717f921024f400f795c Mon Sep 17 00:00:00 2001
From: MoonYard
Date: Mon, 23 Nov 2015 12:55:08 +0100
Subject: [PATCH 08/11] Update test.js
added test for Windows Phone 8.1 with IE11
Closes #69
---
test/test.js | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/test/test.js b/test/test.js
index 122923b..2d48c1a 100644
--- a/test/test.js
+++ b/test/test.js
@@ -47,7 +47,8 @@ var ua = {
v_12: "Mozilla/5.0 (Windows NT 6.4; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36 Edge/12.0"
},
win_phone : {
- v_10: "Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 1020)"
+ v_10: "Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 1020)",
+ v_11: "Mozilla/5.0 (Mobile; Windows Phone 8.1; Android 4.0; ARM; Trident/7.0; Touch; rv:11.0; IEMobile/11.0; NOKIA; Lumia 520) like iPhone OS 7_0_3 Mac OS X AppleWebKit/537 (KHTML, like Gecko) Mobile Safari/537"
},
name: "msie"
},
From ab87149178de1885c38bc6ff84ae51258b42386e Mon Sep 17 00:00:00 2001
From: Caleb Ely
Date: Mon, 23 Nov 2015 13:05:25 -0500
Subject: [PATCH 09/11] Add test for Windows Phone IE 11
---
test/test.js | 26 +++++++++++++++++++++++++-
1 file changed, 25 insertions(+), 1 deletion(-)
diff --git a/test/test.js b/test/test.js
index 2d48c1a..1690926 100644
--- a/test/test.js
+++ b/test/test.js
@@ -464,7 +464,6 @@ casper.test.begin("when using IE10", 7, function(test) {
});
});
-
casper.test.begin("when using IE10 on a Windows Phone", 7, function(test) {
casper.userAgent(ua.ie.win_phone.v_10);
@@ -490,6 +489,31 @@ casper.test.begin("when using IE10 on a Windows Phone", 7, function(test) {
});
});
+casper.test.begin("when using IE11 on a Windows Phone", 7, function(test) {
+ casper.userAgent(ua.ie.win_phone.v_11);
+
+ casper.start(test_url).then(function(){
+
+ var browser = casper.evaluate(function(){
+ return $.browser;
+ });
+
+ test.assert(browser.msie, "Browser should be IE");
+ test.assertEquals(browser.name, ua.ie.name,"Browser name should be " + ua.ie.name);
+
+ test.assertEquals(browser.version, "11.0", "Version should be 11.0");
+ test.assertEquals(browser.versionNumber, 11, "Version should be 11");
+
+ test.assert(browser.mobile, "Browser platform should be mobile");
+ test.assert(browser["windows phone"], "Platform should be Windows Phone");
+
+ test.assertFalsy(browser.webkit, "Browser should NOT be WebKit based");
+
+ }).run(function(){
+ test.done();
+ });
+});
+
casper.test.begin("when using IE11", 7, function(test) {
casper.userAgent(ua.ie.windows.v_11);
From 412cbceb63f7f7e63d8c40ff4450f86730aea24e Mon Sep 17 00:00:00 2001
From: Caleb Ely
Date: Mon, 23 Nov 2015 14:13:59 -0500
Subject: [PATCH 10/11] Support Microsoft Edge (#63)
---
README.md | 2 +
dist/jquery.browser.js | 12 +++++-
test/test.js | 92 ++++++++++++++++++++++++++++++++++--------
3 files changed, 88 insertions(+), 18 deletions(-)
diff --git a/README.md b/README.md
index cb9b5ec..11c9f8e 100644
--- a/README.md
+++ b/README.md
@@ -49,6 +49,7 @@ You can also examine arbitrary useragents
$.browser.kindle
$.browser.linux
$.browser.mac
+ $.browser.msedge
$.browser.playbook
$.browser.silk
$.browser.win
@@ -86,6 +87,7 @@ Alternatively, you can detect for generic classifications such as desktop or mob
```
- Support for new useragent on IE 11
+- Support for Microsoft Edge
- Support for WebKit based Opera browsers
- Added testing using PhantomJS and different browser user agents
diff --git a/dist/jquery.browser.js b/dist/jquery.browser.js
index 3ef0152..8db2351 100644
--- a/dist/jquery.browser.js
+++ b/dist/jquery.browser.js
@@ -101,14 +101,22 @@
}
// IE11 has a new token so we will assign it msie to avoid breaking changes
- // IE12 disguises itself as Chrome, but adds a new Edge token.
- if ( browser.rv || browser.edge || browser.iemobile) {
+ if ( browser.rv || browser.iemobile) {
var ie = "msie";
matched.browser = ie;
browser[ie] = true;
}
+ // Edge is officially known as Microsoft Edge, so rewrite the key to match
+ if ( browser.edge ) {
+ delete browser.edge;
+ var msedge = "msedge";
+
+ matched.browser = msedge;
+ browser[msedge] = true;
+ }
+
// Blackberry browsers are marked as Safari on BlackBerry
if ( browser.safari && browser.blackberry ) {
var blackberry = "blackberry";
diff --git a/test/test.js b/test/test.js
index 1690926..35db474 100644
--- a/test/test.js
+++ b/test/test.js
@@ -40,18 +40,27 @@ var ua = {
name: "mozilla"
},
ie: {
- windows : {
+ windows: {
v_9: "Mozilla/4.0 (compatible; MSIE 9.0; Windows NT 6.0; Trident/5.0)",
v_10: "Mozilla/5.0 (compatible; MSIE 10.0; Windows NT 6.1; WOW64; Trident/6.0)",
- v_11: "Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko",
- v_12: "Mozilla/5.0 (Windows NT 6.4; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/36.0.1985.143 Safari/537.36 Edge/12.0"
+ v_11: "Mozilla/5.0 (Windows NT 6.3; Trident/7.0; rv:11.0) like Gecko"
},
- win_phone : {
+ win_phone: {
v_10: "Mozilla/5.0 (compatible; MSIE 10.0; Windows Phone 8.0; Trident/6.0; IEMobile/10.0; ARM; Touch; NOKIA; Lumia 1020)",
v_11: "Mozilla/5.0 (Mobile; Windows Phone 8.1; Android 4.0; ARM; Trident/7.0; Touch; rv:11.0; IEMobile/11.0; NOKIA; Lumia 520) like iPhone OS 7_0_3 Mac OS X AppleWebKit/537 (KHTML, like Gecko) Mobile Safari/537"
},
name: "msie"
},
+ msedge: {
+ windows: {
+ v_12: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Safari/537.36 Edge/12.0",
+ v_13: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/46.0.2486.0 Safari/537.36 Edge/13.10586"
+ },
+ win_phone: {
+ v_13: "Mozilla/5.0 (Windows Phone 10.0; Android 4.2.1; NOKIA; Lumia 950) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/42.0.2311.135 Mobile Safari/537.36 Edge/13.10586"
+ },
+ name: "msedge"
+ },
opera: {
v_15: {
mac: "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/28.0.1500.20 Safari/537.36 OPR/15.0.1147.18",
@@ -489,8 +498,8 @@ casper.test.begin("when using IE10 on a Windows Phone", 7, function(test) {
});
});
-casper.test.begin("when using IE11 on a Windows Phone", 7, function(test) {
- casper.userAgent(ua.ie.win_phone.v_11);
+casper.test.begin("when using IE11", 7, function(test) {
+ casper.userAgent(ua.ie.windows.v_11);
casper.start(test_url).then(function(){
@@ -504,8 +513,8 @@ casper.test.begin("when using IE11 on a Windows Phone", 7, function(test) {
test.assertEquals(browser.version, "11.0", "Version should be 11.0");
test.assertEquals(browser.versionNumber, 11, "Version should be 11");
- test.assert(browser.mobile, "Browser platform should be mobile");
- test.assert(browser["windows phone"], "Platform should be Windows Phone");
+ test.assert(browser.desktop, "Browser platform should be desktop");
+ test.assert(browser.win, "Platform should be Windows");
test.assertFalsy(browser.webkit, "Browser should NOT be WebKit based");
@@ -514,8 +523,8 @@ casper.test.begin("when using IE11 on a Windows Phone", 7, function(test) {
});
});
-casper.test.begin("when using IE11", 7, function(test) {
- casper.userAgent(ua.ie.windows.v_11);
+casper.test.begin("when using IE11 on a Windows Phone", 7, function(test) {
+ casper.userAgent(ua.ie.win_phone.v_11);
casper.start(test_url).then(function(){
@@ -529,8 +538,8 @@ casper.test.begin("when using IE11", 7, function(test) {
test.assertEquals(browser.version, "11.0", "Version should be 11.0");
test.assertEquals(browser.versionNumber, 11, "Version should be 11");
- test.assert(browser.desktop, "Browser platform should be desktop");
- test.assert(browser.win, "Platform should be Windows");
+ test.assert(browser.mobile, "Browser platform should be mobile");
+ test.assert(browser["windows phone"], "Platform should be Windows Phone");
test.assertFalsy(browser.webkit, "Browser should NOT be WebKit based");
@@ -539,8 +548,8 @@ casper.test.begin("when using IE11", 7, function(test) {
});
});
-casper.test.begin("when using IE12", 7, function(test) {
- casper.userAgent(ua.ie.windows.v_12);
+casper.test.begin("when using Microsoft Edge 12", 7, function(test) {
+ casper.userAgent(ua.msedge.windows.v_12);
casper.start(test_url).then(function(){
@@ -548,8 +557,8 @@ casper.test.begin("when using IE12", 7, function(test) {
return $.browser;
});
- test.assert(browser.msie, "Browser should be IE");
- test.assertEquals(browser.name, ua.ie.name,"Browser name should be " + ua.ie.name);
+ test.assert(browser.msedge, "Browser should be MS Edge");
+ test.assertEquals(browser.name, ua.msedge.name,"Browser name should be " + ua.msedge.name);
test.assertEquals(browser.version, "12.0", "Version should be 12.0");
test.assertEquals(browser.versionNumber, 12, "Version should be 12");
@@ -564,6 +573,57 @@ casper.test.begin("when using IE12", 7, function(test) {
});
});
+casper.test.begin("when using Microsoft Edge 13", 7, function(test) {
+ casper.userAgent(ua.msedge.windows.v_13);
+
+ casper.start(test_url).then(function(){
+
+ var browser = casper.evaluate(function(){
+ return $.browser;
+ });
+
+ test.assert(browser.msedge, "Browser should be MS Edge");
+ test.assertEquals(browser.name, ua.msedge.name,"Browser name should be " + ua.msedge.name);
+
+ test.assertEquals(browser.version, "13.10586", "Version should be 13.10586");
+ test.assertEquals(browser.versionNumber, 13, "Version should be 13");
+
+ test.assert(browser.desktop, "Browser platform should be desktop");
+ test.assert(browser.win, "Platform should be Windows");
+
+ test.assertFalsy(browser.webkit, "Browser should NOT be WebKit based");
+
+ }).run(function(){
+ test.done();
+ });
+});
+
+casper.test.begin("when using Microsoft Edge v13 on a Windows Phone", 7, function(test) {
+ casper.userAgent(ua.msedge.win_phone.v_13);
+
+ casper.start(test_url).then(function(){
+
+ var browser = casper.evaluate(function(){
+ return $.browser;
+ });
+
+ test.assert(browser.msedge, "Browser should be MS Edge");
+ test.assertEquals(browser.name, ua.msedge.name,"Browser name should be " + ua.msedge.name);
+
+ test.assertEquals(browser.version, "13.10586", "Version should be 13.10586");
+ test.assertEquals(browser.versionNumber, 13, "Version should be 13");
+
+ test.assert(browser.mobile, "Browser platform should be mobile");
+ test.assert(browser["windows phone"], "Platform should be Windows Phone");
+
+ test.assertFalsy(browser.webkit, "Browser should NOT be WebKit based");
+
+ }).run(function(){
+ test.done();
+ });
+});
+
+
casper.test.begin("when using Opera 15+ on Windows", 7, function(test) {
casper.userAgent(ua.opera.v_15.windows);
From 07d59ee6e87da9f789b196d221e5f62f9db3c158 Mon Sep 17 00:00:00 2001
From: Gabriel Cebrian
Date: Mon, 23 Nov 2015 11:56:22 -0800
Subject: [PATCH 11/11] Bump the minor
---
bower.json | 2 +-
browser.jquery.json | 2 +-
dist/jquery.browser.js | 2 +-
dist/jquery.browser.min.js | 6 +++---
package.json | 2 +-
5 files changed, 7 insertions(+), 7 deletions(-)
diff --git a/bower.json b/bower.json
index a7a391f..6955a43 100644
--- a/bower.json
+++ b/bower.json
@@ -1,6 +1,6 @@
{
"name": "jquery.browser",
- "version": "0.0.8",
+ "version": "0.1.0",
"homepage": "https://github.com/gabceb/jquery-browser-plugin",
"authors": ["Gabriel Cebrian ", "jQuery Team "],
"description": "A jQuery plugin for browser detection.",
diff --git a/browser.jquery.json b/browser.jquery.json
index 1468346..79868a6 100644
--- a/browser.jquery.json
+++ b/browser.jquery.json
@@ -9,7 +9,7 @@
"html5",
"support"
],
- "version": "0.0.8",
+ "version": "0.1.0",
"author": {
"name": "Gabriel Cebrian. Initial implementation by the jQuery Team",
"url": "https://github.com/gabceb/jquery-browser-plugin/wiki/Authors"
diff --git a/dist/jquery.browser.js b/dist/jquery.browser.js
index 8db2351..223eca6 100644
--- a/dist/jquery.browser.js
+++ b/dist/jquery.browser.js
@@ -1,5 +1,5 @@
/*!
- * jQuery Browser Plugin 0.0.8
+ * jQuery Browser Plugin 0.1.0
* https://github.com/gabceb/jquery-browser-plugin
*
* Original jquery-browser code Copyright 2005, 2015 jQuery Foundation, Inc. and other contributors
diff --git a/dist/jquery.browser.min.js b/dist/jquery.browser.min.js
index 246407c..491da7c 100644
--- a/dist/jquery.browser.min.js
+++ b/dist/jquery.browser.min.js
@@ -1,5 +1,5 @@
/*!
- * jQuery Browser Plugin 0.0.8
+ * jQuery Browser Plugin 0.1.0
* https://github.com/gabceb/jquery-browser-plugin
*
* Original jquery-browser code Copyright 2005, 2015 jQuery Foundation, Inc. and other contributors
@@ -10,5 +10,5 @@
*
* Released under the MIT license
*
- * Date: 05-07-2015
- */!function(a){"function"==typeof define&&define.amd?define(["jquery"],function(b){return a(b)}):"object"==typeof module&&"object"==typeof module.exports?module.exports=a(require("jquery")):a(window.jQuery)}(function(a){"use strict";function b(a){void 0===a&&(a=window.navigator.userAgent),a=a.toLowerCase();var b=/(edge)\/([\w.]+)/.exec(a)||/(opr)[\/]([\w.]+)/.exec(a)||/(chrome)[ \/]([\w.]+)/.exec(a)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[],c=/(ipad)/.exec(a)||/(ipod)/.exec(a)||/(iphone)/.exec(a)||/(kindle)/.exec(a)||/(silk)/.exec(a)||/(android)/.exec(a)||/(windows phone)/.exec(a)||/(win)/.exec(a)||/(mac)/.exec(a)||/(linux)/.exec(a)||/(cros)/.exec(a)||/(playbook)/.exec(a)||/(bb)/.exec(a)||/(blackberry)/.exec(a)||[],d={},e={browser:b[5]||b[3]||b[1]||"",version:b[2]||b[4]||"0",versionNumber:b[4]||b[2]||"0",platform:c[0]||""};if(e.browser&&(d[e.browser]=!0,d.version=e.version,d.versionNumber=parseInt(e.versionNumber,10)),e.platform&&(d[e.platform]=!0),(d.android||d.bb||d.blackberry||d.ipad||d.iphone||d.ipod||d.kindle||d.playbook||d.silk||d["windows phone"])&&(d.mobile=!0),(d.cros||d.mac||d.linux||d.win)&&(d.desktop=!0),(d.chrome||d.opr||d.safari)&&(d.webkit=!0),d.rv||d.edge){var f="msie";e.browser=f,d[f]=!0}if(d.safari&&d.blackberry){var g="blackberry";e.browser=g,d[g]=!0}if(d.safari&&d.playbook){var h="playbook";e.browser=h,d[h]=!0}if(d.bb){var i="blackberry";e.browser=i,d[i]=!0}if(d.opr){var j="opera";e.browser=j,d[j]=!0}if(d.safari&&d.android){var k="android";e.browser=k,d[k]=!0}if(d.safari&&d.kindle){var l="kindle";e.browser=l,d[l]=!0}if(d.safari&&d.silk){var m="silk";e.browser=m,d[m]=!0}return d.name=e.browser,d.platform=e.platform,d}return window.jQBrowser=b(window.navigator.userAgent),window.jQBrowser.uaMatch=b,a&&(a.browser=window.jQBrowser),window.jQBrowser});
\ No newline at end of file
+ * Date: 23-11-2015
+ */!function(a){"function"==typeof define&&define.amd?define(["jquery"],function(b){return a(b)}):"object"==typeof module&&"object"==typeof module.exports?module.exports=a(require("jquery")):a(window.jQuery)}(function(a){"use strict";function b(a){void 0===a&&(a=window.navigator.userAgent),a=a.toLowerCase();var b=/(edge)\/([\w.]+)/.exec(a)||/(opr)[\/]([\w.]+)/.exec(a)||/(chrome)[ \/]([\w.]+)/.exec(a)||/(iemobile)[\/]([\w.]+)/.exec(a)||/(version)(applewebkit)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+).*(version)[ \/]([\w.]+).*(safari)[ \/]([\w.]+)/.exec(a)||/(webkit)[ \/]([\w.]+)/.exec(a)||/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(a)||/(msie) ([\w.]+)/.exec(a)||a.indexOf("trident")>=0&&/(rv)(?::| )([\w.]+)/.exec(a)||a.indexOf("compatible")<0&&/(mozilla)(?:.*? rv:([\w.]+)|)/.exec(a)||[],c=/(ipad)/.exec(a)||/(ipod)/.exec(a)||/(windows phone)/.exec(a)||/(iphone)/.exec(a)||/(kindle)/.exec(a)||/(silk)/.exec(a)||/(android)/.exec(a)||/(win)/.exec(a)||/(mac)/.exec(a)||/(linux)/.exec(a)||/(cros)/.exec(a)||/(playbook)/.exec(a)||/(bb)/.exec(a)||/(blackberry)/.exec(a)||[],d={},e={browser:b[5]||b[3]||b[1]||"",version:b[2]||b[4]||"0",versionNumber:b[4]||b[2]||"0",platform:c[0]||""};if(e.browser&&(d[e.browser]=!0,d.version=e.version,d.versionNumber=parseInt(e.versionNumber,10)),e.platform&&(d[e.platform]=!0),(d.android||d.bb||d.blackberry||d.ipad||d.iphone||d.ipod||d.kindle||d.playbook||d.silk||d["windows phone"])&&(d.mobile=!0),(d.cros||d.mac||d.linux||d.win)&&(d.desktop=!0),(d.chrome||d.opr||d.safari)&&(d.webkit=!0),d.rv||d.iemobile){var f="msie";e.browser=f,d[f]=!0}if(d.edge){delete d.edge;var g="msedge";e.browser=g,d[g]=!0}if(d.safari&&d.blackberry){var h="blackberry";e.browser=h,d[h]=!0}if(d.safari&&d.playbook){var i="playbook";e.browser=i,d[i]=!0}if(d.bb){var j="blackberry";e.browser=j,d[j]=!0}if(d.opr){var k="opera";e.browser=k,d[k]=!0}if(d.safari&&d.android){var l="android";e.browser=l,d[l]=!0}if(d.safari&&d.kindle){var m="kindle";e.browser=m,d[m]=!0}if(d.safari&&d.silk){var n="silk";e.browser=n,d[n]=!0}return d.name=e.browser,d.platform=e.platform,d}return window.jQBrowser=b(window.navigator.userAgent),window.jQBrowser.uaMatch=b,a&&(a.browser=window.jQBrowser),window.jQBrowser});
\ No newline at end of file
diff --git a/package.json b/package.json
index d263ceb..421f8d5 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "jquery.browser",
- "version": "0.0.8",
+ "version": "0.1.0",
"authors": [
"Gabriel Cebrian ",
"jQuery Team "