diff --git a/.changeset/rude-feet-love.md b/.changeset/rude-feet-love.md new file mode 100644 index 00000000..f741593d --- /dev/null +++ b/.changeset/rude-feet-love.md @@ -0,0 +1,5 @@ +--- +'@rgbpp-sdk/service': patch +--- + +add no_cache params to btc/rgbpp service api diff --git a/packages/service/src/types/btc.ts b/packages/service/src/types/btc.ts index 1b320bcd..d5bbd031 100644 --- a/packages/service/src/types/btc.ts +++ b/packages/service/src/types/btc.ts @@ -58,6 +58,7 @@ export interface BtcApiRecommendedFeeRates { export interface BtcApiBalanceParams { min_satoshi?: number; + no_cache?: boolean; } export interface BtcApiBalance { address: string; @@ -70,6 +71,7 @@ export interface BtcApiBalance { export interface BtcApiUtxoParams { only_confirmed?: boolean; min_satoshi?: number; + no_cache?: boolean; } export interface BtcApiUtxo { txid: string; diff --git a/packages/service/src/types/rgbpp.ts b/packages/service/src/types/rgbpp.ts index 2a6b39b1..3f42bb5a 100644 --- a/packages/service/src/types/rgbpp.ts +++ b/packages/service/src/types/rgbpp.ts @@ -44,6 +44,7 @@ export interface RgbppApiTransactionState { export interface RgbppApiAssetsByAddressParams { type_script?: string; + no_cache?: boolean; } export interface RgbppApiSpvProof { diff --git a/packages/service/tests/Service.test.ts b/packages/service/tests/Service.test.ts index 1bb509cf..e2205335 100644 --- a/packages/service/tests/Service.test.ts +++ b/packages/service/tests/Service.test.ts @@ -92,6 +92,12 @@ describe( expect(filteredBalance.satoshi).toEqual(0); expect(filteredBalance.dust_satoshi).toEqual(originalBalance.satoshi + originalBalance.dust_satoshi); }); + it('getBtcBalance() with no_cache', async () => { + const res = await service.getBtcBalance(btcAddress, { + no_cache: true, + }); + expect(res.address).toEqual(btcAddress); + }); it('getBtcUtxos()', async () => { const res = await service.getBtcUtxos(btcAddress); expect(Array.isArray(res)).toBe(true); @@ -131,6 +137,12 @@ describe( expect(utxo.status.confirmed).toBe(true); } }); + it('getBtcUtxos() with no_cache', async () => { + const utxos = await service.getBtcUtxos(btcAddress, { + no_cache: true, + }); + expect(Array.isArray(utxos)).toBe(true); + }); it('getBtcTransactions()', async () => { const res = await service.getBtcTransactions(btcAddress); console.log(res.map((tx) => tx.txid)); @@ -152,13 +164,13 @@ describe( expect(txs.length).toBeGreaterThan(0); const filteredTxs = await service.getBtcTransactions(btcAddress, { - after_txid: txs[0].txid, + after_txid: txs[txs.length - 2].txid, }); expect(Array.isArray(filteredTxs)).toBe(true); if (txs.length > 1) { expect(txs.length).toBeGreaterThan(0); - expect(filteredTxs[0].txid).toEqual(txs[1].txid); + expect(filteredTxs[0].txid).toEqual(txs[txs.length - 1].txid); } else { expect(filteredTxs).toHaveLength(0); } @@ -248,6 +260,13 @@ describe( expectCell(cell); } }); + it('getRgbppAssetsByBtcAddress() with no_cache', async () => { + const res = await service.getRgbppAssetsByBtcAddress(rgbppBtcAddress, { + no_cache: true, + }); + expect(res).toBeDefined(); + expect(res.length).toBeGreaterThan(0); + }); it('getRgbppSpvProof()', async () => { const res = await service.getRgbppSpvProof(rgbppBtcTxId, 6); expect(res).toBeDefined();