kui-utils 0.0.35 → 0.0.36

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/cjs/index.js CHANGED
@@ -2105,7 +2105,7 @@ function cleanObjectForIndexDB(value) {
2105
2105
  return value;
2106
2106
  }
2107
2107
  var transactionQueue = Promise.resolve();
2108
- function addToIndexDBWithQueue(db, storeName, data, loader) {
2108
+ function addToIndexDBWithQueue(db, storeName, data, loader, errorHandler) {
2109
2109
  transactionQueue = transactionQueue
2110
2110
  .then(function () {
2111
2111
  return new Promise(function (resolve, reject) {
@@ -2114,14 +2114,17 @@ function addToIndexDBWithQueue(db, storeName, data, loader) {
2114
2114
  var store = transaction.objectStore(storeName);
2115
2115
  // eslint-disable-next-line no-param-reassign
2116
2116
  data.id = 1;
2117
- var formattedData = cleanObjectForIndexDB(data);
2118
- var request_1 = store.put(formattedData);
2117
+ var formattedData_1 = cleanObjectForIndexDB(data);
2118
+ var request_1 = store.put(formattedData_1);
2119
2119
  request_1.onsuccess = function () {
2120
2120
  resolve(request_1);
2121
2121
  };
2122
- request_1.onerror = function () {
2123
- loader.setError("Не удалось сохранить данные в локальное хранилище");
2124
- reject();
2122
+ request_1.onerror = function (event) {
2123
+ var _a;
2124
+ var error = ((_a = event.target) === null || _a === void 0 ? void 0 : _a.error) || new Error("Unknown IndexedDB error");
2125
+ loader.setError("Не удалось сохранить данные в локальное хранилище", error);
2126
+ errorHandler(error, formattedData_1);
2127
+ reject(error);
2125
2128
  };
2126
2129
  }
2127
2130
  });
@@ -2130,7 +2133,7 @@ function addToIndexDBWithQueue(db, storeName, data, loader) {
2130
2133
  console.error("Ошибка в очереди транзакций:", error);
2131
2134
  });
2132
2135
  }
2133
- var readFromIndexDB = function (db, name, loader) { return __awaiter(void 0, void 0, void 0, function () {
2136
+ var readFromIndexDB = function (db, name, loader, errorHandler) { return __awaiter(void 0, void 0, void 0, function () {
2134
2137
  var transaction, request_2;
2135
2138
  return __generator(this, function (_a) {
2136
2139
  if (db.objectStoreNames.contains(name)) {
@@ -2138,8 +2141,10 @@ var readFromIndexDB = function (db, name, loader) { return __awaiter(void 0, voi
2138
2141
  request_2 = transaction.getAll();
2139
2142
  return [2 /*return*/, new Promise(function (resolve, reject) {
2140
2143
  request_2.onerror = function () {
2144
+ var error = request_2.error;
2145
+ loader.setError("Не удалось прочитать данные с локального хранилища", error);
2146
+ errorHandler(error, request_2);
2141
2147
  reject();
2142
- loader.setError("Не удалось сохранить данные в локальное хранилище");
2143
2148
  };
2144
2149
  request_2.onsuccess = function () {
2145
2150
  var _a;
@@ -2150,9 +2155,10 @@ var readFromIndexDB = function (db, name, loader) { return __awaiter(void 0, voi
2150
2155
  return [2 /*return*/, null];
2151
2156
  });
2152
2157
  }); };
2153
- var initIndexDB = function (dbName, onupgradeneeded, loader, setIndexDB) {
2158
+ var initIndexDB = function (dbName, onupgradeneeded, loader, setIndexDB, errorHandler) {
2154
2159
  var dbRequest = indexedDB.open(dbName, 1);
2155
2160
  dbRequest.onerror = function () {
2161
+ errorHandler(dbRequest.error, "Ошибка при открытии хранилища на устройстве");
2156
2162
  loader.setError("Ошибка при открытии хранилища на устройстве. Данные не будут сохраняться локально");
2157
2163
  };
2158
2164
  dbRequest.onsuccess = function () {
@@ -2166,16 +2172,24 @@ var addIndexDBStore = function (db, name) {
2166
2172
  db.createObjectStore(name, { keyPath: "id" });
2167
2173
  }
2168
2174
  };
2169
- var clearIndexStore = function (db, name) {
2175
+ var clearIndexStore = function (db, name, errorHandler) {
2170
2176
  if (db) {
2171
- var transaction = db.transaction(name, "readwrite");
2172
- var objectStore = transaction.objectStore(name);
2173
- objectStore.clear();
2177
+ var transaction_1 = db.transaction(name, "readwrite");
2178
+ transaction_1.onerror = function () {
2179
+ var error = transaction_1.error;
2180
+ errorHandler(error, "\u041E\u0448\u0438\u0431\u043A\u0430 \u0441\u043E\u0437\u0434\u0430\u043D\u0438\u044F \u0442\u0440\u0430\u043D\u0437\u0430\u043A\u0446\u0438\u0438: ".concat(name));
2181
+ };
2182
+ var objectStore = transaction_1.objectStore(name);
2183
+ var objectStoreRequest_1 = objectStore.clear();
2184
+ objectStoreRequest_1.onerror = function () {
2185
+ var error = objectStoreRequest_1.error;
2186
+ errorHandler(error, "\u041E\u0448\u0438\u0431\u043A\u0430 \u043E\u0447\u0438\u0441\u0442\u043A\u0438 objectStore: ".concat(name));
2187
+ };
2174
2188
  }
2175
2189
  };
2176
- var clearIndexStores = function (db, stores) {
2190
+ var clearIndexStores = function (db, stores, errorHandler) {
2177
2191
  Array.from(stores).forEach(function (name) {
2178
- clearIndexStore(db, name);
2192
+ clearIndexStore(db, name, errorHandler);
2179
2193
  });
2180
2194
  };
2181
2195