@fluojs/core 1.0.0-beta.2 → 1.0.0-beta.4

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 CHANGED
@@ -23,7 +23,7 @@ npm install @fluojs/core
23
23
 
24
24
  ## 사용 시점
25
25
 
26
- - 표준 데코레이터로 모듈, 프로바이더, 컨트롤러를 선언할 때
26
+ - 표준 데코레이터로 모듈이나 프로바이더를 선언할 때
27
27
  - fluo 모듈 그래프에 참여하는 프레임워크 확장이나 내부 라이브러리를 만들 때
28
28
  - `Constructor<T>`, `Token<T>`, 프레임워크 공통 에러 같은 기본 타입과 계약을 직접 다뤄야 할 때
29
29
 
@@ -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 메타데이터를 사용하지 않습니다. 런타임이 사용자 정의 표준 데코레이터를 평가하기 전에 `Symbol.metadata` 폴리필을 설치해야 한다면 테스트나 부트스트랩 경계에서 `ensureMetadataSymbol()`을 호출하세요.
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';
@@ -81,15 +81,13 @@ class UsesConfigValue {
81
81
  }
82
82
  ```
83
83
 
84
- 여러 토큰을 지정할 때는 `@Inject(A, B)`처럼 variadic 호출을 사용하면 됩니다.
85
-
86
- 마이그레이션 기간 동안 legacy 배열 형식인 `@Inject([A, B])`도 계속 정규화되지만, 새 코드는 constructor 토큰을 표준 데코레이터 사용 방식과 맞추기 위해 variadic 형식을 권장합니다.
84
+ 여러 constructor 토큰은 `@Inject(A, B)`처럼 variadic 호출로 지정하면 dependency metadata가 표준 데코레이터 사용 방식과 맞게 유지됩니다. `@Inject([A, B])` 배열 형태도 허용되지만, 새 코드는 variadic 형태를 사용하는 것이 좋습니다.
87
85
 
88
86
  ### 형제 패키지를 위한 공용 메타데이터 헬퍼
89
87
 
90
88
  내부 메타데이터 reader/writer는 `@fluojs/core/internal` 아래에 있으며, `@fluojs/di`, `@fluojs/http`, `@fluojs/runtime` 같은 패키지들이 같은 메타데이터 모델을 공유할 수 있게 합니다.
91
89
 
92
- 애플리케이션 코드는 공개 데코레이터와 `ensureMetadataSymbol()`을 `@fluojs/core`에서 import해야 합니다. `@fluojs/core/internal` 서브패스는 메타데이터 레코드를 읽거나, 명시적 저장소와 `Symbol.metadata`를 병합하거나, 프레임워크 수준 데코레이터를 만드는 fluo 패키지를 위한 경로입니다. 표준 metadata bag helper는 current/native `Symbol.metadata`와 fallback symbol이 섞인 lookup을 처리합니다. 어느 era에서 온 own metadata든 같은 key에 대해서는 어느 era에서 온 inherited metadata보다 우선하지만, child가 다른 key만 소유한 경우 parent constructor의 inherited key는 계속 보입니다. DI와 모듈 그래프 hot path의 allocation을 줄이기 위해 `getModuleMetadata()`, `getOwnClassDiMetadata()`, `getInheritedClassDiMetadata()`, `getClassDiMetadata()`는 frozen snapshot을 반환하며 write 사이에는 같은 reference를 재사용할 수 있습니다. 이 결과, collection 필드, module provider descriptor wrapper와 middleware route-config wrapper(그 안의 `routes` 배열 포함)는 immutable로 취급해야 합니다. `useValue` payload 객체와 runtime middleware/guard/interceptor instance는 mutable reference로 유지되며 이 snapshot 때문에 freeze되지 않습니다. 다른 metadata reader는 각 reader의 테스트가 stable-reference 재사용을 문서화하지 않는 한 기존 defensive-read 동작을 유지합니다.
90
+ 애플리케이션 코드는 공개 데코레이터와 `ensureMetadataSymbol()`을 `@fluojs/core`에서 import해야 합니다. `@fluojs/core/internal` 서브패스는 메타데이터 레코드, 컨트롤러/라우트 헬퍼, injection/validation 헬퍼, clone 유틸리티가 필요한 fluo 패키지를 위한 경로입니다. 표준 metadata bag helper는 current/native `Symbol.metadata`와 fallback symbol이 섞인 lookup을 처리합니다. 어느 era에서 온 own metadata든 같은 key에 대해서는 어느 era에서 온 inherited metadata보다 우선하지만, child가 다른 key만 소유한 경우 parent constructor의 inherited key는 계속 보입니다. DI와 모듈 그래프 hot path의 allocation을 줄이기 위해 `getModuleMetadata()`, `getOwnClassDiMetadata()`, `getInheritedClassDiMetadata()`, `getClassDiMetadata()`는 frozen snapshot을 반환하며 write 사이에는 같은 reference를 재사용할 수 있습니다. 이 결과, collection 필드, module provider descriptor wrapper와 middleware route-config wrapper(그 안의 `routes` 배열 포함)는 immutable로 취급해야 합니다. `useValue` payload 객체와 runtime middleware/guard/interceptor instance는 mutable reference로 유지되며 이 snapshot 때문에 freeze되지 않습니다. 다른 metadata reader는 각 reader의 테스트가 stable-reference 재사용을 문서화하지 않는 한 기존 defensive-read 동작을 유지합니다.
93
91
 
94
92
  ```ts
