diff --git a/index.html b/index.html
index d8d3caf8..052dfe04 100644
--- a/index.html
+++ b/index.html
@@ -7921,7 +7921,7 @@
-
+
diff --git a/libs/indexedDB.js b/libs/indexedDB.js
index 9b2578e9..37e89c13 100644
--- a/libs/indexedDB.js
+++ b/libs/indexedDB.js
@@ -2,44 +2,40 @@ let db;
const DATABASE_NAME = "d2";
const STORE_NAME = "s";
-const KEY_PATH = "key";
const openDatabase = () => {
return new Promise((resolve, reject) => {
- if (db) {
+ if (db) resolve();
+
+ if (!window.indexedDB) return reject("IndexedDB is not supported");
+ const request = window.indexedDB.open(DATABASE_NAME);
+
+ request.onsuccess = event => {
+ db = event.target.result;
resolve();
- } else {
- const request = window.indexedDB.open(DATABASE_NAME, 1);
+ };
- request.onsuccess = event => {
+ request.onerror = event => {
+ console.error("IndexedDB request error");
+ reject();
+ };
+
+ request.onupgradeneeded = event => {
+ db = event.target.result;
+ const objectStore = db.createObjectStore(STORE_NAME, {keyPath: "key"});
+ objectStore.transaction.oncomplete = () => {
db = event.target.result;
- resolve();
};
-
- request.onerror = event => {
- console.error("indexedDB request error");
- reject();
- };
-
- request.onupgradeneeded = event => {
- db = event.target.result;
- const objectStore = db.createObjectStore(STORE_NAME, {keyPath: KEY_PATH});
- objectStore.transaction.oncomplete = () => {
- db = event.target.result;
- };
- };
- }
+ };
});
};
const ldb = {
get: key => {
return new Promise((resolve, reject) => {
- if (!window.indexedDB) return reject("indexedDB not supported");
-
openDatabase().then(() => {
const hasStore = Array.from(db.objectStoreNames).includes(STORE_NAME);
- if (!hasStore) return reject("no store found");
+ if (!hasStore) return reject("IndexedDB: no store found");
const transaction = db.transaction(STORE_NAME, "readonly");
const objectStore = transaction.objectStore(STORE_NAME);
@@ -53,14 +49,12 @@ const ldb = {
});
},
- set: (key, value) => {
- return new Promise((resolve, reject) => {
- if (!window.indexedDB) return reject("indexedDB not supported");
-
+ set: (keyName, value) => {
+ return new Promise(resolve => {
openDatabase().then(() => {
const transaction = db.transaction(STORE_NAME, "readwrite");
- const objectStore = transaction.objectStore(STORE_NAME);
- const putRequest = objectStore.put({key, value});
+ const objectStore = transaction.objectStore([STORE_NAME]);
+ const putRequest = objectStore.put({key: keyName, value});
putRequest.onsuccess = () => {
resolve();
diff --git a/versioning.js b/versioning.js
index ac42605d..0afe7e11 100644
--- a/versioning.js
+++ b/versioning.js
@@ -1,7 +1,7 @@
"use strict";
// version and caching control
-const version = "1.91.00"; // generator version, update each time
+const version = "1.91.01"; // generator version, update each time
{
document.title += " v" + version;