tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

basicIDB_PBM.html (1140B)


      1 <html>
      2 <head>
      3 	<script>
      4 		async function ensureIDB(name, ver, store) {
      5 			return new Promise((resolve, reject) => {
      6 				let createObjectStore = (db, store) => {
      7 					db.createObjectStore(store);
      8 				};
      9 
     10 				var req = indexedDB.open(name, ver);
     11 				req.onerror = reject;
     12 
     13 				req.onsuccess = () => {
     14 					resolve(req.result);
     15 				};
     16 
     17 				req.onupgradeneeded = function (event) {
     18 					let db = event.target.result;
     19 					createObjectStore(db, store);
     20 				};
     21 			});
     22 		};
     23 
     24 		async function addDataIntoIDB(idb, store, key, value) {
     25 			let db = await ensureIDB(idb, 1, store);
     26 			await (new Promise((resolve, reject) => {
     27 					var transaction = db.transaction([store], "readwrite");
     28 					var put = transaction.objectStore(store).put(value, key);
     29 					put.onerror = reject;
     30 					put.onsuccess = resolve;
     31 			}));
     32 
     33 			closeIDB(db)
     34 		};
     35 
     36 		function closeIDB(db) {
     37 			db.close();
     38 		}
     39 
     40 		function deleteIDB(db) {
     41 			return new Promise((resolve, reject) => {
     42 				let deleteReq = indexedDB.deleteDatabase(db);
     43 				deleteReq.onerror = reject;
     44 				deleteReq.onsuccess = resolve;
     45 			});
     46 		}
     47 	</script>
     48 </head>
     49 </html>