native-fn 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +0 -0
- package/dist/index.cjs +2 -0
- package/dist/index.cjs.map +7 -0
- package/dist/index.mjs +2 -0
- package/dist/index.mjs.map +7 -0
- package/dist/index.umd.js +2 -0
- package/dist/index.umd.js.map +7 -0
- package/package.json +57 -0
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
"use strict";var Native=(()=>{var ge=Object.defineProperty;var We=Object.getOwnPropertyDescriptor;var He=Object.getOwnPropertyNames;var Je=Object.prototype.hasOwnProperty;var I=(e,t)=>()=>(e&&(t=e(e=0)),t);var Xe=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let q of He(t))!Je.call(e,q)&&q!==n&&ge(e,q,{get:()=>t[q],enumerable:!(o=We(t,q))||o.enumerable});return e};var f=e=>Xe(ge({},"__esModule",{value:!0}),e);var _e={};var we=I(()=>{(function(e,t){typeof exports=="object"&&typeof module<"u"?t():typeof define=="function"&&define.amd?define(t):t()})(0,function(){"use strict";function e(i){var A=this.constructor;return this.then(function(V){return A.resolve(i()).then(function(){return V})},function(V){return A.resolve(i()).then(function(){return A.reject(V)})})}function t(i){return new this(function(A,V){function p(E,S){if(S&&(typeof S=="object"||typeof S=="function")){var k=S.then;if(typeof k=="function")return void k.call(S,function(B){p(E,B)},function(B){c[E]={status:"rejected",reason:B},--y==0&&A(c)})}c[E]={status:"fulfilled",value:S},--y==0&&A(c)}if(!i||typeof i.length>"u")return V(new TypeError(typeof i+" "+i+" is not iterable(cannot read property Symbol(Symbol.iterator))"));var c=Array.prototype.slice.call(i);if(c.length===0)return A([]);for(var y=c.length,b=0;c.length>b;b++)p(b,c[b])})}function n(i,A){this.name="AggregateError",this.errors=i,this.message=A||""}function o(i){var A=this;return new A(function(V,p){if(!i||typeof i.length>"u")return p(new TypeError("Promise.any accepts an array"));var c=Array.prototype.slice.call(i);if(c.length===0)return p();for(var y=[],b=0;c.length>b;b++)try{A.resolve(c[b]).then(V).catch(function(E){y.push(E),y.length===c.length&&p(new n(y,"All promises were rejected"))})}catch(E){p(E)}})}function q(i){return!(!i||typeof i.length>"u")}function h(){}function r(i){if(!(this instanceof r))throw new TypeError("Promises must be constructed via new");if(typeof i!="function")throw new TypeError("not a function");this._state=0,this._handled=!1,this._value=void 0,this._deferreds=[],v(i,this)}function l(i,A){for(;i._state===3;)i=i._value;i._state!==0?(i._handled=!0,r._immediateFn(function(){var V=i._state===1?A.onFulfilled:A.onRejected;if(V!==null){var p;try{p=V(i._value)}catch(c){return void a(A.promise,c)}u(A.promise,p)}else(i._state===1?u:a)(A.promise,i._value)})):i._deferreds.push(A)}function u(i,A){try{if(A===i)throw new TypeError("A promise cannot be resolved with itself.");if(A&&(typeof A=="object"||typeof A=="function")){var V=A.then;if(A instanceof r)return i._state=3,i._value=A,void m(i);if(typeof V=="function")return void v(function(p,c){return function(){p.apply(c,arguments)}}(V,A),i)}i._state=1,i._value=A,m(i)}catch(p){a(i,p)}}function a(i,A){i._state=2,i._value=A,m(i)}function m(i){i._state===2&&i._deferreds.length===0&&r._immediateFn(function(){i._handled||r._unhandledRejectionFn(i._value)});for(var A=0,V=i._deferreds.length;V>A;A++)l(i,i._deferreds[A]);i._deferreds=null}function v(i,A){var V=!1;try{i(function(p){V||(V=!0,u(A,p))},function(p){V||(V=!0,a(A,p))})}catch(p){if(V)return;V=!0,a(A,p)}}n.prototype=Error.prototype;var s=setTimeout;r.prototype.catch=function(i){return this.then(null,i)},r.prototype.then=function(i,A){var V=new this.constructor(h);return l(this,new function(p,c,y){this.onFulfilled=typeof p=="function"?p:null,this.onRejected=typeof c=="function"?c:null,this.promise=y}(i,A,V)),V},r.prototype.finally=e,r.all=function(i){return new r(function(A,V){function p(E,S){try{if(S&&(typeof S=="object"||typeof S=="function")){var k=S.then;if(typeof k=="function")return void k.call(S,function(B){p(E,B)},V)}c[E]=S,--y==0&&A(c)}catch(B){V(B)}}if(!q(i))return V(new TypeError("Promise.all accepts an array"));var c=Array.prototype.slice.call(i);if(c.length===0)return A([]);for(var y=c.length,b=0;c.length>b;b++)p(b,c[b])})},r.any=o,r.allSettled=t,r.resolve=function(i){return i&&typeof i=="object"&&i.constructor===r?i:new r(function(A){A(i)})},r.reject=function(i){return new r(function(A,V){V(i)})},r.race=function(i){return new r(function(A,V){if(!q(i))return V(new TypeError("Promise.race accepts an array"));for(var p=0,c=i.length;c>p;p++)r.resolve(i[p]).then(A,V)})},r._immediateFn=typeof setImmediate=="function"&&function(i){setImmediate(i)}||function(i){s(i,0)},r._unhandledRejectionFn=function(i){console!==void 0&&console&&console.warn("Possible Unhandled Promise Rejection:",i)};var d=function(){if(typeof self<"u")return self;if(typeof window<"u")return window;if(typeof global<"u")return global;throw Error("unable to locate global object")}();typeof d.Promise!="function"?d.Promise=r:(d.Promise.prototype.finally||(d.Promise.prototype.finally=e),d.Promise.allSettled||(d.Promise.allSettled=t),d.Promise.any||(d.Promise.any=o))})});var F={};var L=I(()=>{module.exports=function(t){if(typeof Object.freeze!="function"){for(var n=Object.keys(t),o=0,q=n[o];o<n.length;o++)if(t.hasOwnProperty(q))try{Object.defineProperty(t,q,{writable:!1,configurable:!1})}catch{}return t}return Object.freeze(t)}});var _={};function J(e){var t={"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"},n=t[e];return n!==void 0?n:e}function X(e){if(e!==void 0)return e.replace(/_/g,".")}function $e(){var e=document.createElement("CANVAS");if(typeof e.getContext=="function"){var t=e.getContext("experimental-webgl")||e.getContext("webgl");if(t!==null){var n=t.getExtension("WEBGL_debug_renderer_info");if(typeof t.getParameter=="function")return n==null?t.getParameter(t.RENDERER):t.getParameter(n.UNMASKED_RENDERER_WEBGL)}}}var be,et,j=I(()=>{be=(L(),f(F));et=function(e){for(var t,n={renderer:$e(),name:"Unknown",version:void 0},o=[[/android\w*[-\/.; ]?([\d.]*)/i,"Android"],[/microsoft windows (vista|xp)/i,"Windows"],[/windows (?:phone(?: os)?|mobile|iot)[\/ ]?([.\w ]*)/i,"Windows",J],[/windows nt 6\.2; (arm)/i,"Windows",J],[/windows[\/ ]([ntce\d. ]+\w)(?!.+xbox)/i,"Windows",J],[/(?:win(?=[39n])|win 9x )([nt\d.]+)/i,"Windows",J],[/[adehimnop]{4,7}\b(?:.*os (\w+) like mac|; opera)/i,"iOS",X],[/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d.]+)/i,"iOS",X],[/cfnetwork\/.+darwin/i,"iOS"],[/mac os x ?([\w. ]*)/i,"MacOS",X],[/(?:macintosh|mac_powerpc\b)(?!.+haiku)/i,"MacOS",X]],q=0;q<o.length;q++)if(t=e.match(o[q][0]),t!==null)return n.name=o[q][1],o[q][2]!==void 0?n.version=o[q][2](t[1]):n.version=t[1],be(n);return be(n)}(navigator.userAgent);module.exports=et});var nt={};function Se(e){return"LibWeb"}var Ee,tt,Ie=I(()=>{Ee=(L(),f(F));tt=function(e){for(var t,n={name:"Unknown",isWebView:/; ?wv|applewebkit(?!.*safari)/i.test(e),version:void 0},o=[[/windows.+ edge\/([\w.]+)/i,"EdgeHTML"],[/arkweb\/([\w.]+)/i,"ArkWeb"],[/webkit\/537\.36.+chrome\/(?!27)([\w.]+)/i,"Blink"],[/presto\/([\w.]+)/i,"Presto"],[/webkit\/([\w.]+)/i,"WebKit"],[/trident\/([\w.]+)/i,"Trident"],[/netfront\/([\w.]+)/i,"NetFront"],[/netsurf\/([\w.]+)/i,"NetSurf"],[/amaya\/([\w.]+)/i,"Amaya"],[/lynx\/([\w.]+)/i,"Lynx"],[/w3m\/([\w.]+)/i,"w3m"],[/goanna\/([\w.]+)/i,"Goanna"],[/servo\/([\w.]+)/i,"Servo"],[/ekiohflow\/([\w.]+)/i,"Flow"],[/khtml[\/ ]\(?([\w.]+)/i,"KHTML"],[/tasman[\/ ]\(?([\w.]+)/i,"Tasman"],[/links[\/ ]\(?([\w.]+)/i,"Links"],[/icab[\/ ]([23]\.[\d.]+)/i,"iCab"],[/\blibweb/i,"LibWeb",Se],[/ladybird\//i,"LibWeb",Se],[/rv:([\w.]{1,9})\b.+gecko/i,"Gecko"]],q=0;q<o.length;q++)if(t=e.match(o[q][0]),t!==null)return n.name=o[q][1],o[q][2]!==void 0?n.version=o[q][2](t[1]):n.version=t[1],Ee(n);return Ee(n)}(navigator.userAgent);module.exports=tt});var Be={};var ie=I(()=>{module.exports=function(){if(typeof window.matchMedia=="function")return window.matchMedia;var e=window.styleMedia||window.media;if(e===void 0){var t=document.createElement("STYLE"),n;t.type="text/css",t.id="match-media-polyfill",document.head.appendChild(t),typeof window.getComputedStyle=="function"?n=window.getComputedStyle(t):n=t.currentStyle,e={matchMedia:function(o){var q="@media "+o+"{ #"+t.id+" {width: 1px;} }";return t.styleSheet!==void 0?t.styleSheet.cssText=q:t.textContent=q,n.width==="1px"}}}return function(o){return{matches:e.matchMedia(o),media:o}}}()});var ke={};var ot,it,z,U,R,qe=I(()=>{ot=(L(),f(F)),it=(ie(),f(Be)),z=[],U=it("(prefers-color-scheme: dark)"),R={addListener:function(e){function t(n){e(n.matches?R.Type.Dark:R.Type.Light)}if(z.push({original:e,wrapped:t}),typeof U.addEventListener=="function")return U.addEventListener("change",t);if(typeof U.addListener=="function")return U.addListener(t)},removeListener:function(e){for(var t=0;t<z.length;t++)if(z[t].original===e){var n=z[t].wrapped;if(typeof U.removeEventListener=="function")U.removeEventListener("change",n);else if(typeof U.removeListener=="function")return U.removeListener(n);z.splice(t,1);return}}};Object.defineProperty(R,"value",{get:function(){return U.matches?R.Type.Dark:R.Type.Light},configurable:!1,enumerable:!0});R.Type=ot({Light:"light",Dark:"dark"});module.exports=R});var rt={};function $(e){var t="",n,o;for(o=0;o<e.length;o++)t+="["+e[o][0]+"='"+e[o][1]+"']";if(n=top.document.head.querySelector("meta"+t),n===null){for(n=top.document.createElement("META"),o=0;o<e.length;o++)n[e[o][0]]=e[o][1];top.document.head.appendChild(n)}return n}function re(){g.light===void 0&&(g.light=$([["name","theme-color"],["media","(prefers-color-scheme: light)"]])),g.dark===void 0&&(g.dark=$([["name","theme-color"],["media","(prefers-color-scheme: dark)"]])),g.iosStatusBar===void 0&&(g.iosStatusBar=$([["name","apple-mobile-web-app-status-bar-style"]])),g.windowsPhone===void 0&&(g.windowsPhone=$([["name","msapplication-navbutton-color"]]))}var N,qt,Y,g,Q,P,Te,K,xe=I(()=>{N=(qe(),f(ke)),qt=(L(),f(F)),g={light:void 0,dark:void 0,iosStatusBar:void 0,windowsPhone:void 0},P=[],Te=[];K={addListener:function(e){if(typeof window.MutationObserver!="function")return;Q===void 0&&(Q=new MutationObserver(function(n){var o,q=!1;for(o=0;o<n.length;o++){var h=n[o],r=h.target,l=h.type;if(!(l!=="attributes"||r.tagName!=="META")&&[g.light,g.dark,g.iosStatusBar,g.windowsPhone].indexOf(r)!==-1){q=!0;break}}if(q)for(o=0;o<P.length;o++)P[o](K.value)}),Q.observe(top.document.head,{attributes:!0,childList:!0,subtree:!0}));function t(){re(),g.dark.content!==g.light.content&&e(K.value)}N.addListener(t),Te.push(t),P.push(e)},removeListener:function(e){if(!(typeof window.MutationObserver!="function"||Q===void 0)){for(var t=0;t<P.length;t++)if(P[t]===e){P.splice(t,1),Te.splice(t,1);break}P.length===0&&(Q.disconnect(),Q=void 0)}},setTheme:function(e){re(),Y!==void 0&&(N.removeListener(Y),Y=void 0),Y=function(o){var q=e[o];q!==void 0&&(q.iosStatusBar!==void 0&&(g.iosStatusBar.content=q.iosStatusBar),q.windowsPhone!==void 0&&(g.windowsPhone.content=q.iosStatusBar))},N.addListener(Y);var t=e.light,n=e.dark;n!==void 0&&n.theme!==void 0&&(g.dark.content=n.theme),t!==void 0&&(t.theme!==void 0&&(g.light.content=t.theme),N.value==="light"&&(t.iosStatusBar!==void 0&&(g.iosStatusBar.content=t.iosStatusBar),t.windowsPhone!==void 0&&(g.windowsPhone.content=t.windowsPhone))),n!==void 0&&(n.theme!==void 0&&(g.dark.content=n.theme),N.value==="dark"&&(n.iosStatusBar!==void 0&&(g.iosStatusBar.content=n.iosStatusBar),n.windowsPhone!==void 0&&(g.windowsPhone.content=n.windowsPhone)))}};Object.defineProperty(K,"value",{get:function(){var e={};return re(),g[N.value].content!==""&&(e.theme=g[N.value].content),g.iosStatusBar.content!==""&&(e.iosStatusBar=g.iosStatusBar.content),g.windowsPhone.content!==""&&(e.windowsPhone=g.windowsPhone.content),e},configurable:!1,enumerable:!0});K.Type=qt({Theme:"theme",IOSStatusBar:"iosStatusBar",WindowsPhone:"windowsPhone"});module.exports=K});var ae={};function At(){return!window.CSS||typeof CSS.supports!="function"?null:CSS.supports("x:env(x)")?"env":CSS.supports("x:constant(x)")?"constant":null}var Ae,at,ee=I(()=>{at=function(){if(typeof window.requestAnimationFrame=="function")return window.requestAnimationFrame;if(typeof window.msRequestAnimationFrame=="function")return window.msRequestAnimationFrame;if(typeof window.mozRequestAnimationFrame=="function")return window.mozRequestAnimationFrame;if(typeof window.webkitRequestAnimationFrame=="function")return window.webkitRequestAnimationFrame;if(typeof window.oRequestAnimationFrame=="function")return window.oRequestAnimationFrame;var e=0;return function(t){var n=new Date().getTime(),o=Math.max(0,16-(n-e)),q=setTimeout(function(){t(n+o)},o);return e=n+o,q}}();module.exports=function(t,n){Ae===void 0&&(Ae=At());var o={addListener:function(i){h.push(i)},removeListener:function(i){for(var A=0;A<h.length;A++)if(h[A]===i){h.splice(A,1);break}},value:{}},q=document.createElement("div"),h=[],r=[],l=!1,u=window.ShadowRoot!==void 0;if(q.dataset!==void 0&&(q.dataset[t]=""),document.body.appendChild(q),u){var a=document.createElement("style");a.innerText=":host { position: absolute !important; top: 0 !important; left: 0 !important; width: 0 !important; height: 0 !important; visibility: hidden !important; overflow: hidden !important; } :host > div { position: absolute; width: 100px; height: 200px; overflow: hidden; box-sizing: border-box; } .pixel { transition: 0s; animation: none; width: 400px; height: 400px; } .percent { transition: 0s; animation: none; width: 250%; height: 250%; } ",q=q.attachShadow({mode:"closed"}),q.appendChild(a)}else q.style.position="absolute",q.style.top="0",q.style.left="0",q.style.width="0",q.style.height="0",q.style.visibility="hidden",q.style.overflow="hidden";for(var m in n)n.hasOwnProperty(m)&&d(q,m,n[m],o.value);function v(){l=!1;for(var i=0;i<h.length;i++)h[i](o.value);r.length=0}function s(i){r.indexOf(i)===-1&&r.push(i),l||(l=!0,setTimeout(function(){at(v)},0))}function d(i,A,V,p){var c=document.createElement("DIV"),y=document.createElement("DIV"),b=document.createElement("DIV"),E=document.createElement("DIV"),S=1e4;c.style.paddingBottom=y.style.paddingBottom=Ae+"("+V+")",u?(b.className="pixel",E.className="percent"):(c.style.position=y.style.position="absolute",c.style.width=y.style.width="100px",c.style.height=y.style.height="200px",c.style.overflow=y.style.overflow="hidden",c.style.boxSizing=y.style.boxSizing="border-box",b.style.transition=E.style.transition="0s",b.style.animation=E.style.animation="none",b.style.width=b.style.height="400px",E.style.width=E.style.height="250%"),c.appendChild(b),y.appendChild(E),i.appendChild(c),i.appendChild(y),c.scrollTop=y.scrollTop=S;var k=c.scrollTop,B=y.scrollTop;function G(){var M=this.scrollTop;this===c&&M===k||this===y&&M===B||(c.scrollTop=y.scrollTop=S,k=c.scrollTop,B=y.scrollTop,s(A))}c.addEventListener("scroll",G,!1),y.addEventListener("scroll",G,!1);var O=window.getComputedStyle(c);Object.defineProperty(p,A,{get:function(){return parseFloat(O.paddingBottom)},configurable:!1,enumerable:!0})}return o}});var st={};var Me=I(()=>{module.exports=(ee(),f(ae))("safeAreaInset",{top:"safe-area-inset-top",bottom:"safe-area-inset-bottom",left:"safe-area-inset-left",right:"safe-area-inset-right"})});var lt={};var Ce=I(()=>{module.exports=(ee(),f(ae))("titlebarArea",{x:"titlebar-area-x",y:"titlebar-area-y",width:"titlebar-area-width",height:"titlebar-area-height"})});var ut={};var Le=I(()=>{module.exports=(ee(),f(ae))("keyboardInset",{top:"keyboard-inset-top",bottom:"keyboard-inset-bottom",left:"keyboard-inset-left",right:"keyboard-inset-right",width:"keyboard-inset-width",height:"keyboard-inset-height"})});var Fe={};function ct(e){return e.document.hidden!==void 0?e.document.hidden:e.document.webkitHidden!==void 0?e.document.webkitHidden:!0}function Ue(e,t){var n=e.document.createElement("A"),o;n.href=t,e.document.body.appendChild(n);try{o=new e.MouseEvent("click",{bubbles:!0,cancelable:!0,view:e})}catch{o=e.document.createEvent("MouseEvents"),o.initMouseEvent("click",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null)}n.dispatchEvent(o),e.document.body.removeChild(n)}function De(e,t,n,o){return new Promise(function(q,h){var r;function l(){clearTimeout(r),t.removeEventListener("blur",l),t.addEventListener("focus",u)}function u(){t.removeEventListener("focus",u),q()}r=setTimeout(function(){h(),t.removeEventListener("blur",l)},o),t.addEventListener("blur",l),Ue(t,n)})}function Vt(e,t,n){return new Promise(function(o,q){var h,r=parseInt(e.version)>=8;function l(){clearTimeout(h),t.addEventListener("focus",u),t.removeEventListener("blur",l)}function u(){h=setTimeout(function(){ct(t)?o():q(),r?t.document.removeEventListener("visibilitychange",a):t.document.removeEventListener("pagehide",a)},2e3),t.removeEventListener("focus",u)}function a(){clearTimeout(h),t.removeEventListener("blur",l),t.removeEventListener("focus",u),r?t.document.removeEventListener("visibilitychange",a):t.document.removeEventListener("pagehide",a),o()}t.addEventListener("blur",l),r?t.document.addEventListener("visibilitychange",a):t.document.addEventListener("pagehide",a),Ue(t,n)})}function dt(e,t,n){return De(e,t,n,1e3)}function ft(e,t,n){return De(e,t,n,750)}var se=I(()=>{module.exports=function(t,n,o){if(o)switch(t.name){case"Android":return dt(t,n,o);case"iOS":return Vt(t,n,o);case"Windows":case"MacOS":return ft(t,n,o)}return Promise.reject()}});var le={};var te=I(()=>{module.exports=function(t){function n(o){if(!(this instanceof n))return new n(o);this.name=t,this.message=o,Error.captureStackTrace?Error.captureStackTrace(this,n):this.stack=new Error().stack}return n.prototype=Object.create(Error.prototype),n.prototype.constructor=n,n}});var ue={};var ne=I(()=>{module.exports=(te(),f(le))("InitializationError")});var ce={};var oe=I(()=>{module.exports=(te(),f(le))("URLOpenError")});var gt={};function Oe(e){try{var t=new XMLHttpRequest;if(t.open("GET","http://itunes.apple.com/lookup?bundleId="+e,!1),t.send(),t.status===200){var n=JSON.parse(t.response);if(n.results.length>0)return n.results[0].trackId}return}catch{return}}function de(e){return/\w+:\/\/.*/.test(e)?e:e+"://"}function vt(e){return e.replace(/:\/\/.*$/,"")}var Ve,pt,ht,mt,yt,w,Re=I(()=>{Ve=(j(),f(_)),pt=(se(),f(Fe)),ht=(L(),f(F)),mt=(ne(),f(ue)),yt=(oe(),f(ce));w=function(e){if(e===void 0)throw new TypeError("Failed to construct 'Native.App': Illegal constructor.");this.run=function(){return new Promise(function(s,d){d(new mt("Initialization error."))})};var t,n,o,q,h=Promise.resolve(),r=[],l;switch(Ve.name){case"Android":if(e.android===void 0)return;var u,a,m;if(t=e.android.scheme,n=e.android.package,o=e.android.fallback,a=e.android.intent,l=e.android.isOpenWebStore,a!==void 0&&t===void 0&&(u=a.match(/scheme=([^;]*)/),u!==null&&(t=u[1])),a!==void 0&&n===void 0&&(u=a.match(/package=([^;]*)/),u!==null&&(n=u[1])),a!==void 0&&o===void 0&&(u=a.match(/S\.browser_fallback_url=([^;]*)/),u!==null&&(o=u[1])),t===void 0&&n===void 0&&o===void 0)return;if(a===void 0&&(a="intent://open#Intent;",t!==void 0&&(a=a+"scheme="+vt(t)+";"),n!==void 0&&(a=a+"package="+n+";"),a=a+"end;"),window.chrome!==void 0&&(u=navigator.userAgent.match(/chrom(?:e|ium)\/([\w.]+)/i),u!==null&&(m=parseInt(u[1]))),m>=25&&a!==void 0)if(m<=42){h=new Promise(function(s){var d=top.document.createElement("IFRAME"),i="intent://open#Intent;scheme=;end;",A=!1;function V(c){A||(A=!0,s(c),d.removeEventListener("load",p),top.document.body.removeChild(d))}function p(){V(d.src!==i)}d.addEventListener("load",p),d.src=i,top.document.body.appendChild(d),setTimeout(function(){V(!1)},500)}).then(function(s){s?r.push([a,w.State.Intent]):r.push([a.replace(/package=.*?;/,"").replace(/S\.browser_fallback_url=.*?;/,""),w.State.Intent]),o!==void 0?r.push([o,w.State.Fallback]):n!==void 0&&(r.push(["market://details?id="+n,w.State.Store]),l&&r.push(["https://play.google.com/store/apps/details?id="+n,w.State.Store]))});break}else r.push([a,w.State.Intent]);else t!==void 0&&r.push([de(t),w.State.Scheme]);o!==void 0?r.push([o,w.State.Fallback]):n!==void 0&&(r.push(["market://details?id="+n,w.State.Store]),l&&r.push(["https://play.google.com/store/apps/details?id="+n,w.State.Store]));break;case"Windows":if(e.windows===void 0)return;t=e.windows.scheme,n=e.windows.productId,l=e.windows.isOpenWebStore,o=e.windows.fallback,t!==void 0&&r.push([de(t),w.State.Scheme]),o!==void 0?r.push([o,w.State.Fallback]):n!==void 0&&(r.push(["ms-windows-store://pdp/?ProductId="+n,w.State.Store]),l&&r.push(["https://apps.microsoft.com/detail/"+n,w.State.Store]));break;case"iOS":if(e.ios===void 0)return;var v=e.ios.universal;t=e.ios.scheme,q=e.ios.package,n=e.ios.trackId,o=e.ios.fallback,v!==void 0&&parseInt(Ve.version)>=9?r.push([v,w.State.Universal]):t!==void 0&&r.push([t,w.State.Scheme]),n===void 0&&q!==void 0&&(n=Oe(q)),o!==void 0?r.push([o,w.State.Fallback]):n!==void 0&&(r.length===0?r.push(["itms-apps://itunes.apple.com/app/id"+n+"?mt=8",w.State.Store]):r.push(["https://itunes.apple.com/kr/app/id"+n+"?mt=8",w.State.Store]));break;case"MacOS":if(e.mac===void 0)return;t=e.mac.scheme,q=e.ios.package,n=e.mac.trackId,o=e.mac.fallback,l=e.mac.isOpenWebStore,t!==void 0&&r.push([de(t),w.State.Scheme]),n===void 0&&q!==void 0&&(n=Oe(q)),o!==void 0?r.push([o,w.State.Fallback]):n!==void 0&&(r.push(["macappstore://itunes.apple.com/app/id"+n+"?mt=12",w.State.Store]),l&&r.push(["https://apps.apple.com/us/app/id"+n+"?mt=12",w.State.Store]));break;default:return}this.run=function(s=top){return h.then(function(){return console.log(r),new Promise(function(d,i){function A(V=0){if(V>=r.length)return i(new yt("No url can be opened."));var p=r[V][0],c=r[V][1];return pt(Ve,s,p).then(function(){d(c)}).catch(function(y){A(++V)})}return A()})})}};w.State=ht({Scheme:0,Universal:1,Intent:2,Fallback:3,Store:4});module.exports=w});var Pe={};var fe=I(()=>{module.exports=(te(),f(le))("UserNotSelectedError")});var Pt={};function St(e,t,n){var o=t.getVideoTracks()[0].getSettings(),q=top.document.documentElement.style.overflow,h=o.width||640,r=o.height||480,l=Lt(e),u=Bt(),a=kt(),m=Mt(),v=Ct(e),s=xt(),d=Ne(),i=Ne(),A=Ut(),V=Dt(),p=top.innerHeight*.4/r*h/2,c=!1,y,b=[],E=0,S;m.appendChild(v),e===x.Type.Video&&u.appendChild(s),u.appendChild(a),u.appendChild(l),u.appendChild(m),u.appendChild(d),u.appendChild(i),u.appendChild(A),u.appendChild(V),a.style.left=l.style.left="calc(50% - "+p+"px)",d.style.left=i.style.right="0",A.style.left=V.style.right="calc(50% - "+(p-50)+"px)",d.style.width=i.style.width="calc(50% - "+p+"px)";function k(){}function B(){S!==void 0&&(clearInterval(S),S=void 0)}function G(O,M,C){Ge(O).then(function(T){l.src=T,a.style.display=m.style.display="none",l.style.display=A.style.display=V.style.display="block",A.onclick=function(){M({blob:O,dataURL:T})},V.onclick=function(){typeof window.URL=="function"?URL.revokeObjectURL(T):typeof window.webkitURL=="function"&&webkitURL.revokeObjectURL(T),E=0,a.style.display=m.style.display="block",l.style.display=A.style.display=V.style.display="none"}}).catch(function(T){C(T)})}return a.srcObject!==void 0?(a.srcObject=t,k=function(){a.srcObject=null}):a.mozSrcObject!==void 0&&(a.mozSrcObject=t,k=function(){a.mozSrcObject=null}),a.onloadedmetadata=function(){a.muted=!0,a.play()},top.document.documentElement.style.overflow="hidden",top.document.body.appendChild(u),n.push(function(){top.document.documentElement.style.overflow=q,top.document.body.removeChild(u),y!==void 0&&y.state!=="inactive"&&(y.stop(),y=void 0),k(),B()}),new Promise(function(O,M){top.document.addEventListener("keyup",function C(T){n.push(function(){top.document.removeEventListener("keyup",C)}),(T.keyCode===27||T.code==="Escape")&&M(new Qe("User did not select."))}),m.onclick=function(){try{if(e===x.Type.Image){Rt();var C=document.createElement("canvas");C.width=h,C.height=r;var T=C.getContext("2d");T.drawImage(a,0,0,C.width,C.height),It(C).then(function(D){G(D,O,M)}).catch(function(D){M(D)})}else c?(Ot(),y.stop(),v.style.borderRadius=v.style.WebkitBorderRadius=v.style.MozBorderRadius="50%",v.style.left="3px",v.style.top="3px",v.style.width="44px",v.style.height="44px"):(Ft(),S=setInterval(function(){++E,s.innerText=he(E/6e3)+":"+he(E/100%60)+":"+he(E%100)},10),y=new MediaRecorder(a.srcObject||a.mozSrcObject),b=[],y.ondataavailable=function(D){D.data.size>0&&b.push(D.data)},y.onstop=function(){B(),G(new Blob(b,{type:"video/webm"}),O,M)},y.start(),v.style.borderRadius=v.style.WebkitBorderRadius=v.style.MozBorderRadius="10%",v.style.top="12px",v.style.left="12px",v.style.width="27px",v.style.height="27px"),c=!c}catch(D){M(D)}}})}function he(e){return e=parseInt(e),e<=9?"0"+e:e}function Ge(e){return new Promise(function(t,n){try{var o=new FileReader;o.onloadend=function(){t(o.result)},o.onerror=function(q){n(q)},o.readAsDataURL(e)}catch(q){n(q)}})}function It(e){return new Promise(function(t,n){if(typeof e.toBlob=="function")e.toBlob(function(u){t(u)},"image/png");else if(typeof e.msToBlob=="function")t(e.msToBlob());else try{for(var o=e.toDataURL("image/png"),q=atob(o.split(",")[1]),h=new ArrayBuffer(q.length),r=new Uint8Array(h),l=0;l<q.length;l++)r[l]=q.charCodeAt(l);t(new Blob([h],{type:o.split(",")[0].split(":")[1].split(";")[0]}))}catch(u){n(u)}})}function Bt(){var e=document.createElement("DIV"),t=Tt();return e.style.position="absolute",e.style.left="0",e.style.top=top.scrollY+"px",e.style.width="100%",e.style.height="100%",e.style.zIndex="2147483647",e.appendChild(t),e}function Ne(){var e=document.createElement("DIV");return e.style.position="absolute",e.style.top="0",e.style.height="100%",e.style.backgroundColor="#000",e}function kt(){var e=document.createElement("VIDEO");return e.style.position="absolute",e.style.top="30%",e.style.height="40%",e.controls=!1,e}function Tt(){var e=document.createElement("DIV");return e.style.position="absolute",e.style.left="0",e.style.top="0",e.style.width="100%",e.style.height="100%",e.style.backgroundColor="#111",e}function xt(){var e=document.createElement("DIV");return e.style.position="absolute",e.style.left="calc(50% - 50px)",e.style.top="calc(20% - 12px)",e.style.width="100px",e.style.height="24px",e.style.color="#FFF",e.style.fontWeight="400",e.style.textAlign="center",e.style.fontVariantNumeric="tabular-nums",e.style.fontFeatureSettings=e.style.WebkitFontFeatureSettings=e.style.MozFontFeatureSettings='"tnum"',e.innerText="00:00:00",e}function Mt(){var e=document.createElement("BUTTON");return e.style.position="relative",e.style.left="calc(50% - 30px)",e.style.top="calc(80% - 30px)",e.style.width="60px",e.style.height="60px",e.style.backgroundColor="#FFFFFF00",e.style.borderRadius=e.style.WebkitBorderRadius=e.style.MozBorderRadius="50%",e.style.cursor="pointer",e.style.border="5px solid #FFF",e}function Ct(e){var t=document.createElement("DIV");return t.style.position="absolute",t.style.left="3px",t.style.top="3px",t.style.width="44px",t.style.height="44px",t.style.borderRadius="50%",e===x.Type.Image?t.style.backgroundColor="#FFF":t.style.backgroundColor="#F00",bt("(prefers-reduced-motion: no-preference)").matches&&(t.style.transitionProperty=t.style.WebkitTransitionProperty=t.style.MozTransitionProperty="border-radius, width, height, top, left",t.style.transitionDuration=t.style.WebkitTransitionDuration=t.style.MozTransitionDuration="150ms",t.style.transitionTimingFunction=t.style.WebkitTransitionTimingFunction=t.style.MozTransitionTimingFunction="ease"),t}function Lt(e){var t;return e===x.Type.Video?(t=document.createElement("VIDEO"),t.controls=!0):t=document.createElement("IMG"),t.style.position="absolute",t.style.top="30%",t.style.height="40%",t.style.display="none",t}function Ut(){var e=document.createElement("BUTTON"),t=document.createElement("DIV");return e.style.display="none",e.style.position="absolute",e.style.top="calc(80% - 15px)",e.style.width="30px",e.style.height="30px",t.style.position="relative",t.style.top="-2px",t.style.display="inline-block",t.style.transform=t.style.webkitTransform=t.style.msTransform=t.style.OTransform=t.style.MozTransform="rotate(45deg)",t.style.width="16px",t.style.height="25px",t.style.borderBottom=t.style.borderRight="5px solid #FFF",e.appendChild(t),e}function Dt(){var e=document.createElement("BUTTON"),t=document.createElement("DIV"),n=document.createElement("DIV");return e.style.display="none",e.style.position="absolute",e.style.top="calc(80% - 15px)",e.style.width="30px",e.style.height="30px",t.style.position=n.style.position="relative",t.style.top="1px",t.style.left="3px",t.style.display=n.style.display="inline-block",t.style.transform=t.style.webkitTransform=t.style.msTransform=t.style.OTransform=t.style.MozTransform="rotate(45deg)",t.style.height=n.style.height="28px",t.style.borderRight=n.style.borderRight="5px solid #FFF",n.style.top="1px",n.style.left="-2px",n.style.transform=n.style.webkitTransform=n.style.msTransform=n.style.OTransform=n.style.MozTransform="rotate(315deg)",e.appendChild(t),e.appendChild(n),e}function ye(e){typeof window.Audio=="function"&&new Audio("data:audio/mpeg;base64,"+e).play()}function Ft(){ye("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")}function Ot(){ye("SUQzBAAAAAAAIlRTU0UAAAAOAAADTGF2ZjYxLjQuMTAwAAAAAAAAAAAAAAD/+1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYaW5nAAAADwAAAAsAAAfUACcnJycnJycnJ2pqampqampqaoGBgYGBgYGBgY+Pj4+Pj4+Pj5+fn5+fn5+fn7q6urq6urq6usrKysrKysrKytjY2NjY2NjY2OXl5eXl5eXl5fLy8vLy8vLy8v///////////wAAAABMYXZjNjEuOS4AAAAAAAAAAAAAAAAkAkAAAAAAAAAH1D6K2fAAAAAAAAAAAAAAAAAAAAAA//sQRAAP8AAAf4AAAAgAAA/wAAABAAAB/hQAACAAAD/CgAAEAoYAgFAgD8SmUNBi+Bni3gcogFh/gKg//kTHAe9IIXNUBOa1EzAM7gAAAAALufiYXk+AyDmkRp6aRPjIjB4iKzqg1Ur/+6BkIgAA9xFSplIAAAAAD/DAAAAGwDVh2beAAGQFbXsMIAEkO0wQZvwJqhMTzakehnLUU3doYIh1dAAAAAAAAAAPfBWO8bvd9htZY7SIcxAEmJw4AAA5ll8zGYrDONC1kCMcqe+lMgI0dyL7vrAHdgRYAAAAD/+20gLTGiS0QxyiqLy0Z0LAC74LsgKbIX1ALeTA6VP/06mMuc0PyHeAXtBIAAdh4U4NI3VQVYAWAAg4AAAXmFLis16DJT7hGz+j6wbKDQBaIAAJGYMOGALQfwN+AGm+vUFTznekQrX//92X1LRLCp9isChAIaZ0KpAAeWBHAA+8AAAqYAQxNzgwDfBx/6JwPalMWhtAAAQDgAAAAAeeE6s7oCPUvfqNfWs2fbpPos3qr23KCY3AjgGQB0FwMhgiAmnPqChEacfNUGwAFgBiHf+olgITPPADB2gOAwGnAAAOvYUAB31lAsgAAAAAAAxZG0loP66gkfYlBPChKaYy8hOnSKKgDcpoCJWGB6CoSpK96EDJ5pnMqv2M/kEP29eD5oyGTzRkACvBgUE1TAAAAAAAAFfH2HSRIIUS6wDINyk1zCKgADOQAEQP+AAB+s8REuJjPmhNAPFA0ShtozIoBDqhJpY91UiUWOUh3DQysACJYDRQAAAP/1UVKu2RQVHCGFgC9QBsGDx/8AAB+VDFgErkLBz/+0Bk3gExBAhXf2AACBXg6s7ngAFDWBtXoKcEYC0C7XgDAFXxIdfAgmBUK9foayo6UdriDRTZrHAABSqEAAAAAN1JxK+PMBawA2QC4G4H7lMaB8tLxF0IFrMLAiozf/neicE5UhPAAA1IwEocrwwZ1QBtgEANwAAB+ylmLIqWJYBHMk0zUrur9sE2zSOAIAGQGhTqxY26AAALAG7ww8cUVcEKn/wu2BG90p/BowNjCIB/IyptAP/7EGT4gTDQBtV4LMEYCKCLFAAJA8NcHVWgJwRoHYNoYAAYDAAJMHAAOAAAGG9BJCBuUAUf/qAAAogGwS2k5rAADMUAfgSu4GA+3oc//NrCRFqohYoH6w0XFUxBTUUzLjEwMFVVVVVV//sgZPgBMN0HVfgJaKgKgBruAAABBVQ1VfT3gCBYBar6jmAFVVVVVQAN+OABsAABEsQyYCYq/ptln/yNZi0rvK/S+gAAbAYC8CIHOA0Sf+Z/+nto8O7xwqpMQU1FMy4xMDCqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7UGTzgAIlEtVuayAAHgGbTsOkAEVcMVn9QwAgU4Tru5BgBaqqqqqqqqqqqqqqqqqqqqoAEoAACpoGCqBSdUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+yBk+AExJRfV6FkqmBABax4AKDMDzF9VoWRKaCUFqxAAiNxVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZPiDsOIXVWoAFCoJoVoFASxRgwwrVcAfCCAWACsQAAAGVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk+IGwnAtXeAoyKAkhWmQACCUChCtXoAEA4BkAadAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGT2AfDFCtVoAUmIAqAZ4AAAAQKcb1OgHGngAAA/wAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZOMP8FMJUEABMhoAAA/wAAABAAAB/gAAACAAAD/AAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU=")}function Rt(){ye("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")}var me,wt,bt,Qe,Et,pe,x,je=I(()=>{me=(j(),f(_)),wt=(L(),f(F)),bt=(ie(),f(Be)),Qe=(fe(),f(Pe)),Et=(ne(),f(ue)),pe=!1;x=function(e){if(e==null||e.type==null||!x.isSupported||[x.Type.Image,x.Type.Video].indexOf(e.type)===-1)throw new TypeError("Failed to construct 'Native.Camera': Illegal constructor.");var t=this;this.run=function(){return new Promise(function(r,l){l(new Et("Initialization error."))})},this.bind=function(r){r.onclick=function(l){l.preventDefault(),t.run()}};var n=e.type;switch(me.name){case"Android":case"iOS":var o=document.createElement("INPUT");o.type="file",o.capture="environment",o.accept=e.type+"/*",this.run=function(){return new Promise(function(r,l){o.onchange=function(){var u=o.files;if(u.length>0){var a=u[0];Ge(a).then(function(m){r({blob:a,dataURL:m})}).catch(function(m){l(m)})}else l(new Qe("User did not select."))},o.click()})};return;case"Windows":case"MacOS":var q;if(navigator.mediaDevices&&typeof navigator.mediaDevices.getUserMedia=="function")q=function(r){return navigator.mediaDevices.getUserMedia(r)};else{var h=navigator.getUserMedia||navigator.webkitGetUserMedia||navigator.mozGetUserMedia||navigator.msGetUserMedia;typeof h=="function"&&(q=function(r){return new Promise(function(l,u){h.call(navigator,r,l,u)})})}this.run=function(){return new Promise(function(r,l){if(pe)return l(new Error("Native.Camera is already running."));pe=!0;var u=[];function a(){pe=!1;for(var m=0;m<u.length;m++)u[m]()}try{q({video:!0,audio:n===x.Type.Video}).then(function(m){u.push(function(){for(var v=m.getTracks(),s=0;s<v.length;s++)v[s].stop()}),St(n,m,u).then(function(v){r(v)}).catch(function(v){l(v)}).finally(function(){a()})}).catch(function(m){a(),l(m)})}catch(m){a(),l(m)}})};break;default:}};x.Type=wt({Image:"image",Video:"video"});Object.defineProperty(x,"isSupported",{get(){return me.name==="Android"||me.name==="iOS"||(typeof navigator.getUserMedia=="function"||typeof navigator.webkitGetUserMedia=="function"||typeof navigator.mozGetUserMedia=="function"||typeof navigator.msGetUserMedia=="function"||navigator.mediaDevices!==void 0&&typeof navigator.mediaDevices.getUserMedia=="function")&&new Blob(["\xE4"]).size===2&&typeof window.MediaRecorder=="function"},configurable:!1,enumerable:!0});module.exports=x});var Yt={};function zt(e){if(e==null)return!1;var t=e.length;return typeof t=="number"&&t>=0&&!(t%1)}function Z(e){return encodeURIComponent(e).replace(/%20/g,"%20").replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16)})}function ze(e){if(e==null)return null;if(e instanceof HTMLFormElement)return ze(new FormData(e));if(e instanceof FormData){var t={};return e.forEach(function(n,o){t.hasOwnProperty(o)?(Array.isArray(t[o])||(t[o]=[t[o]]),t[o].push(n)):t[o]=n}),t}return e}function W(e,t=""){if(typeof e!="string"&&zt(e))for(var n="",o=0;o<e.length;o++)n+=Z(e[o]),o!==e.length-1&&(n+=",");return e==null?"":e instanceof HTMLInputElement?t+Z(e.value):e instanceof HTMLElement?t+Z(e.innerText):e instanceof Node?t+Z(e.textContent):t+Z(e)}var Nt,Qt,Gt,jt,H,Ye=I(()=>{Nt=(j(),f(_)),Qt=(se(),f(Fe)),Gt=(L(),f(F)),jt=(oe(),f(ce));H=function(e){if(e==null||e.type==null||[H.Type.Telephone,H.Type.SMS,H.Type.Mail].indexOf(e.type)===-1)throw new TypeError("Failed to construct 'Native.Messenger': Illegal constructor.");e=ze(e);var t=e.type+":"+W(e.to)+"?"+W(e.cc,"cc=")+W(e.bcc,"&bcc=")+W(e.subject,"&subject=")+W(e.body,"&body=");this.run=function(n=top){return new Promise(function(o,q){Qt(Nt,n,t).then(function(){o()}).catch(function(){return q(new jt("No url can be opened."))})})}};H.Type=Gt({Telephone:"tel",SMS:"sms",Mail:"mailto"});module.exports=H});var Xt={};function ve(e){return e*Math.PI/180}function Wt(e,t){var n=Math.cos(ve(e.longitude-t.longitude)),o=Math.cos(ve(e.latitude-t.latitude)),q=Math.cos(ve(e.latitude+t.latitude));return Math.acos((n*(o+q)+(o-q))/2)}function Ht(e,t){return e===void 0||t===void 0||e.latitude===t.latitude&&e.longitude===t.longitude?0:6384e3*Wt(e,t)}function Ke(e,t){var n=top.document.createElement("SCRIPT"),o="_"+Math.floor(Math.random()*(1<<30)),q="?";if(/\?[^&=]*=[^&=]*/.test(e)&&(q="&"),n.src=e+q+"callback="+o,top[o]!==void 0)return Ke(e,t);function h(){try{delete top[o]}catch{top[o]=void 0}n.parentNode.removeChild(n)}top[o]=function(r){t(r)},n.onload=function(){h()},n.onerror=function(){h()},top.document.head.appendChild(n)}var Kt,Zt,Jt,Ze=I(()=>{Kt=6e4,Zt=6e3;Jt=function(e,t){if(e==null)throw new TypeError("Failed to construct 'Native.Geolocation': Illegal constructor.");var n=navigator.geolocation!==void 0&&navigator.geolocation.watchPosition!==void 0,o,q,h,r;navigator.permissions&&navigator.permissions.query?navigator.permissions.query({name:"geolocation"}).then(function(s){s.addEventListener("change",function(){l(s.state!=="denied")}),l(s.state!=="denied")}).catch(function(s){l(!1)}):navigator.geolocation!==void 0&&navigator.geolocation.getCurrentPosition!==void 0?o=setInterval(function(){navigator.geolocation.getCurrentPosition(function(){l(!0)},function(s){s.code===s.PERMISSION_DENIED&&l(!1)})},Kt):l(!1);function l(s){n^s&&(n=s,q!==void 0&&(s?(clearInterval(q),q=v()):(navigator.geolocation.clearWatch(q),q=m())))}function u(s){if(s.distance=Ht(h,s),s.speed===void 0){var d=new Date().getTime();if(r===void 0)s.speed=0;else{var i=(d-r)/1e3;i>0?s.speed=s.distance/i:s.speed=0}}h=s,r=new Date().getTime()}function a(){if(n){q!==void 0&&clearInterval(q),q=v();return}Ke("http://ip-api.com/json/?fields=lat,lon,status",function(s){var d={};if(s.status==="success"){if(d.latitude=s.lat,d.longitude=s.lon,d.accuracy=-1,h!==void 0&&d.latitude===h.latitude&&d.longitude===h.longitude)return;u(d),e(d)}else t&&t()})}function m(){return a(),setInterval(a,Zt)}function v(){return navigator.geolocation.watchPosition(function(s){var d={};d.latitude=s.coords.latitude,d.longitude=s.coords.longitude,d.accuracy=s.coords.accuracy,s.coords.altitude!==null&&(d.altitude=s.coords.altitude),s.coords.altitudeAccuracy!==null&&(d.altitudeAccuracy=s.coords.altitudeAccuracy),s.coords.heading!==null&&(d.heading=s.coords.heading),s.coords.speed!==null&&(d.speed=s.coords.speed),u(d),e(d)},function(s){s.code===s.PERMISSION_DENIED?(n=!1,q!==void 0&&navigator.geolocation.clearWatch(q),q=m()):t&&t()})}this.disconnect=function(){q!==void 0&&(n?navigator.geolocation.clearWatch(q):clearInterval(q)),o!==void 0&&clearInterval(o),q=void 0,h=void 0,o=void 0},this.observe=function(){this.disconnect(),n?q=v():q=m()}};module.exports=Jt});we();var _t=(L(),f(F));module.exports=_t({OS:(j(),f(_)),Engine:(Ie(),f(nt)),Appearance:(qe(),f(ke)),Theme:(xe(),f(rt)),SafeAreaInset:(Me(),f(st)),TitlebarArea:(Ce(),f(lt)),KeyboardInset:(Le(),f(ut)),App:(Re(),f(gt)),Camera:(je(),f(Pt)),Messenger:(Ye(),f(Yt)),Geolocation:(Ze(),f(Xt)),Error:{InitializationError:(ne(),f(ue)),URLOpenError:(oe(),f(ce)),UserNotSelectedError:(fe(),f(Pe))}});})();
|
|
2
|
+
//# sourceMappingURL=index.umd.js.map
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": 3,
|
|
3
|
+
"sources": ["../src/polyfill/promise.min.js", "../src/utils/freeze.js", "../src/os.js", "../src/engine.js", "../src/utils/matchMedia.js", "../src/appearance.js", "../src/theme.js", "../src/utils/createInsets.js", "../src/safeAreaInset.js", "../src/titlebarArea.js", "../src/keyboardInset.js", "../src/utils/openURL.js", "../src/utils/createCustomError.js", "../src/utils/initializationError.js", "../src/utils/urlOpenError.js", "../src/app.js", "../src/utils/userNotSelectedError.js", "../src/camera.js", "../src/messenger.js", "../src/geolocation.js", "../src/index.js"],
|
|
4
|
+
"sourcesContent": ["!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t():\"function\"==typeof define&&define.amd?define(t):t()}(0,function(){\"use strict\";function e(e){var t=this.constructor;return this.then(function(n){return t.resolve(e()).then(function(){return n})},function(n){return t.resolve(e()).then(function(){return t.reject(n)})})}function t(e){return new this(function(t,n){function r(e,n){if(n&&(\"object\"==typeof n||\"function\"==typeof n)){var f=n.then;if(\"function\"==typeof f)return void f.call(n,function(t){r(e,t)},function(n){o[e]={status:\"rejected\",reason:n},0==--i&&t(o)})}o[e]={status:\"fulfilled\",value:n},0==--i&&t(o)}if(!e||\"undefined\"==typeof e.length)return n(new TypeError(typeof e+\" \"+e+\" is not iterable(cannot read property Symbol(Symbol.iterator))\"));var o=Array.prototype.slice.call(e);if(0===o.length)return t([]);for(var i=o.length,f=0;o.length>f;f++)r(f,o[f])})}function n(e,t){this.name=\"AggregateError\",this.errors=e,this.message=t||\"\"}function r(e){var t=this;return new t(function(r,o){if(!e||\"undefined\"==typeof e.length)return o(new TypeError(\"Promise.any accepts an array\"));var i=Array.prototype.slice.call(e);if(0===i.length)return o();for(var f=[],u=0;i.length>u;u++)try{t.resolve(i[u]).then(r)[\"catch\"](function(e){f.push(e),f.length===i.length&&o(new n(f,\"All promises were rejected\"))})}catch(c){o(c)}})}function o(e){return!(!e||\"undefined\"==typeof e.length)}function i(){}function f(e){if(!(this instanceof f))throw new TypeError(\"Promises must be constructed via new\");if(\"function\"!=typeof e)throw new TypeError(\"not a function\");this._state=0,this._handled=!1,this._value=undefined,this._deferreds=[],s(e,this)}function u(e,t){for(;3===e._state;)e=e._value;0!==e._state?(e._handled=!0,f._immediateFn(function(){var n=1===e._state?t.onFulfilled:t.onRejected;if(null!==n){var r;try{r=n(e._value)}catch(o){return void a(t.promise,o)}c(t.promise,r)}else(1===e._state?c:a)(t.promise,e._value)})):e._deferreds.push(t)}function c(e,t){try{if(t===e)throw new TypeError(\"A promise cannot be resolved with itself.\");if(t&&(\"object\"==typeof t||\"function\"==typeof t)){var n=t.then;if(t instanceof f)return e._state=3,e._value=t,void l(e);if(\"function\"==typeof n)return void s(function(e,t){return function(){e.apply(t,arguments)}}(n,t),e)}e._state=1,e._value=t,l(e)}catch(r){a(e,r)}}function a(e,t){e._state=2,e._value=t,l(e)}function l(e){2===e._state&&0===e._deferreds.length&&f._immediateFn(function(){e._handled||f._unhandledRejectionFn(e._value)});for(var t=0,n=e._deferreds.length;n>t;t++)u(e,e._deferreds[t]);e._deferreds=null}function s(e,t){var n=!1;try{e(function(e){n||(n=!0,c(t,e))},function(e){n||(n=!0,a(t,e))})}catch(r){if(n)return;n=!0,a(t,r)}}n.prototype=Error.prototype;var d=setTimeout;f.prototype[\"catch\"]=function(e){return this.then(null,e)},f.prototype.then=function(e,t){var n=new this.constructor(i);return u(this,new function(e,t,n){this.onFulfilled=\"function\"==typeof e?e:null,this.onRejected=\"function\"==typeof t?t:null,this.promise=n}(e,t,n)),n},f.prototype[\"finally\"]=e,f.all=function(e){return new f(function(t,n){function r(e,o){try{if(o&&(\"object\"==typeof o||\"function\"==typeof o)){var u=o.then;if(\"function\"==typeof u)return void u.call(o,function(t){r(e,t)},n)}i[e]=o,0==--f&&t(i)}catch(c){n(c)}}if(!o(e))return n(new TypeError(\"Promise.all accepts an array\"));var i=Array.prototype.slice.call(e);if(0===i.length)return t([]);for(var f=i.length,u=0;i.length>u;u++)r(u,i[u])})},f.any=r,f.allSettled=t,f.resolve=function(e){return e&&\"object\"==typeof e&&e.constructor===f?e:new f(function(t){t(e)})},f.reject=function(e){return new f(function(t,n){n(e)})},f.race=function(e){return new f(function(t,n){if(!o(e))return n(new TypeError(\"Promise.race accepts an array\"));for(var r=0,i=e.length;i>r;r++)f.resolve(e[r]).then(t,n)})},f._immediateFn=\"function\"==typeof setImmediate&&function(e){setImmediate(e)}||function(e){d(e,0)},f._unhandledRejectionFn=function(e){void 0!==console&&console&&console.warn(\"Possible Unhandled Promise Rejection:\",e)};var p=function(){if(\"undefined\"!=typeof self)return self;if(\"undefined\"!=typeof window)return window;if(\"undefined\"!=typeof global)return global;throw Error(\"unable to locate global object\")}();\"function\"!=typeof p.Promise?p.Promise=f:(p.Promise.prototype[\"finally\"]||(p.Promise.prototype[\"finally\"]=e),p.Promise.allSettled||(p.Promise.allSettled=t),p.Promise.any||(p.Promise.any=r))});\n", "/**\n * @template T\n * @param obj {T}\n * @returns {Readonly<T>}\n */\nmodule.exports = function freeze(obj) {\n\tif (typeof Object.freeze !== \"function\") {\n\t\tvar keys = Object.keys(obj);\n\t\t\n\t\tfor (var i = 0, key = keys[i]; i < keys.length; i++) {\n\t\t\tif (obj.hasOwnProperty(key)) {\n\t\t\t\ttry {\n\t\t\t\t\tObject.defineProperty(obj, key, {\n\t\t\t\t\t\twritable: false,\n\t\t\t\t\t\tconfigurable: false\n\t\t\t\t\t});\n\t\t\t\t} catch (_) {\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t\n\t\treturn obj;\n\t}\n\t\n\treturn Object.freeze(obj);\n}\n", "var freeze = require(\"./utils/freeze\");\n\n/**\n * @param str {string | undefined}\n * @returns {string | undefined}\n */\nfunction parseWindowsVersion(str) {\n\tvar map = {\n\t\t\"4.90\": \"ME\",\n\t\t\"NT3.51\": \"NT 3.11\",\n\t\t\"NT4.0\": \"NT 4.0\",\n\t\t\"NT 5.0\": \"2000\",\n\t\t\"NT 5.1\": \"XP\",\n\t\t\"NT 5.2\": \"XP\",\n\t\t\"NT 6.0\": \"Vista\",\n\t\t\"NT 6.1\": \"7\",\n\t\t\"NT 6.2\": \"8\",\n\t\t\"NT 6.3\": \"8.1\",\n\t\t\"NT 6.4\": \"10\",\n\t\t\"NT 10.0\": \"10\",\n\t\t\"ARM\": \"RT\"\n\t};\n\t\n\tvar mapped = map[str];\n\t\n\tif (mapped !== void 0) {\n\t\treturn mapped;\n\t}\n\t\n\treturn str;\n}\n\n/**\n * @param str {string | undefined}\n * @returns {string | undefined}\n */\nfunction parseIOSOrMacVersion(str) {\n\tif (str === void 0) {\n\t\treturn void 0;\n\t}\n\t\n\treturn str.replace(/_/g, \".\");\n}\n\nfunction getRenderer() {\n\t/** @type {HTMLCanvasElement} */\n\tvar canvas = document.createElement(\"CANVAS\");\n\t\n\tif (typeof canvas.getContext !== \"function\") return void 0;\n\t\n\tvar gl = canvas.getContext(\"experimental-webgl\") || canvas.getContext(\"webgl\");\n\t\n\tif (gl === null) return void 0;\n\t\n\tvar extension = gl.getExtension(\"WEBGL_debug_renderer_info\");\n\t\n\tif (typeof gl.getParameter !== \"function\") return void 0;\n\t\n\tif (extension == null) return gl.getParameter(gl.RENDERER);\n\t\n\treturn gl.getParameter(extension.UNMASKED_RENDERER_WEBGL);\n}\n\n/**\n * @type {NativeOS}\n */\nvar OS = (function (ua) {\n\tvar matched,\n\t\tresult = {\n\t\t\trenderer: getRenderer(),\n\t\t\tname: \"Unknown\",\n\t\t\tversion: void 0,\n\t\t},\n\t\t/** @type {[RegExp, string, undefined | ((matched: string | undefined) => string | undefined)][]} */\n\t\tmaps = [\n\t\t\t[/android\\w*[-\\/.; ]?([\\d.]*)/i, \"Android\"],\n\t\t\t[/microsoft windows (vista|xp)/i, \"Windows\"],\n\t\t\t[/windows (?:phone(?: os)?|mobile|iot)[\\/ ]?([.\\w ]*)/i, \"Windows\", parseWindowsVersion],\n\t\t\t[/windows nt 6\\.2; (arm)/i, \"Windows\", parseWindowsVersion],\n\t\t\t[/windows[\\/ ]([ntce\\d. ]+\\w)(?!.+xbox)/i, \"Windows\", parseWindowsVersion],\n\t\t\t[/(?:win(?=[39n])|win 9x )([nt\\d.]+)/i, \"Windows\", parseWindowsVersion],\n\t\t\t[/[adehimnop]{4,7}\\b(?:.*os (\\w+) like mac|; opera)/i, \"iOS\", parseIOSOrMacVersion],\n\t\t\t[/(?:ios;fbsv\\/|iphone.+ios[\\/ ])([\\d.]+)/i, \"iOS\", parseIOSOrMacVersion],\n\t\t\t[/cfnetwork\\/.+darwin/i, \"iOS\"],\n\t\t\t[/mac os x ?([\\w. ]*)/i, \"MacOS\", parseIOSOrMacVersion],\n\t\t\t[/(?:macintosh|mac_powerpc\\b)(?!.+haiku)/i, \"MacOS\", parseIOSOrMacVersion],\n\t\t];\n\t\n\tfor (var i = 0; i < maps.length; i++) {\n\t\tmatched = ua.match(maps[i][0]);\n\t\t\n\t\tif (matched !== null) {\n\t\t\tresult.name = maps[i][1];\n\t\t\tif (maps[i][2] !== void 0) {\n\t\t\t\tresult.version = maps[i][2](matched[1]);\n\t\t\t} else {\n\t\t\t\tresult.version = matched[1];\n\t\t\t}\n\t\t\t\n\t\t\treturn freeze(result);\n\t\t}\n\t}\n\t\n\treturn freeze(result);\n})(navigator.userAgent);\n\nmodule.exports = OS;\n", "var freeze = require(\"./utils/freeze\");\n\n/**\n * @param str {string | undefined}\n * @returns {string}\n */\nfunction parseLibWebVersion(str) {\n\treturn \"LibWeb\";\n}\n\n/**\n * @type {NativeEngine}\n */\nvar Engine = (function (ua) {\n\tvar matched,\n\t\tresult = {\n\t\t\tname: \"Unknown\",\n\t\t\tisWebView: /; ?wv|applewebkit(?!.*safari)/i.test(ua),\n\t\t\tversion: void 0,\n\t\t},\n\t\t/** @type {[RegExp, string, undefined | ((matched: string | undefined) => string | undefined)][]} */\n\t\tmaps = [\n\t\t\t[/windows.+ edge\\/([\\w.]+)/i, \"EdgeHTML\"],\n\t\t\t[/arkweb\\/([\\w.]+)/i, \"ArkWeb\"],\n\t\t\t[/webkit\\/537\\.36.+chrome\\/(?!27)([\\w.]+)/i, \"Blink\"],\n\t\t\t[/presto\\/([\\w.]+)/i, \"Presto\"],\n\t\t\t[/webkit\\/([\\w.]+)/i, \"WebKit\"],\n\t\t\t[/trident\\/([\\w.]+)/i, \"Trident\"],\n\t\t\t[/netfront\\/([\\w.]+)/i, \"NetFront\"],\n\t\t\t[/netsurf\\/([\\w.]+)/i, \"NetSurf\"],\n\t\t\t[/amaya\\/([\\w.]+)/i, \"Amaya\"],\n\t\t\t[/lynx\\/([\\w.]+)/i, \"Lynx\"],\n\t\t\t[/w3m\\/([\\w.]+)/i, \"w3m\"],\n\t\t\t[/goanna\\/([\\w.]+)/i, \"Goanna\"],\n\t\t\t[/servo\\/([\\w.]+)/i, \"Servo\"],\n\t\t\t[/ekiohflow\\/([\\w.]+)/i, \"Flow\"],\n\t\t\t[/khtml[\\/ ]\\(?([\\w.]+)/i, \"KHTML\"],\n\t\t\t[/tasman[\\/ ]\\(?([\\w.]+)/i, \"Tasman\"],\n\t\t\t[/links[\\/ ]\\(?([\\w.]+)/i, \"Links\"],\n\t\t\t[/icab[\\/ ]([23]\\.[\\d.]+)/i, \"iCab\"],\n\t\t\t[/\\blibweb/i, \"LibWeb\", parseLibWebVersion],\n\t\t\t[/ladybird\\//i, \"LibWeb\", parseLibWebVersion],\n\t\t\t[/rv:([\\w.]{1,9})\\b.+gecko/i, \"Gecko\"],\n\t\t]\n\t\n\tfor (var i = 0; i < maps.length; i++) {\n\t\tmatched = ua.match(maps[i][0]);\n\t\t\n\t\tif (matched !== null) {\n\t\t\tresult.name = maps[i][1];\n\t\t\tif (maps[i][2] !== void 0) {\n\t\t\t\tresult.version = maps[i][2](matched[1]);\n\t\t\t} else {\n\t\t\t\tresult.version = matched[1];\n\t\t\t}\n\t\t\t\n\t\t\treturn freeze(result);\n\t\t}\n\t}\n\t\n\treturn freeze(result);\n})(navigator.userAgent);\n\nmodule.exports = Engine;\n", "module.exports = (function () {\n\tif (typeof window.matchMedia === \"function\") {\n\t\treturn window.matchMedia;\n\t}\n\t\n\tvar media = window.styleMedia || window.media;\n\t\n\tif (media === void 0) {\n\t\tvar style = document.createElement(\"STYLE\"),\n\t\t\tinfo;\n\t\t\n\t\tstyle.type = \"text/css\";\n\t\tstyle.id = \"match-media-polyfill\";\n\t\t\n\t\tdocument.head.appendChild(style);\n\t\t\n\t\tif (typeof window.getComputedStyle === \"function\") {\n\t\t\tinfo = window.getComputedStyle(style);\n\t\t} else {\n\t\t\tinfo = style.currentStyle;\n\t\t}\n\t\t\n\t\tmedia = {\n\t\t\tmatchMedia: function (query) {\n\t\t\t\tvar text = \"@media \" + query + \"{ #\" + style.id + \" {width: 1px;} }\";\n\t\t\t\t\n\t\t\t\tif (style.styleSheet !== void 0) {\n\t\t\t\t\tstyle.styleSheet.cssText = text;\n\t\t\t\t} else {\n\t\t\t\t\tstyle.textContent = text;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn info.width === \"1px\";\n\t\t\t}\n\t\t};\n\t}\n\t\n\treturn function (query) {\n\t\treturn {\n\t\t\tmatches: media.matchMedia(query),\n\t\t\tmedia: query\n\t\t};\n\t};\n})();\n", "var freeze = require(\"./utils/freeze\"),\n\tmatchMedia = require(\"./utils/matchMedia\");\n\nvar listeners = [],\n\tquery = matchMedia(\"(prefers-color-scheme: dark)\");\n\n/**\n * @type {NativeAppearance}\n */\nvar Appearance = {\n\t/**\n\t * @param {(value: EnumValues<NativeAppearanceType>) => void} listener\n\t */\n\taddListener: function (listener) {\n\t\tfunction wrapped(event) {\n\t\t\tlistener(event.matches ? Appearance.Type.Dark : Appearance.Type.Light);\n\t\t}\n\t\t\n\t\tlisteners.push({original: listener, wrapped: wrapped});\n\t\t\n\t\tif (typeof query.addEventListener === \"function\") {\n\t\t\treturn query.addEventListener(\"change\", wrapped);\n\t\t} else if (typeof query.addListener === \"function\") {\n\t\t\treturn query.addListener(wrapped);\n\t\t}\n\t},\n\t/**\n\t * @param {(value: EnumValues<NativeAppearanceType>) => void} listener\n\t */\n\tremoveListener: function (listener) {\n\t\tfor (var i = 0; i < listeners.length; i++) {\n\t\t\tif (listeners[i].original === listener) {\n\t\t\t\tvar wrapped = listeners[i].wrapped;\n\t\t\t\t\n\t\t\t\tif (typeof query.removeEventListener === \"function\") {\n\t\t\t\t\tquery.removeEventListener(\"change\", wrapped);\n\t\t\t\t} else if (typeof query.removeListener === \"function\") {\n\t\t\t\t\treturn query.removeListener(wrapped);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tlisteners.splice(i, 1);\n\t\t\t\treturn;\n\t\t\t}\n\t\t}\n\t}\n};\n\nObject.defineProperty(Appearance, \"value\", {\n\t/**\n\t * @returns {EnumValues<NativeAppearanceType>}\n\t */\n\tget: function () {\n\t\tif (query.matches) {\n\t\t\treturn Appearance.Type.Dark;\n\t\t} else {\n\t\t\treturn Appearance.Type.Light;\n\t\t}\n\t},\n\tconfigurable: false,\n\tenumerable: true,\n});\n\n/**\n * @enum {string}\n * @type {NativeAppearanceType}\n */\nAppearance.Type = freeze({\n\tLight: \"light\",\n\tDark: \"dark\",\n});\n\nmodule.exports = Appearance;\n", "var Appearance = require(\"./appearance\"),\n\tfreeze = require(\"./utils/freeze\");\n\n/** @type {EnumValues<NativeAppearanceType> | undefined} */\nvar listener,\n\t/** @type {Record<string, HTMLMetaElement>} */\n\tmetas = {\n\t\tlight: void 0,\n\t\tdark: void 0,\n\t\tiosStatusBar: void 0,\n\t\twindowsPhone: void 0,\n\t},\n\t/** @type {MutationObserver} */\n\tobserver,\n\t/** @type {((value: Partial<NativeThemeContent>) => void)[]} */\n\tobserverListeners = [],\n\t/** @type {((value: EnumValues<NativeAppearanceType>) => void)[]} */\n\tappearanceListeners = [];\n\n/**\n * @param attributes {[string, string][]}\n * @returns {HTMLMetaElement}\n */\nfunction getMeta(attributes) {\n\tvar query = \"\",\n\t\telement,\n\t\ti;\n\t\n\tfor (i = 0; i < attributes.length; i++) {\n\t\tquery += \"[\" + attributes[i][0] + \"='\" + attributes[i][1] + \"']\";\n\t}\n\t\n\telement = top.document.head.querySelector(\"meta\" + query);\n\t\n\tif (element === null) {\n\t\telement = top.document.createElement(\"META\");\n\t\t\n\t\tfor (i = 0; i < attributes.length; i++) {\n\t\t\telement[attributes[i][0]] = attributes[i][1];\n\t\t}\n\t\t\n\t\ttop.document.head.appendChild(element);\n\t}\n\t\n\treturn element;\n}\n\nfunction initMetas() {\n\tif (metas.light === void 0) {\n\t\tmetas.light = getMeta([[\"name\", \"theme-color\"], [\"media\", \"(prefers-color-scheme: light)\"]]);\n\t}\n\t\n\tif (metas.dark === void 0) {\n\t\tmetas.dark = getMeta([[\"name\", \"theme-color\"], [\"media\", \"(prefers-color-scheme: dark)\"]]);\n\t}\n\t\n\tif (metas.iosStatusBar === void 0) {\n\t\tmetas.iosStatusBar = getMeta([[\"name\", \"apple-mobile-web-app-status-bar-style\"]]);\n\t}\n\t\n\tif (metas.windowsPhone === void 0) {\n\t\tmetas.windowsPhone = getMeta([[\"name\", \"msapplication-navbutton-color\"]]);\n\t}\n}\n\n/**\n * @type {NativeTheme}\n */\nvar Theme = {\n\t/**\n\t * @param {(value: Partial<NativeThemeContent>) => void} listener\n\t */\n\taddListener: function (listener) {\n\t\tif (typeof window.MutationObserver !== \"function\") {\n\t\t\treturn;\n\t\t}\n\t\t\n\t\tif (observer === void 0) {\n\t\t\tobserver = new MutationObserver(function (mutations) {\n\t\t\t\tvar i,\n\t\t\t\t\tchanged = false;\n\t\t\t\t\n\t\t\t\tfor (i = 0; i < mutations.length; i++) {\n\t\t\t\t\tvar mutation = mutations[i],\n\t\t\t\t\t\ttarget = mutation.target,\n\t\t\t\t\t\ttype = mutation.type;\n\t\t\t\t\t\n\t\t\t\t\tif (type !== \"attributes\" || target.tagName !== \"META\") {\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tif ([metas.light, metas.dark, metas.iosStatusBar, metas.windowsPhone].indexOf(target) !== -1) {\n\t\t\t\t\t\tchanged = true;\n\t\t\t\t\t\tbreak;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif (!changed) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tfor (i = 0; i < observerListeners.length; i++) {\n\t\t\t\t\tobserverListeners[i](Theme.value);\n\t\t\t\t}\n\t\t\t});\n\t\t\t\n\t\t\tobserver.observe(top.document.head, {attributes: true, childList: true, subtree: true});\n\t\t}\n\t\t\n\t\tfunction onAppearanceChange() {\n\t\t\tinitMetas();\n\t\t\t\n\t\t\tif (metas.dark.content !== metas.light.content) {\n\t\t\t\tlistener(Theme.value);\n\t\t\t}\n\t\t}\n\t\t\n\t\tAppearance.addListener(onAppearanceChange);\n\t\t\n\t\tappearanceListeners.push(onAppearanceChange);\n\t\tobserverListeners.push(listener);\n\t},\n\t/**\n\t * @param {(value: Partial<NativeThemeContent>) => void} listener\n\t */\n\tremoveListener: function (listener) {\n\t\tif (typeof window.MutationObserver !== \"function\" || observer === void 0) {\n\t\t\treturn;\n\t\t}\n\t\t\n\t\tfor (var i = 0; i < observerListeners.length; i++) {\n\t\t\tif (observerListeners[i] === listener) {\n\t\t\t\tobserverListeners.splice(i, 1);\n\t\t\t\tappearanceListeners.splice(i, 1);\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t\t\n\t\tif (observerListeners.length === 0) {\n\t\t\tobserver.disconnect();\n\t\t\tobserver = void 0;\n\t\t}\n\t},\n\t/**\n\t * @param theme {Partial<Record<NativeAppearanceType[keyof NativeAppearanceType], Partial<NativeThemeContent>>>}\n\t */\n\tsetTheme: function (theme) {\n\t\tinitMetas();\n\t\t\n\t\tif (listener !== void 0) {\n\t\t\tAppearance.removeListener(listener);\n\t\t\tlistener = void 0;\n\t\t}\n\t\t\n\t\tlistener = function (appearance) {\n\t\t\tvar color = theme[appearance];\n\t\t\t\n\t\t\tif (color !== void 0) {\n\t\t\t\tif (color.iosStatusBar !== void 0) {\n\t\t\t\t\tmetas.iosStatusBar.content = color.iosStatusBar;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif (color.windowsPhone !== void 0) {\n\t\t\t\t\tmetas.windowsPhone.content = color.iosStatusBar;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t\n\t\tAppearance.addListener(listener);\n\t\t\n\t\tvar light = theme.light,\n\t\t\tdark = theme.dark;\n\t\t\n\t\tif (dark !== void 0 && dark.theme !== void 0) {\n\t\t\tmetas.dark.content = dark.theme;\n\t\t}\n\t\t\n\t\tif (light !== void 0) {\n\t\t\tif (light.theme !== void 0) {\n\t\t\t\tmetas.light.content = light.theme;\n\t\t\t}\n\t\t\t\n\t\t\tif (Appearance.value === \"light\") {\n\t\t\t\tif (light.iosStatusBar !== void 0) {\n\t\t\t\t\tmetas.iosStatusBar.content = light.iosStatusBar;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif (light.windowsPhone !== void 0) {\n\t\t\t\t\tmetas.windowsPhone.content = light.windowsPhone;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t\n\t\tif (dark !== void 0) {\n\t\t\tif (dark.theme !== void 0) {\n\t\t\t\tmetas.dark.content = dark.theme;\n\t\t\t}\n\t\t\t\n\t\t\tif (Appearance.value === \"dark\") {\n\t\t\t\tif (dark.iosStatusBar !== void 0) {\n\t\t\t\t\tmetas.iosStatusBar.content = dark.iosStatusBar;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif (dark.windowsPhone !== void 0) {\n\t\t\t\t\tmetas.windowsPhone.content = dark.windowsPhone;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nObject.defineProperty(Theme, \"value\", {\n\t/**\n\t * @returns {Partial<NativeThemeContent>}\n\t */\n\tget: function () {\n\t\tvar result = {};\n\t\t\n\t\tinitMetas();\n\t\t\n\t\tif (metas[Appearance.value].content !== \"\") {\n\t\t\tresult.theme = metas[Appearance.value].content;\n\t\t}\n\t\t\n\t\tif (metas.iosStatusBar.content !== \"\") {\n\t\t\tresult.iosStatusBar = metas.iosStatusBar.content;\n\t\t}\n\t\t\n\t\tif (metas.windowsPhone.content !== \"\") {\n\t\t\tresult.windowsPhone = metas.windowsPhone.content;\n\t\t}\n\t\t\n\t\treturn result;\n\t},\n\tconfigurable: false,\n\tenumerable: true,\n});\n\n/**\n * @enum {string}\n * @type {NativeThemeType}\n */\nTheme.Type = freeze({\n\tTheme: 'theme',\n\tIOSStatusBar: 'iosStatusBar',\n\tWindowsPhone: 'windowsPhone',\n});\n\nmodule.exports = Theme;\n", "var prefix;\n\nfunction getPrefix() {\n\tif (!window.CSS || typeof CSS.supports !== \"function\") {\n\t\treturn null;\n\t}\n\t\n\tif (CSS.supports(\"x:env(x)\")) {\n\t\treturn \"env\";\n\t}\n\t\n\tif (CSS.supports(\"x:constant(x)\")) {\n\t\treturn \"constant\";\n\t}\n\t\n\treturn null;\n}\n\nvar requestAnimationFrame = (function () {\n\tif (typeof window.requestAnimationFrame === \"function\") {\n\t\treturn window.requestAnimationFrame;\n\t}\n\t\n\tif (typeof window.msRequestAnimationFrame === \"function\") {\n\t\treturn window.msRequestAnimationFrame;\n\t}\n\t\n\tif (typeof window.mozRequestAnimationFrame === \"function\") {\n\t\treturn window.mozRequestAnimationFrame;\n\t}\n\t\n\tif (typeof window.webkitRequestAnimationFrame === \"function\") {\n\t\treturn window.webkitRequestAnimationFrame;\n\t}\n\t\n\tif (typeof window.oRequestAnimationFrame === \"function\") {\n\t\treturn window.oRequestAnimationFrame;\n\t}\n\t\n\tvar previous = 0;\n\t\n\treturn function (callback) {\n\t\tvar current = new Date().getTime(),\n\t\t\ttimeout = Math.max(0, 16 - (current - previous)),\n\t\t\tid = setTimeout(function () {\n\t\t\t\tcallback(current + timeout);\n\t\t\t}, timeout);\n\t\t\n\t\tprevious = current + timeout;\n\t\treturn id;\n\t};\n})();\n\nmodule.exports = function createInsets(dataset, attributes) {\n\tif (prefix === void 0) {\n\t\tprefix = getPrefix();\n\t}\n\t\n\tvar result = {\n\t\taddListener: function (listener) {\n\t\t\tlisteners.push(listener);\n\t\t},\n\t\tremoveListener: function (listener) {\n\t\t\tfor (var i = 0; i < listeners.length; i++) {\n\t\t\t\tif (listeners[i] === listener) {\n\t\t\t\t\tlisteners.splice(i, 1);\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\tvalue: {},\n\t};\n\t\n\tvar parent = document.createElement(\"div\"),\n\t\tlisteners = [],\n\t\tchangedAttrs = [],\n\t\tupdateScheduled = false,\n\t\tavailableShadowRoot = window.ShadowRoot !== void 0;\n\t\n\tif (parent.dataset !== void 0) {\n\t\tparent.dataset[dataset] = \"\";\n\t}\n\t\n\tdocument.body.appendChild(parent);\n\t\n\tif (availableShadowRoot) {\n\t\tvar style = document.createElement(\"style\");\n\t\t\n\t\tstyle.innerText = \":host { position: absolute !important; top: 0 !important; left: 0 !important; width: 0 !important; height: 0 !important; visibility: hidden !important; overflow: hidden !important; } \"\n\t\t\t+ \":host > div { position: absolute; width: 100px; height: 200px; overflow: hidden; box-sizing: border-box; } \"\n\t\t\t+ \".pixel { transition: 0s; animation: none; width: 400px; height: 400px; } \"\n\t\t\t+ \".percent { transition: 0s; animation: none; width: 250%; height: 250%; } \"\n\t\t\n\t\tparent = parent.attachShadow({mode: \"closed\"});\n\t\t\n\t\tparent.appendChild(style);\n\t} else {\n\t\tparent.style.position = \"absolute\";\n\t\tparent.style.top = \"0\";\n\t\tparent.style.left = \"0\";\n\t\tparent.style.width = \"0\";\n\t\tparent.style.height = \"0\";\n\t\tparent.style.visibility = \"hidden\";\n\t\tparent.style.overflow = \"hidden\";\n\t}\n\t\n\tfor (var attr in attributes) {\n\t\tif (attributes.hasOwnProperty(attr)) {\n\t\t\taddChild(parent, attr, attributes[attr], result.value);\n\t\t}\n\t}\n\t\n\tfunction triggerListeners() {\n\t\tupdateScheduled = false;\n\t\t\n\t\tfor (var i = 0; i < listeners.length; i++) {\n\t\t\tlisteners[i](result.value);\n\t\t}\n\t\t\n\t\tchangedAttrs.length = 0;\n\t}\n\t\n\tfunction scheduleTrigger(attr) {\n\t\tif (changedAttrs.indexOf(attr) === -1) {\n\t\t\tchangedAttrs.push(attr);\n\t\t}\n\t\t\n\t\tif (!updateScheduled) {\n\t\t\tupdateScheduled = true;\n\t\t\t\n\t\t\tsetTimeout(function () {\n\t\t\t\trequestAnimationFrame(triggerListeners);\n\t\t\t}, 0);\n\t\t}\n\t}\n\t\n\tfunction addChild(parent, attrKey, attrValue, styles) {\n\t\tvar parent1 = document.createElement(\"DIV\"),\n\t\t\tparent2 = document.createElement(\"DIV\"),\n\t\t\tchild1 = document.createElement(\"DIV\"),\n\t\t\tchild2 = document.createElement(\"DIV\"),\n\t\t\tmax = 1e4;\n\t\t\n\t\tparent1.style.paddingBottom = parent2.style.paddingBottom = prefix + \"(\" + attrValue + \")\";\n\t\t\n\t\tif (availableShadowRoot) {\n\t\t\tchild1.className = \"pixel\";\n\t\t\tchild2.className = \"percent\";\n\t\t} else {\n\t\t\tparent1.style.position = parent2.style.position = \"absolute\";\n\t\t\tparent1.style.width = parent2.style.width = \"100px\";\n\t\t\tparent1.style.height = parent2.style.height = \"200px\";\n\t\t\tparent1.style.overflow = parent2.style.overflow = \"hidden\";\n\t\t\tparent1.style.boxSizing = parent2.style.boxSizing = \"border-box\";\n\t\t\tchild1.style.transition = child2.style.transition = \"0s\";\n\t\t\tchild1.style.animation = child2.style.animation = \"none\";\n\t\t\tchild1.style.width = child1.style.height = \"400px\";\n\t\t\tchild2.style.width = child2.style.height = \"250%\";\n\t\t}\n\t\t\n\t\tparent1.appendChild(child1);\n\t\tparent2.appendChild(child2);\n\t\tparent.appendChild(parent1);\n\t\tparent.appendChild(parent2);\n\t\t\n\t\tparent1.scrollTop = parent2.scrollTop = max;\n\t\t\n\t\tvar previous1 = parent1.scrollTop,\n\t\t\tprevious2 = parent2.scrollTop;\n\t\t\n\t\tfunction onscroll() {\n\t\t\tvar currentScrollTop = this.scrollTop;\n\t\t\t\n\t\t\tif ((this === parent1 && currentScrollTop === previous1) || (this === parent2 && currentScrollTop === previous2)) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\tparent1.scrollTop = parent2.scrollTop = max;\n\t\t\tprevious1 = parent1.scrollTop;\n\t\t\tprevious2 = parent2.scrollTop;\n\t\t\t\n\t\t\tscheduleTrigger(attrKey);\n\t\t}\n\t\t\n\t\tparent1.addEventListener(\"scroll\", onscroll, false);\n\t\tparent2.addEventListener(\"scroll\", onscroll, false);\n\t\t\n\t\tvar computed = window.getComputedStyle(parent1);\n\t\t\n\t\tObject.defineProperty(styles, attrKey, {\n\t\t\tget: function () {\n\t\t\t\treturn parseFloat(computed.paddingBottom);\n\t\t\t},\n\t\t\tconfigurable: false,\n\t\t\tenumerable: true,\n\t\t});\n\t}\n\t\n\treturn result;\n}\n", "/**\n * @type {NativeSafeAreaInset}\n */\nmodule.exports = require(\"./utils/createInsets\")(\"safeAreaInset\", {\n\ttop: \"safe-area-inset-top\",\n\tbottom: \"safe-area-inset-bottom\",\n\tleft: \"safe-area-inset-left\",\n\tright: \"safe-area-inset-right\",\n});\n", "/**\n * @type {NativeTitlebarArea}\n */\nmodule.exports = require(\"./utils/createInsets\")(\"titlebarArea\", {\n\tx: \"titlebar-area-x\",\n\ty: \"titlebar-area-y\",\n\twidth: \"titlebar-area-width\",\n\theight: \"titlebar-area-height\",\n});\n", "/**\n * @type {NativeKeyboardInset}\n */\nmodule.exports = require(\"./utils/createInsets\")(\"keyboardInset\", {\n\ttop: \"keyboard-inset-top\",\n\tbottom: \"keyboard-inset-bottom\",\n\tleft: \"keyboard-inset-left\",\n\tright: \"keyboard-inset-right\",\n\twidth: \"keyboard-inset-width\",\n\theight: \"keyboard-inset-height\",\n});\n", "/**\n * @returns {boolean}\n */\nfunction isDocumentHidden(target) {\n\tif (target.document.hidden !== void 0) {\n\t\treturn target.document.hidden;\n\t}\n\t\n\tif (target.document.webkitHidden !== void 0) {\n\t\treturn target.document.webkitHidden;\n\t}\n\t\n\treturn true;\n}\n\n/**\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @returns {void}\n */\nfunction openURLWithIFrame(target, url) {\n\tvar iframe = document.createElement(\"IFRAME\"),\n\t\tid;\n\t\n\tfunction onload() {\n\t\tiframe.removeEventListener(\"load\", onload);\n\t\tclearTimeout(id);\n\t\t\n\t\ttarget.document.body.removeChild(iframe);\n\t}\n\t\n\tiframe.src = url;\n\tiframe.style.display = \"none\";\n\t\n\ttarget.document.body.appendChild(iframe);\n\t\n\tiframe.addEventListener(\"load\", onload);\n\t\n\tid = setTimeout(onload, 2000);\n}\n\n/**\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @returns {void}\n */\nfunction openURLWithHref(target, url) {\n\tvar a = target.document.createElement(\"A\"),\n\t\tfake;\n\t\n\ta.href = url;\n\t\n\ttarget.document.body.appendChild(a);\n\t\n\ttry {\n\t\tfake = new target.MouseEvent(\"click\", {\n\t\t\tbubbles: true,\n\t\t\tcancelable: true,\n\t\t\tview: target\n\t\t});\n\t} catch (_) {\n\t\t// ES5 or Browsers in the ES5~ES6 transition period\n\t\tfake = target.document.createEvent(\"MouseEvents\");\n\t\t\n\t\tfake.initMouseEvent(\"click\", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);\n\t}\n\t\n\ta.dispatchEvent(fake);\n\t\n\ttarget.document.body.removeChild(a);\n}\n\n/**\n * @param os {NativeOS}\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @param timeout {number}\n * @returns {Promise<void>}\n */\nfunction openURLAndroidOrWindowsOrMacOS(os, target, url, timeout) {\n\treturn new Promise(function (resolve, reject) {\n\t\tvar id;\n\t\t\n\t\tfunction onblur() {\n\t\t\tclearTimeout(id);\n\t\t\t\n\t\t\ttarget.removeEventListener(\"blur\", onblur);\n\t\t\ttarget.addEventListener(\"focus\", onfocus);\n\t\t}\n\t\t\n\t\tfunction onfocus() {\n\t\t\ttarget.removeEventListener(\"focus\", onfocus);\n\t\t\t\n\t\t\tresolve();\n\t\t}\n\t\t\n\t\tid = setTimeout(function () {\n\t\t\treject();\n\t\t\t\n\t\t\ttarget.removeEventListener(\"blur\", onblur);\n\t\t}, timeout);\n\t\t\n\t\ttarget.addEventListener(\"blur\", onblur);\n\t\t\n\t\topenURLWithHref(target, url);\n\t});\n}\n\n/**\n * @param os {NativeOS}\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @returns {Promise<void>}\n */\nfunction openURLIOS(os, target, url) {\n\treturn new Promise(function (resolve, reject) {\n\t\tvar id,\n\t\t\tgoe8 = parseInt(os.version) >= 8;\n\t\t\n\t\tfunction onblur() {\n\t\t\tclearTimeout(id);\n\t\t\t\n\t\t\ttarget.addEventListener(\"focus\", onfocus);\n\t\t\ttarget.removeEventListener(\"blur\", onblur);\n\t\t}\n\t\t\n\t\tfunction onfocus() {\n\t\t\tid = setTimeout(function () {\n\t\t\t\tif (!isDocumentHidden(target)) {\n\t\t\t\t\treject();\n\t\t\t\t} else {\n\t\t\t\t\tresolve();\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif (goe8) {\n\t\t\t\t\ttarget.document.removeEventListener(\"visibilitychange\", onvisibilitychange);\n\t\t\t\t} else {\n\t\t\t\t\ttarget.document.removeEventListener(\"pagehide\", onvisibilitychange);\n\t\t\t\t}\n\t\t\t}, 2000);\n\t\t\t\n\t\t\ttarget.removeEventListener(\"focus\", onfocus);\n\t\t}\n\t\t\n\t\tfunction onvisibilitychange() {\n\t\t\tclearTimeout(id);\n\t\t\t\n\t\t\ttarget.removeEventListener(\"blur\", onblur);\n\t\t\ttarget.removeEventListener(\"focus\", onfocus);\n\t\t\t\n\t\t\tif (goe8) {\n\t\t\t\ttarget.document.removeEventListener(\"visibilitychange\", onvisibilitychange);\n\t\t\t} else {\n\t\t\t\ttarget.document.removeEventListener(\"pagehide\", onvisibilitychange);\n\t\t\t}\n\t\t\t\n\t\t\tresolve();\n\t\t}\n\t\t\n\t\ttarget.addEventListener(\"blur\", onblur);\n\t\t\n\t\tif (goe8) {\n\t\t\ttarget.document.addEventListener(\"visibilitychange\", onvisibilitychange);\n\t\t} else {\n\t\t\ttarget.document.addEventListener(\"pagehide\", onvisibilitychange);\n\t\t}\n\t\t\n\t\topenURLWithHref(target, url);\n\t});\n}\n\n/**\n * @param os {NativeOS}\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @returns {Promise<void>}\n */\nfunction openURLAndroid(os, target, url) {\n\treturn openURLAndroidOrWindowsOrMacOS(os, target, url, 1000);\n}\n\n/**\n * @param os {NativeOS}\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @returns {Promise<void>}\n */\nfunction openURLWindowsOrMacOS(os, target, url) {\n\treturn openURLAndroidOrWindowsOrMacOS(os, target, url, 750);\n}\n\n/**\n * @param os {NativeOS}\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @returns {Promise<void>}\n */\nmodule.exports = function openURL(os, target, url) {\n\tif (url) {\n\t\tswitch (os.name) {\n\t\t\tcase \"Android\":\n\t\t\t\treturn openURLAndroid(os, target, url);\n\t\t\tcase \"iOS\":\n\t\t\t\treturn openURLIOS(os, target, url);\n\t\t\tcase \"Windows\":\n\t\t\tcase \"MacOS\":\n\t\t\t\treturn openURLWindowsOrMacOS(os, target, url);\n\t\t}\n\t}\n\t\n\treturn Promise.reject();\n}\n", "module.exports = function createCustomError(name) {\n\tfunction CustomError(message) {\n\t\tif (!(this instanceof CustomError)) {\n\t\t\treturn new CustomError(message);\n\t\t}\n\t\t\n\t\tthis.name = name;\n\t\tthis.message = message;\n\t\t\n\t\tif (Error.captureStackTrace) {\n\t\t\tError.captureStackTrace(this, CustomError);\n\t\t} else {\n\t\t\tthis.stack = new Error().stack;\n\t\t}\n\t}\n\t\n\tCustomError.prototype = Object.create(Error.prototype);\n\tCustomError.prototype.constructor = CustomError;\n\t\n\treturn CustomError;\n};\n", "module.exports = require(\"./createCustomError\")(\"InitializationError\");\n", "module.exports = require(\"./createCustomError\")(\"URLOpenError\");\n", "var OS = require(\"./os\"),\n\topenURL = require(\"./utils/openURL\"),\n\tfreeze = require(\"./utils/freeze\"),\n\tInitializationError = require(\"./utils/initializationError\"),\n\tURLOpenError = require(\"./utils/urlOpenError\");\n\n/**\n * @param bundle {string}\n * @returns {number | undefined}\n */\nfunction getTrackId(bundle) {\n\ttry {\n\t\tvar xhr = new XMLHttpRequest();\n\t\t\n\t\txhr.open(\"GET\", \"http://itunes.apple.com/lookup?bundleId=\" + bundle, false);\n\t\txhr.send();\n\t\t\n\t\tif (xhr.status === 200) {\n\t\t\tvar response = JSON.parse(xhr.response);\n\t\t\t\n\t\t\tif (response.results.length > 0) {\n\t\t\t\treturn response.results[0].trackId;\n\t\t\t}\n\t\t}\n\t\t\n\t\treturn void 0;\n\t} catch (_) {\n\t\treturn void 0;\n\t}\n}\n\n/**\n * @param input {string}\n * @returns {string}\n */\nfunction addDelimiter(input) {\n\tif (/\\w+:\\/\\/.*/.test(input)) return input;\n\t\n\treturn input + \"://\";\n}\n\n/**\n * @param input {string}\n * @returns {string}\n */\nfunction clearDelimiter(input) {\n\treturn input.replace(/:\\/\\/.*$/, \"\");\n}\n\n/**\n * @param {NativeAppArgument} data\n * @type {NativeApp}\n * @constructor\n */\nvar App = function (data) {\n\tif (data === void 0) {\n\t\tthrow new TypeError(\"Failed to construct 'Native.App': Illegal constructor.\");\n\t}\n\t\n\tthis.run = function () {\n\t\treturn new Promise(function (resolve, reject) {\n\t\t\treject(new InitializationError(\"Initialization error.\"));\n\t\t});\n\t};\n\t\n\tvar scheme,\n\t\tid,\n\t\tfallback,\n\t\tpackageName,\n\t\tready = Promise.resolve(),\n\t\turls = [],\n\t\tisOpenWebStore;\n\t\n\tswitch (OS.name) {\n\t\tcase \"Android\":\n\t\t\tif (data.android === void 0) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\tvar matched,\n\t\t\t\tintent,\n\t\t\t\tchromiumVersion;\n\t\t\t\n\t\t\tscheme = data.android.scheme;\n\t\t\tid = data.android.package;\n\t\t\tfallback = data.android.fallback;\n\t\t\tintent = data.android.intent;\n\t\t\tisOpenWebStore = data.android.isOpenWebStore;\n\t\t\t\n\t\t\tif (intent !== void 0 && scheme === void 0) {\n\t\t\t\tmatched = intent.match(/scheme=([^;]*)/);\n\t\t\t\t\n\t\t\t\tif (matched !== null) {\n\t\t\t\t\tscheme = matched[1];\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tif (intent !== void 0 && id === void 0) {\n\t\t\t\tmatched = intent.match(/package=([^;]*)/);\n\t\t\t\t\n\t\t\t\tif (matched !== null) {\n\t\t\t\t\tid = matched[1];\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tif (intent !== void 0 && fallback === void 0) {\n\t\t\t\tmatched = intent.match(/S\\.browser_fallback_url=([^;]*)/);\n\t\t\t\t\n\t\t\t\tif (matched !== null) {\n\t\t\t\t\tfallback = matched[1];\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tif (scheme === void 0 && id === void 0 && fallback === void 0) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\tif (intent === void 0) {\n\t\t\t\tintent = \"intent://open#Intent;\";\n\t\t\t\t\n\t\t\t\tif (scheme !== void 0) {\n\t\t\t\t\tintent = intent + \"scheme=\" + clearDelimiter(scheme) + \";\";\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tif (id !== void 0) {\n\t\t\t\t\tintent = intent + \"package=\" + id + \";\";\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tintent = intent + \"end;\";\n\t\t\t}\n\t\t\t\n\t\t\tif (window.chrome !== void 0) {\n\t\t\t\tmatched = navigator.userAgent.match(/chrom(?:e|ium)\\/([\\w.]+)/i);\n\t\t\t\t\n\t\t\t\tif (matched !== null) {\n\t\t\t\t\tchromiumVersion = parseInt(matched[1]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\t// Intent-based app launching is not supported on Chromium versions below 25.0.0.0\n\t\t\t// On Chromium 25.0.0.0 to 42.0.0.0, fallback behavior for Intent needs to be verified\n\t\t\t// From Chromium 42.0.0.0 onward, Intent fallback works as expected\n\t\t\tif (chromiumVersion >= 25 && intent !== void 0) {\n\t\t\t\tif (chromiumVersion <= 42) {\n\t\t\t\t\tready = new Promise(function (resolve) {\n\t\t\t\t\t\tvar iframe = top.document.createElement(\"IFRAME\"),\n\t\t\t\t\t\t\turl = \"intent://open#Intent;scheme=;end;\",\n\t\t\t\t\t\t\tresolved = false;\n\t\t\t\t\t\t\n\t\t\t\t\t\tfunction cleanup(supported) {\n\t\t\t\t\t\t\tif (!resolved) {\n\t\t\t\t\t\t\t\tresolved = true;\n\t\t\t\t\t\t\t\tresolve(supported);\n\t\t\t\t\t\t\t\tiframe.removeEventListener(\"load\", onload);\n\t\t\t\t\t\t\t\ttop.document.body.removeChild(iframe);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tfunction onload() {\n\t\t\t\t\t\t\tcleanup(iframe.src !== url);\n\t\t\t\t\t\t}\n\t\t\t\t\t\t\n\t\t\t\t\t\tiframe.addEventListener(\"load\", onload);\n\t\t\t\t\t\tiframe.src = url;\n\t\t\t\t\t\t\n\t\t\t\t\t\ttop.document.body.appendChild(iframe);\n\t\t\t\t\t\t\n\t\t\t\t\t\tsetTimeout(function () {\n\t\t\t\t\t\t\tcleanup(false);\n\t\t\t\t\t\t}, 500);\n\t\t\t\t\t})\n\t\t\t\t\t\t.then(function (supported) {\n\t\t\t\t\t\t\tif (supported) {\n\t\t\t\t\t\t\t\turls.push([intent, App.State.Intent]);\n\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\turls.push([intent.replace(/package=.*?;/, \"\").replace(/S\\.browser_fallback_url=.*?;/, \"\"), App.State.Intent]);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tif (fallback !== void 0) {\n\t\t\t\t\t\t\t\turls.push([fallback, App.State.Fallback]);\n\t\t\t\t\t\t\t} else if (id !== void 0) {\n\t\t\t\t\t\t\t\turls.push([\"market://details?id=\" + id, App.State.Store]);\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tif (isOpenWebStore) {\n\t\t\t\t\t\t\t\t\turls.push([\"https://play.google.com/store/apps/details?id=\" + id, App.State.Store]);\n\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t});\n\t\t\t\t\t\n\t\t\t\t\tbreak;\n\t\t\t\t} else {\n\t\t\t\t\turls.push([intent, App.State.Intent]);\n\t\t\t\t}\n\t\t\t} else if (scheme !== void 0) {\n\t\t\t\turls.push([addDelimiter(scheme), App.State.Scheme]);\n\t\t\t}\n\t\t\t\n\t\t\tif (fallback !== void 0) {\n\t\t\t\turls.push([fallback, App.State.Fallback]);\n\t\t\t} else if (id !== void 0) {\n\t\t\t\turls.push([\"market://details?id=\" + id, App.State.Store]);\n\t\t\t\t\n\t\t\t\tif (isOpenWebStore) {\n\t\t\t\t\turls.push([\"https://play.google.com/store/apps/details?id=\" + id, App.State.Store]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tbreak;\n\t\tcase \"Windows\":\n\t\t\tif (data.windows === void 0) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\tscheme = data.windows.scheme;\n\t\t\tid = data.windows.productId;\n\t\t\tisOpenWebStore = data.windows.isOpenWebStore;\n\t\t\tfallback = data.windows.fallback;\n\t\t\t\n\t\t\tif (scheme !== void 0) {\n\t\t\t\turls.push([addDelimiter(scheme), App.State.Scheme]);\n\t\t\t}\n\t\t\t\n\t\t\tif (fallback !== void 0) {\n\t\t\t\turls.push([fallback, App.State.Fallback]);\n\t\t\t} else if (id !== void 0) {\n\t\t\t\turls.push([\"ms-windows-store://pdp/?ProductId=\" + id, App.State.Store]);\n\t\t\t\t\n\t\t\t\tif (isOpenWebStore) {\n\t\t\t\t\turls.push([\"https://apps.microsoft.com/detail/\" + id, App.State.Store]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tbreak;\n\t\tcase \"iOS\":\n\t\t\tif (data.ios === void 0) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\tvar universal = data.ios.universal;\n\t\t\t\n\t\t\tscheme = data.ios.scheme;\n\t\t\tpackageName = data.ios.package;\n\t\t\tid = data.ios.trackId;\n\t\t\tfallback = data.ios.fallback;\n\t\t\t\n\t\t\tif (universal !== void 0 && parseInt(OS.version) >= 9) {\n\t\t\t\turls.push([universal, App.State.Universal]);\n\t\t\t} else if (scheme !== void 0) {\n\t\t\t\turls.push([scheme, App.State.Scheme]);\n\t\t\t}\n\t\t\t\n\t\t\tif (id === void 0 && packageName !== void 0) {\n\t\t\t\tid = getTrackId(packageName);\n\t\t\t}\n\t\t\t\n\t\t\tif (fallback !== void 0) {\n\t\t\t\turls.push([fallback, App.State.Fallback]);\n\t\t\t} else if (id !== void 0) {\n\t\t\t\tif (urls.length === 0) {\n\t\t\t\t\turls.push([\"itms-apps://itunes.apple.com/app/id\" + id + \"?mt=8\", App.State.Store]);\n\t\t\t\t} else {\n\t\t\t\t\turls.push([\"https://itunes.apple.com/kr/app/id\" + id + \"?mt=8\", App.State.Store]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tbreak;\n\t\tcase \"MacOS\":\n\t\t\tif (data.mac === void 0) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\t\n\t\t\tscheme = data.mac.scheme;\n\t\t\tpackageName = data.ios.package;\n\t\t\tid = data.mac.trackId;\n\t\t\tfallback = data.mac.fallback;\n\t\t\tisOpenWebStore = data.mac.isOpenWebStore;\n\t\t\t\n\t\t\tif (scheme !== void 0) {\n\t\t\t\turls.push([addDelimiter(scheme), App.State.Scheme]);\n\t\t\t}\n\t\t\t\n\t\t\tif (id === void 0 && packageName !== void 0) {\n\t\t\t\tid = getTrackId(packageName);\n\t\t\t}\n\t\t\t\n\t\t\tif (fallback !== void 0) {\n\t\t\t\turls.push([fallback, App.State.Fallback]);\n\t\t\t} else if (id !== void 0) {\n\t\t\t\turls.push([\"macappstore://itunes.apple.com/app/id\" + id + \"?mt=12\", App.State.Store]);\n\t\t\t\t\n\t\t\t\tif (isOpenWebStore) {\n\t\t\t\t\turls.push([\"https://apps.apple.com/us/app/id\" + id + \"?mt=12\", App.State.Store]);\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tbreak;\n\t\tdefault:\n\t\t\treturn;\n\t}\n\t\n\t/**\n\t * @param target {WindowProxy}\n\t * @returns {Promise<EnumValues<NativeAppState>>}\n\t */\n\tthis.run = function (target = top) {\n\t\treturn ready.then(function () {\n\t\t\tconsole.log(urls);\n\t\t\treturn new Promise(function (resolve, reject) {\n\t\t\t\tfunction tryOpenURL(index = 0) {\n\t\t\t\t\tif (index >= urls.length) {\n\t\t\t\t\t\treturn reject(new URLOpenError(\"No url can be opened.\"));\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tvar url = urls[index][0],\n\t\t\t\t\t\tstate = urls[index][1];\n\t\t\t\t\t\n\t\t\t\t\treturn openURL(OS, target, url)\n\t\t\t\t\t\t.then(function () {\n\t\t\t\t\t\t\tresolve(state);\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.catch(function (e) {\n\t\t\t\t\t\t\ttryOpenURL(++index);\n\t\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\treturn tryOpenURL();\n\t\t\t});\n\t\t});\n\t};\n};\n\n/**\n * @enum {number}\n * @type {NativeAppState}\n */\nApp.State = freeze({\n\tScheme: 0,\n\tUniversal: 1,\n\tIntent: 2,\n\tFallback: 3,\n\tStore: 4,\n});\n\nmodule.exports = App;\n", "module.exports = require(\"./createCustomError\")(\"UserNotSelectedError\");\n", "var OS = require(\"./os\"),\n\tfreeze = require(\"./utils/freeze\"),\n\tmatchMedia = require(\"./utils/matchMedia\"),\n\tUserNotSelectedError = require(\"./utils/userNotSelectedError\"),\n\tInitializationError = require(\"./utils/initializationError\");\n\nvar run = false;\n\n/**\n * @param type\n * @param stream\n * @param cleanups\n * @returns {Promise<Blob>}\n */\nfunction createCameraElement(type, stream, cleanups) {\n\tvar setting = stream.getVideoTracks()[0].getSettings(),\n\t\tbeforeOverflow = top.document.documentElement.style.overflow,\n\t\twidth = setting.width || 640,\n\t\theight = setting.height || 480,\n\t\tsample = createSampleElement(type),\n\t\tcontainer = createContainerElement(),\n\t\tvideo = createVideoElement(),\n\t\trecordButton = createRecordButtonElement(),\n\t\trecordButtonInner = createRecordButtonInnerElement(type),\n\t\tstopwatch = createStopwatchElement(),\n\t\tpaddingLeft = createPaddingElement(),\n\t\tpaddingRight = createPaddingElement(),\n\t\tcheck = createCheckButton(),\n\t\txMark = createXMarkButton(),\n\t\tpadding = top.innerHeight * 0.4 / height * width / 2,\n\t\trecording = false,\n\t\trecorder,\n\t\tchunks = [],\n\t\tt = 0,\n\t\tid;\n\t\n\trecordButton.appendChild(recordButtonInner);\n\tif (type === Camera.Type.Video) {\n\t\tcontainer.appendChild(stopwatch);\n\t}\n\tcontainer.appendChild(video);\n\tcontainer.appendChild(sample);\n\tcontainer.appendChild(recordButton);\n\tcontainer.appendChild(paddingLeft);\n\tcontainer.appendChild(paddingRight);\n\tcontainer.appendChild(check);\n\tcontainer.appendChild(xMark);\n\t\n\tvideo.style.left = sample.style.left = \"calc(50% - \" + padding + \"px)\";\n\tpaddingLeft.style.left = paddingRight.style.right = \"0\";\n\tcheck.style.left = xMark.style.right = \"calc(50% - \" + (padding - 50) + \"px)\";\n\tpaddingLeft.style.width = paddingRight.style.width = \"calc(50% - \" + padding + \"px)\";\n\t\n\tfunction clearVideoSourceObject() {\n\t}\n\t\n\tfunction clearStopwatchInterval() {\n\t\tif (id !== void 0) {\n\t\t\tclearInterval(id);\n\t\t\tid = void 0;\n\t\t}\n\t}\n\t\n\tfunction showSample(blob, resolve, reject) {\n\t\tblobToDataURL(blob)\n\t\t\t.then(function (dataURL) {\n\t\t\t\tsample.src = dataURL;\n\t\t\t\t\n\t\t\t\tvideo.style.display = recordButton.style.display = \"none\";\n\t\t\t\tsample.style.display = check.style.display = xMark.style.display = \"block\";\n\t\t\t\t\n\t\t\t\tcheck.onclick = function () {\n\t\t\t\t\tresolve({blob: blob, dataURL: dataURL});\n\t\t\t\t};\n\t\t\t\t\n\t\t\t\txMark.onclick = function () {\n\t\t\t\t\tif (typeof window.URL === \"function\") {\n\t\t\t\t\t\tURL.revokeObjectURL(dataURL);\n\t\t\t\t\t} else if (typeof window.webkitURL === \"function\") {\n\t\t\t\t\t\twebkitURL.revokeObjectURL(dataURL);\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\tt = 0;\n\t\t\t\t\tvideo.style.display = recordButton.style.display = \"block\";\n\t\t\t\t\tsample.style.display = check.style.display = xMark.style.display = \"none\";\n\t\t\t\t};\n\t\t\t})\n\t\t\t.catch(function (e) {\n\t\t\t\treject(e);\n\t\t\t});\n\t}\n\t\n\tif (video.srcObject !== void 0) {\n\t\tvideo.srcObject = stream;\n\t\t\n\t\tclearVideoSourceObject = function () {\n\t\t\tvideo.srcObject = null;\n\t\t};\n\t} else if (video.mozSrcObject !== void 0) {\n\t\tvideo.mozSrcObject = stream;\n\t\t\n\t\tclearVideoSourceObject = function () {\n\t\t\tvideo.mozSrcObject = null;\n\t\t};\n\t}\n\t\n\tvideo.onloadedmetadata = function () {\n\t\tvideo.muted = true;\n\t\tvoid video.play();\n\t};\n\t\n\ttop.document.documentElement.style.overflow = \"hidden\";\n\ttop.document.body.appendChild(container);\n\t\n\tcleanups.push(\n\t\tfunction () {\n\t\t\ttop.document.documentElement.style.overflow = beforeOverflow;\n\t\t\ttop.document.body.removeChild(container);\n\t\t\t\n\t\t\tif (recorder !== void 0 && recorder.state !== \"inactive\") {\n\t\t\t\trecorder.stop();\n\t\t\t\trecorder = void 0;\n\t\t\t}\n\t\t\t\n\t\t\tclearVideoSourceObject();\n\t\t\tclearStopwatchInterval();\n\t\t}\n\t);\n\t\n\treturn new Promise(function (resolve, reject) {\n\t\ttop.document.addEventListener(\"keyup\", function onkeyup(e) {\n\t\t\tcleanups.push(\n\t\t\t\tfunction () {\n\t\t\t\t\ttop.document.removeEventListener(\"keyup\", onkeyup);\n\t\t\t\t}\n\t\t\t);\n\t\t\t\n\t\t\tif (e.keyCode === 27 || e.code === \"Escape\") {\n\t\t\t\treject(new UserNotSelectedError(\"User did not select.\"));\n\t\t\t}\n\t\t});\n\t\t\n\t\trecordButton.onclick = function () {\n\t\t\ttry {\n\t\t\t\tif (type === Camera.Type.Image) {\n\t\t\t\t\tplayCaptureSound();\n\t\t\t\t\t\n\t\t\t\t\tvar canvas = document.createElement(\"canvas\");\n\t\t\t\t\t\n\t\t\t\t\tcanvas.width = width;\n\t\t\t\t\tcanvas.height = height;\n\t\t\t\t\t\n\t\t\t\t\tvar ctx = canvas.getContext(\"2d\");\n\t\t\t\t\t\n\t\t\t\t\tctx.drawImage(video, 0, 0, canvas.width, canvas.height);\n\t\t\t\t\t\n\t\t\t\t\tcanvasToBlob(canvas)\n\t\t\t\t\t\t.then(function (blob) {\n\t\t\t\t\t\t\tshowSample(blob, resolve, reject);\n\t\t\t\t\t\t})\n\t\t\t\t\t\t.catch(function (e) {\n\t\t\t\t\t\t\treject(e);\n\t\t\t\t\t\t});\n\t\t\t\t} else {\n\t\t\t\t\tif (!recording) {\n\t\t\t\t\t\tplayRecordStartSound();\n\t\t\t\t\t\t\n\t\t\t\t\t\tid = setInterval(function () {\n\t\t\t\t\t\t\t++t;\n\t\t\t\t\t\t\tstopwatch.innerText = padLeft(t / 6000) + \":\" + padLeft((t / 100) % 60) + \":\" + padLeft(t % 100);\n\t\t\t\t\t\t}, 10);\n\t\t\t\t\t\t\n\t\t\t\t\t\trecorder = new MediaRecorder(video.srcObject || video.mozSrcObject);\n\t\t\t\t\t\tchunks = [];\n\t\t\t\t\t\t\n\t\t\t\t\t\trecorder.ondataavailable = function (event) {\n\t\t\t\t\t\t\tif (event.data.size > 0) {\n\t\t\t\t\t\t\t\tchunks.push(event.data);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t};\n\t\t\t\t\t\t\n\t\t\t\t\t\trecorder.onstop = function () {\n\t\t\t\t\t\t\tclearStopwatchInterval();\n\t\t\t\t\t\t\tshowSample(new Blob(chunks, {type: \"video/webm\"}), resolve, reject);\n\t\t\t\t\t\t};\n\t\t\t\t\t\t\n\t\t\t\t\t\trecorder.start();\n\t\t\t\t\t\t\n\t\t\t\t\t\trecordButtonInner.style.borderRadius = recordButtonInner.style.WebkitBorderRadius = recordButtonInner.style.MozBorderRadius = \"10%\";\n\t\t\t\t\t\trecordButtonInner.style.top = \"12px\";\n\t\t\t\t\t\trecordButtonInner.style.left = \"12px\";\n\t\t\t\t\t\trecordButtonInner.style.width = \"27px\";\n\t\t\t\t\t\trecordButtonInner.style.height = \"27px\";\n\t\t\t\t\t} else {\n\t\t\t\t\t\tplayRecordStopSound();\n\t\t\t\t\t\t\n\t\t\t\t\t\trecorder.stop();\n\t\t\t\t\t\t\n\t\t\t\t\t\trecordButtonInner.style.borderRadius = recordButtonInner.style.WebkitBorderRadius = recordButtonInner.style.MozBorderRadius = \"50%\";\n\t\t\t\t\t\trecordButtonInner.style.left = \"3px\";\n\t\t\t\t\t\trecordButtonInner.style.top = \"3px\";\n\t\t\t\t\t\trecordButtonInner.style.width = \"44px\";\n\t\t\t\t\t\trecordButtonInner.style.height = \"44px\";\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\trecording = !recording;\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\treject(e);\n\t\t\t}\n\t\t};\n\t});\n}\n\nfunction padLeft(number) {\n\tnumber = parseInt(number);\n\tif (number <= 9) return \"0\" + number;\n\treturn number;\n}\n\nfunction blobToDataURL(blob) {\n\treturn new Promise(function (resolve, reject) {\n\t\ttry {\n\t\t\tvar reader = new FileReader();\n\t\t\t\n\t\t\treader.onloadend = function () {\n\t\t\t\tresolve(reader.result);\n\t\t\t};\n\t\t\t\n\t\t\treader.onerror = function (e) {\n\t\t\t\treject(e);\n\t\t\t};\n\t\t\t\n\t\t\treader.readAsDataURL(blob);\n\t\t} catch (e) {\n\t\t\treject(e);\n\t\t}\n\t});\n}\n\nfunction canvasToBlob(canvas) {\n\treturn new Promise(function (resolve, reject) {\n\t\tif (typeof canvas.toBlob === \"function\") {\n\t\t\tcanvas.toBlob(\n\t\t\t\tfunction (blob) {\n\t\t\t\t\tresolve(blob);\n\t\t\t\t}\n\t\t\t\t, \"image/png\"\n\t\t\t);\n\t\t} else if (typeof canvas.msToBlob === \"function\") {\n\t\t\tresolve(canvas.msToBlob());\n\t\t} else {\n\t\t\ttry {\n\t\t\t\tvar dataURL = canvas.toDataURL(\"image/png\"),\n\t\t\t\t\tbyteString = atob(dataURL.split(\",\")[1]),\n\t\t\t\t\tab = new ArrayBuffer(byteString.length),\n\t\t\t\t\tia = new Uint8Array(ab);\n\t\t\t\t\n\t\t\t\tfor (var i = 0; i < byteString.length; i++) {\n\t\t\t\t\tia[i] = byteString.charCodeAt(i);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tresolve(\n\t\t\t\t\tnew Blob(\n\t\t\t\t\t\t[ab],\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: dataURL\n\t\t\t\t\t\t\t\t.split(\",\")[0]\n\t\t\t\t\t\t\t\t.split(\":\")[1]\n\t\t\t\t\t\t\t\t.split(\";\")[0]\n\t\t\t\t\t\t}\n\t\t\t\t\t)\n\t\t\t\t);\n\t\t\t} catch (e) {\n\t\t\t\treject(e);\n\t\t\t}\n\t\t}\n\t});\n}\n\nfunction createContainerElement() {\n\tvar div = document.createElement(\"DIV\"),\n\t\tbackground = createBackgroundElement();\n\t\n\tdiv.style.position = \"absolute\";\n\tdiv.style.left = \"0\";\n\tdiv.style.top = top.scrollY + \"px\";\n\tdiv.style.width = \"100%\";\n\tdiv.style.height = \"100%\";\n\tdiv.style.zIndex = \"\" + 0x7fffffff;\n\t\n\tdiv.appendChild(background);\n\t\n\treturn div;\n}\n\nfunction createPaddingElement() {\n\tvar div = document.createElement(\"DIV\");\n\t\n\tdiv.style.position = \"absolute\";\n\tdiv.style.top = \"0\";\n\tdiv.style.height = \"100%\";\n\tdiv.style.backgroundColor = \"#000\";\n\t\n\treturn div;\n}\n\n/**\n *\n * @returns {HTMLVideoElement & {mozSrcObject?: MediaProvider}}\n */\nfunction createVideoElement() {\n\tvar video = document.createElement(\"VIDEO\");\n\t\n\tvideo.style.position = \"absolute\";\n\tvideo.style.top = \"30%\";\n\tvideo.style.height = \"40%\";\n\t\n\tvideo.controls = false;\n\t\n\treturn video;\n}\n\nfunction createBackgroundElement() {\n\tvar div = document.createElement(\"DIV\");\n\t\n\tdiv.style.position = \"absolute\";\n\tdiv.style.left = \"0\";\n\tdiv.style.top = \"0\";\n\tdiv.style.width = \"100%\";\n\tdiv.style.height = \"100%\";\n\tdiv.style.backgroundColor = \"#111\";\n\t\n\treturn div;\n}\n\nfunction createStopwatchElement() {\n\tvar div = document.createElement(\"DIV\");\n\t\n\tdiv.style.position = \"absolute\";\n\tdiv.style.left = \"calc(50% - 50px)\";\n\tdiv.style.top = \"calc(20% - 12px)\";\n\tdiv.style.width = \"100px\";\n\tdiv.style.height = \"24px\";\n\tdiv.style.color = \"#FFF\";\n\tdiv.style.fontWeight = \"400\";\n\tdiv.style.textAlign = \"center\";\n\tdiv.style.fontVariantNumeric = \"tabular-nums\";\n\tdiv.style.fontFeatureSettings = div.style.WebkitFontFeatureSettings = div.style.MozFontFeatureSettings = \"\\\"tnum\\\"\";\n\tdiv.innerText = \"00:00:00\";\n\t\n\treturn div;\n}\n\nfunction createRecordButtonElement() {\n\tvar button = document.createElement(\"BUTTON\");\n\t\n\tbutton.style.position = \"relative\";\n\tbutton.style.left = \"calc(50% - 30px)\";\n\tbutton.style.top = \"calc(80% - 30px)\";\n\tbutton.style.width = \"60px\";\n\tbutton.style.height = \"60px\";\n\tbutton.style.backgroundColor = \"#FFFFFF00\";\n\tbutton.style.borderRadius = button.style.WebkitBorderRadius = button.style.MozBorderRadius = \"50%\";\n\tbutton.style.cursor = \"pointer\";\n\tbutton.style.border = \"5px solid #FFF\";\n\t\n\treturn button;\n}\n\nfunction createRecordButtonInnerElement(type) {\n\tvar div = document.createElement(\"DIV\");\n\t\n\tdiv.style.position = \"absolute\";\n\tdiv.style.left = \"3px\";\n\tdiv.style.top = \"3px\";\n\tdiv.style.width = \"44px\";\n\tdiv.style.height = \"44px\";\n\tdiv.style.borderRadius = \"50%\";\n\t\n\tif (type === Camera.Type.Image) {\n\t\tdiv.style.backgroundColor = \"#FFF\";\n\t} else {\n\t\tdiv.style.backgroundColor = \"#F00\";\n\t}\n\t\n\tif (matchMedia(\"(prefers-reduced-motion: no-preference)\").matches) {\n\t\tdiv.style.transitionProperty = div.style.WebkitTransitionProperty = div.style.MozTransitionProperty = \"border-radius, width, height, top, left\";\n\t\tdiv.style.transitionDuration = div.style.WebkitTransitionDuration = div.style.MozTransitionDuration = \"150ms\";\n\t\tdiv.style.transitionTimingFunction = div.style.WebkitTransitionTimingFunction = div.style.MozTransitionTimingFunction = \"ease\";\n\t}\n\t\n\treturn div;\n}\n\nfunction createSampleElement(type) {\n\tvar media;\n\t\n\tif (type === Camera.Type.Video) {\n\t\tmedia = document.createElement(\"VIDEO\");\n\t\t\n\t\tmedia.controls = true;\n\t} else {\n\t\tmedia = document.createElement(\"IMG\");\n\t}\n\t\n\tmedia.style.position = \"absolute\";\n\tmedia.style.top = \"30%\";\n\tmedia.style.height = \"40%\";\n\tmedia.style.display = \"none\";\n\t\n\treturn media;\n}\n\nfunction createCheckButton() {\n\tvar button = document.createElement(\"BUTTON\"),\n\t\tdiv = document.createElement(\"DIV\");\n\t\n\tbutton.style.display = \"none\";\n\tbutton.style.position = \"absolute\";\n\tbutton.style.top = \"calc(80% - 15px)\";\n\tbutton.style.width = \"30px\";\n\tbutton.style.height = \"30px\";\n\tdiv.style.position = \"relative\";\n\tdiv.style.top = \"-2px\";\n\tdiv.style.display = \"inline-block\";\n\tdiv.style.transform = div.style.webkitTransform = div.style.msTransform = div.style.OTransform = div.style.MozTransform = \"rotate(45deg)\";\n\tdiv.style.width = \"16px\";\n\tdiv.style.height = \"25px\";\n\tdiv.style.borderBottom = div.style.borderRight = \"5px solid #FFF\";\n\t\n\tbutton.appendChild(div);\n\t\n\treturn button;\n}\n\nfunction createXMarkButton() {\n\tvar button = document.createElement(\"BUTTON\"),\n\t\tdiv1 = document.createElement(\"DIV\"),\n\t\tdiv2 = document.createElement(\"DIV\");\n\t\n\tbutton.style.display = \"none\";\n\tbutton.style.position = \"absolute\";\n\tbutton.style.top = \"calc(80% - 15px)\";\n\tbutton.style.width = \"30px\";\n\tbutton.style.height = \"30px\";\n\tdiv1.style.position = div2.style.position = \"relative\";\n\tdiv1.style.top = \"1px\";\n\tdiv1.style.left = \"3px\";\n\tdiv1.style.display = div2.style.display = \"inline-block\";\n\tdiv1.style.transform = div1.style.webkitTransform = div1.style.msTransform = div1.style.OTransform = div1.style.MozTransform = \"rotate(45deg)\";\n\tdiv1.style.height = div2.style.height = \"28px\";\n\tdiv1.style.borderRight = div2.style.borderRight = \"5px solid #FFF\";\n\tdiv2.style.top = \"1px\";\n\tdiv2.style.left = \"-2px\";\n\tdiv2.style.transform = div2.style.webkitTransform = div2.style.msTransform = div2.style.OTransform = div2.style.MozTransform = \"rotate(315deg)\";\n\t\n\tbutton.appendChild(div1);\n\tbutton.appendChild(div2);\n\t\n\treturn button;\n}\n\nfunction playSound(base64) {\n\ttypeof window.Audio === \"function\" && void new Audio(\"data:audio/mpeg;base64,\" + base64).play();\n}\n\nfunction playRecordStartSound() {\n\tplaySound(\"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\");\n}\n\nfunction playRecordStopSound() {\n\tplaySound(\"SUQzBAAAAAAAIlRTU0UAAAAOAAADTGF2ZjYxLjQuMTAwAAAAAAAAAAAAAAD/+1AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABYaW5nAAAADwAAAAsAAAfUACcnJycnJycnJ2pqampqampqaoGBgYGBgYGBgY+Pj4+Pj4+Pj5+fn5+fn5+fn7q6urq6urq6usrKysrKysrKytjY2NjY2NjY2OXl5eXl5eXl5fLy8vLy8vLy8v///////////wAAAABMYXZjNjEuOS4AAAAAAAAAAAAAAAAkAkAAAAAAAAAH1D6K2fAAAAAAAAAAAAAAAAAAAAAA//sQRAAP8AAAf4AAAAgAAA/wAAABAAAB/hQAACAAAD/CgAAEAoYAgFAgD8SmUNBi+Bni3gcogFh/gKg//kTHAe9IIXNUBOa1EzAM7gAAAAALufiYXk+AyDmkRp6aRPjIjB4iKzqg1Ur/+6BkIgAA9xFSplIAAAAAD/DAAAAGwDVh2beAAGQFbXsMIAEkO0wQZvwJqhMTzakehnLUU3doYIh1dAAAAAAAAAAPfBWO8bvd9htZY7SIcxAEmJw4AAA5ll8zGYrDONC1kCMcqe+lMgI0dyL7vrAHdgRYAAAAD/+20gLTGiS0QxyiqLy0Z0LAC74LsgKbIX1ALeTA6VP/06mMuc0PyHeAXtBIAAdh4U4NI3VQVYAWAAg4AAAXmFLis16DJT7hGz+j6wbKDQBaIAAJGYMOGALQfwN+AGm+vUFTznekQrX//92X1LRLCp9isChAIaZ0KpAAeWBHAA+8AAAqYAQxNzgwDfBx/6JwPalMWhtAAAQDgAAAAAeeE6s7oCPUvfqNfWs2fbpPos3qr23KCY3AjgGQB0FwMhgiAmnPqChEacfNUGwAFgBiHf+olgITPPADB2gOAwGnAAAOvYUAB31lAsgAAAAAAAxZG0loP66gkfYlBPChKaYy8hOnSKKgDcpoCJWGB6CoSpK96EDJ5pnMqv2M/kEP29eD5oyGTzRkACvBgUE1TAAAAAAAAFfH2HSRIIUS6wDINyk1zCKgADOQAEQP+AAB+s8REuJjPmhNAPFA0ShtozIoBDqhJpY91UiUWOUh3DQysACJYDRQAAAP/1UVKu2RQVHCGFgC9QBsGDx/8AAB+VDFgErkLBz/+0Bk3gExBAhXf2AACBXg6s7ngAFDWBtXoKcEYC0C7XgDAFXxIdfAgmBUK9foayo6UdriDRTZrHAABSqEAAAAAN1JxK+PMBawA2QC4G4H7lMaB8tLxF0IFrMLAiozf/neicE5UhPAAA1IwEocrwwZ1QBtgEANwAAB+ylmLIqWJYBHMk0zUrur9sE2zSOAIAGQGhTqxY26AAALAG7ww8cUVcEKn/wu2BG90p/BowNjCIB/IyptAP/7EGT4gTDQBtV4LMEYCKCLFAAJA8NcHVWgJwRoHYNoYAAYDAAJMHAAOAAAGG9BJCBuUAUf/qAAAogGwS2k5rAADMUAfgSu4GA+3oc//NrCRFqohYoH6w0XFUxBTUUzLjEwMFVVVVVV//sgZPgBMN0HVfgJaKgKgBruAAABBVQ1VfT3gCBYBar6jmAFVVVVVQAN+OABsAABEsQyYCYq/ptln/yNZi0rvK/S+gAAbAYC8CIHOA0Sf+Z/+nto8O7xwqpMQU1FMy4xMDCqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqqv/7UGTzgAIlEtVuayAAHgGbTsOkAEVcMVn9QwAgU4Tru5BgBaqqqqqqqqqqqqqqqqqqqqoAEoAACpoGCqBSdUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+yBk+AExJRfV6FkqmBABax4AKDMDzF9VoWRKaCUFqxAAiNxVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZPiDsOIXVWoAFCoJoVoFASxRgwwrVcAfCCAWACsQAAAGVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk+IGwnAtXeAoyKAkhWmQACCUChCtXoAEA4BkAadAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGT2AfDFCtVoAUmIAqAZ4AAAAQKcb1OgHGngAAA/wAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZOMP8FMJUEABMhoAAA/wAAABAAAB/gAAACAAAD/AAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU=\");\n}\n\nfunction playCaptureSound() {\n\tplaySound(\"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\");\n}\n\n/**\n * @param {NativeCameraArgument} data\n * @type {NativeCamera}\n * @constructor\n */\nvar Camera = function (data) {\n\tif (data == null || data.type == null || !Camera.isSupported || [Camera.Type.Image, Camera.Type.Video].indexOf(data.type) === -1) {\n\t\tthrow new TypeError(\"Failed to construct 'Native.Camera': Illegal constructor.\");\n\t}\n\t\n\tvar self = this;\n\t\n\tthis.run = function () {\n\t\treturn new Promise(function (resolve, reject) {\n\t\t\treject(new InitializationError(\"Initialization error.\"));\n\t\t});\n\t};\n\t\n\tthis.bind = function (input) {\n\t\tinput[\"onclick\"] = function (e) {\n\t\t\te.preventDefault();\n\t\t\tself.run();\n\t\t};\n\t};\n\t\n\tvar type = data.type;\n\t\n\tswitch (OS.name) {\n\t\tcase \"Android\":\n\t\tcase \"iOS\":\n\t\t\tvar input = document.createElement(\"INPUT\");\n\t\t\t\n\t\t\tinput.type = \"file\";\n\t\t\tinput.capture = \"environment\";\n\t\t\tinput.accept = data.type + \"/*\";\n\t\t\t\n\t\t\tthis.run = function () {\n\t\t\t\treturn new Promise(function (resolve, reject) {\n\t\t\t\t\tinput.onchange = function () {\n\t\t\t\t\t\tvar files = input.files;\n\t\t\t\t\t\t\n\t\t\t\t\t\tif (files.length > 0) {\n\t\t\t\t\t\t\tvar blob = files[0];\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\tblobToDataURL(blob)\n\t\t\t\t\t\t\t\t.then(function (dataURL) {\n\t\t\t\t\t\t\t\t\tresolve({blob: blob, dataURL: dataURL});\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t.catch(function (error) {\n\t\t\t\t\t\t\t\t\treject(error);\n\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\treject(new UserNotSelectedError(\"User did not select.\"));\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t\n\t\t\t\t\tinput.click();\n\t\t\t\t});\n\t\t\t};\n\t\t\t\n\t\t\treturn;\n\t\tcase \"Windows\":\n\t\tcase \"MacOS\":\n\t\t\tvar getUserMedia;\n\t\t\t\n\t\t\tif (navigator.mediaDevices && typeof navigator.mediaDevices.getUserMedia === \"function\") {\n\t\t\t\tgetUserMedia = function (constraints) {\n\t\t\t\t\treturn navigator.mediaDevices.getUserMedia(constraints);\n\t\t\t\t};\n\t\t\t} else {\n\t\t\t\tvar legacy = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;\n\t\t\t\t\n\t\t\t\tif (typeof legacy === \"function\") {\n\t\t\t\t\tgetUserMedia = function (constraints) {\n\t\t\t\t\t\treturn new Promise(function (resolve, reject) {\n\t\t\t\t\t\t\tlegacy.call(navigator, constraints, resolve, reject);\n\t\t\t\t\t\t});\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t}\n\t\t\t\n\t\t\tthis.run = function () {\n\t\t\t\treturn new Promise(function (resolve, reject) {\n\t\t\t\t\tif (run) {\n\t\t\t\t\t\treturn reject(new Error(\"Native.Camera is already running.\"));\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\trun = true;\n\t\t\t\t\t\n\t\t\t\t\tvar cleanups = [];\n\t\t\t\t\t\n\t\t\t\t\tfunction clean() {\n\t\t\t\t\t\trun = false;\n\t\t\t\t\t\t\n\t\t\t\t\t\tfor (var i = 0; i < cleanups.length; i++) {\n\t\t\t\t\t\t\tcleanups[i]();\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\t\n\t\t\t\t\ttry {\n\t\t\t\t\t\tgetUserMedia({video: true, audio: type === Camera.Type.Video})\n\t\t\t\t\t\t\t.then(function (stream) {\n\t\t\t\t\t\t\t\tcleanups.push(\n\t\t\t\t\t\t\t\t\tfunction () {\n\t\t\t\t\t\t\t\t\t\tvar tracks = stream.getTracks();\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\tfor (var i = 0; i < tracks.length; i++) {\n\t\t\t\t\t\t\t\t\t\t\ttracks[i].stop();\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t);\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\tcreateCameraElement(type, stream, cleanups)\n\t\t\t\t\t\t\t\t\t.then(function (blob) {\n\t\t\t\t\t\t\t\t\t\tresolve(blob);\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t.catch(function (e) {\n\t\t\t\t\t\t\t\t\t\treject(e);\n\t\t\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t\t\t.finally(function () {\n\t\t\t\t\t\t\t\t\t\tclean();\n\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t})\n\t\t\t\t\t\t\t.catch(function (e) {\n\t\t\t\t\t\t\t\tclean();\n\t\t\t\t\t\t\t\treject(e);\n\t\t\t\t\t\t\t});\n\t\t\t\t\t} catch (e) {\n\t\t\t\t\t\tclean();\n\t\t\t\t\t\treject(e);\n\t\t\t\t\t}\n\t\t\t\t})\n\t\t\t};\n\t\t\tbreak;\n\t\tdefault:\n\t}\n};\n\n/**\n * @enum {string}\n * @type {NativeCameraType}\n */\nCamera.Type = freeze({\n\tImage: \"image\",\n\tVideo: \"video\",\n});\n\nObject.defineProperty(Camera, \"isSupported\", {\n\t/**\n\t * @returns {boolean}\n\t */\n\tget() {\n\t\treturn (\n\t\t\t\tOS.name === \"Android\"\n\t\t\t\t|| OS.name === \"iOS\"\n\t\t\t)\n\t\t\t|| (\n\t\t\t\t(\n\t\t\t\t\t(\n\t\t\t\t\t\ttypeof navigator.getUserMedia === \"function\"\n\t\t\t\t\t\t|| typeof navigator.webkitGetUserMedia === \"function\"\n\t\t\t\t\t\t|| typeof navigator.mozGetUserMedia === \"function\"\n\t\t\t\t\t\t|| typeof navigator.msGetUserMedia === \"function\"\n\t\t\t\t\t)\n\t\t\t\t\t|| (\n\t\t\t\t\t\tnavigator.mediaDevices !== void 0\n\t\t\t\t\t\t&& typeof navigator.mediaDevices.getUserMedia === \"function\"\n\t\t\t\t\t)\n\t\t\t\t)\n\t\t\t\t&& new Blob([\"\u00E4\"]).size === 2\n\t\t\t\t&& typeof window.MediaRecorder === \"function\"\n\t\t\t);\n\t},\n\tconfigurable: false,\n\tenumerable: true,\n});\n\nmodule.exports = Camera;\n", "var OS = require(\"./os\"),\n\topenURL = require(\"./utils/openURL\"),\n\tfreeze = require(\"./utils/freeze\"),\n\tURLOpenError = require(\"./utils/urlOpenError\");\n\n/**\n * @param value {any}\n * @returns {boolean}\n */\nfunction isArrayLike(value) {\n\tif (value == null) return false;\n\t\n\tvar length = value.length;\n\t\n\treturn typeof length === \"number\" && length >= 0 && !(length % 1);\n}\n\n/**\n * @param str {string}\n * @returns {string}\n */\nfunction encode(str) {\n\treturn encodeURIComponent(str)\n\t\t.replace(/%20/g, \"%20\")\n\t\t.replace(/[!'()*]/g, function (c) {\n\t\t\treturn \"%\" + c.charCodeAt(0).toString(16);\n\t\t});\n}\n\n/**\n * @param value {object | HTMLFormElement | FormData}\n * @returns {object | null}\n */\nfunction normalizeValue(value) {\n\tif (value == null) return null;\n\tif (value instanceof HTMLFormElement) return normalizeValue(new FormData(value));\n\tif (value instanceof FormData) {\n\t\tvar obj = {};\n\t\t\n\t\tvalue.forEach(function (v, k) {\n\t\t\tif (obj.hasOwnProperty(k)) {\n\t\t\t\tif (!Array.isArray(obj[k])) {\n\t\t\t\t\tobj[k] = [obj[k]];\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tobj[k].push(v);\n\t\t\t} else {\n\t\t\t\tobj[k] = v;\n\t\t\t}\n\t\t});\n\t\t\n\t\treturn obj;\n\t}\n\treturn value;\n}\n\n/**\n * @param value\n * @param prefix\n * @returns {string}\n */\nfunction stringify(value, prefix = \"\") {\n\tif (typeof value !== \"string\" && isArrayLike(value)) {\n\t\tvar str = \"\";\n\t\t\n\t\tfor (var i = 0; i < value.length; i++) {\n\t\t\tstr += encode(value[i]);\n\t\t\t\n\t\t\tif (i !== value.length - 1) {\n\t\t\t\tstr += \",\";\n\t\t\t}\n\t\t}\n\t}\n\t\n\tif (value == null) return \"\";\n\tif (value instanceof HTMLInputElement) return prefix + encode(value.value);\n\tif (value instanceof HTMLElement) return prefix + encode(value.innerText);\n\tif (value instanceof Node) return prefix + encode(value.textContent);\n\treturn prefix + encode(value);\n}\n\n/**\n * @param {NativeMessengerArgument} data\n * @type {NativeMessenger}\n * @constructor\n */\nvar Messenger = function (data) {\n\tif (data == null || data.type == null || [Messenger.Type.Telephone, Messenger.Type.SMS, Messenger.Type.Mail].indexOf(data.type) === -1) {\n\t\tthrow new TypeError(\"Failed to construct 'Native.Messenger': Illegal constructor.\");\n\t}\n\t\n\tdata = normalizeValue(data);\n\t\n\tvar url = data.type\n\t\t+ \":\"\n\t\t+ stringify(data.to)\n\t\t+ \"?\"\n\t\t+ stringify(data.cc, \"cc=\")\n\t\t+ stringify(data.bcc, \"&bcc=\")\n\t\t+ stringify(data.subject, \"&subject=\")\n\t\t+ stringify(data.body, \"&body=\");\n\t\n\tthis.run = function (target = top) {\n\t\treturn new Promise(function (resolve, reject) {\n\t\t\topenURL(OS, target, url)\n\t\t\t\t.then(function () {\n\t\t\t\t\tresolve();\n\t\t\t\t})\n\t\t\t\t.catch(function () {\n\t\t\t\t\treturn reject(new URLOpenError(\"No url can be opened.\"));\n\t\t\t\t});\n\t\t});\n\t}\n};\n\n/**\n * @enum {string}\n * @type {NativeMessengerType}\n */\nMessenger.Type = freeze({\n\tTelephone: \"tel\",\n\tSMS: \"sms\",\n\tMail: \"mailto\",\n});\n\nmodule.exports = Messenger;\n", "var checkPermissionInterval = 6e4,\n\tcoordinateAPIInterval = 6e3;\n\n/**\n * @param degrees {number}\n * @returns {number}\n */\nfunction degrees2Radians(degrees) {\n\treturn degrees * Math.PI / 180;\n}\n\n/**\n * @param coordinate1 {Coordinate}\n * @param coordinate2 {Coordinate}\n * @returns {number}\n */\nfunction angle(coordinate1, coordinate2) {\n\tvar cosineDeltaLongitude = Math.cos(degrees2Radians(coordinate1.longitude - coordinate2.longitude)),\n\t\tcosineDifferenceLatitude = Math.cos(degrees2Radians(coordinate1.latitude - coordinate2.latitude)),\n\t\tcosineSumLatitude = Math.cos(degrees2Radians(coordinate1.latitude + coordinate2.latitude));\n\t\n\treturn Math.acos(((cosineDeltaLongitude * (cosineDifferenceLatitude + cosineSumLatitude)) + (cosineDifferenceLatitude - cosineSumLatitude)) / 2);\n}\n\n/**\n * @param coordinate1 {Coordinate}\n * @param coordinate2 {Coordinate}\n * @returns {number}\n */\nfunction distance(coordinate1, coordinate2) {\n\tif (coordinate1 === void 0 || coordinate2 === void 0) {\n\t\treturn 0;\n\t}\n\t\n\tif (coordinate1.latitude === coordinate2.latitude && coordinate1.longitude === coordinate2.longitude) {\n\t\treturn 0;\n\t}\n\t\n\treturn 6.384e6 * angle(coordinate1, coordinate2);\n}\n\n/**\n * @param url {string}\n * @param fn {(data: any) => void}\n * @returns {void}\n */\nfunction jsonp(url, fn) {\n\tvar script = top.document.createElement(\"SCRIPT\"),\n\t\tcallback = \"_\" + Math.floor(Math.random() * (1 << 30)),\n\t\tprefix = \"?\";\n\t\n\tif (/\\?[^&=]*=[^&=]*/.test(url)) {\n\t\tprefix = \"&\";\n\t}\n\t\n\tscript.src = url + prefix + \"callback=\" + callback;\n\t\n\tif (top[callback] !== void 0) {\n\t\treturn jsonp(url, fn);\n\t}\n\t\n\tfunction clear() {\n\t\ttry {\n\t\t\tdelete top[callback];\n\t\t} catch (_) {\n\t\t\ttop[callback] = void 0;\n\t\t}\n\t\t\n\t\tscript.parentNode.removeChild(script);\n\t}\n\t\n\ttop[callback] = function (data) {\n\t\tfn(data);\n\t};\n\t\n\tscript.onload = function () {\n\t\tclear();\n\t};\n\t\n\tscript.onerror = function () {\n\t\tclear();\n\t};\n\t\n\ttop.document.head.appendChild(script);\n}\n\n/**\n * @param {(coordinate: Coordinate) => void} successCallback\n * @param {() => void} [errorCallback]\n * @type {NativeGeolocation}\n * @constructor\n */\nvar Geolocation = function (successCallback, errorCallback) {\n\tif (successCallback == null) {\n\t\tthrow new TypeError(\"Failed to construct 'Native.Geolocation': Illegal constructor.\");\n\t}\n\t\n\tvar native = navigator.geolocation !== void 0 && navigator.geolocation.watchPosition !== void 0,\n\t\tcheckPermissionIntervalId,\n\t\tid,\n\t\tbeforeCoordinate,\n\t\ttimestamp;\n\t\n\tif (navigator.permissions && navigator.permissions.query) {\n\t\tnavigator.permissions.query({name: \"geolocation\"})\n\t\t\t.then(function (permission) {\n\t\t\t\tpermission.addEventListener(\"change\", function () {\n\t\t\t\t\tsetNative(permission.state !== \"denied\");\n\t\t\t\t});\n\t\t\t\t\n\t\t\t\tsetNative(permission.state !== \"denied\");\n\t\t\t})\n\t\t\t.catch(function (_) {\n\t\t\t\tsetNative(false);\n\t\t\t});\n\t} else if (navigator.geolocation !== void 0 && navigator.geolocation.getCurrentPosition !== void 0) {\n\t\tcheckPermissionIntervalId = setInterval(function () {\n\t\t\tnavigator.geolocation.getCurrentPosition(function () {\n\t\t\t\tsetNative(true);\n\t\t\t}, function (error) {\n\t\t\t\tif (error.code === error.PERMISSION_DENIED) {\n\t\t\t\t\tsetNative(false);\n\t\t\t\t}\n\t\t\t})\n\t\t}, checkPermissionInterval);\n\t} else {\n\t\tsetNative(false);\n\t}\n\t\n\t/**\n\t * @param boolean {boolean}\n\t */\n\tfunction setNative(boolean) {\n\t\tif (native ^ boolean) {\n\t\t\tnative = boolean;\n\t\t\t\n\t\t\tif (id !== void 0) {\n\t\t\t\tif (boolean) {\n\t\t\t\t\tclearInterval(id);\n\t\t\t\t\t\n\t\t\t\t\tid = watchCoordinateNative();\n\t\t\t\t} else {\n\t\t\t\t\tnavigator.geolocation.clearWatch(id);\n\t\t\t\t\t\n\t\t\t\t\tid = watchCoordinateAPI();\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\t\n\t/**\n\t * @param coordinate {Coordinate}\n\t */\n\tfunction calculateCoordinateDifference(coordinate) {\n\t\tcoordinate.distance = distance(beforeCoordinate, coordinate);\n\t\t\n\t\tif (coordinate.speed === void 0) {\n\t\t\tvar now = new Date().getTime();\n\t\t\t\n\t\t\tif (timestamp === void 0) {\n\t\t\t\tcoordinate.speed = 0;\n\t\t\t} else {\n\t\t\t\tvar timeDiff = (now - timestamp) / 1000;\n\t\t\t\t\n\t\t\t\tif (timeDiff > 0) {\n\t\t\t\t\tcoordinate.speed = coordinate.distance / timeDiff;\n\t\t\t\t} else {\n\t\t\t\t\tcoordinate.speed = 0;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\t\n\t\tbeforeCoordinate = coordinate;\n\t\ttimestamp = new Date().getTime();\n\t}\n\t\n\tfunction getCoordinateAPI() {\n\t\tif (native) {\n\t\t\tif (id !== void 0) {\n\t\t\t\tclearInterval(id);\n\t\t\t}\n\t\t\t\n\t\t\tid = watchCoordinateNative();\n\t\t\t\n\t\t\treturn;\n\t\t}\n\t\t\n\t\tjsonp(\"http://ip-api.com/json/?fields=lat,lon,status\", function (data) {\n\t\t\tvar coordinate = {};\n\t\t\t\n\t\t\tif (data.status === \"success\") {\n\t\t\t\tcoordinate.latitude = data.lat;\n\t\t\t\tcoordinate.longitude = data.lon;\n\t\t\t\tcoordinate.accuracy = -1;\n\t\t\t\t\n\t\t\t\tif (beforeCoordinate !== void 0 && coordinate.latitude === beforeCoordinate.latitude && coordinate.longitude === beforeCoordinate.longitude) {\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tcalculateCoordinateDifference(coordinate);\n\t\t\t\t\n\t\t\t\tsuccessCallback(coordinate);\n\t\t\t} else {\n\t\t\t\tif (errorCallback) {\n\t\t\t\t\terrorCallback();\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\t\n\t/**\n\t * @returns {number}\n\t */\n\tfunction watchCoordinateAPI() {\n\t\tgetCoordinateAPI();\n\t\t\n\t\treturn setInterval(getCoordinateAPI, coordinateAPIInterval);\n\t}\n\t\n\t/**\n\t * @returns {number}\n\t */\n\tfunction watchCoordinateNative() {\n\t\treturn navigator.geolocation.watchPosition(function (position) {\n\t\t\tvar coordinate = {};\n\t\t\t\n\t\t\tcoordinate.latitude = position.coords.latitude;\n\t\t\tcoordinate.longitude = position.coords.longitude;\n\t\t\tcoordinate.accuracy = position.coords.accuracy;\n\t\t\t\n\t\t\tif (position.coords.altitude !== null) coordinate.altitude = position.coords.altitude;\n\t\t\tif (position.coords.altitudeAccuracy !== null) coordinate.altitudeAccuracy = position.coords.altitudeAccuracy;\n\t\t\tif (position.coords.heading !== null) coordinate.heading = position.coords.heading;\n\t\t\tif (position.coords.speed !== null) coordinate.speed = position.coords.speed;\n\t\t\t\n\t\t\tcalculateCoordinateDifference(coordinate);\n\t\t\t\n\t\t\tsuccessCallback(coordinate);\n\t\t}, function (error) {\n\t\t\tif (error.code === error.PERMISSION_DENIED) {\n\t\t\t\tnative = false;\n\t\t\t\t\n\t\t\t\tif (id !== void 0) {\n\t\t\t\t\tnavigator.geolocation.clearWatch(id);\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tid = watchCoordinateAPI();\n\t\t\t} else {\n\t\t\t\tif (errorCallback) {\n\t\t\t\t\terrorCallback();\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t}\n\t\n\tthis.disconnect = function () {\n\t\tif (id !== void 0) {\n\t\t\tif (native) {\n\t\t\t\tnavigator.geolocation.clearWatch(id);\n\t\t\t} else {\n\t\t\t\tclearInterval(id);\n\t\t\t}\n\t\t}\n\t\t\n\t\tif (checkPermissionIntervalId !== void 0) {\n\t\t\tclearInterval(checkPermissionIntervalId);\n\t\t}\n\t\t\n\t\tid = void 0;\n\t\tbeforeCoordinate = void 0;\n\t\tcheckPermissionIntervalId = void 0;\n\t}\n\t\n\tthis.observe = function () {\n\t\tthis.disconnect();\n\t\t\n\t\tif (native) {\n\t\t\tid = watchCoordinateNative();\n\t\t} else {\n\t\t\tid = watchCoordinateAPI();\n\t\t}\n\t};\n};\n\nmodule.exports = Geolocation;\n", "'use strict';\n\nrequire(\"./polyfill/promise.min\");\n\nvar freeze = require(\"./utils/freeze\");\n\n/**\n * @type {Native}\n */\nmodule.exports = freeze({\n\tOS: require(\"./os\"),\n\tEngine: require(\"./engine\"),\n\tAppearance: require(\"./appearance\"),\n\tTheme: require(\"./theme\"),\n\tSafeAreaInset: require(\"./safeAreaInset\"),\n\tTitlebarArea: require(\"./titlebarArea\"),\n\tKeyboardInset: require(\"./keyboardInset\"),\n\tApp: require(\"./app\"),\n\tCamera: require(\"./camera\"),\n\tMessenger: require(\"./messenger\"),\n\tGeolocation: require(\"./geolocation\"),\n\tError: {\n\t\tInitializationError: require(\"./utils/initializationError\"),\n\t\tURLOpenError: require(\"./utils/urlOpenError\"),\n\t\tUserNotSelectedError: require(\"./utils/userNotSelectedError\"),\n\t}\n});\n"],
|
|
5
|
+
"mappings": "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",
|
|
6
|
+
"names": ["promise_min_exports", "init_promise_min", "__esmMin", "e", "t", "n", "r", "f", "o", "i", "u", "c", "s", "l", "d", "p", "freeze_exports", "init_freeze", "__esmMin", "obj", "keys", "i", "key", "os_exports", "parseWindowsVersion", "str", "map", "mapped", "parseIOSOrMacVersion", "getRenderer", "canvas", "gl", "extension", "freeze", "OS", "init_os", "__esmMin", "ua", "matched", "result", "maps", "i", "engine_exports", "parseLibWebVersion", "str", "freeze", "Engine", "init_engine", "__esmMin", "ua", "matched", "result", "maps", "i", "matchMedia_exports", "init_matchMedia", "__esmMin", "media", "style", "info", "query", "text", "appearance_exports", "freeze", "matchMedia", "listeners", "query", "Appearance", "init_appearance", "__esmMin", "listener", "wrapped", "event", "i", "theme_exports", "getMeta", "attributes", "query", "element", "i", "initMetas", "metas", "Appearance", "freeze", "listener", "observer", "observerListeners", "appearanceListeners", "Theme", "init_theme", "__esmMin", "mutations", "changed", "mutation", "target", "type", "onAppearanceChange", "theme", "appearance", "color", "light", "dark", "result", "createInsets_exports", "getPrefix", "prefix", "requestAnimationFrame", "init_createInsets", "__esmMin", "previous", "callback", "current", "timeout", "id", "dataset", "attributes", "result", "listener", "listeners", "i", "parent", "changedAttrs", "updateScheduled", "availableShadowRoot", "style", "attr", "addChild", "triggerListeners", "scheduleTrigger", "attrKey", "attrValue", "styles", "parent1", "parent2", "child1", "child2", "max", "previous1", "previous2", "onscroll", "currentScrollTop", "computed", "safeAreaInset_exports", "init_safeAreaInset", "__esmMin", "titlebarArea_exports", "init_titlebarArea", "__esmMin", "keyboardInset_exports", "init_keyboardInset", "__esmMin", "openURL_exports", "isDocumentHidden", "target", "openURLWithHref", "url", "a", "fake", "openURLAndroidOrWindowsOrMacOS", "os", "timeout", "resolve", "reject", "id", "onblur", "onfocus", "openURLIOS", "goe8", "onvisibilitychange", "openURLAndroid", "openURLWindowsOrMacOS", "init_openURL", "__esmMin", "createCustomError_exports", "init_createCustomError", "__esmMin", "name", "CustomError", "message", "initializationError_exports", "init_initializationError", "__esmMin", "urlOpenError_exports", "init_urlOpenError", "__esmMin", "app_exports", "getTrackId", "bundle", "xhr", "response", "addDelimiter", "input", "clearDelimiter", "OS", "openURL", "freeze", "InitializationError", "URLOpenError", "App", "init_app", "__esmMin", "data", "resolve", "reject", "scheme", "id", "fallback", "packageName", "ready", "urls", "isOpenWebStore", "matched", "intent", "chromiumVersion", "iframe", "url", "resolved", "cleanup", "supported", "onload", "universal", "target", "tryOpenURL", "index", "state", "e", "userNotSelectedError_exports", "init_userNotSelectedError", "__esmMin", "camera_exports", "createCameraElement", "type", "stream", "cleanups", "setting", "beforeOverflow", "width", "height", "sample", "createSampleElement", "container", "createContainerElement", "video", "createVideoElement", "recordButton", "createRecordButtonElement", "recordButtonInner", "createRecordButtonInnerElement", "stopwatch", "createStopwatchElement", "paddingLeft", "createPaddingElement", "paddingRight", "check", "createCheckButton", "xMark", "createXMarkButton", "padding", "recording", "recorder", "chunks", "t", "id", "Camera", "clearVideoSourceObject", "clearStopwatchInterval", "showSample", "blob", "resolve", "reject", "blobToDataURL", "dataURL", "e", "onkeyup", "UserNotSelectedError", "playCaptureSound", "canvas", "ctx", "canvasToBlob", "playRecordStopSound", "playRecordStartSound", "padLeft", "event", "number", "reader", "byteString", "ab", "ia", "i", "div", "background", "createBackgroundElement", "button", "matchMedia", "media", "div1", "div2", "playSound", "base64", "OS", "freeze", "InitializationError", "run", "init_camera", "__esmMin", "data", "self", "input", "files", "error", "getUserMedia", "constraints", "legacy", "clean", "tracks", "messenger_exports", "isArrayLike", "value", "length", "encode", "str", "c", "normalizeValue", "obj", "v", "k", "stringify", "prefix", "i", "OS", "openURL", "freeze", "URLOpenError", "Messenger", "init_messenger", "__esmMin", "data", "url", "target", "resolve", "reject", "geolocation_exports", "degrees2Radians", "degrees", "angle", "coordinate1", "coordinate2", "cosineDeltaLongitude", "cosineDifferenceLatitude", "cosineSumLatitude", "distance", "jsonp", "url", "fn", "script", "callback", "prefix", "clear", "data", "checkPermissionInterval", "coordinateAPIInterval", "Geolocation", "init_geolocation", "__esmMin", "successCallback", "errorCallback", "native", "checkPermissionIntervalId", "id", "beforeCoordinate", "timestamp", "permission", "setNative", "_", "error", "boolean", "watchCoordinateNative", "watchCoordinateAPI", "calculateCoordinateDifference", "coordinate", "now", "timeDiff", "getCoordinateAPI", "position", "freeze"]
|
|
7
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "native-fn",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"description": " ",
|
|
5
|
+
"scripts": {
|
|
6
|
+
"test": "echo \"Error: no test specified\" && exit 1",
|
|
7
|
+
"build": "node build.js"
|
|
8
|
+
},
|
|
9
|
+
"author": "",
|
|
10
|
+
"license": "MIT",
|
|
11
|
+
"type": "module",
|
|
12
|
+
"main": "dist/index.cjs",
|
|
13
|
+
"require": "dist/index.cjs",
|
|
14
|
+
"module": "dist/index.mjs",
|
|
15
|
+
"umd": "dist/index.umd.js",
|
|
16
|
+
"types": "dist/src/index.d.ts",
|
|
17
|
+
"exports": {
|
|
18
|
+
".": {
|
|
19
|
+
"import": "./dist/index.mjs",
|
|
20
|
+
"require": "./dist/index.cjs",
|
|
21
|
+
"umd": "./dist/index.umd.js",
|
|
22
|
+
"types": "./dist/src/index.d.ts"
|
|
23
|
+
}
|
|
24
|
+
},
|
|
25
|
+
"repository": {
|
|
26
|
+
"type": "git",
|
|
27
|
+
"url": "https://github.com/pjy0509/native-fn"
|
|
28
|
+
},
|
|
29
|
+
"homepage": "https://pjy0509.github.io/example/native-fn/",
|
|
30
|
+
"keywords": [
|
|
31
|
+
"app",
|
|
32
|
+
"app loader",
|
|
33
|
+
"app launcher",
|
|
34
|
+
"app-loader",
|
|
35
|
+
"app-launcher",
|
|
36
|
+
"appearance",
|
|
37
|
+
"camera",
|
|
38
|
+
"engine",
|
|
39
|
+
"geolocation",
|
|
40
|
+
"keyboard inset",
|
|
41
|
+
"keyboard-inset",
|
|
42
|
+
"messenger",
|
|
43
|
+
"os",
|
|
44
|
+
"safe area inset",
|
|
45
|
+
"safe-area-inset",
|
|
46
|
+
"theme",
|
|
47
|
+
"titlebar area",
|
|
48
|
+
"titlebar-area"
|
|
49
|
+
],
|
|
50
|
+
"devDependencies": {
|
|
51
|
+
"esbuild": "^0.21.4",
|
|
52
|
+
"glob": "^10.4.1",
|
|
53
|
+
"html-webpack-plugin": "^5.6.0",
|
|
54
|
+
"ts-loader": "^9.5.1",
|
|
55
|
+
"typescript": "^5.4.5"
|
|
56
|
+
}
|
|
57
|
+
}
|