@dynamic-labs-sdk/bitcoin 0.13.0 → 0.15.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/dist/{addBitcoinInjectedWalletsExtension-D8ZBqpF1.esm.js → addBitcoinInjectedWalletsExtension-Cki0u3G6.esm.js} +175 -17
  2. package/dist/addBitcoinInjectedWalletsExtension-Cki0u3G6.esm.js.map +1 -0
  3. package/dist/{addBitcoinInjectedWalletsExtension-DEzURPKQ.cjs.js → addBitcoinInjectedWalletsExtension-DpE4UlRU.cjs.js} +210 -16
  4. package/dist/addBitcoinInjectedWalletsExtension-DpE4UlRU.cjs.js.map +1 -0
  5. package/dist/checkoutTransaction.types.d.ts +6 -0
  6. package/dist/checkoutTransaction.types.d.ts.map +1 -0
  7. package/dist/index.cjs.js +9 -94
  8. package/dist/index.cjs.js.map +1 -1
  9. package/dist/index.esm.js +3 -88
  10. package/dist/index.esm.js.map +1 -1
  11. package/dist/injected/utils/binance/createBinanceBitcoinWalletProvider/createBinanceBitcoinWalletProvider.d.ts.map +1 -1
  12. package/dist/injected/utils/leather/createLeatherBitcoinWalletProvider/createLeatherBitcoinWalletProvider.d.ts.map +1 -1
  13. package/dist/injected/utils/magicEden/createMagicEdenBitcoinWalletProvider/createMagicEdenBitcoinWalletProvider.d.ts.map +1 -1
  14. package/dist/injected/utils/okx/createOkxBitcoinWalletProvider/createOkxBitcoinWalletProvider.d.ts.map +1 -1
  15. package/dist/injected/utils/oneKey/createOneKeyBitcoinWalletProvider/createOneKeyBitcoinWalletProvider.d.ts.map +1 -1
  16. package/dist/injected/utils/oyl/createOylBitcoinWalletProvider/createOylBitcoinWalletProvider.d.ts.map +1 -1
  17. package/dist/injected/utils/phantom/createPhantomBitcoinWalletProvider/createPhantomBitcoinWalletProvider.d.ts.map +1 -1
  18. package/dist/injected/utils/unisat/createUnisatWalletProvider/createUnisatWalletProvider.d.ts.map +1 -1
  19. package/dist/injected/utils/xverse/createXverseBitcoinWalletProvider/createXverseBitcoinWalletProvider.d.ts.map +1 -1
  20. package/dist/injected.cjs.js +1 -1
  21. package/dist/injected.esm.js +1 -1
  22. package/dist/tsconfig.lib.tsbuildinfo +1 -1
  23. package/dist/utils/bitcoinExecuteCheckoutTransaction/bitcoinExecuteCheckoutTransaction.d.ts +4 -0
  24. package/dist/utils/bitcoinExecuteCheckoutTransaction/bitcoinExecuteCheckoutTransaction.d.ts.map +1 -0
  25. package/dist/utils/bitcoinExecuteCheckoutTransaction/index.d.ts +2 -0
  26. package/dist/utils/bitcoinExecuteCheckoutTransaction/index.d.ts.map +1 -0
  27. package/dist/utils/bitcoinTransferAmount/bitcoinTransferAmount.d.ts +18 -0
  28. package/dist/utils/bitcoinTransferAmount/bitcoinTransferAmount.d.ts.map +1 -0
  29. package/dist/utils/bitcoinTransferAmount/index.d.ts +2 -0
  30. package/dist/utils/bitcoinTransferAmount/index.d.ts.map +1 -0
  31. package/dist/waas/utils/createWalletProviderForWaasBitcoin/createWalletProviderForWaasBitcoin.d.ts.map +1 -1
  32. package/package.json +4 -4
  33. package/dist/addBitcoinInjectedWalletsExtension-D8ZBqpF1.esm.js.map +0 -1
  34. package/dist/addBitcoinInjectedWalletsExtension-DEzURPKQ.cjs.js.map +0 -1
