@perena/bankineco-services 1.0.35 → 1.0.37
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/constants/general.d.ts +0 -1
- package/dist/constants/general.d.ts.map +1 -1
- package/dist/constants/general.js +1 -4
- package/dist/constants/general.js.map +1 -1
- package/dist/oracle/updateAPIPendingYield.d.ts +1 -1
- package/dist/oracle/updateAPIPendingYield.d.ts.map +1 -1
- package/dist/oracle/updateAPIPendingYield.js +8 -4
- package/dist/oracle/updateAPIPendingYield.js.map +1 -1
- package/dist/oracle/updateLEPendingYield.d.ts +1 -1
- package/dist/oracle/updateLEPendingYield.d.ts.map +1 -1
- package/dist/oracle/updateLEPendingYield.js +2 -2
- package/dist/oracle/updateLEPendingYield.js.map +1 -1
- package/dist/oracle/updateMarginfiVaultPendingYield.d.ts.map +1 -1
- package/dist/oracle/updateMarginfiVaultPendingYield.js +14 -5
- package/dist/oracle/updateMarginfiVaultPendingYield.js.map +1 -1
- package/dist/utils/oracle.d.ts.map +1 -1
- package/dist/utils/oracle.js +6 -1
- package/dist/utils/oracle.js.map +1 -1
- package/package.json +4 -3
|
@@ -6,5 +6,4 @@ export declare const LE_ACCOUNTS: Record<Environment, string[]>;
|
|
|
6
6
|
export declare const TEST_LE_CUSTODIAN = "64nZHh2DBKEkH7PC1Vo7DHRE6k5MohcnqcDyM6evwEn8";
|
|
7
7
|
export declare const PROD_LE_CUSTODIAN = "58ubrW9j4SJ28oYoJauGbnSbCCyycrFiQNV6zu3XX5HZ";
|
|
8
8
|
export declare const LE_CUSTODIAN: Record<Environment, string>;
|
|
9
|
-
export declare const LE_YIELD_START_MARKER: Date | undefined;
|
|
10
9
|
//# sourceMappingURL=general.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"general.d.ts","sourceRoot":"","sources":["../../src/constants/general.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,eAAO,MAAM,0BAA0B,uBAAuB,CAAC;AAC/D,eAAO,MAAM,0BAA0B,wBAAwB,CAAC;AAChE,eAAO,MAAM,6BAA6B,gCAAgC,CAAC;AAC3E,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CAIrD,CAAC;AAEF,eAAO,MAAM,iBAAiB,iDAAiD,CAAC;AAChF,eAAO,MAAM,iBAAiB,iDAAiD,CAAC;AAChF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAIpD,CAAC
|
|
1
|
+
{"version":3,"file":"general.d.ts","sourceRoot":"","sources":["../../src/constants/general.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,eAAO,MAAM,0BAA0B,uBAAuB,CAAC;AAC/D,eAAO,MAAM,0BAA0B,wBAAwB,CAAC;AAChE,eAAO,MAAM,6BAA6B,gCAAgC,CAAC;AAC3E,eAAO,MAAM,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,EAAE,CAIrD,CAAC;AAEF,eAAO,MAAM,iBAAiB,iDAAiD,CAAC;AAChF,eAAO,MAAM,iBAAiB,iDAAiD,CAAC;AAChF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAIpD,CAAC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.
|
|
3
|
+
exports.LE_CUSTODIAN = exports.PROD_LE_CUSTODIAN = exports.TEST_LE_CUSTODIAN = exports.LE_ACCOUNTS = exports.LITTLE_ENGINE_BOOSTED_ACCOUNT = exports.LITTLE_ENGINE_PROD_ACCOUNT = exports.LITTLE_ENGINE_TEST_ACCOUNT = void 0;
|
|
4
4
|
exports.LITTLE_ENGINE_TEST_ACCOUNT = "little-engine-test";
|
|
5
5
|
exports.LITTLE_ENGINE_PROD_ACCOUNT = "little-engine-prod6";
|
|
6
6
|
exports.LITTLE_ENGINE_BOOSTED_ACCOUNT = "little-engine-prod6-boosted";
|
|
@@ -16,7 +16,4 @@ exports.LE_CUSTODIAN = {
|
|
|
16
16
|
test: exports.TEST_LE_CUSTODIAN,
|
|
17
17
|
prod: exports.PROD_LE_CUSTODIAN,
|
|
18
18
|
};
|
|
19
|
-
exports.LE_YIELD_START_MARKER = process.env.LE_YIELD_START_MARKER
|
|
20
|
-
? new Date(process.env.LE_YIELD_START_MARKER)
|
|
21
|
-
: undefined;
|
|
22
19
|
//# sourceMappingURL=general.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"general.js","sourceRoot":"","sources":["../../src/constants/general.ts"],"names":[],"mappings":";;;AAEa,QAAA,0BAA0B,GAAG,oBAAoB,CAAC;AAClD,QAAA,0BAA0B,GAAG,qBAAqB,CAAC;AACnD,QAAA,6BAA6B,GAAG,6BAA6B,CAAC;AAC9D,QAAA,WAAW,GAAkC;IACxD,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,CAAC,kCAA0B,CAAC;IAClC,IAAI,EAAE,CAAC,kCAA0B,EAAE,qCAA6B,CAAC;CAClE,CAAC;AAEW,QAAA,iBAAiB,GAAG,8CAA8C,CAAC,CAAC,sBAAsB;AAC1F,QAAA,iBAAiB,GAAG,8CAA8C,CAAC;AACnE,QAAA,YAAY,GAAgC;IACvD,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,yBAAiB;IACvB,IAAI,EAAE,yBAAiB;CACxB,CAAC
|
|
1
|
+
{"version":3,"file":"general.js","sourceRoot":"","sources":["../../src/constants/general.ts"],"names":[],"mappings":";;;AAEa,QAAA,0BAA0B,GAAG,oBAAoB,CAAC;AAClD,QAAA,0BAA0B,GAAG,qBAAqB,CAAC;AACnD,QAAA,6BAA6B,GAAG,6BAA6B,CAAC;AAC9D,QAAA,WAAW,GAAkC;IACxD,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,CAAC,kCAA0B,CAAC;IAClC,IAAI,EAAE,CAAC,kCAA0B,EAAE,qCAA6B,CAAC;CAClE,CAAC;AAEW,QAAA,iBAAiB,GAAG,8CAA8C,CAAC,CAAC,sBAAsB;AAC1F,QAAA,iBAAiB,GAAG,8CAA8C,CAAC;AACnE,QAAA,YAAY,GAAgC;IACvD,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,yBAAiB;IACvB,IAAI,EAAE,yBAAiB;CACxB,CAAC"}
|
|
@@ -6,5 +6,5 @@ export interface APIYieldParams {
|
|
|
6
6
|
yieldingContractIndex: number;
|
|
7
7
|
accountNames: string[];
|
|
8
8
|
}
|
|
9
|
-
export declare function runUpdateAPIPendingYield(env: Environment, signerKeypairFp: string, rpcUrl: string, params: APIYieldParams, reportingDiscount?: number
|
|
9
|
+
export declare function runUpdateAPIPendingYield(env: Environment, signerKeypairFp: string, rpcUrl: string, params: APIYieldParams, reportingDiscount?: number): Promise<void>;
|
|
10
10
|
//# sourceMappingURL=updateAPIPendingYield.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateAPIPendingYield.d.ts","sourceRoot":"","sources":["../../src/oracle/updateAPIPendingYield.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EAGZ,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,SAAS,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;
|
|
1
|
+
{"version":3,"file":"updateAPIPendingYield.d.ts","sourceRoot":"","sources":["../../src/oracle/updateAPIPendingYield.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EAGZ,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAI5C,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,SAAS,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,YAAY,EAAE,MAAM,EAAE,CAAC;CACxB;AAmCD,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,WAAW,EAChB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,EACtB,iBAAiB,CAAC,EAAE,MAAM,iBAI3B"}
|
|
@@ -4,13 +4,17 @@ exports.runUpdateAPIPendingYield = runUpdateAPIPendingYield;
|
|
|
4
4
|
const bankineco_sdk_1 = require("@perena/bankineco-sdk");
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
6
|
const api_1 = require("../api");
|
|
7
|
-
async function updateAPIPendingYield(bankineco, params, reportingDiscount
|
|
7
|
+
async function updateAPIPendingYield(bankineco, params, reportingDiscount) {
|
|
8
8
|
const vaultState = bankineco.vaultPDA(bankineco.bankPDA(bankineco_sdk_1.USD_STAR_BANK_INDEX), params.yieldingMint, params.yieldingContractIndex);
|
|
9
|
+
const oracleInfo = await bankineco.pg.account.oracleGenState.fetch(bankineco.oraclePDA(vaultState));
|
|
10
|
+
const startAt = new Date(oracleInfo.result.startMarkerUnixSeconds.toNumber() * 1000);
|
|
11
|
+
console.log("Start at", startAt.toString());
|
|
12
|
+
console.log(oracleInfo.result.startMarkerUnixSeconds.toNumber(), Math.floor(startAt.getTime() / 1000));
|
|
9
13
|
let impliedYield = await (0, api_1.getTotalYield)(params.accountNames, startAt);
|
|
10
|
-
await (0, utils_1.updateYieldInfoIfNeeded)(bankineco, vaultState, impliedYield, reportingDiscount
|
|
14
|
+
await (0, utils_1.updateYieldInfoIfNeeded)(bankineco, vaultState, impliedYield, reportingDiscount);
|
|
11
15
|
}
|
|
12
|
-
async function runUpdateAPIPendingYield(env, signerKeypairFp, rpcUrl, params, reportingDiscount
|
|
16
|
+
async function runUpdateAPIPendingYield(env, signerKeypairFp, rpcUrl, params, reportingDiscount) {
|
|
13
17
|
const [bankineco] = (0, bankineco_sdk_1.getBankineco)(env, rpcUrl, undefined, signerKeypairFp);
|
|
14
|
-
await updateAPIPendingYield(bankineco, params, reportingDiscount
|
|
18
|
+
await updateAPIPendingYield(bankineco, params, reportingDiscount);
|
|
15
19
|
}
|
|
16
20
|
//# sourceMappingURL=updateAPIPendingYield.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateAPIPendingYield.js","sourceRoot":"","sources":["../../src/oracle/updateAPIPendingYield.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"updateAPIPendingYield.js","sourceRoot":"","sources":["../../src/oracle/updateAPIPendingYield.ts"],"names":[],"mappings":";;AAkDA,4DASC;AA3DD,yDAK+B;AAE/B,oCAAmD;AACnD,gCAAuC;AASvC,KAAK,UAAU,qBAAqB,CAClC,SAA2B,EAC3B,MAAsB,EACtB,iBAA0B;IAE1B,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CACnC,SAAS,CAAC,OAAO,CAAC,mCAAmB,CAAC,EACtC,MAAM,CAAC,YAAY,EACnB,MAAM,CAAC,qBAAqB,CAC7B,CAAC;IAEF,MAAM,UAAU,GAAG,MAAM,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CAChE,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CAChC,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,IAAI,CACtB,UAAU,CAAC,MAAM,CAAC,sBAAsB,CAAC,QAAQ,EAAE,GAAG,IAAI,CAC3D,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,UAAU,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CACT,UAAU,CAAC,MAAM,CAAC,sBAAsB,CAAC,QAAQ,EAAE,EACnD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CACrC,CAAC;IAEF,IAAI,YAAY,GAAG,MAAM,IAAA,mBAAa,EAAC,MAAM,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IAErE,MAAM,IAAA,+BAAuB,EAC3B,SAAS,EACT,UAAU,EACV,YAAY,EACZ,iBAAiB,CAClB,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,wBAAwB,CAC5C,GAAgB,EAChB,eAAuB,EACvB,MAAc,EACd,MAAsB,EACtB,iBAA0B;IAE1B,MAAM,CAAC,SAAS,CAAC,GAAG,IAAA,4BAAY,EAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAC1E,MAAM,qBAAqB,CAAC,SAAS,EAAE,MAAM,EAAE,iBAAiB,CAAC,CAAC;AACpE,CAAC"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
import { Environment } from "@perena/bankineco-sdk";
|
|
2
|
-
export declare function runUpdateLEPendingYield(env: Environment, signerKeypairFp: string, rpcUrl: string, reportingDiscount?: number
|
|
2
|
+
export declare function runUpdateLEPendingYield(env: Environment, signerKeypairFp: string, rpcUrl: string, reportingDiscount?: number): Promise<void>;
|
|
3
3
|
//# sourceMappingURL=updateLEPendingYield.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateLEPendingYield.d.ts","sourceRoot":"","sources":["../../src/oracle/updateLEPendingYield.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAIZ,MAAM,uBAAuB,CAAC;AAK/B,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,WAAW,EAChB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,iBAAiB,CAAC,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"updateLEPendingYield.d.ts","sourceRoot":"","sources":["../../src/oracle/updateLEPendingYield.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAIZ,MAAM,uBAAuB,CAAC;AAK/B,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,WAAW,EAChB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,iBAAiB,CAAC,EAAE,MAAM,iBAc3B"}
|
|
@@ -5,12 +5,12 @@ const bankineco_sdk_1 = require("@perena/bankineco-sdk");
|
|
|
5
5
|
const updateAPIPendingYield_1 = require("./updateAPIPendingYield");
|
|
6
6
|
const web3_js_1 = require("@solana/web3.js");
|
|
7
7
|
const constants_1 = require("../constants");
|
|
8
|
-
async function runUpdateLEPendingYield(env, signerKeypairFp, rpcUrl, reportingDiscount
|
|
8
|
+
async function runUpdateLEPendingYield(env, signerKeypairFp, rpcUrl, reportingDiscount) {
|
|
9
9
|
await (0, updateAPIPendingYield_1.runUpdateAPIPendingYield)(env, signerKeypairFp, rpcUrl, {
|
|
10
10
|
yieldingMint: new web3_js_1.PublicKey(bankineco_sdk_1.USDC_MINT),
|
|
11
11
|
yieldingMintDecimals: bankineco_sdk_1.USDC_DECIMALS,
|
|
12
12
|
yieldingContractIndex: bankineco_sdk_1.LITTLE_ENGINE_USDC_CONTRACT_INDEX,
|
|
13
13
|
accountNames: constants_1.LE_ACCOUNTS[env],
|
|
14
|
-
}, reportingDiscount
|
|
14
|
+
}, reportingDiscount);
|
|
15
15
|
}
|
|
16
16
|
//# sourceMappingURL=updateLEPendingYield.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateLEPendingYield.js","sourceRoot":"","sources":["../../src/oracle/updateLEPendingYield.ts"],"names":[],"mappings":";;AAUA,
|
|
1
|
+
{"version":3,"file":"updateLEPendingYield.js","sourceRoot":"","sources":["../../src/oracle/updateLEPendingYield.ts"],"names":[],"mappings":";;AAUA,0DAkBC;AA5BD,yDAK+B;AAC/B,mEAAmE;AACnE,6CAA4C;AAC5C,4CAA2C;AAEpC,KAAK,UAAU,uBAAuB,CAC3C,GAAgB,EAChB,eAAuB,EACvB,MAAc,EACd,iBAA0B;IAE1B,MAAM,IAAA,gDAAwB,EAC5B,GAAG,EACH,eAAe,EACf,MAAM,EACN;QACE,YAAY,EAAE,IAAI,mBAAS,CAAC,yBAAS,CAAC;QACtC,oBAAoB,EAAE,6BAAa;QACnC,qBAAqB,EAAE,iDAAiC;QACxD,YAAY,EAAE,uBAAW,CAAC,GAAG,CAAC;KAC/B,EACD,iBAAiB,CAClB,CAAC;AACJ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateMarginfiVaultPendingYield.d.ts","sourceRoot":"","sources":["../../src/oracle/updateMarginfiVaultPendingYield.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EAIX,gBAAgB,EAEjB,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"updateMarginfiVaultPendingYield.d.ts","sourceRoot":"","sources":["../../src/oracle/updateMarginfiVaultPendingYield.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,WAAW,EAIX,gBAAgB,EAEjB,MAAM,uBAAuB,CAAC;AA6F/B;;GAEG;AACH,wBAAsB,kCAAkC,CACtD,GAAG,EAAE,WAAW,EAChB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,gBAAgB,EAAE,gBAAgB,EAClC,iBAAiB,CAAC,EAAE,MAAM,iBAQ3B"}
|
|
@@ -5,6 +5,7 @@ const bankineco_sdk_1 = require("@perena/bankineco-sdk");
|
|
|
5
5
|
const utils_1 = require("../utils");
|
|
6
6
|
const marginfi_1 = require("../utils/marginfi");
|
|
7
7
|
const anchor_1 = require("@coral-xyz/anchor");
|
|
8
|
+
const ts_retry_1 = require("ts-retry");
|
|
8
9
|
function mostFrequent(arr) {
|
|
9
10
|
if (!arr.length) {
|
|
10
11
|
throw new Error("Array is empty");
|
|
@@ -30,12 +31,20 @@ async function updateMarginFiVaultPendingYield(bankineco, marginfiVaultTag, repo
|
|
|
30
31
|
const vaultPosition = bankineco_sdk_1.MARGINFI_VAULT_POSITIONS[bankineco.environment][marginfiVaultTag];
|
|
31
32
|
const poolAccounts = bankineco_sdk_1.MARGINFI_POOL_ACCOUNTS[marginfiVaultTag];
|
|
32
33
|
const vault = bankineco.vaultPDA(bankineco.bankPDA(bankineco_sdk_1.USD_STAR_BANK_INDEX), vaultPosition.yieldingMint, vaultPosition.yieldingTokenIndex);
|
|
33
|
-
const marginfiAccount = bankineco.marginfiAccountPDA(vault,
|
|
34
|
-
const fetches = Array.from({ length: 5 }, () => (0, marginfi_1.getPendingMarginFiYield)(marginfiClient, bankineco, vault, marginfiAccount, poolAccounts.bank).catch(() => undefined));
|
|
34
|
+
const marginfiAccount = bankineco.marginfiAccountPDA(vault, marginfiVaultTag);
|
|
35
35
|
const impliedYields = [];
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
for (let i = 0; i < 5; i++) {
|
|
37
|
+
let res = undefined;
|
|
38
|
+
try {
|
|
39
|
+
res = await (0, ts_retry_1.retryAsync)(async () => await (0, marginfi_1.getPendingMarginFiYield)(marginfiClient, bankineco, vault, marginfiAccount, poolAccounts.bank), {
|
|
40
|
+
delay: 500,
|
|
41
|
+
maxTry: 3,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
catch (e) {
|
|
45
|
+
console.log(e);
|
|
46
|
+
}
|
|
47
|
+
if (res) {
|
|
39
48
|
impliedYields.push(res);
|
|
40
49
|
}
|
|
41
50
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateMarginfiVaultPendingYield.js","sourceRoot":"","sources":["../../src/oracle/updateMarginfiVaultPendingYield.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"updateMarginfiVaultPendingYield.js","sourceRoot":"","sources":["../../src/oracle/updateMarginfiVaultPendingYield.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../src/utils/oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,
|
|
1
|
+
{"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../src/utils/oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAUjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAQvC,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,gBAAgB,EAC3B,UAAU,EAAE,SAAS,eAsBtB;AAED,wBAAsB,kBAAkB,CACtC,SAAS,EAAE,gBAAgB,EAC3B,UAAU,EAAE,SAAS,EACrB,oBAAoB,EAAE,MAAM;;;;;;;;GAyC7B;AAED,wBAAsB,uBAAuB,CAC3C,SAAS,EAAE,gBAAgB,EAC3B,UAAU,EAAE,SAAS,EACrB,YAAY,EAAE,EAAE,EAChB,iBAAiB,GAAE,MAAU,EAC7B,OAAO,CAAC,EAAE,IAAI,iBAwFf"}
|
package/dist/utils/oracle.js
CHANGED
|
@@ -6,6 +6,7 @@ exports.updateYieldInfoIfNeeded = updateYieldInfoIfNeeded;
|
|
|
6
6
|
const bankineco_sdk_1 = require("@perena/bankineco-sdk");
|
|
7
7
|
const web3_js_1 = require("@solana/web3.js");
|
|
8
8
|
const drift_1 = require("./drift");
|
|
9
|
+
const ts_retry_1 = require("ts-retry");
|
|
9
10
|
async function getPendingDriftYield(bankineco, vaultState) {
|
|
10
11
|
const teamInfo = await bankineco.pg.account.teamGenState.fetch(bankineco.teamPDA(vaultState));
|
|
11
12
|
const eyManager = teamInfo.details.yieldManager;
|
|
@@ -67,7 +68,11 @@ async function updateYieldInfoIfNeeded(bankineco, vaultState, impliedYield, repo
|
|
|
67
68
|
console.log("Registered oracle: ", signerIsRegisteredOracle);
|
|
68
69
|
if (signerIsRegisteredOracle) {
|
|
69
70
|
console.log("Sending yield update...");
|
|
70
|
-
const sig = await (0, bankineco_sdk_1.signSendAndConfirm)(bankineco.connection, await bankineco.updateYieldingInfo(bankineco_sdk_1.USD_STAR_BANK_INDEX, new web3_js_1.PublicKey(bankineco_sdk_1.USD_STAR[bankineco.environment]), vaultState, bankineco.provider.publicKey, yieldingMint, impliedYield, startAt), [bankineco.provider.wallet])
|
|
71
|
+
const sig = await (0, ts_retry_1.retryAsync)(async () => await (0, bankineco_sdk_1.signSendAndConfirm)(bankineco.connection, await bankineco.updateYieldingInfo(bankineco_sdk_1.USD_STAR_BANK_INDEX, new web3_js_1.PublicKey(bankineco_sdk_1.USD_STAR[bankineco.environment]), vaultState, bankineco.provider.publicKey, yieldingMint, impliedYield, startAt), [bankineco.provider.wallet]), {
|
|
72
|
+
delay: 500,
|
|
73
|
+
maxTry: 3,
|
|
74
|
+
});
|
|
75
|
+
await (0, bankineco_sdk_1.logTxMessages)(bankineco.connection, sig);
|
|
71
76
|
console.log("Success broadcasting yield, tx ", sig);
|
|
72
77
|
}
|
|
73
78
|
}
|
package/dist/utils/oracle.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oracle.js","sourceRoot":"","sources":["../../src/utils/oracle.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"oracle.js","sourceRoot":"","sources":["../../src/utils/oracle.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@perena/bankineco-services",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.37",
|
|
4
4
|
"description": "Services infra for maintaining Bankineco program on Solana.",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -27,12 +27,13 @@
|
|
|
27
27
|
"@coral-xyz/anchor": "=0.30.1",
|
|
28
28
|
"@drift-labs/sdk": "=2.137.0",
|
|
29
29
|
"@mrgnlabs/marginfi-client-v2": "^6.2.1",
|
|
30
|
-
"@perena/bankineco-sdk": "=1.0.
|
|
30
|
+
"@perena/bankineco-sdk": "=1.0.82",
|
|
31
31
|
"@perena/numeraire-sdk-new": "=1.1.1",
|
|
32
32
|
"@solana/spl-token": "=0.4.13",
|
|
33
33
|
"@solana/web3.js": "=1.98.4",
|
|
34
34
|
"@sqds/multisig": "^2.1.4",
|
|
35
|
-
"rpc-websockets": "=7.5.1"
|
|
35
|
+
"rpc-websockets": "=7.5.1",
|
|
36
|
+
"ts-retry": "^6.0.0"
|
|
36
37
|
},
|
|
37
38
|
"devDependencies": {
|
|
38
39
|
"@types/bn.js": "^5.1.0",
|