@perena/bankineco-services 1.0.9 → 1.0.11

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.
Files changed (39) hide show
  1. package/dist/api/index.d.ts +2 -0
  2. package/dist/api/index.d.ts.map +1 -0
  3. package/dist/api/index.js +18 -0
  4. package/dist/api/index.js.map +1 -0
  5. package/dist/api/yieldApi.d.ts +55 -0
  6. package/dist/api/yieldApi.d.ts.map +1 -0
  7. package/dist/api/yieldApi.js +51 -0
  8. package/dist/api/yieldApi.js.map +1 -0
  9. package/dist/constants.d.ts +7 -0
  10. package/dist/constants.d.ts.map +1 -1
  11. package/dist/constants.js +15 -1
  12. package/dist/constants.js.map +1 -1
  13. package/dist/index.d.ts +1 -0
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +1 -0
  16. package/dist/index.js.map +1 -1
  17. package/dist/oracle/index.d.ts +1 -0
  18. package/dist/oracle/index.d.ts.map +1 -1
  19. package/dist/oracle/index.js +1 -0
  20. package/dist/oracle/index.js.map +1 -1
  21. package/dist/oracle/updateAPIPendingYield.d.ts +10 -0
  22. package/dist/oracle/updateAPIPendingYield.d.ts.map +1 -0
  23. package/dist/oracle/updateAPIPendingYield.js +17 -0
  24. package/dist/oracle/updateAPIPendingYield.js.map +1 -0
  25. package/dist/oracle/updateDriftVaultPendingYield.d.ts.map +1 -1
  26. package/dist/oracle/updateDriftVaultPendingYield.js +2 -40
  27. package/dist/oracle/updateDriftVaultPendingYield.js.map +1 -1
  28. package/dist/oracle/updateLEPendingYield.d.ts +3 -0
  29. package/dist/oracle/updateLEPendingYield.d.ts.map +1 -0
  30. package/dist/oracle/updateLEPendingYield.js +16 -0
  31. package/dist/oracle/updateLEPendingYield.js.map +1 -0
  32. package/dist/oracle/updateSeedLPPrice.d.ts.map +1 -1
  33. package/dist/oracle/updateSeedLPPrice.js +2 -14
  34. package/dist/oracle/updateSeedLPPrice.js.map +1 -1
  35. package/dist/utils/oracle.d.ts +10 -0
  36. package/dist/utils/oracle.d.ts.map +1 -1
  37. package/dist/utils/oracle.js +57 -0
  38. package/dist/utils/oracle.js.map +1 -1
  39. package/package.json +2 -2