@@ -1,5 +1,5 @@
1
- import { DYNAMIC_ICONIC_SPRITE_URL, WalletProviderPriority, assertDefined, createBaseNetworkProvider, createWalletProviderEventEmitter, formatWalletProviderGroupKey, formatWalletProviderKey, getActiveNetworkIdFromLastKnownRegistry, getBuffer, getDefaultClient, getInjectedProviderFromWindow, getNetworkProviderBuilderRegistry, getWalletProviderRegistry, hasExtension, registerExtension } from "@dynamic-labs-sdk/client/core";
2
- import { BaseError, UserRejectedError, assertWalletAccountSigningAvailability, getNetworksData, getWalletAccountAddressByType } from "@dynamic-labs-sdk/client";
1
+ import { DYNAMIC_ICONIC_SPRITE_URL, MethodNotImplementedError, WalletProviderPriority, assertDefined, createBaseNetworkProvider, createWalletProviderEventEmitter, formatWalletProviderGroupKey, formatWalletProviderKey, getActiveNetworkIdFromLastKnownRegistry, getBuffer, getCore, getDefaultClient, getInjectedProviderFromWindow, getNetworkProviderBuilderRegistry, getWalletProviderFromWalletAccount, getWalletProviderRegistry, hasExtension, parseAmountToSmallestUnit, registerExtension } from "@dynamic-labs-sdk/client/core";
2
+ import { BaseError, InvalidParamError, UserRejectedError, assertWalletAccountSigningAvailability, getDefaultClient as getDefaultClient$1, getNetworksData, getWalletAccountAddressByType } from "@dynamic-labs-sdk/client";
3
3
  import { WalletProviderEnum } from "@dynamic-labs/sdk-api-core";
4
4
  import { Psbt, Transaction, address, networks, payments } from "bitcoinjs-lib";
5
5
  import { createUnsecuredToken } from "jsontokens";
@@ -7,7 +7,7 @@ import { AddressPurpose, BitcoinNetworkType, MessageSigningProtocols, RpcErrorCo
7
7
 
8
8
  //#region package.json
9
9
  var name = "@dynamic-labs-sdk/bitcoin";
10
- var version = "0.13.0";
10
+ var version = "0.15.0";
11
11
 
12
12
  //#endregion
13
13
  //#region src/constants.ts
@@ -55,6 +55,146 @@ const registerBitcoinNetworkProviderBuilder = (client) => {
55
55
  });
56
56
  };
57
57
 
