@powersync/web 0.0.0-dev-20260120150240 → 0.0.0-dev-20260128165909

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.
Files changed (36) hide show
  1. package/dist/_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapp-89f0ba.index.umd.js +5 -1
  2. package/dist/_journeyapps_wa-sqlite-_journeyapps_wa-sqlite_src_examples_AccessHandlePoolVFS_js-_journeyapp-89f0ba.index.umd.js.map +1 -1
  3. package/dist/index.umd.js +288 -65
  4. package/dist/index.umd.js.map +1 -1
  5. package/dist/worker/SharedSyncImplementation.umd.js +1438 -385
  6. package/dist/worker/SharedSyncImplementation.umd.js.map +1 -1
  7. package/dist/worker/WASQLiteDB.umd.js +1435 -386
  8. package/dist/worker/WASQLiteDB.umd.js.map +1 -1
  9. package/lib/package.json +2 -4
  10. package/lib/src/attachments/IndexDBFileSystemAdapter.d.ts +25 -0
  11. package/lib/src/attachments/IndexDBFileSystemAdapter.js +104 -0
  12. package/lib/src/db/NavigatorTriggerClaimManager.d.ts +6 -0
  13. package/lib/src/db/NavigatorTriggerClaimManager.js +20 -0
  14. package/lib/src/db/PowerSyncDatabase.d.ts +2 -1
  15. package/lib/src/db/PowerSyncDatabase.js +27 -1
  16. package/lib/src/db/adapters/LockedAsyncDatabaseAdapter.d.ts +2 -2
  17. package/lib/src/db/adapters/LockedAsyncDatabaseAdapter.js +5 -1
  18. package/lib/src/db/adapters/WebDBAdapter.d.ts +4 -1
  19. package/lib/src/db/adapters/wa-sqlite/InternalWASQLiteDBAdapter.d.ts +12 -0
  20. package/lib/src/db/adapters/wa-sqlite/InternalWASQLiteDBAdapter.js +19 -0
  21. package/lib/src/db/adapters/wa-sqlite/WASQLiteDBAdapter.d.ts +2 -2
  22. package/lib/src/db/adapters/wa-sqlite/WASQLiteDBAdapter.js +2 -2
  23. package/lib/src/db/adapters/wa-sqlite/WASQLiteOpenFactory.js +2 -2
  24. package/lib/src/index.d.ts +1 -0
  25. package/lib/src/index.js +1 -0
  26. package/lib/tsconfig.tsbuildinfo +1 -1
  27. package/package.json +3 -5
  28. package/src/attachments/IndexDBFileSystemAdapter.ts +117 -0
  29. package/src/db/NavigatorTriggerClaimManager.ts +23 -0
  30. package/src/db/PowerSyncDatabase.ts +30 -1
  31. package/src/db/adapters/LockedAsyncDatabaseAdapter.ts +7 -3
  32. package/src/db/adapters/WebDBAdapter.ts +5 -1
  33. package/src/db/adapters/wa-sqlite/InternalWASQLiteDBAdapter.ts +23 -0
  34. package/src/db/adapters/wa-sqlite/WASQLiteDBAdapter.ts +2 -2
  35. package/src/db/adapters/wa-sqlite/WASQLiteOpenFactory.ts +2 -2
  36. package/src/index.ts +1 -0