@@ -0,0 +1,2 @@
1
+ export * from "./yieldApi";
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./yieldApi"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/api/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B"}
@@ -0,0 +1,55 @@
1
+ interface CreateAccountParams {
2
+ name: string;
3
+ type: string;
4
+ password: string;
5
+ description?: string;
6
+ }
7
+ export declare function createAccount(params: CreateAccountParams): Promise<any>;
8
+ interface AddCashflowUpdateParams {
9
+ accountName: string;
10
+ amount: number;
11
+ date?: Date;
12
+ description?: string;
13
+ password: string;
14
+ cashflowType: "deposit" | "withdraw";
15
+ }
16
+ export declare function addCashflowUpdate(params: AddCashflowUpdateParams): Promise<any>;
17
+ export declare function getCashflows(accountName: string): Promise<any>;
18
+ export interface AccountBalanceResponse {
19
+ account_name: string;
20
+ account_type: string;
21
+ apr: number;
22
+ balance: number;
23
+ as_of: Date;
24
+ }
25
+ export declare function getBalance(accountName: string, atTime?: Date): Promise<AccountBalanceResponse>;
26
+ export interface YieldCalculationLog {
27
+ segment_number: number;
28
+ start_date: string;
29
+ end_date: string;
30
+ duration_seconds: number;
31
+ cashflow_change: number;
32
+ principal_balance: number;
33
+ segment_yield: number;
34
+ cumulative_yield: number;
35
+ calculation_formula: string;
36
+ }
37
+ export interface AccountYieldResponse {
38
+ account: {
39
+ name: string;
40
+ type: string;
41
+ description?: string;
42
+ created_at: Date;
43
+ updated_at: Date;
44
+ };
45
+ total_yield: number;
46
+ principal_at_end: number;
47
+ accrual_start: Date;
48
+ accrual_end: Date;
49
+ time_period_seconds: number;
50
+ apr_used: number;
51
+ calculation_log: YieldCalculationLog[];
52
+ }
53
+ export declare function getYield(accountName: string, start?: Date): Promise<AccountYieldResponse>;
54
+ export {};
55
+ //# sourceMappingURL=yieldApi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yieldApi.d.ts","sourceRoot":"","sources":["../../src/api/yieldApi.ts"],"names":[],"mappings":"AAsBA,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,CAAC,EAAE,IAAI,CAAC;IACZ,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,gBAUtE;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,GACX,OAAO,CAAC,oBAAoB,CAAC,CAQ/B"}
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createAccount = createAccount;
4
+ exports.addCashflowUpdate = addCashflowUpdate;
5
+ exports.getCashflows = getCashflows;
6
+ exports.getBalance = getBalance;
7
+ exports.getYield = getYield;
8
+ const YIELD_API_BASE = "https://yield-tracker.perena.org";
9
+ async function yieldApiReq(endpoint, reqType, bodyData) {
10
+ const response = await fetch(`${YIELD_API_BASE}/${endpoint}`, {
11
+ method: reqType,
12
+ headers: {
13
+ "Content-Type": "application/json",
14
+ },
15
+ body: bodyData ? JSON.stringify(bodyData) : undefined,
16
+ });
17
+ if (!response.ok) {
18
+ throw new Error(`HTTP error! status: ${response.status}`);
19
+ }
20
+ return await response.json();
21
+ }
22
+ async function createAccount(params) {
23
+ return await yieldApiReq("accounts/new", "POST", {
24
+ name: params.name,
25
+ type: params.type,
26
+ password: params.password,
27
+ description: params.description,
28
+ });
29
+ }
30
+ async function addCashflowUpdate(params) {
31
+ return await yieldApiReq(`accounts/${params.accountName}/cashflows`, "POST", {
32
+ amount: params.cashflowType === "deposit" ? params.amount : params.amount * -1,
33
+ timestamp: params.date
34
+ ? params.date.toISOString().split(".")[0] + "Z"
35
+ : undefined,
36
+ description: params.description,
37
+ password: params.password,
38
+ });
39
+ }
40
+ async function getCashflows(accountName) {
41
+ return (await yieldApiReq(`accounts/${accountName}/cashflows`, "GET")).data;
42
+ }
43
+ async function getBalance(accountName, atTime) {
44
+ return (await yieldApiReq(`accounts/${accountName}/balance` +
45
+ (atTime ? `?as_of=${atTime.toISOString().split(".")[0] + "Z"}` : ""), "GET")).data;
46
+ }
47
+ async function getYield(accountName, start) {
48
+ return (await yieldApiReq(`accounts/${accountName}/yield` +
49
+ (start ? `?start=${start.toISOString().split(".")[0] + "Z"}` : ""), "GET")).data;
50
+ }
51
+ //# sourceMappingURL=yieldApi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"yieldApi.js","sourceRoot":"","sources":["../../src/api/yieldApi.ts"],"names":[],"mappings":";;AA6BA,sCAOC;AAWD,8CAUC;AAED,oCAEC;AAUD,gCAWC;AA+BD,4BAWC;AA5HD,MAAM,cAAc,GAAG,kCAAkC,CAAC;AAE1D,KAAK,UAAU,WAAW,CACxB,QAAgB,EAChB,OAAuB,EACvB,QAAc;IAEd,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,cAAc,IAAI,QAAQ,EAAE,EAAE;QAC5D,MAAM,EAAE,OAAO;QACf,OAAO,EAAE;YACP,cAAc,EAAE,kBAAkB;SACnC;QACD,IAAI,EAAE,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS;KACtD,CAAC,CAAC;IAEH,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;QACjB,MAAM,IAAI,KAAK,CAAC,uBAAuB,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;IAC5D,CAAC;IAED,OAAO,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;AAC/B,CAAC;AASM,KAAK,UAAU,aAAa,CAAC,MAA2B;IAC7D,OAAO,MAAM,WAAW,CAAC,cAAc,EAAE,MAAM,EAAE;QAC/C,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,IAAI,EAAE,MAAM,CAAC,IAAI;QACjB,QAAQ,EAAE,MAAM,CAAC,QAAQ;QACzB,WAAW,EAAE,MAAM,CAAC,WAAW;KAChC,CAAC,CAAC;AACL,CAAC;AAWM,KAAK,UAAU,iBAAiB,CAAC,MAA+B;IACrE,OAAO,MAAM,WAAW,CAAC,YAAY,MAAM,CAAC,WAAW,YAAY,EAAE,MAAM,EAAE;QAC3E,MAAM,EACJ,MAAM,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QACxE,SAAS,EAAE,MAAM,CAAC,IAAI;YACpB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG;YAC/C,CAAC,CAAC,SAAS;QACb,WAAW,EAAE,MAAM,CAAC,WAAW;QAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ;KAC1B,CAAC,CAAC;AACL,CAAC;AAEM,KAAK,UAAU,YAAY,CAAC,WAAmB;IACpD,OAAO,CAAC,MAAM,WAAW,CAAC,YAAY,WAAW,YAAY,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC;AAC9E,CAAC;AAUM,KAAK,UAAU,UAAU,CAC9B,WAAmB,EACnB,MAAa;IAEb,OAAO,CACL,MAAM,WAAW,CACf,YAAY,WAAW,UAAU;QAC/B,CAAC,MAAM,CAAC,CAAC,CAAC,UAAU,MAAM,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACtE,KAAK,CACN,CACF,CAAC,IAAI,CAAC;AACT,CAAC;AA+BM,KAAK,UAAU,QAAQ,CAC5B,WAAmB,EACnB,KAAY;IAEZ,OAAO,CACL,MAAM,WAAW,CACf,YAAY,WAAW,QAAQ;QAC7B,CAAC,KAAK,CAAC,CAAC,CAAC,UAAU,KAAK,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EACpE,KAAK,CACN,CACF,CAAC,IAAI,CAAC;AACT,CAAC"}
@@ -1,2 +1,9 @@
1
+ import { Environment } from "@perena/bankineco-sdk";
1
2
  export declare const DRIFT_REPORTED_YIELD_FACTOR = 0.95;
