mirror of
https://github.com/faisalman/ua-parser-js.git
synced 2025-09-27 16:08:47 +03:00
commit
aeae29be66
@ -212,6 +212,12 @@ requirejs(['ua-parser-js'], function(UAParser) {
|
|||||||
});
|
});
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Using CDN
|
||||||
|
|
||||||
|
```html
|
||||||
|
<script src="https://cdn.jsdelivr.net/npm/ua-parser-js@0/dist/ua-parser.min.js"></script>
|
||||||
|
```
|
||||||
|
|
||||||
## Using bower
|
## Using bower
|
||||||
|
|
||||||
```sh
|
```sh
|
||||||
|
@ -876,7 +876,7 @@
|
|||||||
/////////////////
|
/////////////////
|
||||||
// Constructor
|
// Constructor
|
||||||
////////////////
|
////////////////
|
||||||
|
/*
|
||||||
var Browser = function (name, version) {
|
var Browser = function (name, version) {
|
||||||
this[NAME] = name;
|
this[NAME] = name;
|
||||||
this[VERSION] = version;
|
this[VERSION] = version;
|
||||||
@ -891,7 +891,7 @@
|
|||||||
};
|
};
|
||||||
var Engine = Browser;
|
var Engine = Browser;
|
||||||
var OS = Browser;
|
var OS = Browser;
|
||||||
|
*/
|
||||||
var UAParser = function (uastring, extensions) {
|
var UAParser = function (uastring, extensions) {
|
||||||
|
|
||||||
if (typeof uastring === 'object') {
|
if (typeof uastring === 'object') {
|
||||||
@ -905,30 +905,35 @@
|
|||||||
|
|
||||||
var ua = uastring || ((window && window.navigator && window.navigator.userAgent) ? window.navigator.userAgent : EMPTY);
|
var ua = uastring || ((window && window.navigator && window.navigator.userAgent) ? window.navigator.userAgent : EMPTY);
|
||||||
var rgxmap = extensions ? util.extend(regexes, extensions) : regexes;
|
var rgxmap = extensions ? util.extend(regexes, extensions) : regexes;
|
||||||
var browser = new Browser();
|
//var browser = new Browser();
|
||||||
var cpu = new CPU();
|
//var cpu = new CPU();
|
||||||
var device = new Device();
|
//var device = new Device();
|
||||||
var engine = new Engine();
|
//var engine = new Engine();
|
||||||
var os = new OS();
|
//var os = new OS();
|
||||||
|
|
||||||
this.getBrowser = function () {
|
this.getBrowser = function () {
|
||||||
|
var browser = { name: undefined, version: undefined };
|
||||||
mapper.rgx.call(browser, ua, rgxmap.browser);
|
mapper.rgx.call(browser, ua, rgxmap.browser);
|
||||||
browser.major = util.major(browser.version); // deprecated
|
browser.major = util.major(browser.version); // deprecated
|
||||||
return browser;
|
return browser;
|
||||||
};
|
};
|
||||||
this.getCPU = function () {
|
this.getCPU = function () {
|
||||||
|
var cpu = { architecture: undefined };
|
||||||
mapper.rgx.call(cpu, ua, rgxmap.cpu);
|
mapper.rgx.call(cpu, ua, rgxmap.cpu);
|
||||||
return cpu;
|
return cpu;
|
||||||
};
|
};
|
||||||
this.getDevice = function () {
|
this.getDevice = function () {
|
||||||
|
var device = { vendor: undefined, model: undefined, type: undefined };
|
||||||
mapper.rgx.call(device, ua, rgxmap.device);
|
mapper.rgx.call(device, ua, rgxmap.device);
|
||||||
return device;
|
return device;
|
||||||
};
|
};
|
||||||
this.getEngine = function () {
|
this.getEngine = function () {
|
||||||
|
var engine = { name: undefined, version: undefined };
|
||||||
mapper.rgx.call(engine, ua, rgxmap.engine);
|
mapper.rgx.call(engine, ua, rgxmap.engine);
|
||||||
return engine;
|
return engine;
|
||||||
};
|
};
|
||||||
this.getOS = function () {
|
this.getOS = function () {
|
||||||
|
var os = { name: undefined, version: undefined };
|
||||||
mapper.rgx.call(os, ua, rgxmap.os);
|
mapper.rgx.call(os, ua, rgxmap.os);
|
||||||
return os;
|
return os;
|
||||||
};
|
};
|
||||||
@ -947,11 +952,11 @@
|
|||||||
};
|
};
|
||||||
this.setUA = function (uastring) {
|
this.setUA = function (uastring) {
|
||||||
ua = uastring;
|
ua = uastring;
|
||||||
browser = new Browser();
|
//browser = new Browser();
|
||||||
cpu = new CPU();
|
//cpu = new CPU();
|
||||||
device = new Device();
|
//device = new Device();
|
||||||
engine = new Engine();
|
//engine = new Engine();
|
||||||
os = new OS();
|
//os = new OS();
|
||||||
return this;
|
return this;
|
||||||
};
|
};
|
||||||
return this;
|
return this;
|
||||||
|
15
test/test.js
15
test/test.js
@ -65,6 +65,21 @@ for (var i in methods) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
describe('Returns', function () {
|
||||||
|
it('getResult() should returns JSON', function(done) {
|
||||||
|
assert.deepEqual(new UAParser('').getResult(),
|
||||||
|
{
|
||||||
|
ua : '',
|
||||||
|
browser: { name: undefined, version: undefined, major: undefined },
|
||||||
|
cpu: { architecture: undefined },
|
||||||
|
device: { vendor: undefined, model: undefined, type: undefined },
|
||||||
|
engine: { name: undefined, version: undefined},
|
||||||
|
os: { name: undefined, version: undefined }
|
||||||
|
});
|
||||||
|
done();
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
describe('Extending Regex', function () {
|
describe('Extending Regex', function () {
|
||||||
var uaString = 'Mozilla/5.0 MyOwnBrowser/1.3';
|
var uaString = 'Mozilla/5.0 MyOwnBrowser/1.3';
|
||||||
var myOwnBrowser = [[/(myownbrowser)\/((\d+)?[\w\.]+)/i], [UAParser.BROWSER.NAME, UAParser.BROWSER.VERSION, UAParser.BROWSER.MAJOR]];
|
var myOwnBrowser = [[/(myownbrowser)\/((\d+)?[\w\.]+)/i], [UAParser.BROWSER.NAME, UAParser.BROWSER.VERSION, UAParser.BROWSER.MAJOR]];
|
||||||
|
Loading…
x
Reference in New Issue
Block a user