package/dist/index.umd.js CHANGED
@@ -4807,6 +4807,159 @@ var bson = /*#__PURE__*/Object.freeze({
4807
4807
  //# sourceMappingURL=bson.mjs.map
4808
4808
 
4809
4809
 
4810
+ /***/ },
4811
+
4812
+ /***/ "./lib/src/attachments/IndexDBFileSystemAdapter.js"
4813
+ /*!*********************************************************!*\
4814
+ !*** ./lib/src/attachments/IndexDBFileSystemAdapter.js ***!
4815
+ \*********************************************************/
4816
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
4817
+
4818
+ __webpack_require__.r(__webpack_exports__);
4819
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4820
+ /* harmony export */ IndexDBFileSystemStorageAdapter: () => (/* binding */ IndexDBFileSystemStorageAdapter)
4821
+ /* harmony export */ });
4822
+ /**
4823
+ * IndexDBFileSystemStorageAdapter implements LocalStorageAdapter using IndexedDB.
4824
+ * Suitable for web browsers and web-based environments.
4825
+ */
4826
+ class IndexDBFileSystemStorageAdapter {
4827
+ databaseName;
4828
+ dbPromise;
4829
+ constructor(databaseName = 'PowerSyncFiles') {
4830
+ this.databaseName = databaseName;
4831
+ }
4832
+ async initialize() {
4833
+ this.dbPromise = new Promise((resolve, reject) => {
4834
+ const request = indexedDB.open(this.databaseName, 1);
4835
+ request.onupgradeneeded = () => {
4836
+ request.result.createObjectStore('files');
4837
+ };
4838
+ request.onsuccess = () => resolve(request.result);
4839
+ request.onerror = () => reject(request.error);
4840
+ });
4841
+ }
4842
+ async clear() {
4843
+ const db = await this.dbPromise;
4844
+ return new Promise((resolve, reject) => {
4845
+ const tx = db.transaction('files', 'readwrite');
4846
+ const store = tx.objectStore('files');
4847
+ const req = store.clear();
4848
+ req.onsuccess = () => resolve();
4849
+ req.onerror = () => reject(req.error);
4850
+ });
4851
+ }
4852
+ getLocalUri(filename) {
4853
+ return `indexeddb://${this.databaseName}/files/${filename}`;
4854
+ }
4855
+ async getStore(mode = 'readonly') {
4856
+ const db = await this.dbPromise;
4857
+ const tx = db.transaction('files', mode);
4858
+ return tx.objectStore('files');
4859
+ }
4860
+ async saveFile(filePath, data) {
4861
+ const store = await this.getStore('readwrite');
4862
+ let dataToStore;
4863
+ let size;
4864
+ if (typeof data === 'string') {
4865
+ const binaryString = atob(data);
4866
+ const bytes = new Uint8Array(binaryString.length);
4867
+ for (let i = 0; i < binaryString.length; i++) {
4868
+ bytes[i] = binaryString.charCodeAt(i);
4869
+ }
4870
+ dataToStore = bytes.buffer;
4871
+ size = bytes.byteLength;
4872
+ }
4873
+ else {
4874
+ dataToStore = data;
4875
+ size = dataToStore.byteLength;
4876
+ }
4877
+ return await new Promise((resolve, reject) => {
4878
+ const req = store.put(dataToStore, filePath);
4879
+ req.onsuccess = () => resolve(size);
4880
+ req.onerror = () => reject(req.error);
4881
+ });
4882
+ }
4883
+ async readFile(fileUri, options) {
4884
+ const store = await this.getStore();
4885
+ return new Promise((resolve, reject) => {
4886
+ const req = store.get(fileUri);
4887
+ req.onsuccess = async () => {
4888
+ if (!req.result) {
4889
+ reject(new Error('File not found'));
4890
+ return;
4891
+ }
4892
+ resolve(req.result);
4893
+ };
4894
+ req.onerror = () => reject(req.error);
4895
+ });
4896
+ }
4897
+ async deleteFile(uri, options) {
4898
+ const store = await this.getStore('readwrite');
4899
+ await new Promise((resolve, reject) => {
4900
+ const req = store.delete(uri);
4901
+ req.onsuccess = () => resolve();
4902
+ req.onerror = () => reject(req.error);
4903
+ });
4904
+ }
4905
+ async fileExists(fileUri) {
4906
+ const store = await this.getStore();
4907
+ return new Promise((resolve, reject) => {
4908
+ const req = store.get(fileUri);
4909
+ req.onsuccess = () => resolve(!!req.result);
4910
+ req.onerror = () => reject(req.error);
4911
+ });
4912
+ }
4913
+ async makeDir(path) {
4914
+ // No-op for IndexedDB as it does not have a directory structure
4915
+ }
4916
+ async rmDir(path) {
4917
+ const store = await this.getStore('readwrite');
4918
+ const range = IDBKeyRange.bound(path + '/', path + '/\uffff', false, false);
4919
+ await new Promise((resolve, reject) => {
4920
+ const req = store.delete(range);
4921
+ req.onsuccess = () => resolve();
4922
+ req.onerror = () => reject(req.error);
4923
+ });
4924
+ }
4925
+ }
4926
+
4927
+
4928
+ /***/ },
4929
+
4930
+ /***/ "./lib/src/db/NavigatorTriggerClaimManager.js"
4931
+ /*!****************************************************!*\
4932
+ !*** ./lib/src/db/NavigatorTriggerClaimManager.js ***!
4933
+ \****************************************************/
4934
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
4935
+
4936
+ __webpack_require__.r(__webpack_exports__);
4937
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
4938
+ /* harmony export */ NAVIGATOR_TRIGGER_CLAIM_MANAGER: () => (/* binding */ NAVIGATOR_TRIGGER_CLAIM_MANAGER)
4939
+ /* harmony export */ });
4940
+ /* harmony import */ var _shared_navigator_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../shared/navigator.js */ "./lib/src/shared/navigator.js");
4941
+
4942
+ /**
4943
+ * @internal
4944
+ * @experimental
4945
+ */
4946
+ const NAVIGATOR_TRIGGER_CLAIM_MANAGER = {
4947
+ async obtainClaim(identifier) {
4948
+ return new Promise((resolveReleaser) => {
4949
+ (0,_shared_navigator_js__WEBPACK_IMPORTED_MODULE_0__.getNavigatorLocks)().request(identifier, async () => {
4950
+ await new Promise((releaseLock) => {
4951
+ resolveReleaser(async () => releaseLock());
4952
+ });
4953
+ });
4954
+ });
4955
+ },
4956
+ async checkClaim(identifier) {
4957
+ const currentState = await (0,_shared_navigator_js__WEBPACK_IMPORTED_MODULE_0__.getNavigatorLocks)().query();
4958
+ return currentState.held?.find((heldLock) => heldLock.name == identifier) != null;
4959
+ }
4960
+ };
4961
+
4962
+
4810
4963
  /***/ },
4811
4964
 
4812
4965
  /***/ "./lib/src/db/PowerSyncDatabase.js"
@@ -4824,12 +4977,16 @@ __webpack_require__.r(__webpack_exports__);
4824
4977
  /* harmony import */ var _powersync_common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @powersync/common */ "@powersync/common");
4825
4978
  /* harmony import */ var async_mutex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! async-mutex */ "async-mutex");
4826
4979
  /* harmony import */ var _shared_navigator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../shared/navigator.js */ "./lib/src/shared/navigator.js");