3
+ export declare const LITTLE_ENGINE_TEST_ACCOUNT = "little-engine-test";
4
+ export declare const LITTLE_ENGINE_PROD_ACCOUNT = "little-engine-prod";
5
+ export declare const LE_ACCOUNT: Record<Environment, string>;
6
+ export declare const TEST_LE_CUSTODIAN = "64nZHh2DBKEkH7PC1Vo7DHRE6k5MohcnqcDyM6evwEn8";
7
+ export declare const PROD_LE_CUSTODIAN = "ArFxoZn99brXUJPmW1H9GxgP2sF7EvLtDNBpN8jXcEs3";
8
+ export declare const LE_CUSTODIAN: Record<Environment, string>;
2
9
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,2BAA2B,OAAO,CAAC"}
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,2BAA2B,OAAO,CAAC;AAEhD,eAAO,MAAM,0BAA0B,uBAAuB,CAAC;AAC/D,eAAO,MAAM,0BAA0B,uBAAuB,CAAC;AAC/D,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"}
package/dist/constants.js CHANGED
@@ -1,5 +1,19 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DRIFT_REPORTED_YIELD_FACTOR = void 0;
3
+ exports.LE_CUSTODIAN = exports.PROD_LE_CUSTODIAN = exports.TEST_LE_CUSTODIAN = exports.LE_ACCOUNT = exports.LITTLE_ENGINE_PROD_ACCOUNT = exports.LITTLE_ENGINE_TEST_ACCOUNT = exports.DRIFT_REPORTED_YIELD_FACTOR = void 0;
4
4
  exports.DRIFT_REPORTED_YIELD_FACTOR = 0.95;
5
+ exports.LITTLE_ENGINE_TEST_ACCOUNT = "little-engine-test";
6
+ exports.LITTLE_ENGINE_PROD_ACCOUNT = "little-engine-prod";
7
+ exports.LE_ACCOUNT = {
8
+ local: "",
9
+ test: exports.LITTLE_ENGINE_TEST_ACCOUNT,
10
+ prod: exports.LITTLE_ENGINE_PROD_ACCOUNT,
11
+ };
12
+ exports.TEST_LE_CUSTODIAN = "64nZHh2DBKEkH7PC1Vo7DHRE6k5MohcnqcDyM6evwEn8"; // test-custodian.json
13
+ exports.PROD_LE_CUSTODIAN = "ArFxoZn99brXUJPmW1H9GxgP2sF7EvLtDNBpN8jXcEs3";
14
+ exports.LE_CUSTODIAN = {
15
+ local: "",
16
+ test: exports.TEST_LE_CUSTODIAN,
17
+ prod: exports.PROD_LE_CUSTODIAN,
18
+ };
5
19
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAAa,QAAA,2BAA2B,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAEa,QAAA,2BAA2B,GAAG,IAAI,CAAC;AAEnC,QAAA,0BAA0B,GAAG,oBAAoB,CAAC;AAClD,QAAA,0BAA0B,GAAG,oBAAoB,CAAC;AAClD,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"}
package/dist/index.d.ts CHANGED
@@ -1,4 +1,5 @@
1
1
  export * from "./oracle";
2
2
  export * from "./utils";
3
3
  export * from "./constants";
4
+ export * from "./api";
4
5
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC"}
package/dist/index.js CHANGED
@@ -17,4 +17,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./oracle"), exports);
18
18
  __exportStar(require("./utils"), exports);
19
19
  __exportStar(require("./constants"), exports);
20
+ __exportStar(require("./api"), exports);
20
21
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,0CAAwB;AACxB,8CAA4B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAAyB;AACzB,0CAAwB;AACxB,8CAA4B;AAC5B,wCAAsB"}
@@ -1,3 +1,4 @@
1
1
  export * from "./updateSeedLPPrice";
2
+ export * from "./updateLEPendingYield";
2
3
  export * from "./updateDriftVaultPendingYield";
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/oracle/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,gCAAgC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/oracle/index.ts"],"names":[],"mappings":"AAAA,cAAc,qBAAqB,CAAC;AACpC,cAAc,wBAAwB,CAAC;AACvC,cAAc,gCAAgC,CAAC"}
@@ -15,5 +15,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
15
15
  };
16
16
  Object.defineProperty(exports, "__esModule", { value: true });
17
17
  __exportStar(require("./updateSeedLPPrice"), exports);
18
+ __exportStar(require("./updateLEPendingYield"), exports);
18
19
  __exportStar(require("./updateDriftVaultPendingYield"), exports);
