* Theme extensions
Adds the ability to choose the themeing strategy: Extend one of the existing themes (light or dark) or go fully custom. The latter was the only option up to now, which isn't ideal:
- One had to provide a full-blown theme file overriding all variables
- Tedious, error prone and hard to maintain, because one has to keep track of updates
This PR makes it so that one can choose light or dark as base theme and do modifications on top.
Benefit: You can specify a limited set of variables and might get away with 5-20 lines of CSS.
* Ensure custom theme is present
* Update checkout test
* Use better default than coingecko when creating a new store
* Improve recommended exchange UX
* Add btcturk for TRY
* Fix recommendation
Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
* [Greenfield]: Add DescriptionHashOnly to include a description hash in the BOLT11
* Add CLN test case
* Improve description in Swagger file
Co-authored-by: Dennis Reimann <mail@dennisreimann.de>
* Local file system storage as default
Checks whether or not a file storage has been set. If not, it sets the local file system storage as default.
* Ensure check gets run
* PayButton: Fix CSP problems in Firefox
Firefox does not support [`unsafe-hashes`](https://caniuse.com/?search=unsafe-hashes), so I figured it might be best to get rid of the inline event handlers in general.
Closes#4325.
* Account for multiple paybuttons on one page
* Lock user: Improve return code and fix docs
The docs state that the `DELETE` method should be used, though the controller wants `POST`. The latter seems appropriate here, as the action can be used for locking and unlocking.
Also adapted the action to return a status code based on the actual outcome of the user toggle call.
Closes#4310.
* Update clients
* Fix Output Descriptor parsing for WSH multisig case
Reuse existing function for extracting from a multisig descriptor, instead of recursively parsing the inner output descriptor. The latter would run into invalid cases, because it'd be interpreted as bare multisig, which supports only up to three public keys.
For further details see MetacoSA/NBitcoin#1151.
* Add CanParseDerivationSchemes test
* Wallet import: Surface detailed error messages
Similar to #4205, this checks if the input is an output descriptor and display more detailed information about why an import might fail.
* Add test cases