@long2ice/relayx-backend 0.0.1

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 (88) hide show
  1. package/README.md +13 -0
  2. package/dist/app.d.ts +8592 -0
  3. package/dist/bullmq/index.d.ts +1 -0
  4. package/dist/bullmq/jobs.d.ts +34 -0
  5. package/dist/bullmq/queue.d.ts +6 -0
  6. package/dist/bullmq/queuedash.d.ts +12 -0
  7. package/dist/bullmq/worker.d.ts +1 -0
  8. package/dist/config.d.ts +16 -0
  9. package/dist/db.d.ts +3 -0
  10. package/dist/generated/prisma/zod/index.d.ts +2289 -0
  11. package/dist/index.d.ts +1 -0
  12. package/dist/middlewares/auth.d.ts +3 -0
  13. package/dist/middlewares/ip.d.ts +2 -0
  14. package/dist/middlewares/license.d.ts +2 -0
  15. package/dist/middlewares/plan.d.ts +2 -0
  16. package/dist/routes/admin/license.d.ts +90 -0
  17. package/dist/routes/admin/node.d.ts +919 -0
  18. package/dist/routes/admin/node_group.d.ts +2115 -0
  19. package/dist/routes/admin/pay.d.ts +261 -0
  20. package/dist/routes/admin/plan.d.ts +198 -0
  21. package/dist/routes/admin/plan_coupon.d.ts +92 -0
  22. package/dist/routes/admin/stats.d.ts +77 -0
  23. package/dist/routes/admin/system_config.d.ts +68 -0
  24. package/dist/routes/admin/ticket.d.ts +113 -0
  25. package/dist/routes/admin/topup.d.ts +88 -0
  26. package/dist/routes/admin/topup_activity.d.ts +84 -0
  27. package/dist/routes/admin/tunnel.d.ts +566 -0
  28. package/dist/routes/admin/user.d.ts +299 -0
  29. package/dist/routes/admin/user_plan.d.ts +109 -0
  30. package/dist/routes/bot.d.ts +13 -0
  31. package/dist/routes/dns_provider.d.ts +240 -0
  32. package/dist/routes/health.d.ts +3 -0
  33. package/dist/routes/in_node_group_dns.d.ts +132 -0
  34. package/dist/routes/license.d.ts +50 -0
  35. package/dist/routes/node.d.ts +148 -0
  36. package/dist/routes/node_group.d.ts +1498 -0
  37. package/dist/routes/pay.d.ts +34 -0
  38. package/dist/routes/plan.d.ts +148 -0
  39. package/dist/routes/plan_coupon.d.ts +22 -0
  40. package/dist/routes/system_config.d.ts +87 -0
  41. package/dist/routes/ticket.d.ts +129 -0
  42. package/dist/routes/topup.d.ts +93 -0
  43. package/dist/routes/tunnel.d.ts +742 -0
  44. package/dist/routes/user.d.ts +293 -0
  45. package/dist/schemas/context.d.ts +9 -0
  46. package/dist/schemas/license.d.ts +7 -0
  47. package/dist/schemas/request.d.ts +1181 -0
  48. package/dist/schemas/response.d.ts +2439 -0
  49. package/dist/schemas/socket.io.d.ts +33 -0
  50. package/dist/schemas/tunnel.d.ts +10 -0
  51. package/dist/services/dns/cloudflare.d.ts +12 -0
  52. package/dist/services/dns/huawei.d.ts +12 -0
  53. package/dist/services/dns/index.d.ts +4 -0
  54. package/dist/services/dns/interface.d.ts +8 -0
  55. package/dist/services/dns_provider.d.ts +46 -0
  56. package/dist/services/email.d.ts +11 -0
  57. package/dist/services/fernet.d.ts +2 -0
  58. package/dist/services/in_node_group_dns.d.ts +65 -0
  59. package/dist/services/license.d.ts +87 -0
  60. package/dist/services/logger.d.ts +7 -0
  61. package/dist/services/node.d.ts +39 -0
  62. package/dist/services/node_group.d.ts +75 -0
  63. package/dist/services/notify.d.ts +44 -0
  64. package/dist/services/order.d.ts +3 -0
  65. package/dist/services/pay.d.ts +6 -0
  66. package/dist/services/plan.d.ts +119 -0
  67. package/dist/services/plan_coupon.d.ts +16 -0
  68. package/dist/services/redis.d.ts +59 -0
  69. package/dist/services/stackauth.d.ts +25 -0
  70. package/dist/services/sysinfo.d.ts +7 -0
  71. package/dist/services/system_config.d.ts +7 -0
  72. package/dist/services/telegram.d.ts +8 -0
  73. package/dist/services/ticket.d.ts +134 -0
  74. package/dist/services/topup.d.ts +37 -0
  75. package/dist/services/topup_activity.d.ts +21 -0
  76. package/dist/services/tunnel.d.ts +1235 -0
  77. package/dist/services/user.d.ts +25 -0
  78. package/dist/socket-io/events.d.ts +13 -0
  79. package/dist/socket-io/handlers/disconnect.d.ts +2 -0
  80. package/dist/socket-io/handlers/listen.d.ts +3 -0
  81. package/dist/socket-io/handlers/register.d.ts +2 -0
  82. package/dist/socket-io/handlers/sysinfo.d.ts +2 -0
  83. package/dist/socket-io/index.d.ts +3 -0
  84. package/dist/socket-io/utils.d.ts +8 -0
  85. package/dist/utils/date.d.ts +1 -0
  86. package/dist/utils/ip.d.ts +2 -0
  87. package/dist/utils/uuid.d.ts +1 -0
  88. package/package.json +82 -0
