{ "version": 3, "sources": [ "browser.ts" ], "names": [ "domObjects", "is", "win", "browser", "init", "window", "Element", "navigator", "supportsTouch", "func", "DocumentTouch", "document", "supportsPointerEvent", "pointerEnabled", "PointerEvent", "isIOS", "test", "platform", "isIOS7", "appVersion", "isIe9", "userAgent", "isOperaMobile", "appName", "prefixedMatchesSelector", "prototype", "pEventTypes", "MSPointerEvent", "up", "down", "over", "out", "move", "cancel", "wheelEvent" ], "mappings": "OAAOA,MAAgB,8BAChBC,MAAQ,yBACHC,MAAS,mBAErB,MAAMC,EAAU,CACdC,KAmBaC,GACb,MAAMC,EAAUN,EAAWM,QACrBC,EAAaL,EAAIG,OAAOE,UAG9BJ,EAAQK,cAAiB,iBAAkBH,GACxCJ,EAAGQ,KAAKJ,EAAOK,gBAAkBV,EAAWW,oBAAoBN,EAAOK,cAG1EP,EAAQS,sBAAoD,IAA7BL,EAAUM,kBAA8Bb,EAAWc,aAElFX,EAAQY,MAAS,iBAAiBC,KAAKT,EAAUU,UAGjDd,EAAQe,OAAU,iBAAiBF,KAAKT,EAAUU,WACzC,YAAYD,KAAKT,EAAUY,YAEpChB,EAAQiB,MAAQ,SAASJ,KAAKT,EAAUc,WAGxClB,EAAQmB,cAAuC,UAAtBf,EAAUgB,SACjCpB,EAAQK,eACR,SAASQ,KAAKT,EAAUc,WAG1BlB,EAAQqB,wBAA2B,YAAalB,EAAQmB,UACpD,UACA,0BAA2BnB,EAAQmB,UACjC,wBACA,uBAAwBnB,EAAQmB,UAC9B,qBACA,qBAAsBnB,EAAQmB,UAC5B,mBACA,oBAEVtB,EAAQuB,YAAevB,EAAQS,qBAC1BZ,EAAWc,eAAiBT,EAAOsB,eAClC,CACAC,GAAQ,cACRC,KAAQ,gBACRC,KAAQ,YACRC,IAAQ,WACRC,KAAQ,gBACRC,OAAQ,mBAER,CACAL,GAAQ,YACRC,KAAQ,cACRC,KAAQ,cACRC,IAAQ,aACRC,KAAQ,cACRC,OAAQ,iBAEV,KAGJ9B,EAAQ+B,WAAa,iBAAkBlC,EAAWW,SAAW,aAAe,SA1E5EH,cAAe,KACfI,qBAAsB,KACtBM,OAAQ,KACRH,MAAO,KACPK,MAAO,KACPE,cAAe,KACfE,wBAAyB,KACzBE,YAAa,KAQbQ,WAAY,qBA8DC/B", "sourcesContent": [ "import domObjects from './domObjects'\nimport is from './is'\nimport * as win from './window'\n\nconst browser = {\n init,\n supportsTouch: null as boolean,\n supportsPointerEvent: null as boolean,\n isIOS7: null as boolean,\n isIOS: null as boolean,\n isIe9: null as boolean,\n isOperaMobile: null as boolean,\n prefixedMatchesSelector: null as 'matches',\n pEventTypes: null as {\n up: string\n down: string\n over: string\n out: string\n move: string\n cancel: string\n },\n wheelEvent: null as string,\n}\n\nfunction init (window: any) {\n const Element = domObjects.Element\n const navigator = win.window.navigator\n\n // Does the browser support touch input?\n browser.supportsTouch = ('ontouchstart' in window) ||\n (is.func(window.DocumentTouch) && domObjects.document instanceof window.DocumentTouch)\n\n // Does the browser support PointerEvents\n browser.supportsPointerEvent = navigator.pointerEnabled !== false && !!domObjects.PointerEvent\n\n browser.isIOS = (/iP(hone|od|ad)/.test(navigator.platform))\n\n // scrolling doesn't change the result of getClientRects on iOS 7\n browser.isIOS7 = (/iP(hone|od|ad)/.test(navigator.platform) &&\n /OS 7[^\\d]/.test(navigator.appVersion))\n\n browser.isIe9 = /MSIE 9/.test(navigator.userAgent)\n\n // Opera Mobile must be handled differently\n browser.isOperaMobile = (navigator.appName === 'Opera' &&\n browser.supportsTouch &&\n /Presto/.test(navigator.userAgent))\n\n // prefix matchesSelector\n browser.prefixedMatchesSelector = ('matches' in Element.prototype\n ? 'matches'\n : 'webkitMatchesSelector' in Element.prototype\n ? 'webkitMatchesSelector'\n : 'mozMatchesSelector' in Element.prototype\n ? 'mozMatchesSelector'\n : 'oMatchesSelector' in Element.prototype\n ? 'oMatchesSelector'\n : 'msMatchesSelector') as 'matches'\n\n browser.pEventTypes = (browser.supportsPointerEvent\n ? (domObjects.PointerEvent === window.MSPointerEvent\n ? {\n up: 'MSPointerUp',\n down: 'MSPointerDown',\n over: 'mouseover',\n out: 'mouseout',\n move: 'MSPointerMove',\n cancel: 'MSPointerCancel',\n }\n : {\n up: 'pointerup',\n down: 'pointerdown',\n over: 'pointerover',\n out: 'pointerout',\n move: 'pointermove',\n cancel: 'pointercancel',\n })\n : null)\n\n // because Webkit and Opera still use 'mousewheel' event type\n browser.wheelEvent = 'onmousewheel' in domObjects.document ? 'mousewheel' : 'wheel'\n}\n\nexport default browser\n" ] }