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,3 @@
1
+ import * as http from "http";
2
+ import Server from "./Server.js";
3
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,IAAI,MAAM,MAAM,CAAA;AAC5B,OAAO,MAAM,MAAM,aAAa,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=example.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.d.ts","sourceRoot":"","sources":["../../examples/example.ts"],"names":[],"mappings":""}
@@ -0,0 +1,11 @@
1
+ import Server from "../src/index.js";
2
+ const srv = new Server({});
3
+ srv.add({
4
+ path: "/",
5
+ handler: async (req, res) => {
6
+ return await srv.SendFile(res, "public/example/default.html", 200);
7
+ },
8
+ method: "GET"
9
+ });
10
+ srv.listen(true);
11
+ //# sourceMappingURL=example.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"example.js","sourceRoot":"","sources":["../../examples/example.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAE,CAAC,CAAA;AAE1B,GAAG,CAAC,GAAG,CAAC;IACJ,IAAI,EAAE,GAAG;IACT,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,EAAE;QACxB,OAAO,MAAM,GAAG,CAAC,QAAQ,CAAC,GAAG,EAAE,6BAA6B,EAAE,GAAG,CAAC,CAAA;IACtE,CAAC;IACD,MAAM,EAAE,KAAK;CAChB,CAAC,CAAA;AAGF,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/index.js ADDED
@@ -0,0 +1,11 @@
1
+ import Server from "./core/Server.js";
2
+ const srv = new Server({ port: 3000 });
3
+ srv.add({
4
+ path: "/messages/:userId",
5
+ method: "GET",
6
+ handler: (req, res) => {
7
+ res.send(200, { data: `message id = ${req.params.userId}` });
8
+ }
9
+ });
10
+ srv.listen(true);
11
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,kBAAkB,CAAA;AAErC,MAAM,GAAG,GAAG,IAAI,MAAM,CAAC,EAAC,IAAI,EAAE,IAAI,EAAC,CAAC,CAAA;AAEpC,GAAG,CAAC,GAAG,CAAC;IACJ,IAAI,EAAE,mBAAmB;IACzB,MAAM,EAAE,KAAK;IACb,OAAO,EAAE,CAAC,GAAG,EAAE,GAAG,EAAE,EAAE;QAClB,GAAG,CAAC,IAAI,CAAC,GAAG,EAAE,EAAC,IAAI,EAAE,gBAAgB,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,EAAC,CAAC,CAAA;IAC9D,CAAC;CACJ,CAAC,CAAA;AAGF,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA"}
@@ -0,0 +1,127 @@
1
+ import * as http from "http";
2
+ export type HandlerFun = (req: ServerReq, res: ServerRes) => void | Promise<void>;
3
+ export type AddOption = {
4
+ method: Methods;
5
+ path: string;
6
+ handler: HandlerFun;
7
+ middelWares?: HandlerFun[] | undefined;
8
+ next?: HandlerFun;
9
+ };
10
+ export type Logs = {
11
+ message: string;
12
+ type: "message" | "error";
13
+ date: string;
14
+ };
15
+ export type Headers = {
16
+ key: string;
17
+ value: string;
18
+ };
19
+ export type Cookie = {
20
+ key: string;
21
+ value: string;
22
+ };
23
+ export type ServerOptions = {
24
+ port?: number;
25
+ hostname?: string;
26
+ reqPerMinute?: number;
27
+ DefaultHandler?: HandlerFun;
28
+ ServerName?: string;
29
+ };
30
+ export type ServerReq = http.IncomingMessage & {
31
+ ReqUrl: URL | null;
32
+ Query: URLSearchParams;
33
+ queries: object;
34
+ body?: any;
35
+ ip: string;
36
+ server: Server;
37
+ params: Record<string, string>;
38
+ };
39
+ export type ServFiles = {
40
+ FileName: string;
41
+ prefix: string;
42
+ };
43
+ export type DirFiles = {
44
+ files: ServFiles[];
45
+ };
46
+ export type ServerRes = http.ServerResponse & {
47
+ body?: any;
48
+ ip: string;
49
+ send: (status: number, data?: any, headers?: object) => void;
50
+ sendFile: (status: number, ContentType: string, data?: any, headers?: object) => void;
51
+ isClosed: boolean;
52
+ server: Server;
53
+ coockie: (key: string, value: string) => string;
54
+ getAllCookies: () => string[];
55
+ setCookie: (name: string, value: string) => void;
56
+ getCookie: (name: string) => Cookie | null;
57
+ addCookie: (name: string, value: string) => void;
58
+ };
59
+ export type Methods = "POST" | "GET" | "PUT" | "DELETE";
60
+ export type Handlers = {
61
+ method: Methods;
62
+ path: string;
63
+ paramNames: string[];
64
+ handler: Function;
65
+ regex: RegExp;
66
+ middelWares?: HandlerFun[] | undefined;
67
+ next?: HandlerFun | undefined;
68
+ };
69
+ export type Decorator = {
70
+ name: string;
71
+ data: any;
72
+ };
73
+ export type Session = {
74
+ ip: string;
75
+ lastReq: number;
76
+ reqCount: number;
77
+ key: string;
78
+ banInterval: number;
79
+ };
80
+ export type AdminSessions = {
81
+ id: string;
82
+ ip: string;
83
+ userAgent: string;
84
+ creation: number;
85
+ isValid: boolean;
86
+ request: number;
87
+ };
88
+ export declare const colors: {
89
+ reset: string;
90
+ black: string;
91
+ red: string;
92
+ green: string;
93
+ yellow: string;
94
+ blue: string;
95
+ magenta: string;
96
+ cyan: string;
97
+ white: string;
98
+ };
99
+ export default class Server {
100
+ private PORT;
101
+ private hostname;
102
+ private methodHandler;
103
+ private decorators;
104
+ private server;
105
+ private sessions;
106
+ private uptime;
107
+ private reqCount;
108
+ private logs;
109
+ private ServerName;
110
+ private defaultHandler;
111
+ private generateKey;
112
+ private generateSession;
113
+ private getSession;
114
+ getHost(): string;
115
+ getPort(): number;
116
+ add(opt: AddOption): void;
117
+ decorate(name: string, data: any): void;
118
+ useDecorator(name: string): Decorator | null | undefined;
119
+ readDir(DIR: string, prefix: string): Promise<DirFiles | null>;
120
+ servDir(DIR: string, pref: string, middelWares?: HandlerFun[]): Promise<void>;
121
+ SendFile(res: ServerRes, FILE: string, status: number): Promise<void>;
122
+ log(message: string, type?: "error" | "message"): void;
123
+ constructor(args: ServerOptions);
124
+ monitor(server: Server): void;
125
+ listen(enableMon?: boolean, callback?: () => void): void;
126
+ }
127
+ //# sourceMappingURL=server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}