mirror of
https://github.com/aljazceru/nutshell.git
synced 2025-12-21 19:14:19 +01:00
* first working version but some sats go missing * back at it * make format * restore to main * move mint database * fix some tests * make format * remove old _construct_outputs we reintroduced in merge with main * add type annotations * add wallet private key to tests * wallet: load proofs * fix tests * _generate_secrets with deterministic generation (temporary) * allow wallet initialization with custom private key * add pk to wallet api test * mint scope=module * remove private_key from test_wallet.py to see if it helps with the github tests * readd private keys to tests * workflow without env * add more private key! * readd env * ledger scope session * add default private key for testing * generate private keys if not available * testing * its working!!! * first iteration of bip32 working * get mint info and add many type annotations * tests * fix tests with bip32 * restore from multiple mints * disable profiler * make format * failed POST /mint do not increment secret counter * store derivation path in each token * fix tests * refactor migrations so private keys can be generated by the wallet with .with_db() classmethod * start fixing tests * all tests passing except those that need to set a specific private key * bip39 mnemonic to seed - with db but restore doesnt work yet with custom seed * mnemonic restore works * enter mnemonic in cli * fix tests to use different mnemonic * properly ask user for seed input * tests: dont ask for inputs * try to fix tests * fix cashu -d * fixing * bump version and add more text to mnemonic enter * add more comments * add many more comments and type annotations in the wallet * dont print generated mnemonic and dont wait for input * fix test * does this fix tests? * sigh.... * make format * do not restore from an initialized wallet * fix mnemonics * fix nitpicks * print wallet name if nonstandard wallet * fix merge error and remove comments * poetry lock and requirements * remove unused code * fix tests * mnemonic.lower() and add keyset id if not present for backwards compat * edit comment
83 lines
1.4 KiB
Python
83 lines
1.4 KiB
Python
from typing import Dict, List, Optional
|
|
|
|
from pydantic import BaseModel
|
|
|
|
from ...core.base import Invoice, P2SHScript
|
|
|
|
|
|
class PayResponse(BaseModel):
|
|
amount: int
|
|
fee: int
|
|
amount_with_fee: int
|
|
|
|
|
|
class InvoiceResponse(BaseModel):
|
|
amount: Optional[int] = None
|
|
invoice: Optional[Invoice] = None
|
|
hash: Optional[str] = None
|
|
|
|
|
|
class SwapResponse(BaseModel):
|
|
outgoing_mint: str
|
|
incoming_mint: str
|
|
invoice: Invoice
|
|
balances: Dict
|
|
|
|
|
|
class BalanceResponse(BaseModel):
|
|
balance: int
|
|
keysets: Optional[Dict] = None
|
|
mints: Optional[Dict] = None
|
|
|
|
|
|
class SendResponse(BaseModel):
|
|
balance: int
|
|
token: str
|
|
npub: Optional[str] = None
|
|
|
|
|
|
class ReceiveResponse(BaseModel):
|
|
initial_balance: int
|
|
balance: int
|
|
|
|
|
|
class BurnResponse(BaseModel):
|
|
balance: int
|
|
|
|
|
|
class PendingResponse(BaseModel):
|
|
pending_token: Dict
|
|
|
|
|
|
class LockResponse(BaseModel):
|
|
P2SH: Optional[str]
|
|
|
|
|
|
class LocksResponse(BaseModel):
|
|
locks: List[P2SHScript]
|
|
|
|
|
|
class InvoicesResponse(BaseModel):
|
|
invoices: List[Invoice]
|
|
|
|
|
|
class WalletsResponse(BaseModel):
|
|
wallets: Dict
|
|
|
|
|
|
class RestoreResponse(BaseModel):
|
|
balance: int
|
|
|
|
|
|
class InfoResponse(BaseModel):
|
|
version: str
|
|
wallet: str
|
|
debug: bool
|
|
cashu_dir: str
|
|
mint_url: str
|
|
settings: Optional[str]
|
|
tor: bool
|
|
nostr_public_key: Optional[str] = None
|
|
nostr_relays: List[str] = []
|
|
socks_proxy: Optional[str] = None
|