{"version":3,"sources":["webpack:///./node_modules/detect-browser/index.js"],"names":["Object","defineProperty","exports","value","BrowserInfo","name","version","os","this","NodeInfo","process","platform","BotInfo","bot","REQUIRED_VERSION_PARTS","userAgentRules","operatingSystemRules","parseUserAgent","ua","matchedRule","reduce","matched","_a","browser","regex","uaMatch","exec","match","versionParts","split","slice","length","concat","count","output","ii","push","createVersionParts","join","detectOS","test","getNodeVersion","detect","userAgent","navigator"],"mappings":"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","file":"npm.detect-browser.ecf1ca8d63e3f5906c44.js","sourcesContent":["\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar BrowserInfo = /** @class */ (function () {\n function BrowserInfo(name, version, os) {\n this.name = name;\n this.version = version;\n this.os = os;\n }\n return BrowserInfo;\n}());\nexports.BrowserInfo = BrowserInfo;\nvar NodeInfo = /** @class */ (function () {\n function NodeInfo(version) {\n this.version = version;\n this.name = 'node';\n this.os = process.platform;\n }\n return NodeInfo;\n}());\nexports.NodeInfo = NodeInfo;\nvar BotInfo = /** @class */ (function () {\n function BotInfo() {\n this.bot = true; // NOTE: deprecated test name instead\n this.name = 'bot';\n this.version = null;\n this.os = null;\n }\n return BotInfo;\n}());\nexports.BotInfo = BotInfo;\n// tslint:disable-next-line:max-line-length\nvar SEARCHBOX_UA_REGEX = /alexa|bot|crawl(er|ing)|facebookexternalhit|feedburner|google web preview|nagios|postrank|pingdom|slurp|spider|yahoo!|yandex/;\nvar SEARCHBOT_OS_REGEX = /(nuhk)|(Googlebot)|(Yammybot)|(Openbot)|(Slurp)|(MSNBot)|(Ask Jeeves\\/Teoma)|(ia_archiver)/;\nvar REQUIRED_VERSION_PARTS = 3;\nvar userAgentRules = [\n ['aol', /AOLShield\\/([0-9\\._]+)/],\n ['edge', /Edge\\/([0-9\\._]+)/],\n ['yandexbrowser', /YaBrowser\\/([0-9\\._]+)/],\n ['vivaldi', /Vivaldi\\/([0-9\\.]+)/],\n ['kakaotalk', /KAKAOTALK\\s([0-9\\.]+)/],\n ['samsung', /SamsungBrowser\\/([0-9\\.]+)/],\n ['silk', /\\bSilk\\/([0-9._-]+)\\b/],\n ['miui', /MiuiBrowser\\/([0-9\\.]+)$/],\n ['beaker', /BeakerBrowser\\/([0-9\\.]+)/],\n ['edge-chromium', /Edg\\/([0-9\\.]+)/],\n ['chromium-webview', /(?!Chrom.*OPR)wv\\).*Chrom(?:e|ium)\\/([0-9\\.]+)(:?\\s|$)/],\n ['chrome', /(?!Chrom.*OPR)Chrom(?:e|ium)\\/([0-9\\.]+)(:?\\s|$)/],\n ['phantomjs', /PhantomJS\\/([0-9\\.]+)(:?\\s|$)/],\n ['crios', /CriOS\\/([0-9\\.]+)(:?\\s|$)/],\n ['firefox', /Firefox\\/([0-9\\.]+)(?:\\s|$)/],\n ['fxios', /FxiOS\\/([0-9\\.]+)/],\n ['opera-mini', /Opera Mini.*Version\\/([0-9\\.]+)/],\n ['opera', /Opera\\/([0-9\\.]+)(?:\\s|$)/],\n ['opera', /OPR\\/([0-9\\.]+)(:?\\s|$)/],\n ['ie', /Trident\\/7\\.0.*rv\\:([0-9\\.]+).*\\).*Gecko$/],\n ['ie', /MSIE\\s([0-9\\.]+);.*Trident\\/[4-7].0/],\n ['ie', /MSIE\\s(7\\.0)/],\n ['bb10', /BB10;\\sTouch.*Version\\/([0-9\\.]+)/],\n ['android', /Android\\s([0-9\\.]+)/],\n ['ios', /Version\\/([0-9\\._]+).*Mobile.*Safari.*/],\n ['safari', /Version\\/([0-9\\._]+).*Safari/],\n ['facebook', /FBAV\\/([0-9\\.]+)/],\n ['instagram', /Instagram\\s([0-9\\.]+)/],\n ['ios-webview', /AppleWebKit\\/([0-9\\.]+).*Mobile/],\n ['ios-webview', /AppleWebKit\\/([0-9\\.]+).*Gecko\\)$/],\n ['searchbot', SEARCHBOX_UA_REGEX],\n];\nvar operatingSystemRules = [\n ['iOS', /iP(hone|od|ad)/],\n ['Android OS', /Android/],\n ['BlackBerry OS', /BlackBerry|BB10/],\n ['Windows Mobile', /IEMobile/],\n ['Amazon OS', /Kindle/],\n ['Windows 3.11', /Win16/],\n ['Windows 95', /(Windows 95)|(Win95)|(Windows_95)/],\n ['Windows 98', /(Windows 98)|(Win98)/],\n ['Windows 2000', /(Windows NT 5.0)|(Windows 2000)/],\n ['Windows XP', /(Windows NT 5.1)|(Windows XP)/],\n ['Windows Server 2003', /(Windows NT 5.2)/],\n ['Windows Vista', /(Windows NT 6.0)/],\n ['Windows 7', /(Windows NT 6.1)/],\n ['Windows 8', /(Windows NT 6.2)/],\n ['Windows 8.1', /(Windows NT 6.3)/],\n ['Windows 10', /(Windows NT 10.0)/],\n ['Windows ME', /Windows ME/],\n ['Open BSD', /OpenBSD/],\n ['Sun OS', /SunOS/],\n ['Chrome OS', /CrOS/],\n ['Linux', /(Linux)|(X11)/],\n ['Mac OS', /(Mac_PowerPC)|(Macintosh)/],\n ['QNX', /QNX/],\n ['BeOS', /BeOS/],\n ['OS/2', /OS\\/2/],\n ['Search Bot', SEARCHBOT_OS_REGEX],\n];\nfunction detect(userAgent) {\n if (!!userAgent) {\n return parseUserAgent(userAgent);\n }\n if (typeof navigator !== 'undefined') {\n return parseUserAgent(navigator.userAgent);\n }\n return getNodeVersion();\n}\nexports.detect = detect;\nfunction parseUserAgent(ua) {\n // opted for using reduce here rather than Array#first with a regex.test call\n // this is primarily because using the reduce we only perform the regex\n // execution once rather than once for the test and for the exec again below\n // probably something that needs to be benchmarked though\n var matchedRule = ua !== '' &&\n userAgentRules.reduce(function (matched, _a) {\n var browser = _a[0], regex = _a[1];\n if (matched) {\n return matched;\n }\n var uaMatch = regex.exec(ua);\n return !!uaMatch && [browser, uaMatch];\n }, false);\n if (!matchedRule) {\n return null;\n }\n var name = matchedRule[0], match = matchedRule[1];\n if (name === 'searchbot') {\n return new BotInfo();\n }\n var versionParts = match[1] && match[1].split(/[._]/).slice(0, 3);\n if (versionParts) {\n if (versionParts.length < REQUIRED_VERSION_PARTS) {\n versionParts = versionParts.concat(createVersionParts(REQUIRED_VERSION_PARTS - versionParts.length));\n }\n }\n else {\n versionParts = [];\n }\n return new BrowserInfo(name, versionParts.join('.'), detectOS(ua));\n}\nexports.parseUserAgent = parseUserAgent;\nfunction detectOS(ua) {\n for (var ii = 0, count = operatingSystemRules.length; ii < count; ii++) {\n var _a = operatingSystemRules[ii], os = _a[0], regex = _a[1];\n var match = regex.test(ua);\n if (match) {\n return os;\n }\n }\n return null;\n}\nexports.detectOS = detectOS;\nfunction getNodeVersion() {\n var isNode = typeof process !== 'undefined' && process.version;\n return isNode ? new NodeInfo(process.version.slice(1)) : null;\n}\nexports.getNodeVersion = getNodeVersion;\nfunction createVersionParts(count) {\n var output = [];\n for (var ii = 0; ii < count; ii++) {\n output.push('0');\n }\n return output;\n}\n"],"sourceRoot":""}