tinny-backend 1.0.0

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 (86) hide show
  1. package/README.md +207 -0
  2. package/dist/admin/auth.d.ts +2 -0
  3. package/dist/admin/auth.d.ts.map +1 -0
  4. package/dist/admin/auth.js +2 -0
  5. package/dist/admin/auth.js.map +1 -0
  6. package/dist/admin/monitor.d.ts +2 -0
  7. package/dist/admin/monitor.d.ts.map +1 -0
  8. package/dist/admin/monitor.js +2 -0
  9. package/dist/admin/monitor.js.map +1 -0
  10. package/dist/admin/routes.d.ts +2 -0
  11. package/dist/admin/routes.d.ts.map +1 -0
  12. package/dist/admin/routes.js +2 -0
  13. package/dist/admin/routes.js.map +1 -0
  14. package/dist/app/index.d.ts +2 -0
  15. package/dist/app/index.d.ts.map +1 -0
  16. package/dist/app/index.js +19 -0
  17. package/dist/app/index.js.map +1 -0
  18. package/dist/core/Request.d.ts +4 -0
  19. package/dist/core/Request.d.ts.map +1 -0
  20. package/dist/core/Request.js +24 -0
  21. package/dist/core/Request.js.map +1 -0
  22. package/dist/core/Response.d.ts +4 -0
  23. package/dist/core/Response.d.ts.map +1 -0
  24. package/dist/core/Response.js +78 -0
  25. package/dist/core/Response.js.map +1 -0
  26. package/dist/core/Server.d.ts +30 -0
  27. package/dist/core/Server.d.ts.map +1 -0
  28. package/dist/core/Server.js +533 -0
  29. package/dist/core/Server.js.map +1 -0
  30. package/dist/core/types.d.ts +89 -0
  31. package/dist/core/types.d.ts.map +1 -0
  32. package/dist/core/types.js +3 -0
  33. package/dist/core/types.js.map +1 -0
  34. package/dist/examples/example.d.ts +2 -0
  35. package/dist/examples/example.d.ts.map +1 -0
  36. package/dist/examples/example.js +11 -0
  37. package/dist/examples/example.js.map +1 -0
  38. package/dist/index.d.ts +2 -0
  39. package/dist/index.d.ts.map +1 -0
  40. package/dist/index.js +11 -0
  41. package/dist/index.js.map +1 -0
  42. package/dist/server.d.ts +127 -0
  43. package/dist/server.d.ts.map +1 -0
  44. package/dist/server.js +625 -0
  45. package/dist/server.js.map +1 -0
  46. package/dist/src/admin/auth.d.ts +13 -0
  47. package/dist/src/admin/auth.d.ts.map +1 -0
  48. package/dist/src/admin/auth.js +60 -0
  49. package/dist/src/admin/auth.js.map +1 -0
  50. package/dist/src/admin/monitor.d.ts +3 -0
  51. package/dist/src/admin/monitor.d.ts.map +1 -0
  52. package/dist/src/admin/monitor.js +83 -0
  53. package/dist/src/admin/monitor.js.map +1 -0
  54. package/dist/src/admin/routes.d.ts +14 -0
  55. package/dist/src/admin/routes.d.ts.map +1 -0
  56. package/dist/src/admin/routes.js +150 -0
  57. package/dist/src/admin/routes.js.map +1 -0
  58. package/dist/src/core/Request.d.ts +4 -0
  59. package/dist/src/core/Request.d.ts.map +1 -0
  60. package/dist/src/core/Request.js +24 -0
  61. package/dist/src/core/Request.js.map +1 -0
  62. package/dist/src/core/Response.d.ts +4 -0
  63. package/dist/src/core/Response.d.ts.map +1 -0
  64. package/dist/src/core/Response.js +78 -0
  65. package/dist/src/core/Response.js.map +1 -0
  66. package/dist/src/core/Server.d.ts +34 -0
  67. package/dist/src/core/Server.d.ts.map +1 -0
  68. package/dist/src/core/Server.js +290 -0
  69. package/dist/src/core/Server.js.map +1 -0
  70. package/dist/src/core/types.d.ts +89 -0
  71. package/dist/src/core/types.d.ts.map +1 -0
  72. package/dist/src/core/types.js +3 -0
  73. package/dist/src/core/types.js.map +1 -0
  74. package/dist/src/index.d.ts +16 -0
  75. package/dist/src/index.d.ts.map +1 -0
  76. package/dist/src/index.js +17 -0
  77. package/dist/src/index.js.map +1 -0
  78. package/dist/src/utils/constants.d.ts +12 -0
  79. package/dist/src/utils/constants.d.ts.map +1 -0
  80. package/dist/src/utils/constants.js +12 -0
  81. package/dist/src/utils/constants.js.map +1 -0
  82. package/dist/utils/constants.d.ts +12 -0
  83. package/dist/utils/constants.d.ts.map +1 -0
  84. package/dist/utils/constants.js +12 -0
  85. package/dist/utils/constants.js.map +1 -0
  86. package/package.json +89 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ import Server from "../core/Server.js";
