lnbits-legend/lnbits/extensions/scrub/models.py

29 lines
605 B
Python
Raw Normal View History

2022-05-17 20:27:52 +01:00
from sqlite3 import Row
2022-06-17 11:41:12 +01:00
2022-05-17 20:27:52 +01:00
from pydantic import BaseModel
2022-06-17 11:41:12 +01:00
from starlette.requests import Request
from lnbits.lnurl import encode as lnurl_encode
2022-05-17 20:27:52 +01:00
2022-06-07 11:04:34 +01:00
class CreateScrubLink(BaseModel):
wallet: str
description: str
payoraddress: str
2022-05-17 20:27:52 +01:00
class ScrubLink(BaseModel):
2022-06-17 11:41:12 +01:00
id: str
2022-05-17 20:27:52 +01:00
wallet: str
description: str
2022-05-19 11:39:59 +01:00
payoraddress: str
2022-05-17 20:27:52 +01:00
@classmethod
def from_row(cls, row: Row) -> "ScrubLink":
data = dict(row)
return cls(**data)
def lnurl(self, req: Request) -> str:
url = req.url_for("scrub.api_lnurl_response", link_id=self.id)
2022-06-17 11:41:12 +01:00
return lnurl_encode(url)