diff --git a/.vscode/settings.json b/.vscode/settings.json
index 022fb962..289f323a 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -3,7 +3,7 @@
"editor.guides.bracketPairs": true,
"editor.formatOnSave": true,
"editor.defaultFormatter": "esbenp.prettier-vscode",
- "editor.codeActionsOnSave": ["source.fixAll.eslint"],
+ // "editor.codeActionsOnSave": ["source.fixAll.eslint"],
"eslint.validate": ["javascript", "javascriptreact", "typescript", "vue"],
"files.exclude": {
"**/.git": true,
diff --git a/src/components/HistoryTable.vue b/src/components/HistoryTable.vue
index c15397fb..3df9a6fd 100644
--- a/src/components/HistoryTable.vue
+++ b/src/components/HistoryTable.vue
@@ -71,6 +71,18 @@
+
+
+
No history yet
@@ -107,8 +119,14 @@ export default defineComponent({
return {
currentPage: 1,
pageSize: 5,
+ filterPending: false,
};
},
+ watch: {
+ filterPending: function () {
+ this.currentPage = 1;
+ },
+ },
computed: {
...mapState(useTokensStore, ["historyTokens"]),
...mapWritableState(useReceiveTokensStore, [
@@ -121,6 +139,13 @@ export default defineComponent({
paginatedTokens() {
const start = (this.currentPage - 1) * this.pageSize;
const end = start + this.pageSize;
+ if (this.filterPending) {
+ return this.historyTokens
+ .filter((token) => token.status === "pending")
+ .slice()
+ .reverse()
+ .slice(start, end);
+ }
return this.historyTokens.slice().reverse().slice(start, end);
},
},
diff --git a/src/components/InvoiceDetailDialog.vue b/src/components/InvoiceDetailDialog.vue
index 953ea8b1..21121f71 100644
--- a/src/components/InvoiceDetailDialog.vue
+++ b/src/components/InvoiceDetailDialog.vue
@@ -4,6 +4,7 @@
position="top"
backdrop-filter="blur(2px) brightness(60%)"
no-backdrop-dismiss
+ full-height
>
diff --git a/src/components/InvoicesTable.vue b/src/components/InvoicesTable.vue
index 11368f99..36014088 100644
--- a/src/components/InvoicesTable.vue
+++ b/src/components/InvoicesTable.vue
@@ -54,7 +54,18 @@
-
+
+
+
No invoices yet invoice.status === "pending")
+ .slice(start, end);
+ }
return this.invoiceHistory.slice().reverse().slice(start, end);
},
},
diff --git a/src/components/MintSettings.vue b/src/components/MintSettings.vue
index 14b18c50..6b0fab3a 100644
--- a/src/components/MintSettings.vue
+++ b/src/components/MintSettings.vue
@@ -593,7 +593,7 @@ export default defineComponent({
methods: {
...mapActions(useNostrStore, [
"init",
- "connect",
+ "initNdkReadOnly",
"getUserPubkey",
"fetchEventsFromUser",
"fetchMints",
@@ -761,7 +761,7 @@ export default defineComponent({
}
},
initNdk: async function () {
- await this.connect();
+ await this.initNdkReadOnly();
console.log(await this.getUserPubkey());
// console.log("### fetch events");
// console.log(await this.fetchEventsFromUser());
@@ -770,7 +770,7 @@ export default defineComponent({
},
fetchMintsFromNdk: async function () {
this.discoveringMints = true;
- await this.connect();
+ await this.initNdkReadOnly();
console.log("### fetch mints");
let maxTries = 5;
let tries = 0;
diff --git a/src/components/ReceiveTokenDialog.vue b/src/components/ReceiveTokenDialog.vue
index 8c2a0ad7..305278d4 100644
--- a/src/components/ReceiveTokenDialog.vue
+++ b/src/components/ReceiveTokenDialog.vue
@@ -61,10 +61,7 @@
rounded
flat
class="q-mr-sm"
- v-if="
- decodeToken(receiveData.tokensBase64) &&
- !tokenAlreadyInHistory(receiveData.tokensBase64)
- "
+ v-if="decodeToken(receiveData.tokensBase64)"
>Later
Add to history to receive later
@@ -232,10 +229,12 @@ export default defineComponent({
);
},
addPendingTokenToHistory: function (token) {
- const tokensStore = useTokensStore();
if (this.tokenAlreadyInHistory(token)) {
+ this.notifySuccess("Ecash already in history");
+ this.showReceiveTokens = false;
return;
}
+ const tokensStore = useTokensStore();
const decodedToken = this.decodeToken(token);
// get amount from decodedToken.token.proofs[..].amount
const amount = this.getProofs(decodedToken).reduce(
diff --git a/src/components/SendTokenDialog.vue b/src/components/SendTokenDialog.vue
index 3d61403b..99c111c8 100644
--- a/src/components/SendTokenDialog.vue
+++ b/src/components/SendTokenDialog.vue
@@ -4,6 +4,7 @@
position="top"
backdrop-filter="blur(2px) brightness(60%)"
no-backdrop-dismiss
+ full-height
>
diff --git a/src/components/SettingsView.vue b/src/components/SettingsView.vue
index 38bc69b2..b98b326c 100644
--- a/src/components/SettingsView.vue
+++ b/src/components/SettingsView.vue
@@ -238,9 +238,210 @@
-
+
+
+
+ Lightning address
+ Your Lightning address is generated from your nostr
+ keys.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Copy Lightning address
+
+
+
+
+
+
+
+ Claim automatically
+ Receive incoming payments automatically when the wallet is
+ started.
+
+
+
+
+
+
+
+
+
+
+
+
+ Your nostr keys
+ Link your wallet to a nostr account to generate your
+ Lightning address.
+
+
+
+
+
+
+
+
+ Wallet seed phrase
+ Generate nostr key pair from seed
+
+
+
+
+
+
+
+
+
+ Nsec Bunker
+ Use a NIP-46 bunker
+
+
+ Delete connection
+
+
+
+
+
+
+
+
+ Use your nsec
+ Enter your nostr private key
+
+
+
+ Delete nsec
+
+
+
+
+
+
+
+
+ Signing extension
+ Use a NIP-07 signing extension
+
+ No NIP-07 signing extension found
+
+
+
+
+
+
+
+
Link wallet
@@ -311,7 +512,7 @@
Show QR code
-
+