Skip to content

Commit 15ec97b

Browse files
authored
add description to NUT-04 method options (#783)
* add description to NUT-04 method options * add option
1 parent 3b4f5b5 commit 15ec97b

File tree

3 files changed

+11
-2
lines changed

3 files changed

+11
-2
lines changed

cashu/core/models.py

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,12 +18,16 @@
1818
# ------- API: INFO -------
1919

2020

21+
class MintMethodBolt11OptionSetting(BaseModel):
22+
description: Optional[bool] = None
23+
24+
2125
class MintMethodSetting(BaseModel):
2226
method: str
2327
unit: str
2428
min_amount: Optional[int] = None
2529
max_amount: Optional[int] = None
26-
description: Optional[bool] = None
30+
options: Optional[MintMethodBolt11OptionSetting] = None
2731

2832

2933
class MeltMethodSetting(BaseModel):

cashu/mint/features.py

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@
66
MeltMethodSetting,
77
MintInfoContact,
88
MintInfoProtectedEndpoint,
9+
MintMethodBolt11OptionSetting,
910
MintMethodSetting,
1011
)
1112
from ..core.nuts.nuts import (
@@ -85,8 +86,10 @@ def create_mint_features(self) -> Dict[int, Union[List[Any], Dict[str, Any]]]:
8586
if settings.mint_max_mint_bolt11_sat:
8687
mint_setting.max_amount = settings.mint_max_mint_bolt11_sat
8788
mint_setting.min_amount = 0
89+
mint_setting.options = MintMethodBolt11OptionSetting(
90+
description=unit_dict[unit].supports_description
91+
)
8892
mint_method_settings.append(mint_setting)
89-
mint_setting.description = unit_dict[unit].supports_description
9093
melt_method_settings: List[MeltMethodSetting] = []
9194
for method, unit_dict in self.backends.items():
9295
for unit in unit_dict.keys():

tests/mint/test_mint_api.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -52,6 +52,8 @@ async def test_info(ledger: Ledger):
5252
setting = MintMethodSetting.parse_obj(info.nuts[MINT_NUT]["methods"][0])
5353
assert setting.method == "bolt11"
5454
assert setting.unit == "sat"
55+
assert setting.options
56+
assert setting.options.description is True
5557

5658

5759
@pytest.mark.asyncio

0 commit comments

Comments
 (0)