@@ -0,0 +1,25 @@
1
+ import { CreateUserResponse, StackAuthService } from "../services/stackauth";
2
+ export declare class UserService {
3
+ private readonly stackAuthService;
4
+ constructor(stackAuthService: StackAuthService);
5
+ getSuperAdmins(): Promise<{
6
+ id: number;
7
+ created_at: Date;
8
+ updated_at: Date;
9
+ super_admin: boolean;
10
+ email: string;
11
+ balance: number;
12
+ tg_id: string | null;
13
+ uid: string | null;
14
+ note: string | null;
15
+ parent_id: number | null;
16
+ referral_commission_rate: number | null;
17
+ referral_first_only: boolean | null;
18
+ auto_renew: boolean;
19
+ api_key: string;
20
+ notify_subscriptions: import("../generated/prisma/client/runtime/library").JsonValue | null;
21
+ status: import("../generated/prisma/client").$Enums.Status;
22
+ }[]>;
23
+ createUserWithPassword(email: string, password: string): Promise<CreateUserResponse>;
24
+ changePassword(userId: number, password: string): Promise<void>;
25
+ }
@@ -0,0 +1,13 @@
1
+ export declare enum ClientToServerEvent {
2
+ listen = "listen",
3
+ listen_error = "listen_error",
4
+ register = "register",
5
+ sysinfo = "sysinfo",
6
+ disconnect = "disconnect"
7
+ }
8
+ export declare enum ServerToClientEvent {
9
+ config = "config",
10
+ test = "test",
11
+ upgrade = "upgrade",
12
+ ping = "ping"
13
+ }
@@ -0,0 +1,2 @@
1
+ import { Socket } from "socket.io";
2
+ export default function disconnect(socket: Socket): void;
@@ -0,0 +1,3 @@
1
+ import { Socket } from "socket.io";
2
+ export default function listen(socket: Socket): void;
3
+ export declare function listen_error(socket: Socket): void;
@@ -0,0 +1,2 @@
1
+ import { Socket } from "socket.io";
2
+ export default function register(socket: Socket): void;
@@ -0,0 +1,2 @@
1
+ import { Socket } from "socket.io";
2
+ export declare function sysinfo(socket: Socket): void;
@@ -0,0 +1,3 @@
1
+ import { Server } from "socket.io";
2
+ declare const io: Server<import("socket.io").DefaultEventsMap, import("socket.io").DefaultEventsMap, import("socket.io").DefaultEventsMap, any>;
3
+ export default io;
@@ -0,0 +1,8 @@
1
+ import { Socket } from "socket.io";
2
+ export declare function getNode(socket: Socket, data: {
3
+ connect_ip?: string[];
4
+ node_id: string;
5
+ }): {
6
+ node_id: string;
7
+ connect_ips: string[];
8
+ };
@@ -0,0 +1 @@
1
+ export declare const getDateInterval: (aggregate_by?: "day" | "month" | "year") => number;
@@ -0,0 +1,2 @@
1
+ export declare function formatIP(ip: string): string;
2
+ export declare function joinIPAndPort(ip: string, port: string): string;
@@ -0,0 +1 @@
1
+ export declare function isUUID(uuid: string): boolean;
package/package.json ADDED
@@ -0,0 +1,82 @@
1
+ {
2
+ "name": "@long2ice/relayx-backend",
3
+ "version": "0.0.1",
4
+ "type": "module",
5
+ "exports": {
6
+ ".": {
7
+ "types": "./dist/app.d.ts",
8
+ "default": "./src/app.ts"
9
+ }
10
+ },
11
+ "files": ["dist"],
12
+ "peerDependencies": {
13
+ "hono": "^4.0.0"
14
+ },
15
+ "scripts": {
16
+ "dev": "bun run --hot src/index.ts",
17
+ "prisma:generate": "prisma generate",
18
+ "prisma:migrate": "prisma migrate dev",
19
+ "prisma:studio": "prisma studio",
20
+ "prisma:deploy": "prisma migrate deploy",
21
+ "lint": "eslint --fix src",
22
+ "build:types": "tsc -p tsconfig.build.json && tsc-alias -p tsconfig.build.json && bun run scripts/fix-aliases.ts",
23
+ "check-types": "tsc --noEmit",
24
+ "test": "jest",
25
+ "build": "bun build --compile --minify --sourcemap --target=bun-linux-x64-baseline --env=disable --outfile relayx.amd64 src/index.ts",
26
+ "build:arm64": "bun build --compile --minify --sourcemap --target=bun-linux-arm64 --env=disable --outfile relayx.arm64 src/index.ts",
27
+ "dev:worker": "bun run --hot src/bullmq/index.ts",
28
+ "build:worker": "bun build --compile --minify --sourcemap --target=bun-linux-x64-baseline --outfile relayx-worker.amd64 src/bullmq/index.ts",
29
+ "build:worker:arm64": "bun build --compile --minify --sourcemap --target=bun-linux-arm64 --outfile relayx-worker.arm64 src/bullmq/index.ts"
30
+ },
31
+ "dependencies": {
32
+ "@date-fns/tz": "^1.2.0",
33
+ "@elysiajs/eden": "^1.3.2",
34
+ "@hono/node-server": "^1.14.1",
35
+ "@hono/sentry": "^1.2.1",
36
+ "@hono/tsyringe": "^1.0.1",
37
+ "@hono/zod-validator": "^0.4.3",
38
+ "@hookform/resolvers": "^5.0.1",
39
+ "@huaweicloud/huaweicloud-sdk-core": "^3.1.182",
40
+ "@huaweicloud/huaweicloud-sdk-dns": "^3.1.182",
41
+ "@prisma/client": "^6.17.1",
42
+ "@queuedash/api": "^3.5.0",
43
+ "@relayx/license": "workspace:*",
44
+ "@relayx/shared": "workspace:*",
45
+ "@scalar/hono-api-reference": "^0.9.1",
46
+ "@sentry/node": "^9.19.0",
47
+ "@sesamecare-oss/redlock": "^1.4.0",
48
+ "@socket.io/admin-ui": "^0.5.1",
49
+ "@socket.io/redis-streams-adapter": "^0.2.2",
50
+ "@telegraf/entity": "^0.6.0",
51
+ "axios": "^1.9.0",
52
+ "bullmq": "^5.52.2",
53
+ "cloudflare": "^5.2.0",
54
+ "date-fns": "^4.1.0",
55
+ "fernet": "^0.3.3",
56
+ "hono": "^4.7.7",
57
+ "hono-openapi": "^0.4.6",
58
+ "hono-pino": "^0.8.0",
59
+ "ioredis": "^5.6.1",
60
+ "jose": "^6.0.10",
61
+ "nodemailer": "^8.0.1",
62
+ "pino": "^9.6.0",
63
+ "reflect-metadata": "^0.2.2",
64
+ "socket.io": "^4.8.1",
65
+ "telegraf": "^4.16.3",
66
+ "zod-openapi": "^4.2.4"
67
+ },
68
+ "devDependencies": {
69
+ "@types/bun": "latest",
70
+ "@types/fernet": "^0.4.3",
71
+ "@types/jest": "^29.5.14",
72
+ "@types/nodemailer": "^7.0.9",
73
+ "@types/uuid": "^10.0.0",
74
+ "elysia": "^1.3.3",
75
+ "jest": "^29.7.0",
76
+ "prisma": "^6.17.1",
77
+ "prisma-json-types-generator": "^3.2.3",
78
+ "ts-jest": "^29.3.4",
79
+ "typescript": "^5.8.3",
80
+ "zod-prisma-types": "^3.2.4"
81
+ }
82
+ }