mirror of
https://github.com/lancedikson/bowser
synced 2024-10-27 20:34:22 +00:00
Merge branch '2.4.0' into production
This commit is contained in:
commit
5a6dcc2899
@ -7,6 +7,7 @@ rules:
|
|||||||
- 'error'
|
- 'error'
|
||||||
- 'ignorePackages'
|
- 'ignorePackages'
|
||||||
- {js: 'always'}
|
- {js: 'always'}
|
||||||
|
import/prefer-default-export: 1
|
||||||
|
|
||||||
plugins:
|
plugins:
|
||||||
- ava
|
- ava
|
||||||
|
@ -1,5 +1,11 @@
|
|||||||
# Bowser Changelog
|
# Bowser Changelog
|
||||||
|
|
||||||
|
### 2.4.0 (May 3, 2019)
|
||||||
|
- [FIX] Update regexp for generic browsers (#310)
|
||||||
|
- [FIX] Fix issues with module.exports (#318)
|
||||||
|
- [FIX] Update devDependencies (#316, #321, #322)
|
||||||
|
- [FIX] Fix docs (#320)
|
||||||
|
|
||||||
### 2.3.0 (April 14, 2019)
|
### 2.3.0 (April 14, 2019)
|
||||||
- [ADD] Add support for Blink-based MS Edge (#311)
|
- [ADD] Add support for Blink-based MS Edge (#311)
|
||||||
- [ADD] Add more types for TS (#289)
|
- [ADD] Add more types for TS (#289)
|
||||||
|
@ -572,7 +572,7 @@ const result = parser.getResult();</code></pre>
|
|||||||
<br class="clear">
|
<br class="clear">
|
||||||
|
|
||||||
<footer>
|
<footer>
|
||||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sun Apr 14 2019 13:45:42 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Fri May 03 2019 21:50:23 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
<script>prettyPrint();</script>
|
<script>prettyPrint();</script>
|
||||||
|
@ -2566,7 +2566,7 @@ the OS called "anything" or the platform called "anything"</
|
|||||||
|
|
||||||
<h5>Example</h5>
|
<h5>Example</h5>
|
||||||
|
|
||||||
<pre class="prettyprint"><code>const browser = new Bowser(UA);
|
<pre class="prettyprint"><code>const browser = Bowser.getParser(window.navigator.userAgent);
|
||||||
if (browser.satisfies({chrome: '>118.01.1322' }))
|
if (browser.satisfies({chrome: '>118.01.1322' }))
|
||||||
// or with os
|
// or with os
|
||||||
if (browser.satisfies({windows: { chrome: '>118.01.1322' } }))
|
if (browser.satisfies({windows: { chrome: '>118.01.1322' } }))
|
||||||
@ -2989,7 +2989,7 @@ Returns <code>undefined</code> when the browser is no described in the checkTree
|
|||||||
<br class="clear">
|
<br class="clear">
|
||||||
|
|
||||||
<footer>
|
<footer>
|
||||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sun Apr 14 2019 13:45:42 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Fri May 03 2019 21:50:23 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
<script>prettyPrint();</script>
|
<script>prettyPrint();</script>
|
||||||
|
@ -105,7 +105,7 @@ export default Bowser;
|
|||||||
<br class="clear">
|
<br class="clear">
|
||||||
|
|
||||||
<footer>
|
<footer>
|
||||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sun Apr 14 2019 13:45:42 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Fri May 03 2019 21:50:23 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
<script>prettyPrint();</script>
|
<script>prettyPrint();</script>
|
||||||
|
@ -1995,7 +1995,7 @@ like <code>"iPhone"</code> or <code>"Kindle Fire HD 7"</code
|
|||||||
<br class="clear">
|
<br class="clear">
|
||||||
|
|
||||||
<footer>
|
<footer>
|
||||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sun Apr 14 2019 13:45:42 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Fri May 03 2019 21:50:23 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
<script>prettyPrint();</script>
|
<script>prettyPrint();</script>
|
||||||
|
@ -157,7 +157,7 @@ list of aliases can be found in <a href="src/constants.js">the file</a>.</p>
|
|||||||
<br class="clear">
|
<br class="clear">
|
||||||
|
|
||||||
<footer>
|
<footer>
|
||||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sun Apr 14 2019 13:45:42 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Fri May 03 2019 21:50:23 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
<script>prettyPrint();</script>
|
<script>prettyPrint();</script>
|
||||||
|
@ -385,7 +385,7 @@ class Parser {
|
|||||||
* Returns `undefined` when the browser is no described in the checkTree object.
|
* Returns `undefined` when the browser is no described in the checkTree object.
|
||||||
*
|
*
|
||||||
* @example
|
* @example
|
||||||
* const browser = new Bowser(UA);
|
* const browser = Bowser.getParser(window.navigator.userAgent);
|
||||||
* if (browser.satisfies({chrome: '>118.01.1322' }))
|
* if (browser.satisfies({chrome: '>118.01.1322' }))
|
||||||
* // or with os
|
* // or with os
|
||||||
* if (browser.satisfies({windows: { chrome: '>118.01.1322' } }))
|
* if (browser.satisfies({windows: { chrome: '>118.01.1322' } }))
|
||||||
@ -546,7 +546,7 @@ export default Parser;
|
|||||||
<br class="clear">
|
<br class="clear">
|
||||||
|
|
||||||
<footer>
|
<footer>
|
||||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sun Apr 14 2019 13:45:42 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Fri May 03 2019 21:50:23 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
<script>prettyPrint();</script>
|
<script>prettyPrint();</script>
|
||||||
|
@ -260,7 +260,7 @@ export default class Utils {
|
|||||||
<br class="clear">
|
<br class="clear">
|
||||||
|
|
||||||
<footer>
|
<footer>
|
||||||
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Sun Apr 14 2019 13:45:42 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
Documentation generated by <a href="https://github.com/jsdoc3/jsdoc">JSDoc 3.5.5</a> on Fri May 03 2019 21:50:23 GMT+0300 (EEST) using the <a href="https://github.com/clenemt/docdash">docdash</a> theme.
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
<script>prettyPrint();</script>
|
<script>prettyPrint();</script>
|
||||||
|
2577
package-lock.json
generated
2577
package-lock.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "bowser",
|
"name": "bowser",
|
||||||
"version": "2.3.0",
|
"version": "2.4.0",
|
||||||
"description": "Lightweight browser detector",
|
"description": "Lightweight browser detector",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"browser",
|
"browser",
|
||||||
@ -34,17 +34,17 @@
|
|||||||
"ava": "^1.4.1",
|
"ava": "^1.4.1",
|
||||||
"babel-eslint": "^10.0.1",
|
"babel-eslint": "^10.0.1",
|
||||||
"babel-loader": "^8.0.5",
|
"babel-loader": "^8.0.5",
|
||||||
"babel-plugin-add-module-exports": "^1.0.0",
|
"babel-plugin-add-module-exports": "^1.0.2",
|
||||||
"babel-plugin-istanbul": "^5.1.1",
|
"babel-plugin-istanbul": "^5.1.1",
|
||||||
"coveralls": "^3.0.2",
|
"coveralls": "^3.0.2",
|
||||||
"docdash": "^1.0.0",
|
"docdash": "^1.0.0",
|
||||||
"eslint": "^5.16.0",
|
"eslint": "^5.16.0",
|
||||||
"eslint-config-airbnb-base": "^13.1.0",
|
"eslint-config-airbnb-base": "^13.1.0",
|
||||||
"eslint-plugin-ava": "^6.0.0",
|
"eslint-plugin-ava": "^6.0.0",
|
||||||
"eslint-plugin-import": "^2.14.0",
|
"eslint-plugin-import": "^2.17.2",
|
||||||
"gh-pages": "^2.0.1",
|
"gh-pages": "^2.0.1",
|
||||||
"jsdoc": "^3.5.5",
|
"jsdoc": "^3.5.5",
|
||||||
"nyc": "^13.3.0",
|
"nyc": "^14.0.0",
|
||||||
"sinon": "^7.2.4",
|
"sinon": "^7.2.4",
|
||||||
"testem": "^2.15.1",
|
"testem": "^2.15.1",
|
||||||
"webpack": "^4.28.4",
|
"webpack": "^4.28.4",
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
// NOTE: this list must be up-to-date with browsers listed in
|
// NOTE: this list must be up-to-date with browsers listed in
|
||||||
// test/acceptance/useragentstrings.yml
|
// test/acceptance/useragentstrings.yml
|
||||||
const BROWSER_ALIASES_MAP = {
|
export const BROWSER_ALIASES_MAP = {
|
||||||
'Amazon Silk': 'amazon_silk',
|
'Amazon Silk': 'amazon_silk',
|
||||||
'Android Browser': 'android',
|
'Android Browser': 'android',
|
||||||
Bada: 'bada',
|
Bada: 'bada',
|
||||||
@ -36,7 +36,3 @@ const BROWSER_ALIASES_MAP = {
|
|||||||
WeChat: 'wechat',
|
WeChat: 'wechat',
|
||||||
'Yandex Browser': 'yandex',
|
'Yandex Browser': 'yandex',
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = {
|
|
||||||
BROWSER_ALIASES_MAP,
|
|
||||||
};
|
|
||||||
|
@ -606,9 +606,17 @@ const browsersList = [
|
|||||||
{
|
{
|
||||||
test: [/.*/i],
|
test: [/.*/i],
|
||||||
describe(ua) {
|
describe(ua) {
|
||||||
|
/* Here we try to make sure that there are explicit details about the device
|
||||||
|
* in order to decide what regexp exactly we want to apply
|
||||||
|
* (as there is a specific decision based on that conclusion)
|
||||||
|
*/
|
||||||
|
const regexpWithoutDeviceSpec = /^(.*)\/(.*) /;
|
||||||
|
const regexpWithDeviceSpec = /^(.*)\/(.*)[ \t]\((.*)/;
|
||||||
|
const hasDeviceSpec = ua.search('\\(') !== -1;
|
||||||
|
const regexp = hasDeviceSpec ? regexpWithDeviceSpec : regexpWithoutDeviceSpec;
|
||||||
return {
|
return {
|
||||||
name: Utils.getFirstMatch(/^(.*)\/(.*) /, ua),
|
name: Utils.getFirstMatch(regexp, ua),
|
||||||
version: Utils.getSecondMatch(/^(.*)\/(.*) /, ua),
|
version: Utils.getSecondMatch(regexp, ua),
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
@ -342,7 +342,7 @@ class Parser {
|
|||||||
* Returns `undefined` when the browser is no described in the checkTree object.
|
* Returns `undefined` when the browser is no described in the checkTree object.
|
||||||
*
|
*
|
||||||
* @example
|
* @example
|
||||||
* const browser = new Bowser(UA);
|
* const browser = Bowser.getParser(window.navigator.userAgent);
|
||||||
* if (browser.satisfies({chrome: '>118.01.1322' }))
|
* if (browser.satisfies({chrome: '>118.01.1322' }))
|
||||||
* // or with os
|
* // or with os
|
||||||
* if (browser.satisfies({windows: { chrome: '>118.01.1322' } }))
|
* if (browser.satisfies({windows: { chrome: '>118.01.1322' } }))
|
||||||
|
@ -2269,6 +2269,19 @@
|
|||||||
os: {}
|
os: {}
|
||||||
platform: {}
|
platform: {}
|
||||||
engine: {}
|
engine: {}
|
||||||
|
-
|
||||||
|
ua: "Generic/2.15 (Macintosh; Intel Mac OS X 10_6_8)"
|
||||||
|
spec:
|
||||||
|
browser:
|
||||||
|
name: "Generic"
|
||||||
|
version: "2.15"
|
||||||
|
os:
|
||||||
|
name: "macOS"
|
||||||
|
version: "10.6.8"
|
||||||
|
platform:
|
||||||
|
type: "desktop"
|
||||||
|
vendor: "Apple"
|
||||||
|
engine: {}
|
||||||
Googlebot:
|
Googlebot:
|
||||||
-
|
-
|
||||||
ua: "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
|
ua: "Mozilla/5.0 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
|
||||||
|
Loading…
Reference in New Issue
Block a user