95
93
  import { getModuleMetadata } from '@fluojs/core/internal';
@@ -160,10 +158,10 @@ class Logger {}
160
158
  ## 공개 API
161
159
 
162
160
  - **데코레이터**: `Module`, `Global`, `Inject`, `Scope`
163
- - **에러**: `FluoError`, `InvariantError`, `FluoCodeError`
161
+ - **에러**: `FluoError`, `InvariantError`, `FluoCodeError`, `FluoErrorOptions`, `formatTokenName`
164
162
  - **메타데이터 런타임**: `ensureMetadataSymbol`
165
- - **타입**: `Constructor<T>`, `Token<T>`, `MaybePromise<T>`, `AsyncModuleOptions`
166
- - **내부 서브패스**: `@fluojs/core/internal`을 통한 메타데이터 헬퍼
163
+ - **타입**: `Constructor<T>`, `Token<T>`, `MaybePromise<T>`, `AsyncModuleOptions`, `MetadataPropertyKey`, `MetadataSource`
164
+ - **내부 서브패스**: `@fluojs/core/internal`을 통한 메타데이터 헬퍼, 컨트롤러/라우트 헬퍼, injection 헬퍼, validation 헬퍼, clone 유틸리티
167
165
 
168
166
  ## 관련 패키지
169
167
 
package/README.md CHANGED
@@ -25,7 +25,7 @@ npm install @fluojs/core
25
25
 
26
26
  Use this package when you are:
27
27
 
28
- - defining modules, providers, or controllers with fluo's standard decorators
28
+ - defining modules or providers with fluo's standard decorators
29
29
  - building framework extensions that need to participate in the module graph
30
30
  - working with shared framework errors, tokens, or constructor-based utility types
31
31
 
@@ -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 `Symbol.metadata` polyfill installed before evaluating custom standard decorators.
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';
@@ -83,15 +83,13 @@ class UsesConfigValue {
83
83
  }
