Fix full config saved on client on priority change (#1329)

* Fix full config saved on client on priority change

* Fix WebLN disabled on priority change

* Always merge configs
This commit is contained in:
ekzyis 2024-08-25 18:40:55 -05:00 committed by GitHub
parent 203db13553
commit 48d0cd1086
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1 changed files with 11 additions and 5 deletions

View File

@ -186,20 +186,23 @@ function useConfig (wallet) {
let valid = true let valid = true
try { try {
newClientConfig = await walletValidate(wallet, newClientConfig) const transformedConfig = await walletValidate(wallet, newClientConfig)
if (transformedConfig) {
newClientConfig = Object.assign(newClientConfig, transformedConfig)
}
} catch { } catch {
valid = false valid = false
} }
if (valid) { if (valid) {
if (priorityOnly) { if (priorityOnly) {
setClientConfig(newConfig) setClientConfig(newClientConfig)
} else { } else {
try { try {
// XXX: testSendPayment can return a new config (e.g. lnc) // XXX: testSendPayment can return a new config (e.g. lnc)
const newerConfig = await wallet.testSendPayment?.(newConfig, { me, logger }) const newerConfig = await wallet.testSendPayment?.(newConfig, { me, logger })
if (newerConfig) { if (newerConfig) {
newClientConfig = newerConfig newClientConfig = Object.assign(newClientConfig, newerConfig)
} }
} catch (err) { } catch (err) {
logger.error(err.message) logger.error(err.message)
@ -219,7 +222,10 @@ function useConfig (wallet) {
let valid = true let valid = true
try { try {
newServerConfig = await walletValidate(wallet, newServerConfig) const transformedConfig = await walletValidate(wallet, newServerConfig)
if (transformedConfig) {
newServerConfig = Object.assign(newServerConfig, transformedConfig)
}
} catch { } catch {
valid = false valid = false
} }