UNPKG

@genexus/web-standard-functions

Version:

GeneXus JavaScript standard functions library for web generators

48 lines 2.18 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.BrowserIdValues = void 0; exports.browserIdFromAgent = browserIdFromAgent; /** * Returns the browser Id and version from the user agent string * @param userAgent */ function browserIdFromAgent(userAgent) { if (!userAgent) { return { id: BrowserIdValues.UnknownAgent, version: "" }; } for (const brMatcher of browserMatchers) { let matches = userAgent.match(brMatcher.regExp); if (matches !== null) { return { id: brMatcher.browserId, version: matches[1] }; } } return { id: BrowserIdValues.UnknownAgent, version: "" }; } var BrowserIdValues; (function (BrowserIdValues) { BrowserIdValues[BrowserIdValues["UnknownAgent"] = 0] = "UnknownAgent"; BrowserIdValues[BrowserIdValues["InternetExplorer"] = 1] = "InternetExplorer"; BrowserIdValues[BrowserIdValues["Netscape"] = 2] = "Netscape"; BrowserIdValues[BrowserIdValues["Opera"] = 3] = "Opera"; BrowserIdValues[BrowserIdValues["MozillaFirefox"] = 6] = "MozillaFirefox"; BrowserIdValues[BrowserIdValues["Chrome"] = 7] = "Chrome"; BrowserIdValues[BrowserIdValues["Safari"] = 8] = "Safari"; BrowserIdValues[BrowserIdValues["Edge"] = 9] = "Edge"; })(BrowserIdValues || (exports.BrowserIdValues = BrowserIdValues = {})); const msieRegEx = /msie\/([0-9\.]+)/i; const edgeRegEx = /edge\/([0-9\.]+)/i; const chromeRegEx = /chrome\/([0-9\.]+)/i; const safariRegEx = /safari\/([0-9\.]+)/i; const operaRegEx = /opera\/([0-9\.]+)/i; const firefoxRegEx = /firefox\/([0-9\.]+)/i; const netscapeRegEx = /netscape\/([0-9\.]+)/i; const browserMatchers = [ { regExp: msieRegEx, browserId: BrowserIdValues.InternetExplorer }, { regExp: edgeRegEx, browserId: BrowserIdValues.Edge }, { regExp: chromeRegEx, browserId: BrowserIdValues.Chrome }, { regExp: safariRegEx, browserId: BrowserIdValues.Safari }, { regExp: operaRegEx, browserId: BrowserIdValues.Opera }, { regExp: firefoxRegEx, browserId: BrowserIdValues.MozillaFirefox }, { regExp: netscapeRegEx, browserId: BrowserIdValues.Netscape } ]; //# sourceMappingURL=browserCommon.js.map