@widget-js/core 0.1.31 → 0.5.12
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/api/AppApi.js +24 -21
- package/dist/cjs/api/BaseApi.js +13 -0
- package/dist/cjs/api/BroadcastApi.js +14 -13
- package/dist/cjs/api/BrowserWindowApi.js +55 -72
- package/dist/cjs/api/Channel.js +1 -1
- package/dist/cjs/api/ClipboardApi.js +16 -11
- package/dist/cjs/api/DeviceApi.js +12 -9
- package/dist/cjs/api/DialogApi.js +8 -6
- package/dist/cjs/api/HostedWidgetApi.js +27 -36
- package/dist/cjs/api/LogApi.js +14 -10
- package/dist/cjs/api/NotificationApi.js +52 -74
- package/dist/cjs/api/ShortcutApi.js +23 -0
- package/dist/cjs/api/WidgetApi.js +29 -69
- package/dist/cjs/{repository/WidgetDataRepository.js → api/WidgetDataApi.js} +19 -10
- package/dist/cjs/index.js +3 -2
- package/dist/cjs/lang/LanguageCode.js +34 -0
- package/dist/cjs/model/Widget.js +4 -4
- package/dist/cjs/model/WidgetPackage.js +49 -2
- package/dist/cjs/model/event/BroadcastEvent.js +4 -8
- package/dist/cjs/model/msic/graphics.js +2 -0
- package/dist/cjs/utils/ElectronUtils.js +5 -1
- package/dist/cjs/utils/LanguageUtils.js +36 -0
- package/dist/esm/api/AppApi.js +23 -20
- package/dist/esm/api/BaseApi.js +9 -0
- package/dist/esm/api/BroadcastApi.js +13 -12
- package/dist/esm/api/BrowserWindowApi.js +53 -71
- package/dist/esm/api/Channel.js +1 -1
- package/dist/esm/api/ClipboardApi.js +15 -10
- package/dist/esm/api/DeviceApi.js +11 -8
- package/dist/esm/api/DialogApi.js +9 -6
- package/dist/esm/api/HostedWidgetApi.js +26 -35
- package/dist/esm/api/LogApi.js +15 -10
- package/dist/esm/api/NotificationApi.js +51 -73
- package/dist/esm/api/ShortcutApi.js +19 -0
- package/dist/esm/api/WidgetApi.js +28 -65
- package/dist/esm/{repository/WidgetDataRepository.js → api/WidgetDataApi.js} +17 -8
- package/dist/esm/index.js +3 -2
- package/dist/esm/lang/LanguageCode.js +33 -0
- package/dist/esm/model/Widget.js +4 -4
- package/dist/esm/model/WidgetPackage.js +49 -2
- package/dist/esm/model/event/BroadcastEvent.js +4 -8
- package/dist/esm/model/msic/graphics.js +1 -0
- package/dist/esm/utils/ElectronUtils.js +5 -1
- package/dist/esm/utils/LanguageUtils.js +32 -0
- package/dist/types/api/AppApi.d.ts +23 -13
- package/dist/types/api/BaseApi.d.ts +5 -0
- package/dist/types/api/BroadcastApi.d.ts +19 -4
- package/dist/types/api/BrowserWindowApi.d.ts +56 -52
- package/dist/types/api/Channel.d.ts +1 -1
- package/dist/types/api/ClipboardApi.d.ts +9 -5
- package/dist/types/api/DeviceApi.d.ts +13 -9
- package/dist/types/api/DialogApi.d.ts +5 -7
- package/dist/types/api/HostedWidgetApi.d.ts +28 -18
- package/dist/types/api/LogApi.d.ts +8 -5
- package/dist/types/api/NotificationApi.d.ts +26 -16
- package/dist/types/api/ShortcutApi.d.ts +10 -0
- package/dist/types/api/WidgetApi.d.ts +31 -33
- package/dist/types/{repository/WidgetDataRepository.d.ts → api/WidgetDataApi.d.ts} +7 -2
- package/dist/types/index.d.ts +3 -2
- package/dist/types/lang/LanguageCode.d.ts +40 -0
- package/dist/types/model/Widget.d.ts +7 -9
- package/dist/types/model/WidgetPackage.d.ts +55 -12
- package/dist/types/model/event/BroadcastEvent.d.ts +14 -10
- package/dist/types/model/msic/graphics.d.ts +8 -0
- package/dist/types/utils/ElectronUtils.d.ts +2 -1
- package/dist/types/utils/LanguageUtils.d.ts +8 -0
- package/dist/umd/index.js +1 -1
- package/package.json +4 -2
- package/dist/cjs/api/GlobalShortcutApi.js +0 -29
- package/dist/esm/api/GlobalShortcutApi.js +0 -25
- package/dist/types/api/GlobalShortcutApi.d.ts +0 -14
|
@@ -1,48 +1,85 @@
|
|
|
1
1
|
import { Widget } from "./Widget";
|
|
2
|
+
import { LanguageCode, LanguageTextMap } from "../lang/LanguageCode";
|
|
3
|
+
type WidgetPackageOptions = {
|
|
4
|
+
name: string;
|
|
5
|
+
version: string;
|
|
6
|
+
author: string;
|
|
7
|
+
homepage: string;
|
|
8
|
+
title: LanguageTextMap;
|
|
9
|
+
description: LanguageTextMap;
|
|
10
|
+
entry: string;
|
|
11
|
+
remoteEntry?: string;
|
|
12
|
+
remotePackage?: string;
|
|
13
|
+
hash: boolean;
|
|
14
|
+
url: string;
|
|
15
|
+
lang?: LanguageCode;
|
|
16
|
+
widgets?: Widget[];
|
|
17
|
+
devOptions?: DevOptions;
|
|
18
|
+
};
|
|
2
19
|
export declare class WidgetPackage {
|
|
3
20
|
/**
|
|
4
21
|
* 组件包名,一般为域名倒置,e.g. com.example
|
|
5
22
|
*/
|
|
6
|
-
name: string;
|
|
23
|
+
readonly name: string;
|
|
7
24
|
/**
|
|
8
|
-
*
|
|
25
|
+
* 组件包版本,e.g. 1.0.2
|
|
9
26
|
*/
|
|
10
|
-
version: string;
|
|
27
|
+
readonly version: string;
|
|
11
28
|
/**
|
|
12
29
|
* 组件作者署名
|
|
13
30
|
*/
|
|
14
|
-
author: string;
|
|
31
|
+
readonly author: string;
|
|
15
32
|
/**
|
|
16
33
|
* 组件首页
|
|
17
34
|
*/
|
|
18
|
-
homepage
|
|
35
|
+
readonly homepage?: string;
|
|
19
36
|
/**
|
|
20
|
-
*
|
|
37
|
+
* 组件描述
|
|
21
38
|
*/
|
|
39
|
+
readonly title: {
|
|
40
|
+
[key: LanguageCode | string]: string;
|
|
41
|
+
};
|
|
22
42
|
/**
|
|
23
43
|
* 组件描述
|
|
24
44
|
*/
|
|
25
|
-
description: {
|
|
26
|
-
[key: string]: string;
|
|
45
|
+
readonly description: {
|
|
46
|
+
[key: LanguageCode | string]: string;
|
|
27
47
|
};
|
|
28
48
|
/**
|
|
29
49
|
* 组件入口文件,通常为 index.html
|
|
30
50
|
*/
|
|
31
|
-
entry: string;
|
|
51
|
+
readonly entry: string;
|
|
52
|
+
/**
|
|
53
|
+
* 组件包的远程入口地址,
|
|
54
|
+
*/
|
|
55
|
+
readonly remoteEntry?: string;
|
|
56
|
+
readonly remotePackage?: string;
|
|
32
57
|
/**
|
|
33
58
|
* Hash路由模式,默认为true
|
|
34
59
|
*/
|
|
35
|
-
hash: boolean;
|
|
60
|
+
readonly hash: boolean;
|
|
36
61
|
/**
|
|
37
62
|
* 可能是网络地址,或者本地路径(解压后的文件夹路径),
|
|
38
63
|
* 网络地址:https://www.bilibili.com
|
|
39
64
|
* 本地地址:file:///C:/Users/neo/Desktop
|
|
40
65
|
* 在测试时。地址通常为: http://127.0.0.1:8080
|
|
41
66
|
*/
|
|
42
|
-
url: string;
|
|
43
|
-
widgets: Widget[];
|
|
67
|
+
readonly url: string;
|
|
68
|
+
readonly widgets: Widget[];
|
|
69
|
+
readonly devOptions?: DevOptions;
|
|
70
|
+
constructor(options: WidgetPackageOptions);
|
|
44
71
|
static parseJSON(json: string): WidgetPackage;
|
|
45
72
|
static parseObject(obj: any): WidgetPackage;
|
|
73
|
+
/**
|
|
74
|
+
* 获取组件包标题
|
|
75
|
+
* @param lang 语言环境,不传则获取默认语言
|
|
76
|
+
*/
|
|
77
|
+
getTitle(lang?: LanguageCode): string | undefined;
|
|
78
|
+
/**
|
|
79
|
+
* 获取组件包描述
|
|
80
|
+
* @param lang 语言环境,不传则获取默认标题
|
|
81
|
+
*/
|
|
82
|
+
getDescription(lang?: LanguageCode): string | undefined;
|
|
46
83
|
/**
|
|
47
84
|
* 获取组件完整路径
|
|
48
85
|
* 如果url是http链接,直接返回链接
|
|
@@ -50,3 +87,9 @@ export declare class WidgetPackage {
|
|
|
50
87
|
*/
|
|
51
88
|
getIndexUrl(hash?: boolean): string;
|
|
52
89
|
}
|
|
90
|
+
export type DevOptions = {
|
|
91
|
+
folder?: string;
|
|
92
|
+
route?: boolean;
|
|
93
|
+
devUrl?: string;
|
|
94
|
+
};
|
|
95
|
+
export {};
|
|
@@ -1,13 +1,17 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
static readonly TYPE_EDIT_DESKTOP_WIDGETS = "broadcast::cn.widgetjs.core.edit_desktop_widgets";
|
|
6
|
-
type: string;
|
|
1
|
+
import { WidgetApiEvent } from "../../api/WidgetApi";
|
|
2
|
+
import { AppApiEvent } from "../../api/AppApi";
|
|
3
|
+
interface BroadcastEventOptions {
|
|
4
|
+
event: WidgetApiEvent | AppApiEvent | string;
|
|
7
5
|
/**
|
|
8
|
-
*
|
|
6
|
+
* 发送人,用于标记发送源,一般为组件名,如:com.example.widgets.countdown
|
|
9
7
|
*/
|
|
10
|
-
|
|
11
|
-
payload
|
|
12
|
-
|
|
8
|
+
sender?: string;
|
|
9
|
+
payload?: any;
|
|
10
|
+
}
|
|
11
|
+
export declare class BroadcastEvent {
|
|
12
|
+
readonly event: string;
|
|
13
|
+
readonly sender?: string;
|
|
14
|
+
payload?: any;
|
|
15
|
+
constructor(options: BroadcastEventOptions);
|
|
13
16
|
}
|
|
17
|
+
export {};
|
|
@@ -5,5 +5,6 @@ export declare class ElectronUtils {
|
|
|
5
5
|
* windows api
|
|
6
6
|
*/
|
|
7
7
|
static getAPI(): any;
|
|
8
|
-
static
|
|
8
|
+
static invokeMethod(channel: string, method: string, ...args: any[]): Promise<any>;
|
|
9
|
+
static invoke(channel: string, ...args: any[]): Promise<any>;
|
|
9
10
|
}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { LanguageCode, LanguageTextMap } from "../lang/LanguageCode";
|
|
2
|
+
/**
|
|
3
|
+
* 根据语言环境获取文本
|
|
4
|
+
* @param langMap 对象
|
|
5
|
+
* @param {LanguageCode} langCode 语言环境 例如:zh-CN,en-US
|
|
6
|
+
* @param fallbackToBrowser
|
|
7
|
+
*/
|
|
8
|
+
export declare function getTextByLanguageCode(langMap: LanguageTextMap, langCode?: LanguageCode, fallbackToBrowser?: boolean): string | undefined;
|
package/dist/umd/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
/*! For license information please see index.js.LICENSE.txt */
|
|
2
|
-
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.exampleTypescriptPackage=t():e.exampleTypescriptPackage=t()}(this,(()=>(()=>{var e={94:(e,t,n)=>{"use strict";n.r(t),n.d(t,{camelCase:()=>v,camelCaseTransform:()=>f,camelCaseTransformMerge:()=>h,capitalCase:()=>_,capitalCaseTransform:()=>g,constantCase:()=>y,dotCase:()=>I,headerCase:()=>O,noCase:()=>s,paramCase:()=>A,pascalCase:()=>d,pascalCaseTransform:()=>u,pascalCaseTransformMerge:()=>l,pathCase:()=>m,sentenceCase:()=>T,sentenceCaseTransform:()=>b,snakeCase:()=>w});var r=function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},r.apply(this,arguments)};function o(e){return e.toLowerCase()}Object.create,Object.create;var i=[/([a-z0-9])([A-Z])/g,/([A-Z])([A-Z][a-z])/g],a=/[^A-Z0-9]+/gi;function s(e,t){void 0===t&&(t={});for(var n=t.splitRegexp,r=void 0===n?i:n,s=t.stripRegexp,u=void 0===s?a:s,l=t.transform,d=void 0===l?o:l,f=t.delimiter,h=void 0===f?" ":f,v=c(c(e,r,"$1\0$2"),u,"\0"),p=0,g=v.length;"\0"===v.charAt(p);)p++;for(;"\0"===v.charAt(g-1);)g--;return v.slice(p,g).split("\0").map(d).join(h)}function c(e,t,n){return t instanceof RegExp?e.replace(t,n):t.reduce((function(e,t){return e.replace(t,n)}),e)}function u(e,t){var n=e.charAt(0),r=e.substr(1).toLowerCase();return t>0&&n>="0"&&n<="9"?"_"+n+r:""+n.toUpperCase()+r}function l(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}function d(e,t){return void 0===t&&(t={}),s(e,r({delimiter:"",transform:u},t))}function f(e,t){return 0===t?e.toLowerCase():u(e,t)}function h(e,t){return 0===t?e.toLowerCase():l(e)}function v(e,t){return void 0===t&&(t={}),d(e,r({transform:f},t))}function p(e){return e.charAt(0).toUpperCase()+e.substr(1)}function g(e){return p(e.toLowerCase())}function _(e,t){return void 0===t&&(t={}),s(e,r({delimiter:" ",transform:g},t))}function E(e){return e.toUpperCase()}function y(e,t){return void 0===t&&(t={}),s(e,r({delimiter:"_",transform:E},t))}function I(e,t){return void 0===t&&(t={}),s(e,r({delimiter:"."},t))}function O(e,t){return void 0===t&&(t={}),_(e,r({delimiter:"-"},t))}function A(e,t){return void 0===t&&(t={}),I(e,r({delimiter:"-"},t))}function m(e,t){return void 0===t&&(t={}),I(e,r({delimiter:"/"},t))}function b(e,t){var n=e.toLowerCase();return 0===t?p(n):n}function T(e,t){return void 0===t&&(t={}),s(e,r({delimiter:" ",transform:b},t))}function w(e,t){return void 0===t&&(t={}),I(e,r({delimiter:"_"},t))}},680:(e,t,n)=>{e.exports=function e(t,n,r){function o(a,s){if(!n[a]){if(!t[a]){if(i)return i(a,!0);var c=new Error("Cannot find module '"+a+"'");throw c.code="MODULE_NOT_FOUND",c}var u=n[a]={exports:{}};t[a][0].call(u.exports,(function(e){return o(t[a][1][e]||e)}),u,u.exports,e,t,n,r)}return n[a].exports}for(var i=void 0,a=0;a<r.length;a++)o(r[a]);return o}({1:[function(e,t,r){(function(e){"use strict";var n,r,o=e.MutationObserver||e.WebKitMutationObserver;if(o){var i=0,a=new o(l),s=e.document.createTextNode("");a.observe(s,{characterData:!0}),n=function(){s.data=i=++i%2}}else if(e.setImmediate||void 0===e.MessageChannel)n="document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){l(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(l,0)};else{var c=new e.MessageChannel;c.port1.onmessage=l,n=function(){c.port2.postMessage(0)}}var u=[];function l(){var e,t;r=!0;for(var n=u.length;n;){for(t=u,u=[],e=-1;++e<n;)t[e]();n=u.length}r=!1}t.exports=function(e){1!==u.push(e)||r||n()}}).call(this,void 0!==n.g?n.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],2:[function(e,t,n){"use strict";var r=e(1);function o(){}var i={},a=["REJECTED"],s=["FULFILLED"],c=["PENDING"];function u(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=c,this.queue=[],this.outcome=void 0,e!==o&&h(this,e)}function l(e,t,n){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof n&&(this.onRejected=n,this.callRejected=this.otherCallRejected)}function d(e,t,n){r((function(){var r;try{r=t(n)}catch(t){return i.reject(e,t)}r===e?i.reject(e,new TypeError("Cannot resolve promise with itself")):i.resolve(e,r)}))}function f(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function h(e,t){var n=!1;function r(t){n||(n=!0,i.reject(e,t))}function o(t){n||(n=!0,i.resolve(e,t))}var a=v((function(){t(o,r)}));"error"===a.status&&r(a.value)}function v(e,t){var n={};try{n.value=e(t),n.status="success"}catch(e){n.status="error",n.value=e}return n}t.exports=u,u.prototype.catch=function(e){return this.then(null,e)},u.prototype.then=function(e,t){if("function"!=typeof e&&this.state===s||"function"!=typeof t&&this.state===a)return this;var n=new this.constructor(o);return this.state!==c?d(n,this.state===s?e:t,this.outcome):this.queue.push(new l(n,e,t)),n},l.prototype.callFulfilled=function(e){i.resolve(this.promise,e)},l.prototype.otherCallFulfilled=function(e){d(this.promise,this.onFulfilled,e)},l.prototype.callRejected=function(e){i.reject(this.promise,e)},l.prototype.otherCallRejected=function(e){d(this.promise,this.onRejected,e)},i.resolve=function(e,t){var n=v(f,t);if("error"===n.status)return i.reject(e,n.value);var r=n.value;if(r)h(e,r);else{e.state=s,e.outcome=t;for(var o=-1,a=e.queue.length;++o<a;)e.queue[o].callFulfilled(t)}return e},i.reject=function(e,t){e.state=a,e.outcome=t;for(var n=-1,r=e.queue.length;++n<r;)e.queue[n].callRejected(t);return e},u.resolve=function(e){return e instanceof this?e:i.resolve(new this(o),e)},u.reject=function(e){var t=new this(o);return i.reject(t,e)},u.all=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var n=e.length,r=!1;if(!n)return this.resolve([]);for(var a=new Array(n),s=0,c=-1,u=new this(o);++c<n;)l(e[c],c);return u;function l(e,o){t.resolve(e).then((function(e){a[o]=e,++s!==n||r||(r=!0,i.resolve(u,a))}),(function(e){r||(r=!0,i.reject(u,e))}))}},u.race=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var n,r=e.length,a=!1;if(!r)return this.resolve([]);for(var s=-1,c=new this(o);++s<r;)n=e[s],t.resolve(n).then((function(e){a||(a=!0,i.resolve(c,e))}),(function(e){a||(a=!0,i.reject(c,e))}));return c}},{1:1}],3:[function(e,t,r){(function(t){"use strict";"function"!=typeof t.Promise&&(t.Promise=e(2))}).call(this,void 0!==n.g?n.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{2:2}],4:[function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};var o=function(){try{if("undefined"!=typeof indexedDB)return indexedDB;if("undefined"!=typeof webkitIndexedDB)return webkitIndexedDB;if("undefined"!=typeof mozIndexedDB)return mozIndexedDB;if("undefined"!=typeof OIndexedDB)return OIndexedDB;if("undefined"!=typeof msIndexedDB)return msIndexedDB}catch(e){return}}();function i(e,t){e=e||[],t=t||{};try{return new Blob(e,t)}catch(o){if("TypeError"!==o.name)throw o;for(var n=new("undefined"!=typeof BlobBuilder?BlobBuilder:"undefined"!=typeof MSBlobBuilder?MSBlobBuilder:"undefined"!=typeof MozBlobBuilder?MozBlobBuilder:WebKitBlobBuilder),r=0;r<e.length;r+=1)n.append(e[r]);return n.getBlob(t.type)}}"undefined"==typeof Promise&&e(3);var a=Promise;function s(e,t){t&&e.then((function(e){t(null,e)}),(function(e){t(e)}))}function c(e,t,n){"function"==typeof t&&e.then(t),"function"==typeof n&&e.catch(n)}function u(e){return"string"!=typeof e&&(console.warn(e+" used as a key, but it is not a string."),e=String(e)),e}function l(){if(arguments.length&&"function"==typeof arguments[arguments.length-1])return arguments[arguments.length-1]}var d="local-forage-detect-blob-support",f=void 0,h={},v=Object.prototype.toString,p="readonly",g="readwrite";function _(e){for(var t=e.length,n=new ArrayBuffer(t),r=new Uint8Array(n),o=0;o<t;o++)r[o]=e.charCodeAt(o);return n}function E(e){return"boolean"==typeof f?a.resolve(f):function(e){return new a((function(t){var n=e.transaction(d,g),r=i([""]);n.objectStore(d).put(r,"key"),n.onabort=function(e){e.preventDefault(),e.stopPropagation(),t(!1)},n.oncomplete=function(){var e=navigator.userAgent.match(/Chrome\/(\d+)/),n=navigator.userAgent.match(/Edge\//);t(n||!e||parseInt(e[1],10)>=43)}})).catch((function(){return!1}))}(e).then((function(e){return f=e}))}function y(e){var t=h[e.name],n={};n.promise=new a((function(e,t){n.resolve=e,n.reject=t})),t.deferredOperations.push(n),t.dbReady?t.dbReady=t.dbReady.then((function(){return n.promise})):t.dbReady=n.promise}function I(e){var t=h[e.name].deferredOperations.pop();if(t)return t.resolve(),t.promise}function O(e,t){var n=h[e.name].deferredOperations.pop();if(n)return n.reject(t),n.promise}function A(e,t){return new a((function(n,r){if(h[e.name]=h[e.name]||{forages:[],db:null,dbReady:null,deferredOperations:[]},e.db){if(!t)return n(e.db);y(e),e.db.close()}var i=[e.name];t&&i.push(e.version);var a=o.open.apply(o,i);t&&(a.onupgradeneeded=function(t){var n=a.result;try{n.createObjectStore(e.storeName),t.oldVersion<=1&&n.createObjectStore(d)}catch(n){if("ConstraintError"!==n.name)throw n;console.warn('The database "'+e.name+'" has been upgraded from version '+t.oldVersion+" to version "+t.newVersion+', but the storage "'+e.storeName+'" already exists.')}}),a.onerror=function(e){e.preventDefault(),r(a.error)},a.onsuccess=function(){var t=a.result;t.onversionchange=function(e){e.target.close()},n(t),I(e)}}))}function m(e){return A(e,!1)}function b(e){return A(e,!0)}function T(e,t){if(!e.db)return!0;var n=!e.db.objectStoreNames.contains(e.storeName),r=e.version<e.db.version,o=e.version>e.db.version;if(r&&(e.version!==t&&console.warn('The database "'+e.name+"\" can't be downgraded from version "+e.db.version+" to version "+e.version+"."),e.version=e.db.version),o||n){if(n){var i=e.db.version+1;i>e.version&&(e.version=i)}return!0}return!1}function w(e){return i([_(atob(e.data))],{type:e.type})}function S(e){return e&&e.__local_forage_encoded_blob}function R(e){var t=this,n=t._initReady().then((function(){var e=h[t._dbInfo.name];if(e&&e.dbReady)return e.dbReady}));return c(n,e,e),n}function P(e,t,n,r){void 0===r&&(r=1);try{var o=e.db.transaction(e.storeName,t);n(null,o)}catch(o){if(r>0&&(!e.db||"InvalidStateError"===o.name||"NotFoundError"===o.name))return a.resolve().then((function(){if(!e.db||"NotFoundError"===o.name&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),b(e)})).then((function(){return function(e){y(e);for(var t=h[e.name],n=t.forages,r=0;r<n.length;r++){var o=n[r];o._dbInfo.db&&(o._dbInfo.db.close(),o._dbInfo.db=null)}return e.db=null,m(e).then((function(t){return e.db=t,T(e)?b(e):t})).then((function(r){e.db=t.db=r;for(var o=0;o<n.length;o++)n[o]._dbInfo.db=r})).catch((function(t){throw O(e,t),t}))}(e).then((function(){P(e,t,n,r-1)}))})).catch(n);n(o)}}var N={_driver:"asyncStorage",_initStorage:function(e){var t=this,n={db:null};if(e)for(var r in e)n[r]=e[r];var o=h[n.name];o||(o={forages:[],db:null,dbReady:null,deferredOperations:[]},h[n.name]=o),o.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=R);var i=[];function s(){return a.resolve()}for(var c=0;c<o.forages.length;c++){var u=o.forages[c];u!==t&&i.push(u._initReady().catch(s))}var l=o.forages.slice(0);return a.all(i).then((function(){return n.db=o.db,m(n)})).then((function(e){return n.db=e,T(n,t._defaultConfig.version)?b(n):e})).then((function(e){n.db=o.db=e,t._dbInfo=n;for(var r=0;r<l.length;r++){var i=l[r];i!==t&&(i._dbInfo.db=n.db,i._dbInfo.version=n.version)}}))},_support:function(){try{if(!o||!o.open)return!1;var e="undefined"!=typeof openDatabase&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),t="function"==typeof fetch&&-1!==fetch.toString().indexOf("[native code");return(!e||t)&&"undefined"!=typeof indexedDB&&"undefined"!=typeof IDBKeyRange}catch(e){return!1}}(),iterate:function(e,t){var n=this,r=new a((function(t,r){n.ready().then((function(){P(n._dbInfo,p,(function(o,i){if(o)return r(o);try{var a=i.objectStore(n._dbInfo.storeName).openCursor(),s=1;a.onsuccess=function(){var n=a.result;if(n){var r=n.value;S(r)&&(r=w(r));var o=e(r,n.key,s++);void 0!==o?t(o):n.continue()}else t()},a.onerror=function(){r(a.error)}}catch(e){r(e)}}))})).catch(r)}));return s(r,t),r},getItem:function(e,t){var n=this;e=u(e);var r=new a((function(t,r){n.ready().then((function(){P(n._dbInfo,p,(function(o,i){if(o)return r(o);try{var a=i.objectStore(n._dbInfo.storeName).get(e);a.onsuccess=function(){var e=a.result;void 0===e&&(e=null),S(e)&&(e=w(e)),t(e)},a.onerror=function(){r(a.error)}}catch(e){r(e)}}))})).catch(r)}));return s(r,t),r},setItem:function(e,t,n){var r=this;e=u(e);var o=new a((function(n,o){var i;r.ready().then((function(){return i=r._dbInfo,"[object Blob]"===v.call(t)?E(i.db).then((function(e){return e?t:(n=t,new a((function(e,t){var r=new FileReader;r.onerror=t,r.onloadend=function(t){var r=btoa(t.target.result||"");e({__local_forage_encoded_blob:!0,data:r,type:n.type})},r.readAsBinaryString(n)})));var n})):t})).then((function(t){P(r._dbInfo,g,(function(i,a){if(i)return o(i);try{var s=a.objectStore(r._dbInfo.storeName);null===t&&(t=void 0);var c=s.put(t,e);a.oncomplete=function(){void 0===t&&(t=null),n(t)},a.onabort=a.onerror=function(){var e=c.error?c.error:c.transaction.error;o(e)}}catch(e){o(e)}}))})).catch(o)}));return s(o,n),o},removeItem:function(e,t){var n=this;e=u(e);var r=new a((function(t,r){n.ready().then((function(){P(n._dbInfo,g,(function(o,i){if(o)return r(o);try{var a=i.objectStore(n._dbInfo.storeName).delete(e);i.oncomplete=function(){t()},i.onerror=function(){r(a.error)},i.onabort=function(){var e=a.error?a.error:a.transaction.error;r(e)}}catch(e){r(e)}}))})).catch(r)}));return s(r,t),r},clear:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){P(t._dbInfo,g,(function(r,o){if(r)return n(r);try{var i=o.objectStore(t._dbInfo.storeName).clear();o.oncomplete=function(){e()},o.onabort=o.onerror=function(){var e=i.error?i.error:i.transaction.error;n(e)}}catch(e){n(e)}}))})).catch(n)}));return s(n,e),n},length:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){P(t._dbInfo,p,(function(r,o){if(r)return n(r);try{var i=o.objectStore(t._dbInfo.storeName).count();i.onsuccess=function(){e(i.result)},i.onerror=function(){n(i.error)}}catch(e){n(e)}}))})).catch(n)}));return s(n,e),n},key:function(e,t){var n=this,r=new a((function(t,r){e<0?t(null):n.ready().then((function(){P(n._dbInfo,p,(function(o,i){if(o)return r(o);try{var a=i.objectStore(n._dbInfo.storeName),s=!1,c=a.openKeyCursor();c.onsuccess=function(){var n=c.result;n?0===e||s?t(n.key):(s=!0,n.advance(e)):t(null)},c.onerror=function(){r(c.error)}}catch(e){r(e)}}))})).catch(r)}));return s(r,t),r},keys:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){P(t._dbInfo,p,(function(r,o){if(r)return n(r);try{var i=o.objectStore(t._dbInfo.storeName).openKeyCursor(),a=[];i.onsuccess=function(){var t=i.result;t?(a.push(t.key),t.continue()):e(a)},i.onerror=function(){n(i.error)}}catch(e){n(e)}}))})).catch(n)}));return s(n,e),n},dropInstance:function(e,t){t=l.apply(this,arguments);var n,r=this.config();if((e="function"!=typeof e&&e||{}).name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName),e.name){var i=e.name===r.name&&this._dbInfo.db?a.resolve(this._dbInfo.db):m(e).then((function(t){var n=h[e.name],r=n.forages;n.db=t;for(var o=0;o<r.length;o++)r[o]._dbInfo.db=t;return t}));n=e.storeName?i.then((function(t){if(t.objectStoreNames.contains(e.storeName)){var n=t.version+1;y(e);var r=h[e.name],i=r.forages;t.close();for(var s=0;s<i.length;s++){var c=i[s];c._dbInfo.db=null,c._dbInfo.version=n}var u=new a((function(t,r){var i=o.open(e.name,n);i.onerror=function(e){i.result.close(),r(e)},i.onupgradeneeded=function(){i.result.deleteObjectStore(e.storeName)},i.onsuccess=function(){var e=i.result;e.close(),t(e)}}));return u.then((function(e){r.db=e;for(var t=0;t<i.length;t++){var n=i[t];n._dbInfo.db=e,I(n._dbInfo)}})).catch((function(t){throw(O(e,t)||a.resolve()).catch((function(){})),t}))}})):i.then((function(t){y(e);var n=h[e.name],r=n.forages;t.close();for(var i=0;i<r.length;i++)r[i]._dbInfo.db=null;var s=new a((function(t,n){var r=o.deleteDatabase(e.name);r.onerror=function(){var e=r.result;e&&e.close(),n(r.error)},r.onblocked=function(){console.warn('dropInstance blocked for database "'+e.name+'" until all open connections are closed')},r.onsuccess=function(){var e=r.result;e&&e.close(),t(e)}}));return s.then((function(e){n.db=e;for(var t=0;t<r.length;t++)I(r[t]._dbInfo)})).catch((function(t){throw(O(e,t)||a.resolve()).catch((function(){})),t}))}))}else n=a.reject("Invalid arguments");return s(n,t),n}};var D="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",W="~~local_forage_type~",C=/^~~local_forage_type~([^~]+)~/,U="__lfsc__:",M=U.length,k="arbf",j="blob",G="si08",B="ui08",L="uic8",x="si16",H="si32",F="ur16",V="ui32",z="fl32",K="fl64",Y=M+k.length,X=Object.prototype.toString;function J(e){var t,n,r,o,i,a=.75*e.length,s=e.length,c=0;"="===e[e.length-1]&&(a--,"="===e[e.length-2]&&a--);var u=new ArrayBuffer(a),l=new Uint8Array(u);for(t=0;t<s;t+=4)n=D.indexOf(e[t]),r=D.indexOf(e[t+1]),o=D.indexOf(e[t+2]),i=D.indexOf(e[t+3]),l[c++]=n<<2|r>>4,l[c++]=(15&r)<<4|o>>2,l[c++]=(3&o)<<6|63&i;return u}function Q(e){var t,n=new Uint8Array(e),r="";for(t=0;t<n.length;t+=3)r+=D[n[t]>>2],r+=D[(3&n[t])<<4|n[t+1]>>4],r+=D[(15&n[t+1])<<2|n[t+2]>>6],r+=D[63&n[t+2]];return n.length%3==2?r=r.substring(0,r.length-1)+"=":n.length%3==1&&(r=r.substring(0,r.length-2)+"=="),r}var q={serialize:function(e,t){var n="";if(e&&(n=X.call(e)),e&&("[object ArrayBuffer]"===n||e.buffer&&"[object ArrayBuffer]"===X.call(e.buffer))){var r,o=U;e instanceof ArrayBuffer?(r=e,o+=k):(r=e.buffer,"[object Int8Array]"===n?o+=G:"[object Uint8Array]"===n?o+=B:"[object Uint8ClampedArray]"===n?o+=L:"[object Int16Array]"===n?o+=x:"[object Uint16Array]"===n?o+=F:"[object Int32Array]"===n?o+=H:"[object Uint32Array]"===n?o+=V:"[object Float32Array]"===n?o+=z:"[object Float64Array]"===n?o+=K:t(new Error("Failed to get type for BinaryArray"))),t(o+Q(r))}else if("[object Blob]"===n){var i=new FileReader;i.onload=function(){var n=W+e.type+"~"+Q(this.result);t(U+j+n)},i.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(n){console.error("Couldn't convert value into a JSON string: ",e),t(null,n)}},deserialize:function(e){if(e.substring(0,M)!==U)return JSON.parse(e);var t,n=e.substring(Y),r=e.substring(M,Y);if(r===j&&C.test(n)){var o=n.match(C);t=o[1],n=n.substring(o[0].length)}var a=J(n);switch(r){case k:return a;case j:return i([a],{type:t});case G:return new Int8Array(a);case B:return new Uint8Array(a);case L:return new Uint8ClampedArray(a);case x:return new Int16Array(a);case F:return new Uint16Array(a);case H:return new Int32Array(a);case V:return new Uint32Array(a);case z:return new Float32Array(a);case K:return new Float64Array(a);default:throw new Error("Unkown type: "+r)}},stringToBuffer:J,bufferToString:Q};function Z(e,t,n,r){e.executeSql("CREATE TABLE IF NOT EXISTS "+t.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],n,r)}function $(e,t,n,r,o,i){e.executeSql(n,r,o,(function(e,a){a.code===a.SYNTAX_ERR?e.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[t.storeName],(function(e,s){s.rows.length?i(e,a):Z(e,t,(function(){e.executeSql(n,r,o,i)}),i)}),i):i(e,a)}),i)}function ee(e,t,n,r){var o=this;e=u(e);var i=new a((function(i,a){o.ready().then((function(){void 0===t&&(t=null);var s=t,c=o._dbInfo;c.serializer.serialize(t,(function(t,u){u?a(u):c.db.transaction((function(n){$(n,c,"INSERT OR REPLACE INTO "+c.storeName+" (key, value) VALUES (?, ?)",[e,t],(function(){i(s)}),(function(e,t){a(t)}))}),(function(t){if(t.code===t.QUOTA_ERR){if(r>0)return void i(ee.apply(o,[e,s,n,r-1]));a(t)}}))}))})).catch(a)}));return s(i,n),i}var te={_driver:"webSQLStorage",_initStorage:function(e){var t=this,n={db:null};if(e)for(var r in e)n[r]="string"!=typeof e[r]?e[r].toString():e[r];var o=new a((function(e,r){try{n.db=openDatabase(n.name,String(n.version),n.description,n.size)}catch(e){return r(e)}n.db.transaction((function(o){Z(o,n,(function(){t._dbInfo=n,e()}),(function(e,t){r(t)}))}),r)}));return n.serializer=q,o},_support:"function"==typeof openDatabase,iterate:function(e,t){var n=this,r=new a((function(t,r){n.ready().then((function(){var o=n._dbInfo;o.db.transaction((function(n){$(n,o,"SELECT * FROM "+o.storeName,[],(function(n,r){for(var i=r.rows,a=i.length,s=0;s<a;s++){var c=i.item(s),u=c.value;if(u&&(u=o.serializer.deserialize(u)),void 0!==(u=e(u,c.key,s+1)))return void t(u)}t()}),(function(e,t){r(t)}))}))})).catch(r)}));return s(r,t),r},getItem:function(e,t){var n=this;e=u(e);var r=new a((function(t,r){n.ready().then((function(){var o=n._dbInfo;o.db.transaction((function(n){$(n,o,"SELECT * FROM "+o.storeName+" WHERE key = ? LIMIT 1",[e],(function(e,n){var r=n.rows.length?n.rows.item(0).value:null;r&&(r=o.serializer.deserialize(r)),t(r)}),(function(e,t){r(t)}))}))})).catch(r)}));return s(r,t),r},setItem:function(e,t,n){return ee.apply(this,[e,t,n,1])},removeItem:function(e,t){var n=this;e=u(e);var r=new a((function(t,r){n.ready().then((function(){var o=n._dbInfo;o.db.transaction((function(n){$(n,o,"DELETE FROM "+o.storeName+" WHERE key = ?",[e],(function(){t()}),(function(e,t){r(t)}))}))})).catch(r)}));return s(r,t),r},clear:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){var r=t._dbInfo;r.db.transaction((function(t){$(t,r,"DELETE FROM "+r.storeName,[],(function(){e()}),(function(e,t){n(t)}))}))})).catch(n)}));return s(n,e),n},length:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){var r=t._dbInfo;r.db.transaction((function(t){$(t,r,"SELECT COUNT(key) as c FROM "+r.storeName,[],(function(t,n){var r=n.rows.item(0).c;e(r)}),(function(e,t){n(t)}))}))})).catch(n)}));return s(n,e),n},key:function(e,t){var n=this,r=new a((function(t,r){n.ready().then((function(){var o=n._dbInfo;o.db.transaction((function(n){$(n,o,"SELECT key FROM "+o.storeName+" WHERE id = ? LIMIT 1",[e+1],(function(e,n){var r=n.rows.length?n.rows.item(0).key:null;t(r)}),(function(e,t){r(t)}))}))})).catch(r)}));return s(r,t),r},keys:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){var r=t._dbInfo;r.db.transaction((function(t){$(t,r,"SELECT key FROM "+r.storeName,[],(function(t,n){for(var r=[],o=0;o<n.rows.length;o++)r.push(n.rows.item(o).key);e(r)}),(function(e,t){n(t)}))}))})).catch(n)}));return s(n,e),n},dropInstance:function(e,t){t=l.apply(this,arguments);var n=this.config();(e="function"!=typeof e&&e||{}).name||(e.name=e.name||n.name,e.storeName=e.storeName||n.storeName);var r,o=this;return s(r=e.name?new a((function(t){var r;r=e.name===n.name?o._dbInfo.db:openDatabase(e.name,"","",0),e.storeName?t({db:r,storeNames:[e.storeName]}):t(function(e){return new a((function(t,n){e.transaction((function(r){r.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],(function(n,r){for(var o=[],i=0;i<r.rows.length;i++)o.push(r.rows.item(i).name);t({db:e,storeNames:o})}),(function(e,t){n(t)}))}),(function(e){n(e)}))}))}(r))})).then((function(e){return new a((function(t,n){e.db.transaction((function(r){function o(e){return new a((function(t,n){r.executeSql("DROP TABLE IF EXISTS "+e,[],(function(){t()}),(function(e,t){n(t)}))}))}for(var i=[],s=0,c=e.storeNames.length;s<c;s++)i.push(o(e.storeNames[s]));a.all(i).then((function(){t()})).catch((function(e){n(e)}))}),(function(e){n(e)}))}))})):a.reject("Invalid arguments"),t),r}};function ne(e,t){var n=e.name+"/";return e.storeName!==t.storeName&&(n+=e.storeName+"/"),n}function re(){return!function(){var e="_localforage_support_test";try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch(e){return!0}}()||localStorage.length>0}var oe={_driver:"localStorageWrapper",_initStorage:function(e){var t={};if(e)for(var n in e)t[n]=e[n];return t.keyPrefix=ne(e,this._defaultConfig),re()?(this._dbInfo=t,t.serializer=q,a.resolve()):a.reject()},_support:function(){try{return"undefined"!=typeof localStorage&&"setItem"in localStorage&&!!localStorage.setItem}catch(e){return!1}}(),iterate:function(e,t){var n=this,r=n.ready().then((function(){for(var t=n._dbInfo,r=t.keyPrefix,o=r.length,i=localStorage.length,a=1,s=0;s<i;s++){var c=localStorage.key(s);if(0===c.indexOf(r)){var u=localStorage.getItem(c);if(u&&(u=t.serializer.deserialize(u)),void 0!==(u=e(u,c.substring(o),a++)))return u}}}));return s(r,t),r},getItem:function(e,t){var n=this;e=u(e);var r=n.ready().then((function(){var t=n._dbInfo,r=localStorage.getItem(t.keyPrefix+e);return r&&(r=t.serializer.deserialize(r)),r}));return s(r,t),r},setItem:function(e,t,n){var r=this;e=u(e);var o=r.ready().then((function(){void 0===t&&(t=null);var n=t;return new a((function(o,i){var a=r._dbInfo;a.serializer.serialize(t,(function(t,r){if(r)i(r);else try{localStorage.setItem(a.keyPrefix+e,t),o(n)}catch(e){"QuotaExceededError"!==e.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==e.name||i(e),i(e)}}))}))}));return s(o,n),o},removeItem:function(e,t){var n=this;e=u(e);var r=n.ready().then((function(){var t=n._dbInfo;localStorage.removeItem(t.keyPrefix+e)}));return s(r,t),r},clear:function(e){var t=this,n=t.ready().then((function(){for(var e=t._dbInfo.keyPrefix,n=localStorage.length-1;n>=0;n--){var r=localStorage.key(n);0===r.indexOf(e)&&localStorage.removeItem(r)}}));return s(n,e),n},length:function(e){var t=this.keys().then((function(e){return e.length}));return s(t,e),t},key:function(e,t){var n=this,r=n.ready().then((function(){var t,r=n._dbInfo;try{t=localStorage.key(e)}catch(e){t=null}return t&&(t=t.substring(r.keyPrefix.length)),t}));return s(r,t),r},keys:function(e){var t=this,n=t.ready().then((function(){for(var e=t._dbInfo,n=localStorage.length,r=[],o=0;o<n;o++){var i=localStorage.key(o);0===i.indexOf(e.keyPrefix)&&r.push(i.substring(e.keyPrefix.length))}return r}));return s(n,e),n},dropInstance:function(e,t){if(t=l.apply(this,arguments),!(e="function"!=typeof e&&e||{}).name){var n=this.config();e.name=e.name||n.name,e.storeName=e.storeName||n.storeName}var r,o=this;return r=e.name?new a((function(t){e.storeName?t(ne(e,o._defaultConfig)):t(e.name+"/")})).then((function(e){for(var t=localStorage.length-1;t>=0;t--){var n=localStorage.key(t);0===n.indexOf(e)&&localStorage.removeItem(n)}})):a.reject("Invalid arguments"),s(r,t),r}},ie=function(e,t){for(var n=e.length,r=0;r<n;){if((o=e[r])===(i=t)||"number"==typeof o&&"number"==typeof i&&isNaN(o)&&isNaN(i))return!0;r++}var o,i;return!1},ae=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)},se={},ce={},ue={INDEXEDDB:N,WEBSQL:te,LOCALSTORAGE:oe},le=[ue.INDEXEDDB._driver,ue.WEBSQL._driver,ue.LOCALSTORAGE._driver],de=["dropInstance"],fe=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(de),he={description:"",driver:le.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function ve(e,t){e[t]=function(){var n=arguments;return e.ready().then((function(){return e[t].apply(e,n)}))}}function pe(){for(var e=1;e<arguments.length;e++){var t=arguments[e];if(t)for(var n in t)t.hasOwnProperty(n)&&(ae(t[n])?arguments[0][n]=t[n].slice():arguments[0][n]=t[n])}return arguments[0]}var ge=function(){function e(t){for(var n in function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),ue)if(ue.hasOwnProperty(n)){var r=ue[n],o=r._driver;this[n]=o,se[o]||this.defineDriver(r)}this._defaultConfig=pe({},he),this._config=pe({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch((function(){}))}return e.prototype.config=function(e){if("object"===(void 0===e?"undefined":r(e))){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var t in e){if("storeName"===t&&(e[t]=e[t].replace(/\W/g,"_")),"version"===t&&"number"!=typeof e[t])return new Error("Database version must be a number.");this._config[t]=e[t]}return!("driver"in e)||!e.driver||this.setDriver(this._config.driver)}return"string"==typeof e?this._config[e]:this._config},e.prototype.defineDriver=function(e,t,n){var r=new a((function(t,n){try{var r=e._driver,o=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!e._driver)return void n(o);for(var i=fe.concat("_initStorage"),c=0,u=i.length;c<u;c++){var l=i[c];if((!ie(de,l)||e[l])&&"function"!=typeof e[l])return void n(o)}!function(){for(var t=function(e){return function(){var t=new Error("Method "+e+" is not implemented by the current driver"),n=a.reject(t);return s(n,arguments[arguments.length-1]),n}},n=0,r=de.length;n<r;n++){var o=de[n];e[o]||(e[o]=t(o))}}();var d=function(n){se[r]&&console.info("Redefining LocalForage driver: "+r),se[r]=e,ce[r]=n,t()};"_support"in e?e._support&&"function"==typeof e._support?e._support().then(d,n):d(!!e._support):d(!0)}catch(e){n(e)}}));return c(r,t,n),r},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(e,t,n){var r=se[e]?a.resolve(se[e]):a.reject(new Error("Driver not found."));return c(r,t,n),r},e.prototype.getSerializer=function(e){var t=a.resolve(q);return c(t,e),t},e.prototype.ready=function(e){var t=this,n=t._driverSet.then((function(){return null===t._ready&&(t._ready=t._initDriver()),t._ready}));return c(n,e,e),n},e.prototype.setDriver=function(e,t,n){var r=this;ae(e)||(e=[e]);var o=this._getSupportedDrivers(e);function i(){r._config.driver=r.driver()}function s(e){return r._extend(e),i(),r._ready=r._initStorage(r._config),r._ready}var u=null!==this._driverSet?this._driverSet.catch((function(){return a.resolve()})):a.resolve();return this._driverSet=u.then((function(){var e=o[0];return r._dbInfo=null,r._ready=null,r.getDriver(e).then((function(e){r._driver=e._driver,i(),r._wrapLibraryMethodsWithReady(),r._initDriver=function(e){return function(){var t=0;return function n(){for(;t<e.length;){var o=e[t];return t++,r._dbInfo=null,r._ready=null,r.getDriver(o).then(s).catch(n)}i();var c=new Error("No available storage method found.");return r._driverSet=a.reject(c),r._driverSet}()}}(o)}))})).catch((function(){i();var e=new Error("No available storage method found.");return r._driverSet=a.reject(e),r._driverSet})),c(this._driverSet,t,n),this._driverSet},e.prototype.supports=function(e){return!!ce[e]},e.prototype._extend=function(e){pe(this,e)},e.prototype._getSupportedDrivers=function(e){for(var t=[],n=0,r=e.length;n<r;n++){var o=e[n];this.supports(o)&&t.push(o)}return t},e.prototype._wrapLibraryMethodsWithReady=function(){for(var e=0,t=fe.length;e<t;e++)ve(this,fe[e])},e.prototype.createInstance=function(t){return new e(t)},e}(),_e=new ge;t.exports=_e},{3:3}]},{},[4])(4)},913:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiConstants=void 0;class n{}t.ApiConstants=n,n.CONFIG_LAUNCH_AT_STARTUP="CONFIG_LAUNCH_AT_STARTUP",n.CONFIG_WIDGET_TITLE_COLOR="CONFIG_WIDGET_TITLE_COLOR",n.CONFIG_DEBUG_MODE="cn.widgetjs.config.debug",n.CONFIG_GRID_SIZE="cn.widgetjs.config.grid.size",n.SHORTCUT_PIN_DESKTOP_WIDGETS="cn.widgetjs.config.shortcut.pin_desktop_widgets"},445:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AppApi=void 0;const r=n(990),o=n(841);class i{static async setConfig(e,t){await r.ElectronUtils.invoke(o.Channel.APP,this.SET_CONFIG,e,t)}static async getConfig(e,t){const n=await r.ElectronUtils.invoke(o.Channel.APP,this.GET_CONFIG,e);return null==n?t:"boolean"==typeof t?"true"===n:"number"==typeof t?Number(n):n}static openAddWidgetWindow(){r.ElectronUtils.invoke(o.Channel.APP,this.OPEN_ADD_WIDGET_WINDOW)}static async getVersion(){return r.ElectronUtils.invoke(o.Channel.APP,this.GET_VERSION)}static async getPreloadPath(){return r.ElectronUtils.invoke(o.Channel.APP,this.GET_PRELOAD_PATH)}static openSettingWindow(){r.ElectronUtils.invoke(o.Channel.APP,this.OPEN_SETTING_WINDOW)}}t.AppApi=i,i.SET_CONFIG="SET_CONFIG",i.GET_CONFIG="GET_CONFIG",i.OPEN_ADD_WIDGET_WINDOW="open-add-widget-window",i.OPEN_SETTING_WINDOW="open-setting-window",i.GET_PRELOAD_PATH="get-preload-path",i.GET_VERSION="get-version"},969:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BroadcastApi=void 0;const r=n(990),o=n(841),i=n(295);t.BroadcastApi=class{static async sendBroadcastEvent(e){var t;await(null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(o.Channel.BROADCAST,JSON.stringify(e)))}static async registerBroadcast(e){await i.ElectronApi.addIpcListener(o.Channel.BROADCAST,(t=>{e(JSON.parse(t))}))}static async unregisterBroadcast(){await i.ElectronApi.removeIpcListener(o.Channel.BROADCAST)}}},194:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BrowserWindowApi=void 0;const r=n(841),o=n(990);class i{static async setIgnoreMouseEvent(e){await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.IGNORE_MOUSE_EVENT,e)}static async show(){await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.WINDOW_VISIBILITY,!0)}static async showInactive(){await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.SHOW_INACTIVE,!0)}static async hide(){await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.WINDOW_VISIBILITY,!1)}static async center(){await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.CENTER,!1)}static async setWindowVisibility(e){await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.WINDOW_VISIBILITY,e)}static async setAlwaysOnTop(e){await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.ALWAYS_ON_TOP,e)}static async isAlwaysOnTop(){return await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.IS_ALWAYS_ON_TOP)}static async openUrl(e){await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.OPEN_URL,e)}static async moveTop(){await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.MOVE_TOP)}static async openDevTools(){await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.OPEN_DEV_TOOLS)}static async setPosition(e,t,n){await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.SET_POSITION,e,t,n)}static async getPosition(){return await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.GET_POSITION)}static async blur(){return await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.BLUR)}static async focus(){return await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.FOCUS)}static async setResizable(e){return await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.SET_RESIZABLE,e)}static async getBounds(){return await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.GET_BOUNDS)}static async setBounds(e,t){return await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.SET_BOUNDS,e,t)}static async alignToScreen(e){return await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.ALIGN_TO_SCREEN,e)}static async startDraggingWindow(){return await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.START_DRAGGING_WINDOW)}static async stopDraggingWindow(){return await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.STOP_DRAGGING_WINDOW)}static async existsByUrl(e){return await o.ElectronUtils.invoke(r.Channel.BROWSER_WINDOW,this.EXISTS_BY_URL,e)}}t.BrowserWindowApi=i,i.IGNORE_MOUSE_EVENT="ignore-mouse-event",i.WINDOW_VISIBILITY="window-visibility",i.CENTER="center",i.ALWAYS_ON_TOP="always-on-top",i.IS_ALWAYS_ON_TOP="is-always-on-top",i.OPEN_URL="open-url",i.MOVE_TOP="move-top",i.OPEN_DEV_TOOLS="open-dev-tools",i.SET_POSITION="set-position",i.GET_POSITION="get-position",i.BLUR="blur",i.FOCUS="focus",i.SET_RESIZABLE="set-resizable",i.GET_BOUNDS="get-bounds",i.SET_BOUNDS="set-bounds",i.ALIGN_TO_SCREEN="align-to-screen",i.START_DRAGGING_WINDOW="start-dragging-window",i.STOP_DRAGGING_WINDOW="stop-dragging-window",i.EXISTS_BY_URL="exists-by-url",i.SHOW_INACTIVE="show-inactive",i.SHOW="show"},841:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Channel=void 0,(n=t.Channel||(t.Channel={})).NOTIFICATION="channel::cn.widgetjs.core.notification",n.BROWSER_WINDOW="channel::cn.widgetjs.core.browser_window",n.BROADCAST="channel::cn.widgetjs.core.broadcast",n.WIDGET="channel::cn.widgetjs.core.widget",n.HOSTED_WIDGET="channel::cn.widgetjs.core.hosted_widget",n.APP="channel::cn.widgetjs.core.app",n.DIALOG="channel::cn.widgetjs.core.dialog",n.CLIPBOARD="channel::cn.widgetjs.core.clipboard",n.SCREEN="channel::cn.widgetjs.core.screen",n.SHORTCUT="channel::cn.widgetjs.core.shortcut",n.LOG="channel::cn.widgetjs.core.log",n.DEVICE="channel::cn.widgetjs.core.device",n.MOUSE_EVENT="channel::cn.widgetjs.core.mouse_event",n.KEYBOARD="channel::cn.widgetjs.core.keyboard"},989:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ClipboardApi=void 0;const r=n(990),o=n(841);class i{static async getSelectedText(){var e;return await(null===(e=r.ElectronUtils.getAPI())||void 0===e?void 0:e.invoke(o.Channel.CLIPBOARD,this.GET_SELECTED_TEXT))}static async getText(){var e;return await(null===(e=r.ElectronUtils.getAPI())||void 0===e?void 0:e.invoke(o.Channel.CLIPBOARD,this.GET_TEXT))}}t.ClipboardApi=i,i.GET_SELECTED_TEXT="get-selected-text",i.GET_TEXT="get-text"},394:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceApi=void 0;const r=n(990),o=n(841);class i{static async getCursorScreenPoint(){return await r.ElectronUtils.invoke(o.Channel.DEVICE,this.GET_CURSOR_SCREEN_POINT)}static async isAllKeyReleased(){return await r.ElectronUtils.invoke(o.Channel.DEVICE,this.IS_ALL_KEY_RELEASED)}}t.DeviceApi=i,i.GET_CURSOR_SCREEN_POINT="get-cursor-screen-point",i.IS_ALL_KEY_RELEASED="is-all-key-released"},24:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DialogApi=void 0;const r=n(990),o=n(841);class i{static async pickFile(e){var t;return await(null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(o.Channel.DIALOG,this.PICK_FILE,e))}}t.DialogApi=i,i.PICK_FILE="pick-file"},295:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ElectronApi=void 0;const r=n(990);t.ElectronApi=class{static async addIpcListener(e,t){var n;await(null===(n=r.ElectronUtils.getAPI())||void 0===n?void 0:n.addIpcListener(e,t))}static async removeIpcListener(e){var t;await(null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.removeIpcListener(e))}}},671:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.GlobalShortcutApi=void 0;const r=n(990),o=n(841);class i{static async register(e){var t;return await(null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(o.Channel.SHORTCUT,this.REGISTER,e))}static async unregister(e){var t;return await(null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(o.Channel.SHORTCUT,this.UNREGISTER,e))}static async isRegistered(e){var t;return await(null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(o.Channel.SHORTCUT,this.IS_REGISTERED,e))}}t.GlobalShortcutApi=i,i.REGISTER="register",i.IS_REGISTERED="is-registered",i.UNREGISTER="unregister"},766:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HostedWidgetApi=void 0;const r=n(990),o=n(841);class i{static async removeHostedWidget(e){var t;return null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(o.Channel.HOSTED_WIDGET,this.REMOVE_HOSTED_WIDGET,e)}static async removeHostedWidgetByName(e){var t;return null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(o.Channel.HOSTED_WIDGET,this.REMOVE_HOSTED_WIDGET_BY_NAME,e)}static async getHostedWidgets(e){var t;return null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(o.Channel.HOSTED_WIDGET,this.GET_HOSTED_WIDGETS,e)}static async getHostedWidget(e){var t;return null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(o.Channel.HOSTED_WIDGET,this.GET_HOSTED_WIDGET,e)}static async openDevTools(e){var t;return null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(o.Channel.HOSTED_WIDGET,this.OPEN_DEV_TOOLS,e)}static async openConfigRoute(e,t){var n;return null===(n=r.ElectronUtils.getAPI())||void 0===n?void 0:n.invoke(o.Channel.HOSTED_WIDGET,this.OPEN_CONFIG_ROUTE,e,t)}static async registerActiveShortcut(e,t){var n;return null===(n=r.ElectronUtils.getAPI())||void 0===n?void 0:n.invoke(o.Channel.HOSTED_WIDGET,this.REGISTER_ACTIVE_SHORTCUT,e,t)}static async setProxy(e,t){var n;return null===(n=r.ElectronUtils.getAPI())||void 0===n?void 0:n.invoke(o.Channel.HOSTED_WIDGET,this.SET_PROXY,e,t)}}t.HostedWidgetApi=i,i.REMOVE_HOSTED_WIDGET="remove-hosted-widget",i.REMOVE_HOSTED_WIDGET_BY_NAME="remove-hosted-widget-by-name",i.GET_HOSTED_WIDGETS="get-hosted-widgets",i.GET_HOSTED_WIDGET="get-hosted-widget",i.OPEN_DEV_TOOLS="open-dev-tools",i.REGISTER_ACTIVE_SHORTCUT="register-active-shortcut",i.SET_PROXY="SET_PROXY",i.UPDATE="UPDATE",i.OPEN_CONFIG_ROUTE="open-config-route"},806:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LogApi=void 0;const r=n(990),o=n(841);t.LogApi=class{static info(e,...t){console.info(...t),r.ElectronUtils.invoke(o.Channel.LOG,e,"info",...t)}static error(e,...t){console.error(...t),r.ElectronUtils.invoke(o.Channel.LOG,e,"error",...t)}static warn(e,...t){console.warn(...t),r.ElectronUtils.invoke(o.Channel.LOG,e,"warn",...t)}static log(e,...t){console.log(...t),r.ElectronUtils.invoke(o.Channel.LOG,e,"log",...t)}}},717:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NotificationApi=void 0;const r=n(31),o=n(841),i=n(990);t.NotificationApi=class{static async call(e,t,n,a,s){var c;null===(c=i.ElectronUtils.getAPI())||void 0===c||c.invoke(o.Channel.NOTIFICATION,new r.AppNotification({avatar:e,audio:t,message:a,title:n,duration:-1,lyric:s,type:"call"}))}static async send(e){var t;return null===(t=i.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(o.Channel.NOTIFICATION,e)}static async reminder(e,t,n,o,i,a,s,c=5e3){return await this.send(new r.AppNotification({icon:n,message:t,title:e,duration:c,cancelButtonText:o,confirmButtonText:i,cancelBroadcast:a,confirmBroadcast:s,type:"reminder"}))}static async advanceCountdown(e,t,n){return await this.send(new r.AppNotification({title:n,message:e,targetTime:t,type:"advance-countdown"}))}static async countdown(e,t){var n;null===(n=i.ElectronUtils.getAPI())||void 0===n||n.invoke(o.Channel.NOTIFICATION,new r.AppNotification({message:e,targetTime:t,backgroundColor:"rgba(0,0,0,0.5)",duration:-1,type:"countdown"}))}static async success(e,t=5e3){var n;i.ElectronUtils.hasElectronApi()?null===(n=i.ElectronUtils.getAPI())||void 0===n||n.invoke(o.Channel.NOTIFICATION,new r.AppNotification({message:e,type:"success",icon:"check_circle_line",duration:t})):this.callback("success",e,t)}static async error(e,t=5e3){var n;i.ElectronUtils.hasElectronApi()?null===(n=i.ElectronUtils.getAPI())||void 0===n||n.invoke(o.Channel.NOTIFICATION,new r.AppNotification({message:e,type:"error",icon:"close_circle_line",duration:t})):this.callback("error",e,t)}static async warning(e,t=5e3){var n;i.ElectronUtils.hasElectronApi()?null===(n=i.ElectronUtils.getAPI())||void 0===n||n.invoke(o.Channel.NOTIFICATION,new r.AppNotification({message:e,type:"warning",icon:"warning_line",duration:t})):this.callback("warning",e,t)}static async info(e,t=5e3){var n;i.ElectronUtils.hasElectronApi()?null===(n=i.ElectronUtils.getAPI())||void 0===n||n.invoke(o.Channel.NOTIFICATION,new r.AppNotification({message:e,type:"info",icon:"information_line",duration:t})):this.callback("info",e,t)}static async hide(){var e;i.ElectronUtils.hasElectronApi()&&(null===(e=i.ElectronUtils.getAPI())||void 0===e||e.invoke(o.Channel.NOTIFICATION,null))}static setDebugNotification(e){this.callback=e}}},737:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WidgetApi=void 0;const o=n(473),i=n(990),a=n(134),s=n(841),c=n(499),u=n(937),l=n(969),d=r(n(680));class f{static async registerWidgets(e){var t;await(null===(t=i.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(s.Channel.WIDGET,this.REGISTER_WIDGETS,JSON.stringify(e)))}static async registerWidgetPackage(e){var t;await(null===(t=i.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(s.Channel.WIDGET,this.REGISTER_WIDGET_PACKAGE,JSON.stringify(e)))}static async getWidgets(){var e;const t=await(null===(e=i.ElectronUtils.getAPI())||void 0===e?void 0:e.invoke(s.Channel.WIDGET,this.GET_WIDGETS)),n=[];if(t)for(const e of t)n.push(o.Widget.parseObject(e));return n}static async getWidgetPackages(){var e;return await(null===(e=i.ElectronUtils.getAPI())||void 0===e?void 0:e.invoke(s.Channel.WIDGET,this.GET_WIDGET_PACKAGES))}static async getWidget(e){var t;return o.Widget.parseObject(await(null===(t=i.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(s.Channel.WIDGET,this.GET_WIDGET,e)))}static async getWidgetPackage(e){var t;return a.WidgetPackage.parseObject(await(null===(t=i.ElectronUtils.getAPI())||void 0===t?void 0:t.invoke(s.Channel.WIDGET,this.GET_WIDGET_PACKAGE,e)))}static async getWidgetConfigUrl(e,t){const n=await this.getWidget(e);if(!n)return null;const r=n.getConfigRoute();if(!r)return null;const o=await this.getWidgetPackage(n.packageName);return o?c.UrlUtils.getWidgetUrl(r.url,o,t):null}static async getWidgetUrl(e,t){const n=await this.getWidget(e);if(!n)return null;const r=n.getIndexRoute(),o=await this.getWidgetPackage(n.packageName);return o?c.UrlUtils.getWidgetUrl(r.url,o,t):null}static async getWidgetPackageIndexUrl(e,t){const n=await this.getWidgetPackage(e);return n?n.getIndexUrl(t):null}static async getWidgetPackageUrl(e){const t=await this.getWidgetPackage(e);return t?t.url:null}static async saveDataByName(e,t={sendBroadcast:!0}){const n=this.getStore(e.name),r=JSON.stringify(e),o=await n.setItem(e.name,r);if(t.sendBroadcast){const n=new u.BroadcastEvent(u.BroadcastEvent.TYPE_WIDGET_UPDATED,"",{name:e.name,id:t.id,json:r});await l.BroadcastApi.sendBroadcastEvent(n)}return o}static getStore(e){if(this.stores.has(e))return this.stores.get(e);const t=d.default.createInstance({name:e});return this.stores.set(e,t),t}}t.WidgetApi=f,f.REGISTER_WIDGETS="register-widgets",f.REGISTER_WIDGET_PACKAGE="register-widget-package",f.GET_WIDGETS="get-widgets",f.GET_WIDGET="get-widget",f.GET_WIDGET_PACKAGE="get-widget-package",f.GET_WIDGET_PACKAGES="get-widget-packages",f.stores=new Map},755:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),o(n(473),t),o(n(937),t),o(n(681),t),o(n(450),t),o(n(758),t),o(n(31),t),o(n(995),t),o(n(726),t),o(n(386),t),o(n(594),t),o(n(442),t),o(n(134),t),o(n(295),t),o(n(630),t),o(n(194),t),o(n(671),t),o(n(717),t),o(n(766),t),o(n(394),t),o(n(841),t),o(n(989),t),o(n(737),t),o(n(913),t),o(n(969),t),o(n(445),t),o(n(24),t),o(n(990),t),o(n(499),t),o(n(821),t),o(n(806),t),o(n(82),t)},31:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.AppNotification=t.NotificationSize=void 0,function(e){e.SMALL="small",e.NORMAL="normal",e.LARGE="large"}(n=t.NotificationSize||(t.NotificationSize={})),t.AppNotification=class{constructor(e){var t,r,o,i,a;this.type="info",this.createdAt=(new Date).toISOString(),this.type=null!==(t=e.type)&&void 0!==t?t:"info",this.title=e.title,this.message=e.message,this.targetTime=e.targetTime,this.duration=null!==(r=e.duration)&&void 0!==r?r:5e3,this.icon=e.icon,this.color=null!==(o=e.color)&&void 0!==o?o:"#5D8AC8",this.confirmButtonText=e.confirmButtonText,this.cancelButtonText=e.cancelButtonText,this.cancelBroadcast=e.cancelBroadcast,this.confirmBroadcast=e.confirmBroadcast,this.size=null!==(i=e.size)&&void 0!==i?i:n.NORMAL,this.audio=e.audio,this.avatar=e.avatar,this.lyric=e.lyric,this.backgroundColor=null!==(a=e.backgroundColor)&&void 0!==a?a:"#000000"}}},995:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.HostedMode=void 0,(n=t.HostedMode||(t.HostedMode={}))[n.NORMAL=1]="NORMAL",n[n.OVERLAP=16]="OVERLAP",n[n.WALLPAPER=256]="WALLPAPER",n[n.SCREEN=4096]="SCREEN",n[n.BACKGROUND=65536]="BACKGROUND",n[n.ALL=69905]="ALL"},726:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HostedWidget=void 0;const r=n(995);t.HostedWidget=class{constructor(){this.x=0,this.y=0}isOverlap(){return(this.hostedMode&r.HostedMode.OVERLAP)>0}}},473:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WidgetKeyword=t.Widget=void 0;const r=n(995);class o{constructor(e){var t,n,o,i,a,s,c,u,l;this.lang="zh",this.name=e.name,this.title=e.title,this.description=e.description,this.keywords=e.keywords,this.lang=e.lang,this.width=e.width,this.height=e.height,this.movable=null===(t=e.movable)||void 0===t||t,this.permissions=null!==(n=e.permissions)&&void 0!==n?n:[],this.maxWidth=null!==(o=e.maxWidth)&&void 0!==o?o:e.width,this.maxHeight=null!==(i=e.maxHeight)&&void 0!==i?i:e.height,this.minWidth=null!==(a=e.minWidth)&&void 0!==a?a:e.width,this.minHeight=null!==(s=e.minHeight)&&void 0!==s?s:e.height,this.backgroundThrottling=null===(c=e.backgroundThrottling)||void 0===c||c,this.packageName=e.packageName,this.previewImage=e.previewImage,this.shortcut=e.shortcut,this.refreshWhenResided=null!==(u=e.refreshWhenResided)&&void 0!==u&&u,this.hideWhenBlur=null!=e.hideWhenBlur&&e.hideWhenBlur,this.supportHostedMode=null!==(l=e.supportHostedMode)&&void 0!==l?l:r.HostedMode.NORMAL|r.HostedMode.OVERLAP,this.routes=e.routes}getIndexRoute(){return this.routes.find((e=>"index"==e.name.toLowerCase()))}getConfigRoute(){return this.routes.find((e=>"config"==e.name.toLowerCase()))}isConfigurable(){return null!=this.getConfigRoute()}getTitle(e){var t;return e&&null!==(t=this.title[e])&&void 0!==t?t:this.title[this.lang]}getDescription(e){return e?this.description[e]:this.description[this.lang]}static parseJSON(e){const t=JSON.parse(e);return this.parseObject(t)}static parseObject(e){let t=new o({description:{},height:0,keywords:[],lang:"",name:"",routes:[],title:{},width:0});return Object.assign(t,e),t}isSupportOverlap(){return(this.supportHostedMode&r.HostedMode.OVERLAP)>0}isResizable(){return!(this.minWidth==this.width&&this.maxWidth==this.width&&this.minHeight==this.height&&this.maxHeight==this.height)}isSupportBackground(){return(this.supportHostedMode&r.HostedMode.BACKGROUND)>0}isSupportNormal(){return(this.supportHostedMode&r.HostedMode.NORMAL)>0}isSupportWallpaper(){return(this.supportHostedMode&r.HostedMode.WALLPAPER)>0}isSupportScreen(){return(this.supportHostedMode&r.HostedMode.SCREEN)>0}}var i;t.Widget=o,(i=t.WidgetKeyword||(t.WidgetKeyword={})).RECOMMEND="recommend",i.TOOLS="tools",i.EFFICIENCY="efficiency",i.PICTURE="picture",i.LIFE="life",i.SHORTCUT="shortcut",i.COUNTDOWN="countdown",i.TIMER="timer",i.INFO="info",i.DASHBOARD="dashboard"},450:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WidgetData=void 0,t.WidgetData=class{constructor(e,t){this.id=t,this.name=e}parseJSON(e){Object.assign(this,e)}}},134:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WidgetPackage=void 0;const r=n(499);class o{constructor(){this.hash=!0}static parseJSON(e){const t=JSON.parse(e);return this.parseObject(t)}static parseObject(e){let t=new o;return Object.assign(t,e),t}getIndexUrl(e){return r.UrlUtils.getWidgetPackageIndexUrl(this.url,this.entry,null==e?this.hash:e)}}t.WidgetPackage=o},758:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ThemeMode=t.WidgetParams=void 0;const r=n(821),o=n(94);class i{toUrlParams(){const e=new URLSearchParams,t=Object.getOwnPropertyNames(this);for(let n of t){const t=this[n];t&&e.append(i.PARAM_PREFIX+(0,o.snakeCase)(n),t.toString())}return e}getPersistKey(){return`${this.name}-${this.id}`}static fromCurrentLocation(){let e=window.location.href.split("?");if(e.length>1){let t=e[1];return this.fromObject((0,r.parseQuery)(t))}return new i}static fromLocation(e){let t=e.split("?");if(t.length>1){let e=t[1];return this.fromObject((0,r.parseQuery)(e))}return new i}static setValue(e,t,n){const r=t.replace(this.PARAM_PREFIX,"");r==i.PARAM_ID?e.id=n:r==i.PARAM_X?e.x=parseInt(n):r==i.PARAM_Y?e.y=parseInt(n):r==i.PARAM_HEIGHT?e.height=parseInt(n):r==i.PARAM_WIDTH?e.width=parseInt(n):r==i.PARAM_LANG?e.lang=n:r==i.PARAM_THEME?e.theme=n:r==i.PARAM_MODE?e.mode=parseInt(n):r==i.PARAM_RADIUS?e.radius=parseInt(n):r==i.PARAM_WIDTH_PX?e.widthPx=parseInt(n):r==i.PARAM_HEIGHT_PX?e.heightPx=parseInt(n):r==i.PARAM_NAME?e.name=n:r==i.PARAM_TITLE?e.title=n:r==i.PARAM_PREVIEW&&(e.preview="true"===n)}static fromObject(e){const t=new i,n=Object.getOwnPropertyNames(e);for(let r of n){const n=r,o=e[n];this.setValue(t,n,o)}return t}}var a;t.WidgetParams=i,i.PARAM_PREFIX="w_",i.PARAM_ID="id",i.PARAM_WIDTH="width",i.PARAM_HEIGHT="height",i.PARAM_WIDTH_PX="width_px",i.PARAM_HEIGHT_PX="height_px",i.PARAM_X="x",i.PARAM_Y="y",i.PARAM_LANG="lang",i.PARAM_THEME="theme",i.PARAM_MODE="mode",i.PARAM_RADIUS="radius",i.PARAM_NAME="name",i.PARAM_TITLE="title",i.PARAM_PREVIEW="preview",i.PARAMS=[i.PARAM_ID,i.PARAM_WIDTH,i.PARAM_HEIGHT,i.PARAM_X,i.PARAM_Y,i.PARAM_LANG,i.PARAM_THEME,i.PARAM_MODE,i.PARAM_WIDTH_PX,i.PARAM_HEIGHT_PX,i.PARAM_NAME,i.PARAM_TITLE,i.PARAM_PREVIEW],(a=t.ThemeMode||(t.ThemeMode={})).AUTO="auto",a.LIGHT="LIGHT",a.DARK="DARK"},442:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},937:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BroadcastEvent=void 0;class n{constructor(e,t,n){this.type=e,this.from=t,this.payload=n}}t.BroadcastEvent=n,n.TYPE_WIDGET_UPDATED="broadcast::cn.widgetjs.core.widget_updated",n.TYPE_APP_CONFIG_UPDATED="broadcast::cn.widgetjs.core.app_config_updated",n.TYPE_THEME_CHANGED="broadcast::cn.widgetjs.core.theme_changed",n.TYPE_EDIT_DESKTOP_WIDGETS="broadcast::cn.widgetjs.core.edit_desktop_widgets"},594:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},681:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebSocketEvent=t.WebSocketEventType=void 0,(t.WebSocketEventType||(t.WebSocketEventType={})).RESISTER_WIDGETS="ws::cn.widgetjs.core.resister_widgets",t.WebSocketEvent=class{constructor(e,t){this.type=e,this.payload=t}}},386:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},82:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},630:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WidgetDataRepository=void 0;const o=r(n(680)),i=n(937),a=n(969);class s{static async save(e){let t=this.getStore(e.name);const n=await t.setItem(this.getKey(e.name,e.id),JSON.stringify(e)),r=new i.BroadcastEvent(i.BroadcastEvent.TYPE_WIDGET_UPDATED,"",e);return await a.BroadcastApi.sendBroadcastEvent(r),n}static getStore(e){if(this.stores.has(e))return this.stores.get(e);const t=o.default.createInstance({name:e});return this.stores.set(e,t),t}static async saveByName(e){const t=this.getStore(e.name),n=JSON.stringify(e),r=await t.setItem(e.name,n),o=new i.BroadcastEvent(i.BroadcastEvent.TYPE_WIDGET_UPDATED,"",{name:e.name,json:n});return await a.BroadcastApi.sendBroadcastEvent(o),r}static async findByName(e,t){let n=this.getStore(e),r=await n.getItem(e);if(r){const n=new t(e);return n.parseJSON(JSON.parse(r)),n}}static async find(e,t,n){let r=this.getStore(e),o=await r.getItem(this.getKey(e,t));if(o){const r=new n(e,t);return r.parseJSON(JSON.parse(o)),r}}static getKey(e,t){return`${e}@${t}`}}t.WidgetDataRepository=s,s.stores=new Map},733:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=t.encodeParam=t.encodePath=t.encodeQueryKey=t.encodeQueryValue=t.encodeHash=t.PLUS_RE=void 0;const n=/#/g,r=/&/g,o=/\//g,i=/=/g,a=/\?/g;t.PLUS_RE=/\+/g;const s=/%5B/g,c=/%5D/g,u=/%5E/g,l=/%60/g,d=/%7B/g,f=/%7C/g,h=/%7D/g,v=/%20/g;function p(e){return encodeURI(""+e).replace(f,"|").replace(s,"[").replace(c,"]")}function g(e){return p(e).replace(t.PLUS_RE,"%2B").replace(v,"+").replace(n,"%23").replace(r,"%26").replace(l,"`").replace(d,"{").replace(h,"}").replace(u,"^")}function _(e){return p(e).replace(n,"%23").replace(a,"%3F")}t.encodeHash=function(e){return p(e).replace(d,"{").replace(h,"}").replace(u,"^")},t.encodeQueryValue=g,t.encodeQueryKey=function(e){return g(e).replace(i,"%3D")},t.encodePath=_,t.encodeParam=function(e){return null==e?"":_(e).replace(o,"%2F")},t.decode=function(e){try{return decodeURIComponent(""+e)}catch(e){}return""+e}},821:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.stringifyQuery=t.parseQuery=void 0;const r=n(733),o=Array.isArray;t.parseQuery=function(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let e=0;e<n.length;++e){const i=n[e].replace(r.PLUS_RE," "),a=i.indexOf("="),s=(0,r.decode)(a<0?i:i.slice(0,a)),c=a<0?null:(0,r.decode)(i.slice(a+1));if(s in t){let e=t[s];o(e)||(e=t[s]=[e]),e.push(c)}else t[s]=c}return t},t.stringifyQuery=function(e){let t="";for(let n in e){const i=e[n];(n=(0,r.encodeQueryKey)(n),null!=i)?(o(i)?i.map((e=>e&&(0,r.encodeQueryValue)(e))):[i&&(0,r.encodeQueryValue)(i)]).forEach((e=>{void 0!==e&&(t+=(t.length?"&":"")+n,null!=e&&(t+="="+e))})):void 0!==i&&(t+=(t.length?"&":"")+n)}return t}},990:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ElectronUtils=void 0,t.ElectronUtils=class{static hasElectronApi(){return null!=this.getAPI()}static getAPI(){return Reflect.has(window,"electronAPI")?window.electronAPI:Reflect.has(window.parent,"electronAPI")?window.parent.electronAPI:null}static async invoke(e,t,...n){var r;return null===(r=this.getAPI())||void 0===r?void 0:r.invoke(e,t,...n)}}},499:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UrlUtils=void 0,t.UrlUtils=class{static getWidgetUrl(e,t,n){let r="";return r=e.startsWith("http")?e:t.getIndexUrl()+e,r.includes("?")?r+"&"+n.toUrlParams().toString():r+"?"+n.toUrlParams().toString()}static getWidgetPackageIndexUrl(e,t,n){const r=[e];return e.startsWith("http")?n&&r.push(e.endsWith("/")?"#":"/#"):(r.push(t.startsWith("/")?t:`/${t}`),n&&r.push(e.endsWith("#")?"":"#")),r.join("")}}}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r].call(i.exports,i,i.exports,n),i.exports}return n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n(755)})()));
|
|
2
|
+
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.exampleTypescriptPackage=t():e.exampleTypescriptPackage=t()}(this,(()=>(()=>{var e={94:(e,t,n)=>{"use strict";n.r(t),n.d(t,{camelCase:()=>v,camelCaseTransform:()=>f,camelCaseTransformMerge:()=>h,capitalCase:()=>y,capitalCaseTransform:()=>g,constantCase:()=>b,dotCase:()=>w,headerCase:()=>_,noCase:()=>s,paramCase:()=>A,pascalCase:()=>l,pascalCaseTransform:()=>u,pascalCaseTransformMerge:()=>d,pathCase:()=>I,sentenceCase:()=>M,sentenceCaseTransform:()=>E,snakeCase:()=>O});var r=function(){return r=Object.assign||function(e){for(var t,n=1,r=arguments.length;n<r;n++)for(var o in t=arguments[n])Object.prototype.hasOwnProperty.call(t,o)&&(e[o]=t[o]);return e},r.apply(this,arguments)};function o(e){return e.toLowerCase()}Object.create,Object.create;var i=[/([a-z0-9])([A-Z])/g,/([A-Z])([A-Z][a-z])/g],a=/[^A-Z0-9]+/gi;function s(e,t){void 0===t&&(t={});for(var n=t.splitRegexp,r=void 0===n?i:n,s=t.stripRegexp,u=void 0===s?a:s,d=t.transform,l=void 0===d?o:d,f=t.delimiter,h=void 0===f?" ":f,v=c(c(e,r,"$1\0$2"),u,"\0"),p=0,g=v.length;"\0"===v.charAt(p);)p++;for(;"\0"===v.charAt(g-1);)g--;return v.slice(p,g).split("\0").map(l).join(h)}function c(e,t,n){return t instanceof RegExp?e.replace(t,n):t.reduce((function(e,t){return e.replace(t,n)}),e)}function u(e,t){var n=e.charAt(0),r=e.substr(1).toLowerCase();return t>0&&n>="0"&&n<="9"?"_"+n+r:""+n.toUpperCase()+r}function d(e){return e.charAt(0).toUpperCase()+e.slice(1).toLowerCase()}function l(e,t){return void 0===t&&(t={}),s(e,r({delimiter:"",transform:u},t))}function f(e,t){return 0===t?e.toLowerCase():u(e,t)}function h(e,t){return 0===t?e.toLowerCase():d(e)}function v(e,t){return void 0===t&&(t={}),l(e,r({transform:f},t))}function p(e){return e.charAt(0).toUpperCase()+e.substr(1)}function g(e){return p(e.toLowerCase())}function y(e,t){return void 0===t&&(t={}),s(e,r({delimiter:" ",transform:g},t))}function m(e){return e.toUpperCase()}function b(e,t){return void 0===t&&(t={}),s(e,r({delimiter:"_",transform:m},t))}function w(e,t){return void 0===t&&(t={}),s(e,r({delimiter:"."},t))}function _(e,t){return void 0===t&&(t={}),y(e,r({delimiter:"-"},t))}function A(e,t){return void 0===t&&(t={}),w(e,r({delimiter:"-"},t))}function I(e,t){return void 0===t&&(t={}),w(e,r({delimiter:"/"},t))}function E(e,t){var n=e.toLowerCase();return 0===t?p(n):n}function M(e,t){return void 0===t&&(t={}),s(e,r({delimiter:" ",transform:E},t))}function O(e,t){return void 0===t&&(t={}),w(e,r({delimiter:"_"},t))}},680:(e,t,n)=>{e.exports=function e(t,n,r){function o(a,s){if(!n[a]){if(!t[a]){if(i)return i(a,!0);var c=new Error("Cannot find module '"+a+"'");throw c.code="MODULE_NOT_FOUND",c}var u=n[a]={exports:{}};t[a][0].call(u.exports,(function(e){return o(t[a][1][e]||e)}),u,u.exports,e,t,n,r)}return n[a].exports}for(var i=void 0,a=0;a<r.length;a++)o(r[a]);return o}({1:[function(e,t,r){(function(e){"use strict";var n,r,o=e.MutationObserver||e.WebKitMutationObserver;if(o){var i=0,a=new o(d),s=e.document.createTextNode("");a.observe(s,{characterData:!0}),n=function(){s.data=i=++i%2}}else if(e.setImmediate||void 0===e.MessageChannel)n="document"in e&&"onreadystatechange"in e.document.createElement("script")?function(){var t=e.document.createElement("script");t.onreadystatechange=function(){d(),t.onreadystatechange=null,t.parentNode.removeChild(t),t=null},e.document.documentElement.appendChild(t)}:function(){setTimeout(d,0)};else{var c=new e.MessageChannel;c.port1.onmessage=d,n=function(){c.port2.postMessage(0)}}var u=[];function d(){var e,t;r=!0;for(var n=u.length;n;){for(t=u,u=[],e=-1;++e<n;)t[e]();n=u.length}r=!1}t.exports=function(e){1!==u.push(e)||r||n()}}).call(this,void 0!==n.g?n.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{}],2:[function(e,t,n){"use strict";var r=e(1);function o(){}var i={},a=["REJECTED"],s=["FULFILLED"],c=["PENDING"];function u(e){if("function"!=typeof e)throw new TypeError("resolver must be a function");this.state=c,this.queue=[],this.outcome=void 0,e!==o&&h(this,e)}function d(e,t,n){this.promise=e,"function"==typeof t&&(this.onFulfilled=t,this.callFulfilled=this.otherCallFulfilled),"function"==typeof n&&(this.onRejected=n,this.callRejected=this.otherCallRejected)}function l(e,t,n){r((function(){var r;try{r=t(n)}catch(t){return i.reject(e,t)}r===e?i.reject(e,new TypeError("Cannot resolve promise with itself")):i.resolve(e,r)}))}function f(e){var t=e&&e.then;if(e&&("object"==typeof e||"function"==typeof e)&&"function"==typeof t)return function(){t.apply(e,arguments)}}function h(e,t){var n=!1;function r(t){n||(n=!0,i.reject(e,t))}function o(t){n||(n=!0,i.resolve(e,t))}var a=v((function(){t(o,r)}));"error"===a.status&&r(a.value)}function v(e,t){var n={};try{n.value=e(t),n.status="success"}catch(e){n.status="error",n.value=e}return n}t.exports=u,u.prototype.catch=function(e){return this.then(null,e)},u.prototype.then=function(e,t){if("function"!=typeof e&&this.state===s||"function"!=typeof t&&this.state===a)return this;var n=new this.constructor(o);return this.state!==c?l(n,this.state===s?e:t,this.outcome):this.queue.push(new d(n,e,t)),n},d.prototype.callFulfilled=function(e){i.resolve(this.promise,e)},d.prototype.otherCallFulfilled=function(e){l(this.promise,this.onFulfilled,e)},d.prototype.callRejected=function(e){i.reject(this.promise,e)},d.prototype.otherCallRejected=function(e){l(this.promise,this.onRejected,e)},i.resolve=function(e,t){var n=v(f,t);if("error"===n.status)return i.reject(e,n.value);var r=n.value;if(r)h(e,r);else{e.state=s,e.outcome=t;for(var o=-1,a=e.queue.length;++o<a;)e.queue[o].callFulfilled(t)}return e},i.reject=function(e,t){e.state=a,e.outcome=t;for(var n=-1,r=e.queue.length;++n<r;)e.queue[n].callRejected(t);return e},u.resolve=function(e){return e instanceof this?e:i.resolve(new this(o),e)},u.reject=function(e){var t=new this(o);return i.reject(t,e)},u.all=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var n=e.length,r=!1;if(!n)return this.resolve([]);for(var a=new Array(n),s=0,c=-1,u=new this(o);++c<n;)d(e[c],c);return u;function d(e,o){t.resolve(e).then((function(e){a[o]=e,++s!==n||r||(r=!0,i.resolve(u,a))}),(function(e){r||(r=!0,i.reject(u,e))}))}},u.race=function(e){var t=this;if("[object Array]"!==Object.prototype.toString.call(e))return this.reject(new TypeError("must be an array"));var n,r=e.length,a=!1;if(!r)return this.resolve([]);for(var s=-1,c=new this(o);++s<r;)n=e[s],t.resolve(n).then((function(e){a||(a=!0,i.resolve(c,e))}),(function(e){a||(a=!0,i.reject(c,e))}));return c}},{1:1}],3:[function(e,t,r){(function(t){"use strict";"function"!=typeof t.Promise&&(t.Promise=e(2))}).call(this,void 0!==n.g?n.g:"undefined"!=typeof self?self:"undefined"!=typeof window?window:{})},{2:2}],4:[function(e,t,n){"use strict";var r="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};var o=function(){try{if("undefined"!=typeof indexedDB)return indexedDB;if("undefined"!=typeof webkitIndexedDB)return webkitIndexedDB;if("undefined"!=typeof mozIndexedDB)return mozIndexedDB;if("undefined"!=typeof OIndexedDB)return OIndexedDB;if("undefined"!=typeof msIndexedDB)return msIndexedDB}catch(e){return}}();function i(e,t){e=e||[],t=t||{};try{return new Blob(e,t)}catch(o){if("TypeError"!==o.name)throw o;for(var n=new("undefined"!=typeof BlobBuilder?BlobBuilder:"undefined"!=typeof MSBlobBuilder?MSBlobBuilder:"undefined"!=typeof MozBlobBuilder?MozBlobBuilder:WebKitBlobBuilder),r=0;r<e.length;r+=1)n.append(e[r]);return n.getBlob(t.type)}}"undefined"==typeof Promise&&e(3);var a=Promise;function s(e,t){t&&e.then((function(e){t(null,e)}),(function(e){t(e)}))}function c(e,t,n){"function"==typeof t&&e.then(t),"function"==typeof n&&e.catch(n)}function u(e){return"string"!=typeof e&&(console.warn(e+" used as a key, but it is not a string."),e=String(e)),e}function d(){if(arguments.length&&"function"==typeof arguments[arguments.length-1])return arguments[arguments.length-1]}var l="local-forage-detect-blob-support",f=void 0,h={},v=Object.prototype.toString,p="readonly",g="readwrite";function y(e){for(var t=e.length,n=new ArrayBuffer(t),r=new Uint8Array(n),o=0;o<t;o++)r[o]=e.charCodeAt(o);return n}function m(e){return"boolean"==typeof f?a.resolve(f):function(e){return new a((function(t){var n=e.transaction(l,g),r=i([""]);n.objectStore(l).put(r,"key"),n.onabort=function(e){e.preventDefault(),e.stopPropagation(),t(!1)},n.oncomplete=function(){var e=navigator.userAgent.match(/Chrome\/(\d+)/),n=navigator.userAgent.match(/Edge\//);t(n||!e||parseInt(e[1],10)>=43)}})).catch((function(){return!1}))}(e).then((function(e){return f=e}))}function b(e){var t=h[e.name],n={};n.promise=new a((function(e,t){n.resolve=e,n.reject=t})),t.deferredOperations.push(n),t.dbReady?t.dbReady=t.dbReady.then((function(){return n.promise})):t.dbReady=n.promise}function w(e){var t=h[e.name].deferredOperations.pop();if(t)return t.resolve(),t.promise}function _(e,t){var n=h[e.name].deferredOperations.pop();if(n)return n.reject(t),n.promise}function A(e,t){return new a((function(n,r){if(h[e.name]=h[e.name]||{forages:[],db:null,dbReady:null,deferredOperations:[]},e.db){if(!t)return n(e.db);b(e),e.db.close()}var i=[e.name];t&&i.push(e.version);var a=o.open.apply(o,i);t&&(a.onupgradeneeded=function(t){var n=a.result;try{n.createObjectStore(e.storeName),t.oldVersion<=1&&n.createObjectStore(l)}catch(n){if("ConstraintError"!==n.name)throw n;console.warn('The database "'+e.name+'" has been upgraded from version '+t.oldVersion+" to version "+t.newVersion+', but the storage "'+e.storeName+'" already exists.')}}),a.onerror=function(e){e.preventDefault(),r(a.error)},a.onsuccess=function(){var t=a.result;t.onversionchange=function(e){e.target.close()},n(t),w(e)}}))}function I(e){return A(e,!1)}function E(e){return A(e,!0)}function M(e,t){if(!e.db)return!0;var n=!e.db.objectStoreNames.contains(e.storeName),r=e.version<e.db.version,o=e.version>e.db.version;if(r&&(e.version!==t&&console.warn('The database "'+e.name+"\" can't be downgraded from version "+e.db.version+" to version "+e.version+"."),e.version=e.db.version),o||n){if(n){var i=e.db.version+1;i>e.version&&(e.version=i)}return!0}return!1}function O(e){return i([y(atob(e.data))],{type:e.type})}function P(e){return e&&e.__local_forage_encoded_blob}function S(e){var t=this,n=t._initReady().then((function(){var e=h[t._dbInfo.name];if(e&&e.dbReady)return e.dbReady}));return c(n,e,e),n}function R(e,t,n,r){void 0===r&&(r=1);try{var o=e.db.transaction(e.storeName,t);n(null,o)}catch(o){if(r>0&&(!e.db||"InvalidStateError"===o.name||"NotFoundError"===o.name))return a.resolve().then((function(){if(!e.db||"NotFoundError"===o.name&&!e.db.objectStoreNames.contains(e.storeName)&&e.version<=e.db.version)return e.db&&(e.version=e.db.version+1),E(e)})).then((function(){return function(e){b(e);for(var t=h[e.name],n=t.forages,r=0;r<n.length;r++){var o=n[r];o._dbInfo.db&&(o._dbInfo.db.close(),o._dbInfo.db=null)}return e.db=null,I(e).then((function(t){return e.db=t,M(e)?E(e):t})).then((function(r){e.db=t.db=r;for(var o=0;o<n.length;o++)n[o]._dbInfo.db=r})).catch((function(t){throw _(e,t),t}))}(e).then((function(){R(e,t,n,r-1)}))})).catch(n);n(o)}}var C={_driver:"asyncStorage",_initStorage:function(e){var t=this,n={db:null};if(e)for(var r in e)n[r]=e[r];var o=h[n.name];o||(o={forages:[],db:null,dbReady:null,deferredOperations:[]},h[n.name]=o),o.forages.push(t),t._initReady||(t._initReady=t.ready,t.ready=S);var i=[];function s(){return a.resolve()}for(var c=0;c<o.forages.length;c++){var u=o.forages[c];u!==t&&i.push(u._initReady().catch(s))}var d=o.forages.slice(0);return a.all(i).then((function(){return n.db=o.db,I(n)})).then((function(e){return n.db=e,M(n,t._defaultConfig.version)?E(n):e})).then((function(e){n.db=o.db=e,t._dbInfo=n;for(var r=0;r<d.length;r++){var i=d[r];i!==t&&(i._dbInfo.db=n.db,i._dbInfo.version=n.version)}}))},_support:function(){try{if(!o||!o.open)return!1;var e="undefined"!=typeof openDatabase&&/(Safari|iPhone|iPad|iPod)/.test(navigator.userAgent)&&!/Chrome/.test(navigator.userAgent)&&!/BlackBerry/.test(navigator.platform),t="function"==typeof fetch&&-1!==fetch.toString().indexOf("[native code");return(!e||t)&&"undefined"!=typeof indexedDB&&"undefined"!=typeof IDBKeyRange}catch(e){return!1}}(),iterate:function(e,t){var n=this,r=new a((function(t,r){n.ready().then((function(){R(n._dbInfo,p,(function(o,i){if(o)return r(o);try{var a=i.objectStore(n._dbInfo.storeName).openCursor(),s=1;a.onsuccess=function(){var n=a.result;if(n){var r=n.value;P(r)&&(r=O(r));var o=e(r,n.key,s++);void 0!==o?t(o):n.continue()}else t()},a.onerror=function(){r(a.error)}}catch(e){r(e)}}))})).catch(r)}));return s(r,t),r},getItem:function(e,t){var n=this;e=u(e);var r=new a((function(t,r){n.ready().then((function(){R(n._dbInfo,p,(function(o,i){if(o)return r(o);try{var a=i.objectStore(n._dbInfo.storeName).get(e);a.onsuccess=function(){var e=a.result;void 0===e&&(e=null),P(e)&&(e=O(e)),t(e)},a.onerror=function(){r(a.error)}}catch(e){r(e)}}))})).catch(r)}));return s(r,t),r},setItem:function(e,t,n){var r=this;e=u(e);var o=new a((function(n,o){var i;r.ready().then((function(){return i=r._dbInfo,"[object Blob]"===v.call(t)?m(i.db).then((function(e){return e?t:(n=t,new a((function(e,t){var r=new FileReader;r.onerror=t,r.onloadend=function(t){var r=btoa(t.target.result||"");e({__local_forage_encoded_blob:!0,data:r,type:n.type})},r.readAsBinaryString(n)})));var n})):t})).then((function(t){R(r._dbInfo,g,(function(i,a){if(i)return o(i);try{var s=a.objectStore(r._dbInfo.storeName);null===t&&(t=void 0);var c=s.put(t,e);a.oncomplete=function(){void 0===t&&(t=null),n(t)},a.onabort=a.onerror=function(){var e=c.error?c.error:c.transaction.error;o(e)}}catch(e){o(e)}}))})).catch(o)}));return s(o,n),o},removeItem:function(e,t){var n=this;e=u(e);var r=new a((function(t,r){n.ready().then((function(){R(n._dbInfo,g,(function(o,i){if(o)return r(o);try{var a=i.objectStore(n._dbInfo.storeName).delete(e);i.oncomplete=function(){t()},i.onerror=function(){r(a.error)},i.onabort=function(){var e=a.error?a.error:a.transaction.error;r(e)}}catch(e){r(e)}}))})).catch(r)}));return s(r,t),r},clear:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){R(t._dbInfo,g,(function(r,o){if(r)return n(r);try{var i=o.objectStore(t._dbInfo.storeName).clear();o.oncomplete=function(){e()},o.onabort=o.onerror=function(){var e=i.error?i.error:i.transaction.error;n(e)}}catch(e){n(e)}}))})).catch(n)}));return s(n,e),n},length:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){R(t._dbInfo,p,(function(r,o){if(r)return n(r);try{var i=o.objectStore(t._dbInfo.storeName).count();i.onsuccess=function(){e(i.result)},i.onerror=function(){n(i.error)}}catch(e){n(e)}}))})).catch(n)}));return s(n,e),n},key:function(e,t){var n=this,r=new a((function(t,r){e<0?t(null):n.ready().then((function(){R(n._dbInfo,p,(function(o,i){if(o)return r(o);try{var a=i.objectStore(n._dbInfo.storeName),s=!1,c=a.openKeyCursor();c.onsuccess=function(){var n=c.result;n?0===e||s?t(n.key):(s=!0,n.advance(e)):t(null)},c.onerror=function(){r(c.error)}}catch(e){r(e)}}))})).catch(r)}));return s(r,t),r},keys:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){R(t._dbInfo,p,(function(r,o){if(r)return n(r);try{var i=o.objectStore(t._dbInfo.storeName).openKeyCursor(),a=[];i.onsuccess=function(){var t=i.result;t?(a.push(t.key),t.continue()):e(a)},i.onerror=function(){n(i.error)}}catch(e){n(e)}}))})).catch(n)}));return s(n,e),n},dropInstance:function(e,t){t=d.apply(this,arguments);var n,r=this.config();if((e="function"!=typeof e&&e||{}).name||(e.name=e.name||r.name,e.storeName=e.storeName||r.storeName),e.name){var i=e.name===r.name&&this._dbInfo.db?a.resolve(this._dbInfo.db):I(e).then((function(t){var n=h[e.name],r=n.forages;n.db=t;for(var o=0;o<r.length;o++)r[o]._dbInfo.db=t;return t}));n=e.storeName?i.then((function(t){if(t.objectStoreNames.contains(e.storeName)){var n=t.version+1;b(e);var r=h[e.name],i=r.forages;t.close();for(var s=0;s<i.length;s++){var c=i[s];c._dbInfo.db=null,c._dbInfo.version=n}var u=new a((function(t,r){var i=o.open(e.name,n);i.onerror=function(e){i.result.close(),r(e)},i.onupgradeneeded=function(){i.result.deleteObjectStore(e.storeName)},i.onsuccess=function(){var e=i.result;e.close(),t(e)}}));return u.then((function(e){r.db=e;for(var t=0;t<i.length;t++){var n=i[t];n._dbInfo.db=e,w(n._dbInfo)}})).catch((function(t){throw(_(e,t)||a.resolve()).catch((function(){})),t}))}})):i.then((function(t){b(e);var n=h[e.name],r=n.forages;t.close();for(var i=0;i<r.length;i++)r[i]._dbInfo.db=null;var s=new a((function(t,n){var r=o.deleteDatabase(e.name);r.onerror=function(){var e=r.result;e&&e.close(),n(r.error)},r.onblocked=function(){console.warn('dropInstance blocked for database "'+e.name+'" until all open connections are closed')},r.onsuccess=function(){var e=r.result;e&&e.close(),t(e)}}));return s.then((function(e){n.db=e;for(var t=0;t<r.length;t++)w(r[t]._dbInfo)})).catch((function(t){throw(_(e,t)||a.resolve()).catch((function(){})),t}))}))}else n=a.reject("Invalid arguments");return s(n,t),n}};var N="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",j=/^~~local_forage_type~([^~]+)~/,T="__lfsc__:",k="arbf",W="blob",D="si08",B="ui08",x="uic8",L="si16",U="si32",H="ur16",F="ui32",G="fl32",z="fl64",K=Object.prototype.toString;function V(e){var t,n,r,o,i,a=.75*e.length,s=e.length,c=0;"="===e[e.length-1]&&(a--,"="===e[e.length-2]&&a--);var u=new ArrayBuffer(a),d=new Uint8Array(u);for(t=0;t<s;t+=4)n=N.indexOf(e[t]),r=N.indexOf(e[t+1]),o=N.indexOf(e[t+2]),i=N.indexOf(e[t+3]),d[c++]=n<<2|r>>4,d[c++]=(15&r)<<4|o>>2,d[c++]=(3&o)<<6|63&i;return u}function Q(e){var t,n=new Uint8Array(e),r="";for(t=0;t<n.length;t+=3)r+=N[n[t]>>2],r+=N[(3&n[t])<<4|n[t+1]>>4],r+=N[(15&n[t+1])<<2|n[t+2]>>6],r+=N[63&n[t+2]];return n.length%3==2?r=r.substring(0,r.length-1)+"=":n.length%3==1&&(r=r.substring(0,r.length-2)+"=="),r}var J={serialize:function(e,t){var n="";if(e&&(n=K.call(e)),e&&("[object ArrayBuffer]"===n||e.buffer&&"[object ArrayBuffer]"===K.call(e.buffer))){var r,o=T;e instanceof ArrayBuffer?(r=e,o+=k):(r=e.buffer,"[object Int8Array]"===n?o+=D:"[object Uint8Array]"===n?o+=B:"[object Uint8ClampedArray]"===n?o+=x:"[object Int16Array]"===n?o+=L:"[object Uint16Array]"===n?o+=H:"[object Int32Array]"===n?o+=U:"[object Uint32Array]"===n?o+=F:"[object Float32Array]"===n?o+=G:"[object Float64Array]"===n?o+=z:t(new Error("Failed to get type for BinaryArray"))),t(o+Q(r))}else if("[object Blob]"===n){var i=new FileReader;i.onload=function(){var n="~~local_forage_type~"+e.type+"~"+Q(this.result);t(T+W+n)},i.readAsArrayBuffer(e)}else try{t(JSON.stringify(e))}catch(n){console.error("Couldn't convert value into a JSON string: ",e),t(null,n)}},deserialize:function(e){if(e.substring(0,9)!==T)return JSON.parse(e);var t,n=e.substring(13),r=e.substring(9,13);if(r===W&&j.test(n)){var o=n.match(j);t=o[1],n=n.substring(o[0].length)}var a=V(n);switch(r){case k:return a;case W:return i([a],{type:t});case D:return new Int8Array(a);case B:return new Uint8Array(a);case x:return new Uint8ClampedArray(a);case L:return new Int16Array(a);case H:return new Uint16Array(a);case U:return new Int32Array(a);case F:return new Uint32Array(a);case G:return new Float32Array(a);case z:return new Float64Array(a);default:throw new Error("Unkown type: "+r)}},stringToBuffer:V,bufferToString:Q};function X(e,t,n,r){e.executeSql("CREATE TABLE IF NOT EXISTS "+t.storeName+" (id INTEGER PRIMARY KEY, key unique, value)",[],n,r)}function q(e,t,n,r,o,i){e.executeSql(n,r,o,(function(e,a){a.code===a.SYNTAX_ERR?e.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name = ?",[t.storeName],(function(e,s){s.rows.length?i(e,a):X(e,t,(function(){e.executeSql(n,r,o,i)}),i)}),i):i(e,a)}),i)}function Y(e,t,n,r){var o=this;e=u(e);var i=new a((function(i,a){o.ready().then((function(){void 0===t&&(t=null);var s=t,c=o._dbInfo;c.serializer.serialize(t,(function(t,u){u?a(u):c.db.transaction((function(n){q(n,c,"INSERT OR REPLACE INTO "+c.storeName+" (key, value) VALUES (?, ?)",[e,t],(function(){i(s)}),(function(e,t){a(t)}))}),(function(t){if(t.code===t.QUOTA_ERR){if(r>0)return void i(Y.apply(o,[e,s,n,r-1]));a(t)}}))}))})).catch(a)}));return s(i,n),i}var $={_driver:"webSQLStorage",_initStorage:function(e){var t=this,n={db:null};if(e)for(var r in e)n[r]="string"!=typeof e[r]?e[r].toString():e[r];var o=new a((function(e,r){try{n.db=openDatabase(n.name,String(n.version),n.description,n.size)}catch(e){return r(e)}n.db.transaction((function(o){X(o,n,(function(){t._dbInfo=n,e()}),(function(e,t){r(t)}))}),r)}));return n.serializer=J,o},_support:"function"==typeof openDatabase,iterate:function(e,t){var n=this,r=new a((function(t,r){n.ready().then((function(){var o=n._dbInfo;o.db.transaction((function(n){q(n,o,"SELECT * FROM "+o.storeName,[],(function(n,r){for(var i=r.rows,a=i.length,s=0;s<a;s++){var c=i.item(s),u=c.value;if(u&&(u=o.serializer.deserialize(u)),void 0!==(u=e(u,c.key,s+1)))return void t(u)}t()}),(function(e,t){r(t)}))}))})).catch(r)}));return s(r,t),r},getItem:function(e,t){var n=this;e=u(e);var r=new a((function(t,r){n.ready().then((function(){var o=n._dbInfo;o.db.transaction((function(n){q(n,o,"SELECT * FROM "+o.storeName+" WHERE key = ? LIMIT 1",[e],(function(e,n){var r=n.rows.length?n.rows.item(0).value:null;r&&(r=o.serializer.deserialize(r)),t(r)}),(function(e,t){r(t)}))}))})).catch(r)}));return s(r,t),r},setItem:function(e,t,n){return Y.apply(this,[e,t,n,1])},removeItem:function(e,t){var n=this;e=u(e);var r=new a((function(t,r){n.ready().then((function(){var o=n._dbInfo;o.db.transaction((function(n){q(n,o,"DELETE FROM "+o.storeName+" WHERE key = ?",[e],(function(){t()}),(function(e,t){r(t)}))}))})).catch(r)}));return s(r,t),r},clear:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){var r=t._dbInfo;r.db.transaction((function(t){q(t,r,"DELETE FROM "+r.storeName,[],(function(){e()}),(function(e,t){n(t)}))}))})).catch(n)}));return s(n,e),n},length:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){var r=t._dbInfo;r.db.transaction((function(t){q(t,r,"SELECT COUNT(key) as c FROM "+r.storeName,[],(function(t,n){var r=n.rows.item(0).c;e(r)}),(function(e,t){n(t)}))}))})).catch(n)}));return s(n,e),n},key:function(e,t){var n=this,r=new a((function(t,r){n.ready().then((function(){var o=n._dbInfo;o.db.transaction((function(n){q(n,o,"SELECT key FROM "+o.storeName+" WHERE id = ? LIMIT 1",[e+1],(function(e,n){var r=n.rows.length?n.rows.item(0).key:null;t(r)}),(function(e,t){r(t)}))}))})).catch(r)}));return s(r,t),r},keys:function(e){var t=this,n=new a((function(e,n){t.ready().then((function(){var r=t._dbInfo;r.db.transaction((function(t){q(t,r,"SELECT key FROM "+r.storeName,[],(function(t,n){for(var r=[],o=0;o<n.rows.length;o++)r.push(n.rows.item(o).key);e(r)}),(function(e,t){n(t)}))}))})).catch(n)}));return s(n,e),n},dropInstance:function(e,t){t=d.apply(this,arguments);var n=this.config();(e="function"!=typeof e&&e||{}).name||(e.name=e.name||n.name,e.storeName=e.storeName||n.storeName);var r,o=this;return s(r=e.name?new a((function(t){var r;r=e.name===n.name?o._dbInfo.db:openDatabase(e.name,"","",0),e.storeName?t({db:r,storeNames:[e.storeName]}):t(function(e){return new a((function(t,n){e.transaction((function(r){r.executeSql("SELECT name FROM sqlite_master WHERE type='table' AND name <> '__WebKitDatabaseInfoTable__'",[],(function(n,r){for(var o=[],i=0;i<r.rows.length;i++)o.push(r.rows.item(i).name);t({db:e,storeNames:o})}),(function(e,t){n(t)}))}),(function(e){n(e)}))}))}(r))})).then((function(e){return new a((function(t,n){e.db.transaction((function(r){function o(e){return new a((function(t,n){r.executeSql("DROP TABLE IF EXISTS "+e,[],(function(){t()}),(function(e,t){n(t)}))}))}for(var i=[],s=0,c=e.storeNames.length;s<c;s++)i.push(o(e.storeNames[s]));a.all(i).then((function(){t()})).catch((function(e){n(e)}))}),(function(e){n(e)}))}))})):a.reject("Invalid arguments"),t),r}};function Z(e,t){var n=e.name+"/";return e.storeName!==t.storeName&&(n+=e.storeName+"/"),n}function ee(){return!function(){var e="_localforage_support_test";try{return localStorage.setItem(e,!0),localStorage.removeItem(e),!1}catch(e){return!0}}()||localStorage.length>0}var te={_driver:"localStorageWrapper",_initStorage:function(e){var t={};if(e)for(var n in e)t[n]=e[n];return t.keyPrefix=Z(e,this._defaultConfig),ee()?(this._dbInfo=t,t.serializer=J,a.resolve()):a.reject()},_support:function(){try{return"undefined"!=typeof localStorage&&"setItem"in localStorage&&!!localStorage.setItem}catch(e){return!1}}(),iterate:function(e,t){var n=this,r=n.ready().then((function(){for(var t=n._dbInfo,r=t.keyPrefix,o=r.length,i=localStorage.length,a=1,s=0;s<i;s++){var c=localStorage.key(s);if(0===c.indexOf(r)){var u=localStorage.getItem(c);if(u&&(u=t.serializer.deserialize(u)),void 0!==(u=e(u,c.substring(o),a++)))return u}}}));return s(r,t),r},getItem:function(e,t){var n=this;e=u(e);var r=n.ready().then((function(){var t=n._dbInfo,r=localStorage.getItem(t.keyPrefix+e);return r&&(r=t.serializer.deserialize(r)),r}));return s(r,t),r},setItem:function(e,t,n){var r=this;e=u(e);var o=r.ready().then((function(){void 0===t&&(t=null);var n=t;return new a((function(o,i){var a=r._dbInfo;a.serializer.serialize(t,(function(t,r){if(r)i(r);else try{localStorage.setItem(a.keyPrefix+e,t),o(n)}catch(e){"QuotaExceededError"!==e.name&&"NS_ERROR_DOM_QUOTA_REACHED"!==e.name||i(e),i(e)}}))}))}));return s(o,n),o},removeItem:function(e,t){var n=this;e=u(e);var r=n.ready().then((function(){var t=n._dbInfo;localStorage.removeItem(t.keyPrefix+e)}));return s(r,t),r},clear:function(e){var t=this,n=t.ready().then((function(){for(var e=t._dbInfo.keyPrefix,n=localStorage.length-1;n>=0;n--){var r=localStorage.key(n);0===r.indexOf(e)&&localStorage.removeItem(r)}}));return s(n,e),n},length:function(e){var t=this.keys().then((function(e){return e.length}));return s(t,e),t},key:function(e,t){var n=this,r=n.ready().then((function(){var t,r=n._dbInfo;try{t=localStorage.key(e)}catch(e){t=null}return t&&(t=t.substring(r.keyPrefix.length)),t}));return s(r,t),r},keys:function(e){var t=this,n=t.ready().then((function(){for(var e=t._dbInfo,n=localStorage.length,r=[],o=0;o<n;o++){var i=localStorage.key(o);0===i.indexOf(e.keyPrefix)&&r.push(i.substring(e.keyPrefix.length))}return r}));return s(n,e),n},dropInstance:function(e,t){if(t=d.apply(this,arguments),!(e="function"!=typeof e&&e||{}).name){var n=this.config();e.name=e.name||n.name,e.storeName=e.storeName||n.storeName}var r,o=this;return r=e.name?new a((function(t){e.storeName?t(Z(e,o._defaultConfig)):t(e.name+"/")})).then((function(e){for(var t=localStorage.length-1;t>=0;t--){var n=localStorage.key(t);0===n.indexOf(e)&&localStorage.removeItem(n)}})):a.reject("Invalid arguments"),s(r,t),r}},ne=function(e,t){for(var n=e.length,r=0;r<n;){if((o=e[r])===(i=t)||"number"==typeof o&&"number"==typeof i&&isNaN(o)&&isNaN(i))return!0;r++}var o,i;return!1},re=Array.isArray||function(e){return"[object Array]"===Object.prototype.toString.call(e)},oe={},ie={},ae={INDEXEDDB:C,WEBSQL:$,LOCALSTORAGE:te},se=[ae.INDEXEDDB._driver,ae.WEBSQL._driver,ae.LOCALSTORAGE._driver],ce=["dropInstance"],ue=["clear","getItem","iterate","key","keys","length","removeItem","setItem"].concat(ce),de={description:"",driver:se.slice(),name:"localforage",size:4980736,storeName:"keyvaluepairs",version:1};function le(e,t){e[t]=function(){var n=arguments;return e.ready().then((function(){return e[t].apply(e,n)}))}}function fe(){for(var e=1;e<arguments.length;e++){var t=arguments[e];if(t)for(var n in t)t.hasOwnProperty(n)&&(re(t[n])?arguments[0][n]=t[n].slice():arguments[0][n]=t[n])}return arguments[0]}var he=function(){function e(t){for(var n in function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(this,e),ae)if(ae.hasOwnProperty(n)){var r=ae[n],o=r._driver;this[n]=o,oe[o]||this.defineDriver(r)}this._defaultConfig=fe({},de),this._config=fe({},this._defaultConfig,t),this._driverSet=null,this._initDriver=null,this._ready=!1,this._dbInfo=null,this._wrapLibraryMethodsWithReady(),this.setDriver(this._config.driver).catch((function(){}))}return e.prototype.config=function(e){if("object"===(void 0===e?"undefined":r(e))){if(this._ready)return new Error("Can't call config() after localforage has been used.");for(var t in e){if("storeName"===t&&(e[t]=e[t].replace(/\W/g,"_")),"version"===t&&"number"!=typeof e[t])return new Error("Database version must be a number.");this._config[t]=e[t]}return!("driver"in e)||!e.driver||this.setDriver(this._config.driver)}return"string"==typeof e?this._config[e]:this._config},e.prototype.defineDriver=function(e,t,n){var r=new a((function(t,n){try{var r=e._driver,o=new Error("Custom driver not compliant; see https://mozilla.github.io/localForage/#definedriver");if(!e._driver)return void n(o);for(var i=ue.concat("_initStorage"),c=0,u=i.length;c<u;c++){var d=i[c];if((!ne(ce,d)||e[d])&&"function"!=typeof e[d])return void n(o)}!function(){for(var t=function(e){return function(){var t=new Error("Method "+e+" is not implemented by the current driver"),n=a.reject(t);return s(n,arguments[arguments.length-1]),n}},n=0,r=ce.length;n<r;n++){var o=ce[n];e[o]||(e[o]=t(o))}}();var l=function(n){oe[r]&&console.info("Redefining LocalForage driver: "+r),oe[r]=e,ie[r]=n,t()};"_support"in e?e._support&&"function"==typeof e._support?e._support().then(l,n):l(!!e._support):l(!0)}catch(e){n(e)}}));return c(r,t,n),r},e.prototype.driver=function(){return this._driver||null},e.prototype.getDriver=function(e,t,n){var r=oe[e]?a.resolve(oe[e]):a.reject(new Error("Driver not found."));return c(r,t,n),r},e.prototype.getSerializer=function(e){var t=a.resolve(J);return c(t,e),t},e.prototype.ready=function(e){var t=this,n=t._driverSet.then((function(){return null===t._ready&&(t._ready=t._initDriver()),t._ready}));return c(n,e,e),n},e.prototype.setDriver=function(e,t,n){var r=this;re(e)||(e=[e]);var o=this._getSupportedDrivers(e);function i(){r._config.driver=r.driver()}function s(e){return r._extend(e),i(),r._ready=r._initStorage(r._config),r._ready}var u=null!==this._driverSet?this._driverSet.catch((function(){return a.resolve()})):a.resolve();return this._driverSet=u.then((function(){var e=o[0];return r._dbInfo=null,r._ready=null,r.getDriver(e).then((function(e){r._driver=e._driver,i(),r._wrapLibraryMethodsWithReady(),r._initDriver=function(e){return function(){var t=0;return function n(){for(;t<e.length;){var o=e[t];return t++,r._dbInfo=null,r._ready=null,r.getDriver(o).then(s).catch(n)}i();var c=new Error("No available storage method found.");return r._driverSet=a.reject(c),r._driverSet}()}}(o)}))})).catch((function(){i();var e=new Error("No available storage method found.");return r._driverSet=a.reject(e),r._driverSet})),c(this._driverSet,t,n),this._driverSet},e.prototype.supports=function(e){return!!ie[e]},e.prototype._extend=function(e){fe(this,e)},e.prototype._getSupportedDrivers=function(e){for(var t=[],n=0,r=e.length;n<r;n++){var o=e[n];this.supports(o)&&t.push(o)}return t},e.prototype._wrapLibraryMethodsWithReady=function(){for(var e=0,t=ue.length;e<t;e++)le(this,ue[e])},e.prototype.createInstance=function(t){return new e(t)},e}(),ve=new he;t.exports=ve},{3:3}]},{},[4])(4)},939:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ApiConstants=void 0;class n{}t.ApiConstants=n,n.CONFIG_LAUNCH_AT_STARTUP="CONFIG_LAUNCH_AT_STARTUP",n.CONFIG_WIDGET_TITLE_COLOR="CONFIG_WIDGET_TITLE_COLOR",n.CONFIG_DEBUG_MODE="cn.widgetjs.config.debug",n.CONFIG_GRID_SIZE="cn.widgetjs.config.grid.size",n.SHORTCUT_PIN_DESKTOP_WIDGETS="cn.widgetjs.config.shortcut.pin_desktop_widgets"},13:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.AppApiEvent=t.AppApi=void 0;const r=n(210),o=n(54);var i;!function(e){e.CONFIG_CHANGED="event::cn.widgetjs.core.app.config.changed"}(i||(i={})),t.AppApiEvent=i;class a extends o.BaseApi{getChannel(){return r.Channel.APP}async setConfig(e,t){return await this.invokeMethod("setConfig",e,t)}async getConfig(e,t){const n=await this.invokeMethod("getConfig",e);return null==n?t:"boolean"==typeof t?"true"===n:"number"==typeof t?Number(n):n}async openAddWidgetWindow(){return this.invokeMethod("openAddWidgetWindow")}async getVersion(){return this.invokeMethod("getVersion")}async getPreloadPath(){return this.invokeMethod("getPreloadPath")}async openSettingWindow(){return this.invokeMethod("openSettingWindow")}}const s=new a;t.AppApi=s},54:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BaseApi=void 0;const r=n(186);t.BaseApi=class{async invokeMethod(e,...t){return await r.ElectronUtils.invokeMethod(this.getChannel(),e,...t)}async invoke(...e){return await r.ElectronUtils.invoke(this.getChannel(),...e)}}},386:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BroadcastApi=t.BroadcastApiImpl=void 0;const r=n(210),o=n(54);class i extends o.BaseApi{async send(e){await this.invokeMethod("send",e)}async register(...e){await this.invokeMethod("register",e)}async unregister(...e){await this.invokeMethod("unregister",e)}getChannel(){return r.Channel.BROADCAST}}t.BroadcastApiImpl=i;const a=new i;t.BroadcastApi=a},105:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BrowserWindowApiEvent=t.BrowserWindowApi=t.BrowserWindowApiImpl=void 0;const r=n(210),o=n(54);var i;!function(e){e.BLUR="event::cn.widgetjs.core.browser-window.blur",e.FOCUS="event::cn.widgetjs.core.browser-window.focus"}(i||(i={})),t.BrowserWindowApiEvent=i;class a extends o.BaseApi{getChannel(){return r.Channel.BROWSER_WINDOW}async setIgnoreMouseEvent(e){await this.invokeMethod("setIgnoreMouseEvent",e)}async show(){await this.invokeMethod("show",!0)}async showInactive(){await this.invokeMethod("showInactive",!0)}async hide(){await this.invokeMethod("hide",!1)}async center(){await this.invokeMethod("center",!1)}async setAlwaysOnTop(e){await this.invokeMethod("setAlwaysOnTop",e)}async isAlwaysOnTop(){return await this.invokeMethod("isAlwaysOnTop")}async openUrl(e){await this.invokeMethod("openUrl",e)}async moveTop(){await this.invokeMethod("moveTop")}async openDevTools(){await this.invokeMethod("openDevTools")}async setPosition(e,t,n){await this.invokeMethod("setPosition",e,t,n)}async getPosition(){return await this.invokeMethod("getPosition")}async blur(){return await this.invokeMethod("blur")}async focus(){return await this.invokeMethod("focus")}async setResizable(e){return await this.invokeMethod("setResizable",e)}async getBounds(){return await this.invokeMethod("getBounds")}async setBounds(e,t){return await this.invokeMethod("setBounds",e,t)}async alignToScreen(e){return await this.invokeMethod("alignToScreen",e)}async startDraggingWindow(){return await this.invokeMethod("startDraggingWindow")}async stopDraggingWindow(){return await this.invokeMethod("stopDraggingWindow")}async existsByUrl(e){return await this.invokeMethod("existsByUrl",e)}}t.BrowserWindowApiImpl=a;const s=new a;t.BrowserWindowApi=s},210:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.Channel=void 0,(n=t.Channel||(t.Channel={})).NOTIFICATION="channel::cn.widgetjs.core.notification",n.BROWSER_WINDOW="channel::cn.widgetjs.core.browser_window",n.BROADCAST="channel::cn.widgetjs.core.broadcast",n.WIDGET="channel::cn.widgetjs.core.widget",n.HOSTED_WIDGET="channel::cn.widgetjs.core.hosted_widget",n.APP="channel::cn.widgetjs.core.app",n.DIALOG="channel::cn.widgetjs.core.dialog",n.CLIPBOARD="channel::cn.widgetjs.core.clipboard",n.SCREEN="channel::cn.widgetjs.core.screen",n.SHORTCUT="channel::cn.widgetjs.core.shortcut",n.LOG="channel::cn.widgetjs.core.log",n.DEVICE="channel::cn.widgetjs.core.device",n.MOUSE="channel::cn.widgetjs.core.mouse",n.KEYBOARD="channel::cn.widgetjs.core.keyboard"},32:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ClipboardApiEvent=t.ClipboardApi=void 0;const r=n(210),o=n(54);var i;!function(e){e.CHANGED="clipboard-changed"}(i||(i={})),t.ClipboardApiEvent=i;class a extends o.BaseApi{async getSelectedText(){return this.invokeMethod("getSelectedText")}async getText(){return this.invokeMethod("getText")}getChannel(){return r.Channel.CLIPBOARD}}const s=new a;t.ClipboardApi=s},786:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DeviceApi=t.DeviceApiImpl=void 0;const r=n(210),o=n(54);class i extends o.BaseApi{async getCursorScreenPoint(){return this.invokeMethod("getCursorScreenPoint")}async isAllKeyReleased(){return this.invokeMethod("isAllKeyReleased")}getChannel(){return r.Channel.DEVICE}}t.DeviceApiImpl=i;const a=new i;t.DeviceApi=a},326:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.DialogApi=void 0;const r=n(210),o=n(54);class i extends o.BaseApi{getChannel(){return r.Channel.DIALOG}pickFile(e){return this.invokeMethod("pickFile",e)}}const a=new i;t.DialogApi=a},444:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ElectronApi=void 0;const r=n(186);t.ElectronApi=class{static async addIpcListener(e,t){var n;await(null===(n=r.ElectronUtils.getAPI())||void 0===n?void 0:n.addIpcListener(e,t))}static async removeIpcListener(e){var t;await(null===(t=r.ElectronUtils.getAPI())||void 0===t?void 0:t.removeIpcListener(e))}}},164:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HostedWidgetApi=t.HostedWidgetApiImpl=void 0;const r=n(210),o=n(54);class i extends o.BaseApi{getChannel(){return r.Channel.HOSTED_WIDGET}async removeHostedWidget(e){return this.invokeMethod("removeHostedWidget",e)}addWidget(e,t){return this.invokeMethod("addWidget",e,t)}async removeHostedWidgetByName(e){return this.invokeMethod("removeHostedWidgetByName",e)}async getHostedWidgets(e){return this.invokeMethod("getHostedWidgets",e)}async getHostedWidget(e){return this.invokeMethod("getHostedWidget",e)}async openDevTools(e){return this.invokeMethod("openDevTools",e)}async openConfigRoute(e,t){return this.invokeMethod("openConfigRoute",e,t)}async registerActiveShortcut(e,t){return this.invokeMethod("registerActiveShortcut",e,t)}async setProxy(e,t){return this.invokeMethod("setProxy",e,t)}}t.HostedWidgetApiImpl=i;const a=new i;t.HostedWidgetApi=a},190:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.LogApi=void 0;const r=n(210),o=n(54);class i extends o.BaseApi{getChannel(){return r.Channel.LOG}info(...e){console.info(...e),this.invokeMethod("info",...e)}error(...e){console.error(...e),this.invokeMethod("error",...e)}warn(...e){console.warn(...e),this.invokeMethod("warn",...e)}log(...e){console.log(...e),this.invokeMethod("log",...e)}}const a=new i;t.LogApi=a},288:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.NotificationApiEvent=t.NotificationApi=void 0;const r=n(451),o=n(210),i=n(54);var a;!function(e){e.CONFIRM="event::cn.widgetjs.core.notification.confirm",e.CANCEL="event::cn.widgetjs.core.notification.cancel",e.HIDE="event::cn.widgetjs.core.notification.hide"}(a||(a={})),t.NotificationApiEvent=a;class s extends i.BaseApi{async call(e,t,n,o,i){await this.invoke(new r.AppNotification({avatar:e,audio:t,message:o,title:n,duration:-1,lyric:i,type:"call"}))}async send(e){return this.invokeMethod("send",e)}async reminder(e,t,n,o,i,a,s,c=5e3){return await this.send(new r.AppNotification({icon:n,message:t,title:e,duration:c,cancelButtonText:o,confirmButtonText:i,cancelBroadcast:a,confirmBroadcast:s,type:"reminder"}))}async advanceCountdown(e,t,n){return await this.send(new r.AppNotification({title:n,message:e,targetTime:t,type:"advance-countdown"}))}async countdown(e,t){await this.send(new r.AppNotification({message:e,targetTime:t,backgroundColor:"rgba(0,0,0,0.5)",duration:-1,type:"countdown"}))}async success(e,t=5e3){await this.send(new r.AppNotification({message:e,type:"success",icon:"check_circle_line",duration:t}))}async error(e,t=5e3){await this.send(new r.AppNotification({message:e,type:"error",icon:"close_circle_line",duration:t}))}async warning(e,t=5e3){await this.send(new r.AppNotification({message:e,type:"warning",icon:"warning_line",duration:t}))}async info(e,t=5e3){await this.send(new r.AppNotification({message:e,type:"info",icon:"information_line",duration:t}))}async hide(){await this.invokeMethod("hide")}getChannel(){return o.Channel.NOTIFICATION}}const c=new s;t.NotificationApi=c},388:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ShortcutApiEvent=t.ShortcutApi=void 0;const r=n(54),o=n(210);var i;!function(e){e.TRIGGERED="channel::cn.widgetjs.core.shortcut.triggered"}(i||(i={})),t.ShortcutApiEvent=i;class a extends r.BaseApi{getChannel(){return o.Channel.SHORTCUT}async register(e){return await this.invokeMethod("register",e)}async unregister(e){return await this.invokeMethod("unregister",e)}}const s=new a;t.ShortcutApi=s},287:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WidgetApiEvent=t.WidgetApi=void 0;const r=n(713),o=n(611),i=n(210),a=n(889),s=n(54);var c;!function(e){e.DATA_CHANGED="event::cn.widgetjs.core.widget.data-changed",e.EDIT_DESKTOP_WIDGETS="event::cn.widgetjs.core.widget.desktop.edit"}(c||(c={})),t.WidgetApiEvent=c;class u extends s.BaseApi{getChannel(){return i.Channel.WIDGET}async registerWidgets(e){return this.invokeMethod("registerWidgets",JSON.stringify(e))}async registerWidgetPackage(e){return this.invokeMethod("registerWidgetPackage",JSON.stringify(e))}async getWidgets(){const e=await this.invokeMethod("getWidgets"),t=[];if(e)for(const n of e)t.push(r.Widget.parseObject(n));return t}async getWidgetPackages(){return await this.invokeMethod("getWidgetPackages")}async getWidget(e){return r.Widget.parseObject(await this.invokeMethod("getWidget",e))}async getWidgetPackage(e){return o.WidgetPackage.parseObject(await this.invokeMethod("getWidgetPackage",e))}async getWidgetConfigUrl(e,t){const n=await this.getWidget(e);if(!n)return null;const r=n.getConfigRoute();if(!r)return null;const o=await this.getWidgetPackage(n.packageName);return o?a.UrlUtils.getWidgetUrl(r.url,o,t):null}async getWidgetUrl(e,t){const n=await this.getWidget(e);if(!n)return null;const r=n.getIndexRoute(),o=await this.getWidgetPackage(n.packageName);return o?a.UrlUtils.getWidgetUrl(r.url,o,t):null}async getWidgetPackageIndexUrl(e,t){const n=await this.getWidgetPackage(e);return n?n.getIndexUrl(t):null}async getWidgetPackageUrl(e){const t=await this.getWidgetPackage(e);return t?t.url:null}}const d=new u;t.WidgetApi=d},159:function(e,t,n){"use strict";var r=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0}),t.WidgetDataApi=void 0;const o=r(n(680)),i=n(833),a=n(386),s=n(287);class c{static async save(e){let t=this.getStore(e.name),n=JSON.stringify(e);const r=await t.setItem(this.getKey(e.name,e.id),n),o=new i.BroadcastEvent({event:s.WidgetApiEvent.DATA_CHANGED,payload:{name:e.name,json:n}});return await a.BroadcastApi.send(o),r}static getStore(e){if(this.stores.has(e))return this.stores.get(e);const t=o.default.createInstance({name:e});return this.stores.set(e,t),t}static async saveByName(e,t={sendBroadcast:!0}){const n=this.getStore(e.name),r=JSON.stringify(e),o=await n.setItem(e.name,r);if(null==t?void 0:t.sendBroadcast){const t=new i.BroadcastEvent({event:s.WidgetApiEvent.DATA_CHANGED,payload:{name:e.name,json:r}});await a.BroadcastApi.send(t)}return o}static async findByName(e,t){let n=this.getStore(e),r=await n.getItem(e);if(r){const n=new t(e);return n.parseJSON(JSON.parse(r)),n}}static async find(e,t,n){let r=this.getStore(e),o=await r.getItem(this.getKey(e,t));if(o){const r=new n(e,t);return r.parseJSON(JSON.parse(o)),r}}static getKey(e,t){return`${e}@${t}`}}t.WidgetDataApi=c,c.stores=new Map},347:function(e,t,n){"use strict";var r=this&&this.__createBinding||(Object.create?function(e,t,n,r){void 0===r&&(r=n);var o=Object.getOwnPropertyDescriptor(t,n);o&&!("get"in o?!t.__esModule:o.writable||o.configurable)||(o={enumerable:!0,get:function(){return t[n]}}),Object.defineProperty(e,r,o)}:function(e,t,n,r){void 0===r&&(r=n),e[r]=t[n]}),o=this&&this.__exportStar||function(e,t){for(var n in e)"default"===n||Object.prototype.hasOwnProperty.call(t,n)||r(t,e,n)};Object.defineProperty(t,"__esModule",{value:!0}),o(n(713),t),o(n(833),t),o(n(647),t),o(n(905),t),o(n(859),t),o(n(451),t),o(n(538),t),o(n(314),t),o(n(304),t),o(n(511),t),o(n(53),t),o(n(611),t),o(n(444),t),o(n(159),t),o(n(105),t),o(n(319),t),o(n(288),t),o(n(164),t),o(n(786),t),o(n(210),t),o(n(32),t),o(n(287),t),o(n(939),t),o(n(388),t),o(n(386),t),o(n(13),t),o(n(326),t),o(n(186),t),o(n(889),t),o(n(851),t),o(n(190),t),o(n(410),t)},319:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},451:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.AppNotification=t.NotificationSize=void 0,function(e){e.SMALL="small",e.NORMAL="normal",e.LARGE="large"}(n=t.NotificationSize||(t.NotificationSize={})),t.AppNotification=class{constructor(e){var t,r,o,i,a;this.type="info",this.createdAt=(new Date).toISOString(),this.type=null!==(t=e.type)&&void 0!==t?t:"info",this.title=e.title,this.message=e.message,this.targetTime=e.targetTime,this.duration=null!==(r=e.duration)&&void 0!==r?r:5e3,this.icon=e.icon,this.color=null!==(o=e.color)&&void 0!==o?o:"#5D8AC8",this.confirmButtonText=e.confirmButtonText,this.cancelButtonText=e.cancelButtonText,this.cancelBroadcast=e.cancelBroadcast,this.confirmBroadcast=e.confirmBroadcast,this.size=null!==(i=e.size)&&void 0!==i?i:n.NORMAL,this.audio=e.audio,this.avatar=e.avatar,this.lyric=e.lyric,this.backgroundColor=null!==(a=e.backgroundColor)&&void 0!==a?a:"#000000"}}},538:(e,t)=>{"use strict";var n;Object.defineProperty(t,"__esModule",{value:!0}),t.HostedMode=void 0,(n=t.HostedMode||(t.HostedMode={}))[n.NORMAL=1]="NORMAL",n[n.OVERLAP=16]="OVERLAP",n[n.WALLPAPER=256]="WALLPAPER",n[n.SCREEN=4096]="SCREEN",n[n.BACKGROUND=65536]="BACKGROUND",n[n.ALL=69905]="ALL"},314:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.HostedWidget=void 0;const r=n(538);t.HostedWidget=class{constructor(){this.x=0,this.y=0}isOverlap(){return(this.hostedMode&r.HostedMode.OVERLAP)>0}}},713:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WidgetKeyword=t.Widget=void 0;const r=n(538),o=n(398);class i{constructor(e){var t,n,o,i,a,s,c,u,d;this.lang="zh",this.name=e.name,this.title=e.title,this.description=e.description,this.keywords=e.keywords,this.lang=e.lang,this.width=e.width,this.height=e.height,this.movable=null===(t=e.movable)||void 0===t||t,this.permissions=null!==(n=e.permissions)&&void 0!==n?n:[],this.maxWidth=null!==(o=e.maxWidth)&&void 0!==o?o:e.width,this.maxHeight=null!==(i=e.maxHeight)&&void 0!==i?i:e.height,this.minWidth=null!==(a=e.minWidth)&&void 0!==a?a:e.width,this.minHeight=null!==(s=e.minHeight)&&void 0!==s?s:e.height,this.backgroundThrottling=null===(c=e.backgroundThrottling)||void 0===c||c,this.packageName=e.packageName,this.previewImage=e.previewImage,this.shortcut=e.shortcut,this.refreshWhenResided=null!==(u=e.refreshWhenResided)&&void 0!==u&&u,this.hideWhenBlur=null!=e.hideWhenBlur&&e.hideWhenBlur,this.supportHostedMode=null!==(d=e.supportHostedMode)&&void 0!==d?d:r.HostedMode.NORMAL|r.HostedMode.OVERLAP,this.routes=e.routes}getIndexRoute(){return this.routes.find((e=>"index"==e.name.toLowerCase()))}getConfigRoute(){return this.routes.find((e=>"config"==e.name.toLowerCase()))}isConfigurable(){return null!=this.getConfigRoute()}getTitle(e){return(0,o.getTextByLanguageCode)(this.title,e)}getDescription(e){return(0,o.getTextByLanguageCode)(this.description,e)}static parseJSON(e){const t=JSON.parse(e);return this.parseObject(t)}static parseObject(e){let t=new i({description:{},height:0,keywords:[],lang:"",name:"",routes:[],title:{},width:0});return Object.assign(t,e),t}isSupportOverlap(){return(this.supportHostedMode&r.HostedMode.OVERLAP)>0}isResizable(){return!(this.minWidth==this.width&&this.maxWidth==this.width&&this.minHeight==this.height&&this.maxHeight==this.height)}isSupportBackground(){return(this.supportHostedMode&r.HostedMode.BACKGROUND)>0}isSupportNormal(){return(this.supportHostedMode&r.HostedMode.NORMAL)>0}isSupportWallpaper(){return(this.supportHostedMode&r.HostedMode.WALLPAPER)>0}isSupportScreen(){return(this.supportHostedMode&r.HostedMode.SCREEN)>0}}var a;t.Widget=i,(a=t.WidgetKeyword||(t.WidgetKeyword={})).RECOMMEND="recommend",a.TOOLS="tools",a.EFFICIENCY="efficiency",a.PICTURE="picture",a.LIFE="life",a.SHORTCUT="shortcut",a.COUNTDOWN="countdown",a.TIMER="timer",a.INFO="info",a.DASHBOARD="dashboard"},905:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WidgetData=void 0,t.WidgetData=class{constructor(e,t){this.id=t,this.name=e}parseJSON(e){Object.assign(this,e)}}},611:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WidgetPackage=void 0;const r=n(889),o=n(398);class i{constructor(e){if(this.hash=!0,this.widgets=[],this.name=e.name,this.version=e.version,this.author=e.author,this.homepage=e.homepage,this.title=e.title,this.description=e.description,this.entry=e.entry,this.remoteEntry=e.remoteEntry,this.remotePackage=e.remotePackage,this.hash=e.hash,this.url=e.url,this.devOptions=e.devOptions,e.widgets)for(let t of e.widgets)this.widgets.push(t)}static parseJSON(e){const t=JSON.parse(e);return this.parseObject(t)}static parseObject(e){let t=new i({author:"",description:{"zh-CN":""},entry:"",hash:!1,homepage:"",name:"",title:{"zh-CN":""},url:"",version:""});return Object.assign(t,e),t}getTitle(e){return(0,o.getTextByLanguageCode)(this.title,e)}getDescription(e){return(0,o.getTextByLanguageCode)(this.description,e)}getIndexUrl(e){return r.UrlUtils.getWidgetPackageIndexUrl(this.url,this.entry,null==e?this.hash:e)}}t.WidgetPackage=i},859:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ThemeMode=t.WidgetParams=void 0;const r=n(851),o=n(94);class i{toUrlParams(){const e=new URLSearchParams,t=Object.getOwnPropertyNames(this);for(let n of t){const t=this[n];t&&e.append(i.PARAM_PREFIX+(0,o.snakeCase)(n),t.toString())}return e}getPersistKey(){return`${this.name}-${this.id}`}static fromCurrentLocation(){let e=window.location.href.split("?");if(e.length>1){let t=e[1];return this.fromObject((0,r.parseQuery)(t))}return new i}static fromLocation(e){let t=e.split("?");if(t.length>1){let e=t[1];return this.fromObject((0,r.parseQuery)(e))}return new i}static setValue(e,t,n){const r=t.replace(this.PARAM_PREFIX,"");r==i.PARAM_ID?e.id=n:r==i.PARAM_X?e.x=parseInt(n):r==i.PARAM_Y?e.y=parseInt(n):r==i.PARAM_HEIGHT?e.height=parseInt(n):r==i.PARAM_WIDTH?e.width=parseInt(n):r==i.PARAM_LANG?e.lang=n:r==i.PARAM_THEME?e.theme=n:r==i.PARAM_MODE?e.mode=parseInt(n):r==i.PARAM_RADIUS?e.radius=parseInt(n):r==i.PARAM_WIDTH_PX?e.widthPx=parseInt(n):r==i.PARAM_HEIGHT_PX?e.heightPx=parseInt(n):r==i.PARAM_NAME?e.name=n:r==i.PARAM_TITLE?e.title=n:r==i.PARAM_PREVIEW&&(e.preview="true"===n)}static fromObject(e){const t=new i,n=Object.getOwnPropertyNames(e);for(let r of n){const n=r,o=e[n];this.setValue(t,n,o)}return t}}var a;t.WidgetParams=i,i.PARAM_PREFIX="w_",i.PARAM_ID="id",i.PARAM_WIDTH="width",i.PARAM_HEIGHT="height",i.PARAM_WIDTH_PX="width_px",i.PARAM_HEIGHT_PX="height_px",i.PARAM_X="x",i.PARAM_Y="y",i.PARAM_LANG="lang",i.PARAM_THEME="theme",i.PARAM_MODE="mode",i.PARAM_RADIUS="radius",i.PARAM_NAME="name",i.PARAM_TITLE="title",i.PARAM_PREVIEW="preview",i.PARAMS=[i.PARAM_ID,i.PARAM_WIDTH,i.PARAM_HEIGHT,i.PARAM_X,i.PARAM_Y,i.PARAM_LANG,i.PARAM_THEME,i.PARAM_MODE,i.PARAM_WIDTH_PX,i.PARAM_HEIGHT_PX,i.PARAM_NAME,i.PARAM_TITLE,i.PARAM_PREVIEW],(a=t.ThemeMode||(t.ThemeMode={})).AUTO="auto",a.LIGHT="LIGHT",a.DARK="DARK"},53:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},833:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.BroadcastEvent=void 0,t.BroadcastEvent=class{constructor(e){this.event=e.event,this.sender=e.sender,this.payload=e.payload}}},511:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},647:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.WebSocketEvent=t.WebSocketEventType=void 0,(t.WebSocketEventType||(t.WebSocketEventType={})).RESISTER_WIDGETS="ws::cn.widgetjs.core.resister_widgets",t.WebSocketEvent=class{constructor(e,t){this.type=e,this.payload=t}}},304:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},410:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0})},479:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.decode=t.encodeParam=t.encodePath=t.encodeQueryKey=t.encodeQueryValue=t.encodeHash=t.PLUS_RE=void 0;const n=/#/g,r=/&/g,o=/\//g,i=/=/g,a=/\?/g;t.PLUS_RE=/\+/g;const s=/%5B/g,c=/%5D/g,u=/%5E/g,d=/%60/g,l=/%7B/g,f=/%7C/g,h=/%7D/g,v=/%20/g;function p(e){return encodeURI(""+e).replace(f,"|").replace(s,"[").replace(c,"]")}function g(e){return p(e).replace(t.PLUS_RE,"%2B").replace(v,"+").replace(n,"%23").replace(r,"%26").replace(d,"`").replace(l,"{").replace(h,"}").replace(u,"^")}function y(e){return p(e).replace(n,"%23").replace(a,"%3F")}t.encodeHash=function(e){return p(e).replace(l,"{").replace(h,"}").replace(u,"^")},t.encodeQueryValue=g,t.encodeQueryKey=function(e){return g(e).replace(i,"%3D")},t.encodePath=y,t.encodeParam=function(e){return null==e?"":y(e).replace(o,"%2F")},t.decode=function(e){try{return decodeURIComponent(""+e)}catch(e){}return""+e}},851:(e,t,n)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.stringifyQuery=t.parseQuery=void 0;const r=n(479),o=Array.isArray;t.parseQuery=function(e){const t={};if(""===e||"?"===e)return t;const n=("?"===e[0]?e.slice(1):e).split("&");for(let e=0;e<n.length;++e){const i=n[e].replace(r.PLUS_RE," "),a=i.indexOf("="),s=(0,r.decode)(a<0?i:i.slice(0,a)),c=a<0?null:(0,r.decode)(i.slice(a+1));if(s in t){let e=t[s];o(e)||(e=t[s]=[e]),e.push(c)}else t[s]=c}return t},t.stringifyQuery=function(e){let t="";for(let n in e){const i=e[n];(n=(0,r.encodeQueryKey)(n),null!=i)?(o(i)?i.map((e=>e&&(0,r.encodeQueryValue)(e))):[i&&(0,r.encodeQueryValue)(i)]).forEach((e=>{void 0!==e&&(t+=(t.length?"&":"")+n,null!=e&&(t+="="+e))})):void 0!==i&&(t+=(t.length?"&":"")+n)}return t}},186:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.ElectronUtils=void 0,t.ElectronUtils=class{static hasElectronApi(){return null!=this.getAPI()}static getAPI(){return Reflect.has(window,"electronAPI")?window.electronAPI:Reflect.has(window.parent,"electronAPI")?window.parent.electronAPI:null}static async invokeMethod(e,t,...n){var r;return null===(r=this.getAPI())||void 0===r?void 0:r.invoke(e,t,...n)}static async invoke(e,...t){var n;return null===(n=this.getAPI())||void 0===n?void 0:n.invoke(e,...t)}}},398:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getTextByLanguageCode=void 0,t.getTextByLanguageCode=function e(t,n,r=!0){let o;if(n&&n in t)return t[n];if(null==o&&r&&"undefined"!=typeof navigator&&navigator.languages&&(o=e(t,navigator.language,!1),null!=o))return o;if(null==o){let e=Object.keys(t);if(e.length>0)return t[e[0]]}}},889:(e,t)=>{"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.UrlUtils=void 0,t.UrlUtils=class{static getWidgetUrl(e,t,n){let r="";return r=e.startsWith("http")?e:t.getIndexUrl()+e,r.includes("?")?r+"&"+n.toUrlParams().toString():r+"?"+n.toUrlParams().toString()}static getWidgetPackageIndexUrl(e,t,n){const r=[e];return e.startsWith("http")?n&&r.push(e.endsWith("/")?"#":"/#"):(r.push(t.startsWith("/")?t:`/${t}`),n&&r.push(e.endsWith("#")?"":"#")),r.join("")}}}},t={};function n(r){var o=t[r];if(void 0!==o)return o.exports;var i=t[r]={exports:{}};return e[r].call(i.exports,i,i.exports,n),i.exports}return n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n(347)})()));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@widget-js/core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.12",
|
|
4
4
|
"description": "",
|
|
5
5
|
"publishConfig": {
|
|
6
6
|
"access": "public"
|
|
@@ -19,8 +19,10 @@
|
|
|
19
19
|
"build:esm": "node tools/cleanup esm && tsc -p config/tsconfig.esm.json",
|
|
20
20
|
"build:umd": "node tools/cleanup umd && webpack --config config/webpack.config.js",
|
|
21
21
|
"build:types": "node tools/cleanup types && tsc -p config/tsconfig.types.json",
|
|
22
|
+
"postbuild": "rimraf ../../electron/node_modules/@widget-js/core/",
|
|
22
23
|
"package": "npm run build && npm pack",
|
|
23
|
-
"addscope": "node tools/packagejson name @widget-js/core"
|
|
24
|
+
"addscope": "node tools/packagejson name @widget-js/core",
|
|
25
|
+
"publish": "pnpm publish --no-git-checks"
|
|
24
26
|
},
|
|
25
27
|
"author": "Neo Fu <rtugeek@gmail.com>",
|
|
26
28
|
"license": "MIT",
|
|
@@ -1,29 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.GlobalShortcutApi = void 0;
|
|
4
|
-
const ElectronUtils_1 = require("../utils/ElectronUtils");
|
|
5
|
-
const Channel_1 = require("./Channel");
|
|
6
|
-
class GlobalShortcutApi {
|
|
7
|
-
/**
|
|
8
|
-
* 注册全局快捷键
|
|
9
|
-
*/
|
|
10
|
-
static async register(key) {
|
|
11
|
-
var _a;
|
|
12
|
-
return await ((_a = ElectronUtils_1.ElectronUtils.getAPI()) === null || _a === void 0 ? void 0 : _a.invoke(Channel_1.Channel.SHORTCUT, this.REGISTER, key));
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* 取消注册全局快捷键
|
|
16
|
-
*/
|
|
17
|
-
static async unregister(key) {
|
|
18
|
-
var _a;
|
|
19
|
-
return await ((_a = ElectronUtils_1.ElectronUtils.getAPI()) === null || _a === void 0 ? void 0 : _a.invoke(Channel_1.Channel.SHORTCUT, this.UNREGISTER, key));
|
|
20
|
-
}
|
|
21
|
-
static async isRegistered(key) {
|
|
22
|
-
var _a;
|
|
23
|
-
return await ((_a = ElectronUtils_1.ElectronUtils.getAPI()) === null || _a === void 0 ? void 0 : _a.invoke(Channel_1.Channel.SHORTCUT, this.IS_REGISTERED, key));
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
exports.GlobalShortcutApi = GlobalShortcutApi;
|
|
27
|
-
GlobalShortcutApi.REGISTER = "register";
|
|
28
|
-
GlobalShortcutApi.IS_REGISTERED = "is-registered";
|
|
29
|
-
GlobalShortcutApi.UNREGISTER = "unregister";
|
|
@@ -1,25 +0,0 @@
|
|
|
1
|
-
import { ElectronUtils } from "../utils/ElectronUtils";
|
|
2
|
-
import { Channel } from "./Channel";
|
|
3
|
-
export class GlobalShortcutApi {
|
|
4
|
-
/**
|
|
5
|
-
* 注册全局快捷键
|
|
6
|
-
*/
|
|
7
|
-
static async register(key) {
|
|
8
|
-
var _a;
|
|
9
|
-
return await ((_a = ElectronUtils.getAPI()) === null || _a === void 0 ? void 0 : _a.invoke(Channel.SHORTCUT, this.REGISTER, key));
|
|
10
|
-
}
|
|
11
|
-
/**
|
|
12
|
-
* 取消注册全局快捷键
|
|
13
|
-
*/
|
|
14
|
-
static async unregister(key) {
|
|
15
|
-
var _a;
|
|
16
|
-
return await ((_a = ElectronUtils.getAPI()) === null || _a === void 0 ? void 0 : _a.invoke(Channel.SHORTCUT, this.UNREGISTER, key));
|
|
17
|
-
}
|
|
18
|
-
static async isRegistered(key) {
|
|
19
|
-
var _a;
|
|
20
|
-
return await ((_a = ElectronUtils.getAPI()) === null || _a === void 0 ? void 0 : _a.invoke(Channel.SHORTCUT, this.IS_REGISTERED, key));
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
GlobalShortcutApi.REGISTER = "register";
|
|
24
|
-
GlobalShortcutApi.IS_REGISTERED = "is-registered";
|
|
25
|
-
GlobalShortcutApi.UNREGISTER = "unregister";
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export declare class GlobalShortcutApi {
|
|
2
|
-
static readonly REGISTER = "register";
|
|
3
|
-
static readonly IS_REGISTERED = "is-registered";
|
|
4
|
-
static readonly UNREGISTER = "unregister";
|
|
5
|
-
/**
|
|
6
|
-
* 注册全局快捷键
|
|
7
|
-
*/
|
|
8
|
-
static register(key: string): Promise<boolean>;
|
|
9
|
-
/**
|
|
10
|
-
* 取消注册全局快捷键
|
|
11
|
-
*/
|
|
12
|
-
static unregister(key: string): Promise<void>;
|
|
13
|
-
static isRegistered(key: string): Promise<boolean>;
|
|
14
|
-
}
|