@alitu/user-agents-v2-api
Advanced tools
Comparing version 0.2.2 to 0.2.3
@@ -57,3 +57,3 @@ "use strict"; | ||
// Attempt to lookup referrers if possible | ||
if (userAgentMatch.type === 'browsers' && referrer) { | ||
if ((userAgentMatch === null || userAgentMatch === void 0 ? void 0 : userAgentMatch.type) === 'browsers' && referrer) { | ||
for (var _b = 0, _c = user_agents_v2_1.default.referrers; _b < _c.length; _b++) { | ||
@@ -60,0 +60,0 @@ var entry = _c[_b]; |
@@ -6,24 +6,28 @@ "use strict"; | ||
var entry = (0, _1.default)('Mozilla/5.0 (compatible; HubSpot Crawler; +https://www.hubspot.com)'); | ||
expect(entry.name === 'HubSpot Crawler'); | ||
expect((entry === null || entry === void 0 ? void 0 : entry.name) === 'HubSpot Crawler'); | ||
}); | ||
test('identifies apps', function () { | ||
var entry = (0, _1.default)('Overcast/3.0 (+http://overcast.fm/; iOS podcast app)'); | ||
expect(entry.name).toBe('Overcast'); | ||
expect(entry === null || entry === void 0 ? void 0 : entry.name).toBe('Overcast'); | ||
}); | ||
test('identifies libraries', function () { | ||
var entry = (0, _1.default)('AppleCoreMedia/1.0.0.16G114 (iPod touch; U; CPU OS 12_4_2 like Mac OS X; en_us)'); | ||
expect(entry.name).toBe('AppleCoreMedia'); | ||
expect(entry === null || entry === void 0 ? void 0 : entry.name).toBe('AppleCoreMedia'); | ||
}); | ||
test('identifies bot libraries', function () { | ||
var entry = (0, _1.default)('Apache-HttpClient/4.5.3-SNAPSHOT (Java/1.8.0_73)'); | ||
expect(entry.name).toBe('Apache HttpClient'); | ||
expect(entry.category).toBe('bot'); | ||
expect(entry === null || entry === void 0 ? void 0 : entry.name).toBe('Apache HttpClient'); | ||
expect(entry === null || entry === void 0 ? void 0 : entry.category).toBe('bot'); | ||
}); | ||
test('identifies browsers', function () { | ||
var entry = (0, _1.default)('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36'); | ||
expect(entry.name).toBe('Chrome'); | ||
expect(entry === null || entry === void 0 ? void 0 : entry.name).toBe('Chrome'); | ||
}); | ||
test('identifies web apps by referrers', function () { | ||
var entry = (0, _1.default)('Mozilla/5.0 (Macintosh; Intel Mac OS X 10_10_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/54.0.2840.71 Safari/537.36', 'https://podcasts.apple.com/us/podcast/xya/id12341'); | ||
expect(entry.name).toBe('Apple Podcasts'); | ||
expect(entry === null || entry === void 0 ? void 0 : entry.name).toBe('Apple Podcasts'); | ||
}); | ||
test('returns undefined when not found', function () { | ||
var entry = (0, _1.default)('Mozilla/5.0 (Toaster; Kitchen Appliances; CrumbOS 3.2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36 BreadBrowse/1.0', 'https://www.smartkitchen.com/recipes/perfect-toast-browser-edition'); | ||
expect(entry).toBeUndefined(); | ||
}); |
{ | ||
"name": "@alitu/user-agents-v2-api", | ||
"version": "0.2.2", | ||
"version": "0.2.3", | ||
"description": "API for identifying User-Agent strings using OPAWG's user-agents-v2 lists.", | ||
@@ -5,0 +5,0 @@ "main": "dist/index.js", |
254378
6981