Pretty print wallet database.
This commit is contained in:
parent
b2b2cd6dfc
commit
833a2cf41d
@ -58,7 +58,6 @@ function confirmReserve(db, detail, sendResponse) {
|
||||
let reserveRecord = {
|
||||
reserve_pub: keypair.pub,
|
||||
reserve_priv: keypair.priv,
|
||||
keypair: keypair,
|
||||
mint_base_url: detail.mint,
|
||||
created: now,
|
||||
last_query: null,
|
||||
@ -76,8 +75,10 @@ function confirmReserve(db, detail, sendResponse) {
|
||||
let tx = db.transaction(['reserves'], 'readwrite');
|
||||
tx.objectStore('reserves').add(reserveRecord);
|
||||
tx.addEventListener('complete', (e) => {
|
||||
console.log('tx complete');
|
||||
console.log('tx complete, pk was ' + reserveRecord.reserve_pub);
|
||||
sendResponse(resp);
|
||||
updateReserveMints(db);
|
||||
// We have to update the mints now ...
|
||||
});
|
||||
break;
|
||||
default:
|
||||
@ -90,6 +91,42 @@ function confirmReserve(db, detail, sendResponse) {
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Fetch information for mints that
|
||||
* are referenced in a reserve and that were not
|
||||
* updated recently.
|
||||
*/
|
||||
function updateReserveMints(db) {
|
||||
|
||||
}
|
||||
|
||||
|
||||
function dumpDb(db, detail, sendResponse) {
|
||||
let dump = {};
|
||||
dump.name = db.name;
|
||||
dump.version = db.version;
|
||||
dump.stores = {};
|
||||
console.log("stores: " + JSON.stringify(db.objectStoreNames));
|
||||
let tx = db.transaction(db.objectStoreNames);
|
||||
tx.addEventListener('complete', (e) => {
|
||||
sendResponse(dump);
|
||||
});
|
||||
for (let i = 0; i < db.objectStoreNames.length; i++) {
|
||||
let name = db.objectStoreNames[i];
|
||||
let storeDump = {};
|
||||
dump.stores[name] = storeDump;
|
||||
let store = tx.objectStore(name).openCursor().addEventListener('success', (e) => {
|
||||
let cursor = event.target.result;
|
||||
if (cursor) {
|
||||
storeDump[cursor.key] = cursor.value;
|
||||
cursor.continue();
|
||||
}
|
||||
});
|
||||
}
|
||||
return true;
|
||||
}
|
||||
|
||||
withTalerDb((db) => {
|
||||
console.log("db loaded");
|
||||
chrome.runtime.onMessage.addListener(
|
||||
@ -100,6 +137,9 @@ withTalerDb((db) => {
|
||||
case "confirm-reserve":
|
||||
return confirmReserve(db, req.detail, onresponse)
|
||||
break;
|
||||
case "dump-db":
|
||||
console.log('dumping db');
|
||||
return dumpDb(db, req.detail, onresponse);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
14
extension/pages/show-db.html
Normal file
14
extension/pages/show-db.html
Normal file
@ -0,0 +1,14 @@
|
||||
|
||||
<!doctype html>
|
||||
|
||||
<html>
|
||||
<head>
|
||||
<title>Taler Wallet: Reserve Created</title>
|
||||
<link rel="stylesheet" type="text/css" href="../style/wallet.css">
|
||||
<script src="show-db.js"></script>
|
||||
</head>
|
||||
<body>
|
||||
<h1>DB Dump</h1>
|
||||
<pre id="dump"></pre>
|
||||
</body>
|
||||
</html>
|
27
extension/pages/show-db.js
Normal file
27
extension/pages/show-db.js
Normal file
@ -0,0 +1,27 @@
|
||||
function replacer(match, pIndent, pKey, pVal, pEnd) {
|
||||
var key = '<span class=json-key>';
|
||||
var val = '<span class=json-value>';
|
||||
var str = '<span class=json-string>';
|
||||
var r = pIndent || '';
|
||||
if (pKey)
|
||||
r = r + key + pKey.replace(/[": ]/g, '') + '</span>: ';
|
||||
if (pVal)
|
||||
r = r + (pVal[0] == '"' ? str : val) + pVal + '</span>';
|
||||
return r + (pEnd || '');
|
||||
}
|
||||
|
||||
|
||||
function prettyPrint(obj) {
|
||||
var jsonLine = /^( *)("[\w]+": )?("[^"]*"|[\w.+-]*)?([,[{])?$/mg;
|
||||
return JSON.stringify(obj, null, 3)
|
||||
.replace(/&/g, '&').replace(/\\"/g, '"')
|
||||
.replace(/</g, '<').replace(/>/g, '>')
|
||||
.replace(jsonLine, replacer);
|
||||
}
|
||||
|
||||
|
||||
document.addEventListener("DOMContentLoaded", (e) => {
|
||||
chrome.runtime.sendMessage({type:'dump-db'}, (resp) => {
|
||||
document.getElementById('dump').innerHTML = prettyPrint(resp);
|
||||
});
|
||||
});
|
@ -17,3 +17,13 @@ input.url {
|
||||
|
||||
.formish {
|
||||
}
|
||||
|
||||
.json-key {
|
||||
color: brown;
|
||||
}
|
||||
.json-value {
|
||||
color: navy;
|
||||
}
|
||||
.json-string {
|
||||
color: olive;
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user