react-native-nitro-storage 0.7.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +32 -0
- package/README.md +20 -9
- package/SECURITY.md +2 -2
- package/docs/api-reference.md +11 -1
- package/docs/batch-transactions-migrations.md +8 -2
- package/docs/benchmarks.md +19 -15
- package/docs/web-backends.md +18 -1
- package/ios/IOSStorageAdapterCpp.mm +162 -17
- package/lib/commonjs/capabilities.js +26 -0
- package/lib/commonjs/capabilities.js.map +1 -0
- package/lib/commonjs/core/durability.js +137 -0
- package/lib/commonjs/core/durability.js.map +1 -0
- package/lib/commonjs/core/metrics.js +91 -0
- package/lib/commonjs/core/metrics.js.map +1 -0
- package/lib/commonjs/index.js +47 -22
- package/lib/commonjs/index.js.map +1 -1
- package/lib/commonjs/index.web.js +118 -66
- package/lib/commonjs/index.web.js.map +1 -1
- package/lib/commonjs/indexeddb-backend.js +73 -23
- package/lib/commonjs/indexeddb-backend.js.map +1 -1
- package/lib/commonjs/internal.js +27 -4
- package/lib/commonjs/internal.js.map +1 -1
- package/lib/commonjs/shared.js +2 -2
- package/lib/commonjs/shared.js.map +1 -1
- package/lib/commonjs/storage-core.js +217 -233
- package/lib/commonjs/storage-core.js.map +1 -1
- package/lib/commonjs/storage-events.js.map +1 -1
- package/lib/commonjs/storage-platform.js +6 -0
- package/lib/commonjs/storage-platform.js.map +1 -0
- package/lib/commonjs/storage-runtime.js +3 -21
- package/lib/commonjs/storage-runtime.js.map +1 -1
- package/lib/commonjs/testing.js +19 -4
- package/lib/commonjs/testing.js.map +1 -1
- package/lib/commonjs/web-backend-contract.js +27 -0
- package/lib/commonjs/web-backend-contract.js.map +1 -0
- package/lib/module/capabilities.js +21 -0
- package/lib/module/capabilities.js.map +1 -0
- package/lib/module/core/durability.js +133 -0
- package/lib/module/core/durability.js.map +1 -0
- package/lib/module/core/metrics.js +87 -0
- package/lib/module/core/metrics.js.map +1 -0
- package/lib/module/index.js +48 -23
- package/lib/module/index.js.map +1 -1
- package/lib/module/index.web.js +103 -64
- package/lib/module/index.web.js.map +1 -1
- package/lib/module/indexeddb-backend.js +73 -23
- package/lib/module/indexeddb-backend.js.map +1 -1
- package/lib/module/internal.js +24 -3
- package/lib/module/internal.js.map +1 -1
- package/lib/module/shared.js +2 -2
- package/lib/module/shared.js.map +1 -1
- package/lib/module/storage-core.js +218 -234
- package/lib/module/storage-core.js.map +1 -1
- package/lib/module/storage-events.js.map +1 -1
- package/lib/module/storage-platform.js +4 -0
- package/lib/module/storage-platform.js.map +1 -0
- package/lib/module/storage-runtime.js +3 -21
- package/lib/module/storage-runtime.js.map +1 -1
- package/lib/module/testing.js +5 -3
- package/lib/module/testing.js.map +1 -1
- package/lib/module/web-backend-contract.js +22 -0
- package/lib/module/web-backend-contract.js.map +1 -0
- package/lib/typescript/capabilities.d.ts +11 -0
- package/lib/typescript/capabilities.d.ts.map +1 -0
- package/lib/typescript/core/durability.d.ts +27 -0
- package/lib/typescript/core/durability.d.ts.map +1 -0
- package/lib/typescript/core/metrics.d.ts +12 -0
- package/lib/typescript/core/metrics.d.ts.map +1 -0
- package/lib/typescript/index.d.ts +5 -2
- package/lib/typescript/index.d.ts.map +1 -1
- package/lib/typescript/index.web.d.ts +8 -4
- package/lib/typescript/index.web.d.ts.map +1 -1
- package/lib/typescript/indexeddb-backend.d.ts.map +1 -1
- package/lib/typescript/internal.d.ts +3 -0
- package/lib/typescript/internal.d.ts.map +1 -1
- package/lib/typescript/shared.d.ts +2 -1
- package/lib/typescript/shared.d.ts.map +1 -1
- package/lib/typescript/storage-core.d.ts +3 -3
- package/lib/typescript/storage-core.d.ts.map +1 -1
- package/lib/typescript/storage-events.d.ts +2 -2
- package/lib/typescript/storage-events.d.ts.map +1 -1
- package/lib/typescript/storage-platform.d.ts +12 -0
- package/lib/typescript/storage-platform.d.ts.map +1 -0
- package/lib/typescript/storage-runtime.d.ts.map +1 -1
- package/lib/typescript/testing.d.ts +5 -1
- package/lib/typescript/testing.d.ts.map +1 -1
- package/lib/typescript/web-backend-contract.d.ts +10 -0
- package/lib/typescript/web-backend-contract.d.ts.map +1 -0
- package/lib/typescript/web-storage-backend.d.ts +1 -1
- package/lib/typescript/web-storage-backend.d.ts.map +1 -1
- package/package.json +3 -2
- package/src/capabilities.ts +36 -0
- package/src/core/durability.ts +170 -0
- package/src/core/metrics.ts +133 -0
- package/src/index.ts +66 -40
- package/src/index.web.ts +158 -86
- package/src/indexeddb-backend.ts +91 -20
- package/src/internal.ts +50 -4
- package/src/shared.ts +7 -6
- package/src/storage-core.ts +317 -285
- package/src/storage-events.ts +2 -1
- package/src/storage-platform.ts +16 -0
- package/src/storage-runtime.ts +13 -47
- package/src/testing.ts +14 -7
- package/src/web-backend-contract.ts +34 -0
- package/src/web-storage-backend.ts +1 -1
|
@@ -14,7 +14,7 @@ const DB_VERSION = 1;
|
|
|
14
14
|
function openDB(dbName, storeName) {
|
|
15
15
|
return new Promise((resolve, reject) => {
|
|
16
16
|
if (typeof indexedDB === "undefined") {
|
|
17
|
-
reject(new Error("IndexedDB is not available in this environment."));
|
|
17
|
+
reject(new Error("[nitro-error:unsupported] IndexedDB is not available in this environment."));
|
|
18
18
|
return;
|
|
19
19
|
}
|
|
20
20
|
const request = indexedDB.open(dbName, DB_VERSION);
|
|
@@ -24,8 +24,12 @@ function openDB(dbName, storeName) {
|
|
|
24
24
|
db.createObjectStore(storeName);
|
|
25
25
|
}
|
|
26
26
|
};
|
|
27
|
-
request.onsuccess = () =>
|
|
28
|
-
|
|
27
|
+
request.onsuccess = () => {
|
|
28
|
+
resolve(request.result);
|
|
29
|
+
};
|
|
30
|
+
request.onerror = () => {
|
|
31
|
+
reject(request.error ?? new Error("Failed to open IndexedDB database."));
|
|
32
|
+
};
|
|
29
33
|
});
|
|
30
34
|
}
|
|
31
35
|
|
|
@@ -75,11 +79,43 @@ async function createIndexedDBBackend(dbName = DEFAULT_DB_NAME, storeName = DEFA
|
|
|
75
79
|
subscriber(event);
|
|
76
80
|
});
|
|
77
81
|
}
|
|
78
|
-
function handleAsyncError(error) {
|
|
82
|
+
function handleAsyncError(keys, error) {
|
|
79
83
|
const normalized = error instanceof Error ? error : new Error(String(error ?? "Unknown IndexedDB error"));
|
|
80
|
-
pendingErrors.push(
|
|
84
|
+
pendingErrors.push({
|
|
85
|
+
keys,
|
|
86
|
+
error: normalized
|
|
87
|
+
});
|
|
81
88
|
options.onError?.(normalized);
|
|
82
89
|
}
|
|
90
|
+
function handleLifecycleFlush() {
|
|
91
|
+
if (closed || pendingWrites.size === 0) {
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
void Promise.all(Array.from(pendingWrites)).catch(() => {
|
|
95
|
+
// Errors are surfaced through flush() and onError; the page may be
|
|
96
|
+
// hidden, so the flush result is intentionally not awaited here.
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
function installLifecycleFlush() {
|
|
100
|
+
if (typeof globalThis === "undefined" || !globalThis.addEventListener) {
|
|
101
|
+
return () => {};
|
|
102
|
+
}
|
|
103
|
+
const onPageHide = () => {
|
|
104
|
+
handleLifecycleFlush();
|
|
105
|
+
};
|
|
106
|
+
const onVisibilityChange = () => {
|
|
107
|
+
if (typeof document !== "undefined" && document.visibilityState === "hidden") {
|
|
108
|
+
handleLifecycleFlush();
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
globalThis.addEventListener("pagehide", onPageHide);
|
|
112
|
+
globalThis.addEventListener("visibilitychange", onVisibilityChange);
|
|
113
|
+
return () => {
|
|
114
|
+
globalThis.removeEventListener("pagehide", onPageHide);
|
|
115
|
+
globalThis.removeEventListener("visibilitychange", onVisibilityChange);
|
|
116
|
+
};
|
|
117
|
+
}
|
|
118
|
+
const removeLifecycleFlush = installLifecycleFlush();
|
|
83
119
|
channel?.addEventListener("message", event => {
|
|
84
120
|
if (closed) {
|
|
85
121
|
return;
|
|
@@ -122,18 +158,24 @@ async function createIndexedDBBackend(dbName = DEFAULT_DB_NAME, storeName = DEFA
|
|
|
122
158
|
cursor.continue();
|
|
123
159
|
}
|
|
124
160
|
};
|
|
125
|
-
tx.oncomplete = () =>
|
|
126
|
-
|
|
161
|
+
tx.oncomplete = () => {
|
|
162
|
+
resolve();
|
|
163
|
+
};
|
|
164
|
+
tx.onerror = () => {
|
|
165
|
+
reject(tx.error ?? new Error("Failed to load IndexedDB entries."));
|
|
166
|
+
};
|
|
127
167
|
});
|
|
128
|
-
function trackWrite(tx) {
|
|
168
|
+
function trackWrite(tx, keys) {
|
|
129
169
|
const pending = new Promise(resolve => {
|
|
130
|
-
tx.oncomplete = () =>
|
|
170
|
+
tx.oncomplete = () => {
|
|
171
|
+
resolve();
|
|
172
|
+
};
|
|
131
173
|
tx.onerror = () => {
|
|
132
|
-
handleAsyncError(tx.error ?? new Error("Failed to persist IndexedDB transaction."));
|
|
174
|
+
handleAsyncError(keys, tx.error ?? new Error("Failed to persist IndexedDB transaction."));
|
|
133
175
|
resolve();
|
|
134
176
|
};
|
|
135
177
|
tx.onabort = () => {
|
|
136
|
-
handleAsyncError(tx.error ?? new Error("IndexedDB transaction was aborted."));
|
|
178
|
+
handleAsyncError(keys, tx.error ?? new Error("IndexedDB transaction was aborted."));
|
|
137
179
|
resolve();
|
|
138
180
|
};
|
|
139
181
|
});
|
|
@@ -149,27 +191,27 @@ async function createIndexedDBBackend(dbName = DEFAULT_DB_NAME, storeName = DEFA
|
|
|
149
191
|
try {
|
|
150
192
|
const tx = db.transaction(storeName, "readwrite");
|
|
151
193
|
tx.objectStore(storeName).put(value, key);
|
|
152
|
-
trackWrite(tx);
|
|
194
|
+
trackWrite(tx, [key]);
|
|
153
195
|
} catch {
|
|
154
|
-
handleAsyncError(new Error(`Failed to queue IndexedDB write for "${key}".`));
|
|
196
|
+
handleAsyncError([key], new Error(`Failed to queue IndexedDB write for "${key}".`));
|
|
155
197
|
}
|
|
156
198
|
}
|
|
157
199
|
function persistDelete(key) {
|
|
158
200
|
try {
|
|
159
201
|
const tx = db.transaction(storeName, "readwrite");
|
|
160
202
|
tx.objectStore(storeName).delete(key);
|
|
161
|
-
trackWrite(tx);
|
|
203
|
+
trackWrite(tx, [key]);
|
|
162
204
|
} catch {
|
|
163
|
-
handleAsyncError(new Error(`Failed to queue IndexedDB delete for "${key}".`));
|
|
205
|
+
handleAsyncError([key], new Error(`Failed to queue IndexedDB delete for "${key}".`));
|
|
164
206
|
}
|
|
165
207
|
}
|
|
166
208
|
function persistClear() {
|
|
167
209
|
try {
|
|
168
210
|
const tx = db.transaction(storeName, "readwrite");
|
|
169
211
|
tx.objectStore(storeName).clear();
|
|
170
|
-
trackWrite(tx);
|
|
212
|
+
trackWrite(tx, null);
|
|
171
213
|
} catch {
|
|
172
|
-
handleAsyncError(new Error("Failed to queue IndexedDB clear."));
|
|
214
|
+
handleAsyncError(null, new Error("Failed to queue IndexedDB clear."));
|
|
173
215
|
}
|
|
174
216
|
}
|
|
175
217
|
const backend = {
|
|
@@ -215,8 +257,10 @@ async function createIndexedDBBackend(dbName = DEFAULT_DB_NAME, storeName = DEFA
|
|
|
215
257
|
},
|
|
216
258
|
setMany(entries) {
|
|
217
259
|
assertOpen();
|
|
260
|
+
const keys = [];
|
|
218
261
|
entries.forEach(([key, value]) => {
|
|
219
262
|
cache.set(key, value);
|
|
263
|
+
keys.push(key);
|
|
220
264
|
});
|
|
221
265
|
try {
|
|
222
266
|
const tx = db.transaction(storeName, "readwrite");
|
|
@@ -228,9 +272,9 @@ async function createIndexedDBBackend(dbName = DEFAULT_DB_NAME, storeName = DEFA
|
|
|
228
272
|
newValue: value
|
|
229
273
|
});
|
|
230
274
|
});
|
|
231
|
-
trackWrite(tx);
|
|
275
|
+
trackWrite(tx, keys);
|
|
232
276
|
} catch {
|
|
233
|
-
handleAsyncError(new Error("Failed to queue IndexedDB batch write."));
|
|
277
|
+
handleAsyncError(null, new Error("Failed to queue IndexedDB batch write."));
|
|
234
278
|
}
|
|
235
279
|
},
|
|
236
280
|
removeMany(keys) {
|
|
@@ -248,9 +292,9 @@ async function createIndexedDBBackend(dbName = DEFAULT_DB_NAME, storeName = DEFA
|
|
|
248
292
|
newValue: null
|
|
249
293
|
});
|
|
250
294
|
});
|
|
251
|
-
trackWrite(tx);
|
|
295
|
+
trackWrite(tx, keys);
|
|
252
296
|
} catch {
|
|
253
|
-
handleAsyncError(new Error("Failed to queue IndexedDB batch delete."));
|
|
297
|
+
handleAsyncError(null, new Error("Failed to queue IndexedDB batch delete."));
|
|
254
298
|
}
|
|
255
299
|
},
|
|
256
300
|
size() {
|
|
@@ -269,14 +313,20 @@ async function createIndexedDBBackend(dbName = DEFAULT_DB_NAME, storeName = DEFA
|
|
|
269
313
|
if (pendingErrors.length === 0) {
|
|
270
314
|
return;
|
|
271
315
|
}
|
|
272
|
-
const
|
|
273
|
-
|
|
316
|
+
const failures = pendingErrors.splice(0);
|
|
317
|
+
const failedKeys = failures.flatMap(({
|
|
318
|
+
keys
|
|
319
|
+
}) => keys ?? []).filter((key, index, all) => all.indexOf(key) === index);
|
|
320
|
+
const keyDetail = failedKeys.length > 0 ? ` Affected keys: ${failedKeys.join(", ")}.` : "";
|
|
321
|
+
const [first] = failures;
|
|
322
|
+
throw new Error(`NitroStorage: IndexedDB persistence failed for ${failures.length} write(s).${keyDetail} ${first?.error.message ?? ""}`);
|
|
274
323
|
},
|
|
275
324
|
close() {
|
|
276
325
|
if (closed) {
|
|
277
326
|
return;
|
|
278
327
|
}
|
|
279
328
|
closed = true;
|
|
329
|
+
removeLifecycleFlush();
|
|
280
330
|
subscribers.clear();
|
|
281
331
|
channel?.close();
|
|
282
332
|
db.close();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["DEFAULT_DB_NAME","DEFAULT_STORE_NAME","DB_VERSION","openDB","dbName","storeName","Promise","resolve","reject","indexedDB","Error","request","open","onupgradeneeded","db","result","objectStoreNames","contains","createObjectStore","onsuccess","onerror","error","createIndexedDBBackend","options","cache","Map","pendingWrites","Set","pendingErrors","subscribers","closed","sourceId","Math","random","toString","slice","channelName","channel","BroadcastChannel","assertOpen","emitExternal","event","forEach","subscriber","handleAsyncError","normalized","String","push","onError","addEventListener","data","key","clear","newValue","delete","set","publish","postMessage","tx","transaction","store","objectStore","openCursor","cursor","value","continue","oncomplete","trackWrite","pending","onabort","add","finally","persistSet","put","persistDelete","persistClear","backend","name","getItem","get","setItem","removeItem","getAllKeys","Array","from","keys","getMany","map","setMany","entries","removeMany","size","subscribe","listener","flush","all","length","splice","close"],"sourceRoot":"../../src","sources":["indexeddb-backend.ts"],"mappings":";;;;;;AAKA,MAAMA,eAAe,GAAG,sBAAsB;AAC9C,MAAMC,kBAAkB,GAAG,UAAU;AACrC,MAAMC,UAAU,GAAG,CAAC;AAOpB;AACA;AACA;AACA;AACA,SAASC,MAAMA,CAACC,MAAc,EAAEC,SAAiB,EAAwB;EACvE,OAAO,IAAIC,OAAO,CAAC,CAACC,OAAO,EAAEC,MAAM,KAAK;IACtC,IAAI,OAAOC,SAAS,KAAK,WAAW,EAAE;MACpCD,MAAM,CAAC,IAAIE,KAAK,CAAC,iDAAiD,CAAC,CAAC;MACpE;IACF;IAEA,MAAMC,OAAO,GAAGF,SAAS,CAACG,IAAI,CAACR,MAAM,EAAEF,UAAU,CAAC;IAElDS,OAAO,CAACE,eAAe,GAAG,MAAM;MAC9B,MAAMC,EAAE,GAAGH,OAAO,CAACI,MAAM;MACzB,IAAI,CAACD,EAAE,CAACE,gBAAgB,CAACC,QAAQ,CAACZ,SAAS,CAAC,EAAE;QAC5CS,EAAE,CAACI,iBAAiB,CAACb,SAAS,CAAC;MACjC;IACF,CAAC;IAEDM,OAAO,CAACQ,SAAS,GAAG,MAAMZ,OAAO,CAACI,OAAO,CAACI,MAAM,CAAC;IACjDJ,OAAO,CAACS,OAAO,GAAG,MAChBZ,MAAM,CAACG,OAAO,CAACU,KAAK,IAAI,IAAIX,KAAK,CAAC,oCAAoC,CAAC,CAAC;EAC5E,CAAC,CAAC;AACJ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACO,eAAeY,sBAAsBA,CAC1ClB,MAAM,GAAGJ,eAAe,EACxBK,SAAS,GAAGJ,kBAAkB,EAC9BsB,OAAgC,GAAG,CAAC,CAAC,EACH;EAClC,MAAMT,EAAE,GAAG,MAAMX,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC;EAC1C,MAAMmB,KAAK,GAAG,IAAIC,GAAG,CAAiB,CAAC;EACvC,MAAMC,aAAa,GAAG,IAAIC,GAAG,CAAgB,CAAC;EAC9C,MAAMC,aAAsB,GAAG,EAAE;EACjC,MAAMC,WAAW,GAAG,IAAIF,GAAG,CAAyC,CAAC;EACrE,IAAIG,MAAM,GAAG,KAAK;EAClB,MAAMC,QAAQ,GAAG,iBAAiBC,IAAI,CAACC,MAAM,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,CAACC,KAAK,CAAC,CAAC,CAAC,EAAE;EACvE,MAAMC,WAAW,GACfb,OAAO,CAACa,WAAW,IAAI,iBAAiBhC,MAAM,IAAIC,SAAS,EAAE;EAC/D,MAAMgC,OAAO,GACX,OAAOC,gBAAgB,KAAK,WAAW,GACnC,IAAIA,gBAAgB,CAACF,WAAW,CAAC,GACjC,IAAI;EAEV,SAASG,UAAUA,CAAA,EAAS;IAC1B,IAAIT,MAAM,EAAE;MACV,MAAM,IAAIpB,KAAK,CAAC,sBAAsBN,MAAM,IAAIC,SAAS,cAAc,CAAC;IAC1E;EACF;EAEA,SAASmC,YAAYA,CAACC,KAA4B,EAAQ;IACxDZ,WAAW,CAACa,OAAO,CAAEC,UAAU,IAAK;MAClCA,UAAU,CAACF,KAAK,CAAC;IACnB,CAAC,CAAC;EACJ;EAEA,SAASG,gBAAgBA,CAACvB,KAAc,EAAQ;IAC9C,MAAMwB,UAAU,GACdxB,KAAK,YAAYX,KAAK,GAClBW,KAAK,GACL,IAAIX,KAAK,CAACoC,MAAM,CAACzB,KAAK,IAAI,yBAAyB,CAAC,CAAC;IAC3DO,aAAa,CAACmB,IAAI,CAACF,UAAU,CAAC;IAC9BtB,OAAO,CAACyB,OAAO,GAAGH,UAAU,CAAC;EAC/B;EAEAR,OAAO,EAAEY,gBAAgB,CAAC,SAAS,EAAGR,KAAmB,IAAK;IAC5D,IAAIX,MAAM,EAAE;MACV;IACF;IAEA,MAAMoB,IAAI,GAAGT,KAAK,CAACS,IAC0C;IAC7D,IAAI,CAACA,IAAI,IAAIA,IAAI,CAACnB,QAAQ,KAAKA,QAAQ,EAAE;MACvC;IACF;IAEA,IAAImB,IAAI,CAACC,GAAG,KAAK,IAAI,EAAE;MACrB3B,KAAK,CAAC4B,KAAK,CAAC,CAAC;IACf,CAAC,MAAM,IAAIF,IAAI,CAACG,QAAQ,KAAK,IAAI,EAAE;MACjC7B,KAAK,CAAC8B,MAAM,CAACJ,IAAI,CAACC,GAAG,CAAC;IACxB,CAAC,MAAM;MACL3B,KAAK,CAAC+B,GAAG,CAACL,IAAI,CAACC,GAAG,EAAED,IAAI,CAACG,QAAQ,CAAC;IACpC;IAEAb,YAAY,CAAC;MACXW,GAAG,EAAED,IAAI,CAACC,GAAG;MACbE,QAAQ,EAAEH,IAAI,CAACG;IACjB,CAAC,CAAC;EACJ,CAAC,CAAC;EAEF,SAASG,OAAOA,CAACf,KAA4B,EAAQ;IACnDJ,OAAO,EAAEoB,WAAW,CAAC;MACnB,GAAGhB,KAAK;MACRV;IACF,CAAC,CAAC;EACJ;;EAEA;EACA,MAAM,IAAIzB,OAAO,CAAO,CAACC,OAAO,EAAEC,MAAM,KAAK;IAC3C,MAAMkD,EAAE,GAAG5C,EAAE,CAAC6C,WAAW,CAACtD,SAAS,EAAE,UAAU,CAAC;IAChD,MAAMuD,KAAK,GAAGF,EAAE,CAACG,WAAW,CAACxD,SAAS,CAAC;IACvC,MAAMM,OAAO,GAAGiD,KAAK,CAACE,UAAU,CAAC,CAAC;IAElCnD,OAAO,CAACQ,SAAS,GAAG,MAAM;MACxB,MAAM4C,MAAM,GAAGpD,OAAO,CAACI,MAAM;MAC7B,IAAIgD,MAAM,EAAE;QACV,MAAMC,KAAK,GAAGD,MAAM,CAACC,KAAgB;QACrC,IAAI,OAAOA,KAAK,KAAK,QAAQ,EAAE;UAC7BxC,KAAK,CAAC+B,GAAG,CAACT,MAAM,CAACiB,MAAM,CAACZ,GAAG,CAAC,EAAEa,KAAK,CAAC;QACtC;QACAD,MAAM,CAACE,QAAQ,CAAC,CAAC;MACnB;IACF,CAAC;IAEDP,EAAE,CAACQ,UAAU,GAAG,MAAM3D,OAAO,CAAC,CAAC;IAC/BmD,EAAE,CAACtC,OAAO,GAAG,MACXZ,MAAM,CAACkD,EAAE,CAACrC,KAAK,IAAI,IAAIX,KAAK,CAAC,mCAAmC,CAAC,CAAC;EACtE,CAAC,CAAC;EAEF,SAASyD,UAAUA,CAACT,EAAkB,EAAQ;IAC5C,MAAMU,OAAO,GAAG,IAAI9D,OAAO,CAAQC,OAAO,IAAK;MAC7CmD,EAAE,CAACQ,UAAU,GAAG,MAAM3D,OAAO,CAAC,CAAC;MAC/BmD,EAAE,CAACtC,OAAO,GAAG,MAAM;QACjBwB,gBAAgB,CACdc,EAAE,CAACrC,KAAK,IAAI,IAAIX,KAAK,CAAC,0CAA0C,CAClE,CAAC;QACDH,OAAO,CAAC,CAAC;MACX,CAAC;MACDmD,EAAE,CAACW,OAAO,GAAG,MAAM;QACjBzB,gBAAgB,CACdc,EAAE,CAACrC,KAAK,IAAI,IAAIX,KAAK,CAAC,oCAAoC,CAC5D,CAAC;QACDH,OAAO,CAAC,CAAC;MACX,CAAC;IACH,CAAC,CAAC;IACFmB,aAAa,CAAC4C,GAAG,CAACF,OAAO,CAAC;IAC1B,KAAKA,OAAO,CAACG,OAAO,CAAC,MAAM;MACzB7C,aAAa,CAAC4B,MAAM,CAACc,OAAO,CAAC;IAC/B,CAAC,CAAC;EACJ;;EAEA;AACF;EACE,SAASI,UAAUA,CAACrB,GAAW,EAAEa,KAAa,EAAQ;IACpD,IAAI;MACF,MAAMN,EAAE,GAAG5C,EAAE,CAAC6C,WAAW,CAACtD,SAAS,EAAE,WAAW,CAAC;MACjDqD,EAAE,CAACG,WAAW,CAACxD,SAAS,CAAC,CAACoE,GAAG,CAACT,KAAK,EAAEb,GAAG,CAAC;MACzCgB,UAAU,CAACT,EAAE,CAAC;IAChB,CAAC,CAAC,MAAM;MACNd,gBAAgB,CACd,IAAIlC,KAAK,CAAC,wCAAwCyC,GAAG,IAAI,CAC3D,CAAC;IACH;EACF;EAEA,SAASuB,aAAaA,CAACvB,GAAW,EAAQ;IACxC,IAAI;MACF,MAAMO,EAAE,GAAG5C,EAAE,CAAC6C,WAAW,CAACtD,SAAS,EAAE,WAAW,CAAC;MACjDqD,EAAE,CAACG,WAAW,CAACxD,SAAS,CAAC,CAACiD,MAAM,CAACH,GAAG,CAAC;MACrCgB,UAAU,CAACT,EAAE,CAAC;IAChB,CAAC,CAAC,MAAM;MACNd,gBAAgB,CACd,IAAIlC,KAAK,CAAC,yCAAyCyC,GAAG,IAAI,CAC5D,CAAC;IACH;EACF;EAEA,SAASwB,YAAYA,CAAA,EAAS;IAC5B,IAAI;MACF,MAAMjB,EAAE,GAAG5C,EAAE,CAAC6C,WAAW,CAACtD,SAAS,EAAE,WAAW,CAAC;MACjDqD,EAAE,CAACG,WAAW,CAACxD,SAAS,CAAC,CAAC+C,KAAK,CAAC,CAAC;MACjCe,UAAU,CAACT,EAAE,CAAC;IAChB,CAAC,CAAC,MAAM;MACNd,gBAAgB,CAAC,IAAIlC,KAAK,CAAC,kCAAkC,CAAC,CAAC;IACjE;EACF;EAEA,MAAMkE,OAAgC,GAAG;IACvCC,IAAI,EAAE,aAAazE,MAAM,IAAIC,SAAS,EAAE;IACxCyE,OAAOA,CAAC3B,GAAW,EAAiB;MAClCZ,UAAU,CAAC,CAAC;MACZ,OAAOf,KAAK,CAACuD,GAAG,CAAC5B,GAAG,CAAC,IAAI,IAAI;IAC/B,CAAC;IAED6B,OAAOA,CAAC7B,GAAW,EAAEa,KAAa,EAAQ;MACxCzB,UAAU,CAAC,CAAC;MACZf,KAAK,CAAC+B,GAAG,CAACJ,GAAG,EAAEa,KAAK,CAAC;MACrBQ,UAAU,CAACrB,GAAG,EAAEa,KAAK,CAAC;MACtBR,OAAO,CAAC;QAAEL,GAAG;QAAEE,QAAQ,EAAEW;MAAM,CAAC,CAAC;IACnC,CAAC;IAEDiB,UAAUA,CAAC9B,GAAW,EAAQ;MAC5BZ,UAAU,CAAC,CAAC;MACZf,KAAK,CAAC8B,MAAM,CAACH,GAAG,CAAC;MACjBuB,aAAa,CAACvB,GAAG,CAAC;MAClBK,OAAO,CAAC;QAAEL,GAAG;QAAEE,QAAQ,EAAE;MAAK,CAAC,CAAC;IAClC,CAAC;IAEDD,KAAKA,CAAA,EAAS;MACZb,UAAU,CAAC,CAAC;MACZf,KAAK,CAAC4B,KAAK,CAAC,CAAC;MACbuB,YAAY,CAAC,CAAC;MACdnB,OAAO,CAAC;QAAEL,GAAG,EAAE,IAAI;QAAEE,QAAQ,EAAE;MAAK,CAAC,CAAC;IACxC,CAAC;IAED6B,UAAUA,CAAA,EAAa;MACrB3C,UAAU,CAAC,CAAC;MACZ,OAAO4C,KAAK,CAACC,IAAI,CAAC5D,KAAK,CAAC6D,IAAI,CAAC,CAAC,CAAC;IACjC,CAAC;IACDC,OAAOA,CAACD,IAAc,EAAqB;MACzC9C,UAAU,CAAC,CAAC;MACZ,OAAO8C,IAAI,CAACE,GAAG,CAAEpC,GAAG,IAAK3B,KAAK,CAACuD,GAAG,CAAC5B,GAAG,CAAC,IAAI,IAAI,CAAC;IAClD,CAAC;IACDqC,OAAOA,CAACC,OAAO,EAAQ;MACrBlD,UAAU,CAAC,CAAC;MACZkD,OAAO,CAAC/C,OAAO,CAAC,CAAC,CAACS,GAAG,EAAEa,KAAK,CAAC,KAAK;QAChCxC,KAAK,CAAC+B,GAAG,CAACJ,GAAG,EAAEa,KAAK,CAAC;MACvB,CAAC,CAAC;MACF,IAAI;QACF,MAAMN,EAAE,GAAG5C,EAAE,CAAC6C,WAAW,CAACtD,SAAS,EAAE,WAAW,CAAC;QACjD,MAAMuD,KAAK,GAAGF,EAAE,CAACG,WAAW,CAACxD,SAAS,CAAC;QACvCoF,OAAO,CAAC/C,OAAO,CAAC,CAAC,CAACS,GAAG,EAAEa,KAAK,CAAC,KAAK;UAChCJ,KAAK,CAACa,GAAG,CAACT,KAAK,EAAEb,GAAG,CAAC;UACrBK,OAAO,CAAC;YAAEL,GAAG;YAAEE,QAAQ,EAAEW;UAAM,CAAC,CAAC;QACnC,CAAC,CAAC;QACFG,UAAU,CAACT,EAAE,CAAC;MAChB,CAAC,CAAC,MAAM;QACNd,gBAAgB,CAAC,IAAIlC,KAAK,CAAC,wCAAwC,CAAC,CAAC;MACvE;IACF,CAAC;IACDgF,UAAUA,CAACL,IAAc,EAAQ;MAC/B9C,UAAU,CAAC,CAAC;MACZ8C,IAAI,CAAC3C,OAAO,CAAES,GAAG,IAAK;QACpB3B,KAAK,CAAC8B,MAAM,CAACH,GAAG,CAAC;MACnB,CAAC,CAAC;MACF,IAAI;QACF,MAAMO,EAAE,GAAG5C,EAAE,CAAC6C,WAAW,CAACtD,SAAS,EAAE,WAAW,CAAC;QACjD,MAAMuD,KAAK,GAAGF,EAAE,CAACG,WAAW,CAACxD,SAAS,CAAC;QACvCgF,IAAI,CAAC3C,OAAO,CAAES,GAAG,IAAK;UACpBS,KAAK,CAACN,MAAM,CAACH,GAAG,CAAC;UACjBK,OAAO,CAAC;YAAEL,GAAG;YAAEE,QAAQ,EAAE;UAAK,CAAC,CAAC;QAClC,CAAC,CAAC;QACFc,UAAU,CAACT,EAAE,CAAC;MAChB,CAAC,CAAC,MAAM;QACNd,gBAAgB,CAAC,IAAIlC,KAAK,CAAC,yCAAyC,CAAC,CAAC;MACxE;IACF,CAAC;IACDiF,IAAIA,CAAA,EAAW;MACbpD,UAAU,CAAC,CAAC;MACZ,OAAOf,KAAK,CAACmE,IAAI;IACnB,CAAC;IACDC,SAASA,CAACC,QAAQ,EAAc;MAC9BtD,UAAU,CAAC,CAAC;MACZV,WAAW,CAACyC,GAAG,CAACuB,QAAQ,CAAC;MACzB,OAAO,MAAM;QACXhE,WAAW,CAACyB,MAAM,CAACuC,QAAQ,CAAC;MAC9B,CAAC;IACH,CAAC;IACD,MAAMC,KAAKA,CAAA,EAAkB;MAC3B,MAAMxF,OAAO,CAACyF,GAAG,CAACZ,KAAK,CAACC,IAAI,CAAC1D,aAAa,CAAC,CAAC;MAC5C,IAAIE,aAAa,CAACoE,MAAM,KAAK,CAAC,EAAE;QAC9B;MACF;MAEA,MAAM,CAAC3E,KAAK,CAAC,GAAGO,aAAa,CAACqE,MAAM,CAAC,CAAC,CAAC;MACvC,MAAM5E,KAAK;IACb,CAAC;IACD6E,KAAKA,CAAA,EAAS;MACZ,IAAIpE,MAAM,EAAE;QACV;MACF;MACAA,MAAM,GAAG,IAAI;MACbD,WAAW,CAACuB,KAAK,CAAC,CAAC;MACnBf,OAAO,EAAE6D,KAAK,CAAC,CAAC;MAChBpF,EAAE,CAACoF,KAAK,CAAC,CAAC;IACZ;EACF,CAAC;EAED,OAAOtB,OAAO;AAChB","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["DEFAULT_DB_NAME","DEFAULT_STORE_NAME","DB_VERSION","openDB","dbName","storeName","Promise","resolve","reject","indexedDB","Error","request","open","onupgradeneeded","db","result","objectStoreNames","contains","createObjectStore","onsuccess","onerror","error","createIndexedDBBackend","options","cache","Map","pendingWrites","Set","pendingErrors","subscribers","closed","sourceId","Math","random","toString","slice","channelName","channel","BroadcastChannel","assertOpen","emitExternal","event","forEach","subscriber","handleAsyncError","keys","normalized","String","push","onError","handleLifecycleFlush","size","all","Array","from","catch","installLifecycleFlush","globalThis","addEventListener","onPageHide","onVisibilityChange","document","visibilityState","removeEventListener","removeLifecycleFlush","data","key","clear","newValue","delete","set","publish","postMessage","tx","transaction","store","objectStore","openCursor","cursor","value","continue","oncomplete","trackWrite","pending","onabort","add","finally","persistSet","put","persistDelete","persistClear","backend","name","getItem","get","setItem","removeItem","getAllKeys","getMany","map","setMany","entries","removeMany","subscribe","listener","flush","length","failures","splice","failedKeys","flatMap","filter","index","indexOf","keyDetail","join","first","message","close"],"sourceRoot":"../../src","sources":["indexeddb-backend.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/internal.js
CHANGED
|
@@ -3,16 +3,18 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.NATIVE_BATCH_MISSING_SENTINEL = exports.MIGRATION_VERSION_KEY = void 0;
|
|
6
|
+
exports.NATIVE_BATCH_MISSING_SENTINEL = exports.MIGRATION_VERSION_KEY = exports.ESCAPE_PREFIX = void 0;
|
|
7
7
|
exports.assertBatchScope = assertBatchScope;
|
|
8
8
|
exports.assertValidScope = assertValidScope;
|
|
9
9
|
exports.decodeNativeBatchValue = decodeNativeBatchValue;
|
|
10
10
|
exports.deserializeWithPrimitiveFastPath = deserializeWithPrimitiveFastPath;
|
|
11
|
+
exports.escapeCollidingRawValue = escapeCollidingRawValue;
|
|
11
12
|
exports.isNamespaced = isNamespaced;
|
|
12
13
|
exports.isStoredEnvelope = isStoredEnvelope;
|
|
13
14
|
exports.prefixKey = prefixKey;
|
|
14
15
|
exports.serializeWithPrimitiveFastPath = serializeWithPrimitiveFastPath;
|
|
15
16
|
exports.toVersionToken = toVersionToken;
|
|
17
|
+
exports.unescapeCollidingRawValue = unescapeCollidingRawValue;
|
|
16
18
|
var _Storage = require("./Storage.types");
|
|
17
19
|
const MIGRATION_VERSION_KEY = exports.MIGRATION_VERSION_KEY = "__nitro_storage_migration_version__";
|
|
18
20
|
const NATIVE_BATCH_MISSING_SENTINEL = exports.NATIVE_BATCH_MISSING_SENTINEL = "__nitro_storage_batch_missing__::v1";
|
|
@@ -28,6 +30,17 @@ const PRIM_NEG_INFINITY = "__nitro_storage_primitive__:n:-Infinity";
|
|
|
28
30
|
const PRIM_NAN = "__nitro_storage_primitive__:n:NaN";
|
|
29
31
|
const NAMESPACE_SEPARATOR = ":";
|
|
30
32
|
const VERSION_TOKEN_PREFIX = "__nitro_storage_version__:";
|
|
33
|
+
const ESCAPE_PREFIX = exports.ESCAPE_PREFIX = "__nitro_storage_escaped__:";
|
|
34
|
+
const RESERVED_RAW_TOKENS = new Set([PRIM_NULL, PRIM_UNDEFINED, PRIM_TRUE, PRIM_FALSE, PRIM_INFINITY, PRIM_NEG_INFINITY, PRIM_NAN, NATIVE_BATCH_MISSING_SENTINEL]);
|
|
35
|
+
function escapeCollidingRawValue(value) {
|
|
36
|
+
if (RESERVED_RAW_TOKENS.has(value) || value.startsWith(PRIMITIVE_FAST_PATH_PREFIX) || value.startsWith(ESCAPE_PREFIX)) {
|
|
37
|
+
return `${ESCAPE_PREFIX}${value}`;
|
|
38
|
+
}
|
|
39
|
+
return value;
|
|
40
|
+
}
|
|
41
|
+
function unescapeCollidingRawValue(value) {
|
|
42
|
+
return value.startsWith(ESCAPE_PREFIX) ? value.slice(ESCAPE_PREFIX.length) : value;
|
|
43
|
+
}
|
|
31
44
|
function isStoredEnvelope(value) {
|
|
32
45
|
if (typeof value !== "object" || value === null) {
|
|
33
46
|
return false;
|
|
@@ -50,7 +63,7 @@ function assertBatchScope(items, scope) {
|
|
|
50
63
|
throw new Error(`Batch scope mismatch for "${mismatchedItem.key}": expected ${expectedScope}, received ${actualScope}.`);
|
|
51
64
|
}
|
|
52
65
|
function decodeNativeBatchValue(value) {
|
|
53
|
-
if (value === NATIVE_BATCH_MISSING_SENTINEL) {
|
|
66
|
+
if (value === undefined || value === NATIVE_BATCH_MISSING_SENTINEL) {
|
|
54
67
|
return undefined;
|
|
55
68
|
}
|
|
56
69
|
return value;
|
|
@@ -68,7 +81,13 @@ function serializeWithPrimitiveFastPath(value) {
|
|
|
68
81
|
}
|
|
69
82
|
switch (typeof value) {
|
|
70
83
|
case "string":
|
|
71
|
-
|
|
84
|
+
{
|
|
85
|
+
const stringValue = value;
|
|
86
|
+
if (stringValue === NATIVE_BATCH_MISSING_SENTINEL || stringValue.startsWith(PRIMITIVE_FAST_PATH_PREFIX) || stringValue.startsWith(ESCAPE_PREFIX)) {
|
|
87
|
+
return `${PRIM_STRING_PREFIX}${ESCAPE_PREFIX}${stringValue}`;
|
|
88
|
+
}
|
|
89
|
+
return PRIM_STRING_PREFIX + stringValue;
|
|
90
|
+
}
|
|
72
91
|
case "number":
|
|
73
92
|
if (Number.isFinite(value)) {
|
|
74
93
|
return PRIM_NUMBER_PREFIX + String(value);
|
|
@@ -105,6 +124,9 @@ const CHAR_B = 98; // 'b'
|
|
|
105
124
|
const CHAR_N = 110; // 'n'
|
|
106
125
|
|
|
107
126
|
function deserializeWithPrimitiveFastPath(value) {
|
|
127
|
+
if (value.startsWith(ESCAPE_PREFIX)) {
|
|
128
|
+
return value.slice(ESCAPE_PREFIX.length);
|
|
129
|
+
}
|
|
108
130
|
if (value.startsWith(PRIMITIVE_FAST_PATH_PREFIX)) {
|
|
109
131
|
const prefixLen = PRIMITIVE_FAST_PATH_PREFIX.length;
|
|
110
132
|
const tagChar = value.charCodeAt(prefixLen);
|
|
@@ -118,7 +140,8 @@ function deserializeWithPrimitiveFastPath(value) {
|
|
|
118
140
|
// Tagged values have format: prefix + tag + ':' + payload
|
|
119
141
|
const payload = value.slice(prefixLen + 2);
|
|
120
142
|
if (tagChar === CHAR_S) {
|
|
121
|
-
|
|
143
|
+
const unescapedPayload = payload.startsWith(ESCAPE_PREFIX) ? payload.slice(ESCAPE_PREFIX.length) : payload;
|
|
144
|
+
return unescapedPayload;
|
|
122
145
|
}
|
|
123
146
|
if (tagChar === CHAR_B) {
|
|
124
147
|
return payload === "1";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_Storage","require","MIGRATION_VERSION_KEY","exports","NATIVE_BATCH_MISSING_SENTINEL","PRIMITIVE_FAST_PATH_PREFIX","PRIM_NULL","PRIM_UNDEFINED","PRIM_TRUE","PRIM_FALSE","PRIM_STRING_PREFIX","PRIM_NUMBER_PREFIX","PRIM_INFINITY","PRIM_NEG_INFINITY","PRIM_NAN","NAMESPACE_SEPARATOR","VERSION_TOKEN_PREFIX","
|
|
1
|
+
{"version":3,"names":["_Storage","require","MIGRATION_VERSION_KEY","exports","NATIVE_BATCH_MISSING_SENTINEL","PRIMITIVE_FAST_PATH_PREFIX","PRIM_NULL","PRIM_UNDEFINED","PRIM_TRUE","PRIM_FALSE","PRIM_STRING_PREFIX","PRIM_NUMBER_PREFIX","PRIM_INFINITY","PRIM_NEG_INFINITY","PRIM_NAN","NAMESPACE_SEPARATOR","VERSION_TOKEN_PREFIX","ESCAPE_PREFIX","RESERVED_RAW_TOKENS","Set","escapeCollidingRawValue","value","has","startsWith","unescapeCollidingRawValue","slice","length","isStoredEnvelope","candidate","__nitroStorageEnvelope","expiresAt","payload","assertValidScope","scope","StorageScope","Memory","Disk","Secure","Error","String","assertBatchScope","items","mismatchedItem","find","item","expectedScope","actualScope","key","decodeNativeBatchValue","undefined","prefixKey","namespace","isNamespaced","serializeWithPrimitiveFastPath","stringValue","Number","isFinite","isNaN","Infinity","serialized","JSON","stringify","CHAR_U","CHAR_L","CHAR_S","CHAR_B","CHAR_N","deserializeWithPrimitiveFastPath","prefixLen","tagChar","charCodeAt","unescapedPayload","NaN","parsed","parse","fnv1aHash","hash","index","Math","imul","toString","padStart","toVersionToken","raw","normalized"],"sourceRoot":"../../src","sources":["internal.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/commonjs/shared.js
CHANGED
|
@@ -20,9 +20,9 @@ exports.now = void 0;
|
|
|
20
20
|
exports.redactSecureKeyChange = redactSecureKeyChange;
|
|
21
21
|
exports.runMicrotask = void 0;
|
|
22
22
|
exports.typedKeys = typedKeys;
|
|
23
|
-
var _Storage = require("./Storage.types");
|
|
24
23
|
var _internal = require("./internal");
|
|
25
24
|
var _storageRuntime = require("./storage-runtime");
|
|
25
|
+
var _Storage = require("./Storage.types");
|
|
26
26
|
function isUpdater(valueOrFn) {
|
|
27
27
|
return typeof valueOrFn === "function";
|
|
28
28
|
}
|
|
@@ -44,7 +44,7 @@ function assertBiometricLevel(level) {
|
|
|
44
44
|
assertEnumInteger(level, 0, 2, "biometric level");
|
|
45
45
|
}
|
|
46
46
|
const runMicrotask = exports.runMicrotask = typeof queueMicrotask === "function" ? queueMicrotask : task => {
|
|
47
|
-
Promise.resolve().then(task);
|
|
47
|
+
void Promise.resolve().then(task);
|
|
48
48
|
};
|
|
49
49
|
const now = exports.now = typeof performance !== "undefined" && typeof performance.now === "function" ? () => performance.now() : () => Date.now();
|
|
50
50
|
function notifyKeyListeners(registry, key) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["
|
|
1
|
+
{"version":3,"names":["_internal","require","_storageRuntime","_Storage","isUpdater","valueOrFn","typedKeys","record","Object","keys","assertEnumInteger","value","min","max","label","Number","isFinite","Error","Math","trunc","assertAccessControlLevel","level","assertBiometricLevel","runMicrotask","exports","queueMicrotask","task","Promise","resolve","then","now","performance","Date","notifyKeyListeners","registry","key","listeners","get","listener","notifyAllListeners","values","createKeyChange","scope","oldValue","newValue","operation","source","type","SECURE_EVENT_REDACTED_VALUE","redactSecureKeyChange","event","StorageScope","Secure","undefined","canUseRawBatchPath","item","_hasExpiration","_hasValidation","_isBiometric","_secureAccessControl","canUseSecureRawBatchPath","defaultSerialize","serializeWithPrimitiveFastPath","defaultDeserialize","deserializeWithPrimitiveFastPath","isKeychainLockedError","err","isLockedStorageErrorCode","getStorageErrorCode"],"sourceRoot":"../../src","sources":["shared.ts"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,SAAA,GAAAC,OAAA;AASA,IAAAC,eAAA,GAAAD,OAAA;AAIA,IAAAE,QAAA,GAAAF,OAAA;AAqFO,SAASG,SAASA,CACvBC,SAA+B,EACF;EAC7B,OAAO,OAAOA,SAAS,KAAK,UAAU;AACxC;AAEO,SAASC,SAASA,CAAsBC,MAAoB,EAAO;EACxE,OAAOC,MAAM,CAACC,IAAI,CAACF,MAAM,CAAC;AAC5B;AAEO,SAASG,iBAAiBA,CAC/BC,KAAa,EACbC,GAAW,EACXC,GAAW,EACXC,KAAa,EACP;EACN,IAAI,CAACC,MAAM,CAACC,QAAQ,CAACL,KAAK,CAAC,IAAIA,KAAK,GAAGC,GAAG,IAAID,KAAK,GAAGE,GAAG,EAAE;IACzD,MAAM,IAAII,KAAK,CAAC,yBAAyBH,KAAK,EAAE,CAAC;EACnD;EACA,IAAIH,KAAK,KAAKO,IAAI,CAACC,KAAK,CAACR,KAAK,CAAC,EAAE;IAC/B,MAAM,IAAIM,KAAK,CAAC,yBAAyBH,KAAK,EAAE,CAAC;EACnD;AACF;AAEO,SAASM,wBAAwBA,CAACC,KAAa,EAAQ;EAC5DX,iBAAiB,CAACW,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,sBAAsB,CAAC;AACxD;AAEO,SAASC,oBAAoBA,CAACD,KAAa,EAAQ;EACxDX,iBAAiB,CAACW,KAAK,EAAE,CAAC,EAAE,CAAC,EAAE,iBAAiB,CAAC;AACnD;AAeO,MAAME,YAAY,GAAAC,OAAA,CAAAD,YAAA,GACvB,OAAOE,cAAc,KAAK,UAAU,GAChCA,cAAc,GACbC,IAAgB,IAAK;EACpB,KAAKC,OAAO,CAACC,OAAO,CAAC,CAAC,CAACC,IAAI,CAACH,IAAI,CAAC;AACnC,CAAC;AAEA,MAAMI,GAAG,GAAAN,OAAA,CAAAM,GAAA,GACd,OAAOC,WAAW,KAAK,WAAW,IAAI,OAAOA,WAAW,CAACD,GAAG,KAAK,UAAU,GACvE,MAAMC,WAAW,CAACD,GAAG,CAAC,CAAC,GACvB,MAAME,IAAI,CAACF,GAAG,CAAC,CAAC;AAEf,SAASG,kBAAkBA,CAChCC,QAA6B,EAC7BC,GAAW,EACL;EACN,MAAMC,SAAS,GAAGF,QAAQ,CAACG,GAAG,CAACF,GAAG,CAAC;EACnC,IAAIC,SAAS,EAAE;IACb,KAAK,MAAME,QAAQ,IAAIF,SAAS,EAAE;MAChCE,QAAQ,CAAC,CAAC;IACZ;EACF;AACF;AAEO,SAASC,kBAAkBA,CAACL,QAA6B,EAAQ;EACtE,KAAK,MAAME,SAAS,IAAIF,QAAQ,CAACM,MAAM,CAAC,CAAC,EAAE;IACzC,KAAK,MAAMF,QAAQ,IAAIF,SAAS,EAAE;MAChCE,QAAQ,CAAC,CAAC;IACZ;EACF;AACF;AAEO,SAASG,eAAeA,CAC7BC,KAAmB,EACnBP,GAAW,EACXQ,QAA4B,EAC5BC,QAA4B,EAC5BC,SAAiC,EACjCC,MAA2B,EACJ;EACvB,OAAO;IACLC,IAAI,EAAE,KAAK;IACXL,KAAK;IACLP,GAAG;IACHQ,QAAQ;IACRC,QAAQ;IACRC,SAAS;IACTC;EACF,CAAC;AACH;AAEO,MAAME,2BAA2B,GAAAxB,OAAA,CAAAwB,2BAAA,GAAG,UAAU;AAE9C,SAASC,qBAAqBA,CACnCC,KAA4B,EACL;EACvB,IAAIA,KAAK,CAACR,KAAK,KAAKS,qBAAY,CAACC,MAAM,EAAE;IACvC,OAAOF,KAAK;EACd;EAEA,OAAO;IACL,GAAGA,KAAK;IACRP,QAAQ,EACNO,KAAK,CAACP,QAAQ,KAAKU,SAAS,GAAGA,SAAS,GAAGL,2BAA2B;IACxEJ,QAAQ,EACNM,KAAK,CAACN,QAAQ,KAAKS,SAAS,GAAGA,SAAS,GAAGL;EAC/C,CAAC;AACH;AAEO,SAASM,kBAAkBA,CAACC,IAAsB,EAAW;EAClE,OACEA,IAAI,CAACC,cAAc,KAAK,KAAK,IAC7BD,IAAI,CAACE,cAAc,KAAK,KAAK,IAC7BF,IAAI,CAACG,YAAY,KAAK,IAAI,IAC1BH,IAAI,CAACI,oBAAoB,KAAKN,SAAS;AAE3C;AAEO,SAASO,wBAAwBA,CAACL,IAAsB,EAAW;EACxE,OACEA,IAAI,CAACC,cAAc,KAAK,KAAK,IAC7BD,IAAI,CAACE,cAAc,KAAK,KAAK,IAC7BF,IAAI,CAACG,YAAY,KAAK,IAAI;AAE9B;AAEO,SAASG,gBAAgBA,CAAIlD,KAAQ,EAAU;EACpD,OAAO,IAAAmD,wCAA8B,EAACnD,KAAK,CAAC;AAC9C;AAEO,SAASoD,kBAAkBA,CAAIpD,KAAa,EAAK;EACtD,OAAO,IAAAqD,0CAAgC,EAACrD,KAAK,CAAC;AAChD;AAaO,SAASsD,qBAAqBA,CAACC,GAAY,EAAW;EAC3D,OAAO,IAAAC,wCAAwB,EAAC,IAAAC,mCAAmB,EAACF,GAAG,CAAC,CAAC;AAC3D","ignoreList":[]}
|