reverts commit 5c8a4c1edc.
				
					
				
			This commit is contained in:
		
							
								
								
									
										5
									
								
								dist/container.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										5
									
								
								dist/container.d.ts
									
									
									
									
										vendored
									
									
								
							| @@ -1,10 +1,5 @@ | ||||
| export default class Container { | ||||
|     private services; | ||||
| <<<<<<< HEAD | ||||
|     set<T>(type: new (...args: any[]) => T, instance: T): void; | ||||
|     get<T>(type: new (...args: any[]) => T): T; | ||||
| ======= | ||||
|     register<T>(name: string, factory: () => T): void; | ||||
|     resolve<T>(name: string): T; | ||||
| >>>>>>> 277f5a3 (test) | ||||
| } | ||||
|   | ||||
							
								
								
									
										11
									
								
								dist/container.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										11
									
								
								dist/container.js
									
									
									
									
										vendored
									
									
								
							| @@ -2,7 +2,6 @@ export default class Container { | ||||
|     constructor() { | ||||
|         this.services = new Map(); | ||||
|     } | ||||
| <<<<<<< HEAD | ||||
|     set(type, instance) { | ||||
|         this.services.set(type, instance); | ||||
|     } | ||||
| @@ -11,15 +10,5 @@ export default class Container { | ||||
|         if (!instance) | ||||
|             throw new Error(`Service of type "${type.name}" not found.`); | ||||
|         return instance; | ||||
| ======= | ||||
|     register(name, factory) { | ||||
|         this.services.set(name, factory); | ||||
|     } | ||||
|     resolve(name) { | ||||
|         const factory = this.services.get(name); | ||||
|         if (!factory) | ||||
|             throw new Error(`Service "${name}" not found.`); | ||||
|         return factory(); | ||||
| >>>>>>> 277f5a3 (test) | ||||
|     } | ||||
| } | ||||
|   | ||||
							
								
								
									
										9
									
								
								dist/index.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										9
									
								
								dist/index.d.ts
									
									
									
									
										vendored
									
									
								
							| @@ -3,17 +3,10 @@ import Tpl from "./template.js"; | ||||
| export { Router, Tpl, Request, Response, Handler }; | ||||
| export default class Flummpress { | ||||
|     private server?; | ||||
|     private container; | ||||
|     private middleware; | ||||
|     router: Router; | ||||
|     constructor(); | ||||
| <<<<<<< HEAD | ||||
|     use<T>(plugin: new (...args: any[]) => T | Router | Handler, factory?: () => T): this; | ||||
|     get<T>(type: new (...args: any[]) => T): T; | ||||
| ======= | ||||
|     use<T>(nameOrRouter: string | Router, factory?: () => T): this; | ||||
|     resolve<T>(name: string): T; | ||||
| >>>>>>> 277f5a3 (test) | ||||
|     use(plugin: Router | Handler): this; | ||||
|     private processPipeline; | ||||
|     listen(...args: any[]): this; | ||||
|     private parseRequest; | ||||
|   | ||||
							
								
								
									
										37
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										37
									
								
								dist/index.js
									
									
									
									
										vendored
									
									
								
							| @@ -11,49 +11,20 @@ import http from "node:http"; | ||||
| import { URL } from "node:url"; | ||||
| import querystring from "node:querystring"; | ||||
| import Router from "./router.js"; | ||||
| import Container from "./container.js"; | ||||
| import Tpl from "./template.js"; | ||||
| export { Router, Tpl }; | ||||
| export default class Flummpress { | ||||
|     constructor() { | ||||
|         this.container = new Container(); | ||||
|         this.router = new Router(); | ||||
|         this.middleware = []; | ||||
|     } | ||||
| <<<<<<< HEAD | ||||
|     use(plugin, factory) { | ||||
|         if (typeof plugin === "function" && factory) | ||||
|             this.container.set(plugin, factory()); | ||||
|         else if (plugin instanceof Router) | ||||
|     use(plugin) { | ||||
|         if (plugin instanceof Router) | ||||
|             this.router.use(plugin); | ||||
|         else if (typeof plugin === "function") { | ||||
|             if (typeof plugin === "function" && plugin.length >= 2) | ||||
|                 this.middleware.push(plugin); | ||||
|             else | ||||
|                 throw new TypeError("Invalid plugin provided to use()"); | ||||
|         } | ||||
| ======= | ||||
|     use(nameOrRouter, factory) { | ||||
|         if (typeof nameOrRouter === "string" && factory) | ||||
|             this.container.register(nameOrRouter, factory); | ||||
|         else if (nameOrRouter instanceof Router) | ||||
|             this.router.use(nameOrRouter); | ||||
| >>>>>>> 277f5a3 (test) | ||||
|         else | ||||
|             throw new TypeError("Invalid arguments provided to use()"); | ||||
|         else if (typeof plugin === "function") | ||||
|             this.middleware.push(plugin); | ||||
|         return this; | ||||
|     } | ||||
| <<<<<<< HEAD | ||||
|     get(type) { | ||||
|         const instance = this.container.get(type); | ||||
|         if (!instance) | ||||
|             throw new Error(`Service of type "${type.name}" not found.`); | ||||
|         return instance; | ||||
| ======= | ||||
|     resolve(name) { | ||||
|         return this.container.resolve(name); | ||||
| >>>>>>> 277f5a3 (test) | ||||
|     } | ||||
|     processPipeline(handlers, req, res) { | ||||
|         return __awaiter(this, void 0, void 0, function* () { | ||||
|             for (const handler of handlers) { | ||||
|   | ||||
							
								
								
									
										2
									
								
								dist/router.d.ts
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										2
									
								
								dist/router.d.ts
									
									
									
									
										vendored
									
									
								
							| @@ -17,7 +17,7 @@ export interface Response extends ServerResponse { | ||||
|         body: string; | ||||
|     }) => void; | ||||
|     status: (code: number) => Response; | ||||
|     json: (body: any, code?: number) => void; | ||||
|     json: (body: JSON, code?: number) => void; | ||||
|     html: (body: string, code?: number) => void; | ||||
|     redirect: (target: string, code?: number) => void; | ||||
| } | ||||
|   | ||||
| @@ -1,28 +0,0 @@ | ||||
| export default class Container { | ||||
| <<<<<<< HEAD | ||||
|   private services: Map<Function, any> = new Map(); | ||||
|  | ||||
|   set<T>(type: new (...args: any[]) => T, instance: T): void { | ||||
|     this.services.set(type, instance); | ||||
|   } | ||||
|  | ||||
|   get<T>(type: new (...args: any[]) => T): T { | ||||
|     const instance = this.services.get(type); | ||||
|     if(!instance) | ||||
|       throw new Error(`Service of type "${type.name}" not found.`); | ||||
|     return instance; | ||||
| ======= | ||||
|   private services: Map<string, () => any> = new Map(); | ||||
|  | ||||
|   register<T>(name: string, factory: () => T): void { | ||||
|     this.services.set(name, factory); | ||||
|   } | ||||
|  | ||||
|   resolve<T>(name: string): T { | ||||
|     const factory = this.services.get(name); | ||||
|     if(!factory) | ||||
|       throw new Error(`Service "${name}" not found.`); | ||||
|     return factory(); | ||||
| >>>>>>> 277f5a3 (test) | ||||
|   } | ||||
| } | ||||
							
								
								
									
										42
									
								
								src/index.ts
									
									
									
									
									
								
							
							
						
						
									
										42
									
								
								src/index.ts
									
									
									
									
									
								
							| @@ -3,64 +3,26 @@ import { URL } from "node:url"; | ||||
| import querystring from "node:querystring"; | ||||
|  | ||||
| import Router, { Request, Response, Handler } from "./router.js"; | ||||
| import Container from "./container.js"; | ||||
| import Tpl from "./template.js"; | ||||
|  | ||||
| export { Router, Tpl, Request, Response, Handler }; | ||||
|  | ||||
| export default class Flummpress { | ||||
|   private server?: http.Server; | ||||
|   private container: Container; | ||||
|   private middleware: Handler[]; | ||||
|   public router: Router; | ||||
|  | ||||
|   constructor() { | ||||
|     this.container = new Container(); | ||||
|     this.router = new Router(); | ||||
|     this.middleware = []; | ||||
|   } | ||||
|  | ||||
| <<<<<<< HEAD | ||||
|   public use<T>(plugin: new (...args: any[]) => T | Router | Handler, factory?: () => T): this { | ||||
|     if(typeof plugin === "function" && factory) | ||||
|       this.container.set(plugin, factory()); | ||||
|     else if(plugin instanceof Router) | ||||
|       this.router.use(plugin); | ||||
|     else if(typeof plugin === "function") { | ||||
|       if(typeof plugin === "function" && plugin.length >= 2) | ||||
|         this.middleware.push(plugin as unknown as Handler); | ||||
|       else | ||||
|         throw new TypeError("Invalid plugin provided to use()"); | ||||
|     } | ||||
|     else | ||||
|       throw new TypeError("Invalid arguments provided to use()"); | ||||
| ======= | ||||
|   /*public use(plugin: Router | Handler): this { | ||||
|   public use(plugin: Router | Handler): this { | ||||
|     if(plugin instanceof Router) | ||||
|       this.router.use(plugin); | ||||
|     else if(typeof plugin === "function") | ||||
|       this.middleware.push(plugin); | ||||
| >>>>>>> 277f5a3 (test) | ||||
|     return this; | ||||
|   }*/ | ||||
|  | ||||
|   public use<T>(nameOrRouter: string | Router, factory?: () => T): this { | ||||
|     if(typeof nameOrRouter === "string" && factory) | ||||
|       this.container.register(nameOrRouter, factory); | ||||
|     else if(nameOrRouter instanceof Router) | ||||
|       this.router.use(nameOrRouter); | ||||
|     else | ||||
|       throw new TypeError("Invalid arguments provided to use()"); | ||||
|     return this; | ||||
|   } | ||||
|   public resolve<T>(name: string): T { | ||||
|     return this.container.resolve(name); | ||||
|   } | ||||
|   public get<T>(type: new (...args: any[]) => T): T { | ||||
|     const instance = this.container.get(type); | ||||
|     if(!instance) | ||||
|       throw new Error(`Service of type "${type.name}" not found.`); | ||||
|     return instance; | ||||
|   } | ||||
|  | ||||
|   private async processPipeline(handlers: Handler[], req: Request, res: Response) { | ||||
| @@ -171,7 +133,7 @@ export default class Flummpress { | ||||
|       return res.writeHead(code); | ||||
|     }; | ||||
|  | ||||
|     res.json = (body: any, code = 200) => { | ||||
|     res.json = (body: JSON, code = 200) => { | ||||
|       res.reply({ code, type: "application/json", body: JSON.stringify(body) }); | ||||
|     }; | ||||
|  | ||||
|   | ||||
| @@ -17,7 +17,7 @@ export interface Request extends Omit<IncomingMessage, 'url'> { | ||||
| export interface Response extends ServerResponse { | ||||
|   reply: (options: { code?: number; type?: string; body: string }) => void; | ||||
|   status: (code: number) => Response; | ||||
|   json: (body: any, code?: number) => void; | ||||
|   json: (body: JSON, code?: number) => void; | ||||
|   html: (body: string, code?: number) => void; | ||||
|   redirect: (target: string, code?: number) => void; | ||||
| } | ||||
| @@ -25,14 +25,10 @@ export interface Response extends ServerResponse { | ||||
| export type Handler = (req: Request, res: Response, next?: () => void) => void | Promise<void>; | ||||
|  | ||||
| export default class Router { | ||||
| <<<<<<< HEAD | ||||
|   private routes: Array<{ | ||||
|     path: string | RegExp; | ||||
|     methods: { [method: string]: Handler[] } | ||||
|   }> = []; | ||||
| ======= | ||||
|   private routes: Array<{ path: string | RegExp; methods: { [method: string]: Handler[] } }> = []; | ||||
| >>>>>>> 277f5a3 (test) | ||||
|   private mimes: Map<string, string>; | ||||
|  | ||||
|   constructor() { | ||||
|   | ||||
		Reference in New Issue
	
	Block a user