- pkg/protocol/nwc/wallet.go
- Implemented `WalletService` with method registration and request handling.
- Added default stub handlers for supported wallet methods.
- Included support for notifications with `SendNotification`.
- pkg/protocol/nwc/client-methods.go
- Added `Subscribe` function for handling client subscriptions.
- cmd/walletcli/mock-wallet-service/main.go
- Implemented a mock CLI tool for wallet service.
- Added command-line flags for relay connection and key management.
- Added handlers for various wallet service methods (e.g., `GetInfo`, `GetBalance`, etc.).
- pkg/protocol/nwc/types.go
- Added `GetWalletServiceInfo` to the list of wallet service capabilities.
- pkg/protocol/ws/client.go
- Added logging for received subscription events.
- Optimized subscription ID assignment.
- pkg/protocol/nwc/client.go
- Implemented `Subscribe` function to handle event subscriptions.
- cmd/walletcli/main.go
- Added support for `subscribe` command to handle notifications.
- Replaced `ctx` with `c` for context usage across all commands.
- pkg/crypto/p256k/helpers.go
- Removed unnecessary logging from `HexToBin` function.
* Renamed `NWCClient` to `nwc.NewNWCClient(opts)` in `cmd/nwcclient/main.go`
* Added `RPCRaw` wrappers for NWC client methods in `pkg/protocol/nwc/methods.go`
**Updated walletcli main function**
* Updated the main function in `cmd/walletcli/main.go` to use new NWC client and RPCRaw wrappers
**Added new methods for walletcli**
* Added new methods for handling NWC client RPC calls, such as:
* `handleGetWalletServiceInfo`
* `handleMakeHoldInvoice`
* `handleSettleHoldInvoice`
* `handleCancelHoldInvoice`
**Code formatting and style changes**
* Formatted code according to Go standard
* Used consistent naming conventions and coding styles
**Other updates**
* Updated dependencies and imported packages accordingly
- cmd/lerproxy/app/bufpool.go
- Removed bufferPool-related code and `Pool` struct
- cmd/nwcclient/main.go
- Renamed `Method` to `Capability` for clarity in method handling
- pkg/utils/values/values.go
- Added utility functions to return pointers for various types
- pkg/utils/pointers/pointers.go
- Revised documentation to reference `utils/values` package for pointer utilities
- pkg/protocol/nwc/types.go
- Replaced redundant types and structures with simplified versions
- Introduced dedicated structs for `MakeInvoice`, `PayInvoice`, and related results
- Refactored `Transaction` and its fields for consistent type usage
- pkg/protocol/nwc/uri.go
- Added `ParseConnectionURI` function for URI parsing and validation
- pkg/protocol/nwc/client.go
- Refactored `Client` struct to improve key management and relay handling
- Introduced `Request` struct for generic method invocation payloads