84
84
  ```
85
85
 
86
- Pass multiple tokens as variadic arguments such as `@Inject(A, B)`.
87
-
88
- The legacy array form `@Inject([A, B])` remains normalized during the migration window, but new code should prefer the variadic form so constructor tokens stay aligned with standard decorator usage.
86
+ Pass multiple constructor tokens as variadic arguments, such as `@Inject(A, B)`, so dependency metadata stays aligned with standard decorator usage. The array form `@Inject([A, B])` is also accepted, but new code should prefer the variadic form.
89
87
 
90
88
  ### Shared metadata helpers for sibling packages
91
89
 
92
90
  Internal readers and writers live under `@fluojs/core/internal`, which is how packages like `@fluojs/di`, `@fluojs/http`, and `@fluojs/runtime` consume the same metadata model.
93
91
 
94
- Application code should import public decorators and `ensureMetadataSymbol()` from `@fluojs/core`. The `@fluojs/core/internal` subpath is reserved for fluo packages that need to read metadata records, merge explicit stores with `Symbol.metadata`, or build framework-level decorators. Standard metadata bag helpers handle mixed-era lookups across current/native `Symbol.metadata` and the fallback symbol: own metadata from either era overrides inherited metadata from either era for the same key, while inherited keys from parent constructors remain visible when the child owns a different key. To reduce DI and module-graph hot-path allocations, `getModuleMetadata()`, `getOwnClassDiMetadata()`, `getInheritedClassDiMetadata()`, and `getClassDiMetadata()` return frozen snapshots and may reuse the same reference between writes. Treat those results, their collection fields, and module provider descriptor wrappers, and middleware route-config wrappers (including their `routes` arrays) as immutable. `useValue` payload objects and runtime middleware/guard/interceptor instances remain mutable references and are not frozen by these snapshots. Other metadata readers keep their existing defensive-read behavior unless their own tests document stable-reference reuse.
92
+ Application code should import public decorators and `ensureMetadataSymbol()` from `@fluojs/core`. The `@fluojs/core/internal` subpath is reserved for fluo packages that need metadata records, controller/route helpers, injection and validation helpers, or clone utilities. Standard metadata bag helpers handle mixed-era lookups across current/native `Symbol.metadata` and the fallback symbol: own metadata from either era overrides inherited metadata from either era for the same key, while inherited keys from parent constructors remain visible when the child owns a different key. To reduce DI and module-graph hot-path allocations, `getModuleMetadata()`, `getOwnClassDiMetadata()`, `getInheritedClassDiMetadata()`, and `getClassDiMetadata()` return frozen snapshots and may reuse the same reference between writes. Treat those results, their collection fields, module provider descriptor wrappers, and middleware route-config wrappers (including their `routes` arrays) as immutable. `useValue` payload objects and runtime middleware/guard/interceptor instances remain mutable references and are not frozen by these snapshots. Other metadata readers keep their existing defensive-read behavior unless their own tests document stable-reference reuse.
95
93
 
96
94
  ```ts
97
95
  import { getModuleMetadata } from '@fluojs/core/internal';
@@ -162,10 +160,10 @@ Standard decorators cannot automatically infer types for abstract classes or int
162
160
  ## Public API
163
161
 
164
162
  - **Decorators**: `Module`, `Global`, `Inject`, `Scope`
165
- - **Errors**: `FluoError`, `InvariantError`, `FluoCodeError`
163
+ - **Errors**: `FluoError`, `InvariantError`, `FluoCodeError`, `FluoErrorOptions`, `formatTokenName`
166
164
  - **Metadata runtime**: `ensureMetadataSymbol`
167
- - **Types**: `Constructor<T>`, `Token<T>`, `MaybePromise<T>`, `AsyncModuleOptions`
168
- - **Internal subpath**: metadata helpers via `@fluojs/core/internal`
165
+ - **Types**: `Constructor<T>`, `Token<T>`, `MaybePromise<T>`, `AsyncModuleOptions`, `MetadataPropertyKey`, `MetadataSource`
166
+ - **Internal subpath**: metadata helpers, controller/route helpers, injection helpers, validation helpers, and clone utilities via `@fluojs/core/internal`
169
167
 
170
168
  ## Related Packages
171
169
 
