zo-sdk 0.0.19 → 0.0.21

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.
@@ -1,9 +1,16 @@
1
1
  {
2
2
  "eaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a": "0x5dec622733a204ca27f5a90d8c2fad453cc6665186fd5dff13a83d0b6c9027ab",
3
3
  "2b89b9dc8fdf9f34709a5b106b472f0f39bb6ca9ce04b0fd7f2e971688e2e53b": "0x985e3db9f93f76ee8bace7c3dd5cc676a096accd5d9e09e9ae0fb6e492b14572",
4
- "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744": "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37",
5
- "ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace": "0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab",
6
4
  "e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43": "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2",
5
+ "ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace": "0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab",
6
+ "ec5d399846a9209f3fe5881d70aae9268c94339ff9817e8d18ff19fa05eea1c8": "0x93bfda25cb6b1653a9c769e8216014bd2c06997f3edb479566761fbf2abf6ac2",
7
+ "ef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d": "0x9d0d275efbd37d8a8855f6f2c761fa5983293dd8ce202ee5196626de8fcd4469",
8
+ "dcef50dd0a4cd2dcc17e45df1676dcb336a11a61c69df7a0299b0150c672d25c": "0xd59a5f5173424ba725a7d033d86f2eadf2745f87a908bd27e1d27339eff598ce",
9
+ "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744": "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37",
10
+ "4279e31cc369bbcc2faf022b382b080e32a8e689ff20fbc530d2a603eb6cd98b": "0x1c047be615eaa5a87afa0e111b20a512dd6c0f4a1f0f691693cf852c1768f35d",
11
+ "d40472610abe56d36d065a0cf889fc8f1dd9f3b7f2a478231a5fc6df07ea5ce3": "0xa64a406662db4ecde675fde111033e80629397715afc7fff53064f41dabab42f",
12
+ "879551021853eec7a7dc827578e8e69da7e4fa8148339aa0d3d5296405be4b1a": "0xd0835474be8cfcc7be4e02fc1bcd85dbdf11a54d061edc302e611ca304f57b14",
13
+ "eba0732395fae9dec4bae12e52760b35fc1c5671e2da8b449c9af4efe5d54341": "0xeb7e669f74d976c0b99b6ef9801e3a77716a95f1a15754e0f1399ce3fb60973d",
7
14
  "29bdd5248234e33bd93d3b81100b5fa32eaa5997843847e2c2cb16d7c6d9f7ff": "0x8c7f3a322b94cc69db2a2ac575cbd94bf5766113324c3a3eceac91e3e88a51ed",
8
- "eba0732395fae9dec4bae12e52760b35fc1c5671e2da8b449c9af4efe5d54341": "0xeb7e669f74d976c0b99b6ef9801e3a77716a95f1a15754e0f1399ce3fb60973d"
15
+ "e5b274b2611143df055d6e7cd8d93fe1961716bcd4dca1cad87a83bc1e78c1ef": "0x24c0247fb22457a719efac7f670cdc79be321b521460bd6bd2ccfa9f80713b14"
9
16
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zo-sdk",
3
- "version": "0.0.19",
3
+ "version": "0.0.21",
4
4
  "exports": {
5
5
  ".": {
6
6
  "import": {
package/src/api.ts CHANGED
@@ -40,13 +40,16 @@ export class API extends DataAPI {
40
40
  return tx.gas
41
41
  }
42
42
  if (coinObjects.length > 1) {
43
- tx.mergeCoins(tx.object(coinObjects[0]), coinObjects.slice(1).map(coinObject => tx.object(coinObject)))
43
+ tx.mergeCoins(
44
+ tx.object(coinObjects[0]),
45
+ coinObjects.slice(1).map(coinObject => tx.object(coinObject)),
46
+ )
44
47
  }
45
48
  return tx.object(coinObjects[0])
46
49
  }
47
50
 
48
51
  #processSlippage(indexPrice: number, long: boolean, slippage: number) {
49
- const raw = long ? (indexPrice * (1 + slippage)) : (indexPrice * (1 - slippage))
52
+ const raw = long ? indexPrice * (1 + slippage) : indexPrice * (1 - slippage)
50
53
  return BigInt(Math.round(raw * 1e18))
51
54
  }
52
55
 
@@ -59,23 +62,17 @@ export class API extends DataAPI {
59
62
  sender = '',
60
63
  ) => {
61
64
  let tx = await this.initOracleTxb(Object.keys(this.consts.pythFeeder.feeder))
62
- if (referralAddress && !await this.hasReferral(sender || '')) {
65
+ if (referralAddress && !(await this.hasReferral(sender || ''))) {
63
66
  tx = await this.addReferral(referralAddress, tx)
64
67
  }
65
68
  const coinObject = this.#processCoins(tx, coin, coinObjects)
66
69
  const [depositObject] = tx.splitCoins(coinObject, [tx.pure.u64(amount)])
67
70
 
68
- const {
69
- vaultsValuation,
70
- symbolsValuation,
71
- } = this.valuate(tx)
71
+ const { vaultsValuation, symbolsValuation } = this.valuate(tx)
72
72
 
73
73
  tx.moveCall({
74
74
  target: `${this.consts.zoCore.package}::market::deposit`,
75
- typeArguments: [
76
- `${this.consts.zoCore.package}::zlp::ZLP`,
77
- this.consts.coins[coin].module,
78
- ],
75
+ typeArguments: [`${this.consts.zoCore.package}::zlp::ZLP`, this.consts.coins[coin].module],
79
76
  arguments: [
80
77
  tx.object(this.consts.zoCore.market),
81
78
  tx.object(this.consts.zoCore.rebaseFeeModel),
@@ -88,27 +85,16 @@ export class API extends DataAPI {
88
85
  return tx
89
86
  }
90
87
 
91
- withdraw = async (
92
- coin: string,
93
- zlpCoinObjects: string[],
94
- amount: number,
95
- minAmountOut = 0,
96
- ) => {
88
+ withdraw = async (coin: string, zlpCoinObjects: string[], amount: number, minAmountOut = 0) => {
97
89
  const tx = await this.initOracleTxb(Object.keys(this.consts.pythFeeder.feeder))
98
90
  const zlpCoinObject = this.#processCoins(tx, 'zlp', zlpCoinObjects)
99
91
  const [withdrawObject] = tx.splitCoins(zlpCoinObject, [tx.pure.u64(amount)])
100
92
 
101
- const {
102
- vaultsValuation,
103
- symbolsValuation,
104
- } = this.valuate(tx)
93
+ const { vaultsValuation, symbolsValuation } = this.valuate(tx)
105
94
 
106
95
  tx.moveCall({
107
96
  target: `${this.consts.zoCore.package}::market::withdraw`,
108
- typeArguments: [
109
- `${this.consts.zoCore.package}::zlp::ZLP`,
110
- this.consts.coins[coin].module,
111
- ],
97
+ typeArguments: [`${this.consts.zoCore.package}::zlp::ZLP`, this.consts.coins[coin].module],
112
98
  arguments: [
113
99
  tx.object(this.consts.zoCore.market),
114
100
  tx.object(this.consts.zoCore.rebaseFeeModel),
@@ -134,19 +120,19 @@ export class API extends DataAPI {
134
120
  slippage = 0.003,
135
121
  isLimitOrder = false,
136
122
  isIocOrder = false,
137
- relayerFee = BigInt(1),
123
+ relayerFee = BigInt(0.5),
138
124
  referralAddress = '',
139
125
  sender = '',
140
126
  ) => {
141
127
  let tx = new Transaction()
142
- if (referralAddress && !await this.hasReferral(sender || '')) {
128
+ if (referralAddress && !(await this.hasReferral(sender || ''))) {
143
129
  tx = await this.addReferral(referralAddress, tx)
144
130
  }
145
131
  tx = await this.initOracleTxb([collateralToken, indexToken], tx)
146
132
  const coinObject = this.#processCoins(tx, collateralToken, coinObjects)
147
133
  const [depositObject, feeObject] = tx.splitCoins(coinObject, [
148
134
  tx.pure.u64(collateralAmount),
149
- tx.pure.u64(relayerFee)
135
+ tx.pure.u64(relayerFee),
150
136
  ])
151
137
 
152
138
  const symbol = joinSymbol(long ? 'long' : 'short', indexToken)
@@ -207,11 +193,7 @@ export class API extends DataAPI {
207
193
  this.consts.coins[indexToken].module,
208
194
  `${this.consts.zoCore.package}::market::${long ? 'LONG' : 'SHORT'}`,
209
195
  ],
210
- arguments: [
211
- tx.object(this.consts.zoCore.market),
212
- tx.object(pcpId),
213
- depositObject,
214
- ],
196
+ arguments: [tx.object(this.consts.zoCore.market), tx.object(pcpId), depositObject],
215
197
  })
216
198
  return tx
217
199
  }
@@ -262,7 +244,7 @@ export class API extends DataAPI {
262
244
  isTakeProfitOrder = true,
263
245
  isIocOrder = false,
264
246
  slippage = 0.003,
265
- relayerFee = BigInt(1),
247
+ relayerFee = BigInt(0.5),
266
248
  ) => {
267
249
  const tx = await this.initOracleTxb([collateralToken, indexToken])
268
250
  const symbol = joinSymbol(long ? 'long' : 'short', indexToken)
@@ -275,8 +257,7 @@ export class API extends DataAPI {
275
257
  let allowTrade = ALLOW_TRADE_MUST_TRADE
276
258
  if (isTriggerOrder) {
277
259
  allowTrade = isIocOrder || !isTakeProfitOrder ? ALLOW_TRADE_NO_TRADE : ALLOW_TRADE_CAN_TRADE
278
- }
279
- else {
260
+ } else {
280
261
  isTakeProfitOrder = true
281
262
  }
282
263
 
@@ -333,7 +314,9 @@ export class API extends DataAPI {
333
314
  break
334
315
  }
335
316
  case 'DECREASE_POSITION': {
336
- functionName = isV11Order ? 'clear_decrease_position_order' : 'clear_decrease_position_order'
317
+ functionName = isV11Order
318
+ ? 'clear_decrease_position_order'
319
+ : 'clear_decrease_position_order'
337
320
  break
338
321
  }
339
322
  default: {
@@ -349,10 +332,7 @@ export class API extends DataAPI {
349
332
  `${this.consts.zoCore.package}::market::${long ? 'LONG' : 'SHORT'}`,
350
333
  this.consts.coins[collateralToken].module,
351
334
  ],
352
- arguments: [
353
- tx.object(this.consts.zoCore.market),
354
- tx.object(orderCapId),
355
- ],
335
+ arguments: [tx.object(this.consts.zoCore.market), tx.object(orderCapId)],
356
336
  })
357
337
  return tx
358
338
  }
@@ -402,10 +382,7 @@ export class API extends DataAPI {
402
382
  this.consts.coins[indexToken].module,
403
383
  `${this.consts.zoCore.package}::market::${long ? 'LONG' : 'SHORT'}`,
404
384
  ],
405
- arguments: [
406
- tx.object(this.consts.zoCore.market),
407
- tx.object(pcpId),
408
- ],
385
+ arguments: [tx.object(this.consts.zoCore.market), tx.object(pcpId)],
409
386
  })
410
387
  }
411
388
 
@@ -427,10 +404,7 @@ export class API extends DataAPI {
427
404
  `${this.consts.zoCore.package}::market::${long ? 'LONG' : 'SHORT'}`,
428
405
  this.consts.coins[collateralToken].module,
429
406
  ],
430
- arguments: [
431
- tx.object(this.consts.zoCore.market),
432
- tx.object(orderCapId),
433
- ],
407
+ arguments: [tx.object(this.consts.zoCore.market), tx.object(orderCapId)],
434
408
  })
435
409
  }
436
410
 
@@ -452,19 +426,11 @@ export class API extends DataAPI {
452
426
  `${this.consts.zoCore.package}::market::${long ? 'LONG' : 'SHORT'}`,
453
427
  this.consts.coins[collateralToken].module,
454
428
  ],
455
- arguments: [
456
- tx.object(this.consts.zoCore.market),
457
- tx.object(orderCapId),
458
- ],
429
+ arguments: [tx.object(this.consts.zoCore.market), tx.object(orderCapId)],
459
430
  })
460
431
  }
461
432
 
462
- stake = (
463
- coinObjects: string[],
464
- amount: bigint,
465
- pool: string,
466
- tx?: Transaction | undefined,
467
- ) => {
433
+ stake = (coinObjects: string[], amount: bigint, pool: string, tx?: Transaction | undefined) => {
468
434
  if (!tx) {
469
435
  tx = new Transaction()
470
436
  }
@@ -473,15 +439,8 @@ export class API extends DataAPI {
473
439
 
474
440
  tx.moveCall({
475
441
  target: `${this.consts.zoStaking.package}::pool::deposit`,
476
- typeArguments: [
477
- `${this.consts.zoCore.package}::zlp::ZLP`,
478
- this.consts.coins.sui.module,
479
- ],
480
- arguments: [
481
- tx.object(pool),
482
- tx.object(SUI_CLOCK_OBJECT_ID),
483
- depositObject,
484
- ],
442
+ typeArguments: [`${this.consts.zoCore.package}::zlp::ZLP`, this.consts.coins.sui.module],
443
+ arguments: [tx.object(pool), tx.object(SUI_CLOCK_OBJECT_ID), depositObject],
485
444
  })
486
445
 
487
446
  return tx
@@ -502,10 +461,7 @@ export class API extends DataAPI {
502
461
  amount -= withdrawAmount
503
462
  tx.moveCall({
504
463
  target: `0xdb353cb79a88d5ee83b7c0ca0249662a1facab17ba62879080ea3d61b9d21112::pool::withdraw`,
505
- typeArguments: [
506
- `${this.consts.zoCore.package}::zlp::ZLP`,
507
- this.consts.coins.sui.module,
508
- ],
464
+ typeArguments: [`${this.consts.zoCore.package}::zlp::ZLP`, this.consts.coins.sui.module],
509
465
  arguments: [
510
466
  tx.object(pool),
511
467
  tx.object(SUI_CLOCK_OBJECT_ID),
@@ -516,13 +472,8 @@ export class API extends DataAPI {
516
472
  if (credential.amount === BigInt(0)) {
517
473
  tx.moveCall({
518
474
  target: `${this.consts.zoStaking.package}::pool::clear_empty_credential`,
519
- typeArguments: [
520
- `${this.consts.zoCore.package}::zlp::ZLP`,
521
- this.consts.coins.sui.module,
522
- ],
523
- arguments: [
524
- tx.object(credential.id),
525
- ],
475
+ typeArguments: [`${this.consts.zoCore.package}::zlp::ZLP`, this.consts.coins.sui.module],
476
+ arguments: [tx.object(credential.id)],
526
477
  })
527
478
  }
528
479
  }
@@ -530,24 +481,82 @@ export class API extends DataAPI {
530
481
  return tx
531
482
  }
532
483
 
533
- addReferral = (
534
- referrer: string,
535
- tx?: Transaction | undefined,
536
- ) => {
484
+ addReferral = (referrer: string, tx?: Transaction | undefined) => {
537
485
  if (!tx) {
538
486
  tx = new Transaction()
539
487
  }
540
488
  tx.moveCall({
541
489
  target: `${this.consts.zoCore.package}::market::add_new_referral`,
490
+ typeArguments: [`${this.consts.zoCore.package}::zlp::ZLP`],
491
+ arguments: [tx.object(this.consts.zoCore.market), tx.object(referrer)],
492
+ })
493
+
494
+ return tx
495
+ }
496
+
497
+ // admin methods
498
+ adminDecreasePosition = async (
499
+ positionId: string,
500
+ owner: string,
501
+ collateralToken: string,
502
+ indexToken: string,
503
+ positionAmount: number,
504
+ amount: bigint,
505
+ long: boolean,
506
+ ) => {
507
+ const tx = await this.initOracleTxb([collateralToken, indexToken])
508
+ const symbol = joinSymbol(long ? 'long' : 'short', indexToken)
509
+
510
+ tx.moveCall({
511
+ target: `${this.consts.zoCore.package}::market::force_close_position`,
542
512
  typeArguments: [
543
513
  `${this.consts.zoCore.package}::zlp::ZLP`,
514
+ this.consts.coins[collateralToken].module,
515
+ this.consts.coins[indexToken].module,
516
+ `${this.consts.zoCore.package}::market::${long ? 'LONG' : 'SHORT'}`,
544
517
  ],
545
518
  arguments: [
519
+ tx.object(this.consts.zoCore.adminCap),
520
+ tx.object(SUI_CLOCK_OBJECT_ID),
546
521
  tx.object(this.consts.zoCore.market),
547
- tx.object(referrer),
522
+ tx.object(this.consts.zoCore.vaults[collateralToken].reservingFeeModel),
523
+ tx.object(this.consts.zoCore.symbols[symbol].fundingFeeModel),
524
+ tx.object(this.consts.pythFeeder.feeder[collateralToken]),
525
+ tx.object(this.consts.pythFeeder.feeder[indexToken]),
526
+ tx.object(owner),
527
+ tx.object(positionId),
548
528
  ],
549
529
  })
550
530
 
531
+ if (amount === BigInt(positionAmount)) {
532
+ this.adminClearClosedPosition(positionId, owner, collateralToken, indexToken, long, tx)
533
+ }
534
+
551
535
  return tx
552
536
  }
537
+
538
+ adminClearClosedPosition = async (
539
+ positionId: string,
540
+ owner: string,
541
+ collateralToken: string,
542
+ indexToken: string,
543
+ long: boolean,
544
+ tx: Transaction,
545
+ ) => {
546
+ tx.moveCall({
547
+ target: `${this.consts.zoCore.package}::market::force_clear_closed_position`,
548
+ typeArguments: [
549
+ `${this.consts.zoCore.package}::zlp::ZLP`,
550
+ this.consts.coins[collateralToken].module,
551
+ this.consts.coins[indexToken].module,
552
+ `${this.consts.zoCore.package}::market::${long ? 'LONG' : 'SHORT'}`,
553
+ ],
554
+ arguments: [
555
+ tx.object(this.consts.zoCore.adminCap),
556
+ tx.object(this.consts.zoCore.market),
557
+ tx.object(positionId),
558
+ tx.object(owner),
559
+ ],
560
+ })
561
+ }
553
562
  }
@@ -34,7 +34,8 @@
34
34
  "supported_collaterals": [
35
35
  "sui",
36
36
  "deep",
37
- "nusdc"
37
+ "nusdc",
38
+ "wal"
38
39
  ],
39
40
  "funding_fee_model": "0x116f08a986e360abe00dc936d363f94e32893af75fb1c3d294c97b8e915a7cdc",
40
41
  "position_config": "0x9278d5af190ec9df19c2b9783b82cc8686acbf8bd79b3697d5f678d834f6f9cb"
@@ -43,7 +44,8 @@
43
44
  "supported_collaterals": [
44
45
  "sui",
45
46
  "deep",
46
- "nusdc"
47
+ "nusdc",
48
+ "wal"
47
49
  ],
48
50
  "funding_fee_model": "0xc31c0c54cb3611d4c79cd44946bdd3d37f3de56872d859f5af1babc669b70587",
49
51
  "position_config": "0x5a50ce2dfc114794977d7543d1f4425082428165a561641ab34bd175e2d5080a"
@@ -52,7 +54,8 @@
52
54
  "supported_collaterals": [
53
55
  "sui",
54
56
  "deep",
55
- "nusdc"
57
+ "nusdc",
58
+ "wal"
56
59
  ],
57
60
  "funding_fee_model": "0x35e4c27e7a15cac296b7be32d3ba1361bd8415e8cf3fdd7bbdc2db349111399d",
58
61
  "position_config": "0x27c55e0d778b130ce66d09e091793e78313a2c3133e6c0013dcab924db027bb3"
@@ -61,10 +64,211 @@
61
64
  "supported_collaterals": [
62
65
  "sui",
63
66
  "deep",
64
- "nusdc"
67
+ "nusdc",
68
+ "wal"
65
69
  ],
66
70
  "funding_fee_model": "0x393e3948cf57d15d14028d0c7ae5152d1d4af270f2532d1df92f32de40270cca",
67
71
  "position_config": "0x29a12984ee68f250972bc81251ce9c59eba949eb0626421e92e248a4300476de"
72
+ },
73
+ "long_xrp": {
74
+ "supported_collaterals": [
75
+ "sui",
76
+ "deep",
77
+ "nusdc",
78
+ "wal"
79
+ ],
80
+ "funding_fee_model": "0xa2e7bbc8e1857f6b11c47413c724065ff120cf185552ff263c063e1d4961f971",
81
+ "position_config": "0x7af35bf5e3bf4878913f9b298910bb6e05d5866e15fd82e8d99b78ae59d1fda7"
82
+ },
83
+ "short_xrp": {
84
+ "supported_collaterals": [
85
+ "sui",
86
+ "deep",
87
+ "nusdc",
88
+ "wal"
89
+ ],
90
+ "funding_fee_model": "0x473c6cb03ed14425bd0efd315158929c340a09f44ec63539d84db49d383ad181",
91
+ "position_config": "0x8e777b8ccb5d9c61591bf36790b467ba65515727e39e08be79552bcc7e414f73"
92
+ },
93
+ "long_sol": {
94
+ "supported_collaterals": [
95
+ "sui",
96
+ "deep",
97
+ "nusdc",
98
+ "wal"
99
+ ],
100
+ "funding_fee_model": "0x827c0d53e7260a6081c729c8010beb3532771310fcf1cd63b3fb04623da97d01",
101
+ "position_config": "0x1229fa25bafbf7b06d545e7aaf16166099a32b8a52f92da49a5f9faf38815e64"
102
+ },
103
+ "short_sol": {
104
+ "supported_collaterals": [
105
+ "sui",
106
+ "deep",
107
+ "nusdc",
108
+ "wal"
109
+ ],
110
+ "funding_fee_model": "0x8011208fd49d17b14072f6e821ca185fb34aec3eba703cedaf1c39a96e441b77",
111
+ "position_config": "0x487e5b93dc6be50dd60d727e28924031d254b2426f029eed9d30573f2fb094da"
112
+ },
113
+ "long_doge": {
114
+ "supported_collaterals": [
115
+ "sui",
116
+ "deep",
117
+ "nusdc",
118
+ "wal"
119
+ ],
120
+ "funding_fee_model": "0xab200af2bdb24d0950d3a3fe2952803a3f015f825a12a4f316cb079ac1c77e33",
121
+ "position_config": "0xa357de8967b287850ab5ebd123ab347065d6dae5eda02c356eb14e226589208c"
122
+ },
123
+ "short_doge": {
124
+ "supported_collaterals": [
125
+ "sui",
126
+ "deep",
127
+ "nusdc",
128
+ "wal"
129
+ ],
130
+ "funding_fee_model": "0xfe142306e247a07a76dae73cb1b37e8d65be284e6ec7d3ec4926707eb16f7bac",
131
+ "position_config": "0x40a47914d658a2e757caa5b8ee6b2fb4e3bd48178f2f2ecc0f4cfd42ced26cb2"
132
+ },
133
+ "long_sui": {
134
+ "supported_collaterals": [
135
+ "sui",
136
+ "deep",
137
+ "nusdc",
138
+ "wal"
139
+ ],
140
+ "funding_fee_model": "0xb79f8117573ede4c73be995dee65039ec0b649fa9d19526dedbea10c59a1901a",
141
+ "position_config": "0xc7c1b89b5afc7eb22ac86e24b4fb19821debeba1e9d6b607af25b90b30baf0ee"
142
+ },
143
+ "short_sui": {
144
+ "supported_collaterals": [
145
+ "sui",
146
+ "deep",
147
+ "nusdc",
148
+ "wal"
149
+ ],
150
+ "funding_fee_model": "0x376cc5b1ae3797ceeda86a27f8ab13213aa38fc25437f634d57e41a3eb0e2467",
151
+ "position_config": "0x02802513d54807dc5c4682dac0c88c91e818e05b9aa8c02cff4ebb8372a09f5e"
152
+ },
153
+ "long_hype": {
154
+ "supported_collaterals": [
155
+ "sui",
156
+ "deep",
157
+ "nusdc",
158
+ "wal"
159
+ ],
160
+ "funding_fee_model": "0x2cf92cb06e1afb37c98095a671e017f1d232d4f41efe10b284a067cec1286d32",
161
+ "position_config": "0x80ef0af78c3ab4c1e9191daa9b63df807c20fb444518c4909ec0045db6ca3b84"
162
+ },
163
+ "short_hype": {
164
+ "supported_collaterals": [
165
+ "sui",
166
+ "deep",
167
+ "nusdc",
168
+ "wal"
169
+ ],
170
+ "funding_fee_model": "0x94cd2911d839a3366e2f44b35a83c340e16a3bd0327194f39e701f84d5721cf2",
171
+ "position_config": "0x6f7f19f1eca4bf95da4ac043127cfb17b0ef8a4e1ee5dba4dd06bff50d186d47"
172
+ },
173
+ "long_ondo": {
174
+ "supported_collaterals": [
175
+ "sui",
176
+ "deep",
177
+ "nusdc",
178
+ "wal"
179
+ ],
180
+ "funding_fee_model": "0x832e4ed42af9e89fd262b54a0cba1bc3906bf365e80dd9ff1e18912163c71992",
181
+ "position_config": "0xa4358005f41370a72331025fde5b22121aa3f44260ed55a368fb274a7c126909"
182
+ },
183
+ "short_ondo": {
184
+ "supported_collaterals": [
185
+ "sui",
186
+ "deep",
187
+ "nusdc",
188
+ "wal"
189
+ ],
190
+ "funding_fee_model": "0x8c003d07313601f8894796230f342cff514f3d114bbe97eec929bb4fde11f359",
191
+ "position_config": "0x3664d228e64729ef92f8950332837130647b17f839a2a7d5c8df8a9a402559ff"
192
+ },
193
+ "long_trump": {
194
+ "supported_collaterals": [
195
+ "sui",
196
+ "deep",
197
+ "nusdc",
198
+ "wal"
199
+ ],
200
+ "funding_fee_model": "0x505b0fe6918570738df0da62060ed2293ead107ba90eb0d467e7f84549ad95f8",
201
+ "position_config": "0x24f5c833f574a6abda8ec64c0ae0470904b7f213845623e542bf53744f47f924"
202
+ },
203
+ "short_trump": {
204
+ "supported_collaterals": [
205
+ "sui",
206
+ "deep",
207
+ "nusdc",
208
+ "wal"
209
+ ],
210
+ "funding_fee_model": "0xf272d2d478c994b307638e8ca568d68f3669e6604076edf84666f7e41fa90925",
211
+ "position_config": "0xd41ccfb6f142ed275d49c62c685bd8eebf66ad884d72f3dceefa0fc45582a4f7"
212
+ },
213
+ "long_wal": {
214
+ "supported_collaterals": [
215
+ "sui",
216
+ "deep",
217
+ "nusdc",
218
+ "wal"
219
+ ],
220
+ "funding_fee_model": "0x79d5c23b66049c5d2eee5000345184a68f161eca3a981107c30271f42d653379",
221
+ "position_config": "0x0f50c1b590ef898c1375a8d37ddeed8ff7b5be84683fb0f0eb56cbe8daf424be"
222
+ },
223
+ "short_wal": {
224
+ "supported_collaterals": [
225
+ "sui",
226
+ "deep",
227
+ "nusdc",
228
+ "wal"
229
+ ],
230
+ "funding_fee_model": "0xd3f6a1b7a3bf8a1a914af5450ed97749ddd98852635602c376f8cf10f476d77e",
231
+ "position_config": "0x68c9e48a0d70940ee869e179b7fd0844027c5f295db7f91b0af20f12012723ea"
232
+ },
233
+ "long_deep": {
234
+ "supported_collaterals": [
235
+ "sui",
236
+ "deep",
237
+ "nusdc",
238
+ "wal"
239
+ ],
240
+ "funding_fee_model": "0x2a5109e3623015887da852447fcbe18897a8226988cdc430de939f828e9b832d",
241
+ "position_config": "0xafb27095c591a52f835306e385bfbf9fbb8da0ad2ad5ab6f6b32bf41dc328edb"
242
+ },
243
+ "short_deep": {
244
+ "supported_collaterals": [
245
+ "sui",
246
+ "deep",
247
+ "nusdc",
248
+ "wal"
249
+ ],
250
+ "funding_fee_model": "0x9685d898cffd81961ca85df6ad958fe4b93032572ce2b10e68e057a2bb6351c6",
251
+ "position_config": "0xc6c481ab3f090b52e672146887239ababc0815a5ec9bfc51bb9175b82e0eab53"
252
+ },
253
+ "long_cetus": {
254
+ "supported_collaterals": [
255
+ "sui",
256
+ "deep",
257
+ "nusdc",
258
+ "wal"
259
+ ],
260
+ "funding_fee_model": "0x6e7986c5097c25bbf37ef8b1cecb7931197eb178345ca7c331a093f4bcddd3f4",
261
+ "position_config": "0x3c95ea8a01586fc09c569d9b65a501d5ea7dfe77cb407be8a148c1fdddac33e5"
262
+ },
263
+ "short_cetus": {
264
+ "supported_collaterals": [
265
+ "sui",
266
+ "deep",
267
+ "nusdc",
268
+ "wal"
269
+ ],
270
+ "funding_fee_model": "0xc2382a61489000cb30ea947f763479890a6a187f7020e5c903ca43e39036c0cf",
271
+ "position_config": "0x1031e577256fc20f77638f952745455c5da907a58e75b3f9908da54f8608ae21"
68
272
  }
69
273
  }
70
274
  },
@@ -83,7 +287,14 @@
83
287
  "nusdc": "0x5dec622733a204ca27f5a90d8c2fad453cc6665186fd5dff13a83d0b6c9027ab",
84
288
  "usdt": "0x985e3db9f93f76ee8bace7c3dd5cc676a096accd5d9e09e9ae0fb6e492b14572",
85
289
  "deep": "0x8c7f3a322b94cc69db2a2ac575cbd94bf5766113324c3a3eceac91e3e88a51ed",
86
- "wal": "0xeb7e669f74d976c0b99b6ef9801e3a77716a95f1a15754e0f1399ce3fb60973d"
290
+ "wal": "0xeb7e669f74d976c0b99b6ef9801e3a77716a95f1a15754e0f1399ce3fb60973d",
291
+ "xrp": "0x93bfda25cb6b1653a9c769e8216014bd2c06997f3edb479566761fbf2abf6ac2",
292
+ "sol": "0x9d0d275efbd37d8a8855f6f2c761fa5983293dd8ce202ee5196626de8fcd4469",
293
+ "doge": "0xd59a5f5173424ba725a7d033d86f2eadf2745f87a908bd27e1d27339eff598ce",
294
+ "hype": "0x1c047be615eaa5a87afa0e111b20a512dd6c0f4a1f0f691693cf852c1768f35d",
295
+ "ondo": "0xa64a406662db4ecde675fde111033e80629397715afc7fff53064f41dabab42f",
296
+ "trump": "0xd0835474be8cfcc7be4e02fc1bcd85dbdf11a54d061edc302e611ca304f57b14",
297
+ "cetus": "0x24c0247fb22457a719efac7f670cdc79be321b521460bd6bd2ccfa9f80713b14"
87
298
  }
88
299
  },
89
300
  "coins": {
@@ -121,6 +332,41 @@
121
332
  "decimals": 9,
122
333
  "module": "0x356a26eb9e012a68958082340d4c4116e7f55615cf27affcff209cf0ae544f59::wal::WAL",
123
334
  "metadata": "0xcf8a31804ae40cb3e7183fe57320f87467a7750d4fa701bca1ffbb1edd37781e"
335
+ },
336
+ "xrp": {
337
+ "decimals": 6,
338
+ "module": "0x8592d41b28815030c40cae43bf30a3f75657e57e6028a05c1b56e5f236b1416e::xrp::XRP",
339
+ "metadata": "0x69004e9f9a4981fdee2f3050cf99c7d2f2a7e45b871da2cc056a850e6bf818b3"
340
+ },
341
+ "sol": {
342
+ "decimals": 8,
343
+ "module": "0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN",
344
+ "metadata": "0x4d2c39082b4477e3e79dc4562d939147ab90c42fc5f3e4acf03b94383cd69b6e"
345
+ },
346
+ "doge": {
347
+ "decimals": 8,
348
+ "module": "0xe364a361406e7ab4ea4ec17cc4840b18737dd20bd7124a82130aa21422b8fc20::doge::DOGE",
349
+ "metadata": "0xf3da270f549dd26d1d2dd251961d46919d3abb3044a98ef0fd7dd914d3cc9159"
350
+ },
351
+ "hype": {
352
+ "decimals": 18,
353
+ "module": "0x76bf4329c6d79387570ab42efbd0394157d4d9c06c556d937474349b1b050381::hype::HYPE",
354
+ "metadata": "0x599c240e6d710fcacc47ce2e8dacc141f63e0f4a59ed5711a2f4a4ac7287715e"
355
+ },
356
+ "ondo": {
357
+ "decimals": 18,
358
+ "module": "0x6d49c32ec3d8637ffe5a09fcee38922b57fb659a8053f6a43ffc2eef9aeb42f2::ondo::ONDO",
359
+ "metadata": "0x2c5bcfe3006d6c8ac4a6f3e1a860cb2a390360988c490553940655789ee45f74"
360
+ },
361
+ "trump": {
362
+ "decimals": 6,
363
+ "module": "0xbac9a286efdb3520c76c2cbff789ad42c0834c857c3a249915b10d8b5bf8afac::trump::TRUMP",
364
+ "metadata": "0xdea3d7c4b12833a89edd5f04921e800a6e34f9e8256dc514979855d5084212ba"
365
+ },
366
+ "cetus": {
367
+ "decimals": 9,
368
+ "module": "0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS",
369
+ "metadata": "0x4c0dce55eff2db5419bbd2d239d1aa22b4a400c01bbb648b058a9883989025da"
124
370
  }
125
371
  }
126
372
  }
@@ -1,9 +1,16 @@
1
1
  {
2
2
  "eaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a": "0x5dec622733a204ca27f5a90d8c2fad453cc6665186fd5dff13a83d0b6c9027ab",
3
3
  "2b89b9dc8fdf9f34709a5b106b472f0f39bb6ca9ce04b0fd7f2e971688e2e53b": "0x985e3db9f93f76ee8bace7c3dd5cc676a096accd5d9e09e9ae0fb6e492b14572",
4
- "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744": "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37",
5
- "ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace": "0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab",
6
4
  "e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43": "0x9a62b4863bdeaabdc9500fce769cf7e72d5585eeb28a6d26e4cafadc13f76ab2",
5
+ "ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace": "0x9193fd47f9a0ab99b6e365a464c8a9ae30e6150fc37ed2a89c1586631f6fc4ab",
6
+ "ec5d399846a9209f3fe5881d70aae9268c94339ff9817e8d18ff19fa05eea1c8": "0x93bfda25cb6b1653a9c769e8216014bd2c06997f3edb479566761fbf2abf6ac2",
7
+ "ef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d": "0x9d0d275efbd37d8a8855f6f2c761fa5983293dd8ce202ee5196626de8fcd4469",
8
+ "dcef50dd0a4cd2dcc17e45df1676dcb336a11a61c69df7a0299b0150c672d25c": "0xd59a5f5173424ba725a7d033d86f2eadf2745f87a908bd27e1d27339eff598ce",
9
+ "23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744": "0x801dbc2f0053d34734814b2d6df491ce7807a725fe9a01ad74a07e9c51396c37",
10
+ "4279e31cc369bbcc2faf022b382b080e32a8e689ff20fbc530d2a603eb6cd98b": "0x1c047be615eaa5a87afa0e111b20a512dd6c0f4a1f0f691693cf852c1768f35d",
11
+ "d40472610abe56d36d065a0cf889fc8f1dd9f3b7f2a478231a5fc6df07ea5ce3": "0xa64a406662db4ecde675fde111033e80629397715afc7fff53064f41dabab42f",
12
+ "879551021853eec7a7dc827578e8e69da7e4fa8148339aa0d3d5296405be4b1a": "0xd0835474be8cfcc7be4e02fc1bcd85dbdf11a54d061edc302e611ca304f57b14",
13
+ "eba0732395fae9dec4bae12e52760b35fc1c5671e2da8b449c9af4efe5d54341": "0xeb7e669f74d976c0b99b6ef9801e3a77716a95f1a15754e0f1399ce3fb60973d",
7
14
  "29bdd5248234e33bd93d3b81100b5fa32eaa5997843847e2c2cb16d7c6d9f7ff": "0x8c7f3a322b94cc69db2a2ac575cbd94bf5766113324c3a3eceac91e3e88a51ed",
8
- "eba0732395fae9dec4bae12e52760b35fc1c5671e2da8b449c9af4efe5d54341": "0xeb7e669f74d976c0b99b6ef9801e3a77716a95f1a15754e0f1399ce3fb60973d"
15
+ "e5b274b2611143df055d6e7cd8d93fe1961716bcd4dca1cad87a83bc1e78c1ef": "0x24c0247fb22457a719efac7f670cdc79be321b521460bd6bd2ccfa9f80713b14"
9
16
  }