native-fn 1.0.21 → 1.0.23

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.
@@ -1,7 +0,0 @@
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/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", "../package.json", "../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 */\nexport default 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", "import freeze from \"./utils/freeze.js\";\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\nexport default OS;\n", "import freeze from \"./utils/freeze.js\";\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\nexport default Engine;\n", "export default (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", "import freeze from \"./utils/freeze.js\";\nimport matchMedia from \"./utils/matchMedia.js\";\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\nexport default Appearance;\n", "import Appearance from \"./appearance.js\";\nimport freeze from \"./utils/freeze.js\";\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\nexport default Theme;\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 * @param index {number}\n * @returns {void}\n */\nfunction openURLWithHref(target, url, index) {\n\tif (index === 0) {\n\t\tlocation.href = url;\n\t} else {\n\t\tvar a = /** @type HTMLAnchorElement */ target.document.createElement(\"A\"),\n\t\t\tfake;\n\t\t\n\t\ta.href = url;\n\t\t\n\t\ttarget.document.body.appendChild(a);\n\t\t\n\t\ttry {\n\t\t\tfake = new target.MouseEvent(\"click\", {\n\t\t\t\tbubbles: true,\n\t\t\t\tcancelable: true,\n\t\t\t\tview: target\n\t\t\t});\n\t\t} catch (_) {\n\t\t\t// ES5 or Browsers in the ES5~ES6 transition period\n\t\t\tfake = target.document.createEvent(\"MouseEvents\");\n\t\t\t\n\t\t\tfake.initMouseEvent(\"click\", true, true, window, 0, 0, 0, 0, 0, false, false, false, false, 0, null);\n\t\t}\n\t\t\n\t\ta.dispatchEvent(fake);\n\t\t\n\t\ttarget.document.body.removeChild(a);\n\t}\n}\n\n/**\n * @param os {NativeOS}\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @param timeout {number}\n * @param index {number}\n * @returns {Promise<void>}\n */\nfunction openURLAndroidOrWindowsOrMacOS(os, target, url, timeout, index) {\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, index);\n\t});\n}\n\n/**\n * @param os {NativeOS}\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @param index {number}\n * @returns {Promise<void>}\n */\nfunction openURLIOS(os, target, url, index) {\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, index);\n\t});\n}\n\n/**\n * @param os {NativeOS}\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @param index {number}\n * @returns {Promise<void>}\n */\nfunction openURLAndroid(os, target, url, index) {\n\treturn openURLAndroidOrWindowsOrMacOS(os, target, url, 1000, index);\n}\n\n/**\n * @param os {NativeOS}\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @param index {number}\n * @returns {Promise<void>}\n */\nfunction openURLWindowsOrMacOS(os, target, url, index) {\n\treturn openURLAndroidOrWindowsOrMacOS(os, target, url, 750, index);\n}\n\n/**\n * @param os {NativeOS}\n * @param target {Window & typeof globalThis}\n * @param url {string}\n * @param index {number}\n * @returns {Promise<void>}\n */\nexport default function openURL(os, target, url, index) {\n\tif (url) {\n\t\tswitch (os.name) {\n\t\t\tcase \"Android\":\n\t\t\t\treturn openURLAndroid(os, target, url, index);\n\t\t\tcase \"iOS\":\n\t\t\t\treturn openURLIOS(os, target, url, index);\n\t\t\tcase \"Windows\":\n\t\t\tcase \"MacOS\":\n\t\t\t\treturn openURLWindowsOrMacOS(os, target, url, index);\n\t\t}\n\t}\n\t\n\treturn Promise.reject();\n}\n", "export default 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", "import createCustomError from \"./createCustomError.js\";\n\nexport default createCustomError(\"InitializationError\");\n", "import createCustomError from \"./createCustomError.js\";\n\nexport default createCustomError(\"URLOpenError\");\n", "import OS from \"./os\";\nimport openURL from \"./utils/openURL\";\nimport freeze from \"./utils/freeze\";\nimport InitializationError from \"./utils/initializationError\";\nimport URLOpenError from \"./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\tforceIntent;\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\tforceIntent = data.android.forceIntent;\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\t\n\t\t\t\tmatched = intent.match(/intent:\\/\\/([^;]*)#Intent;/);\n\t\t\t\t\n\t\t\t\tif (matched !== null) {\n\t\t\t\t\tscheme = scheme + 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\tvar split = scheme.split(\"://\"),\n\t\t\t\t\tpre = split[0],\n\t\t\t\t\tsuf = split[1];\n\t\t\t\t\n\t\t\t\tintent = \"intent://\";\n\t\t\t\t\n\t\t\t\tif (suf !== void 0) {\n\t\t\t\t\tintent = intent + suf;\n\t\t\t\t} else {\n\t\t\t\t\tintent = intent + \"open\";\n\t\t\t\t}\n\t\t\t\t\n\t\t\t\tintent = intent + \"#Intent;\"\n\t\t\t\t\t+ \"scheme=\" + pre + \";\"\n\t\t\t\t\t+ \"action=android.intent.action.VIEW;\"\n\t\t\t\t\t+ \"category=android.intent.category.BROWSABLE;\";\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\tif (fallback !== void 0) {\n\t\t\t\t\tintent = intent + \"S.browser_fallback_url=\" + fallback + \";\";\n\t\t\t\t} else {\n\t\t\t\t\tintent = intent + \"S.browser_fallback_url=market://details?id=\" + 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\tmatched = navigator.userAgent.match(/chrom(?:e|ium)\\/([\\w.]+)/i);\n\t\t\t\n\t\t\tif (matched !== null) {\n\t\t\t\tchromiumVersion = parseInt(matched[1]);\n\t\t\t}\n\t\t\t\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\t\n\t\t\t\t\t\t\t\tif (fallback !== void 0) {\n\t\t\t\t\t\t\t\t\turls.push([fallback, App.State.Fallback]);\n\t\t\t\t\t\t\t\t} else if (id !== void 0) {\n\t\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\t\n\t\t\t\t\t\t\t\t\tif (isOpenWebStore) {\n\t\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\t}\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\t\n\t\t\t\t\tbreak;\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 (isOpenWebStore) {\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} else {\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}\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.mac.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\tdocument.querySelector(\"[NATIVE-OS-DEBUG]\").textContent += JSON.stringify(urls, null, 4);\n\t\t\n\t\treturn ready.then(function () {\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, index)\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\nexport default App;\n", "import createCustomError from \"./createCustomError.js\";\n\nexport default createCustomError(\"UserNotSelectedError\");\n", "import OS from \"./os.js\";\nimport freeze from \"./utils/freeze.js\";\nimport matchMedia from \"./utils/matchMedia.js\";\nimport UserNotSelectedError from \"./utils/userNotSelectedError.js\";\nimport InitializationError from \"./utils/initializationError.js\";\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\nexport default Camera;\n", "import OS from \"./os.js\";\nimport openURL from \"./utils/openURL.js\";\nimport freeze from \"./utils/freeze.js\";\nimport URLOpenError from \"./utils/urlOpenError.js\";\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\nexport default 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\nexport default Geolocation;\n", "{\n \"name\": \"native-fn\",\n \"version\": \"1.0.21\",\n \"description\": \" \",\n \"scripts\": {\n \"test\": \"echo \\\"Error: no test specified\\\" && exit 1\",\n \"build\": \"node build.js\"\n },\n \"author\": \"\",\n \"license\": \"MIT\",\n \"type\": \"module\",\n \"main\": \"dist/index.cjs\",\n \"require\": \"dist/index.cjs\",\n \"module\": \"dist/index.mjs\",\n \"umd\": \"dist/index.umd.js\",\n \"types\": \"dist/src/index.d.ts\",\n \"exports\": {\n \".\": {\n \"import\": \"./dist/index.mjs\",\n \"require\": \"./dist/index.cjs\",\n \"umd\": \"./dist/index.umd.js\",\n \"types\": \"./dist/src/index.d.ts\"\n }\n },\n \"repository\": {\n \"type\": \"git\",\n \"url\": \"https://github.com/pjy0509/native-fn\"\n },\n \"homepage\": \"https://pjy0509.github.io/example/native-fn/\",\n \"keywords\": [\n \"app\",\n \"app loader\",\n \"app launcher\",\n \"app-loader\",\n \"app-launcher\",\n \"appearance\",\n \"camera\",\n \"engine\",\n \"geolocation\",\n \"keyboard inset\",\n \"keyboard-inset\",\n \"messenger\",\n \"os\",\n \"safe area inset\",\n \"safe-area-inset\",\n \"theme\",\n \"titlebar area\",\n \"titlebar-area\"\n ],\n \"devDependencies\": {\n \"esbuild\": \"^0.21.4\",\n \"glob\": \"^10.4.1\",\n \"html-webpack-plugin\": \"^5.6.0\",\n \"ts-loader\": \"^9.5.1\",\n \"typescript\": \"^5.4.5\"\n }\n}\n", "'use strict';\n\nimport(\"./polyfill/promise.min\");\nimport freeze from \"./utils/freeze.js\";\n\nimport OS from \"./os.js\";\nimport Engine from \"./engine.js\";\nimport Appearance from \"./appearance.js\";\nimport Theme from \"./theme.js\";\nimport App from \"./app.js\";\nimport Camera from \"./camera.js\";\nimport Messenger from \"./messenger.js\";\nimport Geolocation from \"./geolocation.js\";\n\nimport InitializationError from \"./utils/initializationError.js\";\nimport URLOpenError from \"./utils/urlOpenError.js\";\nimport UserNotSelectedError from \"./utils/userNotSelectedError.js\";\n\nimport packageJSON from '../package.json';\n\nconst Error = {\n\tInitializationError,\n\tURLOpenError,\n\tUserNotSelectedError,\n};\n\nconst Version = packageJSON.version\n\nconst Native = freeze({\n\tversion: packageJSON.version,\n\tOS,\n\tEngine,\n\tAppearance,\n\tTheme,\n\tApp,\n\tCamera,\n\tMessenger,\n\tGeolocation,\n\tError,\n\tVersion\n});\n\nif (typeof globalThis !== 'undefined') {\n\tglobalThis.Native = Native;\n}\n\nexport {\n\tNative,\n\tApp,\n\tOS,\n\tEngine,\n\tAppearance,\n\tTheme,\n\tCamera,\n\tMessenger,\n\tGeolocation,\n\tError,\n\tVersion\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", "a", "l", "d", "freeze", "obj", "keys", "i", "key", "parseWindowsVersion", "str", "map", "mapped", "parseIOSOrMacVersion", "getRenderer", "canvas", "gl", "extension", "OS", "ua", "matched", "result", "maps", "freeze", "os_default", "parseLibWebVersion", "str", "Engine", "ua", "matched", "result", "maps", "freeze", "engine_default", "matchMedia_default", "media", "style", "info", "query", "text", "listeners", "query", "matchMedia_default", "Appearance", "listener", "wrapped", "event", "i", "freeze", "appearance_default", "listener", "metas", "observer", "observerListeners", "appearanceListeners", "getMeta", "attributes", "query", "element", "i", "initMetas", "Theme", "mutations", "changed", "mutation", "target", "type", "onAppearanceChange", "appearance_default", "theme", "appearance", "color", "light", "dark", "result", "freeze", "theme_default", "isDocumentHidden", "target", "openURLWithHref", "target", "url", "index", "a", "fake", "openURLAndroidOrWindowsOrMacOS", "os", "timeout", "resolve", "reject", "id", "onblur", "onfocus", "openURLIOS", "goe8", "isDocumentHidden", "onvisibilitychange", "openURLAndroid", "openURLWindowsOrMacOS", "openURL", "createCustomError", "name", "CustomError", "message", "initializationError_default", "createCustomError", "urlOpenError_default", "createCustomError", "getTrackId", "bundle", "xhr", "response", "addDelimiter", "input", "App", "data", "resolve", "reject", "initializationError_default", "scheme", "id", "fallback", "packageName", "ready", "urls", "isOpenWebStore", "os_default", "matched", "intent", "chromiumVersion", "forceIntent", "split", "pre", "suf", "iframe", "url", "resolved", "cleanup", "supported", "onload", "addDelimiter", "universal", "getTrackId", "target", "tryOpenURL", "index", "urlOpenError_default", "state", "openURL", "e", "freeze", "app_default", "userNotSelectedError_default", "createCustomError", "run", "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_default", "playCaptureSound", "canvas", "ctx", "canvasToBlob", "playRecordStopSound", "playRecordStartSound", "padLeft", "event", "number", "reader", "byteString", "ab", "ia", "i", "div", "background", "createBackgroundElement", "button", "matchMedia_default", "media", "div1", "div2", "playSound", "base64", "data", "self", "initializationError_default", "input", "os_default", "files", "error", "getUserMedia", "constraints", "legacy", "clean", "tracks", "freeze", "camera_default", "isArrayLike", "value", "length", "encode", "str", "c", "normalizeValue", "obj", "v", "k", "stringify", "prefix", "i", "Messenger", "data", "url", "target", "resolve", "reject", "openURL", "os_default", "urlOpenError_default", "freeze", "messenger_default", "checkPermissionInterval", "coordinateAPIInterval", "degrees2Radians", "degrees", "angle", "coordinate1", "coordinate2", "cosineDeltaLongitude", "cosineDifferenceLatitude", "cosineSumLatitude", "distance", "jsonp", "url", "fn", "script", "callback", "prefix", "clear", "data", "Geolocation", "successCallback", "errorCallback", "native", "checkPermissionIntervalId", "id", "beforeCoordinate", "timestamp", "permission", "setNative", "_", "error", "boolean", "watchCoordinateNative", "watchCoordinateAPI", "calculateCoordinateDifference", "coordinate", "now", "timeDiff", "getCoordinateAPI", "position", "geolocation_default", "package_default", "Error", "initializationError_default", "urlOpenError_default", "userNotSelectedError_default", "Version", "package_default", "Native", "freeze", "os_default", "engine_default", "appearance_default", "theme_default", "app_default", "camera_default", "messenger_default", "geolocation_default"]
7
- }
package/dist/index.umd.js DELETED
@@ -1,2 +0,0 @@
1
- "use strict";var Native=(()=>{var te=Object.defineProperty;var Te=Object.getOwnPropertyDescriptor;var Me=Object.getOwnPropertyNames;var Ce=Object.prototype.hasOwnProperty;var xe=(e,t)=>()=>(e&&(t=e(e=0)),t);var Ue=(e,t)=>{for(var n in t)te(e,n,{get:t[n],enumerable:!0})},Le=(e,t,n,o)=>{if(t&&typeof t=="object"||typeof t=="function")for(let q of Me(t))!Ce.call(e,q)&&q!==n&&te(e,q,{get:()=>t[q],enumerable:!(o=Te(t,q))||o.enumerable});return e};var De=e=>Le(te({},"__esModule",{value:!0}),e);var ct={};var Se=xe(()=>{(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 u(E,b){if(b&&(typeof b=="object"||typeof b=="function")){var M=b.then;if(typeof M=="function")return void M.call(b,function(C){u(E,C)},function(C){f[E]={status:"rejected",reason:C},--v==0&&a(f)})}f[E]={status:"fulfilled",value:b},--v==0&&a(f)}if(!i||typeof i.length>"u")return V(new TypeError(typeof i+" "+i+" is not iterable(cannot read property Symbol(Symbol.iterator))"));var f=Array.prototype.slice.call(i);if(f.length===0)return a([]);for(var v=f.length,g=0;f.length>g;g++)u(g,f[g])})}function n(i,a){this.name="AggregateError",this.errors=i,this.message=a||""}function o(i){var a=this;return new a(function(V,u){if(!i||typeof i.length>"u")return u(new TypeError("Promise.any accepts an array"));var f=Array.prototype.slice.call(i);if(f.length===0)return u();for(var v=[],g=0;f.length>g;g++)try{a.resolve(f[g]).then(V).catch(function(E){v.push(E),v.length===f.length&&u(new n(v,"All promises were rejected"))})}catch(E){u(E)}})}function q(i){return!(!i||typeof i.length>"u")}function m(){}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=[],h(i,this)}function c(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 u;try{u=V(i._value)}catch(f){return void A(a.promise,f)}s(a.promise,u)}else(i._state===1?s:A)(a.promise,i._value)})):i._deferreds.push(a)}function s(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 d(i);if(typeof V=="function")return void h(function(u,f){return function(){u.apply(f,arguments)}}(V,a),i)}i._state=1,i._value=a,d(i)}catch(u){A(i,u)}}function A(i,a){i._state=2,i._value=a,d(i)}function d(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++)c(i,i._deferreds[a]);i._deferreds=null}function h(i,a){var V=!1;try{i(function(u){V||(V=!0,s(a,u))},function(u){V||(V=!0,A(a,u))})}catch(u){if(V)return;V=!0,A(a,u)}}n.prototype=Error.prototype;var l=setTimeout;r.prototype.catch=function(i){return this.then(null,i)},r.prototype.then=function(i,a){var V=new this.constructor(m);return c(this,new function(u,f,v){this.onFulfilled=typeof u=="function"?u:null,this.onRejected=typeof f=="function"?f:null,this.promise=v}(i,a,V)),V},r.prototype.finally=e,r.all=function(i){return new r(function(a,V){function u(E,b){try{if(b&&(typeof b=="object"||typeof b=="function")){var M=b.then;if(typeof M=="function")return void M.call(b,function(C){u(E,C)},V)}f[E]=b,--v==0&&a(f)}catch(C){V(C)}}if(!q(i))return V(new TypeError("Promise.all accepts an array"));var f=Array.prototype.slice.call(i);if(f.length===0)return a([]);for(var v=f.length,g=0;f.length>g;g++)u(g,f[g])})},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 u=0,f=i.length;f>u;u++)r.resolve(i[u]).then(a,V)})},r._immediateFn=typeof setImmediate=="function"&&function(i){setImmediate(i)}||function(i){l(i,0)},r._unhandledRejectionFn=function(i){console!==void 0&&console&&console.warn("Possible Unhandled Promise Rejection:",i)};var p=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 p.Promise!="function"?p.Promise=r:(p.Promise.prototype.finally||(p.Promise.prototype.finally=e),p.Promise.allSettled||(p.Promise.allSettled=t),p.Promise.any||(p.Promise.any=o))})});var lt={};Ue(lt,{App:()=>re,Appearance:()=>k,Camera:()=>ce,Engine:()=>ne,Error:()=>Ie,Geolocation:()=>ue,Messenger:()=>le,Native:()=>ke,OS:()=>I,Theme:()=>qe,Version:()=>Be});function S(e){if(typeof Object.freeze!="function"){for(var t=Object.keys(e),n=0,o=t[n];n<t.length;n++)if(e.hasOwnProperty(o))try{Object.defineProperty(e,o,{writable:!1,configurable:!1})}catch{}return e}return Object.freeze(e)}function X(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 _(e){if(e!==void 0)return e.replace(/_/g,".")}function Fe(){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 Oe=function(e){for(var t,n={renderer:Fe(),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",X],[/windows nt 6\.2; (arm)/i,"Windows",X],[/windows[\/ ]([ntce\d. ]+\w)(?!.+xbox)/i,"Windows",X],[/(?:win(?=[39n])|win 9x )([nt\d.]+)/i,"Windows",X],[/[adehimnop]{4,7}\b(?:.*os (\w+) like mac|; opera)/i,"iOS",_],[/(?:ios;fbsv\/|iphone.+ios[\/ ])([\d.]+)/i,"iOS",_],[/cfnetwork\/.+darwin/i,"iOS"],[/mac os x ?([\w. ]*)/i,"MacOS",_],[/(?:macintosh|mac_powerpc\b)(?!.+haiku)/i,"MacOS",_]],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],S(n);return S(n)}(navigator.userAgent),I=Oe;function pe(e){return"LibWeb"}var Ne=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",pe],[/ladybird\//i,"LibWeb",pe],[/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],S(n);return S(n)}(navigator.userAgent),ne=Ne;var $=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 j=[],U=$("(prefers-color-scheme: dark)"),F={addListener:function(e){function t(n){e(n.matches?F.Type.Dark:F.Type.Light)}if(j.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<j.length;t++)if(j[t].original===e){var n=j[t].wrapped;if(typeof U.removeEventListener=="function")U.removeEventListener("change",n);else if(typeof U.removeListener=="function")return U.removeListener(n);j.splice(t,1);return}}};Object.defineProperty(F,"value",{get:function(){return U.matches?F.Type.Dark:F.Type.Light},configurable:!1,enumerable:!0});F.Type=S({Light:"light",Dark:"dark"});var k=F;var z,y={light:void 0,dark:void 0,iosStatusBar:void 0,windowsPhone:void 0},P,O=[],me=[];function ee(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 oe(){y.light===void 0&&(y.light=ee([["name","theme-color"],["media","(prefers-color-scheme: light)"]])),y.dark===void 0&&(y.dark=ee([["name","theme-color"],["media","(prefers-color-scheme: dark)"]])),y.iosStatusBar===void 0&&(y.iosStatusBar=ee([["name","apple-mobile-web-app-status-bar-style"]])),y.windowsPhone===void 0&&(y.windowsPhone=ee([["name","msapplication-navbutton-color"]]))}var Y={addListener:function(e){if(typeof window.MutationObserver!="function")return;P===void 0&&(P=new MutationObserver(function(n){var o,q=!1;for(o=0;o<n.length;o++){var m=n[o],r=m.target,c=m.type;if(!(c!=="attributes"||r.tagName!=="META")&&[y.light,y.dark,y.iosStatusBar,y.windowsPhone].indexOf(r)!==-1){q=!0;break}}if(q)for(o=0;o<O.length;o++)O[o](Y.value)}),P.observe(top.document.head,{attributes:!0,childList:!0,subtree:!0}));function t(){oe(),y.dark.content!==y.light.content&&e(Y.value)}k.addListener(t),me.push(t),O.push(e)},removeListener:function(e){if(!(typeof window.MutationObserver!="function"||P===void 0)){for(var t=0;t<O.length;t++)if(O[t]===e){O.splice(t,1),me.splice(t,1);break}O.length===0&&(P.disconnect(),P=void 0)}},setTheme:function(e){oe(),z!==void 0&&(k.removeListener(z),z=void 0),z=function(o){var q=e[o];q!==void 0&&(q.iosStatusBar!==void 0&&(y.iosStatusBar.content=q.iosStatusBar),q.windowsPhone!==void 0&&(y.windowsPhone.content=q.iosStatusBar))},k.addListener(z);var t=e.light,n=e.dark;n!==void 0&&n.theme!==void 0&&(y.dark.content=n.theme),t!==void 0&&(t.theme!==void 0&&(y.light.content=t.theme),k.value==="light"&&(t.iosStatusBar!==void 0&&(y.iosStatusBar.content=t.iosStatusBar),t.windowsPhone!==void 0&&(y.windowsPhone.content=t.windowsPhone))),n!==void 0&&(n.theme!==void 0&&(y.dark.content=n.theme),k.value==="dark"&&(n.iosStatusBar!==void 0&&(y.iosStatusBar.content=n.iosStatusBar),n.windowsPhone!==void 0&&(y.windowsPhone.content=n.windowsPhone)))}};Object.defineProperty(Y,"value",{get:function(){var e={};return oe(),y[k.value].content!==""&&(e.theme=y[k.value].content),y.iosStatusBar.content!==""&&(e.iosStatusBar=y.iosStatusBar.content),y.windowsPhone.content!==""&&(e.windowsPhone=y.windowsPhone.content),e},configurable:!1,enumerable:!0});Y.Type=S({Theme:"theme",IOSStatusBar:"iosStatusBar",WindowsPhone:"windowsPhone"});var qe=Y;function Pe(e){return e.document.hidden!==void 0?e.document.hidden:e.document.webkitHidden!==void 0?e.document.webkitHidden:!0}function he(e,t,n){if(n===0)location.href=t;else{var o=e.document.createElement("A"),q;o.href=t,e.document.body.appendChild(o);try{q=new e.MouseEvent("click",{bubbles:!0,cancelable:!0,view:e})}catch{q=e.document.createEvent("MouseEvents"),q.initMouseEvent("click",!0,!0,window,0,0,0,0,0,!1,!1,!1,!1,0,null)}o.dispatchEvent(q),e.document.body.removeChild(o)}}function ye(e,t,n,o,q){return new Promise(function(m,r){var c;function s(){clearTimeout(c),t.removeEventListener("blur",s),t.addEventListener("focus",A)}function A(){t.removeEventListener("focus",A),m()}c=setTimeout(function(){r(),t.removeEventListener("blur",s)},o),t.addEventListener("blur",s),he(t,n,q)})}function Qe(e,t,n,o){return new Promise(function(q,m){var r,c=parseInt(e.version)>=8;function s(){clearTimeout(r),t.addEventListener("focus",A),t.removeEventListener("blur",s)}function A(){r=setTimeout(function(){Pe(t)?q():m(),c?t.document.removeEventListener("visibilitychange",d):t.document.removeEventListener("pagehide",d)},2e3),t.removeEventListener("focus",A)}function d(){clearTimeout(r),t.removeEventListener("blur",s),t.removeEventListener("focus",A),c?t.document.removeEventListener("visibilitychange",d):t.document.removeEventListener("pagehide",d),q()}t.addEventListener("blur",s),c?t.document.addEventListener("visibilitychange",d):t.document.addEventListener("pagehide",d),he(t,n,o)})}function Re(e,t,n,o){return ye(e,t,n,1e3,o)}function Ge(e,t,n,o){return ye(e,t,n,750,o)}function K(e,t,n,o){if(n)switch(e.name){case"Android":return Re(e,t,n,o);case"iOS":return Qe(e,t,n,o);case"Windows":case"MacOS":return Ge(e,t,n,o)}return Promise.reject()}function N(e){function t(n){if(!(this instanceof t))return new t(n);this.name=e,this.message=n,Error.captureStackTrace?Error.captureStackTrace(this,t):this.stack=new Error().stack}return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var Q=N("InitializationError");var R=N("URLOpenError");function ve(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 ie(e){return/\w+:\/\/.*/.test(e)?e:e+"://"}var w=function(e){if(e===void 0)throw new TypeError("Failed to construct 'Native.App': Illegal constructor.");this.run=function(){return new Promise(function(V,u){u(new Q("Initialization error."))})};var t,n,o,q,m=Promise.resolve(),r=[],c;switch(I.name){case"Android":if(e.android===void 0)return;var s,A,d,h;if(t=e.android.scheme,n=e.android.package,o=e.android.fallback,A=e.android.intent,c=e.android.isOpenWebStore,h=e.android.forceIntent,A!==void 0&&t===void 0&&(s=A.match(/scheme=([^;]*)/),s!==null&&(t=s[1]+"://"),s=A.match(/intent:\/\/([^;]*)#Intent;/),s!==null&&(t=t+s[1])),A!==void 0&&n===void 0&&(s=A.match(/package=([^;]*)/),s!==null&&(n=s[1])),A!==void 0&&o===void 0&&(s=A.match(/S\.browser_fallback_url=([^;]*)/),s!==null&&(o=s[1])),t===void 0&&n===void 0&&o===void 0)return;if(A===void 0){var l=t.split("://"),p=l[0],i=l[1];A="intent://",i!==void 0?A=A+i:A=A+"open",A=A+"#Intent;scheme="+p+";action=android.intent.action.VIEW;category=android.intent.category.BROWSABLE;",n!==void 0&&(A=A+"package="+n+";"),o!==void 0?A=A+"S.browser_fallback_url="+o+";":A=A+"S.browser_fallback_url=market://details?id="+n+";",A=A+"end"}if(s=navigator.userAgent.match(/chrom(?:e|ium)\/([\w.]+)/i),s!==null&&(d=parseInt(s[1])),d>=25&&A!==void 0)if(d<=42){m=new Promise(function(V){var u=top.document.createElement("IFRAME"),f="intent://open#Intent;scheme=;end;",v=!1;function g(b){v||(v=!0,V(b),u.removeEventListener("load",E),top.document.body.removeChild(u))}function E(){g(u.src!==f)}u.addEventListener("load",E),u.src=f,top.document.body.appendChild(u),setTimeout(function(){g(!1)},500)}).then(function(V){V?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]),c&&r.push(["https://play.google.com/store/apps/details?id="+n,w.State.Store])))});break}else{r.push([A,w.State.Intent]);break}else t!==void 0&&r.push([ie(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]),c&&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,c=e.windows.isOpenWebStore,o=e.windows.fallback,t!==void 0&&r.push([ie(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]),c&&r.push(["https://apps.microsoft.com/detail/"+n,w.State.Store]));break;case"iOS":if(e.ios===void 0)return;var a=e.ios.universal;t=e.ios.scheme,q=e.ios.package,n=e.ios.trackId,o=e.ios.fallback,a!==void 0&&parseInt(I.version)>=9?r.push([a,w.State.Universal]):t!==void 0&&r.push([t,w.State.Scheme]),n===void 0&&q!==void 0&&(n=ve(q)),o!==void 0?r.push([o,w.State.Fallback]):n!==void 0&&(c?r.push(["https://itunes.apple.com/kr/app/id"+n+"?mt=8",w.State.Store]):r.push(["itms-apps://itunes.apple.com/app/id"+n+"?mt=8",w.State.Store]));break;case"MacOS":if(e.mac===void 0)return;t=e.mac.scheme,q=e.mac.package,n=e.mac.trackId,o=e.mac.fallback,c=e.mac.isOpenWebStore,t!==void 0&&r.push([ie(t),w.State.Scheme]),n===void 0&&q!==void 0&&(n=ve(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]),c&&r.push(["https://apps.apple.com/us/app/id"+n+"?mt=12",w.State.Store]));break;default:return}this.run=function(V=top){return document.querySelector("[NATIVE-OS-DEBUG]").textContent+=JSON.stringify(r,null,4),m.then(function(){return new Promise(function(u,f){function v(g=0){if(g>=r.length)return f(new R("No url can be opened."));var E=r[g][0],b=r[g][1];return K(I,V,E,g).then(function(){u(b)}).catch(function(M){v(++g)})}return v()})})}};w.State=S({Scheme:0,Universal:1,Intent:2,Fallback:3,Store:4});var re=w;var Z=N("UserNotSelectedError");var Ae=!1;function je(e,t,n){var o=t.getVideoTracks()[0].getSettings(),q=top.document.documentElement.style.overflow,m=o.width||640,r=o.height||480,c=Xe(e),s=Ye(),A=Ke(),d=Je(),h=He(e),l=We(),p=ge(),i=ge(),a=_e(),V=$e(),u=top.innerHeight*.4/r*m/2,f=!1,v,g=[],E=0,b;d.appendChild(h),e===T.Type.Video&&s.appendChild(l),s.appendChild(A),s.appendChild(c),s.appendChild(d),s.appendChild(p),s.appendChild(i),s.appendChild(a),s.appendChild(V),A.style.left=c.style.left="calc(50% - "+u+"px)",p.style.left=i.style.right="0",a.style.left=V.style.right="calc(50% - "+(u-50)+"px)",p.style.width=i.style.width="calc(50% - "+u+"px)";function M(){}function C(){b!==void 0&&(clearInterval(b),b=void 0)}function fe(G,D,x){we(G).then(function(B){c.src=B,A.style.display=d.style.display="none",c.style.display=a.style.display=V.style.display="block",a.onclick=function(){D({blob:G,dataURL:B})},V.onclick=function(){typeof window.URL=="function"?URL.revokeObjectURL(B):typeof window.webkitURL=="function"&&webkitURL.revokeObjectURL(B),E=0,A.style.display=d.style.display="block",c.style.display=a.style.display=V.style.display="none"}}).catch(function(B){x(B)})}return A.srcObject!==void 0?(A.srcObject=t,M=function(){A.srcObject=null}):A.mozSrcObject!==void 0&&(A.mozSrcObject=t,M=function(){A.mozSrcObject=null}),A.onloadedmetadata=function(){A.muted=!0,A.play()},top.document.documentElement.style.overflow="hidden",top.document.body.appendChild(s),n.push(function(){top.document.documentElement.style.overflow=q,top.document.body.removeChild(s),v!==void 0&&v.state!=="inactive"&&(v.stop(),v=void 0),M(),C()}),new Promise(function(G,D){top.document.addEventListener("keyup",function x(B){n.push(function(){top.document.removeEventListener("keyup",x)}),(B.keyCode===27||B.code==="Escape")&&D(new Z("User did not select."))}),d.onclick=function(){try{if(e===T.Type.Image){nt();var x=document.createElement("canvas");x.width=m,x.height=r;var B=x.getContext("2d");B.drawImage(A,0,0,x.width,x.height),ze(x).then(function(L){fe(L,G,D)}).catch(function(L){D(L)})}else f?(tt(),v.stop(),h.style.borderRadius=h.style.WebkitBorderRadius=h.style.MozBorderRadius="50%",h.style.left="3px",h.style.top="3px",h.style.width="44px",h.style.height="44px"):(et(),b=setInterval(function(){++E,l.innerText=ae(E/6e3)+":"+ae(E/100%60)+":"+ae(E%100)},10),v=new MediaRecorder(A.srcObject||A.mozSrcObject),g=[],v.ondataavailable=function(L){L.data.size>0&&g.push(L.data)},v.onstop=function(){C(),fe(new Blob(g,{type:"video/webm"}),G,D)},v.start(),h.style.borderRadius=h.style.WebkitBorderRadius=h.style.MozBorderRadius="10%",h.style.top="12px",h.style.left="12px",h.style.width="27px",h.style.height="27px"),f=!f}catch(L){D(L)}}})}function ae(e){return e=parseInt(e),e<=9?"0"+e:e}function we(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 ze(e){return new Promise(function(t,n){if(typeof e.toBlob=="function")e.toBlob(function(s){t(s)},"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]),m=new ArrayBuffer(q.length),r=new Uint8Array(m),c=0;c<q.length;c++)r[c]=q.charCodeAt(c);t(new Blob([m],{type:o.split(",")[0].split(":")[1].split(";")[0]}))}catch(s){n(s)}})}function Ye(){var e=document.createElement("DIV"),t=Ze();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 ge(){var e=document.createElement("DIV");return e.style.position="absolute",e.style.top="0",e.style.height="100%",e.style.backgroundColor="#000",e}function Ke(){var e=document.createElement("VIDEO");return e.style.position="absolute",e.style.top="30%",e.style.height="40%",e.controls=!1,e}function Ze(){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 We(){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 Je(){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 He(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===T.Type.Image?t.style.backgroundColor="#FFF":t.style.backgroundColor="#F00",$("(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 Xe(e){var t;return e===T.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 _e(){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 $e(){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 se(e){typeof window.Audio=="function"&&new Audio("data:audio/mpeg;base64,"+e).play()}function et(){se("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")}function tt(){se("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 nt(){se("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")}var T=function(e){if(e==null||e.type==null||!T.isSupported||[T.Type.Image,T.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,c){c(new Q("Initialization error."))})},this.bind=function(r){r.onclick=function(c){c.preventDefault(),t.run()}};var n=e.type;switch(I.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,c){o.onchange=function(){var s=o.files;if(s.length>0){var A=s[0];we(A).then(function(d){r({blob:A,dataURL:d})}).catch(function(d){c(d)})}else c(new Z("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 m=navigator.getUserMedia||navigator.webkitGetUserMedia||navigator.mozGetUserMedia||navigator.msGetUserMedia;typeof m=="function"&&(q=function(r){return new Promise(function(c,s){m.call(navigator,r,c,s)})})}this.run=function(){return new Promise(function(r,c){if(Ae)return c(new Error("Native.Camera is already running."));Ae=!0;var s=[];function A(){Ae=!1;for(var d=0;d<s.length;d++)s[d]()}try{q({video:!0,audio:n===T.Type.Video}).then(function(d){s.push(function(){for(var h=d.getTracks(),l=0;l<h.length;l++)h[l].stop()}),je(n,d,s).then(function(h){r(h)}).catch(function(h){c(h)}).finally(function(){A()})}).catch(function(d){A(),c(d)})}catch(d){A(),c(d)}})};break;default:}};T.Type=S({Image:"image",Video:"video"});Object.defineProperty(T,"isSupported",{get(){return I.name==="Android"||I.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});var ce=T;function ot(e){if(e==null)return!1;var t=e.length;return typeof t=="number"&&t>=0&&!(t%1)}function W(e){return encodeURIComponent(e).replace(/%20/g,"%20").replace(/[!'()*]/g,function(t){return"%"+t.charCodeAt(0).toString(16)})}function be(e){if(e==null)return null;if(e instanceof HTMLFormElement)return be(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 J(e,t=""){if(typeof e!="string"&&ot(e))for(var n="",o=0;o<e.length;o++)n+=W(e[o]),o!==e.length-1&&(n+=",");return e==null?"":e instanceof HTMLInputElement?t+W(e.value):e instanceof HTMLElement?t+W(e.innerText):e instanceof Node?t+W(e.textContent):t+W(e)}var 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=be(e);var t=e.type+":"+J(e.to)+"?"+J(e.cc,"cc=")+J(e.bcc,"&bcc=")+J(e.subject,"&subject=")+J(e.body,"&body=");this.run=function(n=top){return new Promise(function(o,q){K(I,n,t).then(function(){o()}).catch(function(){return q(new R("No url can be opened."))})})}};H.Type=S({Telephone:"tel",SMS:"sms",Mail:"mailto"});var le=H;var qt=6e4,it=6e3;function Ve(e){return e*Math.PI/180}function rt(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 At(e,t){return e===void 0||t===void 0||e.latitude===t.latitude&&e.longitude===t.longitude?0:6384e3*rt(e,t)}function Ee(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 Ee(e,t);function m(){try{delete top[o]}catch{top[o]=void 0}n.parentNode.removeChild(n)}top[o]=function(r){t(r)},n.onload=function(){m()},n.onerror=function(){m()},top.document.head.appendChild(n)}var at=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,m,r;navigator.permissions&&navigator.permissions.query?navigator.permissions.query({name:"geolocation"}).then(function(l){l.addEventListener("change",function(){c(l.state!=="denied")}),c(l.state!=="denied")}).catch(function(l){c(!1)}):navigator.geolocation!==void 0&&navigator.geolocation.getCurrentPosition!==void 0?o=setInterval(function(){navigator.geolocation.getCurrentPosition(function(){c(!0)},function(l){l.code===l.PERMISSION_DENIED&&c(!1)})},qt):c(!1);function c(l){n^l&&(n=l,q!==void 0&&(l?(clearInterval(q),q=h()):(navigator.geolocation.clearWatch(q),q=d())))}function s(l){if(l.distance=At(m,l),l.speed===void 0){var p=new Date().getTime();if(r===void 0)l.speed=0;else{var i=(p-r)/1e3;i>0?l.speed=l.distance/i:l.speed=0}}m=l,r=new Date().getTime()}function A(){if(n){q!==void 0&&clearInterval(q),q=h();return}Ee("http://ip-api.com/json/?fields=lat,lon,status",function(l){var p={};if(l.status==="success"){if(p.latitude=l.lat,p.longitude=l.lon,p.accuracy=-1,m!==void 0&&p.latitude===m.latitude&&p.longitude===m.longitude)return;s(p),e(p)}else t&&t()})}function d(){return A(),setInterval(A,it)}function h(){return navigator.geolocation.watchPosition(function(l){var p={};p.latitude=l.coords.latitude,p.longitude=l.coords.longitude,p.accuracy=l.coords.accuracy,l.coords.altitude!==null&&(p.altitude=l.coords.altitude),l.coords.altitudeAccuracy!==null&&(p.altitudeAccuracy=l.coords.altitudeAccuracy),l.coords.heading!==null&&(p.heading=l.coords.heading),l.coords.speed!==null&&(p.speed=l.coords.speed),s(p),e(p)},function(l){l.code===l.PERMISSION_DENIED?(n=!1,q!==void 0&&navigator.geolocation.clearWatch(q),q=d()):t&&t()})}this.disconnect=function(){q!==void 0&&(n?navigator.geolocation.clearWatch(q):clearInterval(q)),o!==void 0&&clearInterval(o),q=void 0,m=void 0,o=void 0},this.observe=function(){this.disconnect(),n?q=h():q=d()}},ue=at;var de={name:"native-fn",version:"1.0.21",description:" ",scripts:{test:'echo "Error: no test specified" && exit 1',build:"node build.js"},author:"",license:"MIT",type:"module",main:"dist/index.cjs",require:"dist/index.cjs",module:"dist/index.mjs",umd:"dist/index.umd.js",types:"dist/src/index.d.ts",exports:{".":{import:"./dist/index.mjs",require:"./dist/index.cjs",umd:"./dist/index.umd.js",types:"./dist/src/index.d.ts"}},repository:{type:"git",url:"https://github.com/pjy0509/native-fn"},homepage:"https://pjy0509.github.io/example/native-fn/",keywords:["app","app loader","app launcher","app-loader","app-launcher","appearance","camera","engine","geolocation","keyboard inset","keyboard-inset","messenger","os","safe area inset","safe-area-inset","theme","titlebar area","titlebar-area"],devDependencies:{esbuild:"^0.21.4",glob:"^10.4.1","html-webpack-plugin":"^5.6.0","ts-loader":"^9.5.1",typescript:"^5.4.5"}};Promise.resolve().then(()=>Se());var Ie={InitializationError:Q,URLOpenError:R,UserNotSelectedError:Z},Be=de.version,ke=S({version:de.version,OS:I,Engine:ne,Appearance:k,Theme:qe,App:re,Camera:ce,Messenger:le,Geolocation:ue,Error:Ie,Version:Be});typeof globalThis<"u"&&(globalThis.Native=ke);return De(lt);})();
2
- //# sourceMappingURL=index.umd.js.map