@@ -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;AA8FjD;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,GAAG,IAAI,CAWrF;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,QAAQ,GAAG,cAAc,GAAG,SAAS,CAE9E"}
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"}
@@ -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;AA+ED;;;;;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"}
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"}
@@ -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.prototype.hasOwnProperty.call(target, symbol)) {
39
+ if (!Object.hasOwn(target, symbol)) {
41
40
  return undefined;
42
41
  }
43
42
  const metadata = Reflect.get(target, symbol);
@@ -1,2 +1,7 @@
1
+ /**
2
+ * Ensure symbol metadata polyfill.
3
+ *
4
+ * @returns The ensure symbol metadata polyfill result.
5
+ */
1
6
  export declare function ensureSymbolMetadataPolyfill(): symbol;
2
7
  //# sourceMappingURL=symbol-metadata-polyfill.d.ts.map
@@ -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"}
@@ -1,4 +1,10 @@
1
1
  import { ensureMetadataSymbol } from './shared.js';
2
+
3
+ /**
4
+ * Ensure symbol metadata polyfill.
5
+ *
6
+ * @returns The ensure symbol metadata polyfill result.
7
+ */
2
8
  export function ensureSymbolMetadataPolyfill() {
3
9
  return ensureMetadataSymbol();
4
10
  }
@@ -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,22 +14,34 @@ 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
- method: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS' | 'HEAD';
44
+ method: 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'OPTIONS' | 'HEAD' | 'ALL';
27
45
  path: string;
28
46
  request?: new (...args: never[]) => unknown;
29
47
  guards?: MetadataCollection;
@@ -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":"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"}
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;;GAEG;AACH,MAAM,MAAM,kBAAkB,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,EAAE,CAAC;AAElD;;GAEG;AACH,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;;GAEG;AACH,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;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,GAAG,MAAM,GAAG,KAAK,CAAC;IACjF,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;;GAEG;AACH,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;;GAEG;AACH,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;;GAEG;AACH,MAAM,MAAM,oBAAoB,GAAG,OAAO,GAAG,IAAI,GAAG,uBAAuB,GAAG,SAAS,uBAAuB,EAAE,CAAC;AAEjH;;GAEG;AACH,MAAM,WAAW,0BAA0B;IACzC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,gCAAiC,SAAQ,0BAA0B;IAClF,MAAM,CAAC,EAAE,cAAc,CAAC;CACzB;AAED;;GAEG;AACH,MAAM,WAAW,4BAA4B,CAAC,CAAC,GAAG,OAAO;IACvD,GAAG,EAAE,CAAC,CAAC;IACP,WAAW,EAAE,mBAAmB,CAAC;CAClC;AAED;;GAEG;AACH,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;;GAEG;AACH,MAAM,MAAM,oBAAoB,CAAC,CAAC,GAAG,OAAO,IAAI,CAAC,KAAK,EAAE,CAAC,KAAK,YAAY,CAAC,oBAAoB,CAAC,CAAC;AAEjG;;GAEG;AACH,MAAM,MAAM,yBAAyB,CAAC,CAAC,GAAG,OAAO,IAAI,CACnD,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,OAAO,KACX,YAAY,CAAC,OAAO,CAAC,CAAC;AAE3B;;GAEG;AACH,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;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,oBAAoB,CAAC;CAChC;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,MAAM,CAAC,EAAE,KAAK,EAAE,CAAC;IACjB,KAAK,CAAC,EAAE,WAAW,GAAG,SAAS,GAAG,WAAW,CAAC;CAC/C;AAED;;GAEG;AACH,MAAM,WAAW,qBAAqB;IACpC,WAAW,EAAE,mBAAmB,CAAC;IACjC,QAAQ,EAAE,uBAAuB,CAAC;CACnC;AAED;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC,WAAW,EAAE,mBAAmB,CAAC;IACjC,KAAK,EAAE,SAAS,sBAAsB,EAAE,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,WAAW,EAAE,mBAAmB,CAAC;IACjC,QAAQ,EAAE,iBAAiB,CAAC;CAC7B;AAED;;GAEG;AACH,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;;GAEG;AACH,MAAM,MAAM,wBAAwB,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAAC;AACxE;;GAEG;AACH,MAAM,MAAM,2BAA2B,GAAG,sBAAsB,EAAE,CAAC;AACnE;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC"}
@@ -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
  }
@@ -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';
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../src/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,2BAA2B,EAAE,qBAAqB,EAAE,qBAAqB,EAAE,MAAM,wBAAwB,CAAC;AACvI,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,MAAM,sBAAsB,CAAC;AAC/E,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"}
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';
package/package.json CHANGED
@@ -9,7 +9,7 @@
9
9
  "types",
10
10
  "foundation"
11
11
  ],
12
- "version": "1.0.0-beta.2",
12
+ "version": "1.0.0-beta.4",
13
13
  "private": false,
14
14
  "license": "MIT",
15
15
  "repository": {