@gobob/bob-sdk 3.0.4 → 3.1.1
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/dist/gateway/tokens.js +65 -1
- package/dist/gateway/tokens.js.map +1 -1
- package/dist/wallet/utxo.d.ts +5 -0
- package/dist/wallet/utxo.js +39 -22
- package/dist/wallet/utxo.js.map +1 -1
- package/package.json +1 -1
package/dist/gateway/tokens.js
CHANGED
|
@@ -170,7 +170,71 @@ const segmentTokens = [
|
|
|
170
170
|
logoURI: 'https://raw.githubusercontent.com/bob-collective/bob/master/assets/segment.svg',
|
|
171
171
|
},
|
|
172
172
|
];
|
|
173
|
-
const
|
|
173
|
+
const avalonTokens = [
|
|
174
|
+
{
|
|
175
|
+
name: 'Avalon TBTC',
|
|
176
|
+
symbol: 'aBOBTBTC',
|
|
177
|
+
decimals: 18,
|
|
178
|
+
nobridge: true,
|
|
179
|
+
tokens: {
|
|
180
|
+
bob: {
|
|
181
|
+
address: '0x5E007Ed35c7d89f5889eb6FD0cdCAa38059560ef',
|
|
182
|
+
},
|
|
183
|
+
},
|
|
184
|
+
logoURI: 'https://app.avalonfinance.xyz/icons/tokens/avalon.svg',
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
name: 'Avalon WBTC',
|
|
188
|
+
symbol: 'aBOBWBTC',
|
|
189
|
+
decimals: 8,
|
|
190
|
+
nobridge: true,
|
|
191
|
+
tokens: {
|
|
192
|
+
bob: {
|
|
193
|
+
address: '0xd6890176e8d912142AC489e8B5D8D93F8dE74D60',
|
|
194
|
+
},
|
|
195
|
+
},
|
|
196
|
+
logoURI: 'https://app.avalonfinance.xyz/icons/tokens/avalon.svg',
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
name: 'Avalon SOLVBTCBBN',
|
|
200
|
+
symbol: 'aBOBSOLVBTCBBN',
|
|
201
|
+
decimals: 18,
|
|
202
|
+
nobridge: true,
|
|
203
|
+
tokens: {
|
|
204
|
+
bob: {
|
|
205
|
+
address: '0x2E6500A7Add9a788753a897e4e3477f651c612eb',
|
|
206
|
+
},
|
|
207
|
+
},
|
|
208
|
+
logoURI: 'https://app.avalonfinance.xyz/icons/tokens/avalon.svg',
|
|
209
|
+
},
|
|
210
|
+
];
|
|
211
|
+
const ionicTokens = [
|
|
212
|
+
{
|
|
213
|
+
name: 'Ionic TBTC',
|
|
214
|
+
symbol: 'iontBTC',
|
|
215
|
+
decimals: 18,
|
|
216
|
+
nobridge: true,
|
|
217
|
+
tokens: {
|
|
218
|
+
bob: {
|
|
219
|
+
address: '0x68e0e4d875FDe34fc4698f40ccca0Db5b67e3693',
|
|
220
|
+
},
|
|
221
|
+
},
|
|
222
|
+
logoURI: 'https://doc.ionic.money/~gitbook/image?url=https://1954749119-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%252F4L4EczL4rCp3jyJhAxHG%252Fuploads%252FPy57T6N8vDpy1jGqxElR%252FTwitter%2520Avatar%2520green.png?alt%3Dmedia%26token%3D1808baa5-0996-41d1-ad6d-fe09c7188cdc&width=768&dpr=4&quality=100&sign=14802451&sv=2',
|
|
223
|
+
},
|
|
224
|
+
{
|
|
225
|
+
name: 'Ionic Wrapped BTC',
|
|
226
|
+
symbol: 'ionWBTC',
|
|
227
|
+
decimals: 8,
|
|
228
|
+
nobridge: true,
|
|
229
|
+
tokens: {
|
|
230
|
+
bob: {
|
|
231
|
+
address: '0xEBc8a7EE7f1D6534eBF45Bd5311203BF0A17493c',
|
|
232
|
+
},
|
|
233
|
+
},
|
|
234
|
+
logoURI: 'https://doc.ionic.money/~gitbook/image?url=https://1954749119-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%252F4L4EczL4rCp3jyJhAxHG%252Fuploads%252FPy57T6N8vDpy1jGqxElR%252FTwitter%2520Avatar%2520green.png?alt%3Dmedia%26token%3D1808baa5-0996-41d1-ad6d-fe09c7188cdc&width=768&dpr=4&quality=100&sign=14802451&sv=2',
|
|
235
|
+
},
|
|
236
|
+
];
|
|
237
|
+
const TOKENS = [...bobTokens, ...bobSepoliaTokens, ...shoebillTokens, ...segmentTokens, ...avalonTokens, ...ionicTokens];
|
|
174
238
|
exports.SYMBOL_LOOKUP = {};
|
|
175
239
|
exports.ADDRESS_LOOKUP = {};
|
|
176
240
|
exports.SYMBOL_LOOKUP[types_1.ChainId.BOB] = {};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/gateway/tokens.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"tokens.js","sourceRoot":"","sources":["../../src/gateway/tokens.ts"],"names":[],"mappings":"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"}
|
package/dist/wallet/utxo.d.ts
CHANGED
|
@@ -22,3 +22,8 @@ export interface Input {
|
|
|
22
22
|
export declare function createBitcoinPsbt(fromAddress: string, toAddress: string, amount: number, publicKey?: string, opReturnData?: string, feeRate?: number, confirmationTarget?: number): Promise<string>;
|
|
23
23
|
export declare function getInputFromUtxoAndTx(network: BitcoinNetworkName, utxo: UTXO, transaction: Transaction, addressType: AddressType, publicKey?: string): Input;
|
|
24
24
|
export declare function estimateTxFee(fromAddress: string, amount?: number, publicKey?: string, opReturnData?: string, feeRate?: number, confirmationTarget?: number): Promise<bigint>;
|
|
25
|
+
export declare function getBalance(address?: string): Promise<{
|
|
26
|
+
confirmed: bigint;
|
|
27
|
+
unconfirmed: bigint;
|
|
28
|
+
total: bigint;
|
|
29
|
+
}>;
|
package/dist/wallet/utxo.js
CHANGED
|
@@ -4,6 +4,7 @@ exports.getBtcNetwork = void 0;
|
|
|
4
4
|
exports.createBitcoinPsbt = createBitcoinPsbt;
|
|
5
5
|
exports.getInputFromUtxoAndTx = getInputFromUtxoAndTx;
|
|
6
6
|
exports.estimateTxFee = estimateTxFee;
|
|
7
|
+
exports.getBalance = getBalance;
|
|
7
8
|
const btc_signer_1 = require("@scure/btc-signer");
|
|
8
9
|
const base_1 = require("@scure/base");
|
|
9
10
|
const bitcoin_address_validation_1 = require("bitcoin-address-validation");
|
|
@@ -37,7 +38,7 @@ async function createBitcoinPsbt(fromAddress, toAddress, amount, publicKey, opRe
|
|
|
37
38
|
[confirmedUtxos, feeRate, outputsFromAddress] = await Promise.all([
|
|
38
39
|
esploraClient.getAddressUtxos(fromAddress),
|
|
39
40
|
feeRate === undefined ? esploraClient.getFeeEstimate(confirmationTarget) : feeRate,
|
|
40
|
-
|
|
41
|
+
ordinalsClient.getOutputsFromAddress(fromAddress, 'cardinal'),
|
|
41
42
|
]);
|
|
42
43
|
if (confirmedUtxos.length === 0) {
|
|
43
44
|
throw new Error('No confirmed UTXOs');
|
|
@@ -48,13 +49,8 @@ async function createBitcoinPsbt(fromAddress, toAddress, amount, publicKey, opRe
|
|
|
48
49
|
const hex = await esploraClient.getTransactionHex(utxo.txid);
|
|
49
50
|
const transaction = btc_signer_1.Transaction.fromRaw(Buffer.from(hex, 'hex'), { allowUnknownOutputs: true });
|
|
50
51
|
const input = getInputFromUtxoAndTx(addressInfo.network, utxo, transaction, addressInfo.type, publicKey);
|
|
51
|
-
if (
|
|
52
|
-
if (outpointsSet.has(ordinal_api_1.OutPoint.toString(utxo)))
|
|
53
|
-
possibleInputs.push(input);
|
|
54
|
-
}
|
|
55
|
-
else {
|
|
52
|
+
if (outpointsSet.has(ordinal_api_1.OutPoint.toString(utxo)))
|
|
56
53
|
possibleInputs.push(input);
|
|
57
|
-
}
|
|
58
54
|
}));
|
|
59
55
|
const outputs = [
|
|
60
56
|
{
|
|
@@ -82,13 +78,11 @@ async function createBitcoinPsbt(fromAddress, toAddress, amount, publicKey, opRe
|
|
|
82
78
|
dust: BigInt(546),
|
|
83
79
|
});
|
|
84
80
|
if (!transaction || !transaction.tx) {
|
|
81
|
+
console.debug('confirmedUtxos', confirmedUtxos);
|
|
82
|
+
console.debug('outputsFromAddress', outputsFromAddress);
|
|
85
83
|
console.debug(`fromAddress: ${fromAddress}, toAddress: ${toAddress}, amount: ${amount}`);
|
|
86
84
|
console.debug(`publicKey: ${publicKey}, opReturnData: ${opReturnData}`);
|
|
87
85
|
console.debug(`feeRate: ${feeRate}, confirmationTarget: ${confirmationTarget}`);
|
|
88
|
-
if (addressInfo.type === bitcoin_address_validation_1.AddressType.p2tr) {
|
|
89
|
-
console.debug('confirmedUtxos', confirmedUtxos);
|
|
90
|
-
console.debug('outputsFromAddress', outputsFromAddress);
|
|
91
|
-
}
|
|
92
86
|
throw new Error('Failed to create transaction. Do you have enough funds?');
|
|
93
87
|
}
|
|
94
88
|
return base_1.base64.encode(transaction.tx.toPSBT(0));
|
|
@@ -148,7 +142,7 @@ async function estimateTxFee(fromAddress, amount, publicKey, opReturnData, feeRa
|
|
|
148
142
|
[confirmedUtxos, feeRate, outputsFromAddress] = await Promise.all([
|
|
149
143
|
esploraClient.getAddressUtxos(fromAddress),
|
|
150
144
|
feeRate === undefined ? esploraClient.getFeeEstimate(confirmationTarget) : feeRate,
|
|
151
|
-
|
|
145
|
+
ordinalsClient.getOutputsFromAddress(fromAddress, 'cardinal'),
|
|
152
146
|
]);
|
|
153
147
|
if (confirmedUtxos.length === 0) {
|
|
154
148
|
throw new Error('No confirmed UTXOs');
|
|
@@ -159,13 +153,8 @@ async function estimateTxFee(fromAddress, amount, publicKey, opReturnData, feeRa
|
|
|
159
153
|
const hex = await esploraClient.getTransactionHex(utxo.txid);
|
|
160
154
|
const transaction = btc_signer_1.Transaction.fromRaw(Buffer.from(hex, 'hex'), { allowUnknownOutputs: true });
|
|
161
155
|
const input = getInputFromUtxoAndTx(addressInfo.network, utxo, transaction, addressInfo.type, publicKey);
|
|
162
|
-
if (
|
|
163
|
-
if (outpointsSet.has(ordinal_api_1.OutPoint.toString(utxo)))
|
|
164
|
-
possibleInputs.push(input);
|
|
165
|
-
}
|
|
166
|
-
else {
|
|
156
|
+
if (outpointsSet.has(ordinal_api_1.OutPoint.toString(utxo)))
|
|
167
157
|
possibleInputs.push(input);
|
|
168
|
-
}
|
|
169
158
|
}));
|
|
170
159
|
const outputs = [
|
|
171
160
|
{
|
|
@@ -197,15 +186,43 @@ async function estimateTxFee(fromAddress, amount, publicKey, opReturnData, feeRa
|
|
|
197
186
|
dust: BigInt(546),
|
|
198
187
|
});
|
|
199
188
|
if (!transaction || !transaction.tx) {
|
|
189
|
+
console.debug('confirmedUtxos', confirmedUtxos);
|
|
190
|
+
console.debug('outputsFromAddress', outputsFromAddress);
|
|
200
191
|
console.debug(`fromAddress: ${fromAddress}, amount: ${amount}`);
|
|
201
192
|
console.debug(`publicKey: ${publicKey}, opReturnData: ${opReturnData}`);
|
|
202
193
|
console.debug(`feeRate: ${feeRate}, confirmationTarget: ${confirmationTarget}`);
|
|
203
|
-
if (addressInfo.type === bitcoin_address_validation_1.AddressType.p2tr) {
|
|
204
|
-
console.debug('confirmedUtxos', confirmedUtxos);
|
|
205
|
-
console.debug('outputsFromAddress', outputsFromAddress);
|
|
206
|
-
}
|
|
207
194
|
throw new Error('Failed to create transaction. Do you have enough funds?');
|
|
208
195
|
}
|
|
209
196
|
return transaction.fee;
|
|
210
197
|
}
|
|
198
|
+
async function getBalance(address) {
|
|
199
|
+
if (!address) {
|
|
200
|
+
return { confirmed: BigInt(0), unconfirmed: BigInt(0), total: BigInt(0) };
|
|
201
|
+
}
|
|
202
|
+
const addressInfo = (0, bitcoin_address_validation_1.getAddressInfo)(address);
|
|
203
|
+
const esploraClient = new esplora_1.EsploraClient(addressInfo.network);
|
|
204
|
+
const ordinalsClient = new ordinal_api_1.OrdinalsClient(addressInfo.network);
|
|
205
|
+
const [outputs, cardinalOutputs] = await Promise.all([
|
|
206
|
+
esploraClient.getAddressUtxos(address),
|
|
207
|
+
ordinalsClient.getOutputsFromAddress(address, 'cardinal'),
|
|
208
|
+
]);
|
|
209
|
+
const cardinalOutputsSet = new Set(cardinalOutputs.map((output) => output.outpoint));
|
|
210
|
+
const total = outputs.reduce((acc, output) => {
|
|
211
|
+
if (cardinalOutputsSet.has(ordinal_api_1.OutPoint.toString(output))) {
|
|
212
|
+
return acc + output.value;
|
|
213
|
+
}
|
|
214
|
+
return acc;
|
|
215
|
+
}, 0);
|
|
216
|
+
const confirmed = outputs.reduce((acc, output) => {
|
|
217
|
+
if (cardinalOutputsSet.has(ordinal_api_1.OutPoint.toString(output)) && output.confirmed) {
|
|
218
|
+
return acc + output.value;
|
|
219
|
+
}
|
|
220
|
+
return acc;
|
|
221
|
+
}, 0);
|
|
222
|
+
return {
|
|
223
|
+
confirmed: BigInt(confirmed),
|
|
224
|
+
unconfirmed: BigInt(total - confirmed),
|
|
225
|
+
total: BigInt(total),
|
|
226
|
+
};
|
|
227
|
+
}
|
|
211
228
|
//# sourceMappingURL=utxo.js.map
|
package/dist/wallet/utxo.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utxo.js","sourceRoot":"","sources":["../../src/wallet/utxo.ts"],"names":[],"mappings":";;;AA4DA,
|
|
1
|
+
{"version":3,"file":"utxo.js","sourceRoot":"","sources":["../../src/wallet/utxo.ts"],"names":[],"mappings":"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"}
|