2355 Commits

Author SHA1 Message Date
ekzyis
ba00c3d9fa Generate wallet resolver from fields 2024-07-07 18:31:41 +02:00
ekzyis
00f78daadc Generate wallet mutation from fields 2024-07-07 18:31:41 +02:00
ekzyis
0a0085fe82 Remove unnecessary WALLETS_QUERY 2024-07-07 18:31:41 +02:00
ekzyis
48ead97615 Run lnbits url.replace in validate and sendPayment 2024-07-07 18:31:41 +02:00
ekzyis
6463e6eec8 Split arguments into [value,] config, context 2024-07-07 18:31:41 +02:00
ekzyis
0ebe097a70 Fix noisy changes in lib/validate
I moved the schema for lnbits, nwc and lnc out of lib/validate only to put them back in there later.

This commit should make the changeset cleaner by removing noise.
2024-07-07 18:31:41 +02:00
ekzyis
850c534c91 Fix typo 2024-07-07 18:31:41 +02:00
ekzyis
83fd39b035 Fix onCanceled missing 2024-07-07 18:31:41 +02:00
ekzyis
9bbf2056e9 Save dedicated enabled flag for server wallets
* wallet table now contains boolean column 'enabled'
* 'priority' is now a number everywhere
* use consistent order between how autowithdrawals are attempted and server wallets cards
2024-07-07 18:31:41 +02:00
ekzyis
8acf74c787 Fix autowithdrawSettings not applied
Form requires config in flat format but mutation requires autowithdraw settings in a separate 'settings' field.

I have decided that config will be in flat form format. It will be transformed into mutation format during save.
2024-07-07 18:31:41 +02:00
ekzyis
55928ac252 Save order as priority 2024-07-07 18:31:41 +02:00
ekzyis
c270805649 Use dynamic import for WalletCard
This fixes a lot of issues with hydration
2024-07-07 18:31:41 +02:00
ekzyis
eb2f4b980f Implement drag & drop w/o persistence 2024-07-07 18:31:41 +02:00
ekzyis
b96757b366 Move all validation schema into lib/validate 2024-07-07 18:31:41 +02:00
ekzyis
39d8928772 Disable checkbox if not configured yet 2024-07-07 18:31:41 +02:00
ekzyis
da6d262e0a Also enable server wallets on create 2024-07-07 18:31:41 +02:00
ekzyis
d20e258649 Consistent logs between local and server wallets
* 'wallet attached' on create
* 'wallet updated' on config updates
* 'wallet enabled' and 'wallet disabled' if checkbox changed
* 'wallet detached' on delete
2024-07-07 18:31:41 +02:00
ekzyis
d60e26bfdf Fix wallet logs not updated after server delete 2024-07-07 18:31:41 +02:00
ekzyis
9509833b88 Also use 'enabled' for server wallets 2024-07-07 18:31:41 +02:00
ekzyis
645ff78365 Fix server config not updated after save or detach 2024-07-07 18:31:41 +02:00
ekzyis
c18263dc73 Fix another hydration error 2024-07-07 18:31:41 +02:00
ekzyis
d8e82ddea5 Only include local/server config if required 2024-07-07 18:31:41 +02:00
ekzyis
e091377d94 Fix TypeError in isConfigured if no enabled wallet found 2024-07-07 18:31:41 +02:00
ekzyis
5b561e22a9 Fix wallet logs refetch
onError does not exist on client.mutate
2024-07-07 18:31:41 +02:00
ekzyis
4bf9954c4e Fix delete wallet logs on server 2024-07-07 18:31:41 +02:00
ekzyis
3b0605a691 Fix isConfigured 2024-07-07 18:31:41 +02:00
ekzyis
1f98a1a891 Fix usage of conditional hooks in useConfig 2024-07-07 18:31:41 +02:00
ekzyis
377ac04c85 Use same error format in toast and wallet log 2024-07-07 18:31:41 +02:00
ekzyis
9228328d3b Remove FIXMEs
Rebase on master seemed to have fixed these, weird
2024-07-07 18:31:41 +02:00
ekzyis
2aa0c9bc99 Fix confusing UX around enabled 2024-07-07 18:31:41 +02:00
ekzyis
d7c81cfa9f Fix sendPayment called with empty config
* removed useEffect such that config is available on first render
* fix hydration error using dynamic import without SSR
2024-07-07 18:31:41 +02:00
ekzyis
4a16cc17aa Fix TypeError 2024-07-07 18:31:41 +02:00
ekzyis
4082a45618 wip: Add LND autowithdrawals
* receiving wallets need to export 'server' object field
* don't print macaroon error stack
* fix missing wallet logs order update
* mark autowithdrawl settings as required
* fix server wallet logs deletion
* remove canPay and canReceive since it was confusing where it is available

TODO

* also use numeric priority for sending wallets to be consistent with how status for receiving wallets is determined
* define createInvoice function in wallet definition
* consistent wallet logs: sending wallets use 'wallet attached'+'wallet enabled/disabled' whereas receiving wallets use 'wallet created/updated'
* see FIXMEs
2024-07-07 18:31:41 +02:00
ekzyis
ae0335d537 Don't require destructuring to pass props to input 2024-07-07 18:31:41 +02:00
ekzyis
91978171ed Remove logger.error since already handled in useWallet 2024-07-07 18:31:41 +02:00
ekzyis
dae69ec4b3 Add FIXMEs for LNC
I can't get LNC to connect. It just hangs forever on lnc.connect(). See FIXMEs.
2024-07-07 18:31:40 +02:00
ekzyis
eda7fd6b46 Fix position of log start marker 2024-07-07 18:31:40 +02:00
ekzyis
fd08356d37 Remove follow and show recent logs first 2024-07-07 18:31:40 +02:00
ekzyis
61be80446d Revert "Fix 20s page load for /settings/wallets.json?nodata=true"
This reverts commit deb476b3a966569fefcfdf4082d6b64f90fbd0a2.

Not using the dynamic import for LNC fixed the slow page load with ?nodata=true.
2024-07-07 18:31:40 +02:00
ekzyis
6059e8f691 Use normal imports 2024-07-07 18:31:40 +02:00
ekzyis
1bae891594 Fix extremely slow page load for LNC import
I noticed that the combination of

```
import { Form, PasswordInput, SubmitButton } from '@/components/form'
```

in components/wallet/lnc.js and the dynamic import via `await import` in components/wallet/index.js caused extremely slow page loads.
2024-07-07 18:31:40 +02:00
ekzyis
276e734a7a Fix 20s page load for /settings/wallets.json?nodata=true
For some reason, if nodata is passed (which is the case if going back), the page takes 20s to load.
2024-07-07 18:31:40 +02:00
ekzyis
7b6602e386 wip: Add LNC 2024-07-07 18:31:40 +02:00
ekzyis
8e2dd45e23 Support help, optional, hint in wallet fields 2024-07-07 18:31:40 +02:00
ekzyis
7639390a16 Pass config with spread operator 2024-07-07 18:31:40 +02:00
ekzyis
29646eb956 Use INFO level for 'wallet disabled' message 2024-07-07 18:31:40 +02:00
ekzyis
dd47f2c02b Run validation during save 2024-07-07 18:31:40 +02:00
ekzyis
a5ea53dc39 Fix enableWallet
* wrong storage key was used
* broke if wallets with no configs existed
2024-07-07 18:31:40 +02:00
ekzyis
399c62a7e3 Fix unused isDefault saved in config 2024-07-07 18:31:40 +02:00
ekzyis
034cb4e8b2 Add NWC wallet 2024-07-07 18:31:40 +02:00