58
+ //#endregion
59
+ //#region src/isBitcoinWalletAccount/isBitcoinWalletAccount.ts
60
+ /**
61
+ * Type guard function to check if a wallet account is a Bitcoin wallet account.
62
+ *
63
+ * @param walletAccount - The wallet account to check.
64
+ * @returns True if the wallet account is a Bitcoin wallet account, false otherwise.
65
+ */
66
+ const isBitcoinWalletAccount = (walletAccount) => walletAccount.chain === "BTC";
67
+
68
+ //#endregion
69
+ //#region src/isBitcoinWalletProvider/isBitcoinWalletProvider.ts
70
+ const isBitcoinWalletProvider = (provider) => {
71
+ return provider.chain === "BTC";
72
+ };
73
+
74
+ //#endregion
75
+ //#region src/errors/SendBitcoinRawTransactionError.ts
76
+ var SendBitcoinRawTransactionError = class extends BaseError {
77
+ constructor({ originalError }) {
78
+ const cause = originalError instanceof Error ? originalError : null;
79
+ super({
80
+ cause,
81
+ code: "send_bitcoin_raw_transaction_error",
82
+ docsUrl: null,
83
+ name: "SendBitcoinRawTransactionError",
84
+ shortMessage: "Failed to send Bitcoin raw transaction"
85
+ });
86
+ }
87
+ };
88
+
89
+ //#endregion
90
+ //#region src/sendRawTransaction/sendRawTransaction.ts
91
+ /**
92
+ * Sends a raw transaction using the mempool.space API
93
+ * @param params.rawTransaction - The raw transaction to send
94
+ * @param params.walletAccount - The wallet account to send the transaction from
95
+ * @returns An object containing the transaction id
96
+ */
97
+ const sendRawTransaction = async ({ rawTransaction, walletAccount }, client = getDefaultClient$1()) => {
98
+ const fetchService = getCore(client).fetch;
99
+ const response = await fetchService(`${getMempoolApiUrl(walletAccount.address)}/tx`, {
100
+ body: rawTransaction,
101
+ headers: { "Content-Type": "application/x-www-form-urlencoded" },
102
+ method: "POST"
103
+ });
104
+ if (!response.ok) throw new SendBitcoinRawTransactionError({ originalError: await response.text() });
105
+ return { transactionId: await response.text() };
106
+ };
107
+
108
+ //#endregion
109
+ //#region src/utils/bitcoinExecuteCheckoutTransaction/bitcoinExecuteCheckoutTransaction.ts
110
+ const bitcoinExecuteCheckoutTransaction = async ({ onStepChange, signingPayload, walletAccount }, client) => {
111
+ const provider = getWalletProviderFromWalletAccount({ walletAccount }, client);
112
+ if (!isBitcoinWalletAccount(walletAccount) || !isBitcoinWalletProvider(provider)) throw new InvalidParamError("Wallet account is not a Bitcoin wallet account");
113
+ const bitcoinPayload = signingPayload;
114
+ if (!bitcoinPayload.psbtTransaction?.psbt) throw new InvalidParamError("Signing payload is missing PSBT transaction data");
115
+ onStepChange?.("transaction");
116
+ const { signedPsbt } = await provider.signPsbt({
117
+ request: {
118
+ allowedSighash: [1],
119
+ unsignedPsbtBase64: bitcoinPayload.psbtTransaction.psbt
120
+ },
121
+ walletAccount
122
+ });
123
+ const psbt = Psbt.fromBase64(signedPsbt);
124
+ psbt.finalizeAllInputs();
125
+ const { transactionId } = await sendRawTransaction({
126
+ rawTransaction: psbt.extractTransaction().toHex(),
127
+ walletAccount
128
+ }, client);
129
+ return { transactionHash: transactionId };
130
+ };
131
+
132
+ //#endregion
133
+ //#region src/errors/NotBitcoinProviderError.ts
134
+ var NotBitcoinProviderError = class extends BaseError {
135
+ providerKey;
136
+ constructor(params) {
137
+ super({
138
+ cause: null,
139
+ code: "not_bitcoin_provider_error",
140
+ docsUrl: null,
141
+ name: "NotBitcoinProviderError",
142
+ shortMessage: "Provider is not a Bitcoin wallet provider"
143
+ });
144
+ this.providerKey = params.providerKey;
145
+ }
146
+ };
147
+
148
+ //#endregion
149
+ //#region src/sendBitcoin/sendBitcoin.ts
150
+ /**
151
+ * Sends a Bitcoin transaction
152
+ * @param params.transaction - The transaction to send
153
+ * @param params.walletAccount - The wallet account to send the transaction from
154
+ * @param [client] - The Dynamic client instance. Only required when using multiple Dynamic clients.
155
+ * @returns An object containing the transaction id
156
+ * @throws {MethodNotImplementedError} If the wallet provider does not implement the sendBitcoin method
157
+ * @throws {NotBitcoinProviderError} If the wallet account is not a valid BitcoinWalletAccount
158
+ */
159
+ const sendBitcoin = async ({ walletAccount, transaction }, client = getDefaultClient$1()) => {
160
+ const provider = getWalletProviderFromWalletAccount({ walletAccount }, client);
161
+ if (!isBitcoinWalletProvider(provider)) throw new NotBitcoinProviderError({ providerKey: provider.key });
162
+ if (!provider.sendBitcoin) throw new MethodNotImplementedError("sendBitcoin");
163
+ return provider.sendBitcoin({
164
+ transaction,
165
+ walletAccount
166
+ });
167
+ };
168
+
169
+ //#endregion
170
+ //#region src/utils/bitcoinTransferAmount/bitcoinTransferAmount.ts
171
+ const BTC_DECIMALS = 8;
172
+ /**
173
+ * Transfers native BTC from one wallet to another.
174
+ *
175
+ * Converts the human-readable BTC amount string to satoshis (8 decimals)
176
+ * and delegates to `sendBitcoin`.
177
+ *
178
+ * @param params.amount - The amount in BTC as a decimal string (e.g. "0.001").
179
+ * @param params.recipient - The recipient Bitcoin address.
180
+ * @param params.walletAccount - The wallet account to send from.
181
+ * @param client - The Dynamic client instance.
182
+ * @returns An object containing the transaction hash.
183
+ */
184
+ const bitcoinTransferAmount = async ({ amount, recipient, walletAccount }, client) => {
185
+ if (!isBitcoinWalletAccount(walletAccount)) throw new InvalidParamError("Wallet account is not a Bitcoin wallet account");
186
+ return { transactionHash: (await sendBitcoin({
187
+ transaction: {
188
+ amount: parseAmountToSmallestUnit({
189
+ amount,
190
+ decimals: BTC_DECIMALS
191
+ }),
192
+ recipientAddress: recipient
193
+ },
194
+ walletAccount
195
+ }, client)).transactionId };
196
+ };
197
+
58
198
  //#endregion
