Files
Ruben aa7c50425a snippets for sweeping funds on channel closes. (#110)
* Bump breez-sdk snippet dependency to 0.2.12

* Bump the Swift snippet macos version to v13

* Bump breez-sdk snippet dependency to 0.2.14

* swiftformat

* redeem_onchain_funds example

* Document swapinfo fields

* example on how to use local breez-sdk package

* fix dart example

* yarn lint

* remove swapinfo docs

* dart fixup

---------

Co-authored-by: ok300 <106775972+ok300@users.noreply.github.com>
2024-01-31 13:49:20 +01:00

52 lines
1.7 KiB
Swift

//
// ReceiveOnchain.swift
//
//
// Created by ruben on 14/11/2023.
//
import BreezSDK
import Foundation
func generateReceiveOnchainAddress(sdk: BlockingBreezServices) -> String? {
// ANCHOR: generate-receive-onchain-address
let swapInfo = try? sdk.receiveOnchain(req: ReceiveOnchainRequest())
// Send your funds to the bellow bitcoin address
let address = swapInfo?.bitcoinAddress
print("Minimum amount allowed to deposit in sats: \(swapInfo!.minAllowedDeposit)")
print("Maximum amount allowed to deposit in sats: \(swapInfo!.maxAllowedDeposit)")
// ANCHOR_END: generate-receive-onchain-address
return address
}
func getSwapInProgress(sdk: BlockingBreezServices) -> SwapInfo? {
// ANCHOR: in-progress-swap
let swapInfo = try? sdk.inProgressSwap()
// ANCHOR_END: in-progress-swap
return swapInfo
}
func listRefundables(sdk: BlockingBreezServices) -> [SwapInfo]? {
// ANCHOR: list-refundables
let refundables = try? sdk.listRefundables()
// ANCHOR_END: list-refundables
return refundables
}
func executeRefund(sdk: BlockingBreezServices, refundables: SwapInfo, satPerVbyte: UInt32) -> RefundResponse? {
// ANCHOR: execute-refund
let destinationAddress = "..."
let response = try? sdk.refund(req: RefundRequest(swapAddress: refundables.bitcoinAddress, toAddress: destinationAddress, satPerVbyte: satPerVbyte))
// ANCHOR_END: execute-refund
return response
}
func getChannelOpeningFees(sdk: BlockingBreezServices, amountMsat: UInt64) -> OpenChannelFeeResponse? {
// ANCHOR: get-channel-opening-fees
let response = try? sdk.openChannelFee(req: OpenChannelFeeRequest(amountMsat: amountMsat))
// ANCHOR_END: get-channel-opening-fees
return response
}