vvvfs 0.0.4 → 0.0.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # VVVFS
2
2
 
3
- 一个使用Dexie.js,基于IndexedDB的轻量、简单的Linux虚拟文件系统
3
+ 一个使用Dexie.js,基于IndexedDB的轻量、简单的浏览器中的Linux虚拟文件系统
4
4
 
5
5
  ## 快速开始
6
6
 
@@ -31,7 +31,7 @@ const VVVFS = require("vvvfs"); // CommonJS
31
31
 
32
32
  ```javascript
33
33
  const vvvfs = new VVVFS("vvvfs", {
34
- throwError: true, // 设置为true后,操作文件失败时,不会返回false,而是会抛出错误
34
+ throwError: true, // 设置为true后,操作文件失败时,不会返回false,而是会抛出错误
35
35
  }); // 创建一个名为vvvfs的虚拟文件系统
36
36
  ```
37
37
 
@@ -40,54 +40,68 @@ const vvvfs = new VVVFS("vvvfs", {
40
40
  ```javascript
41
41
  // 所有操作都是异步的
42
42
  (async function () {
43
- await vvvfs.reset(); // 重置文件系统
44
- await vvvfs.init("UserName"); // 初始化文件系统
45
- await vvvfs.createDir("/home/user/Desktop"); // 创建目录,返回true和false
46
- await vvvfs.writeText(
47
- "/home/user/Desktop/test.txt",
48
- "Hello World!"
49
- ); // 写入文本文件,写入文件还包括write(path: string, content: Blob)和writeJson(path: string, content: Record<string, any>)方法,返回true和false
50
- console.log(await vvvfs.readText("/home/user/Desktop/test.txt")); // 读取文本文件,读取文件还包括read(path: string): Blob | null和readJson(path: string): Record<string, any> | null方法
51
- await vvvfs.delete("/home/user/Desktop/test.txt"); // 删除文件,返回true和false
52
- if (await vvvfs.exists("/home/user/Desktop")) {
53
- // 判断文件或目录是否存在
54
- }
55
- console.log(await vvvfs.list("/home/user/Desktop")); // 列出目录下的文件,返回string[] | null
56
- if (await vvvfs.isDir("/home/user/Desktop")) {
57
- // 判断是否为目录
58
- }
59
- if (await vvvfs.isFile("/home/user/Desktop/test.txt")) {
60
- // 判断是否为文件
61
- }
62
- await vvvfs.rename(
63
- "/home/user/Desktop/test.txt",
64
- "test2.txt",
65
- ); // 重命名文件,返回true和false
66
- await vvvfs.move(
67
- "/home/user/Desktop/test2.txt",
68
- "/home/user/Desktop/test.txt",
69
- ); // 移动文件,返回true和false
70
- await vvvfs.copy(
71
- "/home/user/Desktop/test.txt",
72
- "/home/user/Desktop/test2.txt",
73
- ); // 复制文件,返回true和false
74
- await vvvfs.search("/home/user/Desktop", "test.txt"); // 搜索文件,返回string[] | null
43
+ await vvvfs.reset(); // 重置文件系统
44
+ await vvvfs.init("UserName"); // 初始化文件系统
45
+ await vvvfs.createDir("/home/user/Desktop"); // 创建目录,返回true和false
46
+ await vvvfs.writeText("/home/user/Desktop/test.txt", "Hello World!"); // 写入文本文件,写入文件还包括write(path: string, content: Blob)和writeJson(path: string, content: Record<string, any>)方法,返回true和false
47
+ console.log(await vvvfs.readText("/home/user/Desktop/test.txt")); // 读取文本文件,读取文件还包括read(path: string): Blob | null和readJson(path: string): Record<string, any> | null方法
48
+ await vvvfs.delete("/home/user/Desktop/test.txt"); // 删除文件,返回true和false
49
+ if (await vvvfs.exists("/home/user/Desktop")) {
50
+ // 判断文件或目录是否存在
51
+ }
52
+ console.log(await vvvfs.list("/home/user/Desktop")); // 列出目录下的文件,返回string[] | null
53
+ if (await vvvfs.isDir("/home/user/Desktop")) {
54
+ // 判断是否为目录
55
+ }
56
+ if (await vvvfs.isFile("/home/user/Desktop/test.txt")) {
57
+ // 判断是否为文件
58
+ }
59
+ await vvvfs.rename("/home/user/Desktop/test.txt", "test2.txt"); // 重命名文件,返回true和false
60
+ await vvvfs.move("/home/user/Desktop/test2.txt", "/home/user/Desktop/test.txt"); // 移动文件,返回true和false
61
+ await vvvfs.copy("/home/user/Desktop/test.txt", "/home/user/Desktop/test2.txt"); // 复制文件,返回true和false
62
+ await vvvfs.search("/home/user/Desktop", "test.txt"); // 搜索文件,返回string[] | null
75
63
  })();
76
64
  ```
77
65
 
66
+ 使用 `VVVFS.File` 类:
67
+
68
+ ```javascript
69
+ (async function () {
70
+ const file = new VVVFS.File("/home/user/Desktop/test.txt");
71
+ // file.options.throwError = true;
72
+ await file.writeText("Hello World!");
73
+ console.log(await file.readText());
74
+ await file.delete();
75
+ })();
76
+ // 用法与 vvvfs 相当
77
+ ```
78
+
78
79
  ## 更新日志
79
80
 
81
+ ### 0.0.6
82
+
83
+ - `VVVFS.File` 类中新增 `dbname` 和 `options` 属性
84
+ - `VVVFS` 新增 `defaultDBName` 属性
85
+
86
+ ### 0.0.5
87
+
88
+ - 新增 `VVVFS.File` 类
89
+
80
90
  ### 0.0.4
81
- - 修复IndexDB弹出一堆警告
82
- - 修复 `search` 搜索时的bug
91
+
92
+ - 修复IndexDB弹出一堆警告
93
+ - 修复 `search` 搜索时的bug
83
94
 
84
95
  ### 0.0.3
85
- - 添加完整路径和文件名最长值限制,完整路径最长4096字符,文件名最长255字符
86
- - 添加 `init` 方法,用于初始化Linux文件和目录
87
- - 修复 `list` 方法列出根目录时返回的数组中有空字符串的bug,该空字符串是根目录自身
96
+
97
+ - 添加完整路径和文件名最长值限制,完整路径最长4096字符,文件名最长255字符
98
+ - 添加 `init` 方法,用于初始化Linux文件和目录
99
+ - 修复 `list` 方法列出根目录时返回的数组中有空字符串的bug,该空字符串是根目录自身
88
100
 
89
101
  ### 0.0.2
90
- - 添加 `throwError` 选项,默认为 `false`
102
+
103
+ - 添加 `throwError` 选项,默认为 `false`
91
104
 
92
105
  ### 0.0.1
93
- - 发布正式版
106
+
107
+ - 发布正式版
package/esbuild.config.js CHANGED
@@ -1,19 +1,17 @@
1
1
  import { build } from 'esbuild';
2
2
  import fs from 'fs';
3
3
 
4
- const pkg = JSON.parse(fs.readFileSync('./package.json', 'utf8'));
5
-
4
+ /**
5
+ * 构建库
6
+ */
6
7
  build({
7
8
  entryPoints: ['index.ts'],
8
9
  bundle: true,
9
10
  outfile: 'dist/vvvfs.min.js',
10
11
  format: 'iife',
11
- define: {
12
- 'process.env.PACKAGE_VERSION': JSON.stringify(pkg.version),
13
- },
14
12
  minify: true,
15
13
  platform: 'browser',
16
- target: ["chrome80", "firefox70", "safari13", "edge80"],
14
+ target: ["chrome72", "firefox126", "safari14", "edge79", "opera60"],
17
15
  logLevel: 'info',
18
16
  drop: ['console', 'debugger'],
19
17
  }).catch(() => process.exit(1));
package/index.html CHANGED
@@ -25,6 +25,7 @@
25
25
  console.log("搜索文件", await vvvfs.search("/", "t"));
26
26
  console.log("移动文件", await vvvfs.move("/test2.txt", "/test3.txt"));
27
27
  console.log("删除文件", await vvvfs.delete("/test.txt"));
28
+ const file = new VVVFS.File("test.txt");
28
29
  } catch (error) {
29
30
  console.error(error);
30
31
  }
package/index.ts CHANGED
@@ -54,28 +54,197 @@ class VVVFSError extends Error {
54
54
  }
55
55
  }
56
56
 
57
+ /**
58
+ * 虚拟文件系统文件类
59
+ * @param path 文件路径
60
+ */
61
+ class VVVFSFile {
62
+ /**
63
+ * 数据库名称
64
+ */
65
+ private _dbname: string = VVVFS.defaultDBName;
66
+ /**
67
+ * 文件路径
68
+ */
69
+ private _path: string;
70
+ /**
71
+ * 虚拟文件系统实例
72
+ */
73
+ private _vvvfs: VVVFS = new VVVFS(this._dbname);
74
+ /**
75
+ * 获取文件路径
76
+ */
77
+ get path() {
78
+ return this._path;
79
+ }
80
+ /**
81
+ * 设置文件路径
82
+ * @param path 文件路径
83
+ */
84
+ set path(path: string) {
85
+ this._path = joinPath(path);
86
+ }
87
+ /**
88
+ * 设置数据库名称
89
+ * @param dbname 数据库名称
90
+ */
91
+ set dbname(dbname: string) {
92
+ this._dbname = dbname;
93
+ this._vvvfs = new VVVFS(dbname);
94
+ }
95
+ /**
96
+ * 获取数据库名称
97
+ */
98
+ get dbname() {
99
+ return this._dbname;
100
+ }
101
+ set options(options: VVVFSOptions) {
102
+ this._vvvfs.options = options;
103
+ }
104
+ get options() {
105
+ return this._vvvfs.options;
106
+ }
107
+ /**
108
+ * 构造函数
109
+ * @param paths 文件路径
110
+ */
111
+ constructor(...paths: string[]) {
112
+ this._path = joinPath(...paths);
113
+ }
114
+ /**
115
+ * 读取文件
116
+ */
117
+ async read() {
118
+ return await this._vvvfs.read(this._path);
119
+ }
120
+ /**
121
+ * 读取文件文本内容
122
+ */
123
+ async readText() {
124
+ return await this._vvvfs.readText(this._path);
125
+ }
126
+ /**
127
+ * 读取文件JSON内容
128
+ */
129
+ async readJSON() {
130
+ return await this._vvvfs.readJson(this._path);
131
+ }
132
+ /**
133
+ * 写入文件
134
+ * @param file 文件对象
135
+ */
136
+ async write(file: Blob) {
137
+ return await this._vvvfs.write(this._path, file);
138
+ }
139
+ /**
140
+ * 写入文件文本内容
141
+ * @param text 文件文本内容
142
+ */
143
+ async writeText(text: string) {
144
+ return await this._vvvfs.writeText(this._path, text);
145
+ }
146
+ /**
147
+ * 写入文件JSON内容
148
+ * @param json 文件JSON内容
149
+ */
150
+ async writeJSON(json: Record<string, any>, format: boolean = true) {
151
+ return await this._vvvfs.writeJson(this._path, json, format);
152
+ }
153
+ /**
154
+ * 创建文件
155
+ */
156
+ async createFile() {
157
+ return await this._vvvfs.createFile(this._path);
158
+ }
159
+ /**
160
+ * 创建文件夹
161
+ */
162
+ async createDir() {
163
+ return await this._vvvfs.createDir(this._path);
164
+ }
165
+ /**
166
+ * 删除文件
167
+ */
168
+ async delete() {
169
+ return await this._vvvfs.delete(this._path);
170
+ }
171
+ /**
172
+ * 判断文件是否存在
173
+ */
174
+ async exists() {
175
+ return await this._vvvfs.exists(this._path);
176
+ }
177
+ /**
178
+ * 获取文件大小
179
+ */
180
+ async isFile() {
181
+ return await this._vvvfs.isFile(this._path);
182
+ }
183
+ /**
184
+ * 判断文件是否是文件夹
185
+ */
186
+ async isDir() {
187
+ return await this._vvvfs.isDir(this._path);
188
+ }
189
+ /**
190
+ * 列出文件
191
+ */
192
+ async list() {
193
+ return await this._vvvfs.list(this._path);
194
+ }
195
+ /**
196
+ * 重命名文件
197
+ */
198
+ async rename(newName: string) {
199
+ return await this._vvvfs.rename(this._path, newName);
200
+ }
201
+ /**
202
+ * 移动文件
203
+ */
204
+ async move(newPath: string) {
205
+ return await this._vvvfs.move(this._path, newPath);
206
+ }
207
+ /**
208
+ * 复制文件
209
+ */
210
+ async copy(newPath: string) {
211
+ return await this._vvvfs.copy(this._path, newPath);
212
+ }
213
+ /**
214
+ * 搜索文件
215
+ */
216
+ async search(query: string) {
217
+ return await this._vvvfs.search(this._path, query);
218
+ }
219
+ }
220
+
57
221
  const version = packageJson.version;
