@glamsystems/glam-sdk 0.1.31 → 0.1.33
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/index.cjs.js +350 -46
- package/index.esm.js +350 -46
- package/package.json +2 -2
- package/src/client/assets.d.ts +6 -1
- package/target/idl/glam_protocol.json +44 -13
- package/target/types/glam_protocol.d.ts +44 -13
- package/target/types/glam_protocol.ts +44 -13
package/index.cjs.js
CHANGED
|
@@ -5,7 +5,7 @@ var web3_js = require('@solana/web3.js');
|
|
|
5
5
|
var splToken = require('@solana/spl-token');
|
|
6
6
|
var splTokenMetadata = require('@solana/spl-token-metadata');
|
|
7
7
|
var DLMM = require('@meteora-ag/dlmm');
|
|
8
|
-
var sanctumLstList = require('sanctum-lst-list');
|
|
8
|
+
var sanctumLstList = require('@glamsystems/sanctum-lst-list');
|
|
9
9
|
var bytes = require('@coral-xyz/anchor/dist/cjs/utils/bytes');
|
|
10
10
|
var borsh = require('@coral-xyz/borsh');
|
|
11
11
|
var marinadeTsSdk = require('@marinade.finance/marinade-ts-sdk');
|
|
@@ -34,7 +34,7 @@ var borsh__namespace = /*#__PURE__*/_interopNamespaceDefault(borsh);
|
|
|
34
34
|
var address = "GLAMbTqav9N9witRjswJ8enwp9vv5G8bsSJ2kPJ4rcyc";
|
|
35
35
|
var metadata = {
|
|
36
36
|
name: "glam_protocol",
|
|
37
|
-
version: "0.4.
|
|
37
|
+
version: "0.4.36",
|
|
38
38
|
spec: "0.1.0",
|
|
39
39
|
description: "Glam Protocol"
|
|
40
40
|
};
|
|
@@ -1007,7 +1007,7 @@ var instructions = [
|
|
|
1007
1007
|
98,
|
|
1008
1008
|
97,
|
|
1009
1009
|
108,
|
|
1010
|
-
|
|
1010
|
+
45,
|
|
1011
1011
|
99,
|
|
1012
1012
|
111,
|
|
1013
1013
|
110,
|
|
@@ -6830,7 +6830,7 @@ var instructions = [
|
|
|
6830
6830
|
98,
|
|
6831
6831
|
97,
|
|
6832
6832
|
108,
|
|
6833
|
-
|
|
6833
|
+
45,
|
|
6834
6834
|
99,
|
|
6835
6835
|
111,
|
|
6836
6836
|
110,
|
|
@@ -6961,7 +6961,7 @@ var instructions = [
|
|
|
6961
6961
|
98,
|
|
6962
6962
|
97,
|
|
6963
6963
|
108,
|
|
6964
|
-
|
|
6964
|
+
45,
|
|
6965
6965
|
99,
|
|
6966
6966
|
111,
|
|
6967
6967
|
110,
|
|
@@ -7097,7 +7097,7 @@ var instructions = [
|
|
|
7097
7097
|
98,
|
|
7098
7098
|
97,
|
|
7099
7099
|
108,
|
|
7100
|
-
|
|
7100
|
+
45,
|
|
7101
7101
|
99,
|
|
7102
7102
|
111,
|
|
7103
7103
|
110,
|
|
@@ -7243,7 +7243,7 @@ var instructions = [
|
|
|
7243
7243
|
98,
|
|
7244
7244
|
97,
|
|
7245
7245
|
108,
|
|
7246
|
-
|
|
7246
|
+
45,
|
|
7247
7247
|
99,
|
|
7248
7248
|
111,
|
|
7249
7249
|
110,
|
|
@@ -7367,7 +7367,7 @@ var instructions = [
|
|
|
7367
7367
|
98,
|
|
7368
7368
|
97,
|
|
7369
7369
|
108,
|
|
7370
|
-
|
|
7370
|
+
45,
|
|
7371
7371
|
99,
|
|
7372
7372
|
111,
|
|
7373
7373
|
110,
|
|
@@ -7487,7 +7487,7 @@ var instructions = [
|
|
|
7487
7487
|
98,
|
|
7488
7488
|
97,
|
|
7489
7489
|
108,
|
|
7490
|
-
|
|
7490
|
+
45,
|
|
7491
7491
|
99,
|
|
7492
7492
|
111,
|
|
7493
7493
|
110,
|
|
@@ -7553,8 +7553,11 @@ var instructions = [
|
|
|
7553
7553
|
docs: [
|
|
7554
7554
|
"Price vault SOL balance and tokens it holds.",
|
|
7555
7555
|
"",
|
|
7556
|
+
"If aggregation oracle is used for token #`i`, `agg_indexes[i]` must be set to its index in the oracle mapping account.",
|
|
7557
|
+
"",
|
|
7556
7558
|
"Extra accounts for pricing N tokens:",
|
|
7557
|
-
"- (ata, mint, oracle) x N"
|
|
7559
|
+
"- (ata, mint, oracle) x N",
|
|
7560
|
+
"- optional oracle mapping (only add it if any token uses an agg oracle)"
|
|
7558
7561
|
],
|
|
7559
7562
|
discriminator: [
|
|
7560
7563
|
54,
|
|
@@ -7613,7 +7616,7 @@ var instructions = [
|
|
|
7613
7616
|
98,
|
|
7614
7617
|
97,
|
|
7615
7618
|
108,
|
|
7616
|
-
|
|
7619
|
+
45,
|
|
7617
7620
|
99,
|
|
7618
7621
|
111,
|
|
7619
7622
|
110,
|
|
@@ -7671,6 +7674,12 @@ var instructions = [
|
|
|
7671
7674
|
name: "PriceDenom"
|
|
7672
7675
|
}
|
|
7673
7676
|
}
|
|
7677
|
+
},
|
|
7678
|
+
{
|
|
7679
|
+
name: "agg_indexes",
|
|
7680
|
+
type: {
|
|
7681
|
+
vec: "i16"
|
|
7682
|
+
}
|
|
7674
7683
|
}
|
|
7675
7684
|
]
|
|
7676
7685
|
},
|
|
@@ -8079,7 +8088,7 @@ var instructions = [
|
|
|
8079
8088
|
98,
|
|
8080
8089
|
97,
|
|
8081
8090
|
108,
|
|
8082
|
-
|
|
8091
|
+
45,
|
|
8083
8092
|
99,
|
|
8084
8093
|
111,
|
|
8085
8094
|
110,
|
|
@@ -11226,6 +11235,23 @@ var types = [
|
|
|
11226
11235
|
name: "OracleSource"
|
|
11227
11236
|
}
|
|
11228
11237
|
}
|
|
11238
|
+
},
|
|
11239
|
+
{
|
|
11240
|
+
name: "max_age_seconds",
|
|
11241
|
+
type: "u16"
|
|
11242
|
+
},
|
|
11243
|
+
{
|
|
11244
|
+
name: "priority",
|
|
11245
|
+
type: "u8"
|
|
11246
|
+
},
|
|
11247
|
+
{
|
|
11248
|
+
name: "padding",
|
|
11249
|
+
type: {
|
|
11250
|
+
array: [
|
|
11251
|
+
"u8",
|
|
11252
|
+
3
|
|
11253
|
+
]
|
|
11254
|
+
}
|
|
11229
11255
|
}
|
|
11230
11256
|
]
|
|
11231
11257
|
}
|
|
@@ -12326,8 +12352,7 @@ var types = [
|
|
|
12326
12352
|
{
|
|
12327
12353
|
name: "fee_authority",
|
|
12328
12354
|
docs: [
|
|
12329
|
-
"The authority that can modify fee structure of individual glam state"
|
|
12330
|
-
"and claim protocol fees"
|
|
12355
|
+
"The authority that can modify fee structure of individual glam state and claim protocol fees"
|
|
12331
12356
|
],
|
|
12332
12357
|
type: "pubkey"
|
|
12333
12358
|
},
|
|
@@ -13238,6 +13263,9 @@ var types = [
|
|
|
13238
13263
|
{
|
|
13239
13264
|
name: "PythLazerStableCoin"
|
|
13240
13265
|
},
|
|
13266
|
+
{
|
|
13267
|
+
name: "NotSet"
|
|
13268
|
+
},
|
|
13241
13269
|
{
|
|
13242
13270
|
name: "LstPoolState"
|
|
13243
13271
|
},
|
|
@@ -13246,6 +13274,9 @@ var types = [
|
|
|
13246
13274
|
},
|
|
13247
13275
|
{
|
|
13248
13276
|
name: "BaseAsset"
|
|
13277
|
+
},
|
|
13278
|
+
{
|
|
13279
|
+
name: "ChainlinkRWA"
|
|
13249
13280
|
}
|
|
13250
13281
|
]
|
|
13251
13282
|
}
|
|
@@ -15255,7 +15286,7 @@ const setsAreEqual = (a, b)=>{
|
|
|
15255
15286
|
return true;
|
|
15256
15287
|
};
|
|
15257
15288
|
|
|
15258
|
-
const STAKE_POOLS = sanctumLstList.LstList.filter((lst)
|
|
15289
|
+
const STAKE_POOLS = sanctumLstList.LstList.filter((lst)=>lst.pool.program === "Spl" || lst.pool.program === "Marinade" || lst.pool.program === "SanctumSpl" || lst.pool.program === "SanctumSplMulti").map((lst)=>{
|
|
15259
15290
|
const { pool, program } = lst.pool;
|
|
15260
15291
|
const poolState = program === "Marinade" ? "8szGkuLTAux9XMgZ2vtY39jVSowEcpBfFfD8hXSEqdGC" : pool;
|
|
15261
15292
|
if (!poolState) {
|
|
@@ -15271,20 +15302,15 @@ const STAKE_POOLS = sanctumLstList.LstList.filter((lst)=>!lst.name.includes("San
|
|
|
15271
15302
|
poolState: new web3_js.PublicKey(poolState)
|
|
15272
15303
|
};
|
|
15273
15304
|
});
|
|
15274
|
-
STAKE_POOLS.push({
|
|
15275
|
-
name: "Phantom Staked SOL",
|
|
15276
|
-
symbol: "PSOL",
|
|
15277
|
-
mint: "pSo1f9nQXWgXibFtKf7NWYxb5enAM4qfP6UJSiXRQfL",
|
|
15278
|
-
decimals: 9,
|
|
15279
|
-
logoURI: "https://coin-images.coingecko.com/coins/images/55849/large/PSOL.png",
|
|
15280
|
-
tokenProgram: splToken.TOKEN_PROGRAM_ID,
|
|
15281
|
-
poolState: new web3_js.PublicKey("pSPcvR8GmG9aKDUbn9nbKYjkxt9hxMS7kF1qqKJaPqJ")
|
|
15282
|
-
});
|
|
15283
15305
|
const STAKE_POOLS_MAP = new Map(STAKE_POOLS.map((p)=>[
|
|
15284
15306
|
p.mint,
|
|
15285
15307
|
p
|
|
15286
15308
|
]));
|
|
15287
|
-
|
|
15309
|
+
/**
|
|
15310
|
+
* Asset-Oracle mapping supported by the protocol. This map is a mirror of onchain mapping stored in `global_config` https://solscan.io/account/6avract7PxKqoq6hdmpAgGKgJWoJWdiXPPzzFZ62Hck6
|
|
15311
|
+
*
|
|
15312
|
+
* Note that we use functional prices for LSTs, and the oracle pubkey of a LST asset is the pool state.
|
|
15313
|
+
*/ const ASSETS_MAINNET = new Map([
|
|
15288
15314
|
[
|
|
15289
15315
|
// SOL
|
|
15290
15316
|
"So11111111111111111111111111111111111111112",
|
|
@@ -15334,7 +15360,7 @@ const ASSETS_MAINNET = new Map([
|
|
|
15334
15360
|
}
|
|
15335
15361
|
],
|
|
15336
15362
|
[
|
|
15337
|
-
// USDC
|
|
15363
|
+
// USD Coin - USDC
|
|
15338
15364
|
"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
|
|
15339
15365
|
{
|
|
15340
15366
|
decimals: 6,
|
|
@@ -15342,7 +15368,7 @@ const ASSETS_MAINNET = new Map([
|
|
|
15342
15368
|
}
|
|
15343
15369
|
],
|
|
15344
15370
|
[
|
|
15345
|
-
// USDT
|
|
15371
|
+
// USDT - USDT
|
|
15346
15372
|
"Es9vMFrzaCERmJfrF4H2FYD4KCoNkY11McCe8BenwNYB",
|
|
15347
15373
|
{
|
|
15348
15374
|
decimals: 6,
|
|
@@ -15350,7 +15376,7 @@ const ASSETS_MAINNET = new Map([
|
|
|
15350
15376
|
}
|
|
15351
15377
|
],
|
|
15352
15378
|
[
|
|
15353
|
-
// USDY
|
|
15379
|
+
// Ondo US Dollar Yield - USDY
|
|
15354
15380
|
"A1KLoBrKBde8Ty9qtNQUtq3C2ortoC3u7twggz7sEto6",
|
|
15355
15381
|
{
|
|
15356
15382
|
decimals: 6,
|
|
@@ -15358,7 +15384,7 @@ const ASSETS_MAINNET = new Map([
|
|
|
15358
15384
|
}
|
|
15359
15385
|
],
|
|
15360
15386
|
[
|
|
15361
|
-
// USDG
|
|
15387
|
+
// Global Dollar - USDG
|
|
15362
15388
|
"2u1tszSeqZ3qBWF3uNGPFc8TzMk2tdiwknnRMWGWjGWH",
|
|
15363
15389
|
{
|
|
15364
15390
|
decimals: 6,
|
|
@@ -15367,7 +15393,7 @@ const ASSETS_MAINNET = new Map([
|
|
|
15367
15393
|
}
|
|
15368
15394
|
],
|
|
15369
15395
|
[
|
|
15370
|
-
// PYUSD
|
|
15396
|
+
// PayPal USD - PYUSD
|
|
15371
15397
|
"2b1kV6DkPAnxd5ixfnxCpjxmKwqjjaYmCZfHsFu24GXo",
|
|
15372
15398
|
{
|
|
15373
15399
|
decimals: 6,
|
|
@@ -15400,41 +15426,303 @@ const ASSETS_MAINNET = new Map([
|
|
|
15400
15426
|
}
|
|
15401
15427
|
],
|
|
15402
15428
|
[
|
|
15403
|
-
//
|
|
15404
|
-
"
|
|
15429
|
+
// GOOGLx
|
|
15430
|
+
"XsCPL9dNWBMvFtTmwcCA5v3xWPSMEBCszbQdiLLq6aN",
|
|
15431
|
+
{
|
|
15432
|
+
decimals: 8,
|
|
15433
|
+
oracle: new web3_js.PublicKey("3NJYftD5sjVfxSnUdZ1wVML8f3aC6mp1CXCL6L7TnU8C"),
|
|
15434
|
+
programId: splToken.TOKEN_2022_PROGRAM_ID,
|
|
15435
|
+
aggIndex: 342
|
|
15436
|
+
}
|
|
15437
|
+
],
|
|
15438
|
+
[
|
|
15439
|
+
// AAPLx
|
|
15440
|
+
"XsbEhLAtcf6HdfpFZ5xEMdqW8nfAvcsP5bdudRLJzJp",
|
|
15441
|
+
{
|
|
15442
|
+
decimals: 8,
|
|
15443
|
+
oracle: new web3_js.PublicKey("3NJYftD5sjVfxSnUdZ1wVML8f3aC6mp1CXCL6L7TnU8C"),
|
|
15444
|
+
programId: splToken.TOKEN_2022_PROGRAM_ID,
|
|
15445
|
+
aggIndex: 343
|
|
15446
|
+
}
|
|
15447
|
+
],
|
|
15448
|
+
[
|
|
15449
|
+
// TSLAx
|
|
15450
|
+
"XsDoVfqeBukxuZHWhdvWHBhgEHjGNst4MLodqsJHzoB",
|
|
15451
|
+
{
|
|
15452
|
+
decimals: 8,
|
|
15453
|
+
oracle: new web3_js.PublicKey("3NJYftD5sjVfxSnUdZ1wVML8f3aC6mp1CXCL6L7TnU8C"),
|
|
15454
|
+
programId: splToken.TOKEN_2022_PROGRAM_ID,
|
|
15455
|
+
aggIndex: 335
|
|
15456
|
+
}
|
|
15457
|
+
],
|
|
15458
|
+
[
|
|
15459
|
+
// NVDAx
|
|
15460
|
+
"Xsc9qvGR1efVDFGLrVsmkzv3qi45LTBjeUKSPmx9qEh",
|
|
15461
|
+
{
|
|
15462
|
+
decimals: 8,
|
|
15463
|
+
oracle: new web3_js.PublicKey("3NJYftD5sjVfxSnUdZ1wVML8f3aC6mp1CXCL6L7TnU8C"),
|
|
15464
|
+
programId: splToken.TOKEN_2022_PROGRAM_ID,
|
|
15465
|
+
aggIndex: 341
|
|
15466
|
+
}
|
|
15467
|
+
],
|
|
15468
|
+
[
|
|
15469
|
+
// Bonk - Bonk
|
|
15470
|
+
"DezXAZ8z7PnrnRJjz3wXBoRgixCa6xjnB7YaB1pPB263",
|
|
15471
|
+
{
|
|
15472
|
+
decimals: 6,
|
|
15473
|
+
oracle: new web3_js.PublicKey("BERaNi6cpEresbq6HC1EQGaB1H1UjvEo4NGnmYSSJof4")
|
|
15474
|
+
}
|
|
15475
|
+
],
|
|
15476
|
+
[
|
|
15477
|
+
// Raydium - RAY
|
|
15478
|
+
"4k3Dyjzvzp8eMZWUXbBCjEvwSkkk59S5iCNLY3QrkX6R",
|
|
15479
|
+
{
|
|
15480
|
+
decimals: 6,
|
|
15481
|
+
oracle: new web3_js.PublicKey("6VXU2P9BJkuPkfA7FJVonBtAo1c2pGnHoV9rxsdZKZyb")
|
|
15482
|
+
}
|
|
15483
|
+
],
|
|
15484
|
+
[
|
|
15485
|
+
// Helium Network Token - HNT
|
|
15486
|
+
"hntyVP6YFm1Hg25TN9WGLqM12b8TQmcknKrdu1oxWux",
|
|
15487
|
+
{
|
|
15488
|
+
decimals: 8,
|
|
15489
|
+
oracle: new web3_js.PublicKey("AEPgc6qUTCT8AwdckPcGbJXtcM9bj8mGYAyHE4BscJtm")
|
|
15490
|
+
}
|
|
15491
|
+
],
|
|
15492
|
+
[
|
|
15493
|
+
// Kamino - KMNO
|
|
15494
|
+
"KMNo3nJsBXfcpJTVhZcXLW7RmTwTt4GVFE7suUBo9sS",
|
|
15495
|
+
{
|
|
15496
|
+
decimals: 6,
|
|
15497
|
+
oracle: new web3_js.PublicKey("6ua3DK1sHoYyNi15dsxy6RYwUcZPDDXfyChzaRMaheQF")
|
|
15498
|
+
}
|
|
15499
|
+
],
|
|
15500
|
+
[
|
|
15501
|
+
// Tensor - TNSR
|
|
15502
|
+
"TNSRxcUxoT9xBG3de7PiJyTDYu7kskLqcpddxnEJAS6",
|
|
15405
15503
|
{
|
|
15406
15504
|
decimals: 9,
|
|
15407
|
-
oracle: new web3_js.PublicKey("
|
|
15505
|
+
oracle: new web3_js.PublicKey("EX6r1GdfsgcUsY6cQ6YsToV4RGsb4HKpjrkokK2DrmsS")
|
|
15506
|
+
}
|
|
15507
|
+
],
|
|
15508
|
+
[
|
|
15509
|
+
// JITO - JTO
|
|
15510
|
+
"jtojtomepa8beP8AuQc6eXt5FriJwfFMwQx2v2f9mCL",
|
|
15511
|
+
{
|
|
15512
|
+
decimals: 9,
|
|
15513
|
+
oracle: new web3_js.PublicKey("CGCz4mB8NsDddCq6BZToRUDUuktzsAfpKYh6ATgyyCGF")
|
|
15514
|
+
}
|
|
15515
|
+
],
|
|
15516
|
+
[
|
|
15517
|
+
// Drift - DRIFT
|
|
15518
|
+
"DriFtupJYLTosbwoN8koMbEYSx54aFAVLddWsbksjwg7",
|
|
15519
|
+
{
|
|
15520
|
+
decimals: 6,
|
|
15521
|
+
oracle: new web3_js.PublicKey("5VJou4ufN2vE11zyZUaLsKLTXhyzCTgiq6QDsts2YnnD")
|
|
15522
|
+
}
|
|
15523
|
+
],
|
|
15524
|
+
[
|
|
15525
|
+
// Render Token - RENDER
|
|
15526
|
+
"rndrizKT3MK1iimdxRdWabcF7Zg7AR5T4nud4EkHBof",
|
|
15527
|
+
{
|
|
15528
|
+
decimals: 8,
|
|
15529
|
+
oracle: new web3_js.PublicKey("97EqsAGbTnShB7oYWAFFCVVAx8PWXgDYDhcpm99izNQ4")
|
|
15530
|
+
}
|
|
15531
|
+
],
|
|
15532
|
+
[
|
|
15533
|
+
// Wormhole Token - W
|
|
15534
|
+
"85VBFQZC9TZkfaptBWjvUw7YbZjy52A6mjtPGjstQAmQ",
|
|
15535
|
+
{
|
|
15536
|
+
decimals: 6,
|
|
15537
|
+
oracle: new web3_js.PublicKey("CsFUXiA5dM4eCKjVBBy8tXhXzDkDRNoYjU5rjpHyfNEZ")
|
|
15538
|
+
}
|
|
15539
|
+
],
|
|
15540
|
+
[
|
|
15541
|
+
// Pyth Network - PYTH
|
|
15542
|
+
"HZ1JovNiVvGrGNiiYvEozEVgZ58xaU3RKwX8eACQBCt3",
|
|
15543
|
+
{
|
|
15544
|
+
decimals: 6,
|
|
15545
|
+
oracle: new web3_js.PublicKey("6Sfx8ZAt6xaEgMXTahR6GrT7oYB6nFBMoVyCmMyHmeJV")
|
|
15546
|
+
}
|
|
15547
|
+
],
|
|
15548
|
+
[
|
|
15549
|
+
// dogwifhat - $WIF
|
|
15550
|
+
"EKpQGSJtjMFqKZ9KQanSqYXRcF8fBopzLHYxdM65zcjm",
|
|
15551
|
+
{
|
|
15552
|
+
decimals: 6,
|
|
15553
|
+
oracle: new web3_js.PublicKey("4QXWStoyEErTZFVsvKrvxuNa6QT8zpeA8jddZunSGvYE")
|
|
15408
15554
|
}
|
|
15409
15555
|
],
|
|
15410
15556
|
[
|
|
15411
|
-
//
|
|
15412
|
-
"
|
|
15557
|
+
// Infinity - INF
|
|
15558
|
+
"5oVNBeEEQvYi1cX3ir8Dx5n1P7pdxydbGF2X4TxVusJm",
|
|
15413
15559
|
{
|
|
15414
15560
|
decimals: 9,
|
|
15415
|
-
oracle: new web3_js.PublicKey("
|
|
15416
|
-
isLst: true
|
|
15561
|
+
oracle: new web3_js.PublicKey("B7RUYg2zF6UdUSHv2RmpnriPVJccYWojgFydNS1NY5F8")
|
|
15417
15562
|
}
|
|
15418
15563
|
],
|
|
15419
15564
|
[
|
|
15420
|
-
//
|
|
15421
|
-
"
|
|
15565
|
+
// BlazeStake Staked SOL (bSOL) - bSOL
|
|
15566
|
+
"bSo13r4TkiE4KumL71LsHTPpL2euBYLFx6h9HP3piy1",
|
|
15422
15567
|
{
|
|
15423
15568
|
decimals: 9,
|
|
15424
|
-
oracle: new web3_js.PublicKey("
|
|
15425
|
-
isLst: true
|
|
15569
|
+
oracle: new web3_js.PublicKey("BmDWPMsytWmYkh9n6o7m79eVshVYf2B5GVaqQ2EWKnGH")
|
|
15426
15570
|
}
|
|
15427
15571
|
],
|
|
15428
15572
|
[
|
|
15429
|
-
//
|
|
15430
|
-
"
|
|
15573
|
+
// Popcat - POPCAT
|
|
15574
|
+
"7GCihgDB8fe6KNjn2MYtkzZcRjQy3t9GHdC8uHYmW2hr",
|
|
15431
15575
|
{
|
|
15432
15576
|
decimals: 9,
|
|
15433
|
-
oracle: new web3_js.PublicKey("
|
|
15434
|
-
|
|
15577
|
+
oracle: new web3_js.PublicKey("C5fiAmQyjdfDR4EGepZqnEL3fJwMBav5yoAk6XyKMF6u")
|
|
15578
|
+
}
|
|
15579
|
+
],
|
|
15580
|
+
[
|
|
15581
|
+
// Cloud - CLOUD
|
|
15582
|
+
"CLoUDKc4Ane7HeQcPpE3YHnznRxhMimJ4MyaUqyHFzAu",
|
|
15583
|
+
{
|
|
15584
|
+
decimals: 9,
|
|
15585
|
+
oracle: new web3_js.PublicKey("9Ennia27iT83kNAk3JtRKxSMzuCzsVtT4MzuxpE7anME")
|
|
15586
|
+
}
|
|
15587
|
+
],
|
|
15588
|
+
[
|
|
15589
|
+
// Binance Staked SOL - BNSOL
|
|
15590
|
+
"BNso1VUJnh4zcfpZa6986Ea66P6TCp59hvtNJ8b1X85",
|
|
15591
|
+
{
|
|
15592
|
+
decimals: 9,
|
|
15593
|
+
oracle: new web3_js.PublicKey("8DmXTfhhtb9kTcpTVfb6Ygx8WhZ8wexGqcpxfn23zooe")
|
|
15594
|
+
}
|
|
15595
|
+
],
|
|
15596
|
+
[
|
|
15597
|
+
// MOTHER IGGY - MOTHER
|
|
15598
|
+
"3S8qX1MsMqRbiwKg2cQyx7nis1oHMgaCuc9c4VfvVdPN",
|
|
15599
|
+
{
|
|
15600
|
+
decimals: 6,
|
|
15601
|
+
oracle: new web3_js.PublicKey("469WQgfJ6AJ3eJ8FUcdhiZawf7yNChA3hseTSyhFatHZ")
|
|
15602
|
+
}
|
|
15603
|
+
],
|
|
15604
|
+
[
|
|
15605
|
+
// Magic Eden - ME
|
|
15606
|
+
"MEFNBXixkEbait3xn9bkm8WsJzXtVsaJEn4c8Sam21u",
|
|
15607
|
+
{
|
|
15608
|
+
decimals: 6,
|
|
15609
|
+
oracle: new web3_js.PublicKey("BboTg1yT114FQkqT6MM3P3G3CcCktuM2RePgU8Gr3K4A")
|
|
15610
|
+
}
|
|
15611
|
+
],
|
|
15612
|
+
[
|
|
15613
|
+
// META - META
|
|
15614
|
+
"METADDFL6wWMWEoKTFJwcThTbUmtarRJZjRpzUvkxhr",
|
|
15615
|
+
{
|
|
15616
|
+
decimals: 9,
|
|
15617
|
+
oracle: new web3_js.PublicKey("DwYF1yveo8XTF1oqfsqykj332rjSxAd7bR6Gu6i4iUET")
|
|
15618
|
+
}
|
|
15619
|
+
],
|
|
15620
|
+
[
|
|
15621
|
+
// Pudgy Penguins - PENGU
|
|
15622
|
+
"2zMMhcVQEXDtdE6vsFS7S7D5oUodfJHE8vd1gnBouauv",
|
|
15623
|
+
{
|
|
15624
|
+
decimals: 6,
|
|
15625
|
+
oracle: new web3_js.PublicKey("4A3KroGPjZxPAeBNF287V3NyRwV2q8iBi1vX7kHxTCh7")
|
|
15626
|
+
}
|
|
15627
|
+
],
|
|
15628
|
+
[
|
|
15629
|
+
// ai16z - ai16z
|
|
15630
|
+
"HeLp6NuQkmYB4pYWo2zYs22mESHXPQYzXbB8n4V98jwC",
|
|
15631
|
+
{
|
|
15632
|
+
decimals: 9,
|
|
15633
|
+
oracle: new web3_js.PublicKey("3BGheQVvYtBNpBKSUXSTjpyKQc3dh8iiwT91Aiq7KYCU"),
|
|
15634
|
+
programId: splToken.TOKEN_2022_PROGRAM_ID
|
|
15635
|
+
}
|
|
15636
|
+
],
|
|
15637
|
+
[
|
|
15638
|
+
// OFFICIAL TRUMP - TRUMP
|
|
15639
|
+
"6p6xgHyF7AeE6TZkSmFsko444wqoP15icUSqi2jfGiPN",
|
|
15640
|
+
{
|
|
15641
|
+
decimals: 6,
|
|
15642
|
+
oracle: new web3_js.PublicKey("FPQjZYvHRGy51guJ77p7n9u9b8eo1ktKRc2D2g5Vysth")
|
|
15643
|
+
}
|
|
15644
|
+
],
|
|
15645
|
+
[
|
|
15646
|
+
// Melania Meme - MELANIA
|
|
15647
|
+
"FUAfBo2jgks6gB4Z4LfZkqSZgzNucisEHqnNebaRxM1P",
|
|
15648
|
+
{
|
|
15649
|
+
decimals: 6,
|
|
15650
|
+
oracle: new web3_js.PublicKey("3RgNWYYcZCKf5uZfriK8ASUbGQErhH6YbpdvZQ7ZKDCf")
|
|
15651
|
+
}
|
|
15652
|
+
],
|
|
15653
|
+
[
|
|
15654
|
+
// AUSD - AUSD
|
|
15655
|
+
"AUSD1jCcCyPLybk1YnvPWsHQSrZ46dxwoMniN4N2UEB9",
|
|
15656
|
+
{
|
|
15657
|
+
decimals: 6,
|
|
15658
|
+
oracle: new web3_js.PublicKey("8FZhpiM8n3mpgvENWLcEvHsKB1bBhYBAyL4Ypr4gptLZ"),
|
|
15659
|
+
programId: splToken.TOKEN_2022_PROGRAM_ID
|
|
15660
|
+
}
|
|
15661
|
+
],
|
|
15662
|
+
[
|
|
15663
|
+
// zBTC - zBTC
|
|
15664
|
+
"zBTCug3er3tLyffELcvDNrKkCymbPWysGcWihESYfLg",
|
|
15665
|
+
{
|
|
15666
|
+
decimals: 8,
|
|
15667
|
+
oracle: new web3_js.PublicKey("CN9QvvbGQzMnN8vJaSek2so4vFnTqgJDFrdJB8Y4tQfB")
|
|
15668
|
+
}
|
|
15669
|
+
],
|
|
15670
|
+
[
|
|
15671
|
+
// Fartcoin - Fartcoin
|
|
15672
|
+
"9BB6NFEcjBCtnNLFko2FqVQBq8HHM13kCyYcdQbgpump",
|
|
15673
|
+
{
|
|
15674
|
+
decimals: 6,
|
|
15675
|
+
oracle: new web3_js.PublicKey("2sZomfWMDuQLcFak3nuharXorHrZ3hK8iaML6ZGSHtso")
|
|
15676
|
+
}
|
|
15677
|
+
],
|
|
15678
|
+
[
|
|
15679
|
+
// ZEUS - ZEUS
|
|
15680
|
+
"ZEUS1aR7aX8DFFJf5QjWj2ftDDdNTroMNGo8YoQm3Gq",
|
|
15681
|
+
{
|
|
15682
|
+
decimals: 6,
|
|
15683
|
+
oracle: new web3_js.PublicKey("8cH72H3vqYPArV9QvkYJkwzTdsdNPPgVPrusz9sMmgNN")
|
|
15684
|
+
}
|
|
15685
|
+
],
|
|
15686
|
+
[
|
|
15687
|
+
// Pump - PUMP
|
|
15688
|
+
"pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn",
|
|
15689
|
+
{
|
|
15690
|
+
decimals: 6,
|
|
15691
|
+
oracle: new web3_js.PublicKey("5r8RWTaRiMgr9Lph3FTUE3sGb1vymhpCrm83Bovjfcps"),
|
|
15692
|
+
programId: splToken.TOKEN_2022_PROGRAM_ID
|
|
15693
|
+
}
|
|
15694
|
+
],
|
|
15695
|
+
[
|
|
15696
|
+
// EURC - EURC
|
|
15697
|
+
"HzwqbKZw8HxMN6bF2yFZNrht3c2iXXzpKcFu7uBEDKtr",
|
|
15698
|
+
{
|
|
15699
|
+
decimals: 6,
|
|
15700
|
+
oracle: new web3_js.PublicKey("BkdSPLmw4W6twrJjAePw2bJAwDTBtxJ9t6LvNHfcBKg1")
|
|
15701
|
+
}
|
|
15702
|
+
],
|
|
15703
|
+
[
|
|
15704
|
+
// DeFi Development Corp Staked SOL - dfdvSOL
|
|
15705
|
+
"sctmB7GPi5L2Q5G9tUSzXvhZ4YiDMEGcRov9KfArQpx",
|
|
15706
|
+
{
|
|
15707
|
+
decimals: 9,
|
|
15708
|
+
oracle: new web3_js.PublicKey("EUQQD2fNN7h7su5TbWpUnf22zeGtF3RjEX2hgX2YPfLd")
|
|
15709
|
+
}
|
|
15710
|
+
],
|
|
15711
|
+
[
|
|
15712
|
+
// Syrup USDC - syrupUSDC
|
|
15713
|
+
"AvZZF1YaZDziPY2RCK4oJrRVrbN3mTD9NL24hPeaZeUj",
|
|
15714
|
+
{
|
|
15715
|
+
decimals: 6,
|
|
15716
|
+
oracle: new web3_js.PublicKey("GqqkoqHU5pqgTvL88xSCipH9txbPETyzvAvybQ3zRpzw")
|
|
15435
15717
|
}
|
|
15436
15718
|
]
|
|
15437
15719
|
]);
|
|
15720
|
+
STAKE_POOLS.forEach((p)=>{
|
|
15721
|
+
ASSETS_MAINNET.set(p.mint, {
|
|
15722
|
+
decimals: p.decimals,
|
|
15723
|
+
oracle: new web3_js.PublicKey(p.poolState)
|
|
15724
|
+
});
|
|
15725
|
+
});
|
|
15438
15726
|
const ASSETS_TESTS = new Map([]);
|
|
15439
15727
|
const SOL_ORACLE = ASSETS_MAINNET.get("So11111111111111111111111111111111111111112").oracle;
|
|
15440
15728
|
const USDC_ORACLE = ASSETS_MAINNET.get("EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v").oracle;
|
|
@@ -21719,7 +22007,23 @@ class PriceClient {
|
|
|
21719
22007
|
* Returns an instruction that prices vault balance and tokens the vault holds
|
|
21720
22008
|
*/ async priceVaultIx(priceDenom) {
|
|
21721
22009
|
const remainingAccounts = await this.remainingAccountsForPricingVaultAssets(priceDenom == PriceDenom.ASSET);
|
|
21722
|
-
const
|
|
22010
|
+
const aggIndexes = [];
|
|
22011
|
+
const chunkSize = 3;
|
|
22012
|
+
for(let i = 0; i < remainingAccounts.length; i += chunkSize){
|
|
22013
|
+
const chunk = remainingAccounts.slice(i, i + chunkSize);
|
|
22014
|
+
const mint = chunk[1].pubkey;
|
|
22015
|
+
const aggIndex = ASSETS_MAINNET.get(mint.toBase58())?.aggIndex || -1;
|
|
22016
|
+
aggIndexes.push(aggIndex);
|
|
22017
|
+
}
|
|
22018
|
+
// Add oracle mapping if agg oracle is used for any token
|
|
22019
|
+
if (aggIndexes.find((i)=>i >= 0)) {
|
|
22020
|
+
remainingAccounts.push({
|
|
22021
|
+
pubkey: new web3_js.PublicKey("Chpu5ZgfWX5ZzVpUx9Xvv4WPM75Xd7zPJNDPsFnCpLpk"),
|
|
22022
|
+
isSigner: false,
|
|
22023
|
+
isWritable: false
|
|
22024
|
+
});
|
|
22025
|
+
}
|
|
22026
|
+
const priceVaultIx = await this.base.program.methods.priceVaultTokens(priceDenom, aggIndexes).accounts({
|
|
21723
22027
|
glamState: this.base.statePda,
|
|
21724
22028
|
solOracle: SOL_ORACLE
|
|
21725
22029
|
}).remainingAccounts(remainingAccounts).instruction();
|