19
20
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/oracle/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,iEAA+C"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/oracle/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sDAAoC;AACpC,yDAAuC;AACvC,iEAA+C"}
@@ -0,0 +1,10 @@
1
+ import { Environment } from "@perena/bankineco-sdk";
2
+ import { PublicKey } from "@solana/web3.js";
3
+ export interface APIYieldParams {
4
+ yieldingMint: PublicKey;
5
+ yieldingMintDecimals: number;
6
+ yieldingContractIndex: number;
7
+ accountName: string;
8
+ }
9
+ export declare function runUpdateAPIPendingYield(env: Environment, signerKeypairFp: string, rpcUrl: string, params: APIYieldParams): Promise<void>;
10
+ //# sourceMappingURL=updateAPIPendingYield.d.ts.map
@@ -0,0 +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;AAK5C,MAAM,WAAW,cAAc;IAC7B,YAAY,EAAE,SAAS,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB;AAiBD,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,WAAW,EAChB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,cAAc,iBAIvB"}
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runUpdateAPIPendingYield = runUpdateAPIPendingYield;
4
+ const bankineco_sdk_1 = require("@perena/bankineco-sdk");
5
+ const utils_1 = require("../utils");
6
+ const api_1 = require("../api");
7
+ const anchor_1 = require("@coral-xyz/anchor");
8
+ async function updateAPIPendingYield(bankineco, params) {
9
+ const vaultState = bankineco.vaultPDA(bankineco.bankPDA(bankineco_sdk_1.USD_STAR_BANK_INDEX), params.yieldingMint, params.yieldingContractIndex);
10
+ const impliedYield = new anchor_1.BN((await (0, api_1.getYield)(params.accountName)).total_yield);
11
+ await (0, utils_1.updateYieldInfoIfNeeded)(bankineco, vaultState, impliedYield);
12
+ }
13
+ async function runUpdateAPIPendingYield(env, signerKeypairFp, rpcUrl, params) {
14
+ const [bankineco] = (0, bankineco_sdk_1.getBankineco)(env, rpcUrl, undefined, signerKeypairFp);
15
+ await updateAPIPendingYield(bankineco, params);
16
+ }
17
+ //# sourceMappingURL=updateAPIPendingYield.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateAPIPendingYield.js","sourceRoot":"","sources":["../../src/oracle/updateAPIPendingYield.ts"],"names":[],"mappings":";;AAiCA,4DAQC;AAzCD,yDAK+B;AAE/B,oCAAmD;AACnD,gCAAkC;AAClC,8CAAuC;AASvC,KAAK,UAAU,qBAAqB,CAClC,SAA2B,EAC3B,MAAsB;IAEtB,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,YAAY,GAAG,IAAI,WAAE,CAAC,CAAC,MAAM,IAAA,cAAQ,EAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;IAE9E,MAAM,IAAA,+BAAuB,EAAC,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;AACrE,CAAC;AAEM,KAAK,UAAU,wBAAwB,CAC5C,GAAgB,EAChB,eAAuB,EACvB,MAAc,EACd,MAAsB;IAEtB,MAAM,CAAC,SAAS,CAAC,GAAG,IAAA,4BAAY,EAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAC1E,MAAM,qBAAqB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AACjD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"updateDriftVaultPendingYield.d.ts","sourceRoot":"","sources":["../../src/oracle/updateDriftVaultPendingYield.ts"],"names":[],"mappings":"AACA,OAAO,EAIL,WAAW,EAUZ,MAAM,uBAAuB,CAAC;AAgG/B,wBAAsB,+BAA+B,CACnD,GAAG,EAAE,WAAW,EAChB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,iBAQf"}
1
+ {"version":3,"file":"updateDriftVaultPendingYield.d.ts","sourceRoot":"","sources":["../../src/oracle/updateDriftVaultPendingYield.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,WAAW,EAQZ,MAAM,uBAAuB,CAAC;AAgC/B,wBAAsB,+BAA+B,CACnD,GAAG,EAAE,WAAW,EAChB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,iBAIf"}
@@ -1,56 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.runUpdateDriftVaultPendingYield = runUpdateDriftVaultPendingYield;
4
- const anchor_1 = require("@coral-xyz/anchor");
5
4
  const bankineco_sdk_1 = require("@perena/bankineco-sdk");
6
5
  const utils_1 = require("../utils");
7
6
  const web3_js_1 = require("@solana/web3.js");
8
7
  async function updateDriftVaultPendingYield(bankineco, signerKeypairFp) {
9
8
  await (0, utils_1.oracleReport)(signerKeypairFp);
10
9
  const yieldingMint = new web3_js_1.PublicKey(bankineco_sdk_1.USDC_MINT);
11
- const decimals = bankineco_sdk_1.USDC_DECIMALS;
12
10
  const vaultState = bankineco.vaultPDA(bankineco.bankPDA(bankineco_sdk_1.USD_STAR_BANK_INDEX), yieldingMint, bankineco_sdk_1.DRIFT_USDC_CONTRACT_INDEX);
13
- const oracleState = bankineco.oraclePDA(vaultState);
14
- const vaultInfo = await bankineco.pg.account.vaultGenState.fetch(vaultState);
15
- const oracleInfo = await bankineco.pg.account.oracleGenState.fetch(oracleState);
16
- let associatedOracleIdx = oracleInfo.data.oracleRegistry.findIndex((x) => bankineco.provider.wallet.publicKey.equals(x));
17
- const signerIsRegisteredOracle = associatedOracleIdx !== -1;
18
- if (!signerIsRegisteredOracle) {
19
- // Just to test the logic afterwards, no TX will be sent
20
- associatedOracleIdx = 1;
21
- }
22
- const currentOracleUiYields = oracleInfo.data.oraclePendingYield.map((x) => (0, bankineco_sdk_1.toUiAmount)(x, decimals));
23
- const currentReportedUiYield = (0, bankineco_sdk_1.toUiAmount)(oracleInfo.data.oraclePendingYield[associatedOracleIdx], decimals);
24
- const lastUpdatedTs = oracleInfo.data.oracleLastTs[associatedOracleIdx];
25
11
  const impliedYield = await (0, utils_1.getPendingDriftYield)(bankineco, vaultState, yieldingMint);
26
- const impliedUiYield = (0, bankineco_sdk_1.toUiAmount)(impliedYield, bankineco_sdk_1.USDC_DECIMALS);
27
- const diffMs = Date.now() - lastUpdatedTs.toNumber() * 1000;
28
- const hoursSinceLastUpdate = diffMs / (1000 * 60 * 60);
29
- console.log("Current oracle index: ", associatedOracleIdx);
30
- console.log("All reported yield: ", currentOracleUiYields);
31
- console.log("Current reported yield: ", currentReportedUiYield);
32
- console.log("Hours since last update: ", hoursSinceLastUpdate);
33
- console.log("Implied pending yield: ", impliedUiYield);
34
- const impliedYieldPct = impliedUiYield /
35
- (0, bankineco_sdk_1.toUiAmount)(vaultInfo.accounting.yieldingTvl, bankineco_sdk_1.NORMALIZED_BASE_UNITS);
36
- const currYieldPct = currentReportedUiYield /
37
- (0, bankineco_sdk_1.toUiAmount)(vaultInfo.accounting.yieldingTvl, bankineco_sdk_1.NORMALIZED_BASE_UNITS);
38
- const priceDiffBps = Math.floor((impliedYieldPct - currYieldPct) * 100000);
39
- if (priceDiffBps > 2 || hoursSinceLastUpdate >= 23) {
40
- console.log("Updating yield to ", impliedUiYield, " vs. a yield of ", currentReportedUiYield);
41
- if (signerIsRegisteredOracle) {
42
- console.log("Sending yield update...");
43
- const sig = await (0, bankineco_sdk_1.signSendAndConfirm)(bankineco.connection, await bankineco.updateYieldingInfo(bankineco_sdk_1.USD_STAR_BANK_INDEX, vaultState, bankineco.provider.publicKey, yieldingMint, impliedYield), [bankineco.provider.wallet]);
44
- console.log("Success broadcasting yield, tx ", sig);
45
- }
46
- }
47
- else {
48
- console.log("Not updating yield, contract yield is up to date");
49
- console.log("Difference in bps: ", priceDiffBps);
50
- }
12
+ await (0, utils_1.updateYieldInfoIfNeeded)(bankineco, vaultState, impliedYield);
51
13
  }
52
14
  async function runUpdateDriftVaultPendingYield(env, signerKeypairFp, rpcUrl) {
53
- const bankineco = new bankineco_sdk_1.BankinecoProgram(env, (0, bankineco_sdk_1.createAnchorProvider)(rpcUrl, new anchor_1.Wallet((0, bankineco_sdk_1.readKeypairFile)(signerKeypairFp))));
15
+ const [bankineco] = (0, bankineco_sdk_1.getBankineco)(env, rpcUrl, undefined, signerKeypairFp);
54
16
  await updateDriftVaultPendingYield(bankineco, signerKeypairFp);
55
17
  }
56
18
  //# sourceMappingURL=updateDriftVaultPendingYield.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateDriftVaultPendingYield.js","sourceRoot":"","sources":["../../src/oracle/updateDriftVaultPendingYield.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"updateDriftVaultPendingYield.js","sourceRoot":"","sources":["../../src/oracle/updateDriftVaultPendingYield.ts"],"names":[],"mappings":";;AA2CA,0EAOC;AAlDD,yDAW+B;AAC/B,oCAKkB;AAClB,6CAA4C;AAE5C,KAAK,UAAU,4BAA4B,CACzC,SAA2B,EAC3B,eAAuB;IAEvB,MAAM,IAAA,oBAAY,EAAC,eAAe,CAAC,CAAC;IAEpC,MAAM,YAAY,GAAG,IAAI,mBAAS,CAAC,yBAAS,CAAC,CAAC;IAE9C,MAAM,UAAU,GAAG,SAAS,CAAC,QAAQ,CACnC,SAAS,CAAC,OAAO,CAAC,mCAAmB,CAAC,EACtC,YAAY,EACZ,yCAAyB,CAC1B,CAAC;IAEF,MAAM,YAAY,GAAG,MAAM,IAAA,4BAAoB,EAC7C,SAAS,EACT,UAAU,EACV,YAAY,CACb,CAAC;IAEF,MAAM,IAAA,+BAAuB,EAAC,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC;AACrE,CAAC;AAEM,KAAK,UAAU,+BAA+B,CACnD,GAAgB,EAChB,eAAuB,EACvB,MAAc;IAEd,MAAM,CAAC,SAAS,CAAC,GAAG,IAAA,4BAAY,EAAC,GAAG,EAAE,MAAM,EAAE,SAAS,EAAE,eAAe,CAAC,CAAC;IAC1E,MAAM,4BAA4B,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;AACjE,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Environment } from "@perena/bankineco-sdk";
2
+ export declare function runUpdateLEPendingYield(env: Environment, signerKeypairFp: string, rpcUrl: string): Promise<void>;
3
+ //# sourceMappingURL=updateLEPendingYield.d.ts.map
@@ -0,0 +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,iBAQf"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.runUpdateLEPendingYield = runUpdateLEPendingYield;
4
+ const bankineco_sdk_1 = require("@perena/bankineco-sdk");
5
+ const updateAPIPendingYield_1 = require("./updateAPIPendingYield");
6
+ const web3_js_1 = require("@solana/web3.js");
7
+ const constants_1 = require("../constants");
8
+ async function runUpdateLEPendingYield(env, signerKeypairFp, rpcUrl) {
9
+ await (0, updateAPIPendingYield_1.runUpdateAPIPendingYield)(env, signerKeypairFp, rpcUrl, {
10
+ yieldingMint: new web3_js_1.PublicKey(bankineco_sdk_1.USDC_MINT),
11
+ yieldingMintDecimals: bankineco_sdk_1.USDC_DECIMALS,
12
+ yieldingContractIndex: bankineco_sdk_1.LITTLE_ENGINE_USDC_CONTRACT_INDEX,
13
+ accountName: constants_1.LE_ACCOUNT[env],
14
+ });
15
+ }
16
+ //# sourceMappingURL=updateLEPendingYield.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"updateLEPendingYield.js","sourceRoot":"","sources":["../../src/oracle/updateLEPendingYield.ts"],"names":[],"mappings":";;AAUA,0DAWC;AArBD,yDAK+B;AAC/B,mEAAmE;AACnE,6CAA4C;AAC5C,4CAA0C;AAEnC,KAAK,UAAU,uBAAuB,CAC3C,GAAgB,EAChB,eAAuB,EACvB,MAAc;IAEd,MAAM,IAAA,gDAAwB,EAAC,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE;QAC3D,YAAY,EAAE,IAAI,mBAAS,CAAC,yBAAS,CAAC;QACtC,oBAAoB,EAAE,6BAAa;QACnC,qBAAqB,EAAE,iDAAiC;QACxD,WAAW,EAAE,sBAAU,CAAC,GAAG,CAAC;KAC7B,CAAC,CAAC;AACL,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"updateSeedLPPrice.d.ts","sourceRoot":"","sources":["../../src/oracle/updateSeedLPPrice.ts"],"names":[],"mappings":"AAGA,OAAO,EAKL,WAAW,EAQZ,MAAM,uBAAuB,CAAC;AA+F/B,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,WAAW,EAChB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,iBAQf"}
1
+ {"version":3,"file":"updateSeedLPPrice.d.ts","sourceRoot":"","sources":["../../src/oracle/updateSeedLPPrice.ts"],"names":[],"mappings":"AAOA,OAAO,EAKL,WAAW,EAUZ,MAAM,uBAAuB,CAAC;AA8E/B,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,WAAW,EAChB,eAAe,EAAE,MAAM,EACvB,MAAM,EAAE,MAAM,iBAIf"}
@@ -2,24 +2,12 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.runUpdateSeedLPPrice = runUpdateSeedLPPrice;
4
4
  const web3_js_1 = require("@solana/web3.js");
5
- const anchor_1 = require("@coral-xyz/anchor");
6
5
  const utils_1 = require("../utils");
7
6
  const bankineco_sdk_1 = require("@perena/bankineco-sdk");
8
7
  async function updatePrice(bankineco, signerKeypairFp) {
9
8
  await (0, utils_1.oracleReport)(signerKeypairFp);
10
9
  const vaultState = bankineco.vaultPDA(bankineco.bankPDA(bankineco_sdk_1.USD_STAR_BANK_INDEX), new web3_js_1.PublicKey(bankineco_sdk_1.OLD_USD_STAR), bankineco_sdk_1.OLD_USD_STAR_CONTRACT_INDEX);
11
- const oracleState = bankineco.oraclePDA(vaultState);
12
- const oracleInfo = await bankineco.pg.account.oracleGenState.fetch(oracleState);
13
- const decimals = oracleInfo.config.yieldingMintDecimals;
14
- let associatedOracleIdx = oracleInfo.data.oracleRegistry.findIndex((x) => bankineco.provider.wallet.publicKey.equals(x));
15
- const signerIsRegisteredOracle = associatedOracleIdx !== -1;
16
- if (!signerIsRegisteredOracle) {
17
- // Just to test the logic afterwards, no TX will be sent
18
- associatedOracleIdx = 0;
19
- }
20
- const currentOracleUiPrices = oracleInfo.data.oraclePrices.map((x) => (0, bankineco_sdk_1.toUiAmount)(x, decimals));
21
- const currentReportedUiPrice = (0, bankineco_sdk_1.toUiAmount)(oracleInfo.data.oraclePrices[associatedOracleIdx], decimals);
22
- const lastUpdatedTs = oracleInfo.data.oracleLastTs[associatedOracleIdx];
10
+ const { associatedOracleIdx, signerIsRegisteredOracle, currentOracleUiPrices, currentReportedUiPrice, lastUpdatedTs, } = await (0, utils_1.getOracleStateInfo)(bankineco, vaultState, bankineco_sdk_1.USD_STAR_DECIMALS);
23
11
  let impliedPrice = -1;
24
12
  try {
25
13
  impliedPrice = await (0, utils_1.getOldUsdStarPriceFromBurnSim)(bankineco.provider, signerKeypairFp);
@@ -54,7 +42,7 @@ async function updatePrice(bankineco, signerKeypairFp) {
54
42
  }
55
43
  }
56
44
  async function runUpdateSeedLPPrice(env, signerKeypairFp, rpcUrl) {
57
- const bankineco = new bankineco_sdk_1.BankinecoProgram(env, (0, bankineco_sdk_1.createAnchorProvider)(rpcUrl, new anchor_1.Wallet((0, bankineco_sdk_1.readKeypairFile)(signerKeypairFp))));
45
+ const [bankineco] = (0, bankineco_sdk_1.getBankineco)(env, rpcUrl, undefined, signerKeypairFp);
58
46
  await updatePrice(bankineco, signerKeypairFp);
59
47
  }
60
48
  //# sourceMappingURL=updateSeedLPPrice.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"updateSeedLPPrice.js","sourceRoot":"","sources":["../../src/oracle/updateSeedLPPrice.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"updateSeedLPPrice.js","sourceRoot":"","sources":["../../src/oracle/updateSeedLPPrice.ts"],"names":[],"mappings":"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"}
@@ -3,4 +3,14 @@ import { PublicKey } from "@solana/web3.js";
3
3
  import { BN } from "@coral-xyz/anchor";
4
4
  export declare function oracleReport(signerKeypairFp: string): Promise<void>;
5
5
  export declare function getPendingDriftYield(bankineco: BankinecoProgram, vaultState: PublicKey, eyMint: PublicKey, eyMintProgram?: PublicKey): Promise<BN>;
6
+ export declare function getOracleStateInfo(bankineco: BankinecoProgram, vaultState: PublicKey, yieldingMintDecimals: number): Promise<{
7
+ signerIsRegisteredOracle: boolean;
8
+ associatedOracleIdx: number;
9
+ currentOracleUiYields: number[];
10
+ currentOracleUiPrices: number[];
11
+ currentReportedUiYield: number;
12
+ currentReportedUiPrice: number;
13
+ lastUpdatedTs: BN;
14
+ }>;
15
+ export declare function updateYieldInfoIfNeeded(bankineco: BankinecoProgram, vaultState: PublicKey, impliedYield: BN): Promise<void>;
6
16
  //# sourceMappingURL=oracle.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"oracle.d.ts","sourceRoot":"","sources":["../../src/utils/oracle.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,EAQjB,MAAM,uBAAuB,CAAC;AAK/B,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,EAAE,EAAE,MAAM,mBAAmB,CAAC;AAQvC,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"}
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;AAQvC,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,iBA2DjB"}
@@ -2,6 +2,8 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.oracleReport = oracleReport;
4
4
  exports.getPendingDriftYield = getPendingDriftYield;
5
+ exports.getOracleStateInfo = getOracleStateInfo;
6
+ exports.updateYieldInfoIfNeeded = updateYieldInfoIfNeeded;
5
7
  const bankineco_sdk_1 = require("@perena/bankineco-sdk");
6
8
  const spl_token_1 = require("@solana/spl-token");
7
9
  const web3_js_1 = require("@solana/web3.js");
@@ -28,4 +30,59 @@ async function getPendingDriftYield(bankineco, vaultState, eyMint, eyMintProgram
28
30
  drift.unsubscribeUsers();
29
31
  return pendingYield.muln(constants_1.DRIFT_REPORTED_YIELD_FACTOR);
30
32
  }
33
+ async function getOracleStateInfo(bankineco, vaultState, yieldingMintDecimals) {
34
+ const oracleState = bankineco.oraclePDA(vaultState);
35
+ const oracleInfo = await bankineco.pg.account.oracleGenState.fetch(oracleState);
36
+ let associatedOracleIdx = oracleInfo.data.oracleRegistry.findIndex((x) => bankineco.provider.wallet.publicKey.equals(x));
37
+ const signerIsRegisteredOracle = associatedOracleIdx !== -1;
38
+ if (!signerIsRegisteredOracle) {
39
+ // Just to test the logic afterwards, no TX will be sent
40
+ associatedOracleIdx = 0;
41
+ }
42
+ const currentOracleUiYields = oracleInfo.data.oraclePendingYield.map((x) => (0, bankineco_sdk_1.toUiAmount)(x, yieldingMintDecimals));
43
+ const currentOracleUiPrices = oracleInfo.data.oraclePrices.map((x) => (0, bankineco_sdk_1.toUiAmount)(x, yieldingMintDecimals));
44
+ const currentReportedUiYield = (0, bankineco_sdk_1.toUiAmount)(oracleInfo.data.oraclePendingYield[associatedOracleIdx], yieldingMintDecimals);
45
+ const currentReportedUiPrice = (0, bankineco_sdk_1.toUiAmount)(oracleInfo.data.oraclePrices[associatedOracleIdx], yieldingMintDecimals);
46
+ const lastUpdatedTs = oracleInfo.data.oracleLastTs[associatedOracleIdx];
47
+ return {
48
+ signerIsRegisteredOracle,
49
+ associatedOracleIdx,
50
+ currentOracleUiYields,
51
+ currentOracleUiPrices,
52
+ currentReportedUiYield,
53
+ currentReportedUiPrice,
54
+ lastUpdatedTs,
55
+ };
56
+ }
57
+ async function updateYieldInfoIfNeeded(bankineco, vaultState, impliedYield) {
58
+ const { associatedOracleIdx, signerIsRegisteredOracle, currentOracleUiYields, currentReportedUiYield, lastUpdatedTs, } = await getOracleStateInfo(bankineco, vaultState, bankineco_sdk_1.USDC_DECIMALS);
59
+ const vaultInfo = await bankineco.pg.account.vaultGenState.fetch(vaultState);
60
+ const yieldingMint = vaultInfo.config.yieldingTokenMint;
61
+ const yieldingMintDecimals = vaultInfo.config.yieldingMintDecimals;
62
+ const diffMs = Date.now() - lastUpdatedTs.toNumber() * 1000;
63
+ const hoursSinceLastUpdate = diffMs / (1000 * 60 * 60);
64
+ const impliedUiYield = (0, bankineco_sdk_1.toUiAmount)(impliedYield, yieldingMintDecimals);
65
+ console.log("Current oracle index: ", associatedOracleIdx);
66
+ console.log("All reported yield: ", currentOracleUiYields);
67
+ console.log("Current reported yield: ", currentReportedUiYield);
68
+ console.log("Hours since last update: ", hoursSinceLastUpdate);
69
+ console.log("Implied pending yield: ", impliedUiYield);
70
+ const impliedYieldPct = impliedUiYield /
71
+ (0, bankineco_sdk_1.toUiAmount)(vaultInfo.accounting.yieldingTvl, bankineco_sdk_1.NORMALIZED_BASE_UNITS);
72
+ const currYieldPct = currentReportedUiYield /
73
+ (0, bankineco_sdk_1.toUiAmount)(vaultInfo.accounting.yieldingTvl, bankineco_sdk_1.NORMALIZED_BASE_UNITS);
74
+ const priceDiffBps = Math.floor((impliedYieldPct - currYieldPct) * 100000);
75
+ if (priceDiffBps > 2 || hoursSinceLastUpdate >= 23) {
76
+ console.log("Updating yield to ", impliedUiYield, " vs. a yield of ", currentReportedUiYield);
77
+ if (signerIsRegisteredOracle) {
78
+ console.log("Sending yield update...");
79
+ const sig = await (0, bankineco_sdk_1.signSendAndConfirm)(bankineco.connection, await bankineco.updateYieldingInfo(bankineco_sdk_1.USD_STAR_BANK_INDEX, vaultState, bankineco.provider.publicKey, yieldingMint, impliedYield), [bankineco.provider.wallet]);
80
+ console.log("Success broadcasting yield, tx ", sig);
81
+ }
82
+ }
83
+ else {
84
+ console.log("Not updating yield, contract yield is up to date");
85
+ console.log("Difference in bps: ", priceDiffBps);
86
+ }
87
+ }
31
88
  //# sourceMappingURL=oracle.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"oracle.js","sourceRoot":"","sources":["../../src/utils/oracle.ts"],"names":[],"mappings":";;AAuBA,oCAaC;AAED,oDA0BC;AAhED,yDAS+B;AAC/B,iDAG2B;AAC3B,6CAA4C;AAE5C,mCAIiB;AACjB,4CAA2D;AAEpD,KAAK,UAAU,YAAY,CAAC,eAAuB;IACxD,MAAM,MAAM,GAAG,IAAA,+BAAe,EAAC,eAAe,CAAC,CAAC,SAAS,CAAC;IAE1D,MAAM,GAAG,GAA8B;QACrC,CAAC,kCAAkB,CAAC,EAAE,+CAA+C;QACrE,CAAC,kCAAkB,CAAC,EAAE,+CAA+C;KACtE,CAAC;IAEF,IAAI,MAAM,CAAC,QAAQ,EAAE,IAAI,GAAG,EAAE,CAAC;QAC7B,MAAM,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAChD,OAAO,CAAC,KAAK,CAAC,4CAA4C,EAAE,GAAG,CAAC,CACjE,CAAC;IACJ,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,oBAAoB,CACxC,SAA2B,EAC3B,UAAqB,EACrB,MAAiB,EACjB,aAAa,GAAG,4BAAgB;IAEhC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,EAAE,CAAC,OAAO,CAAC,YAAY,CAAC,KAAK,CAC5D,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAC9B,CAAC;IACF,MAAM,SAAS,GAAG,QAAQ,CAAC,OAAO,CAAC,oBAAoB,CAAC;IAExD,MAAM,KAAK,GAAG,MAAM,IAAA,sBAAc,EAAC,SAAS,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;IAElE,MAAM,sBAAsB,GAAG,QAAQ,CAAC,UAAU,CAAC,wBAAwB,CAAC;IAC5E,MAAM,gBAAgB,GAAG,MAAM,IAAA,2BAAmB,EAChD,KAAK,EACL,SAAS,EACT,IAAA,6BAAqB,EAAC,IAAI,mBAAS,CAAC,yBAAS,CAAC,CAAC,CAAC,WAAW,CAC5D,CAAC;IAEF,MAAM,YAAY,GAAG,gBAAgB,CAAC,GAAG,CAAC,sBAAsB,CAAC,CAAC;IAElE,KAAK,CAAC,WAAW,EAAE,CAAC;IACpB,KAAK,CAAC,gBAAgB,EAAE,CAAC;IAEzB,OAAO,YAAY,CAAC,IAAI,CAAC,uCAA2B,CAAC,CAAC;AACxD,CAAC"}
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.9",
3
+ "version": "1.0.11",
4
4
  "description": "Services infra for maintaining Bankineco program on Solana.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -26,7 +26,7 @@
26
26
  "dependencies": {
27
27
  "@coral-xyz/anchor": "=0.30.1",
28
28
  "@drift-labs/sdk": "=2.137.0",
29
- "@perena/bankineco-sdk": "=1.0.37",
29
+ "@perena/bankineco-sdk": "=1.0.43",
30
30
  "@perena/numeraire-sdk": "^1.1.1",
31
31
  "@solana/spl-token": "=0.4.13",
32
32
  "@solana/web3.js": "=1.98.4",