@h0ngcha0/zeta-backend 0.0.1-rc.13 → 0.0.1-rc.14

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,16 +1,4 @@
1
- export interface SuccessApiResponse<T> {
2
- id: string;
3
- success: true;
4
- data: T;
5
- }
6
- export interface ErrorApiResponse {
7
- id: string;
8
- success: false;
9
- msg: string;
10
- }
11
- export interface PaginatedApiResponse<T> extends SuccessApiResponse<T> {
12
- id: string;
13
- success: true;
1
+ export interface PaginatedApiResponse<T> extends Response {
14
2
  data: T & {
15
3
  meta: {
16
4
  page: number;
@@ -19,8 +7,67 @@ export interface PaginatedApiResponse<T> extends SuccessApiResponse<T> {
19
7
  };
20
8
  };
21
9
  }
22
- export type ApiResponse<T> = SuccessApiResponse<T> | ErrorApiResponse;
23
10
  export declare function handlePaginatedSuccess<T>(data: T, page: number, pageSize: number, totalPages: number): PaginatedApiResponse<T>;
24
- export declare function handleSuccess<T>(data: T): SuccessApiResponse<T>;
25
- export declare function handleError(error: unknown): ErrorApiResponse;
11
+ export declare function handleSuccess<T>(data: T): T;
12
+ export declare function badRequest(message: string): never;
13
+ export declare function notFound(subject: string): never;
14
+ export declare function internalServerError(error: unknown): never;
15
+ export declare const DefaultErrorResponseSchemas: {
16
+ 400: import("zod").ZodObject<{
17
+ message: import("zod").ZodString;
18
+ details: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
19
+ } & {
20
+ error: import("zod").ZodLiteral<"Bad request">;
21
+ }, "strip", import("zod").ZodTypeAny, {
22
+ message: string;
23
+ error: "Bad request";
24
+ details?: Record<string, unknown> | undefined;
25
+ }, {
26
+ message: string;
27
+ error: "Bad request";
28
+ details?: Record<string, unknown> | undefined;
29
+ }>;
30
+ 404: import("zod").ZodObject<{
31
+ message: import("zod").ZodString;
32
+ details: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
33
+ } & {
34
+ error: import("zod").ZodLiteral<"Resource not found">;
35
+ }, "strip", import("zod").ZodTypeAny, {
36
+ message: string;
37
+ error: "Resource not found";
38
+ details?: Record<string, unknown> | undefined;
39
+ }, {
40
+ message: string;
41
+ error: "Resource not found";
42
+ details?: Record<string, unknown> | undefined;
43
+ }>;
44
+ 422: import("zod").ZodObject<{
45
+ message: import("zod").ZodString;
46
+ details: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
47
+ } & {
48
+ error: import("zod").ZodLiteral<"Validation error">;
49
+ }, "strip", import("zod").ZodTypeAny, {
50
+ message: string;
51
+ error: "Validation error";
52
+ details?: Record<string, unknown> | undefined;
53
+ }, {
54
+ message: string;
55
+ error: "Validation error";
56
+ details?: Record<string, unknown> | undefined;
57
+ }>;
58
+ 500: import("zod").ZodObject<{
59
+ message: import("zod").ZodString;
60
+ details: import("zod").ZodOptional<import("zod").ZodRecord<import("zod").ZodString, import("zod").ZodUnknown>>;
61
+ } & {
62
+ error: import("zod").ZodLiteral<"Internal server error">;
63
+ }, "strip", import("zod").ZodTypeAny, {
64
+ message: string;
65
+ error: "Internal server error";
66
+ details?: Record<string, unknown> | undefined;
67
+ }, {
68
+ message: string;
69
+ error: "Internal server error";
70
+ details?: Record<string, unknown> | undefined;
71
+ }>;
72
+ };
26
73
  //# sourceMappingURL=response.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/routes/response.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,kBAAkB,CAAC,CAAC;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,CAAC,CAAC;CACT;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,KAAK,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AAED,MAAM,WAAW,oBAAoB,CAAC,CAAC,CAAE,SAAQ,kBAAkB,CAAC,CAAC,CAAC;IACpE,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,IAAI,CAAC;IACd,IAAI,EAAE,CAAC,GAAG;QACR,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM,CAAC;YACb,QAAQ,EAAE,MAAM,CAAC;YACjB,UAAU,EAAE,MAAM,CAAC;SACpB,CAAC;KACH,CAAC;CACH;AAED,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI,kBAAkB,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC;AAEtE,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,oBAAoB,CAAC,CAAC,CAAC,CASzB;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAM/D;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,GAAG,gBAAgB,CAM5D"}
1
+ {"version":3,"file":"response.d.ts","sourceRoot":"","sources":["../../../src/routes/response.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,oBAAoB,CAAC,CAAC,CAAE,SAAQ,QAAQ;IACvD,IAAI,EAAE,CAAC,GAAG;QACR,IAAI,EAAE;YACJ,IAAI,EAAE,MAAM,CAAA;YACZ,QAAQ,EAAE,MAAM,CAAA;YAChB,UAAU,EAAE,MAAM,CAAA;SACnB,CAAA;KACF,CAAA;CACF;AAED,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,IAAI,EAAE,CAAC,EACP,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,MAAM,EAChB,UAAU,EAAE,MAAM,GACjB,oBAAoB,CAAC,CAAC,CAAC,CAYzB;AAED,wBAAgB,aAAa,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,GAAG,CAAC,CAK3C;AAED,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAEjD;AAED,wBAAgB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,KAAK,CAE/C;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,KAAK,CAwBzD;AAGD,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKvC,CAAC"}
@@ -55,7 +55,7 @@ export declare class ComputeService {
55
55
  computeSwapBaseOut(params: SwapBaseOutParams): Promise<SwapComputeResult>;
56
56
  parseSlippageBps(slippageBps?: string): number;
57
57
  getTokenInfo(id: string): Promise<TokenInfo>;
58
- getPoolState(inputTokenId: string, outputTokenId: string): Promise<import("@h0ngcha0/typescript-sdk").CpmmPoolState>;
58
+ getPoolState(inputTokenId: string, outputTokenId: string): Promise<import("@h0ngcha0/typescript-sdk").CpmmPoolContractState>;
59
59
  convertSwapDetailsToResponse(swapDetails: SwapDetails, slippage: number): Promise<SwapComputeResult>;
60
60
  computeClmmSwapBaseIn(params: {
61
61
  inputMint: string;
@@ -1,48 +1,19 @@
1
- import type { Zeta } from '@h0ngcha0/typescript-sdk';
1
+ import type { Zeta, CpmmPoolContractState, ClmmPoolContractState } from '@h0ngcha0/typescript-sdk';
2
2
  import { type SqlClient } from '../config/database';
3
3
  import type { TokenInfo } from '@alephium/token-list';
4
4
  import type { PriceService } from './priceService';
5
- import type { PoolStatsService, PoolStatsCalculation } from './poolStatsService';
5
+ import type { PoolStatsService, PoolStats } from './poolStatsService';
6
6
  import type { ClmmPoolTypes } from '@h0ngcha0/typescript-sdk';
7
7
  import type { PoolEvent, PoolRow, PoolEventCounterRow, PoolFactoryEventCounterRow } from '../database/types';
8
8
  import type { ClmmPosition } from '../api/types';
9
9
  import Decimal from 'decimal.js';
10
- export type PoolStatsPeriod = PoolStatsCalculation;
11
- export interface StandardPoolWithStats {
12
- type: 'Standard';
13
- poolId: string;
14
- reserve0: string;
15
- reserve1: string;
16
- totalSupply: string;
17
- token0Info: TokenInfo;
18
- token1Info: TokenInfo;
19
- feeRate: string;
20
- tvl: string;
21
- openTime: string;
22
- day: PoolStatsPeriod;
23
- week: PoolStatsPeriod;
24
- month: PoolStatsPeriod;
25
- }
26
- export interface ConcentratedPoolWithStats {
27
- type: 'Concentrated';
28
- poolId: string;
29
- token0Info: TokenInfo;
30
- token1Info: TokenInfo;
31
- liquidity: string;
32
- tradingFee: string;
33
- protocolFee: string;
34
- sqrtPriceX96: string;
35
- tick: string;
36
- tickSpacing: string;
37
- configIndex: string;
38
- feeRate: string;
39
- tvl: string;
40
- openTime: string;
41
- day: PoolStatsPeriod;
42
- week: PoolStatsPeriod;
43
- month: PoolStatsPeriod;
44
- }
45
- export type PoolWithStats = StandardPoolWithStats | ConcentratedPoolWithStats;
10
+ export type CpmmPoolWithStats = CpmmPoolContractState & PoolStats & {
11
+ type: typeof PoolType.Standard;
12
+ };
13
+ export type ClmmPoolWithStats = ClmmPoolContractState & PoolStats & {
14
+ type: typeof PoolType.Concentrated;
15
+ };
16
+ export type PoolWithStats = CpmmPoolWithStats | ClmmPoolWithStats;
46
17
  export declare const PoolType: {
47
18
  readonly Standard: "standard";
48
19
  readonly Concentrated: "concentrated";
@@ -76,17 +47,20 @@ export declare class PoolService {
76
47
  constructor(zeta: Zeta, priceService: PriceService, poolStatsService: PoolStatsService);
77
48
  private getCpmmFeeRate;
78
49
  private getClmmFeeRate;
50
+ private getTokensInfo;
51
+ private poolRecordToCpmmPool;
79
52
  private poolRecordToCpmmPoolWithStats;
53
+ private poolRecordToClmmPool;
80
54
  private poolRecordToClmmPoolWithStats;
81
- getPoolByTokenPairId(tokenPairId: string): Promise<StandardPoolWithStats | undefined>;
55
+ getPoolByTokenPairId(tokenPairId: string): Promise<CpmmPoolWithStats | undefined>;
82
56
  getPoolsByToken(token0Id: string, token1Id?: string, poolType?: PoolType, page?: number, pageSize?: number): Promise<{
83
- pools: StandardPoolWithStats[];
57
+ pools: CpmmPoolWithStats[];
84
58
  total: number;
85
59
  page: number;
86
60
  pageSize: number;
87
61
  totalPages: number;
88
62
  }>;
89
- getPoolByTokenPair(token0Id: string, token1Id: string): Promise<StandardPoolWithStats | undefined>;
63
+ getPoolByTokenPair(token0Id: string, token1Id: string): Promise<CpmmPoolWithStats | undefined>;
90
64
  getPoolsByIds(poolIds: string[]): Promise<PoolWithStats[]>;
91
65
  getAllPools(page?: number, pageSize?: number, poolType?: PoolType, sortType?: PoolSortType): Promise<{
92
66
  pools: PoolWithStats[];
@@ -1 +1 @@
1
- {"version":3,"file":"poolService.d.ts","sourceRoot":"","sources":["../../../src/services/poolService.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"poolService.d.ts","sourceRoot":"","sources":["../../../src/services/poolService.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,13 @@
1
1
  import Decimal from 'decimal.js';
2
- export interface PoolStatsCalculation {
2
+ export interface PoolStats {
3
+ feeRate: number;
4
+ openTime: string;
5
+ tvl: number;
6
+ day: PeriodicalPoolStats;
7
+ week: PeriodicalPoolStats;
8
+ month: PeriodicalPoolStats;
9
+ }
10
+ export interface PeriodicalPoolStats {
3
11
  volume: string;
4
12
  volumeQuote: string;
5
13
  volumeFee: string;
@@ -39,7 +47,12 @@ export interface LiquidityLineData {
39
47
  }
40
48
  export declare class PoolStatsService {
41
49
  constructor();
42
- calculatePoolStats(poolId: string, periodType: 'day' | 'week' | 'month', currentTVL?: Decimal): Promise<PoolStatsCalculation>;
50
+ calculateAllPeriodsPoolStats(poolId: string, currentTVL?: Decimal): Promise<{
51
+ day: PeriodicalPoolStats;
52
+ week: PeriodicalPoolStats;
53
+ month: PeriodicalPoolStats;
54
+ }>;
55
+ calculatePoolStats(poolId: string, periodType: 'day' | 'week' | 'month', currentTVL?: Decimal): Promise<PeriodicalPoolStats>;
43
56
  private getDefaultStats;
44
57
  private getTimeRange;
45
58
  private calculateFeeAPR;
@@ -1 +1 @@
1
- {"version":3,"file":"poolStatsService.d.ts","sourceRoot":"","sources":["../../../src/services/poolStatsService.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,YAAY,CAAC;AAMjC,MAAM,WAAW,oBAAoB;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,WAAW,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,kBAAkB,EAAE,CAAC;CAC5B;AAaD,qBAAa,gBAAgB;;IAGrB,kBAAkB,CACtB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,EACpC,UAAU,GAAE,OAAwB,GACnC,OAAO,CAAC,oBAAoB,CAAC;IA0ChC,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,eAAe;IAUvB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,cAAc;IAYhB,QAAQ,CACZ,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,CAAC;IAgBjB,oBAAoB,CACxB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,CAAC;IAsBjB,yBAAyB,CAC7B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,iBAAiB,CAAC;IAkDvB,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAK5F"}
1
+ {"version":3,"file":"poolStatsService.d.ts","sourceRoot":"","sources":["../../../src/services/poolStatsService.ts"],"names":[],"mappings":"AAGA,OAAO,OAAO,MAAM,YAAY,CAAC;AAMjC,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,mBAAmB,CAAC;IACzB,IAAI,EAAE,mBAAmB,CAAC;IAC1B,KAAK,EAAE,mBAAmB,CAAC;CAC5B;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;IACpB,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,SAAS;IACxB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,EAAE,WAAW,CAAC;CACnB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,kBAAkB,EAAE,CAAC;CAC5B;AAaD,qBAAa,gBAAgB;;IAGrB,4BAA4B,CAChC,MAAM,EAAE,MAAM,EACd,UAAU,GAAE,OAAwB,GACnC,OAAO,CAAC;QAAE,GAAG,EAAE,mBAAmB,CAAC;QAAC,IAAI,EAAE,mBAAmB,CAAC;QAAC,KAAK,EAAE,mBAAmB,CAAA;KAAE,CAAC;IAQzF,kBAAkB,CACtB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,EACpC,UAAU,GAAE,OAAwB,GACnC,OAAO,CAAC,mBAAmB,CAAC;IA0C/B,OAAO,CAAC,eAAe;IAevB,OAAO,CAAC,YAAY;IASpB,OAAO,CAAC,eAAe;IAUvB,OAAO,CAAC,iBAAiB;IASzB,OAAO,CAAC,cAAc;IAYhB,QAAQ,CACZ,MAAM,EAAE,MAAM,EACd,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,CAAC;IAgBjB,oBAAoB,CACxB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,MAAM,EAChB,YAAY,EAAE,MAAM,EACpB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,WAAW,CAAC;IAsBjB,yBAAyB,CAC7B,WAAW,EAAE,MAAM,EACnB,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,iBAAiB,CAAC;IAkDvB,sBAAsB,CAAC,WAAW,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;CAK5F"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@h0ngcha0/zeta-backend",
3
- "version": "0.0.1-rc.13",
3
+ "version": "0.0.1-rc.14",
4
4
  "engines": {
5
5
  "bun": ">=1.3.0 < 1.4.0"
6
6
  },