@trapi/metadata 1.3.0 → 2.0.0-beta.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +63 -16
- package/dist/index.d.mts +1718 -0
- package/dist/index.d.mts.map +1 -0
- package/dist/index.mjs +3310 -0
- package/dist/index.mjs.map +1 -0
- package/package.json +25 -13
- package/dist/cache/client.d.ts +0 -15
- package/dist/cache/client.d.ts.map +0 -1
- package/dist/cache/client.js +0 -98
- package/dist/cache/client.js.map +0 -1
- package/dist/cache/index.d.ts +0 -4
- package/dist/cache/index.d.ts.map +0 -1
- package/dist/cache/index.js +0 -26
- package/dist/cache/index.js.map +0 -1
- package/dist/cache/type.d.ts +0 -33
- package/dist/cache/type.d.ts.map +0 -1
- package/dist/cache/type.js +0 -9
- package/dist/cache/type.js.map +0 -1
- package/dist/cache/utils.d.ts +0 -4
- package/dist/cache/utils.d.ts.map +0 -1
- package/dist/cache/utils.js +0 -52
- package/dist/cache/utils.js.map +0 -1
- package/dist/config/index.d.ts +0 -2
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/index.js +0 -24
- package/dist/config/index.js.map +0 -1
- package/dist/config/type.d.ts +0 -37
- package/dist/config/type.d.ts.map +0 -1
- package/dist/config/type.js +0 -9
- package/dist/config/type.js.map +0 -1
- package/dist/decorator/constants.d.ts +0 -41
- package/dist/decorator/constants.d.ts.map +0 -1
- package/dist/decorator/constants.js +0 -53
- package/dist/decorator/constants.js.map +0 -1
- package/dist/decorator/index.d.ts +0 -7
- package/dist/decorator/index.d.ts.map +0 -1
- package/dist/decorator/index.js +0 -29
- package/dist/decorator/index.js.map +0 -1
- package/dist/decorator/preset/index.d.ts +0 -3
- package/dist/decorator/preset/index.d.ts.map +0 -1
- package/dist/decorator/preset/index.js +0 -25
- package/dist/decorator/preset/index.js.map +0 -1
- package/dist/decorator/preset/type.d.ts +0 -6
- package/dist/decorator/preset/type.d.ts.map +0 -1
- package/dist/decorator/preset/type.js +0 -9
- package/dist/decorator/preset/type.js.map +0 -1
- package/dist/decorator/preset/utils/check.d.ts +0 -3
- package/dist/decorator/preset/utils/check.d.ts.map +0 -1
- package/dist/decorator/preset/utils/check.js +0 -17
- package/dist/decorator/preset/utils/check.js.map +0 -1
- package/dist/decorator/preset/utils/index.d.ts +0 -4
- package/dist/decorator/preset/utils/index.d.ts.map +0 -1
- package/dist/decorator/preset/utils/index.js +0 -26
- package/dist/decorator/preset/utils/index.js.map +0 -1
- package/dist/decorator/preset/utils/load.d.ts +0 -3
- package/dist/decorator/preset/utils/load.d.ts.map +0 -1
- package/dist/decorator/preset/utils/load.js +0 -50
- package/dist/decorator/preset/utils/load.js.map +0 -1
- package/dist/decorator/preset/utils/normalize.d.ts +0 -2
- package/dist/decorator/preset/utils/normalize.d.ts.map +0 -1
- package/dist/decorator/preset/utils/normalize.js +0 -26
- package/dist/decorator/preset/utils/normalize.js.map +0 -1
- package/dist/decorator/property-manager/index.d.ts +0 -3
- package/dist/decorator/property-manager/index.d.ts.map +0 -1
- package/dist/decorator/property-manager/index.js +0 -25
- package/dist/decorator/property-manager/index.js.map +0 -1
- package/dist/decorator/property-manager/module.d.ts +0 -17
- package/dist/decorator/property-manager/module.d.ts.map +0 -1
- package/dist/decorator/property-manager/module.js +0 -59
- package/dist/decorator/property-manager/module.js.map +0 -1
- package/dist/decorator/property-manager/utils.d.ts +0 -6
- package/dist/decorator/property-manager/utils.d.ts.map +0 -1
- package/dist/decorator/property-manager/utils.js +0 -91
- package/dist/decorator/property-manager/utils.js.map +0 -1
- package/dist/decorator/resolver/index.d.ts +0 -3
- package/dist/decorator/resolver/index.d.ts.map +0 -1
- package/dist/decorator/resolver/index.js +0 -25
- package/dist/decorator/resolver/index.js.map +0 -1
- package/dist/decorator/resolver/module.d.ts +0 -27
- package/dist/decorator/resolver/module.d.ts.map +0 -1
- package/dist/decorator/resolver/module.js +0 -72
- package/dist/decorator/resolver/module.js.map +0 -1
- package/dist/decorator/resolver/type.d.ts +0 -10
- package/dist/decorator/resolver/type.d.ts.map +0 -1
- package/dist/decorator/resolver/type.js +0 -3
- package/dist/decorator/resolver/type.js.map +0 -1
- package/dist/decorator/sets/class.d.ts +0 -7
- package/dist/decorator/sets/class.d.ts.map +0 -1
- package/dist/decorator/sets/class.js +0 -9
- package/dist/decorator/sets/class.js.map +0 -1
- package/dist/decorator/sets/index.d.ts +0 -8
- package/dist/decorator/sets/index.d.ts.map +0 -1
- package/dist/decorator/sets/index.js +0 -29
- package/dist/decorator/sets/index.js.map +0 -1
- package/dist/decorator/sets/method.d.ts +0 -14
- package/dist/decorator/sets/method.d.ts.map +0 -1
- package/dist/decorator/sets/method.js +0 -9
- package/dist/decorator/sets/method.js.map +0 -1
- package/dist/decorator/sets/mixed.d.ts +0 -12
- package/dist/decorator/sets/mixed.d.ts.map +0 -1
- package/dist/decorator/sets/mixed.js +0 -9
- package/dist/decorator/sets/mixed.js.map +0 -1
- package/dist/decorator/sets/parameter.d.ts +0 -21
- package/dist/decorator/sets/parameter.d.ts.map +0 -1
- package/dist/decorator/sets/parameter.js +0 -9
- package/dist/decorator/sets/parameter.js.map +0 -1
- package/dist/decorator/sets/request.d.ts +0 -6
- package/dist/decorator/sets/request.d.ts.map +0 -1
- package/dist/decorator/sets/request.js +0 -9
- package/dist/decorator/sets/request.js.map +0 -1
- package/dist/decorator/sets/response.d.ts +0 -17
- package/dist/decorator/sets/response.d.ts.map +0 -1
- package/dist/decorator/sets/response.js +0 -9
- package/dist/decorator/sets/response.js.map +0 -1
- package/dist/decorator/sets/type.d.ts +0 -4
- package/dist/decorator/sets/type.d.ts.map +0 -1
- package/dist/decorator/sets/type.js +0 -3
- package/dist/decorator/sets/type.js.map +0 -1
- package/dist/decorator/type.d.ts +0 -32
- package/dist/decorator/type.d.ts.map +0 -1
- package/dist/decorator/type.js +0 -9
- package/dist/decorator/type.js.map +0 -1
- package/dist/error/base.d.ts +0 -3
- package/dist/error/base.d.ts.map +0 -1
- package/dist/error/base.js +0 -13
- package/dist/error/base.js.map +0 -1
- package/dist/error/index.d.ts +0 -2
- package/dist/error/index.d.ts.map +0 -1
- package/dist/error/index.js +0 -24
- package/dist/error/index.js.map +0 -1
- package/dist/generator/abstract.d.ts +0 -19
- package/dist/generator/abstract.d.ts.map +0 -1
- package/dist/generator/abstract.js +0 -151
- package/dist/generator/abstract.js.map +0 -1
- package/dist/generator/controller/index.d.ts +0 -3
- package/dist/generator/controller/index.d.ts.map +0 -1
- package/dist/generator/controller/index.js +0 -25
- package/dist/generator/controller/index.js.map +0 -1
- package/dist/generator/controller/module.d.ts +0 -13
- package/dist/generator/controller/module.d.ts.map +0 -1
- package/dist/generator/controller/module.js +0 -68
- package/dist/generator/controller/module.js.map +0 -1
- package/dist/generator/controller/type.d.ts +0 -47
- package/dist/generator/controller/type.d.ts.map +0 -1
- package/dist/generator/controller/type.js +0 -3
- package/dist/generator/controller/type.js.map +0 -1
- package/dist/generator/index.d.ts +0 -7
- package/dist/generator/index.d.ts.map +0 -1
- package/dist/generator/index.js +0 -29
- package/dist/generator/index.js.map +0 -1
- package/dist/generator/metadata/index.d.ts +0 -4
- package/dist/generator/metadata/index.d.ts.map +0 -1
- package/dist/generator/metadata/index.js +0 -26
- package/dist/generator/metadata/index.js.map +0 -1
- package/dist/generator/metadata/module.d.ts +0 -39
- package/dist/generator/metadata/module.d.ts.map +0 -1
- package/dist/generator/metadata/module.js +0 -140
- package/dist/generator/metadata/module.js.map +0 -1
- package/dist/generator/metadata/type.d.ts +0 -25
- package/dist/generator/metadata/type.d.ts.map +0 -1
- package/dist/generator/metadata/type.js +0 -3
- package/dist/generator/metadata/type.js.map +0 -1
- package/dist/generator/metadata/utils.d.ts +0 -3
- package/dist/generator/metadata/utils.d.ts.map +0 -1
- package/dist/generator/metadata/utils.js +0 -18
- package/dist/generator/metadata/utils.js.map +0 -1
- package/dist/generator/method/constants.d.ts +0 -11
- package/dist/generator/method/constants.d.ts.map +0 -1
- package/dist/generator/method/constants.js +0 -21
- package/dist/generator/method/constants.js.map +0 -1
- package/dist/generator/method/index.d.ts +0 -4
- package/dist/generator/method/index.d.ts.map +0 -1
- package/dist/generator/method/index.js +0 -26
- package/dist/generator/method/index.js.map +0 -1
- package/dist/generator/method/module.d.ts +0 -19
- package/dist/generator/method/module.d.ts.map +0 -1
- package/dist/generator/method/module.js +0 -188
- package/dist/generator/method/module.js.map +0 -1
- package/dist/generator/method/type.d.ts +0 -23
- package/dist/generator/method/type.d.ts.map +0 -1
- package/dist/generator/method/type.js +0 -9
- package/dist/generator/method/type.js.map +0 -1
- package/dist/generator/parameter/constants.d.ts +0 -19
- package/dist/generator/parameter/constants.d.ts.map +0 -1
- package/dist/generator/parameter/constants.js +0 -30
- package/dist/generator/parameter/constants.js.map +0 -1
- package/dist/generator/parameter/error.d.ts +0 -35
- package/dist/generator/parameter/error.d.ts.map +0 -1
- package/dist/generator/parameter/error.js +0 -68
- package/dist/generator/parameter/error.js.map +0 -1
- package/dist/generator/parameter/index.d.ts +0 -5
- package/dist/generator/parameter/index.d.ts.map +0 -1
- package/dist/generator/parameter/index.js +0 -27
- package/dist/generator/parameter/index.js.map +0 -1
- package/dist/generator/parameter/module.d.ts +0 -29
- package/dist/generator/parameter/module.d.ts.map +0 -1
- package/dist/generator/parameter/module.js +0 -566
- package/dist/generator/parameter/module.js.map +0 -1
- package/dist/generator/parameter/type.d.ts +0 -25
- package/dist/generator/parameter/type.d.ts.map +0 -1
- package/dist/generator/parameter/type.js +0 -9
- package/dist/generator/parameter/type.js.map +0 -1
- package/dist/generator/type.d.ts +0 -20
- package/dist/generator/type.d.ts.map +0 -1
- package/dist/generator/type.js +0 -9
- package/dist/generator/type.js.map +0 -1
- package/dist/index.d.ts +0 -10
- package/dist/index.d.ts.map +0 -1
- package/dist/index.js +0 -32
- package/dist/index.js.map +0 -1
- package/dist/module.d.ts +0 -5
- package/dist/module.d.ts.map +0 -1
- package/dist/module.js +0 -40
- package/dist/module.js.map +0 -1
- package/dist/resolver/constants.d.ts +0 -37
- package/dist/resolver/constants.d.ts.map +0 -1
- package/dist/resolver/constants.js +0 -48
- package/dist/resolver/constants.js.map +0 -1
- package/dist/resolver/error.d.ts +0 -8
- package/dist/resolver/error.d.ts.map +0 -1
- package/dist/resolver/error.js +0 -41
- package/dist/resolver/error.js.map +0 -1
- package/dist/resolver/extension/index.d.ts +0 -3
- package/dist/resolver/extension/index.d.ts.map +0 -1
- package/dist/resolver/extension/index.js +0 -25
- package/dist/resolver/extension/index.js.map +0 -1
- package/dist/resolver/extension/module.d.ts +0 -5
- package/dist/resolver/extension/module.d.ts.map +0 -1
- package/dist/resolver/extension/module.js +0 -26
- package/dist/resolver/extension/module.js.map +0 -1
- package/dist/resolver/extension/type.d.ts +0 -8
- package/dist/resolver/extension/type.d.ts.map +0 -1
- package/dist/resolver/extension/type.js +0 -9
- package/dist/resolver/extension/type.js.map +0 -1
- package/dist/resolver/index.d.ts +0 -6
- package/dist/resolver/index.d.ts.map +0 -1
- package/dist/resolver/index.js +0 -28
- package/dist/resolver/index.js.map +0 -1
- package/dist/resolver/module.d.ts +0 -56
- package/dist/resolver/module.d.ts.map +0 -1
- package/dist/resolver/module.js +0 -1023
- package/dist/resolver/module.js.map +0 -1
- package/dist/resolver/sub/base.d.ts +0 -7
- package/dist/resolver/sub/base.d.ts.map +0 -1
- package/dist/resolver/sub/base.js +0 -50
- package/dist/resolver/sub/base.js.map +0 -1
- package/dist/resolver/sub/index.d.ts +0 -4
- package/dist/resolver/sub/index.d.ts.map +0 -1
- package/dist/resolver/sub/index.js +0 -26
- package/dist/resolver/sub/index.js.map +0 -1
- package/dist/resolver/sub/primitive.d.ts +0 -11
- package/dist/resolver/sub/primitive.d.ts.map +0 -1
- package/dist/resolver/sub/primitive.js +0 -124
- package/dist/resolver/sub/primitive.js.map +0 -1
- package/dist/resolver/sub/reference.d.ts +0 -15
- package/dist/resolver/sub/reference.d.ts.map +0 -1
- package/dist/resolver/sub/reference.js +0 -141
- package/dist/resolver/sub/reference.js.map +0 -1
- package/dist/resolver/type.d.ts +0 -143
- package/dist/resolver/type.d.ts.map +0 -1
- package/dist/resolver/type.js +0 -135
- package/dist/resolver/type.js.map +0 -1
- package/dist/resolver/utils.d.ts +0 -4
- package/dist/resolver/utils.d.ts.map +0 -1
- package/dist/resolver/utils.js +0 -37
- package/dist/resolver/utils.js.map +0 -1
- package/dist/type.d.ts +0 -2
- package/dist/type.d.ts.map +0 -1
- package/dist/type.js +0 -9
- package/dist/type.js.map +0 -1
- package/dist/utils/array.d.ts +0 -2
- package/dist/utils/array.d.ts.map +0 -1
- package/dist/utils/array.js +0 -21
- package/dist/utils/array.js.map +0 -1
- package/dist/utils/index.d.ts +0 -10
- package/dist/utils/index.d.ts.map +0 -1
- package/dist/utils/index.js +0 -32
- package/dist/utils/index.js.map +0 -1
- package/dist/utils/initializer.d.ts +0 -5
- package/dist/utils/initializer.d.ts.map +0 -1
- package/dist/utils/initializer.js +0 -141
- package/dist/utils/initializer.js.map +0 -1
- package/dist/utils/js-doc/constants.d.ts +0 -19
- package/dist/utils/js-doc/constants.d.ts.map +0 -1
- package/dist/utils/js-doc/constants.js +0 -30
- package/dist/utils/js-doc/constants.js.map +0 -1
- package/dist/utils/js-doc/index.d.ts +0 -4
- package/dist/utils/js-doc/index.d.ts.map +0 -1
- package/dist/utils/js-doc/index.js +0 -26
- package/dist/utils/js-doc/index.js.map +0 -1
- package/dist/utils/js-doc/module.d.ts +0 -9
- package/dist/utils/js-doc/module.d.ts.map +0 -1
- package/dist/utils/js-doc/module.js +0 -97
- package/dist/utils/js-doc/module.js.map +0 -1
- package/dist/utils/js-doc/utils.d.ts +0 -3
- package/dist/utils/js-doc/utils.d.ts.map +0 -1
- package/dist/utils/js-doc/utils.js +0 -28
- package/dist/utils/js-doc/utils.js.map +0 -1
- package/dist/utils/node/index.d.ts +0 -3
- package/dist/utils/node/index.d.ts.map +0 -1
- package/dist/utils/node/index.js +0 -25
- package/dist/utils/node/index.js.map +0 -1
- package/dist/utils/node/module.d.ts +0 -10
- package/dist/utils/node/module.d.ts.map +0 -1
- package/dist/utils/node/module.js +0 -51
- package/dist/utils/node/module.js.map +0 -1
- package/dist/utils/node/type.d.ts +0 -6
- package/dist/utils/node/type.d.ts.map +0 -1
- package/dist/utils/node/type.js +0 -9
- package/dist/utils/node/type.js.map +0 -1
- package/dist/utils/object.d.ts +0 -2
- package/dist/utils/object.d.ts.map +0 -1
- package/dist/utils/object.js +0 -14
- package/dist/utils/object.js.map +0 -1
- package/dist/utils/path-normalize.d.ts +0 -2
- package/dist/utils/path-normalize.d.ts.map +0 -1
- package/dist/utils/path-normalize.js +0 -16
- package/dist/utils/path-normalize.js.map +0 -1
- package/dist/utils/source-files.d.ts +0 -3
- package/dist/utils/source-files.d.ts.map +0 -1
- package/dist/utils/source-files.js +0 -31
- package/dist/utils/source-files.js.map +0 -1
- package/dist/utils/tsconfig/index.d.ts +0 -3
- package/dist/utils/tsconfig/index.d.ts.map +0 -1
- package/dist/utils/tsconfig/index.js +0 -25
- package/dist/utils/tsconfig/index.js.map +0 -1
- package/dist/utils/tsconfig/module.d.ts +0 -4
- package/dist/utils/tsconfig/module.d.ts.map +0 -1
- package/dist/utils/tsconfig/module.js +0 -53
- package/dist/utils/tsconfig/module.js.map +0 -1
- package/dist/utils/tsconfig/type.d.ts +0 -11
- package/dist/utils/tsconfig/type.d.ts.map +0 -1
- package/dist/utils/tsconfig/type.js +0 -9
- package/dist/utils/tsconfig/type.js.map +0 -1
- package/dist/utils/validator/constants.d.ts +0 -13
- package/dist/utils/validator/constants.d.ts.map +0 -1
- package/dist/utils/validator/constants.js +0 -23
- package/dist/utils/validator/constants.js.map +0 -1
- package/dist/utils/validator/index.d.ts +0 -4
- package/dist/utils/validator/index.d.ts.map +0 -1
- package/dist/utils/validator/index.js +0 -26
- package/dist/utils/validator/index.js.map +0 -1
- package/dist/utils/validator/module.d.ts +0 -4
- package/dist/utils/validator/module.d.ts.map +0 -1
- package/dist/utils/validator/module.js +0 -141
- package/dist/utils/validator/module.js.map +0 -1
- package/dist/utils/validator/type.d.ts +0 -6
- package/dist/utils/validator/type.d.ts.map +0 -1
- package/dist/utils/validator/type.js +0 -9
- package/dist/utils/validator/type.js.map +0 -1
package/README.md
CHANGED
|
@@ -10,6 +10,10 @@ The metadata can than be used for generating a documentation according to the Op
|
|
|
10
10
|
|
|
11
11
|
Inspect the `CHANGELOG.md` in the repository for breaking changes.
|
|
12
12
|
|
|
13
|
+
## Public API
|
|
14
|
+
|
|
15
|
+
The stable public surface is documented in the [API Reference](https://trapi.tada5hi.net/guide/metadata-api-reference). Anything not listed there should be treated as internal even if it is re-exported, and may change without a major version bump.
|
|
16
|
+
|
|
13
17
|
**Table of Contents**
|
|
14
18
|
|
|
15
19
|
- [Installation](#installation)
|
|
@@ -32,9 +36,10 @@ The metadata configuration object (Top-Level) is the main configuration object o
|
|
|
32
36
|
and can be defined according the following type scheme:
|
|
33
37
|
|
|
34
38
|
```typescript
|
|
35
|
-
import {
|
|
39
|
+
import type {
|
|
36
40
|
CacheOptions,
|
|
37
|
-
DecoratorConfig
|
|
41
|
+
DecoratorConfig,
|
|
42
|
+
TsConfig,
|
|
38
43
|
} from "@trapi/metadata";
|
|
39
44
|
|
|
40
45
|
export type EntryPointOptions = {
|
|
@@ -47,12 +52,12 @@ export type EntryPoint = string |
|
|
|
47
52
|
EntryPointOptions |
|
|
48
53
|
EntryPointOptions[];
|
|
49
54
|
|
|
50
|
-
export interface
|
|
55
|
+
export interface MetadataGenerateOptions {
|
|
51
56
|
/**
|
|
52
57
|
* The entry point to your API.
|
|
53
58
|
*/
|
|
54
59
|
entryPoint: EntryPoint;
|
|
55
|
-
|
|
60
|
+
|
|
56
61
|
/**
|
|
57
62
|
* Directory to ignore during TypeScript files scan.
|
|
58
63
|
* Default: []
|
|
@@ -64,13 +69,13 @@ export interface Options {
|
|
|
64
69
|
* Default: []
|
|
65
70
|
*/
|
|
66
71
|
allow?: string[],
|
|
67
|
-
|
|
72
|
+
|
|
68
73
|
/**
|
|
69
74
|
* Directory to store and cache metadata files.
|
|
70
75
|
* Default: false
|
|
71
76
|
*/
|
|
72
77
|
cache?: string | boolean | Partial<CacheOptions>;
|
|
73
|
-
|
|
78
|
+
|
|
74
79
|
/**
|
|
75
80
|
* Manual decorator properties configuration.
|
|
76
81
|
*/
|
|
@@ -80,18 +85,35 @@ export interface Options {
|
|
|
80
85
|
* Load a specific preset configuration.
|
|
81
86
|
*/
|
|
82
87
|
preset?: string;
|
|
88
|
+
|
|
89
|
+
/**
|
|
90
|
+
* Path to tsconfig.json or a TsConfig object.
|
|
91
|
+
*/
|
|
92
|
+
tsconfig?: string | TsConfig;
|
|
83
93
|
}
|
|
84
94
|
```
|
|
85
95
|
|
|
86
96
|
## Limitations
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
93
|
-
*
|
|
94
|
-
*
|
|
97
|
+
|
|
98
|
+
TRAPI's resolver explicitly handles these TypeScript utility types:
|
|
99
|
+
|
|
100
|
+
* `NonNullable`
|
|
101
|
+
* `Omit`
|
|
102
|
+
* `Partial`
|
|
103
|
+
* `Readonly`
|
|
104
|
+
* `Record`
|
|
105
|
+
* `Required`
|
|
106
|
+
* `Pick`
|
|
107
|
+
|
|
108
|
+
Additionally these are delegated to the TypeScript type checker and resolve through the compiler's own computation:
|
|
109
|
+
|
|
110
|
+
* `Extract`
|
|
111
|
+
* `Exclude`
|
|
112
|
+
* `ReturnType`
|
|
113
|
+
* `Parameters`
|
|
114
|
+
* `Awaited`
|
|
115
|
+
* `InstanceType`
|
|
116
|
+
* `ConstructorParameters`
|
|
95
117
|
|
|
96
118
|
## Usage
|
|
97
119
|
|
|
@@ -107,7 +129,7 @@ const metadata : Metadata = await generateMetadata({
|
|
|
107
129
|
entryPoint: ['src/controllers/**/*.ts'],
|
|
108
130
|
ignore: ['**/node_modules/**'],
|
|
109
131
|
cache: true,
|
|
110
|
-
preset: '@trapi/preset-
|
|
132
|
+
preset: '@trapi/preset-decorators-express'
|
|
111
133
|
});
|
|
112
134
|
|
|
113
135
|
console.log(metadata);
|
|
@@ -117,7 +139,32 @@ console.log(metadata);
|
|
|
117
139
|
|
|
118
140
|
## Structure
|
|
119
141
|
|
|
120
|
-
|
|
142
|
+
The package follows a hexagonal layout:
|
|
143
|
+
|
|
144
|
+
```
|
|
145
|
+
src/
|
|
146
|
+
├── core/ # Domain types, port interfaces, generator contracts
|
|
147
|
+
│ ├── types/ # Metadata, Controller, Method, Parameter, Type, ...
|
|
148
|
+
│ ├── config/ # MetadataGenerateOptions, MetadataGeneratorOptions, EntryPoint
|
|
149
|
+
│ ├── decorator/ # DecoratorID enum, decorator config shapes
|
|
150
|
+
│ ├── error/ # MetadataError, GeneratorError, ResolverError
|
|
151
|
+
│ ├── metadata/ # IMetadataGenerator, IGeneratorContext
|
|
152
|
+
│ └── utils/ # Internal helpers (hasOwnProperty, normalizePath, …)
|
|
153
|
+
│
|
|
154
|
+
├── adapters/ # Infrastructure adapters
|
|
155
|
+
│ ├── typescript/ # TypeScript compiler API adapter (type resolver, JSDoc, AST)
|
|
156
|
+
│ ├── decorator/ # Decorator resolver + preset loader
|
|
157
|
+
│ ├── filesystem/ # Source file scanner, tsconfig loader
|
|
158
|
+
│ └── cache/ # Metadata cache
|
|
159
|
+
│
|
|
160
|
+
├── app/ # Orchestration / use-cases
|
|
161
|
+
│ ├── generate.ts # generateMetadata()
|
|
162
|
+
│ └── generator/ # Controller, Method, Parameter generators
|
|
163
|
+
│
|
|
164
|
+
└── index.ts # Public entry point
|
|
165
|
+
```
|
|
166
|
+
|
|
167
|
+
The dependency rule is strict: `core/` imports nothing from `adapters/` or `app/`, `adapters/` depends only on `core/`, and `app/` wires both together.
|
|
121
168
|
|
|
122
169
|
## License
|
|
123
170
|
|