native-fn
Version:
2 lines (1 loc) • 3.77 kB
JavaScript
;var e,n,t,i=navigator.userAgent;!function(e){e.Unknown="Unknown",e.Android="Android",e.iOS="iOS",e.Windows="Windows",e.MacOS="MacOS"}(e||(e={})),function(e){e.Unknown="Unknown",e.Mobile="Mobile",e.Desktop="Desktop"}(n||(n={})),function(e){e.Unknown="Unknown",e.EdgeHTML="EdgeHTML",e.ArkWeb="ArkWeb",e.Blink="Blink",e.Presto="Presto",e.WebKit="WebKit",e.Trident="Trident",e.NetFront="NetFront",e.KHTML="KHTML",e.Tasman="Tasman",e.Gecko="Gecko"}(t||(t={}));var o=function(){function t(e){return void 0===e?"":e.replace(/_/g,".")}function i(e){if(void 0===e)return"";var n={"4.90":"ME","NT3.51":"NT 3.11","NT4.0":"NT 4.0","NT 5.0":"2000","NT 5.1":"XP","NT 5.2":"XP","NT 6.0":"Vista","NT 6.1":"7","NT 6.2":"8","NT 6.3":"8.1","NT 6.4":"10","NT 10.0":"10",ARM:"RT"}[e];return void 0!==n?n:e}function o(e){return void 0===e?"":e}return[[/android\w*[-\/.; ]?([\d.]*)/i,e.Android,n.Mobile,o],[/microsoft windows (vista|xp)/i,e.Windows,n.Desktop,o],[/windows (?:phone(?: os)?|mobile|iot)[\/ ]?([.\w ]*)/i,e.Windows,n.Desktop,i],[/windows nt 6\.2; (arm)/i,e.Windows,n.Desktop,i],[/windows[\/ ]([ntce\d. ]+\w)(?!.+xbox)/i,e.Windows,n.Desktop,i],[/(?:win(?=[39n])|win 9x )([nt\d.]+)/i,e.Windows,n.Desktop,i],[/[adehimnop]{4,7}\b(?:.*os (\w+) like mac|; opera)/i,e.iOS,n.Mobile,t],[/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d.]+)/i,e.iOS,n.Mobile,t],[/cfnetwork\/.+darwin/i,e.iOS,n.Mobile,o],[/mac os x ?([\w. ]*)/i,e.MacOS,n.Desktop,t],[/(?:macintosh|mac_powerpc\b)(?!.+haiku)/i,e.MacOS,n.Desktop,t]]}(),a=[[/windows.+ edge\/([\w.]+)/i,t.EdgeHTML],[/arkweb\/([\w.]+)/i,t.ArkWeb],[/webkit\/537\.36.+chrome\/(?!27)([\w.]+)/i,t.Blink],[/presto\/([\w.]+)/i,t.Presto],[/webkit\/([\w.]+)/i,t.WebKit],[/trident\/([\w.]+)/i,t.Trident],[/netfront\/([\w.]+)/i,t.NetFront],[/khtml[\/ ]\(?([\w.]+)/i,t.KHTML],[/tasman[\/ ]\(?([\w.]+)/i,t.Tasman],[/rv:([\w.]{1,9})\b.+gecko/i,t.Gecko]],r=e.Unknown;n.Unknown;t.Unknown;for(var d=0;d<o.length;d++){var s=(u=o[d])[0],c=u[1],w=u[2],l=u[3];if(null!==(p=i.match(s))){r=c,l(p[1]);break}}for(d=0;d<a.length;d++){var u,p;s=(u=a[d])[0];if(u[1],null!==(p=i.match(s))){p[1];break}}function k(e,n){var t;void 0===n&&(n=window);try{t=new MouseEvent("click",{bubbles:!0,cancelable:!0,view:n})}catch(e){(t=document.createEvent("MouseEvents")).initMouseEvent("click",!0,!0,n,0,0,0,0,0,!1,!1,!1,!1,0,null)}e.dispatchEvent(t)}function m(n){var t,i=function(){try{if(window.top&&window.top!==window)return window.top.location.href,window.top}catch(e){}return window}(),o=i.document;try{if((t=o.createElement("input")).type="file",t.tabIndex=-1,t.accept=n+"/*",t.setAttribute("aria-hidden","true"),t.style.display="none",t.style.position="absolute",t.style.top="-9999px",t.style.left="-9999px","capture"in HTMLInputElement.prototype)t.capture="user";else if(r===e.Android){var a="";"image"===n?a="camera":"video"===n?a="camcorder":"audio"===n&&(a="microphone"),t.accept=n+"/*;capture="+a}o.body.appendChild(t),k(t,i)}catch(e){}}!function(){var e=document.createElement("canvas");if("function"!=typeof e.getContext)return"";var n=e.getContext("webgl2")||e.getContext("experimental-webgl")||e.getContext("webgl");if(null===n)return"";if(n instanceof WebGLRenderingContext||"getParameter"in n&&"function"==typeof n.getParameter){var t=n.getExtension("WEBGL_debug_renderer_info");return null===t?n.getParameter(n.RENDERER):n.getParameter(t.UNMASKED_RENDERER_WEBGL)}}(),n.Mobile,n.Desktop,r===e.iOS?"standalone"in navigator&&navigator.standalone:window.matchMedia("(display-mode: standalone)").matches;var b,f={open:function(n){switch(r){case e.Android:case e.iOS:m(n);case e.Windows:case e.MacOS:}}};!function(e){e.Image="image",e.Video="video",e.Audio="audio"}(b||(b={}));var v={installed:!1,name:"Media",module:f,Constants:{MediaType:b},Errors:{}};module.exports=v;