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.
@@ -0,0 +1,12 @@
1
+ export declare enum AppOpenState {
2
+ Scheme = 0,
3
+ Universal = 1,
4
+ Intent = 2,
5
+ Fallback = 3,
6
+ Store = 4
7
+ }
8
+ export declare enum Messengers {
9
+ Telephone = "telephone",
10
+ Message = "message",
11
+ Mail = "mail"
12
+ }
@@ -0,0 +1,35 @@
1
+ export declare enum OS {
2
+ Unknown = "Unknown",
3
+ Android = "Android",
4
+ iOS = "iOS",
5
+ Windows = "Windows",
6
+ MacOS = "MacOS"
7
+ }
8
+ export declare enum Devices {
9
+ Unknown = "Unknown",
10
+ Mobile = "Mobile",
11
+ Desktop = "Desktop"
12
+ }
13
+ export declare enum Engines {
14
+ Unknown = "Unknown",
15
+ EdgeHTML = "EdgeHTML",
16
+ ArkWeb = "ArkWeb",
17
+ Blink = "Blink",
18
+ Presto = "Presto",
19
+ WebKit = "WebKit",
20
+ Trident = "Trident",
21
+ NetFront = "NetFront",
22
+ KHTML = "KHTML",
23
+ Tasman = "Tasman",
24
+ Gecko = "Gecko"
25
+ }
26
+ export declare let OS_NAME: OS;
27
+ export declare let OS_VERSION: string;
28
+ export declare let DEVICE_NAME: Devices;
29
+ export declare let ENGINE_NAME: Engines;
30
+ export declare let ENGINE_VERSION: string;
31
+ export declare const RENDERER: string;
32
+ export declare const IS_MOBILE: boolean;
33
+ export declare const IS_DESKTOP: boolean;
34
+ export declare const IS_STANDALONE: boolean;
35
+ export declare const IS_WEBVIEW: boolean;
@@ -0,0 +1,16 @@
1
+ import { ListenerEntry } from "../types/theme";
2
+ export declare enum Appearances {
3
+ Unknown = "unknown",
4
+ Light = "light",
5
+ Dark = "dark"
6
+ }
7
+ export declare const CHROME_VERSION: number;
8
+ export declare const MEDIA_QUERY_LIST: MediaQueryList;
9
+ export declare const SUPPORT_PREFERS_COLOR_SCHEME: boolean;
10
+ export declare const IS_FULL_SUPPORT_THEME_COLOR: boolean;
11
+ export declare const CONTEXT: CanvasRenderingContext2D | null;
12
+ export declare const SVG_PIXEL_DATA_URL: string;
13
+ export declare const IS_SAMSUNG: boolean;
14
+ export declare const IS_IE_MOBILE: boolean;
15
+ export declare const IS_WINDOWS_PHONE: boolean;
16
+ export declare const ENTRIES: ListenerEntry[];
@@ -0,0 +1 @@
1
+ export declare const USER_AGENT: string;
@@ -0,0 +1,3 @@
1
+ import { App } from "../types/app";
2
+ declare const App: App;
3
+ export default App;
@@ -0,0 +1,3 @@
1
+ import { Platform } from "../types/platform";
2
+ declare const Platform: Platform;
3
+ export default Platform;
@@ -0,0 +1,3 @@
1
+ import { Theme } from "../types/theme";
2
+ declare const Theme: Theme;
3
+ export default Theme;
@@ -0,0 +1,6 @@
1
+ declare const EasingError: ErrorConstructor;
2
+ declare const CubicBezierSyntaxError: ErrorConstructor;
3
+ declare const LinearSyntaxError: ErrorConstructor;
4
+ declare const StepSyntaxError: ErrorConstructor;
5
+ declare const UnsupportedEasingFunctionError: ErrorConstructor;
6
+ export { EasingError, CubicBezierSyntaxError, LinearSyntaxError, StepSyntaxError, UnsupportedEasingFunctionError, };
@@ -0,0 +1,2 @@
1
+ declare const UnsupportedColorError: ErrorConstructor;
2
+ export { UnsupportedColorError, };
@@ -0,0 +1,2 @@
1
+ declare const URLOpenError: ErrorConstructor;
2
+ export { URLOpenError, };
@@ -0,0 +1,43 @@
1
+ import { OS } from "../constants/platform";
2
+ import { AppOpenState, Messengers } from "../constants/app";
3
+ export declare interface AppInfo {
4
+ scheme?: string;
5
+ fallback?: string;
6
+ timeout?: number;
7
+ }
8
+ export declare interface AndroidAppInfo extends AppInfo {
9
+ packageName?: string;
10
+ intent?: string;
11
+ }
12
+ export declare interface IOSAppInfo extends AppInfo {
13
+ packageName?: string;
14
+ trackId?: string;
15
+ universal?: string;
16
+ }
17
+ export declare interface WindowsAppInfo extends AppInfo {
18
+ productId?: string;
19
+ }
20
+ export declare interface MacOSAppInfo extends AppInfo {
21
+ packageName?: string;
22
+ trackId?: string;
23
+ }
24
+ export declare interface AppOpenOptions {
25
+ [OS.Android]?: AndroidAppInfo;
26
+ [OS.iOS]?: IOSAppInfo;
27
+ [OS.Windows]?: WindowsAppInfo;
28
+ [OS.MacOS]?: MacOSAppInfo;
29
+ }
30
+ export declare type Stringifiable = string | number | boolean | HTMLElement | null | undefined;
31
+ export declare type StringifiableList = Stringifiable[] | NodeList | NodeListOf<Node> | HTMLCollection;
32
+ export declare type MessengerOpenOptions = {
33
+ to?: Stringifiable | StringifiableList;
34
+ cc?: Stringifiable | StringifiableList;
35
+ bcc?: Stringifiable | StringifiableList;
36
+ subject?: Stringifiable;
37
+ body?: Stringifiable;
38
+ } | HTMLFormElement | FormData;
39
+ export declare type Messenger = Record<Messengers, (options: MessengerOpenOptions, self?: WindowProxy) => Promise<void>>;
40
+ export declare interface App {
41
+ open: (options: AppOpenOptions, target?: WindowProxy) => Promise<AppOpenState>;
42
+ messenger: Messenger;
43
+ }
@@ -0,0 +1,17 @@
1
+ export type SystemColor = "ActiveBorder" | "ActiveCaption" | "AppWorkspace" | "Background" | "ButtonHighlight" | "ButtonShadow" | "CaptionText" | "InactiveBorder" | "InactiveCaption" | "InactiveCaptionText" | "InfoBackground" | "InfoText" | "Menu" | "MenuText" | "Scrollbar" | "ThreeDDarkShadow" | "ThreeDFace" | "ThreeDHighlight" | "ThreeDLightShadow" | "ThreeDShadow" | "Window" | "WindowFrame" | "WindowText";
2
+ export type DeprecatedSystemColor = "ActiveText" | "ButtonBorder" | "ButtonFace" | "ButtonText" | "Canvas" | "CanvasText" | "Field" | "FieldText" | "GrayText" | "Highlight" | "HighlightText" | "LinkText" | "Mark" | "MarkText" | "SelectedItem" | "SelectedItemText" | "VisitedText";
3
+ export type NamedColor = "aliceblue" | "antiquewhite" | "aqua" | "aquamarine" | "azure" | "beige" | "bisque" | "black" | "blanchedalmond" | "blue" | "blueviolet" | "brown" | "burlywood" | "cadetblue" | "chartreuse" | "chocolate" | "coral" | "cornflowerblue" | "cornsilk" | "crimson" | "cyan" | "darkblue" | "darkcyan" | "darkgoldenrod" | "darkgray" | "darkgreen" | "darkgrey" | "darkkhaki" | "darkmagenta" | "darkolivegreen" | "darkorange" | "darkorchid" | "darkred" | "darksalmon" | "darkseagreen" | "darkslateblue" | "darkslategray" | "darkslategrey" | "darkturquoise" | "darkviolet" | "deeppink" | "deepskyblue" | "dimgray" | "dimgrey" | "dodgerblue" | "firebrick" | "floralwhite" | "forestgreen" | "fuchsia" | "gainsboro" | "ghostwhite" | "gold" | "goldenrod" | "gray" | "green" | "greenyellow" | "grey" | "honeydew" | "hotpink" | "indianred" | "indigo" | "ivory" | "khaki" | "lavender" | "lavenderblush" | "lawngreen" | "lemonchiffon" | "lightblue" | "lightcoral" | "lightcyan" | "lightgoldenrodyellow" | "lightgray" | "lightgreen" | "lightgrey" | "lightpink" | "lightsalmon" | "lightseagreen" | "lightskyblue" | "lightslategray" | "lightslategrey" | "lightsteelblue" | "lightyellow" | "lime" | "limegreen" | "linen" | "magenta" | "maroon" | "mediumaquamarine" | "mediumblue" | "mediumorchid" | "mediumpurple" | "mediumseagreen" | "mediumslateblue" | "mediumspringgreen" | "mediumturquoise" | "mediumvioletred" | "midnightblue" | "mintcream" | "mistyrose" | "moccasin" | "navajowhite" | "navy" | "oldlace" | "olive" | "olivedrab" | "orange" | "orangered" | "orchid" | "palegoldenrod" | "palegreen" | "paleturquoise" | "palevioletred" | "papayawhip" | "peachpuff" | "peru" | "pink" | "plum" | "powderblue" | "purple" | "rebeccapurple" | "red" | "rosybrown" | "royalblue" | "saddlebrown" | "salmon" | "sandybrown" | "seagreen" | "seashell" | "sienna" | "silver" | "skyblue" | "slateblue" | "slategray" | "slategrey" | "snow" | "springgreen" | "steelblue" | "tan" | "teal" | "thistle" | "tomato" | "turquoise" | "violet" | "wheat" | "white" | "whitesmoke" | "yellow" | "yellowgreen";
4
+ export type RGBColor = `rgb(${string})`;
5
+ export type RGBAColor = `rgba(${string})`;
6
+ export type HSLColor = `hsl(${string})`;
7
+ export type HSLAColor = `hsla(${string})`;
8
+ export type HEXColor = `#${string}`;
9
+ export type Color = "currentColor" | "transparent" | SystemColor | DeprecatedSystemColor | NamedColor | RGBColor | RGBAColor | HSLColor | HSLAColor | HEXColor | string;
10
+ export declare interface RGB {
11
+ red: number;
12
+ green: number;
13
+ blue: number;
14
+ }
15
+ export declare interface RGBA extends RGB {
16
+ alpha: number;
17
+ }
@@ -0,0 +1,16 @@
1
+ export declare interface CubicBezierParams {
2
+ x1: number;
3
+ y1: number;
4
+ x2: number;
5
+ y2: number;
6
+ }
7
+ export declare interface LinearPoint {
8
+ position: number;
9
+ value: number;
10
+ }
11
+ export declare type CubicBezierSyntax = `cubic-bezier(${string})`;
12
+ export declare type LinearSyntax = `linear(${string})`;
13
+ export declare type StepSyntax = `steps(${string})`;
14
+ export declare type EasingSyntax = CubicBezierSyntax | LinearSyntax | StepSyntax;
15
+ export declare type EasingFunction = (t: number) => number;
16
+ export declare type EasingKeyword = "linear" | "ease" | "ease-in" | "ease-out" | "ease-in-out" | "step-start" | "step-end";
@@ -0,0 +1,5 @@
1
+ export * from "./app";
2
+ export * from "./theme";
3
+ export * from "./platform";
4
+ export * from "./easing-syntax";
5
+ export * from "./color";
@@ -0,0 +1,13 @@
1
+ import { Devices, Engines, OS } from "../constants/platform";
2
+ export declare interface Platform {
3
+ os: OS;
4
+ device: Devices;
5
+ engine: Engines;
6
+ osVersion: string;
7
+ engineVersion: string;
8
+ renderer: string;
9
+ isWebview: boolean;
10
+ isStandalone: boolean;
11
+ isMobile: boolean;
12
+ isDesktop: boolean;
13
+ }
@@ -0,0 +1,24 @@
1
+ import { Appearances } from "../constants/theme";
2
+ import { EasingKeyword, EasingSyntax } from "../types/easing-syntax";
3
+ import { Color } from "../types/color";
4
+ export declare interface ListenerEntry {
5
+ fn: (appearance: Appearances) => any;
6
+ capture: boolean;
7
+ once: boolean;
8
+ signal?: AbortSignal;
9
+ }
10
+ export declare interface Theme {
11
+ setThemeColor: (color: Color, options?: SetThemeColorOptions) => Promise<string | undefined>;
12
+ getThemeColor: () => Color | undefined;
13
+ removeThemeColor: (appearance?: ThemeColorMetaAppearanceKeys) => void;
14
+ detectAppearance: () => Promise<Appearances>;
15
+ onAppearanceChange: (listener: (appearance?: Appearances) => any, options?: boolean | AddEventListenerOptions) => () => void;
16
+ }
17
+ export declare type ThemeColorMetaAppearanceKeys = "default" | "dark" | "light";
18
+ export declare type ThemeColorMetaGroup = Partial<Record<ThemeColorMetaAppearanceKeys, HTMLMetaElement>>;
19
+ export declare interface SetThemeColorOptions {
20
+ appearance?: ThemeColorMetaAppearanceKeys;
21
+ duration?: number;
22
+ easingFunction?: EasingSyntax | EasingKeyword;
23
+ defaultColor?: string;
24
+ }
@@ -0,0 +1 @@
1
+ export default function createCustomError(name: string, Base?: ErrorConstructor): ErrorConstructor;
@@ -0,0 +1 @@
1
+ export default function freezeDeep<T>(o: T): T;
@@ -0,0 +1,2 @@
1
+ import { RGBA } from "../types/color";
2
+ export default function parseColor(color: string): RGBA;
@@ -0,0 +1,2 @@
1
+ import { EasingFunction, EasingKeyword, EasingSyntax } from "../types/easing-syntax";
2
+ export default function parseEasingFunction(easingFunction: EasingSyntax | EasingKeyword): EasingFunction;
@@ -0,0 +1 @@
1
+ export default function tryOpenUrl(self: WindowProxy, url: string, index: number, timeout: number): Promise<void>;
package/package.json CHANGED
@@ -1,26 +1,21 @@
1
1
  {
2
2
  "name": "native-fn",
3
- "version": "1.0.21",
3
+ "version": "1.0.23",
4
4
  "description": " ",
5
5
  "scripts": {
6
- "test": "echo \"Error: no test specified\" && exit 1",
7
- "build": "node build.js"
6
+ "build": "rollup -c"
8
7
  },
9
- "author": "",
8
+ "author": "pjy",
10
9
  "license": "MIT",
11
10
  "type": "module",
12
- "main": "dist/index.cjs",
13
- "require": "dist/index.cjs",
14
- "module": "dist/index.mjs",
15
- "umd": "dist/index.umd.js",
16
- "types": "dist/src/index.d.ts",
11
+ "main": "dist/native.cjs",
12
+ "module": "dist/native.mjs",
13
+ "browser": "dist/native.umd.js",
14
+ "types": "dist/index.d.ts",
17
15
  "exports": {
18
- ".": {
19
- "import": "./dist/index.mjs",
20
- "require": "./dist/index.cjs",
21
- "umd": "./dist/index.umd.js",
22
- "types": "./dist/src/index.d.ts"
23
- }
16
+ "require": "./dist/native.cjs",
17
+ "import": "./dist/native.mjs",
18
+ "default": "./dist/native.umd.js"
24
19
  },
25
20
  "repository": {
26
21
  "type": "git",
@@ -34,24 +29,17 @@
34
29
  "app-loader",
35
30
  "app-launcher",
36
31
  "appearance",
37
- "camera",
38
32
  "engine",
39
- "geolocation",
40
- "keyboard inset",
41
- "keyboard-inset",
42
33
  "messenger",
43
34
  "os",
44
- "safe area inset",
45
- "safe-area-inset",
46
35
  "theme",
47
- "titlebar area",
48
- "titlebar-area"
36
+ "theme color",
37
+ "theme-color"
49
38
  ],
50
39
  "devDependencies": {
51
- "esbuild": "^0.21.4",
52
- "glob": "^10.4.1",
53
- "html-webpack-plugin": "^5.6.0",
54
- "ts-loader": "^9.5.1",
40
+ "rollup": "^4.45.1",
41
+ "@rollup/plugin-json": "^6.1.0",
42
+ "@rollup/plugin-typescript": "^12.1.4",
55
43
  "typescript": "^5.4.5"
56
44
  }
57
45
  }
package/dist/index.cjs DELETED
@@ -1,2 +0,0 @@
1
- "use strict";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});module.exports=De(lt);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);
2
- //# sourceMappingURL=index.cjs.map