-
Notifications
You must be signed in to change notification settings - Fork 8
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
32 changed files
with
4,227 additions
and
199 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -3,4 +3,5 @@ book | |
.idea | ||
|
||
# Sub-projects with code snippets | ||
snippets/react-native/node_modules | ||
snippets/rust/target |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
{ | ||
"endOfLine": "lf", | ||
"printWidth": 80, | ||
"semi": false, | ||
"singleQuote": false, | ||
"tabWidth": 4, | ||
"trailingComma": "none" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
import { | ||
buyBitcoin, | ||
BuyBitcoinProvider | ||
} from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleBuyBtc = async () => { | ||
// ANCHOR: buy-btc | ||
const buyBitcoinResponse = await buyBitcoin({ | ||
provider: BuyBitcoinProvider.MOONPAY | ||
}) | ||
// ANCHOR_END: buy-btc | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
import { connectLsp, lspId, lspInfo } from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleAutoConnect = async () => { | ||
// ANCHOR: get-lsp-info | ||
const id = await lspId() | ||
const info = await lspInfo() | ||
// ANCHOR_END: get-lsp-info | ||
} | ||
|
||
const exampleManualConnect = async () => { | ||
// ANCHOR: connect-lsp | ||
const id = "your selected lsp id" | ||
await connectLsp(id) | ||
// ANCHOR_END: connect-lsp | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,22 @@ | ||
import { | ||
listFiatCurrencies, | ||
fetchFiatRates | ||
} from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleListCurrencies = async () => { | ||
// ANCHOR: list-fiat-currencies | ||
const fiatCurrencies = await listFiatCurrencies() | ||
// ANCHOR_END: list-fiat-currencies | ||
} | ||
|
||
const exampleFetchRates = async () => { | ||
// ANCHOR: fetch-fiat-rates | ||
const fiatRates = await fetchFiatRates() | ||
// ANCHOR_END: fetch-fiat-rates | ||
} | ||
|
||
const exampleListCurrenciesAndRates = async () => { | ||
// ANCHOR: get-fiat-currencies-and-rates | ||
// TODO | ||
// ANCHOR_END: get-fiat-currencies-and-rates | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
import { | ||
BreezEvent, | ||
connect, | ||
defaultConfig, | ||
EnvironmentType, | ||
mnemonicToSeed, | ||
NodeConfig, | ||
NodeConfigVariant, | ||
nodeInfo | ||
} from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleGettingStarted = async () => { | ||
// ANCHOR: init-sdk | ||
// SDK events listener | ||
const onBreezEvent = (e: BreezEvent) => { | ||
console.log(`Received event ${e.type}`) | ||
} | ||
|
||
// Create the default config | ||
const seed = await mnemonicToSeed("<mnemonics words>") | ||
const inviteCode = "<invite code>" | ||
const apiKey = "<api key>" | ||
const nodeConfig: NodeConfig = { | ||
type: NodeConfigVariant.GREENLIGHT, | ||
config: { | ||
inviteCode | ||
} | ||
} | ||
|
||
const config = await defaultConfig( | ||
EnvironmentType.PRODUCTION, | ||
apiKey, | ||
nodeConfig | ||
) | ||
|
||
// Connect to the Breez SDK make it ready for use | ||
await connect(config, seed, onBreezEvent) | ||
// ANCHOR_END: init-sdk | ||
} | ||
|
||
const exampleFetchNodeInfo = async () => { | ||
// ANCHOR: fetch-balance | ||
const nodeState = await nodeInfo() | ||
const balanceLn = nodeState.channelsBalanceMsat | ||
const balanceOnchain = nodeState.onchainBalanceMsat | ||
// ANCHOR_END: fetch-balance | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
import { | ||
listPayments, | ||
PaymentTypeFilter | ||
} from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleListPayments = async () => { | ||
// ANCHOR: list-payments | ||
const payments = listPayments({ filter: PaymentTypeFilter.ALL }) | ||
// ANCHOR_END: list-payments | ||
} | ||
|
||
const exampleListPaymentsFiltered = async () => { | ||
// ANCHOR: list-payments-filtered | ||
const payments = listPayments({ | ||
filter: PaymentTypeFilter.SENT, | ||
fromTimestamp: 1696880000, | ||
includeFailures: true | ||
}) | ||
// ANCHOR_END: list-payments-filtered | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,25 @@ | ||
import { | ||
InputTypeVariant, | ||
lnurlAuth, | ||
LnUrlCallbackStatusVariant, | ||
parseInput | ||
} from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleLnurlAuth = async () => { | ||
// ANCHOR: lnurl-auth | ||
// Endpoint can also be of the form: | ||
// keyauth://domain.com/auth?key=val | ||
const lnurlAuthUrl = | ||
"lnurl1dp68gurn8ghj7mr0vdskc6r0wd6z7mrww4excttvdankjm3lw3skw0tvdankjm3xdvcn6vtp8q6n2dfsx5mrjwtrxdjnqvtzv56rzcnyv3jrxv3sxqmkyenrvv6kve3exv6nqdtyv43nqcmzvdsnvdrzx33rsenxx5unqc3cxgeqgntfgu" | ||
|
||
const input = await parseInput(lnurlAuthUrl) | ||
if (input.type === InputTypeVariant.LN_URL_AUTH) { | ||
const result = await lnurlAuth(input.data) | ||
if (result.type === LnUrlCallbackStatusVariant.OK) { | ||
console.log("Successfully authenticated") | ||
} else { | ||
console.log("Failed to authenticate") | ||
} | ||
} | ||
// ANCHOR_END: lnurl-auth | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
import { | ||
InputTypeVariant, | ||
parseInput, | ||
payLnurl | ||
} from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleLnurlPay = async () => { | ||
// ANCHOR: lnurl-pay | ||
// Endpoint can also be of the | ||
// lnurlp://domain.com/lnurl-pay?key=val | ||
// lnurl1dp68gurn8ghj7mr0vdskc6r0wd6z7mrww4excttsv9un7um9wdekjmmw84jxywf5x43rvv35xgmr2enrxanr2cfcvsmnwe3jxcukvde48qukgdec89snwde3vfjxvepjxpjnjvtpxd3kvdnxx5crxwpjvyunsephsz36jf | ||
const lnurlPayUrl = "[email protected]" | ||
|
||
const input = await parseInput(lnurlPayUrl) | ||
if (input.type === InputTypeVariant.LN_URL_PAY) { | ||
const amountMsat = input.data.minSendable | ||
const lnUrlPayResult = await payLnurl({ | ||
data: input.data, | ||
amountMsat, | ||
comment: "comment" | ||
}) | ||
} | ||
// ANCHOR_END: lnurl-pay | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
import { | ||
InputTypeVariant, | ||
parseInput, | ||
withdrawLnurl | ||
} from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleLnurlWithdraw = async () => { | ||
// ANCHOR: lnurl-withdraw | ||
// Endpoint can also be of the form: | ||
// lnurlw://domain.com/lnurl-withdraw?key=val | ||
const lnurlWithdrawUrl = | ||
"lnurl1dp68gurn8ghj7mr0vdskc6r0wd6z7mrww4exctthd96xserjv9mn7um9wdekjmmw843xxwpexdnxzen9vgunsvfexq6rvdecx93rgdmyxcuxverrvcursenpxvukzv3c8qunsdecx33nzwpnvg6ryc3hv93nzvecxgcxgwp3h33lxk" | ||
|
||
const input = await parseInput(lnurlWithdrawUrl) | ||
if (input.type === InputTypeVariant.LN_URL_WITHDRAW) { | ||
const amountMsat = input.data.minWithdrawable | ||
const lnUrlWithdrawResult = await withdrawLnurl({ | ||
data: input.data, | ||
amountMsat, | ||
description: "comment" | ||
}) | ||
} | ||
// ANCHOR_END: lnurl-withdraw | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
{ | ||
"name": "snippets", | ||
"version": "0.0.1", | ||
"description": "React Native Snippets", | ||
"main": "index.ts", | ||
"license": "MIT", | ||
"scripts": { | ||
"lint": "eslint . --ext .js,.jsx,.ts,.tsx" | ||
}, | ||
"dependencies": { | ||
"@breeztech/react-native-breez-sdk": "0.2.7", | ||
"react": "18.1.0", | ||
"react-native": "0.70.6" | ||
}, | ||
"devDependencies": { | ||
"tsx": "^3.12.7" | ||
} | ||
} | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,52 @@ | ||
import { | ||
inProgressSwap, | ||
listRefundables, | ||
openChannelFee, | ||
receiveOnchain, | ||
refund | ||
} from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleReceiveOnchain = async () => { | ||
// ANCHOR: generate-receive-onchain-address | ||
const swapInfo = await receiveOnchain({}) | ||
|
||
// Send your funds to the below bitcoin address | ||
const address = swapInfo.bitcoinAddress | ||
// ANCHOR_END: generate-receive-onchain-address | ||
} | ||
|
||
const exampleInProgressSwap = async () => { | ||
// ANCHOR: in-progress-swap | ||
const swapInfo = await inProgressSwap() | ||
// ANCHOR_END: in-progress-swap | ||
} | ||
|
||
const exampleListRefundables = async () => { | ||
// ANCHOR: list-refundables | ||
const refundables = await listRefundables() | ||
// ANCHOR_END: list-refundables | ||
} | ||
|
||
const exampleRefund = async () => { | ||
// ANCHOR: execute-refund | ||
const refundables = await listRefundables() | ||
const toAddress = "..." | ||
const satPerVbyte = 5 | ||
|
||
const refundResponse = await refund({ | ||
swapAddress: refundables[0].bitcoinAddress, | ||
toAddress, | ||
satPerVbyte | ||
}) | ||
// ANCHOR_END: execute-refund | ||
} | ||
|
||
const exampleOpenChannelFee = async () => { | ||
// ANCHOR: get-channel-opening-fees | ||
const amountMsat = 10000 | ||
|
||
const openChannelFeeResponse = await openChannelFee({ | ||
amountMsat: amountMsat | ||
}) | ||
// ANCHOR_END: get-channel-opening-fees | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
import { receivePayment } from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleReceiveLightningPayment = async () => { | ||
// ANCHOR: receive-payment | ||
const invoice = await receivePayment({ | ||
amountMsat: 3000000, | ||
description: "Invoice for 3000 sats" | ||
}) | ||
// ANCHOR: receive-payment | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,49 @@ | ||
import { | ||
ReverseSwapPairInfo, | ||
fetchReverseSwapFees, | ||
inProgressReverseSwaps, | ||
sendOnchain | ||
} from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleFetchReverseSwapFees = async () => { | ||
// ANCHOR: estimate-current-reverse-swap-total-fees | ||
const currentFees = await fetchReverseSwapFees({ sendAmountSat: 50000 }) | ||
|
||
console.log( | ||
`Total estimated fees for reverse swap: ${currentFees.totalEstimatedFees}` | ||
) | ||
// ANCHOR_END: estimate-current-reverse-swap-total-fees | ||
} | ||
|
||
const exampleListCurrentFees = (currentFees: ReverseSwapPairInfo) => { | ||
// ANCHOR: get-current-reverse-swap-min-max | ||
console.log(`Minimum amount, in sats: ${currentFees.min}`) | ||
console.log(`Maximum amount, in sats: ${currentFees.max}`) | ||
// ANCHOR_END: get-current-reverse-swap-min-max | ||
} | ||
|
||
const exampleSendOnchain = async (currentFees: ReverseSwapPairInfo) => { | ||
// ANCHOR: start-reverse-swap | ||
const onchainRecipientAddress = "bc1.." | ||
const amountSat = currentFees.min | ||
const satPerVbyte = 5 | ||
|
||
const reverseSwapInfo = await sendOnchain({ | ||
amountSat, | ||
onchainRecipientAddress, | ||
pairHash: currentFees.feesHash, | ||
satPerVbyte | ||
}) | ||
// ANCHOR_END: start-reverse-swap | ||
} | ||
|
||
const exampleInProgressReverseSwaps = async () => { | ||
// ANCHOR: check-reverse-swaps-status | ||
const swaps = await inProgressReverseSwaps() | ||
for (const swap of swaps) { | ||
console.log( | ||
`Reverse swap ${swap.id} in progress, status is ${swap.status}` | ||
) | ||
} | ||
// ANCHOR_END: check-reverse-swaps-status | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
import { sendPayment } from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleSendLightningPayment = async () => { | ||
// ANCHOR: send-payment | ||
const bolt11 = "..." | ||
|
||
const sendPaymentResponse = await sendPayment({ | ||
bolt11, | ||
amountMsat: 3000000 | ||
}) | ||
// ANCHOR_END: send-payment | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,12 @@ | ||
import { sendSpontaneousPayment } from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleSendSpontaneousPayment = async () => { | ||
// ANCHOR: send-spontaneous-payment | ||
const nodeId = "..." | ||
|
||
const sendPaymentResponse = await sendSpontaneousPayment({ | ||
nodeId, | ||
amountMsat: 3000000 | ||
}) | ||
// ANCHOR_END: send-spontaneous-payment | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
import { staticBackup } from "@breeztech/react-native-breez-sdk" | ||
|
||
const exampleStaticBackup = async () => { | ||
// ANCHOR: static-channel-backup | ||
let backupData = await staticBackup({ workingDir: "<working directory>" }) | ||
// ANCHOR_END: static-channel-backup | ||
} |
Oops, something went wrong.