@perena/bankineco-services 1.0.16 → 1.0.18
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/api/yieldApi.d.ts +4 -2
- package/dist/api/yieldApi.d.ts.map +1 -1
- package/dist/api/yieldApi.js +23 -6
- package/dist/api/yieldApi.js.map +1 -1
- package/dist/constants.d.ts +3 -4
- package/dist/constants.d.ts.map +1 -1
- package/dist/constants.js +4 -5
- package/dist/constants.js.map +1 -1
- package/dist/utils/oracle.d.ts.map +1 -1
- package/dist/utils/oracle.js +3 -3
- package/dist/utils/oracle.js.map +1 -1
- package/package.json +1 -1
package/dist/api/yieldApi.d.ts
CHANGED
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
export declare function dateToStr(date: Date): string;
|
|
2
|
+
export declare function roundToNextUtcMidnight(date: Date): Date;
|
|
1
3
|
interface CreateAccountParams {
|
|
2
4
|
name: string;
|
|
3
5
|
type: string;
|
|
@@ -8,7 +10,7 @@ export declare function createAccount(params: CreateAccountParams): Promise<any>
|
|
|
8
10
|
interface AddCashflowUpdateParams {
|
|
9
11
|
accountName: string;
|
|
10
12
|
amount: number;
|
|
11
|
-
date
|
|
13
|
+
date: Date;
|
|
12
14
|
description?: string;
|
|
13
15
|
password: string;
|
|
14
16
|
cashflowType: "deposit" | "withdraw";
|
|
@@ -50,6 +52,6 @@ export interface AccountYieldResponse {
|
|
|
50
52
|
apr_used: number;
|
|
51
53
|
calculation_log: YieldCalculationLog[];
|
|
52
54
|
}
|
|
53
|
-
export declare function getYield(accountName: string, start?: Date): Promise<AccountYieldResponse>;
|
|
55
|
+
export declare function getYield(accountName: string, start?: Date, end?: Date): Promise<AccountYieldResponse>;
|
|
54
56
|
export {};
|
|
55
57
|
//# sourceMappingURL=yieldApi.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yieldApi.d.ts","sourceRoot":"","sources":["../../src/api/yieldApi.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"yieldApi.d.ts","sourceRoot":"","sources":["../../src/api/yieldApi.ts"],"names":[],"mappings":"AA6BA,wBAAgB,SAAS,CAAC,IAAI,EAAE,IAAI,UAEnC;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,IAAI,GAAG,IAAI,CAUvD;AAED,UAAU,mBAAmB;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,wBAAsB,aAAa,CAAC,MAAM,EAAE,mBAAmB,gBAO9D;AAED,UAAU,uBAAuB;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,SAAS,GAAG,UAAU,CAAC;CACtC;AAED,wBAAsB,iBAAiB,CAAC,MAAM,EAAE,uBAAuB,gBAgBtE;AAED,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,gBAErD;AAED,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,IAAI,CAAC;CACb;AAED,wBAAsB,UAAU,CAC9B,WAAW,EAAE,MAAM,EACnB,MAAM,CAAC,EAAE,IAAI,GACZ,OAAO,CAAC,sBAAsB,CAAC,CAQjC;AAED,MAAM,WAAW,mBAAmB;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;IACjB,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,mBAAmB,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,OAAO,EAAE;QACP,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,UAAU,EAAE,IAAI,CAAC;QACjB,UAAU,EAAE,IAAI,CAAC;KAClB,CAAC;IACF,WAAW,EAAE,MAAM,CAAC;IACpB,gBAAgB,EAAE,MAAM,CAAC;IACzB,aAAa,EAAE,IAAI,CAAC;IACpB,WAAW,EAAE,IAAI,CAAC;IAClB,mBAAmB,EAAE,MAAM,CAAC;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,eAAe,EAAE,mBAAmB,EAAE,CAAC;CACxC;AAED,wBAAsB,QAAQ,CAC5B,WAAW,EAAE,MAAM,EACnB,KAAK,CAAC,EAAE,IAAI,EACZ,GAAG,CAAC,EAAE,IAAI,GACT,OAAO,CAAC,oBAAoB,CAAC,CAS/B"}
|
package/dist/api/yieldApi.js
CHANGED
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.dateToStr = dateToStr;
|
|
4
|
+
exports.roundToNextUtcMidnight = roundToNextUtcMidnight;
|
|
3
5
|
exports.createAccount = createAccount;
|
|
4
6
|
exports.addCashflowUpdate = addCashflowUpdate;
|
|
5
7
|
exports.getCashflows = getCashflows;
|
|
6
8
|
exports.getBalance = getBalance;
|
|
7
9
|
exports.getYield = getYield;
|
|
10
|
+
const constants_1 = require("../constants");
|
|
8
11
|
const YIELD_API_BASE = "https://yield-tracker.perena.org";
|
|
9
12
|
async function yieldApiReq(endpoint, reqType, bodyData) {
|
|
10
13
|
const response = await fetch(`${YIELD_API_BASE}/${endpoint}`, {
|
|
@@ -19,6 +22,16 @@ async function yieldApiReq(endpoint, reqType, bodyData) {
|
|
|
19
22
|
}
|
|
20
23
|
return await response.json();
|
|
21
24
|
}
|
|
25
|
+
function dateToStr(date) {
|
|
26
|
+
return date.toISOString().split(".")[0] + "Z";
|
|
27
|
+
}
|
|
28
|
+
function roundToNextUtcMidnight(date) {
|
|
29
|
+
// Round down to 00:00 UTC of the given date
|
|
30
|
+
const utcMidnight = new Date(Date.UTC(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate()));
|
|
31
|
+
// Add 24 hours (1 day)
|
|
32
|
+
const nextUtcMidnight = new Date(utcMidnight.getTime() + 24 * 60 * 60 * 1000);
|
|
33
|
+
return nextUtcMidnight;
|
|
34
|
+
}
|
|
22
35
|
async function createAccount(params) {
|
|
23
36
|
return await yieldApiReq("accounts/new", "POST", {
|
|
24
37
|
name: params.name,
|
|
@@ -28,11 +41,14 @@ async function createAccount(params) {
|
|
|
28
41
|
});
|
|
29
42
|
}
|
|
30
43
|
async function addCashflowUpdate(params) {
|
|
44
|
+
if (params.accountName === constants_1.LITTLE_ENGINE_PROD_ACCOUNT ||
|
|
45
|
+
params.accountName === constants_1.LITTLE_ENGINE_TEST_ACCOUNT ||
|
|
46
|
+
params.accountName === constants_1.TREASURY_ACCOUNT) {
|
|
47
|
+
params.date = roundToNextUtcMidnight(params.date);
|
|
48
|
+
}
|
|
31
49
|
return await yieldApiReq(`accounts/${params.accountName}/cashflows`, "POST", {
|
|
32
50
|
amount: params.cashflowType === "deposit" ? params.amount : params.amount * -1,
|
|
33
|
-
timestamp: params.date
|
|
34
|
-
? params.date.toISOString().split(".")[0] + "Z"
|
|
35
|
-
: undefined,
|
|
51
|
+
timestamp: params.date ? dateToStr(params.date) : undefined,
|
|
36
52
|
description: params.description,
|
|
37
53
|
password: params.password,
|
|
38
54
|
});
|
|
@@ -42,10 +58,11 @@ async function getCashflows(accountName) {
|
|
|
42
58
|
}
|
|
43
59
|
async function getBalance(accountName, atTime) {
|
|
44
60
|
return (await yieldApiReq(`accounts/${accountName}/balance` +
|
|
45
|
-
(atTime ? `?as_of=${atTime
|
|
61
|
+
(atTime ? `?as_of=${dateToStr(atTime)}` : ""), "GET")).data;
|
|
46
62
|
}
|
|
47
|
-
async function getYield(accountName, start) {
|
|
63
|
+
async function getYield(accountName, start, end) {
|
|
48
64
|
return (await yieldApiReq(`accounts/${accountName}/yield` +
|
|
49
|
-
(start ? `?start=${start
|
|
65
|
+
(start ? `?start=${dateToStr(start)}` : "") +
|
|
66
|
+
(end ? `?end=${dateToStr(end)}` : ""), "GET")).data;
|
|
50
67
|
}
|
|
51
68
|
//# sourceMappingURL=yieldApi.js.map
|
package/dist/api/yieldApi.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"yieldApi.js","sourceRoot":"","sources":["../../src/api/yieldApi.ts"],"names":[],"mappings":";;AA6BA,sCAOC;AAWD,
|
|
1
|
+
{"version":3,"file":"yieldApi.js","sourceRoot":"","sources":["../../src/api/yieldApi.ts"],"names":[],"mappings":"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"}
|
package/dist/constants.d.ts
CHANGED
|
@@ -1,10 +1,9 @@
|
|
|
1
1
|
import { Environment } from "@perena/bankineco-sdk";
|
|
2
|
-
export declare const DRIFT_REPORTED_YIELD_FACTOR = 0.95;
|
|
3
2
|
export declare const LITTLE_ENGINE_TEST_ACCOUNT = "little-engine-test";
|
|
4
|
-
export declare const LITTLE_ENGINE_PROD_ACCOUNT = "little-engine-
|
|
3
|
+
export declare const LITTLE_ENGINE_PROD_ACCOUNT = "little-engine-prod2";
|
|
5
4
|
export declare const LE_ACCOUNT: Record<Environment, string>;
|
|
6
5
|
export declare const TEST_LE_CUSTODIAN = "64nZHh2DBKEkH7PC1Vo7DHRE6k5MohcnqcDyM6evwEn8";
|
|
7
|
-
export declare const PROD_LE_CUSTODIAN = "
|
|
6
|
+
export declare const PROD_LE_CUSTODIAN = "58ubrW9j4SJ28oYoJauGbnSbCCyycrFiQNV6zu3XX5HZ";
|
|
8
7
|
export declare const LE_CUSTODIAN: Record<Environment, string>;
|
|
9
|
-
export declare const TREASURY_ACCOUNT = "treasury-account-
|
|
8
|
+
export declare const TREASURY_ACCOUNT = "treasury-account-final2";
|
|
10
9
|
//# sourceMappingURL=constants.d.ts.map
|
package/dist/constants.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEpD,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.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,UAAU,EAAE,MAAM,CAAC,WAAW,EAAE,MAAM,CAIlD,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;AAEF,eAAO,MAAM,gBAAgB,4BAA4B,CAAC"}
|
package/dist/constants.js
CHANGED
|
@@ -1,20 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.TREASURY_ACCOUNT = exports.LE_CUSTODIAN = exports.PROD_LE_CUSTODIAN = exports.TEST_LE_CUSTODIAN = exports.LE_ACCOUNT = exports.LITTLE_ENGINE_PROD_ACCOUNT = exports.LITTLE_ENGINE_TEST_ACCOUNT =
|
|
4
|
-
exports.DRIFT_REPORTED_YIELD_FACTOR = 0.95;
|
|
3
|
+
exports.TREASURY_ACCOUNT = exports.LE_CUSTODIAN = exports.PROD_LE_CUSTODIAN = exports.TEST_LE_CUSTODIAN = exports.LE_ACCOUNT = exports.LITTLE_ENGINE_PROD_ACCOUNT = exports.LITTLE_ENGINE_TEST_ACCOUNT = void 0;
|
|
5
4
|
exports.LITTLE_ENGINE_TEST_ACCOUNT = "little-engine-test";
|
|
6
|
-
exports.LITTLE_ENGINE_PROD_ACCOUNT = "little-engine-
|
|
5
|
+
exports.LITTLE_ENGINE_PROD_ACCOUNT = "little-engine-prod2";
|
|
7
6
|
exports.LE_ACCOUNT = {
|
|
8
7
|
local: "",
|
|
9
8
|
test: exports.LITTLE_ENGINE_TEST_ACCOUNT,
|
|
10
9
|
prod: exports.LITTLE_ENGINE_PROD_ACCOUNT,
|
|
11
10
|
};
|
|
12
11
|
exports.TEST_LE_CUSTODIAN = "64nZHh2DBKEkH7PC1Vo7DHRE6k5MohcnqcDyM6evwEn8"; // test-custodian.json
|
|
13
|
-
exports.PROD_LE_CUSTODIAN = "
|
|
12
|
+
exports.PROD_LE_CUSTODIAN = "58ubrW9j4SJ28oYoJauGbnSbCCyycrFiQNV6zu3XX5HZ";
|
|
14
13
|
exports.LE_CUSTODIAN = {
|
|
15
14
|
local: "",
|
|
16
15
|
test: exports.TEST_LE_CUSTODIAN,
|
|
17
16
|
prod: exports.PROD_LE_CUSTODIAN,
|
|
18
17
|
};
|
|
19
|
-
exports.TREASURY_ACCOUNT = "treasury-account-
|
|
18
|
+
exports.TREASURY_ACCOUNT = "treasury-account-final2";
|
|
20
19
|
//# sourceMappingURL=constants.js.map
|
package/dist/constants.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAEa,QAAA,
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAEa,QAAA,0BAA0B,GAAG,oBAAoB,CAAC;AAClD,QAAA,0BAA0B,GAAG,qBAAqB,CAAC;AACnD,QAAA,UAAU,GAAgC;IACrD,KAAK,EAAE,EAAE;IACT,IAAI,EAAE,kCAA0B;IAChC,IAAI,EAAE,kCAA0B;CACjC,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;AAEW,QAAA,gBAAgB,GAAG,yBAAyB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../src/utils/oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAWjB,MAAM,uBAAuB,CAAC;AAK/B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../src/utils/oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAWjB,MAAM,uBAAuB,CAAC;AAK/B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAOvC,wBAAsB,YAAY,CAAC,eAAe,EAAE,MAAM,iBAazD;AAED,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,gBAAgB,EAC3B,UAAU,EAAE,SAAS,EACrB,MAAM,EAAE,SAAS,EACjB,aAAa,YAAmB,eAsBjC;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,iBAoE9B"}
|
package/dist/utils/oracle.js
CHANGED
|
@@ -8,7 +8,6 @@ const bankineco_sdk_1 = require("@perena/bankineco-sdk");
|
|
|
8
8
|
const spl_token_1 = require("@solana/spl-token");
|
|
9
9
|
const web3_js_1 = require("@solana/web3.js");
|
|
10
10
|
const drift_1 = require("./drift");
|
|
11
|
-
const constants_1 = require("../constants");
|
|
12
11
|
async function oracleReport(signerKeypairFp) {
|
|
13
12
|
const signer = (0, bankineco_sdk_1.readKeypairFile)(signerKeypairFp).publicKey;
|
|
14
13
|
const url = {
|
|
@@ -28,7 +27,7 @@ async function getPendingDriftYield(bankineco, vaultState, eyMint, eyMintProgram
|
|
|
28
27
|
const pendingYield = liquidityInDrift.sub(totalExternalLiquidity);
|
|
29
28
|
drift.unsubscribe();
|
|
30
29
|
drift.unsubscribeUsers();
|
|
31
|
-
return pendingYield
|
|
30
|
+
return pendingYield;
|
|
32
31
|
}
|
|
33
32
|
async function getOracleStateInfo(bankineco, vaultState, yieldingMintDecimals) {
|
|
34
33
|
const oracleState = bankineco.oraclePDA(vaultState);
|
|
@@ -60,9 +59,10 @@ async function updateYieldInfoIfNeeded(bankineco, vaultState, impliedYield, repo
|
|
|
60
59
|
const yieldingMint = vaultInfo.config.yieldingTokenMint;
|
|
61
60
|
const yieldingMintDecimals = vaultInfo.config.yieldingMintDecimals;
|
|
62
61
|
impliedYield = impliedYield.muln(1 - reportingDiscount);
|
|
62
|
+
const impliedYieldWithPerformanceFee = impliedYield.sub(impliedYield.muln(vaultInfo.config.performanceFeeBps).divn(10000));
|
|
63
63
|
const diffMs = Date.now() - lastUpdatedTs.toNumber() * 1000;
|
|
64
64
|
const hoursSinceLastUpdate = diffMs / (1000 * 60 * 60);
|
|
65
|
-
const impliedUiYield = (0, bankineco_sdk_1.toUiAmount)(
|
|
65
|
+
const impliedUiYield = (0, bankineco_sdk_1.toUiAmount)(impliedYieldWithPerformanceFee, yieldingMintDecimals);
|
|
66
66
|
console.log("Current oracle index: ", associatedOracleIdx);
|
|
67
67
|
console.log("All reported yield: ", currentOracleUiYields);
|
|
68
68
|
console.log("Current reported yield: ", currentReportedUiYield);
|
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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"}
|