Skip to content

Commit 48c5213

Browse files
committed
support ctoken
1 parent 2d0445d commit 48c5213

4 files changed

Lines changed: 11 additions & 4 deletions

File tree

solend-sdk/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "@solendprotocol/solend-sdk",
3-
"version": "0.13.38",
3+
"version": "0.13.39",
44
"private": true,
55
"main": "src/index.ts",
66
"module": "src/index.ts",

solend-sdk/src/core/actions.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,7 @@ type ActionConfigType = {
9898
type SupportType =
9999
| "wrap"
100100
| "unwrap"
101+
| "refreshReserve"
101102
| "refreshReserves"
102103
| "refreshObligation"
103104
| "createObligation"
@@ -121,7 +122,7 @@ const ACTION_SUPPORT_REQUIREMENTS: {
121122
],
122123
repay: ["wsol", "wrap"],
123124
mint: ["wsol", "wrap", "cAta"],
124-
redeem: ["wsol", "ata", "refreshReserves", "unwrap"],
125+
redeem: ["wsol", "ata", "refreshReserve", "unwrap"],
125126
depositCollateral: ["createObligation"],
126127
withdrawCollateral: ["cAta", "refreshReserves", "refreshObligation"],
127128
forgive: ["refreshReserves", "refreshObligation"],
@@ -1157,6 +1158,9 @@ export class SolendActionCore {
11571158
await this.addUnwrapIx();
11581159
}
11591160
break;
1161+
case "refreshReserve":
1162+
await this.addRefreshReservesIxs(true);
1163+
break;
11601164
case "refreshReserves":
11611165
await this.addRefreshReservesIxs();
11621166
break;
@@ -1468,15 +1472,15 @@ export class SolendActionCore {
14681472
}
14691473
}
14701474

1471-
private async addRefreshReservesIxs() {
1475+
private async addRefreshReservesIxs(singleReserve?: boolean) {
14721476
// Union of addresses
14731477
const reserveMap = this.pool.reserves.reduce((acc, reserve) => {
14741478
acc[reserve.address] = reserve;
14751479
return acc;
14761480
}, {} as Record<string, ReserveType>);
14771481

14781482
const allReserveAddresses = Array.from(
1479-
new Set([
1483+
new Set(singleReserve ? [this.reserve.address] : [
14801484
...this.depositReserves.map((e) => e.toBase58()),
14811485
...this.borrowReserves.map((e) => e.toBase58()),
14821486
this.reserve.address,

solend-sdk/src/core/types.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -23,6 +23,7 @@ export type TokenMetadata = {
2323
symbol: string;
2424
logoUri: string | undefined;
2525
decimals: number;
26+
underlyingToken?: string;
2627
};
2728
};
2829

@@ -41,6 +42,7 @@ export type WalletAssetType = {
4142
decimals: number;
4243
address: string;
4344
logo?: string;
45+
underlyingToken?: string;
4446
};
4547

4648
export type WalletType = Array<WalletAssetType>;

solend-sdk/src/core/utils/wallet.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,7 @@ export function formatWalletAssets(
3838
? `w${nativeTokenSymbol}`
3939
: mintAddress,
4040
logoUri: tokenMetadata?.logoUri,
41+
underlyingToken: tokenMetadata?.underlyingToken,
4142
};
4243
})
4344
.filter(Boolean) as WalletType;

0 commit comments

Comments
 (0)