@perena/bankineco-services 1.0.75 → 1.0.76
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 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateGlowUsdtVaultPrice.d.ts","sourceRoot":"","sources":["../../src/oracle/updateGlowUsdtVaultPrice.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,aAAa,
|
|
1
|
+
{"version":3,"file":"updateGlowUsdtVaultPrice.d.ts","sourceRoot":"","sources":["../../src/oracle/updateGlowUsdtVaultPrice.ts"],"names":[],"mappings":"AACA,OAAO,EAEL,aAAa,EAMd,MAAM,uBAAuB,CAAC;AAyE/B,wBAAsB,2BAA2B,CAC/C,IAAI,EAAE,aAAa,EACnB,iBAAiB,CAAC,EAAE,MAAM,iBAI3B"}
|
|
@@ -22,12 +22,17 @@ async function updateGlowUsdtVaultPrice(client, reportingDiscount) {
|
|
|
22
22
|
// Total USDT value of the Glow position; pending yield is appreciation over principal
|
|
23
23
|
// tracked on-chain as external_yielding_amount (same pattern as Kamino / MarginFi oracles).
|
|
24
24
|
const onChainGlowUsdt = await (0, utils_1.fetchGlowUsdtOwed)(connection, shareHolder);
|
|
25
|
-
// Off-chain NAV tracked by the yield API for the Glow 7.5 account. Take the
|
|
26
|
-
// larger of the two so we never under-report yield while either source lags.
|
|
27
|
-
const glow75Balance = await (0, api_1.getBalance)(constants_1.GLOW_7_5_ACCOUNT);
|
|
28
|
-
const apiNavUsdt = new anchor_1.BN(Math.floor(glow75Balance.balance));
|
|
29
|
-
const totalGlowUsdt = anchor_1.BN.max(onChainGlowUsdt, apiNavUsdt);
|
|
30
25
|
const principal = new anchor_1.BN(vaultInfo.accounting.externalYieldingAmount.toString());
|
|
26
|
+
// Off-chain NAV from the yield API: principal + accrued yield for the Glow
|
|
27
|
+
// 7.5 account since the oracle's start marker. Take the larger of on-chain
|
|
28
|
+
// and API NAV so we never under-report yield while either source lags.
|
|
29
|
+
const oracleInfo = await client.bankineco.pg.account.oracleGenState.fetch(client.bankineco.oraclePDA(vaultState));
|
|
30
|
+
const startAt = new Date(oracleInfo.result.startMarkerUnixSeconds.toNumber() * 1000);
|
|
31
|
+
const endAt = new Date();
|
|
32
|
+
const apiYield = await (0, api_1.getTotalYield)([constants_1.GLOW_7_5_ACCOUNT], startAt, endAt);
|
|
33
|
+
// Sub 3950 due to bridging costs that we pay for
|
|
34
|
+
const apiNavUsdt = principal.add(apiYield).sub((0, bankineco_sdk_1.fromUiAmount)(3950, bankineco_sdk_1.USDT_DECIMALS));
|
|
35
|
+
const totalGlowUsdt = anchor_1.BN.max(onChainGlowUsdt, apiNavUsdt);
|
|
31
36
|
const rawPending = totalGlowUsdt.sub(principal);
|
|
32
37
|
const impliedYield = rawPending.gt(new anchor_1.BN(0)) ? rawPending : new anchor_1.BN(0);
|
|
33
38
|
console.log("Glow on-chain USDT:", onChainGlowUsdt.toNumber());
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"updateGlowUsdtVaultPrice.js","sourceRoot":"","sources":["../../src/oracle/updateGlowUsdtVaultPrice.ts"],"names":[],"mappings":";;
|
|
1
|
+
{"version":3,"file":"updateGlowUsdtVaultPrice.js","sourceRoot":"","sources":["../../src/oracle/updateGlowUsdtVaultPrice.ts"],"names":[],"mappings":";;AAkFA,kEAMC;AAxFD,8CAAuC;AACvC,yDAQ+B;AAC/B,oCAAgE;AAChE,gCAAuC;AACvC,4CAAgD;AAEhD,KAAK,UAAU,wBAAwB,CACrC,MAA4B,EAC5B,iBAA0B;IAE1B,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,QAAQ,CAC1C,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,+BAAe,CAAC,SAAS,CAAC,EACnD,yBAAS,EACT,8CAA8B,CAC/B,CAAC;IAEF,IAAI,CAAC,CAAC,MAAM,IAAA,yBAAiB,EAAC,MAAM,EAAE,UAAU,EAAE,yBAAyB,CAAC,CAAC,EAAE,CAAC;QAC9E,OAAO;IACT,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,KAAK,CACrE,UAAU,CACX,CAAC;IAEF,wEAAwE;IACxE,MAAM,SAAS,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CACpE,MAAM,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CACrC,CAAC;IAEF,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CACb,4DAA4D,CAC7D,CAAC;IACJ,CAAC;IAED,MAAM,WAAW,GAAG,SAAS,CAAC,OAAO,CAAC,YAAY,CAAC;IACnD,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC;IAC/C,sFAAsF;IACtF,4FAA4F;IAC5F,MAAM,eAAe,GAAG,MAAM,IAAA,yBAAiB,EAAC,UAAU,EAAE,WAAW,CAAC,CAAC;IAEzE,MAAM,SAAS,GAAG,IAAI,WAAE,CAAC,SAAS,CAAC,UAAU,CAAC,sBAAsB,CAAC,QAAQ,EAAE,CAAC,CAAC;IAEjF,2EAA2E;IAC3E,2EAA2E;IAC3E,uEAAuE;IACvE,MAAM,UAAU,GAAG,MAAM,MAAM,CAAC,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,KAAK,CACvE,MAAM,CAAC,SAAS,CAAC,SAAS,CAAC,UAAU,CAAC,CACvC,CAAC;IACF,MAAM,OAAO,GAAG,IAAI,IAAI,CACtB,UAAU,CAAC,MAAM,CAAC,sBAAsB,CAAC,QAAQ,EAAE,GAAG,IAAI,CAC3D,CAAC;IACF,MAAM,KAAK,GAAG,IAAI,IAAI,EAAE,CAAC;IACzB,MAAM,QAAQ,GAAG,MAAM,IAAA,mBAAa,EAAC,CAAC,4BAAgB,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;IAEzE,iDAAiD;IACjD,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,IAAA,4BAAY,EAAC,IAAI,EAAE,6BAAa,CAAC,CAAC,CAAC;IAElF,MAAM,aAAa,GAAG,WAAE,CAAC,GAAG,CAAC,eAAe,EAAE,UAAU,CAAC,CAAC;IAE1D,MAAM,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IAChD,MAAM,YAAY,GAAG,UAAU,CAAC,EAAE,CAAC,IAAI,WAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,WAAE,CAAC,CAAC,CAAC,CAAC;IAEvE,OAAO,CAAC,GAAG,CAAC,qBAAqB,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC/D,OAAO,CAAC,GAAG,CAAC,wBAAwB,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;IAC7D,OAAO,CAAC,GAAG,CAAC,uBAAuB,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC;IAE/D,MAAM,MAAM,CAAC,uBAAuB,CAClC,UAAU,EACV,YAAY,EACZ,iBAAiB,CAClB,CAAC;AACJ,CAAC;AAEM,KAAK,UAAU,2BAA2B,CAC/C,IAAmB,EACnB,iBAA0B;IAE1B,MAAM,MAAM,GAAG,IAAI,oCAAoB,CAAC,IAAI,EAAE,+BAAe,CAAC,SAAS,CAAC,CAAC;IACzE,MAAM,wBAAwB,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAC5D,CAAC"}
|