Update wallet UI to use PaperclipChain

- Remove Ethereum/Web3 references from HTML
- Create PaperclipWallets class with Ed25519 key support
- Add PaperclipDatabase for wallet storage
- Update module loading order in index.html
- Convert button classes from btn-etho to btn-clips
This commit is contained in:
2025-06-15 18:39:48 -07:00
parent dab604463f
commit 1ceb56c7b8
4 changed files with 604 additions and 39 deletions

View File

@@ -3,7 +3,7 @@
<head>
<meta charset="UTF-8">
<title>$ETHO Desktop Wallet</title>
<title>PaperclipWallet</title>
<link href="https://fonts.googleapis.com/css2?family=Fira+Mono:wght@400;500;700&amp;display=swap" rel="stylesheet">
<link rel="stylesheet" href="./assets/styles/materialize.min.css">
<link rel="stylesheet" href="./assets/styles/datatables.min.css">
@@ -29,7 +29,6 @@
<span id="nodestorage" style="display:none;">Loading</span>
<!-- normal script imports etc -->
<script src="https://cdn.jsdelivr.net/gh/ethereum/web3.js@1.0.0-beta.36/dist/web3.min.js" integrity="sha256-nWBTbvxhJgjslRyuAKJHK+XcZPlCnmIAAMixz6EefVk=" crossorigin="anonymous"></script>
<script src="./assets/scripts/jquery.min.js"></script>
<script src='https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js'></script>
<script src="./assets/scripts/handlebars.js"></script>
@@ -74,10 +73,10 @@
});
var timeouts = [
{ text: "Starting Node...", delay: 1250 },
{ text: "Connecting to Network...", delay: 6400 },
{ text: "Updating...", delay: 7320 },
{ text: "Launching...", delay: 7400 }
{ text: "Starting PaperclipChain node...", delay: 1250 },
{ text: "Connecting to network...", delay: 6400 },
{ text: "Loading wallet...", delay: 7320 },
{ text: "Ready", delay: 7400 }
];
timeouts.forEach((item, index) => {
@@ -86,14 +85,16 @@
}, item.delay + Math.random() * 50 * index);
});
$(document).on("onGethReady", function () {
$(document).on("onNodeReady", function () {
setTimeout(() => {
loading_screen.finish();
}, 5500);
});
$(window).on("beforeunload", function () {
EthoBlockchain.closeConnection();
if (window.PaperclipChain) {
PaperclipChain.stopConnection();
}
});
</script>
@@ -117,7 +118,7 @@
</a>
<a class="item" style="padding-top: 30px; padding-left: 13px" id="mainNavBtnSend" href="#" data-tippy="Send Funds" data-tippy-delay="100">
<i class="fas fa-comment-dollar fa-1x"></i>
<span class="sendEtho"> Send </span>
<span class="sendClips"> Send </span>
</a>
<a class="item" style="padding-top: 30px; padding-left: 13px" id="mainNavBtnTransactions" href="#" data-tippy="Transactions" data-tippy-delay="100">
<i class="fas fa-exchange-alt fa-1x"></i>
@@ -142,17 +143,17 @@
<div id="mainContent"></div>
<div id="syncProgress"></div>
<script>
// You can also require other files to run in this process
require('./renderer/about.js');
require('./renderer/send.js');
// PaperclipChain renderer modules
require('./renderer/paperclip-database.js');
require('./renderer/blockchain.js');
require('./renderer/paperclip-wallets.js');
require('./renderer/utils.js');
require('./renderer/maingui.js');
require('./renderer/about.js');
require('./renderer/send.js');
require('./renderer/syncing.js');
require('./renderer/markets.js');
require('./renderer/settings.js');
require('./renderer/wallets.js');
require('./renderer/database.js');
require('./renderer/blockchain.js');
require('./renderer/addressBook.js');
require('./renderer/transactions.js');
require('./renderer/tableTransactions.js');
@@ -165,7 +166,7 @@
<div class="form-group">
<span id="txtGeneralError"></span>
</div>
<button type="button" class="btn btn-etho btn-dialog-confirm" id="btnGeneralErrorOK">OK</button>
<button type="button" class="btn btn-clips btn-dialog-confirm" id="btnGeneralErrorOK">OK</button>
</div>
</div>
@@ -175,27 +176,27 @@
<div class="form-group">
<span id="txtGeneralConfirm"></span>
</div>
<button type="button" class="btn btn-etho btn-dialog-cancel" id="btnGeneralConfirmNo">No</button>
<button type="button" class="btn btn-etho btn-dialog-confirm" id="btnGeneralConfirmYes">Yes</button>
<button type="button" class="btn btn-clips btn-dialog-cancel" id="btnGeneralConfirmNo">No</button>
<button type="button" class="btn btn-clips btn-dialog-confirm" id="btnGeneralConfirmYes">Yes</button>
</div>
</div>
<!-- The modal for about info -->
<div id="dlgAboutInfo" class="modalDialog" data-izimodal-title="About Etho Protocol Wallet" data-izimodal-icon="icon-home">
<div id="dlgAboutInfo" class="modalDialog" data-izimodal-title="About PaperclipWallet" data-izimodal-icon="icon-home">
<div class="modalBody">
<div class="aboutInfo">
<div class="infoText" id="aboutInfoWallet">Etho Protocol Wallet</div>
<div class="infoText" id="aboutInfoWallet">PaperclipWallet</div>
<div class="infoText" id="aboutInfoGitHub">GitHub:
<a id="urlOpenGitHub" href="https://github.com/Ether1Project/Ether1DesktopWallet">https://github.com/Ether1Project/Ether1DesktopWallet</a>
<a id="urlOpenGitHub" href="https://git.takoyaki.cool/matt/paperclip-wallet">https://git.takoyaki.cool/matt/paperclip-wallet</a>
</div>
<div class="infoText" id="aboutInfoLicence">Made under
<a id="urlOpenLicence" href="https://choosealicense.com/licenses/gpl-3.0">GPL v3.0</a>
<a id="urlOpenLicence" href="https://choosealicense.com/licenses/cc0-1.0">CC0 1.0</a>
licence
</div>
<div class="infoText" id="aboutInfoVersion">Version:
<span id="versionNumber"></span></div>
</div>
<button type="button" class="btn btn-etho btn-dialog-confirm" id="btnAboutInfoClose">Close</button>
<button type="button" class="btn btn-clips btn-dialog-confirm" id="btnAboutInfoClose">Close</button>
</div>
</div>
</body>
@@ -204,7 +205,7 @@
<div id="dlgShowAddressQRCode" class="modalDialog" data-izimodal-title="Address QR-Code" data-izimodal-subtitle="Scan the QR-Code to get the address..." data-izimodal-icon="icon-home">
<div class="modalBody">
<div id="addrQRCode"></div>
<button type="button" class="btn btn-etho btn-dialog-confirm" id="btnScanQRCodeClose">Close</button>
<button type="button" class="btn btn-clips btn-dialog-confirm" id="btnScanQRCodeClose">Close</button>
</div>
</div>