mirror of
https://github.com/aljazceru/nutshell.git
synced 2025-12-21 02:54:20 +01:00
Fix: Nut 05 mint response model (#564)
* change response model of NUT-05 to include payment_preimage and change (NUT-08) * fix tests * crud: same expiry as timestamp * fix expiry handling * add api tests to check new models
This commit is contained in:
@@ -15,7 +15,6 @@ from ..core.models import (
|
||||
PostMeltQuoteRequest,
|
||||
PostMeltQuoteResponse,
|
||||
PostMeltRequest,
|
||||
PostMeltResponse,
|
||||
PostMintQuoteRequest,
|
||||
PostMintQuoteResponse,
|
||||
PostMintRequest,
|
||||
@@ -290,24 +289,21 @@ async def get_melt_quote(request: Request, quote: str) -> PostMeltQuoteResponse:
|
||||
"Melt tokens for a Bitcoin payment that the mint will make for the user in"
|
||||
" exchange"
|
||||
),
|
||||
response_model=PostMeltResponse,
|
||||
response_model=PostMeltQuoteResponse,
|
||||
response_description=(
|
||||
"The state of the payment, a preimage as proof of payment, and a list of"
|
||||
" promises for change."
|
||||
),
|
||||
)
|
||||
@limiter.limit(f"{settings.mint_transaction_rate_limit_per_minute}/minute")
|
||||
async def melt(request: Request, payload: PostMeltRequest) -> PostMeltResponse:
|
||||
async def melt(request: Request, payload: PostMeltRequest) -> PostMeltQuoteResponse:
|
||||
"""
|
||||
Requests tokens to be destroyed and sent out via Lightning.
|
||||
"""
|
||||
logger.trace(f"> POST /v1/melt/bolt11: {payload}")
|
||||
preimage, change_promises = await ledger.melt(
|
||||
resp = await ledger.melt(
|
||||
proofs=payload.inputs, quote=payload.quote, outputs=payload.outputs
|
||||
)
|
||||
resp = PostMeltResponse(
|
||||
paid=True, payment_preimage=preimage, change=change_promises
|
||||
)
|
||||
logger.trace(f"< POST /v1/melt/bolt11: {resp}")
|
||||
return resp
|
||||
|
||||
|
||||
Reference in New Issue
Block a user