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

56 lines
1.4 KiB
Python
Raw Normal View History

2022-03-07 05:03:32 +00:00
from sqlite3 import Row
2022-03-12 14:18:09 +00:00
from typing import List, Optional
2022-03-07 05:03:32 +00:00
2022-03-12 14:18:09 +00:00
from fastapi import Query
from pydantic import BaseModel
class UpdateAdminSettings(BaseModel):
site_title: Optional[str]
site_tagline: Optional[str]
site_description: Optional[str]
allowed_users: Optional[str]
admin_users: Optional[str]
default_wallet_name: Optional[str]
data_folder: Optional[str]
disabled_ext: Optional[str]
force_https: Optional[bool]
service_fee: Optional[float]
funding_source: Optional[str]
class Admin(BaseModel):
2022-03-07 05:03:32 +00:00
user: str
2022-03-12 14:18:09 +00:00
site_title: Optional[str]
site_tagline: Optional[str]
site_description: Optional[str]
allowed_users: Optional[str]
admin_users: str
2022-03-07 05:03:32 +00:00
default_wallet_name: str
data_folder: str
disabled_ext: str
2022-03-12 14:18:09 +00:00
force_https: Optional[bool] = Query(True)
service_fee: float
2022-03-07 05:03:32 +00:00
funding_source: str
@classmethod
def from_row(cls, row: Row) -> "Admin":
data = dict(row)
return cls(**data)
2022-03-12 14:18:09 +00:00
class Funding(BaseModel):
2022-03-07 05:03:32 +00:00
id: str
backend_wallet: str
2022-03-12 14:18:09 +00:00
endpoint: str = Query(None)
port: str = Query(None)
read_key: str = Query(None)
invoice_key: str = Query(None)
admin_key: str = Query(None)
cert: str = Query(None)
balance: int = Query(None)
2022-03-07 05:03:32 +00:00
selected: int
@classmethod
def from_row(cls, row: Row) -> "Funding":
data = dict(row)
return cls(**data)