define(["exports"],function(_exports){function getObjectByKey(db,key,storeName){return new Promise(function(resolve,reject){var request=getStore(db,storeName).get(key);request.onerror=reject,request.onsuccess=function(){resolve(request.result)}})}function getObjectsBySingleIndexKey(db,indexName,key,storeName){return new Promise(function(resolve,reject){storeName=storeName||db.name;var results,request,index=db.transaction([storeName],"readonly").objectStore(storeName).index(indexName);"function"==typeof index.getAll?(request=index.getAll(key)).onsuccess=function(event){resolve(event.target.result)}:(results=[],(request=index.openCursor(key)).onsuccess=function(event){event=event.target.result;event?(results.push(event.value),event.continue()):resolve(results)}),request.onerror=reject})}function getStore(db,storeName,access){return storeName=storeName||db.name,db.transaction(storeName,access=access||"readonly").objectStore(storeName)}Object.defineProperty(_exports,"__esModule",{value:!0}),_exports.default=void 0,_exports.default={addObject:function(db,key,val,storeName){return new Promise(function(resolve,reject){var request=getStore(db,storeName,"readwrite").put(val,key);request.onerror=reject,request.onsuccess=resolve})},updateObject:function(db,key,val,storeName){return new Promise(function(resolve,reject){var request=getStore(db,storeName,"readwrite").put(val,key);request.onerror=reject,request.onsuccess=function(){resolve(request.result)}})},deleteObject:function(db,key,storeName){return new Promise(function(resolve,reject){var request=getStore(db,storeName,"readwrite").delete(key);request.onerror=reject,request.onsuccess=resolve})},clearObjects:function(db,storeName){return new Promise(function(resolve,reject){var request=getStore(db,storeName,"readwrite").clear();request.onerror=reject,request.onsuccess=resolve})},getAllObjects:function(db,storeName){return new Promise(function(resolve,reject){var results,request,objectStore=getStore(db,storeName);"function"==typeof objectStore.getAll?(request=objectStore.getAll()).onsuccess=function(event){resolve(event.target.result)}:(results=[],(request=objectStore.openCursor()).onsuccess=function(event){event=event.target.result;event?(results.push(event.value),event.continue()):resolve(results)}),request.onerror=reject})},getObjectByKey:getObjectByKey,getObjectsByKeys:function(db,keys,storeName){return Array.isArray(keys)&&1!==keys.length?(4