4827
- /* harmony import */ var _adapters_wa_sqlite_WASQLiteOpenFactory_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./adapters/wa-sqlite/WASQLiteOpenFactory.js */ "./lib/src/db/adapters/wa-sqlite/WASQLiteOpenFactory.js");
4828
- /* harmony import */ var _adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./adapters/web-sql-flags.js */ "./lib/src/db/adapters/web-sql-flags.js");
4829
- /* harmony import */ var _sync_SSRWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./sync/SSRWebStreamingSyncImplementation.js */ "./lib/src/db/sync/SSRWebStreamingSyncImplementation.js");
4830
- /* harmony import */ var _sync_SharedWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./sync/SharedWebStreamingSyncImplementation.js */ "./lib/src/db/sync/SharedWebStreamingSyncImplementation.js");
4831
- /* harmony import */ var _sync_WebRemote_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./sync/WebRemote.js */ "./lib/src/db/sync/WebRemote.js");
4832
- /* harmony import */ var _sync_WebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./sync/WebStreamingSyncImplementation.js */ "./lib/src/db/sync/WebStreamingSyncImplementation.js");
4980
+ /* harmony import */ var _NavigatorTriggerClaimManager_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./NavigatorTriggerClaimManager.js */ "./lib/src/db/NavigatorTriggerClaimManager.js");
4981
+ /* harmony import */ var _adapters_LockedAsyncDatabaseAdapter_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./adapters/LockedAsyncDatabaseAdapter.js */ "./lib/src/db/adapters/LockedAsyncDatabaseAdapter.js");
4982
+ /* harmony import */ var _adapters_wa_sqlite_WASQLiteOpenFactory_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./adapters/wa-sqlite/WASQLiteOpenFactory.js */ "./lib/src/db/adapters/wa-sqlite/WASQLiteOpenFactory.js");
4983
+ /* harmony import */ var _adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./adapters/web-sql-flags.js */ "./lib/src/db/adapters/web-sql-flags.js");
4984
+ /* harmony import */ var _sync_SSRWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./sync/SSRWebStreamingSyncImplementation.js */ "./lib/src/db/sync/SSRWebStreamingSyncImplementation.js");
4985
+ /* harmony import */ var _sync_SharedWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./sync/SharedWebStreamingSyncImplementation.js */ "./lib/src/db/sync/SharedWebStreamingSyncImplementation.js");
4986
+ /* harmony import */ var _sync_WebRemote_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./sync/WebRemote.js */ "./lib/src/db/sync/WebRemote.js");
4987
+ /* harmony import */ var _sync_WebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./sync/WebStreamingSyncImplementation.js */ "./lib/src/db/sync/WebStreamingSyncImplementation.js");
4988
+
4989
+
4833
4990
 
4834
4991
 
4835
4992
 
@@ -4840,14 +4997,14 @@ __webpack_require__.r(__webpack_exports__);
4840
4997
 
4841
4998
 
4842
4999
  const DEFAULT_POWERSYNC_FLAGS = {
4843
- ..._adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_4__.DEFAULT_WEB_SQL_FLAGS,
5000
+ ..._adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_6__.DEFAULT_WEB_SQL_FLAGS,
4844
5001
  externallyUnload: false
4845
5002
  };
4846
5003
  const resolveWebPowerSyncFlags = (flags) => {
4847
5004
  return {
4848
5005
  ...DEFAULT_POWERSYNC_FLAGS,
4849
5006
  ...flags,
4850
- ...(0,_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_4__.resolveWebSQLFlags)(flags)
5007
+ ...(0,_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_6__.resolveWebSQLFlags)(flags)
4851
5008
  };
4852
5009
  };
