@fluojs/core 1.0.0-beta.2 → 1.0.0-beta.3
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/README.ko.md +1 -1
- package/README.md +1 -1
- package/dist/metadata/class-di.d.ts +6 -0
- package/dist/metadata/class-di.d.ts.map +1 -1
- package/dist/metadata/class-di.js +9 -0
- package/dist/metadata/controller-route.d.ts +26 -0
- package/dist/metadata/controller-route.d.ts.map +1 -1
- package/dist/metadata/controller-route.js +30 -0
- package/dist/metadata/injection.d.ts +13 -0
- package/dist/metadata/injection.d.ts.map +1 -1
- package/dist/metadata/injection.js +15 -0
- package/dist/metadata/module.d.ts +6 -0
- package/dist/metadata/module.d.ts.map +1 -1
- package/dist/metadata/module.js +11 -0
- package/dist/metadata/shared.d.ts.map +1 -1
- package/dist/metadata/shared.js +1 -2
- package/dist/metadata/symbol-metadata-polyfill.d.ts +5 -0
- package/dist/metadata/symbol-metadata-polyfill.d.ts.map +1 -1
- package/dist/metadata/symbol-metadata-polyfill.js +6 -0
- package/dist/metadata/types.d.ts +78 -0
- package/dist/metadata/types.d.ts.map +1 -1
- package/dist/metadata/validation.d.ts +52 -0
- package/dist/metadata/validation.d.ts.map +1 -1
- package/dist/metadata/validation.js +60 -0
- package/dist/metadata.d.ts +2 -2
- package/dist/metadata.d.ts.map +1 -1
- package/dist/metadata.js +2 -2
- package/package.json +1 -1
package/README.ko.md
CHANGED
|
@@ -60,7 +60,7 @@ class UserService {
|
|
|
60
60
|
|
|
61
61
|
fluo는 TC39 표준 데코레이터를 사용하므로 `experimentalDecorators: true`나 `emitDecoratorMetadata: true`에 의존하지 않습니다.
|
|
62
62
|
|
|
63
|
-
core 메타데이터는 fluo가 소유한 저장소와 TC39 `Symbol.metadata` 통합 지점을 통해 기록되며, `reflect-metadata`나 컴파일러가 생성하는 design type 메타데이터를 사용하지 않습니다. 런타임이 사용자 정의 표준 데코레이터를 평가하기 전에
|
|
63
|
+
core 메타데이터는 fluo가 소유한 저장소와 TC39 `Symbol.metadata` 통합 지점을 통해 기록되며, `reflect-metadata`나 컴파일러가 생성하는 design type 메타데이터를 사용하지 않습니다. `@fluojs/core`를 import하는 것만으로는 전역 `Symbol.metadata` 폴리필을 설치하지 않습니다. 런타임이 사용자 정의 표준 데코레이터를 평가하기 전에 폴리필을 설치해야 한다면 테스트나 부트스트랩 경계에서 `ensureMetadataSymbol()`을 호출하세요.
|
|
64
64
|
|
|
65
65
|
```ts
|
|
66
66
|
import { ensureMetadataSymbol } from '@fluojs/core';
|
package/README.md
CHANGED
|
@@ -62,7 +62,7 @@ class UserService {
|
|
|
62
62
|
|
|
63
63
|
fluo uses TC39 standard decorators. You do not need `experimentalDecorators: true` or `emitDecoratorMetadata: true` to use `@Module`, `@Inject`, `@Global`, or `@Scope`.
|
|
64
64
|
|
|
65
|
-
Core metadata is written through fluo-owned stores and TC39 `Symbol.metadata` integration points, never through `reflect-metadata` or compiler-emitted design types. Call `ensureMetadataSymbol()` at test or bootstrap boundaries when a runtime needs the
|
|
65
|
+
Core metadata is written through fluo-owned stores and TC39 `Symbol.metadata` integration points, never through `reflect-metadata` or compiler-emitted design types. Importing `@fluojs/core` does not install a global `Symbol.metadata` polyfill. Call `ensureMetadataSymbol()` at test or bootstrap boundaries when a runtime needs the polyfill installed before evaluating custom standard decorators.
|
|
66
66
|
|
|
67
67
|
```ts
|
|
68
68
|
import { ensureMetadataSymbol } from '@fluojs/core';
|
|
@@ -27,4 +27,10 @@ export declare function getInheritedClassDiMetadata(target: Function): ClassDiMe
|
|
|
27
27
|
* @returns The effective DI metadata for the class, or `undefined` when none exists.
|
|
28
28
|
*/
|
|
29
29
|
export declare function getClassDiMetadata(target: Function): ClassDiMetadata | undefined;
|
|
30
|
+
/**
|
|
31
|
+
* Reads the process-local class-DI metadata write version.
|
|
32
|
+
*
|
|
33
|
+
* @returns Monotonically increasing version bumped after each class-DI metadata write.
|
|
34
|
+
*/
|
|
35
|
+
export declare function getClassDiMetadataVersion(): number;
|
|
30
36
|
//# sourceMappingURL=class-di.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"class-di.d.ts","sourceRoot":"","sources":["../../src/metadata/class-di.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA2BlD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAQvF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe,GAAG,SAAS,CAEnF;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe,GAAG,SAAS,CA4BzF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe,GAAG,SAAS,CAEhF"}
|
|
1
|
+
{"version":3,"file":"class-di.d.ts","sourceRoot":"","sources":["../../src/metadata/class-di.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA2BlD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,eAAe,GAAG,IAAI,CAQvF;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe,GAAG,SAAS,CAEnF;AAED;;;;;GAKG;AACH,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe,GAAG,SAAS,CA4BzF;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,QAAQ,GAAG,eAAe,GAAG,SAAS,CAEhF;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAElD"}
|
|
@@ -80,4 +80,13 @@ export function getInheritedClassDiMetadata(target) {
|
|
|
80
80
|
*/
|
|
81
81
|
export function getClassDiMetadata(target) {
|
|
82
82
|
return getInheritedClassDiMetadata(target);
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* Reads the process-local class-DI metadata write version.
|
|
87
|
+
*
|
|
88
|
+
* @returns Monotonically increasing version bumped after each class-DI metadata write.
|
|
89
|
+
*/
|
|
90
|
+
export function getClassDiMetadataVersion() {
|
|
91
|
+
return classDiMetadataVersion;
|
|
83
92
|
}
|
|
@@ -1,7 +1,33 @@
|
|
|
1
1
|
import type { ControllerMetadata, RouteMetadata } from './types.js';
|
|
2
2
|
import type { MetadataPropertyKey } from '../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Define controller metadata.
|
|
5
|
+
*
|
|
6
|
+
* @param target The target.
|
|
7
|
+
* @param metadata The metadata.
|
|
8
|
+
*/
|
|
3
9
|
export declare function defineControllerMetadata(target: Function, metadata: ControllerMetadata): void;
|
|
10
|
+
/**
|
|
11
|
+
* Get controller metadata.
|
|
12
|
+
*
|
|
13
|
+
* @param target The target.
|
|
14
|
+
* @returns The get controller metadata result.
|
|
15
|
+
*/
|
|
4
16
|
export declare function getControllerMetadata(target: Function): ControllerMetadata | undefined;
|
|
17
|
+
/**
|
|
18
|
+
* Define route metadata.
|
|
19
|
+
*
|
|
20
|
+
* @param target The target.
|
|
21
|
+
* @param propertyKey The property key.
|
|
22
|
+
* @param metadata The metadata.
|
|
23
|
+
*/
|
|
5
24
|
export declare function defineRouteMetadata(target: object, propertyKey: MetadataPropertyKey, metadata: RouteMetadata): void;
|
|
25
|
+
/**
|
|
26
|
+
* Get route metadata.
|
|
27
|
+
*
|
|
28
|
+
* @param target The target.
|
|
29
|
+
* @param propertyKey The property key.
|
|
30
|
+
* @returns The get route metadata result.
|
|
31
|
+
*/
|
|
6
32
|
export declare function getRouteMetadata(target: object, propertyKey: MetadataPropertyKey): RouteMetadata | undefined;
|
|
7
33
|
//# sourceMappingURL=controller-route.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"controller-route.d.ts","sourceRoot":"","sources":["../../src/metadata/controller-route.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAA+B,MAAM,YAAY,CAAC;AACjG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AA8DvD,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAE7F;AAED,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,GAAG,kBAAkB,GAAG,SAAS,CActF;AAED,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,mBAAmB,EAChC,QAAQ,EAAE,aAAa,GACtB,IAAI,CAEN;AAsCD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB,GAAG,aAAa,GAAG,SAAS,CAW5G"}
|
|
1
|
+
{"version":3,"file":"controller-route.d.ts","sourceRoot":"","sources":["../../src/metadata/controller-route.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,kBAAkB,EAAE,aAAa,EAA+B,MAAM,YAAY,CAAC;AACjG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AA8DvD;;;;;GAKG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,kBAAkB,GAAG,IAAI,CAE7F;AAED;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,QAAQ,GAAG,kBAAkB,GAAG,SAAS,CActF;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,mBAAmB,EAChC,QAAQ,EAAE,aAAa,GACtB,IAAI,CAEN;AAsCD;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB,GAAG,aAAa,GAAG,SAAS,CAW5G"}
|
|
@@ -53,9 +53,23 @@ function getStandardRouteMetadata(target, propertyKey) {
|
|
|
53
53
|
version: metadata.version
|
|
54
54
|
});
|
|
55
55
|
}
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* Define controller metadata.
|
|
59
|
+
*
|
|
60
|
+
* @param target The target.
|
|
61
|
+
* @param metadata The metadata.
|
|
62
|
+
*/
|
|
56
63
|
export function defineControllerMetadata(target, metadata) {
|
|
57
64
|
controllerMetadataStore.write(target, metadata);
|
|
58
65
|
}
|
|
66
|
+
|
|
67
|
+
/**
|
|
68
|
+
* Get controller metadata.
|
|
69
|
+
*
|
|
70
|
+
* @param target The target.
|
|
71
|
+
* @returns The get controller metadata result.
|
|
72
|
+
*/
|
|
59
73
|
export function getControllerMetadata(target) {
|
|
60
74
|
const stored = controllerMetadataStore.read(target);
|
|
61
75
|
const standard = getStandardControllerMetadata(target);
|
|
@@ -69,6 +83,14 @@ export function getControllerMetadata(target) {
|
|
|
69
83
|
version: stored?.version ?? standard?.version
|
|
70
84
|
};
|
|
71
85
|
}
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* Define route metadata.
|
|
89
|
+
*
|
|
90
|
+
* @param target The target.
|
|
91
|
+
* @param propertyKey The property key.
|
|
92
|
+
* @param metadata The metadata.
|
|
93
|
+
*/
|
|
72
94
|
export function defineRouteMetadata(target, propertyKey, metadata) {
|
|
73
95
|
getOrCreatePropertyMap(routeMetadataStore, target).set(propertyKey, cloneRouteMetadata(metadata));
|
|
74
96
|
}
|
|
@@ -98,6 +120,14 @@ function mergeRouteMetadata(stored, standard, required) {
|
|
|
98
120
|
version: stored?.version ?? standard?.version
|
|
99
121
|
};
|
|
100
122
|
}
|
|
123
|
+
|
|
124
|
+
/**
|
|
125
|
+
* Get route metadata.
|
|
126
|
+
*
|
|
127
|
+
* @param target The target.
|
|
128
|
+
* @param propertyKey The property key.
|
|
129
|
+
* @returns The get route metadata result.
|
|
130
|
+
*/
|
|
101
131
|
export function getRouteMetadata(target, propertyKey) {
|
|
102
132
|
const stored = routeMetadataStore.get(target)?.get(propertyKey);
|
|
103
133
|
const standard = getStandardRouteMetadata(target, propertyKey);
|
|
@@ -1,5 +1,18 @@
|
|
|
1
1
|
import type { InjectionMetadata, InjectionSchemaEntry } from './types.js';
|
|
2
2
|
import type { MetadataPropertyKey } from '../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Define injection metadata.
|
|
5
|
+
*
|
|
6
|
+
* @param target The target.
|
|
7
|
+
* @param propertyKey The property key.
|
|
8
|
+
* @param metadata The metadata.
|
|
9
|
+
*/
|
|
3
10
|
export declare function defineInjectionMetadata(target: object, propertyKey: MetadataPropertyKey, metadata: InjectionMetadata): void;
|
|
11
|
+
/**
|
|
12
|
+
* Get injection schema.
|
|
13
|
+
*
|
|
14
|
+
* @param target The target.
|
|
15
|
+
* @returns The get injection schema result.
|
|
16
|
+
*/
|
|
4
17
|
export declare function getInjectionSchema(target: object): InjectionSchemaEntry[];
|
|
5
18
|
//# sourceMappingURL=injection.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"injection.d.ts","sourceRoot":"","sources":["../../src/metadata/injection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAA2B,MAAM,YAAY,CAAC;AACnG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAQvD,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,mBAAmB,EAChC,QAAQ,EAAE,iBAAiB,GAC1B,IAAI,CAEN;AAED,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,EAAE,CAwBzE"}
|
|
1
|
+
{"version":3,"file":"injection.d.ts","sourceRoot":"","sources":["../../src/metadata/injection.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,oBAAoB,EAA2B,MAAM,YAAY,CAAC;AACnG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAQvD;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,mBAAmB,EAChC,QAAQ,EAAE,iBAAiB,GAC1B,IAAI,CAEN;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,oBAAoB,EAAE,CAwBzE"}
|
|
@@ -3,11 +3,26 @@ const injectionMetadataStore = new WeakMap();
|
|
|
3
3
|
function getStandardInjectionMap(target) {
|
|
4
4
|
return getStandardConstructorMetadataMap(target, standardMetadataKeys.injection);
|
|
5
5
|
}
|
|
6
|
+
|
|
7
|
+
/**
|
|
8
|
+
* Define injection metadata.
|
|
9
|
+
*
|
|
10
|
+
* @param target The target.
|
|
11
|
+
* @param propertyKey The property key.
|
|
12
|
+
* @param metadata The metadata.
|
|
13
|
+
*/
|
|
6
14
|
export function defineInjectionMetadata(target, propertyKey, metadata) {
|
|
7
15
|
getOrCreatePropertyMap(injectionMetadataStore, target).set(propertyKey, {
|
|
8
16
|
...metadata
|
|
9
17
|
});
|
|
10
18
|
}
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Get injection schema.
|
|
22
|
+
*
|
|
23
|
+
* @param target The target.
|
|
24
|
+
* @returns The get injection schema result.
|
|
25
|
+
*/
|
|
11
26
|
export function getInjectionSchema(target) {
|
|
12
27
|
const stored = injectionMetadataStore.get(target) ?? new Map();
|
|
13
28
|
const standard = getStandardInjectionMap(target) ?? new Map();
|
|
@@ -13,4 +13,10 @@ export declare function defineModuleMetadata(target: Function, metadata: ModuleM
|
|
|
13
13
|
* @returns A frozen module metadata snapshot, or `undefined` when none was defined.
|
|
14
14
|
*/
|
|
15
15
|
export declare function getModuleMetadata(target: Function): ModuleMetadata | undefined;
|
|
16
|
+
/**
|
|
17
|
+
* Reads the process-local module metadata write version.
|
|
18
|
+
*
|
|
19
|
+
* @returns Monotonically increasing version bumped after each module metadata write.
|
|
20
|
+
*/
|
|
21
|
+
export declare function getModuleMetadataVersion(): number;
|
|
16
22
|
//# sourceMappingURL=module.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../src/metadata/module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"module.d.ts","sourceRoot":"","sources":["../../src/metadata/module.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA+FjD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI,CAYrF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,GAAG,cAAc,GAAG,SAAS,CAE9E;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD"}
|
package/dist/metadata/module.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { cloneCollection, cloneMutableValue } from './shared.js';
|
|
2
2
|
const moduleMetadataStore = new WeakMap();
|
|
3
|
+
let moduleMetadataVersion = 0;
|
|
3
4
|
function isValueProvider(provider) {
|
|
4
5
|
return typeof provider === 'object' && provider !== null && 'useValue' in provider;
|
|
5
6
|
}
|
|
@@ -88,6 +89,7 @@ export function defineModuleMetadata(target, metadata) {
|
|
|
88
89
|
middleware: metadata.middleware ?? existing?.middleware,
|
|
89
90
|
providers: metadata.providers ?? existing?.providers
|
|
90
91
|
})));
|
|
92
|
+
moduleMetadataVersion += 1;
|
|
91
93
|
}
|
|
92
94
|
|
|
93
95
|
/**
|
|
@@ -98,4 +100,13 @@ export function defineModuleMetadata(target, metadata) {
|
|
|
98
100
|
*/
|
|
99
101
|
export function getModuleMetadata(target) {
|
|
100
102
|
return moduleMetadataStore.get(target);
|
|
103
|
+
}
|
|
104
|
+
|
|
105
|
+
/**
|
|
106
|
+
* Reads the process-local module metadata write version.
|
|
107
|
+
*
|
|
108
|
+
* @returns Monotonically increasing version bumped after each module metadata write.
|
|
109
|
+
*/
|
|
110
|
+
export function getModuleMetadataVersion() {
|
|
111
|
+
return moduleMetadataVersion;
|
|
101
112
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/metadata/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGvD;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AAK/D;;GAEG;AACH,eAAO,IAAI,cAAc,QAAwD,CAAC;AAElF;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAY7C;
|
|
1
|
+
{"version":3,"file":"shared.d.ts","sourceRoot":"","sources":["../../src/metadata/shared.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAGvD;;GAEG;AACH,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;AAK/D;;GAEG;AACH,eAAO,IAAI,cAAc,QAAwD,CAAC;AAElF;;;;GAIG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAY7C;AA6ED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAMhD;AAED;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;CAOvB,CAAC;AAEX;;GAEG;AACH,eAAO,MAAM,YAAY;;;;;;;;;CASf,CAAC;AAEX;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,CAAC,EAAE,UAAU,EAAE,SAAS,CAAC,EAAE,GAAG,SAAS,GAAG,CAAC,EAAE,GAAG,SAAS,CAExF;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EACnD,MAAM,EAAE,MAAM,GACb,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAS7B;AAED;;;;;;;;;GASG;AACH,wBAAgB,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,EAAE,GAAG,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,GAAG,SAAS,GAAG,CAAC,EAAE,GAAG,SAAS,CAgBpH;AAGD;;;;;;;;;GASG;AACH,wBAAgB,oCAAoC,CAAC,WAAW,EAAE,QAAQ,GAAG,mBAAmB,GAAG,SAAS,CAE3G;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAiBtF;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,MAAM,GAAG,mBAAmB,GAAG,SAAS,CAIjG;AAED;;;;;;GAMG;AACH,wBAAgB,oCAAoC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS,CAElG;AAED;;;;;;GAMG;AACH,wBAAgB,iCAAiC,CAAC,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,mBAAmB,EAAE,CAAC,CAAC,GAAG,SAAS,CAEzH;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,SAAS,EAC1D,MAAM,EAAE,WAAW,CAAC,mBAAmB,EAAE,OAAO,CAAC,GAAG,SAAS,EAC7D,QAAQ,EAAE,WAAW,CAAC,mBAAmB,EAAE,SAAS,CAAC,GAAG,SAAS,GAChE,mBAAmB,EAAE,CAkBvB;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,CAAC,EACtC,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,mBAAmB,EAAE,CAAC,EAAE,CAAC,CAAC,EACrD,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,mBAAmB,EAChC,KAAK,EAAE,CAAC,GACP,IAAI,CAUN;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,GAAG,IAAI,CASrG"}
|
package/dist/metadata/shared.js
CHANGED
|
@@ -28,7 +28,6 @@ export function ensureMetadataSymbol() {
|
|
|
28
28
|
});
|
|
29
29
|
return metadataSymbol;
|
|
30
30
|
}
|
|
31
|
-
void ensureMetadataSymbol();
|
|
32
31
|
function getActiveMetadataSymbol() {
|
|
33
32
|
const nativeMetadataSymbol = symbolWithMetadata.metadata;
|
|
34
33
|
if (nativeMetadataSymbol && nativeMetadataSymbol !== metadataSymbol) {
|
|
@@ -37,7 +36,7 @@ function getActiveMetadataSymbol() {
|
|
|
37
36
|
return metadataSymbol;
|
|
38
37
|
}
|
|
39
38
|
function getOwnStandardMetadataBagFromSymbol(target, symbol) {
|
|
40
|
-
if (!Object.
|
|
39
|
+
if (!Object.hasOwn(target, symbol)) {
|
|
41
40
|
return undefined;
|
|
42
41
|
}
|
|
43
42
|
const metadata = Reflect.get(target, symbol);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"symbol-metadata-polyfill.d.ts","sourceRoot":"","sources":["../../src/metadata/symbol-metadata-polyfill.ts"],"names":[],"mappings":"AAEA,wBAAgB,4BAA4B,IAAI,MAAM,CAErD"}
|
|
1
|
+
{"version":3,"file":"symbol-metadata-polyfill.d.ts","sourceRoot":"","sources":["../../src/metadata/symbol-metadata-polyfill.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,wBAAgB,4BAA4B,IAAI,MAAM,CAErD"}
|
package/dist/metadata/types.d.ts
CHANGED
|
@@ -1,5 +1,11 @@
|
|
|
1
1
|
import type { Constructor, MaybePromise, MetadataPropertyKey, MetadataSource, Token } from '../types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Defines the metadata collection type.
|
|
4
|
+
*/
|
|
2
5
|
export type MetadataCollection<T = unknown> = T[];
|
|
6
|
+
/**
|
|
7
|
+
* Describes the module metadata contract.
|
|
8
|
+
*/
|
|
3
9
|
export interface ModuleMetadata {
|
|
4
10
|
imports?: MetadataCollection;
|
|
5
11
|
providers?: MetadataCollection;
|
|
@@ -8,20 +14,32 @@ export interface ModuleMetadata {
|
|
|
8
14
|
middleware?: MetadataCollection;
|
|
9
15
|
global?: boolean;
|
|
10
16
|
}
|
|
17
|
+
/**
|
|
18
|
+
* Describes the controller metadata contract.
|
|
19
|
+
*/
|
|
11
20
|
export interface ControllerMetadata {
|
|
12
21
|
basePath: string;
|
|
13
22
|
guards?: MetadataCollection;
|
|
14
23
|
interceptors?: MetadataCollection;
|
|
15
24
|
version?: string;
|
|
16
25
|
}
|
|
26
|
+
/**
|
|
27
|
+
* Describes the route header contract.
|
|
28
|
+
*/
|
|
17
29
|
export interface RouteHeader {
|
|
18
30
|
name: string;
|
|
19
31
|
value: string;
|
|
20
32
|
}
|
|
33
|
+
/**
|
|
34
|
+
* Describes the route redirect contract.
|
|
35
|
+
*/
|
|
21
36
|
export interface RouteRedirect {
|
|
22
37
|
url: string;
|
|
23
38
|
statusCode?: number;
|
|
24
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Describes the route metadata contract.
|
|
42
|
+
*/
|
|
25
43
|
export interface RouteMetadata {
|
|
26
44
|
method: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS' | 'HEAD';
|
|
27
45
|
path: string;
|
|
@@ -33,6 +51,9 @@ export interface RouteMetadata {
|
|
|
33
51
|
successStatus?: number;
|
|
34
52
|
version?: string;
|
|
35
53
|
}
|
|
54
|
+
/**
|
|
55
|
+
* Describes the dto field binding metadata contract.
|
|
56
|
+
*/
|
|
36
57
|
export interface DtoFieldBindingMetadata {
|
|
37
58
|
source: MetadataSource;
|
|
38
59
|
key?: string;
|
|
@@ -41,28 +62,55 @@ export interface DtoFieldBindingMetadata {
|
|
|
41
62
|
convert(value: unknown, target: unknown): MaybePromise<unknown>;
|
|
42
63
|
};
|
|
43
64
|
}
|
|
65
|
+
/**
|
|
66
|
+
* Describes the validation issue metadata contract.
|
|
67
|
+
*/
|
|
44
68
|
export interface ValidationIssueMetadata {
|
|
45
69
|
code: string;
|
|
46
70
|
field?: string;
|
|
47
71
|
message: string;
|
|
48
72
|
source?: MetadataSource;
|
|
49
73
|
}
|
|
74
|
+
/**
|
|
75
|
+
* Defines the validation rule result type.
|
|
76
|
+
*/
|
|
50
77
|
export type ValidationRuleResult = boolean | void | ValidationIssueMetadata | readonly ValidationIssueMetadata[];
|
|
78
|
+
/**
|
|
79
|
+
* Describes the validation decorator options contract.
|
|
80
|
+
*/
|
|
51
81
|
export interface ValidationDecoratorOptions {
|
|
52
82
|
code?: string;
|
|
53
83
|
each?: boolean;
|
|
54
84
|
message?: string;
|
|
55
85
|
}
|
|
86
|
+
/**
|
|
87
|
+
* Describes the custom validation decorator options contract.
|
|
88
|
+
*/
|
|
56
89
|
export interface CustomValidationDecoratorOptions extends ValidationDecoratorOptions {
|
|
57
90
|
source?: MetadataSource;
|
|
58
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* Describes the custom field validation context contract.
|
|
94
|
+
*/
|
|
59
95
|
export interface CustomFieldValidationContext<T = unknown> {
|
|
60
96
|
dto: T;
|
|
61
97
|
propertyKey: MetadataPropertyKey;
|
|
62
98
|
}
|
|
99
|
+
/**
|
|
100
|
+
* Defines the custom field validator type.
|
|
101
|
+
*/
|
|
63
102
|
export type CustomFieldValidator<T = unknown> = (value: unknown, context: CustomFieldValidationContext<T>) => MaybePromise<ValidationRuleResult>;
|
|
103
|
+
/**
|
|
104
|
+
* Defines the custom class validator type.
|
|
105
|
+
*/
|
|
64
106
|
export type CustomClassValidator<T = unknown> = (value: T) => MaybePromise<ValidationRuleResult>;
|
|
107
|
+
/**
|
|
108
|
+
* Defines the conditional field validator type.
|
|
109
|
+
*/
|
|
65
110
|
export type ConditionalFieldValidator<T = unknown> = (dto: T, value: unknown) => MaybePromise<boolean>;
|
|
111
|
+
/**
|
|
112
|
+
* Defines the dto field validation rule type.
|
|
113
|
+
*/
|
|
66
114
|
export type DtoFieldValidationRule = ({
|
|
67
115
|
kind: 'validateIf';
|
|
68
116
|
validateIf: ConditionalFieldValidator;
|
|
@@ -168,31 +216,52 @@ export type DtoFieldValidationRule = ({
|
|
|
168
216
|
validate: CustomFieldValidator;
|
|
169
217
|
source?: MetadataSource;
|
|
170
218
|
} & ValidationDecoratorOptions);
|
|
219
|
+
/**
|
|
220
|
+
* Describes the class validation rule contract.
|
|
221
|
+
*/
|
|
171
222
|
export interface ClassValidationRule {
|
|
172
223
|
code?: string;
|
|
173
224
|
message?: string;
|
|
174
225
|
validate: CustomClassValidator;
|
|
175
226
|
}
|
|
227
|
+
/**
|
|
228
|
+
* Describes the injection metadata contract.
|
|
229
|
+
*/
|
|
176
230
|
export interface InjectionMetadata {
|
|
177
231
|
token: unknown;
|
|
178
232
|
optional?: boolean;
|
|
179
233
|
}
|
|
234
|
+
/**
|
|
235
|
+
* Describes the class di metadata contract.
|
|
236
|
+
*/
|
|
180
237
|
export interface ClassDiMetadata {
|
|
181
238
|
inject?: Token[];
|
|
182
239
|
scope?: 'singleton' | 'request' | 'transient';
|
|
183
240
|
}
|
|
241
|
+
/**
|
|
242
|
+
* Describes the dto binding schema entry contract.
|
|
243
|
+
*/
|
|
184
244
|
export interface DtoBindingSchemaEntry {
|
|
185
245
|
propertyKey: MetadataPropertyKey;
|
|
186
246
|
metadata: DtoFieldBindingMetadata;
|
|
187
247
|
}
|
|
248
|
+
/**
|
|
249
|
+
* Describes the dto validation schema entry contract.
|
|
250
|
+
*/
|
|
188
251
|
export interface DtoValidationSchemaEntry {
|
|
189
252
|
propertyKey: MetadataPropertyKey;
|
|
190
253
|
rules: readonly DtoFieldValidationRule[];
|
|
191
254
|
}
|
|
255
|
+
/**
|
|
256
|
+
* Describes the injection schema entry contract.
|
|
257
|
+
*/
|
|
192
258
|
export interface InjectionSchemaEntry {
|
|
193
259
|
propertyKey: MetadataPropertyKey;
|
|
194
260
|
metadata: InjectionMetadata;
|
|
195
261
|
}
|
|
262
|
+
/**
|
|
263
|
+
* Describes the standard route metadata record contract.
|
|
264
|
+
*/
|
|
196
265
|
export interface StandardRouteMetadataRecord {
|
|
197
266
|
guards?: MetadataCollection;
|
|
198
267
|
headers?: RouteHeader[];
|
|
@@ -204,7 +273,16 @@ export interface StandardRouteMetadataRecord {
|
|
|
204
273
|
successStatus?: number;
|
|
205
274
|
version?: string;
|
|
206
275
|
}
|
|
276
|
+
/**
|
|
277
|
+
* Defines the standard dto binding record type.
|
|
278
|
+
*/
|
|
207
279
|
export type StandardDtoBindingRecord = Partial<DtoFieldBindingMetadata>;
|
|
280
|
+
/**
|
|
281
|
+
* Defines the standard dto validation record type.
|
|
282
|
+
*/
|
|
208
283
|
export type StandardDtoValidationRecord = DtoFieldValidationRule[];
|
|
284
|
+
/**
|
|
285
|
+
* Defines the standard injection record type.
|
|
286
|
+
*/
|
|
209
287
|
export type StandardInjectionRecord = Partial<InjectionMetadata>;
|
|
210
288
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/metadata/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,YAAY,EAAE,mBAAmB,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAEzG,MAAM,MAAM,kBAAkB,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,EAAE,CAAC;AAElD,MAAM,WAAW,cAAc;IAC7B,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,SAAS,CAAC,EAAE,kBAAkB,CAAC;IAC/B,WAAW,CAAC,EAAE,kBAAkB,CAAC;IACjC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IAC7B,UAAU,CAAC,EAAE,kBAAkB,CAAC;IAChC,MAAM,CAAC,EAAE,OAAO,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,CAAC;IACzE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC;IAC5C,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,cAAc,CAAC;IACvB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,KAAK,GAAG;QAAE,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAA;KAAE,CAAC;CACzF;AAED,MAAM,WAAW,uBAAuB;IACtC,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,IAAI,GAAG,uBAAuB,GAAG,SAAS,uBAAuB,EAAE,CAAC;AAEjH,MAAM,WAAW,0BAA0B;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,gCAAiC,SAAQ,0BAA0B;IAClF,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED,MAAM,WAAW,4BAA4B,CAAC,CAAC,GAAG,OAAO;IACvD,GAAG,EAAE,CAAC,CAAC;IACP,WAAW,EAAE,mBAAmB,CAAC;CAClC;AAED,MAAM,MAAM,oBAAoB,CAAC,CAAC,GAAG,OAAO,IAAI,CAC9C,KAAK,EAAE,OAAO,EACd,OAAO,EAAE,4BAA4B,CAAC,CAAC,CAAC,KACrC,YAAY,CAAC,oBAAoB,CAAC,CAAC;AAExC,MAAM,MAAM,oBAAoB,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,YAAY,CAAC,oBAAoB,CAAC,CAAC;AAEjG,MAAM,MAAM,yBAAyB,CAAC,CAAC,GAAG,OAAO,IAAI,CACnD,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,OAAO,KACX,YAAY,CAAC,OAAO,CAAC,CAAC;AAE3B,MAAM,MAAM,sBAAsB,GAC9B,CAAC;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,UAAU,EAAE,yBAAyB,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAC5F,CAAC;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAClD,CAAC;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACnD,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACjE,CAAC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,OAAO,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACpE,CAAC;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAChD,CAAC;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACnD,CAAC;IAAE,IAAI,EAAE,IAAI,CAAC;IAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACzE,CAAC;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAC5E,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACjD,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACrE,CAAC;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAClD,CAAC;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAC/C,CAAC;IAAE,IAAI,EAAE,OAAO,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAChD,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACjD,CAAC;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAC3E,CAAC;IAAE,IAAI,EAAE,KAAK,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAC9C,CAAC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACrE,CAAC;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACnD,CAAC;IAAE,IAAI,EAAE,UAAU,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACnD,CAAC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAC7D,CAAC;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAC7D,CAAC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAC/D,CAAC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,IAAI,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAC/D,CAAC;IAAE,IAAI,EAAE,UAAU,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAClE,CAAC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACrE,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAC5E,CAAC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACnE,CAAC;IAAE,IAAI,EAAE,WAAW,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACnE,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,GAAG,EAAE,WAAW,GAAG,CAAC,MAAM,WAAW,CAAC,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACzF,CAAC;IACC,IAAI,EAAE,aAAa,CAAC;IACpB,SAAS,EACL,OAAO,GACP,cAAc,GACd,OAAO,GACP,QAAQ,GACR,eAAe,GACf,UAAU,GACV,SAAS,GACT,YAAY,GACZ,SAAS,GACT,OAAO,GACP,MAAM,GACN,UAAU,GACV,aAAa,GACb,IAAI,GACJ,MAAM,GACN,MAAM,GACN,MAAM,GACN,KAAK,GACL,QAAQ,GACR,WAAW,GACX,WAAW,GACX,SAAS,GACT,UAAU,GACV,aAAa,GACb,SAAS,GACT,cAAc,GACd,MAAM,GACN,YAAY,GACZ,UAAU,GACV,SAAS,GACT,QAAQ,GACR,WAAW,GACX,KAAK,GACL,MAAM,GACN,SAAS,GACT,UAAU,GACV,WAAW,GACX,SAAS,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,OAAO,EAAE,CAAC;CAC3B,GAAG,0BAA0B,CAAC,GAC/B,CAAC;IAAE,IAAI,EAAE,eAAe,CAAC;IAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACpF,CAAC;IAAE,IAAI,EAAE,kBAAkB,CAAC;IAAC,MAAM,EAAE,SAAS,OAAO,EAAE,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACvF,CAAC;IAAE,IAAI,EAAE,eAAe,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACxD,CAAC;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACtE,CAAC;IAAE,IAAI,EAAE,cAAc,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAAG,0BAA0B,CAAC,GACtE,CAAC;IAAE,IAAI,EAAE,aAAa,CAAC;IAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAA;CAAE,GAAG,0BAA0B,CAAC,GAC9F,CAAC;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,QAAQ,EAAE,oBAAoB,CAAC;IAAC,MAAM,CAAC,EAAE,cAAc,CAAA;CAAE,GAAG,0BAA0B,CAAC,CAAC;AAE/G,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,oBAAoB,CAAC;CAChC;AAED,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,CAAC;CAC/C;AAED,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,mBAAmB,CAAC;IACjC,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,mBAAmB,CAAC;IACjC,KAAK,EAAE,SAAS,sBAAsB,EAAE,CAAC;CAC1C;AAED,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,mBAAmB,CAAC;IACjC,QAAQ,EAAE,iBAAiB,CAAC;CAC7B;AAED,MAAM,WAAW,2BAA2B;IAC1C,MAAM,CAAC,EAAE,kBAAkB,CAAC;IAC5B,OAAO,CAAC,EAAE,WAAW,EAAE,CAAC;IACxB,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAClC,MAAM,CAAC,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC;IACjC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,aAAa,CAAC;IACzB,OAAO,CAAC,EAAE,KAAK,GAAG,IAAI,EAAE,KAAK,EAAE,KAAK,OAAO,CAAC;IAC5C,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,MAAM,wBAAwB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACxE,MAAM,MAAM,2BAA2B,GAAG,sBAAsB,EAAE,CAAC;AACnE,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/metadata/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,63 @@
|
|
|
1
1
|
import type { ClassValidationRule, DtoBindingSchemaEntry, DtoFieldBindingMetadata, DtoFieldValidationRule, DtoValidationSchemaEntry } from './types.js';
|
|
2
2
|
import type { Constructor, MetadataPropertyKey } from '../types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Get dto field binding metadata.
|
|
5
|
+
*
|
|
6
|
+
* @param target The target.
|
|
7
|
+
* @param propertyKey The property key.
|
|
8
|
+
* @returns The get dto field binding metadata result.
|
|
9
|
+
*/
|
|
3
10
|
export declare function getDtoFieldBindingMetadata(target: object, propertyKey: MetadataPropertyKey): DtoFieldBindingMetadata | undefined;
|
|
11
|
+
/**
|
|
12
|
+
* Define dto field binding metadata.
|
|
13
|
+
*
|
|
14
|
+
* @param target The target.
|
|
15
|
+
* @param propertyKey The property key.
|
|
16
|
+
* @param metadata The metadata.
|
|
17
|
+
*/
|
|
4
18
|
export declare function defineDtoFieldBindingMetadata(target: object, propertyKey: MetadataPropertyKey, metadata: DtoFieldBindingMetadata): void;
|
|
19
|
+
/**
|
|
20
|
+
* Append dto field validation rule.
|
|
21
|
+
*
|
|
22
|
+
* @param target The target.
|
|
23
|
+
* @param propertyKey The property key.
|
|
24
|
+
* @param rule The rule.
|
|
25
|
+
*/
|
|
5
26
|
export declare function appendDtoFieldValidationRule(target: object, propertyKey: MetadataPropertyKey, rule: DtoFieldValidationRule): void;
|
|
27
|
+
/**
|
|
28
|
+
* Append class validation rule.
|
|
29
|
+
*
|
|
30
|
+
* @param target The target.
|
|
31
|
+
* @param rule The rule.
|
|
32
|
+
*/
|
|
6
33
|
export declare function appendClassValidationRule(target: Function, rule: ClassValidationRule): void;
|
|
34
|
+
/**
|
|
35
|
+
* Get dto binding schema.
|
|
36
|
+
*
|
|
37
|
+
* @param dto The dto.
|
|
38
|
+
* @returns The get dto binding schema result.
|
|
39
|
+
*/
|
|
7
40
|
export declare function getDtoBindingSchema(dto: Constructor): DtoBindingSchemaEntry[];
|
|
41
|
+
/**
|
|
42
|
+
* Get dto field validation rules.
|
|
43
|
+
*
|
|
44
|
+
* @param target The target.
|
|
45
|
+
* @param propertyKey The property key.
|
|
46
|
+
* @returns The get dto field validation rules result.
|
|
47
|
+
*/
|
|
8
48
|
export declare function getDtoFieldValidationRules(target: object, propertyKey: MetadataPropertyKey): readonly DtoFieldValidationRule[];
|
|
49
|
+
/**
|
|
50
|
+
* Get dto validation schema.
|
|
51
|
+
*
|
|
52
|
+
* @param dto The dto.
|
|
53
|
+
* @returns The get dto validation schema result.
|
|
54
|
+
*/
|
|
9
55
|
export declare function getDtoValidationSchema(dto: Constructor): DtoValidationSchemaEntry[];
|
|
56
|
+
/**
|
|
57
|
+
* Get class validation rules.
|
|
58
|
+
*
|
|
59
|
+
* @param target The target.
|
|
60
|
+
* @returns The get class validation rules result.
|
|
61
|
+
*/
|
|
10
62
|
export declare function getClassValidationRules(target: Function): readonly ClassValidationRule[];
|
|
11
63
|
//# sourceMappingURL=validation.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/metadata/validation.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,mBAAmB,EACnB,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EAGzB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAsBpE,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB,GAAG,uBAAuB,GAAG,SAAS,CAiBhI;AAED,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,mBAAmB,EAChC,QAAQ,EAAE,uBAAuB,GAChC,IAAI,CAEN;AAED,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,mBAAmB,EAChC,IAAI,EAAE,sBAAsB,GAC3B,IAAI,CAEN;AAED,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAI3F;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,qBAAqB,EAAE,CA8B7E;AAED,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB,GAAG,SAAS,sBAAsB,EAAE,CAQ9H;AAED,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,WAAW,GAAG,wBAAwB,EAAE,CAiBnF;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,mBAAmB,EAAE,CAExF"}
|
|
1
|
+
{"version":3,"file":"validation.d.ts","sourceRoot":"","sources":["../../src/metadata/validation.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EACV,mBAAmB,EACnB,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EAGzB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAsBpE;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB,GAAG,uBAAuB,GAAG,SAAS,CAiBhI;AAED;;;;;;GAMG;AACH,wBAAgB,6BAA6B,CAC3C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,mBAAmB,EAChC,QAAQ,EAAE,uBAAuB,GAChC,IAAI,CAEN;AAED;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAC1C,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,mBAAmB,EAChC,IAAI,EAAE,sBAAsB,GAC3B,IAAI,CAEN;AAED;;;;;GAKG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,mBAAmB,GAAG,IAAI,CAI3F;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,qBAAqB,EAAE,CA8B7E;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,mBAAmB,GAAG,SAAS,sBAAsB,EAAE,CAQ9H;AAED;;;;;GAKG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,WAAW,GAAG,wBAAwB,EAAE,CAiBnF;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,QAAQ,GAAG,SAAS,mBAAmB,EAAE,CAExF"}
|
|
@@ -13,6 +13,14 @@ function getStandardClassValidationRules(target) {
|
|
|
13
13
|
const rules = getStandardMetadataBag(target)?.[standardMetadataKeys.classValidation];
|
|
14
14
|
return rules ? rules.map(rule => cloneMutableValue(rule)) : undefined;
|
|
15
15
|
}
|
|
16
|
+
|
|
17
|
+
/**
|
|
18
|
+
* Get dto field binding metadata.
|
|
19
|
+
*
|
|
20
|
+
* @param target The target.
|
|
21
|
+
* @param propertyKey The property key.
|
|
22
|
+
* @returns The get dto field binding metadata result.
|
|
23
|
+
*/
|
|
16
24
|
export function getDtoFieldBindingMetadata(target, propertyKey) {
|
|
17
25
|
const stored = dtoFieldBindingStore.get(target)?.get(propertyKey);
|
|
18
26
|
const standard = getStandardDtoBindingMap(target)?.get(propertyKey);
|
|
@@ -30,19 +38,49 @@ export function getDtoFieldBindingMetadata(target, propertyKey) {
|
|
|
30
38
|
source
|
|
31
39
|
};
|
|
32
40
|
}
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Define dto field binding metadata.
|
|
44
|
+
*
|
|
45
|
+
* @param target The target.
|
|
46
|
+
* @param propertyKey The property key.
|
|
47
|
+
* @param metadata The metadata.
|
|
48
|
+
*/
|
|
33
49
|
export function defineDtoFieldBindingMetadata(target, propertyKey, metadata) {
|
|
34
50
|
getOrCreatePropertyMap(dtoFieldBindingStore, target).set(propertyKey, {
|
|
35
51
|
...metadata
|
|
36
52
|
});
|
|
37
53
|
}
|
|
54
|
+
|
|
55
|
+
/**
|
|
56
|
+
* Append dto field validation rule.
|
|
57
|
+
*
|
|
58
|
+
* @param target The target.
|
|
59
|
+
* @param propertyKey The property key.
|
|
60
|
+
* @param rule The rule.
|
|
61
|
+
*/
|
|
38
62
|
export function appendDtoFieldValidationRule(target, propertyKey, rule) {
|
|
39
63
|
appendPropertyMapValue(dtoFieldValidationStore, target, propertyKey, cloneMutableValue(rule));
|
|
40
64
|
}
|
|
65
|
+
|
|
66
|
+
/**
|
|
67
|
+
* Append class validation rule.
|
|
68
|
+
*
|
|
69
|
+
* @param target The target.
|
|
70
|
+
* @param rule The rule.
|
|
71
|
+
*/
|
|
41
72
|
export function appendClassValidationRule(target, rule) {
|
|
42
73
|
const rules = classValidationStore.read(target) ?? [];
|
|
43
74
|
rules.push(cloneMutableValue(rule));
|
|
44
75
|
classValidationStore.write(target, rules);
|
|
45
76
|
}
|
|
77
|
+
|
|
78
|
+
/**
|
|
79
|
+
* Get dto binding schema.
|
|
80
|
+
*
|
|
81
|
+
* @param dto The dto.
|
|
82
|
+
* @returns The get dto binding schema result.
|
|
83
|
+
*/
|
|
46
84
|
export function getDtoBindingSchema(dto) {
|
|
47
85
|
const stored = dtoFieldBindingStore.get(dto.prototype) ?? new Map();
|
|
48
86
|
const standard = getStandardMetadataBag(dto)?.[standardMetadataKeys.dtoFieldBinding] ?? new Map();
|
|
@@ -68,11 +106,26 @@ export function getDtoBindingSchema(dto) {
|
|
|
68
106
|
}];
|
|
69
107
|
});
|
|
70
108
|
}
|
|
109
|
+
|
|
110
|
+
/**
|
|
111
|
+
* Get dto field validation rules.
|
|
112
|
+
*
|
|
113
|
+
* @param target The target.
|
|
114
|
+
* @param propertyKey The property key.
|
|
115
|
+
* @returns The get dto field validation rules result.
|
|
116
|
+
*/
|
|
71
117
|
export function getDtoFieldValidationRules(target, propertyKey) {
|
|
72
118
|
const stored = dtoFieldValidationStore.get(target)?.get(propertyKey) ?? [];
|
|
73
119
|
const standard = getStandardDtoValidationMap(target)?.get(propertyKey) ?? [];
|
|
74
120
|
return [...standard.map(rule => cloneMutableValue(rule)), ...stored.map(rule => cloneMutableValue(rule))];
|
|
75
121
|
}
|
|
122
|
+
|
|
123
|
+
/**
|
|
124
|
+
* Get dto validation schema.
|
|
125
|
+
*
|
|
126
|
+
* @param dto The dto.
|
|
127
|
+
* @returns The get dto validation schema result.
|
|
128
|
+
*/
|
|
76
129
|
export function getDtoValidationSchema(dto) {
|
|
77
130
|
const stored = dtoFieldValidationStore.get(dto.prototype) ?? new Map();
|
|
78
131
|
const standard = getStandardDtoValidationMap(dto.prototype) ?? new Map();
|
|
@@ -88,6 +141,13 @@ export function getDtoValidationSchema(dto) {
|
|
|
88
141
|
}];
|
|
89
142
|
});
|
|
90
143
|
}
|
|
144
|
+
|
|
145
|
+
/**
|
|
146
|
+
* Get class validation rules.
|
|
147
|
+
*
|
|
148
|
+
* @param target The target.
|
|
149
|
+
* @returns The get class validation rules result.
|
|
150
|
+
*/
|
|
91
151
|
export function getClassValidationRules(target) {
|
|
92
152
|
return [...(getStandardClassValidationRules(target) ?? []), ...(classValidationStore.read(target) ?? [])];
|
|
93
153
|
}
|
package/dist/metadata.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { getClassDiMetadata, getInheritedClassDiMetadata, getOwnClassDiMetadata, defineClassDiMetadata } from './metadata/class-di.js';
|
|
1
|
+
export { getClassDiMetadata, getClassDiMetadataVersion, getInheritedClassDiMetadata, getOwnClassDiMetadata, defineClassDiMetadata, } from './metadata/class-di.js';
|
|
2
2
|
export { defineControllerMetadata, defineRouteMetadata, getControllerMetadata, getRouteMetadata } from './metadata/controller-route.js';
|
|
3
3
|
export { defineInjectionMetadata, getInjectionSchema } from './metadata/injection.js';
|
|
4
|
-
export { defineModuleMetadata, getModuleMetadata } from './metadata/module.js';
|
|
4
|
+
export { defineModuleMetadata, getModuleMetadata, getModuleMetadataVersion } from './metadata/module.js';
|
|
5
5
|
export { ensureMetadataSymbol, getOwnStandardConstructorMetadataBag, getStandardConstructorMetadataBag, getStandardMetadataBag, metadataKeys, metadataSymbol, } from './metadata/shared.js';
|
|
6
6
|
export { ensureSymbolMetadataPolyfill } from './metadata/symbol-metadata-polyfill.js';
|
|
7
7
|
export { appendClassValidationRule, appendDtoFieldValidationRule, defineDtoFieldBindingMetadata, getClassValidationRules, getDtoBindingSchema, getDtoFieldBindingMetadata, getDtoFieldValidationRules, getDtoValidationSchema, } from './metadata/validation.js';
|
package/dist/metadata.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,kBAAkB,EAClB,yBAAyB,EACzB,2BAA2B,EAC3B,qBAAqB,EACrB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,wBAAwB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AACxI,OAAO,EAAE,uBAAuB,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AACzG,OAAO,EACL,oBAAoB,EACpB,oCAAoC,EACpC,iCAAiC,EACjC,sBAAsB,EACtB,YAAY,EACZ,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AACtF,OAAO,EACL,yBAAyB,EACzB,4BAA4B,EAC5B,6BAA6B,EAC7B,uBAAuB,EACvB,mBAAmB,EACnB,0BAA0B,EAC1B,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,0BAA0B,CAAC;AAClC,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,yBAAyB,EACzB,kBAAkB,EAClB,oBAAoB,EACpB,4BAA4B,EAC5B,oBAAoB,EACpB,gCAAgC,EAChC,qBAAqB,EACrB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,iBAAiB,EACjB,oBAAoB,EACpB,kBAAkB,EAClB,cAAc,EACd,WAAW,EACX,aAAa,EACb,aAAa,EACb,0BAA0B,EAC1B,uBAAuB,EACvB,oBAAoB,GACrB,MAAM,qBAAqB,CAAC"}
|
package/dist/metadata.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
export { getClassDiMetadata, getInheritedClassDiMetadata, getOwnClassDiMetadata, defineClassDiMetadata } from './metadata/class-di.js';
|
|
1
|
+
export { getClassDiMetadata, getClassDiMetadataVersion, getInheritedClassDiMetadata, getOwnClassDiMetadata, defineClassDiMetadata } from './metadata/class-di.js';
|
|
2
2
|
export { defineControllerMetadata, defineRouteMetadata, getControllerMetadata, getRouteMetadata } from './metadata/controller-route.js';
|
|
3
3
|
export { defineInjectionMetadata, getInjectionSchema } from './metadata/injection.js';
|
|
4
|
-
export { defineModuleMetadata, getModuleMetadata } from './metadata/module.js';
|
|
4
|
+
export { defineModuleMetadata, getModuleMetadata, getModuleMetadataVersion } from './metadata/module.js';
|
|
5
5
|
export { ensureMetadataSymbol, getOwnStandardConstructorMetadataBag, getStandardConstructorMetadataBag, getStandardMetadataBag, metadataKeys, metadataSymbol } from './metadata/shared.js';
|
|
6
6
|
export { ensureSymbolMetadataPolyfill } from './metadata/symbol-metadata-polyfill.js';
|
|
7
7
|
export { appendClassValidationRule, appendDtoFieldValidationRule, defineDtoFieldBindingMetadata, getClassValidationRules, getDtoBindingSchema, getDtoFieldBindingMetadata, getDtoFieldValidationRules, getDtoValidationSchema } from './metadata/validation.js';
|