2
+ import type { AdminSessions, ServerReq, ServerRes } from "../core/types.js";
3
+ export type auth_t = {
4
+ Auth: (req: ServerReq, res: ServerRes) => Promise<void>;
5
+ sessions: AdminSessions[];
6
+ key: string;
7
+ SetUsername: (userName: string) => void;
8
+ SetPassword: (passWord: string) => void;
9
+ GetPasswd: () => string;
10
+ GetUser: () => string;
11
+ };
12
+ export default function Authen(server: Server): auth_t;
13
+ //# sourceMappingURL=auth.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../../src/admin/auth.ts"],"names":[],"mappings":"AAEA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,KAAK,EACR,aAAa,EACb,SAAS,EACT,SAAS,EACZ,MAAM,kBAAkB,CAAA;AAEzB,MAAM,MAAM,MAAM,GAAG;IACjB,IAAI,EAAE,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,WAAW,EAAE,CAAC,QAAQ,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,SAAS,EAAE,MAAM,MAAM,CAAC;IACxB,OAAO,EAAE,MAAM,MAAM,CAAA;CACxB,CAAA;AAED,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAiErD"}
@@ -0,0 +1,60 @@
1
+ import * as JWT from "jsonwebtoken";
2
+ import * as DOTENV from "dotenv";
3
+ import Server from "../core/Server.js";
4
+ export default function Authen(server) {
5
+ DOTENV.config();
6
+ let username = process.env.ADMIN_USERNAME || "";
7
+ let password = process.env.ADMIN_PASSWORD || "";
8
+ const key = process.env.ADMIN_KEY || "";
9
+ const sessions = [];
10
+ const isAuthed = (res) => {
11
+ const TOKEN = res.getCookie("token");
12
+ if (!TOKEN)
13
+ return false;
14
+ try {
15
+ const decoded = JWT.default.verify(TOKEN.value, key);
16
+ if (typeof decoded.id === undefined)
17
+ throw new Error("None valid token");
18
+ for (let i = 0; i < sessions.length; i++) {
19
+ if (sessions[i]?.id === decoded.id) {
20
+ if (!sessions[i]?.isValid)
21
+ throw new Error("None valid token");
22
+ sessions[i].request += 1;
23
+ res.currentID = decoded.id;
24
+ return true;
25
+ }
26
+ }
27
+ throw new Error("None valid UUID");
28
+ }
29
+ catch {
30
+ server.log("a user try to login to admin panel using none valid token", "error");
31
+ return false;
32
+ }
33
+ return true;
34
+ };
35
+ const Auth = async (req, res) => {
36
+ if (!isAuthed(res)) {
37
+ if (req.ReqUrl?.pathname == "/")
38
+ return await server.SendFile(res, "public/login/index.html", 401);
39
+ return await server.SendFile(res, "public/status/401.html", 401);
40
+ }
41
+ if (req.ReqUrl?.pathname == "/")
42
+ return await server.SendFile(res, "public/admin/index.html", 200);
43
+ };
44
+ const SetUsername = (userName) => {
45
+ console.log("old pwd ", username);
46
+ username = userName;
47
+ console.log("new pwd ", username);
48
+ };
49
+ const SetPassword = (passWord) => {
50
+ password = passWord;
51
+ };
52
+ const GetPasswd = () => {
53
+ return password;
54
+ };
55
+ const GetUser = () => {
56
+ return username;
57
+ };
58
+ return { Auth, sessions, key, SetUsername, SetPassword, GetPasswd, GetUser };
59
+ }
60
+ //# sourceMappingURL=auth.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"auth.js","sourceRoot":"","sources":["../../../src/admin/auth.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import Server from "../core/Server.js";
2
+ export default function monitor(server: Server): void;
3
+ //# sourceMappingURL=monitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitor.d.ts","sourceRoot":"","sources":["../../../src/admin/monitor.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAQvC,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,MAAM,EAAE,MAAM,QA6F7C"}
@@ -0,0 +1,83 @@
1
+ import Server from "../core/Server.js";
2
+ import Authen from "./auth.js";
3
+ import Routes from "./routes.js";
4
+ export default function monitor(server) {
5
+ const { Auth, sessions, key, SetUsername, SetPassword, GetPasswd, GetUser } = Authen(server);
6
+ const { ChangeUser, LogoutSession, ChangePasswd, ChangePasswdAuth, CheckUsername, Status, Logout, Login } = Routes(server, { Auth, sessions, key, SetUsername, SetPassword, GetPasswd, GetUser });
7
+ server.add({
8
+ method: "POST",
9
+ handler: Login,
10
+ path: "/api/login"
11
+ });
12
+ server.add({
13
+ method: "GET",
14
+ middelWares: [Auth],
15
+ handler: async (req, res) => {
16
+ return await server.SendFile(res, "public/login/index.html", 200);
17
+ },
18
+ path: "/"
19
+ });
20
+ server.add({
21
+ method: "GET",
22
+ middelWares: [Auth],
23
+ handler: Logout,
24
+ path: "/api/logout"
25
+ });
26
+ server.add({
27
+ method: "GET",
28
+ middelWares: [Auth],
29
+ path: "/admin/status",
30
+ handler: Status
31
+ });
32
+ server.add({
33
+ method: "GET",
34
+ middelWares: [Auth],
35
+ path: "/messages",
36
+ handler: async (req, res) => {
37
+ res.send(200, {
38
+ "logs": server.getLogs()
39
+ });
40
+ }
41
+ });
42
+ server.add({
43
+ method: "GET",
44
+ path: "/passwd",
45
+ handler: async (req, res) => {
46
+ return await server.SendFile(res, "./public/login/new-password.html", 200);
47
+ }
48
+ });
49
+ server.add({
50
+ method: "GET",
51
+ path: "/api/passwd/:username",
52
+ handler: CheckUsername
53
+ });
54
+ server.add({
55
+ method: "POST",
56
+ path: "/api/passwd/change",
57
+ handler: ChangePasswd
58
+ });
59
+ server.add({
60
+ method: "POST",
61
+ middelWares: [Auth],
62
+ path: "/api/logout/:SessionId",
63
+ handler: LogoutSession
64
+ });
65
+ server.add({
66
+ method: "POST",
67
+ middelWares: [Auth],
68
+ path: "/passwd/change/auth",
69
+ handler: ChangePasswdAuth
70
+ });
71
+ server.add({
72
+ method: "POST",
73
+ middelWares: [Auth],
74
+ path: "/api/user/change",
75
+ handler: ChangeUser
76
+ });
77
+ server.servDir("./public/doc", "docs");
78
+ server.servDir("./public/imgs", "imgs");
79
+ server.servDir("./public/login", "/", [Auth]);
80
+ server.servDir("./public/admin", "admin", [Auth]);
81
+ server.listen(false);
82
+ }
83
+ //# sourceMappingURL=monitor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"monitor.js","sourceRoot":"","sources":["../../../src/admin/monitor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import Server from "../core/Server.js";
2
+ import type { ServerReq, ServerRes } from "../core/types.js";
3
+ import { type auth_t } from "./auth.js";
4
+ export default function Routes(server: Server, obj: auth_t): {
5
+ ChangeUser: (req: ServerReq, res: ServerRes) => Promise<void>;
6
+ LogoutSession: (req: ServerReq, res: ServerRes) => Promise<void>;
7
+ ChangePasswd: (req: ServerReq, res: ServerRes) => Promise<void>;
8
+ ChangePasswdAuth: (req: ServerReq, res: ServerRes) => Promise<void>;
9
+ CheckUsername: (req: ServerReq, res: ServerRes) => Promise<void>;
10
+ Status: (req: ServerReq, res: ServerRes) => Promise<void>;
11
+ Logout: (req: ServerReq, res: ServerRes) => Promise<void>;
12
+ Login: (req: ServerReq, res: ServerRes) => Promise<void>;
13
+ };
14
+ //# sourceMappingURL=routes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../src/admin/routes.ts"],"names":[],"mappings":"AAEA,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,KAAK,EAER,SAAS,EACT,SAAS,EACZ,MAAM,kBAAkB,CAAA;AAEzB,OAAO,EAAE,KAAK,MAAM,EAAC,MAAM,WAAW,CAAC;AAIvC,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM;sBA4JnB,SAAS,OAAO,SAAS;yBApCtB,SAAS,OAAO,SAAS;wBA5B1B,SAAS,OAAO,SAAS;4BA2CrB,SAAS,OAAO,SAAS;yBAvD5B,SAAS,OAAO,SAAS;kBApBhC,SAAS,OAAO,SAAS;kBA7B7B,SAAS,OAAO,SAAS;iBA1B1B,SAAS,OAAO,SAAS;EA4KtD"}
@@ -0,0 +1,150 @@
1
+ import * as os from "node:os";
2
+ import * as JWT from "jsonwebtoken";
3
+ import Server from "../core/Server.js";
4
+ import {} from "./auth.js";
5
+ export default function Routes(server, obj) {
6
+ const { sessions, key, SetUsername, SetPassword, GetPasswd, GetUser } = obj;
7
+ const Login = async (req, res) => {
8
+ let token;
9
+ try {
10
+ if (!req.body.username || req.body.username !== GetUser() || !req.body.password || req.body.password !== GetPasswd())
11
+ throw new Error("User has entred a none valid cridentials");
12
+ const SESSION_ID = crypto.randomUUID();
13
+ token = JWT.default.sign({ id: SESSION_ID }, key, { expiresIn: "1h" });
14
+ res.addCookie("token", token);
15
+ sessions.push({
16
+ id: SESSION_ID,
17
+ isValid: true,
18
+ creation: Date.now(),
19
+ userAgent: req.headers["user-agent"] ?? "DEVICE",
20
+ ip: req.ip ?? "UNKNOWN",
21
+ request: 0
22
+ });
23
+ res.send(200, "./public/admin/index.html", { "set-cookie": `token=${token}; Path=/; SameSite=Lax; HttpOnly` });
24
+ }
25
+ catch (err) {
26
+ res.server.log(err.message, "error");
27
+ res.server.log("A user entred a none valid cridentionl", "error");
28
+ res.send(403, { "Error": "Access Denied" });
29
+ }
30
+ };
31
+ const Logout = async (req, res) => {
32
+ let payloud;
33
+ const TOKEN = res.getCookie("token");
34
+ if (!TOKEN)
35
+ return server.SendFile(res, "public/login/index.html", 401);
36
+ try {
37
+ payloud = JWT.default.verify(TOKEN.value, key);
38
+ if (typeof payloud.id === "undefined")
39
+ throw new Error("an Error is happens");
40
+ for (let i = 0; i < sessions.length; i++) {
41
+ if (sessions[i]?.id === payloud.id) {
42
+ if (!sessions[i]?.isValid)
43
+ throw new Error("None valid token");
44
+ sessions[i].request += 1;
45
+ sessions[i].isValid = false;
46
+ break;
47
+ }
48
+ }
49
+ return await server.SendFile(res, "public/login/index.html", 200);
50
+ }
51
+ catch (err) {
52
+ server.log(err.message, "error");
53
+ res.send(403, { "Error": "Access Denied" });
54
+ }
55
+ };
56
+ const Status = async (req, res) => {
57
+ const now = Date.now();
58
+ res.send(200, {
59
+ "Machin uptime": `${Math.floor(os.uptime() / 86400)}d ${Math.floor((os.uptime() % 86400) / 3600)}h ${Math.floor((os.uptime() % 3600) / 60)}m`,
60
+ "Server uptime": `${Math.floor((now - server.getUpTime()) / (1000 * 60 * 60 * 24)) % 60}D ${Math.floor((now - server.getUpTime()) / (1000 * 60 * 60)) % 60}H ${Math.floor((now - server.getUpTime()) / (1000 * 60)) % 60}M ${Math.floor((now - server.getUpTime()) / 1000) % 60}S`,
61
+ "Arch": os.arch(),
62
+ "Platform": os.platform(),
63
+ "Memory": `${(os.totalmem() / (1024 ** 3)).toFixed(2)} GB`,
64
+ "Used Memory": `${((os.totalmem() - os.freemem()) / (1024 ** 3)).toFixed(2)} GB`,
65
+ "Free Memory": `${(os.freemem() / (1024 ** 3)).toFixed(2)} GB`,
66
+ "Cpu": os.cpus()[0],
67
+ "Connected clients": "0",
68
+ "Total requests": server.getReqCount(),
69
+ "Currnet-session": res.currentID,
70
+ "sessions": sessions,
71
+ "routes": server.getMethodHandlers(),
72
+ "logs": server.getLogs()
73
+ });
74
+ };
75
+ const CheckUsername = async (req, res) => {
76
+ let userName = req.params.username;
77
+ if (typeof userName === undefined)
78
+ return res.send(404, { "user": userName, status: "not found" });
79
+ if (userName === GetUser())
80
+ return res.send(200, { "user": userName, status: "found" });
81
+ return res.send(404, { "user": userName, status: "not found" });
82
+ };
83
+ const ChangePasswd = async (req, res) => {
84
+ try {
85
+ const { userName, oldpwd, newpwd } = req.body;
86
+ if (!userName || !oldpwd || !newpwd)
87
+ return res.send(400, { "user": userName || 'unknown', status: 'missing fields', message: 'Username, old password, and new password are required' });
88
+ if (userName !== GetUser())
89
+ return res.send(404, { "user": userName, status: 'this username not found', message: `${userName} not found` });
90
+ if (oldpwd !== GetPasswd())
91
+ return res.send(401, { "user": userName, status: 'password not corect', message: `Password not corect for ${userName}` });
92
+ if (newpwd.length < 8)
93
+ return res.send(400, { "user": userName, status: 'password must be 8 char +' });
94
+ if (oldpwd === newpwd || newpwd === GetPasswd())
95
+ return res.send(400, { "user": userName, status: 'new password must be different', message: 'New password must be different from current password' });
96
+ SetPassword(newpwd);
97
+ return res.send(200, { "user": userName, status: 'password changed', message: 'Password updated successfully' });
98
+ }
99
+ catch (error) {
100
+ server.log(`Password change error: ${error}`, "error");
101
+ return res.send(500, { "user": req.body?.username || 'unknown', status: 'error', message: 'Internal server error' });
102
+ }
103
+ };
104
+ const LogoutSession = async (req, res) => {
105
+ let SessionID = req.params.SessionId;
106
+ if (typeof SessionID === undefined)
107
+ return res.send(404, { status: "not found" });
108
+ for (let i = 0; i < sessions.length; i++) {
109
+ if (SessionID === sessions[i]?.id) {
110
+ sessions[i].isValid = false;
111
+ return res.send(200, { status: `session ${SessionID} logouted` });
112
+ }
113
+ }
114
+ return res.send(404, { status: "not found" });
115
+ };
116
+ const ChangePasswdAuth = async (req, res) => {
117
+ try {
118
+ const { oldpwd, newpwd } = req.body;
119
+ if (!oldpwd || !newpwd)
120
+ return res.send(401, { status: "all field are required !" });
121
+ if (oldpwd !== GetPasswd())
122
+ return res.send(401, { status: "incorect password" });
123
+ if (oldpwd === newpwd)
124
+ return res.send(400, { status: "old pwd must be defrent from new one" });
125
+ SetPassword(newpwd);
126
+ return res.send(200, { status: "password changed with secc" });
127
+ }
128
+ catch {
129
+ res.send(500, { status: "internal server error" });
130
+ }
131
+ return res.send(401, { status: "?" });
132
+ };
133
+ const ChangeUser = async (req, res) => {
134
+ try {
135
+ const { userName } = req.body;
136
+ if (!userName)
137
+ return res.send(401, { status: "all field are required !" });
138
+ if (userName.length <= 3 || userName.length >= 20)
139
+ return res.send(400, { status: "username must be between 4-19" });
140
+ SetUsername(userName);
141
+ return res.send(200, { status: "username changed with secc" });
142
+ }
143
+ catch {
144
+ res.send(500, { status: "internal server error" });
145
+ }
146
+ return res.send(401, { status: "?" });
147
+ };
148
+ return { ChangeUser, LogoutSession, ChangePasswd, ChangePasswdAuth, CheckUsername, Status, Logout, Login };
149
+ }
150
+ //# sourceMappingURL=routes.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../src/admin/routes.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,4 @@
1
+ import Server from "./Server.js";
2
+ import type { ServerReq } from "./types.js";
3
+ export default function RequestParser(req: ServerReq, server: Server): ServerReq;
4
+ //# sourceMappingURL=Request.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Request.d.ts","sourceRoot":"","sources":["../../../src/core/Request.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAO,aAAa,CAAA;AACjC,OAAO,KAAK,EACR,SAAS,EACZ,MAAM,YAAY,CAAA;AAEnB,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CA2B/E"}
@@ -0,0 +1,24 @@
1
+ import Server from "./Server.js";
2
+ export default function RequestParser(req, server) {
3
+ let body = "";
4
+ try {
5
+ const NewUrl = "http://" + server.getHost() + ":" + server.getPort() + (req.url ?? "");
6
+ req.ReqUrl = URL.parse(NewUrl);
7
+ req.ReqUrl.pathname = req.ReqUrl?.pathname.replace(/(?<=.)\/+$/, "");
8
+ req.Query = new URLSearchParams(req.ReqUrl.searchParams);
9
+ req.queries = Object.fromEntries(req.Query);
10
+ }
11
+ catch {
12
+ server.log(`Cannot parse ${req.url}`, "error");
13
+ req.ReqUrl.pathname = req.url;
14
+ req.queries = {};
15
+ }
16
+ req.ip = req.socket.remoteAddress?.split(':').pop() ?? "DEVICE IP";
17
+ req.server = server;
18
+ server.log(`${req.ip} requested METHOD ${req.method}, PATH ${req.ReqUrl?.pathname}`);
19
+ req.on("data", (chunk) => {
20
+ body += chunk.toString();
21
+ });
22
+ return req;
23
+ }
24
+ //# sourceMappingURL=Request.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Request.js","sourceRoot":"","sources":["../../../src/core/Request.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAO,aAAa,CAAA;AAKjC,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,GAAc,EAAE,MAAc;IAChE,IAAI,IAAI,GAAW,EAAE,CAAC;IAEtB,IACA,CAAC;QACG,MAAM,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,GAAG,GAAG,MAAM,CAAC,OAAO,EAAE,GAAG,CAAC,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QACvF,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QAC9B,GAAG,CAAC,MAAc,CAAC,QAAQ,GAAG,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC,CAAC;QAC9E,GAAG,CAAC,KAAK,GAAG,IAAI,eAAe,CAAE,GAAG,CAAC,MAAc,CAAC,YAAY,CAAC,CAAC;QAClE,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,CAAA;IAC/C,CAAC;IACD,MACA,CAAC;QACG,MAAM,CAAC,GAAG,CAAC,gBAAgB,GAAG,CAAC,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC;QAC9C,GAAG,CAAC,MAAc,CAAC,QAAQ,GAAG,GAAG,CAAC,GAAG,CAAC;QACvC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAA;IACpB,CAAC;IACD,GAAG,CAAC,EAAE,GAAG,GAAG,CAAC,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,WAAW,CAAC;IACnE,GAAG,CAAC,MAAM,GAAG,MAAM,CAAA;IAEnB,MAAM,CAAC,GAAG,CAAC,GAAG,GAAG,CAAC,EAAE,qBAAqB,GAAG,CAAC,MAAM,UAAU,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,CAAC,CAAC;IAErF,GAAG,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;QACrB,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;IAC7B,CAAC,CAAC,CAAA;IAEF,OAAO,GAAG,CAAC;AACf,CAAC"}
@@ -0,0 +1,4 @@
1
+ import Server from "./Server.js";
2
+ import type { ServerRes, ServerReq } from "./types.js";
3
+ export default function ResponseParser(res: ServerRes, req: ServerReq, server: Server): ServerRes;
4
+ //# sourceMappingURL=Response.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Response.d.ts","sourceRoot":"","sources":["../../../src/core/Response.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAA;AAEhC,OAAO,KAAK,EACR,SAAS,EACT,SAAS,EAEZ,MAAM,YAAY,CAAA;AAGnB,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,GAAG,EAAE,SAAS,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,SAAS,CA4FhG"}
@@ -0,0 +1,78 @@
1
+ import Server from "./Server.js";
2
+ import fs from "fs";
3
+ export default function ResponseParser(res, req, server) {
4
+ let cookies = [];
5
+ res.isClosed = false;
6
+ res.ip = req.ip;
7
+ res.getCookie = (name) => {
8
+ if (cookies.length !== 0) {
9
+ for (let i = 0; i < cookies.length; i++)
10
+ if (cookies[i]?.key === name)
11
+ return cookies[i] ?? null;
12
+ }
13
+ return null;
14
+ };
15
+ res.setCookie = (name, value) => {
16
+ for (let i = 0; i < cookies.length; i++)
17
+ if (name === cookies[i]?.key)
18
+ cookies[i].value = value;
19
+ };
20
+ res.addCookie = (name, value) => {
21
+ if (name === "" || value === "")
22
+ return;
23
+ if (res.getCookie(name) != null)
24
+ return res.setCookie(name, value);
25
+ cookies.push({ key: name, value });
26
+ };
27
+ res.getAllCookies = () => {
28
+ const ArrayBuffer = [];
29
+ for (let i = 0; i < cookies.length; i++)
30
+ ArrayBuffer.push(`${cookies[i]?.key}=${cookies[i]?.value};`);
31
+ return ArrayBuffer;
32
+ };
33
+ const setCookies = (cookies) => {
34
+ if (!cookies || cookies === "")
35
+ return;
36
+ const pairs = cookies.split("; ");
37
+ if (!pairs)
38
+ return;
39
+ for (let i = 0; i < pairs.length; i++)
40
+ res.addCookie(pairs[i]?.split("=")[0] ?? "", pairs[i]?.split("=")[1] ?? "");
41
+ };
42
+ setCookies(req.headers["cookie"]);
43
+ res.server = server;
44
+ res.send = (status, data, headers) => {
45
+ if (!res.isClosed) {
46
+ res.writeHead(status, { 'Content-Type': 'application/json', ...headers });
47
+ res.end(data ? JSON.stringify(data) : "");
48
+ res.isClosed = true;
49
+ }
50
+ else {
51
+ server.log(`Multipple replays on ${req.url}`, "error");
52
+ }
53
+ };
54
+ res.sendFile = async (status, ContentType, data, headers) => {
55
+ if (!res.isClosed) {
56
+ try {
57
+ const fileData = await fs.promises.readFile(data.PATH);
58
+ if (res.isClosed)
59
+ return;
60
+ res.writeHead(status, { 'Content-Type': ContentType, ...headers });
61
+ res.end(fileData);
62
+ res.isClosed = true;
63
+ }
64
+ catch {
65
+ if (res.isClosed)
66
+ return;
67
+ res.writeHead(500, { 'Content-Type': 'text/plain' });
68
+ res.end('500 - Internal Error or File Not Found');
69
+ res.isClosed = true;
70
+ return;
71
+ }
72
+ }
73
+ else
74
+ server.log(`Multipple replays on ${req.url}`, "error");
75
+ };
76
+ return res;
77
+ }
78
+ //# sourceMappingURL=Response.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Response.js","sourceRoot":"","sources":["../../../src/core/Response.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ import type { ServerOptions, ServerRes, Handlers, AddOption, HandlerFun, Decorator, Logs, DirFiles } from "./types.js";
2
+ export default class Server {
3
+ private PORT;
4
+ private hostname;
5
+ private methodHandler;
6
+ private decorators;
7
+ private server;
8
+ private sessions;
9
+ private uptime;
10
+ private reqCount;
11
+ private logs;
12
+ private ServerName;
13
+ private defaultHandler;
14
+ getMethodHandlers(): Handlers[];
15
+ getDecorators(): Decorator[];
16
+ getUpTime(): number;
17
+ getReqCount(): number;
18
+ getLogs(): Logs[];
19
+ private generateKey;
20
+ private generateSession;
21
+ private getSession;
22
+ getHost(): string;
23
+ getPort(): number;
24
+ add(opt: AddOption): void;
25
+ decorate(name: string, data: any): void;
26
+ useDecorator(name: string): Decorator | null | undefined;
27
+ readDir(DIR: string, prefix: string): Promise<DirFiles | null>;
28
+ servDir(DIR: string, pref: string, middelWares?: HandlerFun[]): Promise<void>;
29
+ SendFile(res: ServerRes, FILE: string, status: number): Promise<void>;
30
+ log(message: string, type?: "error" | "message"): void;
31
+ constructor(args: ServerOptions);
32
+ listen(enableMon?: boolean, callback?: () => void): void;
33
+ }
34
+ //# sourceMappingURL=Server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Server.d.ts","sourceRoot":"","sources":["../../../src/core/Server.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACR,aAAa,EAEb,SAAS,EACT,QAAQ,EACR,SAAS,EAET,UAAU,EACV,SAAS,EAET,IAAI,EACJ,QAAQ,EACX,MAAM,YAAY,CAAC;AAgBpB,MAAM,CAAC,OAAO,OAAO,MAAM;IACvB,OAAO,CAAC,IAAI,CAAQ;IACpB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,aAAa,CAAY;IACjC,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,MAAM,CAAA;IACd,OAAO,CAAC,QAAQ,CAAW;IAC3B,OAAO,CAAC,MAAM,CAAQ;IACtB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,IAAI,CAAQ;IACpB,OAAO,CAAC,UAAU,CAAQ;IAC1B,OAAO,CAAC,cAAc,CAAY;IAElC,iBAAiB;IAIjB,aAAa;IAIb,SAAS;IAIT,WAAW;IAIX,OAAO;IAOP,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,eAAe;IAYvB,OAAO,CAAC,UAAU;IAIlB,OAAO;IAIP,OAAO;IAIP,GAAG,CAAC,GAAG,EAAE,SAAS;IAoBlB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG;IAOhC,YAAY,CAAC,IAAI,EAAE,MAAM;IAKnB,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAgB9D,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,UAAU,EAAE;IA+D7D,QAAQ,CAAC,GAAG,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+B3E,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS;gBAkBnC,IAAI,EAAE,aAAa;IAyF/B,MAAM,CAAC,SAAS,CAAC,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,MAAM,IAAI;CAOpD"}