{"version":3,"file":"browser-detect.umd.js","sources":["../src/definitions.ts","../src/regexp.ts","../src/detector.ts","../node_modules/core-js/modules/_global.js","../node_modules/core-js/modules/_core.js","../node_modules/core-js/modules/_is-object.js","../node_modules/core-js/modules/_an-object.js","../node_modules/core-js/modules/_fails.js","../node_modules/core-js/modules/_descriptors.js","../node_modules/core-js/modules/_dom-create.js","../node_modules/core-js/modules/_ie8-dom-define.js","../node_modules/core-js/modules/_to-primitive.js","../node_modules/core-js/modules/_object-dp.js","../node_modules/core-js/modules/_property-desc.js","../node_modules/core-js/modules/_hide.js","../node_modules/core-js/modules/_has.js","../node_modules/core-js/modules/_uid.js","../node_modules/core-js/modules/_redefine.js","../node_modules/core-js/modules/_a-function.js","../node_modules/core-js/modules/_ctx.js","../node_modules/core-js/modules/_export.js","../node_modules/core-js/modules/_cof.js","../node_modules/core-js/modules/_iobject.js","../node_modules/core-js/modules/_defined.js","../node_modules/core-js/modules/_to-object.js","../node_modules/core-js/modules/_to-integer.js","../node_modules/core-js/modules/_to-length.js","../node_modules/core-js/modules/_is-array.js","../node_modules/core-js/modules/_shared.js","../node_modules/core-js/modules/_wks.js","../node_modules/core-js/modules/_array-species-constructor.js","../node_modules/core-js/modules/_array-species-create.js","../node_modules/core-js/modules/_array-methods.js","../node_modules/core-js/modules/_strict-method.js","../node_modules/core-js/modules/es6.array.filter.js","../node_modules/core-js/fn/array/filter.js","../node_modules/core-js/modules/es6.array.map.js","../node_modules/core-js/fn/array/map.js","../node_modules/core-js/modules/_string-ws.js","../node_modules/core-js/modules/_string-trim.js","../node_modules/core-js/modules/es6.string.trim.js","../node_modules/core-js/fn/string/trim.js","../src/browser-detect.ts"],"sourcesContent":["import { BrowserDefinition, OsDefinition, OsVersion } from './browser-detect.interface';\r\n\r\nexport const browsers: BrowserDefinition[] = [\r\n ['firefox', /Firefox\\/([0-9\\.]+)(?:\\s|$)/],\r\n ['opera', /Opera\\/([0-9\\.]+)(?:\\s|$)/],\r\n ['opera', /OPR\\/([0-9\\.]+)(:?\\s|$)$/],\r\n ['edge', /Edge\\/([0-9\\._]+)/],\r\n ['ie', /Trident\\/7\\.0.*rv\\:([0-9\\.]+)\\).*Gecko$/],\r\n ['ie', /MSIE\\s([0-9\\.]+);.*Trident\\/[4-7].0/],\r\n ['ie', /MSIE\\s(7\\.0)/],\r\n ['safari', /Version\\/([0-9\\._]+).*Safari/],\r\n ['chrome', /(?!Chrom.*OPR)Chrom(?:e|ium)\\/([0-9\\.]+)(:?\\s|$)/],\r\n ['bb10', /BB10;\\sTouch.*Version\\/([0-9\\.]+)/],\r\n ['android', /Android\\s([0-9\\.]+)/],\r\n ['ios', /Version\\/([0-9\\._]+).*Mobile.*Safari.*/],\r\n ['yandexbrowser', /YaBrowser\\/([0-9\\._]+)/],\r\n ['crios', /CriOS\\/([0-9\\.]+)(:?\\s|$)/]\r\n];\r\n\r\nexport const os: OsDefinition[] = [\r\n 'Windows Phone',\r\n 'Android',\r\n 'CentOS',\r\n { name: 'Chrome OS', pattern: 'CrOS' },\r\n 'Debian',\r\n 'Fedora',\r\n 'FreeBSD',\r\n 'Gentoo',\r\n 'Haiku',\r\n 'Kubuntu',\r\n 'Linux Mint',\r\n 'OpenBSD',\r\n 'Red Hat',\r\n 'SuSE',\r\n 'Ubuntu',\r\n 'Xubuntu',\r\n 'Cygwin',\r\n 'Symbian OS',\r\n 'hpwOS',\r\n 'webOS ',\r\n 'webOS',\r\n 'Tablet OS',\r\n 'Tizen',\r\n 'Linux',\r\n 'Mac OS X',\r\n 'Macintosh',\r\n 'Mac',\r\n 'Windows 98;',\r\n 'Windows '\r\n];\r\n\r\nexport const osVersions: OsVersion = {\r\n '10.0': '10',\r\n '6.4': '10 Technical Preview',\r\n '6.3': '8.1',\r\n '6.2': '8',\r\n '6.1': 'Server 2008 R2 / 7',\r\n '6.0': 'Server 2008 / Vista',\r\n '5.2': 'Server 2003 / XP 64-bit',\r\n '5.1': 'XP',\r\n '5.01': '2000 SP1',\r\n '5.0': '2000',\r\n '4.0': 'NT',\r\n '4.90': 'ME'\r\n};\r\n","export const mobileRegExp =\r\n new RegExp(\r\n ['(android|bb\\\\d+|meego).+mobile|avantgo|bada\\\\/|blackberry|blazer|',\r\n 'compal|elaine|fennec|hiptop|iemobile|ip(hone|od|ad)|iris|kindle|lge |maemo|',\r\n 'midp|mmp|mobile.+firefox|netfront|opera m(ob|in)i|palm( os)?|phone|p(ixi|re)',\r\n '\\\\/|plucker|pocket|psp|series(4|6)0|symbian|treo|up\\\\.(browser|link)|vodafone|',\r\n 'wap|windows ce|xda|xiino'].join(''),\r\n 'i'\r\n );\r\n\r\nexport const mobilePrefixRegExp =\r\n new RegExp(\r\n ['1207|6310|6590|3gso|4thp|50[1-6]i|770s|802s|a wa|abac|ac(er|oo|s\\\\-)|',\r\n 'ai(ko|rn)|al(av|ca|co)|amoi|an(ex|ny|yw)|aptu|ar(ch|go)|as(te|us)|attw|au(di|\\\\-m|r |s )|',\r\n 'avan|be(ck|ll|nq)|bi(lb|rd)|bl(ac|az)|br(e|v)w|bumb|bw\\\\-(n|u)|c55\\\\/|capi|ccwa|cdm\\\\-|',\r\n 'cell|chtm|cldc|cmd\\\\-|co(mp|nd)|craw|da(it|ll|ng)|dbte|dc\\\\-s|devi|dica|dmob|do(c|p)o|',\r\n 'ds(12|\\\\-d)|el(49|ai)|em(l2|ul)|er(ic|k0)|esl8|ez([4-7]0|os|wa|ze)|fetc|fly(\\\\-|_)|',\r\n 'g1 u|g560|gene|gf\\\\-5|g\\\\-mo|go(\\\\.w|od)|gr(ad|un)|haie|hcit|hd\\\\-(m|p|t)|hei\\\\-|',\r\n 'hi(pt|ta)|hp( i|ip)|hs\\\\-c|ht(c(\\\\-| |_|a|g|p|s|t)|tp)|hu(aw|tc)|i\\\\-(20|go|ma)|',\r\n 'i230|iac( |\\\\-|\\\\/)|ibro|idea|ig01|ikom|im1k|inno|ipaq|iris|ja(t|v)a|jbro|jemu|jigs|',\r\n 'kddi|keji|kgt( |\\\\/)|klon|kpt |kwc\\\\-|kyo(c|k)|le(no|xi)|lg( g|\\\\/(k|l|u)|50|54|\\\\-[a-w])',\r\n '|libw|lynx|m1\\\\-w|m3ga|m50\\\\/|ma(te|ui|xo)|mc(01|21|ca)|m\\\\-cr|me(rc|ri)|mi(o8|oa|ts)|',\r\n 'mmef|mo(01|02|bi|de|do|t(\\\\-| |o|v)|zz)|mt(50|p1|v )|mwbp|mywa|n10[0-2]|n20[2-3]|',\r\n 'n30(0|2)|n50(0|2|5)|n7(0(0|1)|10)|ne((c|m)\\\\-|on|tf|wf|wg|wt)|nok(6|i)|nzph|o2im|',\r\n 'op(ti|wv)|oran|owg1|p800|pan(a|d|t)|pdxg|pg(13|\\\\-([1-8]|c))|phil|pire|pl(ay|uc)|pn\\\\-2|',\r\n 'po(ck|rt|se)|prox|psio|pt\\\\-g|qa\\\\-a|qc(07|12|21|32|60|\\\\-[2-7]|i\\\\-)|qtek|r380|r600|',\r\n 'raks|rim9|ro(ve|zo)|s55\\\\/|sa(ge|ma|mm|ms|ny|va)|sc(01|h\\\\-|oo|p\\\\-)|sdk\\\\/|',\r\n 'se(c(\\\\-|0|1)|47|mc|nd|ri)|sgh\\\\-|shar|sie(\\\\-|m)|k\\\\-0|sl(45|id)|sm(al|ar|b3|it|t5)|',\r\n 'so(ft|ny)|sp(01|h\\\\-|v\\\\-|v )|sy(01|mb)|t2(18|50)|t6(00|10|18)|ta(gt|lk)|tcl\\\\-|tdg\\\\-|',\r\n 'tel(i|m)|tim\\\\-|t\\\\-mo|to(pl|sh)|ts(70|m\\\\-|m3|m5)|tx\\\\-9|up(\\\\.b|g1|si)|utst|v400|v750|',\r\n 'veri|vi(rg|te)|vk(40|5[0-3]|\\\\-v)|vm40|voda|vulc|vx(52|53|60|61|70|80|81|83|85|98)|',\r\n 'w3c(\\\\-| )|webc|whit|wi(g |nc|nw)|wmlb|wonu|x700|yas\\\\-|your|zeto|zte\\\\-'].join(''),\r\n 'i'\r\n );\r\n","import { BrowserDetectInfo, OsDefinition, OsDefinitionInterface } from './browser-detect.interface';\r\nimport { browsers, os, osVersions } from './definitions';\r\nimport { mobilePrefixRegExp, mobileRegExp } from './regexp';\r\nimport Process = NodeJS.Process;\r\n\r\nexport class Detector {\r\n private userAgent: string;\r\n\r\n public constructor(\r\n userAgent: string,\r\n private navigator?: Navigator,\r\n private process?: Process\r\n ) {\r\n this.userAgent = userAgent\r\n ? userAgent\r\n : this.navigator ? (navigator.userAgent || navigator.vendor) : '';\r\n }\r\n\r\n public detect(): BrowserDetectInfo {\r\n if (this.process && !this.userAgent) {\r\n const version = this.process.version.slice(1) .split('.').slice(0, 3);\r\n const versionTail = Array.prototype.slice.call(version, 1).join('') || '0';\r\n\r\n return {\r\n name: 'node',\r\n version: version.join('.'),\r\n versionNumber: parseFloat(`${version[0]}.${versionTail}`),\r\n mobile: false,\r\n os: this.process.platform\r\n };\r\n }\r\n\r\n if (!this.userAgent)\r\n this.handleMissingError();\r\n\r\n return {\r\n ...this.checkBrowser(),\r\n ...this.checkMobile(),\r\n ...this.checkOs()\r\n };\r\n }\r\n\r\n private checkBrowser(): BrowserDetectInfo {\r\n return browsers\r\n .filter(definition => (definition[1]).test(this.userAgent))\r\n .map(definition => {\r\n const match = (definition[1]).exec(this.userAgent);\r\n const version = match && match[1].split(/[._]/).slice(0, 3);\r\n const versionTails = Array.prototype.slice.call(version, 1).join('') || '0';\r\n\r\n if (version && version.length < 3)\r\n Array.prototype.push.apply(version, version.length === 1 ? [0, 0] : [0]);\r\n\r\n return {\r\n name: String(definition[0]),\r\n version: version.join('.'),\r\n versionNumber: Number(`${version[0]}.${versionTails}`)\r\n };\r\n })\r\n .shift();\r\n }\r\n\r\n private checkMobile(): BrowserDetectInfo {\r\n const agentPrefix = this.userAgent.substr(0, 4);\r\n const mobile = mobileRegExp.test(this.userAgent) || mobilePrefixRegExp.test(agentPrefix);\r\n return { mobile };\r\n }\r\n\r\n private checkOs(): BrowserDetectInfo {\r\n return os\r\n .map(definition => {\r\n const name = (definition).name || definition;\r\n const pattern = this.getOsPattern(definition);\r\n\r\n return {\r\n name,\r\n pattern,\r\n value: RegExp(\r\n `\\\\b${\r\n pattern.replace(/([ -])(?!$)/g, '$1?')\r\n }(?:x?[\\\\d._]+|[ \\\\w.]*)`,\r\n 'i'\r\n ).exec(this.userAgent)\r\n };\r\n })\r\n .filter(definition => definition.value)\r\n .map(definition => {\r\n let os = definition.value[0] || '';\r\n let osSuffix: string;\r\n\r\n if (\r\n definition.pattern &&\r\n definition.name &&\r\n /^Win/i.test(os) &&\r\n !/^Windows Phone /i.test(os) &&\r\n (osSuffix = osVersions[os.replace(/[^\\d.]/g, '')])\r\n )\r\n os = `Windows ${osSuffix}`;\r\n\r\n if (definition.pattern && definition.name)\r\n os = os.replace(RegExp(definition.pattern, 'i'), definition.name);\r\n\r\n os = os\r\n .replace(/ ce$/i, ' CE')\r\n .replace(/\\bhpw/i, 'web')\r\n .replace(/\\bMacintosh\\b/, 'Mac OS')\r\n .replace(/_PowerPC\\b/i, ' OS')\r\n .replace(/\\b(OS X) [^ \\d]+/i, '$1')\r\n .replace(/\\bMac (OS X)\\b/, '$1')\r\n .replace(/\\/(\\d)/, ' $1')\r\n .replace(/_/g, '.')\r\n .replace(/(?: BePC|[ .]*fc[ \\d.]+)$/i, '')\r\n .replace(/\\bx86\\.64\\b/gi, 'x86_64')\r\n .replace(/\\b(Windows Phone) OS\\b/, '$1')\r\n .replace(/\\b(Chrome OS \\w+) [\\d.]+\\b/, '$1')\r\n .split(' on ')[0]\r\n .trim();\r\n\r\n os = /^(?:webOS|i(?:OS|P))/.test(os)\r\n ? os\r\n : (os.charAt(0).toUpperCase() + os.slice(1));\r\n\r\n return { os };\r\n })\r\n .shift();\r\n }\r\n\r\n private getOsPattern(definition: OsDefinition): string {\r\n const definitionInterface = definition;\r\n return (\r\n typeof definition === 'string'\r\n ? definition\r\n : undefined\r\n ) ||\r\n definitionInterface.pattern ||\r\n definitionInterface.name;\r\n }\r\n\r\n private handleMissingError() {\r\n throw new Error('Please give user-agent.\\n> browser(navigator.userAgent or res.headers[\\'user-agent\\']).');\r\n }\r\n}\r\n","// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n","var core = module.exports = { version: '2.5.7' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","var isObject = require('./_is-object');\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n","// Thank's IE8 for his funny defineProperty\nmodule.exports = !require('./_fails')(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n","var isObject = require('./_is-object');\nvar document = require('./_global').document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n","module.exports = !require('./_descriptors') && !require('./_fails')(function () {\n return Object.defineProperty(require('./_dom-create')('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n","// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = require('./_is-object');\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","var anObject = require('./_an-object');\nvar IE8_DOM_DEFINE = require('./_ie8-dom-define');\nvar toPrimitive = require('./_to-primitive');\nvar dP = Object.defineProperty;\n\nexports.f = require('./_descriptors') ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","var dP = require('./_object-dp');\nvar createDesc = require('./_property-desc');\nmodule.exports = require('./_descriptors') ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","var id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n","var global = require('./_global');\nvar hide = require('./_hide');\nvar has = require('./_has');\nvar SRC = require('./_uid')('src');\nvar TO_STRING = 'toString';\nvar $toString = Function[TO_STRING];\nvar TPL = ('' + $toString).split(TO_STRING);\n\nrequire('./_core').inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n","module.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n","// optional / simple context binding\nvar aFunction = require('./_a-function');\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n","var global = require('./_global');\nvar core = require('./_core');\nvar hide = require('./_hide');\nvar redefine = require('./_redefine');\nvar ctx = require('./_ctx');\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = require('./_cof');\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n","// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// 7.1.13 ToObject(argument)\nvar defined = require('./_defined');\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n","// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n","// 7.1.15 ToLength\nvar toInteger = require('./_to-integer');\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n","// 7.2.2 IsArray(argument)\nvar cof = require('./_cof');\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n","var core = require('./_core');\nvar global = require('./_global');\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: require('./_library') ? 'pure' : 'global',\n copyright: '© 2018 Denis Pushkarev (zloirock.ru)'\n});\n","var store = require('./_shared')('wks');\nvar uid = require('./_uid');\nvar Symbol = require('./_global').Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n","var isObject = require('./_is-object');\nvar isArray = require('./_is-array');\nvar SPECIES = require('./_wks')('species');\n\nmodule.exports = function (original) {\n var C;\n if (isArray(original)) {\n C = original.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? Array : C;\n};\n","// 9.4.2.3 ArraySpeciesCreate(originalArray, length)\nvar speciesConstructor = require('./_array-species-constructor');\n\nmodule.exports = function (original, length) {\n return new (speciesConstructor(original))(length);\n};\n","// 0 -> Array#forEach\n// 1 -> Array#map\n// 2 -> Array#filter\n// 3 -> Array#some\n// 4 -> Array#every\n// 5 -> Array#find\n// 6 -> Array#findIndex\nvar ctx = require('./_ctx');\nvar IObject = require('./_iobject');\nvar toObject = require('./_to-object');\nvar toLength = require('./_to-length');\nvar asc = require('./_array-species-create');\nmodule.exports = function (TYPE, $create) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n var create = $create || asc;\n return function ($this, callbackfn, that) {\n var O = toObject($this);\n var self = IObject(O);\n var f = ctx(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var val, res;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n val = self[index];\n res = f(val, index, O);\n if (TYPE) {\n if (IS_MAP) result[index] = res; // map\n else if (res) switch (TYPE) {\n case 3: return true; // some\n case 5: return val; // find\n case 6: return index; // findIndex\n case 2: result.push(val); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;\n };\n};\n","'use strict';\nvar fails = require('./_fails');\n\nmodule.exports = function (method, arg) {\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call\n arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);\n });\n};\n","'use strict';\nvar $export = require('./_export');\nvar $filter = require('./_array-methods')(2);\n\n$export($export.P + $export.F * !require('./_strict-method')([].filter, true), 'Array', {\n // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments[1]);\n }\n});\n","require('../../modules/es6.array.filter');\nmodule.exports = require('../../modules/_core').Array.filter;\n","'use strict';\nvar $export = require('./_export');\nvar $map = require('./_array-methods')(1);\n\n$export($export.P + $export.F * !require('./_strict-method')([].map, true), 'Array', {\n // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments[1]);\n }\n});\n","require('../../modules/es6.array.map');\nmodule.exports = require('../../modules/_core').Array.map;\n","module.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n","var $export = require('./_export');\nvar defined = require('./_defined');\nvar fails = require('./_fails');\nvar spaces = require('./_string-ws');\nvar space = '[' + spaces + ']';\nvar non = '\\u200b\\u0085';\nvar ltrim = RegExp('^' + space + space + '*');\nvar rtrim = RegExp(space + space + '*$');\n\nvar exporter = function (KEY, exec, ALIAS) {\n var exp = {};\n var FORCE = fails(function () {\n return !!spaces[KEY]() || non[KEY]() != non;\n });\n var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];\n if (ALIAS) exp[ALIAS] = fn;\n $export($export.P + $export.F * FORCE, 'String', exp);\n};\n\n// 1 -> String#trimLeft\n// 2 -> String#trimRight\n// 3 -> String#trim\nvar trim = exporter.trim = function (string, TYPE) {\n string = String(defined(string));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n};\n\nmodule.exports = exporter;\n","'use strict';\n// 21.1.3.25 String.prototype.trim()\nrequire('./_string-trim')('trim', function ($trim) {\n return function trim() {\n return $trim(this, 3);\n };\n});\n","require('../../modules/es6.string.trim');\nmodule.exports = require('../../modules/_core').String.trim;\n","import { BrowserDetectInfo } from './browser-detect.interface';\r\nimport { Detector } from './detector';\r\nimport 'core-js/fn/array/filter';\r\nimport 'core-js/fn/array/map';\r\nimport 'core-js/fn/string/trim';\r\n\r\nconst injectableNavigator = typeof window !== 'undefined'\r\n ? window.navigator\r\n : undefined;\r\n\r\nconst injectableProcess = typeof process !== 'undefined'\r\n ? process\r\n : undefined;\r\n\r\nexport default function (userAgent?: string): BrowserDetectInfo {\r\n const detector = new Detector(userAgent, injectableNavigator, injectableProcess);\r\n return detector.detect();\r\n}\r\n"],"names":["os","isObject","require$$0","require$$1","require$$2","anObject","toPrimitive","IE8_DOM_DEFINE","dP","createDesc","has","hide","global","aFunction","core","ctx","redefine","cof","defined","toInteger","uid","isArray","speciesConstructor","asc","toObject","IObject","toLength","fails","$export","spaces"],"mappings":"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"}