kui-utils 0.0.35 → 0.0.37
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 +30 -9
- package/cjs/index.js.map +1 -1
- package/index.d.ts +2 -0
- package/index.js +30 -9
- package/index.js.map +1 -1
- package/package.json +1 -1
package/index.d.ts
CHANGED
|
@@ -202,6 +202,7 @@ declare const _default: ({
|
|
|
202
202
|
|
|
203
203
|
declare type KUIUtilsSettingsParams = {
|
|
204
204
|
runMode?: "production" | "development" | "test";
|
|
205
|
+
Sentry?: any;
|
|
205
206
|
};
|
|
206
207
|
declare type KUICrmObserver = (settings: KUIUtilsSettingsParams) => void;
|
|
207
208
|
declare class KUIUtilsSettings {
|
|
@@ -211,6 +212,7 @@ declare class KUIUtilsSettings {
|
|
|
211
212
|
constructor();
|
|
212
213
|
getSettings: () => {
|
|
213
214
|
runMode?: "production" | "development" | "test" | undefined;
|
|
215
|
+
Sentry?: any;
|
|
214
216
|
};
|
|
215
217
|
setSettings: (newSettings: KUIUtilsSettingsParams) => void;
|
|
216
218
|
subscribeToSettings: (observer: KUICrmObserver) => void;
|
package/index.js
CHANGED
|
@@ -2078,6 +2078,13 @@ function cleanObjectForIndexDB(value) {
|
|
|
2078
2078
|
return value;
|
|
2079
2079
|
}
|
|
2080
2080
|
var transactionQueue = Promise.resolve();
|
|
2081
|
+
var errorHandler = function (err, data) {
|
|
2082
|
+
var Sentry = kuiUtilsSettings.getSettings().Sentry;
|
|
2083
|
+
if (err)
|
|
2084
|
+
Sentry === null || Sentry === void 0 ? void 0 : Sentry.captureException(err);
|
|
2085
|
+
if (data)
|
|
2086
|
+
Sentry === null || Sentry === void 0 ? void 0 : Sentry.captureMessage(JSON.stringify(data));
|
|
2087
|
+
};
|
|
2081
2088
|
function addToIndexDBWithQueue(db, storeName, data, loader) {
|
|
2082
2089
|
transactionQueue = transactionQueue
|
|
2083
2090
|
.then(function () {
|
|
@@ -2087,14 +2094,17 @@ function addToIndexDBWithQueue(db, storeName, data, loader) {
|
|
|
2087
2094
|
var store = transaction.objectStore(storeName);
|
|
2088
2095
|
// eslint-disable-next-line no-param-reassign
|
|
2089
2096
|
data.id = 1;
|
|
2090
|
-
var
|
|
2091
|
-
var request_1 = store.put(
|
|
2097
|
+
var formattedData_1 = cleanObjectForIndexDB(data);
|
|
2098
|
+
var request_1 = store.put(formattedData_1);
|
|
2092
2099
|
request_1.onsuccess = function () {
|
|
2093
2100
|
resolve(request_1);
|
|
2094
2101
|
};
|
|
2095
|
-
request_1.onerror = function () {
|
|
2096
|
-
|
|
2097
|
-
|
|
2102
|
+
request_1.onerror = function (event) {
|
|
2103
|
+
var _a;
|
|
2104
|
+
var error = ((_a = event.target) === null || _a === void 0 ? void 0 : _a.error) || new Error("Unknown IndexedDB error");
|
|
2105
|
+
loader.setError("Не удалось сохранить данные в локальное хранилище", error);
|
|
2106
|
+
errorHandler(error, formattedData_1);
|
|
2107
|
+
reject(error);
|
|
2098
2108
|
};
|
|
2099
2109
|
}
|
|
2100
2110
|
});
|
|
@@ -2111,8 +2121,10 @@ var readFromIndexDB = function (db, name, loader) { return __awaiter(void 0, voi
|
|
|
2111
2121
|
request_2 = transaction.getAll();
|
|
2112
2122
|
return [2 /*return*/, new Promise(function (resolve, reject) {
|
|
2113
2123
|
request_2.onerror = function () {
|
|
2124
|
+
var error = request_2.error;
|
|
2125
|
+
loader.setError("Не удалось прочитать данные с локального хранилища", error);
|
|
2126
|
+
errorHandler(error, request_2);
|
|
2114
2127
|
reject();
|
|
2115
|
-
loader.setError("Не удалось сохранить данные в локальное хранилище");
|
|
2116
2128
|
};
|
|
2117
2129
|
request_2.onsuccess = function () {
|
|
2118
2130
|
var _a;
|
|
@@ -2126,6 +2138,7 @@ var readFromIndexDB = function (db, name, loader) { return __awaiter(void 0, voi
|
|
|
2126
2138
|
var initIndexDB = function (dbName, onupgradeneeded, loader, setIndexDB) {
|
|
2127
2139
|
var dbRequest = indexedDB.open(dbName, 1);
|
|
2128
2140
|
dbRequest.onerror = function () {
|
|
2141
|
+
errorHandler(dbRequest.error, "Ошибка при открытии хранилища на устройстве");
|
|
2129
2142
|
loader.setError("Ошибка при открытии хранилища на устройстве. Данные не будут сохраняться локально");
|
|
2130
2143
|
};
|
|
2131
2144
|
dbRequest.onsuccess = function () {
|
|
@@ -2141,9 +2154,17 @@ var addIndexDBStore = function (db, name) {
|
|
|
2141
2154
|
};
|
|
2142
2155
|
var clearIndexStore = function (db, name) {
|
|
2143
2156
|
if (db) {
|
|
2144
|
-
var
|
|
2145
|
-
|
|
2146
|
-
|
|
2157
|
+
var transaction_1 = db.transaction(name, "readwrite");
|
|
2158
|
+
transaction_1.onerror = function () {
|
|
2159
|
+
var error = transaction_1.error;
|
|
2160
|
+
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));
|
|
2161
|
+
};
|
|
2162
|
+
var objectStore = transaction_1.objectStore(name);
|
|
2163
|
+
var objectStoreRequest_1 = objectStore.clear();
|
|
2164
|
+
objectStoreRequest_1.onerror = function () {
|
|
2165
|
+
var error = objectStoreRequest_1.error;
|
|
2166
|
+
errorHandler(error, "\u041E\u0448\u0438\u0431\u043A\u0430 \u043E\u0447\u0438\u0441\u0442\u043A\u0438 objectStore: ".concat(name));
|
|
2167
|
+
};
|
|
2147
2168
|
}
|
|
2148
2169
|
};
|
|
2149
2170
|
var clearIndexStores = function (db, stores) {
|