feat: add JSON custom serializer

This commit is contained in:
Vlad Stan
2024-10-10 09:08:47 +02:00
committed by dni ⚡
parent 74b24eb609
commit a94f42368d
+11 -2
View File
@@ -12,6 +12,7 @@ from ecdsa import SECP256k1, SigningKey
from fastapi import Query
from passlib.context import CryptContext
from pydantic import BaseModel, Field, validator
import json
from lnbits.db import FilterModel
from lnbits.helpers import url_for
@@ -26,6 +27,14 @@ from lnbits.wallets.base import (
PaymentSuccessStatus,
)
def json_custom_serialization(_, o):
if isinstance(o, datetime):
return o.isoformat()
raise TypeError(f"Object is not JSON serializable: {o}")
json.JSONEncoder.default = json_custom_serialization
class BaseWallet(BaseModel):
id: str
@@ -279,9 +288,9 @@ class Payment(BaseModel):
amount: int
fee: int
memo: Optional[str]
time: int
time: datetime
bolt11: str
expiry: Optional[float]
expiry: Optional[datetime]
extra: Optional[dict]
webhook: Optional[str]
webhook_status: Optional[int] = None