indexeddbshim 17.5.0 → 17.6.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.
@@ -1,4 +1,4 @@
1
- /*! indexeddbshim - v17.5.0 - 8/30/2026 */
1
+ /*! indexeddbshim - v17.6.0 - 9/1/2026 */
2
2
 
3
3
  (function (global, factory) {
4
4
  typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :
@@ -5390,7 +5390,7 @@
5390
5390
  * __requestsFinished: boolean,
5391
5391
  * __transFinishedCb: (err: boolean, cb: ((bool?: boolean) => void)) => void,
5392
5392
  * __callTransFinishedCb: (err: boolean, cb: ((bool?: boolean) => void)) => void,
5393
- * __transactionEndCallback: () => void,
5393
+ * __transactionEndCallback: (() => void)|undefined,
5394
5394
  * __transactionFinished: boolean,
5395
5395
  * __completed: boolean,
5396
5396
  * __transFinishedCbFired: boolean,
@@ -5425,6 +5425,19 @@
5425
5425
  * }} IDBTransactionFull
5426
5426
  */
5427
5427
 
5428
+ /**
5429
+ * @param {IDBTransactionFull} tx
5430
+ * @returns {void}
5431
+ */
5432
+ function releaseFinishedTransaction(tx) {
5433
+ var pos = tx.db.__transactions.indexOf(tx);
5434
+ if (pos !== -1) {
5435
+ tx.db.__transactions.splice(pos, 1);
5436
+ }
5437
+ tx.__transactionEndCallback = undefined;
5438
+ tx.__requests = [];
5439
+ }
5440
+
5428
5441
  /**
5429
5442
  * The IndexedDB Transaction.
5430
5443
  * @see https://dvcs.w3.org/hg/IndexedDB/raw-file/tip/Overview.html#idl-def-IDBTransaction
@@ -5989,6 +6002,7 @@
5989
6002
  } finally {
5990
6003
  activeTransactions.delete(me);
5991
6004
  me.__storeHandles = {};
6005
+ releaseFinishedTransaction(me);
5992
6006
  }
5993
6007
  }
5994
6008
  if (me.mode === 'readwrite' || me.mode === 'readonly') {
@@ -6275,6 +6289,7 @@
6275
6289
  me.dispatchEvent(evt);
6276
6290
  me.__storeHandles = {};
6277
6291
  me.dispatchEvent(createEvent('__abort'));
6292
+ releaseFinishedTransaction(me);
6278
6293
  }, 0);
6279
6294
  return undefined;
6280
6295
  }).catch(function (err) {