@dynamic-labs/bitcoin 2.1.0-alpha.24 → 2.1.0-alpha.25

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.
package/CHANGELOG.md CHANGED
@@ -1,4 +1,11 @@
1
1
 
2
+ ## [2.1.0-alpha.25](https://github.com/dynamic-labs/DynamicAuth/compare/v2.1.0-alpha.24...v2.1.0-alpha.25) (2024-05-27)
3
+
4
+
5
+ ### Bug Fixes
6
+
7
+ * btc balance calculation ([#5737](https://github.com/dynamic-labs/DynamicAuth/issues/5737)) ([9b5ceb3](https://github.com/dynamic-labs/DynamicAuth/commit/9b5ceb32d543037f60d7104f0b81b3abc86ebd10))
8
+
2
9
  ## [2.1.0-alpha.24](https://github.com/dynamic-labs/DynamicAuth/compare/v2.1.0-alpha.23...v2.1.0-alpha.24) (2024-05-26)
3
10
 
4
11
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dynamic-labs/bitcoin",
3
- "version": "2.1.0-alpha.24",
3
+ "version": "2.1.0-alpha.25",
4
4
  "repository": {
5
5
  "type": "git",
6
6
  "url": "git+https://github.com/dynamic-labs/dynamic-auth.git",
@@ -32,9 +32,9 @@
32
32
  "@wallet-standard/base": "1.0.1",
33
33
  "bitcoinjs-lib": "6.1.5",
34
34
  "sats-connect": "2.0.0",
35
- "@dynamic-labs/utils": "2.1.0-alpha.24",
36
- "@dynamic-labs/wallet-book": "2.1.0-alpha.24",
37
- "@dynamic-labs/wallet-connector-core": "2.1.0-alpha.24",
35
+ "@dynamic-labs/utils": "2.1.0-alpha.25",
36
+ "@dynamic-labs/wallet-book": "2.1.0-alpha.25",
37
+ "@dynamic-labs/wallet-connector-core": "2.1.0-alpha.25",
38
38
  "stream": "0.0.2"
39
39
  },
40
40
  "peerDependencies": {}
@@ -12,6 +12,7 @@ var bitcoinProviderHelper = require('./bitcoinProviderHelper.cjs');
12
12
  var BitcoinLocalStorageCache = require('./BitcoinLocalStorageCache.cjs');
13
13
  var getMempoolApiUrl = require('./utils/getMempoolApiUrl.cjs');
14
14
  var _const = require('./const.cjs');
15
+ var satoshisToBtc = require('./utils/satoshisToBtc/satoshisToBtc.cjs');
15
16
 
16
17
  class BitcoinWalletConnector extends walletConnectorCore.WalletConnectorBase {
17
18
  constructor(opts) {
@@ -76,12 +77,14 @@ class BitcoinWalletConnector extends walletConnectorCore.WalletConnectorBase {
76
77
  return undefined;
77
78
  }
78
79
  const addressInfo = yield response.json();
79
- if (!(addressInfo === null || addressInfo === void 0 ? void 0 : addressInfo.chain_stats)) {
80
+ if (!(addressInfo === null || addressInfo === void 0 ? void 0 : addressInfo.chain_stats) || !(addressInfo === null || addressInfo === void 0 ? void 0 : addressInfo.mempool_stats)) {
80
81
  return undefined;
81
82
  }
82
- const balance = (Number(addressInfo.chain_stats.funded_txo_sum) -
83
- Number(addressInfo.chain_stats.spent_txo_sum)) /
84
- 100000000;
83
+ const confirmedBalanceInSats = Number(addressInfo.chain_stats.funded_txo_sum) -
84
+ Number(addressInfo.chain_stats.spent_txo_sum);
85
+ const unconfirmedBalanceInSats = Number(addressInfo.mempool_stats.funded_txo_sum) -
86
+ Number(addressInfo.mempool_stats.spent_txo_sum);
87
+ const balance = satoshisToBtc.satoshisToBtc(confirmedBalanceInSats + unconfirmedBalanceInSats);
85
88
  yield this.cache.setLastBalance(balance.toString());
86
89
  return balance.toString();
87
90
  });
@@ -8,6 +8,7 @@ import { BitcoinProviderHelper } from './bitcoinProviderHelper.js';
8
8
  import { BitcoinLocalStorageCache } from './BitcoinLocalStorageCache.js';
9
9
  import { getMempoolApiUrl } from './utils/getMempoolApiUrl.js';
10
10
  import { HTTP_STATUS_TOO_MANY_REQUESTS, HTTP_STATUS_NOT_FOUND } from './const.js';
11
+ import { satoshisToBtc } from './utils/satoshisToBtc/satoshisToBtc.js';
11
12
 
12
13
  class BitcoinWalletConnector extends WalletConnectorBase {
13
14
  constructor(opts) {
@@ -72,12 +73,14 @@ class BitcoinWalletConnector extends WalletConnectorBase {
72
73
  return undefined;
73
74
  }
74
75
  const addressInfo = yield response.json();
75
- if (!(addressInfo === null || addressInfo === void 0 ? void 0 : addressInfo.chain_stats)) {
76
+ if (!(addressInfo === null || addressInfo === void 0 ? void 0 : addressInfo.chain_stats) || !(addressInfo === null || addressInfo === void 0 ? void 0 : addressInfo.mempool_stats)) {
76
77
  return undefined;
77
78
  }
78
- const balance = (Number(addressInfo.chain_stats.funded_txo_sum) -
79
- Number(addressInfo.chain_stats.spent_txo_sum)) /
80
- 100000000;
79
+ const confirmedBalanceInSats = Number(addressInfo.chain_stats.funded_txo_sum) -
80
+ Number(addressInfo.chain_stats.spent_txo_sum);
81
+ const unconfirmedBalanceInSats = Number(addressInfo.mempool_stats.funded_txo_sum) -
82
+ Number(addressInfo.mempool_stats.spent_txo_sum);
83
+ const balance = satoshisToBtc(confirmedBalanceInSats + unconfirmedBalanceInSats);
81
84
  yield this.cache.setLastBalance(balance.toString());
82
85
  return balance.toString();
83
86
  });
@@ -0,0 +1 @@
1
+ export * from './satoshisToBtc';
@@ -0,0 +1,8 @@
1
+ 'use client'
2
+ 'use strict';
3
+
4
+ Object.defineProperty(exports, '__esModule', { value: true });
5
+
6
+ const satoshisToBtc = (satoshis) => satoshis / 100000000;
7
+
8
+ exports.satoshisToBtc = satoshisToBtc;
@@ -0,0 +1 @@
1
+ export declare const satoshisToBtc: (satoshis: number) => number;
@@ -0,0 +1,4 @@
1
+ 'use client'
2
+ const satoshisToBtc = (satoshis) => satoshis / 100000000;
3
+
4
+ export { satoshisToBtc };