4853
5010
  /**
@@ -4890,9 +5047,33 @@ class PowerSyncDatabase extends _powersync_common__WEBPACK_IMPORTED_MODULE_0__.A
4890
5047
  window.addEventListener('unload', this.unloadListener);
4891
5048
  }
4892
5049
  }
4893
- async _initialize() { }
5050
+ async _initialize() {
5051
+ if (this.database instanceof _adapters_LockedAsyncDatabaseAdapter_js__WEBPACK_IMPORTED_MODULE_4__.LockedAsyncDatabaseAdapter) {
5052
+ /**
5053
+ * While init is done automatically,
5054
+ * LockedAsyncDatabaseAdapter only exposes config after init.
5055
+ * We can explicitly wait for init here in order to access config.
5056
+ */
5057
+ await this.database.init();
5058
+ }
5059
+ // In some cases, like the SQLJs adapter, we don't pass a WebDBAdapter, so we need to check.
5060
+ if (typeof this.database.getConfiguration == 'function') {
5061
+ const config = this.database.getConfiguration();
5062
+ if (config.requiresPersistentTriggers) {
5063
+ this.triggersImpl.updateDefaults({
5064
+ useStorageByDefault: true
5065
+ });
5066
+ }
5067
+ }
5068
+ }
5069
+ generateTriggerManagerConfig() {
5070
+ return {
5071
+ // We need to share hold information between tabs for web
5072
+ claimManager: _NavigatorTriggerClaimManager_js__WEBPACK_IMPORTED_MODULE_3__.NAVIGATOR_TRIGGER_CLAIM_MANAGER
5073
+ };
5074
+ }
4894
5075
  openDBAdapter(options) {
4895
- const defaultFactory = new _adapters_wa_sqlite_WASQLiteOpenFactory_js__WEBPACK_IMPORTED_MODULE_3__.WASQLiteOpenFactory({
5076
+ const defaultFactory = new _adapters_wa_sqlite_WASQLiteOpenFactory_js__WEBPACK_IMPORTED_MODULE_5__.WASQLiteOpenFactory({
4896
5077
  ...options.database,
4897
5078
  flags: resolveWebPowerSyncFlags(options.flags),
4898
5079
  encryptionKey: options.encryptionKey
@@ -4914,13 +5095,13 @@ class PowerSyncDatabase extends _powersync_common__WEBPACK_IMPORTED_MODULE_0__.A
4914
5095
  });
4915
5096
  }
4916
5097
  async loadVersion() {
4917
- if ((0,_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_4__.isServerSide)()) {
5098
+ if ((0,_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_6__.isServerSide)()) {
4918
5099
  return;
4919
5100
  }
4920
5101
  return super.loadVersion();
4921
5102
  }
4922
5103
  async resolveOfflineSyncStatus() {
4923
- if ((0,_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_4__.isServerSide)()) {
5104
+ if ((0,_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_6__.isServerSide)()) {
4924
5105
  return;
4925
5106
  }
4926
5107
  return super.resolveOfflineSyncStatus();
@@ -4935,7 +5116,7 @@ class PowerSyncDatabase extends _powersync_common__WEBPACK_IMPORTED_MODULE_0__.A
4935
5116
  return (0,_shared_navigator_js__WEBPACK_IMPORTED_MODULE_2__.getNavigatorLocks)().request(`lock-${this.database.name}`, cb);
4936
5117
  }
4937
5118
  generateSyncStreamImplementation(connector, options) {
4938
- const remote = new _sync_WebRemote_js__WEBPACK_IMPORTED_MODULE_7__.WebRemote(connector, this.logger);
5119
+ const remote = new _sync_WebRemote_js__WEBPACK_IMPORTED_MODULE_9__.WebRemote(connector, this.logger);
4939
5120
  const syncOptions = {
4940
5121
  ...this.options,
4941
5122
  ...options,
@@ -4951,7 +5132,7 @@ class PowerSyncDatabase extends _powersync_common__WEBPACK_IMPORTED_MODULE_0__.A
4951
5132
  };
4952
5133
  switch (true) {
4953
5134
  case this.resolvedFlags.ssrMode:
4954
- return new _sync_SSRWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_5__.SSRStreamingSyncImplementation(syncOptions);
5135
+ return new _sync_SSRWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_7__.SSRStreamingSyncImplementation(syncOptions);
4955
5136
  case this.resolvedFlags.enableMultiTabs:
4956
5137
  if (!this.resolvedFlags.broadcastLogs) {
4957
5138
  const warning = `
@@ -4961,12 +5142,12 @@ class PowerSyncDatabase extends _powersync_common__WEBPACK_IMPORTED_MODULE_0__.A
4961
5142
  const logger = this.options.logger;
4962
5143
  logger ? logger.warn(warning) : console.warn(warning);
4963
5144
  }
4964
- return new _sync_SharedWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_6__.SharedWebStreamingSyncImplementation({
5145
+ return new _sync_SharedWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_8__.SharedWebStreamingSyncImplementation({
4965
5146
  ...syncOptions,
4966
5147
  db: this.database // This should always be the case
4967
5148
  });
4968
5149
  default:
4969
- return new _sync_WebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_8__.WebStreamingSyncImplementation(syncOptions);
5150
+ return new _sync_WebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_10__.WebStreamingSyncImplementation(syncOptions);
4970
5151
  }
4971
5152
  }
4972
5153
  }
@@ -5231,7 +5412,11 @@ class LockedAsyncDatabaseAdapter extends _powersync_common__WEBPACK_IMPORTED_MOD
5231
5412
  if (!this._config) {
5232
5413
  throw new Error(`Cannot get config before initialization is completed`);
5233
5414
  }
5234
- return this._config;
5415
+ return {
5416
+ ...this._config,
5417
+ // This can be overridden by the adapter later
5418
+ requiresPersistentTriggers: false
5419
+ };
5235
5420
  }
5236
5421
  async waitForInitialized() {
5237
5422
  // Awaiting this will expose errors on function calls like .execute etc
@@ -5728,6 +5913,41 @@ class WorkerWrappedAsyncDatabaseConnection extends _powersync_common__WEBPACK_IM
5728
5913
  }
5729
5914
 
5730
5915
 
5916
+ /***/ },
5917
+
5918
+ /***/ "./lib/src/db/adapters/wa-sqlite/InternalWASQLiteDBAdapter.js"
5919
+ /*!********************************************************************!*\
5920
+ !*** ./lib/src/db/adapters/wa-sqlite/InternalWASQLiteDBAdapter.js ***!
5921
+ \********************************************************************/
5922
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
5923
+
5924
+ __webpack_require__.r(__webpack_exports__);
5925
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
5926
+ /* harmony export */ InternalWASQLiteDBAdapter: () => (/* binding */ InternalWASQLiteDBAdapter)
5927
+ /* harmony export */ });
5928
+ /* harmony import */ var _LockedAsyncDatabaseAdapter_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../LockedAsyncDatabaseAdapter.js */ "./lib/src/db/adapters/LockedAsyncDatabaseAdapter.js");
5929
+ /* harmony import */ var _WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./WASQLiteConnection.js */ "./lib/src/db/adapters/wa-sqlite/WASQLiteConnection.js");
5930
+
5931
+
5932
+ /**
5933
+ * @internal
5934
+ * An intermediary implementation of WASQLiteDBAdapter, which takes the same
5935
+ * constructor arguments as {@link LockedAsyncDatabaseAdapter}, but provides some
5936
+ * basic WA-SQLite specific functionality.
5937
+ * This base class is used to avoid requiring overloading the constructor of {@link WASQLiteDBAdapter}
5938
+ */
5939
+ class InternalWASQLiteDBAdapter extends _LockedAsyncDatabaseAdapter_js__WEBPACK_IMPORTED_MODULE_0__.LockedAsyncDatabaseAdapter {
5940
+ getConfiguration() {
5941
+ // This is valid since we only handle WASQLite connections
5942
+ const baseConfig = super.getConfiguration();
5943
+ return {
5944
+ ...super.getConfiguration(),
5945
+ requiresPersistentTriggers: baseConfig.vfs == _WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_1__.WASQLiteVFS.OPFSCoopSyncVFS || baseConfig.vfs == _WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_1__.WASQLiteVFS.AccessHandlePoolVFS
5946
+ };
5947
+ }
5948
+ }
5949
+
5950
+
5731
5951
  /***/ },
5732
5952
 
5733
5953
  /***/ "./lib/src/db/adapters/wa-sqlite/WASQLiteConnection.js"
@@ -6166,9 +6386,9 @@ __webpack_require__.r(__webpack_exports__);
6166
6386
  /* harmony export */ });
6167
6387
  /* harmony import */ var comlink__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! comlink */ "comlink");
6168
6388
  /* harmony import */ var _PowerSyncDatabase_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../PowerSyncDatabase.js */ "./lib/src/db/PowerSyncDatabase.js");
6169
- /* harmony import */ var _LockedAsyncDatabaseAdapter_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../LockedAsyncDatabaseAdapter.js */ "./lib/src/db/adapters/LockedAsyncDatabaseAdapter.js");
6170
- /* harmony import */ var _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../web-sql-flags.js */ "./lib/src/db/adapters/web-sql-flags.js");
6171
- /* harmony import */ var _WorkerWrappedAsyncDatabaseConnection_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../WorkerWrappedAsyncDatabaseConnection.js */ "./lib/src/db/adapters/WorkerWrappedAsyncDatabaseConnection.js");
6389
+ /* harmony import */ var _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../web-sql-flags.js */ "./lib/src/db/adapters/web-sql-flags.js");
6390
+ /* harmony import */ var _WorkerWrappedAsyncDatabaseConnection_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../WorkerWrappedAsyncDatabaseConnection.js */ "./lib/src/db/adapters/WorkerWrappedAsyncDatabaseConnection.js");
6391
+ /* harmony import */ var _InternalWASQLiteDBAdapter_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./InternalWASQLiteDBAdapter.js */ "./lib/src/db/adapters/wa-sqlite/InternalWASQLiteDBAdapter.js");
6172
6392
  /* harmony import */ var _WASQLiteOpenFactory_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./WASQLiteOpenFactory.js */ "./lib/src/db/adapters/wa-sqlite/WASQLiteOpenFactory.js");
6173
6393
 
6174
6394
 
@@ -6179,7 +6399,7 @@ __webpack_require__.r(__webpack_exports__);
6179
6399
  /**
6180
6400
  * Adapter for WA-SQLite SQLite connections.
6181
6401
  */
6182
- class WASQLiteDBAdapter extends _LockedAsyncDatabaseAdapter_js__WEBPACK_IMPORTED_MODULE_2__.LockedAsyncDatabaseAdapter {
6402
+ class WASQLiteDBAdapter extends _InternalWASQLiteDBAdapter_js__WEBPACK_IMPORTED_MODULE_4__.InternalWASQLiteDBAdapter {
6183
6403
  constructor(options) {
6184
6404
  super({
6185
6405
  name: options.dbFilename,
@@ -6187,14 +6407,14 @@ class WASQLiteDBAdapter extends _LockedAsyncDatabaseAdapter_js__WEBPACK_IMPORTED
6187
6407
  const { workerPort, temporaryStorage, cacheSizeKb } = options;
6188
6408
  if (workerPort) {
6189
6409
  const remote = comlink__WEBPACK_IMPORTED_MODULE_0__.wrap(workerPort);
6190
- return new _WorkerWrappedAsyncDatabaseConnection_js__WEBPACK_IMPORTED_MODULE_4__.WorkerWrappedAsyncDatabaseConnection({
6410
+ return new _WorkerWrappedAsyncDatabaseConnection_js__WEBPACK_IMPORTED_MODULE_3__.WorkerWrappedAsyncDatabaseConnection({
6191
6411
  remote,
6192
6412
  remoteCanCloseUnexpectedly: false,
6193
6413
  identifier: options.dbFilename,
6194
6414
  baseConnection: await remote({
6195
6415
  ...options,
6196
- temporaryStorage: temporaryStorage ?? _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_3__.TemporaryStorageOption.MEMORY,
6197
- cacheSizeKb: cacheSizeKb ?? _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_3__.DEFAULT_CACHE_SIZE_KB,
6416
+ temporaryStorage: temporaryStorage ?? _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_2__.TemporaryStorageOption.MEMORY,
6417
+ cacheSizeKb: cacheSizeKb ?? _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_2__.DEFAULT_CACHE_SIZE_KB,
6198
6418
  flags: (0,_PowerSyncDatabase_js__WEBPACK_IMPORTED_MODULE_1__.resolveWebPowerSyncFlags)(options.flags),
6199
6419
  encryptionKey: options.encryptionKey
6200
6420
  })
@@ -6236,9 +6456,9 @@ __webpack_require__.r(__webpack_exports__);
6236
6456
  /* harmony import */ var comlink__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! comlink */ "comlink");
6237
6457
  /* harmony import */ var _worker_db_open_worker_database_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../worker/db/open-worker-database.js */ "./lib/src/worker/db/open-worker-database.js");
6238
6458
  /* harmony import */ var _AbstractWebSQLOpenFactory_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../AbstractWebSQLOpenFactory.js */ "./lib/src/db/adapters/AbstractWebSQLOpenFactory.js");
6239
- /* harmony import */ var _LockedAsyncDatabaseAdapter_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../LockedAsyncDatabaseAdapter.js */ "./lib/src/db/adapters/LockedAsyncDatabaseAdapter.js");
6240
- /* harmony import */ var _WorkerWrappedAsyncDatabaseConnection_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../WorkerWrappedAsyncDatabaseConnection.js */ "./lib/src/db/adapters/WorkerWrappedAsyncDatabaseConnection.js");
6241
- /* harmony import */ var _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../web-sql-flags.js */ "./lib/src/db/adapters/web-sql-flags.js");
6459
+ /* harmony import */ var _WorkerWrappedAsyncDatabaseConnection_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../WorkerWrappedAsyncDatabaseConnection.js */ "./lib/src/db/adapters/WorkerWrappedAsyncDatabaseConnection.js");
6460
+ /* harmony import */ var _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../web-sql-flags.js */ "./lib/src/db/adapters/web-sql-flags.js");
6461
+ /* harmony import */ var _InternalWASQLiteDBAdapter_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./InternalWASQLiteDBAdapter.js */ "./lib/src/db/adapters/wa-sqlite/InternalWASQLiteDBAdapter.js");
6242
6462
  /* harmony import */ var _WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./WASQLiteConnection.js */ "./lib/src/db/adapters/wa-sqlite/WASQLiteConnection.js");
6243
6463
 
6244
6464
 
@@ -6260,7 +6480,7 @@ class WASQLiteOpenFactory extends _AbstractWebSQLOpenFactory_js__WEBPACK_IMPORTE
6260
6480
  return this.options;
6261
6481
  }
6262
6482
  openAdapter() {
6263
- return new _LockedAsyncDatabaseAdapter_js__WEBPACK_IMPORTED_MODULE_3__.LockedAsyncDatabaseAdapter({
6483
+ return new _InternalWASQLiteDBAdapter_js__WEBPACK_IMPORTED_MODULE_5__.InternalWASQLiteDBAdapter({
6264
6484
  name: this.options.dbFilename,
6265
6485
  openConnection: () => this.openConnection(),
6266
6486
  debugMode: this.options.debugMode,
@@ -6269,7 +6489,7 @@ class WASQLiteOpenFactory extends _AbstractWebSQLOpenFactory_js__WEBPACK_IMPORTE
6269
6489
  }
6270
6490
  async openConnection() {
6271
6491
  const { enableMultiTabs, useWebWorker } = this.resolvedFlags;
6272
- const { vfs = _WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_6__.WASQLiteVFS.IDBBatchAtomicVFS, temporaryStorage = _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_5__.TemporaryStorageOption.MEMORY, cacheSizeKb = _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_5__.DEFAULT_CACHE_SIZE_KB, encryptionKey } = this.waOptions;
6492
+ const { vfs = _WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_6__.WASQLiteVFS.IDBBatchAtomicVFS, temporaryStorage = _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_4__.TemporaryStorageOption.MEMORY, cacheSizeKb = _web_sql_flags_js__WEBPACK_IMPORTED_MODULE_4__.DEFAULT_CACHE_SIZE_KB, encryptionKey } = this.waOptions;
6273
6493
  if (!enableMultiTabs) {
6274
6494
  this.logger.warn('Multiple tabs are not enabled in this browser');
6275
6495
  }
@@ -6285,7 +6505,7 @@ class WASQLiteOpenFactory extends _AbstractWebSQLOpenFactory_js__WEBPACK_IMPORTE
6285
6505
  }))
6286
6506
  : (0,_worker_db_open_worker_database_js__WEBPACK_IMPORTED_MODULE_1__.openWorkerDatabasePort)(this.options.dbFilename, enableMultiTabs, optionsDbWorker, this.waOptions.vfs);
6287
6507
  const workerDBOpener = comlink__WEBPACK_IMPORTED_MODULE_0__.wrap(workerPort);
6288
- return new _WorkerWrappedAsyncDatabaseConnection_js__WEBPACK_IMPORTED_MODULE_4__.WorkerWrappedAsyncDatabaseConnection({
6508
+ return new _WorkerWrappedAsyncDatabaseConnection_js__WEBPACK_IMPORTED_MODULE_3__.WorkerWrappedAsyncDatabaseConnection({
6289
6509
  remote: workerDBOpener,
6290
6510
  // This tab owns the worker, so we're guaranteed to outlive it.
6291
6511
  remoteCanCloseUnexpectedly: false,
@@ -7956,46 +8176,49 @@ var __webpack_exports__ = {};
7956
8176
  \**************************/
7957
8177
  __webpack_require__.r(__webpack_exports__);
7958
8178
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
7959
- /* harmony export */ AbstractWebPowerSyncDatabaseOpenFactory: () => (/* reexport safe */ _db_adapters_AbstractWebPowerSyncDatabaseOpenFactory_js__WEBPACK_IMPORTED_MODULE_1__.AbstractWebPowerSyncDatabaseOpenFactory),
7960
- /* harmony export */ AbstractWebSQLOpenFactory: () => (/* reexport safe */ _db_adapters_AbstractWebSQLOpenFactory_js__WEBPACK_IMPORTED_MODULE_2__.AbstractWebSQLOpenFactory),
7961
- /* harmony export */ AsyncWASQLiteModuleFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_4__.AsyncWASQLiteModuleFactory),
7962
- /* harmony export */ DEFAULT_CACHE_SIZE_KB: () => (/* reexport safe */ _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_8__.DEFAULT_CACHE_SIZE_KB),
7963
- /* harmony export */ DEFAULT_MODULE_FACTORIES: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_4__.DEFAULT_MODULE_FACTORIES),
7964
- /* harmony export */ DEFAULT_POWERSYNC_FLAGS: () => (/* reexport safe */ _db_PowerSyncDatabase_js__WEBPACK_IMPORTED_MODULE_9__.DEFAULT_POWERSYNC_FLAGS),
7965
- /* harmony export */ DEFAULT_WEB_SQL_FLAGS: () => (/* reexport safe */ _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_8__.DEFAULT_WEB_SQL_FLAGS),
7966
- /* harmony export */ MultiCipherAsyncWASQLiteModuleFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_4__.MultiCipherAsyncWASQLiteModuleFactory),
7967
- /* harmony export */ MultiCipherSyncWASQLiteModuleFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_4__.MultiCipherSyncWASQLiteModuleFactory),
7968
- /* harmony export */ PowerSyncDatabase: () => (/* reexport safe */ _db_PowerSyncDatabase_js__WEBPACK_IMPORTED_MODULE_9__.PowerSyncDatabase),
7969
- /* harmony export */ SharedWebStreamingSyncImplementation: () => (/* reexport safe */ _db_sync_SharedWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_10__.SharedWebStreamingSyncImplementation),
7970
- /* harmony export */ SyncWASQLiteModuleFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_4__.SyncWASQLiteModuleFactory),
7971
- /* harmony export */ TemporaryStorageOption: () => (/* reexport safe */ _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_8__.TemporaryStorageOption),
7972
- /* harmony export */ WASQLiteDBAdapter: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteDBAdapter_js__WEBPACK_IMPORTED_MODULE_5__.WASQLiteDBAdapter),
7973
- /* harmony export */ WASQLiteOpenFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteOpenFactory_js__WEBPACK_IMPORTED_MODULE_6__.WASQLiteOpenFactory),
7974
- /* harmony export */ WASQLitePowerSyncDatabaseOpenFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLitePowerSyncDatabaseOpenFactory_js__WEBPACK_IMPORTED_MODULE_7__.WASQLitePowerSyncDatabaseOpenFactory),
7975
- /* harmony export */ WASQLiteVFS: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_4__.WASQLiteVFS),
7976
- /* harmony export */ WASqliteConnection: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_4__.WASqliteConnection),
7977
- /* harmony export */ WebRemote: () => (/* reexport safe */ _db_sync_WebRemote_js__WEBPACK_IMPORTED_MODULE_11__.WebRemote),
7978
- /* harmony export */ WebStreamingSyncImplementation: () => (/* reexport safe */ _db_sync_WebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_12__.WebStreamingSyncImplementation),
7979
- /* harmony export */ isServerSide: () => (/* reexport safe */ _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_8__.isServerSide),
7980
- /* harmony export */ resolveWebPowerSyncFlags: () => (/* reexport safe */ _db_PowerSyncDatabase_js__WEBPACK_IMPORTED_MODULE_9__.resolveWebPowerSyncFlags),
7981
- /* harmony export */ resolveWebSQLFlags: () => (/* reexport safe */ _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_8__.resolveWebSQLFlags)
8179
+ /* harmony export */ AbstractWebPowerSyncDatabaseOpenFactory: () => (/* reexport safe */ _db_adapters_AbstractWebPowerSyncDatabaseOpenFactory_js__WEBPACK_IMPORTED_MODULE_2__.AbstractWebPowerSyncDatabaseOpenFactory),
8180
+ /* harmony export */ AbstractWebSQLOpenFactory: () => (/* reexport safe */ _db_adapters_AbstractWebSQLOpenFactory_js__WEBPACK_IMPORTED_MODULE_3__.AbstractWebSQLOpenFactory),
8181
+ /* harmony export */ AsyncWASQLiteModuleFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_5__.AsyncWASQLiteModuleFactory),
8182
+ /* harmony export */ DEFAULT_CACHE_SIZE_KB: () => (/* reexport safe */ _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_9__.DEFAULT_CACHE_SIZE_KB),
8183
+ /* harmony export */ DEFAULT_MODULE_FACTORIES: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_5__.DEFAULT_MODULE_FACTORIES),
8184
+ /* harmony export */ DEFAULT_POWERSYNC_FLAGS: () => (/* reexport safe */ _db_PowerSyncDatabase_js__WEBPACK_IMPORTED_MODULE_10__.DEFAULT_POWERSYNC_FLAGS),
8185
+ /* harmony export */ DEFAULT_WEB_SQL_FLAGS: () => (/* reexport safe */ _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_9__.DEFAULT_WEB_SQL_FLAGS),
8186
+ /* harmony export */ IndexDBFileSystemStorageAdapter: () => (/* reexport safe */ _attachments_IndexDBFileSystemAdapter_js__WEBPACK_IMPORTED_MODULE_1__.IndexDBFileSystemStorageAdapter),
8187
+ /* harmony export */ MultiCipherAsyncWASQLiteModuleFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_5__.MultiCipherAsyncWASQLiteModuleFactory),
8188
+ /* harmony export */ MultiCipherSyncWASQLiteModuleFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_5__.MultiCipherSyncWASQLiteModuleFactory),
8189
+ /* harmony export */ PowerSyncDatabase: () => (/* reexport safe */ _db_PowerSyncDatabase_js__WEBPACK_IMPORTED_MODULE_10__.PowerSyncDatabase),
8190
+ /* harmony export */ SharedWebStreamingSyncImplementation: () => (/* reexport safe */ _db_sync_SharedWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_11__.SharedWebStreamingSyncImplementation),
8191
+ /* harmony export */ SyncWASQLiteModuleFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_5__.SyncWASQLiteModuleFactory),
8192
+ /* harmony export */ TemporaryStorageOption: () => (/* reexport safe */ _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_9__.TemporaryStorageOption),
8193
+ /* harmony export */ WASQLiteDBAdapter: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteDBAdapter_js__WEBPACK_IMPORTED_MODULE_6__.WASQLiteDBAdapter),
8194
+ /* harmony export */ WASQLiteOpenFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteOpenFactory_js__WEBPACK_IMPORTED_MODULE_7__.WASQLiteOpenFactory),
8195
+ /* harmony export */ WASQLitePowerSyncDatabaseOpenFactory: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLitePowerSyncDatabaseOpenFactory_js__WEBPACK_IMPORTED_MODULE_8__.WASQLitePowerSyncDatabaseOpenFactory),
8196
+ /* harmony export */ WASQLiteVFS: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_5__.WASQLiteVFS),
8197
+ /* harmony export */ WASqliteConnection: () => (/* reexport safe */ _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_5__.WASqliteConnection),
8198
+ /* harmony export */ WebRemote: () => (/* reexport safe */ _db_sync_WebRemote_js__WEBPACK_IMPORTED_MODULE_12__.WebRemote),
8199
+ /* harmony export */ WebStreamingSyncImplementation: () => (/* reexport safe */ _db_sync_WebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_13__.WebStreamingSyncImplementation),
8200
+ /* harmony export */ isServerSide: () => (/* reexport safe */ _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_9__.isServerSide),
8201
+ /* harmony export */ resolveWebPowerSyncFlags: () => (/* reexport safe */ _db_PowerSyncDatabase_js__WEBPACK_IMPORTED_MODULE_10__.resolveWebPowerSyncFlags),
8202
+ /* harmony export */ resolveWebSQLFlags: () => (/* reexport safe */ _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_9__.resolveWebSQLFlags)
7982
8203
  /* harmony export */ });
7983
8204
  /* harmony import */ var _powersync_common__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @powersync/common */ "@powersync/common");
7984
8205
  /* harmony reexport (unknown) */ var __WEBPACK_REEXPORT_OBJECT__ = {};
7985
8206
  /* harmony reexport (unknown) */ for(const __WEBPACK_IMPORT_KEY__ in _powersync_common__WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== "default") __WEBPACK_REEXPORT_OBJECT__[__WEBPACK_IMPORT_KEY__] = () => _powersync_common__WEBPACK_IMPORTED_MODULE_0__[__WEBPACK_IMPORT_KEY__]
7986
8207
  /* harmony reexport (unknown) */ __webpack_require__.d(__webpack_exports__, __WEBPACK_REEXPORT_OBJECT__);
7987
- /* harmony import */ var _db_adapters_AbstractWebPowerSyncDatabaseOpenFactory_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./db/adapters/AbstractWebPowerSyncDatabaseOpenFactory.js */ "./lib/src/db/adapters/AbstractWebPowerSyncDatabaseOpenFactory.js");
7988
- /* harmony import */ var _db_adapters_AbstractWebSQLOpenFactory_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./db/adapters/AbstractWebSQLOpenFactory.js */ "./lib/src/db/adapters/AbstractWebSQLOpenFactory.js");
7989
- /* harmony import */ var _db_adapters_AsyncDatabaseConnection_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./db/adapters/AsyncDatabaseConnection.js */ "./lib/src/db/adapters/AsyncDatabaseConnection.js");
7990
- /* harmony import */ var _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./db/adapters/wa-sqlite/WASQLiteConnection.js */ "./lib/src/db/adapters/wa-sqlite/WASQLiteConnection.js");
7991
- /* harmony import */ var _db_adapters_wa_sqlite_WASQLiteDBAdapter_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./db/adapters/wa-sqlite/WASQLiteDBAdapter.js */ "./lib/src/db/adapters/wa-sqlite/WASQLiteDBAdapter.js");
7992
- /* harmony import */ var _db_adapters_wa_sqlite_WASQLiteOpenFactory_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./db/adapters/wa-sqlite/WASQLiteOpenFactory.js */ "./lib/src/db/adapters/wa-sqlite/WASQLiteOpenFactory.js");
7993
- /* harmony import */ var _db_adapters_wa_sqlite_WASQLitePowerSyncDatabaseOpenFactory_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./db/adapters/wa-sqlite/WASQLitePowerSyncDatabaseOpenFactory.js */ "./lib/src/db/adapters/wa-sqlite/WASQLitePowerSyncDatabaseOpenFactory.js");
7994
- /* harmony import */ var _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./db/adapters/web-sql-flags.js */ "./lib/src/db/adapters/web-sql-flags.js");
7995
- /* harmony import */ var _db_PowerSyncDatabase_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./db/PowerSyncDatabase.js */ "./lib/src/db/PowerSyncDatabase.js");
7996
- /* harmony import */ var _db_sync_SharedWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./db/sync/SharedWebStreamingSyncImplementation.js */ "./lib/src/db/sync/SharedWebStreamingSyncImplementation.js");
7997
- /* harmony import */ var _db_sync_WebRemote_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./db/sync/WebRemote.js */ "./lib/src/db/sync/WebRemote.js");
7998
- /* harmony import */ var _db_sync_WebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./db/sync/WebStreamingSyncImplementation.js */ "./lib/src/db/sync/WebStreamingSyncImplementation.js");
8208
+ /* harmony import */ var _attachments_IndexDBFileSystemAdapter_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./attachments/IndexDBFileSystemAdapter.js */ "./lib/src/attachments/IndexDBFileSystemAdapter.js");
8209
+ /* harmony import */ var _db_adapters_AbstractWebPowerSyncDatabaseOpenFactory_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./db/adapters/AbstractWebPowerSyncDatabaseOpenFactory.js */ "./lib/src/db/adapters/AbstractWebPowerSyncDatabaseOpenFactory.js");
8210
+ /* harmony import */ var _db_adapters_AbstractWebSQLOpenFactory_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./db/adapters/AbstractWebSQLOpenFactory.js */ "./lib/src/db/adapters/AbstractWebSQLOpenFactory.js");
8211
+ /* harmony import */ var _db_adapters_AsyncDatabaseConnection_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./db/adapters/AsyncDatabaseConnection.js */ "./lib/src/db/adapters/AsyncDatabaseConnection.js");
8212
+ /* harmony import */ var _db_adapters_wa_sqlite_WASQLiteConnection_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./db/adapters/wa-sqlite/WASQLiteConnection.js */ "./lib/src/db/adapters/wa-sqlite/WASQLiteConnection.js");
8213
+ /* harmony import */ var _db_adapters_wa_sqlite_WASQLiteDBAdapter_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./db/adapters/wa-sqlite/WASQLiteDBAdapter.js */ "./lib/src/db/adapters/wa-sqlite/WASQLiteDBAdapter.js");
8214
+ /* harmony import */ var _db_adapters_wa_sqlite_WASQLiteOpenFactory_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./db/adapters/wa-sqlite/WASQLiteOpenFactory.js */ "./lib/src/db/adapters/wa-sqlite/WASQLiteOpenFactory.js");
8215
+ /* harmony import */ var _db_adapters_wa_sqlite_WASQLitePowerSyncDatabaseOpenFactory_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./db/adapters/wa-sqlite/WASQLitePowerSyncDatabaseOpenFactory.js */ "./lib/src/db/adapters/wa-sqlite/WASQLitePowerSyncDatabaseOpenFactory.js");
8216
+ /* harmony import */ var _db_adapters_web_sql_flags_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./db/adapters/web-sql-flags.js */ "./lib/src/db/adapters/web-sql-flags.js");
8217
+ /* harmony import */ var _db_PowerSyncDatabase_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./db/PowerSyncDatabase.js */ "./lib/src/db/PowerSyncDatabase.js");
8218
+ /* harmony import */ var _db_sync_SharedWebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./db/sync/SharedWebStreamingSyncImplementation.js */ "./lib/src/db/sync/SharedWebStreamingSyncImplementation.js");
8219
+ /* harmony import */ var _db_sync_WebRemote_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./db/sync/WebRemote.js */ "./lib/src/db/sync/WebRemote.js");
8220
+ /* harmony import */ var _db_sync_WebStreamingSyncImplementation_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./db/sync/WebStreamingSyncImplementation.js */ "./lib/src/db/sync/WebStreamingSyncImplementation.js");
8221
+
7999
8222
 
8000
8223
 
8001
8224