commit cc0078e04b6312ee5a22a60bab9e1d4551fa476f
parent e625be2cdd95829e59fed178b7915cbd718fa40a
Author: Christian Grothoff <christian@grothoff.org>
Date: Thu, 3 Jul 2025 16:06:45 +0200
update DD51 for #10117
Diffstat:
1 file changed, 15 insertions(+), 0 deletions(-)
diff --git a/design-documents/051-fractional-digits.rst b/design-documents/051-fractional-digits.rst
@@ -53,6 +53,10 @@ you want a good laugh. Regardless of the self-inflicted insanity here, this
could also make sense for inflated currencies in some cases. So we probably
should also have the ability to ship such a conversion map.
+For the "withdraw" dialog action buttons with the pre-filled amounts in
+some wallet GUIs, we also need to provide wallets with an idea of what
+good amounts would be.
+
Proposed Solution
=================
@@ -89,6 +93,13 @@ provisioned by all three services.
// e.g. "0 : €" or "3 : k€". For BTC, would be "0 : BTC, -3 : mBTC".
// This way, we can also communicate the currency symbol to be used.
let alt_unit_names: [Int : String]
+
+ // An array of common amounts that should be turned into
+ // display buttons in dialogs where the user might like
+ // a short-cut. The array should have four entries, but
+ // may have fewer or more entries. Wallets may omit
+ // later entries in the array.
+ let common_amounts: [Amount]
}
(Note: decimal_separator, group_separator and is_currency_name_leading were
@@ -124,6 +135,7 @@ section. The map could be given directly in JSON. For example:
fractional_trailing_zero_digits = 2
alt_unit_names_are_symbols = YES
alt_unit_names = {"0":"€"}
+ common_amounts = EUR:10 EUR:25 EUR:50 EUR:100
[currency-japanese-yen]
ENABLED = YES
@@ -134,6 +146,7 @@ section. The map could be given directly in JSON. For example:
fractional_trailing_zero_digits = 2
alt_unit_names_are_symbols = YES
alt_unit_names = {"0":"¥"}
+ common_amounts = JPY:500 JPY:1000 JPY:5000 JPY:10000
[currency-bitcoin-mainnet]
ENABLED = NO
@@ -144,6 +157,7 @@ section. The map could be given directly in JSON. For example:
fractional_trailing_zero_digits = 0
alt_unit_names_are_symbols = NO
alt_unit_names = {"0":"BTC","-3":"mBTC"}
+ common_amounts = BITCOINBTC:0.001 BITCOINBTC:0.01 BITCOINBTC:0.02 BITCOINBTC:0.025
[currency-ethereum]
ENABLED = NO
@@ -154,6 +168,7 @@ section. The map could be given directly in JSON. For example:
fractional_trailing_zero_digits = 0
alt_unit_names_are_symbols = NO
alt_unit_names = {"0":"WAI","3":"KWAI","6":"MWAI","9":"GWAI","12":"Szabo","15":"Finney","18":"Ether","21":"KEther","24":"MEther"}
+ common_amounts = EthereumWAI:0.001 EthereumWAI:0.01
Implementation considerations