58
222
  class VVVFS {
223
+ static defaultDBName = "vvvfs";
59
224
  private db: VVVFSDatabase;
60
225
  options: VVVFSOptions;
61
226
  /**
62
227
  * 虚拟文件系统版本
63
228
  */
64
229
  static version: string;
230
+ /**
231
+ * 虚拟文件系统文件类
232
+ */
233
+ static File = VVVFSFile;
65
234
  /**
66
235
  * 创建虚拟文件系统
67
236
  * @param name 虚拟文件系统名称
68
237
  * @param options 配置项
69
238
  */
70
239
  constructor(
71
- name = "vvvfs",
240
+ name?: string,
72
241
  options = {
73
242
  throwError: false,
74
243
  },
75
244
  ) {
76
245
  this.options = options;
77
246
  try {
78
- this.db = new Dexie(name) as VVVFSDatabase;
247
+ this.db = new Dexie(name || VVVFS.defaultDBName) as VVVFSDatabase;
79
248
  this.db.version(1).stores({
80
249
  files: "++id, name, path, type, file, [name+path+type]",
81
250
  });
@@ -404,7 +573,7 @@ class VVVFS {
404
573
  * @param content JSON内容
405
574
  * @param format 是否格式化
406
575
  */
407
- async writeJson(path: string, content: Record<string, any>, format?: boolean) {
576
+ async writeJson(path: string, content: Record<string, any>, format: boolean = true) {
408
577
  try {
409
578
  return await this.writeText(
410
579
  path,
@@ -785,7 +954,7 @@ function joinPath(...paths: string[]) {
785
954
  if (isAbsolute) {
786
955
  result = "/" + result;
787
956
  }
788
- return result || (isAbsolute ? "/" : ".");
957
+ return result.startsWith("/") ? result : "/" + result || (isAbsolute ? "/" : ".");
789
958
  }
790
959
  Object.defineProperty(VVVFS, "version", {
791
960
  value: version,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vvvfs",
3
- "version": "0.0.4",
3
+ "version": "0.0.6",
4
4
  "description": "一个使用IndexDB实现的虚拟文件系统",
5
5
  "keywords": [
6
6
  "Virtual",
@@ -25,5 +25,9 @@
25
25
  "dexie": "^4.3.0",
26
26
  "esbuild": "^0.27.3",
27
27
  "mime": "^4.1.0"
28
+ },
29
+ "repository": {
30
+ "type": "git",
31
+ "url": "https://github.com/IFTC-XLKJ/vvvfs.git"
28
32
  }
29
33
  }
package/dist/vvvfs.min.js DELETED
@@ -1,3 +0,0 @@
1
- (()=>{var Da=Object.create;var Bn=Object.defineProperty;var Ka=Object.getOwnPropertyDescriptor;var Ta=Object.getOwnPropertyNames;var Oa=Object.getPrototypeOf,Aa=Object.prototype.hasOwnProperty;var Pa=(M,y,m)=>y in M?Bn(M,y,{enumerable:!0,configurable:!0,writable:!0,value:m}):M[y]=m;var Ca=(M,y)=>()=>(y||M((y={exports:{}}).exports,y),y.exports);var Ia=(M,y,m,k)=>{if(y&&typeof y=="object"||typeof y=="function")for(let O of Ta(y))!Aa.call(M,O)&&O!==m&&Bn(M,O,{get:()=>y[O],enumerable:!(k=Ka(y,O))||k.enumerable});return M};var Ra=(M,y,m)=>(m=M!=null?Da(Oa(M)):{},Ia(y||!M||!M.__esModule?Bn(m,"default",{value:M,enumerable:!0}):m,M));var $t=(M,y,m)=>Pa(M,typeof y!="symbol"?y+"":y,m);var Mi=Ca((Mn,Vn)=>{(function(M,y){typeof Mn=="object"&&typeof Vn<"u"?Vn.exports=y():typeof define=="function"&&define.amd?define(y):(M=typeof globalThis<"u"?globalThis:M||self,M.Dexie=y())})(Mn,(function(){"use strict";var M=function(e,t){return M=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(n,i){n.__proto__=i}||function(n,i){for(var r in i)Object.prototype.hasOwnProperty.call(i,r)&&(n[r]=i[r])},M(e,t)};function y(e,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");M(e,t);function n(){this.constructor=e}e.prototype=t===null?Object.create(t):(n.prototype=t.prototype,new n)}var m=function(){return m=Object.assign||function(t){for(var n,i=1,r=arguments.length;i<r;i++){n=arguments[i];for(var a in n)Object.prototype.hasOwnProperty.call(n,a)&&(t[a]=n[a])}return t},m.apply(this,arguments)};function k(e,t,n){if(n||arguments.length===2)for(var i=0,r=t.length,a;i<r;i++)(a||!(i in t))&&(a||(a=Array.prototype.slice.call(t,0,i)),a[i]=t[i]);return e.concat(a||Array.prototype.slice.call(t))}typeof SuppressedError=="function"&&SuppressedError;var O=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:global,F=Object.keys,P=Array.isArray;typeof Promise<"u"&&!O.Promise&&(O.Promise=Promise);function N(e,t){return typeof t!="object"||F(t).forEach(function(n){e[n]=t[n]}),e}var H=Object.getPrototypeOf,Z={}.hasOwnProperty;function ee(e,t){return Z.call(e,t)}function Me(e,t){typeof t=="function"&&(t=t(H(e))),(typeof Reflect>"u"?F:Reflect.ownKeys)(t).forEach(function(n){ye(e,n,t[n])})}var Wn=Object.defineProperty;function ye(e,t,n,i){Wn(e,t,N(n&&ee(n,"get")&&typeof n.get=="function"?{get:n.get,set:n.set,configurable:!0}:{value:n,configurable:!0,writable:!0},i))}function Ve(e){return{from:function(t){return e.prototype=Object.create(t.prototype),ye(e.prototype,"constructor",e),{extend:Me.bind(null,e.prototype)}}}}var Ui=Object.getOwnPropertyDescriptor;function $n(e,t){var n=Ui(e,t),i;return n||(i=H(e))&&$n(i,t)}var Yi=[].slice;function ht(e,t,n){return Yi.call(e,t,n)}function Un(e,t){return t(e)}function Je(e){if(!e)throw new Error("Assertion Failed")}function Yn(e){O.setImmediate?setImmediate(e):setTimeout(e,0)}function Qi(e,t){return e.reduce(function(n,i,r){var a=t(i,r);return a&&(n[a[0]]=a[1]),n},{})}function de(e,t){if(typeof t=="string"&&ee(e,t))return e[t];if(!t)return e;if(typeof t!="string"){for(var n=[],i=0,r=t.length;i<r;++i){var a=de(e,t[i]);n.push(a)}return n}var o=t.indexOf(".");if(o!==-1){var s=e[t.substr(0,o)];return s==null?void 0:de(s,t.substr(o+1))}}function te(e,t,n){if(!(!e||t===void 0)&&!("isFrozen"in Object&&Object.isFrozen(e)))if(typeof t!="string"&&"length"in t){Je(typeof n!="string"&&"length"in n);for(var i=0,r=t.length;i<r;++i)te(e,t[i],n[i])}else{var a=t.indexOf(".");if(a!==-1){var o=t.substr(0,a),s=t.substr(a+1);if(s==="")n===void 0?P(e)&&!isNaN(parseInt(o))?e.splice(o,1):delete e[o]:e[o]=n;else{var c=e[o];(!c||!ee(e,o))&&(c=e[o]={}),te(c,s,n)}}else n===void 0?P(e)&&!isNaN(parseInt(t))?e.splice(t,1):delete e[t]:e[t]=n}}function Hi(e,t){typeof t=="string"?te(e,t,void 0):"length"in t&&[].map.call(t,function(n){te(e,n,void 0)})}function Qn(e){var t={};for(var n in e)ee(e,n)&&(t[n]=e[n]);return t}var Gi=[].concat;function Hn(e){return Gi.apply([],e)}var Xi="BigUint64Array,BigInt64Array,Array,Boolean,String,Date,RegExp,Blob,File,FileList,FileSystemFileHandle,FileSystemDirectoryHandle,ArrayBuffer,DataView,Uint8ClampedArray,ImageBitmap,ImageData,Map,Set,CryptoKey".split(",").concat(Hn([8,16,32,64].map(function(e){return["Int","Uint","Float"].map(function(t){return t+e+"Array"})}))).filter(function(e){return O[e]}),Gn=new Set(Xi.map(function(e){return O[e]}));function Xn(e){var t={};for(var n in e)if(ee(e,n)){var i=e[n];t[n]=!i||typeof i!="object"||Gn.has(i.constructor)?i:Xn(i)}return t}function Ji(e){for(var t in e)if(ee(e,t))return!1;return!0}var Ze=null;function De(e){Ze=new WeakMap;var t=Yt(e);return Ze=null,t}function Yt(e){if(!e||typeof e!="object")return e;var t=Ze.get(e);if(t)return t;if(P(e)){t=[],Ze.set(e,t);for(var n=0,i=e.length;n<i;++n)t.push(Yt(e[n]))}else if(Gn.has(e.constructor))t=e;else{var r=H(e);t=r===Object.prototype?{}:Object.create(r),Ze.set(e,t);for(var a in e)ee(e,a)&&(t[a]=Yt(e[a]))}return t}var Zi={}.toString;function Qt(e){return Zi.call(e).slice(8,-1)}var Ht=typeof Symbol<"u"?Symbol.iterator:"@@iterator",er=typeof Ht=="symbol"?function(e){var t;return e!=null&&(t=e[Ht])&&t.apply(e)}:function(){return null};function Ke(e,t){var n=e.indexOf(t);return n>=0&&e.splice(n,1),n>=0}var Ne={};function me(e){var t,n,i,r;if(arguments.length===1){if(P(e))return e.slice();if(this===Ne&&typeof e=="string")return[e];if(r=er(e)){for(n=[];i=r.next(),!i.done;)n.push(i.value);return n}if(e==null)return[e];if(t=e.length,typeof t=="number"){for(n=new Array(t);t--;)n[t]=e[t];return n}return[e]}for(t=arguments.length,n=new Array(t);t--;)n[t]=arguments[t];return n}var Gt=typeof Symbol<"u"?function(e){return e[Symbol.toStringTag]==="AsyncFunction"}:function(){return!1},tr=["Modify","Bulk","OpenFailed","VersionChange","Schema","Upgrade","InvalidTable","MissingAPI","NoSuchDatabase","InvalidArgument","SubTransaction","Unsupported","Internal","DatabaseClosed","PrematureCommit","ForeignAwait"],Jn=["Unknown","Constraint","Data","TransactionInactive","ReadOnly","Version","NotFound","InvalidState","InvalidAccess","Abort","Timeout","QuotaExceeded","Syntax","DataClone"],Xt=tr.concat(Jn),nr={VersionChanged:"Database version changed by other database connection",DatabaseClosed:"Database has been closed",Abort:"Transaction aborted",TransactionInactive:"Transaction has already completed or failed",MissingAPI:"IndexedDB API missing. Please visit https://tinyurl.com/y2uuvskb"};function Le(e,t){this.name=e,this.message=t}Ve(Le).from(Error).extend({toString:function(){return this.name+": "+this.message}});function Zn(e,t){return e+". Errors: "+Object.keys(t).map(function(n){return t[n].toString()}).filter(function(n,i,r){return r.indexOf(n)===i}).join(`
2
- `)}function yt(e,t,n,i){this.failures=t,this.failedKeys=i,this.successCount=n,this.message=Zn(e,t)}Ve(yt).from(Le);function qe(e,t){this.name="BulkError",this.failures=Object.keys(t).map(function(n){return t[n]}),this.failuresByPos=t,this.message=Zn(e,this.failures)}Ve(qe).from(Le);var Jt=Xt.reduce(function(e,t){return e[t]=t+"Error",e},{}),ir=Le,I=Xt.reduce(function(e,t){var n=t+"Error";function i(r,a){this.name=n,r?typeof r=="string"?(this.message="".concat(r).concat(a?`
3
- `+a:""),this.inner=a||null):typeof r=="object"&&(this.message="".concat(r.name," ").concat(r.message),this.inner=r):(this.message=nr[t]||n,this.inner=null)}return Ve(i).from(ir),e[t]=i,e},{});I.Syntax=SyntaxError,I.Type=TypeError,I.Range=RangeError;var ei=Jn.reduce(function(e,t){return e[t+"Error"]=I[t],e},{});function rr(e,t){if(!e||e instanceof Le||e instanceof TypeError||e instanceof SyntaxError||!e.name||!ei[e.name])return e;var n=new ei[e.name](t||e.message,e);return"stack"in e&&ye(n,"stack",{get:function(){return this.inner.stack}}),n}var gt=Xt.reduce(function(e,t){return["Syntax","Type","Range"].indexOf(t)===-1&&(e[t+"Error"]=I[t]),e},{});gt.ModifyError=yt,gt.DexieError=Le,gt.BulkError=qe;function $(){}function et(e){return e}function ar(e,t){return e==null||e===et?t:function(n){return t(e(n))}}function Te(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function or(e,t){return e===$?t:function(){var n=e.apply(this,arguments);n!==void 0&&(arguments[0]=n);var i=this.onsuccess,r=this.onerror;this.onsuccess=null,this.onerror=null;var a=t.apply(this,arguments);return i&&(this.onsuccess=this.onsuccess?Te(i,this.onsuccess):i),r&&(this.onerror=this.onerror?Te(r,this.onerror):r),a!==void 0?a:n}}function sr(e,t){return e===$?t:function(){e.apply(this,arguments);var n=this.onsuccess,i=this.onerror;this.onsuccess=this.onerror=null,t.apply(this,arguments),n&&(this.onsuccess=this.onsuccess?Te(n,this.onsuccess):n),i&&(this.onerror=this.onerror?Te(i,this.onerror):i)}}function cr(e,t){return e===$?t:function(n){var i=e.apply(this,arguments);N(n,i);var r=this.onsuccess,a=this.onerror;this.onsuccess=null,this.onerror=null;var o=t.apply(this,arguments);return r&&(this.onsuccess=this.onsuccess?Te(r,this.onsuccess):r),a&&(this.onerror=this.onerror?Te(a,this.onerror):a),i===void 0?o===void 0?void 0:o:N(i,o)}}function lr(e,t){return e===$?t:function(){return t.apply(this,arguments)===!1?!1:e.apply(this,arguments)}}function Zt(e,t){return e===$?t:function(){var n=e.apply(this,arguments);if(n&&typeof n.then=="function"){for(var i=this,r=arguments.length,a=new Array(r);r--;)a[r]=arguments[r];return n.then(function(){return t.apply(i,a)})}return t.apply(this,arguments)}}var ce=typeof location<"u"&&/^(http|https):\/\/(localhost|127\.0\.0\.1)/.test(location.href);function ti(e,t){ce=e}var tt={},ni=100,en=typeof Promise>"u"?[]:(function(){var e=Promise.resolve();if(typeof crypto>"u"||!crypto.subtle)return[e,H(e),e];var t=crypto.subtle.digest("SHA-512",new Uint8Array([0]));return[t,H(t),e]})(),ii=en[0],ri=en[1],ur=en[2],pr=ri&&ri.then,Oe=ii&&ii.constructor,tn=!!ur;function fr(){queueMicrotask(mr)}var nt=function(e,t){it.push([e,t]),xt&&(fr(),xt=!1)},nn=!0,xt=!0,Ae=[],wt=[],rn=et,ge={id:"global",global:!0,ref:0,unhandleds:[],onunhandled:$,pgp:!1,env:{},finalize:$},A=ge,it=[],Pe=0,bt=[];function D(e){if(typeof this!="object")throw new TypeError("Promises must be constructed via new");this._listeners=[],this._lib=!1;var t=this._PSD=A;if(typeof e!="function"){if(e!==tt)throw new TypeError("Not a function");this._state=arguments[1],this._value=arguments[2],this._state===!1&&on(this,this._value);return}this._state=null,this._value=null,++t.ref,oi(this,e)}var an={get:function(){var e=A,t=jt;function n(i,r){var a=this,o=!e.global&&(e!==A||t!==jt),s=o&&!we(),c=new D(function(l,f){sn(a,new ai(li(i,e,o,s),li(r,e,o,s),l,f,e))});return this._consoleTask&&(c._consoleTask=this._consoleTask),c}return n.prototype=tt,n},set:function(e){ye(this,"then",e&&e.prototype===tt?an:{get:function(){return e},set:an.set})}};Me(D.prototype,{then:an,_then:function(e,t){sn(this,new ai(null,null,e,t,A))},catch:function(e){if(arguments.length===1)return this.then(null,e);var t=arguments[0],n=arguments[1];return typeof t=="function"?this.then(null,function(i){return i instanceof t?n(i):_t(i)}):this.then(null,function(i){return i&&i.name===t?n(i):_t(i)})},finally:function(e){return this.then(function(t){return D.resolve(e()).then(function(){return t})},function(t){return D.resolve(e()).then(function(){return _t(t)})})},timeout:function(e,t){var n=this;return e<1/0?new D(function(i,r){var a=setTimeout(function(){return r(new I.Timeout(t))},e);n.then(i,r).finally(clearTimeout.bind(null,a))}):this}}),typeof Symbol<"u"&&Symbol.toStringTag&&ye(D.prototype,Symbol.toStringTag,"Dexie.Promise"),ge.env=ci();function ai(e,t,n,i,r){this.onFulfilled=typeof e=="function"?e:null,this.onRejected=typeof t=="function"?t:null,this.resolve=n,this.reject=i,this.psd=r}Me(D,{all:function(){var e=me.apply(null,arguments).map(St);return new D(function(t,n){e.length===0&&t([]);var i=e.length;e.forEach(function(r,a){return D.resolve(r).then(function(o){e[a]=o,--i||t(e)},n)})})},resolve:function(e){if(e instanceof D)return e;if(e&&typeof e.then=="function")return new D(function(n,i){e.then(n,i)});var t=new D(tt,!0,e);return t},reject:_t,race:function(){var e=me.apply(null,arguments).map(St);return new D(function(t,n){e.map(function(i){return D.resolve(i).then(t,n)})})},PSD:{get:function(){return A},set:function(e){return A=e}},totalEchoes:{get:function(){return jt}},newPSD:xe,usePSD:Ce,scheduler:{get:function(){return nt},set:function(e){nt=e}},rejectionMapper:{get:function(){return rn},set:function(e){rn=e}},follow:function(e,t){return new D(function(n,i){return xe(function(r,a){var o=A;o.unhandleds=[],o.onunhandled=a,o.finalize=Te(function(){var s=this;vr(function(){s.unhandleds.length===0?r():a(s.unhandleds[0])})},o.finalize),e()},t,n,i)})}}),Oe&&(Oe.allSettled&&ye(D,"allSettled",function(){var e=me.apply(null,arguments).map(St);return new D(function(t){e.length===0&&t([]);var n=e.length,i=new Array(n);e.forEach(function(r,a){return D.resolve(r).then(function(o){return i[a]={status:"fulfilled",value:o}},function(o){return i[a]={status:"rejected",reason:o}}).then(function(){return--n||t(i)})})})}),Oe.any&&typeof AggregateError<"u"&&ye(D,"any",function(){var e=me.apply(null,arguments).map(St);return new D(function(t,n){e.length===0&&n(new AggregateError([]));var i=e.length,r=new Array(i);e.forEach(function(a,o){return D.resolve(a).then(function(s){return t(s)},function(s){r[o]=s,--i||n(new AggregateError(r))})})})}),Oe.withResolvers&&(D.withResolvers=Oe.withResolvers));function oi(e,t){try{t(function(n){if(e._state===null){if(n===e)throw new TypeError("A promise cannot be resolved with itself.");var i=e._lib&&We();n&&typeof n.then=="function"?oi(e,function(r,a){n instanceof D?n._then(r,a):n.then(r,a)}):(e._state=!0,e._value=n,si(e)),i&&$e()}},on.bind(null,e))}catch(n){on(e,n)}}function on(e,t){if(wt.push(t),e._state===null){var n=e._lib&&We();t=rn(t),e._state=!1,e._value=t,hr(e),si(e),n&&$e()}}function si(e){var t=e._listeners;e._listeners=[];for(var n=0,i=t.length;n<i;++n)sn(e,t[n]);var r=e._PSD;--r.ref||r.finalize(),Pe===0&&(++Pe,nt(function(){--Pe===0&&cn()},[]))}function sn(e,t){if(e._state===null){e._listeners.push(t);return}var n=e._state?t.onFulfilled:t.onRejected;if(n===null)return(e._state?t.resolve:t.reject)(e._value);++t.psd.ref,++Pe,nt(dr,[n,e,t])}function dr(e,t,n){try{var i,r=t._value;!t._state&&wt.length&&(wt=[]),i=ce&&t._consoleTask?t._consoleTask.run(function(){return e(r)}):e(r),!t._state&&wt.indexOf(r)===-1&&yr(t),n.resolve(i)}catch(a){n.reject(a)}finally{--Pe===0&&cn(),--n.psd.ref||n.psd.finalize()}}function mr(){Ce(ge,function(){We()&&$e()})}function We(){var e=nn;return nn=!1,xt=!1,e}function $e(){var e,t,n;do for(;it.length>0;)for(e=it,it=[],n=e.length,t=0;t<n;++t){var i=e[t];i[0].apply(null,i[1])}while(it.length>0);nn=!0,xt=!0}function cn(){var e=Ae;Ae=[],e.forEach(function(i){i._PSD.onunhandled.call(null,i._value,i)});for(var t=bt.slice(0),n=t.length;n;)t[--n]()}function vr(e){function t(){e(),bt.splice(bt.indexOf(t),1)}bt.push(t),++Pe,nt(function(){--Pe===0&&cn()},[])}function hr(e){Ae.some(function(t){return t._value===e._value})||Ae.push(e)}function yr(e){for(var t=Ae.length;t;)if(Ae[--t]._value===e._value){Ae.splice(t,1);return}}function _t(e){return new D(tt,!1,e)}function U(e,t){var n=A;return function(){var i=We(),r=A;try{return be(n,!0),e.apply(this,arguments)}catch(a){t&&t(a)}finally{be(r,!1),i&&$e()}}}var G={awaits:0,echoes:0,id:0},gr=0,kt=[],Et=0,jt=0,xr=0;function xe(e,t,n,i){var r=A,a=Object.create(r);a.parent=r,a.ref=0,a.global=!1,a.id=++xr,ge.env,a.env=tn?{Promise:D,PromiseProp:{value:D,configurable:!0,writable:!0},all:D.all,race:D.race,allSettled:D.allSettled,any:D.any,resolve:D.resolve,reject:D.reject}:{},t&&N(a,t),++r.ref,a.finalize=function(){--this.parent.ref||this.parent.finalize()};var o=Ce(a,e,n,i);return a.ref===0&&a.finalize(),o}function Ue(){return G.id||(G.id=++gr),++G.awaits,G.echoes+=ni,G.id}function we(){return G.awaits?(--G.awaits===0&&(G.id=0),G.echoes=G.awaits*ni,!0):!1}(""+pr).indexOf("[native code]")===-1&&(Ue=we=$);function St(e){return G.echoes&&e&&e.constructor===Oe?(Ue(),e.then(function(t){return we(),t},function(t){return we(),Q(t)})):e}function wr(e){++jt,(!G.echoes||--G.echoes===0)&&(G.echoes=G.awaits=G.id=0),kt.push(A),be(e,!0)}function br(){var e=kt[kt.length-1];kt.pop(),be(e,!1)}function be(e,t){var n=A;if((t?G.echoes&&(!Et++||e!==A):Et&&(!--Et||e!==A))&&queueMicrotask(t?wr.bind(null,e):br),e!==A&&(A=e,n===ge&&(ge.env=ci()),tn)){var i=ge.env.Promise,r=e.env;(n.global||e.global)&&(Object.defineProperty(O,"Promise",r.PromiseProp),i.all=r.all,i.race=r.race,i.resolve=r.resolve,i.reject=r.reject,r.allSettled&&(i.allSettled=r.allSettled),r.any&&(i.any=r.any))}}function ci(){var e=O.Promise;return tn?{Promise:e,PromiseProp:Object.getOwnPropertyDescriptor(O,"Promise"),all:e.all,race:e.race,allSettled:e.allSettled,any:e.any,resolve:e.resolve,reject:e.reject}:{}}function Ce(e,t,n,i,r){var a=A;try{return be(e,!0),t(n,i,r)}finally{be(a,!1)}}function li(e,t,n,i){return typeof e!="function"?e:function(){var r=A;n&&Ue(),be(t,!0);try{return e.apply(this,arguments)}finally{be(r,!1),i&&queueMicrotask(we)}}}function ln(e){Promise===Oe&&G.echoes===0?Et===0?e():enqueueNativeMicroTask(e):setTimeout(e,0)}var Q=D.reject;function un(e,t,n,i){if(!e.idbdb||!e._state.openComplete&&!A.letThrough&&!e._vip){if(e._state.openComplete)return Q(new I.DatabaseClosed(e._state.dbOpenError));if(!e._state.isBeingOpened){if(!e._state.autoOpen)return Q(new I.DatabaseClosed);e.open().catch($)}return e._state.dbReadyPromise.then(function(){return un(e,t,n,i)})}else{var r=e._createTransaction(t,n,e._dbSchema);try{r.create(),e._state.PR1398_maxLoop=3}catch(a){return a.name===Jt.InvalidState&&e.isOpen()&&--e._state.PR1398_maxLoop>0?(e.close({disableAutoOpen:!1}),e.open().then(function(){return un(e,t,n,i)})):Q(a)}return r._promise(t,function(a,o){return xe(function(){return A.trans=r,i(a,o,r)})}).then(function(a){if(t==="readwrite")try{r.idbtrans.commit()}catch{}return t==="readonly"?a:r._completion.then(function(){return a})})}}var ui="4.3.0",Ie="\uFFFF",pn=-1/0,ve="Invalid key provided. Keys must be of type string, number, Date or Array<string | number | Date>.",pi="String expected.",Ye=[],Dt="__dbnames",fn="readonly",dn="readwrite";function Re(e,t){return e?t?function(){return e.apply(this,arguments)&&t.apply(this,arguments)}:e:t}var fi={type:3,lower:-1/0,lowerOpen:!1,upper:[[]],upperOpen:!1};function Kt(e){return typeof e=="string"&&!/\./.test(e)?function(t){return t[e]===void 0&&e in t&&(t=De(t),delete t[e]),t}:function(t){return t}}function di(){throw I.Type("Entity instances must never be new:ed. Instances are generated by the framework bypassing the constructor.")}function q(e,t){try{var n=mi(e),i=mi(t);if(n!==i)return n==="Array"?1:i==="Array"?-1:n==="binary"?1:i==="binary"?-1:n==="string"?1:i==="string"?-1:n==="Date"?1:i!=="Date"?NaN:-1;switch(n){case"number":case"Date":case"string":return e>t?1:e<t?-1:0;case"binary":return kr(vi(e),vi(t));case"Array":return _r(e,t)}}catch{}return NaN}function _r(e,t){for(var n=e.length,i=t.length,r=n<i?n:i,a=0;a<r;++a){var o=q(e[a],t[a]);if(o!==0)return o}return n===i?0:n<i?-1:1}function kr(e,t){for(var n=e.length,i=t.length,r=n<i?n:i,a=0;a<r;++a)if(e[a]!==t[a])return e[a]<t[a]?-1:1;return n===i?0:n<i?-1:1}function mi(e){var t=typeof e;if(t!=="object")return t;if(ArrayBuffer.isView(e))return"binary";var n=Qt(e);return n==="ArrayBuffer"?"binary":n}function vi(e){return e instanceof Uint8Array?e:ArrayBuffer.isView(e)?new Uint8Array(e.buffer,e.byteOffset,e.byteLength):new Uint8Array(e)}function Tt(e,t,n){var i=e.schema.yProps;return i?(t&&n.numFailures>0&&(t=t.filter(function(r,a){return!n.failures[a]})),Promise.all(i.map(function(r){var a=r.updatesTable;return t?e.db.table(a).where("k").anyOf(t).delete():e.db.table(a).clear()})).then(function(){return n})):n}var rt=(function(){function e(t){this["@@propmod"]=t}return e.prototype.execute=function(t){var n,i=this["@@propmod"];if(i.add!==void 0){var r=i.add;if(P(r))return k(k([],P(t)?t:[],!0),r,!0).sort();if(typeof r=="number")return(Number(t)||0)+r;if(typeof r=="bigint")try{return BigInt(t)+r}catch{return BigInt(0)+r}throw new TypeError("Invalid term ".concat(r))}if(i.remove!==void 0){var a=i.remove;if(P(a))return P(t)?t.filter(function(s){return!a.includes(s)}).sort():[];if(typeof a=="number")return Number(t)-a;if(typeof a=="bigint")try{return BigInt(t)-a}catch{return BigInt(0)-a}throw new TypeError("Invalid subtrahend ".concat(a))}var o=(n=i.replacePrefix)===null||n===void 0?void 0:n[0];return o&&typeof t=="string"&&t.startsWith(o)?i.replacePrefix[1]+t.substring(o.length):t},e})();function hi(e,t){for(var n=F(t),i=n.length,r=!1,a=0;a<i;++a){var o=n[a],s=t[o],c=de(e,o);s instanceof rt?(te(e,o,s.execute(c)),r=!0):c!==s&&(te(e,o,s),r=!0)}return r}var yi=(function(){function e(){}return e.prototype._trans=function(t,n,i){var r=this._tx||A.trans,a=this.name,o=ce&&typeof console<"u"&&console.createTask&&void 0;function s(f,u,h){if(!h.schema[a])throw new I.NotFound("Table "+a+" not part of transaction");return n(h.idbtrans,h)}var c=We();try{var l=r&&r.db._novip===this.db._novip?r===A.trans?r._promise(t,s,i):xe(function(){return r._promise(t,s,i)},{trans:r,transless:A.transless||A}):un(this.db,t,[this.name],s);return o&&(l._consoleTask=o,l=l.catch(function(f){return Q(f)})),l}finally{c&&$e()}},e.prototype.get=function(t,n){var i=this;return t&&t.constructor===Object?this.where(t).first(n):t==null?Q(new I.Type("Invalid argument to Table.get()")):this._trans("readonly",function(r){return i.core.get({trans:r,key:t}).then(function(a){return i.hook.reading.fire(a)})}).then(n)},e.prototype.where=function(t){if(typeof t=="string")return new this.db.WhereClause(this,t);if(P(t))return new this.db.WhereClause(this,"[".concat(t.join("+"),"]"));var n=F(t);if(n.length===1)return this.where(n[0]).equals(t[n[0]]);var i=this.schema.indexes.concat(this.schema.primKey).filter(function(f){if(f.compound&&n.every(function(h){return f.keyPath.indexOf(h)>=0})){for(var u=0;u<n.length;++u)if(n.indexOf(f.keyPath[u])===-1)return!1;return!0}return!1}).sort(function(f,u){return f.keyPath.length-u.keyPath.length})[0];if(i&&this.db._maxKey!==Ie){var r=i.keyPath.slice(0,n.length);return this.where(r).equals(r.map(function(f){return t[f]}))}var a=this.schema.idxByName;function o(f,u){return q(f,u)===0}var s=n.reduce(function(f,u){var h=f[0],E=f[1],p=a[u],d=t[u];return[h||p,h||!p?Re(E,p&&p.multi?function(v){var g=de(v,u);return P(g)&&g.some(function(w){return o(d,w)})}:function(v){return o(d,de(v,u))}):E]},[null,null]),c=s[0],l=s[1];return c?this.where(c.name).equals(t[c.keyPath]).filter(l):i?this.filter(l):this.where(n).equals("")},e.prototype.filter=function(t){return this.toCollection().and(t)},e.prototype.count=function(t){return this.toCollection().count(t)},e.prototype.offset=function(t){return this.toCollection().offset(t)},e.prototype.limit=function(t){return this.toCollection().limit(t)},e.prototype.each=function(t){return this.toCollection().each(t)},e.prototype.toArray=function(t){return this.toCollection().toArray(t)},e.prototype.toCollection=function(){return new this.db.Collection(new this.db.WhereClause(this))},e.prototype.orderBy=function(t){return new this.db.Collection(new this.db.WhereClause(this,P(t)?"[".concat(t.join("+"),"]"):t))},e.prototype.reverse=function(){return this.toCollection().reverse()},e.prototype.mapToClass=function(t){var n=this,i=n.db,r=n.name;this.schema.mappedClass=t,t.prototype instanceof di&&(t=(function(c){y(l,c);function l(){return c!==null&&c.apply(this,arguments)||this}return Object.defineProperty(l.prototype,"db",{get:function(){return i},enumerable:!1,configurable:!0}),l.prototype.table=function(){return r},l})(t));for(var a=new Set,o=t.prototype;o;o=H(o))Object.getOwnPropertyNames(o).forEach(function(c){return a.add(c)});var s=function(c){if(!c)return c;var l=Object.create(t.prototype);for(var f in c)if(!a.has(f))try{l[f]=c[f]}catch{}return l};return this.schema.readHook&&this.hook.reading.unsubscribe(this.schema.readHook),this.schema.readHook=s,this.hook("reading",s),t},e.prototype.defineClass=function(){function t(n){N(this,n)}return this.mapToClass(t)},e.prototype.add=function(t,n){var i=this,r=this.schema.primKey,a=r.auto,o=r.keyPath,s=t;return o&&a&&(s=Kt(o)(t)),this._trans("readwrite",function(c){return i.core.mutate({trans:c,type:"add",keys:n!=null?[n]:null,values:[s]})}).then(function(c){return c.numFailures?D.reject(c.failures[0]):c.lastResult}).then(function(c){if(o)try{te(t,o,c)}catch{}return c})},e.prototype.upsert=function(t,n){var i=this,r=this.schema.primKey.keyPath;return this._trans("readwrite",function(a){return i.core.get({trans:a,key:t}).then(function(o){var s=o!=null?o:{};return hi(s,n),r&&te(s,r,t),i.core.mutate({trans:a,type:"put",values:[s],keys:[t],upsert:!0,updates:{keys:[t],changeSpecs:[n]}}).then(function(c){return c.numFailures?D.reject(c.failures[0]):!!o})})})},e.prototype.update=function(t,n){if(typeof t=="object"&&!P(t)){var i=de(t,this.schema.primKey.keyPath);return i===void 0?Q(new I.InvalidArgument("Given object does not contain its primary key")):this.where(":id").equals(i).modify(n)}else return this.where(":id").equals(t).modify(n)},e.prototype.put=function(t,n){var i=this,r=this.schema.primKey,a=r.auto,o=r.keyPath,s=t;return o&&a&&(s=Kt(o)(t)),this._trans("readwrite",function(c){return i.core.mutate({trans:c,type:"put",values:[s],keys:n!=null?[n]:null})}).then(function(c){return c.numFailures?D.reject(c.failures[0]):c.lastResult}).then(function(c){if(o)try{te(t,o,c)}catch{}return c})},e.prototype.delete=function(t){var n=this;return this._trans("readwrite",function(i){return n.core.mutate({trans:i,type:"delete",keys:[t]}).then(function(r){return Tt(n,[t],r)}).then(function(r){return r.numFailures?D.reject(r.failures[0]):void 0})})},e.prototype.clear=function(){var t=this;return this._trans("readwrite",function(n){return t.core.mutate({trans:n,type:"deleteRange",range:fi}).then(function(i){return Tt(t,null,i)})}).then(function(n){return n.numFailures?D.reject(n.failures[0]):void 0})},e.prototype.bulkGet=function(t){var n=this;return this._trans("readonly",function(i){return n.core.getMany({keys:t,trans:i}).then(function(r){return r.map(function(a){return n.hook.reading.fire(a)})})})},e.prototype.bulkAdd=function(t,n,i){var r=this,a=Array.isArray(n)?n:void 0;i=i||(a?void 0:n);var o=i?i.allKeys:void 0;return this._trans("readwrite",function(s){var c=r.schema.primKey,l=c.auto,f=c.keyPath;if(f&&a)throw new I.InvalidArgument("bulkAdd(): keys argument invalid on tables with inbound keys");if(a&&a.length!==t.length)throw new I.InvalidArgument("Arguments objects and keys must have the same length");var u=t.length,h=f&&l?t.map(Kt(f)):t;return r.core.mutate({trans:s,type:"add",keys:a,values:h,wantResults:o}).then(function(E){var p=E.numFailures,d=E.results,v=E.lastResult,g=E.failures,w=o?d:v;if(p===0)return w;throw new qe("".concat(r.name,".bulkAdd(): ").concat(p," of ").concat(u," operations failed"),g)})})},e.prototype.bulkPut=function(t,n,i){var r=this,a=Array.isArray(n)?n:void 0;i=i||(a?void 0:n);var o=i?i.allKeys:void 0;return this._trans("readwrite",function(s){var c=r.schema.primKey,l=c.auto,f=c.keyPath;if(f&&a)throw new I.InvalidArgument("bulkPut(): keys argument invalid on tables with inbound keys");if(a&&a.length!==t.length)throw new I.InvalidArgument("Arguments objects and keys must have the same length");var u=t.length,h=f&&l?t.map(Kt(f)):t;return r.core.mutate({trans:s,type:"put",keys:a,values:h,wantResults:o}).then(function(E){var p=E.numFailures,d=E.results,v=E.lastResult,g=E.failures,w=o?d:v;if(p===0)return w;throw new qe("".concat(r.name,".bulkPut(): ").concat(p," of ").concat(u," operations failed"),g)})})},e.prototype.bulkUpdate=function(t){var n=this,i=this.core,r=t.map(function(s){return s.key}),a=t.map(function(s){return s.changes}),o=[];return this._trans("readwrite",function(s){return i.getMany({trans:s,keys:r,cache:"clone"}).then(function(c){var l=[],f=[];t.forEach(function(h,E){var p=h.key,d=h.changes,v=c[E];if(v){for(var g=0,w=Object.keys(d);g<w.length;g++){var b=w[g],_=d[b];if(b===n.schema.primKey.keyPath){if(q(_,p)!==0)throw new I.Constraint("Cannot update primary key in bulkUpdate()")}else te(v,b,_)}o.push(E),l.push(p),f.push(v)}});var u=l.length;return i.mutate({trans:s,type:"put",keys:l,values:f,updates:{keys:r,changeSpecs:a}}).then(function(h){var E=h.numFailures,p=h.failures;if(E===0)return u;for(var d=0,v=Object.keys(p);d<v.length;d++){var g=v[d],w=o[Number(g)];if(w!=null){var b=p[g];delete p[g],p[w]=b}}throw new qe("".concat(n.name,".bulkUpdate(): ").concat(E," of ").concat(u," operations failed"),p)})})})},e.prototype.bulkDelete=function(t){var n=this,i=t.length;return this._trans("readwrite",function(r){return n.core.mutate({trans:r,type:"delete",keys:t}).then(function(a){return Tt(n,t,a)})}).then(function(r){var a=r.numFailures,o=r.lastResult,s=r.failures;if(a===0)return o;throw new qe("".concat(n.name,".bulkDelete(): ").concat(a," of ").concat(i," operations failed"),s)})},e})();function at(e){var t={},n=function(s,c){if(c){for(var l=arguments.length,f=new Array(l-1);--l;)f[l-1]=arguments[l];return t[s].subscribe.apply(null,f),e}else if(typeof s=="string")return t[s]};n.addEventType=a;for(var i=1,r=arguments.length;i<r;++i)a(arguments[i]);return n;function a(s,c,l){if(typeof s=="object")return o(s);c||(c=lr),l||(l=$);var f={subscribers:[],fire:l,subscribe:function(u){f.subscribers.indexOf(u)===-1&&(f.subscribers.push(u),f.fire=c(f.fire,u))},unsubscribe:function(u){f.subscribers=f.subscribers.filter(function(h){return h!==u}),f.fire=f.subscribers.reduce(c,l)}};return t[s]=n[s]=f,f}function o(s){F(s).forEach(function(c){var l=s[c];if(P(l))a(c,s[c][0],s[c][1]);else if(l==="asap")var f=a(c,et,function(){for(var h=arguments.length,E=new Array(h);h--;)E[h]=arguments[h];f.subscribers.forEach(function(p){Yn(function(){p.apply(null,E)})})});else throw new I.InvalidArgument("Invalid event config")})}}function ot(e,t){return Ve(t).from({prototype:e}),t}function Er(e){return ot(yi.prototype,function(n,i,r){this.db=e,this._tx=r,this.name=n,this.schema=i,this.hook=e._allTables[n]?e._allTables[n].hook:at(null,{creating:[or,$],reading:[ar,et],updating:[cr,$],deleting:[sr,$]})})}function Qe(e,t){return!(e.filter||e.algorithm||e.or)&&(t?e.justLimit:!e.replayFilter)}function mn(e,t){e.filter=Re(e.filter,t)}function vn(e,t,n){var i=e.replayFilter;e.replayFilter=i?function(){return Re(i(),t())}:t,e.justLimit=n&&!i}function jr(e,t){e.isMatch=Re(e.isMatch,t)}function Ot(e,t){if(e.isPrimKey)return t.primaryKey;var n=t.getIndexByKeyPath(e.index);if(!n)throw new I.Schema("KeyPath "+e.index+" on object store "+t.name+" is not indexed");return n}function gi(e,t,n){var i=Ot(e,t.schema);return t.openCursor({trans:n,values:!e.keysOnly,reverse:e.dir==="prev",unique:!!e.unique,query:{index:i,range:e.range}})}function At(e,t,n,i){var r=e.replayFilter?Re(e.filter,e.replayFilter()):e.filter;if(e.or){var a={},o=function(s,c,l){if(!r||r(c,l,function(h){return c.stop(h)},function(h){return c.fail(h)})){var f=c.primaryKey,u=""+f;u==="[object ArrayBuffer]"&&(u=""+new Uint8Array(f)),ee(a,u)||(a[u]=!0,t(s,c,l))}};return Promise.all([e.or._iterate(o,n),xi(gi(e,i,n),e.algorithm,o,!e.keysOnly&&e.valueMapper)])}else return xi(gi(e,i,n),Re(e.algorithm,r),t,!e.keysOnly&&e.valueMapper)}function xi(e,t,n,i){var r=i?function(o,s,c){return n(i(o),s,c)}:n,a=U(r);return e.then(function(o){if(o)return o.start(function(){var s=function(){return o.continue()};(!t||t(o,function(c){return s=c},function(c){o.stop(c),s=$},function(c){o.fail(c),s=$}))&&a(o.value,o,function(c){return s=c}),s()})})}var Sr=(function(){function e(){}return e.prototype._read=function(t,n){var i=this._ctx;return i.error?i.table._trans(null,Q.bind(null,i.error)):i.table._trans("readonly",t).then(n)},e.prototype._write=function(t){var n=this._ctx;return n.error?n.table._trans(null,Q.bind(null,n.error)):n.table._trans("readwrite",t,"locked")},e.prototype._addAlgorithm=function(t){var n=this._ctx;n.algorithm=Re(n.algorithm,t)},e.prototype._iterate=function(t,n){return At(this._ctx,t,n,this._ctx.table.core)},e.prototype.clone=function(t){var n=Object.create(this.constructor.prototype),i=Object.create(this._ctx);return t&&N(i,t),n._ctx=i,n},e.prototype.raw=function(){return this._ctx.valueMapper=null,this},e.prototype.each=function(t){var n=this._ctx;return this._read(function(i){return At(n,t,i,n.table.core)})},e.prototype.count=function(t){var n=this;return this._read(function(i){var r=n._ctx,a=r.table.core;if(Qe(r,!0))return a.count({trans:i,query:{index:Ot(r,a.schema),range:r.range}}).then(function(s){return Math.min(s,r.limit)});var o=0;return At(r,function(){return++o,!1},i,a).then(function(){return o})}).then(t)},e.prototype.sortBy=function(t,n){var i=t.split(".").reverse(),r=i[0],a=i.length-1;function o(l,f){return f?o(l[i[f]],f-1):l[r]}var s=this._ctx.dir==="next"?1:-1;function c(l,f){var u=o(l,a),h=o(f,a);return q(u,h)*s}return this.toArray(function(l){return l.sort(c)}).then(n)},e.prototype.toArray=function(t){var n=this;return this._read(function(i){var r=n._ctx;if(r.dir==="next"&&Qe(r,!0)&&r.limit>0){var a=r.valueMapper,o=Ot(r,r.table.core.schema);return r.table.core.query({trans:i,limit:r.limit,values:!0,query:{index:o,range:r.range}}).then(function(c){var l=c.result;return a?l.map(a):l})}else{var s=[];return At(r,function(c){return s.push(c)},i,r.table.core).then(function(){return s})}},t)},e.prototype.offset=function(t){var n=this._ctx;return t<=0?this:(n.offset+=t,Qe(n)?vn(n,function(){var i=t;return function(r,a){return i===0?!0:i===1?(--i,!1):(a(function(){r.advance(i),i=0}),!1)}}):vn(n,function(){var i=t;return function(){return--i<0}}),this)},e.prototype.limit=function(t){return this._ctx.limit=Math.min(this._ctx.limit,t),vn(this._ctx,function(){var n=t;return function(i,r,a){return--n<=0&&r(a),n>=0}},!0),this},e.prototype.until=function(t,n){return mn(this._ctx,function(i,r,a){return t(i.value)?(r(a),n):!0}),this},e.prototype.first=function(t){return this.limit(1).toArray(function(n){return n[0]}).then(t)},e.prototype.last=function(t){return this.reverse().first(t)},e.prototype.filter=function(t){return mn(this._ctx,function(n){return t(n.value)}),jr(this._ctx,t),this},e.prototype.and=function(t){return this.filter(t)},e.prototype.or=function(t){return new this.db.WhereClause(this._ctx.table,t,this)},e.prototype.reverse=function(){return this._ctx.dir=this._ctx.dir==="prev"?"next":"prev",this._ondirectionchange&&this._ondirectionchange(this._ctx.dir),this},e.prototype.desc=function(){return this.reverse()},e.prototype.eachKey=function(t){var n=this._ctx;return n.keysOnly=!n.isMatch,this.each(function(i,r){t(r.key,r)})},e.prototype.eachUniqueKey=function(t){return this._ctx.unique="unique",this.eachKey(t)},e.prototype.eachPrimaryKey=function(t){var n=this._ctx;return n.keysOnly=!n.isMatch,this.each(function(i,r){t(r.primaryKey,r)})},e.prototype.keys=function(t){var n=this._ctx;n.keysOnly=!n.isMatch;var i=[];return this.each(function(r,a){i.push(a.key)}).then(function(){return i}).then(t)},e.prototype.primaryKeys=function(t){var n=this._ctx;if(n.dir==="next"&&Qe(n,!0)&&n.limit>0)return this._read(function(r){var a=Ot(n,n.table.core.schema);return n.table.core.query({trans:r,values:!1,limit:n.limit,query:{index:a,range:n.range}})}).then(function(r){var a=r.result;return a}).then(t);n.keysOnly=!n.isMatch;var i=[];return this.each(function(r,a){i.push(a.primaryKey)}).then(function(){return i}).then(t)},e.prototype.uniqueKeys=function(t){return this._ctx.unique="unique",this.keys(t)},e.prototype.firstKey=function(t){return this.limit(1).keys(function(n){return n[0]}).then(t)},e.prototype.lastKey=function(t){return this.reverse().firstKey(t)},e.prototype.distinct=function(){var t=this._ctx,n=t.index&&t.table.schema.idxByName[t.index];if(!n||!n.multi)return this;var i={};return mn(this._ctx,function(r){var a=r.primaryKey.toString(),o=ee(i,a);return i[a]=!0,!o}),this},e.prototype.modify=function(t){var n=this,i=this._ctx;return this._write(function(r){var a;typeof t=="function"?a=t:a=function(g){return hi(g,t)};var o=i.table.core,s=o.schema.primaryKey,c=s.outbound,l=s.extractKey,f=200,u=n.db._options.modifyChunkSize;u&&(typeof u=="object"?f=u[o.name]||u["*"]||200:f=u);var h=[],E=0,p=[],d=function(g,w){var b=w.failures,_=w.numFailures;E+=g-_;for(var x=0,j=F(b);x<j.length;x++){var K=j[x];h.push(b[K])}},v=t===wi;return n.clone().primaryKeys().then(function(g){var w=Qe(i)&&i.limit===1/0&&(typeof t!="function"||v)&&{index:i.index,range:i.range},b=function(_){var x=Math.min(f,g.length-_),j=g.slice(_,_+x);return(v?Promise.resolve([]):o.getMany({trans:r,keys:j,cache:"immutable"})).then(function(K){var S=[],R=[],V=c?[]:null,T=v?j:[];if(!v)for(var B=0;B<x;++B){var z=K[B],W={value:De(z),primKey:g[_+B]};a.call(W,W.value,W)!==!1&&(W.value==null?T.push(g[_+B]):!c&&q(l(z),l(W.value))!==0?(T.push(g[_+B]),S.push(W.value)):(R.push(W.value),c&&V.push(g[_+B])))}return Promise.resolve(S.length>0&&o.mutate({trans:r,type:"add",values:S}).then(function(C){for(var Y in C.failures)T.splice(parseInt(Y),1);d(S.length,C)})).then(function(){return(R.length>0||w&&typeof t=="object")&&o.mutate({trans:r,type:"put",keys:V,values:R,criteria:w,changeSpec:typeof t!="function"&&t,isAdditionalChunk:_>0}).then(function(C){return d(R.length,C)})}).then(function(){return(T.length>0||w&&v)&&o.mutate({trans:r,type:"delete",keys:T,criteria:w,isAdditionalChunk:_>0}).then(function(C){return Tt(i.table,T,C)}).then(function(C){return d(T.length,C)})}).then(function(){return g.length>_+x&&b(_+f)})})};return b(0).then(function(){if(h.length>0)throw new yt("Error modifying one or more objects",h,E,p);return g.length})})})},e.prototype.delete=function(){var t=this._ctx,n=t.range;return Qe(t)&&!t.table.schema.yProps&&(t.isPrimKey||n.type===3)?this._write(function(i){var r=t.table.core.schema.primaryKey,a=n;return t.table.core.count({trans:i,query:{index:r,range:a}}).then(function(o){return t.table.core.mutate({trans:i,type:"deleteRange",range:a}).then(function(s){var c=s.failures,l=s.numFailures;if(l)throw new yt("Could not delete some values",Object.keys(c).map(function(f){return c[f]}),o-l);return o-l})})}):this.modify(wi)},e})(),wi=function(e,t){return t.value=null};function Dr(e){return ot(Sr.prototype,function(n,i){this.db=e;var r=fi,a=null;if(i)try{r=i()}catch(l){a=l}var o=n._ctx,s=o.table,c=s.hook.reading.fire;this._ctx={table:s,index:o.index,isPrimKey:!o.index||s.schema.primKey.keyPath&&o.index===s.schema.primKey.name,range:r,keysOnly:!1,dir:"next",unique:"",algorithm:null,filter:null,replayFilter:null,justLimit:!0,isMatch:null,offset:0,limit:1/0,error:a,or:o.or,valueMapper:c!==et?c:null}})}function Kr(e,t){return e<t?-1:e===t?0:1}function Tr(e,t){return e>t?-1:e===t?0:1}function re(e,t,n){var i=e instanceof _i?new e.Collection(e):e;return i._ctx.error=n?new n(t):new TypeError(t),i}function He(e){return new e.Collection(e,function(){return bi("")}).limit(0)}function Or(e){return e==="next"?function(t){return t.toUpperCase()}:function(t){return t.toLowerCase()}}function Ar(e){return e==="next"?function(t){return t.toLowerCase()}:function(t){return t.toUpperCase()}}function Pr(e,t,n,i,r,a){for(var o=Math.min(e.length,i.length),s=-1,c=0;c<o;++c){var l=t[c];if(l!==i[c])return r(e[c],n[c])<0?e.substr(0,c)+n[c]+n.substr(c+1):r(e[c],i[c])<0?e.substr(0,c)+i[c]+n.substr(c+1):s>=0?e.substr(0,s)+t[s]+n.substr(s+1):null;r(e[c],l)<0&&(s=c)}return o<i.length&&a==="next"?e+n.substr(e.length):o<e.length&&a==="prev"?e.substr(0,n.length):s<0?null:e.substr(0,s)+i[s]+n.substr(s+1)}function Pt(e,t,n,i){var r,a,o,s,c,l,f,u=n.length;if(!n.every(function(d){return typeof d=="string"}))return re(e,pi);function h(d){r=Or(d),a=Ar(d),o=d==="next"?Kr:Tr;var v=n.map(function(g){return{lower:a(g),upper:r(g)}}).sort(function(g,w){return o(g.lower,w.lower)});s=v.map(function(g){return g.upper}),c=v.map(function(g){return g.lower}),l=d,f=d==="next"?"":i}h("next");var E=new e.Collection(e,function(){return _e(s[0],c[u-1]+i)});E._ondirectionchange=function(d){h(d)};var p=0;return E._addAlgorithm(function(d,v,g){var w=d.key;if(typeof w!="string")return!1;var b=a(w);if(t(b,c,p))return!0;for(var _=null,x=p;x<u;++x){var j=Pr(w,b,s[x],c[x],o,l);j===null&&_===null?p=x+1:(_===null||o(_,j)>0)&&(_=j)}return v(_!==null?function(){d.continue(_+f)}:g),!1}),E}function _e(e,t,n,i){return{type:2,lower:e,upper:t,lowerOpen:n,upperOpen:i}}function bi(e){return{type:1,lower:e,upper:e}}var _i=(function(){function e(){}return Object.defineProperty(e.prototype,"Collection",{get:function(){return this._ctx.table.db.Collection},enumerable:!1,configurable:!0}),e.prototype.between=function(t,n,i,r){i=i!==!1,r=r===!0;try{return this._cmp(t,n)>0||this._cmp(t,n)===0&&(i||r)&&!(i&&r)?He(this):new this.Collection(this,function(){return _e(t,n,!i,!r)})}catch{return re(this,ve)}},e.prototype.equals=function(t){return t==null?re(this,ve):new this.Collection(this,function(){return bi(t)})},e.prototype.above=function(t){return t==null?re(this,ve):new this.Collection(this,function(){return _e(t,void 0,!0)})},e.prototype.aboveOrEqual=function(t){return t==null?re(this,ve):new this.Collection(this,function(){return _e(t,void 0,!1)})},e.prototype.below=function(t){return t==null?re(this,ve):new this.Collection(this,function(){return _e(void 0,t,!1,!0)})},e.prototype.belowOrEqual=function(t){return t==null?re(this,ve):new this.Collection(this,function(){return _e(void 0,t)})},e.prototype.startsWith=function(t){return typeof t!="string"?re(this,pi):this.between(t,t+Ie,!0,!0)},e.prototype.startsWithIgnoreCase=function(t){return t===""?this.startsWith(t):Pt(this,function(n,i){return n.indexOf(i[0])===0},[t],Ie)},e.prototype.equalsIgnoreCase=function(t){return Pt(this,function(n,i){return n===i[0]},[t],"")},e.prototype.anyOfIgnoreCase=function(){var t=me.apply(Ne,arguments);return t.length===0?He(this):Pt(this,function(n,i){return i.indexOf(n)!==-1},t,"")},e.prototype.startsWithAnyOfIgnoreCase=function(){var t=me.apply(Ne,arguments);return t.length===0?He(this):Pt(this,function(n,i){return i.some(function(r){return n.indexOf(r)===0})},t,Ie)},e.prototype.anyOf=function(){var t=this,n=me.apply(Ne,arguments),i=this._cmp;try{n.sort(i)}catch{return re(this,ve)}if(n.length===0)return He(this);var r=new this.Collection(this,function(){return _e(n[0],n[n.length-1])});r._ondirectionchange=function(o){i=o==="next"?t._ascending:t._descending,n.sort(i)};var a=0;return r._addAlgorithm(function(o,s,c){for(var l=o.key;i(l,n[a])>0;)if(++a,a===n.length)return s(c),!1;return i(l,n[a])===0?!0:(s(function(){o.continue(n[a])}),!1)}),r},e.prototype.notEqual=function(t){return this.inAnyRange([[pn,t],[t,this.db._maxKey]],{includeLowers:!1,includeUppers:!1})},e.prototype.noneOf=function(){var t=me.apply(Ne,arguments);if(t.length===0)return new this.Collection(this);try{t.sort(this._ascending)}catch{return re(this,ve)}var n=t.reduce(function(i,r){return i?i.concat([[i[i.length-1][1],r]]):[[pn,r]]},null);return n.push([t[t.length-1],this.db._maxKey]),this.inAnyRange(n,{includeLowers:!1,includeUppers:!1})},e.prototype.inAnyRange=function(t,n){var i=this,r=this._cmp,a=this._ascending,o=this._descending,s=this._min,c=this._max;if(t.length===0)return He(this);if(!t.every(function(x){return x[0]!==void 0&&x[1]!==void 0&&a(x[0],x[1])<=0}))return re(this,"First argument to inAnyRange() must be an Array of two-value Arrays [lower,upper] where upper must not be lower than lower",I.InvalidArgument);var l=!n||n.includeLowers!==!1,f=n&&n.includeUppers===!0;function u(x,j){for(var K=0,S=x.length;K<S;++K){var R=x[K];if(r(j[0],R[1])<0&&r(j[1],R[0])>0){R[0]=s(R[0],j[0]),R[1]=c(R[1],j[1]);break}}return K===S&&x.push(j),x}var h=a;function E(x,j){return h(x[0],j[0])}var p;try{p=t.reduce(u,[]),p.sort(E)}catch{return re(this,ve)}var d=0,v=f?function(x){return a(x,p[d][1])>0}:function(x){return a(x,p[d][1])>=0},g=l?function(x){return o(x,p[d][0])>0}:function(x){return o(x,p[d][0])>=0};function w(x){return!v(x)&&!g(x)}var b=v,_=new this.Collection(this,function(){return _e(p[0][0],p[p.length-1][1],!l,!f)});return _._ondirectionchange=function(x){x==="next"?(b=v,h=a):(b=g,h=o),p.sort(E)},_._addAlgorithm(function(x,j,K){for(var S=x.key;b(S);)if(++d,d===p.length)return j(K),!1;return w(S)?!0:(i._cmp(S,p[d][1])===0||i._cmp(S,p[d][0])===0||j(function(){h===a?x.continue(p[d][0]):x.continue(p[d][1])}),!1)}),_},e.prototype.startsWithAnyOf=function(){var t=me.apply(Ne,arguments);return t.every(function(n){return typeof n=="string"})?t.length===0?He(this):this.inAnyRange(t.map(function(n){return[n,n+Ie]})):re(this,"startsWithAnyOf() only works with strings")},e})();function Cr(e){return ot(_i.prototype,function(n,i,r){if(this.db=e,this._ctx={table:n,index:i===":id"?null:i,or:r},this._cmp=this._ascending=q,this._descending=function(a,o){return q(o,a)},this._max=function(a,o){return q(a,o)>0?a:o},this._min=function(a,o){return q(a,o)<0?a:o},this._IDBKeyRange=e._deps.IDBKeyRange,!this._IDBKeyRange)throw new I.MissingAPI})}function le(e){return U(function(t){return st(t),e(t.target.error),!1})}function st(e){e.stopPropagation&&e.stopPropagation(),e.preventDefault&&e.preventDefault()}var ct="storagemutated",hn="x-storagemutated-1",ke=at(null,ct),Ir=(function(){function e(){}return e.prototype._lock=function(){return Je(!A.global),++this._reculock,this._reculock===1&&!A.global&&(A.lockOwnerFor=this),this},e.prototype._unlock=function(){if(Je(!A.global),--this._reculock===0)for(A.global||(A.lockOwnerFor=null);this._blockedFuncs.length>0&&!this._locked();){var t=this._blockedFuncs.shift();try{Ce(t[1],t[0])}catch{}}return this},e.prototype._locked=function(){return this._reculock&&A.lockOwnerFor!==this},e.prototype.create=function(t){var n=this;if(!this.mode)return this;var i=this.db.idbdb,r=this.db._state.dbOpenError;if(Je(!this.idbtrans),!t&&!i)switch(r&&r.name){case"DatabaseClosedError":throw new I.DatabaseClosed(r);case"MissingAPIError":throw new I.MissingAPI(r.message,r);default:throw new I.OpenFailed(r)}if(!this.active)throw new I.TransactionInactive;return Je(this._completion._state===null),t=this.idbtrans=t||(this.db.core?this.db.core.transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability}):i.transaction(this.storeNames,this.mode,{durability:this.chromeTransactionDurability})),t.onerror=U(function(a){st(a),n._reject(t.error)}),t.onabort=U(function(a){st(a),n.active&&n._reject(new I.Abort(t.error)),n.active=!1,n.on("abort").fire(a)}),t.oncomplete=U(function(){n.active=!1,n._resolve(),"mutatedParts"in t&&ke.storagemutated.fire(t.mutatedParts)}),this},e.prototype._promise=function(t,n,i){var r=this;if(t==="readwrite"&&this.mode!=="readwrite")return Q(new I.ReadOnly("Transaction is readonly"));if(!this.active)return Q(new I.TransactionInactive);if(this._locked())return new D(function(o,s){r._blockedFuncs.push([function(){r._promise(t,n,i).then(o,s)},A])});if(i)return xe(function(){var o=new D(function(s,c){r._lock();var l=n(s,c,r);l&&l.then&&l.then(s,c)});return o.finally(function(){return r._unlock()}),o._lib=!0,o});var a=new D(function(o,s){var c=n(o,s,r);c&&c.then&&c.then(o,s)});return a._lib=!0,a},e.prototype._root=function(){return this.parent?this.parent._root():this},e.prototype.waitFor=function(t){var n=this._root(),i=D.resolve(t);if(n._waitingFor)n._waitingFor=n._waitingFor.then(function(){return i});else{n._waitingFor=i,n._waitingQueue=[];var r=n.idbtrans.objectStore(n.storeNames[0]);(function o(){for(++n._spinCount;n._waitingQueue.length;)n._waitingQueue.shift()();n._waitingFor&&(r.get(-1/0).onsuccess=o)})()}var a=n._waitingFor;return new D(function(o,s){i.then(function(c){return n._waitingQueue.push(U(o.bind(null,c)))},function(c){return n._waitingQueue.push(U(s.bind(null,c)))}).finally(function(){n._waitingFor===a&&(n._waitingFor=null)})})},e.prototype.abort=function(){this.active&&(this.active=!1,this.idbtrans&&this.idbtrans.abort(),this._reject(new I.Abort))},e.prototype.table=function(t){var n=this._memoizedTables||(this._memoizedTables={});if(ee(n,t))return n[t];var i=this.schema[t];if(!i)throw new I.NotFound("Table "+t+" not part of transaction");var r=new this.db.Table(t,i,this);return r.core=this.db.core.table(t),n[t]=r,r},e})();function Rr(e){return ot(Ir.prototype,function(n,i,r,a,o){var s=this;n!=="readonly"&&i.forEach(function(c){var l,f=(l=r[c])===null||l===void 0?void 0:l.yProps;f&&(i=i.concat(f.map(function(u){return u.updatesTable})))}),this.db=e,this.mode=n,this.storeNames=i,this.schema=r,this.chromeTransactionDurability=a,this.idbtrans=null,this.on=at(this,"complete","error","abort"),this.parent=o||null,this.active=!0,this._reculock=0,this._blockedFuncs=[],this._resolve=null,this._reject=null,this._waitingFor=null,this._waitingQueue=null,this._spinCount=0,this._completion=new D(function(c,l){s._resolve=c,s._reject=l}),this._completion.then(function(){s.active=!1,s.on.complete.fire()},function(c){var l=s.active;return s.active=!1,s.on.error.fire(c),s.parent?s.parent._reject(c):l&&s.idbtrans&&s.idbtrans.abort(),Q(c)})})}function yn(e,t,n,i,r,a,o,s){return{name:e,keyPath:t,unique:n,multi:i,auto:r,compound:a,src:(n&&!o?"&":"")+(i?"*":"")+(r?"++":"")+ki(t),type:s}}function ki(e){return typeof e=="string"?e:e?"["+[].join.call(e,"+")+"]":""}function gn(e,t,n){return{name:e,primKey:t,indexes:n,mappedClass:null,idxByName:Qi(n,function(i){return[i.name,i]})}}function zr(e){return e.length===1?e[0]:e}var lt=function(e){try{return e.only([[]]),lt=function(){return[[]]},[[]]}catch{return lt=function(){return Ie},Ie}};function xn(e){return e==null?function(){}:typeof e=="string"?Fr(e):function(t){return de(t,e)}}function Fr(e){var t=e.split(".");return t.length===1?function(n){return n[e]}:function(n){return de(n,e)}}function Ei(e){return[].slice.call(e)}var Br=0;function ut(e){return e==null?":id":typeof e=="string"?e:"[".concat(e.join("+"),"]")}function Mr(e,t,n){function i(u,h){var E=Ei(u.objectStoreNames);return{schema:{name:u.name,tables:E.map(function(p){return h.objectStore(p)}).map(function(p){var d=p.keyPath,v=p.autoIncrement,g=P(d),w=d==null,b={},_={name:p.name,primaryKey:{name:null,isPrimaryKey:!0,outbound:w,compound:g,keyPath:d,autoIncrement:v,unique:!0,extractKey:xn(d)},indexes:Ei(p.indexNames).map(function(x){return p.index(x)}).map(function(x){var j=x.name,K=x.unique,S=x.multiEntry,R=x.keyPath,V=P(R),T={name:j,compound:V,keyPath:R,unique:K,multiEntry:S,extractKey:xn(R)};return b[ut(R)]=T,T}),getIndexByKeyPath:function(x){return b[ut(x)]}};return b[":id"]=_.primaryKey,d!=null&&(b[ut(d)]=_.primaryKey),_})},hasGetAll:E.length>0&&"getAll"in h.objectStore(E[0])&&!(typeof navigator<"u"&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604)}}function r(u){if(u.type===3)return null;if(u.type===4)throw new Error("Cannot convert never type to IDBKeyRange");var h=u.lower,E=u.upper,p=u.lowerOpen,d=u.upperOpen,v=h===void 0?E===void 0?null:t.upperBound(E,!!d):E===void 0?t.lowerBound(h,!!p):t.bound(h,E,!!p,!!d);return v}function a(u){var h=u.name;function E(v){var g=v.trans,w=v.type,b=v.keys,_=v.values,x=v.range;return new Promise(function(j,K){j=U(j);var S=g.objectStore(h),R=S.keyPath==null,V=w==="put"||w==="add";if(!V&&w!=="delete"&&w!=="deleteRange")throw new Error("Invalid operation type: "+w);var T=(b||_||{length:1}).length;if(b&&_&&b.length!==_.length)throw new Error("Given keys array must have same length as given values array.");if(T===0)return j({numFailures:0,failures:{},results:[],lastResult:void 0});var B,z=[],W=[],C=0,Y=function(pe){++C,st(pe)};if(w==="deleteRange"){if(x.type===4)return j({numFailures:C,failures:W,results:[],lastResult:void 0});x.type===3?z.push(B=S.clear()):z.push(B=S.delete(r(x)))}else{var J=V?R?[_,b]:[_,null]:[b,null],ue=J[0],ne=J[1];if(V)for(var ae=0;ae<T;++ae)z.push(B=ne&&ne[ae]!==void 0?S[w](ue[ae],ne[ae]):S[w](ue[ae])),B.onerror=Y;else for(var ae=0;ae<T;++ae)z.push(B=S[w](ue[ae])),B.onerror=Y}var Se=function(pe){var dt=pe.target.result;z.forEach(function(se,Wt){return se.error!=null&&(W[Wt]=se.error)}),j({numFailures:C,failures:W,results:w==="delete"?b:z.map(function(se){return se.result}),lastResult:dt})};B.onerror=function(pe){Y(pe),Se(pe)},B.onsuccess=Se})}function p(v){var g=v.trans,w=v.values,b=v.query,_=v.reverse,x=v.unique;return new Promise(function(j,K){j=U(j);var S=b.index,R=b.range,V=g.objectStore(h),T=S.isPrimaryKey?V:V.index(S.name),B=_?x?"prevunique":"prev":x?"nextunique":"next",z=w||!("openKeyCursor"in T)?T.openCursor(r(R),B):T.openKeyCursor(r(R),B);z.onerror=le(K),z.onsuccess=U(function(W){var C=z.result;if(!C){j(null);return}C.___id=++Br,C.done=!1;var Y=C.continue.bind(C),J=C.continuePrimaryKey;J&&(J=J.bind(C));var ue=C.advance.bind(C),ne=function(){throw new Error("Cursor not started")},ae=function(){throw new Error("Cursor not stopped")};C.trans=g,C.stop=C.continue=C.continuePrimaryKey=C.advance=ne,C.fail=U(K),C.next=function(){var Se=this,pe=1;return this.start(function(){return pe--?Se.continue():Se.stop()}).then(function(){return Se})},C.start=function(Se){var pe=new Promise(function(se,Wt){se=U(se),z.onerror=le(Wt),C.fail=Wt,C.stop=function(Sa){C.stop=C.continue=C.continuePrimaryKey=C.advance=ae,se(Sa)}}),dt=function(){if(z.result)try{Se()}catch(se){C.fail(se)}else C.done=!0,C.start=function(){throw new Error("Cursor behind last entry")},C.stop()};return z.onsuccess=U(function(se){z.onsuccess=dt,dt()}),C.continue=Y,C.continuePrimaryKey=J,C.advance=ue,dt(),pe},j(C)},K)})}function d(v){return function(g){return new Promise(function(w,b){w=U(w);var _=g.trans,x=g.values,j=g.limit,K=g.query,S=j===1/0?void 0:j,R=K.index,V=K.range,T=_.objectStore(h),B=R.isPrimaryKey?T:T.index(R.name),z=r(V);if(j===0)return w({result:[]});if(v){var W=x?B.getAll(z,S):B.getAllKeys(z,S);W.onsuccess=function(ue){return w({result:ue.target.result})},W.onerror=le(b)}else{var C=0,Y=x||!("openKeyCursor"in B)?B.openCursor(z):B.openKeyCursor(z),J=[];Y.onsuccess=function(ue){var ne=Y.result;if(!ne)return w({result:J});if(J.push(x?ne.value:ne.primaryKey),++C===j)return w({result:J});ne.continue()},Y.onerror=le(b)}})}}return{name:h,schema:u,mutate:E,getMany:function(v){var g=v.trans,w=v.keys;return new Promise(function(b,_){b=U(b);for(var x=g.objectStore(h),j=w.length,K=new Array(j),S=0,R=0,V,T=function(C){var Y=C.target;(K[Y._pos]=Y.result)!=null,++R===S&&b(K)},B=le(_),z=0;z<j;++z){var W=w[z];W!=null&&(V=x.get(w[z]),V._pos=z,V.onsuccess=T,V.onerror=B,++S)}S===0&&b(K)})},get:function(v){var g=v.trans,w=v.key;return new Promise(function(b,_){b=U(b);var x=g.objectStore(h),j=x.get(w);j.onsuccess=function(K){return b(K.target.result)},j.onerror=le(_)})},query:d(c),openCursor:p,count:function(v){var g=v.query,w=v.trans,b=g.index,_=g.range;return new Promise(function(x,j){var K=w.objectStore(h),S=b.isPrimaryKey?K:K.index(b.name),R=r(_),V=R?S.count(R):S.count();V.onsuccess=U(function(T){return x(T.target.result)}),V.onerror=le(j)})}}}var o=i(e,n),s=o.schema,c=o.hasGetAll,l=s.tables.map(function(u){return a(u)}),f={};return l.forEach(function(u){return f[u.name]=u}),{stack:"dbcore",transaction:e.transaction.bind(e),table:function(u){var h=f[u];if(!h)throw new Error("Table '".concat(u,"' not found"));return f[u]},MIN_KEY:-1/0,MAX_KEY:lt(t),schema:s}}function Vr(e,t){return t.reduce(function(n,i){var r=i.create;return m(m({},n),r(n))},e)}function Nr(e,t,n,i){var r=n.IDBKeyRange;n.indexedDB;var a=Vr(Mr(t,r,i),e.dbcore);return{dbcore:a}}function Ct(e,t){var n=t.db,i=Nr(e._middlewares,n,e._deps,t);e.core=i.dbcore,e.tables.forEach(function(r){var a=r.name;e.core.schema.tables.some(function(o){return o.name===a})&&(r.core=e.core.table(a),e[a]instanceof e.Table&&(e[a].core=r.core))})}function It(e,t,n,i){n.forEach(function(r){var a=i[r];t.forEach(function(o){var s=$n(o,r);(!s||"value"in s&&s.value===void 0)&&(o===e.Transaction.prototype||o instanceof e.Transaction?ye(o,r,{get:function(){return this.table(r)},set:function(c){Wn(this,r,{value:c,writable:!0,configurable:!0,enumerable:!0})}}):o[r]=new e.Table(r,a))})})}function wn(e,t){t.forEach(function(n){for(var i in n)n[i]instanceof e.Table&&delete n[i]})}function Lr(e,t){return e._cfg.version-t._cfg.version}function qr(e,t,n,i){var r=e._dbSchema;n.objectStoreNames.contains("$meta")&&!r.$meta&&(r.$meta=gn("$meta",Si("")[0],[]),e._storeNames.push("$meta"));var a=e._createTransaction("readwrite",e._storeNames,r);a.create(n),a._completion.catch(i);var o=a._reject.bind(a),s=A.transless||A;xe(function(){if(A.trans=a,A.transless=s,t===0)F(r).forEach(function(c){_n(n,c,r[c].primKey,r[c].indexes)}),Ct(e,n),D.follow(function(){return e.on.populate.fire(a)}).catch(o);else return Ct(e,n),$r(e,a,t).then(function(c){return Ur(e,c,a,n)}).catch(o)})}function Wr(e,t){ji(e._dbSchema,t),t.db.version%10===0&&!t.objectStoreNames.contains("$meta")&&t.db.createObjectStore("$meta").add(Math.ceil(t.db.version/10-1),"version");var n=zt(e,e.idbdb,t);Ft(e,e._dbSchema,t);for(var i=bn(n,e._dbSchema),r=function(l){if(l.change.length||l.recreate)return{value:void 0};var f=t.objectStore(l.name);l.add.forEach(function(u){Rt(f,u)})},a=0,o=i.change;a<o.length;a++){var s=o[a],c=r(s);if(typeof c=="object")return c.value}}function $r(e,t,n){return t.storeNames.includes("$meta")?t.table("$meta").get("version").then(function(i){return i!=null?i:n}):D.resolve(n)}function Ur(e,t,n,i){var r=[],a=e._versions,o=e._dbSchema=zt(e,e.idbdb,i),s=a.filter(function(l){return l._cfg.version>=t});if(s.length===0)return D.resolve();s.forEach(function(l){r.push(function(){var f=o,u=l._cfg.dbschema;Ft(e,f,i),Ft(e,u,i),o=e._dbSchema=u;var h=bn(f,u);h.add.forEach(function(w){_n(i,w[0],w[1].primKey,w[1].indexes)}),h.change.forEach(function(w){if(w.recreate)throw new I.Upgrade("Not yet support for changing primary key");var b=i.objectStore(w.name);w.add.forEach(function(_){return Rt(b,_)}),w.change.forEach(function(_){b.deleteIndex(_.name),Rt(b,_)}),w.del.forEach(function(_){return b.deleteIndex(_)})});var E=l._cfg.contentUpgrade;if(E&&l._cfg.version>t){Ct(e,i),n._memoizedTables={};var p=Qn(u);h.del.forEach(function(w){p[w]=f[w]}),wn(e,[e.Transaction.prototype]),It(e,[e.Transaction.prototype],F(p),p),n.schema=p;var d=Gt(E);d&&Ue();var v,g=D.follow(function(){if(v=E(n),v&&d){var w=we.bind(null,null);v.then(w,w)}});return v&&typeof v.then=="function"?D.resolve(v):g.then(function(){return v})}}),r.push(function(f){var u=l._cfg.dbschema;Yr(u,f),wn(e,[e.Transaction.prototype]),It(e,[e.Transaction.prototype],e._storeNames,e._dbSchema),n.schema=e._dbSchema}),r.push(function(f){e.idbdb.objectStoreNames.contains("$meta")&&(Math.ceil(e.idbdb.version/10)===l._cfg.version?(e.idbdb.deleteObjectStore("$meta"),delete e._dbSchema.$meta,e._storeNames=e._storeNames.filter(function(u){return u!=="$meta"})):f.objectStore("$meta").put(l._cfg.version,"version"))})});function c(){return r.length?D.resolve(r.shift()(n.idbtrans)).then(c):D.resolve()}return c().then(function(){ji(o,i)})}function bn(e,t){var n={del:[],add:[],change:[]},i;for(i in e)t[i]||n.del.push(i);for(i in t){var r=e[i],a=t[i];if(!r)n.add.push([i,a]);else{var o={name:i,def:a,recreate:!1,del:[],add:[],change:[]};if(""+(r.primKey.keyPath||"")!=""+(a.primKey.keyPath||"")||r.primKey.auto!==a.primKey.auto)o.recreate=!0,n.change.push(o);else{var s=r.idxByName,c=a.idxByName,l=void 0;for(l in s)c[l]||o.del.push(l);for(l in c){var f=s[l],u=c[l];f?f.src!==u.src&&o.change.push(u):o.add.push(u)}(o.del.length>0||o.add.length>0||o.change.length>0)&&n.change.push(o)}}}return n}function _n(e,t,n,i){var r=e.db.createObjectStore(t,n.keyPath?{keyPath:n.keyPath,autoIncrement:n.auto}:{autoIncrement:n.auto});return i.forEach(function(a){return Rt(r,a)}),r}function ji(e,t){F(e).forEach(function(n){t.db.objectStoreNames.contains(n)||_n(t,n,e[n].primKey,e[n].indexes)})}function Yr(e,t){[].slice.call(t.db.objectStoreNames).forEach(function(n){return e[n]==null&&t.db.deleteObjectStore(n)})}function Rt(e,t){e.createIndex(t.name,t.keyPath,{unique:t.unique,multiEntry:t.multi})}function zt(e,t,n){var i={},r=ht(t.objectStoreNames,0);return r.forEach(function(a){for(var o=n.objectStore(a),s=o.keyPath,c=yn(ki(s),s||"",!0,!1,!!o.autoIncrement,s&&typeof s!="string",!0),l=[],f=0;f<o.indexNames.length;++f){var u=o.index(o.indexNames[f]);s=u.keyPath;var h=yn(u.name,s,!!u.unique,!!u.multiEntry,!1,s&&typeof s!="string",!1);l.push(h)}i[a]=gn(a,c,l)}),i}function Qr(e,t,n){e.verno=t.version/10;var i=e._dbSchema=zt(e,t,n);e._storeNames=ht(t.objectStoreNames,0),It(e,[e._allTables],F(i),i)}function Hr(e,t){var n=zt(e,e.idbdb,t),i=bn(n,e._dbSchema);return!(i.add.length||i.change.some(function(r){return r.add.length||r.change.length}))}function Ft(e,t,n){for(var i=n.db.objectStoreNames,r=0;r<i.length;++r){var a=i[r],o=n.objectStore(a);e._hasGetAll="getAll"in o;for(var s=0;s<o.indexNames.length;++s){var c=o.indexNames[s],l=o.index(c).keyPath,f=typeof l=="string"?l:"["+ht(l).join("+")+"]";if(t[a]){var u=t[a].idxByName[f];u&&(u.name=c,delete t[a].idxByName[f],t[a].idxByName[c]=u)}}}typeof navigator<"u"&&/Safari/.test(navigator.userAgent)&&!/(Chrome\/|Edge\/)/.test(navigator.userAgent)&&O.WorkerGlobalScope&&O instanceof O.WorkerGlobalScope&&[].concat(navigator.userAgent.match(/Safari\/(\d*)/))[1]<604&&(e._hasGetAll=!1)}function Si(e){return e.split(",").map(function(t,n){var i,r=t.split(":"),a=(i=r[1])===null||i===void 0?void 0:i.trim();t=r[0].trim();var o=t.replace(/([&*]|\+\+)/g,""),s=/^\[/.test(o)?o.match(/^\[(.*)\]$/)[1].split("+"):o;return yn(o,s||null,/\&/.test(t),/\*/.test(t),/\+\+/.test(t),P(s),n===0,a)})}var Gr=(function(){function e(){}return e.prototype._createTableSchema=function(t,n,i){return gn(t,n,i)},e.prototype._parseIndexSyntax=function(t){return Si(t)},e.prototype._parseStoresSpec=function(t,n){var i=this;F(t).forEach(function(r){if(t[r]!==null){var a=i._parseIndexSyntax(t[r]),o=a.shift();if(!o)throw new I.Schema("Invalid schema for table "+r+": "+t[r]);if(o.unique=!0,o.multi)throw new I.Schema("Primary key cannot be multiEntry*");a.forEach(function(c){if(c.auto)throw new I.Schema("Only primary key can be marked as autoIncrement (++)");if(!c.keyPath)throw new I.Schema("Index must have a name and cannot be an empty string")});var s=i._createTableSchema(r,o,a);n[r]=s}})},e.prototype.stores=function(t){var n=this.db;this._cfg.storesSource=this._cfg.storesSource?N(this._cfg.storesSource,t):t;var i=n._versions,r={},a={};return i.forEach(function(o){N(r,o._cfg.storesSource),a=o._cfg.dbschema={},o._parseStoresSpec(r,a)}),n._dbSchema=a,wn(n,[n._allTables,n,n.Transaction.prototype]),It(n,[n._allTables,n,n.Transaction.prototype,this._cfg.tables],F(a),a),n._storeNames=F(a),this},e.prototype.upgrade=function(t){return this._cfg.contentUpgrade=Zt(this._cfg.contentUpgrade||$,t),this},e})();function Xr(e){return ot(Gr.prototype,function(n){this.db=e,this._cfg={version:n,storesSource:null,dbschema:{},tables:{},contentUpgrade:null}})}function kn(e,t){var n=e._dbNamesDB;return n||(n=e._dbNamesDB=new he(Dt,{addons:[],indexedDB:e,IDBKeyRange:t}),n.version(1).stores({dbnames:"name"})),n.table("dbnames")}function En(e){return e&&typeof e.databases=="function"}function Jr(e){var t=e.indexedDB,n=e.IDBKeyRange;return En(t)?Promise.resolve(t.databases()).then(function(i){return i.map(function(r){return r.name}).filter(function(r){return r!==Dt})}):kn(t,n).toCollection().primaryKeys()}function Zr(e,t){var n=e.indexedDB,i=e.IDBKeyRange;!En(n)&&t!==Dt&&kn(n,i).put({name:t}).catch($)}function ea(e,t){var n=e.indexedDB,i=e.IDBKeyRange;!En(n)&&t!==Dt&&kn(n,i).delete(t).catch($)}function jn(e){return xe(function(){return A.letThrough=!0,e()})}function ta(){var e=!navigator.userAgentData&&/Safari\//.test(navigator.userAgent)&&!/Chrom(e|ium)\//.test(navigator.userAgent);if(!e||!indexedDB.databases)return Promise.resolve();var t;return new Promise(function(n){var i=function(){return indexedDB.databases().finally(n)};t=setInterval(i,100),i()}).finally(function(){return clearInterval(t)})}var Sn;function Dn(e){return!("from"in e)}var X=function(e,t){if(this)N(this,arguments.length?{d:1,from:e,to:arguments.length>1?t:e}:{d:0});else{var n=new X;return e&&"d"in e&&N(n,e),n}};Me(X.prototype,(Sn={add:function(e){return ft(this,e),this},addKey:function(e){return pt(this,e,e),this},addKeys:function(e){var t=this;return e.forEach(function(n){return pt(t,n,n)}),this},hasKey:function(e){var t=Bt(this).next(e).value;return t&&q(t.from,e)<=0&&q(t.to,e)>=0}},Sn[Ht]=function(){return Bt(this)},Sn));function pt(e,t,n){var i=q(t,n);if(!isNaN(i)){if(i>0)throw RangeError();if(Dn(e))return N(e,{from:t,to:n,d:1});var r=e.l,a=e.r;if(q(n,e.from)<0)return r?pt(r,t,n):e.l={from:t,to:n,d:1,l:null,r:null},Ki(e);if(q(t,e.to)>0)return a?pt(a,t,n):e.r={from:t,to:n,d:1,l:null,r:null},Ki(e);q(t,e.from)<0&&(e.from=t,e.l=null,e.d=a?a.d+1:1),q(n,e.to)>0&&(e.to=n,e.r=null,e.d=e.l?e.l.d+1:1);var o=!e.r;r&&!e.l&&ft(e,r),a&&o&&ft(e,a)}}function ft(e,t){function n(i,r){var a=r.from,o=r.to,s=r.l,c=r.r;pt(i,a,o),s&&n(i,s),c&&n(i,c)}Dn(t)||n(e,t)}function Di(e,t){var n=Bt(t),i=n.next();if(i.done)return!1;for(var r=i.value,a=Bt(e),o=a.next(r.from),s=o.value;!i.done&&!o.done;){if(q(s.from,r.to)<=0&&q(s.to,r.from)>=0)return!0;q(r.from,s.from)<0?r=(i=n.next(s.from)).value:s=(o=a.next(r.from)).value}return!1}function Bt(e){var t=Dn(e)?null:{s:0,n:e};return{next:function(n){for(var i=arguments.length>0;t;)switch(t.s){case 0:if(t.s=1,i)for(;t.n.l&&q(n,t.n.from)<0;)t={up:t,n:t.n.l,s:1};else for(;t.n.l;)t={up:t,n:t.n.l,s:1};case 1:if(t.s=2,!i||q(n,t.n.to)<=0)return{value:t.n,done:!1};case 2:if(t.n.r){t.s=3,t={up:t,n:t.n.r,s:0};continue}case 3:t=t.up}return{done:!0}}}}function Ki(e){var t,n,i=(((t=e.r)===null||t===void 0?void 0:t.d)||0)-(((n=e.l)===null||n===void 0?void 0:n.d)||0),r=i>1?"r":i<-1?"l":"";if(r){var a=r==="r"?"l":"r",o=m({},e),s=e[r];e.from=s.from,e.to=s.to,e[r]=s[r],o[r]=s[a],e[a]=o,o.d=Ti(o)}e.d=Ti(e)}function Ti(e){var t=e.r,n=e.l;return(t?n?Math.max(t.d,n.d):t.d:n?n.d:0)+1}function Mt(e,t){return F(t).forEach(function(n){e[n]?ft(e[n],t[n]):e[n]=Xn(t[n])}),e}function Kn(e,t){return e.all||t.all||Object.keys(e).some(function(n){return t[n]&&Di(t[n],e[n])})}var ze={},Tn={},On=!1;function Vt(e,t){Mt(Tn,e),On||(On=!0,setTimeout(function(){On=!1;var n=Tn;Tn={},An(n,!1)},0))}function An(e,t){t===void 0&&(t=!1);var n=new Set;if(e.all)for(var i=0,r=Object.values(ze);i<r.length;i++){var a=r[i];Oi(a,e,n,t)}else for(var o in e){var s=/^idb\:\/\/(.*)\/(.*)\//.exec(o);if(s){var c=s[1],l=s[2],a=ze["idb://".concat(c,"/").concat(l)];a&&Oi(a,e,n,t)}}n.forEach(function(f){return f()})}function Oi(e,t,n,i){for(var r=[],a=0,o=Object.entries(e.queries.query);a<o.length;a++){for(var s=o[a],c=s[0],l=s[1],f=[],u=0,h=l;u<h.length;u++){var E=h[u];Kn(t,E.obsSet)?E.subscribers.forEach(function(g){return n.add(g)}):i&&f.push(E)}i&&r.push([c,f])}if(i)for(var p=0,d=r;p<d.length;p++){var v=d[p],c=v[0],f=v[1];e.queries.query[c]=f}}function na(e){var t=e._state,n=e._deps.indexedDB;if(t.isBeingOpened||e.idbdb)return t.dbReadyPromise.then(function(){return t.dbOpenError?Q(t.dbOpenError):e});t.isBeingOpened=!0,t.dbOpenError=null,t.openComplete=!1;var i=t.openCanceller,r=Math.round(e.verno*10),a=!1;function o(){if(t.openCanceller!==i)throw new I.DatabaseClosed("db.open() was cancelled")}var s=t.dbReadyResolve,c=null,l=!1,f=function(){return new D(function(u,h){if(o(),!n)throw new I.MissingAPI;var E=e.name,p=t.autoSchema||!r?n.open(E):n.open(E,r);if(!p)throw new I.MissingAPI;p.onerror=le(h),p.onblocked=U(e._fireOnBlocked),p.onupgradeneeded=U(function(d){if(c=p.transaction,t.autoSchema&&!e._options.allowEmptyDB){p.onerror=st,c.abort(),p.result.close();var v=n.deleteDatabase(E);v.onsuccess=v.onerror=U(function(){h(new I.NoSuchDatabase("Database ".concat(E," doesnt exist")))})}else{c.onerror=le(h);var g=d.oldVersion>Math.pow(2,62)?0:d.oldVersion;l=g<1,e.idbdb=p.result,a&&Wr(e,c),qr(e,g/10,c,h)}},h),p.onsuccess=U(function(){c=null;var d=e.idbdb=p.result,v=ht(d.objectStoreNames);if(v.length>0)try{var g=d.transaction(zr(v),"readonly");if(t.autoSchema)Qr(e,d,g);else if(Ft(e,e._dbSchema,g),!Hr(e,g)&&!a)return d.close(),r=d.version+1,a=!0,u(f());Ct(e,g)}catch{}Ye.push(e),d.onversionchange=U(function(w){t.vcFired=!0,e.on("versionchange").fire(w)}),d.onclose=U(function(){e.close({disableAutoOpen:!1})}),l&&Zr(e._deps,E),u()},h)}).catch(function(u){switch(u==null?void 0:u.name){case"UnknownError":if(t.PR1398_maxLoop>0)return t.PR1398_maxLoop--,f();break;case"VersionError":if(r>0)return r=0,f();break}return D.reject(u)})};return D.race([i,(typeof navigator>"u"?D.resolve():ta()).then(f)]).then(function(){return o(),t.onReadyBeingFired=[],D.resolve(jn(function(){return e.on.ready.fire(e.vip)})).then(function u(){if(t.onReadyBeingFired.length>0){var h=t.onReadyBeingFired.reduce(Zt,$);return t.onReadyBeingFired=[],D.resolve(jn(function(){return h(e.vip)})).then(u)}})}).finally(function(){t.openCanceller===i&&(t.onReadyBeingFired=null,t.isBeingOpened=!1)}).catch(function(u){t.dbOpenError=u;try{c&&c.abort()}catch{}return i===t.openCanceller&&e._close(),Q(u)}).finally(function(){t.openComplete=!0,s()}).then(function(){if(l){var u={};e.tables.forEach(function(h){h.schema.indexes.forEach(function(E){E.name&&(u["idb://".concat(e.name,"/").concat(h.name,"/").concat(E.name)]=new X(-1/0,[[[]]]))}),u["idb://".concat(e.name,"/").concat(h.name,"/")]=u["idb://".concat(e.name,"/").concat(h.name,"/:dels")]=new X(-1/0,[[[]]])}),ke(ct).fire(u),An(u,!0)}return e})}function Pn(e){var t=function(o){return e.next(o)},n=function(o){return e.throw(o)},i=a(t),r=a(n);function a(o){return function(s){var c=o(s),l=c.value;return c.done?l:!l||typeof l.then!="function"?P(l)?Promise.all(l).then(i,r):i(l):l.then(i,r)}}return a(t)()}function ia(e,t,n){var i=arguments.length;if(i<2)throw new I.InvalidArgument("Too few arguments");for(var r=new Array(i-1);--i;)r[i-1]=arguments[i];n=r.pop();var a=Hn(r);return[e,a,n]}function Ai(e,t,n,i,r){return D.resolve().then(function(){var a=A.transless||A,o=e._createTransaction(t,n,e._dbSchema,i);o.explicit=!0;var s={trans:o,transless:a};if(i)o.idbtrans=i.idbtrans;else try{o.create(),o.idbtrans._explicit=!0,e._state.PR1398_maxLoop=3}catch(u){return u.name===Jt.InvalidState&&e.isOpen()&&--e._state.PR1398_maxLoop>0?(e.close({disableAutoOpen:!1}),e.open().then(function(){return Ai(e,t,n,null,r)})):Q(u)}var c=Gt(r);c&&Ue();var l,f=D.follow(function(){if(l=r.call(o,o),l)if(c){var u=we.bind(null,null);l.then(u,u)}else typeof l.next=="function"&&typeof l.throw=="function"&&(l=Pn(l))},s);return(l&&typeof l.then=="function"?D.resolve(l).then(function(u){return o.active?u:Q(new I.PrematureCommit("Transaction committed too early. See http://bit.ly/2kdckMn"))}):f.then(function(){return l})).then(function(u){return i&&o._resolve(),o._completion.then(function(){return u})}).catch(function(u){return o._reject(u),Q(u)})})}function Nt(e,t,n){for(var i=P(e)?e.slice():[e],r=0;r<n;++r)i.push(t);return i}function ra(e){return m(m({},e),{table:function(t){var n=e.table(t),i=n.schema,r={},a=[];function o(d,v,g){var w=ut(d),b=r[w]=r[w]||[],_=d==null?0:typeof d=="string"?1:d.length,x=v>0,j=m(m({},g),{name:x?"".concat(w,"(virtual-from:").concat(g.name,")"):g.name,lowLevelIndex:g,isVirtual:x,keyTail:v,keyLength:_,extractKey:xn(d),unique:!x&&g.unique});if(b.push(j),j.isPrimaryKey||a.push(j),_>1){var K=_===2?d[0]:d.slice(0,_-1);o(K,v+1,g)}return b.sort(function(S,R){return S.keyTail-R.keyTail}),j}var s=o(i.primaryKey.keyPath,0,i.primaryKey);r[":id"]=[s];for(var c=0,l=i.indexes;c<l.length;c++){var f=l[c];o(f.keyPath,0,f)}function u(d){var v=r[ut(d)];return v&&v[0]}function h(d,v){return{type:d.type===1?2:d.type,lower:Nt(d.lower,d.lowerOpen?e.MAX_KEY:e.MIN_KEY,v),lowerOpen:!0,upper:Nt(d.upper,d.upperOpen?e.MIN_KEY:e.MAX_KEY,v),upperOpen:!0}}function E(d){var v=d.query.index;return v.isVirtual?m(m({},d),{query:{index:v.lowLevelIndex,range:h(d.query.range,v.keyTail)}}):d}var p=m(m({},n),{schema:m(m({},i),{primaryKey:s,indexes:a,getIndexByKeyPath:u}),count:function(d){return n.count(E(d))},query:function(d){return n.query(E(d))},openCursor:function(d){var v=d.query.index,g=v.keyTail,w=v.isVirtual,b=v.keyLength;if(!w)return n.openCursor(d);function _(x){function j(S){S!=null?x.continue(Nt(S,d.reverse?e.MAX_KEY:e.MIN_KEY,g)):d.unique?x.continue(x.key.slice(0,b).concat(d.reverse?e.MIN_KEY:e.MAX_KEY,g)):x.continue()}var K=Object.create(x,{continue:{value:j},continuePrimaryKey:{value:function(S,R){x.continuePrimaryKey(Nt(S,e.MAX_KEY,g),R)}},primaryKey:{get:function(){return x.primaryKey}},key:{get:function(){var S=x.key;return b===1?S[0]:S.slice(0,b)}},value:{get:function(){return x.value}}});return K}return n.openCursor(E(d)).then(function(x){return x&&_(x)})}});return p}})}var aa={stack:"dbcore",name:"VirtualIndexMiddleware",level:1,create:ra};function Cn(e,t,n,i){return n=n||{},i=i||"",F(e).forEach(function(r){if(!ee(t,r))n[i+r]=void 0;else{var a=e[r],o=t[r];if(typeof a=="object"&&typeof o=="object"&&a&&o){var s=Qt(a),c=Qt(o);s!==c?n[i+r]=t[r]:s==="Object"?Cn(a,o,n,i+r+"."):a!==o&&(n[i+r]=t[r])}else a!==o&&(n[i+r]=t[r])}}),F(t).forEach(function(r){ee(e,r)||(n[i+r]=t[r])}),n}function In(e,t){return t.type==="delete"?t.keys:t.keys||t.values.map(e.extractKey)}var oa={stack:"dbcore",name:"HooksMiddleware",level:2,create:function(e){return m(m({},e),{table:function(t){var n=e.table(t),i=n.schema.primaryKey,r=m(m({},n),{mutate:function(a){var o=A.trans,s=o.table(t).hook,c=s.deleting,l=s.creating,f=s.updating;switch(a.type){case"add":if(l.fire===$)break;return o._promise("readwrite",function(){return u(a)},!0);case"put":if(l.fire===$&&f.fire===$)break;return o._promise("readwrite",function(){return u(a)},!0);case"delete":if(c.fire===$)break;return o._promise("readwrite",function(){return u(a)},!0);case"deleteRange":if(c.fire===$)break;return o._promise("readwrite",function(){return h(a)},!0)}return n.mutate(a);function u(p){var d=A.trans,v=p.keys||In(i,p);if(!v)throw new Error("Keys missing");return p=p.type==="add"||p.type==="put"?m(m({},p),{keys:v}):m({},p),p.type!=="delete"&&(p.values=k([],p.values,!0)),p.keys&&(p.keys=k([],p.keys,!0)),sa(n,p,v).then(function(g){var w=v.map(function(b,_){var x=g[_],j={onerror:null,onsuccess:null};if(p.type==="delete")c.fire.call(j,b,x,d);else if(p.type==="add"||x===void 0){var K=l.fire.call(j,b,p.values[_],d);b==null&&K!=null&&(b=K,p.keys[_]=b,i.outbound||te(p.values[_],i.keyPath,b))}else{var S=Cn(x,p.values[_]),R=f.fire.call(j,S,b,x,d);if(R){var V=p.values[_];Object.keys(R).forEach(function(T){ee(V,T)?V[T]=R[T]:te(V,T,R[T])})}}return j});return n.mutate(p).then(function(b){for(var _=b.failures,x=b.results,j=b.numFailures,K=b.lastResult,S=0;S<v.length;++S){var R=x?x[S]:v[S],V=w[S];R==null?V.onerror&&V.onerror(_[S]):V.onsuccess&&V.onsuccess(p.type==="put"&&g[S]?p.values[S]:R)}return{failures:_,results:x,numFailures:j,lastResult:K}}).catch(function(b){return w.forEach(function(_){return _.onerror&&_.onerror(b)}),Promise.reject(b)})})}function h(p){return E(p.trans,p.range,1e4)}function E(p,d,v){return n.query({trans:p,values:!1,query:{index:i,range:d},limit:v}).then(function(g){var w=g.result;return u({type:"delete",keys:w,trans:p}).then(function(b){return b.numFailures>0?Promise.reject(b.failures[0]):w.length<v?{failures:[],numFailures:0,lastResult:void 0}:E(p,m(m({},d),{lower:w[w.length-1],lowerOpen:!0}),v)})})}}});return r}})}};function sa(e,t,n){return t.type==="add"?Promise.resolve([]):e.getMany({trans:t.trans,keys:n,cache:"immutable"})}function Pi(e,t,n){try{if(!t||t.keys.length<e.length)return null;for(var i=[],r=0,a=0;r<t.keys.length&&a<e.length;++r)q(t.keys[r],e[a])===0&&(i.push(n?De(t.values[r]):t.values[r]),++a);return i.length===e.length?i:null}catch{return null}}var ca={stack:"dbcore",level:-1,create:function(e){return{table:function(t){var n=e.table(t);return m(m({},n),{getMany:function(i){if(!i.cache)return n.getMany(i);var r=Pi(i.keys,i.trans._cache,i.cache==="clone");return r?D.resolve(r):n.getMany(i).then(function(a){return i.trans._cache={keys:i.keys,values:i.cache==="clone"?De(a):a},a})},mutate:function(i){return i.type!=="add"&&(i.trans._cache=null),n.mutate(i)}})}}}};function Ci(e,t){return e.trans.mode==="readonly"&&!!e.subscr&&!e.trans.explicit&&e.trans.db._options.cache!=="disabled"&&!t.schema.primaryKey.outbound}function Ii(e,t){switch(e){case"query":return t.values&&!t.unique;case"get":return!1;case"getMany":return!1;case"count":return!1;case"openCursor":return!1}}var la={stack:"dbcore",level:0,name:"Observability",create:function(e){var t=e.schema.name,n=new X(e.MIN_KEY,e.MAX_KEY);return m(m({},e),{transaction:function(i,r,a){if(A.subscr&&r!=="readonly")throw new I.ReadOnly("Readwrite transaction in liveQuery context. Querier source: ".concat(A.querier));return e.transaction(i,r,a)},table:function(i){var r=e.table(i),a=r.schema,o=a.primaryKey,s=a.indexes,c=o.extractKey,l=o.outbound,f=o.autoIncrement&&s.filter(function(p){return p.compound&&p.keyPath.includes(o.keyPath)}),u=m(m({},r),{mutate:function(p){var d,v,g=p.trans,w=p.mutatedParts||(p.mutatedParts={}),b=function(z){var W="idb://".concat(t,"/").concat(i,"/").concat(z);return w[W]||(w[W]=new X)},_=b(""),x=b(":dels"),j=p.type,K=p.type==="deleteRange"?[p.range]:p.type==="delete"?[p.keys]:p.values.length<50?[In(o,p).filter(function(z){return z}),p.values]:[],S=K[0],R=K[1],V=p.trans._cache;if(P(S)){_.addKeys(S);var T=j==="delete"||S.length===R.length?Pi(S,V):null;T||x.addKeys(S),(T||R)&&ua(b,a,T,R)}else if(S){var B={from:(d=S.lower)!==null&&d!==void 0?d:e.MIN_KEY,to:(v=S.upper)!==null&&v!==void 0?v:e.MAX_KEY};x.add(B),_.add(B)}else _.add(n),x.add(n),a.indexes.forEach(function(z){return b(z.name).add(n)});return r.mutate(p).then(function(z){return S&&(p.type==="add"||p.type==="put")&&(_.addKeys(z.results),f&&f.forEach(function(W){for(var C=p.values.map(function(ne){return W.extractKey(ne)}),Y=W.keyPath.findIndex(function(ne){return ne===o.keyPath}),J=0,ue=z.results.length;J<ue;++J)C[J][Y]=z.results[J];b(W.name).addKeys(C)})),g.mutatedParts=Mt(g.mutatedParts||{},w),z})}}),h=function(p){var d,v,g=p.query,w=g.index,b=g.range;return[w,new X((d=b.lower)!==null&&d!==void 0?d:e.MIN_KEY,(v=b.upper)!==null&&v!==void 0?v:e.MAX_KEY)]},E={get:function(p){return[o,new X(p.key)]},getMany:function(p){return[o,new X().addKeys(p.keys)]},count:h,query:h,openCursor:h};return F(E).forEach(function(p){u[p]=function(d){var v=A.subscr,g=!!v,w=Ci(A,r)&&Ii(p,d),b=w?d.obsSet={}:v;if(g){var _=function(T){var B="idb://".concat(t,"/").concat(i,"/").concat(T);return b[B]||(b[B]=new X)},x=_(""),j=_(":dels"),K=E[p](d),S=K[0],R=K[1];if(p==="query"&&S.isPrimaryKey&&!d.values?j.add(R):_(S.name||"").add(R),!S.isPrimaryKey)if(p==="count")j.add(n);else{var V=p==="query"&&l&&d.values&&r.query(m(m({},d),{values:!1}));return r[p].apply(this,arguments).then(function(T){if(p==="query"){if(l&&d.values)return V.then(function(C){var Y=C.result;return x.addKeys(Y),T});var B=d.values?T.result.map(c):T.result;d.values?x.addKeys(B):j.addKeys(B)}else if(p==="openCursor"){var z=T,W=d.values;return z&&Object.create(z,{key:{get:function(){return j.addKey(z.primaryKey),z.key}},primaryKey:{get:function(){var C=z.primaryKey;return j.addKey(C),C}},value:{get:function(){return W&&x.addKey(z.primaryKey),z.value}}})}return T})}}return r[p].apply(this,arguments)}}),u}})}};function ua(e,t,n,i){function r(a){var o=e(a.name||"");function s(l){return l!=null?a.extractKey(l):null}var c=function(l){return a.multiEntry&&P(l)?l.forEach(function(f){return o.addKey(f)}):o.addKey(l)};(n||i).forEach(function(l,f){var u=n&&s(n[f]),h=i&&s(i[f]);q(u,h)!==0&&(u!=null&&c(u),h!=null&&c(h))})}t.indexes.forEach(r)}function Ri(e,t,n){if(n.numFailures===0)return t;if(t.type==="deleteRange")return null;var i=t.keys?t.keys.length:"values"in t&&t.values?t.values.length:1;if(n.numFailures===i)return null;var r=m({},t);return P(r.keys)&&(r.keys=r.keys.filter(function(a,o){return!(o in n.failures)})),"values"in r&&P(r.values)&&(r.values=r.values.filter(function(a,o){return!(o in n.failures)})),r}function pa(e,t){return t.lower===void 0?!0:t.lowerOpen?q(e,t.lower)>0:q(e,t.lower)>=0}function fa(e,t){return t.upper===void 0?!0:t.upperOpen?q(e,t.upper)<0:q(e,t.upper)<=0}function Rn(e,t){return pa(e,t)&&fa(e,t)}function zi(e,t,n,i,r,a){if(!n||n.length===0)return e;var o=t.query.index,s=o.multiEntry,c=t.query.range,l=i.schema.primaryKey,f=l.extractKey,u=o.extractKey,h=(o.lowLevelIndex||o).extractKey,E=n.reduce(function(p,d){var v=p,g=[];if(d.type==="add"||d.type==="put")for(var w=new X,b=d.values.length-1;b>=0;--b){var _=d.values[b],x=f(_);if(!w.hasKey(x)){var j=u(_);(s&&P(j)?j.some(function(T){return Rn(T,c)}):Rn(j,c))&&(w.addKey(x),g.push(_))}}switch(d.type){case"add":{var K=new X().addKeys(t.values?p.map(function(T){return f(T)}):p);v=p.concat(t.values?g.filter(function(T){var B=f(T);return K.hasKey(B)?!1:(K.addKey(B),!0)}):g.map(function(T){return f(T)}).filter(function(T){return K.hasKey(T)?!1:(K.addKey(T),!0)}));break}case"put":{var S=new X().addKeys(d.values.map(function(T){return f(T)}));v=p.filter(function(T){return!S.hasKey(t.values?f(T):T)}).concat(t.values?g:g.map(function(T){return f(T)}));break}case"delete":var R=new X().addKeys(d.keys);v=p.filter(function(T){return!R.hasKey(t.values?f(T):T)});break;case"deleteRange":var V=d.range;v=p.filter(function(T){return!Rn(f(T),V)});break}return v},e);return E===e?e:(E.sort(function(p,d){return q(h(p),h(d))||q(f(p),f(d))}),t.limit&&t.limit<1/0&&(E.length>t.limit?E.length=t.limit:e.length===t.limit&&E.length<t.limit&&(r.dirty=!0)),a?Object.freeze(E):E)}function Fi(e,t){return q(e.lower,t.lower)===0&&q(e.upper,t.upper)===0&&!!e.lowerOpen==!!t.lowerOpen&&!!e.upperOpen==!!t.upperOpen}function da(e,t,n,i){if(e===void 0)return t!==void 0?-1:0;if(t===void 0)return 1;var r=q(e,t);if(r===0){if(n&&i)return 0;if(n)return 1;if(i)return-1}return r}function ma(e,t,n,i){if(e===void 0)return t!==void 0?1:0;if(t===void 0)return-1;var r=q(e,t);if(r===0){if(n&&i)return 0;if(n)return-1;if(i)return 1}return r}function va(e,t){return da(e.lower,t.lower,e.lowerOpen,t.lowerOpen)<=0&&ma(e.upper,t.upper,e.upperOpen,t.upperOpen)>=0}function ha(e,t,n,i){var r=ze["idb://".concat(e,"/").concat(t)];if(!r)return[];var a=r.queries[n];if(!a)return[null,!1,r,null];var o=i.query?i.query.index.name:null,s=a[o||""];if(!s)return[null,!1,r,null];switch(n){case"query":var c=s.find(function(u){return u.req.limit===i.limit&&u.req.values===i.values&&Fi(u.req.query.range,i.query.range)});if(c)return[c,!0,r,s];var l=s.find(function(u){var h="limit"in u.req?u.req.limit:1/0;return h>=i.limit&&(i.values?u.req.values:!0)&&va(u.req.query.range,i.query.range)});return[l,!1,r,s];case"count":var f=s.find(function(u){return Fi(u.req.query.range,i.query.range)});return[f,!!f,r,s]}}function ya(e,t,n,i){e.subscribers.add(n),i.addEventListener("abort",function(){e.subscribers.delete(n),e.subscribers.size===0&&ga(e,t)})}function ga(e,t){setTimeout(function(){e.subscribers.size===0&&Ke(t,e)},3e3)}var xa={stack:"dbcore",level:0,name:"Cache",create:function(e){var t=e.schema.name,n=m(m({},e),{transaction:function(i,r,a){var o=e.transaction(i,r,a);if(r==="readwrite"){var s=new AbortController,c=s.signal,l=function(f){return function(){if(s.abort(),r==="readwrite"){for(var u=new Set,h=0,E=i;h<E.length;h++){var p=E[h],d=ze["idb://".concat(t,"/").concat(p)];if(d){var v=e.table(p),g=d.optimisticOps.filter(function(W){return W.trans===o});if(o._explicit&&f&&o.mutatedParts)for(var w=0,b=Object.values(d.queries.query);w<b.length;w++)for(var _=b[w],x=0,j=_.slice();x<j.length;x++){var K=j[x];Kn(K.obsSet,o.mutatedParts)&&(Ke(_,K),K.subscribers.forEach(function(W){return u.add(W)}))}else if(g.length>0){d.optimisticOps=d.optimisticOps.filter(function(W){return W.trans!==o});for(var S=0,R=Object.values(d.queries.query);S<R.length;S++)for(var _=R[S],V=0,T=_.slice();V<T.length;V++){var K=T[V];if(K.res!=null&&o.mutatedParts)if(f&&!K.dirty){var B=Object.isFrozen(K.res),z=zi(K.res,K.req,g,v,K,B);K.dirty?(Ke(_,K),K.subscribers.forEach(function(Y){return u.add(Y)})):z!==K.res&&(K.res=z,K.promise=D.resolve({result:z}))}else K.dirty&&Ke(_,K),K.subscribers.forEach(function(Y){return u.add(Y)})}}}}u.forEach(function(W){return W()})}}};o.addEventListener("abort",l(!1),{signal:c}),o.addEventListener("error",l(!1),{signal:c}),o.addEventListener("complete",l(!0),{signal:c})}return o},table:function(i){var r=e.table(i),a=r.schema.primaryKey,o=m(m({},r),{mutate:function(s){var c=A.trans;if(a.outbound||c.db._options.cache==="disabled"||c.explicit||c.idbtrans.mode!=="readwrite")return r.mutate(s);var l=ze["idb://".concat(t,"/").concat(i)];if(!l)return r.mutate(s);var f=r.mutate(s);return(s.type==="add"||s.type==="put")&&(s.values.length>=50||In(a,s).some(function(u){return u==null}))?f.then(function(u){var h=m(m({},s),{values:s.values.map(function(p,d){var v;if(u.failures[d])return p;var g=!((v=a.keyPath)===null||v===void 0)&&v.includes(".")?De(p):m({},p);return te(g,a.keyPath,u.results[d]),g})}),E=Ri(l,h,u);l.optimisticOps.push(E),queueMicrotask(function(){return s.mutatedParts&&Vt(s.mutatedParts)})}):(l.optimisticOps.push(s),s.mutatedParts&&Vt(s.mutatedParts),f.then(function(u){if(u.numFailures>0){Ke(l.optimisticOps,s);var h=Ri(l,s,u);h&&l.optimisticOps.push(h),s.mutatedParts&&Vt(s.mutatedParts)}}),f.catch(function(){Ke(l.optimisticOps,s),s.mutatedParts&&Vt(s.mutatedParts)})),f},query:function(s){var c;if(!Ci(A,r)||!Ii("query",s))return r.query(s);var l=((c=A.trans)===null||c===void 0?void 0:c.db._options.cache)==="immutable",f=A,u=f.requery,h=f.signal,E=ha(t,i,"query",s),p=E[0],d=E[1],v=E[2],g=E[3];if(p&&d)p.obsSet=s.obsSet;else{var w=r.query(s).then(function(b){var _=b.result;if(p&&(p.res=_),l){for(var x=0,j=_.length;x<j;++x)Object.freeze(_[x]);Object.freeze(_)}else b.result=De(_);return b}).catch(function(b){return g&&p&&Ke(g,p),Promise.reject(b)});p={obsSet:s.obsSet,promise:w,subscribers:new Set,type:"query",req:s,dirty:!1},g?g.push(p):(g=[p],v||(v=ze["idb://".concat(t,"/").concat(i)]={queries:{query:{},count:{}},objs:new Map,optimisticOps:[],unsignaledParts:{}}),v.queries.query[s.query.index.name||""]=g)}return ya(p,g,u,h),p.promise.then(function(b){return{result:zi(b.result,s,v==null?void 0:v.optimisticOps,r,p,l)}})}});return o}});return n}};function Lt(e,t){return new Proxy(e,{get:function(n,i,r){return i==="db"?t:Reflect.get(n,i,r)}})}var he=(function(){function e(t,n){var i=this;this._middlewares={},this.verno=0;var r=e.dependencies;this._options=n=m({addons:e.addons,autoOpen:!0,indexedDB:r.indexedDB,IDBKeyRange:r.IDBKeyRange,cache:"cloned"},n),this._deps={indexedDB:n.indexedDB,IDBKeyRange:n.IDBKeyRange};var a=n.addons;this._dbSchema={},this._versions=[],this._storeNames=[],this._allTables={},this.idbdb=null,this._novip=this;var o={dbOpenError:null,isBeingOpened:!1,onReadyBeingFired:null,openComplete:!1,dbReadyResolve:$,dbReadyPromise:null,cancelOpen:$,openCanceller:null,autoSchema:!0,PR1398_maxLoop:3,autoOpen:n.autoOpen};o.dbReadyPromise=new D(function(c){o.dbReadyResolve=c}),o.openCanceller=new D(function(c,l){o.cancelOpen=l}),this._state=o,this.name=t,this.on=at(this,"populate","blocked","versionchange","close",{ready:[Zt,$]}),this.once=function(c,l){var f=function(){for(var u=[],h=0;h<arguments.length;h++)u[h]=arguments[h];i.on(c).unsubscribe(f),l.apply(i,u)};return i.on(c,f)},this.on.ready.subscribe=Un(this.on.ready.subscribe,function(c){return function(l,f){e.vip(function(){var u=i._state;if(u.openComplete)u.dbOpenError||D.resolve().then(l),f&&c(l);else if(u.onReadyBeingFired)u.onReadyBeingFired.push(l),f&&c(l);else{c(l);var h=i;f||c(function E(){h.on.ready.unsubscribe(l),h.on.ready.unsubscribe(E)})}})}}),this.Collection=Dr(this),this.Table=Er(this),this.Transaction=Rr(this),this.Version=Xr(this),this.WhereClause=Cr(this),this.on("versionchange",function(c){c.newVersion>0,i.close({disableAutoOpen:!1})}),this.on("blocked",function(c){!c.newVersion||c.newVersion<c.oldVersion}),this._maxKey=lt(n.IDBKeyRange),this._createTransaction=function(c,l,f,u){return new i.Transaction(c,l,f,i._options.chromeTransactionDurability,u)},this._fireOnBlocked=function(c){i.on("blocked").fire(c),Ye.filter(function(l){return l.name===i.name&&l!==i&&!l._state.vcFired}).map(function(l){return l.on("versionchange").fire(c)})},this.use(ca),this.use(xa),this.use(la),this.use(aa),this.use(oa);var s=new Proxy(this,{get:function(c,l,f){if(l==="_vip")return!0;if(l==="table")return function(h){return Lt(i.table(h),s)};var u=Reflect.get(c,l,f);return u instanceof yi?Lt(u,s):l==="tables"?u.map(function(h){return Lt(h,s)}):l==="_createTransaction"?function(){var h=u.apply(this,arguments);return Lt(h,s)}:u}});this.vip=s,a.forEach(function(c){return c(i)})}return e.prototype.version=function(t){if(isNaN(t)||t<.1)throw new I.Type("Given version is not a positive number");if(t=Math.round(t*10)/10,this.idbdb||this._state.isBeingOpened)throw new I.Schema("Cannot add version when database is open");this.verno=Math.max(this.verno,t);var n=this._versions,i=n.filter(function(r){return r._cfg.version===t})[0];return i||(i=new this.Version(t),n.push(i),n.sort(Lr),i.stores({}),this._state.autoSchema=!1,i)},e.prototype._whenReady=function(t){var n=this;return this.idbdb&&(this._state.openComplete||A.letThrough||this._vip)?t():new D(function(i,r){if(n._state.openComplete)return r(new I.DatabaseClosed(n._state.dbOpenError));if(!n._state.isBeingOpened){if(!n._state.autoOpen){r(new I.DatabaseClosed);return}n.open().catch($)}n._state.dbReadyPromise.then(i,r)}).then(t)},e.prototype.use=function(t){var n=t.stack,i=t.create,r=t.level,a=t.name;a&&this.unuse({stack:n,name:a});var o=this._middlewares[n]||(this._middlewares[n]=[]);return o.push({stack:n,create:i,level:r==null?10:r,name:a}),o.sort(function(s,c){return s.level-c.level}),this},e.prototype.unuse=function(t){var n=t.stack,i=t.name,r=t.create;return n&&this._middlewares[n]&&(this._middlewares[n]=this._middlewares[n].filter(function(a){return r?a.create!==r:i?a.name!==i:!1})),this},e.prototype.open=function(){var t=this;return Ce(ge,function(){return na(t)})},e.prototype._close=function(){this.on.close.fire(new CustomEvent("close"));var t=this._state,n=Ye.indexOf(this);if(n>=0&&Ye.splice(n,1),this.idbdb){try{this.idbdb.close()}catch{}this.idbdb=null}t.isBeingOpened||(t.dbReadyPromise=new D(function(i){t.dbReadyResolve=i}),t.openCanceller=new D(function(i,r){t.cancelOpen=r}))},e.prototype.close=function(t){var n=t===void 0?{disableAutoOpen:!0}:t,i=n.disableAutoOpen,r=this._state;i?(r.isBeingOpened&&r.cancelOpen(new I.DatabaseClosed),this._close(),r.autoOpen=!1,r.dbOpenError=new I.DatabaseClosed):(this._close(),r.autoOpen=this._options.autoOpen||r.isBeingOpened,r.openComplete=!1,r.dbOpenError=null)},e.prototype.delete=function(t){var n=this;t===void 0&&(t={disableAutoOpen:!0});var i=arguments.length>0&&typeof arguments[0]!="object",r=this._state;return new D(function(a,o){var s=function(){n.close(t);var c=n._deps.indexedDB.deleteDatabase(n.name);c.onsuccess=U(function(){ea(n._deps,n.name),a()}),c.onerror=le(o),c.onblocked=n._fireOnBlocked};if(i)throw new I.InvalidArgument("Invalid closeOptions argument to db.delete()");r.isBeingOpened?r.dbReadyPromise.then(s):s()})},e.prototype.backendDB=function(){return this.idbdb},e.prototype.isOpen=function(){return this.idbdb!==null},e.prototype.hasBeenClosed=function(){var t=this._state.dbOpenError;return t&&t.name==="DatabaseClosed"},e.prototype.hasFailed=function(){return this._state.dbOpenError!==null},e.prototype.dynamicallyOpened=function(){return this._state.autoSchema},Object.defineProperty(e.prototype,"tables",{get:function(){var t=this;return F(this._allTables).map(function(n){return t._allTables[n]})},enumerable:!1,configurable:!0}),e.prototype.transaction=function(){var t=ia.apply(this,arguments);return this._transaction.apply(this,t)},e.prototype._transaction=function(t,n,i){var r=this,a=A.trans;(!a||a.db!==this||t.indexOf("!")!==-1)&&(a=null);var o=t.indexOf("?")!==-1;t=t.replace("!","").replace("?","");var s,c;try{if(c=n.map(function(f){var u=f instanceof r.Table?f.name:f;if(typeof u!="string")throw new TypeError("Invalid table argument to Dexie.transaction(). Only Table or String are allowed");return u}),t=="r"||t===fn)s=fn;else if(t=="rw"||t==dn)s=dn;else throw new I.InvalidArgument("Invalid transaction mode: "+t);if(a){if(a.mode===fn&&s===dn)if(o)a=null;else throw new I.SubTransaction("Cannot enter a sub-transaction with READWRITE mode when parent transaction is READONLY");a&&c.forEach(function(f){if(a&&a.storeNames.indexOf(f)===-1)if(o)a=null;else throw new I.SubTransaction("Table "+f+" not included in parent transaction.")}),o&&a&&!a.active&&(a=null)}}catch(f){return a?a._promise(null,function(u,h){h(f)}):Q(f)}var l=Ai.bind(null,this,s,c,a,i);return a?a._promise(s,l,"lock"):A.trans?Ce(A.transless,function(){return r._whenReady(l)}):this._whenReady(l)},e.prototype.table=function(t){if(!ee(this._allTables,t))throw new I.InvalidTable("Table ".concat(t," does not exist"));return this._allTables[t]},e})(),wa=typeof Symbol<"u"&&"observable"in Symbol?Symbol.observable:"@@observable",ba=(function(){function e(t){this._subscribe=t}return e.prototype.subscribe=function(t,n,i){return this._subscribe(!t||typeof t=="function"?{next:t,error:n,complete:i}:t)},e.prototype[wa]=function(){return this},e})(),qt;try{qt={indexedDB:O.indexedDB||O.mozIndexedDB||O.webkitIndexedDB||O.msIndexedDB,IDBKeyRange:O.IDBKeyRange||O.webkitIDBKeyRange}}catch{qt={indexedDB:null,IDBKeyRange:null}}function Bi(e){var t=!1,n,i=new ba(function(r){var a=Gt(e);function o(g){var w=We();try{a&&Ue();var b=xe(e,g);return a&&(b=b.finally(we)),b}finally{w&&$e()}}var s=!1,c,l={},f={},u={get closed(){return s},unsubscribe:function(){s||(s=!0,c&&c.abort(),h&&ke.storagemutated.unsubscribe(d))}};r.start&&r.start(u);var h=!1,E=function(){return ln(v)};function p(){return Kn(f,l)}var d=function(g){Mt(l,g),p()&&E()},v=function(){if(!(s||!qt.indexedDB)){l={};var g={};c&&c.abort(),c=new AbortController;var w={subscr:g,signal:c.signal,requery:E,querier:e,trans:null},b=o(w);Promise.resolve(b).then(function(_){t=!0,n=_,!(s||w.signal.aborted)&&(l={},f=g,!Ji(f)&&!h&&(ke(ct,d),h=!0),ln(function(){return!s&&r.next&&r.next(_)}))},function(_){t=!1,["DatabaseClosedError","AbortError"].includes(_==null?void 0:_.name)||s||ln(function(){s||r.error&&r.error(_)})})}};return setTimeout(E,0),u});return i.hasValue=function(){return t},i.getValue=function(){return n},i}var Fe=he;Me(Fe,m(m({},gt),{delete:function(e){var t=new Fe(e,{addons:[]});return t.delete()},exists:function(e){return new Fe(e,{addons:[]}).open().then(function(t){return t.close(),!0}).catch("NoSuchDatabaseError",function(){return!1})},getDatabaseNames:function(e){try{return Jr(Fe.dependencies).then(e)}catch{return Q(new I.MissingAPI)}},defineClass:function(){function e(t){N(this,t)}return e},ignoreTransaction:function(e){return A.trans?Ce(A.transless,e):e()},vip:jn,async:function(e){return function(){try{var t=Pn(e.apply(this,arguments));return!t||typeof t.then!="function"?D.resolve(t):t}catch(n){return Q(n)}}},spawn:function(e,t,n){try{var i=Pn(e.apply(n,t||[]));return!i||typeof i.then!="function"?D.resolve(i):i}catch(r){return Q(r)}},currentTransaction:{get:function(){return A.trans||null}},waitFor:function(e,t){var n=D.resolve(typeof e=="function"?Fe.ignoreTransaction(e):e).timeout(t||6e4);return A.trans?A.trans.waitFor(n):n},Promise:D,debug:{get:function(){return ce},set:function(e){ti(e)}},derive:Ve,extend:N,props:Me,override:Un,Events:at,on:ke,liveQuery:Bi,extendObservabilitySet:Mt,getByKeyPath:de,setByKeyPath:te,delByKeyPath:Hi,shallowClone:Qn,deepClone:De,getObjectDiff:Cn,cmp:q,asap:Yn,minKey:pn,addons:[],connections:Ye,errnames:Jt,dependencies:qt,cache:ze,semVer:ui,version:ui.split(".").map(function(e){return parseInt(e)}).reduce(function(e,t,n){return e+t/Math.pow(10,n*2)})})),Fe.maxKey=lt(Fe.dependencies.IDBKeyRange),typeof dispatchEvent<"u"&&typeof addEventListener<"u"&&(ke(ct,function(e){if(!Ee){var t;t=new CustomEvent(hn,{detail:e}),Ee=!0,dispatchEvent(t),Ee=!1}}),addEventListener(hn,function(e){var t=e.detail;Ee||zn(t)}));function zn(e){var t=Ee;try{Ee=!0,ke.storagemutated.fire(e),An(e,!0)}finally{Ee=t}}var Ee=!1,je,Fn=function(){};typeof BroadcastChannel<"u"&&(Fn=function(){je=new BroadcastChannel(hn),je.onmessage=function(e){return e.data&&zn(e.data)}},Fn(),typeof je.unref=="function"&&je.unref(),ke(ct,function(e){Ee||je.postMessage(e)})),typeof addEventListener<"u"&&(addEventListener("pagehide",function(e){if(!he.disableBfCache&&e.persisted){je==null||je.close();for(var t=0,n=Ye;t<n.length;t++){var i=n[t];i.close({disableAutoOpen:!1})}}}),addEventListener("pageshow",function(e){!he.disableBfCache&&e.persisted&&(Fn(),zn({all:new X(-1/0,[[]])}))}));function _a(e){return new rt({add:e})}function ka(e){return new rt({remove:e})}function Ea(e,t){return new rt({replacePrefix:[e,t]})}D.rejectionMapper=rr,ti(ce);var ja=Object.freeze({__proto__:null,Dexie:he,Entity:di,PropModification:rt,RangeSet:X,add:_a,cmp:q,default:he,liveQuery:Bi,mergeRanges:ft,rangesOverlap:Di,remove:ka,replacePrefix:Ea});return m(he,ja,{default:he}),he}))});var Ut=Ra(Mi(),1),Vi=Symbol.for("Dexie"),Ge=globalThis[Vi]||(globalThis[Vi]=Ut.default);if(Ut.default.semVer!==Ge.semVer)throw new Error(`Two different versions of Dexie loaded in the same app: ${Ut.default.semVer} and ${Ge.semVer}`);var{liveQuery:Ma,mergeRanges:Va,rangesOverlap:Na,RangeSet:La,cmp:qa,Entity:Wa,PropModification:$a,replacePrefix:Ua,add:Ya,remove:Qa,DexieYProvider:Ha}=Ge;var Ni={name:"vvvfs",version:"0.0.3",description:"\u4E00\u4E2A\u4F7F\u7528IndexDB\u5B9E\u73B0\u7684\u865A\u62DF\u6587\u4EF6\u7CFB\u7EDF",keywords:["Virtual","File","System","IFTC","VV","File","System","vfs","fs"],license:"MIT",author:"IFTC",type:"module",main:"index.js",scripts:{test:'echo "Error: no test specified" && exit 1',build:"node esbuild.config.js"},dependencies:{dexie:"^4.3.0",esbuild:"^0.27.3",mime:"^4.1.0"}};var Li={"application/prs.cww":["cww"],"application/prs.xsf+xml":["xsf"],"application/vnd.1000minds.decision-model+xml":["1km"],"application/vnd.3gpp.pic-bw-large":["plb"],"application/vnd.3gpp.pic-bw-small":["psb"],"application/vnd.3gpp.pic-bw-var":["pvb"],"application/vnd.3gpp2.tcap":["tcap"],"application/vnd.3m.post-it-notes":["pwn"],"application/vnd.accpac.simply.aso":["aso"],"application/vnd.accpac.simply.imp":["imp"],"application/vnd.acucobol":["acu"],"application/vnd.acucorp":["atc","acutc"],"application/vnd.adobe.air-application-installer-package+zip":["air"],"application/vnd.adobe.formscentral.fcdt":["fcdt"],"application/vnd.adobe.fxp":["fxp","fxpl"],"application/vnd.adobe.xdp+xml":["xdp"],"application/vnd.adobe.xfdf":["*xfdf"],"application/vnd.age":["age"],"application/vnd.ahead.space":["ahead"],"application/vnd.airzip.filesecure.azf":["azf"],"application/vnd.airzip.filesecure.azs":["azs"],"application/vnd.amazon.ebook":["azw"],"application/vnd.americandynamics.acc":["acc"],"application/vnd.amiga.ami":["ami"],"application/vnd.android.package-archive":["apk"],"application/vnd.anser-web-certificate-issue-initiation":["cii"],"application/vnd.anser-web-funds-transfer-initiation":["fti"],"application/vnd.antix.game-component":["atx"],"application/vnd.apple.installer+xml":["mpkg"],"application/vnd.apple.keynote":["key"],"application/vnd.apple.mpegurl":["m3u8"],"application/vnd.apple.numbers":["numbers"],"application/vnd.apple.pages":["pages"],"application/vnd.apple.pkpass":["pkpass"],"application/vnd.aristanetworks.swi":["swi"],"application/vnd.astraea-software.iota":["iota"],"application/vnd.audiograph":["aep"],"application/vnd.autodesk.fbx":["fbx"],"application/vnd.balsamiq.bmml+xml":["bmml"],"application/vnd.blueice.multipass":["mpm"],"application/vnd.bmi":["bmi"],"application/vnd.businessobjects":["rep"],"application/vnd.chemdraw+xml":["cdxml"],"application/vnd.chipnuts.karaoke-mmd":["mmd"],"application/vnd.cinderella":["cdy"],"application/vnd.citationstyles.style+xml":["csl"],"application/vnd.claymore":["cla"],"application/vnd.cloanto.rp9":["rp9"],"application/vnd.clonk.c4group":["c4g","c4d","c4f","c4p","c4u"],"application/vnd.cluetrust.cartomobile-config":["c11amc"],"application/vnd.cluetrust.cartomobile-config-pkg":["c11amz"],"application/vnd.commonspace":["csp"],"application/vnd.contact.cmsg":["cdbcmsg"],"application/vnd.cosmocaller":["cmc"],"application/vnd.crick.clicker":["clkx"],"application/vnd.crick.clicker.keyboard":["clkk"],"application/vnd.crick.clicker.palette":["clkp"],"application/vnd.crick.clicker.template":["clkt"],"application/vnd.crick.clicker.wordbank":["clkw"],"application/vnd.criticaltools.wbs+xml":["wbs"],"application/vnd.ctc-posml":["pml"],"application/vnd.cups-ppd":["ppd"],"application/vnd.curl.car":["car"],"application/vnd.curl.pcurl":["pcurl"],"application/vnd.dart":["dart"],"application/vnd.data-vision.rdz":["rdz"],"application/vnd.dbf":["dbf"],"application/vnd.dcmp+xml":["dcmp"],"application/vnd.dece.data":["uvf","uvvf","uvd","uvvd"],"application/vnd.dece.ttml+xml":["uvt","uvvt"],"application/vnd.dece.unspecified":["uvx","uvvx"],"application/vnd.dece.zip":["uvz","uvvz"],"application/vnd.denovo.fcselayout-link":["fe_launch"],"application/vnd.dna":["dna"],"application/vnd.dolby.mlp":["mlp"],"application/vnd.dpgraph":["dpg"],"application/vnd.dreamfactory":["dfac"],"application/vnd.ds-keypoint":["kpxx"],"application/vnd.dvb.ait":["ait"],"application/vnd.dvb.service":["svc"],"application/vnd.dynageo":["geo"],"application/vnd.ecowin.chart":["mag"],"application/vnd.enliven":["nml"],"application/vnd.epson.esf":["esf"],"application/vnd.epson.msf":["msf"],"application/vnd.epson.quickanime":["qam"],"application/vnd.epson.salt":["slt"],"application/vnd.epson.ssf":["ssf"],"application/vnd.eszigno3+xml":["es3","et3"],"application/vnd.ezpix-album":["ez2"],"application/vnd.ezpix-package":["ez3"],"application/vnd.fdf":["*fdf"],"application/vnd.fdsn.mseed":["mseed"],"application/vnd.fdsn.seed":["seed","dataless"],"application/vnd.flographit":["gph"],"application/vnd.fluxtime.clip":["ftc"],"application/vnd.framemaker":["fm","frame","maker","book"],"application/vnd.frogans.fnc":["fnc"],"application/vnd.frogans.ltf":["ltf"],"application/vnd.fsc.weblaunch":["fsc"],"application/vnd.fujitsu.oasys":["oas"],"application/vnd.fujitsu.oasys2":["oa2"],"application/vnd.fujitsu.oasys3":["oa3"],"application/vnd.fujitsu.oasysgp":["fg5"],"application/vnd.fujitsu.oasysprs":["bh2"],"application/vnd.fujixerox.ddd":["ddd"],"application/vnd.fujixerox.docuworks":["xdw"],"application/vnd.fujixerox.docuworks.binder":["xbd"],"application/vnd.fuzzysheet":["fzs"],"application/vnd.genomatix.tuxedo":["txd"],"application/vnd.geogebra.file":["ggb"],"application/vnd.geogebra.slides":["ggs"],"application/vnd.geogebra.tool":["ggt"],"application/vnd.geometry-explorer":["gex","gre"],"application/vnd.geonext":["gxt"],"application/vnd.geoplan":["g2w"],"application/vnd.geospace":["g3w"],"application/vnd.gmx":["gmx"],"application/vnd.google-apps.document":["gdoc"],"application/vnd.google-apps.drawing":["gdraw"],"application/vnd.google-apps.form":["gform"],"application/vnd.google-apps.jam":["gjam"],"application/vnd.google-apps.map":["gmap"],"application/vnd.google-apps.presentation":["gslides"],"application/vnd.google-apps.script":["gscript"],"application/vnd.google-apps.site":["gsite"],"application/vnd.google-apps.spreadsheet":["gsheet"],"application/vnd.google-earth.kml+xml":["kml"],"application/vnd.google-earth.kmz":["kmz"],"application/vnd.gov.sk.xmldatacontainer+xml":["xdcf"],"application/vnd.grafeq":["gqf","gqs"],"application/vnd.groove-account":["gac"],"application/vnd.groove-help":["ghf"],"application/vnd.groove-identity-message":["gim"],"application/vnd.groove-injector":["grv"],"application/vnd.groove-tool-message":["gtm"],"application/vnd.groove-tool-template":["tpl"],"application/vnd.groove-vcard":["vcg"],"application/vnd.hal+xml":["hal"],"application/vnd.handheld-entertainment+xml":["zmm"],"application/vnd.hbci":["hbci"],"application/vnd.hhe.lesson-player":["les"],"application/vnd.hp-hpgl":["hpgl"],"application/vnd.hp-hpid":["hpid"],"application/vnd.hp-hps":["hps"],"application/vnd.hp-jlyt":["jlt"],"application/vnd.hp-pcl":["pcl"],"application/vnd.hp-pclxl":["pclxl"],"application/vnd.hydrostatix.sof-data":["sfd-hdstx"],"application/vnd.ibm.minipay":["mpy"],"application/vnd.ibm.modcap":["afp","listafp","list3820"],"application/vnd.ibm.rights-management":["irm"],"application/vnd.ibm.secure-container":["sc"],"application/vnd.iccprofile":["icc","icm"],"application/vnd.igloader":["igl"],"application/vnd.immervision-ivp":["ivp"],"application/vnd.immervision-ivu":["ivu"],"application/vnd.insors.igm":["igm"],"application/vnd.intercon.formnet":["xpw","xpx"],"application/vnd.intergeo":["i2g"],"application/vnd.intu.qbo":["qbo"],"application/vnd.intu.qfx":["qfx"],"application/vnd.ipunplugged.rcprofile":["rcprofile"],"application/vnd.irepository.package+xml":["irp"],"application/vnd.is-xpr":["xpr"],"application/vnd.isac.fcs":["fcs"],"application/vnd.jam":["jam"],"application/vnd.jcp.javame.midlet-rms":["rms"],"application/vnd.jisp":["jisp"],"application/vnd.joost.joda-archive":["joda"],"application/vnd.kahootz":["ktz","ktr"],"application/vnd.kde.karbon":["karbon"],"application/vnd.kde.kchart":["chrt"],"application/vnd.kde.kformula":["kfo"],"application/vnd.kde.kivio":["flw"],"application/vnd.kde.kontour":["kon"],"application/vnd.kde.kpresenter":["kpr","kpt"],"application/vnd.kde.kspread":["ksp"],"application/vnd.kde.kword":["kwd","kwt"],"application/vnd.kenameaapp":["htke"],"application/vnd.kidspiration":["kia"],"application/vnd.kinar":["kne","knp"],"application/vnd.koan":["skp","skd","skt","skm"],"application/vnd.kodak-descriptor":["sse"],"application/vnd.las.las+xml":["lasxml"],"application/vnd.llamagraphics.life-balance.desktop":["lbd"],"application/vnd.llamagraphics.life-balance.exchange+xml":["lbe"],"application/vnd.lotus-1-2-3":["123"],"application/vnd.lotus-approach":["apr"],"application/vnd.lotus-freelance":["pre"],"application/vnd.lotus-notes":["nsf"],"application/vnd.lotus-organizer":["org"],"application/vnd.lotus-screencam":["scm"],"application/vnd.lotus-wordpro":["lwp"],"application/vnd.macports.portpkg":["portpkg"],"application/vnd.mapbox-vector-tile":["mvt"],"application/vnd.mcd":["mcd"],"application/vnd.medcalcdata":["mc1"],"application/vnd.mediastation.cdkey":["cdkey"],"application/vnd.mfer":["mwf"],"application/vnd.mfmp":["mfm"],"application/vnd.micrografx.flo":["flo"],"application/vnd.micrografx.igx":["igx"],"application/vnd.mif":["mif"],"application/vnd.mobius.daf":["daf"],"application/vnd.mobius.dis":["dis"],"application/vnd.mobius.mbk":["mbk"],"application/vnd.mobius.mqy":["mqy"],"application/vnd.mobius.msl":["msl"],"application/vnd.mobius.plc":["plc"],"application/vnd.mobius.txf":["txf"],"application/vnd.mophun.application":["mpn"],"application/vnd.mophun.certificate":["mpc"],"application/vnd.mozilla.xul+xml":["xul"],"application/vnd.ms-artgalry":["cil"],"application/vnd.ms-cab-compressed":["cab"],"application/vnd.ms-excel":["xls","xlm","xla","xlc","xlt","xlw"],"application/vnd.ms-excel.addin.macroenabled.12":["xlam"],"application/vnd.ms-excel.sheet.binary.macroenabled.12":["xlsb"],"application/vnd.ms-excel.sheet.macroenabled.12":["xlsm"],"application/vnd.ms-excel.template.macroenabled.12":["xltm"],"application/vnd.ms-fontobject":["eot"],"application/vnd.ms-htmlhelp":["chm"],"application/vnd.ms-ims":["ims"],"application/vnd.ms-lrm":["lrm"],"application/vnd.ms-officetheme":["thmx"],"application/vnd.ms-outlook":["msg"],"application/vnd.ms-pki.seccat":["cat"],"application/vnd.ms-pki.stl":["*stl"],"application/vnd.ms-powerpoint":["ppt","pps","pot"],"application/vnd.ms-powerpoint.addin.macroenabled.12":["ppam"],"application/vnd.ms-powerpoint.presentation.macroenabled.12":["pptm"],"application/vnd.ms-powerpoint.slide.macroenabled.12":["sldm"],"application/vnd.ms-powerpoint.slideshow.macroenabled.12":["ppsm"],"application/vnd.ms-powerpoint.template.macroenabled.12":["potm"],"application/vnd.ms-project":["*mpp","mpt"],"application/vnd.ms-visio.viewer":["vdx"],"application/vnd.ms-word.document.macroenabled.12":["docm"],"application/vnd.ms-word.template.macroenabled.12":["dotm"],"application/vnd.ms-works":["wps","wks","wcm","wdb"],"application/vnd.ms-wpl":["wpl"],"application/vnd.ms-xpsdocument":["xps"],"application/vnd.mseq":["mseq"],"application/vnd.musician":["mus"],"application/vnd.muvee.style":["msty"],"application/vnd.mynfc":["taglet"],"application/vnd.nato.bindingdataobject+xml":["bdo"],"application/vnd.neurolanguage.nlu":["nlu"],"application/vnd.nitf":["ntf","nitf"],"application/vnd.noblenet-directory":["nnd"],"application/vnd.noblenet-sealer":["nns"],"application/vnd.noblenet-web":["nnw"],"application/vnd.nokia.n-gage.ac+xml":["*ac"],"application/vnd.nokia.n-gage.data":["ngdat"],"application/vnd.nokia.n-gage.symbian.install":["n-gage"],"application/vnd.nokia.radio-preset":["rpst"],"application/vnd.nokia.radio-presets":["rpss"],"application/vnd.novadigm.edm":["edm"],"application/vnd.novadigm.edx":["edx"],"application/vnd.novadigm.ext":["ext"],"application/vnd.oasis.opendocument.chart":["odc"],"application/vnd.oasis.opendocument.chart-template":["otc"],"application/vnd.oasis.opendocument.database":["odb"],"application/vnd.oasis.opendocument.formula":["odf"],"application/vnd.oasis.opendocument.formula-template":["odft"],"application/vnd.oasis.opendocument.graphics":["odg"],"application/vnd.oasis.opendocument.graphics-template":["otg"],"application/vnd.oasis.opendocument.image":["odi"],"application/vnd.oasis.opendocument.image-template":["oti"],"application/vnd.oasis.opendocument.presentation":["odp"],"application/vnd.oasis.opendocument.presentation-template":["otp"],"application/vnd.oasis.opendocument.spreadsheet":["ods"],"application/vnd.oasis.opendocument.spreadsheet-template":["ots"],"application/vnd.oasis.opendocument.text":["odt"],"application/vnd.oasis.opendocument.text-master":["odm"],"application/vnd.oasis.opendocument.text-template":["ott"],"application/vnd.oasis.opendocument.text-web":["oth"],"application/vnd.olpc-sugar":["xo"],"application/vnd.oma.dd2+xml":["dd2"],"application/vnd.openblox.game+xml":["obgx"],"application/vnd.openofficeorg.extension":["oxt"],"application/vnd.openstreetmap.data+xml":["osm"],"application/vnd.openxmlformats-officedocument.presentationml.presentation":["pptx"],"application/vnd.openxmlformats-officedocument.presentationml.slide":["sldx"],"application/vnd.openxmlformats-officedocument.presentationml.slideshow":["ppsx"],"application/vnd.openxmlformats-officedocument.presentationml.template":["potx"],"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":["xlsx"],"application/vnd.openxmlformats-officedocument.spreadsheetml.template":["xltx"],"application/vnd.openxmlformats-officedocument.wordprocessingml.document":["docx"],"application/vnd.openxmlformats-officedocument.wordprocessingml.template":["dotx"],"application/vnd.osgeo.mapguide.package":["mgp"],"application/vnd.osgi.dp":["dp"],"application/vnd.osgi.subsystem":["esa"],"application/vnd.palm":["pdb","pqa","oprc"],"application/vnd.pawaafile":["paw"],"application/vnd.pg.format":["str"],"application/vnd.pg.osasli":["ei6"],"application/vnd.picsel":["efif"],"application/vnd.pmi.widget":["wg"],"application/vnd.pocketlearn":["plf"],"application/vnd.powerbuilder6":["pbd"],"application/vnd.previewsystems.box":["box"],"application/vnd.procrate.brushset":["brushset"],"application/vnd.procreate.brush":["brush"],"application/vnd.procreate.dream":["drm"],"application/vnd.proteus.magazine":["mgz"],"application/vnd.publishare-delta-tree":["qps"],"application/vnd.pvi.ptid1":["ptid"],"application/vnd.pwg-xhtml-print+xml":["xhtm"],"application/vnd.quark.quarkxpress":["qxd","qxt","qwd","qwt","qxl","qxb"],"application/vnd.rar":["rar"],"application/vnd.realvnc.bed":["bed"],"application/vnd.recordare.musicxml":["mxl"],"application/vnd.recordare.musicxml+xml":["musicxml"],"application/vnd.rig.cryptonote":["cryptonote"],"application/vnd.rim.cod":["cod"],"application/vnd.rn-realmedia":["rm"],"application/vnd.rn-realmedia-vbr":["rmvb"],"application/vnd.route66.link66+xml":["link66"],"application/vnd.sailingtracker.track":["st"],"application/vnd.seemail":["see"],"application/vnd.sema":["sema"],"application/vnd.semd":["semd"],"application/vnd.semf":["semf"],"application/vnd.shana.informed.formdata":["ifm"],"application/vnd.shana.informed.formtemplate":["itp"],"application/vnd.shana.informed.interchange":["iif"],"application/vnd.shana.informed.package":["ipk"],"application/vnd.simtech-mindmapper":["twd","twds"],"application/vnd.smaf":["mmf"],"application/vnd.smart.teacher":["teacher"],"application/vnd.software602.filler.form+xml":["fo"],"application/vnd.solent.sdkm+xml":["sdkm","sdkd"],"application/vnd.spotfire.dxp":["dxp"],"application/vnd.spotfire.sfs":["sfs"],"application/vnd.stardivision.calc":["sdc"],"application/vnd.stardivision.draw":["sda"],"application/vnd.stardivision.impress":["sdd"],"application/vnd.stardivision.math":["smf"],"application/vnd.stardivision.writer":["sdw","vor"],"application/vnd.stardivision.writer-global":["sgl"],"application/vnd.stepmania.package":["smzip"],"application/vnd.stepmania.stepchart":["sm"],"application/vnd.sun.wadl+xml":["wadl"],"application/vnd.sun.xml.calc":["sxc"],"application/vnd.sun.xml.calc.template":["stc"],"application/vnd.sun.xml.draw":["sxd"],"application/vnd.sun.xml.draw.template":["std"],"application/vnd.sun.xml.impress":["sxi"],"application/vnd.sun.xml.impress.template":["sti"],"application/vnd.sun.xml.math":["sxm"],"application/vnd.sun.xml.writer":["sxw"],"application/vnd.sun.xml.writer.global":["sxg"],"application/vnd.sun.xml.writer.template":["stw"],"application/vnd.sus-calendar":["sus","susp"],"application/vnd.svd":["svd"],"application/vnd.symbian.install":["sis","sisx"],"application/vnd.syncml+xml":["xsm"],"application/vnd.syncml.dm+wbxml":["bdm"],"application/vnd.syncml.dm+xml":["xdm"],"application/vnd.syncml.dmddf+xml":["ddf"],"application/vnd.tao.intent-module-archive":["tao"],"application/vnd.tcpdump.pcap":["pcap","cap","dmp"],"application/vnd.tmobile-livetv":["tmo"],"application/vnd.trid.tpt":["tpt"],"application/vnd.triscape.mxs":["mxs"],"application/vnd.trueapp":["tra"],"application/vnd.ufdl":["ufd","ufdl"],"application/vnd.uiq.theme":["utz"],"application/vnd.umajin":["umj"],"application/vnd.unity":["unityweb"],"application/vnd.uoml+xml":["uoml","uo"],"application/vnd.vcx":["vcx"],"application/vnd.visio":["vsd","vst","vss","vsw","vsdx","vtx"],"application/vnd.visionary":["vis"],"application/vnd.vsf":["vsf"],"application/vnd.wap.wbxml":["wbxml"],"application/vnd.wap.wmlc":["wmlc"],"application/vnd.wap.wmlscriptc":["wmlsc"],"application/vnd.webturbo":["wtb"],"application/vnd.wolfram.player":["nbp"],"application/vnd.wordperfect":["wpd"],"application/vnd.wqd":["wqd"],"application/vnd.wt.stf":["stf"],"application/vnd.xara":["xar"],"application/vnd.xfdl":["xfdl"],"application/vnd.yamaha.hv-dic":["hvd"],"application/vnd.yamaha.hv-script":["hvs"],"application/vnd.yamaha.hv-voice":["hvp"],"application/vnd.yamaha.openscoreformat":["osf"],"application/vnd.yamaha.openscoreformat.osfpvg+xml":["osfpvg"],"application/vnd.yamaha.smaf-audio":["saf"],"application/vnd.yamaha.smaf-phrase":["spf"],"application/vnd.yellowriver-custom-menu":["cmp"],"application/vnd.zul":["zir","zirz"],"application/vnd.zzazz.deck+xml":["zaz"],"application/x-7z-compressed":["7z"],"application/x-abiword":["abw"],"application/x-ace-compressed":["ace"],"application/x-apple-diskimage":["*dmg"],"application/x-arj":["arj"],"application/x-authorware-bin":["aab","x32","u32","vox"],"application/x-authorware-map":["aam"],"application/x-authorware-seg":["aas"],"application/x-bcpio":["bcpio"],"application/x-bdoc":["*bdoc"],"application/x-bittorrent":["torrent"],"application/x-blender":["blend"],"application/x-blorb":["blb","blorb"],"application/x-bzip":["bz"],"application/x-bzip2":["bz2","boz"],"application/x-cbr":["cbr","cba","cbt","cbz","cb7"],"application/x-cdlink":["vcd"],"application/x-cfs-compressed":["cfs"],"application/x-chat":["chat"],"application/x-chess-pgn":["pgn"],"application/x-chrome-extension":["crx"],"application/x-cocoa":["cco"],"application/x-compressed":["*rar"],"application/x-conference":["nsc"],"application/x-cpio":["cpio"],"application/x-csh":["csh"],"application/x-debian-package":["*deb","udeb"],"application/x-dgc-compressed":["dgc"],"application/x-director":["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"],"application/x-doom":["wad"],"application/x-dtbncx+xml":["ncx"],"application/x-dtbook+xml":["dtb"],"application/x-dtbresource+xml":["res"],"application/x-dvi":["dvi"],"application/x-envoy":["evy"],"application/x-eva":["eva"],"application/x-font-bdf":["bdf"],"application/x-font-ghostscript":["gsf"],"application/x-font-linux-psf":["psf"],"application/x-font-pcf":["pcf"],"application/x-font-snf":["snf"],"application/x-font-type1":["pfa","pfb","pfm","afm"],"application/x-freearc":["arc"],"application/x-futuresplash":["spl"],"application/x-gca-compressed":["gca"],"application/x-glulx":["ulx"],"application/x-gnumeric":["gnumeric"],"application/x-gramps-xml":["gramps"],"application/x-gtar":["gtar"],"application/x-hdf":["hdf"],"application/x-httpd-php":["php"],"application/x-install-instructions":["install"],"application/x-ipynb+json":["ipynb"],"application/x-iso9660-image":["*iso"],"application/x-iwork-keynote-sffkey":["*key"],"application/x-iwork-numbers-sffnumbers":["*numbers"],"application/x-iwork-pages-sffpages":["*pages"],"application/x-java-archive-diff":["jardiff"],"application/x-java-jnlp-file":["jnlp"],"application/x-keepass2":["kdbx"],"application/x-latex":["latex"],"application/x-lua-bytecode":["luac"],"application/x-lzh-compressed":["lzh","lha"],"application/x-makeself":["run"],"application/x-mie":["mie"],"application/x-mobipocket-ebook":["*prc","mobi"],"application/x-ms-application":["application"],"application/x-ms-shortcut":["lnk"],"application/x-ms-wmd":["wmd"],"application/x-ms-wmz":["wmz"],"application/x-ms-xbap":["xbap"],"application/x-msaccess":["mdb"],"application/x-msbinder":["obd"],"application/x-mscardfile":["crd"],"application/x-msclip":["clp"],"application/x-msdos-program":["*exe"],"application/x-msdownload":["*exe","*dll","com","bat","*msi"],"application/x-msmediaview":["mvb","m13","m14"],"application/x-msmetafile":["*wmf","*wmz","*emf","emz"],"application/x-msmoney":["mny"],"application/x-mspublisher":["pub"],"application/x-msschedule":["scd"],"application/x-msterminal":["trm"],"application/x-mswrite":["wri"],"application/x-netcdf":["nc","cdf"],"application/x-ns-proxy-autoconfig":["pac"],"application/x-nzb":["nzb"],"application/x-perl":["pl","pm"],"application/x-pilot":["*prc","*pdb"],"application/x-pkcs12":["p12","pfx"],"application/x-pkcs7-certificates":["p7b","spc"],"application/x-pkcs7-certreqresp":["p7r"],"application/x-rar-compressed":["*rar"],"application/x-redhat-package-manager":["rpm"],"application/x-research-info-systems":["ris"],"application/x-sea":["sea"],"application/x-sh":["sh"],"application/x-shar":["shar"],"application/x-shockwave-flash":["swf"],"application/x-silverlight-app":["xap"],"application/x-sql":["*sql"],"application/x-stuffit":["sit"],"application/x-stuffitx":["sitx"],"application/x-subrip":["srt"],"application/x-sv4cpio":["sv4cpio"],"application/x-sv4crc":["sv4crc"],"application/x-t3vm-image":["t3"],"application/x-tads":["gam"],"application/x-tar":["tar"],"application/x-tcl":["tcl","tk"],"application/x-tex":["tex"],"application/x-tex-tfm":["tfm"],"application/x-texinfo":["texinfo","texi"],"application/x-tgif":["*obj"],"application/x-ustar":["ustar"],"application/x-virtualbox-hdd":["hdd"],"application/x-virtualbox-ova":["ova"],"application/x-virtualbox-ovf":["ovf"],"application/x-virtualbox-vbox":["vbox"],"application/x-virtualbox-vbox-extpack":["vbox-extpack"],"application/x-virtualbox-vdi":["vdi"],"application/x-virtualbox-vhd":["vhd"],"application/x-virtualbox-vmdk":["vmdk"],"application/x-wais-source":["src"],"application/x-web-app-manifest+json":["webapp"],"application/x-x509-ca-cert":["der","crt","pem"],"application/x-xfig":["fig"],"application/x-xliff+xml":["*xlf"],"application/x-xpinstall":["xpi"],"application/x-xz":["xz"],"application/x-zip-compressed":["*zip"],"application/x-zmachine":["z1","z2","z3","z4","z5","z6","z7","z8"],"audio/vnd.dece.audio":["uva","uvva"],"audio/vnd.digital-winds":["eol"],"audio/vnd.dra":["dra"],"audio/vnd.dts":["dts"],"audio/vnd.dts.hd":["dtshd"],"audio/vnd.lucent.voice":["lvp"],"audio/vnd.ms-playready.media.pya":["pya"],"audio/vnd.nuera.ecelp4800":["ecelp4800"],"audio/vnd.nuera.ecelp7470":["ecelp7470"],"audio/vnd.nuera.ecelp9600":["ecelp9600"],"audio/vnd.rip":["rip"],"audio/x-aac":["*aac"],"audio/x-aiff":["aif","aiff","aifc"],"audio/x-caf":["caf"],"audio/x-flac":["flac"],"audio/x-m4a":["*m4a"],"audio/x-matroska":["mka"],"audio/x-mpegurl":["m3u"],"audio/x-ms-wax":["wax"],"audio/x-ms-wma":["wma"],"audio/x-pn-realaudio":["ram","ra"],"audio/x-pn-realaudio-plugin":["rmp"],"audio/x-realaudio":["*ra"],"audio/x-wav":["*wav"],"chemical/x-cdx":["cdx"],"chemical/x-cif":["cif"],"chemical/x-cmdf":["cmdf"],"chemical/x-cml":["cml"],"chemical/x-csml":["csml"],"chemical/x-xyz":["xyz"],"image/prs.btif":["btif","btf"],"image/prs.pti":["pti"],"image/vnd.adobe.photoshop":["psd"],"image/vnd.airzip.accelerator.azv":["azv"],"image/vnd.blockfact.facti":["facti"],"image/vnd.dece.graphic":["uvi","uvvi","uvg","uvvg"],"image/vnd.djvu":["djvu","djv"],"image/vnd.dvb.subtitle":["*sub"],"image/vnd.dwg":["dwg"],"image/vnd.dxf":["dxf"],"image/vnd.fastbidsheet":["fbs"],"image/vnd.fpx":["fpx"],"image/vnd.fst":["fst"],"image/vnd.fujixerox.edmics-mmr":["mmr"],"image/vnd.fujixerox.edmics-rlc":["rlc"],"image/vnd.microsoft.icon":["ico"],"image/vnd.ms-dds":["dds"],"image/vnd.ms-modi":["mdi"],"image/vnd.ms-photo":["wdp"],"image/vnd.net-fpx":["npx"],"image/vnd.pco.b16":["b16"],"image/vnd.tencent.tap":["tap"],"image/vnd.valve.source.texture":["vtf"],"image/vnd.wap.wbmp":["wbmp"],"image/vnd.xiff":["xif"],"image/vnd.zbrush.pcx":["pcx"],"image/x-3ds":["3ds"],"image/x-adobe-dng":["dng"],"image/x-cmu-raster":["ras"],"image/x-cmx":["cmx"],"image/x-freehand":["fh","fhc","fh4","fh5","fh7"],"image/x-icon":["*ico"],"image/x-jng":["jng"],"image/x-mrsid-image":["sid"],"image/x-ms-bmp":["*bmp"],"image/x-pcx":["*pcx"],"image/x-pict":["pic","pct"],"image/x-portable-anymap":["pnm"],"image/x-portable-bitmap":["pbm"],"image/x-portable-graymap":["pgm"],"image/x-portable-pixmap":["ppm"],"image/x-rgb":["rgb"],"image/x-tga":["tga"],"image/x-xbitmap":["xbm"],"image/x-xpixmap":["xpm"],"image/x-xwindowdump":["xwd"],"message/vnd.wfa.wsc":["wsc"],"model/vnd.bary":["bary"],"model/vnd.cld":["cld"],"model/vnd.collada+xml":["dae"],"model/vnd.dwf":["dwf"],"model/vnd.gdl":["gdl"],"model/vnd.gtw":["gtw"],"model/vnd.mts":["*mts"],"model/vnd.opengex":["ogex"],"model/vnd.parasolid.transmit.binary":["x_b"],"model/vnd.parasolid.transmit.text":["x_t"],"model/vnd.pytha.pyox":["pyo","pyox"],"model/vnd.sap.vds":["vds"],"model/vnd.usda":["usda"],"model/vnd.usdz+zip":["usdz"],"model/vnd.valve.source.compiled-map":["bsp"],"model/vnd.vtu":["vtu"],"text/prs.lines.tag":["dsc"],"text/vnd.curl":["curl"],"text/vnd.curl.dcurl":["dcurl"],"text/vnd.curl.mcurl":["mcurl"],"text/vnd.curl.scurl":["scurl"],"text/vnd.dvb.subtitle":["sub"],"text/vnd.familysearch.gedcom":["ged"],"text/vnd.fly":["fly"],"text/vnd.fmi.flexstor":["flx"],"text/vnd.graphviz":["gv"],"text/vnd.in3d.3dml":["3dml"],"text/vnd.in3d.spot":["spot"],"text/vnd.sun.j2me.app-descriptor":["jad"],"text/vnd.wap.wml":["wml"],"text/vnd.wap.wmlscript":["wmls"],"text/x-asm":["s","asm"],"text/x-c":["c","cc","cxx","cpp","h","hh","dic"],"text/x-component":["htc"],"text/x-fortran":["f","for","f77","f90"],"text/x-handlebars-template":["hbs"],"text/x-java-source":["java"],"text/x-lua":["lua"],"text/x-markdown":["mkd"],"text/x-nfo":["nfo"],"text/x-opml":["opml"],"text/x-org":["*org"],"text/x-pascal":["p","pas"],"text/x-processing":["pde"],"text/x-sass":["sass"],"text/x-scss":["scss"],"text/x-setext":["etx"],"text/x-sfv":["sfv"],"text/x-suse-ymp":["ymp"],"text/x-uuencode":["uu"],"text/x-vcalendar":["vcs"],"text/x-vcard":["vcf"],"video/vnd.dece.hd":["uvh","uvvh"],"video/vnd.dece.mobile":["uvm","uvvm"],"video/vnd.dece.pd":["uvp","uvvp"],"video/vnd.dece.sd":["uvs","uvvs"],"video/vnd.dece.video":["uvv","uvvv"],"video/vnd.dvb.file":["dvb"],"video/vnd.fvt":["fvt"],"video/vnd.mpegurl":["mxu","m4u"],"video/vnd.ms-playready.media.pyv":["pyv"],"video/vnd.uvvu.mp4":["uvu","uvvu"],"video/vnd.vivo":["viv"],"video/x-f4v":["f4v"],"video/x-fli":["fli"],"video/x-flv":["flv"],"video/x-m4v":["m4v"],"video/x-matroska":["mkv","mk3d","mks"],"video/x-mng":["mng"],"video/x-ms-asf":["asf","asx"],"video/x-ms-vob":["vob"],"video/x-ms-wm":["wm"],"video/x-ms-wmv":["wmv"],"video/x-ms-wmx":["wmx"],"video/x-ms-wvx":["wvx"],"video/x-msvideo":["avi"],"video/x-sgi-movie":["movie"],"video/x-smv":["smv"],"x-conference/x-cooltalk":["ice"]};Object.freeze(Li);var qi=Li;var Wi={"application/andrew-inset":["ez"],"application/appinstaller":["appinstaller"],"application/applixware":["aw"],"application/appx":["appx"],"application/appxbundle":["appxbundle"],"application/atom+xml":["atom"],"application/atomcat+xml":["atomcat"],"application/atomdeleted+xml":["atomdeleted"],"application/atomsvc+xml":["atomsvc"],"application/atsc-dwd+xml":["dwd"],"application/atsc-held+xml":["held"],"application/atsc-rsat+xml":["rsat"],"application/automationml-aml+xml":["aml"],"application/automationml-amlx+zip":["amlx"],"application/bdoc":["bdoc"],"application/calendar+xml":["xcs"],"application/ccxml+xml":["ccxml"],"application/cdfx+xml":["cdfx"],"application/cdmi-capability":["cdmia"],"application/cdmi-container":["cdmic"],"application/cdmi-domain":["cdmid"],"application/cdmi-object":["cdmio"],"application/cdmi-queue":["cdmiq"],"application/cpl+xml":["cpl"],"application/cu-seeme":["cu"],"application/cwl":["cwl"],"application/dash+xml":["mpd"],"application/dash-patch+xml":["mpp"],"application/davmount+xml":["davmount"],"application/dicom":["dcm"],"application/docbook+xml":["dbk"],"application/dssc+der":["dssc"],"application/dssc+xml":["xdssc"],"application/ecmascript":["ecma"],"application/emma+xml":["emma"],"application/emotionml+xml":["emotionml"],"application/epub+zip":["epub"],"application/exi":["exi"],"application/express":["exp"],"application/fdf":["fdf"],"application/fdt+xml":["fdt"],"application/font-tdpfr":["pfr"],"application/geo+json":["geojson"],"application/gml+xml":["gml"],"application/gpx+xml":["gpx"],"application/gxf":["gxf"],"application/gzip":["gz"],"application/hjson":["hjson"],"application/hyperstudio":["stk"],"application/inkml+xml":["ink","inkml"],"application/ipfix":["ipfix"],"application/its+xml":["its"],"application/java-archive":["jar","war","ear"],"application/java-serialized-object":["ser"],"application/java-vm":["class"],"application/javascript":["*js"],"application/json":["json","map"],"application/json5":["json5"],"application/jsonml+json":["jsonml"],"application/ld+json":["jsonld"],"application/lgr+xml":["lgr"],"application/lost+xml":["lostxml"],"application/mac-binhex40":["hqx"],"application/mac-compactpro":["cpt"],"application/mads+xml":["mads"],"application/manifest+json":["webmanifest"],"application/marc":["mrc"],"application/marcxml+xml":["mrcx"],"application/mathematica":["ma","nb","mb"],"application/mathml+xml":["mathml"],"application/mbox":["mbox"],"application/media-policy-dataset+xml":["mpf"],"application/mediaservercontrol+xml":["mscml"],"application/metalink+xml":["metalink"],"application/metalink4+xml":["meta4"],"application/mets+xml":["mets"],"application/mmt-aei+xml":["maei"],"application/mmt-usd+xml":["musd"],"application/mods+xml":["mods"],"application/mp21":["m21","mp21"],"application/mp4":["*mp4","*mpg4","mp4s","m4p"],"application/msix":["msix"],"application/msixbundle":["msixbundle"],"application/msword":["doc","dot"],"application/mxf":["mxf"],"application/n-quads":["nq"],"application/n-triples":["nt"],"application/node":["cjs"],"application/octet-stream":["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"],"application/oda":["oda"],"application/oebps-package+xml":["opf"],"application/ogg":["ogx"],"application/omdoc+xml":["omdoc"],"application/onenote":["onetoc","onetoc2","onetmp","onepkg","one","onea"],"application/oxps":["oxps"],"application/p2p-overlay+xml":["relo"],"application/patch-ops-error+xml":["xer"],"application/pdf":["pdf"],"application/pgp-encrypted":["pgp"],"application/pgp-keys":["asc"],"application/pgp-signature":["sig","*asc"],"application/pics-rules":["prf"],"application/pkcs10":["p10"],"application/pkcs7-mime":["p7m","p7c"],"application/pkcs7-signature":["p7s"],"application/pkcs8":["p8"],"application/pkix-attr-cert":["ac"],"application/pkix-cert":["cer"],"application/pkix-crl":["crl"],"application/pkix-pkipath":["pkipath"],"application/pkixcmp":["pki"],"application/pls+xml":["pls"],"application/postscript":["ai","eps","ps"],"application/provenance+xml":["provx"],"application/pskc+xml":["pskcxml"],"application/raml+yaml":["raml"],"application/rdf+xml":["rdf","owl"],"application/reginfo+xml":["rif"],"application/relax-ng-compact-syntax":["rnc"],"application/resource-lists+xml":["rl"],"application/resource-lists-diff+xml":["rld"],"application/rls-services+xml":["rs"],"application/route-apd+xml":["rapd"],"application/route-s-tsid+xml":["sls"],"application/route-usd+xml":["rusd"],"application/rpki-ghostbusters":["gbr"],"application/rpki-manifest":["mft"],"application/rpki-roa":["roa"],"application/rsd+xml":["rsd"],"application/rss+xml":["rss"],"application/rtf":["rtf"],"application/sbml+xml":["sbml"],"application/scvp-cv-request":["scq"],"application/scvp-cv-response":["scs"],"application/scvp-vp-request":["spq"],"application/scvp-vp-response":["spp"],"application/sdp":["sdp"],"application/senml+xml":["senmlx"],"application/sensml+xml":["sensmlx"],"application/set-payment-initiation":["setpay"],"application/set-registration-initiation":["setreg"],"application/shf+xml":["shf"],"application/sieve":["siv","sieve"],"application/smil+xml":["smi","smil"],"application/sparql-query":["rq"],"application/sparql-results+xml":["srx"],"application/sql":["sql"],"application/srgs":["gram"],"application/srgs+xml":["grxml"],"application/sru+xml":["sru"],"application/ssdl+xml":["ssdl"],"application/ssml+xml":["ssml"],"application/swid+xml":["swidtag"],"application/tei+xml":["tei","teicorpus"],"application/thraud+xml":["tfi"],"application/timestamped-data":["tsd"],"application/toml":["toml"],"application/trig":["trig"],"application/ttml+xml":["ttml"],"application/ubjson":["ubj"],"application/urc-ressheet+xml":["rsheet"],"application/urc-targetdesc+xml":["td"],"application/voicexml+xml":["vxml"],"application/wasm":["wasm"],"application/watcherinfo+xml":["wif"],"application/widget":["wgt"],"application/winhlp":["hlp"],"application/wsdl+xml":["wsdl"],"application/wspolicy+xml":["wspolicy"],"application/xaml+xml":["xaml"],"application/xcap-att+xml":["xav"],"application/xcap-caps+xml":["xca"],"application/xcap-diff+xml":["xdf"],"application/xcap-el+xml":["xel"],"application/xcap-ns+xml":["xns"],"application/xenc+xml":["xenc"],"application/xfdf":["xfdf"],"application/xhtml+xml":["xhtml","xht"],"application/xliff+xml":["xlf"],"application/xml":["xml","xsl","xsd","rng"],"application/xml-dtd":["dtd"],"application/xop+xml":["xop"],"application/xproc+xml":["xpl"],"application/xslt+xml":["*xsl","xslt"],"application/xspf+xml":["xspf"],"application/xv+xml":["mxml","xhvml","xvml","xvm"],"application/yang":["yang"],"application/yin+xml":["yin"],"application/zip":["zip"],"application/zip+dotlottie":["lottie"],"audio/3gpp":["*3gpp"],"audio/aac":["adts","aac"],"audio/adpcm":["adp"],"audio/amr":["amr"],"audio/basic":["au","snd"],"audio/midi":["mid","midi","kar","rmi"],"audio/mobile-xmf":["mxmf"],"audio/mp3":["*mp3"],"audio/mp4":["m4a","mp4a","m4b"],"audio/mpeg":["mpga","mp2","mp2a","mp3","m2a","m3a"],"audio/ogg":["oga","ogg","spx","opus"],"audio/s3m":["s3m"],"audio/silk":["sil"],"audio/wav":["wav"],"audio/wave":["*wav"],"audio/webm":["weba"],"audio/xm":["xm"],"font/collection":["ttc"],"font/otf":["otf"],"font/ttf":["ttf"],"font/woff":["woff"],"font/woff2":["woff2"],"image/aces":["exr"],"image/apng":["apng"],"image/avci":["avci"],"image/avcs":["avcs"],"image/avif":["avif"],"image/bmp":["bmp","dib"],"image/cgm":["cgm"],"image/dicom-rle":["drle"],"image/dpx":["dpx"],"image/emf":["emf"],"image/fits":["fits"],"image/g3fax":["g3"],"image/gif":["gif"],"image/heic":["heic"],"image/heic-sequence":["heics"],"image/heif":["heif"],"image/heif-sequence":["heifs"],"image/hej2k":["hej2"],"image/ief":["ief"],"image/jaii":["jaii"],"image/jais":["jais"],"image/jls":["jls"],"image/jp2":["jp2","jpg2"],"image/jpeg":["jpg","jpeg","jpe"],"image/jph":["jph"],"image/jphc":["jhc"],"image/jpm":["jpm","jpgm"],"image/jpx":["jpx","jpf"],"image/jxl":["jxl"],"image/jxr":["jxr"],"image/jxra":["jxra"],"image/jxrs":["jxrs"],"image/jxs":["jxs"],"image/jxsc":["jxsc"],"image/jxsi":["jxsi"],"image/jxss":["jxss"],"image/ktx":["ktx"],"image/ktx2":["ktx2"],"image/pjpeg":["jfif"],"image/png":["png"],"image/sgi":["sgi"],"image/svg+xml":["svg","svgz"],"image/t38":["t38"],"image/tiff":["tif","tiff"],"image/tiff-fx":["tfx"],"image/webp":["webp"],"image/wmf":["wmf"],"message/disposition-notification":["disposition-notification"],"message/global":["u8msg"],"message/global-delivery-status":["u8dsn"],"message/global-disposition-notification":["u8mdn"],"message/global-headers":["u8hdr"],"message/rfc822":["eml","mime","mht","mhtml"],"model/3mf":["3mf"],"model/gltf+json":["gltf"],"model/gltf-binary":["glb"],"model/iges":["igs","iges"],"model/jt":["jt"],"model/mesh":["msh","mesh","silo"],"model/mtl":["mtl"],"model/obj":["obj"],"model/prc":["prc"],"model/step":["step","stp","stpnc","p21","210"],"model/step+xml":["stpx"],"model/step+zip":["stpz"],"model/step-xml+zip":["stpxz"],"model/stl":["stl"],"model/u3d":["u3d"],"model/vrml":["wrl","vrml"],"model/x3d+binary":["*x3db","x3dbz"],"model/x3d+fastinfoset":["x3db"],"model/x3d+vrml":["*x3dv","x3dvz"],"model/x3d+xml":["x3d","x3dz"],"model/x3d-vrml":["x3dv"],"text/cache-manifest":["appcache","manifest"],"text/calendar":["ics","ifb"],"text/coffeescript":["coffee","litcoffee"],"text/css":["css"],"text/csv":["csv"],"text/html":["html","htm","shtml"],"text/jade":["jade"],"text/javascript":["js","mjs"],"text/jsx":["jsx"],"text/less":["less"],"text/markdown":["md","markdown"],"text/mathml":["mml"],"text/mdx":["mdx"],"text/n3":["n3"],"text/plain":["txt","text","conf","def","list","log","in","ini"],"text/richtext":["rtx"],"text/rtf":["*rtf"],"text/sgml":["sgml","sgm"],"text/shex":["shex"],"text/slim":["slim","slm"],"text/spdx":["spdx"],"text/stylus":["stylus","styl"],"text/tab-separated-values":["tsv"],"text/troff":["t","tr","roff","man","me","ms"],"text/turtle":["ttl"],"text/uri-list":["uri","uris","urls"],"text/vcard":["vcard"],"text/vtt":["vtt"],"text/wgsl":["wgsl"],"text/xml":["*xml"],"text/yaml":["yaml","yml"],"video/3gpp":["3gp","3gpp"],"video/3gpp2":["3g2"],"video/h261":["h261"],"video/h263":["h263"],"video/h264":["h264"],"video/iso.segment":["m4s"],"video/jpeg":["jpgv"],"video/jpm":["*jpm","*jpgm"],"video/mj2":["mj2","mjp2"],"video/mp2t":["ts","m2t","m2ts","mts"],"video/mp4":["mp4","mp4v","mpg4"],"video/mpeg":["mpeg","mpg","mpe","m1v","m2v"],"video/ogg":["ogv"],"video/quicktime":["qt","mov"],"video/webm":["webm"]};Object.freeze(Wi);var $i=Wi;var oe=function(M,y,m,k){if(m==="a"&&!k)throw new TypeError("Private accessor was defined without a getter");if(typeof y=="function"?M!==y||!k:!y.has(M))throw new TypeError("Cannot read private member from an object whose class did not declare it");return m==="m"?k:m==="a"?k.call(M):k?k.value:y.get(M)},Xe,mt,Be,Nn=class{constructor(...y){Xe.set(this,new Map),mt.set(this,new Map),Be.set(this,new Map);for(let m of y)this.define(m)}define(y,m=!1){for(let[k,O]of Object.entries(y)){k=k.toLowerCase(),O=O.map(N=>N.toLowerCase()),oe(this,Be,"f").has(k)||oe(this,Be,"f").set(k,new Set);let F=oe(this,Be,"f").get(k),P=!0;for(let N of O){let H=N.startsWith("*");if(N=H?N.slice(1):N,F==null||F.add(N),P&&oe(this,mt,"f").set(k,N),P=!1,H)continue;let Z=oe(this,Xe,"f").get(N);if(Z&&Z!=k&&!m)throw new Error(`"${k} -> ${N}" conflicts with "${Z} -> ${N}". Pass \`force=true\` to override this definition.`);oe(this,Xe,"f").set(N,k)}}return this}getType(y){var P;if(typeof y!="string")return null;let m=y.replace(new RegExp("^.*[/\\\\]","s"),"").toLowerCase(),k=m.replace(new RegExp("^.*\\.","s"),"").toLowerCase(),O=m.length<y.length;return!(k.length<m.length-1)&&O?null:(P=oe(this,Xe,"f").get(k))!=null?P:null}getExtension(y){var m,k;return typeof y!="string"?null:(y=(m=y==null?void 0:y.split)==null?void 0:m.call(y,";")[0],(k=y&&oe(this,mt,"f").get(y.trim().toLowerCase()))!=null?k:null)}getAllExtensions(y){var m;return typeof y!="string"?null:(m=oe(this,Be,"f").get(y.toLowerCase()))!=null?m:null}_freeze(){this.define=()=>{throw new Error("define() not allowed for built-in Mime objects. See https://github.com/broofa/mime/blob/main/README.md#custom-mime-instances")},Object.freeze(this);for(let y of oe(this,Be,"f").values())Object.freeze(y);return this}_getTestState(){return{types:oe(this,Xe,"f"),extensions:oe(this,mt,"f")}}};Xe=new WeakMap,mt=new WeakMap,Be=new WeakMap;var Ln=Nn;var qn=new Ln($i,qi)._freeze();var L=class extends Error{constructor(y,m){super(m),this.name="VVVFS"+y+"Error"}},Fa=Ni.version,vt=class{constructor(y="vvvfs",m={throwError:!1}){$t(this,"db");$t(this,"options");this.options=m;try{this.db=new Ge(y),this.db.version(1).stores({files:"++id, name, path, type, file, [name+path+type]"})}catch{throw new L("CreateDatabase","\u521B\u5EFA\u6570\u636E\u5E93\u5931\u8D25")}}async init(y){let m=[{name:"root",path:"/",type:"dir",file:new File([],"root")},{name:"boot",path:"/",type:"dir",file:new File([],"boot")},{name:"bin",path:"/",type:"dir",file:new File([],"bin")},{name:"dev",path:"/",type:"dir",file:new File([],"dev")},{name:"etc",path:"/",type:"dir",file:new File([],"etc")},{name:"home",path:"/",type:"dir",file:new File([],"home")},{name:y||"root",path:"/home",type:"dir",file:new File([],"home")},{name:"lib",path:"/",type:"dir",file:new File([],"lib")},{name:"lib64",path:"/",type:"dir",file:new File([],"lib64")},{name:"media",path:"/",type:"dir",file:new File([],"media")},{name:"mnt",path:"/",type:"dir",file:new File([],"mnt")},{name:"opt",path:"/",type:"dir",file:new File([],"opt")},{name:"proc",path:"/",type:"dir",file:new File([],"proc")},{name:"run",path:"/",type:"dir",file:new File([],"run")},{name:"sbin",path:"/",type:"dir",file:new File([],"sbin")},{name:"srv",path:"/",type:"dir",file:new File([],"srv")},{name:"sys",path:"/",type:"dir",file:new File([],"sys")},{name:"tmp",path:"/",type:"dir",file:new File([],"tmp")},{name:"usr",path:"/",type:"dir",file:new File([],"usr")},{name:"var",path:"/",type:"dir",file:new File([],"var")}];try{for(let k of m)await this.db.files.put(k)}catch(k){throw new L("InitFiles","\u521D\u59CB\u5316\u6587\u4EF6\u5931\u8D25"+k)}}async reset(){try{await this.db.delete(),this.db=new Ge(this.db.name),this.db.version(1).stores({files:"++id, name, path, type, file, [name+path+type]"})}catch(y){throw new L("ResetDatabase","\u91CD\u7F6E\u6570\u636E\u5E93\u5931\u8D25"+y)}}async createFile(y){if(await this.exists(y))return!0;try{let{name:m,parent:k}=ie(y);return await this.exists(k)||await this.createDir(k),await this.db.files.add({name:m,path:k,type:"file",file:new File([],m,{type:qn.getType(y)||"application/octet-stream"})}),!0}catch(m){if(this.options.throwError)throw new L("CreateFile","\u521B\u5EFA\u6587\u4EF6\u5931\u8D25"+m);return!1}}async createDir(y){if(await this.exists(y))return!0;try{let{name:m,parent:k}=ie(y);if(!await this.exists(k))if(k=="/"){if(await this.db.files.add({name:"",path:"/",type:"dir",file:new File([],"")}),m=="")return!0}else await this.createDir(k);return await this.db.files.add({name:m,path:k,type:"dir",file:new File([],m)}),!0}catch(m){if(this.options.throwError)throw new L("CreateDir","\u521B\u5EFA\u76EE\u5F55\u5931\u8D25"+m);return!1}}async exists(y){try{let{name:m,parent:k}=ie(y);return await this.db.files.where({name:m,path:k}).count()>0}catch(m){if(this.options.throwError)throw new L("Exists","\u5224\u65AD\u6587\u4EF6\u662F\u5426\u5B58\u5728\u5931\u8D25"+m);return!1}}async write(y,m){try{if(!await this.exists(y)&&!await this.createFile(y)){if(this.options.throwError)throw new L("Write","\u521B\u5EFA\u6587\u4EF6\u5931\u8D25");return!1}let{name:k,parent:O}=ie(y);if(await this.isDir(O+"/"+k)){if(this.options.throwError)throw new L("Write","\u8DEF\u5F84\u5DF2\u5B58\u5728");return!1}let F=new File([m],k,{type:qn.getType(y)||"application/octet-stream"}),P=await this.db.files.where({name:k,path:O}).first();if(P)return await this.db.files.put({...P,file:F}),!0;if(this.options.throwError)throw new L("Write","\u6587\u4EF6\u8BB0\u5F55\u672A\u627E\u5230\uFF0C\u65E0\u6CD5\u5199\u5165\u5185\u5BB9");return!1}catch(k){if(this.options.throwError)throw new L("Write","\u5199\u5165\u6587\u4EF6\u5931\u8D25"+k);return!1}}async writeText(y,m){try{let k=new Blob([m],{type:"text/plain"});return await this.write(y,k)}catch(k){if(this.options.throwError)throw new L("Write","\u5199\u5165\u6587\u4EF6\u5931\u8D25"+k);return!1}}async writeJson(y,m,k){try{return await this.writeText(y,JSON.stringify(m,null,k?4:void 0))}catch(O){if(this.options.throwError)throw new L("Write","\u5199\u5165\u6587\u4EF6\u5931\u8D25"+O);return!1}}async read(y){var m;try{if(!await this.exists(y)){if(this.options.throwError)throw new L("Read","\u6587\u4EF6\u4E0D\u5B58\u5728");return null}let{name:k,parent:O}=ie(y);return(m=await this.db.files.where({name:k,path:O}).first())==null?void 0:m.file}catch(k){if(this.options.throwError)throw new L("Read","\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25"+k);return null}}async readText(y){try{let m=await this.read(y);if(m)return await m.text();if(this.options.throwError)throw new L("Read","\u6587\u4EF6\u4E0D\u5B58\u5728");return null}catch(m){if(this.options.throwError)throw new L("Read","\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25"+m);return null}}async readJson(y){try{let m=await this.readText(y);if(m)try{return JSON.parse(m)}catch(k){if(this.options.throwError)throw new L("Read","\u89E3\u6790JSON\u5931\u8D25"+k);return null}else return null}catch(m){if(this.options.throwError)throw new L("Read","\u8BFB\u53D6\u6587\u4EF6\u5931\u8D25"+m);return null}}async isFile(y){try{let{name:m,parent:k}=ie(y);return await this.db.files.where({name:m,path:k,type:"file"}).count()>0}catch(m){if(this.options.throwError)throw new L("IsFile","\u5224\u65AD\u6587\u4EF6\u7C7B\u578B\u5931\u8D25"+m);return!1}}async isDir(y){try{let{name:m,parent:k}=ie(y);return await this.db.files.where({path:k,name:m,type:"dir"}).count()>0}catch(m){if(this.options.throwError)throw new L("IsDir","\u5224\u65AD\u6587\u4EF6\u7C7B\u578B\u5931\u8D25"+m);return!1}}async list(y){try{let{name:m,parent:k}=ie(y);return(await this.db.files.where({path:k}).toArray()).map(O=>O.name).filter(O=>O!="")}catch(m){if(this.options.throwError)throw new L("List","\u5217\u51FA\u76EE\u5F55\u4E0B\u7684\u6587\u4EF6\u5931\u8D25"+m);return[]}}async rename(y,m){try{if(!await this.exists(y)){if(this.options.throwError)throw new L("Rename","\u6587\u4EF6\u4E0D\u5B58\u5728");return!1}let{name:k,parent:O}=ie(y),F=await this.db.files.get({path:y,name:k});return await this.db.files.put({name:m,path:O,type:"file",file:F.file}),!0}catch(k){if(this.options.throwError)throw new L("Rename","\u91CD\u547D\u540D\u6587\u4EF6\u5931\u8D25"+k);return!1}}async delete(y){try{if(!await this.exists(y)){if(this.options.throwError)throw new L("Delete","\u6587\u4EF6\u4E0D\u5B58\u5728");return!1}let{name:m,parent:k}=ie(y);if(await this.isDir(y)){let O=await this.list(y);for(let F of O){if(await this.isDir(fe(y,F))){let P=await this.db.files.where({name:m,path:k}).first();await this.db.files.delete(P.id)}await this.delete(fe(k,F))}return!0}else{let O=await this.db.files.where({name:m,path:k}).first();return await this.db.files.delete(O.id),!0}}catch(m){if(this.options.throwError)throw new L("Delete","\u5220\u9664\u6587\u4EF6\u5931\u8D25"+m);return!1}}async move(y,m){try{if(await this.exists(m)){if(this.options.throwError)throw new L("Move","\u76EE\u6807\u6587\u4EF6\u5DF2\u5B58\u5728");return!1}if(!await this.exists(y)){if(this.options.throwError)throw new L("Move","\u6E90\u6587\u4EF6\u4E0D\u5B58\u5728");return!1}let{name:k,parent:O}=ie(y),{name:F,parent:P}=ie(m);if(await this.createDir(P),await this.isDir(y)){let N=await this.list(y);for(let H of N)await this.move(y+"/"+H,m+"/"+H)}else{let N=await this.db.files.where({name:k,path:O}).first();await this.db.files.update(N.id,{name:F,path:P})}return await this.delete(y),!0}catch(k){if(this.options.throwError)throw new L("Move","\u79FB\u52A8\u6587\u4EF6\u5931\u8D25"+k);return!1}}async copy(y,m){try{if(await this.exists(m)){if(this.options.throwError)throw new L("Copy","\u76EE\u6807\u6587\u4EF6\u5DF2\u5B58\u5728");return!1}if(!await this.exists(y)){if(this.options.throwError)throw new L("Copy","\u6E90\u6587\u4EF6\u4E0D\u5B58\u5728");return!1}let{name:k,parent:O}=ie(y),{name:F,parent:P}=ie(m);if(await this.createDir(P),await this.isDir(y)){let N=await this.list(y);for(let H of N)await this.move(y+"/"+H,m+"/"+H)}else{let N=await this.db.files.where({name:k,path:O}).first();await this.db.files.update(N.id,{name:F,path:P})}return!0}catch(k){if(this.options.throwError)throw new L("Copy","\u590D\u5236\u6587\u4EF6\u5931\u8D25"+k);return!1}}async search(y,m){try{if(!await this.isDir(y)){if(this.options.throwError)throw new L("Search","\u57FA\u7840\u8DEF\u5F84\u4E0D\u662F\u76EE\u5F55");return null}let k=this,O=await this.list(y);return await F(y,O);async function F(P,N){let H=[];for(let Z of N)Z!=""&&(await k.isDir(fe(P,Z))?(Z.includes(m)&&H.push(fe(P,Z)+"/"),H.push(...await F(fe(P,Z),await k.list(fe(P,Z))))):await k.isFile(fe(P,Z))&&Z.includes(m)&&H.push(fe(P,Z)));return H}}catch(k){if(this.options.throwError)throw new L("Search","\u641C\u7D22\u6587\u4EF6\u5931\u8D25"+k);return null}}};$t(vt,"version");function ie(M){M=fe(M);let y=M.split("/"),m=[];for(let F=0;F<y.length;F++){if(y[F].length>255)throw new L("ParsePath","\u6587\u4EF6\u540D\u8FC7\u957F");y[F]&&m.push(y[F])}let k=m.pop()||"",O="/"+m.join("/");if(fe(O,k).length>4096)throw new L("ParsePath","\u6587\u4EF6\u8DEF\u5F84\u8FC7\u957F");return{name:k,parent:O}}function fe(...M){let y=M.map(P=>String(P)).filter(P=>P.length>0);if(y.length===0)return".";let m=y[0].startsWith("/"),k=y.join("/").split("/"),O=[];for(let P of k)P===""||P==="."||(P===".."?O.length>0&&O[O.length-1]!==".."?O.pop():m||O.push(".."):O.push(P));let F=O.join("/");return m&&(F="/"+F),F||(m?"/":".")}Object.defineProperty(vt,"version",{value:Fa,writable:!1,enumerable:!0,configurable:!1});globalThis.VVVFS=vt;})();