fragment-ts 1.0.30 → 1.0.32
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.
- package/API.md +752 -0
- package/DOCS.md +555 -0
- package/README.md +76 -339
- package/USAGE.md +309 -1306
- package/dist/cli/commands/init.command.js +1 -1
- package/dist/core/container/di-container.d.ts.map +1 -1
- package/dist/core/container/di-container.js +62 -106
- package/dist/core/container/di-container.js.map +1 -1
- package/dist/core/decorators/exception-filter.decorator.d.ts +5 -0
- package/dist/core/decorators/exception-filter.decorator.d.ts.map +1 -0
- package/dist/core/decorators/exception-filter.decorator.js +23 -0
- package/dist/core/decorators/exception-filter.decorator.js.map +1 -0
- package/dist/core/decorators/guard.decorator.d.ts +5 -0
- package/dist/core/decorators/guard.decorator.d.ts.map +1 -0
- package/dist/core/decorators/guard.decorator.js +23 -0
- package/dist/core/decorators/guard.decorator.js.map +1 -0
- package/dist/core/decorators/injection.decorators.d.ts.map +1 -1
- package/dist/core/decorators/injection.decorators.js +5 -0
- package/dist/core/decorators/injection.decorators.js.map +1 -1
- package/dist/core/decorators/interceptor.decorator.d.ts +5 -0
- package/dist/core/decorators/interceptor.decorator.d.ts.map +1 -0
- package/dist/core/decorators/interceptor.decorator.js +23 -0
- package/dist/core/decorators/interceptor.decorator.js.map +1 -0
- package/dist/core/decorators/middleware.decorator.d.ts +8 -0
- package/dist/core/decorators/middleware.decorator.d.ts.map +1 -0
- package/dist/core/decorators/middleware.decorator.js +28 -0
- package/dist/core/decorators/middleware.decorator.js.map +1 -0
- package/dist/core/metadata/metadata-keys.d.ts +1 -0
- package/dist/core/metadata/metadata-keys.d.ts.map +1 -1
- package/dist/core/metadata/metadata-keys.js +1 -0
- package/dist/core/metadata/metadata-keys.js.map +1 -1
- package/dist/core/metadata/metadata-storage.d.ts +20 -4
- package/dist/core/metadata/metadata-storage.d.ts.map +1 -1
- package/dist/core/metadata/metadata-storage.js +94 -14
- package/dist/core/metadata/metadata-storage.js.map +1 -1
- package/dist/web/application.d.ts.map +1 -1
- package/dist/web/application.js +79 -10
- package/dist/web/application.js.map +1 -1
- package/dist/web/interfaces.d.ts +5 -1
- package/dist/web/interfaces.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/cli/commands/init.command.ts +1 -1
- package/src/core/container/di-container.ts +95 -177
- package/src/core/decorators/exception-filter.decorator.ts +20 -0
- package/src/core/decorators/guard.decorator.ts +20 -0
- package/src/core/decorators/injection.decorators.ts +5 -0
- package/src/core/decorators/interceptor.decorator.ts +20 -0
- package/src/core/decorators/middleware.decorator.ts +25 -0
- package/src/core/metadata/metadata-keys.ts +1 -0
- package/src/core/metadata/metadata-storage.ts +128 -24
- package/src/web/application.ts +207 -53
- package/src/web/interfaces.ts +11 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata-keys.d.ts","sourceRoot":"","sources":["../../../src/core/metadata/metadata-keys.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa
|
|
1
|
+
{"version":3,"file":"metadata-keys.d.ts","sourceRoot":"","sources":["../../../src/core/metadata/metadata-keys.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2ChB,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,CAAC,OAAO,aAAa,CAAC,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC"}
|
|
@@ -31,6 +31,7 @@ exports.METADATA_KEYS = {
|
|
|
31
31
|
CONDITIONAL_ON_PROPERTY: "fragment:conditional-on-property",
|
|
32
32
|
CONDITIONAL_ON_BEAN: "fragment:conditional-on-bean",
|
|
33
33
|
// Middleware & Guards
|
|
34
|
+
USE_MIDDLEWARE: "fragment:use-middleware",
|
|
34
35
|
USE_GUARDS: "fragment:use-guards",
|
|
35
36
|
USE_INTERCEPTORS: "fragment:use-interceptors",
|
|
36
37
|
USE_FILTERS: "fragment:use-filters",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata-keys.js","sourceRoot":"","sources":["../../../src/core/metadata/metadata-keys.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;IAC3B,mBAAmB;IACnB,WAAW,EAAE,sBAAsB;IACnC,UAAU,EAAE,qBAAqB;IACjC,UAAU,EAAE,qBAAqB;IACjC,OAAO,EAAE,kBAAkB;IAC3B,UAAU,EAAE,qBAAqB;IACjC,kBAAkB,EAAE,6BAA6B;IACjD,KAAK,EAAE,gBAAgB;IAEvB,sBAAsB;IACtB,SAAS,EAAE,oBAAoB;IAC/B,MAAM,EAAE,iBAAiB;IACzB,iBAAiB,EAAE,4BAA4B;IAC/C,SAAS,EAAE,oBAAoB;IAC/B,KAAK,EAAE,gBAAgB;IACvB,QAAQ,EAAE,mBAAmB;IAC7B,IAAI,EAAE,eAAe;IAErB,oBAAoB;IACpB,WAAW,EAAE,sBAAsB;IACnC,UAAU,EAAE,qBAAqB;IACjC,cAAc,EAAE,yBAAyB;IACzC,WAAW,EAAE,sBAAsB;IAEnC,uBAAuB;IACvB,cAAc,EAAE,yBAAyB;IAEzC,yBAAyB;IACzB,oBAAoB,EAAE,+BAA+B;IACrD,2BAA2B,EAAE,sCAAsC;IACnE,uBAAuB,EAAE,kCAAkC;IAC3D,mBAAmB,EAAE,8BAA8B;IAEnD,sBAAsB;IACtB,UAAU,EAAE,qBAAqB;IACjC,gBAAgB,EAAE,2BAA2B;IAC7C,WAAW,EAAE,sBAAsB;IAEnC,aAAa;IACb,QAAQ,EAAE,mBAAmB;IAC7B,SAAS,EAAE,oBAAoB;CACvB,CAAC"}
|
|
1
|
+
{"version":3,"file":"metadata-keys.js","sourceRoot":"","sources":["../../../src/core/metadata/metadata-keys.ts"],"names":[],"mappings":";;;AAAa,QAAA,aAAa,GAAG;IAC3B,mBAAmB;IACnB,WAAW,EAAE,sBAAsB;IACnC,UAAU,EAAE,qBAAqB;IACjC,UAAU,EAAE,qBAAqB;IACjC,OAAO,EAAE,kBAAkB;IAC3B,UAAU,EAAE,qBAAqB;IACjC,kBAAkB,EAAE,6BAA6B;IACjD,KAAK,EAAE,gBAAgB;IAEvB,sBAAsB;IACtB,SAAS,EAAE,oBAAoB;IAC/B,MAAM,EAAE,iBAAiB;IACzB,iBAAiB,EAAE,4BAA4B;IAC/C,SAAS,EAAE,oBAAoB;IAC/B,KAAK,EAAE,gBAAgB;IACvB,QAAQ,EAAE,mBAAmB;IAC7B,IAAI,EAAE,eAAe;IAErB,oBAAoB;IACpB,WAAW,EAAE,sBAAsB;IACnC,UAAU,EAAE,qBAAqB;IACjC,cAAc,EAAE,yBAAyB;IACzC,WAAW,EAAE,sBAAsB;IAEnC,uBAAuB;IACvB,cAAc,EAAE,yBAAyB;IAEzC,yBAAyB;IACzB,oBAAoB,EAAE,+BAA+B;IACrD,2BAA2B,EAAE,sCAAsC;IACnE,uBAAuB,EAAE,kCAAkC;IAC3D,mBAAmB,EAAE,8BAA8B;IAEnD,sBAAsB;IACtB,cAAc,EAAE,yBAAyB;IACzC,UAAU,EAAE,qBAAqB;IACjC,gBAAgB,EAAE,2BAA2B;IAC7C,WAAW,EAAE,sBAAsB;IAEnC,aAAa;IACb,QAAQ,EAAE,mBAAmB;IAC7B,SAAS,EAAE,oBAAoB;CACvB,CAAC"}
|
|
@@ -19,16 +19,31 @@ export interface ParamMetadata {
|
|
|
19
19
|
paramName?: string;
|
|
20
20
|
}
|
|
21
21
|
export interface PropertyInjectionMetadata {
|
|
22
|
+
propertyKey: string;
|
|
22
23
|
type: "autowired" | "inject" | "repository" | "value" | "lazy";
|
|
23
24
|
key: string;
|
|
24
25
|
metadata?: any;
|
|
25
26
|
}
|
|
27
|
+
export interface ExtendedClassMetadata extends ClassMetadata {
|
|
28
|
+
middlewares: any[];
|
|
29
|
+
guards: any[];
|
|
30
|
+
interceptors: any[];
|
|
31
|
+
exceptionFilters: any[];
|
|
32
|
+
}
|
|
33
|
+
export interface ExtendedMethodMetadata extends MethodMetadata {
|
|
34
|
+
middlewares?: any[];
|
|
35
|
+
guards?: any[];
|
|
36
|
+
interceptors?: any[];
|
|
37
|
+
exceptionFilters?: any[];
|
|
38
|
+
}
|
|
26
39
|
export declare class MetadataStorage {
|
|
27
40
|
private static instance;
|
|
28
41
|
private classes;
|
|
29
42
|
private methods;
|
|
30
43
|
private params;
|
|
31
44
|
private propertyInjections;
|
|
45
|
+
private extendedClasses;
|
|
46
|
+
private extendedMethods;
|
|
32
47
|
static getInstance(): MetadataStorage;
|
|
33
48
|
addClass(metadata: ClassMetadata): void;
|
|
34
49
|
getClass(target: any): ClassMetadata | undefined;
|
|
@@ -39,9 +54,10 @@ export declare class MetadataStorage {
|
|
|
39
54
|
addParam(metadata: ParamMetadata): void;
|
|
40
55
|
getParams(target: any, propertyKey: string): ParamMetadata[];
|
|
41
56
|
addPropertyInjection(target: any, propertyKey: string, injection: PropertyInjectionMetadata): void;
|
|
42
|
-
getPropertyInjections(target: any):
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
57
|
+
getPropertyInjections(target: any): PropertyInjectionMetadata[];
|
|
58
|
+
addClassMetadata(target: any, type: string, value: any): void;
|
|
59
|
+
addMethodMetadata(target: any, propertyKey: string, type: string, value: any): void;
|
|
60
|
+
getExtendedClass(target: any): ExtendedClassMetadata | undefined;
|
|
61
|
+
getExtendedMethod(target: any, propertyKey: string): ExtendedMethodMetadata | undefined;
|
|
46
62
|
}
|
|
47
63
|
//# sourceMappingURL=metadata-storage.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata-storage.d.ts","sourceRoot":"","sources":["../../../src/core/metadata/metadata-storage.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,GAAG,CAAC;IACZ,IAAI,EACA,YAAY,GACZ,SAAS,GACT,YAAY,GACZ,YAAY,GACZ,oBAAoB,CAAC;IACzB,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,CAAC;IAC9C,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,GAAG,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,aAAa,EAAE,CAAC;CAChC;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,GAAG,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,KAAK,CAAC;IAC5D,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,WAAW,GAAG,QAAQ,GAAG,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;IAC/D,GAAG,EAAE,MAAM,CAAC;IACZ,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB;AAED,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAkB;IACzC,OAAO,CAAC,OAAO,CAAsC;IACrD,OAAO,CAAC,OAAO,CAA0C;IACzD,OAAO,CAAC,MAAM,CAA2C;IACzD,OAAO,CAAC,kBAAkB,CACd;
|
|
1
|
+
{"version":3,"file":"metadata-storage.d.ts","sourceRoot":"","sources":["../../../src/core/metadata/metadata-storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,8 @@ class MetadataStorage {
|
|
|
7
7
|
this.methods = new Map();
|
|
8
8
|
this.params = new Map();
|
|
9
9
|
this.propertyInjections = new Map();
|
|
10
|
+
this.extendedClasses = new Map();
|
|
11
|
+
this.extendedMethods = new Map();
|
|
10
12
|
}
|
|
11
13
|
static getInstance() {
|
|
12
14
|
if (!MetadataStorage.instance) {
|
|
@@ -50,25 +52,103 @@ class MetadataStorage {
|
|
|
50
52
|
return this.params.get(key) || [];
|
|
51
53
|
}
|
|
52
54
|
addPropertyInjection(target, propertyKey, injection) {
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
if (!this.propertyInjections.has(key)) {
|
|
56
|
-
this.propertyInjections.set(key, []);
|
|
55
|
+
if (!this.propertyInjections.has(target)) {
|
|
56
|
+
this.propertyInjections.set(target, []);
|
|
57
57
|
}
|
|
58
|
-
const injections = this.propertyInjections.get(
|
|
58
|
+
const injections = this.propertyInjections.get(target);
|
|
59
59
|
injections.push(injection);
|
|
60
|
-
console.log(` 🎯 Registered property injection: ${className}.${propertyKey} [${injection.type}]`);
|
|
61
60
|
}
|
|
62
61
|
getPropertyInjections(target) {
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
62
|
+
// Get injections for this specific class
|
|
63
|
+
let injections = this.propertyInjections.get(target) || [];
|
|
64
|
+
// Also get injections from parent classes
|
|
65
|
+
let parent = Object.getPrototypeOf(target);
|
|
66
|
+
while (parent && parent !== Object && parent !== Function.prototype) {
|
|
67
|
+
const parentInjections = this.propertyInjections.get(parent) || [];
|
|
68
|
+
injections = [...injections, ...parentInjections];
|
|
69
|
+
parent = Object.getPrototypeOf(parent);
|
|
70
|
+
}
|
|
71
|
+
return injections;
|
|
72
|
+
}
|
|
73
|
+
addClassMetadata(target, type, value) {
|
|
74
|
+
let meta = this.extendedClasses.get(target);
|
|
75
|
+
if (!meta) {
|
|
76
|
+
const base = this.classes.get(target);
|
|
77
|
+
if (!base) {
|
|
78
|
+
// If no base ClassMetadata exists (e.g., decorator used on non-@Controller/@Service class),
|
|
79
|
+
// we cannot safely create ExtendedClassMetadata — skip or warn.
|
|
80
|
+
console.warn(`⚠️ @${type} applied to ${target.name}, but it's not registered as a known component (missing @Controller, @Service, etc.). Ignoring.`);
|
|
81
|
+
return;
|
|
69
82
|
}
|
|
70
|
-
|
|
71
|
-
|
|
83
|
+
// Clone base and add enhancement arrays
|
|
84
|
+
meta = {
|
|
85
|
+
...base,
|
|
86
|
+
middlewares: [],
|
|
87
|
+
guards: [],
|
|
88
|
+
interceptors: [],
|
|
89
|
+
exceptionFilters: [],
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
switch (type) {
|
|
93
|
+
case "middleware":
|
|
94
|
+
meta.middlewares.push(value);
|
|
95
|
+
break;
|
|
96
|
+
case "guard":
|
|
97
|
+
meta.guards.push(value);
|
|
98
|
+
break;
|
|
99
|
+
case "interceptor":
|
|
100
|
+
meta.interceptors.push(value);
|
|
101
|
+
break;
|
|
102
|
+
case "exceptionFilter":
|
|
103
|
+
meta.exceptionFilters.push(value);
|
|
104
|
+
break;
|
|
105
|
+
default:
|
|
106
|
+
console.warn(`Unknown metadata type: ${type}`);
|
|
107
|
+
return;
|
|
108
|
+
}
|
|
109
|
+
this.extendedClasses.set(target, meta);
|
|
110
|
+
}
|
|
111
|
+
addMethodMetadata(target, propertyKey, type, value) {
|
|
112
|
+
const key = `${target.name}.${propertyKey}`;
|
|
113
|
+
let meta = this.extendedMethods.get(key);
|
|
114
|
+
if (!meta) {
|
|
115
|
+
const base = this.methods.get(key);
|
|
116
|
+
meta = {
|
|
117
|
+
...(base || {
|
|
118
|
+
target,
|
|
119
|
+
propertyKey,
|
|
120
|
+
method: "",
|
|
121
|
+
path: "",
|
|
122
|
+
paramMetadata: [],
|
|
123
|
+
}),
|
|
124
|
+
middlewares: [],
|
|
125
|
+
guards: [],
|
|
126
|
+
interceptors: [],
|
|
127
|
+
exceptionFilters: [],
|
|
128
|
+
};
|
|
129
|
+
}
|
|
130
|
+
switch (type) {
|
|
131
|
+
case "middleware":
|
|
132
|
+
meta.middlewares.push(value);
|
|
133
|
+
break;
|
|
134
|
+
case "guard":
|
|
135
|
+
meta.guards.push(value);
|
|
136
|
+
break;
|
|
137
|
+
case "interceptor":
|
|
138
|
+
meta.interceptors.push(value);
|
|
139
|
+
break;
|
|
140
|
+
case "exceptionFilter":
|
|
141
|
+
meta.exceptionFilters.push(value);
|
|
142
|
+
break;
|
|
143
|
+
}
|
|
144
|
+
this.extendedMethods.set(key, meta);
|
|
145
|
+
}
|
|
146
|
+
getExtendedClass(target) {
|
|
147
|
+
return this.extendedClasses.get(target);
|
|
148
|
+
}
|
|
149
|
+
getExtendedMethod(target, propertyKey) {
|
|
150
|
+
const key = `${target.name}.${propertyKey}`;
|
|
151
|
+
return this.extendedMethods.get(key);
|
|
72
152
|
}
|
|
73
153
|
}
|
|
74
154
|
exports.MetadataStorage = MetadataStorage;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata-storage.js","sourceRoot":"","sources":["../../../src/core/metadata/metadata-storage.ts"],"names":[],"mappings":";;;
|
|
1
|
+
{"version":3,"file":"metadata-storage.js","sourceRoot":"","sources":["../../../src/core/metadata/metadata-storage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../src/web/application.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAE,OAAO,EAAmC,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"application.d.ts","sourceRoot":"","sources":["../../src/web/application.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAE,OAAO,EAAmC,MAAM,SAAS,CAAC;AAsB5E,qBAAa,sBAAsB;IACjC,OAAO,CAAC,GAAG,CAAU;IACrB,OAAO,CAAC,SAAS,CAAc;IAC/B,OAAO,CAAC,eAAe,CAAkB;;IAUzC,OAAO,CAAC,eAAe;IASjB,SAAS,CAAC,QAAQ,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC;YA0C/B,cAAc;IA4B5B,OAAO,CAAC,mBAAmB;IAgC3B,OAAO,CAAC,6BAA6B;IA6DrC,OAAO,CAAC,WAAW;IAWnB,OAAO,CAAC,cAAc;IAmDtB,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,cAAc;IA+MtB,OAAO,CAAC,cAAc;IAWtB,OAAO,CAAC,aAAa;IAWrB,OAAO,CAAC,uBAAuB;IA+B/B,OAAO,CAAC,aAAa;IAIrB,OAAO,CAAC,YAAY;IAcpB,aAAa,IAAI,OAAO;CAGzB"}
|
package/dist/web/application.js
CHANGED
|
@@ -102,7 +102,7 @@ class FragmentWebApplication {
|
|
|
102
102
|
console.log(`📁 src/ exists: ${srcExists}`);
|
|
103
103
|
// Determine if we're running TypeScript directly (dev) or compiled JS (prod)
|
|
104
104
|
const isDevMode = this.isRunningTypeScript();
|
|
105
|
-
console.log(`💻 Running in ${isDevMode ?
|
|
105
|
+
console.log(`💻 Running in ${isDevMode ? "development" : "production"} mode`);
|
|
106
106
|
if (isDevMode && srcExists) {
|
|
107
107
|
// Development mode: scan TypeScript source files
|
|
108
108
|
console.log(" 📝 Development mode: scanning TypeScript files");
|
|
@@ -154,8 +154,8 @@ class FragmentWebApplication {
|
|
|
154
154
|
Object.entries(grouped).forEach(([type, items]) => {
|
|
155
155
|
const icon = this.getTypeIcon(type);
|
|
156
156
|
console.log(` ${icon} ${items.length} ${type}(s)`);
|
|
157
|
-
items.forEach(item => {
|
|
158
|
-
console.log(` • ${item.target.name}${item.path ? ` (${item.path})` :
|
|
157
|
+
items.forEach((item) => {
|
|
158
|
+
console.log(` • ${item.target.name}${item.path ? ` (${item.path})` : ""}`);
|
|
159
159
|
});
|
|
160
160
|
});
|
|
161
161
|
let registered = 0;
|
|
@@ -183,7 +183,7 @@ class FragmentWebApplication {
|
|
|
183
183
|
}
|
|
184
184
|
// Pre-resolve all singleton components to ensure dependencies are injected
|
|
185
185
|
console.log("\n🔧 Initializing components");
|
|
186
|
-
classes.forEach(metadata => {
|
|
186
|
+
classes.forEach((metadata) => {
|
|
187
187
|
if (this.shouldRegister(metadata.target)) {
|
|
188
188
|
const instance = this.container.resolve(metadata.target);
|
|
189
189
|
console.log(` ✓ Initialized: ${metadata.target.name}`);
|
|
@@ -248,9 +248,14 @@ class FragmentWebApplication {
|
|
|
248
248
|
controllers.forEach((controllerMetadata) => {
|
|
249
249
|
try {
|
|
250
250
|
console.log(`\n📍 Controller: ${controllerMetadata.target.name}`);
|
|
251
|
-
console.log(` Base path: ${controllerMetadata.path ||
|
|
251
|
+
console.log(` Base path: ${controllerMetadata.path || "/"}`);
|
|
252
252
|
const controller = this.container.resolve(controllerMetadata.target);
|
|
253
253
|
const basePath = controllerMetadata.path || "";
|
|
254
|
+
// Get controller-level enhancements
|
|
255
|
+
const controllerMiddlewares = (Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_MIDDLEWARE, controllerMetadata.target) || []);
|
|
256
|
+
const controllerGuards = (Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_GUARDS, controllerMetadata.target) || []);
|
|
257
|
+
const controllerInterceptors = (Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_INTERCEPTORS, controllerMetadata.target) || []);
|
|
258
|
+
const controllerFilters = (Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_FILTERS, controllerMetadata.target) || []);
|
|
254
259
|
const methods = this.metadataStorage
|
|
255
260
|
.getAllMethods()
|
|
256
261
|
.filter((m) => m.target === controllerMetadata.target);
|
|
@@ -265,19 +270,83 @@ class FragmentWebApplication {
|
|
|
265
270
|
const methodIcon = this.getMethodIcon(httpMethod);
|
|
266
271
|
console.log(` ${methodIcon} ${methodColor}${httpMethod.toUpperCase().padEnd(7)}\x1b[0m ${fullPath}`);
|
|
267
272
|
totalRoutes++;
|
|
268
|
-
|
|
273
|
+
// Collect method-level enhancements
|
|
274
|
+
const methodMiddlewares = (Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_MIDDLEWARE, controllerMetadata.target.prototype, methodMetadata.propertyKey) || []);
|
|
275
|
+
const methodGuards = (Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_GUARDS, controllerMetadata.target.prototype, methodMetadata.propertyKey) || []);
|
|
276
|
+
const methodInterceptors = (Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_INTERCEPTORS, controllerMetadata.target.prototype, methodMetadata.propertyKey) || []);
|
|
277
|
+
const methodFilters = (Reflect.getMetadata(metadata_keys_1.METADATA_KEYS.USE_FILTERS, controllerMetadata.target.prototype, methodMetadata.propertyKey) || []);
|
|
278
|
+
// Combine: controller + method
|
|
279
|
+
const allMiddlewares = [
|
|
280
|
+
...controllerMiddlewares,
|
|
281
|
+
...methodMiddlewares,
|
|
282
|
+
];
|
|
283
|
+
const allGuards = [...controllerGuards, ...methodGuards];
|
|
284
|
+
const allInterceptors = [
|
|
285
|
+
...controllerInterceptors,
|
|
286
|
+
...methodInterceptors,
|
|
287
|
+
];
|
|
288
|
+
const allFilters = [...controllerFilters, ...methodFilters];
|
|
289
|
+
// Resolve via DI container
|
|
290
|
+
const resolvedMiddlewares = allMiddlewares.map((M) => this.container.resolve(M));
|
|
291
|
+
const resolvedGuards = allGuards.map((G) => this.container.resolve(G));
|
|
292
|
+
const resolvedInterceptors = allInterceptors.map((I) => this.container.resolve(I));
|
|
293
|
+
// Build Express route handler with pipeline
|
|
294
|
+
this.app[httpMethod](fullPath,
|
|
295
|
+
// Middleware stack (Express-compatible)
|
|
296
|
+
...resolvedMiddlewares.map((mw) => (req, res, next) => Promise.resolve(mw.use(req, res, next)).catch(next)),
|
|
297
|
+
// Final unified handler
|
|
298
|
+
async (req, res, next) => {
|
|
269
299
|
try {
|
|
300
|
+
// ➤ Step 1: Guards
|
|
301
|
+
for (const guard of resolvedGuards) {
|
|
302
|
+
const canActivate = await Promise.resolve(guard.canActivate(req));
|
|
303
|
+
if (!canActivate) {
|
|
304
|
+
const error = new Error("Forbidden");
|
|
305
|
+
error.status = 403;
|
|
306
|
+
throw error;
|
|
307
|
+
}
|
|
308
|
+
}
|
|
309
|
+
// ➤ Step 2: Resolve parameters
|
|
270
310
|
const args = this.resolveMethodParameters(methodMetadata, req, res);
|
|
271
311
|
console.log(`\n🔍 Handling ${httpMethod.toUpperCase()} ${fullPath}`);
|
|
272
|
-
//
|
|
273
|
-
|
|
312
|
+
// ➤ Step 3: Interceptors (wrap handler)
|
|
313
|
+
let result;
|
|
314
|
+
if (resolvedInterceptors.length > 0) {
|
|
315
|
+
// First, call the real handler
|
|
316
|
+
const rawResult = await controller[methodMetadata.propertyKey](...args);
|
|
317
|
+
// Then pass result through interceptors in reverse order (or forward — your choice)
|
|
318
|
+
result = rawResult;
|
|
319
|
+
for (const interceptor of resolvedInterceptors) {
|
|
320
|
+
// Allow interceptor to transform the result
|
|
321
|
+
result = await Promise.resolve(interceptor.intercept(req, res, result));
|
|
322
|
+
}
|
|
323
|
+
}
|
|
324
|
+
else {
|
|
325
|
+
result = await controller[methodMetadata.propertyKey](...args);
|
|
326
|
+
}
|
|
327
|
+
// ➤ Step 4: Send response
|
|
274
328
|
if (!res.headersSent) {
|
|
275
329
|
res.json(result);
|
|
276
330
|
}
|
|
277
331
|
}
|
|
278
332
|
catch (error) {
|
|
279
|
-
|
|
280
|
-
|
|
333
|
+
// ➤ Step 5: Exception Filters (method + controller level)
|
|
334
|
+
let handled = false;
|
|
335
|
+
for (const FilterClass of allFilters) {
|
|
336
|
+
const filter = this.container.resolve(FilterClass);
|
|
337
|
+
try {
|
|
338
|
+
const err = error instanceof Error ? error : new Error(String(error));
|
|
339
|
+
filter.catch(err, req, res);
|
|
340
|
+
handled = true;
|
|
341
|
+
break;
|
|
342
|
+
}
|
|
343
|
+
catch (e) {
|
|
344
|
+
console.error(`❌ Exception filter failed:`, e);
|
|
345
|
+
}
|
|
346
|
+
}
|
|
347
|
+
if (!handled) {
|
|
348
|
+
next(error);
|
|
349
|
+
}
|
|
281
350
|
}
|
|
282
351
|
});
|
|
283
352
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"application.js","sourceRoot":"","sources":["../../src/web/application.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"application.js","sourceRoot":"","sources":["../../src/web/application.ts"],"names":[],"mappings":"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"}
|
package/dist/web/interfaces.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Request, Response, NextFunction } from
|
|
1
|
+
import { Request, Response, NextFunction } from "express";
|
|
2
2
|
export interface Middleware {
|
|
3
3
|
use(req: Request, res: Response, next: NextFunction): void | Promise<void>;
|
|
4
4
|
}
|
|
@@ -11,4 +11,8 @@ export interface Interceptor {
|
|
|
11
11
|
export interface ExceptionFilter {
|
|
12
12
|
catch(exception: Error, req: Request, res: Response): void;
|
|
13
13
|
}
|
|
14
|
+
export type MiddlewareClass = new () => Middleware;
|
|
15
|
+
export type GuardClass = new () => Guard;
|
|
16
|
+
export type InterceptorClass = new () => Interceptor;
|
|
17
|
+
export type ExceptionFilterClass = new () => ExceptionFilter;
|
|
14
18
|
//# sourceMappingURL=interfaces.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/web/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE1D,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5E;AAED,MAAM,WAAW,KAAK;IACpB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACvD;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,
|
|
1
|
+
{"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../src/web/interfaces.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAE1D,MAAM,WAAW,UAAU;IACzB,GAAG,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC5E;AAED,MAAM,WAAW,KAAK;IACpB,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;CACvD;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,CACP,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,IAAI,EAAE,YAAY,GACjB,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACzB;AAED,MAAM,WAAW,eAAe;IAC9B,KAAK,CAAC,SAAS,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,QAAQ,GAAG,IAAI,CAAC;CAC5D;AAED,MAAM,MAAM,eAAe,GAAG,UAAU,UAAU,CAAC;AACnD,MAAM,MAAM,UAAU,GAAG,UAAU,KAAK,CAAC;AACzC,MAAM,MAAM,gBAAgB,GAAG,UAAU,WAAW,CAAC;AACrD,MAAM,MAAM,oBAAoB,GAAG,UAAU,eAAe,CAAC"}
|
package/package.json
CHANGED