@primuslabs/por-client-sdk 0.1.12 → 0.1.15

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 (50) hide show
  1. package/dist/client/data_service_client.d.ts +1 -0
  2. package/dist/client/data_service_client.js +10 -0
  3. package/dist/client/data_service_client.js.map +1 -1
  4. package/dist/client/por_client.d.ts +1 -0
  5. package/dist/client/por_client.js +16 -0
  6. package/dist/client/por_client.js.map +1 -1
  7. package/dist/client/zktls_client.js +3 -1
  8. package/dist/client/zktls_client.js.map +1 -1
  9. package/dist/config_schema.d.ts +326 -14
  10. package/dist/config_schema.js +34 -4
  11. package/dist/config_schema.js.map +1 -1
  12. package/dist/datasource/aster.d.ts +11 -0
  13. package/dist/datasource/aster.js +12 -3
  14. package/dist/datasource/aster.js.map +1 -1
  15. package/dist/datasource/binance.d.ts +27 -0
  16. package/dist/datasource/binance.js +32 -6
  17. package/dist/datasource/binance.js.map +1 -1
  18. package/dist/datasource/bybit.d.ts +20 -0
  19. package/dist/datasource/bybit.js +31 -0
  20. package/dist/datasource/bybit.js.map +1 -0
  21. package/dist/datasource/datasource_manager.d.ts +12 -0
  22. package/dist/datasource/datasource_manager.js +24 -0
  23. package/dist/datasource/datasource_manager.js.map +1 -1
  24. package/dist/datasource/extended.d.ts +20 -0
  25. package/dist/datasource/extended.js +31 -0
  26. package/dist/datasource/extended.js.map +1 -0
  27. package/dist/datasource/grvt.d.ts +31 -0
  28. package/dist/datasource/grvt.js +112 -0
  29. package/dist/datasource/grvt.js.map +1 -0
  30. package/dist/datasource/helper.d.ts +9 -2
  31. package/dist/datasource/helper.js +32 -17
  32. package/dist/datasource/helper.js.map +1 -1
  33. package/dist/datasource/hyperliquid.d.ts +20 -0
  34. package/dist/datasource/hyperliquid.js +30 -0
  35. package/dist/datasource/hyperliquid.js.map +1 -0
  36. package/dist/datasource/index.d.ts +1 -0
  37. package/dist/datasource/index.js +1 -0
  38. package/dist/datasource/index.js.map +1 -1
  39. package/dist/datasource/lighter.d.ts +20 -0
  40. package/dist/datasource/lighter.js +43 -0
  41. package/dist/datasource/lighter.js.map +1 -0
  42. package/dist/datasource/pacifica.d.ts +20 -0
  43. package/dist/datasource/pacifica.js +29 -0
  44. package/dist/datasource/pacifica.js.map +1 -0
  45. package/dist/index.d.ts +1 -1
  46. package/dist/index.js +1 -1
  47. package/dist/index.js.map +1 -1
  48. package/dist/types.d.ts +1 -0
  49. package/dist/types.js.map +1 -1
  50. package/package.json +1 -1
@@ -4,7 +4,20 @@ export function signQuery(secretKey, params) {
4
4
  const signature = createHmac("sha256", secretKey).update(query).digest("hex");
5
5
  return `${query}&signature=${signature}`;
6
6
  }
