Update version to 2.0.0-beta.1

This commit is contained in:
Faisal Salman 2023-10-02 15:11:31 +07:00
parent 5a0d9cc3d0
commit ac282df13e
12 changed files with 1028 additions and 699 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

1656
package-lock.json generated

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,6 @@
Package.describe({
name: 'faisalman:ua-parser-js',
version: '2.0.0-alpha.3',
version: '2.0.0-beta.1',
summary: 'Lightweight JavaScript-based user-agent string parser',
git: 'https://github.com/faisalman/ua-parser-js.git',
documentation: 'readme.md'

View File

@ -1,7 +1,7 @@
{
"title": "UAParser.js",
"name": "ua-parser-js",
"version": "2.0.0-alpha.3",
"version": "2.0.0-beta.1",
"author": "Faisal Salman <f@faisalman.com> (http://faisalman.com)",
"description": "Detect Browser, Engine, OS, CPU, and Device type/model from User-Agent & Client Hints data. Supports browser & node.js environment",
"keywords": [
@ -228,8 +228,8 @@
"test": "test"
},
"bugs": "https://github.com/faisalman/ua-parser-js/issues",
"demo": "https://faisalman.github.io/ua-parser-js",
"download": "https://raw.github.com/faisalman/ua-parser-js/master/dist/ua-parser.min.js",
"demo": "https://uaparser.js.org",
"download": "https://raw.github.com/faisalman/ua-parser-js/master/dist/ua-parser.pack.js",
"funding": [
{
"type": "opencollective",

View File

@ -1,5 +1,5 @@
///////////////////////////////////////////////
/* Enums for UAParser.js v2.0.0-beta
/* Enums for UAParser.js v2.0.0-beta.1
https://github.com/faisalman/ua-parser-js
Author: Faisal Salman <f@faisalman.com>
AGPLv3 License */

View File

@ -3,7 +3,7 @@
// Source: /src/enums/ua-parser-enums.js
///////////////////////////////////////////////
/* Enums for UAParser.js v2.0.0-beta
/* Enums for UAParser.js v2.0.0-beta.1
https://github.com/faisalman/ua-parser-js
Author: Faisal Salman <f@faisalman.com>
AGPLv3 License */

View File

@ -1,5 +1,5 @@
///////////////////////////////////////////////
/* Extensions for UAParser.js v2.0.0-beta
/* Extensions for UAParser.js v2.0.0-beta.1
https://github.com/faisalman/ua-parser-js
Author: Faisal Salman <f@faisalman.com>
AGPLv3 License */

View File

@ -3,7 +3,7 @@
// Source: /src/extensions/ua-parser-extensions.js
///////////////////////////////////////////////
/* Extensions for UAParser.js v2.0.0-beta
/* Extensions for UAParser.js v2.0.0-beta.1
https://github.com/faisalman/ua-parser-js
Author: Faisal Salman <f@faisalman.com>
AGPLv3 License */

View File

@ -1,4 +1,4 @@
// Type definitions for UAParser.js v2.0.0-beta
// Type definitions for UAParser.js v2.0.0-beta.1
// Project: https://github.com/faisalman/ua-parser-js
// Definitions by: Faisal Salman <https://github.com/faisalman>

View File

@ -1,5 +1,5 @@
/////////////////////////////////////////////////////////////////////////////////
/* UAParser.js v2.0.0-beta
/* UAParser.js v2.0.0-beta.1
Copyright © 2012-2023 Faisal Salman <f@faisalman.com>
AGPLv3 License *//*
Detect Browser, Engine, OS, CPU, and Device type/model from User-Agent data.
@ -20,7 +20,7 @@
/////////////
var LIBVERSION = '2.0.0-beta',
var LIBVERSION = '2.0.0-beta.1',
EMPTY = '',
UNKNOWN = '?',
FUNC_TYPE = 'function',

View File

@ -3,7 +3,7 @@
// Source: /src/main/ua-parser.js
/////////////////////////////////////////////////////////////////////////////////
/* UAParser.js v2.0.0-beta
/* UAParser.js v2.0.0-beta.1
Copyright © 2012-2023 Faisal Salman <f@faisalman.com>
AGPLv3 License *//*
Detect Browser, Engine, OS, CPU, and Device type/model from User-Agent data.
@ -22,7 +22,7 @@
/////////////
var LIBVERSION = '2.0.0-beta',
var LIBVERSION = '2.0.0-beta.1',
EMPTY = '',
UNKNOWN = '?',
FUNC_TYPE = 'function',
@ -131,10 +131,14 @@
itemListToArray = function (header) {
if (!header) return undefined;
var arr = [];
var tokens = strip(/\\?\"/g, header).split(', ');
var tokens = strip(/\\?\"/g, header).split(',');
for (var i = 0; i < tokens.length; i++) {
var token = tokens[i].split(';v=');
arr[i] = { brand : token[0], version : token[1] };
if (tokens[i].indexOf(';') > -1) {
var token = trim(tokens[i]).split(';v=');
arr[i] = { brand : token[0], version : token[1] };
} else {
arr[i] = tokens[i];
}
}
return arr;
},
@ -159,7 +163,7 @@
return str.replace(pattern, EMPTY);
},
stripQuotes = function (val) {
return typeof val === STR_TYPE ? strip(/\"/g, val) : val;
return typeof val === STR_TYPE ? strip(/\\?\"/g, val) : val;
},
trim = function (str, len) {
if (typeof(str) === STR_TYPE) {
@ -241,7 +245,7 @@
return (i === UNKNOWN) ? undefined : i;
}
}
return str;
return map.hasOwnProperty('*') ? map['*'] : str;
};
///////////////
@ -265,10 +269,11 @@
formFactorMap = {
'embedded' : 'Automotive',
'mobile' : 'Mobile',
'tablet' : 'Tablet',
'tablet' : ['Tablet', 'EInk'],
'smarttv' : 'TV',
'wearable' : ['VR', 'XR'],
'?' : 'Unknown'
'wearable' : ['VR', 'XR', 'Watch'],
'?' : ['Desktop', 'Unknown'],
'*' : undefined
};
//////////////
@ -949,7 +954,7 @@
[PLATFORM, stripQuotes(uach[CH_HEADER_PLATFORM])],
[PLATFORMVER, stripQuotes(uach[CH_HEADER_PLATFORM_VER])],
[ARCHITECTURE, stripQuotes(uach[CH_HEADER_ARCH])],
[FORMFACTOR, stripQuotes(uach[CH_HEADER_FORM_FACTOR])],
[FORMFACTOR, itemListToArray(uach[CH_HEADER_FORM_FACTOR])],
[BITNESS, stripQuotes(uach[CH_HEADER_BITNESS])]
]);
} else {
@ -1031,8 +1036,7 @@
};
this.parseCH = function () {
var ua = this.ua,
uaCH = this.uaCH,
var uaCH = this.uaCH,
rgxMap = this.rgxMap;
switch (this.itemType) {
@ -1065,7 +1069,16 @@
this.set(MODEL, uaCH[MODEL]);
}
if (uaCH[FORMFACTOR]) {
this.set(TYPE, strMapper(uaCH[FORMFACTOR], formFactorMap));
var ff;
if (typeof uaCH[FORMFACTOR] !== 'string') {
var idx = 0;
while (!ff && idx < uaCH[FORMFACTOR].length) {
ff = strMapper(uaCH[FORMFACTOR][idx++], formFactorMap);
}
} else {
ff = strMapper(uaCH[FORMFACTOR], formFactorMap);
}
this.set(TYPE, ff);
}
break;
case UA_OS: