@powersync/web 1.17.2 → 1.19.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/bin/powersync.js +3 -1
- package/dist/{_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_IDBBatchAtomicVFS_js-_powersync_co-780aa20.index.umd.js → _journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapp-81d3460.index.umd.js} +27 -7
- package/dist/_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapp-81d3460.index.umd.js.map +1 -0
- package/dist/{_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_IDBBatchAtomicVFS_js-_powersync_co-780aa21.index.umd.js → _journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapp-81d3461.index.umd.js} +27 -7
- package/dist/_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapp-81d3461.index.umd.js.map +1 -0
- package/dist/index.umd.js +105 -2701
- package/dist/index.umd.js.map +1 -1
- package/dist/worker/SharedSyncImplementation.umd.js +148 -424
- package/dist/worker/SharedSyncImplementation.umd.js.map +1 -1
- package/dist/worker/WASQLiteDB.umd.js +101 -378
- package/dist/worker/WASQLiteDB.umd.js.map +1 -1
- package/lib/package.json +3 -4
- package/lib/src/db/adapters/AbstractWebSQLOpenFactory.d.ts +1 -2
- package/lib/src/db/adapters/AbstractWebSQLOpenFactory.js +4 -4
- package/lib/src/db/adapters/LockedAsyncDatabaseAdapter.d.ts +1 -2
- package/lib/src/db/adapters/LockedAsyncDatabaseAdapter.js +2 -3
- package/lib/src/db/adapters/wa-sqlite/WASQLiteOpenFactory.d.ts +4 -1
- package/lib/src/db/adapters/wa-sqlite/WASQLiteOpenFactory.js +2 -1
- package/lib/src/db/adapters/web-sql-flags.d.ts +1 -2
- package/lib/src/db/sync/SharedWebStreamingSyncImplementation.js +1 -0
- package/lib/src/db/sync/WebRemote.d.ts +1 -2
- package/lib/src/db/sync/WebStreamingSyncImplementation.js +3 -1
- package/lib/src/worker/db/WASQLiteDB.worker.js +9 -5
- package/lib/src/worker/sync/BroadcastLogger.d.ts +11 -1
- package/lib/src/worker/sync/BroadcastLogger.js +37 -13
- package/lib/src/worker/sync/SharedSyncImplementation.d.ts +2 -2
- package/lib/src/worker/sync/SharedSyncImplementation.js +8 -5
- package/lib/src/worker/sync/SharedSyncImplementation.worker.js +3 -3
- package/lib/tsconfig.tsbuildinfo +1 -1
- package/package.json +3 -4
- package/dist/_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_IDBBatchAtomicVFS_js-_powersync_co-780aa20.index.umd.js.map +0 -1
- package/dist/_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_IDBBatchAtomicVFS_js-_powersync_co-780aa21.index.umd.js.map +0 -1
package/dist/index.umd.js
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
(function webpackUniversalModuleDefinition(root, factory) {
|
|
2
2
|
if(typeof exports === 'object' && typeof module === 'object')
|
|
3
|
-
module.exports = factory(require("@powersync/common"), require("async-mutex"), require("comlink"), require("@journeyapps/wa-sqlite"), require("js-
|
|
3
|
+
module.exports = factory(require("@powersync/common"), require("async-mutex"), require("comlink"), require("@journeyapps/wa-sqlite"), require("@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js"), require("@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js"), require("@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js"));
|
|
4
4
|
else if(typeof define === 'function' && define.amd)
|
|
5
|
-
define(["@powersync/common", "async-mutex", "comlink", "@journeyapps/wa-sqlite", "js-
|
|
5
|
+
define(["@powersync/common", "async-mutex", "comlink", "@journeyapps/wa-sqlite", "@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js", "@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js", "@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js"], factory);
|
|
6
6
|
else if(typeof exports === 'object')
|
|
7
|
-
exports["sdk_web"] = factory(require("@powersync/common"), require("async-mutex"), require("comlink"), require("@journeyapps/wa-sqlite"), require("js-
|
|
7
|
+
exports["sdk_web"] = factory(require("@powersync/common"), require("async-mutex"), require("comlink"), require("@journeyapps/wa-sqlite"), require("@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js"), require("@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js"), require("@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js"));
|
|
8
8
|
else
|
|
9
|
-
root["sdk_web"] = factory(root["@powersync/common"], root["async-mutex"], root["comlink"], root["@journeyapps/wa-sqlite"], root["js-
|
|
10
|
-
})(self, (__WEBPACK_EXTERNAL_MODULE__powersync_common__, __WEBPACK_EXTERNAL_MODULE_async_mutex__, __WEBPACK_EXTERNAL_MODULE_comlink__, __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite__,
|
|
9
|
+
root["sdk_web"] = factory(root["@powersync/common"], root["async-mutex"], root["comlink"], root["@journeyapps/wa-sqlite"], root["@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js"], root["@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js"], root["@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js"]);
|
|
10
|
+
})(self, (__WEBPACK_EXTERNAL_MODULE__powersync_common__, __WEBPACK_EXTERNAL_MODULE_async_mutex__, __WEBPACK_EXTERNAL_MODULE_comlink__, __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite__, __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite_src_examples_OPFSCoopSyncVFS_js__, __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite_src_examples_AccessHandlePoolVFS_js__, __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite_src_examples_IDBBatchAtomicVFS_js__) => {
|
|
11
11
|
return /******/ (() => { // webpackBootstrap
|
|
12
12
|
/******/ var __webpack_modules__ = ({
|
|
13
13
|
|
|
@@ -33680,8 +33680,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
33680
33680
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
33681
33681
|
/* harmony export */ AbstractWebSQLOpenFactory: () => (/* binding */ AbstractWebSQLOpenFactory)
|
|
33682
33682
|
/* harmony export */ });
|
|
33683
|
-
/* harmony import */ var
|
|
33684
|
-
/* harmony import */ var
|
|
33683
|
+
/* harmony import */ var _powersync_common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @powersync/common */ "@powersync/common");
|
|
33684
|
+
/* harmony import */ var _powersync_common__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_powersync_common__WEBPACK_IMPORTED_MODULE_0__);
|
|
33685
33685
|
/* harmony import */ var _SSRDBAdapter__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./SSRDBAdapter */ "./lib/src/db/adapters/SSRDBAdapter.js");
|
|
33686
33686
|
/* harmony import */ var _web_sql_flags__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./web-sql-flags */ "./lib/src/db/adapters/web-sql-flags.js");
|
|
33687
33687
|
|
|
@@ -33694,7 +33694,7 @@ class AbstractWebSQLOpenFactory {
|
|
|
33694
33694
|
constructor(options) {
|
|
33695
33695
|
this.options = options;
|
|
33696
33696
|
this.resolvedFlags = (0,_web_sql_flags__WEBPACK_IMPORTED_MODULE_2__.resolveWebSQLFlags)(options.flags);
|
|
33697
|
-
this.logger = options.logger ??
|
|
33697
|
+
this.logger = options.logger ?? (0,_powersync_common__WEBPACK_IMPORTED_MODULE_0__.createLogger)(`AbstractWebSQLOpenFactory - ${this.options.dbFilename}`);
|
|
33698
33698
|
}
|
|
33699
33699
|
/**
|
|
33700
33700
|
* Opens a {@link DBAdapter} using resolved flags.
|
|
@@ -33703,13 +33703,13 @@ class AbstractWebSQLOpenFactory {
|
|
|
33703
33703
|
openDB() {
|
|
33704
33704
|
const { resolvedFlags: { disableSSRWarning, enableMultiTabs, ssrMode = (0,_web_sql_flags__WEBPACK_IMPORTED_MODULE_2__.isServerSide)() } } = this;
|
|
33705
33705
|
if (ssrMode && !disableSSRWarning) {
|
|
33706
|
-
|
|
33706
|
+
this.logger.warn(`
|
|
33707
33707
|
Running PowerSync in SSR mode.
|
|
33708
33708
|
Only empty query results will be returned.
|
|
33709
33709
|
Disable this warning by setting 'disableSSRWarning: true' in options.`);
|
|
33710
33710
|
}
|
|
33711
33711
|
if (!enableMultiTabs) {
|
|
33712
|
-
|
|
33712
|
+
this.logger.warn('Multiple tab support is not enabled. Using this site across multiple tabs may not function correctly.');
|
|
33713
33713
|
}
|
|
33714
33714
|
if (ssrMode) {
|
|
33715
33715
|
return new _SSRDBAdapter__WEBPACK_IMPORTED_MODULE_1__.SSRDBAdapter();
|
|
@@ -33734,11 +33734,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
33734
33734
|
/* harmony export */ });
|
|
33735
33735
|
/* harmony import */ var _powersync_common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @powersync/common */ "@powersync/common");
|
|
33736
33736
|
/* harmony import */ var _powersync_common__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_powersync_common__WEBPACK_IMPORTED_MODULE_0__);
|
|
33737
|
-
/* harmony import */ var
|
|
33738
|
-
/* harmony import */ var
|
|
33739
|
-
/* harmony import */ var _shared_navigator__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../..//shared/navigator */ "./lib/src/shared/navigator.js");
|
|
33740
|
-
/* harmony import */ var _WorkerWrappedAsyncDatabaseConnection__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./WorkerWrappedAsyncDatabaseConnection */ "./lib/src/db/adapters/WorkerWrappedAsyncDatabaseConnection.js");
|
|
33741
|
-
|
|
33737
|
+
/* harmony import */ var _shared_navigator__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../..//shared/navigator */ "./lib/src/shared/navigator.js");
|
|
33738
|
+
/* harmony import */ var _WorkerWrappedAsyncDatabaseConnection__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./WorkerWrappedAsyncDatabaseConnection */ "./lib/src/db/adapters/WorkerWrappedAsyncDatabaseConnection.js");
|
|
33742
33739
|
|
|
33743
33740
|
|
|
33744
33741
|
|
|
@@ -33761,7 +33758,7 @@ class LockedAsyncDatabaseAdapter extends _powersync_common__WEBPACK_IMPORTED_MOD
|
|
|
33761
33758
|
super();
|
|
33762
33759
|
this.options = options;
|
|
33763
33760
|
this._dbIdentifier = options.name;
|
|
33764
|
-
this.logger = options.logger ??
|
|
33761
|
+
this.logger = options.logger ?? (0,_powersync_common__WEBPACK_IMPORTED_MODULE_0__.createLogger)(`LockedAsyncDatabaseAdapter - ${this._dbIdentifier}`);
|
|
33765
33762
|
// Set the name if provided. We can query for the name if not available yet
|
|
33766
33763
|
this.debugMode = options.debugMode ?? false;
|
|
33767
33764
|
if (this.debugMode) {
|
|
@@ -33818,7 +33815,7 @@ class LockedAsyncDatabaseAdapter extends _powersync_common__WEBPACK_IMPORTED_MOD
|
|
|
33818
33815
|
await this.initPromise;
|
|
33819
33816
|
}
|
|
33820
33817
|
async shareConnection() {
|
|
33821
|
-
if (false == this._db instanceof
|
|
33818
|
+
if (false == this._db instanceof _WorkerWrappedAsyncDatabaseConnection__WEBPACK_IMPORTED_MODULE_2__.WorkerWrappedAsyncDatabaseConnection) {
|
|
33822
33819
|
throw new Error(`Only worker connections can be shared`);
|
|
33823
33820
|
}
|
|
33824
33821
|
return this._db.shareConnection();
|
|
@@ -33875,7 +33872,7 @@ class LockedAsyncDatabaseAdapter extends _powersync_common__WEBPACK_IMPORTED_MOD
|
|
|
33875
33872
|
return this.acquireLock(async () => fn(this.generateDBHelpers({ execute: this._execute, executeRaw: this._executeRaw })));
|
|
33876
33873
|
}
|
|
33877
33874
|
acquireLock(callback) {
|
|
33878
|
-
return (0,
|
|
33875
|
+
return (0,_shared_navigator__WEBPACK_IMPORTED_MODULE_1__.getNavigatorLocks)().request(`db-lock-${this._dbIdentifier}`, callback);
|
|
33879
33876
|
}
|
|
33880
33877
|
async readTransaction(fn, options) {
|
|
33881
33878
|
return this.readLock(this.wrapTransaction(fn));
|
|
@@ -34273,7 +34270,7 @@ const DEFAULT_MODULE_FACTORIES = {
|
|
|
34273
34270
|
module = await SyncWASQLiteModuleFactory();
|
|
34274
34271
|
}
|
|
34275
34272
|
// @ts-expect-error The types for this static method are missing upstream
|
|
34276
|
-
const { AccessHandlePoolVFS } = await Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! @journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js */ "
|
|
34273
|
+
const { AccessHandlePoolVFS } = await Promise.resolve(/*! import() */).then(__webpack_require__.t.bind(__webpack_require__, /*! @journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js */ "@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js", 23));
|
|
34277
34274
|
return {
|
|
34278
34275
|
module,
|
|
34279
34276
|
vfs: await AccessHandlePoolVFS.create(options.dbFileName, module)
|
|
@@ -34288,7 +34285,7 @@ const DEFAULT_MODULE_FACTORIES = {
|
|
|
34288
34285
|
module = await SyncWASQLiteModuleFactory();
|
|
34289
34286
|
}
|
|
34290
34287
|
// @ts-expect-error The types for this static method are missing upstream
|
|
34291
|
-
const { OPFSCoopSyncVFS } = await Promise.resolve(/*! import() */).then(__webpack_require__.bind(__webpack_require__, /*! @journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js */ "
|
|
34288
|
+
const { OPFSCoopSyncVFS } = await Promise.resolve(/*! import() */).then(__webpack_require__.t.bind(__webpack_require__, /*! @journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js */ "@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js", 23));
|
|
34292
34289
|
return {
|
|
34293
34290
|
module,
|
|
34294
34291
|
vfs: await OPFSCoopSyncVFS.create(options.dbFileName, module)
|
|
@@ -34711,7 +34708,8 @@ class WASQLiteOpenFactory extends _AbstractWebSQLOpenFactory__WEBPACK_IMPORTED_M
|
|
|
34711
34708
|
temporaryStorage,
|
|
34712
34709
|
cacheSizeKb,
|
|
34713
34710
|
flags: this.resolvedFlags,
|
|
34714
|
-
encryptionKey: encryptionKey
|
|
34711
|
+
encryptionKey: encryptionKey,
|
|
34712
|
+
logLevel: this.logger.getLevel()
|
|
34715
34713
|
}),
|
|
34716
34714
|
identifier: this.options.dbFilename,
|
|
34717
34715
|
onClose: () => {
|
|
@@ -35060,6 +35058,7 @@ class SharedWebStreamingSyncImplementation extends _WebStreamingSyncImplementati
|
|
|
35060
35058
|
}).port;
|
|
35061
35059
|
}
|
|
35062
35060
|
this.syncManager = comlink__WEBPACK_IMPORTED_MODULE_0__.wrap(this.messagePort);
|
|
35061
|
+
this.syncManager.setLogLevel(this.logger.getLevel());
|
|
35063
35062
|
this.triggerCrudUpload = this.syncManager.triggerCrudUpload;
|
|
35064
35063
|
/**
|
|
35065
35064
|
* Opens MessagePort to the existing shared DB worker.
|
|
@@ -35228,7 +35227,9 @@ class WebStreamingSyncImplementation extends _powersync_common__WEBPACK_IMPORTED
|
|
|
35228
35227
|
}
|
|
35229
35228
|
obtainLock(lockOptions) {
|
|
35230
35229
|
const identifier = `streaming-sync-${lockOptions.type}-${this.webOptions.identifier}`;
|
|
35231
|
-
lockOptions.type == _powersync_common__WEBPACK_IMPORTED_MODULE_0__.LockType.SYNC
|
|
35230
|
+
if (lockOptions.type == _powersync_common__WEBPACK_IMPORTED_MODULE_0__.LockType.SYNC) {
|
|
35231
|
+
this.logger.debug('requesting lock for ', identifier);
|
|
35232
|
+
}
|
|
35232
35233
|
return (0,_shared_navigator__WEBPACK_IMPORTED_MODULE_1__.getNavigatorLocks)().request(identifier, { signal: lockOptions.signal }, lockOptions.callback);
|
|
35233
35234
|
}
|
|
35234
35235
|
}
|
|
@@ -35379,12 +35380,12 @@ function openWorkerDatabasePort(workerIdentifier, multipleTabs = true, worker =
|
|
|
35379
35380
|
* (in the case of Android)
|
|
35380
35381
|
*/
|
|
35381
35382
|
return !needsDedicated && multipleTabs
|
|
35382
|
-
? new SharedWorker(new URL(/* worker import */ __webpack_require__.p + __webpack_require__.u("_journeyapps_wa-sqlite-_journeyapps_wa-
|
|
35383
|
+
? new SharedWorker(new URL(/* worker import */ __webpack_require__.p + __webpack_require__.u("_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapp-81d3460"), __webpack_require__.b), {
|
|
35383
35384
|
/* @vite-ignore */
|
|
35384
35385
|
name: `shared-DB-worker-${workerIdentifier}`,
|
|
35385
35386
|
type: undefined
|
|
35386
35387
|
}).port
|
|
35387
|
-
: new Worker(new URL(/* worker import */ __webpack_require__.p + __webpack_require__.u("_journeyapps_wa-sqlite-_journeyapps_wa-
|
|
35388
|
+
: new Worker(new URL(/* worker import */ __webpack_require__.p + __webpack_require__.u("_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapp-81d3461"), __webpack_require__.b), {
|
|
35388
35389
|
/* @vite-ignore */
|
|
35389
35390
|
name: `DB-worker-${workerIdentifier}`,
|
|
35390
35391
|
type: undefined
|
|
@@ -35440,8 +35441,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
35440
35441
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
35441
35442
|
/* harmony export */ BroadcastLogger: () => (/* binding */ BroadcastLogger)
|
|
35442
35443
|
/* harmony export */ });
|
|
35443
|
-
/* harmony import */ var
|
|
35444
|
-
/* harmony import */ var
|
|
35444
|
+
/* harmony import */ var _powersync_common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @powersync/common */ "@powersync/common");
|
|
35445
|
+
/* harmony import */ var _powersync_common__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_powersync_common__WEBPACK_IMPORTED_MODULE_0__);
|
|
35445
35446
|
|
|
35446
35447
|
/**
|
|
35447
35448
|
* Broadcasts logs to all clients
|
|
@@ -35455,64 +35456,88 @@ class BroadcastLogger {
|
|
|
35455
35456
|
WARN;
|
|
35456
35457
|
ERROR;
|
|
35457
35458
|
OFF;
|
|
35459
|
+
currentLevel = _powersync_common__WEBPACK_IMPORTED_MODULE_0__.LogLevel.INFO;
|
|
35458
35460
|
constructor(clients) {
|
|
35459
35461
|
this.clients = clients;
|
|
35460
|
-
this.TRACE =
|
|
35461
|
-
this.DEBUG =
|
|
35462
|
-
this.INFO =
|
|
35463
|
-
this.TIME =
|
|
35464
|
-
this.WARN =
|
|
35465
|
-
this.ERROR =
|
|
35466
|
-
this.OFF =
|
|
35462
|
+
this.TRACE = _powersync_common__WEBPACK_IMPORTED_MODULE_0__.LogLevel.TRACE;
|
|
35463
|
+
this.DEBUG = _powersync_common__WEBPACK_IMPORTED_MODULE_0__.LogLevel.DEBUG;
|
|
35464
|
+
this.INFO = _powersync_common__WEBPACK_IMPORTED_MODULE_0__.LogLevel.INFO;
|
|
35465
|
+
this.TIME = _powersync_common__WEBPACK_IMPORTED_MODULE_0__.LogLevel.TIME;
|
|
35466
|
+
this.WARN = _powersync_common__WEBPACK_IMPORTED_MODULE_0__.LogLevel.WARN;
|
|
35467
|
+
this.ERROR = _powersync_common__WEBPACK_IMPORTED_MODULE_0__.LogLevel.ERROR;
|
|
35468
|
+
this.OFF = _powersync_common__WEBPACK_IMPORTED_MODULE_0__.LogLevel.OFF;
|
|
35467
35469
|
}
|
|
35468
35470
|
trace(...x) {
|
|
35471
|
+
if (!this.enabledFor(this.TRACE))
|
|
35472
|
+
return;
|
|
35469
35473
|
console.trace(...x);
|
|
35470
35474
|
const sanitized = this.sanitizeArgs(x);
|
|
35471
35475
|
this.iterateClients((client) => client.clientProvider.trace(...sanitized));
|
|
35472
35476
|
}
|
|
35473
35477
|
debug(...x) {
|
|
35478
|
+
if (!this.enabledFor(this.DEBUG))
|
|
35479
|
+
return;
|
|
35474
35480
|
console.debug(...x);
|
|
35475
35481
|
const sanitized = this.sanitizeArgs(x);
|
|
35476
35482
|
this.iterateClients((client) => client.clientProvider.debug(...sanitized));
|
|
35477
35483
|
}
|
|
35478
35484
|
info(...x) {
|
|
35485
|
+
if (!this.enabledFor(this.INFO))
|
|
35486
|
+
return;
|
|
35479
35487
|
console.info(...x);
|
|
35480
35488
|
const sanitized = this.sanitizeArgs(x);
|
|
35481
35489
|
this.iterateClients((client) => client.clientProvider.info(...sanitized));
|
|
35482
35490
|
}
|
|
35483
35491
|
log(...x) {
|
|
35492
|
+
if (!this.enabledFor(this.INFO))
|
|
35493
|
+
return;
|
|
35484
35494
|
console.log(...x);
|
|
35485
35495
|
const sanitized = this.sanitizeArgs(x);
|
|
35486
35496
|
this.iterateClients((client) => client.clientProvider.log(...sanitized));
|
|
35487
35497
|
}
|
|
35488
35498
|
warn(...x) {
|
|
35499
|
+
if (!this.enabledFor(this.WARN))
|
|
35500
|
+
return;
|
|
35489
35501
|
console.warn(...x);
|
|
35490
35502
|
const sanitized = this.sanitizeArgs(x);
|
|
35491
35503
|
this.iterateClients((client) => client.clientProvider.warn(...sanitized));
|
|
35492
35504
|
}
|
|
35493
35505
|
error(...x) {
|
|
35506
|
+
if (!this.enabledFor(this.ERROR))
|
|
35507
|
+
return;
|
|
35494
35508
|
console.error(...x);
|
|
35495
35509
|
const sanitized = this.sanitizeArgs(x);
|
|
35496
35510
|
this.iterateClients((client) => client.clientProvider.error(...sanitized));
|
|
35497
35511
|
}
|
|
35498
35512
|
time(label) {
|
|
35513
|
+
if (!this.enabledFor(this.TIME))
|
|
35514
|
+
return;
|
|
35499
35515
|
console.time(label);
|
|
35500
35516
|
this.iterateClients((client) => client.clientProvider.time(label));
|
|
35501
35517
|
}
|
|
35502
35518
|
timeEnd(label) {
|
|
35519
|
+
if (!this.enabledFor(this.TIME))
|
|
35520
|
+
return;
|
|
35503
35521
|
console.timeEnd(label);
|
|
35504
35522
|
this.iterateClients((client) => client.clientProvider.timeEnd(label));
|
|
35505
35523
|
}
|
|
35524
|
+
/**
|
|
35525
|
+
* Set the global log level.
|
|
35526
|
+
*/
|
|
35506
35527
|
setLevel(level) {
|
|
35507
|
-
|
|
35528
|
+
this.currentLevel = level;
|
|
35508
35529
|
}
|
|
35530
|
+
/**
|
|
35531
|
+
* Get the current log level.
|
|
35532
|
+
*/
|
|
35509
35533
|
getLevel() {
|
|
35510
|
-
|
|
35511
|
-
return (js_logger__WEBPACK_IMPORTED_MODULE_0___default().INFO);
|
|
35534
|
+
return this.currentLevel;
|
|
35512
35535
|
}
|
|
35536
|
+
/**
|
|
35537
|
+
* Returns true if the given level is enabled.
|
|
35538
|
+
*/
|
|
35513
35539
|
enabledFor(level) {
|
|
35514
|
-
|
|
35515
|
-
return true;
|
|
35540
|
+
return level.value >= this.currentLevel.value;
|
|
35516
35541
|
}
|
|
35517
35542
|
/**
|
|
35518
35543
|
* Iterates all clients, catches individual client exceptions
|
|
@@ -35568,15 +35593,12 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
35568
35593
|
/* harmony import */ var async_mutex__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(async_mutex__WEBPACK_IMPORTED_MODULE_1__);
|
|
35569
35594
|
/* harmony import */ var comlink__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! comlink */ "comlink");
|
|
35570
35595
|
/* harmony import */ var comlink__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(comlink__WEBPACK_IMPORTED_MODULE_2__);
|
|
35571
|
-
/* harmony import */ var
|
|
35572
|
-
/* harmony import */ var
|
|
35573
|
-
/* harmony import */ var
|
|
35574
|
-
/* harmony import */ var
|
|
35575
|
-
/* harmony import */ var
|
|
35576
|
-
/* harmony import */ var
|
|
35577
|
-
/* harmony import */ var _shared_navigator__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../shared/navigator */ "./lib/src/shared/navigator.js");
|
|
35578
|
-
/* harmony import */ var _BroadcastLogger__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./BroadcastLogger */ "./lib/src/worker/sync/BroadcastLogger.js");
|
|
35579
|
-
|
|
35596
|
+
/* harmony import */ var _db_sync_WebRemote__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../db/sync/WebRemote */ "./lib/src/db/sync/WebRemote.js");
|
|
35597
|
+
/* harmony import */ var _db_sync_WebStreamingSyncImplementation__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../db/sync/WebStreamingSyncImplementation */ "./lib/src/db/sync/WebStreamingSyncImplementation.js");
|
|
35598
|
+
/* harmony import */ var _db_adapters_LockedAsyncDatabaseAdapter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../db/adapters/LockedAsyncDatabaseAdapter */ "./lib/src/db/adapters/LockedAsyncDatabaseAdapter.js");
|
|
35599
|
+
/* harmony import */ var _db_adapters_WorkerWrappedAsyncDatabaseConnection__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../db/adapters/WorkerWrappedAsyncDatabaseConnection */ "./lib/src/db/adapters/WorkerWrappedAsyncDatabaseConnection.js");
|
|
35600
|
+
/* harmony import */ var _shared_navigator__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../shared/navigator */ "./lib/src/shared/navigator.js");
|
|
35601
|
+
/* harmony import */ var _BroadcastLogger__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./BroadcastLogger */ "./lib/src/worker/sync/BroadcastLogger.js");
|
|
35580
35602
|
|
|
35581
35603
|
|
|
35582
35604
|
|
|
@@ -35620,7 +35642,7 @@ class SharedSyncImplementation extends _powersync_common__WEBPACK_IMPORTED_MODUL
|
|
|
35620
35642
|
this.dbAdapter = null;
|
|
35621
35643
|
this.syncParams = null;
|
|
35622
35644
|
this.syncStreamClient = null;
|
|
35623
|
-
this.logger =
|
|
35645
|
+
this.logger = (0,_powersync_common__WEBPACK_IMPORTED_MODULE_0__.createLogger)('shared-sync');
|
|
35624
35646
|
this.lastConnectOptions = undefined;
|
|
35625
35647
|
this.isInitialized = new Promise((resolve) => {
|
|
35626
35648
|
const callback = this.registerListener({
|
|
@@ -35631,7 +35653,7 @@ class SharedSyncImplementation extends _powersync_common__WEBPACK_IMPORTED_MODUL
|
|
|
35631
35653
|
});
|
|
35632
35654
|
});
|
|
35633
35655
|
this.syncStatus = new _powersync_common__WEBPACK_IMPORTED_MODULE_0__.SyncStatus({});
|
|
35634
|
-
this.broadCastLogger = new
|
|
35656
|
+
this.broadCastLogger = new _BroadcastLogger__WEBPACK_IMPORTED_MODULE_8__.BroadcastLogger(this.ports);
|
|
35635
35657
|
}
|
|
35636
35658
|
async waitForStatus(status) {
|
|
35637
35659
|
await this.waitForReady();
|
|
@@ -35650,6 +35672,10 @@ class SharedSyncImplementation extends _powersync_common__WEBPACK_IMPORTED_MODUL
|
|
|
35650
35672
|
async waitForReady() {
|
|
35651
35673
|
return this.isInitialized;
|
|
35652
35674
|
}
|
|
35675
|
+
setLogLevel(level) {
|
|
35676
|
+
this.logger.setLevel(level);
|
|
35677
|
+
this.broadCastLogger.setLevel(level);
|
|
35678
|
+
}
|
|
35653
35679
|
/**
|
|
35654
35680
|
* Configures the DBAdapter connection and a streaming sync client.
|
|
35655
35681
|
*/
|
|
@@ -35683,7 +35709,7 @@ class SharedSyncImplementation extends _powersync_common__WEBPACK_IMPORTED_MODUL
|
|
|
35683
35709
|
async connect(options) {
|
|
35684
35710
|
await this.waitForReady();
|
|
35685
35711
|
// This effectively queues connect and disconnect calls. Ensuring multiple tabs' requests are synchronized
|
|
35686
|
-
return (0,
|
|
35712
|
+
return (0,_shared_navigator__WEBPACK_IMPORTED_MODULE_7__.getNavigatorLocks)().request('shared-sync-connect', async () => {
|
|
35687
35713
|
if (!this.dbAdapter) {
|
|
35688
35714
|
await this.openInternalDB();
|
|
35689
35715
|
}
|
|
@@ -35700,7 +35726,7 @@ class SharedSyncImplementation extends _powersync_common__WEBPACK_IMPORTED_MODUL
|
|
|
35700
35726
|
async disconnect() {
|
|
35701
35727
|
await this.waitForReady();
|
|
35702
35728
|
// This effectively queues connect and disconnect calls. Ensuring multiple tabs' requests are synchronized
|
|
35703
|
-
return (0,
|
|
35729
|
+
return (0,_shared_navigator__WEBPACK_IMPORTED_MODULE_7__.getNavigatorLocks)().request('shared-sync-connect', async () => {
|
|
35704
35730
|
await this.syncStreamClient?.disconnect();
|
|
35705
35731
|
await this.syncStreamClient?.dispose();
|
|
35706
35732
|
this.syncStreamClient = null;
|
|
@@ -35728,7 +35754,7 @@ class SharedSyncImplementation extends _powersync_common__WEBPACK_IMPORTED_MODUL
|
|
|
35728
35754
|
async removePort(port) {
|
|
35729
35755
|
const index = this.ports.findIndex((p) => p.port == port);
|
|
35730
35756
|
if (index < 0) {
|
|
35731
|
-
|
|
35757
|
+
this.logger.warn(`Could not remove port ${port} since it is not present in active ports.`);
|
|
35732
35758
|
return;
|
|
35733
35759
|
}
|
|
35734
35760
|
const trackedPort = this.ports[index];
|
|
@@ -35779,9 +35805,9 @@ class SharedSyncImplementation extends _powersync_common__WEBPACK_IMPORTED_MODUL
|
|
|
35779
35805
|
// This should only be called after initialization has completed
|
|
35780
35806
|
const syncParams = this.syncParams;
|
|
35781
35807
|
// Create a new StreamingSyncImplementation for each connect call. This is usually done is all SDKs.
|
|
35782
|
-
return new
|
|
35808
|
+
return new _db_sync_WebStreamingSyncImplementation__WEBPACK_IMPORTED_MODULE_4__.WebStreamingSyncImplementation({
|
|
35783
35809
|
adapter: new _powersync_common__WEBPACK_IMPORTED_MODULE_0__.SqliteBucketStorage(this.dbAdapter, new async_mutex__WEBPACK_IMPORTED_MODULE_1__.Mutex(), this.logger),
|
|
35784
|
-
remote: new
|
|
35810
|
+
remote: new _db_sync_WebRemote__WEBPACK_IMPORTED_MODULE_3__.WebRemote({
|
|
35785
35811
|
fetchCredentials: async () => {
|
|
35786
35812
|
const lastPort = this.ports[this.ports.length - 1];
|
|
35787
35813
|
return new Promise(async (resolve, reject) => {
|
|
@@ -35792,7 +35818,7 @@ class SharedSyncImplementation extends _powersync_common__WEBPACK_IMPORTED_MODUL
|
|
|
35792
35818
|
};
|
|
35793
35819
|
abortController.signal.onabort = reject;
|
|
35794
35820
|
try {
|
|
35795
|
-
|
|
35821
|
+
this.logger.log('calling the last port client provider for credentials');
|
|
35796
35822
|
resolve(await lastPort.clientProvider.fetchCredentials());
|
|
35797
35823
|
}
|
|
35798
35824
|
catch (ex) {
|
|
@@ -35840,10 +35866,10 @@ class SharedSyncImplementation extends _powersync_common__WEBPACK_IMPORTED_MODUL
|
|
|
35840
35866
|
const remote = comlink__WEBPACK_IMPORTED_MODULE_2__.wrap(workerPort);
|
|
35841
35867
|
const identifier = this.syncParams.dbParams.dbFilename;
|
|
35842
35868
|
const db = await remote(this.syncParams.dbParams);
|
|
35843
|
-
const locked = new
|
|
35869
|
+
const locked = new _db_adapters_LockedAsyncDatabaseAdapter__WEBPACK_IMPORTED_MODULE_5__.LockedAsyncDatabaseAdapter({
|
|
35844
35870
|
name: identifier,
|
|
35845
35871
|
openConnection: async () => {
|
|
35846
|
-
return new
|
|
35872
|
+
return new _db_adapters_WorkerWrappedAsyncDatabaseConnection__WEBPACK_IMPORTED_MODULE_6__.WorkerWrappedAsyncDatabaseConnection({
|
|
35847
35873
|
remote,
|
|
35848
35874
|
baseConnection: db,
|
|
35849
35875
|
identifier
|
|
@@ -35935,6 +35961,17 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite__;
|
|
|
35935
35961
|
|
|
35936
35962
|
/***/ }),
|
|
35937
35963
|
|
|
35964
|
+
/***/ "@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js":
|
|
35965
|
+
/*!*****************************************************************************!*\
|
|
35966
|
+
!*** external "@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js" ***!
|
|
35967
|
+
\*****************************************************************************/
|
|
35968
|
+
/***/ ((module) => {
|
|
35969
|
+
|
|
35970
|
+
"use strict";
|
|
35971
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite_src_examples_AccessHandlePoolVFS_js__;
|
|
35972
|
+
|
|
35973
|
+
/***/ }),
|
|
35974
|
+
|
|
35938
35975
|
/***/ "@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js":
|
|
35939
35976
|
/*!***************************************************************************!*\
|
|
35940
35977
|
!*** external "@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js" ***!
|
|
@@ -35946,6 +35983,17 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite_src_examples_I
|
|
|
35946
35983
|
|
|
35947
35984
|
/***/ }),
|
|
35948
35985
|
|
|
35986
|
+
/***/ "@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js":
|
|
35987
|
+
/*!*************************************************************************!*\
|
|
35988
|
+
!*** external "@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js" ***!
|
|
35989
|
+
\*************************************************************************/
|
|
35990
|
+
/***/ ((module) => {
|
|
35991
|
+
|
|
35992
|
+
"use strict";
|
|
35993
|
+
module.exports = __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite_src_examples_OPFSCoopSyncVFS_js__;
|
|
35994
|
+
|
|
35995
|
+
/***/ }),
|
|
35996
|
+
|
|
35949
35997
|
/***/ "@powersync/common":
|
|
35950
35998
|
/*!************************************!*\
|
|
35951
35999
|
!*** external "@powersync/common" ***!
|
|
@@ -35979,17 +36027,6 @@ module.exports = __WEBPACK_EXTERNAL_MODULE_comlink__;
|
|
|
35979
36027
|
|
|
35980
36028
|
/***/ }),
|
|
35981
36029
|
|
|
35982
|
-
/***/ "js-logger":
|
|
35983
|
-
/*!****************************!*\
|
|
35984
|
-
!*** external "js-logger" ***!
|
|
35985
|
-
\****************************/
|
|
35986
|
-
/***/ ((module) => {
|
|
35987
|
-
|
|
35988
|
-
"use strict";
|
|
35989
|
-
module.exports = __WEBPACK_EXTERNAL_MODULE_js_logger__;
|
|
35990
|
-
|
|
35991
|
-
/***/ }),
|
|
35992
|
-
|
|
35993
36030
|
/***/ "?2e65":
|
|
35994
36031
|
/*!************************!*\
|
|
35995
36032
|
!*** buffer (ignored) ***!
|
|
@@ -40496,2639 +40533,6 @@ exports.setInternalBufferSize = setInternalBufferSize;
|
|
|
40496
40533
|
//# sourceMappingURL=bson.cjs.map
|
|
40497
40534
|
|
|
40498
40535
|
|
|
40499
|
-
/***/ }),
|
|
40500
|
-
|
|
40501
|
-
/***/ "./node_modules/@journeyapps/wa-sqlite/src/FacadeVFS.js":
|
|
40502
|
-
/*!**************************************************************!*\
|
|
40503
|
-
!*** ./node_modules/@journeyapps/wa-sqlite/src/FacadeVFS.js ***!
|
|
40504
|
-
\**************************************************************/
|
|
40505
|
-
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
40506
|
-
|
|
40507
|
-
"use strict";
|
|
40508
|
-
__webpack_require__.r(__webpack_exports__);
|
|
40509
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
40510
|
-
/* harmony export */ FacadeVFS: () => (/* binding */ FacadeVFS)
|
|
40511
|
-
/* harmony export */ });
|
|
40512
|
-
/* harmony import */ var _VFS_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./VFS.js */ "./node_modules/@journeyapps/wa-sqlite/src/VFS.js");
|
|
40513
|
-
// Copyright 2024 Roy T. Hashimoto. All Rights Reserved.
|
|
40514
|
-
|
|
40515
|
-
|
|
40516
|
-
const AsyncFunction = Object.getPrototypeOf(async function(){}).constructor;
|
|
40517
|
-
|
|
40518
|
-
// Milliseconds since Julian epoch as a BigInt.
|
|
40519
|
-
// https://github.com/sqlite/sqlite/blob/e57527c14f7b7cfa6e32eeab5c549d50c4fa3674/src/os_unix.c#L6872-L6882
|
|
40520
|
-
const UNIX_EPOCH = 24405875n * 8640000n;
|
|
40521
|
-
|
|
40522
|
-
// Convenience base class for a JavaScript VFS.
|
|
40523
|
-
// The raw xOpen, xRead, etc. function signatures receive only C primitives
|
|
40524
|
-
// which aren't easy to work with. This class provides corresponding calls
|
|
40525
|
-
// like jOpen, jRead, etc., which receive JavaScript-friendlier arguments
|
|
40526
|
-
// such as string, Uint8Array, and DataView.
|
|
40527
|
-
class FacadeVFS extends _VFS_js__WEBPACK_IMPORTED_MODULE_0__.Base {
|
|
40528
|
-
/**
|
|
40529
|
-
* @param {string} name
|
|
40530
|
-
* @param {object} module
|
|
40531
|
-
*/
|
|
40532
|
-
constructor(name, module) {
|
|
40533
|
-
super(name, module);
|
|
40534
|
-
}
|
|
40535
|
-
|
|
40536
|
-
/**
|
|
40537
|
-
* Override to indicate which methods are asynchronous.
|
|
40538
|
-
* @param {string} methodName
|
|
40539
|
-
* @returns {boolean}
|
|
40540
|
-
*/
|
|
40541
|
-
hasAsyncMethod(methodName) {
|
|
40542
|
-
// The input argument is a string like "xOpen", so convert to "jOpen".
|
|
40543
|
-
// Then check if the method exists and is async.
|
|
40544
|
-
const jMethodName = `j${methodName.slice(1)}`;
|
|
40545
|
-
return this[jMethodName] instanceof AsyncFunction;
|
|
40546
|
-
}
|
|
40547
|
-
|
|
40548
|
-
/**
|
|
40549
|
-
* Return the filename for a file id for use by mixins.
|
|
40550
|
-
* @param {number} pFile
|
|
40551
|
-
* @returns {string}
|
|
40552
|
-
*/
|
|
40553
|
-
getFilename(pFile) {
|
|
40554
|
-
throw new Error('unimplemented');
|
|
40555
|
-
}
|
|
40556
|
-
|
|
40557
|
-
/**
|
|
40558
|
-
* @param {string?} filename
|
|
40559
|
-
* @param {number} pFile
|
|
40560
|
-
* @param {number} flags
|
|
40561
|
-
* @param {DataView} pOutFlags
|
|
40562
|
-
* @returns {number|Promise<number>}
|
|
40563
|
-
*/
|
|
40564
|
-
jOpen(filename, pFile, flags, pOutFlags) {
|
|
40565
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CANTOPEN;
|
|
40566
|
-
}
|
|
40567
|
-
|
|
40568
|
-
/**
|
|
40569
|
-
* @param {string} filename
|
|
40570
|
-
* @param {number} syncDir
|
|
40571
|
-
* @returns {number|Promise<number>}
|
|
40572
|
-
*/
|
|
40573
|
-
jDelete(filename, syncDir) {
|
|
40574
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40575
|
-
}
|
|
40576
|
-
|
|
40577
|
-
/**
|
|
40578
|
-
* @param {string} filename
|
|
40579
|
-
* @param {number} flags
|
|
40580
|
-
* @param {DataView} pResOut
|
|
40581
|
-
* @returns {number|Promise<number>}
|
|
40582
|
-
*/
|
|
40583
|
-
jAccess(filename, flags, pResOut) {
|
|
40584
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40585
|
-
}
|
|
40586
|
-
|
|
40587
|
-
/**
|
|
40588
|
-
* @param {string} filename
|
|
40589
|
-
* @param {Uint8Array} zOut
|
|
40590
|
-
* @returns {number|Promise<number>}
|
|
40591
|
-
*/
|
|
40592
|
-
jFullPathname(filename, zOut) {
|
|
40593
|
-
// Copy the filename to the output buffer.
|
|
40594
|
-
const { read, written } = new TextEncoder().encodeInto(filename, zOut);
|
|
40595
|
-
if (read < filename.length) return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR;
|
|
40596
|
-
if (written >= zOut.length) return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR;
|
|
40597
|
-
zOut[written] = 0;
|
|
40598
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40599
|
-
}
|
|
40600
|
-
|
|
40601
|
-
/**
|
|
40602
|
-
* @param {Uint8Array} zBuf
|
|
40603
|
-
* @returns {number|Promise<number>}
|
|
40604
|
-
*/
|
|
40605
|
-
jGetLastError(zBuf) {
|
|
40606
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40607
|
-
}
|
|
40608
|
-
|
|
40609
|
-
/**
|
|
40610
|
-
* @param {number} pFile
|
|
40611
|
-
* @returns {number|Promise<number>}
|
|
40612
|
-
*/
|
|
40613
|
-
jClose(pFile) {
|
|
40614
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40615
|
-
}
|
|
40616
|
-
|
|
40617
|
-
/**
|
|
40618
|
-
* @param {number} pFile
|
|
40619
|
-
* @param {Uint8Array} pData
|
|
40620
|
-
* @param {number} iOffset
|
|
40621
|
-
* @returns {number|Promise<number>}
|
|
40622
|
-
*/
|
|
40623
|
-
jRead(pFile, pData, iOffset) {
|
|
40624
|
-
pData.fill(0);
|
|
40625
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_SHORT_READ;
|
|
40626
|
-
}
|
|
40627
|
-
|
|
40628
|
-
/**
|
|
40629
|
-
* @param {number} pFile
|
|
40630
|
-
* @param {Uint8Array} pData
|
|
40631
|
-
* @param {number} iOffset
|
|
40632
|
-
* @returns {number|Promise<number>}
|
|
40633
|
-
*/
|
|
40634
|
-
jWrite(pFile, pData, iOffset) {
|
|
40635
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_WRITE;
|
|
40636
|
-
}
|
|
40637
|
-
|
|
40638
|
-
/**
|
|
40639
|
-
* @param {number} pFile
|
|
40640
|
-
* @param {number} size
|
|
40641
|
-
* @returns {number|Promise<number>}
|
|
40642
|
-
*/
|
|
40643
|
-
jTruncate(pFile, size) {
|
|
40644
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40645
|
-
}
|
|
40646
|
-
|
|
40647
|
-
/**
|
|
40648
|
-
* @param {number} pFile
|
|
40649
|
-
* @param {number} flags
|
|
40650
|
-
* @returns {number|Promise<number>}
|
|
40651
|
-
*/
|
|
40652
|
-
jSync(pFile, flags) {
|
|
40653
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40654
|
-
}
|
|
40655
|
-
|
|
40656
|
-
/**
|
|
40657
|
-
* @param {number} pFile
|
|
40658
|
-
* @param {DataView} pSize
|
|
40659
|
-
* @returns {number|Promise<number>}
|
|
40660
|
-
*/
|
|
40661
|
-
jFileSize(pFile, pSize) {
|
|
40662
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40663
|
-
}
|
|
40664
|
-
|
|
40665
|
-
/**
|
|
40666
|
-
* @param {number} pFile
|
|
40667
|
-
* @param {number} lockType
|
|
40668
|
-
* @returns {number|Promise<number>}
|
|
40669
|
-
*/
|
|
40670
|
-
jLock(pFile, lockType) {
|
|
40671
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40672
|
-
}
|
|
40673
|
-
|
|
40674
|
-
/**
|
|
40675
|
-
* @param {number} pFile
|
|
40676
|
-
* @param {number} lockType
|
|
40677
|
-
* @returns {number|Promise<number>}
|
|
40678
|
-
*/
|
|
40679
|
-
jUnlock(pFile, lockType) {
|
|
40680
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40681
|
-
}
|
|
40682
|
-
|
|
40683
|
-
/**
|
|
40684
|
-
* @param {number} pFile
|
|
40685
|
-
* @param {DataView} pResOut
|
|
40686
|
-
* @returns {number|Promise<number>}
|
|
40687
|
-
*/
|
|
40688
|
-
jCheckReservedLock(pFile, pResOut) {
|
|
40689
|
-
pResOut.setInt32(0, 0, true);
|
|
40690
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40691
|
-
}
|
|
40692
|
-
|
|
40693
|
-
/**
|
|
40694
|
-
* @param {number} pFile
|
|
40695
|
-
* @param {number} op
|
|
40696
|
-
* @param {DataView} pArg
|
|
40697
|
-
* @returns {number|Promise<number>}
|
|
40698
|
-
*/
|
|
40699
|
-
jFileControl(pFile, op, pArg) {
|
|
40700
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_NOTFOUND;
|
|
40701
|
-
}
|
|
40702
|
-
|
|
40703
|
-
/**
|
|
40704
|
-
* @param {number} pFile
|
|
40705
|
-
* @returns {number|Promise<number>}
|
|
40706
|
-
*/
|
|
40707
|
-
jSectorSize(pFile) {
|
|
40708
|
-
return super.xSectorSize(pFile);
|
|
40709
|
-
}
|
|
40710
|
-
|
|
40711
|
-
/**
|
|
40712
|
-
* @param {number} pFile
|
|
40713
|
-
* @returns {number|Promise<number>}
|
|
40714
|
-
*/
|
|
40715
|
-
jDeviceCharacteristics(pFile) {
|
|
40716
|
-
return 0;
|
|
40717
|
-
}
|
|
40718
|
-
|
|
40719
|
-
/**
|
|
40720
|
-
* @param {number} pVfs
|
|
40721
|
-
* @param {number} zName
|
|
40722
|
-
* @param {number} pFile
|
|
40723
|
-
* @param {number} flags
|
|
40724
|
-
* @param {number} pOutFlags
|
|
40725
|
-
* @returns {number|Promise<number>}
|
|
40726
|
-
*/
|
|
40727
|
-
xOpen(pVfs, zName, pFile, flags, pOutFlags) {
|
|
40728
|
-
const filename = this.#decodeFilename(zName, flags);
|
|
40729
|
-
const pOutFlagsView = this.#makeTypedDataView('Int32', pOutFlags);
|
|
40730
|
-
this['log']?.('jOpen', filename, pFile, '0x' + flags.toString(16));
|
|
40731
|
-
return this.jOpen(filename, pFile, flags, pOutFlagsView);
|
|
40732
|
-
}
|
|
40733
|
-
|
|
40734
|
-
/**
|
|
40735
|
-
* @param {number} pVfs
|
|
40736
|
-
* @param {number} nByte
|
|
40737
|
-
* @param {number} pCharOut
|
|
40738
|
-
* @returns {number|Promise<number>}
|
|
40739
|
-
*/
|
|
40740
|
-
xRandomness(pVfs, nByte, pCharOut) {
|
|
40741
|
-
const randomArray = new Uint8Array(nByte);
|
|
40742
|
-
crypto.getRandomValues(randomArray);
|
|
40743
|
-
// Copy randomArray to the WebAssembly memory
|
|
40744
|
-
const buffer = pCharOut; // Pointer to memory in WebAssembly
|
|
40745
|
-
this._module.HEAPU8.set(randomArray, buffer); // Copy randomArray into memory starting at buffer
|
|
40746
|
-
return nByte;
|
|
40747
|
-
}
|
|
40748
|
-
|
|
40749
|
-
/**
|
|
40750
|
-
* Gets the current time as milliseconds since Unix epoch
|
|
40751
|
-
* @param {number} pVfs pointer to the VFS
|
|
40752
|
-
* @param {number} pTime pointer to write the time value
|
|
40753
|
-
* @returns {number} SQLite error code
|
|
40754
|
-
*/
|
|
40755
|
-
xCurrentTimeInt64(pVfs, pTime) {
|
|
40756
|
-
// Create a DataView to write the current time
|
|
40757
|
-
const timeView = this.#makeTypedDataView('BigInt64', pTime);
|
|
40758
|
-
|
|
40759
|
-
const currentTime = BigInt(Date.now());
|
|
40760
|
-
// Convert the current time to milliseconds since Unix epoch
|
|
40761
|
-
const value = UNIX_EPOCH + currentTime;
|
|
40762
|
-
|
|
40763
|
-
// Write the time value to the pointer location
|
|
40764
|
-
timeView.setBigInt64(0, value, true);
|
|
40765
|
-
|
|
40766
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
40767
|
-
}
|
|
40768
|
-
|
|
40769
|
-
/**
|
|
40770
|
-
* @param {number} pVfs
|
|
40771
|
-
* @param {number} zName
|
|
40772
|
-
* @param {number} syncDir
|
|
40773
|
-
* @returns {number|Promise<number>}
|
|
40774
|
-
*/
|
|
40775
|
-
xDelete(pVfs, zName, syncDir) {
|
|
40776
|
-
const filename = this._module.UTF8ToString(zName);
|
|
40777
|
-
this['log']?.('jDelete', filename, syncDir);
|
|
40778
|
-
return this.jDelete(filename, syncDir);
|
|
40779
|
-
}
|
|
40780
|
-
|
|
40781
|
-
/**
|
|
40782
|
-
* @param {number} pVfs
|
|
40783
|
-
* @param {number} zName
|
|
40784
|
-
* @param {number} flags
|
|
40785
|
-
* @param {number} pResOut
|
|
40786
|
-
* @returns {number|Promise<number>}
|
|
40787
|
-
*/
|
|
40788
|
-
xAccess(pVfs, zName, flags, pResOut) {
|
|
40789
|
-
const filename = this._module.UTF8ToString(zName);
|
|
40790
|
-
const pResOutView = this.#makeTypedDataView('Int32', pResOut);
|
|
40791
|
-
this['log']?.('jAccess', filename, flags);
|
|
40792
|
-
return this.jAccess(filename, flags, pResOutView);
|
|
40793
|
-
}
|
|
40794
|
-
|
|
40795
|
-
/**
|
|
40796
|
-
* @param {number} pVfs
|
|
40797
|
-
* @param {number} zName
|
|
40798
|
-
* @param {number} nOut
|
|
40799
|
-
* @param {number} zOut
|
|
40800
|
-
* @returns {number|Promise<number>}
|
|
40801
|
-
*/
|
|
40802
|
-
xFullPathname(pVfs, zName, nOut, zOut) {
|
|
40803
|
-
const filename = this._module.UTF8ToString(zName);
|
|
40804
|
-
const zOutArray = this._module.HEAPU8.subarray(zOut, zOut + nOut);
|
|
40805
|
-
this['log']?.('jFullPathname', filename, nOut);
|
|
40806
|
-
return this.jFullPathname(filename, zOutArray);
|
|
40807
|
-
}
|
|
40808
|
-
|
|
40809
|
-
/**
|
|
40810
|
-
* @param {number} pVfs
|
|
40811
|
-
* @param {number} nBuf
|
|
40812
|
-
* @param {number} zBuf
|
|
40813
|
-
* @returns {number|Promise<number>}
|
|
40814
|
-
*/
|
|
40815
|
-
xGetLastError(pVfs, nBuf, zBuf) {
|
|
40816
|
-
const zBufArray = this._module.HEAPU8.subarray(zBuf, zBuf + nBuf);
|
|
40817
|
-
this['log']?.('jGetLastError', nBuf);
|
|
40818
|
-
return this.jGetLastError(zBufArray);
|
|
40819
|
-
}
|
|
40820
|
-
|
|
40821
|
-
/**
|
|
40822
|
-
* @param {number} pFile
|
|
40823
|
-
* @returns {number|Promise<number>}
|
|
40824
|
-
*/
|
|
40825
|
-
xClose(pFile) {
|
|
40826
|
-
this['log']?.('jClose', pFile);
|
|
40827
|
-
return this.jClose(pFile);
|
|
40828
|
-
}
|
|
40829
|
-
|
|
40830
|
-
/**
|
|
40831
|
-
* @param {number} pFile
|
|
40832
|
-
* @param {number} pData
|
|
40833
|
-
* @param {number} iAmt
|
|
40834
|
-
* @param {number} iOffsetLo
|
|
40835
|
-
* @param {number} iOffsetHi
|
|
40836
|
-
* @returns {number|Promise<number>}
|
|
40837
|
-
*/
|
|
40838
|
-
xRead(pFile, pData, iAmt, iOffsetLo, iOffsetHi) {
|
|
40839
|
-
const pDataArray = this.#makeDataArray(pData, iAmt);
|
|
40840
|
-
const iOffset = delegalize(iOffsetLo, iOffsetHi);
|
|
40841
|
-
this['log']?.('jRead', pFile, iAmt, iOffset);
|
|
40842
|
-
return this.jRead(pFile, pDataArray, iOffset);
|
|
40843
|
-
}
|
|
40844
|
-
|
|
40845
|
-
/**
|
|
40846
|
-
* @param {number} pFile
|
|
40847
|
-
* @param {number} pData
|
|
40848
|
-
* @param {number} iAmt
|
|
40849
|
-
* @param {number} iOffsetLo
|
|
40850
|
-
* @param {number} iOffsetHi
|
|
40851
|
-
* @returns {number|Promise<number>}
|
|
40852
|
-
*/
|
|
40853
|
-
xWrite(pFile, pData, iAmt, iOffsetLo, iOffsetHi) {
|
|
40854
|
-
const pDataArray = this.#makeDataArray(pData, iAmt);
|
|
40855
|
-
const iOffset = delegalize(iOffsetLo, iOffsetHi);
|
|
40856
|
-
this['log']?.('jWrite', pFile, pDataArray, iOffset);
|
|
40857
|
-
return this.jWrite(pFile, pDataArray, iOffset);
|
|
40858
|
-
}
|
|
40859
|
-
|
|
40860
|
-
/**
|
|
40861
|
-
* @param {number} pFile
|
|
40862
|
-
* @param {number} sizeLo
|
|
40863
|
-
* @param {number} sizeHi
|
|
40864
|
-
* @returns {number|Promise<number>}
|
|
40865
|
-
*/
|
|
40866
|
-
xTruncate(pFile, sizeLo, sizeHi) {
|
|
40867
|
-
const size = delegalize(sizeLo, sizeHi);
|
|
40868
|
-
this['log']?.('jTruncate', pFile, size);
|
|
40869
|
-
return this.jTruncate(pFile, size);
|
|
40870
|
-
}
|
|
40871
|
-
|
|
40872
|
-
/**
|
|
40873
|
-
* @param {number} pFile
|
|
40874
|
-
* @param {number} flags
|
|
40875
|
-
* @returns {number|Promise<number>}
|
|
40876
|
-
*/
|
|
40877
|
-
xSync(pFile, flags) {
|
|
40878
|
-
this['log']?.('jSync', pFile, flags);
|
|
40879
|
-
return this.jSync(pFile, flags);
|
|
40880
|
-
}
|
|
40881
|
-
|
|
40882
|
-
/**
|
|
40883
|
-
*
|
|
40884
|
-
* @param {number} pFile
|
|
40885
|
-
* @param {number} pSize
|
|
40886
|
-
* @returns {number|Promise<number>}
|
|
40887
|
-
*/
|
|
40888
|
-
xFileSize(pFile, pSize) {
|
|
40889
|
-
const pSizeView = this.#makeTypedDataView('BigInt64', pSize);
|
|
40890
|
-
this['log']?.('jFileSize', pFile);
|
|
40891
|
-
return this.jFileSize(pFile, pSizeView);
|
|
40892
|
-
}
|
|
40893
|
-
|
|
40894
|
-
/**
|
|
40895
|
-
* @param {number} pFile
|
|
40896
|
-
* @param {number} lockType
|
|
40897
|
-
* @returns {number|Promise<number>}
|
|
40898
|
-
*/
|
|
40899
|
-
xLock(pFile, lockType) {
|
|
40900
|
-
this['log']?.('jLock', pFile, lockType);
|
|
40901
|
-
return this.jLock(pFile, lockType);
|
|
40902
|
-
}
|
|
40903
|
-
|
|
40904
|
-
/**
|
|
40905
|
-
* @param {number} pFile
|
|
40906
|
-
* @param {number} lockType
|
|
40907
|
-
* @returns {number|Promise<number>}
|
|
40908
|
-
*/
|
|
40909
|
-
xUnlock(pFile, lockType) {
|
|
40910
|
-
this['log']?.('jUnlock', pFile, lockType);
|
|
40911
|
-
return this.jUnlock(pFile, lockType);
|
|
40912
|
-
}
|
|
40913
|
-
|
|
40914
|
-
/**
|
|
40915
|
-
* @param {number} pFile
|
|
40916
|
-
* @param {number} pResOut
|
|
40917
|
-
* @returns {number|Promise<number>}
|
|
40918
|
-
*/
|
|
40919
|
-
xCheckReservedLock(pFile, pResOut) {
|
|
40920
|
-
const pResOutView = this.#makeTypedDataView('Int32', pResOut);
|
|
40921
|
-
this['log']?.('jCheckReservedLock', pFile);
|
|
40922
|
-
return this.jCheckReservedLock(pFile, pResOutView);
|
|
40923
|
-
}
|
|
40924
|
-
|
|
40925
|
-
/**
|
|
40926
|
-
* @param {number} pFile
|
|
40927
|
-
* @param {number} op
|
|
40928
|
-
* @param {number} pArg
|
|
40929
|
-
* @returns {number|Promise<number>}
|
|
40930
|
-
*/
|
|
40931
|
-
xFileControl(pFile, op, pArg) {
|
|
40932
|
-
const pArgView = new DataView(
|
|
40933
|
-
this._module.HEAPU8.buffer,
|
|
40934
|
-
this._module.HEAPU8.byteOffset + pArg);
|
|
40935
|
-
this['log']?.('jFileControl', pFile, op, pArgView);
|
|
40936
|
-
return this.jFileControl(pFile, op, pArgView);
|
|
40937
|
-
}
|
|
40938
|
-
|
|
40939
|
-
/**
|
|
40940
|
-
* @param {number} pFile
|
|
40941
|
-
* @returns {number|Promise<number>}
|
|
40942
|
-
*/
|
|
40943
|
-
xSectorSize(pFile) {
|
|
40944
|
-
this['log']?.('jSectorSize', pFile);
|
|
40945
|
-
return this.jSectorSize(pFile);
|
|
40946
|
-
}
|
|
40947
|
-
|
|
40948
|
-
/**
|
|
40949
|
-
* @param {number} pFile
|
|
40950
|
-
* @returns {number|Promise<number>}
|
|
40951
|
-
*/
|
|
40952
|
-
xDeviceCharacteristics(pFile) {
|
|
40953
|
-
this['log']?.('jDeviceCharacteristics', pFile);
|
|
40954
|
-
return this.jDeviceCharacteristics(pFile);
|
|
40955
|
-
}
|
|
40956
|
-
|
|
40957
|
-
/**
|
|
40958
|
-
* Wrapped DataView for pointer arguments.
|
|
40959
|
-
* Pointers to a single value are passed using DataView. A Proxy
|
|
40960
|
-
* wrapper prevents use of incorrect type or endianness.
|
|
40961
|
-
* @param {'Int32'|'BigInt64'} type
|
|
40962
|
-
* @param {number} byteOffset
|
|
40963
|
-
* @returns {DataView}
|
|
40964
|
-
*/
|
|
40965
|
-
#makeTypedDataView(type, byteOffset) {
|
|
40966
|
-
const byteLength = type === 'Int32' ? 4 : 8;
|
|
40967
|
-
const getter = `get${type}`;
|
|
40968
|
-
const setter = `set${type}`;
|
|
40969
|
-
const makeDataView = () => new DataView(
|
|
40970
|
-
this._module.HEAPU8.buffer,
|
|
40971
|
-
this._module.HEAPU8.byteOffset + byteOffset,
|
|
40972
|
-
byteLength);
|
|
40973
|
-
let dataView = makeDataView();
|
|
40974
|
-
return new Proxy(dataView, {
|
|
40975
|
-
get(_, prop) {
|
|
40976
|
-
if (dataView.buffer.byteLength === 0) {
|
|
40977
|
-
// WebAssembly memory resize detached the buffer.
|
|
40978
|
-
dataView = makeDataView();
|
|
40979
|
-
}
|
|
40980
|
-
if (prop === getter) {
|
|
40981
|
-
return function(byteOffset, littleEndian) {
|
|
40982
|
-
if (!littleEndian) throw new Error('must be little endian');
|
|
40983
|
-
return dataView[prop](byteOffset, littleEndian);
|
|
40984
|
-
}
|
|
40985
|
-
}
|
|
40986
|
-
if (prop === setter) {
|
|
40987
|
-
return function(byteOffset, value, littleEndian) {
|
|
40988
|
-
if (!littleEndian) throw new Error('must be little endian');
|
|
40989
|
-
return dataView[prop](byteOffset, value, littleEndian);
|
|
40990
|
-
}
|
|
40991
|
-
}
|
|
40992
|
-
if (typeof prop === 'string' && (prop.match(/^(get)|(set)/))) {
|
|
40993
|
-
throw new Error('invalid type');
|
|
40994
|
-
}
|
|
40995
|
-
const result = dataView[prop];
|
|
40996
|
-
return typeof result === 'function' ? result.bind(dataView) : result;
|
|
40997
|
-
}
|
|
40998
|
-
});
|
|
40999
|
-
}
|
|
41000
|
-
|
|
41001
|
-
/**
|
|
41002
|
-
* @param {number} byteOffset
|
|
41003
|
-
* @param {number} byteLength
|
|
41004
|
-
*/
|
|
41005
|
-
#makeDataArray(byteOffset, byteLength) {
|
|
41006
|
-
let target = this._module.HEAPU8.subarray(byteOffset, byteOffset + byteLength);
|
|
41007
|
-
return new Proxy(target, {
|
|
41008
|
-
get: (_, prop, receiver) => {
|
|
41009
|
-
if (target.buffer.byteLength === 0) {
|
|
41010
|
-
// WebAssembly memory resize detached the buffer.
|
|
41011
|
-
target = this._module.HEAPU8.subarray(byteOffset, byteOffset + byteLength);
|
|
41012
|
-
}
|
|
41013
|
-
const result = target[prop];
|
|
41014
|
-
return typeof result === 'function' ? result.bind(target) : result;
|
|
41015
|
-
}
|
|
41016
|
-
});
|
|
41017
|
-
}
|
|
41018
|
-
|
|
41019
|
-
#decodeFilename(zName, flags) {
|
|
41020
|
-
if (flags & _VFS_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_URI) {
|
|
41021
|
-
// The first null-terminated string is the URI path. Subsequent
|
|
41022
|
-
// strings are query parameter keys and values.
|
|
41023
|
-
// https://www.sqlite.org/c3ref/open.html#urifilenamesinsqlite3open
|
|
41024
|
-
let pName = zName;
|
|
41025
|
-
let state = 1;
|
|
41026
|
-
const charCodes = [];
|
|
41027
|
-
while (state) {
|
|
41028
|
-
const charCode = this._module.HEAPU8[pName++];
|
|
41029
|
-
if (charCode) {
|
|
41030
|
-
charCodes.push(charCode);
|
|
41031
|
-
} else {
|
|
41032
|
-
if (!this._module.HEAPU8[pName]) state = null;
|
|
41033
|
-
switch (state) {
|
|
41034
|
-
case 1: // path
|
|
41035
|
-
charCodes.push('?'.charCodeAt(0));
|
|
41036
|
-
state = 2;
|
|
41037
|
-
break;
|
|
41038
|
-
case 2: // key
|
|
41039
|
-
charCodes.push('='.charCodeAt(0));
|
|
41040
|
-
state = 3;
|
|
41041
|
-
break;
|
|
41042
|
-
case 3: // value
|
|
41043
|
-
charCodes.push('&'.charCodeAt(0));
|
|
41044
|
-
state = 2;
|
|
41045
|
-
break;
|
|
41046
|
-
}
|
|
41047
|
-
}
|
|
41048
|
-
}
|
|
41049
|
-
return new TextDecoder().decode(new Uint8Array(charCodes));
|
|
41050
|
-
}
|
|
41051
|
-
return zName ? this._module.UTF8ToString(zName) : null;
|
|
41052
|
-
}
|
|
41053
|
-
}
|
|
41054
|
-
|
|
41055
|
-
// Emscripten "legalizes" 64-bit integer arguments by passing them as
|
|
41056
|
-
// two 32-bit signed integers.
|
|
41057
|
-
function delegalize(lo32, hi32) {
|
|
41058
|
-
return (hi32 * 0x100000000) + lo32 + (lo32 < 0 ? 2**32 : 0);
|
|
41059
|
-
}
|
|
41060
|
-
|
|
41061
|
-
|
|
41062
|
-
/***/ }),
|
|
41063
|
-
|
|
41064
|
-
/***/ "./node_modules/@journeyapps/wa-sqlite/src/VFS.js":
|
|
41065
|
-
/*!********************************************************!*\
|
|
41066
|
-
!*** ./node_modules/@journeyapps/wa-sqlite/src/VFS.js ***!
|
|
41067
|
-
\********************************************************/
|
|
41068
|
-
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
41069
|
-
|
|
41070
|
-
"use strict";
|
|
41071
|
-
__webpack_require__.r(__webpack_exports__);
|
|
41072
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
41073
|
-
/* harmony export */ Base: () => (/* binding */ Base),
|
|
41074
|
-
/* harmony export */ FILE_TYPE_MASK: () => (/* binding */ FILE_TYPE_MASK),
|
|
41075
|
-
/* harmony export */ SQLITE_ABORT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_ABORT),
|
|
41076
|
-
/* harmony export */ SQLITE_ACCESS_EXISTS: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_ACCESS_EXISTS),
|
|
41077
|
-
/* harmony export */ SQLITE_ACCESS_READ: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_ACCESS_READ),
|
|
41078
|
-
/* harmony export */ SQLITE_ACCESS_READWRITE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_ACCESS_READWRITE),
|
|
41079
|
-
/* harmony export */ SQLITE_ALTER_TABLE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_ALTER_TABLE),
|
|
41080
|
-
/* harmony export */ SQLITE_ANALYZE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_ANALYZE),
|
|
41081
|
-
/* harmony export */ SQLITE_ATTACH: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_ATTACH),
|
|
41082
|
-
/* harmony export */ SQLITE_AUTH: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_AUTH),
|
|
41083
|
-
/* harmony export */ SQLITE_BLOB: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_BLOB),
|
|
41084
|
-
/* harmony export */ SQLITE_BUSY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_BUSY),
|
|
41085
|
-
/* harmony export */ SQLITE_CANTOPEN: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CANTOPEN),
|
|
41086
|
-
/* harmony export */ SQLITE_CONSTRAINT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT),
|
|
41087
|
-
/* harmony export */ SQLITE_CONSTRAINT_CHECK: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT_CHECK),
|
|
41088
|
-
/* harmony export */ SQLITE_CONSTRAINT_COMMITHOOK: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT_COMMITHOOK),
|
|
41089
|
-
/* harmony export */ SQLITE_CONSTRAINT_FOREIGNKEY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT_FOREIGNKEY),
|
|
41090
|
-
/* harmony export */ SQLITE_CONSTRAINT_FUNCTION: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT_FUNCTION),
|
|
41091
|
-
/* harmony export */ SQLITE_CONSTRAINT_NOTNULL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT_NOTNULL),
|
|
41092
|
-
/* harmony export */ SQLITE_CONSTRAINT_PINNED: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT_PINNED),
|
|
41093
|
-
/* harmony export */ SQLITE_CONSTRAINT_PRIMARYKEY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT_PRIMARYKEY),
|
|
41094
|
-
/* harmony export */ SQLITE_CONSTRAINT_ROWID: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT_ROWID),
|
|
41095
|
-
/* harmony export */ SQLITE_CONSTRAINT_TRIGGER: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT_TRIGGER),
|
|
41096
|
-
/* harmony export */ SQLITE_CONSTRAINT_UNIQUE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT_UNIQUE),
|
|
41097
|
-
/* harmony export */ SQLITE_CONSTRAINT_VTAB: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CONSTRAINT_VTAB),
|
|
41098
|
-
/* harmony export */ SQLITE_COPY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_COPY),
|
|
41099
|
-
/* harmony export */ SQLITE_CORRUPT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CORRUPT),
|
|
41100
|
-
/* harmony export */ SQLITE_CREATE_INDEX: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CREATE_INDEX),
|
|
41101
|
-
/* harmony export */ SQLITE_CREATE_TABLE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CREATE_TABLE),
|
|
41102
|
-
/* harmony export */ SQLITE_CREATE_TEMP_INDEX: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CREATE_TEMP_INDEX),
|
|
41103
|
-
/* harmony export */ SQLITE_CREATE_TEMP_TABLE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CREATE_TEMP_TABLE),
|
|
41104
|
-
/* harmony export */ SQLITE_CREATE_TEMP_TRIGGER: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CREATE_TEMP_TRIGGER),
|
|
41105
|
-
/* harmony export */ SQLITE_CREATE_TEMP_VIEW: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CREATE_TEMP_VIEW),
|
|
41106
|
-
/* harmony export */ SQLITE_CREATE_TRIGGER: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CREATE_TRIGGER),
|
|
41107
|
-
/* harmony export */ SQLITE_CREATE_VIEW: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CREATE_VIEW),
|
|
41108
|
-
/* harmony export */ SQLITE_CREATE_VTABLE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CREATE_VTABLE),
|
|
41109
|
-
/* harmony export */ SQLITE_DELETE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DELETE),
|
|
41110
|
-
/* harmony export */ SQLITE_DENY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DENY),
|
|
41111
|
-
/* harmony export */ SQLITE_DETACH: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DETACH),
|
|
41112
|
-
/* harmony export */ SQLITE_DETERMINISTIC: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DETERMINISTIC),
|
|
41113
|
-
/* harmony export */ SQLITE_DIRECTONLY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DIRECTONLY),
|
|
41114
|
-
/* harmony export */ SQLITE_DONE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DONE),
|
|
41115
|
-
/* harmony export */ SQLITE_DROP_INDEX: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DROP_INDEX),
|
|
41116
|
-
/* harmony export */ SQLITE_DROP_TABLE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DROP_TABLE),
|
|
41117
|
-
/* harmony export */ SQLITE_DROP_TEMP_INDEX: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DROP_TEMP_INDEX),
|
|
41118
|
-
/* harmony export */ SQLITE_DROP_TEMP_TABLE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DROP_TEMP_TABLE),
|
|
41119
|
-
/* harmony export */ SQLITE_DROP_TEMP_TRIGGER: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DROP_TEMP_TRIGGER),
|
|
41120
|
-
/* harmony export */ SQLITE_DROP_TEMP_VIEW: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DROP_TEMP_VIEW),
|
|
41121
|
-
/* harmony export */ SQLITE_DROP_TRIGGER: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DROP_TRIGGER),
|
|
41122
|
-
/* harmony export */ SQLITE_DROP_VIEW: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DROP_VIEW),
|
|
41123
|
-
/* harmony export */ SQLITE_DROP_VTABLE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_DROP_VTABLE),
|
|
41124
|
-
/* harmony export */ SQLITE_EMPTY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_EMPTY),
|
|
41125
|
-
/* harmony export */ SQLITE_ERROR: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_ERROR),
|
|
41126
|
-
/* harmony export */ SQLITE_FCNTL_BEGIN_ATOMIC_WRITE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_BEGIN_ATOMIC_WRITE),
|
|
41127
|
-
/* harmony export */ SQLITE_FCNTL_BUSYHANDLER: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_BUSYHANDLER),
|
|
41128
|
-
/* harmony export */ SQLITE_FCNTL_CHUNK_SIZE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_CHUNK_SIZE),
|
|
41129
|
-
/* harmony export */ SQLITE_FCNTL_CKPT_DONE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_CKPT_DONE),
|
|
41130
|
-
/* harmony export */ SQLITE_FCNTL_CKPT_START: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_CKPT_START),
|
|
41131
|
-
/* harmony export */ SQLITE_FCNTL_COMMIT_ATOMIC_WRITE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_COMMIT_ATOMIC_WRITE),
|
|
41132
|
-
/* harmony export */ SQLITE_FCNTL_COMMIT_PHASETWO: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_COMMIT_PHASETWO),
|
|
41133
|
-
/* harmony export */ SQLITE_FCNTL_DATA_VERSION: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_DATA_VERSION),
|
|
41134
|
-
/* harmony export */ SQLITE_FCNTL_FILE_POINTER: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_FILE_POINTER),
|
|
41135
|
-
/* harmony export */ SQLITE_FCNTL_GET_LOCKPROXYFILE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_GET_LOCKPROXYFILE),
|
|
41136
|
-
/* harmony export */ SQLITE_FCNTL_HAS_MOVED: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_HAS_MOVED),
|
|
41137
|
-
/* harmony export */ SQLITE_FCNTL_JOURNAL_POINTER: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_JOURNAL_POINTER),
|
|
41138
|
-
/* harmony export */ SQLITE_FCNTL_LAST_ERRNO: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_LAST_ERRNO),
|
|
41139
|
-
/* harmony export */ SQLITE_FCNTL_LOCKSTATE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_LOCKSTATE),
|
|
41140
|
-
/* harmony export */ SQLITE_FCNTL_LOCK_TIMEOUT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_LOCK_TIMEOUT),
|
|
41141
|
-
/* harmony export */ SQLITE_FCNTL_MMAP_SIZE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_MMAP_SIZE),
|
|
41142
|
-
/* harmony export */ SQLITE_FCNTL_OVERWRITE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_OVERWRITE),
|
|
41143
|
-
/* harmony export */ SQLITE_FCNTL_PDB: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_PDB),
|
|
41144
|
-
/* harmony export */ SQLITE_FCNTL_PERSIST_WAL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_PERSIST_WAL),
|
|
41145
|
-
/* harmony export */ SQLITE_FCNTL_POWERSAFE_OVERWRITE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_POWERSAFE_OVERWRITE),
|
|
41146
|
-
/* harmony export */ SQLITE_FCNTL_PRAGMA: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_PRAGMA),
|
|
41147
|
-
/* harmony export */ SQLITE_FCNTL_RBU: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_RBU),
|
|
41148
|
-
/* harmony export */ SQLITE_FCNTL_RESERVE_BYTES: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_RESERVE_BYTES),
|
|
41149
|
-
/* harmony export */ SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE),
|
|
41150
|
-
/* harmony export */ SQLITE_FCNTL_SET_LOCKPROXYFILE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_SET_LOCKPROXYFILE),
|
|
41151
|
-
/* harmony export */ SQLITE_FCNTL_SIZE_HINT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_SIZE_HINT),
|
|
41152
|
-
/* harmony export */ SQLITE_FCNTL_SIZE_LIMIT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_SIZE_LIMIT),
|
|
41153
|
-
/* harmony export */ SQLITE_FCNTL_SYNC: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_SYNC),
|
|
41154
|
-
/* harmony export */ SQLITE_FCNTL_SYNC_OMITTED: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_SYNC_OMITTED),
|
|
41155
|
-
/* harmony export */ SQLITE_FCNTL_TEMPFILENAME: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_TEMPFILENAME),
|
|
41156
|
-
/* harmony export */ SQLITE_FCNTL_TRACE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_TRACE),
|
|
41157
|
-
/* harmony export */ SQLITE_FCNTL_VFSNAME: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_VFSNAME),
|
|
41158
|
-
/* harmony export */ SQLITE_FCNTL_VFS_POINTER: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_VFS_POINTER),
|
|
41159
|
-
/* harmony export */ SQLITE_FCNTL_WAL_BLOCK: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_WAL_BLOCK),
|
|
41160
|
-
/* harmony export */ SQLITE_FCNTL_WIN32_AV_RETRY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_WIN32_AV_RETRY),
|
|
41161
|
-
/* harmony export */ SQLITE_FCNTL_WIN32_GET_HANDLE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_WIN32_GET_HANDLE),
|
|
41162
|
-
/* harmony export */ SQLITE_FCNTL_WIN32_SET_HANDLE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_WIN32_SET_HANDLE),
|
|
41163
|
-
/* harmony export */ SQLITE_FCNTL_ZIPVFS: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FCNTL_ZIPVFS),
|
|
41164
|
-
/* harmony export */ SQLITE_FLOAT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FLOAT),
|
|
41165
|
-
/* harmony export */ SQLITE_FORMAT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FORMAT),
|
|
41166
|
-
/* harmony export */ SQLITE_FULL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FULL),
|
|
41167
|
-
/* harmony export */ SQLITE_FUNCTION: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_FUNCTION),
|
|
41168
|
-
/* harmony export */ SQLITE_IGNORE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IGNORE),
|
|
41169
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_EQ: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_EQ),
|
|
41170
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_FUNCTION: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_FUNCTION),
|
|
41171
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_GE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_GE),
|
|
41172
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_GLOB: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_GLOB),
|
|
41173
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_GT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_GT),
|
|
41174
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_IS: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_IS),
|
|
41175
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_ISNOT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_ISNOT),
|
|
41176
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_ISNOTNULL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_ISNOTNULL),
|
|
41177
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_ISNULL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_ISNULL),
|
|
41178
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_LE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_LE),
|
|
41179
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_LIKE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_LIKE),
|
|
41180
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_LT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_LT),
|
|
41181
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_MATCH: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_MATCH),
|
|
41182
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_NE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_NE),
|
|
41183
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_REGEXP: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_CONSTRAINT_REGEXP),
|
|
41184
|
-
/* harmony export */ SQLITE_INDEX_SCAN_UNIQUE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INDEX_SCAN_UNIQUE),
|
|
41185
|
-
/* harmony export */ SQLITE_INNOCUOUS: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INNOCUOUS),
|
|
41186
|
-
/* harmony export */ SQLITE_INSERT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INSERT),
|
|
41187
|
-
/* harmony export */ SQLITE_INTEGER: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INTEGER),
|
|
41188
|
-
/* harmony export */ SQLITE_INTERNAL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INTERNAL),
|
|
41189
|
-
/* harmony export */ SQLITE_INTERRUPT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_INTERRUPT),
|
|
41190
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_ATOMIC),
|
|
41191
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC16K: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_ATOMIC16K),
|
|
41192
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC1K: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_ATOMIC1K),
|
|
41193
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC2K: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_ATOMIC2K),
|
|
41194
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC32K: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_ATOMIC32K),
|
|
41195
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC4K: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_ATOMIC4K),
|
|
41196
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC512: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_ATOMIC512),
|
|
41197
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC64K: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_ATOMIC64K),
|
|
41198
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC8K: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_ATOMIC8K),
|
|
41199
|
-
/* harmony export */ SQLITE_IOCAP_BATCH_ATOMIC: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_BATCH_ATOMIC),
|
|
41200
|
-
/* harmony export */ SQLITE_IOCAP_IMMUTABLE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_IMMUTABLE),
|
|
41201
|
-
/* harmony export */ SQLITE_IOCAP_POWERSAFE_OVERWRITE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_POWERSAFE_OVERWRITE),
|
|
41202
|
-
/* harmony export */ SQLITE_IOCAP_SAFE_APPEND: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_SAFE_APPEND),
|
|
41203
|
-
/* harmony export */ SQLITE_IOCAP_SEQUENTIAL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_SEQUENTIAL),
|
|
41204
|
-
/* harmony export */ SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN),
|
|
41205
|
-
/* harmony export */ SQLITE_IOERR: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR),
|
|
41206
|
-
/* harmony export */ SQLITE_IOERR_ACCESS: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_ACCESS),
|
|
41207
|
-
/* harmony export */ SQLITE_IOERR_BEGIN_ATOMIC: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_BEGIN_ATOMIC),
|
|
41208
|
-
/* harmony export */ SQLITE_IOERR_CHECKRESERVEDLOCK: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_CHECKRESERVEDLOCK),
|
|
41209
|
-
/* harmony export */ SQLITE_IOERR_CLOSE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_CLOSE),
|
|
41210
|
-
/* harmony export */ SQLITE_IOERR_COMMIT_ATOMIC: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_COMMIT_ATOMIC),
|
|
41211
|
-
/* harmony export */ SQLITE_IOERR_DATA: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_DATA),
|
|
41212
|
-
/* harmony export */ SQLITE_IOERR_DELETE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_DELETE),
|
|
41213
|
-
/* harmony export */ SQLITE_IOERR_DELETE_NOENT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_DELETE_NOENT),
|
|
41214
|
-
/* harmony export */ SQLITE_IOERR_DIR_FSYNC: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_DIR_FSYNC),
|
|
41215
|
-
/* harmony export */ SQLITE_IOERR_FSTAT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_FSTAT),
|
|
41216
|
-
/* harmony export */ SQLITE_IOERR_FSYNC: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_FSYNC),
|
|
41217
|
-
/* harmony export */ SQLITE_IOERR_GETTEMPPATH: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_GETTEMPPATH),
|
|
41218
|
-
/* harmony export */ SQLITE_IOERR_LOCK: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_LOCK),
|
|
41219
|
-
/* harmony export */ SQLITE_IOERR_NOMEM: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_NOMEM),
|
|
41220
|
-
/* harmony export */ SQLITE_IOERR_RDLOCK: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_RDLOCK),
|
|
41221
|
-
/* harmony export */ SQLITE_IOERR_READ: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_READ),
|
|
41222
|
-
/* harmony export */ SQLITE_IOERR_ROLLBACK_ATOMIC: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_ROLLBACK_ATOMIC),
|
|
41223
|
-
/* harmony export */ SQLITE_IOERR_SEEK: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_SEEK),
|
|
41224
|
-
/* harmony export */ SQLITE_IOERR_SHORT_READ: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_SHORT_READ),
|
|
41225
|
-
/* harmony export */ SQLITE_IOERR_TRUNCATE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_TRUNCATE),
|
|
41226
|
-
/* harmony export */ SQLITE_IOERR_UNLOCK: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_UNLOCK),
|
|
41227
|
-
/* harmony export */ SQLITE_IOERR_VNODE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_VNODE),
|
|
41228
|
-
/* harmony export */ SQLITE_IOERR_WRITE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_IOERR_WRITE),
|
|
41229
|
-
/* harmony export */ SQLITE_LIMIT_ATTACHED: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_ATTACHED),
|
|
41230
|
-
/* harmony export */ SQLITE_LIMIT_COLUMN: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_COLUMN),
|
|
41231
|
-
/* harmony export */ SQLITE_LIMIT_COMPOUND_SELECT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_COMPOUND_SELECT),
|
|
41232
|
-
/* harmony export */ SQLITE_LIMIT_EXPR_DEPTH: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_EXPR_DEPTH),
|
|
41233
|
-
/* harmony export */ SQLITE_LIMIT_FUNCTION_ARG: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_FUNCTION_ARG),
|
|
41234
|
-
/* harmony export */ SQLITE_LIMIT_LENGTH: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_LENGTH),
|
|
41235
|
-
/* harmony export */ SQLITE_LIMIT_LIKE_PATTERN_LENGTH: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_LIKE_PATTERN_LENGTH),
|
|
41236
|
-
/* harmony export */ SQLITE_LIMIT_SQL_LENGTH: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_SQL_LENGTH),
|
|
41237
|
-
/* harmony export */ SQLITE_LIMIT_TRIGGER_DEPTH: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_TRIGGER_DEPTH),
|
|
41238
|
-
/* harmony export */ SQLITE_LIMIT_VARIABLE_NUMBER: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_VARIABLE_NUMBER),
|
|
41239
|
-
/* harmony export */ SQLITE_LIMIT_VDBE_OP: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_VDBE_OP),
|
|
41240
|
-
/* harmony export */ SQLITE_LIMIT_WORKER_THREADS: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LIMIT_WORKER_THREADS),
|
|
41241
|
-
/* harmony export */ SQLITE_LOCKED: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LOCKED),
|
|
41242
|
-
/* harmony export */ SQLITE_LOCK_EXCLUSIVE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LOCK_EXCLUSIVE),
|
|
41243
|
-
/* harmony export */ SQLITE_LOCK_NONE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LOCK_NONE),
|
|
41244
|
-
/* harmony export */ SQLITE_LOCK_PENDING: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LOCK_PENDING),
|
|
41245
|
-
/* harmony export */ SQLITE_LOCK_RESERVED: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LOCK_RESERVED),
|
|
41246
|
-
/* harmony export */ SQLITE_LOCK_SHARED: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_LOCK_SHARED),
|
|
41247
|
-
/* harmony export */ SQLITE_MISMATCH: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_MISMATCH),
|
|
41248
|
-
/* harmony export */ SQLITE_MISUSE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_MISUSE),
|
|
41249
|
-
/* harmony export */ SQLITE_NOLFS: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_NOLFS),
|
|
41250
|
-
/* harmony export */ SQLITE_NOMEM: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_NOMEM),
|
|
41251
|
-
/* harmony export */ SQLITE_NOTADB: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_NOTADB),
|
|
41252
|
-
/* harmony export */ SQLITE_NOTFOUND: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_NOTFOUND),
|
|
41253
|
-
/* harmony export */ SQLITE_NOTICE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_NOTICE),
|
|
41254
|
-
/* harmony export */ SQLITE_NULL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_NULL),
|
|
41255
|
-
/* harmony export */ SQLITE_OK: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK),
|
|
41256
|
-
/* harmony export */ SQLITE_OPEN_AUTOPROXY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_AUTOPROXY),
|
|
41257
|
-
/* harmony export */ SQLITE_OPEN_CREATE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_CREATE),
|
|
41258
|
-
/* harmony export */ SQLITE_OPEN_DELETEONCLOSE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_DELETEONCLOSE),
|
|
41259
|
-
/* harmony export */ SQLITE_OPEN_EXCLUSIVE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_EXCLUSIVE),
|
|
41260
|
-
/* harmony export */ SQLITE_OPEN_FULLMUTEX: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_FULLMUTEX),
|
|
41261
|
-
/* harmony export */ SQLITE_OPEN_MAIN_DB: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_MAIN_DB),
|
|
41262
|
-
/* harmony export */ SQLITE_OPEN_MAIN_JOURNAL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_MAIN_JOURNAL),
|
|
41263
|
-
/* harmony export */ SQLITE_OPEN_MEMORY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_MEMORY),
|
|
41264
|
-
/* harmony export */ SQLITE_OPEN_NOFOLLOW: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_NOFOLLOW),
|
|
41265
|
-
/* harmony export */ SQLITE_OPEN_NOMUTEX: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_NOMUTEX),
|
|
41266
|
-
/* harmony export */ SQLITE_OPEN_PRIVATECACHE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_PRIVATECACHE),
|
|
41267
|
-
/* harmony export */ SQLITE_OPEN_READONLY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_READONLY),
|
|
41268
|
-
/* harmony export */ SQLITE_OPEN_READWRITE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_READWRITE),
|
|
41269
|
-
/* harmony export */ SQLITE_OPEN_SHAREDCACHE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_SHAREDCACHE),
|
|
41270
|
-
/* harmony export */ SQLITE_OPEN_SUBJOURNAL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_SUBJOURNAL),
|
|
41271
|
-
/* harmony export */ SQLITE_OPEN_SUPER_JOURNAL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_SUPER_JOURNAL),
|
|
41272
|
-
/* harmony export */ SQLITE_OPEN_TEMP_DB: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_TEMP_DB),
|
|
41273
|
-
/* harmony export */ SQLITE_OPEN_TEMP_JOURNAL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_TEMP_JOURNAL),
|
|
41274
|
-
/* harmony export */ SQLITE_OPEN_TRANSIENT_DB: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_TRANSIENT_DB),
|
|
41275
|
-
/* harmony export */ SQLITE_OPEN_URI: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_URI),
|
|
41276
|
-
/* harmony export */ SQLITE_OPEN_WAL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_WAL),
|
|
41277
|
-
/* harmony export */ SQLITE_PERM: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_PERM),
|
|
41278
|
-
/* harmony export */ SQLITE_PRAGMA: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_PRAGMA),
|
|
41279
|
-
/* harmony export */ SQLITE_PREPARE_NORMALIZED: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_PREPARE_NORMALIZED),
|
|
41280
|
-
/* harmony export */ SQLITE_PREPARE_NO_VTAB: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_PREPARE_NO_VTAB),
|
|
41281
|
-
/* harmony export */ SQLITE_PREPARE_PERSISTENT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_PREPARE_PERSISTENT),
|
|
41282
|
-
/* harmony export */ SQLITE_PROTOCOL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_PROTOCOL),
|
|
41283
|
-
/* harmony export */ SQLITE_RANGE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_RANGE),
|
|
41284
|
-
/* harmony export */ SQLITE_READ: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_READ),
|
|
41285
|
-
/* harmony export */ SQLITE_READONLY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_READONLY),
|
|
41286
|
-
/* harmony export */ SQLITE_RECURSIVE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_RECURSIVE),
|
|
41287
|
-
/* harmony export */ SQLITE_REINDEX: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_REINDEX),
|
|
41288
|
-
/* harmony export */ SQLITE_ROW: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_ROW),
|
|
41289
|
-
/* harmony export */ SQLITE_SAVEPOINT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_SAVEPOINT),
|
|
41290
|
-
/* harmony export */ SQLITE_SCHEMA: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_SCHEMA),
|
|
41291
|
-
/* harmony export */ SQLITE_SELECT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_SELECT),
|
|
41292
|
-
/* harmony export */ SQLITE_STATIC: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_STATIC),
|
|
41293
|
-
/* harmony export */ SQLITE_SUBTYPE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_SUBTYPE),
|
|
41294
|
-
/* harmony export */ SQLITE_SYNC_DATAONLY: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_SYNC_DATAONLY),
|
|
41295
|
-
/* harmony export */ SQLITE_SYNC_FULL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_SYNC_FULL),
|
|
41296
|
-
/* harmony export */ SQLITE_SYNC_NORMAL: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_SYNC_NORMAL),
|
|
41297
|
-
/* harmony export */ SQLITE_TEXT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_TEXT),
|
|
41298
|
-
/* harmony export */ SQLITE_TOOBIG: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_TOOBIG),
|
|
41299
|
-
/* harmony export */ SQLITE_TRANSACTION: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_TRANSACTION),
|
|
41300
|
-
/* harmony export */ SQLITE_TRANSIENT: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_TRANSIENT),
|
|
41301
|
-
/* harmony export */ SQLITE_UPDATE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_UPDATE),
|
|
41302
|
-
/* harmony export */ SQLITE_UTF16: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_UTF16),
|
|
41303
|
-
/* harmony export */ SQLITE_UTF16BE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_UTF16BE),
|
|
41304
|
-
/* harmony export */ SQLITE_UTF16LE: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_UTF16LE),
|
|
41305
|
-
/* harmony export */ SQLITE_UTF8: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_UTF8),
|
|
41306
|
-
/* harmony export */ SQLITE_WARNING: () => (/* reexport safe */ _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_WARNING)
|
|
41307
|
-
/* harmony export */ });
|
|
41308
|
-
/* harmony import */ var _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./sqlite-constants.js */ "./node_modules/@journeyapps/wa-sqlite/src/sqlite-constants.js");
|
|
41309
|
-
// Copyright 2024 Roy T. Hashimoto. All Rights Reserved.
|
|
41310
|
-
|
|
41311
|
-
|
|
41312
|
-
|
|
41313
|
-
const DEFAULT_SECTOR_SIZE = 512;
|
|
41314
|
-
|
|
41315
|
-
// Base class for a VFS.
|
|
41316
|
-
class Base {
|
|
41317
|
-
name;
|
|
41318
|
-
mxPathname = 64;
|
|
41319
|
-
_module;
|
|
41320
|
-
|
|
41321
|
-
/**
|
|
41322
|
-
* @param {string} name
|
|
41323
|
-
* @param {object} module
|
|
41324
|
-
*/
|
|
41325
|
-
constructor(name, module) {
|
|
41326
|
-
this.name = name;
|
|
41327
|
-
this._module = module;
|
|
41328
|
-
}
|
|
41329
|
-
|
|
41330
|
-
/**
|
|
41331
|
-
* @returns {void|Promise<void>}
|
|
41332
|
-
*/
|
|
41333
|
-
close() {
|
|
41334
|
-
}
|
|
41335
|
-
|
|
41336
|
-
/**
|
|
41337
|
-
* @returns {boolean|Promise<boolean>}
|
|
41338
|
-
*/
|
|
41339
|
-
isReady() {
|
|
41340
|
-
return true;
|
|
41341
|
-
}
|
|
41342
|
-
|
|
41343
|
-
/**
|
|
41344
|
-
* Overload in subclasses to indicate which methods are asynchronous.
|
|
41345
|
-
* @param {string} methodName
|
|
41346
|
-
* @returns {boolean}
|
|
41347
|
-
*/
|
|
41348
|
-
hasAsyncMethod(methodName) {
|
|
41349
|
-
return false;
|
|
41350
|
-
}
|
|
41351
|
-
|
|
41352
|
-
/**
|
|
41353
|
-
* @param {number} pVfs
|
|
41354
|
-
* @param {number} zName
|
|
41355
|
-
* @param {number} pFile
|
|
41356
|
-
* @param {number} flags
|
|
41357
|
-
* @param {number} pOutFlags
|
|
41358
|
-
* @returns {number|Promise<number>}
|
|
41359
|
-
*/
|
|
41360
|
-
xOpen(pVfs, zName, pFile, flags, pOutFlags) {
|
|
41361
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_CANTOPEN;
|
|
41362
|
-
}
|
|
41363
|
-
|
|
41364
|
-
/**
|
|
41365
|
-
* @param {number} pVfs
|
|
41366
|
-
* @param {number} zName
|
|
41367
|
-
* @param {number} syncDir
|
|
41368
|
-
* @returns {number|Promise<number>}
|
|
41369
|
-
*/
|
|
41370
|
-
xDelete(pVfs, zName, syncDir) {
|
|
41371
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41372
|
-
}
|
|
41373
|
-
|
|
41374
|
-
/**
|
|
41375
|
-
* @param {number} pVfs
|
|
41376
|
-
* @param {number} zName
|
|
41377
|
-
* @param {number} flags
|
|
41378
|
-
* @param {number} pResOut
|
|
41379
|
-
* @returns {number|Promise<number>}
|
|
41380
|
-
*/
|
|
41381
|
-
xAccess(pVfs, zName, flags, pResOut) {
|
|
41382
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41383
|
-
}
|
|
41384
|
-
|
|
41385
|
-
/**
|
|
41386
|
-
* @param {number} pVfs
|
|
41387
|
-
* @param {number} zName
|
|
41388
|
-
* @param {number} nOut
|
|
41389
|
-
* @param {number} zOut
|
|
41390
|
-
* @returns {number|Promise<number>}
|
|
41391
|
-
*/
|
|
41392
|
-
xFullPathname(pVfs, zName, nOut, zOut) {
|
|
41393
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41394
|
-
}
|
|
41395
|
-
|
|
41396
|
-
/**
|
|
41397
|
-
* @param {number} pVfs
|
|
41398
|
-
* @param {number} nBuf
|
|
41399
|
-
* @param {number} zBuf
|
|
41400
|
-
* @returns {number|Promise<number>}
|
|
41401
|
-
*/
|
|
41402
|
-
xGetLastError(pVfs, nBuf, zBuf) {
|
|
41403
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41404
|
-
}
|
|
41405
|
-
|
|
41406
|
-
/**
|
|
41407
|
-
* @param {number} pFile
|
|
41408
|
-
* @returns {number|Promise<number>}
|
|
41409
|
-
*/
|
|
41410
|
-
xClose(pFile) {
|
|
41411
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41412
|
-
}
|
|
41413
|
-
|
|
41414
|
-
/**
|
|
41415
|
-
* @param {number} pFile
|
|
41416
|
-
* @param {number} pData
|
|
41417
|
-
* @param {number} iAmt
|
|
41418
|
-
* @param {number} iOffsetLo
|
|
41419
|
-
* @param {number} iOffsetHi
|
|
41420
|
-
* @returns {number|Promise<number>}
|
|
41421
|
-
*/
|
|
41422
|
-
xRead(pFile, pData, iAmt, iOffsetLo, iOffsetHi) {
|
|
41423
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41424
|
-
}
|
|
41425
|
-
|
|
41426
|
-
/**
|
|
41427
|
-
* @param {number} pFile
|
|
41428
|
-
* @param {number} pData
|
|
41429
|
-
* @param {number} iAmt
|
|
41430
|
-
* @param {number} iOffsetLo
|
|
41431
|
-
* @param {number} iOffsetHi
|
|
41432
|
-
* @returns {number|Promise<number>}
|
|
41433
|
-
*/
|
|
41434
|
-
xWrite(pFile, pData, iAmt, iOffsetLo, iOffsetHi) {
|
|
41435
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41436
|
-
}
|
|
41437
|
-
|
|
41438
|
-
/**
|
|
41439
|
-
* @param {number} pFile
|
|
41440
|
-
* @param {number} sizeLo
|
|
41441
|
-
* @param {number} sizeHi
|
|
41442
|
-
* @returns {number|Promise<number>}
|
|
41443
|
-
*/
|
|
41444
|
-
xTruncate(pFile, sizeLo, sizeHi) {
|
|
41445
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41446
|
-
}
|
|
41447
|
-
|
|
41448
|
-
/**
|
|
41449
|
-
* @param {number} pFile
|
|
41450
|
-
* @param {number} flags
|
|
41451
|
-
* @returns {number|Promise<number>}
|
|
41452
|
-
*/
|
|
41453
|
-
xSync(pFile, flags) {
|
|
41454
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41455
|
-
}
|
|
41456
|
-
|
|
41457
|
-
/**
|
|
41458
|
-
*
|
|
41459
|
-
* @param {number} pFile
|
|
41460
|
-
* @param {number} pSize
|
|
41461
|
-
* @returns {number|Promise<number>}
|
|
41462
|
-
*/
|
|
41463
|
-
xFileSize(pFile, pSize) {
|
|
41464
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41465
|
-
}
|
|
41466
|
-
|
|
41467
|
-
/**
|
|
41468
|
-
* @param {number} pFile
|
|
41469
|
-
* @param {number} lockType
|
|
41470
|
-
* @returns {number|Promise<number>}
|
|
41471
|
-
*/
|
|
41472
|
-
xLock(pFile, lockType) {
|
|
41473
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41474
|
-
}
|
|
41475
|
-
|
|
41476
|
-
/**
|
|
41477
|
-
* @param {number} pFile
|
|
41478
|
-
* @param {number} lockType
|
|
41479
|
-
* @returns {number|Promise<number>}
|
|
41480
|
-
*/
|
|
41481
|
-
xUnlock(pFile, lockType) {
|
|
41482
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41483
|
-
}
|
|
41484
|
-
|
|
41485
|
-
/**
|
|
41486
|
-
* @param {number} pFile
|
|
41487
|
-
* @param {number} pResOut
|
|
41488
|
-
* @returns {number|Promise<number>}
|
|
41489
|
-
*/
|
|
41490
|
-
xCheckReservedLock(pFile, pResOut) {
|
|
41491
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OK;
|
|
41492
|
-
}
|
|
41493
|
-
|
|
41494
|
-
/**
|
|
41495
|
-
* @param {number} pFile
|
|
41496
|
-
* @param {number} op
|
|
41497
|
-
* @param {number} pArg
|
|
41498
|
-
* @returns {number|Promise<number>}
|
|
41499
|
-
*/
|
|
41500
|
-
xFileControl(pFile, op, pArg) {
|
|
41501
|
-
return _sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_NOTFOUND;
|
|
41502
|
-
}
|
|
41503
|
-
|
|
41504
|
-
/**
|
|
41505
|
-
* @param {number} pFile
|
|
41506
|
-
* @returns {number|Promise<number>}
|
|
41507
|
-
*/
|
|
41508
|
-
xSectorSize(pFile) {
|
|
41509
|
-
return DEFAULT_SECTOR_SIZE;
|
|
41510
|
-
}
|
|
41511
|
-
|
|
41512
|
-
/**
|
|
41513
|
-
* @param {number} pFile
|
|
41514
|
-
* @returns {number|Promise<number>}
|
|
41515
|
-
*/
|
|
41516
|
-
xDeviceCharacteristics(pFile) {
|
|
41517
|
-
return 0;
|
|
41518
|
-
}
|
|
41519
|
-
}
|
|
41520
|
-
|
|
41521
|
-
const FILE_TYPE_MASK = [
|
|
41522
|
-
_sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_MAIN_DB,
|
|
41523
|
-
_sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_MAIN_JOURNAL,
|
|
41524
|
-
_sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_TEMP_DB,
|
|
41525
|
-
_sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_TEMP_JOURNAL,
|
|
41526
|
-
_sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_TRANSIENT_DB,
|
|
41527
|
-
_sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_SUBJOURNAL,
|
|
41528
|
-
_sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_SUPER_JOURNAL,
|
|
41529
|
-
_sqlite_constants_js__WEBPACK_IMPORTED_MODULE_0__.SQLITE_OPEN_WAL
|
|
41530
|
-
].reduce((mask, element) => mask | element);
|
|
41531
|
-
|
|
41532
|
-
/***/ }),
|
|
41533
|
-
|
|
41534
|
-
/***/ "./node_modules/@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js":
|
|
41535
|
-
/*!*********************************************************************************!*\
|
|
41536
|
-
!*** ./node_modules/@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js ***!
|
|
41537
|
-
\*********************************************************************************/
|
|
41538
|
-
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
41539
|
-
|
|
41540
|
-
"use strict";
|
|
41541
|
-
__webpack_require__.r(__webpack_exports__);
|
|
41542
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
41543
|
-
/* harmony export */ AccessHandlePoolVFS: () => (/* binding */ AccessHandlePoolVFS)
|
|
41544
|
-
/* harmony export */ });
|
|
41545
|
-
/* harmony import */ var _FacadeVFS_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../FacadeVFS.js */ "./node_modules/@journeyapps/wa-sqlite/src/FacadeVFS.js");
|
|
41546
|
-
/* harmony import */ var _VFS_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../VFS.js */ "./node_modules/@journeyapps/wa-sqlite/src/VFS.js");
|
|
41547
|
-
// Copyright 2023 Roy T. Hashimoto. All Rights Reserved.
|
|
41548
|
-
|
|
41549
|
-
|
|
41550
|
-
|
|
41551
|
-
const SECTOR_SIZE = 4096;
|
|
41552
|
-
|
|
41553
|
-
// Each OPFS file begins with a fixed-size header with metadata. The
|
|
41554
|
-
// contents of the file follow immediately after the header.
|
|
41555
|
-
const HEADER_MAX_PATH_SIZE = 512;
|
|
41556
|
-
const HEADER_FLAGS_SIZE = 4;
|
|
41557
|
-
const HEADER_DIGEST_SIZE = 8;
|
|
41558
|
-
const HEADER_CORPUS_SIZE = HEADER_MAX_PATH_SIZE + HEADER_FLAGS_SIZE;
|
|
41559
|
-
const HEADER_OFFSET_FLAGS = HEADER_MAX_PATH_SIZE;
|
|
41560
|
-
const HEADER_OFFSET_DIGEST = HEADER_CORPUS_SIZE;
|
|
41561
|
-
const HEADER_OFFSET_DATA = SECTOR_SIZE;
|
|
41562
|
-
|
|
41563
|
-
// These file types are expected to persist in the file system outside
|
|
41564
|
-
// a session. Other files will be removed on VFS start.
|
|
41565
|
-
const PERSISTENT_FILE_TYPES =
|
|
41566
|
-
_VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_MAIN_DB |
|
|
41567
|
-
_VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_MAIN_JOURNAL |
|
|
41568
|
-
_VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_SUPER_JOURNAL |
|
|
41569
|
-
_VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_WAL;
|
|
41570
|
-
|
|
41571
|
-
const DEFAULT_CAPACITY = 6;
|
|
41572
|
-
|
|
41573
|
-
/**
|
|
41574
|
-
* This VFS uses the updated Access Handle API with all synchronous methods
|
|
41575
|
-
* on FileSystemSyncAccessHandle (instead of just read and write). It will
|
|
41576
|
-
* work with the regular SQLite WebAssembly build, i.e. the one without
|
|
41577
|
-
* Asyncify.
|
|
41578
|
-
*/
|
|
41579
|
-
class AccessHandlePoolVFS extends _FacadeVFS_js__WEBPACK_IMPORTED_MODULE_0__.FacadeVFS {
|
|
41580
|
-
log = null; //function(...args) { console.log(`[${contextName}]`, ...args) };
|
|
41581
|
-
|
|
41582
|
-
// All the OPFS files the VFS uses are contained in one flat directory
|
|
41583
|
-
// specified in the constructor. No other files should be written here.
|
|
41584
|
-
#directoryPath;
|
|
41585
|
-
#directoryHandle;
|
|
41586
|
-
|
|
41587
|
-
// The OPFS files all have randomly-generated names that do not match
|
|
41588
|
-
// the SQLite files whose data they contain. This map links those names
|
|
41589
|
-
// with their respective OPFS access handles.
|
|
41590
|
-
#mapAccessHandleToName = new Map();
|
|
41591
|
-
|
|
41592
|
-
// When a SQLite file is associated with an OPFS file, that association
|
|
41593
|
-
// is kept in #mapPathToAccessHandle. Each access handle is in exactly
|
|
41594
|
-
// one of #mapPathToAccessHandle or #availableAccessHandles.
|
|
41595
|
-
#mapPathToAccessHandle = new Map();
|
|
41596
|
-
#availableAccessHandles = new Set();
|
|
41597
|
-
|
|
41598
|
-
#mapIdToFile = new Map();
|
|
41599
|
-
|
|
41600
|
-
static async create(name, module) {
|
|
41601
|
-
const vfs = new AccessHandlePoolVFS(name, module);
|
|
41602
|
-
await vfs.isReady();
|
|
41603
|
-
return vfs;
|
|
41604
|
-
}
|
|
41605
|
-
|
|
41606
|
-
constructor(name, module) {
|
|
41607
|
-
super(name, module);
|
|
41608
|
-
this.#directoryPath = name;
|
|
41609
|
-
}
|
|
41610
|
-
|
|
41611
|
-
/**
|
|
41612
|
-
* @param {string?} zName
|
|
41613
|
-
* @param {number} fileId
|
|
41614
|
-
* @param {number} flags
|
|
41615
|
-
* @param {DataView} pOutFlags
|
|
41616
|
-
* @returns {number}
|
|
41617
|
-
*/
|
|
41618
|
-
jOpen(zName, fileId, flags, pOutFlags) {
|
|
41619
|
-
try {
|
|
41620
|
-
// First try to open a path that already exists in the file system.
|
|
41621
|
-
const path = zName ? this.#getPath(zName) : Math.random().toString(36);
|
|
41622
|
-
let accessHandle = this.#mapPathToAccessHandle.get(path);
|
|
41623
|
-
if (!accessHandle && (flags & _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_CREATE)) {
|
|
41624
|
-
// File not found so try to create it.
|
|
41625
|
-
if (this.getSize() < this.getCapacity()) {
|
|
41626
|
-
// Choose an unassociated OPFS file from the pool.
|
|
41627
|
-
([accessHandle] = this.#availableAccessHandles.keys());
|
|
41628
|
-
this.#setAssociatedPath(accessHandle, path, flags);
|
|
41629
|
-
} else {
|
|
41630
|
-
// Out of unassociated files. This can be fixed by calling
|
|
41631
|
-
// addCapacity() from the application.
|
|
41632
|
-
throw new Error('cannot create file');
|
|
41633
|
-
}
|
|
41634
|
-
}
|
|
41635
|
-
if (!accessHandle) {
|
|
41636
|
-
throw new Error('file not found');
|
|
41637
|
-
}
|
|
41638
|
-
// Subsequent methods are only passed the fileId, so make sure we have
|
|
41639
|
-
// a way to get the file resources.
|
|
41640
|
-
const file = { path, flags, accessHandle };
|
|
41641
|
-
this.#mapIdToFile.set(fileId, file);
|
|
41642
|
-
|
|
41643
|
-
pOutFlags.setInt32(0, flags, true);
|
|
41644
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
41645
|
-
} catch (e) {
|
|
41646
|
-
console.error(e.message);
|
|
41647
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_CANTOPEN;
|
|
41648
|
-
}
|
|
41649
|
-
}
|
|
41650
|
-
|
|
41651
|
-
/**
|
|
41652
|
-
* @param {number} fileId
|
|
41653
|
-
* @returns {number}
|
|
41654
|
-
*/
|
|
41655
|
-
jClose(fileId) {
|
|
41656
|
-
const file = this.#mapIdToFile.get(fileId);
|
|
41657
|
-
if (file) {
|
|
41658
|
-
file.accessHandle.flush();
|
|
41659
|
-
this.#mapIdToFile.delete(fileId);
|
|
41660
|
-
if (file.flags & _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_DELETEONCLOSE) {
|
|
41661
|
-
this.#deletePath(file.path);
|
|
41662
|
-
}
|
|
41663
|
-
}
|
|
41664
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
41665
|
-
}
|
|
41666
|
-
|
|
41667
|
-
/**
|
|
41668
|
-
* @param {number} fileId
|
|
41669
|
-
* @param {Uint8Array} pData
|
|
41670
|
-
* @param {number} iOffset
|
|
41671
|
-
* @returns {number}
|
|
41672
|
-
*/
|
|
41673
|
-
jRead(fileId, pData, iOffset) {
|
|
41674
|
-
const file = this.#mapIdToFile.get(fileId);
|
|
41675
|
-
const nBytes = file.accessHandle.read(
|
|
41676
|
-
pData.subarray(),
|
|
41677
|
-
{ at: HEADER_OFFSET_DATA + iOffset });
|
|
41678
|
-
if (nBytes < pData.byteLength) {
|
|
41679
|
-
pData.fill(0, nBytes, pData.byteLength);
|
|
41680
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR_SHORT_READ;
|
|
41681
|
-
}
|
|
41682
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
41683
|
-
}
|
|
41684
|
-
|
|
41685
|
-
/**
|
|
41686
|
-
* @param {number} fileId
|
|
41687
|
-
* @param {Uint8Array} pData
|
|
41688
|
-
* @param {number} iOffset
|
|
41689
|
-
* @returns {number}
|
|
41690
|
-
*/
|
|
41691
|
-
jWrite(fileId, pData, iOffset) {
|
|
41692
|
-
const file = this.#mapIdToFile.get(fileId);
|
|
41693
|
-
const nBytes = file.accessHandle.write(
|
|
41694
|
-
pData.subarray(),
|
|
41695
|
-
{ at: HEADER_OFFSET_DATA + iOffset });
|
|
41696
|
-
return nBytes === pData.byteLength ? _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK : _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR;
|
|
41697
|
-
}
|
|
41698
|
-
|
|
41699
|
-
/**
|
|
41700
|
-
* @param {number} fileId
|
|
41701
|
-
* @param {number} iSize
|
|
41702
|
-
* @returns {number}
|
|
41703
|
-
*/
|
|
41704
|
-
jTruncate(fileId, iSize) {
|
|
41705
|
-
const file = this.#mapIdToFile.get(fileId);
|
|
41706
|
-
file.accessHandle.truncate(HEADER_OFFSET_DATA + iSize);
|
|
41707
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
41708
|
-
}
|
|
41709
|
-
|
|
41710
|
-
/**
|
|
41711
|
-
* @param {number} fileId
|
|
41712
|
-
* @param {number} flags
|
|
41713
|
-
* @returns {number}
|
|
41714
|
-
*/
|
|
41715
|
-
jSync(fileId, flags) {
|
|
41716
|
-
const file = this.#mapIdToFile.get(fileId);
|
|
41717
|
-
file.accessHandle.flush();
|
|
41718
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
41719
|
-
}
|
|
41720
|
-
|
|
41721
|
-
/**
|
|
41722
|
-
* @param {number} fileId
|
|
41723
|
-
* @param {DataView} pSize64
|
|
41724
|
-
* @returns {number}
|
|
41725
|
-
*/
|
|
41726
|
-
jFileSize(fileId, pSize64) {
|
|
41727
|
-
const file = this.#mapIdToFile.get(fileId);
|
|
41728
|
-
const size = file.accessHandle.getSize() - HEADER_OFFSET_DATA;
|
|
41729
|
-
pSize64.setBigInt64(0, BigInt(size), true);
|
|
41730
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
41731
|
-
}
|
|
41732
|
-
|
|
41733
|
-
jSectorSize(fileId) {
|
|
41734
|
-
return SECTOR_SIZE;
|
|
41735
|
-
}
|
|
41736
|
-
|
|
41737
|
-
jDeviceCharacteristics(fileId) {
|
|
41738
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN;
|
|
41739
|
-
}
|
|
41740
|
-
|
|
41741
|
-
/**
|
|
41742
|
-
* @param {string} zName
|
|
41743
|
-
* @param {number} flags
|
|
41744
|
-
* @param {DataView} pResOut
|
|
41745
|
-
* @returns {number}
|
|
41746
|
-
*/
|
|
41747
|
-
jAccess(zName, flags, pResOut) {
|
|
41748
|
-
const path = this.#getPath(zName);
|
|
41749
|
-
pResOut.setInt32(0, this.#mapPathToAccessHandle.has(path) ? 1 : 0, true);
|
|
41750
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
41751
|
-
}
|
|
41752
|
-
|
|
41753
|
-
/**
|
|
41754
|
-
* @param {string} zName
|
|
41755
|
-
* @param {number} syncDir
|
|
41756
|
-
* @returns {number}
|
|
41757
|
-
*/
|
|
41758
|
-
jDelete(zName, syncDir) {
|
|
41759
|
-
const path = this.#getPath(zName);
|
|
41760
|
-
this.#deletePath(path);
|
|
41761
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
41762
|
-
}
|
|
41763
|
-
|
|
41764
|
-
async close() {
|
|
41765
|
-
await this.#releaseAccessHandles();
|
|
41766
|
-
}
|
|
41767
|
-
|
|
41768
|
-
async isReady() {
|
|
41769
|
-
if (!this.#directoryHandle) {
|
|
41770
|
-
// All files are stored in a single directory.
|
|
41771
|
-
let handle = await navigator.storage.getDirectory();
|
|
41772
|
-
for (const d of this.#directoryPath.split('/')) {
|
|
41773
|
-
if (d) {
|
|
41774
|
-
handle = await handle.getDirectoryHandle(d, { create: true });
|
|
41775
|
-
}
|
|
41776
|
-
}
|
|
41777
|
-
this.#directoryHandle = handle;
|
|
41778
|
-
|
|
41779
|
-
await this.#acquireAccessHandles();
|
|
41780
|
-
if (this.getCapacity() === 0) {
|
|
41781
|
-
await this.addCapacity(DEFAULT_CAPACITY);
|
|
41782
|
-
}
|
|
41783
|
-
}
|
|
41784
|
-
return true;
|
|
41785
|
-
}
|
|
41786
|
-
|
|
41787
|
-
/**
|
|
41788
|
-
* Returns the number of SQLite files in the file system.
|
|
41789
|
-
* @returns {number}
|
|
41790
|
-
*/
|
|
41791
|
-
getSize() {
|
|
41792
|
-
return this.#mapPathToAccessHandle.size;
|
|
41793
|
-
}
|
|
41794
|
-
|
|
41795
|
-
/**
|
|
41796
|
-
* Returns the maximum number of SQLite files the file system can hold.
|
|
41797
|
-
* @returns {number}
|
|
41798
|
-
*/
|
|
41799
|
-
getCapacity() {
|
|
41800
|
-
return this.#mapAccessHandleToName.size;
|
|
41801
|
-
}
|
|
41802
|
-
|
|
41803
|
-
/**
|
|
41804
|
-
* Increase the capacity of the file system by n.
|
|
41805
|
-
* @param {number} n
|
|
41806
|
-
* @returns {Promise<number>}
|
|
41807
|
-
*/
|
|
41808
|
-
async addCapacity(n) {
|
|
41809
|
-
for (let i = 0; i < n; ++i) {
|
|
41810
|
-
const name = Math.random().toString(36).replace('0.', '');
|
|
41811
|
-
const handle = await this.#directoryHandle.getFileHandle(name, { create: true });
|
|
41812
|
-
const accessHandle = await handle.createSyncAccessHandle();
|
|
41813
|
-
this.#mapAccessHandleToName.set(accessHandle, name);
|
|
41814
|
-
|
|
41815
|
-
this.#setAssociatedPath(accessHandle, '', 0);
|
|
41816
|
-
}
|
|
41817
|
-
return n;
|
|
41818
|
-
}
|
|
41819
|
-
|
|
41820
|
-
/**
|
|
41821
|
-
* Decrease the capacity of the file system by n. The capacity cannot be
|
|
41822
|
-
* decreased to fewer than the current number of SQLite files in the
|
|
41823
|
-
* file system.
|
|
41824
|
-
* @param {number} n
|
|
41825
|
-
* @returns {Promise<number>}
|
|
41826
|
-
*/
|
|
41827
|
-
async removeCapacity(n) {
|
|
41828
|
-
let nRemoved = 0;
|
|
41829
|
-
for (const accessHandle of Array.from(this.#availableAccessHandles)) {
|
|
41830
|
-
if (nRemoved == n || this.getSize() === this.getCapacity()) return nRemoved;
|
|
41831
|
-
|
|
41832
|
-
const name = this.#mapAccessHandleToName.get(accessHandle);
|
|
41833
|
-
await accessHandle.close();
|
|
41834
|
-
await this.#directoryHandle.removeEntry(name);
|
|
41835
|
-
this.#mapAccessHandleToName.delete(accessHandle);
|
|
41836
|
-
this.#availableAccessHandles.delete(accessHandle);
|
|
41837
|
-
++nRemoved;
|
|
41838
|
-
}
|
|
41839
|
-
return nRemoved;
|
|
41840
|
-
}
|
|
41841
|
-
|
|
41842
|
-
async #acquireAccessHandles() {
|
|
41843
|
-
// Enumerate all the files in the directory.
|
|
41844
|
-
const files = [];
|
|
41845
|
-
for await (const [name, handle] of this.#directoryHandle) {
|
|
41846
|
-
if (handle.kind === 'file') {
|
|
41847
|
-
files.push([name, handle]);
|
|
41848
|
-
}
|
|
41849
|
-
}
|
|
41850
|
-
|
|
41851
|
-
// Open access handles in parallel, separating associated and unassociated.
|
|
41852
|
-
await Promise.all(files.map(async ([name, handle]) => {
|
|
41853
|
-
const accessHandle = await handle.createSyncAccessHandle();
|
|
41854
|
-
this.#mapAccessHandleToName.set(accessHandle, name);
|
|
41855
|
-
const path = this.#getAssociatedPath(accessHandle);
|
|
41856
|
-
if (path) {
|
|
41857
|
-
this.#mapPathToAccessHandle.set(path, accessHandle);
|
|
41858
|
-
} else {
|
|
41859
|
-
this.#availableAccessHandles.add(accessHandle);
|
|
41860
|
-
}
|
|
41861
|
-
}));
|
|
41862
|
-
}
|
|
41863
|
-
|
|
41864
|
-
#releaseAccessHandles() {
|
|
41865
|
-
for (const accessHandle of this.#mapAccessHandleToName.keys()) {
|
|
41866
|
-
accessHandle.close();
|
|
41867
|
-
}
|
|
41868
|
-
this.#mapAccessHandleToName.clear();
|
|
41869
|
-
this.#mapPathToAccessHandle.clear();
|
|
41870
|
-
this.#availableAccessHandles.clear();
|
|
41871
|
-
}
|
|
41872
|
-
|
|
41873
|
-
/**
|
|
41874
|
-
* Read and return the associated path from an OPFS file header.
|
|
41875
|
-
* Empty string is returned for an unassociated OPFS file.
|
|
41876
|
-
* @param accessHandle FileSystemSyncAccessHandle
|
|
41877
|
-
* @returns {string} path or empty string
|
|
41878
|
-
*/
|
|
41879
|
-
#getAssociatedPath(accessHandle) {
|
|
41880
|
-
// Read the path and digest of the path from the file.
|
|
41881
|
-
const corpus = new Uint8Array(HEADER_CORPUS_SIZE);
|
|
41882
|
-
accessHandle.read(corpus, { at: 0 })
|
|
41883
|
-
|
|
41884
|
-
// Delete files not expected to be present.
|
|
41885
|
-
const dataView = new DataView(corpus.buffer, corpus.byteOffset);
|
|
41886
|
-
const flags = dataView.getUint32(HEADER_OFFSET_FLAGS);
|
|
41887
|
-
if (corpus[0] &&
|
|
41888
|
-
((flags & _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_DELETEONCLOSE) ||
|
|
41889
|
-
(flags & PERSISTENT_FILE_TYPES) === 0)) {
|
|
41890
|
-
console.warn(`Remove file with unexpected flags ${flags.toString(16)}`);
|
|
41891
|
-
this.#setAssociatedPath(accessHandle, '', 0);
|
|
41892
|
-
return '';
|
|
41893
|
-
}
|
|
41894
|
-
|
|
41895
|
-
const fileDigest = new Uint32Array(HEADER_DIGEST_SIZE / 4);
|
|
41896
|
-
accessHandle.read(fileDigest, { at: HEADER_OFFSET_DIGEST });
|
|
41897
|
-
|
|
41898
|
-
// Verify the digest.
|
|
41899
|
-
const computedDigest = this.#computeDigest(corpus);
|
|
41900
|
-
if (fileDigest.every((value, i) => value === computedDigest[i])) {
|
|
41901
|
-
// Good digest. Decode the null-terminated path string.
|
|
41902
|
-
const pathBytes = corpus.findIndex(value => value === 0);
|
|
41903
|
-
if (pathBytes === 0) {
|
|
41904
|
-
// Ensure that unassociated files are empty. Unassociated files are
|
|
41905
|
-
// truncated in #setAssociatedPath after the header is written. If
|
|
41906
|
-
// an interruption occurs right before the truncation then garbage
|
|
41907
|
-
// may remain in the file.
|
|
41908
|
-
accessHandle.truncate(HEADER_OFFSET_DATA);
|
|
41909
|
-
}
|
|
41910
|
-
return new TextDecoder().decode(corpus.subarray(0, pathBytes));
|
|
41911
|
-
} else {
|
|
41912
|
-
// Bad digest. Repair this header.
|
|
41913
|
-
console.warn('Disassociating file with bad digest.');
|
|
41914
|
-
this.#setAssociatedPath(accessHandle, '', 0);
|
|
41915
|
-
return '';
|
|
41916
|
-
}
|
|
41917
|
-
}
|
|
41918
|
-
|
|
41919
|
-
/**
|
|
41920
|
-
* Set the path on an OPFS file header.
|
|
41921
|
-
* @param accessHandle FileSystemSyncAccessHandle
|
|
41922
|
-
* @param {string} path
|
|
41923
|
-
* @param {number} flags
|
|
41924
|
-
*/
|
|
41925
|
-
#setAssociatedPath(accessHandle, path, flags) {
|
|
41926
|
-
// Convert the path string to UTF-8.
|
|
41927
|
-
const corpus = new Uint8Array(HEADER_CORPUS_SIZE);
|
|
41928
|
-
const encodedResult = new TextEncoder().encodeInto(path, corpus);
|
|
41929
|
-
if (encodedResult.written >= HEADER_MAX_PATH_SIZE) {
|
|
41930
|
-
throw new Error('path too long');
|
|
41931
|
-
}
|
|
41932
|
-
|
|
41933
|
-
// Add the creation flags.
|
|
41934
|
-
const dataView = new DataView(corpus.buffer, corpus.byteOffset);
|
|
41935
|
-
dataView.setUint32(HEADER_OFFSET_FLAGS, flags);
|
|
41936
|
-
|
|
41937
|
-
// Write the OPFS file header, including the digest.
|
|
41938
|
-
const digest = this.#computeDigest(corpus);
|
|
41939
|
-
accessHandle.write(corpus, { at: 0 });
|
|
41940
|
-
accessHandle.write(digest, { at: HEADER_OFFSET_DIGEST });
|
|
41941
|
-
accessHandle.flush();
|
|
41942
|
-
|
|
41943
|
-
if (path) {
|
|
41944
|
-
this.#mapPathToAccessHandle.set(path, accessHandle);
|
|
41945
|
-
this.#availableAccessHandles.delete(accessHandle);
|
|
41946
|
-
} else {
|
|
41947
|
-
// This OPFS file doesn't represent any SQLite file so it doesn't
|
|
41948
|
-
// need to keep any data.
|
|
41949
|
-
accessHandle.truncate(HEADER_OFFSET_DATA);
|
|
41950
|
-
this.#availableAccessHandles.add(accessHandle);
|
|
41951
|
-
}
|
|
41952
|
-
}
|
|
41953
|
-
|
|
41954
|
-
/**
|
|
41955
|
-
* We need a synchronous digest function so can't use WebCrypto.
|
|
41956
|
-
* Adapted from https://github.com/bryc/code/blob/master/jshash/experimental/cyrb53.js
|
|
41957
|
-
* @param {Uint8Array} corpus
|
|
41958
|
-
* @returns {ArrayBuffer} 64-bit digest
|
|
41959
|
-
*/
|
|
41960
|
-
#computeDigest(corpus) {
|
|
41961
|
-
if (!corpus[0]) {
|
|
41962
|
-
// Optimization for deleted file.
|
|
41963
|
-
return new Uint32Array([0xfecc5f80, 0xaccec037]);
|
|
41964
|
-
}
|
|
41965
|
-
|
|
41966
|
-
let h1 = 0xdeadbeef;
|
|
41967
|
-
let h2 = 0x41c6ce57;
|
|
41968
|
-
|
|
41969
|
-
for (const value of corpus) {
|
|
41970
|
-
h1 = Math.imul(h1 ^ value, 2654435761);
|
|
41971
|
-
h2 = Math.imul(h2 ^ value, 1597334677);
|
|
41972
|
-
}
|
|
41973
|
-
|
|
41974
|
-
h1 = Math.imul(h1 ^ (h1 >>> 16), 2246822507) ^ Math.imul(h2 ^ (h2 >>> 13), 3266489909);
|
|
41975
|
-
h2 = Math.imul(h2 ^ (h2 >>> 16), 2246822507) ^ Math.imul(h1 ^ (h1 >>> 13), 3266489909);
|
|
41976
|
-
|
|
41977
|
-
return new Uint32Array([h1 >>> 0, h2 >>> 0]);
|
|
41978
|
-
};
|
|
41979
|
-
|
|
41980
|
-
/**
|
|
41981
|
-
* Convert a bare filename, path, or URL to a UNIX-style path.
|
|
41982
|
-
* @param {string|URL} nameOrURL
|
|
41983
|
-
* @returns {string} path
|
|
41984
|
-
*/
|
|
41985
|
-
#getPath(nameOrURL) {
|
|
41986
|
-
const url = typeof nameOrURL === 'string' ?
|
|
41987
|
-
new URL(nameOrURL, 'file://localhost/') :
|
|
41988
|
-
nameOrURL;
|
|
41989
|
-
return url.pathname;
|
|
41990
|
-
}
|
|
41991
|
-
|
|
41992
|
-
/**
|
|
41993
|
-
* Remove the association between a path and an OPFS file.
|
|
41994
|
-
* @param {string} path
|
|
41995
|
-
*/
|
|
41996
|
-
#deletePath(path) {
|
|
41997
|
-
const accessHandle = this.#mapPathToAccessHandle.get(path);
|
|
41998
|
-
if (accessHandle) {
|
|
41999
|
-
// Un-associate the SQLite path from the OPFS file.
|
|
42000
|
-
this.#mapPathToAccessHandle.delete(path);
|
|
42001
|
-
this.#setAssociatedPath(accessHandle, '', 0);
|
|
42002
|
-
}
|
|
42003
|
-
}
|
|
42004
|
-
}
|
|
42005
|
-
|
|
42006
|
-
/***/ }),
|
|
42007
|
-
|
|
42008
|
-
/***/ "./node_modules/@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js":
|
|
42009
|
-
/*!*****************************************************************************!*\
|
|
42010
|
-
!*** ./node_modules/@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js ***!
|
|
42011
|
-
\*****************************************************************************/
|
|
42012
|
-
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
42013
|
-
|
|
42014
|
-
"use strict";
|
|
42015
|
-
__webpack_require__.r(__webpack_exports__);
|
|
42016
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
42017
|
-
/* harmony export */ OPFSCoopSyncVFS: () => (/* binding */ OPFSCoopSyncVFS)
|
|
42018
|
-
/* harmony export */ });
|
|
42019
|
-
/* harmony import */ var _FacadeVFS_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../FacadeVFS.js */ "./node_modules/@journeyapps/wa-sqlite/src/FacadeVFS.js");
|
|
42020
|
-
/* harmony import */ var _VFS_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../VFS.js */ "./node_modules/@journeyapps/wa-sqlite/src/VFS.js");
|
|
42021
|
-
// Copyright 2024 Roy T. Hashimoto. All Rights Reserved.
|
|
42022
|
-
|
|
42023
|
-
|
|
42024
|
-
|
|
42025
|
-
const DEFAULT_TEMPORARY_FILES = 10;
|
|
42026
|
-
const LOCK_NOTIFY_INTERVAL = 1000;
|
|
42027
|
-
|
|
42028
|
-
const DB_RELATED_FILE_SUFFIXES = ['', '-journal', '-wal'];
|
|
42029
|
-
|
|
42030
|
-
const finalizationRegistry = new FinalizationRegistry(releaser => releaser());
|
|
42031
|
-
|
|
42032
|
-
class File {
|
|
42033
|
-
/** @type {string} */ path
|
|
42034
|
-
/** @type {number} */ flags;
|
|
42035
|
-
/** @type {FileSystemSyncAccessHandle} */ accessHandle;
|
|
42036
|
-
|
|
42037
|
-
/** @type {PersistentFile?} */ persistentFile;
|
|
42038
|
-
|
|
42039
|
-
constructor(path, flags) {
|
|
42040
|
-
this.path = path;
|
|
42041
|
-
this.flags = flags;
|
|
42042
|
-
}
|
|
42043
|
-
}
|
|
42044
|
-
|
|
42045
|
-
class PersistentFile {
|
|
42046
|
-
/** @type {FileSystemFileHandle} */ fileHandle
|
|
42047
|
-
/** @type {FileSystemSyncAccessHandle} */ accessHandle = null
|
|
42048
|
-
|
|
42049
|
-
// The following properties are for main database files.
|
|
42050
|
-
|
|
42051
|
-
/** @type {boolean} */ isLockBusy = false;
|
|
42052
|
-
/** @type {boolean} */ isFileLocked = false;
|
|
42053
|
-
/** @type {boolean} */ isRequestInProgress = false;
|
|
42054
|
-
/** @type {function} */ handleLockReleaser = null;
|
|
42055
|
-
|
|
42056
|
-
/** @type {BroadcastChannel} */ handleRequestChannel;
|
|
42057
|
-
/** @type {boolean} */ isHandleRequested = false;
|
|
42058
|
-
|
|
42059
|
-
constructor(fileHandle) {
|
|
42060
|
-
this.fileHandle = fileHandle;
|
|
42061
|
-
}
|
|
42062
|
-
}
|
|
42063
|
-
|
|
42064
|
-
class OPFSCoopSyncVFS extends _FacadeVFS_js__WEBPACK_IMPORTED_MODULE_0__.FacadeVFS {
|
|
42065
|
-
/** @type {Map<number, File>} */ mapIdToFile = new Map();
|
|
42066
|
-
|
|
42067
|
-
lastError = null;
|
|
42068
|
-
log = null; //function(...args) { console.log(`[${contextName}]`, ...args) };
|
|
42069
|
-
|
|
42070
|
-
/** @type {Map<string, PersistentFile>} */ persistentFiles = new Map();
|
|
42071
|
-
/** @type {Map<string, FileSystemSyncAccessHandle>} */ boundAccessHandles = new Map();
|
|
42072
|
-
/** @type {Set<FileSystemSyncAccessHandle>} */ unboundAccessHandles = new Set();
|
|
42073
|
-
/** @type {Set<string>} */ accessiblePaths = new Set();
|
|
42074
|
-
releaser = null;
|
|
42075
|
-
|
|
42076
|
-
static async create(name, module) {
|
|
42077
|
-
const vfs = new OPFSCoopSyncVFS(name, module);
|
|
42078
|
-
await Promise.all([
|
|
42079
|
-
vfs.isReady(),
|
|
42080
|
-
vfs.#initialize(DEFAULT_TEMPORARY_FILES),
|
|
42081
|
-
]);
|
|
42082
|
-
return vfs;
|
|
42083
|
-
}
|
|
42084
|
-
|
|
42085
|
-
constructor(name, module) {
|
|
42086
|
-
super(name, module);
|
|
42087
|
-
}
|
|
42088
|
-
|
|
42089
|
-
async #initialize(nTemporaryFiles) {
|
|
42090
|
-
// Delete temporary directories no longer in use.
|
|
42091
|
-
const root = await navigator.storage.getDirectory();
|
|
42092
|
-
// @ts-ignore
|
|
42093
|
-
for await (const entry of root.values()) {
|
|
42094
|
-
if (entry.kind === 'directory' && entry.name.startsWith('.ahp-')) {
|
|
42095
|
-
// A lock with the same name as the directory protects it from
|
|
42096
|
-
// being deleted.
|
|
42097
|
-
await navigator.locks.request(entry.name, { ifAvailable: true }, async lock => {
|
|
42098
|
-
if (lock) {
|
|
42099
|
-
this.log?.(`Deleting temporary directory ${entry.name}`);
|
|
42100
|
-
await root.removeEntry(entry.name, { recursive: true });
|
|
42101
|
-
} else {
|
|
42102
|
-
this.log?.(`Temporary directory ${entry.name} is in use`);
|
|
42103
|
-
}
|
|
42104
|
-
});
|
|
42105
|
-
}
|
|
42106
|
-
}
|
|
42107
|
-
|
|
42108
|
-
// Create our temporary directory.
|
|
42109
|
-
const tmpDirName = `.ahp-${Math.random().toString(36).slice(2)}`;
|
|
42110
|
-
this.releaser = await new Promise(resolve => {
|
|
42111
|
-
navigator.locks.request(tmpDirName, () => {
|
|
42112
|
-
return new Promise(release => {
|
|
42113
|
-
resolve(release);
|
|
42114
|
-
});
|
|
42115
|
-
});
|
|
42116
|
-
});
|
|
42117
|
-
finalizationRegistry.register(this, this.releaser);
|
|
42118
|
-
const tmpDir = await root.getDirectoryHandle(tmpDirName, { create: true });
|
|
42119
|
-
|
|
42120
|
-
// Populate temporary directory.
|
|
42121
|
-
for (let i = 0; i < nTemporaryFiles; i++) {
|
|
42122
|
-
const tmpFile = await tmpDir.getFileHandle(`${i}.tmp`, { create: true });
|
|
42123
|
-
const tmpAccessHandle = await tmpFile.createSyncAccessHandle();
|
|
42124
|
-
this.unboundAccessHandles.add(tmpAccessHandle);
|
|
42125
|
-
}
|
|
42126
|
-
}
|
|
42127
|
-
|
|
42128
|
-
/**
|
|
42129
|
-
* @param {string?} zName
|
|
42130
|
-
* @param {number} fileId
|
|
42131
|
-
* @param {number} flags
|
|
42132
|
-
* @param {DataView} pOutFlags
|
|
42133
|
-
* @returns {number}
|
|
42134
|
-
*/
|
|
42135
|
-
jOpen(zName, fileId, flags, pOutFlags) {
|
|
42136
|
-
try {
|
|
42137
|
-
const url = new URL(zName || Math.random().toString(36).slice(2), 'file://');
|
|
42138
|
-
const path = url.pathname;
|
|
42139
|
-
|
|
42140
|
-
if (flags & _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_MAIN_DB) {
|
|
42141
|
-
const persistentFile = this.persistentFiles.get(path);
|
|
42142
|
-
if (persistentFile?.isRequestInProgress) {
|
|
42143
|
-
// Should not reach here unless SQLite itself retries an open.
|
|
42144
|
-
// Otherwise, asynchronous operations started on a previous
|
|
42145
|
-
// open try should have completed.
|
|
42146
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_BUSY;
|
|
42147
|
-
} else if (!persistentFile) {
|
|
42148
|
-
// This is the usual starting point for opening a database.
|
|
42149
|
-
// Register a Promise that resolves when the database and related
|
|
42150
|
-
// files are ready to be used.
|
|
42151
|
-
this.log?.(`creating persistent file for ${path}`);
|
|
42152
|
-
const create = !!(flags & _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_CREATE);
|
|
42153
|
-
this._module.retryOps.push((async () => {
|
|
42154
|
-
try {
|
|
42155
|
-
// Get the path directory handle.
|
|
42156
|
-
let dirHandle = await navigator.storage.getDirectory();
|
|
42157
|
-
const directories = path.split('/').filter(d => d);
|
|
42158
|
-
const filename = directories.pop();
|
|
42159
|
-
for (const directory of directories) {
|
|
42160
|
-
dirHandle = await dirHandle.getDirectoryHandle(directory, { create });
|
|
42161
|
-
}
|
|
42162
|
-
|
|
42163
|
-
// Get file handles for the database and related files,
|
|
42164
|
-
// and create persistent file instances.
|
|
42165
|
-
for (const suffix of DB_RELATED_FILE_SUFFIXES) {
|
|
42166
|
-
const fileHandle = await dirHandle.getFileHandle(filename + suffix, { create });
|
|
42167
|
-
await this.#createPersistentFile(fileHandle);
|
|
42168
|
-
}
|
|
42169
|
-
|
|
42170
|
-
// Get access handles for the files.
|
|
42171
|
-
const file = new File(path, flags);
|
|
42172
|
-
file.persistentFile = this.persistentFiles.get(path);
|
|
42173
|
-
await this.#requestAccessHandle(file);
|
|
42174
|
-
} catch (e) {
|
|
42175
|
-
// Use an invalid persistent file to signal this error
|
|
42176
|
-
// for the retried open.
|
|
42177
|
-
const persistentFile = new PersistentFile(null);
|
|
42178
|
-
this.persistentFiles.set(path, persistentFile);
|
|
42179
|
-
console.error(e);
|
|
42180
|
-
}
|
|
42181
|
-
})());
|
|
42182
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_BUSY;
|
|
42183
|
-
} else if (!persistentFile.fileHandle) {
|
|
42184
|
-
// The asynchronous open operation failed.
|
|
42185
|
-
this.persistentFiles.delete(path);
|
|
42186
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_CANTOPEN;
|
|
42187
|
-
} else if (!persistentFile.accessHandle) {
|
|
42188
|
-
// This branch is reached if the database was previously opened
|
|
42189
|
-
// and closed.
|
|
42190
|
-
this._module.retryOps.push((async () => {
|
|
42191
|
-
const file = new File(path, flags);
|
|
42192
|
-
file.persistentFile = this.persistentFiles.get(path);
|
|
42193
|
-
await this.#requestAccessHandle(file);
|
|
42194
|
-
})());
|
|
42195
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_BUSY;
|
|
42196
|
-
}
|
|
42197
|
-
}
|
|
42198
|
-
|
|
42199
|
-
if (!this.accessiblePaths.has(path) &&
|
|
42200
|
-
!(flags & _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_CREATE)) {
|
|
42201
|
-
throw new Error(`File ${path} not found`);
|
|
42202
|
-
}
|
|
42203
|
-
|
|
42204
|
-
const file = new File(path, flags);
|
|
42205
|
-
this.mapIdToFile.set(fileId, file);
|
|
42206
|
-
|
|
42207
|
-
if (this.persistentFiles.has(path)) {
|
|
42208
|
-
file.persistentFile = this.persistentFiles.get(path);
|
|
42209
|
-
} else if (this.boundAccessHandles.has(path)) {
|
|
42210
|
-
// This temporary file was previously created and closed. Reopen
|
|
42211
|
-
// the same access handle.
|
|
42212
|
-
file.accessHandle = this.boundAccessHandles.get(path);
|
|
42213
|
-
} else if (this.unboundAccessHandles.size) {
|
|
42214
|
-
// Associate an unbound access handle to this file.
|
|
42215
|
-
file.accessHandle = this.unboundAccessHandles.values().next().value;
|
|
42216
|
-
file.accessHandle.truncate(0);
|
|
42217
|
-
this.unboundAccessHandles.delete(file.accessHandle);
|
|
42218
|
-
this.boundAccessHandles.set(path, file.accessHandle);
|
|
42219
|
-
}
|
|
42220
|
-
this.accessiblePaths.add(path);
|
|
42221
|
-
|
|
42222
|
-
pOutFlags.setInt32(0, flags, true);
|
|
42223
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
42224
|
-
} catch (e) {
|
|
42225
|
-
this.lastError = e;
|
|
42226
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_CANTOPEN;
|
|
42227
|
-
}
|
|
42228
|
-
}
|
|
42229
|
-
|
|
42230
|
-
/**
|
|
42231
|
-
* @param {string} zName
|
|
42232
|
-
* @param {number} syncDir
|
|
42233
|
-
* @returns {number}
|
|
42234
|
-
*/
|
|
42235
|
-
jDelete(zName, syncDir) {
|
|
42236
|
-
try {
|
|
42237
|
-
const url = new URL(zName, 'file://');
|
|
42238
|
-
const path = url.pathname;
|
|
42239
|
-
if (this.persistentFiles.has(path)) {
|
|
42240
|
-
const persistentFile = this.persistentFiles.get(path);
|
|
42241
|
-
persistentFile.accessHandle.truncate(0);
|
|
42242
|
-
} else {
|
|
42243
|
-
this.boundAccessHandles.get(path)?.truncate(0);
|
|
42244
|
-
}
|
|
42245
|
-
this.accessiblePaths.delete(path);
|
|
42246
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
42247
|
-
} catch (e) {
|
|
42248
|
-
this.lastError = e;
|
|
42249
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR_DELETE;
|
|
42250
|
-
}
|
|
42251
|
-
}
|
|
42252
|
-
|
|
42253
|
-
/**
|
|
42254
|
-
* @param {string} zName
|
|
42255
|
-
* @param {number} flags
|
|
42256
|
-
* @param {DataView} pResOut
|
|
42257
|
-
* @returns {number}
|
|
42258
|
-
*/
|
|
42259
|
-
jAccess(zName, flags, pResOut) {
|
|
42260
|
-
try {
|
|
42261
|
-
const url = new URL(zName, 'file://');
|
|
42262
|
-
const path = url.pathname;
|
|
42263
|
-
pResOut.setInt32(0, this.accessiblePaths.has(path) ? 1 : 0, true);
|
|
42264
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
42265
|
-
} catch (e) {
|
|
42266
|
-
this.lastError = e;
|
|
42267
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR_ACCESS;
|
|
42268
|
-
}
|
|
42269
|
-
}
|
|
42270
|
-
|
|
42271
|
-
/**
|
|
42272
|
-
* @param {number} fileId
|
|
42273
|
-
* @returns {number}
|
|
42274
|
-
*/
|
|
42275
|
-
jClose(fileId) {
|
|
42276
|
-
try {
|
|
42277
|
-
const file = this.mapIdToFile.get(fileId);
|
|
42278
|
-
this.mapIdToFile.delete(fileId);
|
|
42279
|
-
|
|
42280
|
-
if (file?.flags & _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_MAIN_DB) {
|
|
42281
|
-
if (file.persistentFile?.handleLockReleaser) {
|
|
42282
|
-
this.#releaseAccessHandle(file);
|
|
42283
|
-
}
|
|
42284
|
-
} else if (file?.flags & _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_DELETEONCLOSE) {
|
|
42285
|
-
file.accessHandle.truncate(0);
|
|
42286
|
-
this.accessiblePaths.delete(file.path);
|
|
42287
|
-
if (!this.persistentFiles.has(file.path)) {
|
|
42288
|
-
this.boundAccessHandles.delete(file.path);
|
|
42289
|
-
this.unboundAccessHandles.add(file.accessHandle);
|
|
42290
|
-
}
|
|
42291
|
-
}
|
|
42292
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
42293
|
-
} catch (e) {
|
|
42294
|
-
this.lastError = e;
|
|
42295
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR_CLOSE;
|
|
42296
|
-
}
|
|
42297
|
-
}
|
|
42298
|
-
|
|
42299
|
-
/**
|
|
42300
|
-
* @param {number} fileId
|
|
42301
|
-
* @param {Uint8Array} pData
|
|
42302
|
-
* @param {number} iOffset
|
|
42303
|
-
* @returns {number}
|
|
42304
|
-
*/
|
|
42305
|
-
jRead(fileId, pData, iOffset) {
|
|
42306
|
-
try {
|
|
42307
|
-
const file = this.mapIdToFile.get(fileId);
|
|
42308
|
-
|
|
42309
|
-
// On Chrome (at least), passing pData to accessHandle.read() is
|
|
42310
|
-
// an error because pData is a Proxy of a Uint8Array. Calling
|
|
42311
|
-
// subarray() produces a real Uint8Array and that works.
|
|
42312
|
-
const accessHandle = file.accessHandle || file.persistentFile.accessHandle;
|
|
42313
|
-
const bytesRead = accessHandle.read(pData.subarray(), { at: iOffset });
|
|
42314
|
-
|
|
42315
|
-
// Opening a database file performs one read without a xLock call.
|
|
42316
|
-
if ((file.flags & _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OPEN_MAIN_DB) && !file.persistentFile.isFileLocked) {
|
|
42317
|
-
this.#releaseAccessHandle(file);
|
|
42318
|
-
}
|
|
42319
|
-
|
|
42320
|
-
if (bytesRead < pData.byteLength) {
|
|
42321
|
-
pData.fill(0, bytesRead);
|
|
42322
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR_SHORT_READ;
|
|
42323
|
-
}
|
|
42324
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
42325
|
-
} catch (e) {
|
|
42326
|
-
this.lastError = e;
|
|
42327
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR_READ;
|
|
42328
|
-
}
|
|
42329
|
-
}
|
|
42330
|
-
|
|
42331
|
-
/**
|
|
42332
|
-
* @param {number} fileId
|
|
42333
|
-
* @param {Uint8Array} pData
|
|
42334
|
-
* @param {number} iOffset
|
|
42335
|
-
* @returns {number}
|
|
42336
|
-
*/
|
|
42337
|
-
jWrite(fileId, pData, iOffset) {
|
|
42338
|
-
try {
|
|
42339
|
-
const file = this.mapIdToFile.get(fileId);
|
|
42340
|
-
|
|
42341
|
-
// On Chrome (at least), passing pData to accessHandle.write() is
|
|
42342
|
-
// an error because pData is a Proxy of a Uint8Array. Calling
|
|
42343
|
-
// subarray() produces a real Uint8Array and that works.
|
|
42344
|
-
const accessHandle = file.accessHandle || file.persistentFile.accessHandle;
|
|
42345
|
-
const nBytes = accessHandle.write(pData.subarray(), { at: iOffset });
|
|
42346
|
-
if (nBytes !== pData.byteLength) throw new Error('short write');
|
|
42347
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
42348
|
-
} catch (e) {
|
|
42349
|
-
this.lastError = e;
|
|
42350
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR_WRITE;
|
|
42351
|
-
}
|
|
42352
|
-
}
|
|
42353
|
-
|
|
42354
|
-
/**
|
|
42355
|
-
* @param {number} fileId
|
|
42356
|
-
* @param {number} iSize
|
|
42357
|
-
* @returns {number}
|
|
42358
|
-
*/
|
|
42359
|
-
jTruncate(fileId, iSize) {
|
|
42360
|
-
try {
|
|
42361
|
-
const file = this.mapIdToFile.get(fileId);
|
|
42362
|
-
const accessHandle = file.accessHandle || file.persistentFile.accessHandle;
|
|
42363
|
-
accessHandle.truncate(iSize);
|
|
42364
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
42365
|
-
} catch (e) {
|
|
42366
|
-
this.lastError = e;
|
|
42367
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR_TRUNCATE;
|
|
42368
|
-
}
|
|
42369
|
-
}
|
|
42370
|
-
|
|
42371
|
-
/**
|
|
42372
|
-
* @param {number} fileId
|
|
42373
|
-
* @param {number} flags
|
|
42374
|
-
* @returns {number}
|
|
42375
|
-
*/
|
|
42376
|
-
jSync(fileId, flags) {
|
|
42377
|
-
try {
|
|
42378
|
-
const file = this.mapIdToFile.get(fileId);
|
|
42379
|
-
const accessHandle = file.accessHandle || file.persistentFile.accessHandle;
|
|
42380
|
-
accessHandle.flush();
|
|
42381
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
42382
|
-
} catch (e) {
|
|
42383
|
-
this.lastError = e;
|
|
42384
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR_FSYNC;
|
|
42385
|
-
}
|
|
42386
|
-
}
|
|
42387
|
-
|
|
42388
|
-
/**
|
|
42389
|
-
* @param {number} fileId
|
|
42390
|
-
* @param {DataView} pSize64
|
|
42391
|
-
* @returns {number}
|
|
42392
|
-
*/
|
|
42393
|
-
jFileSize(fileId, pSize64) {
|
|
42394
|
-
try {
|
|
42395
|
-
const file = this.mapIdToFile.get(fileId);
|
|
42396
|
-
const accessHandle = file.accessHandle || file.persistentFile.accessHandle;
|
|
42397
|
-
const size = accessHandle.getSize();
|
|
42398
|
-
pSize64.setBigInt64(0, BigInt(size), true);
|
|
42399
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
42400
|
-
} catch (e) {
|
|
42401
|
-
this.lastError = e;
|
|
42402
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR_FSTAT;
|
|
42403
|
-
}
|
|
42404
|
-
}
|
|
42405
|
-
|
|
42406
|
-
/**
|
|
42407
|
-
* @param {number} fileId
|
|
42408
|
-
* @param {number} lockType
|
|
42409
|
-
* @returns {number}
|
|
42410
|
-
*/
|
|
42411
|
-
jLock(fileId, lockType) {
|
|
42412
|
-
const file = this.mapIdToFile.get(fileId);
|
|
42413
|
-
if (file.persistentFile.isRequestInProgress) {
|
|
42414
|
-
file.persistentFile.isLockBusy = true;
|
|
42415
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_BUSY;
|
|
42416
|
-
}
|
|
42417
|
-
|
|
42418
|
-
file.persistentFile.isFileLocked = true;
|
|
42419
|
-
if (!file.persistentFile.handleLockReleaser) {
|
|
42420
|
-
// Start listening for notifications from other connections.
|
|
42421
|
-
// This is before we actually get access handles, but waiting to
|
|
42422
|
-
// listen until then allows a race condition where notifications
|
|
42423
|
-
// are missed.
|
|
42424
|
-
file.persistentFile.handleRequestChannel.onmessage = () => {
|
|
42425
|
-
this.log?.(`received notification for ${file.path}`);
|
|
42426
|
-
if (file.persistentFile.isFileLocked) {
|
|
42427
|
-
// We're still using the access handle, so mark it to be
|
|
42428
|
-
// released when we're done.
|
|
42429
|
-
file.persistentFile.isHandleRequested = true;
|
|
42430
|
-
} else {
|
|
42431
|
-
// Release the access handles immediately.
|
|
42432
|
-
this.#releaseAccessHandle(file);
|
|
42433
|
-
}
|
|
42434
|
-
file.persistentFile.handleRequestChannel.onmessage = null;
|
|
42435
|
-
};
|
|
42436
|
-
|
|
42437
|
-
this.#requestAccessHandle(file);
|
|
42438
|
-
this.log?.('returning SQLITE_BUSY');
|
|
42439
|
-
file.persistentFile.isLockBusy = true;
|
|
42440
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_BUSY;
|
|
42441
|
-
}
|
|
42442
|
-
file.persistentFile.isLockBusy = false;
|
|
42443
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
42444
|
-
}
|
|
42445
|
-
|
|
42446
|
-
/**
|
|
42447
|
-
* @param {number} fileId
|
|
42448
|
-
* @param {number} lockType
|
|
42449
|
-
* @returns {number}
|
|
42450
|
-
*/
|
|
42451
|
-
jUnlock(fileId, lockType) {
|
|
42452
|
-
const file = this.mapIdToFile.get(fileId);
|
|
42453
|
-
if (lockType === _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_LOCK_NONE) {
|
|
42454
|
-
// Don't change any state if this unlock is because xLock returned
|
|
42455
|
-
// SQLITE_BUSY.
|
|
42456
|
-
if (!file.persistentFile.isLockBusy) {
|
|
42457
|
-
if (file.persistentFile.isHandleRequested) {
|
|
42458
|
-
// Another connection wants the access handle.
|
|
42459
|
-
this.#releaseAccessHandle(file);
|
|
42460
|
-
this.isHandleRequested = false;
|
|
42461
|
-
}
|
|
42462
|
-
file.persistentFile.isFileLocked = false;
|
|
42463
|
-
}
|
|
42464
|
-
}
|
|
42465
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK;
|
|
42466
|
-
}
|
|
42467
|
-
|
|
42468
|
-
/**
|
|
42469
|
-
* @param {number} fileId
|
|
42470
|
-
* @param {number} op
|
|
42471
|
-
* @param {DataView} pArg
|
|
42472
|
-
* @returns {number|Promise<number>}
|
|
42473
|
-
*/
|
|
42474
|
-
jFileControl(fileId, op, pArg) {
|
|
42475
|
-
try {
|
|
42476
|
-
const file = this.mapIdToFile.get(fileId);
|
|
42477
|
-
switch (op) {
|
|
42478
|
-
case _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_FCNTL_PRAGMA:
|
|
42479
|
-
const key = extractString(pArg, 4);
|
|
42480
|
-
const value = extractString(pArg, 8);
|
|
42481
|
-
this.log?.('xFileControl', file.path, 'PRAGMA', key, value);
|
|
42482
|
-
switch (key.toLowerCase()) {
|
|
42483
|
-
case 'journal_mode':
|
|
42484
|
-
if (value &&
|
|
42485
|
-
!['off', 'memory', 'delete', 'wal'].includes(value.toLowerCase())) {
|
|
42486
|
-
throw new Error('journal_mode must be "off", "memory", "delete", or "wal"');
|
|
42487
|
-
}
|
|
42488
|
-
break;
|
|
42489
|
-
}
|
|
42490
|
-
break;
|
|
42491
|
-
}
|
|
42492
|
-
} catch (e) {
|
|
42493
|
-
this.lastError = e;
|
|
42494
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_IOERR;
|
|
42495
|
-
}
|
|
42496
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_NOTFOUND;
|
|
42497
|
-
}
|
|
42498
|
-
|
|
42499
|
-
/**
|
|
42500
|
-
* @param {Uint8Array} zBuf
|
|
42501
|
-
* @returns
|
|
42502
|
-
*/
|
|
42503
|
-
jGetLastError(zBuf) {
|
|
42504
|
-
if (this.lastError) {
|
|
42505
|
-
console.error(this.lastError);
|
|
42506
|
-
const outputArray = zBuf.subarray(0, zBuf.byteLength - 1);
|
|
42507
|
-
const { written } = new TextEncoder().encodeInto(this.lastError.message, outputArray);
|
|
42508
|
-
zBuf[written] = 0;
|
|
42509
|
-
}
|
|
42510
|
-
return _VFS_js__WEBPACK_IMPORTED_MODULE_1__.SQLITE_OK
|
|
42511
|
-
}
|
|
42512
|
-
|
|
42513
|
-
/**
|
|
42514
|
-
* @param {FileSystemFileHandle} fileHandle
|
|
42515
|
-
* @returns {Promise<PersistentFile>}
|
|
42516
|
-
*/
|
|
42517
|
-
async #createPersistentFile(fileHandle) {
|
|
42518
|
-
const persistentFile = new PersistentFile(fileHandle);
|
|
42519
|
-
const root = await navigator.storage.getDirectory();
|
|
42520
|
-
const relativePath = await root.resolve(fileHandle);
|
|
42521
|
-
const path = `/${relativePath.join('/')}`;
|
|
42522
|
-
persistentFile.handleRequestChannel = new BroadcastChannel(`ahp:${path}`);
|
|
42523
|
-
this.persistentFiles.set(path, persistentFile);
|
|
42524
|
-
|
|
42525
|
-
const f = await fileHandle.getFile();
|
|
42526
|
-
if (f.size) {
|
|
42527
|
-
this.accessiblePaths.add(path);
|
|
42528
|
-
}
|
|
42529
|
-
return persistentFile;
|
|
42530
|
-
}
|
|
42531
|
-
|
|
42532
|
-
/**
|
|
42533
|
-
* @param {File} file
|
|
42534
|
-
*/
|
|
42535
|
-
#requestAccessHandle(file) {
|
|
42536
|
-
console.assert(!file.persistentFile.handleLockReleaser);
|
|
42537
|
-
if (!file.persistentFile.isRequestInProgress) {
|
|
42538
|
-
file.persistentFile.isRequestInProgress = true;
|
|
42539
|
-
this._module.retryOps.push((async () => {
|
|
42540
|
-
// Acquire the Web Lock.
|
|
42541
|
-
file.persistentFile.handleLockReleaser = await this.#acquireLock(file.persistentFile);
|
|
42542
|
-
|
|
42543
|
-
// Get access handles for the database and releated files in parallel.
|
|
42544
|
-
this.log?.(`creating access handles for ${file.path}`)
|
|
42545
|
-
await Promise.all(DB_RELATED_FILE_SUFFIXES.map(async suffix => {
|
|
42546
|
-
const persistentFile = this.persistentFiles.get(file.path + suffix);
|
|
42547
|
-
if (persistentFile) {
|
|
42548
|
-
persistentFile.accessHandle =
|
|
42549
|
-
await persistentFile.fileHandle.createSyncAccessHandle();
|
|
42550
|
-
}
|
|
42551
|
-
}));
|
|
42552
|
-
file.persistentFile.isRequestInProgress = false;
|
|
42553
|
-
})());
|
|
42554
|
-
return this._module.retryOps.at(-1);
|
|
42555
|
-
}
|
|
42556
|
-
return Promise.resolve();
|
|
42557
|
-
}
|
|
42558
|
-
|
|
42559
|
-
/**
|
|
42560
|
-
* @param {File} file
|
|
42561
|
-
*/
|
|
42562
|
-
async #releaseAccessHandle(file) {
|
|
42563
|
-
DB_RELATED_FILE_SUFFIXES.forEach(async suffix => {
|
|
42564
|
-
const persistentFile = this.persistentFiles.get(file.path + suffix);
|
|
42565
|
-
if (persistentFile) {
|
|
42566
|
-
persistentFile.accessHandle?.close();
|
|
42567
|
-
persistentFile.accessHandle = null;
|
|
42568
|
-
}
|
|
42569
|
-
});
|
|
42570
|
-
this.log?.(`access handles closed for ${file.path}`)
|
|
42571
|
-
|
|
42572
|
-
file.persistentFile.handleLockReleaser?.();
|
|
42573
|
-
file.persistentFile.handleLockReleaser = null;
|
|
42574
|
-
this.log?.(`lock released for ${file.path}`)
|
|
42575
|
-
}
|
|
42576
|
-
|
|
42577
|
-
/**
|
|
42578
|
-
* @param {PersistentFile} persistentFile
|
|
42579
|
-
* @returns {Promise<function>} lock releaser
|
|
42580
|
-
*/
|
|
42581
|
-
#acquireLock(persistentFile) {
|
|
42582
|
-
return new Promise(resolve => {
|
|
42583
|
-
// Tell other connections we want the access handle.
|
|
42584
|
-
const lockName = persistentFile.handleRequestChannel.name;
|
|
42585
|
-
const notify = () => {
|
|
42586
|
-
this.log?.(`notifying for ${lockName}`);
|
|
42587
|
-
persistentFile.handleRequestChannel.postMessage(null);
|
|
42588
|
-
}
|
|
42589
|
-
const notifyId = setInterval(notify, LOCK_NOTIFY_INTERVAL);
|
|
42590
|
-
setTimeout(notify);
|
|
42591
|
-
|
|
42592
|
-
this.log?.(`lock requested: ${lockName}`)
|
|
42593
|
-
navigator.locks.request(lockName, lock => {
|
|
42594
|
-
// We have the lock. Stop asking other connections for it.
|
|
42595
|
-
this.log?.(`lock acquired: ${lockName}`, lock);
|
|
42596
|
-
clearInterval(notifyId);
|
|
42597
|
-
return new Promise(resolve);
|
|
42598
|
-
});
|
|
42599
|
-
});
|
|
42600
|
-
}
|
|
42601
|
-
}
|
|
42602
|
-
|
|
42603
|
-
function extractString(dataView, offset) {
|
|
42604
|
-
const p = dataView.getUint32(offset, true);
|
|
42605
|
-
if (p) {
|
|
42606
|
-
const chars = new Uint8Array(dataView.buffer, p);
|
|
42607
|
-
return new TextDecoder().decode(chars.subarray(0, chars.indexOf(0)));
|
|
42608
|
-
}
|
|
42609
|
-
return null;
|
|
42610
|
-
}
|
|
42611
|
-
|
|
42612
|
-
/***/ }),
|
|
42613
|
-
|
|
42614
|
-
/***/ "./node_modules/@journeyapps/wa-sqlite/src/sqlite-constants.js":
|
|
42615
|
-
/*!*********************************************************************!*\
|
|
42616
|
-
!*** ./node_modules/@journeyapps/wa-sqlite/src/sqlite-constants.js ***!
|
|
42617
|
-
\*********************************************************************/
|
|
42618
|
-
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
42619
|
-
|
|
42620
|
-
"use strict";
|
|
42621
|
-
__webpack_require__.r(__webpack_exports__);
|
|
42622
|
-
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
42623
|
-
/* harmony export */ SQLITE_ABORT: () => (/* binding */ SQLITE_ABORT),
|
|
42624
|
-
/* harmony export */ SQLITE_ACCESS_EXISTS: () => (/* binding */ SQLITE_ACCESS_EXISTS),
|
|
42625
|
-
/* harmony export */ SQLITE_ACCESS_READ: () => (/* binding */ SQLITE_ACCESS_READ),
|
|
42626
|
-
/* harmony export */ SQLITE_ACCESS_READWRITE: () => (/* binding */ SQLITE_ACCESS_READWRITE),
|
|
42627
|
-
/* harmony export */ SQLITE_ALTER_TABLE: () => (/* binding */ SQLITE_ALTER_TABLE),
|
|
42628
|
-
/* harmony export */ SQLITE_ANALYZE: () => (/* binding */ SQLITE_ANALYZE),
|
|
42629
|
-
/* harmony export */ SQLITE_ATTACH: () => (/* binding */ SQLITE_ATTACH),
|
|
42630
|
-
/* harmony export */ SQLITE_AUTH: () => (/* binding */ SQLITE_AUTH),
|
|
42631
|
-
/* harmony export */ SQLITE_BLOB: () => (/* binding */ SQLITE_BLOB),
|
|
42632
|
-
/* harmony export */ SQLITE_BUSY: () => (/* binding */ SQLITE_BUSY),
|
|
42633
|
-
/* harmony export */ SQLITE_CANTOPEN: () => (/* binding */ SQLITE_CANTOPEN),
|
|
42634
|
-
/* harmony export */ SQLITE_CONSTRAINT: () => (/* binding */ SQLITE_CONSTRAINT),
|
|
42635
|
-
/* harmony export */ SQLITE_CONSTRAINT_CHECK: () => (/* binding */ SQLITE_CONSTRAINT_CHECK),
|
|
42636
|
-
/* harmony export */ SQLITE_CONSTRAINT_COMMITHOOK: () => (/* binding */ SQLITE_CONSTRAINT_COMMITHOOK),
|
|
42637
|
-
/* harmony export */ SQLITE_CONSTRAINT_FOREIGNKEY: () => (/* binding */ SQLITE_CONSTRAINT_FOREIGNKEY),
|
|
42638
|
-
/* harmony export */ SQLITE_CONSTRAINT_FUNCTION: () => (/* binding */ SQLITE_CONSTRAINT_FUNCTION),
|
|
42639
|
-
/* harmony export */ SQLITE_CONSTRAINT_NOTNULL: () => (/* binding */ SQLITE_CONSTRAINT_NOTNULL),
|
|
42640
|
-
/* harmony export */ SQLITE_CONSTRAINT_PINNED: () => (/* binding */ SQLITE_CONSTRAINT_PINNED),
|
|
42641
|
-
/* harmony export */ SQLITE_CONSTRAINT_PRIMARYKEY: () => (/* binding */ SQLITE_CONSTRAINT_PRIMARYKEY),
|
|
42642
|
-
/* harmony export */ SQLITE_CONSTRAINT_ROWID: () => (/* binding */ SQLITE_CONSTRAINT_ROWID),
|
|
42643
|
-
/* harmony export */ SQLITE_CONSTRAINT_TRIGGER: () => (/* binding */ SQLITE_CONSTRAINT_TRIGGER),
|
|
42644
|
-
/* harmony export */ SQLITE_CONSTRAINT_UNIQUE: () => (/* binding */ SQLITE_CONSTRAINT_UNIQUE),
|
|
42645
|
-
/* harmony export */ SQLITE_CONSTRAINT_VTAB: () => (/* binding */ SQLITE_CONSTRAINT_VTAB),
|
|
42646
|
-
/* harmony export */ SQLITE_COPY: () => (/* binding */ SQLITE_COPY),
|
|
42647
|
-
/* harmony export */ SQLITE_CORRUPT: () => (/* binding */ SQLITE_CORRUPT),
|
|
42648
|
-
/* harmony export */ SQLITE_CREATE_INDEX: () => (/* binding */ SQLITE_CREATE_INDEX),
|
|
42649
|
-
/* harmony export */ SQLITE_CREATE_TABLE: () => (/* binding */ SQLITE_CREATE_TABLE),
|
|
42650
|
-
/* harmony export */ SQLITE_CREATE_TEMP_INDEX: () => (/* binding */ SQLITE_CREATE_TEMP_INDEX),
|
|
42651
|
-
/* harmony export */ SQLITE_CREATE_TEMP_TABLE: () => (/* binding */ SQLITE_CREATE_TEMP_TABLE),
|
|
42652
|
-
/* harmony export */ SQLITE_CREATE_TEMP_TRIGGER: () => (/* binding */ SQLITE_CREATE_TEMP_TRIGGER),
|
|
42653
|
-
/* harmony export */ SQLITE_CREATE_TEMP_VIEW: () => (/* binding */ SQLITE_CREATE_TEMP_VIEW),
|
|
42654
|
-
/* harmony export */ SQLITE_CREATE_TRIGGER: () => (/* binding */ SQLITE_CREATE_TRIGGER),
|
|
42655
|
-
/* harmony export */ SQLITE_CREATE_VIEW: () => (/* binding */ SQLITE_CREATE_VIEW),
|
|
42656
|
-
/* harmony export */ SQLITE_CREATE_VTABLE: () => (/* binding */ SQLITE_CREATE_VTABLE),
|
|
42657
|
-
/* harmony export */ SQLITE_DELETE: () => (/* binding */ SQLITE_DELETE),
|
|
42658
|
-
/* harmony export */ SQLITE_DENY: () => (/* binding */ SQLITE_DENY),
|
|
42659
|
-
/* harmony export */ SQLITE_DETACH: () => (/* binding */ SQLITE_DETACH),
|
|
42660
|
-
/* harmony export */ SQLITE_DETERMINISTIC: () => (/* binding */ SQLITE_DETERMINISTIC),
|
|
42661
|
-
/* harmony export */ SQLITE_DIRECTONLY: () => (/* binding */ SQLITE_DIRECTONLY),
|
|
42662
|
-
/* harmony export */ SQLITE_DONE: () => (/* binding */ SQLITE_DONE),
|
|
42663
|
-
/* harmony export */ SQLITE_DROP_INDEX: () => (/* binding */ SQLITE_DROP_INDEX),
|
|
42664
|
-
/* harmony export */ SQLITE_DROP_TABLE: () => (/* binding */ SQLITE_DROP_TABLE),
|
|
42665
|
-
/* harmony export */ SQLITE_DROP_TEMP_INDEX: () => (/* binding */ SQLITE_DROP_TEMP_INDEX),
|
|
42666
|
-
/* harmony export */ SQLITE_DROP_TEMP_TABLE: () => (/* binding */ SQLITE_DROP_TEMP_TABLE),
|
|
42667
|
-
/* harmony export */ SQLITE_DROP_TEMP_TRIGGER: () => (/* binding */ SQLITE_DROP_TEMP_TRIGGER),
|
|
42668
|
-
/* harmony export */ SQLITE_DROP_TEMP_VIEW: () => (/* binding */ SQLITE_DROP_TEMP_VIEW),
|
|
42669
|
-
/* harmony export */ SQLITE_DROP_TRIGGER: () => (/* binding */ SQLITE_DROP_TRIGGER),
|
|
42670
|
-
/* harmony export */ SQLITE_DROP_VIEW: () => (/* binding */ SQLITE_DROP_VIEW),
|
|
42671
|
-
/* harmony export */ SQLITE_DROP_VTABLE: () => (/* binding */ SQLITE_DROP_VTABLE),
|
|
42672
|
-
/* harmony export */ SQLITE_EMPTY: () => (/* binding */ SQLITE_EMPTY),
|
|
42673
|
-
/* harmony export */ SQLITE_ERROR: () => (/* binding */ SQLITE_ERROR),
|
|
42674
|
-
/* harmony export */ SQLITE_FCNTL_BEGIN_ATOMIC_WRITE: () => (/* binding */ SQLITE_FCNTL_BEGIN_ATOMIC_WRITE),
|
|
42675
|
-
/* harmony export */ SQLITE_FCNTL_BUSYHANDLER: () => (/* binding */ SQLITE_FCNTL_BUSYHANDLER),
|
|
42676
|
-
/* harmony export */ SQLITE_FCNTL_CHUNK_SIZE: () => (/* binding */ SQLITE_FCNTL_CHUNK_SIZE),
|
|
42677
|
-
/* harmony export */ SQLITE_FCNTL_CKPT_DONE: () => (/* binding */ SQLITE_FCNTL_CKPT_DONE),
|
|
42678
|
-
/* harmony export */ SQLITE_FCNTL_CKPT_START: () => (/* binding */ SQLITE_FCNTL_CKPT_START),
|
|
42679
|
-
/* harmony export */ SQLITE_FCNTL_COMMIT_ATOMIC_WRITE: () => (/* binding */ SQLITE_FCNTL_COMMIT_ATOMIC_WRITE),
|
|
42680
|
-
/* harmony export */ SQLITE_FCNTL_COMMIT_PHASETWO: () => (/* binding */ SQLITE_FCNTL_COMMIT_PHASETWO),
|
|
42681
|
-
/* harmony export */ SQLITE_FCNTL_DATA_VERSION: () => (/* binding */ SQLITE_FCNTL_DATA_VERSION),
|
|
42682
|
-
/* harmony export */ SQLITE_FCNTL_FILE_POINTER: () => (/* binding */ SQLITE_FCNTL_FILE_POINTER),
|
|
42683
|
-
/* harmony export */ SQLITE_FCNTL_GET_LOCKPROXYFILE: () => (/* binding */ SQLITE_FCNTL_GET_LOCKPROXYFILE),
|
|
42684
|
-
/* harmony export */ SQLITE_FCNTL_HAS_MOVED: () => (/* binding */ SQLITE_FCNTL_HAS_MOVED),
|
|
42685
|
-
/* harmony export */ SQLITE_FCNTL_JOURNAL_POINTER: () => (/* binding */ SQLITE_FCNTL_JOURNAL_POINTER),
|
|
42686
|
-
/* harmony export */ SQLITE_FCNTL_LAST_ERRNO: () => (/* binding */ SQLITE_FCNTL_LAST_ERRNO),
|
|
42687
|
-
/* harmony export */ SQLITE_FCNTL_LOCKSTATE: () => (/* binding */ SQLITE_FCNTL_LOCKSTATE),
|
|
42688
|
-
/* harmony export */ SQLITE_FCNTL_LOCK_TIMEOUT: () => (/* binding */ SQLITE_FCNTL_LOCK_TIMEOUT),
|
|
42689
|
-
/* harmony export */ SQLITE_FCNTL_MMAP_SIZE: () => (/* binding */ SQLITE_FCNTL_MMAP_SIZE),
|
|
42690
|
-
/* harmony export */ SQLITE_FCNTL_OVERWRITE: () => (/* binding */ SQLITE_FCNTL_OVERWRITE),
|
|
42691
|
-
/* harmony export */ SQLITE_FCNTL_PDB: () => (/* binding */ SQLITE_FCNTL_PDB),
|
|
42692
|
-
/* harmony export */ SQLITE_FCNTL_PERSIST_WAL: () => (/* binding */ SQLITE_FCNTL_PERSIST_WAL),
|
|
42693
|
-
/* harmony export */ SQLITE_FCNTL_POWERSAFE_OVERWRITE: () => (/* binding */ SQLITE_FCNTL_POWERSAFE_OVERWRITE),
|
|
42694
|
-
/* harmony export */ SQLITE_FCNTL_PRAGMA: () => (/* binding */ SQLITE_FCNTL_PRAGMA),
|
|
42695
|
-
/* harmony export */ SQLITE_FCNTL_RBU: () => (/* binding */ SQLITE_FCNTL_RBU),
|
|
42696
|
-
/* harmony export */ SQLITE_FCNTL_RESERVE_BYTES: () => (/* binding */ SQLITE_FCNTL_RESERVE_BYTES),
|
|
42697
|
-
/* harmony export */ SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE: () => (/* binding */ SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE),
|
|
42698
|
-
/* harmony export */ SQLITE_FCNTL_SET_LOCKPROXYFILE: () => (/* binding */ SQLITE_FCNTL_SET_LOCKPROXYFILE),
|
|
42699
|
-
/* harmony export */ SQLITE_FCNTL_SIZE_HINT: () => (/* binding */ SQLITE_FCNTL_SIZE_HINT),
|
|
42700
|
-
/* harmony export */ SQLITE_FCNTL_SIZE_LIMIT: () => (/* binding */ SQLITE_FCNTL_SIZE_LIMIT),
|
|
42701
|
-
/* harmony export */ SQLITE_FCNTL_SYNC: () => (/* binding */ SQLITE_FCNTL_SYNC),
|
|
42702
|
-
/* harmony export */ SQLITE_FCNTL_SYNC_OMITTED: () => (/* binding */ SQLITE_FCNTL_SYNC_OMITTED),
|
|
42703
|
-
/* harmony export */ SQLITE_FCNTL_TEMPFILENAME: () => (/* binding */ SQLITE_FCNTL_TEMPFILENAME),
|
|
42704
|
-
/* harmony export */ SQLITE_FCNTL_TRACE: () => (/* binding */ SQLITE_FCNTL_TRACE),
|
|
42705
|
-
/* harmony export */ SQLITE_FCNTL_VFSNAME: () => (/* binding */ SQLITE_FCNTL_VFSNAME),
|
|
42706
|
-
/* harmony export */ SQLITE_FCNTL_VFS_POINTER: () => (/* binding */ SQLITE_FCNTL_VFS_POINTER),
|
|
42707
|
-
/* harmony export */ SQLITE_FCNTL_WAL_BLOCK: () => (/* binding */ SQLITE_FCNTL_WAL_BLOCK),
|
|
42708
|
-
/* harmony export */ SQLITE_FCNTL_WIN32_AV_RETRY: () => (/* binding */ SQLITE_FCNTL_WIN32_AV_RETRY),
|
|
42709
|
-
/* harmony export */ SQLITE_FCNTL_WIN32_GET_HANDLE: () => (/* binding */ SQLITE_FCNTL_WIN32_GET_HANDLE),
|
|
42710
|
-
/* harmony export */ SQLITE_FCNTL_WIN32_SET_HANDLE: () => (/* binding */ SQLITE_FCNTL_WIN32_SET_HANDLE),
|
|
42711
|
-
/* harmony export */ SQLITE_FCNTL_ZIPVFS: () => (/* binding */ SQLITE_FCNTL_ZIPVFS),
|
|
42712
|
-
/* harmony export */ SQLITE_FLOAT: () => (/* binding */ SQLITE_FLOAT),
|
|
42713
|
-
/* harmony export */ SQLITE_FORMAT: () => (/* binding */ SQLITE_FORMAT),
|
|
42714
|
-
/* harmony export */ SQLITE_FULL: () => (/* binding */ SQLITE_FULL),
|
|
42715
|
-
/* harmony export */ SQLITE_FUNCTION: () => (/* binding */ SQLITE_FUNCTION),
|
|
42716
|
-
/* harmony export */ SQLITE_IGNORE: () => (/* binding */ SQLITE_IGNORE),
|
|
42717
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_EQ: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_EQ),
|
|
42718
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_FUNCTION: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_FUNCTION),
|
|
42719
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_GE: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_GE),
|
|
42720
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_GLOB: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_GLOB),
|
|
42721
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_GT: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_GT),
|
|
42722
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_IS: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_IS),
|
|
42723
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_ISNOT: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_ISNOT),
|
|
42724
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_ISNOTNULL: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_ISNOTNULL),
|
|
42725
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_ISNULL: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_ISNULL),
|
|
42726
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_LE: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_LE),
|
|
42727
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_LIKE: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_LIKE),
|
|
42728
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_LT: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_LT),
|
|
42729
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_MATCH: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_MATCH),
|
|
42730
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_NE: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_NE),
|
|
42731
|
-
/* harmony export */ SQLITE_INDEX_CONSTRAINT_REGEXP: () => (/* binding */ SQLITE_INDEX_CONSTRAINT_REGEXP),
|
|
42732
|
-
/* harmony export */ SQLITE_INDEX_SCAN_UNIQUE: () => (/* binding */ SQLITE_INDEX_SCAN_UNIQUE),
|
|
42733
|
-
/* harmony export */ SQLITE_INNOCUOUS: () => (/* binding */ SQLITE_INNOCUOUS),
|
|
42734
|
-
/* harmony export */ SQLITE_INSERT: () => (/* binding */ SQLITE_INSERT),
|
|
42735
|
-
/* harmony export */ SQLITE_INTEGER: () => (/* binding */ SQLITE_INTEGER),
|
|
42736
|
-
/* harmony export */ SQLITE_INTERNAL: () => (/* binding */ SQLITE_INTERNAL),
|
|
42737
|
-
/* harmony export */ SQLITE_INTERRUPT: () => (/* binding */ SQLITE_INTERRUPT),
|
|
42738
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC: () => (/* binding */ SQLITE_IOCAP_ATOMIC),
|
|
42739
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC16K: () => (/* binding */ SQLITE_IOCAP_ATOMIC16K),
|
|
42740
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC1K: () => (/* binding */ SQLITE_IOCAP_ATOMIC1K),
|
|
42741
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC2K: () => (/* binding */ SQLITE_IOCAP_ATOMIC2K),
|
|
42742
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC32K: () => (/* binding */ SQLITE_IOCAP_ATOMIC32K),
|
|
42743
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC4K: () => (/* binding */ SQLITE_IOCAP_ATOMIC4K),
|
|
42744
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC512: () => (/* binding */ SQLITE_IOCAP_ATOMIC512),
|
|
42745
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC64K: () => (/* binding */ SQLITE_IOCAP_ATOMIC64K),
|
|
42746
|
-
/* harmony export */ SQLITE_IOCAP_ATOMIC8K: () => (/* binding */ SQLITE_IOCAP_ATOMIC8K),
|
|
42747
|
-
/* harmony export */ SQLITE_IOCAP_BATCH_ATOMIC: () => (/* binding */ SQLITE_IOCAP_BATCH_ATOMIC),
|
|
42748
|
-
/* harmony export */ SQLITE_IOCAP_IMMUTABLE: () => (/* binding */ SQLITE_IOCAP_IMMUTABLE),
|
|
42749
|
-
/* harmony export */ SQLITE_IOCAP_POWERSAFE_OVERWRITE: () => (/* binding */ SQLITE_IOCAP_POWERSAFE_OVERWRITE),
|
|
42750
|
-
/* harmony export */ SQLITE_IOCAP_SAFE_APPEND: () => (/* binding */ SQLITE_IOCAP_SAFE_APPEND),
|
|
42751
|
-
/* harmony export */ SQLITE_IOCAP_SEQUENTIAL: () => (/* binding */ SQLITE_IOCAP_SEQUENTIAL),
|
|
42752
|
-
/* harmony export */ SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN: () => (/* binding */ SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN),
|
|
42753
|
-
/* harmony export */ SQLITE_IOERR: () => (/* binding */ SQLITE_IOERR),
|
|
42754
|
-
/* harmony export */ SQLITE_IOERR_ACCESS: () => (/* binding */ SQLITE_IOERR_ACCESS),
|
|
42755
|
-
/* harmony export */ SQLITE_IOERR_BEGIN_ATOMIC: () => (/* binding */ SQLITE_IOERR_BEGIN_ATOMIC),
|
|
42756
|
-
/* harmony export */ SQLITE_IOERR_CHECKRESERVEDLOCK: () => (/* binding */ SQLITE_IOERR_CHECKRESERVEDLOCK),
|
|
42757
|
-
/* harmony export */ SQLITE_IOERR_CLOSE: () => (/* binding */ SQLITE_IOERR_CLOSE),
|
|
42758
|
-
/* harmony export */ SQLITE_IOERR_COMMIT_ATOMIC: () => (/* binding */ SQLITE_IOERR_COMMIT_ATOMIC),
|
|
42759
|
-
/* harmony export */ SQLITE_IOERR_DATA: () => (/* binding */ SQLITE_IOERR_DATA),
|
|
42760
|
-
/* harmony export */ SQLITE_IOERR_DELETE: () => (/* binding */ SQLITE_IOERR_DELETE),
|
|
42761
|
-
/* harmony export */ SQLITE_IOERR_DELETE_NOENT: () => (/* binding */ SQLITE_IOERR_DELETE_NOENT),
|
|
42762
|
-
/* harmony export */ SQLITE_IOERR_DIR_FSYNC: () => (/* binding */ SQLITE_IOERR_DIR_FSYNC),
|
|
42763
|
-
/* harmony export */ SQLITE_IOERR_FSTAT: () => (/* binding */ SQLITE_IOERR_FSTAT),
|
|
42764
|
-
/* harmony export */ SQLITE_IOERR_FSYNC: () => (/* binding */ SQLITE_IOERR_FSYNC),
|
|
42765
|
-
/* harmony export */ SQLITE_IOERR_GETTEMPPATH: () => (/* binding */ SQLITE_IOERR_GETTEMPPATH),
|
|
42766
|
-
/* harmony export */ SQLITE_IOERR_LOCK: () => (/* binding */ SQLITE_IOERR_LOCK),
|
|
42767
|
-
/* harmony export */ SQLITE_IOERR_NOMEM: () => (/* binding */ SQLITE_IOERR_NOMEM),
|
|
42768
|
-
/* harmony export */ SQLITE_IOERR_RDLOCK: () => (/* binding */ SQLITE_IOERR_RDLOCK),
|
|
42769
|
-
/* harmony export */ SQLITE_IOERR_READ: () => (/* binding */ SQLITE_IOERR_READ),
|
|
42770
|
-
/* harmony export */ SQLITE_IOERR_ROLLBACK_ATOMIC: () => (/* binding */ SQLITE_IOERR_ROLLBACK_ATOMIC),
|
|
42771
|
-
/* harmony export */ SQLITE_IOERR_SEEK: () => (/* binding */ SQLITE_IOERR_SEEK),
|
|
42772
|
-
/* harmony export */ SQLITE_IOERR_SHORT_READ: () => (/* binding */ SQLITE_IOERR_SHORT_READ),
|
|
42773
|
-
/* harmony export */ SQLITE_IOERR_TRUNCATE: () => (/* binding */ SQLITE_IOERR_TRUNCATE),
|
|
42774
|
-
/* harmony export */ SQLITE_IOERR_UNLOCK: () => (/* binding */ SQLITE_IOERR_UNLOCK),
|
|
42775
|
-
/* harmony export */ SQLITE_IOERR_VNODE: () => (/* binding */ SQLITE_IOERR_VNODE),
|
|
42776
|
-
/* harmony export */ SQLITE_IOERR_WRITE: () => (/* binding */ SQLITE_IOERR_WRITE),
|
|
42777
|
-
/* harmony export */ SQLITE_LIMIT_ATTACHED: () => (/* binding */ SQLITE_LIMIT_ATTACHED),
|
|
42778
|
-
/* harmony export */ SQLITE_LIMIT_COLUMN: () => (/* binding */ SQLITE_LIMIT_COLUMN),
|
|
42779
|
-
/* harmony export */ SQLITE_LIMIT_COMPOUND_SELECT: () => (/* binding */ SQLITE_LIMIT_COMPOUND_SELECT),
|
|
42780
|
-
/* harmony export */ SQLITE_LIMIT_EXPR_DEPTH: () => (/* binding */ SQLITE_LIMIT_EXPR_DEPTH),
|
|
42781
|
-
/* harmony export */ SQLITE_LIMIT_FUNCTION_ARG: () => (/* binding */ SQLITE_LIMIT_FUNCTION_ARG),
|
|
42782
|
-
/* harmony export */ SQLITE_LIMIT_LENGTH: () => (/* binding */ SQLITE_LIMIT_LENGTH),
|
|
42783
|
-
/* harmony export */ SQLITE_LIMIT_LIKE_PATTERN_LENGTH: () => (/* binding */ SQLITE_LIMIT_LIKE_PATTERN_LENGTH),
|
|
42784
|
-
/* harmony export */ SQLITE_LIMIT_SQL_LENGTH: () => (/* binding */ SQLITE_LIMIT_SQL_LENGTH),
|
|
42785
|
-
/* harmony export */ SQLITE_LIMIT_TRIGGER_DEPTH: () => (/* binding */ SQLITE_LIMIT_TRIGGER_DEPTH),
|
|
42786
|
-
/* harmony export */ SQLITE_LIMIT_VARIABLE_NUMBER: () => (/* binding */ SQLITE_LIMIT_VARIABLE_NUMBER),
|
|
42787
|
-
/* harmony export */ SQLITE_LIMIT_VDBE_OP: () => (/* binding */ SQLITE_LIMIT_VDBE_OP),
|
|
42788
|
-
/* harmony export */ SQLITE_LIMIT_WORKER_THREADS: () => (/* binding */ SQLITE_LIMIT_WORKER_THREADS),
|
|
42789
|
-
/* harmony export */ SQLITE_LOCKED: () => (/* binding */ SQLITE_LOCKED),
|
|
42790
|
-
/* harmony export */ SQLITE_LOCK_EXCLUSIVE: () => (/* binding */ SQLITE_LOCK_EXCLUSIVE),
|
|
42791
|
-
/* harmony export */ SQLITE_LOCK_NONE: () => (/* binding */ SQLITE_LOCK_NONE),
|
|
42792
|
-
/* harmony export */ SQLITE_LOCK_PENDING: () => (/* binding */ SQLITE_LOCK_PENDING),
|
|
42793
|
-
/* harmony export */ SQLITE_LOCK_RESERVED: () => (/* binding */ SQLITE_LOCK_RESERVED),
|
|
42794
|
-
/* harmony export */ SQLITE_LOCK_SHARED: () => (/* binding */ SQLITE_LOCK_SHARED),
|
|
42795
|
-
/* harmony export */ SQLITE_MISMATCH: () => (/* binding */ SQLITE_MISMATCH),
|
|
42796
|
-
/* harmony export */ SQLITE_MISUSE: () => (/* binding */ SQLITE_MISUSE),
|
|
42797
|
-
/* harmony export */ SQLITE_NOLFS: () => (/* binding */ SQLITE_NOLFS),
|
|
42798
|
-
/* harmony export */ SQLITE_NOMEM: () => (/* binding */ SQLITE_NOMEM),
|
|
42799
|
-
/* harmony export */ SQLITE_NOTADB: () => (/* binding */ SQLITE_NOTADB),
|
|
42800
|
-
/* harmony export */ SQLITE_NOTFOUND: () => (/* binding */ SQLITE_NOTFOUND),
|
|
42801
|
-
/* harmony export */ SQLITE_NOTICE: () => (/* binding */ SQLITE_NOTICE),
|
|
42802
|
-
/* harmony export */ SQLITE_NULL: () => (/* binding */ SQLITE_NULL),
|
|
42803
|
-
/* harmony export */ SQLITE_OK: () => (/* binding */ SQLITE_OK),
|
|
42804
|
-
/* harmony export */ SQLITE_OPEN_AUTOPROXY: () => (/* binding */ SQLITE_OPEN_AUTOPROXY),
|
|
42805
|
-
/* harmony export */ SQLITE_OPEN_CREATE: () => (/* binding */ SQLITE_OPEN_CREATE),
|
|
42806
|
-
/* harmony export */ SQLITE_OPEN_DELETEONCLOSE: () => (/* binding */ SQLITE_OPEN_DELETEONCLOSE),
|
|
42807
|
-
/* harmony export */ SQLITE_OPEN_EXCLUSIVE: () => (/* binding */ SQLITE_OPEN_EXCLUSIVE),
|
|
42808
|
-
/* harmony export */ SQLITE_OPEN_FULLMUTEX: () => (/* binding */ SQLITE_OPEN_FULLMUTEX),
|
|
42809
|
-
/* harmony export */ SQLITE_OPEN_MAIN_DB: () => (/* binding */ SQLITE_OPEN_MAIN_DB),
|
|
42810
|
-
/* harmony export */ SQLITE_OPEN_MAIN_JOURNAL: () => (/* binding */ SQLITE_OPEN_MAIN_JOURNAL),
|
|
42811
|
-
/* harmony export */ SQLITE_OPEN_MEMORY: () => (/* binding */ SQLITE_OPEN_MEMORY),
|
|
42812
|
-
/* harmony export */ SQLITE_OPEN_NOFOLLOW: () => (/* binding */ SQLITE_OPEN_NOFOLLOW),
|
|
42813
|
-
/* harmony export */ SQLITE_OPEN_NOMUTEX: () => (/* binding */ SQLITE_OPEN_NOMUTEX),
|
|
42814
|
-
/* harmony export */ SQLITE_OPEN_PRIVATECACHE: () => (/* binding */ SQLITE_OPEN_PRIVATECACHE),
|
|
42815
|
-
/* harmony export */ SQLITE_OPEN_READONLY: () => (/* binding */ SQLITE_OPEN_READONLY),
|
|
42816
|
-
/* harmony export */ SQLITE_OPEN_READWRITE: () => (/* binding */ SQLITE_OPEN_READWRITE),
|
|
42817
|
-
/* harmony export */ SQLITE_OPEN_SHAREDCACHE: () => (/* binding */ SQLITE_OPEN_SHAREDCACHE),
|
|
42818
|
-
/* harmony export */ SQLITE_OPEN_SUBJOURNAL: () => (/* binding */ SQLITE_OPEN_SUBJOURNAL),
|
|
42819
|
-
/* harmony export */ SQLITE_OPEN_SUPER_JOURNAL: () => (/* binding */ SQLITE_OPEN_SUPER_JOURNAL),
|
|
42820
|
-
/* harmony export */ SQLITE_OPEN_TEMP_DB: () => (/* binding */ SQLITE_OPEN_TEMP_DB),
|
|
42821
|
-
/* harmony export */ SQLITE_OPEN_TEMP_JOURNAL: () => (/* binding */ SQLITE_OPEN_TEMP_JOURNAL),
|
|
42822
|
-
/* harmony export */ SQLITE_OPEN_TRANSIENT_DB: () => (/* binding */ SQLITE_OPEN_TRANSIENT_DB),
|
|
42823
|
-
/* harmony export */ SQLITE_OPEN_URI: () => (/* binding */ SQLITE_OPEN_URI),
|
|
42824
|
-
/* harmony export */ SQLITE_OPEN_WAL: () => (/* binding */ SQLITE_OPEN_WAL),
|
|
42825
|
-
/* harmony export */ SQLITE_PERM: () => (/* binding */ SQLITE_PERM),
|
|
42826
|
-
/* harmony export */ SQLITE_PRAGMA: () => (/* binding */ SQLITE_PRAGMA),
|
|
42827
|
-
/* harmony export */ SQLITE_PREPARE_NORMALIZED: () => (/* binding */ SQLITE_PREPARE_NORMALIZED),
|
|
42828
|
-
/* harmony export */ SQLITE_PREPARE_NO_VTAB: () => (/* binding */ SQLITE_PREPARE_NO_VTAB),
|
|
42829
|
-
/* harmony export */ SQLITE_PREPARE_PERSISTENT: () => (/* binding */ SQLITE_PREPARE_PERSISTENT),
|
|
42830
|
-
/* harmony export */ SQLITE_PROTOCOL: () => (/* binding */ SQLITE_PROTOCOL),
|
|
42831
|
-
/* harmony export */ SQLITE_RANGE: () => (/* binding */ SQLITE_RANGE),
|
|
42832
|
-
/* harmony export */ SQLITE_READ: () => (/* binding */ SQLITE_READ),
|
|
42833
|
-
/* harmony export */ SQLITE_READONLY: () => (/* binding */ SQLITE_READONLY),
|
|
42834
|
-
/* harmony export */ SQLITE_RECURSIVE: () => (/* binding */ SQLITE_RECURSIVE),
|
|
42835
|
-
/* harmony export */ SQLITE_REINDEX: () => (/* binding */ SQLITE_REINDEX),
|
|
42836
|
-
/* harmony export */ SQLITE_ROW: () => (/* binding */ SQLITE_ROW),
|
|
42837
|
-
/* harmony export */ SQLITE_SAVEPOINT: () => (/* binding */ SQLITE_SAVEPOINT),
|
|
42838
|
-
/* harmony export */ SQLITE_SCHEMA: () => (/* binding */ SQLITE_SCHEMA),
|
|
42839
|
-
/* harmony export */ SQLITE_SELECT: () => (/* binding */ SQLITE_SELECT),
|
|
42840
|
-
/* harmony export */ SQLITE_STATIC: () => (/* binding */ SQLITE_STATIC),
|
|
42841
|
-
/* harmony export */ SQLITE_SUBTYPE: () => (/* binding */ SQLITE_SUBTYPE),
|
|
42842
|
-
/* harmony export */ SQLITE_SYNC_DATAONLY: () => (/* binding */ SQLITE_SYNC_DATAONLY),
|
|
42843
|
-
/* harmony export */ SQLITE_SYNC_FULL: () => (/* binding */ SQLITE_SYNC_FULL),
|
|
42844
|
-
/* harmony export */ SQLITE_SYNC_NORMAL: () => (/* binding */ SQLITE_SYNC_NORMAL),
|
|
42845
|
-
/* harmony export */ SQLITE_TEXT: () => (/* binding */ SQLITE_TEXT),
|
|
42846
|
-
/* harmony export */ SQLITE_TOOBIG: () => (/* binding */ SQLITE_TOOBIG),
|
|
42847
|
-
/* harmony export */ SQLITE_TRANSACTION: () => (/* binding */ SQLITE_TRANSACTION),
|
|
42848
|
-
/* harmony export */ SQLITE_TRANSIENT: () => (/* binding */ SQLITE_TRANSIENT),
|
|
42849
|
-
/* harmony export */ SQLITE_UPDATE: () => (/* binding */ SQLITE_UPDATE),
|
|
42850
|
-
/* harmony export */ SQLITE_UTF16: () => (/* binding */ SQLITE_UTF16),
|
|
42851
|
-
/* harmony export */ SQLITE_UTF16BE: () => (/* binding */ SQLITE_UTF16BE),
|
|
42852
|
-
/* harmony export */ SQLITE_UTF16LE: () => (/* binding */ SQLITE_UTF16LE),
|
|
42853
|
-
/* harmony export */ SQLITE_UTF8: () => (/* binding */ SQLITE_UTF8),
|
|
42854
|
-
/* harmony export */ SQLITE_WARNING: () => (/* binding */ SQLITE_WARNING)
|
|
42855
|
-
/* harmony export */ });
|
|
42856
|
-
// Primary result codes.
|
|
42857
|
-
// https://www.sqlite.org/rescode.html
|
|
42858
|
-
const SQLITE_OK = 0;
|
|
42859
|
-
const SQLITE_ERROR = 1;
|
|
42860
|
-
const SQLITE_INTERNAL = 2;
|
|
42861
|
-
const SQLITE_PERM = 3;
|
|
42862
|
-
const SQLITE_ABORT = 4;
|
|
42863
|
-
const SQLITE_BUSY = 5;
|
|
42864
|
-
const SQLITE_LOCKED = 6;
|
|
42865
|
-
const SQLITE_NOMEM = 7;
|
|
42866
|
-
const SQLITE_READONLY = 8;
|
|
42867
|
-
const SQLITE_INTERRUPT = 9;
|
|
42868
|
-
const SQLITE_IOERR = 10;
|
|
42869
|
-
const SQLITE_CORRUPT = 11;
|
|
42870
|
-
const SQLITE_NOTFOUND = 12;
|
|
42871
|
-
const SQLITE_FULL = 13;
|
|
42872
|
-
const SQLITE_CANTOPEN = 14;
|
|
42873
|
-
const SQLITE_PROTOCOL = 15;
|
|
42874
|
-
const SQLITE_EMPTY = 16;
|
|
42875
|
-
const SQLITE_SCHEMA = 17;
|
|
42876
|
-
const SQLITE_TOOBIG = 18;
|
|
42877
|
-
const SQLITE_CONSTRAINT = 19;
|
|
42878
|
-
const SQLITE_MISMATCH = 20;
|
|
42879
|
-
const SQLITE_MISUSE = 21;
|
|
42880
|
-
const SQLITE_NOLFS = 22;
|
|
42881
|
-
const SQLITE_AUTH = 23;
|
|
42882
|
-
const SQLITE_FORMAT = 24;
|
|
42883
|
-
const SQLITE_RANGE = 25;
|
|
42884
|
-
const SQLITE_NOTADB = 26;
|
|
42885
|
-
const SQLITE_NOTICE = 27;
|
|
42886
|
-
const SQLITE_WARNING = 28;
|
|
42887
|
-
const SQLITE_ROW = 100;
|
|
42888
|
-
const SQLITE_DONE = 101;
|
|
42889
|
-
|
|
42890
|
-
// Extended error codes.
|
|
42891
|
-
const SQLITE_IOERR_ACCESS = 3338;
|
|
42892
|
-
const SQLITE_IOERR_CHECKRESERVEDLOCK = 3594;
|
|
42893
|
-
const SQLITE_IOERR_CLOSE = 4106;
|
|
42894
|
-
const SQLITE_IOERR_DATA = 8202;
|
|
42895
|
-
const SQLITE_IOERR_DELETE = 2570;
|
|
42896
|
-
const SQLITE_IOERR_DELETE_NOENT = 5898;
|
|
42897
|
-
const SQLITE_IOERR_DIR_FSYNC = 1290;
|
|
42898
|
-
const SQLITE_IOERR_FSTAT = 1802;
|
|
42899
|
-
const SQLITE_IOERR_FSYNC = 1034;
|
|
42900
|
-
const SQLITE_IOERR_GETTEMPPATH = 6410;
|
|
42901
|
-
const SQLITE_IOERR_LOCK = 3850;
|
|
42902
|
-
const SQLITE_IOERR_NOMEM = 3082;
|
|
42903
|
-
const SQLITE_IOERR_READ = 266;
|
|
42904
|
-
const SQLITE_IOERR_RDLOCK = 2314;
|
|
42905
|
-
const SQLITE_IOERR_SEEK = 5642;
|
|
42906
|
-
const SQLITE_IOERR_SHORT_READ = 522;
|
|
42907
|
-
const SQLITE_IOERR_TRUNCATE = 1546;
|
|
42908
|
-
const SQLITE_IOERR_UNLOCK = 2058;
|
|
42909
|
-
const SQLITE_IOERR_VNODE = 6922;
|
|
42910
|
-
const SQLITE_IOERR_WRITE = 778;
|
|
42911
|
-
const SQLITE_IOERR_BEGIN_ATOMIC = 7434;
|
|
42912
|
-
const SQLITE_IOERR_COMMIT_ATOMIC = 7690;
|
|
42913
|
-
const SQLITE_IOERR_ROLLBACK_ATOMIC = 7946;
|
|
42914
|
-
|
|
42915
|
-
// Other extended result codes.
|
|
42916
|
-
const SQLITE_CONSTRAINT_CHECK = 275;
|
|
42917
|
-
const SQLITE_CONSTRAINT_COMMITHOOK = 531;
|
|
42918
|
-
const SQLITE_CONSTRAINT_FOREIGNKEY = 787;
|
|
42919
|
-
const SQLITE_CONSTRAINT_FUNCTION = 1043;
|
|
42920
|
-
const SQLITE_CONSTRAINT_NOTNULL = 1299;
|
|
42921
|
-
const SQLITE_CONSTRAINT_PINNED = 2835;
|
|
42922
|
-
const SQLITE_CONSTRAINT_PRIMARYKEY = 1555;
|
|
42923
|
-
const SQLITE_CONSTRAINT_ROWID = 2579;
|
|
42924
|
-
const SQLITE_CONSTRAINT_TRIGGER = 1811;
|
|
42925
|
-
const SQLITE_CONSTRAINT_UNIQUE = 2067;
|
|
42926
|
-
const SQLITE_CONSTRAINT_VTAB = 2323;
|
|
42927
|
-
|
|
42928
|
-
// Open flags.
|
|
42929
|
-
// https://www.sqlite.org/c3ref/c_open_autoproxy.html
|
|
42930
|
-
const SQLITE_OPEN_READONLY = 0x00000001;
|
|
42931
|
-
const SQLITE_OPEN_READWRITE = 0x00000002;
|
|
42932
|
-
const SQLITE_OPEN_CREATE = 0x00000004;
|
|
42933
|
-
const SQLITE_OPEN_DELETEONCLOSE = 0x00000008;
|
|
42934
|
-
const SQLITE_OPEN_EXCLUSIVE = 0x00000010;
|
|
42935
|
-
const SQLITE_OPEN_AUTOPROXY = 0x00000020;
|
|
42936
|
-
const SQLITE_OPEN_URI = 0x00000040;
|
|
42937
|
-
const SQLITE_OPEN_MEMORY = 0x00000080;
|
|
42938
|
-
const SQLITE_OPEN_MAIN_DB = 0x00000100;
|
|
42939
|
-
const SQLITE_OPEN_TEMP_DB = 0x00000200;
|
|
42940
|
-
const SQLITE_OPEN_TRANSIENT_DB = 0x00000400;
|
|
42941
|
-
const SQLITE_OPEN_MAIN_JOURNAL = 0x00000800;
|
|
42942
|
-
const SQLITE_OPEN_TEMP_JOURNAL = 0x00001000;
|
|
42943
|
-
const SQLITE_OPEN_SUBJOURNAL = 0x00002000;
|
|
42944
|
-
const SQLITE_OPEN_SUPER_JOURNAL = 0x00004000;
|
|
42945
|
-
const SQLITE_OPEN_NOMUTEX = 0x00008000;
|
|
42946
|
-
const SQLITE_OPEN_FULLMUTEX = 0x00010000;
|
|
42947
|
-
const SQLITE_OPEN_SHAREDCACHE = 0x00020000;
|
|
42948
|
-
const SQLITE_OPEN_PRIVATECACHE = 0x00040000;
|
|
42949
|
-
const SQLITE_OPEN_WAL = 0x00080000;
|
|
42950
|
-
const SQLITE_OPEN_NOFOLLOW = 0x01000000;
|
|
42951
|
-
|
|
42952
|
-
// Locking levels.
|
|
42953
|
-
// https://www.sqlite.org/c3ref/c_lock_exclusive.html
|
|
42954
|
-
const SQLITE_LOCK_NONE = 0;
|
|
42955
|
-
const SQLITE_LOCK_SHARED = 1;
|
|
42956
|
-
const SQLITE_LOCK_RESERVED = 2;
|
|
42957
|
-
const SQLITE_LOCK_PENDING = 3;
|
|
42958
|
-
const SQLITE_LOCK_EXCLUSIVE = 4;
|
|
42959
|
-
|
|
42960
|
-
// Device characteristics.
|
|
42961
|
-
// https://www.sqlite.org/c3ref/c_iocap_atomic.html
|
|
42962
|
-
const SQLITE_IOCAP_ATOMIC = 0x00000001;
|
|
42963
|
-
const SQLITE_IOCAP_ATOMIC512 = 0x00000002;
|
|
42964
|
-
const SQLITE_IOCAP_ATOMIC1K = 0x00000004;
|
|
42965
|
-
const SQLITE_IOCAP_ATOMIC2K = 0x00000008;
|
|
42966
|
-
const SQLITE_IOCAP_ATOMIC4K = 0x00000010;
|
|
42967
|
-
const SQLITE_IOCAP_ATOMIC8K = 0x00000020;
|
|
42968
|
-
const SQLITE_IOCAP_ATOMIC16K = 0x00000040;
|
|
42969
|
-
const SQLITE_IOCAP_ATOMIC32K = 0x00000080;
|
|
42970
|
-
const SQLITE_IOCAP_ATOMIC64K = 0x00000100;
|
|
42971
|
-
const SQLITE_IOCAP_SAFE_APPEND = 0x00000200;
|
|
42972
|
-
const SQLITE_IOCAP_SEQUENTIAL = 0x00000400;
|
|
42973
|
-
const SQLITE_IOCAP_UNDELETABLE_WHEN_OPEN = 0x00000800;
|
|
42974
|
-
const SQLITE_IOCAP_POWERSAFE_OVERWRITE = 0x00001000;
|
|
42975
|
-
const SQLITE_IOCAP_IMMUTABLE = 0x00002000;
|
|
42976
|
-
const SQLITE_IOCAP_BATCH_ATOMIC = 0x00004000;
|
|
42977
|
-
|
|
42978
|
-
// xAccess flags.
|
|
42979
|
-
// https://www.sqlite.org/c3ref/c_access_exists.html
|
|
42980
|
-
const SQLITE_ACCESS_EXISTS = 0;
|
|
42981
|
-
const SQLITE_ACCESS_READWRITE = 1;
|
|
42982
|
-
const SQLITE_ACCESS_READ = 2;
|
|
42983
|
-
|
|
42984
|
-
// File control opcodes
|
|
42985
|
-
// https://www.sqlite.org/c3ref/c_fcntl_begin_atomic_write.html#sqlitefcntlbeginatomicwrite
|
|
42986
|
-
const SQLITE_FCNTL_LOCKSTATE = 1;
|
|
42987
|
-
const SQLITE_FCNTL_GET_LOCKPROXYFILE = 2;
|
|
42988
|
-
const SQLITE_FCNTL_SET_LOCKPROXYFILE = 3;
|
|
42989
|
-
const SQLITE_FCNTL_LAST_ERRNO = 4;
|
|
42990
|
-
const SQLITE_FCNTL_SIZE_HINT = 5;
|
|
42991
|
-
const SQLITE_FCNTL_CHUNK_SIZE = 6;
|
|
42992
|
-
const SQLITE_FCNTL_FILE_POINTER = 7;
|
|
42993
|
-
const SQLITE_FCNTL_SYNC_OMITTED = 8;
|
|
42994
|
-
const SQLITE_FCNTL_WIN32_AV_RETRY = 9;
|
|
42995
|
-
const SQLITE_FCNTL_PERSIST_WAL = 10;
|
|
42996
|
-
const SQLITE_FCNTL_OVERWRITE = 11;
|
|
42997
|
-
const SQLITE_FCNTL_VFSNAME = 12;
|
|
42998
|
-
const SQLITE_FCNTL_POWERSAFE_OVERWRITE = 13;
|
|
42999
|
-
const SQLITE_FCNTL_PRAGMA = 14;
|
|
43000
|
-
const SQLITE_FCNTL_BUSYHANDLER = 15;
|
|
43001
|
-
const SQLITE_FCNTL_TEMPFILENAME = 16;
|
|
43002
|
-
const SQLITE_FCNTL_MMAP_SIZE = 18;
|
|
43003
|
-
const SQLITE_FCNTL_TRACE = 19;
|
|
43004
|
-
const SQLITE_FCNTL_HAS_MOVED = 20;
|
|
43005
|
-
const SQLITE_FCNTL_SYNC = 21;
|
|
43006
|
-
const SQLITE_FCNTL_COMMIT_PHASETWO = 22;
|
|
43007
|
-
const SQLITE_FCNTL_WIN32_SET_HANDLE = 23;
|
|
43008
|
-
const SQLITE_FCNTL_WAL_BLOCK = 24;
|
|
43009
|
-
const SQLITE_FCNTL_ZIPVFS = 25;
|
|
43010
|
-
const SQLITE_FCNTL_RBU = 26;
|
|
43011
|
-
const SQLITE_FCNTL_VFS_POINTER = 27;
|
|
43012
|
-
const SQLITE_FCNTL_JOURNAL_POINTER = 28;
|
|
43013
|
-
const SQLITE_FCNTL_WIN32_GET_HANDLE = 29;
|
|
43014
|
-
const SQLITE_FCNTL_PDB = 30;
|
|
43015
|
-
const SQLITE_FCNTL_BEGIN_ATOMIC_WRITE = 31;
|
|
43016
|
-
const SQLITE_FCNTL_COMMIT_ATOMIC_WRITE = 32;
|
|
43017
|
-
const SQLITE_FCNTL_ROLLBACK_ATOMIC_WRITE = 33;
|
|
43018
|
-
const SQLITE_FCNTL_LOCK_TIMEOUT = 34;
|
|
43019
|
-
const SQLITE_FCNTL_DATA_VERSION = 35;
|
|
43020
|
-
const SQLITE_FCNTL_SIZE_LIMIT = 36;
|
|
43021
|
-
const SQLITE_FCNTL_CKPT_DONE = 37;
|
|
43022
|
-
const SQLITE_FCNTL_RESERVE_BYTES = 38;
|
|
43023
|
-
const SQLITE_FCNTL_CKPT_START = 39;
|
|
43024
|
-
|
|
43025
|
-
// Fundamental datatypes.
|
|
43026
|
-
// https://www.sqlite.org/c3ref/c_blob.html
|
|
43027
|
-
const SQLITE_INTEGER = 1;
|
|
43028
|
-
const SQLITE_FLOAT = 2;
|
|
43029
|
-
const SQLITE_TEXT = 3;
|
|
43030
|
-
const SQLITE_BLOB = 4;
|
|
43031
|
-
const SQLITE_NULL = 5;
|
|
43032
|
-
|
|
43033
|
-
// Special destructor behavior.
|
|
43034
|
-
// https://www.sqlite.org/c3ref/c_static.html
|
|
43035
|
-
const SQLITE_STATIC = 0;
|
|
43036
|
-
const SQLITE_TRANSIENT = -1;
|
|
43037
|
-
|
|
43038
|
-
// Text encodings.
|
|
43039
|
-
// https://sqlite.org/c3ref/c_any.html
|
|
43040
|
-
const SQLITE_UTF8 = 1; /* IMP: R-37514-35566 */
|
|
43041
|
-
const SQLITE_UTF16LE = 2; /* IMP: R-03371-37637 */
|
|
43042
|
-
const SQLITE_UTF16BE = 3; /* IMP: R-51971-34154 */
|
|
43043
|
-
const SQLITE_UTF16 = 4; /* Use native byte order */
|
|
43044
|
-
|
|
43045
|
-
// Module constraint ops.
|
|
43046
|
-
const SQLITE_INDEX_CONSTRAINT_EQ = 2;
|
|
43047
|
-
const SQLITE_INDEX_CONSTRAINT_GT = 4;
|
|
43048
|
-
const SQLITE_INDEX_CONSTRAINT_LE = 8;
|
|
43049
|
-
const SQLITE_INDEX_CONSTRAINT_LT = 16;
|
|
43050
|
-
const SQLITE_INDEX_CONSTRAINT_GE = 32;
|
|
43051
|
-
const SQLITE_INDEX_CONSTRAINT_MATCH = 64;
|
|
43052
|
-
const SQLITE_INDEX_CONSTRAINT_LIKE = 65;
|
|
43053
|
-
const SQLITE_INDEX_CONSTRAINT_GLOB = 66;
|
|
43054
|
-
const SQLITE_INDEX_CONSTRAINT_REGEXP = 67;
|
|
43055
|
-
const SQLITE_INDEX_CONSTRAINT_NE = 68;
|
|
43056
|
-
const SQLITE_INDEX_CONSTRAINT_ISNOT = 69;
|
|
43057
|
-
const SQLITE_INDEX_CONSTRAINT_ISNOTNULL = 70;
|
|
43058
|
-
const SQLITE_INDEX_CONSTRAINT_ISNULL = 71;
|
|
43059
|
-
const SQLITE_INDEX_CONSTRAINT_IS = 72;
|
|
43060
|
-
const SQLITE_INDEX_CONSTRAINT_FUNCTION = 150;
|
|
43061
|
-
const SQLITE_INDEX_SCAN_UNIQUE = 1; /* Scan visits at most = 1 row */
|
|
43062
|
-
|
|
43063
|
-
// Function flags
|
|
43064
|
-
const SQLITE_DETERMINISTIC = 0x000000800;
|
|
43065
|
-
const SQLITE_DIRECTONLY = 0x000080000;
|
|
43066
|
-
const SQLITE_SUBTYPE = 0x000100000;
|
|
43067
|
-
const SQLITE_INNOCUOUS = 0x000200000;
|
|
43068
|
-
|
|
43069
|
-
// Sync flags
|
|
43070
|
-
const SQLITE_SYNC_NORMAL = 0x00002;
|
|
43071
|
-
const SQLITE_SYNC_FULL = 0x00003;
|
|
43072
|
-
const SQLITE_SYNC_DATAONLY = 0x00010;
|
|
43073
|
-
|
|
43074
|
-
// Authorizer action codes
|
|
43075
|
-
const SQLITE_CREATE_INDEX = 1;
|
|
43076
|
-
const SQLITE_CREATE_TABLE = 2;
|
|
43077
|
-
const SQLITE_CREATE_TEMP_INDEX = 3;
|
|
43078
|
-
const SQLITE_CREATE_TEMP_TABLE = 4;
|
|
43079
|
-
const SQLITE_CREATE_TEMP_TRIGGER = 5;
|
|
43080
|
-
const SQLITE_CREATE_TEMP_VIEW = 6;
|
|
43081
|
-
const SQLITE_CREATE_TRIGGER = 7;
|
|
43082
|
-
const SQLITE_CREATE_VIEW = 8;
|
|
43083
|
-
const SQLITE_DELETE = 9;
|
|
43084
|
-
const SQLITE_DROP_INDEX = 10;
|
|
43085
|
-
const SQLITE_DROP_TABLE = 11;
|
|
43086
|
-
const SQLITE_DROP_TEMP_INDEX = 12;
|
|
43087
|
-
const SQLITE_DROP_TEMP_TABLE = 13;
|
|
43088
|
-
const SQLITE_DROP_TEMP_TRIGGER = 14;
|
|
43089
|
-
const SQLITE_DROP_TEMP_VIEW = 15;
|
|
43090
|
-
const SQLITE_DROP_TRIGGER = 16;
|
|
43091
|
-
const SQLITE_DROP_VIEW = 17;
|
|
43092
|
-
const SQLITE_INSERT = 18;
|
|
43093
|
-
const SQLITE_PRAGMA = 19;
|
|
43094
|
-
const SQLITE_READ = 20;
|
|
43095
|
-
const SQLITE_SELECT = 21;
|
|
43096
|
-
const SQLITE_TRANSACTION = 22;
|
|
43097
|
-
const SQLITE_UPDATE = 23;
|
|
43098
|
-
const SQLITE_ATTACH = 24;
|
|
43099
|
-
const SQLITE_DETACH = 25;
|
|
43100
|
-
const SQLITE_ALTER_TABLE = 26;
|
|
43101
|
-
const SQLITE_REINDEX = 27;
|
|
43102
|
-
const SQLITE_ANALYZE = 28;
|
|
43103
|
-
const SQLITE_CREATE_VTABLE = 29;
|
|
43104
|
-
const SQLITE_DROP_VTABLE = 30;
|
|
43105
|
-
const SQLITE_FUNCTION = 31;
|
|
43106
|
-
const SQLITE_SAVEPOINT = 32;
|
|
43107
|
-
const SQLITE_COPY = 0;
|
|
43108
|
-
const SQLITE_RECURSIVE = 33;
|
|
43109
|
-
|
|
43110
|
-
// Authorizer return codes
|
|
43111
|
-
const SQLITE_DENY = 1;
|
|
43112
|
-
const SQLITE_IGNORE = 2;
|
|
43113
|
-
|
|
43114
|
-
// Limit categories
|
|
43115
|
-
const SQLITE_LIMIT_LENGTH = 0;
|
|
43116
|
-
const SQLITE_LIMIT_SQL_LENGTH = 1;
|
|
43117
|
-
const SQLITE_LIMIT_COLUMN = 2;
|
|
43118
|
-
const SQLITE_LIMIT_EXPR_DEPTH = 3;
|
|
43119
|
-
const SQLITE_LIMIT_COMPOUND_SELECT = 4;
|
|
43120
|
-
const SQLITE_LIMIT_VDBE_OP = 5;
|
|
43121
|
-
const SQLITE_LIMIT_FUNCTION_ARG = 6;
|
|
43122
|
-
const SQLITE_LIMIT_ATTACHED = 7;
|
|
43123
|
-
const SQLITE_LIMIT_LIKE_PATTERN_LENGTH = 8;
|
|
43124
|
-
const SQLITE_LIMIT_VARIABLE_NUMBER = 9;
|
|
43125
|
-
const SQLITE_LIMIT_TRIGGER_DEPTH = 10;
|
|
43126
|
-
const SQLITE_LIMIT_WORKER_THREADS = 11;
|
|
43127
|
-
|
|
43128
|
-
const SQLITE_PREPARE_PERSISTENT = 0x01;
|
|
43129
|
-
const SQLITE_PREPARE_NORMALIZED = 0x02;
|
|
43130
|
-
const SQLITE_PREPARE_NO_VTAB = 0x04;
|
|
43131
|
-
|
|
43132
40536
|
/***/ }),
|
|
43133
40537
|
|
|
43134
40538
|
/***/ "./node_modules/@journeyapps/wa-sqlite/dist/mc-wa-sqlite-async.mjs":
|