7
- export function makeHashComparisonParams(origRequests, verifyType) {
7
+ export function mergeManyRequestParams(list) {
8
+ return list.reduce((acc, cur) => {
9
+ if (!acc)
10
+ return cur;
11
+ if (!cur)
12
+ return acc;
13
+ return {
14
+ verifyType: acc.verifyType,
15
+ requests: [...acc.requests, ...cur.requests],
16
+ responseResolves: [...acc.responseResolves, ...cur.responseResolves],
17
+ };
18
+ }, undefined);
19
+ }
20
+ function makeHashComparisonParams(origRequests, options) {
8
21
  if (!Array.isArray(origRequests)) {
9
22
  throw new Error("Invalid input: origRequests must be an array");
10
23
  }
@@ -12,29 +25,31 @@ export function makeHashComparisonParams(origRequests, verifyType) {
12
25
  verifyType: 'HASH_COMPARISON',
13
26
  requests: [],
14
27
  responseResolves: [],
28
+ options,
15
29
  };
16
30
  for (let i = 0; i < origRequests.length; i++) {
17
31
  const origRequest = origRequests[i];
18
32
  requestParams.requests.push({
19
33
  url: origRequest.url,
20
- method: "GET",
21
- header: { ...origRequest.headers },
22
- body: "",
34
+ method: origRequest.method ?? "GET",
35
+ header: { ...(origRequest.headers ?? {}) },
36
+ body: origRequest.body ?? "",
23
37
  });
24
- if (verifyType == 'HASH_COMPARISON') {
25
- requestParams.responseResolves.push([
26
- {
27
- keyName: `${i}`,
28
- parseType: "json",
29
- parsePath: "$",
30
- op: "SHA256_EX",
31
- },
32
- ]);
33
- }
34
- else {
35
- throw Error("not supported verify type");
36
- }
38
+ requestParams.responseResolves.push([
39
+ {
40
+ keyName: `${i}`,
41
+ parseType: "json",
42
+ parsePath: "$",
43
+ op: "SHA256_EX",
44
+ },
45
+ ]);
37
46
  }
38
47
  return requestParams;
39
48
  }
49
+ export function makeZkTlsRequestParams(origRequests, verifyType = 'HASH_COMPARISON', options) {
50
+ if (verifyType == 'HASH_COMPARISON') {
51
+ return makeHashComparisonParams(origRequests, options);
52
+ }
53
+ throw Error("not supported verify type");
54
+ }
40
55
  //# sourceMappingURL=helper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/datasource/helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,UAAU,SAAS,CAAC,SAAiB,EAAE,MAAW;IACtD,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;IACrD,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9E,OAAO,GAAG,KAAK,cAAc,SAAS,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,wBAAwB,CAAC,YAAmB,EAAE,UAAuB;IACnF,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,aAAa,GAAkB;QACnC,UAAU,EAAE,iBAAiB;QAC7B,QAAQ,EAAE,EAAE;QACZ,gBAAgB,EAAE,EAAE;KACrB,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAEpC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC1B,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,EAAE,GAAG,WAAW,CAAC,OAAO,EAAE;YAClC,IAAI,EAAE,EAAE;SACT,CAAC,CAAC;QAEH,IAAI,UAAU,IAAI,iBAAiB,EAAE,CAAC;YACpC,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC;gBAClC;oBACE,OAAO,EAAE,GAAG,CAAC,EAAE;oBACf,SAAS,EAAE,MAAM;oBACjB,SAAS,EAAE,GAAG;oBACd,EAAE,EAAE,WAAW;iBAChB;aACF,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,MAAM,KAAK,CAAC,2BAA2B,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../src/datasource/helper.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,MAAM,UAAU,SAAS,CAAC,SAAiB,EAAE,MAAW;IACtD,MAAM,KAAK,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC,QAAQ,EAAE,CAAC;IACrD,MAAM,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAC9E,OAAO,GAAG,KAAK,cAAc,SAAS,EAAE,CAAC;AAC3C,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,IAA2B;IAE3B,OAAO,IAAI,CAAC,MAAM,CAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QACnD,IAAI,CAAC,GAAG;YAAE,OAAO,GAAG,CAAC;QACrB,IAAI,CAAC,GAAG;YAAE,OAAO,GAAG,CAAC;QAErB,OAAO;YACL,UAAU,EAAE,GAAG,CAAC,UAAU;YAC1B,QAAQ,EAAE,CAAC,GAAG,GAAG,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,QAAQ,CAAC;YAC5C,gBAAgB,EAAE,CAAC,GAAG,GAAG,CAAC,gBAAgB,EAAE,GAAG,GAAG,CAAC,gBAAgB,CAAC;SACrE,CAAC;IACJ,CAAC,EAAE,SAAS,CAAC,CAAC;AAChB,CAAC;AASD,SAAS,wBAAwB,CAAC,YAA2B,EAAE,OAAa;IAC1E,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,CAAC,EAAE,CAAC;QACjC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;IAED,MAAM,aAAa,GAAkB;QACnC,UAAU,EAAE,iBAAiB;QAC7B,QAAQ,EAAE,EAAE;QACZ,gBAAgB,EAAE,EAAE;QACpB,OAAO;KACR,CAAC;IAEF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,YAAY,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC7C,MAAM,WAAW,GAAG,YAAY,CAAC,CAAC,CAAC,CAAC;QAEpC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC;YAC1B,GAAG,EAAE,WAAW,CAAC,GAAG;YACpB,MAAM,EAAE,WAAW,CAAC,MAAM,IAAI,KAAK;YACnC,MAAM,EAAE,EAAE,GAAG,CAAC,WAAW,CAAC,OAAO,IAAI,EAAE,CAAC,EAAE;YAC1C,IAAI,EAAE,WAAW,CAAC,IAAI,IAAI,EAAE;SAC7B,CAAC,CAAC;QAEH,aAAa,CAAC,gBAAgB,CAAC,IAAI,CAAC;YAClC;gBACE,OAAO,EAAE,GAAG,CAAC,EAAE;gBACf,SAAS,EAAE,MAAM;gBACjB,SAAS,EAAE,GAAG;gBACd,EAAE,EAAE,WAAW;aAChB;SACF,CAAC,CAAC;IACL,CAAC;IAED,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,YAA2B,EAAE,aAA0B,iBAAiB,EAAE,OAAa;IAC5H,IAAI,UAAU,IAAI,iBAAiB,EAAE,CAAC;QACpC,OAAO,wBAAwB,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAED,MAAM,KAAK,CAAC,2BAA2B,CAAC,CAAC;AAC3C,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { VERIFY_TYPE, RequestParamsOutput } from "../types.js";
2
+ import { HyperliquidKind, HyperliquidAccount, DatasourceConfig } from "../config_schema.js";
3
+ import { BaseExchange } from "./base_exchange.js";
4
+ export declare class Hyperliquid extends BaseExchange<HyperliquidAccount, HyperliquidKind> {
5
+ constructor(accounts?: DatasourceConfig["hyperliquid"]);
6
+ get hasMain(): boolean;
7
+ get mainAccounts(): {
8
+ apiKey: string;
9
+ apiSecret: string;
10
+ enabled: boolean;
11
+ description: string;
12
+ subAccountId: string;
13
+ vaultId: string;
14
+ address: string;
15
+ accountIndex: string;
16
+ poolIndex: string;
17
+ kind: "main"[];
18
+ }[];
19
+ getInfo(verifyType?: VERIFY_TYPE): RequestParamsOutput;
20
+ }
@@ -0,0 +1,30 @@
1
+ import ccxt from "ccxt";
2
+ import { makeZkTlsRequestParams } from "./helper.js";
3
+ import { BaseExchange } from "./base_exchange.js";
4
+ export class Hyperliquid extends BaseExchange {
5
+ constructor(accounts) {
6
+ super(accounts);
7
+ }
8
+ get hasMain() { return this.mainAccounts.length > 0; }
9
+ get mainAccounts() { return this.getAccounts("main"); }
10
+ ///
11
+ /// =======================================================================
12
+ ///
13
+ /// https://hyperliquid.gitbook.io/hyperliquid-docs/for-developers/api/info-endpoint#retrieve-a-users-subaccounts
14
+ /// https://api.hyperliquid.xyz/info
15
+ getInfo(verifyType = 'HASH_COMPARISON') {
16
+ if (!this.hasMain)
17
+ return undefined;
18
+ const origRequests = [];
19
+ for (const acc of this.mainAccounts) {
20
+ if (!acc.address || acc.address == "") {
21
+ throw new Error("Hyperliquid address is empty!");
22
+ }
23
+ const signParams = { type: "clearinghouseState", user: acc.address };
24
+ const exchange = new ccxt.hyperliquid();
25
+ origRequests.push(exchange.sign("info", "public", "POST", { ...signParams }));
26
+ }
27
+ return makeZkTlsRequestParams(origRequests, verifyType);
28
+ }
29
+ }
30
+ //# sourceMappingURL=hyperliquid.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"hyperliquid.js","sourceRoot":"","sources":["../../src/datasource/hyperliquid.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAGrD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,WAAY,SAAQ,YAAiD;IAChF,YAAY,QAA0C;QACpD,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IACtD,IAAI,YAAY,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAGvD,GAAG;IACH,2EAA2E;IAC3E,GAAG;IAEH,iHAAiH;IACjH,oCAAoC;IAC7B,OAAO,CAAC,aAA0B,iBAAiB;QACxD,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAEpC,MAAM,YAAY,GAAU,EAAE,CAAC;QAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;YAClD,CAAC;YAED,MAAM,UAAU,GAAG,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC;YACrE,MAAM,QAAQ,GAAG,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;YACxC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,GAAG,UAAU,EAAE,CAAC,CAAC,CAAC;QAChF,CAAC;QACD,OAAO,sBAAsB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAC1D,CAAC;CACF"}
@@ -1 +1,2 @@
1
1
  export * from "./datasource_manager";
2
+ export * from "./helper";
@@ -1,2 +1,3 @@
1
1
  export * from "./datasource_manager";
2
+ export * from "./helper";
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/datasource/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/datasource/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,cAAc,UAAU,CAAC"}
@@ -0,0 +1,20 @@
1
+ import { VERIFY_TYPE, RequestParamsOutput } from "../types.js";
2
+ import { LighterKind, LighterAccount, DatasourceConfig } from "../config_schema.js";
3
+ import { BaseExchange } from "./base_exchange.js";
4
+ export declare class Lighter extends BaseExchange<LighterAccount, LighterKind> {
5
+ constructor(accounts?: DatasourceConfig["lighter"]);
6
+ get hasMain(): boolean;
7
+ get mainAccounts(): {
8
+ apiKey: string;
9
+ apiSecret: string;
10
+ enabled: boolean;
11
+ description: string;
12
+ subAccountId: string;
13
+ vaultId: string;
14
+ address: string;
15
+ accountIndex: string;
16
+ poolIndex: string;
17
+ kind: "main"[];
18
+ }[];
19
+ getV1Account(verifyType?: VERIFY_TYPE): RequestParamsOutput;
20
+ }
@@ -0,0 +1,43 @@
1
+ import { makeZkTlsRequestParams } from "./helper.js";
2
+ import { BaseExchange } from "./base_exchange.js";
3
+ export class Lighter extends BaseExchange {
4
+ constructor(accounts) {
5
+ super(accounts);
6
+ }
7
+ get hasMain() { return this.mainAccounts.length > 0; }
8
+ get mainAccounts() { return this.getAccounts("main"); }
9
+ ///
10
+ /// =======================================================================
11
+ ///
12
+ /// https://apidocs.lighter.xyz/reference/account-1
13
+ /// https://mainnet.zklighter.elliot.ai/api/v1/account
14
+ getV1Account(verifyType = 'HASH_COMPARISON') {
15
+ if (!this.hasMain)
16
+ return undefined;
17
+ const origRequests = [];
18
+ for (const acc of this.mainAccounts) {
19
+ if (!acc.accountIndex || acc.accountIndex == "") {
20
+ throw new Error("Lighter accountIndex is empty!");
21
+ }
22
+ if (!acc.poolIndex || acc.poolIndex == "") {
23
+ throw new Error("Lighter poolIndex is empty!");
24
+ }
25
+ // DO NOT CHANGE THE ORDER
26
+ origRequests.push({
27
+ url: `https://mainnet.zklighter.elliot.ai/api/v1/account?by=index&value=${acc.accountIndex}`
28
+ // const accountValue1 = accounts[0].total_asset_value
29
+ // const shares = accounts[0].shares.find(x => x.public_pool_index === poolIndex).shares_amount
30
+ });
31
+ origRequests.push({
32
+ url: `https://mainnet.zklighter.elliot.ai/api/v1/account?by=index&value=${acc.poolIndex}`
33
+ // const poolTotalValue = accounts[0].collateral
34
+ // const totalShares =accounts[0].pool_info.total_shares
35
+ // const sharePrice = poolTotalValue / totalShares;
36
+ // const accountValue2 = shares * sharePrice;
37
+ });
38
+ // const lighterTotal = accountValue1 + accountValue2
39
+ }
40
+ return makeZkTlsRequestParams(origRequests, verifyType, { "attUrlOptimization": false });
41
+ }
42
+ }
43
+ //# sourceMappingURL=lighter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lighter.js","sourceRoot":"","sources":["../../src/datasource/lighter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAGrD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,OAAQ,SAAQ,YAAyC;IACpE,YAAY,QAAsC;QAChD,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IACtD,IAAI,YAAY,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAEvD,GAAG;IACH,2EAA2E;IAC3E,GAAG;IAGH,mDAAmD;IACnD,sDAAsD;IAC/C,YAAY,CAAC,aAA0B,iBAAiB;QAC7D,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAEpC,MAAM,YAAY,GAAU,EAAE,CAAC;QAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,YAAY,IAAI,GAAG,CAAC,YAAY,IAAI,EAAE,EAAE,CAAC;gBAChD,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAA;YACnD,CAAC;YACD,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,GAAG,CAAC,SAAS,IAAI,EAAE,EAAE,CAAC;gBAC1C,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;YAChD,CAAC;YAED,0BAA0B;YAC1B,YAAY,CAAC,IAAI,CAAC;gBAChB,GAAG,EAAE,qEAAqE,GAAG,CAAC,YAAY,EAAE;gBAC5F,sDAAsD;gBACtD,+FAA+F;aAChG,CAAC,CAAC;YACH,YAAY,CAAC,IAAI,CAAC;gBAChB,GAAG,EAAE,qEAAqE,GAAG,CAAC,SAAS,EAAE;gBACzF,gDAAgD;gBAChD,wDAAwD;gBACxD,mDAAmD;gBACnD,6CAA6C;aAC9C,CAAC,CAAC;YACH,qDAAqD;QACvD,CAAC;QACD,OAAO,sBAAsB,CAAC,YAAY,EAAE,UAAU,EAAE,EAAE,oBAAoB,EAAE,KAAK,EAAE,CAAC,CAAC;IAC3F,CAAC;CACF"}
@@ -0,0 +1,20 @@
1
+ import { VERIFY_TYPE, RequestParamsOutput } from "../types.js";
2
+ import { PacificaKind, PacificaAccount, DatasourceConfig } from "../config_schema.js";
3
+ import { BaseExchange } from "./base_exchange.js";
4
+ export declare class Pacifica extends BaseExchange<PacificaAccount, PacificaKind> {
5
+ constructor(accounts?: DatasourceConfig["pacifica"]);
6
+ get hasMain(): boolean;
7
+ get mainAccounts(): {
8
+ apiKey: string;
9
+ apiSecret: string;
10
+ enabled: boolean;
11
+ description: string;
12
+ subAccountId: string;
13
+ vaultId: string;
14
+ address: string;
15
+ accountIndex: string;
16
+ poolIndex: string;
17
+ kind: "main"[];
18
+ }[];
19
+ getV1Account(verifyType?: VERIFY_TYPE): RequestParamsOutput;
20
+ }
@@ -0,0 +1,29 @@
1
+ import { makeZkTlsRequestParams } from "./helper.js";
2
+ import { BaseExchange } from "./base_exchange.js";
3
+ export class Pacifica extends BaseExchange {
4
+ constructor(accounts) {
5
+ super(accounts);
6
+ }
7
+ get hasMain() { return this.mainAccounts.length > 0; }
8
+ get mainAccounts() { return this.getAccounts("main"); }
9
+ ///
10
+ /// =======================================================================
11
+ ///
12
+ /// https://pacifica.gitbook.io/docs/api-documentation/api/rest-api/account/get-account-info
13
+ /// https://api.pacifica.fi/api/v1/account
14
+ getV1Account(verifyType = 'HASH_COMPARISON') {
15
+ if (!this.hasMain)
16
+ return undefined;
17
+ const origRequests = [];
18
+ for (const acc of this.mainAccounts) {
19
+ if (!acc.address || acc.address == "") {
20
+ throw new Error("Pacifica address is empty!");
21
+ }
22
+ origRequests.push({
23
+ url: `https://api.pacifica.fi/api/v1/account?account=${acc.address}`,
24
+ });
25
+ }
26
+ return makeZkTlsRequestParams(origRequests, verifyType);
27
+ }
28
+ }
29
+ //# sourceMappingURL=pacifica.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pacifica.js","sourceRoot":"","sources":["../../src/datasource/pacifica.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAGrD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAElD,MAAM,OAAO,QAAS,SAAQ,YAA2C;IACvE,YAAY,QAAuC;QACjD,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,OAAO,KAAK,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;IACtD,IAAI,YAAY,KAAK,OAAO,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IAEvD,GAAG;IACH,2EAA2E;IAC3E,GAAG;IAGH,4FAA4F;IAC5F,0CAA0C;IACnC,YAAY,CAAC,aAA0B,iBAAiB;QAC7D,IAAI,CAAC,IAAI,CAAC,OAAO;YAAE,OAAO,SAAS,CAAC;QAEpC,MAAM,YAAY,GAAU,EAAE,CAAC;QAC/B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;YACpC,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,IAAI,EAAE,EAAE,CAAC;gBACtC,MAAM,IAAI,KAAK,CAAC,4BAA4B,CAAC,CAAA;YAC/C,CAAC;YAED,YAAY,CAAC,IAAI,CAAC;gBAChB,GAAG,EAAE,kDAAkD,GAAG,CAAC,OAAO,EAAE;aACrE,CAAC,CAAC;QACL,CAAC;QACD,OAAO,sBAAsB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;IAC1D,CAAC;CACF"}
package/dist/index.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  export * from "./types";
2
2
  export * from "./utils";
3
3
  export * from "./client";
4
- export { DatasourceManager } from "./datasource";
4
+ export * from "./datasource";
5
5
  export { loadConfigFromFile } from "./config_schema";
6
6
  export { Scheduler } from "./scheduler";
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  export * from "./types";
2
2
  export * from "./utils";
3
3
  export * from "./client";
4
- export { DatasourceManager } from "./datasource";
4
+ export * from "./datasource";
5
5
  export { loadConfigFromFile } from "./config_schema";
6
6
  export { Scheduler } from "./scheduler";
7
7
  //# 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,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,iBAAiB,EAAE,MAAM,cAAc,CAAC;AACjD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACrD,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
package/dist/types.d.ts CHANGED
@@ -4,6 +4,7 @@ export type RequestParams = {
4
4
  verifyType: VERIFY_TYPE;
5
5
  requests: AttNetworkRequest[];
6
6
  responseResolves: AttNetworkResponseResolve[][];
7
+ options?: Record<string, any>;
7
8
  };
8
9
  export type RequestParamsOutput = RequestParams | undefined;
9
10
  export type RequestParamsInput = Record<string, () => RequestParamsOutput>;
package/dist/types.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAoBA,MAAM,UAAU,iBAAiB,CAAC,OAAgB;IAChD,MAAM,QAAQ,GAAY;QACxB,SAAS,EAAE,6BAA6B;QACxC,aAAa,EAAE,QAAQ;QACvB,WAAW,EAAE,SAAS;QACtB,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,IAAI;KACd,CAAC;IACF,OAAO,EAAE,GAAG,QAAQ,EAAE,GAAG,OAAO,EAAE,CAAC;AACrC,CAAC"}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAqBA,MAAM,UAAU,iBAAiB,CAAC,OAAgB;IAChD,MAAM,QAAQ,GAAY;QACxB,SAAS,EAAE,6BAA6B;QACxC,aAAa,EAAE,QAAQ;QACvB,WAAW,EAAE,SAAS;QACtB,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,IAAI;QACb,OAAO,EAAE,IAAI;KACd,CAAC;IACF,OAAO,EAAE,GAAG,QAAQ,EAAE,GAAG,OAAO,EAAE,CAAC;AACrC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@primuslabs/por-client-sdk",
3
- "version": "0.1.12",
3
+ "version": "0.1.15",
4
4
  "author": "Primus Labs <dev@primuslabs.org>",
5
5
  "description": "Primus PoR client sdk",
6
6
  "license": "ISC",