@powersync/web 1.17.2 → 1.18.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/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-logger"), require("@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js"));
3
+ module.exports = factory(require("@powersync/common"), require("async-mutex"), require("comlink"), require("@journeyapps/wa-sqlite"), require("js-logger"), 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-logger", "@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js"], factory);
5
+ define(["@powersync/common", "async-mutex", "comlink", "@journeyapps/wa-sqlite", "js-logger", "@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-logger"), require("@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js"));
7
+ exports["sdk_web"] = factory(require("@powersync/common"), require("async-mutex"), require("comlink"), require("@journeyapps/wa-sqlite"), require("js-logger"), 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-logger"], 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_js_logger__, __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite_src_examples_IDBBatchAtomicVFS_js__) => {
9
+ root["sdk_web"] = factory(root["@powersync/common"], root["async-mutex"], root["comlink"], root["@journeyapps/wa-sqlite"], root["js-logger"], 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_js_logger__, __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
 
@@ -34273,7 +34273,7 @@ const DEFAULT_MODULE_FACTORIES = {
34273
34273
  module = await SyncWASQLiteModuleFactory();
34274
34274
  }
34275
34275
  // @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 */ "./node_modules/@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js"));
34276
+ 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
34277
  return {
34278
34278
  module,
34279
34279
  vfs: await AccessHandlePoolVFS.create(options.dbFileName, module)
@@ -34288,7 +34288,7 @@ const DEFAULT_MODULE_FACTORIES = {
34288
34288
  module = await SyncWASQLiteModuleFactory();
34289
34289
  }
34290
34290
  // @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 */ "./node_modules/@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js"));
34291
+ 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
34292
  return {
34293
34293
  module,
34294
34294
  vfs: await OPFSCoopSyncVFS.create(options.dbFileName, module)
@@ -35379,12 +35379,12 @@ function openWorkerDatabasePort(workerIdentifier, multipleTabs = true, worker =
35379
35379
  * (in the case of Android)
35380
35380
  */
35381
35381
  return !needsDedicated && multipleTabs
35382
- ? new SharedWorker(new URL(/* worker import */ __webpack_require__.p + __webpack_require__.u("_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_IDBBatchAtomicVFS_js-_powersync_co-780aa20"), __webpack_require__.b), {
35382
+ ? 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
35383
  /* @vite-ignore */
35384
35384
  name: `shared-DB-worker-${workerIdentifier}`,
35385
35385
  type: undefined
35386
35386
  }).port
35387
- : new Worker(new URL(/* worker import */ __webpack_require__.p + __webpack_require__.u("_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_IDBBatchAtomicVFS_js-_powersync_co-780aa21"), __webpack_require__.b), {
35387
+ : 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
35388
  /* @vite-ignore */
35389
35389
  name: `DB-worker-${workerIdentifier}`,
35390
35390
  type: undefined
@@ -35935,6 +35935,17 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite__;
35935
35935
 
35936
35936
  /***/ }),
35937
35937
 
35938
+ /***/ "@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js":
35939
+ /*!*****************************************************************************!*\
35940
+ !*** external "@journeyapps/wa-sqlite/src/examples/AccessHandlePoolVFS.js" ***!
35941
+ \*****************************************************************************/
35942
+ /***/ ((module) => {
35943
+
35944
+ "use strict";
35945
+ module.exports = __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite_src_examples_AccessHandlePoolVFS_js__;
35946
+
35947
+ /***/ }),
35948
+
35938
35949
  /***/ "@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js":
35939
35950
  /*!***************************************************************************!*\
35940
35951
  !*** external "@journeyapps/wa-sqlite/src/examples/IDBBatchAtomicVFS.js" ***!
@@ -35946,6 +35957,17 @@ module.exports = __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite_src_examples_I
35946
35957
 
35947
35958
  /***/ }),
35948
35959
 
35960
+ /***/ "@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js":
35961
+ /*!*************************************************************************!*\
35962
+ !*** external "@journeyapps/wa-sqlite/src/examples/OPFSCoopSyncVFS.js" ***!
35963
+ \*************************************************************************/
35964
+ /***/ ((module) => {
35965
+
35966
+ "use strict";
35967
+ module.exports = __WEBPACK_EXTERNAL_MODULE__journeyapps_wa_sqlite_src_examples_OPFSCoopSyncVFS_js__;
35968
+
35969
+ /***/ }),
35970
+
35949
35971
  /***/ "@powersync/common":
35950
35972
  /*!************************************!*\
35951
35973
  !*** external "@powersync/common" ***!
@@ -40496,2639 +40518,6 @@ exports.setInternalBufferSize = setInternalBufferSize;
40496
40518
  //# sourceMappingURL=bson.cjs.map
40497
40519
 
40498
40520
 
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
40521
  /***/ }),
43133
40522
 
43134
40523
  /***/ "./node_modules/@journeyapps/wa-sqlite/dist/mc-wa-sqlite-async.mjs":