59
199
  //#region src/errors/InvalidPsbtError.ts
60
200
  var InvalidPsbtError = class extends BaseError {
@@ -270,6 +410,7 @@ const createBinanceBitcoinWalletProvider = ({ dynamicClient, injectedProvider })
270
410
  get events() {
271
411
  return getEventEmitter();
272
412
  },
413
+ executeCheckoutTransaction: (args) => bitcoinExecuteCheckoutTransaction(args, dynamicClient),
273
414
  getActiveNetworkId,
274
415
  getConnectedAddresses,
275
416
  groupKey: formatWalletProviderGroupKey(BINANCE_METADATA.displayName),
@@ -279,6 +420,7 @@ const createBinanceBitcoinWalletProvider = ({ dynamicClient, injectedProvider })
279
420
  signPsbt,
280
421
  signPsbts,
281
422
  terminate,
423
+ transferAmount: (args) => bitcoinTransferAmount(args, dynamicClient),
282
424
  walletProviderType
283
425
  };
284
426
  };
@@ -320,7 +462,7 @@ const createUnisatWalletProvider = ({ dynamicClient, injectedProvider }) => {
320
462
  const getConnectedAddresses = async () => {
321
463
  return { addresses: await injectedProvider.getAccounts() };
322
464
  };
323
- const sendBitcoin = async ({ transaction, walletAccount }) => {
465
+ const sendBitcoin$1 = async ({ transaction, walletAccount }) => {
324
466
  await assertWalletAccountSigningAvailability({ walletAccount }, dynamicClient);
325
467
  return { transactionId: await injectedProvider.sendBitcoin(transaction.recipientAddress, Number(transaction.amount)) };
326
468
  };
@@ -376,16 +518,18 @@ const createUnisatWalletProvider = ({ dynamicClient, injectedProvider }) => {
376
518
  get events() {
377
519
  return getEventEmitter();
378
520
  },
521
+ executeCheckoutTransaction: (args) => bitcoinExecuteCheckoutTransaction(args, dynamicClient),
379
522
  getActiveNetworkId,
380
523
  getConnectedAddresses,
381
524
  groupKey: formatWalletProviderGroupKey(UNISAT_METADATA.displayName),
382
525
  key,
383
526
  metadata: UNISAT_METADATA,
384
- sendBitcoin,
527
+ sendBitcoin: sendBitcoin$1,
385
528
  signMessage: signMessage$1,
386
529
  signPsbt,
387
530
  signPsbts,
388
531
  terminate,
532
+ transferAmount: (args) => bitcoinTransferAmount(args, dynamicClient),
389
533
  walletProviderType
390
534
  };
391
535
  };
@@ -483,7 +627,7 @@ const createLeatherBitcoinWalletProvider = ({ dynamicClient, injectedProvider })
483
627
  const getConnectedAddresses = async () => {
484
628
  return { addresses: (await connect()).addresses.map((address$1) => address$1.address) };
485
629
  };
486
- const sendBitcoin = async ({ transaction }) => {
630
+ const sendBitcoin$1 = async ({ transaction }) => {
487
631
  const { networkName } = await getNetworkPayload();
488
632
  return { transactionId: (await injectedProvider.request("sendTransfer", {
489
633
  account: 0,
@@ -538,15 +682,17 @@ const createLeatherBitcoinWalletProvider = ({ dynamicClient, injectedProvider })
538
682
  return {
539
683
  chain,
540
684
  connect,
685
+ executeCheckoutTransaction: (args) => bitcoinExecuteCheckoutTransaction(args, dynamicClient),
541
686
  getActiveNetworkId,
542
687
  getConnectedAddresses,
543
688
  groupKey: formatWalletProviderGroupKey(LEATHER_METADATA.displayName),
544
689
  key,
545
690
  metadata: LEATHER_METADATA,
546
- sendBitcoin,
691
+ sendBitcoin: sendBitcoin$1,
547
692
  signMessage: signMessage$1,
548
693
  signPsbt,
549
694
  signPsbts,
695
+ transferAmount: (args) => bitcoinTransferAmount(args, dynamicClient),
550
696
  walletProviderType
551
697
  };
552
698
  };
@@ -655,7 +801,7 @@ const createMagicEdenBitcoinWalletProvider = ({ dynamicClient, satsConnectProvid
655
801
  const { addresses } = await connect();
656
802
  return { addresses: addresses.map((address$1) => address$1.address) };
657
803
  };
658
- const sendBitcoin = async ({ transaction, walletAccount }) => {
804
+ const sendBitcoin$1 = async ({ transaction, walletAccount }) => {
659
805
  await assertWalletAccountSigningAvailability({ walletAccount }, dynamicClient);
660
806
  const senderAddress = getWalletAccountAddressByType({
661
807
  type: "payment",
@@ -783,16 +929,18 @@ const createMagicEdenBitcoinWalletProvider = ({ dynamicClient, satsConnectProvid
783
929
  get events() {
784
930
  return getEventEmitter();
785
931
  },
932
+ executeCheckoutTransaction: (args) => bitcoinExecuteCheckoutTransaction(args, dynamicClient),
786
933
  getActiveNetworkId,
787
934
  getConnectedAddresses,
788
935
  groupKey: formatWalletProviderGroupKey(MAGIC_EDEN_METADATA.displayName),
789
936
  key,
790
937
  metadata: MAGIC_EDEN_METADATA,
791
- sendBitcoin,
938
+ sendBitcoin: sendBitcoin$1,
792
939
  signMessage: signMessage$1,
793
940
  signPsbt,
794
941
  signPsbts,
795
942
  terminate,
943
+ transferAmount: (args) => bitcoinTransferAmount(args, dynamicClient),
796
944
  walletProviderType
797
945
  };
798
946
  };
@@ -831,7 +979,7 @@ const createOkxBitcoinWalletProvider = ({ dynamicClient, injectedProvider }) =>
831
979
  const getConnectedAddresses = async () => {
832
980
  return { addresses: await injectedProvider.getAccounts() };
833
981
  };
834
- const sendBitcoin = async ({ transaction, walletAccount }) => {
982
+ const sendBitcoin$1 = async ({ transaction, walletAccount }) => {
835
983
  await assertWalletAccountSigningAvailability({ walletAccount }, dynamicClient);
836
984
  return { transactionId: await injectedProvider.sendBitcoin(transaction.recipientAddress, transaction.amount.toString()) };
837
985
  };
@@ -883,16 +1031,18 @@ const createOkxBitcoinWalletProvider = ({ dynamicClient, injectedProvider }) =>
883
1031
  get events() {
884
1032
  return getEventEmitter();
885
1033
  },
1034
+ executeCheckoutTransaction: (args) => bitcoinExecuteCheckoutTransaction(args, dynamicClient),
886
1035
  getActiveNetworkId,
887
1036
  getConnectedAddresses,
888
1037
  groupKey: formatWalletProviderGroupKey(OKX_METADATA.displayName),
889
1038
  key,
890
1039
  metadata: OKX_METADATA,
891
- sendBitcoin,
1040
+ sendBitcoin: sendBitcoin$1,
892
1041
  signMessage: signMessage$1,
893
1042
  signPsbt,
894
1043
  signPsbts,
895
1044
  terminate,
1045
+ transferAmount: (args) => bitcoinTransferAmount(args, dynamicClient),
896
1046
  walletProviderType
897
1047
  };
898
1048
  };
@@ -930,7 +1080,7 @@ const createOneKeyBitcoinWalletProvider = ({ dynamicClient, injectedProvider })
930
1080
  const getConnectedAddresses = async () => {
931
1081
  return { addresses: await injectedProvider.getAccounts() };
932
1082
  };
933
- const sendBitcoin = async ({ transaction, walletAccount }) => {
1083
+ const sendBitcoin$1 = async ({ transaction, walletAccount }) => {
934
1084
  await assertWalletAccountSigningAvailability({ walletAccount }, dynamicClient);
935
1085
  return { transactionId: await injectedProvider.sendBitcoin(transaction.recipientAddress, transaction.amount.toString()) };
936
1086
  };
@@ -977,16 +1127,18 @@ const createOneKeyBitcoinWalletProvider = ({ dynamicClient, injectedProvider })
977
1127
  get events() {
978
1128
  return getEventEmitter();
979
1129
  },
1130
+ executeCheckoutTransaction: (args) => bitcoinExecuteCheckoutTransaction(args, dynamicClient),
980
1131
  getActiveNetworkId,
981
1132
  getConnectedAddresses,
982
1133
  groupKey: formatWalletProviderGroupKey(ONEKEY_METADATA.displayName),
983
1134
  key,
984
1135
  metadata: ONEKEY_METADATA,
985
- sendBitcoin,
1136
+ sendBitcoin: sendBitcoin$1,
986
1137
  signMessage: signMessage$1,
987
1138
  signPsbt,
988
1139
  signPsbts,
989
1140
  terminate,
1141
+ transferAmount: (args) => bitcoinTransferAmount(args, dynamicClient),
990
1142
  walletProviderType
991
1143
  };
992
1144
  };
@@ -1076,6 +1228,7 @@ const createOylBitcoinWalletProvider = ({ dynamicClient, injectedProvider }) =>
1076
1228
  return {
1077
1229
  chain,
1078
1230
  connect,
1231
+ executeCheckoutTransaction: (args) => bitcoinExecuteCheckoutTransaction(args, dynamicClient),
1079
1232
  getActiveNetworkId,
1080
1233
  getConnectedAddresses,
1081
1234
  groupKey: formatWalletProviderGroupKey(OYL_METADATA.displayName),
@@ -1084,6 +1237,7 @@ const createOylBitcoinWalletProvider = ({ dynamicClient, injectedProvider }) =>
1084
1237
  signMessage: signMessage$1,
1085
1238
  signPsbt,
1086
1239
  signPsbts,
1240
+ transferAmount: (args) => bitcoinTransferAmount(args, dynamicClient),
1087
1241
  walletProviderType
1088
1242
  };
1089
1243
  };
@@ -1181,6 +1335,7 @@ const createPhantomBitcoinWalletProvider = ({ dynamicClient, injectedProvider })
1181
1335
  get events() {
1182
1336
  return getEventEmitter();
1183
1337
  },
1338
+ executeCheckoutTransaction: (args) => bitcoinExecuteCheckoutTransaction(args, dynamicClient),
1184
1339
  getActiveNetworkId,
1185
1340
  getConnectedAddresses,
1186
1341
  groupKey: formatWalletProviderGroupKey(PHANTOM_METADATA.displayName),
@@ -1190,6 +1345,7 @@ const createPhantomBitcoinWalletProvider = ({ dynamicClient, injectedProvider })
1190
1345
  signPsbt,
1191
1346
  signPsbts,
1192
1347
  terminate,
1348
+ transferAmount: (args) => bitcoinTransferAmount(args, dynamicClient),
1193
1349
  walletProviderType
1194
1350
  };
1195
1351
  };
@@ -1272,7 +1428,7 @@ const createXverseBitcoinWalletProvider = ({ dynamicClient, satsConnectProvider
1272
1428
  if (response.error.code !== RpcErrorCode.ACCESS_DENIED) throw response.error;
1273
1429
  return { addresses: [] };
1274
1430
  };
1275
- const sendBitcoin = async ({ transaction, walletAccount }) => {
1431
+ const sendBitcoin$1 = async ({ transaction, walletAccount }) => {
1276
1432
  await assertWalletAccountSigningAvailability({ walletAccount }, dynamicClient);
1277
1433
  const response = await request("sendTransfer", { recipients: [{
1278
1434
  address: transaction.recipientAddress,
@@ -1369,16 +1525,18 @@ const createXverseBitcoinWalletProvider = ({ dynamicClient, satsConnectProvider
1369
1525
  get events() {
1370
1526
  return getEventEmitter();
1371
1527
  },
1528
+ executeCheckoutTransaction: (args) => bitcoinExecuteCheckoutTransaction(args, dynamicClient),
1372
1529
  getActiveNetworkId,
1373
1530
  getConnectedAddresses,
1374
1531
  groupKey: formatWalletProviderGroupKey(XVERSE_METADATA.displayName),
1375
1532
  key,
1376
1533
  metadata: XVERSE_METADATA,
1377
- sendBitcoin,
1534
+ sendBitcoin: sendBitcoin$1,
1378
1535
  signMessage: signMessage$1,
1379
1536
  signPsbt,
1380
1537
  signPsbts,
1381
1538
  terminate,
1539
+ transferAmount: (args) => bitcoinTransferAmount(args, dynamicClient),
1382
1540
  walletProviderType
1383
1541
  };
1384
1542
  };
@@ -1495,5 +1653,5 @@ const addBitcoinInjectedWalletsExtension = (client = getDefaultClient()) => {
1495
1653
  };
1496
1654
 
1497
1655
  //#endregion
1498
- export { name as a, getMempoolApiUrl as i, InvalidPsbtError as n, version as o, registerBitcoinNetworkProviderBuilder as r, addBitcoinInjectedWalletsExtension as t };
1499
- //# sourceMappingURL=addBitcoinInjectedWalletsExtension-D8ZBqpF1.esm.js.map
1656
+ export { NotBitcoinProviderError as a, isBitcoinWalletProvider as c, name as d, version as f, sendBitcoin as i, isBitcoinWalletAccount as l, InvalidPsbtError as n, bitcoinExecuteCheckoutTransaction as o, bitcoinTransferAmount as r, sendRawTransaction as s, addBitcoinInjectedWalletsExtension as t, registerBitcoinNetworkProviderBuilder as u };
1657
+ //# sourceMappingURL=addBitcoinInjectedWalletsExtension-Cki0u3G6.esm.js.map